Move the sources to trunk
[opencv] / interfaces / swig / general / memory.i
1 /*M///////////////////////////////////////////////////////////////////////////////////////
2 //
3 //  IMPORTANT: READ BEFORE DOWNLOADING, COPYING, INSTALLING OR USING.
4 //
5 //  By downloading, copying, installing or using the software you agree to this license.
6 //  If you do not agree to this license, do not download, install,
7 //  copy or use the software.
8 //
9 //
10 //                        Intel License Agreement
11 //                For Open Source Computer Vision Library
12 //
13 // Copyright (C) 2000, Intel Corporation, all rights reserved.
14 // Third party copyrights are property of their respective owners.
15 //
16 // Redistribution and use in source and binary forms, with or without modification,
17 // are permitted provided that the following conditions are met:
18 //
19 //   * Redistribution's of source code must retain the above copyright notice,
20 //     this list of conditions and the following disclaimer.
21 //
22 //   * Redistribution's in binary form must reproduce the above copyright notice,
23 //     this list of conditions and the following disclaimer in the documentation
24 //     and/or other materials provided with the distribution.
25 //
26 //   * The name of Intel Corporation may not be used to endorse or promote products
27 //     derived from this software without specific prior written permission.
28 //
29 // This software is provided by the copyright holders and contributors "as is" and
30 // any express or implied warranties, including, but not limited to, the implied
31 // warranties of merchantability and fitness for a particular purpose are disclaimed.
32 // In no event shall the Intel Corporation or contributors be liable for any direct,
33 // indirect, incidental, special, exemplary, or consequential damages
34 // (including, but not limited to, procurement of substitute goods or services;
35 // loss of use, data, or profits; or business interruption) however caused
36 // and on any theory of liability, whether in contract, strict liability,
37 // or tort (including negligence or otherwise) arising in any way out of
38 // the use of this software, even if advised of the possibility of such damage.
39 //
40 //M*/
41
42
43 // 2004-03-16, Gabriel Schreiber <schreiber@ient.rwth-aachen.de>
44 //             Mark Asbach       <asbach@ient.rwth-aachen.de>
45 //             Institute of Communications Engineering, RWTH Aachen University
46
47
48 /****************************************************************************************\
49 *          Array allocation, deallocation, initialization and access to elements         *
50 \****************************************************************************************/
51
52 %nodefault _IplImage;
53 %newobject cvCreateImage;
54 %newobject cvCreateImageMat;
55 %newobject cvCreateImageHeader;
56 %newobject cvCloneImage;
57 %newobject cvCloneImageMat;
58
59 %nodefault CvMat;
60 %newobject cvCreateMat;
61 %newobject cvCreateMatHeader;
62 %newobject cvCloneMat;
63 %newobject cvGetSubRect;
64 %newobject cvGetRow;
65 %newobject cvGetRows;
66 %newobject cvGetCol;
67 %newobject cvGetCols;
68 %newobject cvGetDiag;
69
70 %nodefault CvMatND;
71 %newobject cvCreateMatND;
72 %newobject cvCreateMatHeaderND;
73 %newobject cvCloneMatND;
74
75 %nodefault CvSparseMat;
76 %newobject cvCreateSparseMat;
77 %newobject cvCloneSparseMat;
78
79
80 /****************************************************************************************\
81 *                              Dynamic data structures                                   *
82 \****************************************************************************************/
83
84 %nodefault CvMemStorage;
85 %newobject cvCreateMemStorage;
86 %newobject cvCreateChildMemStorage;
87
88 %nodefault CvGraphScanner;
89 %newobject cvCreateGraphScanner;
90
91
92 /****************************************************************************************\
93 *                                    Data Persistence                                    *
94 \****************************************************************************************/
95
96 %nodefault CvFileStorage;
97 %newobject cvOpenFileStorage;
98
99
100
101 /// cv.h
102
103 /****************************************************************************************\
104 *                                    Image Processing                                    *
105 \****************************************************************************************/
106
107 %nodefault _IplConvKernel;
108 %newobject cvCreateStructuringElement;
109
110
111 /****************************************************************************************\
112 *                                   Structural Analysis                                  *
113 \****************************************************************************************/
114
115 %newobject cvFitEllipse2;
116
117
118 /****************************************************************************************\
119 *                                       Tracking                                         *
120 \****************************************************************************************/
121
122 %nodefault CvKalman;
123 %newobject cvCreateKalman;
124
125 %nodefault CvConDensation;
126 %newobject cvCreateConDensation;
127
128
129 /****************************************************************************************\
130 *                                  Histogram functions                                   *
131 \****************************************************************************************/
132
133 %nodefault CvHistogram;
134 %newobject cvCreateHist;
135
136
137 /****************************************************************************************\
138 *                         Haar-like Object Detection functions                           *
139 \****************************************************************************************/
140
141 %nodefault CvHaarClassifierCascade;
142 %newobject cvLoadHaarClassifierCascade;
143
144 %nodefault CvPOSITObject;
145 %newobject cvCreatePOSITObject;
146
147
148 /// This hides all members of the IplImage which OpenCV doesn't use.
149 %ignore _IplImage::nSize;
150 %ignore _IplImage::alphaChannel;
151 %ignore _IplImage::colorModel;
152 %ignore _IplImage::channelSeq;
153 %ignore _IplImage::maskROI;
154 %ignore _IplImage::imageId;
155 %ignore _IplImage::tileInfo;
156 %ignore _IplImage::BorderMode;
157 %ignore _IplImage::BorderConst;
158 %ignore _IplImage::imageDataOrigin;
159
160 /**
161  * imageData is hidden because the accessors produced by SWIG are not 
162  * working correct. Use imageData_set and imageData_get instead 
163  * (they are defined in "imagedata.i")
164  */
165 %ignore _IplImage::imageData;