X-Git-Url: http://git.lttng.org./?a=blobdiff_plain;f=ltt%2Fbranches%2Fpoly%2Flttv%2Fmodules%2Fgui%2FAPI%2FgtkTraceSet.c;h=f5ba86b96a3b91c9846274d1c505115886f862ae;hb=f735c59ac4e50934e2df2e46eb781b7009310dca;hp=019a96b8a51eff1599147e4c0f01b5c03cbc2cdc;hpb=561f58527175d5546f8269760e2691459293d4ac;p=lttv.git diff --git a/ltt/branches/poly/lttv/modules/gui/API/gtkTraceSet.c b/ltt/branches/poly/lttv/modules/gui/API/gtkTraceSet.c index 019a96b8..f5ba86b9 100644 --- a/ltt/branches/poly/lttv/modules/gui/API/gtkTraceSet.c +++ b/ltt/branches/poly/lttv/modules/gui/API/gtkTraceSet.c @@ -10,14 +10,14 @@ * */ -#include "common.h" +#include #include #include #include #include #include -#include "toolbar.h" -#include "menu.h" +#include +#include /** * Internal function parts @@ -28,7 +28,7 @@ * @param view_constructor constructor of the viewer. */ -void RemoveToolbar(void *view_constructor) +void RemoveToolbar(lttv_constructor view_constructor) { g_printf("Toolbar for the viewer will be removed\n"); } @@ -38,7 +38,7 @@ void RemoveToolbar(void *view_constructor) * @param view_constructor constructor of the viewer. */ -void RemoveMenu(void *view_constructor) +void RemoveMenu(lttv_constructor view_constructor) { g_printf("Menu entry for the viewer will be removed\n"); } @@ -97,7 +97,7 @@ void SetFilter(mainWindow * main_win, gpointer filter) * @param view_constructor constructor of the viewer. */ -void ToolbarItemReg(GdkPixmap * pixmap, char *tooltip, void *view_constructor) +void ToolbarItemReg(char ** pixmap, char *tooltip, lttv_constructor view_constructor) { LttvIAttribute *attributes_global = LTTV_IATTRIBUTE(lttv_global_attributes()); LttvToolbars * toolbar; @@ -123,7 +123,7 @@ void ToolbarItemReg(GdkPixmap * pixmap, char *tooltip, void *view_constructor) * a reference to find out where the pixmap and tooltip are. */ -void ToolbarItemUnreg(void *view_constructor) +void ToolbarItemUnreg(lttv_constructor view_constructor) { LttvIAttribute *attributes_global = LTTV_IATTRIBUTE(lttv_global_attributes()); LttvToolbars * toolbar; @@ -147,7 +147,7 @@ void ToolbarItemUnreg(void *view_constructor) * @param view_constructor constructor of the viewer. */ -void MenuItemReg(char *menu_path, char *menu_text, void *view_constructor) +void MenuItemReg(char *menu_path, char *menu_text, lttv_constructor view_constructor) { LttvIAttribute *attributes_global = LTTV_IATTRIBUTE(lttv_global_attributes()); LttvMenus * menu; @@ -172,14 +172,14 @@ void MenuItemReg(char *menu_path, char *menu_text, void *view_constructor) * a reference to find out where the menu_path and menu_text are. */ -void MenuItemUnreg(void *view_constructor) +void MenuItemUnreg(lttv_constructor view_constructor) { LttvIAttribute *attributes_global = LTTV_IATTRIBUTE(lttv_global_attributes()); LttvMenus * menu; LttvAttributeValue value; g_assert(lttv_iattribute_find_by_path(attributes_global, - "viewers/menu", LTTV_POINTER, &value)); + "viewers/menu", LTTV_POINTER, &value)); menu = (LttvMenus*)*(value.v_pointer); if(lttv_menus_remove(menu, view_constructor)) @@ -575,9 +575,11 @@ void SetHPaneDividor(mainWindow *main_win, gint position) * @param end the end time of the last event to be processed. */ -void processTraceset(mainWindow *main_win, LttTime start, LttTime end) +void processTraceset(mainWindow *main_win, LttTime start, + LttTime end, unsigned maxNumEvents) { - lttv_process_trace(start, end, main_win->traceset, main_win->traceset_context); + lttv_process_trace(start, end, main_win->traceset, + main_win->traceset_context, maxNumEvents); } /** @@ -636,3 +638,40 @@ void contextRemoveHooks(mainWindow *main_win , check_tracefile,before_tracefile,after_tracefile, check_event,before_event, after_event); } + + +/** + * Function to get the life span of the traceset + * @param main_win the main window the viewer belongs to. + * @param start start time of the traceset. + * @param end end time of the traceset. + */ + +void getTracesetTimeSpan(mainWindow *main_win, LttTime * start, LttTime* end) +{ + LttvTraceset * traceset = main_win->traceset; + int numTraces = lttv_traceset_number(traceset); + int i; + LttTime s, e; + LttvTraceContext *tc; + LttTrace * trace; + + for(i=0; itraceset_context->traces[i]; + trace = tc->t; + + ltt_trace_time_span_get(trace, &s, &e); + + if(i==0){ + *start = s; + *end = e; + }else{ + if(s.tv_sec < start->tv_sec || + (s.tv_sec == start->tv_sec && s.tv_nsec < start->tv_nsec)) + *start = s; + if(e.tv_sec > end->tv_sec || + (e.tv_sec == end->tv_sec && e.tv_nsec > end->tv_nsec)) + *end = e; + } + } +}