
| Current Path : /usr/share/doc/libcaca-dev/html/ |
Linux ift1.ift-informatik.de 5.4.0-216-generic #236-Ubuntu SMP Fri Apr 11 19:53:21 UTC 2025 x86_64 |
| Current File : //usr/share/doc/libcaca-dev/html/libcaca-canvas.html |
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>libcaca documentation</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
</head>
<body>
<!-- Generated by Doxygen 1.8.17 -->
</div><!-- top -->
<div class="PageDoc"><div class="header">
<div class="headertitle">
<div class="title">The libcaca canvas format (version 1) </div> </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><p>All types are big endian.</p>
<div class="fragment"><div class="line"><span class="keyword">struct</span></div>
<div class="line">{</div>
<div class="line">magic:</div>
<div class="line"> uint8_t caca_header[2]; <span class="comment">// "\xCA\xCA"</span></div>
<div class="line"> uint8_t caca_file_type[2]; <span class="comment">// "CV"</span></div>
<div class="line"> </div>
<div class="line">canvas_header:</div>
<div class="line"> uint32_t control_size; <span class="comment">// Control size (canvas_data - canvas_header)</span></div>
<div class="line"> uint32_t data_size; <span class="comment">// Data size (EOF - canvas_data)</span></div>
<div class="line"> </div>
<div class="line"> uint16_t version; <span class="comment">// Canvas format version</span></div>
<div class="line"> <span class="comment">// bit 0: set to 1 if canvas is compatible</span></div>
<div class="line"> <span class="comment">// with version 1 of the format</span></div>
<div class="line"> <span class="comment">// bits 1-15: unused yet, must be 0</span></div>
<div class="line"> </div>
<div class="line"> uint32_t frames; <span class="comment">// Frame count</span></div>
<div class="line"> </div>
<div class="line"> uint16_t flags; <span class="comment">// Feature flags</span></div>
<div class="line"> <span class="comment">// bits 0-15: unused yet, must be 0</span></div>
<div class="line"> </div>
<div class="line">frame_info:</div>
<div class="line"> <span class="keyword">struct</span></div>
<div class="line"> {</div>
<div class="line"> uint32_t width; <span class="comment">// Frame width</span></div>
<div class="line"> uint32_t height; <span class="comment">// Frame height</span></div>
<div class="line"> uint32_t duration; <span class="comment">// Frame duration in milliseconds, 0 to</span></div>
<div class="line"> <span class="comment">// not specify a duration</span></div>
<div class="line"> uint32_t attr; <span class="comment">// Graphics context attribute</span></div>
<div class="line"> int32_t cursor_x; <span class="comment">// Cursor X coordinate</span></div>
<div class="line"> int32_t cursor_y; <span class="comment">// Cursor Y coordinate</span></div>
<div class="line"> int32_t handle_x; <span class="comment">// Handle X coordinate</span></div>
<div class="line"> int32_t handle_y; <span class="comment">// Handle Y coordinate</span></div>
<div class="line"> }</div>
<div class="line"> frame_list[frames];</div>
<div class="line"> </div>
<div class="line">control_extension_1:</div>
<div class="line">control_extension_2:</div>
<div class="line"> ...</div>
<div class="line">control_extension_N:</div>
<div class="line"> ... <span class="comment">// reserved for future use</span></div>
<div class="line"> </div>
<div class="line">canvas_data:</div>
<div class="line"> uint8_t data[data_size]; <span class="comment">// canvas data</span></div>
<div class="line"> </div>
<div class="line">data_extension_1:</div>
<div class="line">data_extension_2:</div>
<div class="line"> ...</div>
<div class="line">data_extension_N:</div>
<div class="line"> ... <span class="comment">// reserved for future use</span></div>
<div class="line">};</div>
</div><!-- fragment --> </div></div><!-- contents -->
</div><!-- PageDoc -->
</body>
</html>