00001
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029 #ifndef _GAN_IMAGE_RGB_UINT32_H
00030 #define _GAN_IMAGE_RGB_UINT32_H
00031
00032 #include <gandalf/common/misc_defs.h>
00033
00034
00035
00036 #define GAN_PIXEL Gan_RGBPixel_ui32
00037 #define GAN_PIXEL_FORMAT RGB colour
00038 #define GAN_PIXEL_TYPE 32-bit unsigned integer
00039
00040 #define GAN_IMAGE_FORM_GEN gan_image_form_gen_rgb_ui32
00041 #define GAN_IMAGE_SET_GEN gan_image_set_gen_rgb_ui32
00042 #define GAN_IMAGE_ALLOC gan_image_alloc_rgb_ui32
00043 #define GAN_IMAGE_ALLOC_DATA gan_image_alloc_data_rgb_ui32
00044 #define GAN_IMAGE_FORM gan_image_form_rgb_ui32
00045 #define GAN_IMAGE_FORM_DATA gan_image_form_data_rgb_ui32
00046 #define GAN_IMAGE_SET gan_image_set_rgb_ui32
00047 #define GAN_IMAGE_SET_PIX gan_image_set_pix_rgb_ui32
00048 #define GAN_IMAGE_GET_PIX gan_image_get_pix_rgb_ui32
00049 #define GAN_IMAGE_GET_PIXPTR gan_image_get_pixptr_rgb_ui32
00050 #define GAN_IMAGE_GET_PIXARR gan_image_get_pixarr_rgb_ui32
00051 #define GAN_IMAGE_FILL_CONST gan_image_fill_const_rgb_ui32
00052 #define GAN_IMAGE_GET_ACTIVE_SUBWINDOW gan_image_get_active_subwindow_rgb_ui32
00053 #define GAN_IMAGE_MASK_WINDOW gan_image_mask_window_rgb_ui32
00054
00068
00069
00070
00071
00072
00073
00074
00075
00076
00077
00078
00079
00080
00081
00082
00083 #include <stdlib.h>
00084 #include <gandalf/common/misc_defs.h>
00085 #include <gandalf/image/image_defs.h>
00086
00092 #ifdef __cplusplus
00093 extern "C" {
00094 #endif
00095
00096
00097 struct Gan_Image *gan_image_set_gen_rgb_ui32 ( struct Gan_Image *img,
00098 unsigned long height,
00099 unsigned long width,
00100 unsigned long stride,
00101 Gan_Bool alloc_pix_data );
00102
00103 struct Gan_Image *gan_image_form_gen_rgb_ui32 ( struct Gan_Image *img,
00104 unsigned long height,
00105 unsigned long width,
00106 unsigned long stride,
00107 Gan_Bool alloc_pix_data,
00108 Gan_RGBPixel_ui32 *pix_data,
00109 size_t pix_data_size,
00110 Gan_RGBPixel_ui32 **row_data,
00111 size_t row_data_size );
00112
00113 #ifndef NDEBUG
00114 Gan_RGBPixel_ui32 *gan_image_get_pixptr_rgb_ui32 ( Gan_Image *img,
00115 unsigned row, unsigned col );
00116 Gan_RGBPixel_ui32 **gan_image_get_pixarr_rgb_ui32 ( Gan_Image *img );
00117 #endif
00118
00119
00120
00121
00137 Gan_Image *gan_image_alloc_rgb_ui32 ( unsigned long height, unsigned long width );
00138
00151 Gan_Image *gan_image_form_rgb_ui32 ( Gan_Image *img,
00152 unsigned long height, unsigned long width );
00153
00170 Gan_Image *gan_image_alloc_data_rgb_ui32 ( unsigned long height,
00171 unsigned long width,
00172 unsigned long stride,
00173 Gan_RGBPixel_ui32 *pix_data, size_t pix_data_size,
00174 Gan_RGBPixel_ui32 **row_data, size_t row_data_size );
00175
00193 Gan_Image *gan_image_form_data_rgb_ui32 ( Gan_Image *img,
00194 unsigned long height,
00195 unsigned long width,
00196 unsigned long stride,
00197 Gan_RGBPixel_ui32 *pix_data, size_t pix_data_size,
00198 Gan_RGBPixel_ui32 **row_data, size_t row_data_size );
00199
00219 Gan_Image *gan_image_set_rgb_ui32 ( Gan_Image *img,
00220 unsigned long height, unsigned long width );
00221
00238 Gan_Bool gan_image_set_pix_rgb_ui32 ( Gan_Image *img, unsigned row, unsigned col,
00239 Gan_RGBPixel_ui32 *pix );
00240
00247 Gan_RGBPixel_ui32 gan_image_get_pix_rgb_ui32 ( Gan_Image *img, unsigned row, unsigned col );
00248
00265 Gan_Bool gan_image_fill_const_rgb_ui32 ( Gan_Image *img, Gan_RGBPixel_ui32 *pix );
00266
00272 #ifdef __cplusplus
00273 }
00274 #endif
00275
00276 #undef GAN_PIXEL
00277 #undef GAN_PIXEL_FORMAT
00278 #undef GAN_PIXEL_TYPE
00279 #undef GAN_IMTYPE
00280 #undef GAN_IMAGE_FORM_GEN
00281 #undef GAN_IMAGE_SET_GEN
00282 #undef GAN_IMAGE_ALLOC
00283 #undef GAN_IMAGE_ALLOC_DATA
00284 #undef GAN_IMAGE_FORM
00285 #undef GAN_IMAGE_FORM_DATA
00286 #undef GAN_IMAGE_SET
00287 #undef GAN_IMAGE_SET_PIX
00288 #undef GAN_IMAGE_GET_PIX
00289 #undef GAN_IMAGE_GET_PIXPTR
00290 #undef GAN_IMAGE_GET_PIXARR
00291 #undef GAN_IMAGE_FILL_CONST
00292 #undef GAN_IMAGE_GET_ACTIVE_SUBWINDOW
00293 #undef GAN_IMAGE_MASK_WINDOW
00294
00301 #endif