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 | ||
2d262115 | 24 | #include <lttv/attribute.h> |
25 | #include <lttv/traceset.h> | |
451aaf27 | 26 | |
2d262115 | 27 | #include <lttv/hook.h> |
451aaf27 FD |
28 | #ifdef BABEL_CLEANUP |
29 | #include <lttv/tracecontext.h> | |
2d262115 | 30 | #include <lttv/stats.h> |
451aaf27 | 31 | #endif /* BABEL_CLEANUP */ |
962e2228 | 32 | #include <lttv/filter.h> |
b052368a | 33 | //#include <lttvwindow/gtkmultivpaned.h> |
2d262115 | 34 | #include <lttvwindow/mainwindow.h> |
35 | ||
b052368a | 36 | #define SCROLL_STEP_PER_PAGE 10.0 |
37 | ||
2d262115 | 38 | struct _TracesetInfo { |
451aaf27 | 39 | //FIXME? Traceset is the unique member of tracesetinfo |
2d262115 | 40 | LttvTraceset * traceset; |
41 | }; | |
42 | ||
43 | struct _MainWindow{ | |
44 | GtkWidget* mwindow; /* Main Window */ | |
45 | int window_width; | |
46 | ||
47 | /* Status bar information */ | |
48 | // guint MainSBarContextID; /* Context ID of main status bar */ | |
49 | // guint BegTimeSBarContextID; /* Context ID of BegTime status bar */ | |
50 | // guint EndTimeSBarContextID; /* Context ID of EndTime status bar */ | |
51 | ||
52 | /* Child windows */ | |
53 | //openTracesetWindow* OpenTracesetWindow;/* Window to get prof and proc file*/ | |
54 | //viewTimeFrameWindow* ViewTimeFrameWindow;/*Window to select time frame */ | |
55 | //gotoEventWindow* GotoEventWindow; /*search for event description*/ | |
56 | //openFilterWindow* OpenFilterWindow; /* Open a filter selection window */ | |
57 | GtkWidget* help_contents;/* Window to display help contents */ | |
2d262115 | 58 | |
59 | // lttv_trace_filter * filter; /* trace filter associated with the window */ | |
60 | ||
61 | /* Attributes for trace reading hooks local to the main window */ | |
62 | LttvIAttribute * attributes; | |
63 | ||
6ced96ef | 64 | //Tab * tab; |
65 | //Tab * current_tab; | |
2d262115 | 66 | |
67 | }; | |
68 | ||
69 | ||
70 | struct _Tab{ | |
b052368a | 71 | GtkWidget *label; |
e433e6d6 | 72 | GtkWidget *top_widget; |
b052368a | 73 | GtkWidget *vbox; /* contains viewer_container and scrollbar */ |
74 | //GtkWidget *multivpaned; | |
75 | GtkWidget *viewer_container; | |
76 | GtkWidget *scrollbar; | |
e800cf84 | 77 | |
78 | /* time bar */ | |
79 | GtkWidget *MTimebar; | |
4172f013 | 80 | |
2d262115 | 81 | |
82 | // startTime is the left of the visible area. Corresponds to the scrollbar | |
83 | // value. | |
84 | // Time_Width is a zoom dependant value (corresponding to page size) | |
85 | TimeWindow time_window; | |
e800cf84 | 86 | gboolean time_manager_lock; |
2d262115 | 87 | |
88 | // The current time is the time selected in the visible area by the user, | |
89 | // not the scrollbar value. | |
90 | LttTime current_time; | |
e800cf84 | 91 | gboolean current_time_manager_lock; |
92 | ||
2d262115 | 93 | LttvIAttribute * attributes; |
94 | ||
6ced96ef | 95 | //struct _Tab * next; |
2d262115 | 96 | MainWindow * mw; |
97 | ||
98 | /* Traceset related information */ | |
99 | TracesetInfo * traceset_info; | |
100 | ||
dc5e5266 | 101 | /* Filter to apply to the tab's traceset */ |
102 | LttvFilter *filter; | |
103 | ||
2d262115 | 104 | /* A list of time requested for the next process trace */ |
105 | GSList *events_requests; | |
106 | gboolean events_request_pending; | |
107 | LttvAttribute *interrupted_state; | |
5698740e | 108 | gboolean stop_foreground; |
2d262115 | 109 | }; |
110 | ||
111 | #endif /* _MAIN_WINDOW_PRIVATE_ */ | |
112 | ||
113 |