- log_connected,
- log_completed,
- log_failed,
- log_moved,
- log_playing,
- log_queue,
- log_recent_added,
- log_recent_removed,
- log_removed,
- log_scratched,
- log_state,
- log_volume,
- log_rescanned
-};
-
-/** @brief State monitor
- *
- * We keep a linked list of everything that is interested in state changes.
- */
-struct monitor {
- /** @brief Next monitor */
- struct monitor *next;
-
- /** @brief State bits of interest */
- unsigned long mask;
-
- /** @brief Function to call if any of @c mask change */
- monitor_callback *callback;
-
- /** @brief User data for callback */
- void *u;
+ .connected = log_connected,
+ .completed = log_completed,
+ .failed = log_failed,
+ .moved = log_moved,
+ .playing = log_playing,
+ .queue = log_queue,
+ .recent_added = log_recent_added,
+ .recent_removed = log_recent_removed,
+ .removed = log_removed,
+ .scratched = log_scratched,
+ .state = log_state,
+ .volume = log_volume,
+ .rescanned = log_rescanned,
+ .rights_changed = log_rights_changed,
+ .adopted = log_adopted