mega modif by Mathieu Desnoyers. Independant main windows, multiple tracesets, contro...
[lttv.git] / ltt / branches / poly / include / lttv / mainWindow.h
index 391cef0fae8e074d187a58434175fcd44e51de59..0a43bfa59f6d9750b19a034e6d56f49c064675df 100644 (file)
 
 #include <lttv/common.h>
 #include <lttv/gtkcustom.h>
+#include <lttv/hook.h>
+#include <lttv/stats.h>
 
 typedef struct _WindowCreationData {
        int argc;
        char ** argv;
 } WindowCreationData;
 
+typedef struct _TimeWindow {
+       LttTime startTime;
+       LttTime Time_Width;
+} TimeWindow;
+
+typedef struct _TracesetInfo {
+       gchar* path;
+       LttvHooks 
+         *before_traceset,
+         *after_traceset,
+         *before_trace,
+         *after_trace,
+         *before_tracefile,
+         *after_tracefile,
+         *before_event,
+         *after_event;
+        //FIXME? TracesetContext and stats in same or different variable ?
+       LttvTracesetStats * TracesetContext;
+       LttvTraceset * traceset;
+} TracesetInfo ;
+
+
 struct _mainWindow{
   GtkWidget*      MWindow;            /* Main Window */
-  systemView *    SystemView;         /* System view displayed in this window*/
+//  systemView *    SystemView;         /* System view displayed in this window*/
 
   /* Status bar information */
   //  guint         MainSBarContextID;    /* Context ID of main status bar */
@@ -33,35 +57,47 @@ struct _mainWindow{
   GtkWidget*           HelpContents;/* Window to display help contents */
   GtkWidget*           AboutBox;    /* Window  about information */
  
-  LttvTracesetContext * traceset_context; 
-  LttvTraceset * traceset;  /* trace set associated with the window */
+  //LttvTracesetContext * traceset_context; 
+  //LttvTraceset * traceset;  /* trace set associated with the window */
   //  lttv_trace_filter * filter; /* trace filter associated with the window */
-  
 
+  /* Traceset related information */
+  TracesetInfo * Traceset_Info; 
+  /* Attributes for trace reading hooks local to the main window */
+  LttvIAttribute * Attributes;
+  
   tab * Tab;
   tab * CurrentTab;
-  LttvIAttribute * Attributes;
 
   WindowCreationData * winCreationData; 
 };
 
 
-struct _systemView{
-  gpointer             EventDB;
-  gpointer             SystemInfo;
-  gpointer             Options;
-  mainWindow         * Window;
-  struct _systemView * Next;
-};
+//struct _systemView{
+//  gpointer             EventDB;
+//  gpointer             SystemInfo;
+//  gpointer             Options;
+//  mainWindow         * Window;
+//  struct _systemView * Next;
+//};
 
 struct _tab{
   GtkWidget * label;
   GtkCustom * custom;
 
-  LttTime traceStartTime;
-  LttTime traceEndTime;
-  LttTime startTime;
-  LttTime endTime;
+  
+ // Will have to read directly at the main window level, as we want
+ // to be able to modify a traceset on the fly.
+  //LttTime traceStartTime;
+  //LttTime traceEndTime;
+  
+  // startTime is the left of the visible area. Corresponds to the scrollbar
+  // value.
+  // Time_Width is a zoom dependant value (corresponding to page size)
+  TimeWindow Time_Window;
+  
+  // The current time is the time selected in the visible area by the user,
+  // not the scrollbar value.
   LttTime currentTime;
   LttvIAttribute * Attributes;
 
This page took 0.023944 seconds and 4 git commands to generate.