diff options
Diffstat (limited to 'rt-plot.h')
-rw-r--r-- | rt-plot.h | 23 |
1 files changed, 22 insertions, 1 deletions
@@ -16,12 +16,29 @@ typedef struct record* (*write_header_cb)(struct rt_plot_common *rt, | |||
16 | struct graph_info *ginfo, | 16 | struct graph_info *ginfo, |
17 | struct trace_seq *s, | 17 | struct trace_seq *s, |
18 | unsigned long long time); | 18 | unsigned long long time); |
19 | typedef int (*iterate_cb)(struct graph_info *ginfo, struct record *record, void *data); | ||
20 | |||
21 | struct job_info { | ||
22 | unsigned long long release; | ||
23 | unsigned long long deadline; | ||
24 | unsigned long long start; | ||
25 | unsigned long long end; | ||
26 | unsigned long long no; | ||
27 | }; | ||
28 | |||
29 | |||
19 | struct rt_plot_common { | 30 | struct rt_plot_common { |
20 | record_matches_cb record_matches; | 31 | record_matches_cb record_matches; |
21 | is_drawn_cb is_drawn; | 32 | is_drawn_cb is_drawn; |
22 | write_header_cb write_header; | 33 | write_header_cb write_header; |
34 | |||
35 | /* Cache the current job info. Used in mouseovers to avoid recalulating | ||
36 | * job information when the mouse does not cross job boundaries. | ||
37 | */ | ||
38 | struct job_info last_job; | ||
23 | }; | 39 | }; |
24 | 40 | ||
41 | |||
25 | int | 42 | int |
26 | rt_plot_display_last_event(struct graph_info *ginfo, struct graph_plot *plot, | 43 | rt_plot_display_last_event(struct graph_info *ginfo, struct graph_plot *plot, |
27 | struct trace_seq *s, unsigned long long time); | 44 | struct trace_seq *s, unsigned long long time); |
@@ -60,9 +77,13 @@ void set_cpus_to_rts(struct graph_info *ginfo, | |||
60 | int is_task_running(struct graph_info *ginfo, | 77 | int is_task_running(struct graph_info *ginfo, |
61 | unsigned long long time, | 78 | unsigned long long time, |
62 | int pid); | 79 | int pid); |
63 | void get_previous_release(struct graph_info *ginfo, int tid, | 80 | void get_previous_release(struct graph_info *ginfo, struct rt_plot_common *common, |
81 | int tid, | ||
64 | unsigned long long time, int *job, | 82 | unsigned long long time, int *job, |
65 | unsigned long long *release, | 83 | unsigned long long *release, |
66 | unsigned long long *deadline); | 84 | unsigned long long *deadline); |
67 | 85 | ||
86 | void iterate(struct graph_info *ginfo, int reverse, iterate_cb cb, void *data); | ||
87 | |||
88 | |||
68 | #endif | 89 | #endif |