Move the sources to trunk
[opencv] / interfaces / ch / c / handmade / cxcore / cvSetIPLAllocators_chdl.c
1 /* Copyright (c) 2001-2002 by SoftIntegration, Inc. All Rights Reserved */
2 #include <cv.h>
3 #include <ch.h>
4
5 static ChInterp_t interp;
6 static IplImage* Cv_iplCreateImageHeader_funarg(int Arg1, int Arg2, int Arg3, char* Arg4, char* Arg5, int Arg6, int Arg7, int Arg8, int Arg9, int Arg10,  IplROI* Arg11, IplImage* Arg12, void* Arg13, IplTileInfo* Arg14);
7 static void *setiplCreateImageHeader_funptr;
8
9 static void Cv_iplAllocateImageData_funarg(IplImage* Arg1, int Arg2, int Arg3);
10 static void *setiplAllocateImageData_funptr;
11
12 static void Cv_iplDeallocate_funarg(IplImage* Arg1, int Arg2);
13 static void *setiplDeallocate_funptr;
14
15 static IplROI* Cv_iplCreateROI_funarg(int Arg1, int Arg2 ,int Arg3, int Arg4, int Arg5);
16 static void * setiplCreateROI_funptr;
17
18 static IplImage*  Cv_iplCloneImage_funarg(const IplImage* Arg1);
19 static void *setiplCloneImage_funptr;
20
21 EXPORTCH void cvSetIPLAllocators_chdl(void *varg) {
22     va_list ap;
23     Cv_iplCreateImageHeader createHeader_ch, createHeader_c;
24     Cv_iplAllocateImageData allocateData_ch, allocateData_c;
25     Cv_iplDeallocate deallocate_ch, deallocate_c;
26     Cv_iplCreateROI createROI_ch, createROI_c;
27     Cv_iplCloneImage cloneImage_ch, cloneImage_c;
28     Ch_VaStart(interp, ap, varg);
29
30     createHeader_ch = Ch_VaArg(interp, ap, Cv_iplCreateImageHeader);
31     setiplCreateImageHeader_funptr = (void *)createHeader_ch;
32     if (createHeader_ch != NULL)  {
33         createHeader_c = (Cv_iplCreateImageHeader)Cv_iplCreateImageHeader_funarg;
34     }
35
36     allocateData_ch = Ch_VaArg(interp, ap, Cv_iplAllocateImageData);  
37     setiplAllocateImageData_funptr = (void *)allocateData_ch;
38     if (allocateData_ch != NULL)  {
39         allocateData_c = (Cv_iplAllocateImageData)Cv_iplAllocateImageData_funarg;
40     }
41
42     deallocate_ch = Ch_VaArg(interp, ap, Cv_iplDeallocate);
43     setiplDeallocate_funptr = (void *)deallocate_ch;
44     if (deallocate_ch != NULL)  {
45         deallocate_c = (Cv_iplDeallocate)Cv_iplDeallocate_funarg;
46     }
47
48     createROI_ch = Ch_VaArg(interp, ap, Cv_iplCreateROI);
49     setiplCreateROI_funptr = (void *)createROI_ch;
50     if (createROI_ch != NULL)  {
51         createROI_c = (Cv_iplCreateROI)Cv_iplCreateROI_funarg;
52     }
53
54     cloneImage_ch = Ch_VaArg(interp, ap, Cv_iplCloneImage);
55     setiplCreateROI_funptr = (void *)cloneImage_ch;
56     if (cloneImage_ch != NULL)  {
57         cloneImage_c = (Cv_iplCloneImage)Cv_iplCloneImage_funarg;
58     }
59
60     cvSetIPLAllocators(createHeader_c, allocateData_c, deallocate_c, createROI_c, cloneImage_c);
61     Ch_VaEnd(interp, ap);
62 }
63
64 static IplImage* Cv_iplCreateImageHeader_funarg(int Arg1, int Arg2, int Arg3, char* Arg4, char* Arg5, int Arg6, int Arg7, int Arg8, int Arg9, int Arg10,  IplROI* Arg11, IplImage* Arg12, void* Arg13, IplTileInfo* Arg14)    {
65      IplImage*  retval;
66      Ch_CallFuncByAddr(interp, setiplCreateImageHeader_funptr, &retval, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, Arg9, Arg10, Arg11, Arg12, Arg13, Arg14);
67      return retval;
68 }
69
70 static void Cv_iplAllocateImageData_funarg(IplImage* Arg1, int Arg2, int Arg3)   {
71      Ch_CallFuncByAddr(interp, setiplAllocateImageData_funptr, NULL, Arg1, Arg2, Arg3);
72 }
73
74 static void Cv_iplDeallocate_funarg(IplImage* Arg1, int Arg2)   {
75      Ch_CallFuncByAddr(interp, setiplDeallocate_funptr, NULL, Arg1, Arg2);
76 }
77
78 static IplROI* Cv_iplCreateROI_funarg(int Arg1, int Arg2 ,int Arg3, int Arg4, int Arg5)    {
79      IplROI*  retval;
80      Ch_CallFuncByAddr(interp, setiplCreateROI_funptr, &retval, Arg1, Arg2, Arg3, Arg4, Arg5);
81      return retval;
82 }
83
84 static IplImage*  Cv_iplCloneImage_funarg(const IplImage* Arg1)   {
85      IplImage*  retval;
86      Ch_CallFuncByAddr(interp, setiplCloneImage_funptr, &retval, Arg1);
87      return retval;
88 }