X-Git-Url: https://codewiz.org/gitweb?a=blobdiff_plain;f=mware%2Fcharts.h;h=ca55259cef83a703aa3ad646d0efca9a2dd602d0;hb=00e009957d70dab15575ab310ed83f0b78cc8656;hp=3b407ff0a25a13da52b596cad007904f6c2af4f6;hpb=d3e358f62b2048b1ef96059cccc5ffeaeabc2eea;p=bertos.git diff --git a/mware/charts.h b/mware/charts.h index 3b407ff0..ca55259c 100755 --- a/mware/charts.h +++ b/mware/charts.h @@ -8,30 +8,38 @@ * * \brief Simple charts on top of mware/gfx routines (interface). * + * Configuration: + * - \c CONFIG_CHART_TYPE_X: type for the input dataset of X-coordinates + * - \c CONFIG_CHART_TYPE_Y: type for the input dataset of Y-coordinates + * * \version $Id$ * \author Bernardo Innocenti */ -/* - * $Log$ - * Revision 1.2 2004/08/11 07:32:54 bernie - * Refactor after the new mware/gfx API. - * - * Revision 1.1 2004/08/04 03:16:30 bernie - * Import simple chart drawing code. - * - */ +/*#* + *#* $Log$ + *#* Revision 1.5 2004/09/14 20:56:39 bernie + *#* Make more generic and adapt to new gfx functions. + *#* + *#* Revision 1.3 2004/08/11 19:39:12 bernie + *#* Use chart_x_t and chart_y_t for the input dataset. + *#* + *#* Revision 1.1 2004/08/04 03:16:30 bernie + *#* Import simple chart drawing code. + *#* + *#*/ #ifndef MWARE_CHARTS_H #define MWARE_CHARTS_H #include /* vcoord_t */ +#include /* CONFIG_ stuff */ /*! * \name Width/height of the small ticks drawn over the axes * \{ */ #define TICKS_HEIGHT 2 -#define TICKS_WIDTH 3 +#define TICKS_WIDTH 2 /*\}*/ /*! @@ -39,24 +47,28 @@ * \{ */ #define CHART_BORDERTOP 0 -#define CHART_BORDERBOTTOM TICKS_HEIGHT -#define CHART_BORDERLEFT TICKS_WIDTH +#define CHART_BORDERBOTTOM 0 +#define CHART_BORDERLEFT 0 #define CHART_BORDERRIGHT 0 /*\}*/ -/*! - * \name Chart size in pixels - * \{ - */ -#define CHART_WIDTH (bm->width - CHART_BORDERLEFT - CHART_BORDERRIGHT) -#define CHART_HEIGHT (bm->height - CHART_BORDERTOP - CHART_BORDERBOTTOM) -/*\}*/ +#ifndef CONFIG_CHART_TYPE_X +#define CONFIG_CHART_TYPE_X vcoord_t +#endif +#ifndef CONFIG_CHART_TYPE_Y +#define CONFIG_CHART_TYPE_Y vcoord_t +#endif + + +typedef CONFIG_CHART_TYPE_X chart_x_t; +typedef CONFIG_CHART_TYPE_Y chart_y_t; /* Public function protos */ -extern void chart_init(Bitmap *bm, vcoord_t xmin, vcoord_t ymin, vcoord_t xmax, vcoord_t ymax); -extern void chart_drawAxis(Bitmap *bm); -extern void chart_drawCurve(Bitmap *bm, const vcoord_t *curve_y, int curve_cnt); -extern void chart_drawDots(Bitmap *bm, const vcoord_t *dotsx, const vcoord_t *dotsy, int cnt); +void chart_init(Bitmap *bm, coord_t xmin, coord_t ymin, coord_t xmax, coord_t ymax); +void chart_setScale(Bitmap *bm, chart_x_t xmin, chart_y_t ymin, chart_x_t xmax, chart_y_t ymax); +void chart_drawAxis(Bitmap *bm); +void chart_drawCurve(Bitmap *bm, const chart_y_t *curve_y, int curve_cnt); +void chart_drawDots(Bitmap *bm, const chart_x_t *dots_x, const chart_y_t *dots_y, int cnt); #endif /* MWARE_CHARTS_H */