00001
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028 #ifndef _PURPLE_SOUND_H_
00029 #define _PURPLE_SOUND_H_
00030
00031 #include "account.h"
00032
00033
00035
00036
00037
00042 typedef enum _PurpleSoundEventID
00043 {
00044 PURPLE_SOUND_BUDDY_ARRIVE = 0,
00045 PURPLE_SOUND_BUDDY_LEAVE,
00046 PURPLE_SOUND_RECEIVE,
00047 PURPLE_SOUND_FIRST_RECEIVE,
00048 PURPLE_SOUND_SEND,
00049 PURPLE_SOUND_CHAT_JOIN,
00050 PURPLE_SOUND_CHAT_LEAVE,
00051 PURPLE_SOUND_CHAT_YOU_SAY,
00052 PURPLE_SOUND_CHAT_SAY,
00053 PURPLE_SOUND_POUNCE_DEFAULT,
00054 PURPLE_SOUND_CHAT_NICK,
00055 PURPLE_NUM_SOUNDS
00057 } PurpleSoundEventID;
00058
00059 typedef struct _PurpleSoundUiOps
00060 {
00061 void (*init)(void);
00062 void (*uninit)(void);
00063 void (*play_file)(const char *filename);
00064 void (*play_event)(PurpleSoundEventID event);
00065
00066 void (*_purple_reserved1)(void);
00067 void (*_purple_reserved2)(void);
00068 void (*_purple_reserved3)(void);
00069 void (*_purple_reserved4)(void);
00070 } PurpleSoundUiOps;
00071
00072 #ifdef __cplusplus
00073 extern "C" {
00074 #endif
00075
00076
00078
00090 void purple_sound_play_file(const char *filename, const PurpleAccount *account);
00091
00101 void purple_sound_play_event(PurpleSoundEventID event, const PurpleAccount *account);
00102
00108 void purple_sound_set_ui_ops(PurpleSoundUiOps *ops);
00109
00115 PurpleSoundUiOps *purple_sound_get_ui_ops(void);
00116
00120 void purple_sound_init(void);
00121
00125 void purple_sound_uninit(void);
00126
00132 void *purple_sounds_get_handle(void);
00133
00136 #ifdef __cplusplus
00137 }
00138 #endif
00139
00140 #endif