X-Git-Url: http://git.imager.perl.org/imager.git/blobdiff_plain/02d1d62827cef86398edc2013f7d2ff04bf21c63..a87997b2f901c06ea67e73d89558aa376f64019b:/ext.h diff --git a/ext.h b/ext.h index ebd9a750..9a25820a 100644 --- a/ext.h +++ b/ext.h @@ -1,4 +1,7 @@ -#include "image.h" +#include "imdatatypes.h" + +#ifndef IMAGER_EXT_H +#define IMAGER_EXT_H /* structures for passing data between Imager-plugin and the Imager-module */ @@ -16,3 +19,32 @@ typedef struct { int (*getvoid)(void *hv_t,char* key,void **store); int (*getobj)(void *hv_t,char* key,char* type,void **store); } UTIL_table_t; + +typedef struct { + undef_int (*i_has_format)(char *frmt); + i_color*(*ICL_set)(i_color *cl,unsigned char r,unsigned char g,unsigned char b,unsigned char a); + void (*ICL_info)(const i_color *cl); + + im_context_t (*im_get_context_f)(void); + i_img*(*im_img_empty_ch_f)(im_context_t, i_img *im,i_img_dim x,i_img_dim y,int ch); + void(*i_img_exorcise_f)(i_img *im); + + void(*i_img_info_f)(i_img *im,i_img_dim *info); + + void(*i_img_setmask_f)(i_img *im,int ch_mask); + int (*i_img_getmask_f)(i_img *im); + + /* + int (*i_ppix)(i_img *im,i_img_dim x,i_img_dim y,i_color *val); + int (*i_gpix)(i_img *im,i_img_dim x,i_img_dim y,i_color *val); + */ + void(*i_box)(i_img *im,i_img_dim x1,i_img_dim y1,i_img_dim x2,i_img_dim y2,const i_color *val); + void(*i_line)(i_img *im,i_img_dim x1,i_img_dim y1,i_img_dim x2,i_img_dim y2,const i_color *val,int endp); + void(*i_arc)(i_img *im,i_img_dim x,i_img_dim y,double rad,double d1,double d2,const i_color *val); + void(*i_copyto)(i_img *im,i_img *src,i_img_dim x1,i_img_dim y1,i_img_dim x2,i_img_dim y2,i_img_dim tx,i_img_dim ty); + void(*i_copyto_trans)(i_img *im,i_img *src,i_img_dim x1,i_img_dim y1,i_img_dim x2,i_img_dim y2,i_img_dim tx,i_img_dim ty,const i_color *trans); + int(*i_rubthru)(i_img *im,i_img *src,i_img_dim tx,i_img_dim ty, i_img_dim src_minx, i_img_dim src_miny, i_img_dim src_maxx, i_img_dim src_maxy); + +} symbol_table_t; + +#endif