The libcaca public header. More...
Data Structures | |
struct | caca_event |
Handling of user events. More... | |
Defines | |
#define | CACA_API_VERSION_1 |
#define | CACA_BLACK 0x00 |
#define | CACA_BLUE 0x01 |
#define | CACA_GREEN 0x02 |
#define | CACA_CYAN 0x03 |
#define | CACA_RED 0x04 |
#define | CACA_MAGENTA 0x05 |
#define | CACA_BROWN 0x06 |
#define | CACA_LIGHTGRAY 0x07 |
#define | CACA_DARKGRAY 0x08 |
#define | CACA_LIGHTBLUE 0x09 |
#define | CACA_LIGHTGREEN 0x0a |
#define | CACA_LIGHTCYAN 0x0b |
#define | CACA_LIGHTRED 0x0c |
#define | CACA_LIGHTMAGENTA 0x0d |
#define | CACA_YELLOW 0x0e |
#define | CACA_WHITE 0x0f |
#define | CACA_DEFAULT 0x10 |
#define | CACA_TRANSPARENT 0x20 |
#define | CACA_BOLD 0x01 |
#define | CACA_ITALICS 0x02 |
#define | CACA_UNDERLINE 0x04 |
#define | CACA_BLINK 0x08 |
#define | CACA_MAGIC_FULLWIDTH 0x000ffffe |
Typedefs | |
typedef struct caca_canvas | caca_canvas_t |
typedef struct caca_dither | caca_dither_t |
typedef struct caca_font | caca_font_t |
typedef struct caca_file | caca_file_t |
typedef struct caca_display | caca_display_t |
typedef struct caca_event | caca_event_t |
Enumerations | |
enum | caca_event_type { CACA_EVENT_NONE = 0x0000, CACA_EVENT_KEY_PRESS = 0x0001, CACA_EVENT_KEY_RELEASE = 0x0002, CACA_EVENT_MOUSE_PRESS = 0x0004, CACA_EVENT_MOUSE_RELEASE = 0x0008, CACA_EVENT_MOUSE_MOTION = 0x0010, CACA_EVENT_RESIZE = 0x0020, CACA_EVENT_QUIT = 0x0040, CACA_EVENT_ANY = 0xffff } |
User event type enumeration. More... | |
enum | caca_key { CACA_KEY_UNKNOWN = 0x00, CACA_KEY_CTRL_A = 0x01, CACA_KEY_CTRL_B = 0x02, CACA_KEY_CTRL_C = 0x03, CACA_KEY_CTRL_D = 0x04, CACA_KEY_CTRL_E = 0x05, CACA_KEY_CTRL_F = 0x06, CACA_KEY_CTRL_G = 0x07, CACA_KEY_BACKSPACE = 0x08, CACA_KEY_TAB = 0x09, CACA_KEY_CTRL_J = 0x0a, CACA_KEY_CTRL_K = 0x0b, CACA_KEY_CTRL_L = 0x0c, CACA_KEY_RETURN = 0x0d, CACA_KEY_CTRL_N = 0x0e, CACA_KEY_CTRL_O = 0x0f, CACA_KEY_CTRL_P = 0x10, CACA_KEY_CTRL_Q = 0x11, CACA_KEY_CTRL_R = 0x12, CACA_KEY_PAUSE = 0x13, CACA_KEY_CTRL_T = 0x14, CACA_KEY_CTRL_U = 0x15, CACA_KEY_CTRL_V = 0x16, CACA_KEY_CTRL_W = 0x17, CACA_KEY_CTRL_X = 0x18, CACA_KEY_CTRL_Y = 0x19, CACA_KEY_CTRL_Z = 0x1a, CACA_KEY_ESCAPE = 0x1b, CACA_KEY_DELETE = 0x7f, CACA_KEY_UP = 0x111, CACA_KEY_DOWN = 0x112, CACA_KEY_LEFT = 0x113, CACA_KEY_RIGHT = 0x114, CACA_KEY_INSERT = 0x115, CACA_KEY_HOME = 0x116, CACA_KEY_END = 0x117, CACA_KEY_PAGEUP = 0x118, CACA_KEY_PAGEDOWN = 0x119, CACA_KEY_F1 = 0x11a, CACA_KEY_F2 = 0x11b, CACA_KEY_F3 = 0x11c, CACA_KEY_F4 = 0x11d, CACA_KEY_F5 = 0x11e, CACA_KEY_F6 = 0x11f, CACA_KEY_F7 = 0x120, CACA_KEY_F8 = 0x121, CACA_KEY_F9 = 0x122, CACA_KEY_F10 = 0x123, CACA_KEY_F11 = 0x124, CACA_KEY_F12 = 0x125, CACA_KEY_F13 = 0x126, CACA_KEY_F14 = 0x127, CACA_KEY_F15 = 0x128 } |
Special key values. More... | |
Functions | |
__extern caca_canvas_t * | caca_create_canvas (int, int) |
Initialise a libcaca canvas. | |
__extern int | caca_manage_canvas (caca_canvas_t *, int(*)(void *), void *) |
Manage a canvas. | |
__extern int | caca_unmanage_canvas (caca_canvas_t *, int(*)(void *), void *) |
Unmanage a canvas. | |
__extern int | caca_set_canvas_size (caca_canvas_t *, int, int) |
Resize a canvas. | |
__extern int | caca_get_canvas_width (caca_canvas_t const *) |
Get the canvas width. | |
__extern int | caca_get_canvas_height (caca_canvas_t const *) |
Get the canvas height. | |
__extern uint8_t const * | caca_get_canvas_chars (caca_canvas_t const *) |
Get the canvas character array. | |
__extern uint8_t const * | caca_get_canvas_attrs (caca_canvas_t const *) |
Get the canvas attribute array. | |
__extern int | caca_free_canvas (caca_canvas_t *) |
Uninitialise libcaca. | |
__extern int | caca_rand (int, int) |
Generate a random integer within a range. | |
__extern char const * | caca_get_version (void) |
Return the libcaca version. | |
__extern int | caca_gotoxy (caca_canvas_t *, int, int) |
Set cursor position. | |
__extern int | caca_get_cursor_x (caca_canvas_t const *) |
Get X cursor position. | |
__extern int | caca_get_cursor_y (caca_canvas_t const *) |
Get Y cursor position. | |
__extern int | caca_put_char (caca_canvas_t *, int, int, uint32_t) |
Print an ASCII or Unicode character. | |
__extern uint32_t | caca_get_char (caca_canvas_t const *, int, int) |
Get the Unicode character at the given coordinates. | |
__extern int | caca_put_str (caca_canvas_t *, int, int, char const *) |
Print a string. | |
__extern int | caca_printf (caca_canvas_t *, int, int, char const *,...) |
Print a formated string. | |
__extern int | caca_clear_canvas (caca_canvas_t *) |
Clear the canvas. | |
__extern int | caca_set_canvas_handle (caca_canvas_t *, int, int) |
Set cursor handle. | |
__extern int | caca_get_canvas_handle_x (caca_canvas_t const *) |
Get X handle position. | |
__extern int | caca_get_canvas_handle_y (caca_canvas_t const *) |
Get Y handle position. | |
__extern int | caca_blit (caca_canvas_t *, int, int, caca_canvas_t const *, caca_canvas_t const *) |
Blit a canvas onto another one. | |
__extern int | caca_set_canvas_boundaries (caca_canvas_t *, int, int, int, int) |
Set a canvas' new boundaries. | |
__extern int | caca_invert (caca_canvas_t *) |
Invert a canvas' colours. | |
__extern int | caca_flip (caca_canvas_t *) |
Flip a canvas horizontally. | |
__extern int | caca_flop (caca_canvas_t *) |
Flip a canvas vertically. | |
__extern int | caca_rotate_180 (caca_canvas_t *) |
Rotate a canvas. | |
__extern int | caca_rotate_left (caca_canvas_t *) |
Rotate a canvas, 90 degrees counterclockwise. | |
__extern int | caca_rotate_right (caca_canvas_t *) |
Rotate a canvas, 90 degrees counterclockwise. | |
__extern int | caca_stretch_left (caca_canvas_t *) |
Rotate and stretch a canvas, 90 degrees counterclockwise. | |
__extern int | caca_stretch_right (caca_canvas_t *) |
Rotate and stretch a canvas, 90 degrees clockwise. | |
__extern uint32_t | caca_get_attr (caca_canvas_t const *, int, int) |
Get the text attribute at the given coordinates. | |
__extern int | caca_set_attr (caca_canvas_t *, uint32_t) |
Set the default character attribute. | |
__extern int | caca_put_attr (caca_canvas_t *, int, int, uint32_t) |
Set the character attribute at the given coordinates. | |
__extern int | caca_set_color_ansi (caca_canvas_t *, uint8_t, uint8_t) |
Set the default colour pair for text (ANSI version). | |
__extern int | caca_set_color_argb (caca_canvas_t *, uint16_t, uint16_t) |
Set the default colour pair for text (truecolor version). | |
__extern uint8_t | caca_attr_to_ansi (uint32_t) |
Get DOS ANSI information from attribute. | |
__extern uint8_t | caca_attr_to_ansi_fg (uint32_t) |
Get ANSI foreground information from attribute. | |
__extern uint8_t | caca_attr_to_ansi_bg (uint32_t) |
Get ANSI background information from attribute. | |
__extern uint16_t | caca_attr_to_rgb12_fg (uint32_t) |
Get 12-bit RGB foreground information from attribute. | |
__extern uint16_t | caca_attr_to_rgb12_bg (uint32_t) |
Get 12-bit RGB background information from attribute. | |
__extern void | caca_attr_to_argb64 (uint32_t, uint8_t[8]) |
Get 64-bit ARGB information from attribute. | |
__extern uint32_t | caca_utf8_to_utf32 (char const *, size_t *) |
Convert a UTF-8 character to UTF-32. | |
__extern size_t | caca_utf32_to_utf8 (char *, uint32_t) |
Convert a UTF-32 character to UTF-8. | |
__extern uint8_t | caca_utf32_to_cp437 (uint32_t) |
Convert a UTF-32 character to CP437. | |
__extern uint32_t | caca_cp437_to_utf32 (uint8_t) |
Convert a CP437 character to UTF-32. | |
__extern char | caca_utf32_to_ascii (uint32_t) |
Convert a UTF-32 character to ASCII. | |
__extern int | caca_utf32_is_fullwidth (uint32_t) |
Tell whether a UTF-32 character is fullwidth. | |
__extern int | caca_draw_line (caca_canvas_t *, int, int, int, int, uint32_t) |
Draw a line on the canvas using the given character. | |
__extern int | caca_draw_polyline (caca_canvas_t *, int const x[], int const y[], int, uint32_t) |
Draw a polyline. | |
__extern int | caca_draw_thin_line (caca_canvas_t *, int, int, int, int) |
Draw a thin line on the canvas, using ASCII art. | |
__extern int | caca_draw_thin_polyline (caca_canvas_t *, int const x[], int const y[], int) |
Draw an ASCII art thin polyline. | |
__extern int | caca_draw_circle (caca_canvas_t *, int, int, int, uint32_t) |
Draw a circle on the canvas using the given character. | |
__extern int | caca_draw_ellipse (caca_canvas_t *, int, int, int, int, uint32_t) |
Draw an ellipse on the canvas using the given character. | |
__extern int | caca_draw_thin_ellipse (caca_canvas_t *, int, int, int, int) |
Draw a thin ellipse on the canvas. | |
__extern int | caca_fill_ellipse (caca_canvas_t *, int, int, int, int, uint32_t) |
Fill an ellipse on the canvas using the given character. | |
__extern int | caca_draw_box (caca_canvas_t *, int, int, int, int, uint32_t) |
Draw a box on the canvas using the given character. | |
__extern int | caca_draw_thin_box (caca_canvas_t *, int, int, int, int) |
Draw a thin box on the canvas. | |
__extern int | caca_draw_cp437_box (caca_canvas_t *, int, int, int, int) |
Draw a box on the canvas using CP437 characters. | |
__extern int | caca_fill_box (caca_canvas_t *, int, int, int, int, uint32_t) |
Fill a box on the canvas using the given character. | |
__extern int | caca_draw_triangle (caca_canvas_t *, int, int, int, int, int, int, uint32_t) |
Draw a triangle on the canvas using the given character. | |
__extern int | caca_draw_thin_triangle (caca_canvas_t *, int, int, int, int, int, int) |
Draw a thin triangle on the canvas. | |
__extern int | caca_fill_triangle (caca_canvas_t *, int, int, int, int, int, int, uint32_t) |
Fill a triangle on the canvas using the given character. | |
__extern int | caca_get_frame_count (caca_canvas_t const *) |
Get the number of frames in a canvas. | |
__extern int | caca_set_frame (caca_canvas_t *, int) |
Activate a given canvas frame. | |
__extern char const * | caca_get_frame_name (caca_canvas_t const *) |
Get the current frame's name. | |
__extern int | caca_set_frame_name (caca_canvas_t *, char const *) |
Set the current frame's name. | |
__extern int | caca_create_frame (caca_canvas_t *, int) |
Add a frame to a canvas. | |
__extern int | caca_free_frame (caca_canvas_t *, int) |
Remove a frame from a canvas. | |
__extern caca_dither_t * | caca_create_dither (int, int, int, int, uint32_t, uint32_t, uint32_t, uint32_t) |
Create an internal dither object. | |
__extern int | caca_set_dither_palette (caca_dither_t *, uint32_t r[], uint32_t g[], uint32_t b[], uint32_t a[]) |
Set the palette of an 8bpp dither object. | |
__extern int | caca_set_dither_brightness (caca_dither_t *, float) |
Set the brightness of a dither object. | |
__extern float | caca_get_dither_brightness (caca_dither_t const *) |
Get the brightness of a dither object. | |
__extern int | caca_set_dither_gamma (caca_dither_t *, float) |
Set the gamma of a dither object. | |
__extern float | caca_get_dither_gamma (caca_dither_t const *) |
Get the gamma of a dither object. | |
__extern int | caca_set_dither_contrast (caca_dither_t *, float) |
Set the contrast of a dither object. | |
__extern float | caca_get_dither_contrast (caca_dither_t const *) |
Get the contrast of a dither object. | |
__extern int | caca_set_dither_antialias (caca_dither_t *, char const *) |
Set dither antialiasing. | |
__extern char const *const * | caca_get_dither_antialias_list (caca_dither_t const *) |
Get available antialiasing methods. | |
__extern char const * | caca_get_dither_antialias (caca_dither_t const *) |
Get current antialiasing method. | |
__extern int | caca_set_dither_color (caca_dither_t *, char const *) |
Choose colours used for dithering. | |
__extern char const *const * | caca_get_dither_color_list (caca_dither_t const *) |
Get available colour modes. | |
__extern char const * | caca_get_dither_color (caca_dither_t const *) |
Get current colour mode. | |
__extern int | caca_set_dither_charset (caca_dither_t *, char const *) |
Choose characters used for dithering. | |
__extern char const *const * | caca_get_dither_charset_list (caca_dither_t const *) |
Get available dither character sets. | |
__extern char const * | caca_get_dither_charset (caca_dither_t const *) |
Get current character set. | |
__extern int | caca_set_dither_algorithm (caca_dither_t *, char const *) |
Set dithering algorithm. | |
__extern char const *const * | caca_get_dither_algorithm_list (caca_dither_t const *) |
Get dithering algorithms. | |
__extern char const * | caca_get_dither_algorithm (caca_dither_t const *) |
Get current dithering algorithm. | |
__extern int | caca_dither_bitmap (caca_canvas_t *, int, int, int, int, caca_dither_t const *, void *) |
Dither a bitmap on the canvas. | |
__extern int | caca_free_dither (caca_dither_t *) |
Free the memory associated with a dither. | |
__extern caca_font_t * | caca_load_font (void const *, size_t) |
Load a font from memory for future use. | |
__extern char const *const * | caca_get_font_list (void) |
Get available builtin fonts. | |
__extern int | caca_get_font_width (caca_font_t const *) |
Get a font's standard glyph width. | |
__extern int | caca_get_font_height (caca_font_t const *) |
Get a font's standard glyph height. | |
__extern uint32_t const * | caca_get_font_blocks (caca_font_t const *) |
Get a font's list of supported glyphs. | |
__extern int | caca_render_canvas (caca_canvas_t const *, caca_font_t const *, void *, int, int, int) |
Render the canvas onto an image buffer. | |
__extern int | caca_free_font (caca_font_t *) |
Free a font structure. | |
__extern int | caca_canvas_set_figfont (caca_canvas_t *, char const *) |
__extern int | caca_put_figchar (caca_canvas_t *, uint32_t) |
__extern int | caca_flush_figlet (caca_canvas_t *) |
__extern caca_file_t * | caca_file_open (char const *, const char *) |
__extern int | caca_file_close (caca_file_t *) |
__extern uint64_t | caca_file_tell (caca_file_t *) |
__extern size_t | caca_file_read (caca_file_t *, void *, size_t) |
__extern size_t | caca_file_write (caca_file_t *, const void *, size_t) |
__extern char * | caca_file_gets (caca_file_t *, char *, int) |
__extern int | caca_file_eof (caca_file_t *) |
__extern ssize_t | caca_import_memory (caca_canvas_t *, void const *, size_t, char const *) |
__extern ssize_t | caca_import_file (caca_canvas_t *, char const *, char const *) |
__extern char const *const * | caca_get_import_list (void) |
__extern void * | caca_export_memory (caca_canvas_t const *, char const *, size_t *) |
__extern char const *const * | caca_get_export_list (void) |
__extern caca_display_t * | caca_create_display (caca_canvas_t *) |
Attach a caca graphical context to a caca canvas. | |
__extern caca_display_t * | caca_create_display_with_driver (caca_canvas_t *, char const *) |
Attach a specific caca graphical context to a caca canvas. | |
__extern char const *const * | caca_get_display_driver_list (void) |
Get available display drivers. | |
__extern char const * | caca_get_display_driver (caca_display_t *) |
Return a caca graphical context's current output driver. | |
__extern int | caca_set_display_driver (caca_display_t *, char const *) |
Set the output driver. | |
__extern int | caca_free_display (caca_display_t *) |
Detach a caca graphical context from a caca backend context. | |
__extern caca_canvas_t * | caca_get_canvas (caca_display_t *) |
Get the canvas attached to a caca graphical context. | |
__extern int | caca_refresh_display (caca_display_t *) |
Flush pending changes and redraw the screen. | |
__extern int | caca_set_display_time (caca_display_t *, int) |
Set the refresh delay. | |
__extern int | caca_get_display_time (caca_display_t const *) |
Get the display's average rendering time. | |
__extern int | caca_get_display_width (caca_display_t const *) |
Get the display width. | |
__extern int | caca_get_display_height (caca_display_t const *) |
Get the display height. | |
__extern int | caca_set_display_title (caca_display_t *, char const *) |
Set the display title. | |
__extern int | caca_set_mouse (caca_display_t *, int) |
Show or hide the mouse pointer. | |
__extern int | caca_set_cursor (caca_display_t *, int) |
Show or hide the cursor. | |
__extern int | caca_get_event (caca_display_t *, int, caca_event_t *, int) |
Get the next mouse or keyboard input event. | |
__extern int | caca_get_mouse_x (caca_display_t const *) |
Return the X mouse coordinate. | |
__extern int | caca_get_mouse_y (caca_display_t const *) |
Return the Y mouse coordinate. | |
__extern enum caca_event_type | caca_get_event_type (caca_event_t const *) |
Return an event's type. | |
__extern int | caca_get_event_key_ch (caca_event_t const *) |
Return a key press or key release event's value. | |
__extern uint32_t | caca_get_event_key_utf32 (caca_event_t const *) |
Return a key press or key release event's Unicode value. | |
__extern int | caca_get_event_key_utf8 (caca_event_t const *, char *) |
Return a key press or key release event's UTF-8 value. | |
__extern int | caca_get_event_mouse_button (caca_event_t const *) |
Return a mouse press or mouse release event's button. | |
__extern int | caca_get_event_mouse_x (caca_event_t const *) |
Return a mouse motion event's X coordinate. | |
__extern int | caca_get_event_mouse_y (caca_event_t const *) |
Return a mouse motion event's Y coordinate. | |
__extern int | caca_get_event_resize_width (caca_event_t const *) |
Return a resize event's display width value. | |
__extern int | caca_get_event_resize_height (caca_event_t const *) |
Return a resize event's display height value. |
#define CACA_API_VERSION_1 |
libcaca API version
typedef struct caca_canvas caca_canvas_t |
libcaca canvas
typedef struct caca_dither caca_dither_t |
dither structure
typedef struct caca_font caca_font_t |
font structure
typedef struct caca_file caca_file_t |
file handle structure
typedef struct caca_display caca_display_t |
libcaca display context
typedef struct caca_event caca_event_t |
libcaca event structure
enum caca_event_type |
This enum serves two purposes:
enum caca_key |
Special key values returned by caca_get_event() for which there is no printable ASCII equivalent.