/* * Copyright 2014 (c) Anna Schumaker. */ #ifndef OCARINA_CALLBACK_H #define OCARINA_CALLBACK_H #include #include struct Callbacks { /* Audio callbacks */ void (*on_play)(); void (*on_pause)(); void (*on_track_loaded)(library :: Song &); void (*on_pause_count_changed)(bool, unsigned int); /* Deck callbacks */ void (*on_pq_created)(Playqueue *, unsigned int); void (*on_pq_removed)(Playqueue *); /* Library callbacks */ void (*on_library_add)(unsigned int, library :: Library *); void (*on_library_update)(unsigned int, library :: 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); /* Playqueue callbacks */ void (*on_queue_track_add)(Playqueue *, unsigned int); void (*on_queue_track_del)(Playqueue *, unsigned int); void (*on_queue_track_changed)(Playqueue *, unsigned int); void (*on_queue_changed)(); }; struct Callbacks *get_callbacks(); #endif /* OCARINA_CALLBACK_H */