c5d77517 |
1 | #ifndef LTTV_H |
2 | #define LTTV_H |
3 | |
c5d77517 |
4 | /* Initial draft by Michel Dagenais May 2003 |
5 | * Reworked by Mathieu Desnoyers, May 2003 |
6 | */ |
7 | |
4accaa97 |
8 | |
c5d77517 |
9 | /* The modules in the visualizer communicate with the main module and |
10 | with each other through attributes. There is a global set of attributes as |
11 | well as attributes attached to each trace set, trace and tracefile. */ |
12 | |
13 | lttv_attributes *lttv_global_attributes(); |
14 | |
15 | |
4accaa97 |
16 | |
c5d77517 |
17 | /* Modules are allowed to define new command line options. |
18 | |
19 | Each option has a long name (--long_name), a short one character |
20 | name (-c), a descriptive text, the argument type, and a |
21 | pointer to where the argument value will be stored. For an option of |
22 | type LTTV_OPT_NONE, the argument is a boolean value set to true when the |
23 | option is present. */ |
24 | |
25 | /* Those are already in option.h, cause conflict */ |
26 | //typedef enum _lttv_option_type |
27 | //{LTTV_OPT_NONE, LTTV_OPT_STRING, LTTV_OPT_INT, LTTV_OPT_LONG } |
28 | //lttv_option_type; |
29 | |
30 | |
31 | //void lttv_option_add(char *long_name, char char_name, char *description, |
32 | // lttv_option_type t, void *p); |
33 | |
34 | |
35 | |
36 | /* A number of global attributes are initialized before modules are |
37 | loaded, for example hooks lists. More global attributes are defined |
38 | in individual mudules to store information or to communicate with other |
39 | modules (GUI windows, menus...). |
40 | |
41 | The hooks lists (lttv_hooks) are initialized in the main module and may be |
42 | used by other modules. Each corresponds to a specific location in the main |
43 | module processing loop. The attribute key and typical usage for each |
44 | is indicated. |
45 | |
46 | /hooks/options/before |
47 | Good place to define new command line options to be parsed. |
48 | |
49 | /hooks/options/after |
50 | Read the values set by the command line options. |
51 | |
52 | /hooks/trace_set/before |
53 | Before any analysis. |
54 | |
55 | /hooks/trace_set/after |
56 | After all traces were analyzed. |
57 | |
58 | /hooks/trace/before |
59 | Before each trace. |
60 | |
61 | /hooks/trace/after |
62 | After each trace. |
63 | |
64 | /hooks/tracefile/before |
65 | Before each tracefile. |
66 | |
67 | /hooks/tracefile/after |
68 | After each tracefile. |
69 | |
70 | /hooks/event |
71 | Called for each event |
72 | |
73 | /hooks/event_id |
74 | This attribute contains an lttv_hooks_by_id, where the hooks for each |
75 | id are to be called when an event of the associated type are found. |
76 | |
77 | */ |
78 | |
79 | #endif // LTTV_H |