aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSteven Rostedt <srostedt@redhat.com>2011-02-16 09:56:52 -0500
committerSteven Rostedt <rostedt@goodmis.org>2011-02-21 20:42:06 -0500
commitab89d45e261ec033f03a0dd6b43fcd42193e8a69 (patch)
tree076491d855b83225548f7efa95278b6f1e9ef1c3
parent9dd6becfbe33e6334e19dce95e0e5048b9990e6b (diff)
trace-view: Add way to get any row in the tree
Currently there's only handlers to get visible rows from the tree. It may be needed to look at other rows from other pages (like in the search function). Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
-rw-r--r--trace-view-store.c20
-rw-r--r--trace-view-store.h5
2 files changed, 24 insertions, 1 deletions
diff --git a/trace-view-store.c b/trace-view-store.c
index 3b62680..4afc192 100644
--- a/trace-view-store.c
+++ b/trace-view-store.c
@@ -1140,6 +1140,25 @@ trace_view_store_get_visible_row(TraceViewStore *store, gint row)
1140 return get_row(store, row); 1140 return get_row(store, row);
1141} 1141}
1142 1142
1143TraceViewRecord *
1144trace_view_store_get_actual_row(TraceViewStore *store, gint row)
1145{
1146 g_return_val_if_fail (TRACE_VIEW_IS_LIST (store), NULL);
1147 g_return_val_if_fail (row >= 0, NULL);
1148 g_return_val_if_fail (row < store->actual_rows, NULL);
1149
1150 if (!store->rows)
1151 return NULL;
1152
1153 return store->rows[row];
1154}
1155
1156gint trace_view_store_get_num_actual_rows(TraceViewStore *store)
1157{
1158 g_return_val_if_fail (TRACE_VIEW_IS_LIST (store), -1);
1159 return store->actual_rows;
1160}
1161
1143gint get_next_pid(TraceViewStore *store, struct pevent *pevent, struct record *record) 1162gint get_next_pid(TraceViewStore *store, struct pevent *pevent, struct record *record)
1144{ 1163{
1145 unsigned long long val; 1164 unsigned long long val;
@@ -1340,7 +1359,6 @@ void trace_view_store_assign_filters(TraceViewStore *store,
1340 store->task_filter = filter_task_hash_copy(task_filter); 1359 store->task_filter = filter_task_hash_copy(task_filter);
1341} 1360}
1342 1361
1343
1344/***************************************************************************** 1362/*****************************************************************************
1345 * 1363 *
1346 * trace_view_store_append_record: Empty lists are boring. This function can 1364 * trace_view_store_append_record: Empty lists are boring. This function can
diff --git a/trace-view-store.h b/trace-view-store.h
index ac907e0..8f26aed 100644
--- a/trace-view-store.h
+++ b/trace-view-store.h
@@ -154,6 +154,10 @@ TraceViewRecord *trace_view_store_get_row(TraceViewStore *store, gint row);
154 154
155TraceViewRecord *trace_view_store_get_visible_row(TraceViewStore *store, gint row); 155TraceViewRecord *trace_view_store_get_visible_row(TraceViewStore *store, gint row);
156 156
157TraceViewRecord *trace_view_store_get_actual_row(TraceViewStore *store, gint row);
158
159gint trace_view_store_get_num_actual_rows(TraceViewStore *store);
160
157gboolean trace_view_store_event_enabled(TraceViewStore *store, gint event_id); 161gboolean trace_view_store_event_enabled(TraceViewStore *store, gint event_id);
158 162
159void trace_view_store_set_all_events_enabled(TraceViewStore *store); 163void trace_view_store_set_all_events_enabled(TraceViewStore *store);
@@ -246,4 +250,5 @@ trace_view_store_get_event_filter(TraceViewStore *store)
246 g_return_val_if_fail (TRACE_VIEW_IS_LIST (store), FALSE); 250 g_return_val_if_fail (TRACE_VIEW_IS_LIST (store), FALSE);
247 return store->event_filter; 251 return store->event_filter;
248} 252}
253
249#endif /* _trace_view_store_h_included_ */ 254#endif /* _trace_view_store_h_included_ */