Commit | Line | Data |
---|---|---|
2d262115 | 1 | /* This file is part of the Linux Trace Toolkit viewer |
2 | * Copyright (C) 2003-2004 Xiangxiu Yang | |
3 | * | |
4 | * This program is free software; you can redistribute it and/or modify | |
5 | * it under the terms of the GNU General Public License Version 2 as | |
6 | * published by the Free Software Foundation; | |
7 | * | |
8 | * This program is distributed in the hope that it will be useful, | |
9 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
10 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
11 | * GNU General Public License for more details. | |
12 | * | |
13 | * You should have received a copy of the GNU General Public License | |
14 | * along with this program; if not, write to the Free Software | |
15 | * Foundation, Inc., 59 Temple Place - Suite 330, Boston, | |
16 | * MA 02111-1307, USA. | |
17 | */ | |
18 | ||
19 | #ifndef _MAIN_WINDOW_PRIVATE_ | |
20 | #define _MAIN_WINDOW_PRIVATE_ | |
21 | ||
22 | #include <gtk/gtk.h> | |
23 | ||
24 | #include <ltt/ltt.h> | |
25 | #include <lttv/attribute.h> | |
26 | #include <lttv/traceset.h> | |
451aaf27 | 27 | |
2d262115 | 28 | #include <lttv/hook.h> |
451aaf27 FD |
29 | #ifdef BABEL_CLEANUP |
30 | #include <lttv/tracecontext.h> | |
2d262115 | 31 | #include <lttv/stats.h> |
451aaf27 | 32 | #endif /* BABEL_CLEANUP */ |
962e2228 | 33 | #include <lttv/filter.h> |
b052368a | 34 | //#include <lttvwindow/gtkmultivpaned.h> |
2d262115 | 35 | #include <lttvwindow/mainwindow.h> |
36 | ||
b052368a | 37 | #define SCROLL_STEP_PER_PAGE 10.0 |
38 | ||
2d262115 | 39 | struct _TracesetInfo { |
451aaf27 | 40 | //FIXME? Traceset is the unique member of tracesetinfo |
2d262115 | 41 | LttvTraceset * traceset; |
42 | }; | |
43 | ||
44 | struct _MainWindow{ | |
45 | GtkWidget* mwindow; /* Main Window */ | |
46 | int window_width; | |
47 | ||
48 | /* Status bar information */ | |
49 | // guint MainSBarContextID; /* Context ID of main status bar */ | |
50 | // guint BegTimeSBarContextID; /* Context ID of BegTime status bar */ | |
51 | // guint EndTimeSBarContextID; /* Context ID of EndTime status bar */ | |
52 | ||
53 | /* Child windows */ | |
54 | //openTracesetWindow* OpenTracesetWindow;/* Window to get prof and proc file*/ | |
55 | //viewTimeFrameWindow* ViewTimeFrameWindow;/*Window to select time frame */ | |
56 | //gotoEventWindow* GotoEventWindow; /*search for event description*/ | |
57 | //openFilterWindow* OpenFilterWindow; /* Open a filter selection window */ | |
58 | GtkWidget* help_contents;/* Window to display help contents */ | |
59 | GtkWidget* about_box; /* Window about information */ | |
60 | ||
61 | // lttv_trace_filter * filter; /* trace filter associated with the window */ | |
62 | ||
63 | /* Attributes for trace reading hooks local to the main window */ | |
64 | LttvIAttribute * attributes; | |
65 | ||
6ced96ef | 66 | //Tab * tab; |
67 | //Tab * current_tab; | |
2d262115 | 68 | |
69 | }; | |
70 | ||
71 | ||
72 | struct _Tab{ | |
b052368a | 73 | GtkWidget *label; |
e433e6d6 | 74 | GtkWidget *top_widget; |
b052368a | 75 | GtkWidget *vbox; /* contains viewer_container and scrollbar */ |
76 | //GtkWidget *multivpaned; | |
77 | GtkWidget *viewer_container; | |
78 | GtkWidget *scrollbar; | |
e800cf84 | 79 | |
80 | /* time bar */ | |
81 | GtkWidget *MTimebar; | |
4172f013 | 82 | |
2d262115 | 83 | |
84 | // startTime is the left of the visible area. Corresponds to the scrollbar | |
85 | // value. | |
86 | // Time_Width is a zoom dependant value (corresponding to page size) | |
87 | TimeWindow time_window; | |
e800cf84 | 88 | gboolean time_manager_lock; |
2d262115 | 89 | |
90 | // The current time is the time selected in the visible area by the user, | |
91 | // not the scrollbar value. | |
92 | LttTime current_time; | |
e800cf84 | 93 | gboolean current_time_manager_lock; |
94 | ||
2d262115 | 95 | LttvIAttribute * attributes; |
96 | ||
6ced96ef | 97 | //struct _Tab * next; |
2d262115 | 98 | MainWindow * mw; |
99 | ||
100 | /* Traceset related information */ | |
101 | TracesetInfo * traceset_info; | |
102 | ||
dc5e5266 | 103 | /* Filter to apply to the tab's traceset */ |
104 | LttvFilter *filter; | |
105 | ||
2d262115 | 106 | /* A list of time requested for the next process trace */ |
107 | GSList *events_requests; | |
108 | gboolean events_request_pending; | |
109 | LttvAttribute *interrupted_state; | |
5698740e | 110 | gboolean stop_foreground; |
2d262115 | 111 | }; |
112 | ||
113 | #endif /* _MAIN_WINDOW_PRIVATE_ */ | |
114 | ||
115 |