X-Git-Url: http://git.lttng.org./?a=blobdiff_plain;f=lttv%2Flttv%2Fstate.h;h=8a86c369160a6bc94ca3706078f982b6f8e96701;hb=1ce1e7d7160e8028777c97849d9959c9834b876d;hp=cd91354cbc5218834f70aea4bb0bc5b85d2f3691;hpb=7a4bdb546094fea3343bfc80e3744ea26a08dd22;p=lttv.git diff --git a/lttv/lttv/state.h b/lttv/lttv/state.h index cd91354c..8a86c369 100644 --- a/lttv/lttv/state.h +++ b/lttv/lttv/state.h @@ -119,7 +119,6 @@ extern GQuark LTT_EVENT_STATEDUMP_END, //LTT_EVENT_FUNCTION_ENTRY, //LTT_EVENT_FUNCTION_EXIT, - LTT_EVENT_THREAD_BRAND, LTT_EVENT_REQUEST_ISSUE, LTT_EVENT_REQUEST_COMPLETE, LTT_EVENT_LIST_INTERRUPT, @@ -171,11 +170,22 @@ typedef struct _LttvTraceStateClass LttvTraceStateClass; typedef struct _LttvTracefileState LttvTracefileState; typedef struct _LttvTracefileStateClass LttvTracefileStateClass; -void lttv_traceset_add_state_event_hooks(LttvTraceset *traceset); +void lttv_state_add_event_hooks(LttvTraceset *traceset); +gint lttv_state_hook_add_event_hooks(void *hook_data, void *call_data); -void lttv_traceset_remove_state_event_hooks(LttvTraceset *traceset); +void lttv_state_remove_event_hooks(LttvTraceset *traceset); +gint lttv_state_hook_remove_event_hooks(void *hook_data, void *call_data); -void lttv_traceset_seek_time_closest_prior_state(LttvTraceset *traceset, LttTime t); +gint lttv_state_save_hook_add_event_hooks(void *hook_data, void *call_data); +gint lttv_state_save_hook_remove_event_hooks(void *hook_data, void *call_data); + + +//TODO ybrosseau 2012-07-30: Change name of seek_time_closest to: +//void lttv_traceset_seek_time_closest_prior_state(LttvTraceset *traceset, LttTime t); + +void lttv_state_traceset_seek_time_closest(LttvTraceset *traceset, LttTime t); +void lttv_state_traceset_seek_time(LttvTraceset *traceset, LttTime t); +void lttv_state_traceset_seek_position(LttvTraceset *traceset, LttvTracesetPosition *position); /* The LttvProcessState structure defines the current state for each process. A process can make system calls (in some rare cases nested) and receive @@ -236,9 +246,6 @@ extern LttvProcessStatus LTTV_STATE_RUN, LTTV_STATE_DEAD; -extern GQuark - LTTV_STATE_UNBRANDED; - typedef GQuark LttvProcessType; extern LttvProcessType @@ -283,7 +290,6 @@ typedef struct _LttvProcessState { LttTime creation_time; LttTime insertion_time; GQuark name; - GQuark brand; GQuark pid_time; GArray *execution_stack; /* Array of LttvExecutionState */ LttvExecutionState *state; /* Top of interrupt stack */ @@ -364,7 +370,7 @@ struct _LttvTraceState { /* Array of per cpu running process */ LttvProcessState **running_process; - gboolean has_precomputed_states; + LttvCPUState *cpu_states; /* state of each cpu */ /* FIXME should be a g_array to deal with resize and copy. */ LttvIRQState *irq_states; /* state of each irq handler */