017cf233e18a18cb2372397e10c6b0598434022c
[imager.git] / plug.h
1 #include "imdatatypes.h"
2 #include "immacros.h"
3
4 /* structures for passing data between Imager-plugin and the Imager-module */
5
6 #include "ext.h"
7
8
9 #define getINT(k,s) (util_table->getint(INP,k,s))
10 #define getDOUBLE(k,s) (util_table->getdouble(INP,k,s))
11 #define getVOID(k,s) (util_table->getvoid(INP,k,(void**)s))
12 #define getSTR(k,s) (util_table->getstr(INP,k,(char**)s))
13 #define getOBJ(k,t,s) (util_table->getobj(INP,k,t,(void**)s))
14
15 #define i_color_set(cl,r,g,b,a) (symbol_table->i_color_set(cl,r,g,b,a))
16 #define i_color_info(cl) (symbol_table->i_color_info(cl))
17
18 #define im_get_context() (symbol_table->im_get_context_f())
19 #define i_img_empty(im,x,y) ((symbol_table->im_img_empty_f(im,x,y))
20 #define i_img_empty_ch(im,x,y,ch) ((symbol_table->i_img_empty_ch_f(im_get_context(), im,x,y,ch))
21 #define i_img_exorcise(im) (symbol_table->i_img_exorcise(im))
22 #define i_img_info(im,info) (symbol_table->i_img_info(im,info))
23
24 #define i_img_setmask(im,ch_mask) (symbol_table->i_img_setmask(im,ch_mask))
25 #define i_img_getmask(im) (symbol_table->i_img_getmask(im))
26
27 /*
28 Not needed?  The i_gpix() macro in image.h will call the right function
29 directly.
30 #define i_ppix(im,x,y,val) (symbol_table->i_ppix(im,x,y,val))
31 #define i_gpix(im,x,y,val) (symbol_table->i_gpix(im,x,y,val))
32 */
33
34 #define i_box(im, x1, y1, x2, y2,val) (symbol_table->i_box(im, x1, y1, x2, y2,val))
35 #define i_draw(im, x1, y1, x2, y2,val) (symbol_table->i_draw(im, x1, y1, x2, y2,val))
36 #define i_arc(im, x, y, rad, d1, d2,val) (symbol_table->i_arc(im, x, y, rad, d1, d2,val))
37 #define i_copyto(im,src, x1, y1, x2, y2, tx, ty,trans) (symbol_table->i_copyto(im,src, x1, y1, x2, y2, tx, ty,trans))
38 #define i_rubthru(im,src, tx, ty) (symbol_table->i_rubthru(im,src, tx, ty))
39
40 #ifdef WIN32
41 extern char __declspec(dllexport) evalstr[];
42 extern func_ptr __declspec(dllexport) function_list[];
43 #endif