00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017 #ifndef __SIGNAL_XMMS_H__
00018 #define __SIGNAL_XMMS_H__
00019
00020
00021 #define XMMS_IPC_PROTOCOL_VERSION 13
00022
00023 typedef enum {
00024 XMMS_IPC_OBJECT_MAIN,
00025 XMMS_IPC_OBJECT_PLAYLIST,
00026 XMMS_IPC_OBJECT_CONFIG,
00027 XMMS_IPC_OBJECT_OUTPUT,
00028 XMMS_IPC_OBJECT_MEDIALIB,
00029 XMMS_IPC_OBJECT_COLLECTION,
00030 XMMS_IPC_OBJECT_SIGNAL,
00031 XMMS_IPC_OBJECT_VISUALIZATION,
00032 XMMS_IPC_OBJECT_MEDIAINFO_READER,
00033 XMMS_IPC_OBJECT_XFORM,
00034 XMMS_IPC_OBJECT_BINDATA,
00035 XMMS_IPC_OBJECT_END
00036 } xmms_ipc_objects_t;
00037
00038 typedef enum {
00039 XMMS_IPC_SIGNAL_PLAYLIST_CHANGED,
00040 XMMS_IPC_SIGNAL_CONFIGVALUE_CHANGED,
00041 XMMS_IPC_SIGNAL_PLAYBACK_STATUS,
00042 XMMS_IPC_SIGNAL_OUTPUT_VOLUME_CHANGED,
00043 XMMS_IPC_SIGNAL_OUTPUT_PLAYTIME,
00044 XMMS_IPC_SIGNAL_OUTPUT_CURRENTID,
00045 XMMS_IPC_SIGNAL_PLAYLIST_CURRENT_POS,
00046 XMMS_IPC_SIGNAL_PLAYLIST_LOADED,
00047 XMMS_IPC_SIGNAL_MEDIALIB_ENTRY_ADDED,
00048 XMMS_IPC_SIGNAL_MEDIALIB_ENTRY_UPDATE,
00049 XMMS_IPC_SIGNAL_COLLECTION_CHANGED,
00050 XMMS_IPC_SIGNAL_QUIT,
00051 XMMS_IPC_SIGNAL_MEDIAINFO_READER_STATUS,
00052 XMMS_IPC_SIGNAL_MEDIAINFO_READER_UNINDEXED,
00053 XMMS_IPC_SIGNAL_END
00054 } xmms_ipc_signals_t;
00055
00056 typedef enum {
00057
00058 XMMS_IPC_CMD_HELLO,
00059 XMMS_IPC_CMD_QUIT,
00060 XMMS_IPC_CMD_REPLY,
00061 XMMS_IPC_CMD_ERROR,
00062 XMMS_IPC_CMD_PLUGIN_LIST,
00063 XMMS_IPC_CMD_STATS,
00064
00065
00066 XMMS_IPC_CMD_SHUFFLE,
00067 XMMS_IPC_CMD_SET_POS,
00068 XMMS_IPC_CMD_SET_POS_REL,
00069 XMMS_IPC_CMD_ADD_URL,
00070 XMMS_IPC_CMD_ADD_ID,
00071 XMMS_IPC_CMD_ADD_IDLIST,
00072 XMMS_IPC_CMD_ADD_COLL,
00073 XMMS_IPC_CMD_REMOVE_ENTRY,
00074 XMMS_IPC_CMD_MOVE_ENTRY,
00075 XMMS_IPC_CMD_CLEAR,
00076 XMMS_IPC_CMD_SORT,
00077 XMMS_IPC_CMD_LIST,
00078 XMMS_IPC_CMD_CURRENT_POS,
00079 XMMS_IPC_CMD_CURRENT_ACTIVE,
00080 XMMS_IPC_CMD_INSERT_URL,
00081 XMMS_IPC_CMD_INSERT_ID,
00082 XMMS_IPC_CMD_INSERT_COLL,
00083 XMMS_IPC_CMD_LOAD,
00084 XMMS_IPC_CMD_RADD,
00085 XMMS_IPC_CMD_RINSERT,
00086
00087
00088 XMMS_IPC_CMD_GETVALUE,
00089 XMMS_IPC_CMD_SETVALUE,
00090 XMMS_IPC_CMD_REGVALUE,
00091 XMMS_IPC_CMD_LISTVALUES,
00092
00093
00094 XMMS_IPC_CMD_START,
00095 XMMS_IPC_CMD_STOP,
00096 XMMS_IPC_CMD_PAUSE,
00097 XMMS_IPC_CMD_DECODER_KILL,
00098 XMMS_IPC_CMD_CPLAYTIME,
00099 XMMS_IPC_CMD_SEEKMS,
00100 XMMS_IPC_CMD_SEEKMS_REL,
00101 XMMS_IPC_CMD_SEEKSAMPLES,
00102 XMMS_IPC_CMD_SEEKSAMPLES_REL,
00103 XMMS_IPC_CMD_OUTPUT_STATUS,
00104 XMMS_IPC_CMD_CURRENTID,
00105 XMMS_IPC_CMD_VOLUME_SET,
00106 XMMS_IPC_CMD_VOLUME_GET,
00107
00108
00109 XMMS_IPC_CMD_INFO,
00110 XMMS_IPC_CMD_PATH_IMPORT,
00111 XMMS_IPC_CMD_REHASH,
00112 XMMS_IPC_CMD_GET_ID,
00113 XMMS_IPC_CMD_REMOVE_ID,
00114 XMMS_IPC_CMD_PROPERTY_SET_STR,
00115 XMMS_IPC_CMD_PROPERTY_SET_INT,
00116 XMMS_IPC_CMD_PROPERTY_REMOVE,
00117 XMMS_IPC_CMD_MOVE_URL,
00118
00119
00120 XMMS_IPC_CMD_COLLECTION_GET,
00121 XMMS_IPC_CMD_COLLECTION_LIST,
00122 XMMS_IPC_CMD_COLLECTION_SAVE,
00123 XMMS_IPC_CMD_COLLECTION_REMOVE,
00124 XMMS_IPC_CMD_COLLECTION_FIND,
00125 XMMS_IPC_CMD_COLLECTION_RENAME,
00126 XMMS_IPC_CMD_QUERY_IDS,
00127 XMMS_IPC_CMD_QUERY_INFOS,
00128 XMMS_IPC_CMD_IDLIST_FROM_PLS,
00129 XMMS_IPC_CMD_COLLECTION_SYNC,
00130
00131
00132 XMMS_IPC_CMD_SIGNAL,
00133 XMMS_IPC_CMD_BROADCAST,
00134
00135
00136 XMMS_IPC_CMD_BROWSE,
00137
00138
00139 XMMS_IPC_CMD_GET_DATA,
00140 XMMS_IPC_CMD_ADD_DATA,
00141 XMMS_IPC_CMD_REMOVE_DATA,
00142 XMMS_IPC_CMD_LIST_DATA,
00143
00144
00145 XMMS_IPC_CMD_VISUALIZATION_QUERY_VERSION,
00146 XMMS_IPC_CMD_VISUALIZATION_REGISTER,
00147 XMMS_IPC_CMD_VISUALIZATION_INIT_SHM,
00148 XMMS_IPC_CMD_VISUALIZATION_INIT_UDP,
00149 XMMS_IPC_CMD_VISUALIZATION_PROPERTY,
00150 XMMS_IPC_CMD_VISUALIZATION_PROPERTIES,
00151 XMMS_IPC_CMD_VISUALIZATION_SHUTDOWN,
00152
00153
00154 XMMS_IPC_CMD_END
00155 } xmms_ipc_cmds_t;
00156
00157 typedef enum {
00158 XMMS_PLAYLIST_CHANGED_ADD,
00159 XMMS_PLAYLIST_CHANGED_INSERT,
00160 XMMS_PLAYLIST_CHANGED_SHUFFLE,
00161 XMMS_PLAYLIST_CHANGED_REMOVE,
00162 XMMS_PLAYLIST_CHANGED_CLEAR,
00163 XMMS_PLAYLIST_CHANGED_MOVE,
00164 XMMS_PLAYLIST_CHANGED_SORT,
00165 XMMS_PLAYLIST_CHANGED_UPDATE
00166 } xmms_playlist_changed_actions_t;
00167
00168 typedef enum {
00169 XMMS_COLLECTION_CHANGED_ADD,
00170 XMMS_COLLECTION_CHANGED_UPDATE,
00171 XMMS_COLLECTION_CHANGED_RENAME,
00172 XMMS_COLLECTION_CHANGED_REMOVE
00173 } xmms_collection_changed_actions_t;
00174
00175 typedef enum {
00176 XMMS_PLAYBACK_STATUS_STOP,
00177 XMMS_PLAYBACK_STATUS_PLAY,
00178 XMMS_PLAYBACK_STATUS_PAUSE
00179 } xmms_playback_status_t;
00180
00181 typedef enum {
00182 XMMS_MEDIAINFO_READER_STATUS_IDLE,
00183 XMMS_MEDIAINFO_READER_STATUS_RUNNING
00184 } xmms_mediainfo_reader_status_t;
00185
00186 typedef enum {
00187 XMMS_PLUGIN_TYPE_ALL,
00188 XMMS_PLUGIN_TYPE_OUTPUT,
00189 XMMS_PLUGIN_TYPE_XFORM
00190 } xmms_plugin_type_t;
00191
00192 typedef enum {
00193 XMMS_COLLECTION_TYPE_REFERENCE,
00194 XMMS_COLLECTION_TYPE_UNION,
00195 XMMS_COLLECTION_TYPE_INTERSECTION,
00196 XMMS_COLLECTION_TYPE_COMPLEMENT,
00197 XMMS_COLLECTION_TYPE_HAS,
00198 XMMS_COLLECTION_TYPE_EQUALS,
00199 XMMS_COLLECTION_TYPE_MATCH,
00200 XMMS_COLLECTION_TYPE_SMALLER,
00201 XMMS_COLLECTION_TYPE_GREATER,
00202 XMMS_COLLECTION_TYPE_IDLIST,
00203 XMMS_COLLECTION_TYPE_QUEUE,
00204 XMMS_COLLECTION_TYPE_PARTYSHUFFLE,
00205 XMMS_COLLECTION_TYPE_LAST = XMMS_COLLECTION_TYPE_PARTYSHUFFLE
00206 } xmmsv_coll_type_t;
00207
00208 typedef enum {
00209 XMMS_MEDIALIB_ENTRY_STATUS_NEW,
00210 XMMS_MEDIALIB_ENTRY_STATUS_OK,
00211 XMMS_MEDIALIB_ENTRY_STATUS_RESOLVING,
00212 XMMS_MEDIALIB_ENTRY_STATUS_NOT_AVAILABLE,
00213 XMMS_MEDIALIB_ENTRY_STATUS_REHASH
00214 } xmmsc_medialib_entry_status_t;
00215
00216 typedef const char* xmmsv_coll_namespace_t;
00217 #define XMMS_COLLECTION_NS_ALL "*"
00218 #define XMMS_COLLECTION_NS_COLLECTIONS "Collections"
00219 #define XMMS_COLLECTION_NS_PLAYLISTS "Playlists"
00220
00221 #define XMMS_ACTIVE_PLAYLIST "_active"
00222
00223
00224 extern const char *default_source_pref[];
00225
00226
00227 typedef xmmsv_coll_type_t xmmsc_coll_type_t;
00228 typedef xmmsv_coll_namespace_t xmmsc_coll_namespace_t;
00229
00230
00231 #endif