resourceview: add trap resource
[lttv.git] / ltt / branches / poly / lttv / modules / gui / resourceview / drawing.c
index 243ee37bf30673a3a550c84e51d5c647f9a4ece9..a78fd2e5c20c9834a5aec2523fe4e4e74de19ca0 100644 (file)
@@ -89,6 +89,7 @@ GdkColor drawing_colors_cpu[NUM_COLORS_CPU] =
   { 0, 0xBBBB, 0xBBBB, 0xBBBB }, /* COL_CPU_IDLE */
   { 0, 0xFFFF, 0xFFFF, 0xFFFF }, /* COL_CPU_BUSY */
   { 0, 0xFFFF, 0x5E00, 0x0000 }, /* COL_CPU_IRQ */
+  { 0, 0xFFFF, 0x9400, 0x9600 }, /* COL_CPU_SOFT_IRQ */
   { 0, 0xFF00, 0xFF00, 0x0100 }, /* COL_CPU_TRAP */
 };
 
@@ -99,6 +100,20 @@ GdkColor drawing_colors_irq[NUM_COLORS_IRQ] =
   { 0, 0xFFFF, 0x5E00, 0x0000 }, /* COL_IRQ_BUSY */
 };
 
+GdkColor drawing_colors_soft_irq[NUM_COLORS_SOFT_IRQ] =
+{ /* Pixel, R, G, B */
+  { 0, 0x0000, 0x0000, 0x0000 }, /* COL_SOFT_IRQ_UNKNOWN */
+  { 0, 0x0000, 0x0000, 0x0000 }, /* COL_SOFT_IRQ_IDLE */
+  { 0, 0xFFFF, 0x9400, 0x9600 }, /* COL_SOFT_IRQ_BUSY */
+};
+
+GdkColor drawing_colors_trap[NUM_COLORS_TRAP] =
+{ /* Pixel, R, G, B */
+  { 0, 0x0000, 0x0000, 0x0000 }, /* COL_TRAP_UNKNOWN */
+  { 0, 0xBBBB, 0xBBBB, 0xBBBB }, /* COL_TRAP_IDLE */
+  { 0, 0xFF00, 0xFF00, 0x0100 }, /* COL_TRAP_BUSY */
+};
+
 GdkColor drawing_colors_bdev[NUM_COLORS_BDEV] =
 { /* Pixel, R, G, B */
   { 0, 0x0000, 0x0000, 0x0000 }, /* COL_BDEV_UNKNOWN */
@@ -277,22 +292,22 @@ void drawing_data_request(Drawing_t *drawing,
           before_execmode_hook,
           events_request,
           &hooks);
-//
-//      lttv_trace_find_hook(ts->parent.t,
-//          LTT_FACILITY_KERNEL,
-//          LTT_EVENT_SOFT_IRQ_ENTRY,
-//          FIELD_ARRAY(LTT_FIELD_SOFT_IRQ_ID),
-//          before_execmode_hook,
-//          events_request,
-//          &hooks);
-//
-//      lttv_trace_find_hook(ts->parent.t,
-//          LTT_FACILITY_KERNEL,
-//          LTT_EVENT_SOFT_IRQ_EXIT,
-//          NULL,
-//          before_execmode_hook,
-//          events_request,
-//          &hooks);
+
+      lttv_trace_find_hook(ts->parent.t,
+          LTT_FACILITY_KERNEL,
+          LTT_EVENT_SOFT_IRQ_ENTRY,
+          FIELD_ARRAY(LTT_FIELD_SOFT_IRQ_ID),
+          before_execmode_hook,
+          events_request,
+          &hooks);
+
+      lttv_trace_find_hook(ts->parent.t,
+          LTT_FACILITY_KERNEL,
+          LTT_EVENT_SOFT_IRQ_EXIT,
+          NULL,
+          before_execmode_hook,
+          events_request,
+          &hooks);
 
 
       lttv_trace_find_hook(ts->parent.t,
@@ -503,7 +518,7 @@ void drawing_chunk_begin(EventsRequest *events_request, LttvTracesetState *tss)
 {
   g_debug("Begin of chunk");
   ControlFlowData *cfd = events_request->viewer_data;
-  LttvTracesetContext *tsc = &tss->parent.parent;
+  LttvTracesetContext *tsc = &tss->parent;
   //LttTime current_time = lttv_traceset_context_get_current_tfc(tsc)->timestamp;
   guint i;
   LttvTraceset *traceset = tsc->ts;
@@ -1007,6 +1022,10 @@ Drawing_t *drawing_construct(ControlFlowData *control_flow_data)
                             TRUE, success);
   gdk_colormap_alloc_colors(colormap, drawing_colors_irq, NUM_COLORS_IRQ, FALSE,
                             TRUE, success);
+  gdk_colormap_alloc_colors(colormap, drawing_colors_soft_irq, NUM_COLORS_SOFT_IRQ, FALSE,
+                            TRUE, success);
+  gdk_colormap_alloc_colors(colormap, drawing_colors_trap, NUM_COLORS_TRAP, FALSE,
+                            TRUE, success);
   gdk_colormap_alloc_colors(colormap, drawing_colors_bdev, NUM_COLORS_BDEV, FALSE,
                             TRUE, success);
   
@@ -1067,6 +1086,8 @@ void drawing_destroy(Drawing_t *drawing)
   gdk_colormap_free_colors(colormap, drawing_colors, NUM_COLORS);
   gdk_colormap_free_colors(colormap, drawing_colors_cpu, NUM_COLORS_CPU);
   gdk_colormap_free_colors(colormap, drawing_colors_irq, NUM_COLORS_IRQ);
+  gdk_colormap_free_colors(colormap, drawing_colors_soft_irq, NUM_COLORS_IRQ);
+  gdk_colormap_free_colors(colormap, drawing_colors_trap, NUM_COLORS_TRAP);
   gdk_colormap_free_colors(colormap, drawing_colors_bdev, NUM_COLORS_BDEV);
 
   // Do not unref here, Drawing_t destroyed by it's widget.
This page took 0.024126 seconds and 4 git commands to generate.