gfio: add graph axis unit change notification callbacks
[fio.git] / graph.h
... / ...
CommitLineData
1#ifndef GRAPH_H
2#define GRAPH_H
3
4struct graph;
5
6#define INVISIBLE_COLOR (-1.0)
7
8struct graph *graph_new(unsigned int xdim, unsigned int ydim, const char *font);
9void graph_set_size(struct graph *g, unsigned int xdim, unsigned int ydim);
10void bar_graph_draw(struct graph *g, cairo_t *cr);
11void line_graph_draw(struct graph *g, cairo_t *cr);
12void line_graph_set_data_count_limit(struct graph *g, int per_label_limit);
13void graph_title(struct graph *g, const char *title);
14void graph_x_title(struct graph *g, const char *title);
15void graph_y_title(struct graph *g, const char *title);
16void graph_add_label(struct graph *g, const char *label);
17int graph_add_data(struct graph *g, const char *label, const double value);
18int graph_add_xy_data(struct graph *g, const char *label,
19 const double x, const double y);
20void graph_set_color(struct graph *g, const char *label,
21 double red, double green, double blue);
22void graph_free(struct graph *bg);
23
24typedef void (*graph_axis_unit_change_callback)(struct graph *g, int power_of_ten);
25void graph_x_axis_unit_change_notify(struct graph *g, graph_axis_unit_change_callback f);
26void graph_y_axis_unit_change_notify(struct graph *g, graph_axis_unit_change_callback f);
27
28#endif
29