source: libcaca/trunk/libee/ee.h @ 181

Last change on this file since 181 was 181, checked in by Sam Hocevar, 17 years ago
  • libee/ee.c: + Replaced ee_color_names[] with ee_get_color_name(). + Don't oversleep in ee_refresh().
  • libee/graphics.c: + Implemented ee_printf().
  • test/demo.c: + If new keypresses are detected, don't wait for the next screen refresh. + Added an fps counter on demos. + Added controls for outlines and drawing boundaries.
  • Property svn:keywords set to Id
File size: 3.0 KB
Line 
1/*
2 *   libee         ASCII-Art library
3 *   Copyright (c) 2002, 2003 Sam Hocevar <sam@zoy.org>
4 *                 All Rights Reserved
5 *
6 *   $Id: ee.h 181 2003-11-15 12:42:38Z sam $
7 *
8 *   This program is free software; you can redistribute it and/or modify
9 *   it under the terms of the GNU General Public License as published by
10 *   the Free Software Foundation; either version 2 of the License, or
11 *   (at your option) any later version.
12 *
13 *   This program is distributed in the hope that it will be useful,
14 *   but WITHOUT ANY WARRANTY; without even the implied warranty of
15 *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16 *   GNU General Public License for more details.
17 *
18 *   You should have received a copy of the GNU General Public License
19 *   along with this program; if not, write to the Free Software
20 *   Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
21 */
22
23#ifndef __EE_H__
24#define __EE_H__
25
26#ifdef __cplusplus
27extern "C"
28{
29#endif
30
31/*
32 * Colors
33 */
34enum ee_colors
35{
36    EE_BLACK = 0,
37    EE_BLUE = 1,
38    EE_GREEN = 2,
39    EE_CYAN = 3,
40    EE_RED = 4,
41    EE_MAGENTA = 5,
42    EE_BROWN = 6,
43    EE_LIGHTGRAY = 7,
44    EE_DARKGRAY = 8,
45    EE_LIGHTBLUE = 9,
46    EE_LIGHTGREEN = 10,
47    EE_LIGHTCYAN = 11,
48    EE_LIGHTRED = 12,
49    EE_LIGHTMAGENTA = 13,
50    EE_YELLOW = 14,
51    EE_WHITE = 15
52};
53
54/*
55 * Types
56 */
57struct ee_sprite;
58
59/*
60 * Prototypes
61 */
62int ee_init(void);
63void ee_set_delay(unsigned int);
64unsigned int ee_get_rendertime(void);
65unsigned int ee_get_width(void);
66unsigned int ee_get_height(void);
67const char *ee_get_color_name(unsigned int);
68void ee_refresh(void);
69void ee_end(void);
70
71char ee_get_key(void);
72
73void ee_set_color(int);
74int ee_get_color(void);
75void ee_putchar(int, int, char);
76void ee_putstr(int, int, const char *);
77void ee_printf(int, int, const char *, ...);
78void ee_clear(void);
79
80void ee_draw_line(int, int, int, int, char);
81void ee_draw_polyline(const int[], const int[], int, char);
82void ee_draw_thin_line(int, int, int, int);
83void ee_draw_thin_polyline(const int[], const int[], int);
84
85void ee_draw_circle(int, int, int, char);
86void ee_draw_ellipse(int, int, int, int, char);
87void ee_draw_thin_ellipse(int, int, int, int);
88void ee_fill_ellipse(int, int, int, int, char);
89
90void ee_draw_box(int, int, int, int, char);
91void ee_draw_thin_box(int, int, int, int);
92void ee_fill_box(int, int, int, int, char);
93
94void ee_draw_triangle(int, int, int, int, int, int, char);
95void ee_draw_thin_triangle(int, int, int, int, int, int);
96void ee_fill_triangle(int, int, int, int, int, int, char);
97
98int ee_rand(int, int);
99unsigned int ee_sqrt(unsigned int);
100
101struct ee_sprite * ee_load_sprite(const char *);
102int ee_get_sprite_frames(struct ee_sprite *);
103int ee_get_sprite_width(struct ee_sprite *, int);
104int ee_get_sprite_height(struct ee_sprite *, int);
105int ee_get_sprite_dx(struct ee_sprite *, int);
106int ee_get_sprite_dy(struct ee_sprite *, int);
107void ee_draw_sprite(int, int, struct ee_sprite *, int);
108void ee_free_sprite(struct ee_sprite *);
109
110#ifdef __cplusplus
111}
112#endif
113
114#endif /* __EE_H__ */
Note: See TracBrowser for help on using the repository browser.