he unpack code for ICO/CUR file handling could extend 32-bit unsigned values to 64...
[imager.git] / imperl.h
1 /*
2   This header file defines types that Imager's typemap uses to convert to
3   perl types.
4
5   This is meant for use in XS code, not in normal C source.
6  */
7 #ifndef IMAGER_IMPERL_H
8 #define IMAGER_IMPERL_H
9
10 #include "imdatatypes.h"
11
12 typedef i_color* Imager__Color;
13 typedef i_fcolor* Imager__Color__Float;
14 typedef i_img*   Imager__ImgRaw;
15 typedef int undef_neg_int;
16 typedef i_img * Imager;
17
18 #ifdef HAVE_LIBTT
19 typedef TT_Fonthandle* Imager__Font__TT;
20 #endif
21
22 /* for the fill objects
23    Since a fill object may later have dependent images, (or fills!)
24    we need perl wrappers - oh well
25 */
26 #define IFILL_DESTROY(fill) i_fill_destroy(fill);
27 typedef i_fill_t* Imager__FillHandle;
28
29 typedef io_glue *Imager__IO;
30
31 #endif