Changeset 5763:83d26dff8492 in roaraudio for roard
- Timestamp:
- 11/21/12 03:54:14 (11 years ago)
- Branch:
- default
- Phase:
- public
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
roard/roard.c
r5754 r5763 104 104 #endif 105 105 106 void dbg_notify_cb(struct roar_notify_core * core, struct roar_event * event, void * userdata) {107 char buf[1024] = "";108 char estr[1024] = "/* ROAR_??? */";109 char ttstr[1024] = "/* ROAR_OT_??? */";110 const char * ttname;111 uint32_t ev = ROAR_EVENT_GET_TYPE(event);112 int i;113 114 ttname = roar_ot2str(event->target_type);115 if ( ttname != NULL ) {116 snprintf(ttstr, sizeof(ttstr)-1, "/* ROAR_OT_%s */", ttname);117 buf[sizeof(ttstr)-1] = 0;118 for (i = 0; ttstr[i] != 0; i++)119 if ( islower(ttstr[i]) )120 ttstr[i] = toupper(ttstr[i]);121 }122 123 if ( ev == ROAR_NOTIFY_SPECIAL ) {124 snprintf(estr, sizeof(estr)-1, "/* ROAR_NOTIFY_SPECIAL */");125 } else if ( ROAR_NOTIFY_IS_CMD(ev) ) {126 if ( command_get_name(ROAR_NOTIFY_EVENT2CMD(ev), &ttname) == -1 ) {127 snprintf(estr, sizeof(estr)-1, "/* ROAR_NOTIFY_CMD2EVENT(%lu) */", (long unsigned int)ROAR_NOTIFY_EVENT2CMD(ev));128 } else {129 snprintf(estr, sizeof(estr)-1, "/* ROAR_NOTIFY_CMD2EVENT(ROAR_CMD_%s) */", ttname);130 for (i = 0; estr[i] != 0; i++)131 if ( islower(estr[i]) )132 estr[i] = toupper(estr[i]);133 }134 } else if ( ROAR_NOTIFY_IS_EGRP(ev) ) {135 snprintf(estr, sizeof(estr)-1, "/* ROAR_NOTIFY_EGRP2EVENT(%lu) */", (long unsigned int)ROAR_NOTIFY_EVENT2EGRP(ev));136 } else if ( ROAR_NOTIFY_IS_OE(ev) ) {137 switch (ev) {138 // OE basics:139 case ROAR_OE_BASICS_CHANGE_STATE:140 snprintf(estr, sizeof(estr)-1, "/* ROAR_OE_BASICS_CHANGE_STATE */");141 break;142 case ROAR_OE_BASICS_CHANGE_FLAGS:143 snprintf(estr, sizeof(estr)-1, "/* ROAR_OE_BASICS_CHANGE_FLAGS */");144 break;145 case ROAR_OE_BASICS_NEW:146 snprintf(estr, sizeof(estr)-1, "/* ROAR_OE_BASICS_NEW */");147 break;148 case ROAR_OE_BASICS_DELETE:149 snprintf(estr, sizeof(estr)-1, "/* ROAR_OE_BASICS_DELETE */");150 break;151 // OE Streams:152 case ROAR_OE_STREAM_CHANGE_VOLUME:153 snprintf(estr, sizeof(estr)-1, "/* ROAR_OE_STREAM_CHANGE_VOLUME */");154 break;155 case ROAR_OE_STREAM_XRUN:156 snprintf(estr, sizeof(estr)-1, "/* ROAR_OE_STREAM_XRUN */");157 break;158 case ROAR_OE_STREAM_META_UPDATE:159 snprintf(estr, sizeof(estr)-1, "/* ROAR_OE_STREAM_META_UPDATE */");160 break;161 // OE Default:162 default:163 snprintf(estr, sizeof(estr)-1, "/* ROAR_NOTIFY_OE2EVENT(%lu) */", (long unsigned int)ROAR_NOTIFY_EVENT2OE(ev));164 break;165 }166 } else if ( ROAR_NOTIFY_IS_USER(ev) ) {167 snprintf(estr, sizeof(estr)-1, "/* ROAR_NOTIFY_USER2EVENT(%lu) */", (long unsigned int)ROAR_NOTIFY_EVENT2USER(ev));168 }169 170 buf[sizeof(estr)-1] = 0;171 172 if ( event->flags & ROAR_EVENT_FLAG_PROXYEVENT ) {173 snprintf(buf, sizeof(buf)-1, ".event_proxy=0x%.8x%s, ", (int)event->event_proxy, estr);174 buf[sizeof(buf)-1] = 0;175 }176 177 ROAR_INFO("dbg_notify_cb(core=%p, event=%p{.flags=0x%.8x, event=0x%.8x%s, %s.emitter=%i, .target=%i, .target_type=%i%s, .arg0=%i, .arg1=%i, .arg2=%p}, userdata=%p) = (void)",178 0 /* always print: minlevel = 0 */,179 core, event,180 (int)event->flags,181 (int)event->event,182 (event->flags & ROAR_EVENT_FLAG_PROXYEVENT ? "" : estr),183 buf,184 event->emitter,185 event->target,186 event->target_type,187 ttstr,188 event->arg0,189 event->arg1,190 event->arg2,191 userdata);192 }193 194 void dbg_notify_cb_register (void) {195 struct roar_event event;196 197 memset(&event, 0, sizeof(event));198 199 event.event = ROAR_EGRP_ANY_EVENT;200 201 event.emitter = -1;202 event.target = -1;203 event.target_type = -1;204 205 roar_notify_core_subscribe(NULL, &event, dbg_notify_cb, NULL);206 }207 208 106 #ifdef ROAR_HAVE_MAIN_ARGS 209 107 void usage (void) { … … 1557 1455 } 1558 1456 1559 #ifdef DEBUG1560 // enable early in case we have DEBUG set.1561 dbg_notify_cb_register();1562 #endif1563 1564 1457 rolestack_init(); 1565 1458 … … 2389 2282 #endif 2390 2283 2391 #ifndef DEBUG 2392 // notify dbg if requested, if in DEBUG mode2393 // do not able because it got enabled early.2394 if ( g_verbose >= 4 )2395 dbg_notify_cb_register();2396 #endif 2284 // if g_verbose is high we load external debugging modules. 2285 if ( g_verbose >= 4 ) { 2286 if ( plugins_load("debug-notify", NULL) == -1 ) { 2287 ROAR_WARN("main(*): Can not load debugger plugin: %s", roar_error2str(roar_error)); 2288 } 2289 } 2397 2290 2398 2291 if ( af_mode != AF_MODE_NONE ) {
Note: See TracChangeset
for help on using the changeset viewer.