]> git.sesse.net Git - nms/blob - web/ext/graph.h
Lots of merging from TG06 NMS.
[nms] / web / ext / graph.h
1 /* Copyright (C) 2006 Kjetil Ørbekk, Norway */
2
3 #include <cairo.h>
4 #include <math.h>
5 #include <stdio.h>
6 #include <stdlib.h>
7
8 typedef struct _graph {
9   cairo_t *cr;
10   cairo_surface_t *surface;
11   int width;
12   int height;
13   int xoffset;
14   double min_x;
15   double max_x;
16   double min_y;
17   double max_y;
18   double xs;
19   double ys;
20 } graph;
21
22 void mygraph_fill_background(graph *mygraph);
23
24 void mygraph_draw_graph (cairo_t *cr, int x, int y );
25
26 graph *mygraph_new (int width, int height);
27
28 graph *mygraph_make_graph (graph *mygraph, double min_x,
29                            double max_x, double min_y, double max_y,
30                            int tickgran);
31
32 void mygraph_plot_series (graph *mygraph, int *xvals, unsigned long long *yvals,
33                           int n_vals, double r, double g, double b);
34
35 void mygraph_to_file (graph *mygraph, char *filename);
36
37 void mygraph_cleanup (graph *self);
38
39 void mygraph_fill_background (graph *mygraph);
40