46 lines
1.1 KiB
C
46 lines
1.1 KiB
C
/*
|
|
* Copyright 2014 (c) Anna Schumaker.
|
|
*/
|
|
#ifndef OCARINA_CALLBACK_H
|
|
#define OCARINA_CALLBACK_H
|
|
|
|
#include <library.h>
|
|
#include <queue.h>
|
|
|
|
|
|
struct Callbacks {
|
|
/* Audio callbacks */
|
|
void (*on_play)();
|
|
void (*on_pause)();
|
|
void (*on_track_loaded)(Track *);
|
|
void (*on_pause_count_changed)(bool, unsigned int);
|
|
|
|
/* Deck callbacks */
|
|
void (*on_pq_created)(Queue *, unsigned int);
|
|
void (*on_pq_removed)(Queue *);
|
|
|
|
/* Library callbacks */
|
|
void (*on_library_add)(unsigned int, Library *);
|
|
void (*on_library_update)(unsigned int, Library *);
|
|
void (*on_library_track_add)(unsigned int);
|
|
void (*on_library_track_del)(unsigned int);
|
|
void (*on_library_track_updated)(unsigned int);
|
|
void (*on_library_import_ban)(unsigned int);
|
|
|
|
/* Playlist callbacks */
|
|
void (*on_playlist_ban)(unsigned int);
|
|
void (*on_playlist_unban)(unsigned int);
|
|
|
|
/* Queue callbacks */
|
|
void (*on_queue_track_add)(Queue *, unsigned int);
|
|
void (*on_queue_track_del)(Queue *, unsigned int);
|
|
void (*on_queue_track_changed)(Queue *, unsigned int);
|
|
void (*on_queue_changed)();
|
|
};
|
|
|
|
|
|
struct Callbacks *get_callbacks();
|
|
|
|
|
|
#endif /* OCARINA_CALLBACK_H */
|