X-Git-Url: http://git.lttng.org/?a=blobdiff_plain;f=ltt%2Fbranches%2Fpoly%2Flttv%2Flttv%2Fprint.c;h=6bcb2387fe5f0acccf22ad45a3c0cad419c86e02;hb=44d5ce7863879413b394a7d60bd17b64774eb761;hp=b0f1d58845df7ff87d3e6d3848a493259cb86e9e;hpb=76373d36bc73cd876b20a1ca173aeb35b1209d0c;p=lttv.git diff --git a/ltt/branches/poly/lttv/lttv/print.c b/ltt/branches/poly/lttv/lttv/print.c index b0f1d588..6bcb2387 100644 --- a/ltt/branches/poly/lttv/lttv/print.c +++ b/ltt/branches/poly/lttv/lttv/print.c @@ -49,8 +49,6 @@ void lttv_print_field(LttEvent *e, LttField *f, GString *s, LttType *type; - LttField *element; - GQuark name; int nb, i; @@ -107,10 +105,9 @@ void lttv_print_field(LttEvent *e, LttField *f, GString *s, case LTT_SEQUENCE: g_string_append_printf(s, "{ "); nb = ltt_event_field_element_number(e,f); - element = ltt_field_element(f); for(i = 0 ; i < nb ; i++) { - ltt_event_field_element_select(e,f,i); - lttv_print_field(e, element, s, field_names); + LttField *child = ltt_event_field_element_select(e,f,i); + lttv_print_field(e, child, s, field_names); if(i != nb-1) g_string_append_printf(s, ", "); } g_string_append_printf(s, " }"); @@ -120,9 +117,10 @@ void lttv_print_field(LttEvent *e, LttField *f, GString *s, g_string_append_printf(s, "{ "); nb = ltt_type_member_number(type); for(i = 0 ; i < nb ; i++) { + LttField *element; element = ltt_field_member(f,i); if(field_names) { - ltt_type_member_type(type, i, &name); + name = ltt_field_name(element); g_string_append_printf(s, "%s = ", g_quark_to_string(name)); } lttv_print_field(e, element, s, field_names); @@ -135,9 +133,10 @@ void lttv_print_field(LttEvent *e, LttField *f, GString *s, g_string_append_printf(s, "{ "); nb = ltt_type_member_number(type); for(i = 0 ; i < nb ; i++) { + LttField *element; element = ltt_field_member(f,i); if(field_names) { - ltt_type_member_type(type, i, &name); + name = ltt_field_name(element); g_string_append_printf(s, "%s = ", g_quark_to_string(name)); } lttv_print_field(e, element, s, field_names); @@ -145,7 +144,8 @@ void lttv_print_field(LttEvent *e, LttField *f, GString *s, } g_string_append_printf(s, " }"); break; - + case LTT_NONE: + break; } } @@ -161,10 +161,12 @@ void lttv_event_to_string(LttEvent *e, GString *s, LttTime time; - guint cpu = ltt_tracefile_num(tfs->parent.tf); + guint cpu = tfs->cpu; LttvTraceState *ts = (LttvTraceState*)tfs->parent.t_context; LttvProcessState *process = ts->running_process[cpu]; + GQuark name; + guint i, num_fields; g_string_set_size(s,0); @@ -181,16 +183,28 @@ void lttv_event_to_string(LttEvent *e, GString *s, g_quark_to_string(ltt_tracefile_name(tfs->parent.tf)), cpu); /* Print the process id and the state/interrupt type of the process */ - g_string_append_printf(s,", %u, %u, %s", process->pid, - process->ppid, + g_string_append_printf(s,", %u, %s, %u, 0x%llX, %s", process->pid, + g_quark_to_string(process->name), + process->ppid, process->current_function, g_quark_to_string(process->state->t)); } + event_type = ltt_event_eventtype(e); - num_fields = ltt_event_num_fields(e); + num_fields = ltt_eventtype_num_fields(event_type); + if(num_fields == 0) return; + g_string_append_printf(s, " "); + g_string_append_printf(s, "{ "); for(i=0; i