1 #include "module.h" 2 3 MODULE = Purple::Sound PACKAGE = Purple::Sound PREFIX = purple_sound_ 4 PROTOTYPES: ENABLE 5 6 BOOT: 7 { 8 HV *stash = gv_stashpv("Purple::SoundEventID", 1); 9 10 static const constiv *civ, const_iv[] = { 11 #define const_iv(name) {#name, (IV)PURPLE_SOUND_##name} 12 const_iv(BUDDY_ARRIVE), 13 const_iv(BUDDY_LEAVE), 14 const_iv(RECEIVE), 15 const_iv(FIRST_RECEIVE), 16 const_iv(SEND), 17 const_iv(CHAT_JOIN), 18 const_iv(CHAT_LEAVE), 19 const_iv(CHAT_YOU_SAY), 20 const_iv(CHAT_SAY), 21 const_iv(POUNCE_DEFAULT), 22 const_iv(CHAT_NICK), 23 }; 24 25 for (civ = const_iv + sizeof(const_iv) / sizeof(const_iv[0]); civ-- > const_iv; ) 26 newCONSTSUB(stash, (char *)civ->name, newSViv(civ->iv)); 27 } 28 29 void 30 purple_sound_play_event(event, account) 31 Purple::SoundEventID event 32 Purple::Account account 33 34 void 35 purple_sound_play_file(filename, account) 36 const char *filename 37 Purple::Account account 38