fix regression in graph generation -- martin sperl
[rrdtool.git] / src / rrd_graph.h
index 5c97b80..24331a6 100644 (file)
@@ -7,10 +7,12 @@
 
 /* this may configure __EXTENSIONS__ without which pango will fail to compile
    so load this early */
+#if defined(_WIN32) && !defined(__CYGWIN__) && !defined(__CYGWIN32__)
+#include "../win32/config.h"
+#else
 #ifdef HAVE_CONFIG_H
 #include "../rrd_config.h"
-#elif defined(_WIN32) && !defined(__CYGWIN__) && !defined(__CYGWIN32__)
-#include "../win32/config.h"
+#endif
 #endif
 
 #include <cairo.h>
@@ -90,11 +92,16 @@ enum text_prop_en {
 enum legend_pos{ NORTH = 0, WEST, SOUTH, EAST };
 enum legend_direction { TOP_DOWN = 0, BOTTOM_UP };
 
-enum gfx_if_en { IF_PNG = 0, IF_SVG, IF_EPS, IF_PDF };
+enum gfx_if_en { IF_PNG = 0, IF_SVG, IF_EPS, IF_PDF, 
+                IF_XML=128, IF_CSV=129, IF_TSV=130, IF_SSV=131, IF_JSON=132,
+                IF_XMLENUM=133, IF_JSONTIME=134
+};
 enum gfx_en { GFX_LINE = 0, GFX_AREA, GFX_TEXT };
 enum gfx_h_align_en { GFX_H_NULL = 0, GFX_H_LEFT, GFX_H_RIGHT, GFX_H_CENTER };
 enum gfx_v_align_en { GFX_V_NULL = 0, GFX_V_TOP, GFX_V_BOTTOM, GFX_V_CENTER };
 
+enum gfx_type_en {GTYPE_TIME=0,GTYPE_XY=1};
+
 /* cairo color components */
 typedef struct gfx_color_t {
     double    red;
@@ -206,8 +213,8 @@ typedef struct graph_desc_t {
 typedef struct image_desc_t {
 
     /* configuration of graph */
-
     char      graphfile[MAXPATH];   /* filename for graphic */
+    enum      gfx_type_en graph_type; /* type of the graph */
     long      xsize, ysize; /* graph area size in pixels */
     struct gfx_color_t graph_col[__GRC_END__];  /* real colors for the graph */
     text_prop_t text_prop[TEXT_PROP_LAST];  /* text properties */
@@ -297,6 +304,8 @@ enum gf_en gf_conv(
     char *);
 enum gfx_if_en if_conv(
     char *);
+enum gfx_type_en type_conv(
+    char *);
 enum tmt_en tmt_conv(
     char *);
 enum grc_en grc_conv(
@@ -367,6 +376,17 @@ int       lazy_check(
     image_desc_t *);
 int       graph_paint(
     image_desc_t *);
+int       graph_paint_timestring(
+                                image_desc_t *,int,int);
+int       graph_paint_xy(
+                        image_desc_t *,int,int);
+int       rrd_graph_xport(
+    image_desc_t *);
+
+int       graph_cairo_setup(
+    image_desc_t *);
+int       graph_cairo_finish(
+    image_desc_t *);
 
 int       gdes_alloc(
     image_desc_t *);