Main Page | Modules | Alphabetical List | Data Structures | File List | Data Fields | Globals | Related Pages

vcl-temp/raster/rle_data.h

00001 #ifndef _VCL_RASTER_RLE_DATA_H_
00002 #define _VCL_RASTER_RLE_DATA_H_
00003 
00004 
00005 struct vcl_rle_line
00006 {
00007   u8 *datas;
00008   uns *ends;
00009   uns width;
00010 };
00011 
00012 struct vcl_rle_data
00013 {
00014   u8 depth;
00015   uns width;
00016   uns height;
00017   uns offset_x;
00018   uns offset_y;
00019   struct vcl_rle_line *lines;
00020 };
00021 
00022 
00023 extern struct vcl_rle_data *
00024 vcl_rle_data_new (u8 depth, uns width, uns height);
00025 
00026 extern struct vcl_rle_data *
00027 vcl_rle_data_new_subblock (const struct vcl_rle_data *src, uns offset_x, uns offset_y, 
00028                            uns width, uns height);
00029 
00030 extern struct vcl_rle_data *
00031 vcl_rle_data_init_subblock (struct vcl_rle_data *rd, const struct vcl_rle_data *src,
00032                             uns offset_x, uns offset_y, uns width, uns height);
00033 
00034 extern void
00035 vcl_rle_data_add_line (struct vcl_rle_data *rd, uns lineno, uns width,
00036                        const u8* datas, const uns* ends);
00037 
00038 extern void
00039 vcl_rle_data_crop_bbox (struct vcl_rle_data *rd, struct vcl_rectangle *src, 
00040                         struct vcl_rectangle *dst);
00041 
00042 extern void
00043 vcl_rle_data_render (struct vcl_rle_data * src, struct vcl_pixbuf *dst);
00044 
00045 
00046 #endif

Generated on Tue Dec 9 16:30:08 2008 for Vrr by doxygen 1.3.5