rendered paste bodytypedef char cbr_bool_t;typedef struct cbr_context cbr_context_t;typedef struct cbr_sound cbr_sound_t;#define CBR_HINT_CONTEXT_NAME_S "context.name"#define CBR_HINT_X11_DISPLAY_S "x11.display"#define CBR_HINT_X11_WINDOW_S "x11.window"#define CBR_HINT_X11_XY_II "x11.xy"/* follows desktop notification spec for type and values */#define CBR_HINT_SOUND_FILE_S "sound.file"#define CBR_HINT_SOUND_NAME_S "sound.name"#define CBR_HINT_SOUND_CACHE_I "sound.cache"#define CBR_HINT_SOUND_LANG_S "sound.lang"#define CBR_HINT_SOUND_URGENCY_I "sound.urgency"#define CBR_HINT_SOUND_LOOP_I "sound.loop"#define CBR_HINT_SOUND_STATE_I "sound.state"/* range between 0..100 ? */#define CBR_HINT_AUDIO_VOLUME_I "audio.volume"#define CBR_HINT_AUDIO_LR_PAN_I "audio.lr-pan"enum cbr_urgency_e { CBR_URGENCY_LOW = 0, CBR_URGENCY_NORMAL, CBR_URGENCY_CRITICAL, CBR_URGENCY_MAX,}enum cbr_cache_e { CBR_CACHE_NEVER = -1, CBR_CACHE_LAZY, CBR_CACHE_NOW,}enum cbr_state_e { CBR_STATE_STOP = 0, CBR_STATE_PAUSED, CBR_STATE_PLAY,}cbr_context_t * cbr_context_get_default(void);cbr_context_t * cbr_context_new(const char *context_name);cbr_bool_t cbr_context_free(cbr_context_t *ctxt, cbr_bool_t cancel_sounds);void cbr_context_set(cbr_context_t *ctxt, const char *hint, ...);cbr_bool_t cbr_context_set_int(cbr_context_t *ctxt, const char *hint, int value);cbr_bool_t cbr_context_set_static_string(cbr_context_t *ctxt, const char *hint, const char *value);cbr_bool_t cbr_context_set_string(cbr_context_t *ctxt, const char *hint, const char *value);cbr_bool_t cbr_context_set_static_data(cbr_context_t *ctxt, const char *hint, const void *value, size_t len);cbr_bool_t cbr_context_set_data(cbr_context_t *ctxt, const char *hint, const void *value, size_t len);cbr_sound_t * cbr_sound_new(cbr_context_t *ctxt, const char *sound_name, const char *sound_file);cbr_bool_t cbr_sound_free(cbr_sound_t *snd, cbr_bool_t cancel_sound);void cbr_sound_set(cbr_context_t *ctxt, const char *hint, ...);cbr_bool_t cbr_sound_set_int(cbr_sound_t *snd, const char *hint, int value);cbr_bool_t cbr_sound_set_static_string(cbr_sound_t *snd, const char *hint, const char *value);cbr_bool_t cbr_sound_set_string(cbr_sound_t *snd, const char *hint, const char *value);cbr_bool_t cbr_sound_set_static_data(cbr_sound_t *snd, const char *hint, const void *value, size_t len);cbr_bool_t cbr_sound_set_data(cbr_sound_t *snd, const char *hint, const void *value, size_t len);cbr_bool_t cbr_context_play(cbr_context_t c, const char* sound_name, const char* sound_file);cbr_bool_t cbr_context_cache_file_now(cbr_context_t *ctxt, const char *sound_file);