}while(0)
+typedef struct {
+ int w, h;
+ char data[];
+ /* red = data[ y*w*3 + x*3 + 0 ] = RI_PIXEL(ri,x,y)[0]
+ * green = data[ y*w*3 + x*3 + 1 ] = RI_PIXEL(ri,x,y)[1]
+ * blue = data[ y*w*3 + x*3 + 2 ] = RI_PIXEL(ri,x,y)[2]
+ */
+} RawImage;
+
+RawImage *alloc_raw_image(int w, int h);
+
+#define RI_PIXEL(ri,x,y) ((ri)->data + ((y)*(ri)->w + (x)) * 3)
+
+#define CANONIMG_ALSO_STORERAW(ri) \
+ do{ \
+ char *rip= RI_PIXEL((ri),x,y); \
+ rip[0]= rgb >> 16; \
+ rip[1]= rgb >> 8; \
+ rip[2]= rgb; \
+ }while(0)
+
#endif /*STRUCTURE_H*/