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