the Doxygen documentation.tags/v0.99.beta14
@@ -38,7 +38,7 @@ typedef struct cucul_dither cucul_dither_t; | |||||
/** font structure */ | /** font structure */ | ||||
typedef struct cucul_font cucul_font_t; | typedef struct cucul_font cucul_font_t; | ||||
/** \defgroup attributes libcucul attribute definitions | |||||
/** \defgroup attr_defines libcucul attribute definitions | |||||
* | * | ||||
* Colours and styles that can be used with cucul_set_attr(). | * Colours and styles that can be used with cucul_set_attr(). | ||||
* | * | ||||
@@ -204,64 +204,6 @@ static void *export_caca(cucul_canvas_t *cv, unsigned long int *bytes) | |||||
return data; | return data; | ||||
} | } | ||||
/* | |||||
* The libcaca canvas format, version 1 | |||||
* ------------------------------------ | |||||
* | |||||
* All types are big endian. | |||||
* | |||||
* struct | |||||
* { | |||||
* magic: | |||||
* uint8_t caca_header[2]; // "\xCA\xCA" | |||||
* uint8_t caca_file_type[2]; // "CV" | |||||
* | |||||
* canvas_header: | |||||
* uint32_t control_size; // Control size (canvas_data - canvas_header) | |||||
* uint32_t data_size; // Data size (EOF - canvas_data) | |||||
* | |||||
* uint16_t version; // Canvas format version | |||||
* // bit 0: set to 1 if canvas is compatible | |||||
* // with version 1 of the format | |||||
* // bits 1-15: unused yet, must be 0 | |||||
* | |||||
* uint32_t frames; // Frame count | |||||
* | |||||
* uint16_t flags; // Feature flags | |||||
* // bits 0-15: unused yet, must be 0 | |||||
* | |||||
* frame_info: | |||||
* struct | |||||
* { | |||||
* uint32_t width; // Frame width | |||||
* uint32_t height; // Frame height | |||||
* uint32_t duration; // Frame duration in milliseconds, 0 to | |||||
* // not specify a duration | |||||
* uint32_t attr; // Graphics context attribute | |||||
* int32_t cursor_x; // Cursor X coordinate | |||||
* int32_t cursor_y; // Cursor Y coordinate | |||||
* int32_t handle_x; // Handle X coordinate | |||||
* int32_t handle_y; // Handle Y coordinate | |||||
* } | |||||
* frame_list[frames]; | |||||
* | |||||
* control_extension_1: | |||||
* control_extension_2: | |||||
* ... | |||||
* control_extension_N: | |||||
* ... // reserved for future use | |||||
* | |||||
* canvas_data: | |||||
* uint8_t data[data_size]; // canvas data | |||||
* | |||||
* data_extension_1: | |||||
* data_extension_2: | |||||
* ... | |||||
* data_extension_N: | |||||
* ... // reserved for future use | |||||
* }; | |||||
*/ | |||||
/* Generate UTF-8 representation of current canvas. */ | /* Generate UTF-8 representation of current canvas. */ | ||||
static void *export_utf8(cucul_canvas_t *cv, unsigned long int *bytes, int cr) | static void *export_utf8(cucul_canvas_t *cv, unsigned long int *bytes, int cr) | ||||
{ | { | ||||
@@ -488,72 +488,3 @@ int cucul_render_canvas(cucul_canvas_t *cv, cucul_font_t *f, | |||||
return 0; | return 0; | ||||
} | } | ||||
/* | |||||
* The libcaca font format, version 1 | |||||
* ---------------------------------- | |||||
* | |||||
* All types are big endian. | |||||
* | |||||
* struct | |||||
* { | |||||
* magic: | |||||
* uint8_t caca_header[2]; // "\xCA\xCA" | |||||
* uint8_t caca_file_type[2]; // "FT" | |||||
* | |||||
* font_header: | |||||
* uint32_t control_size; // Control size (font_data - font_header) | |||||
* uint32_t data_size; // Data size (EOF - font_data) | |||||
* | |||||
* uint16_t version; // Font format version | |||||
* // bit 0: set to 1 if font is compatible | |||||
* // with version 1 of the format | |||||
* // bits 1-15: unused yet, must be 0 | |||||
* | |||||
* uint16_t blocks; // Number of blocks in the font | |||||
* uint32_t glyphs; // Total number of glyphs in the font | |||||
* | |||||
* uint16_t bpp; // Bits per pixel for glyph data (valid | |||||
* // Values are 1, 2, 4 and 8) | |||||
* uint16_t width; // Maximum glyph width | |||||
* uint16_t height; // Maximum glyph height | |||||
* | |||||
* uint16_t flags; // Feature flags | |||||
* // bit 0: set to 1 if font is fixed width | |||||
* // bits 1-15: unused yet, must be 0 | |||||
* | |||||
* block_info: | |||||
* struct | |||||
* { | |||||
* uint32_t start; // Unicode index of the first glyph | |||||
* uint32_t stop; // Unicode index of the last glyph + 1 | |||||
* uint32_t index; // Glyph info index of the first glyph | |||||
* } | |||||
* block_list[blocks]; | |||||
* | |||||
* glyph_info: | |||||
* struct | |||||
* { | |||||
* uint16_t width; // Glyph width in pixels | |||||
* uint16_t height; // Glyph height in pixels | |||||
* uint32_t data_offset; // Offset (starting from data) to the data | |||||
* // for the first character | |||||
* } | |||||
* glyph_list[glyphs]; | |||||
* | |||||
* control_extension_1: | |||||
* control_extension_2: | |||||
* ... | |||||
* control_extension_N: | |||||
* ... // reserved for future use | |||||
* | |||||
* font_data: | |||||
* uint8_t data[data_size]; // glyph data | |||||
* | |||||
* data_extension_1: | |||||
* data_extension_2: | |||||
* ... | |||||
* data_extension_N: | |||||
* ... // reserved for future use | |||||
* }; | |||||
*/ | |||||
@@ -96,7 +96,7 @@ int cucul_set_canvas_frame(cucul_canvas_t *cv, unsigned int frame) | |||||
* - \c ENOMEM Not enough memory to allocate new frame. | * - \c ENOMEM Not enough memory to allocate new frame. | ||||
* | * | ||||
* \param cv A libcucul canvas | * \param cv A libcucul canvas | ||||
* \param frame The index where to insert the new frame | |||||
* \param id The index where to insert the new frame | |||||
* \return 0 in case of success, -1 if an error occurred. | * \return 0 in case of success, -1 if an error occurred. | ||||
*/ | */ | ||||
int cucul_create_canvas_frame(cucul_canvas_t *cv, unsigned int id) | int cucul_create_canvas_frame(cucul_canvas_t *cv, unsigned int id) | ||||
@@ -151,7 +151,7 @@ int cucul_create_canvas_frame(cucul_canvas_t *cv, unsigned int id) | |||||
* last frame of the canvas. | * last frame of the canvas. | ||||
* | * | ||||
* \param cv A libcucul canvas | * \param cv A libcucul canvas | ||||
* \param frame The index of the frame to delete | |||||
* \param id The index of the frame to delete | |||||
* \return 0 in case of success, -1 if an error occurred. | * \return 0 in case of success, -1 if an error occurred. | ||||
*/ | */ | ||||
int cucul_free_canvas_frame(cucul_canvas_t *cv, unsigned int id) | int cucul_free_canvas_frame(cucul_canvas_t *cv, unsigned int id) | ||||
@@ -2,7 +2,7 @@ | |||||
EXTRA_DIST = doxygen.cfg.in footer.html header.html $(man_MANS) $(doxygen_DOX) | EXTRA_DIST = doxygen.cfg.in footer.html header.html $(man_MANS) $(doxygen_DOX) | ||||
doxygen_DOX = libcaca.dox user.dox migrating.dox tutorial.dox style.dox | |||||
doxygen_DOX = libcaca.dox user.dox migrating.dox tutorial.dox canvas.dox font.dox style.dox | |||||
man_MANS = caca-config.1 cacafire.1 cacaview.1 cacaserver.1 img2irc.1 cacaplay.1 | man_MANS = caca-config.1 cacafire.1 cacaview.1 cacaserver.1 img2irc.1 cacaplay.1 | ||||
if BUILD_DOCUMENTATION | if BUILD_DOCUMENTATION | ||||
@@ -0,0 +1,60 @@ | |||||
/* $Id$ */ | |||||
/** \page canvas The libcaca canvas format (version 1) | |||||
All types are big endian. | |||||
\code | |||||
struct | |||||
{ | |||||
magic: | |||||
uint8_t caca_header[2]; // "\xCA\xCA" | |||||
uint8_t caca_file_type[2]; // "CV" | |||||
canvas_header: | |||||
uint32_t control_size; // Control size (canvas_data - canvas_header) | |||||
uint32_t data_size; // Data size (EOF - canvas_data) | |||||
uint16_t version; // Canvas format version | |||||
// bit 0: set to 1 if canvas is compatible | |||||
// with version 1 of the format | |||||
// bits 1-15: unused yet, must be 0 | |||||
uint32_t frames; // Frame count | |||||
uint16_t flags; // Feature flags | |||||
// bits 0-15: unused yet, must be 0 | |||||
frame_info: | |||||
struct | |||||
{ | |||||
uint32_t width; // Frame width | |||||
uint32_t height; // Frame height | |||||
uint32_t duration; // Frame duration in milliseconds, 0 to | |||||
// not specify a duration | |||||
uint32_t attr; // Graphics context attribute | |||||
int32_t cursor_x; // Cursor X coordinate | |||||
int32_t cursor_y; // Cursor Y coordinate | |||||
int32_t handle_x; // Handle X coordinate | |||||
int32_t handle_y; // Handle Y coordinate | |||||
} | |||||
frame_list[frames]; | |||||
control_extension_1: | |||||
control_extension_2: | |||||
... | |||||
control_extension_N: | |||||
... // reserved for future use | |||||
canvas_data: | |||||
uint8_t data[data_size]; // canvas data | |||||
data_extension_1: | |||||
data_extension_2: | |||||
... | |||||
data_extension_N: | |||||
... // reserved for future use | |||||
}; | |||||
\endcode | |||||
*/ |
@@ -0,0 +1,71 @@ | |||||
/* $Id$ */ | |||||
/** \page font The libcaca font format (version 1) | |||||
All types are big endian. | |||||
\code | |||||
struct | |||||
{ | |||||
magic: | |||||
uint8_t caca_header[2]; // "\xCA\xCA" | |||||
uint8_t caca_file_type[2]; // "FT" | |||||
font_header: | |||||
uint32_t control_size; // Control size (font_data - font_header) | |||||
uint32_t data_size; // Data size (EOF - font_data) | |||||
uint16_t version; // Font format version | |||||
// bit 0: set to 1 if font is compatible | |||||
// with version 1 of the format | |||||
// bits 1-15: unused yet, must be 0 | |||||
uint16_t blocks; // Number of blocks in the font | |||||
uint32_t glyphs; // Total number of glyphs in the font | |||||
uint16_t bpp; // Bits per pixel for glyph data (valid | |||||
// Values are 1, 2, 4 and 8) | |||||
uint16_t width; // Maximum glyph width | |||||
uint16_t height; // Maximum glyph height | |||||
uint16_t flags; // Feature flags | |||||
// bit 0: set to 1 if font is fixed width | |||||
// bits 1-15: unused yet, must be 0 | |||||
block_info: | |||||
struct | |||||
{ | |||||
uint32_t start; // Unicode index of the first glyph | |||||
uint32_t stop; // Unicode index of the last glyph + 1 | |||||
uint32_t index; // Glyph info index of the first glyph | |||||
} | |||||
block_list[blocks]; | |||||
glyph_info: | |||||
struct | |||||
{ | |||||
uint16_t width; // Glyph width in pixels | |||||
uint16_t height; // Glyph height in pixels | |||||
uint32_t data_offset; // Offset (starting from data) to the data | |||||
// for the first character | |||||
} | |||||
glyph_list[glyphs]; | |||||
control_extension_1: | |||||
control_extension_2: | |||||
... | |||||
control_extension_N: | |||||
... // reserved for future use | |||||
font_data: | |||||
uint8_t data[data_size]; // glyph data | |||||
data_extension_1: | |||||
data_extension_2: | |||||
... | |||||
data_extension_N: | |||||
... // reserved for future use | |||||
}; | |||||
\endcode | |||||
*/ |
@@ -40,6 +40,8 @@ | |||||
There is also information specially targeted at \e libcaca developers: | There is also information specially targeted at \e libcaca developers: | ||||
- \subpage font | |||||
- \subpage canvas | |||||
- \subpage style | - \subpage style | ||||
\section user User's documentation | \section user User's documentation | ||||