1 <!DOCTYPE HTML PUBLIC
"-//W3C//DTD HTML 4.01 Transitional//EN""http://www.w3.org/TR/html4/loose.dtd">
5 >The static part of a module
</TITLE
8 CONTENT=
"Modular DocBook HTML Stylesheet Version 1.79"><LINK
10 TITLE=
"Linux Trace Toolkit Viewer Developer Guide"
11 HREF=
"index.html"><LINK
13 TITLE=
"Linux Trace Toolkit Viewer Graphical Module Tutorial"
16 TITLE=
"Linux Trace Toolkit Viewer Graphical Module Tutorial"
19 TITLE=
"The dynamic part of a module : the viewer"
20 HREF=
"x77.html"></HEAD
31 SUMMARY=
"Header navigation table"
40 >Linux Trace Toolkit Viewer Developer Guide
</TH
56 >Chapter
3. Linux Trace Toolkit Viewer Graphical Module Tutorial
</TD
77 >3.2. The static part of a module
</A
80 > A module must have a static part to be able to get loaded just like a text
81 module. Now, let's see the differences. The graphical module depends on the
82 "lttvwindow" module. See module.c from the control flow viewer for an example.
85 > The init() and destroy() functions must register functions that can be called by
86 user interaction to instanciate the viewers. That's the goal of
87 lttvwindow_register_constructor() and lttvwindow_unregister_constructor() :
88 they register a function with a menu entry and an icon. The main window will
89 shown them in its interface and call the function when the button or menu item
90 is selected. This hook function must receive a pointer to a
"Tab" object in
94 > Also note the presence of the destroy_walk() method. It is called when the
95 module is unloaded : it must destroy all the instances of the viewers from the
104 SUMMARY=
"Footer navigation table"
143 >Linux Trace Toolkit Viewer Graphical Module Tutorial
</TD
157 >The dynamic part of a module : the viewer
</TD