4 * Copyright 2004 Develer S.r.l. (http://www.develer.com/)
5 * Copyright 1999, 2000, 2001, 2003 Bernardo Innocenti <bernie@develer.com>
6 * This file is part of DevLib - See README.devlib for information.
9 * \brief Simple charts on top of mware/gfx routines (interface).
12 * - \c CONFIG_CHART_TYPE_X: type for the input dataset of X-coordinates
13 * - \c CONFIG_CHART_TYPE_Y: type for the input dataset of Y-coordinates
16 * \author Bernardo Innocenti <bernie@develer.com>
21 *#* Revision 1.2 2005/11/04 18:17:45 bernie
22 *#* Fix header guards and includes for new location of gfx module.
24 *#* Revision 1.1 2005/11/04 18:11:35 bernie
25 *#* Move graphics stuff from mware/ to gfx/.
27 *#* Revision 1.7 2005/11/04 16:20:02 bernie
28 *#* Fix reference to README.devlib in header.
30 *#* Revision 1.6 2005/04/11 19:10:28 bernie
31 *#* Include top-level headers from cfg/ subdir.
33 *#* Revision 1.5 2004/09/14 20:56:39 bernie
34 *#* Make more generic and adapt to new gfx functions.
36 *#* Revision 1.3 2004/08/11 19:39:12 bernie
37 *#* Use chart_x_t and chart_y_t for the input dataset.
39 *#* Revision 1.1 2004/08/04 03:16:30 bernie
40 *#* Import simple chart drawing code.
46 #include <gfx/gfx.h> /* vcoord_t */
47 #include <cfg/config.h> /* CONFIG_ stuff */
50 * \name Width/height of the small ticks drawn over the axes
53 #define TICKS_HEIGHT 2
58 * \name Chart frame dimensions
61 #define CHART_BORDERTOP 0
62 #define CHART_BORDERBOTTOM 0
63 #define CHART_BORDERLEFT 0
64 #define CHART_BORDERRIGHT 0
67 #ifndef CONFIG_CHART_TYPE_X
68 #define CONFIG_CHART_TYPE_X vcoord_t
70 #ifndef CONFIG_CHART_TYPE_Y
71 #define CONFIG_CHART_TYPE_Y vcoord_t
75 typedef CONFIG_CHART_TYPE_X chart_x_t;
76 typedef CONFIG_CHART_TYPE_Y chart_y_t;
79 /* Public function protos */
80 void chart_init(Bitmap *bm, coord_t xmin, coord_t ymin, coord_t xmax, coord_t ymax);
81 void chart_setScale(Bitmap *bm, chart_x_t xmin, chart_y_t ymin, chart_x_t xmax, chart_y_t ymax);
82 void chart_drawAxis(Bitmap *bm);
83 void chart_drawCurve(Bitmap *bm, const chart_y_t *curve_y, int curve_cnt);
84 void chart_drawDots(Bitmap *bm, const chart_x_t *dots_x, const chart_y_t *dots_y, int cnt);
86 #endif /* GFX_CHARTS_H */