* 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;
/* 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);
/* Total number of traces */
-guint lttvwindowtraces_get_number()
+__EXPORT guint lttvwindowtraces_get_number()
{
LttvAttribute *g_attribute = lttv_global_attributes();
LttvAttribute *attribute;
value = lttv_attribute_add(attribute,
LTTV_NOTIFY_CURRENT,
LTTV_POINTER);
-
}
/* Remove a trace from the global attributes */
* hooks.
*/
-void lttvwindowtraces_background_request_queue
+__EXPORT void lttvwindowtraces_background_request_queue
(GtkWidget *widget, LttvTrace *trace, gchar *module_name)
{
BackgroundRequest *bg_req;
*
*/
-gboolean lttvwindowtraces_background_request_find
+__EXPORT gboolean lttvwindowtraces_background_request_find
(LttvTrace *trace, gchar *module_name)
{
LttvAttribute *attribute = lttv_trace_attribute(trace);
* @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,
* @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,
* @param owner owner of the background notification
*/
-void lttvwindowtraces_background_notify_remove(gpointer owner)
+__EXPORT void lttvwindowtraces_background_notify_remove(gpointer owner)
{
guint i;
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);
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);
if(trace == NULL)
return FALSE;
+
+ if(lttvwindow_preempt_count > 0) return TRUE;
attribute = lttv_trace_attribute(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);