lttvwindow_report_time_window : reports the new time window.
lttvwindow_report_current_time : reports the new current time.
lttvwindow_report_dividor : reports the new horizontal dividor's position.
-lttvwindow_report_focus : One on the widgets in the viewer has the keyboard's
- focus from GTK.
/* Module Related API */
+/* GQuark containing constructors of viewers in global attributes */
+extern GQuark LTTV_VIEWER_CONSTRUCTORS;
/* constructor a the viewer */
-//FIXME explain LttvTracesetSelector and key
-typedef GtkWidget * (*lttvwindow_viewer_constructor)
- (Tab *tab, LttvTracesetSelector * s, char *key);
+typedef GtkWidget* (*lttvwindow_viewer_constructor)(Tab *tab);
/**
* window.
*
* It should be called by init function of the module.
- *
+ *
+ * @param name name of the viewer : mainly used as tag for constructor
* @param menu_path path of the menu item. NULL : no menu entry.
* @param menu_text text of the menu item.
* @param pixmap Image shown on the toolbar item. NULL : no button.
*/
void lttvwindow_register_constructor
- (char * menu_path,
+ (char * name,
+ char * menu_path,
char * menu_text,
char ** pixmap,
char * tooltip,
void lttvwindow_report_dividor(Tab *tab, gint position);
-/**
- * Function to set the focused viewer of the tab.
- * It will be called by a viewer's signal handle associated with
- * the grab_focus signal of all widgets in the viewer.
- *
- * @param tab the tab the viewer belongs to.
- * @param top_widget the top widget containing all the other widgets of the
- * viewer.
- */
-void lttvwindow_report_focus(Tab *tab,
- GtkWidget *top_widget);
-
/* Structure sent to the events request hook */
/* Value considered as empty*/
LttTime end_time; /* Unset : ltt_time_infinite*/
guint num_events; /* Unset : G_MAXUINT */
LttvTracesetContextPosition *end_position; /* Unset : NULL */
+ gint trace; /* unset : -1 */
+ GArray *hooks; /* Unset : NULL */
LttvHooks *before_chunk_traceset; /* Unset : NULL */
LttvHooks *before_chunk_trace; /* Unset : NULL */
LttvHooks *before_chunk_tracefile;/* Unset : NULL */
} EventsRequest;
/* Maximum number of events to proceed at once in a chunk */
-#define CHUNK_NUM_EVENTS 200
+#define CHUNK_NUM_EVENTS 2000
/**
/**
- * Function to get the current time window of the current tab.
- *
- * @param tab the tab the viewer belongs to.
- * @return the current tab's time interval.
+ * Function to get the current time interval shown on the current tab.
+ * It will be called by a viewer's hook function to update the
+ * shown time interval of the viewer and also be called by the constructor
+ * of the viewer.
+ * @param tab viewer's tab
+ * @return time window.
*/
-TimeWindow lttvwindow_get_time_window(Tab *tab);
+static inline TimeWindow lttvwindow_get_time_window(Tab *tab)
+{
+ return tab->time_window;
+}
/**