module fix
[lttv.git] / ltt / branches / poly / lttv / modules / guiControlFlow / module.c
CommitLineData
f0d936c0 1/*! \defgroup guiEvents libguiControlFlow: The GUI ControlFlow display plugin */
2/*\@{*/
3
4/*! \file guiControlFlow.c
5 * \brief Graphical plugin for showing control flow of a trace.
6 *
7 * This plugin adds a Control Flow Viewer functionnality to Linux TraceToolkit
8 * GUI when this plugin is loaded. The init and destroy functions add the
9 * viewer's insertion menu item and toolbar icon by calling gtkTraceSet's
10 * API functions. Then, when a viewer's object is created, the constructor
11 * creates ans register through API functions what is needed to interact
12 * with the TraceSet window.
13 *
14 * This plugin uses the gdk library to draw the events and gtk to interact
15 * with the user.
16 *
17 * Author : Mathieu Desnoyers, June 2003
18 */
19
558aa013 20#include <glib.h>
f0d936c0 21#include <gmodule.h>
22#include <lttv/module.h>
558aa013 23//#include <lttv/gtkTraceSet.h>
24
25//#include "CFV.h"
26//#include "Event_Hooks.h"
27
28// #include "../icons/hGuiControlFlowInsert.xpm"
29
30LttvModule *Main_Win_Module;
31
32
33/** Array containing instanced objects. Used when module is unloaded */
34//GSList *gControl_Flow_Data_List = NULL ;
35
36
f0d936c0 37
f0d936c0 38
39/*****************************************************************************
40 * Functions for module loading/unloading *
41 *****************************************************************************/
42/**
43 * plugin's init function
44 *
45 * This function initializes the Control Flow Viewer functionnality through the
46 * gtkTraceSet API.
47 */
558aa013 48G_MODULE_EXPORT void init(LttvModule *self, int argc, char *argv[]) {
49
50 Main_Win_Module = lttv_module_require(self, "mainwin", argc, argv);
51
52 if(Main_Win_Module == NULL)
53 {
54 g_critical("Can't load Control Flow Viewer : missing mainwin\n");
55 return;
56 }
57
f0d936c0 58 g_critical("GUI ControlFlow Viewer init()");
59
60 /* Register the toolbar insert button */
558aa013 61 //ToolbarItemReg(hGuiControlFlowInsert_xpm, "Insert Control Flow Viewer",
62 // hGuiControlFlow);
f0d936c0 63
64 /* Register the menu item insert entry */
558aa013 65 //MenuItemReg("/", "Insert Control Flow Viewer", hGuiControlFlow);
f0d936c0 66
67}
68
69void destroy_walk(gpointer data, gpointer user_data)
70{
558aa013 71// GuiControlFlow_Destructor((ControlFlowData*)data);
f0d936c0 72}
73
74
75
76/**
77 * plugin's destroy function
78 *
79 * This function releases the memory reserved by the module and unregisters
80 * everything that has been registered in the gtkTraceSet API.
81 */
82G_MODULE_EXPORT void destroy() {
83 g_critical("GUI Control Flow Viewer destroy()");
84 int i;
85
558aa013 86// ControlFlowData *Control_Flow_Data;
f0d936c0 87
88 g_critical("GUI Event Viewer destroy()");
89
558aa013 90// g_slist_foreach(gControl_Flow_Data_List, destroy_walk, NULL );
f0d936c0 91
92 /* Unregister the toolbar insert button */
558aa013 93 //ToolbarItemUnreg(hGuiControlFlow);
f0d936c0 94
95 /* Unregister the menu item insert entry */
558aa013 96 //MenuItemUnreg(hGuiControlFlow);
97
558aa013 98}
This page took 0.026036 seconds and 4 git commands to generate.