X-Git-Url: http://git.lttng.org./?a=blobdiff_plain;f=ltt%2Fbranches%2Fpoly%2Flttv%2Fmodules%2Fgui%2Flttvwindow%2Flttvwindow%2Flttvwindow.h;h=4b856245a6f41c4d24a3d8731ee2751425d87610;hb=088f6772c700cf75d4ba27adf086dc37d961a960;hp=25cb2a7feb10cf9e6e8e25205115690975c258ab;hpb=0354c8455147c6c31a2b43f3360acc9d046376a5;p=lttv.git diff --git a/ltt/branches/poly/lttv/modules/gui/lttvwindow/lttvwindow/lttvwindow.h b/ltt/branches/poly/lttv/modules/gui/lttvwindow/lttvwindow/lttvwindow.h index 25cb2a7f..4b856245 100644 --- a/ltt/branches/poly/lttv/modules/gui/lttvwindow/lttvwindow/lttvwindow.h +++ b/ltt/branches/poly/lttv/modules/gui/lttvwindow/lttvwindow/lttvwindow.h @@ -119,6 +119,7 @@ Available report methods are : 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_filter : reports the new filter object @@ -256,9 +257,8 @@ FIXME : explain other important events #include #include #include +#include #include -#include -//FIXME (not ready yet) #include /* Module Related API */ @@ -601,6 +601,8 @@ typedef struct _EventsRequest { 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 */ @@ -614,7 +616,7 @@ typedef struct _EventsRequest { } EventsRequest; /* Maximum number of events to proceed at once in a chunk */ -#define CHUNK_NUM_EVENTS 500 +#define CHUNK_NUM_EVENTS 6000 /** @@ -656,10 +658,12 @@ void lttvwindow_events_request_remove_all(Tab *tab, /** - * 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); @@ -681,10 +685,23 @@ LttTime lttvwindow_get_current_time(Tab *tab); * @param filter, a pointer to a filter. */ -//FIXME -typedef void lttv_filter; -//FIXME -const lttv_filter *lttvwindow_get_filter(Tab *tab); +LttvFilter *lttvwindow_get_filter(Tab *tab); + +/** + * Function to set the filter of the current tab. + * It should be called by the filter GUI to tell the + * main window to update the filter tab's lttv_filter. + * + * Notice : the lttv_filter object will be owned by the + * main window after the return of this function. + * Do NOT desallocate it. + * + * @param main_win, the main window the viewer belongs to. + * @param filter, a pointer to a filter. + */ + +void lttvwindow_report_filter(Tab *tab, LttvFilter *filter); + /** @@ -708,4 +725,29 @@ LttvTracesetStats* lttvwindow_get_traceset_stats(Tab *tab); LttvTracesetContext* lttvwindow_get_traceset_context(Tab *tab); +/* set_time_window + * + * It updates the time window of the tab, then calls the updatetimewindow + * hooks of each viewer. + * + * This is called whenever the scrollbar value changes. + * + * This is mostly an internal function. + */ + +void set_time_window(Tab *tab, const TimeWindow *time_window); + + +/* set_current_time + * + * It updates the current time of the tab, then calls the updatetimewindow + * hooks of each viewer. + * + * This is called whenever the current time value changes. + * + * This is mostly an internal function. + */ + +void set_current_time(Tab *tab, const LttTime *current_time); + #endif //VIEWER_H