cucul.h File Reference

The libcucul public header. More...


Defines

#define CUCUL_API_VERSION_1
#define CUCUL_COLOR_BLACK   0x00
#define CUCUL_COLOR_BLUE   0x01
#define CUCUL_COLOR_GREEN   0x02
#define CUCUL_COLOR_CYAN   0x03
#define CUCUL_COLOR_RED   0x04
#define CUCUL_COLOR_MAGENTA   0x05
#define CUCUL_COLOR_BROWN   0x06
#define CUCUL_COLOR_LIGHTGRAY   0x07
#define CUCUL_COLOR_DARKGRAY   0x08
#define CUCUL_COLOR_LIGHTBLUE   0x09
#define CUCUL_COLOR_LIGHTGREEN   0x0a
#define CUCUL_COLOR_LIGHTCYAN   0x0b
#define CUCUL_COLOR_LIGHTRED   0x0c
#define CUCUL_COLOR_LIGHTMAGENTA   0x0d
#define CUCUL_COLOR_YELLOW   0x0e
#define CUCUL_COLOR_WHITE   0x0f
#define CUCUL_COLOR_DEFAULT   0x10
#define CUCUL_COLOR_TRANSPARENT   0x20

Typedefs

typedef cucul_canvas cucul_canvas_t
typedef cucul_sprite cucul_sprite_t
typedef cucul_dither cucul_dither_t
typedef cucul_buffer cucul_buffer_t
typedef cucul_font cucul_font_t

Functions

cucul_canvas_tcucul_create_canvas (unsigned int, unsigned int)
 Initialise a libcucul canvas.
cucul_canvas_tcucul_load_canvas (void *, unsigned int)
 Load a memory area into a canvas.
void cucul_set_canvas_size (cucul_canvas_t *, unsigned int, unsigned int)
 Resize a canvas.
unsigned int cucul_get_canvas_width (cucul_canvas_t *)
 Get the canvas width.
unsigned int cucul_get_canvas_height (cucul_canvas_t *)
 Get the canvas height.
void cucul_free_canvas (cucul_canvas_t *)
 Uninitialise libcucul.
int cucul_rand (int, int)
 Generate a random integer within a range.
unsigned long int cucul_get_buffer_size (cucul_buffer_t *)
 Get the buffer size.
void * cucul_get_buffer_data (cucul_buffer_t *)
 Get the buffer data.
void cucul_free_buffer (cucul_buffer_t *)
 Free a buffer.
void cucul_set_color (cucul_canvas_t *, unsigned char, unsigned char)
 Set the default colour pair.
void cucul_set_truecolor (cucul_canvas_t *, unsigned int, unsigned int)
 Set the default colour pair (truecolor version).
char const * cucul_get_color_name (unsigned int)
 Translate a colour index into the colour's name.
void cucul_putchar (cucul_canvas_t *, int, int, char)
 Print an ASCII character.
void cucul_putstr (cucul_canvas_t *, int, int, char const *)
 Print a string.
void cucul_printf (cucul_canvas_t *, int, int, char const *,...)
 Print a formated string.
void cucul_clear_canvas (cucul_canvas_t *, unsigned char)
 Clear the canvas.
void cucul_blit (cucul_canvas_t *, int, int, cucul_canvas_t const *, cucul_canvas_t const *)
 Blit a canvas onto another one.
void cucul_invert (cucul_canvas_t *)
 Invert a canvas' colours.
void cucul_flip (cucul_canvas_t *)
 Flip a canvas horizontally.
void cucul_flop (cucul_canvas_t *)
 Flip a canvas vertically.
void cucul_rotate (cucul_canvas_t *)
 Rotate a canvas.
void cucul_draw_line (cucul_canvas_t *, int, int, int, int, char const *)
 Draw a line on the canvas using the given character.
void cucul_draw_polyline (cucul_canvas_t *, int const x[], int const y[], int, char const *)
 Draw a polyline.
void cucul_draw_thin_line (cucul_canvas_t *, int, int, int, int)
 Draw a thin line on the canvas, using ASCII art.
void cucul_draw_thin_polyline (cucul_canvas_t *, int const x[], int const y[], int)
 Draw an ASCII art thin polyline.
void cucul_draw_circle (cucul_canvas_t *, int, int, int, char const *)
 Draw a circle on the canvas using the given character.
void cucul_draw_ellipse (cucul_canvas_t *, int, int, int, int, char const *)
 Draw an ellipse on the canvas using the given character.
void cucul_draw_thin_ellipse (cucul_canvas_t *, int, int, int, int)
 Draw a thin ellipse on the canvas.
void cucul_fill_ellipse (cucul_canvas_t *, int, int, int, int, char const *)
 Fill an ellipse on the canvas using the given character.
void cucul_draw_box (cucul_canvas_t *, int, int, int, int, char const *)
 Draw a box on the canvas using the given character.
void cucul_draw_thin_box (cucul_canvas_t *, int, int, int, int)
 Draw a thin box on the canvas.
void cucul_fill_box (cucul_canvas_t *, int, int, int, int, char const *)
 Fill a box on the canvas using the given character.
void cucul_draw_triangle (cucul_canvas_t *, int, int, int, int, int, int, char const *)
 Draw a triangle on the canvas using the given character.
void cucul_draw_thin_triangle (cucul_canvas_t *, int, int, int, int, int, int)
 Draw a thin triangle on the canvas.
void cucul_fill_triangle (cucul_canvas_t *, int, int, int, int, int, int, char const *)
 Fill a triangle on the canvas using the given character.
cucul_sprite_tcucul_load_sprite (char const *)
 Allocate a sprite loaded from a file.
int cucul_get_sprite_frames (cucul_sprite_t const *)
 Return the number of frames in a sprite.
int cucul_get_sprite_width (cucul_sprite_t const *, int)
 Return the width of a sprite.
int cucul_get_sprite_height (cucul_sprite_t const *, int)
 Return the height of a sprite.
int cucul_get_sprite_dx (cucul_sprite_t const *, int)
 Return the X coordinate of a sprite's handle.
int cucul_get_sprite_dy (cucul_sprite_t const *, int)
 Return the Y coordinate of a sprite's handle.
void cucul_draw_sprite (cucul_canvas_t *, int, int, cucul_sprite_t const *, int)
 Draw a sprite's specific frame at the given coordinates. If the frame does not exist, nothing is displayed.
void cucul_free_sprite (cucul_sprite_t *)
 Free the memory associated with a sprite.
cucul_dither_tcucul_create_dither (unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int)
 Create an internal dither object.
void cucul_set_dither_palette (cucul_dither_t *, unsigned int r[], unsigned int g[], unsigned int b[], unsigned int a[])
 Set the palette of an 8bpp dither object.
void cucul_set_dither_brightness (cucul_dither_t *, float)
 Set the brightness of a dither object.
void cucul_set_dither_gamma (cucul_dither_t *, float)
 Set the gamma of a dither object.
void cucul_set_dither_contrast (cucul_dither_t *, float)
 Set the contrast of a dither object.
void cucul_set_dither_invert (cucul_dither_t *, int)
 Invert colors of dither.
void cucul_set_dither_antialias (cucul_dither_t *, char const *)
 Set dither antialiasing.
char const *const * cucul_get_dither_antialias_list (cucul_dither_t const *)
 Get available antialiasing methods.
void cucul_set_dither_color (cucul_dither_t *, char const *)
 Choose colours used for dithering.
char const *const * cucul_get_dither_color_list (cucul_dither_t const *)
 Get available colour modes.
void cucul_set_dither_charset (cucul_dither_t *, char const *)
 Choose characters used for dithering.
char const *const * cucul_get_dither_charset_list (cucul_dither_t const *)
 Get available dither character sets.
void cucul_set_dither_mode (cucul_dither_t *, char const *)
 Set dithering method.
char const *const * cucul_get_dither_mode_list (cucul_dither_t const *)
 Get dithering methods.
void cucul_dither_bitmap (cucul_canvas_t *, int, int, int, int, cucul_dither_t const *, void *)
 Dither a bitmap on the canvas.
void cucul_free_dither (cucul_dither_t *)
 Free the memory associated with a dither.
cucul_font_tcucul_load_font (void const *, unsigned int)
 Load a font from memory for future use.
char const *const * cucul_get_font_list (void)
 Get available builtin fonts.
unsigned int cucul_get_font_width (cucul_font_t *)
 Get a font's maximum glyph width.
unsigned int cucul_get_font_height (cucul_font_t *)
 Get a font's maximum glyph height.
void cucul_render_canvas (cucul_canvas_t *, cucul_font_t *, void *, unsigned int, unsigned int, unsigned int)
 Render the canvas onto an image buffer.
void cucul_free_font (cucul_font_t *)
 Free a font structure.
cucul_buffer_tcucul_create_export (cucul_canvas_t *, char const *)
 Export a canvas into a foreign format.
char const *const * cucul_get_export_list (void)
 Get available export formats.


Detailed Description

Version:
$Id: cucul.h 613 2006-04-21 18:03:22Z sam $
Author:
Sam Hocevar <sam@zoy.org>
This header contains the public types and functions that applications using libcucul may use.

Define Documentation

#define CUCUL_API_VERSION_1
 

libcucul API version


Typedef Documentation

typedef struct cucul_canvas cucul_canvas_t
 

libcucul context

typedef struct cucul_sprite cucul_sprite_t
 

sprite structure

typedef struct cucul_dither cucul_dither_t
 

dither structure

typedef struct cucul_buffer cucul_buffer_t
 

data buffer structure

typedef struct cucul_font cucul_font_t
 

font structure