X-Git-Url: https://git.liburcu.org/?a=blobdiff_plain;f=lttv%2Flttv%2Fstats.h;h=658633b3cd67e07e5628c322eb589111ae30f62d;hb=516a8712d079429962523e033e28f68704bc770a;hp=837282c13c5e7e5a838e54e3f3d21b77d5162f2d;hpb=71e47a2f0168f45b205afb46ef0f916e7958bb8f;p=lttv.git diff --git a/lttv/lttv/stats.h b/lttv/lttv/stats.h index 837282c1..658633b3 100644 --- a/lttv/lttv/stats.h +++ b/lttv/lttv/stats.h @@ -168,7 +168,7 @@ typedef struct _LttvTraceStatsClass LttvTraceStatsClass; typedef struct _LttvTracefileStats LttvTracefileStats; typedef struct _LttvTracefileStatsClass LttvTracefileStatsClass; - +typedef struct _LttvCPUStats LttvCPUStats; // Hook wrapper. call_data is a trace context. gboolean lttv_stats_hook_add_event_hooks(void *hook_data, void *call_data); @@ -210,6 +210,12 @@ struct _LttvTracesetStatsClass { GType lttv_traceset_stats_get_type (void); +struct _LttvCPUStats { + LttvAttribute *current_events_tree; + LttvAttribute *current_event_types_tree; + LttvTraceStats *tcs; + guint cpu; +}; #define LTTV_TRACE_STATS_TYPE (lttv_trace_stats_get_type ()) #define LTTV_TRACE_STATS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), LTTV_TRACE_STATS_TYPE, LttvTraceStats)) @@ -222,6 +228,7 @@ struct _LttvTraceStats { LttvTraceState parent; LttvAttribute *stats; + LttvCPUStats *cpu_stats; /* Array indexed by CPU */ }; struct _LttvTraceStatsClass { @@ -241,9 +248,7 @@ GType lttv_trace_stats_get_type (void); struct _LttvTracefileStats { LttvTracefileState parent; - LttvAttribute *stats; - LttvAttribute *current_events_tree; - LttvAttribute *current_event_types_tree; + LttvCPUStats *cpu_stats; /* "weak" reference */ }; struct _LttvTracefileStatsClass {