remove facility.h and type.h
[lttv.git] / ltt / branches / poly / lttv / modules / gui / lttvwindow / lttvwindow / lttvwindowtraces.c
index 76992022167afc01054e5d9ba87e151332708922..eb449f03f964daf94242d0ab39a2caa41c4122a1 100644 (file)
@@ -72,7 +72,7 @@ gboolean lttvwindowtraces_process_pending_requests(LttvTrace *trace);
  *         NULL is returned if the trace is not present
  */
 
-LttvTrace *lttvwindowtraces_get_trace_by_name(gchar *path)
+__EXPORT LttvTrace *lttvwindowtraces_get_trace_by_name(gchar *path)
 {
   guint i;
 
@@ -97,19 +97,21 @@ LttvTrace *lttvwindowtraces_get_trace_by_name(gchar *path)
 
 /* Get a trace by its number identifier */
 
-LttvTrace *lttvwindowtraces_get_trace(guint num)
+__EXPORT LttvTrace *lttvwindowtraces_get_trace(guint num)
 {
   LttvAttribute *g_attribute = lttv_global_attributes();
   LttvAttribute *attribute;
   LttvAttributeType type;
   LttvAttributeName name;
   LttvAttributeValue value;
+       gboolean is_named;
 
   g_assert(attribute = 
       LTTV_ATTRIBUTE(lttv_iattribute_find_subdir(LTTV_IATTRIBUTE(g_attribute),
                                 LTTV_TRACES)));
   
-  type = lttv_iattribute_get(LTTV_IATTRIBUTE(attribute), num, &name, &value);
+  type = lttv_iattribute_get(LTTV_IATTRIBUTE(attribute), num, &name, &value,
+                       &is_named);
 
   if(type == LTTV_POINTER) {
     return (LttvTrace *)*(value.v_pointer);
@@ -120,7 +122,7 @@ LttvTrace *lttvwindowtraces_get_trace(guint num)
 
 /* Total number of traces */
 
-guint lttvwindowtraces_get_number()
+__EXPORT guint lttvwindowtraces_get_number()
 {
   LttvAttribute *g_attribute = lttv_global_attributes();
   LttvAttribute *attribute;
@@ -209,7 +211,6 @@ void lttvwindowtraces_add_trace(LttvTrace *trace)
   value = lttv_attribute_add(attribute,
                      LTTV_NOTIFY_CURRENT,
                      LTTV_POINTER);
 }
 
 /* Remove a trace from the global attributes */
@@ -315,7 +316,7 @@ static void destroy_dialog(BackgroundRequest *bg_req)
  *                    hooks.
  */
 
-void lttvwindowtraces_background_request_queue
+__EXPORT void lttvwindowtraces_background_request_queue
                      (GtkWidget *widget, LttvTrace *trace, gchar *module_name)
 {
   BackgroundRequest *bg_req;
@@ -432,7 +433,7 @@ void lttvwindowtraces_background_request_remove
  *
  */
 
-gboolean lttvwindowtraces_background_request_find
+__EXPORT gboolean lttvwindowtraces_background_request_find
                      (LttvTrace *trace, gchar *module_name)
 {
   LttvAttribute *attribute = lttv_trace_attribute(trace);
@@ -470,7 +471,7 @@ gboolean lttvwindowtraces_background_request_find
  * @param notify  Hook to call when the notify position is passed
  */
 
-void lttvwindowtraces_background_notify_queue
+__EXPORT void lttvwindowtraces_background_notify_queue
  (gpointer                     owner,
   LttvTrace                   *trace,
   LttTime                      notify_time,
@@ -524,7 +525,7 @@ void lttvwindowtraces_background_notify_queue
  * @param notify  Hook to call when the notify position is passed
  */
 
-void lttvwindowtraces_background_notify_current
+__EXPORT void lttvwindowtraces_background_notify_current
  (gpointer                     owner,
   LttvTrace                   *trace,
   LttTime                      notify_time,
@@ -585,7 +586,7 @@ static void notify_request_free(BackgroundNotify *notify_req)
  * @param owner owner of the background notification
  */
 
-void lttvwindowtraces_background_notify_remove(gpointer owner)
+__EXPORT void lttvwindowtraces_background_notify_remove(gpointer owner)
 {
   guint i;
 
@@ -871,7 +872,7 @@ void lttvwindowtraces_unset_in_progress(LttvAttributeName module_name,
                          LTTV_IN_PROGRESS);
 }
 
-gboolean lttvwindowtraces_get_in_progress(LttvAttributeName module_name,
+__EXPORT gboolean lttvwindowtraces_get_in_progress(LttvAttributeName module_name,
                                           LttvTrace *trace)
 {
   LttvAttribute *attribute = lttv_trace_attribute(trace);
@@ -922,7 +923,7 @@ void lttvwindowtraces_unset_ready(LttvAttributeName module_name,
                          LTTV_READY);
 }
 
-gboolean lttvwindowtraces_get_ready(LttvAttributeName module_name,
+__EXPORT gboolean lttvwindowtraces_get_ready(LttvAttributeName module_name,
                                     LttvTrace *trace)
 {
   LttvAttribute *attribute = lttv_trace_attribute(trace);
@@ -973,6 +974,8 @@ gboolean lttvwindowtraces_process_pending_requests(LttvTrace *trace)
 
   if(trace == NULL)
     return FALSE;
+
+  if(lttvwindow_preempt_count > 0) return TRUE;
    
   attribute = lttv_trace_attribute(trace);
   
@@ -1309,8 +1312,13 @@ gboolean lttvwindowtraces_process_pending_requests(LttvTrace *trace)
                                                &value);
             g_assert(type == LTTV_POINTER);
             LttvHooks *after_request = (LttvHooks*)*(value.v_pointer);
-
-            if(after_request != NULL) lttv_hooks_call(after_request, tsc);
+            {
+              struct sum_traceset_closure t_closure;
+             t_closure.tss = (LttvTracesetStats*)tsc;
+             t_closure.current_time = ltt_time_infinite;
+              if(after_request != NULL) lttv_hooks_call(after_request,
+               &t_closure);
+            }
             
             if(bg_req->dialog != NULL)
               gtk_widget_destroy(bg_req->dialog);
This page took 0.026856 seconds and 4 git commands to generate.