Update the trunk to the OpenCV's CVS (2008-07-14)
[opencv] / interfaces / swig / filtered / cv.h
index 6259a62..e330a28 100644 (file)
@@ -16,6 +16,8 @@ typedef unsigned char uchar;
 typedef unsigned short ushort;
 
 
+typedef signed char schar;
+
 
 
 
@@ -36,10 +38,10 @@ typedef union Cv64suf
     double f;
 }
 Cv64suf;
-# 205 "../../../cxcore/include/cxtypes.h"
+# 207 "../../../cxcore/include/cxtypes.h"
 inline int cvRound( double value )
 {
-# 225 "../../../cxcore/include/cxtypes.h"
+# 227 "../../../cxcore/include/cxtypes.h"
     Cv64suf temp;
     temp.f = value + 6755399441055744.0;
     return (int)temp.u;
@@ -133,7 +135,7 @@ inline double cvRandReal( CvRNG* rng )
 {
     return cvRandInt(rng)*2.3283064365386962890625e-10 ;
 }
-# 360 "../../../cxcore/include/cxtypes.h"
+# 362 "../../../cxcore/include/cxtypes.h"
 typedef struct _IplImage
 {
     int nSize;
@@ -201,7 +203,7 @@ typedef struct _IplConvKernelFP
     float *values;
 }
 IplConvKernelFP;
-# 538 "../../../cxcore/include/cxtypes.h"
+# 540 "../../../cxcore/include/cxtypes.h"
 typedef struct CvMat
 {
     int type;
@@ -239,7 +241,7 @@ typedef struct CvMat
 
 }
 CvMat;
-# 615 "../../../cxcore/include/cxtypes.h"
+# 617 "../../../cxcore/include/cxtypes.h"
 inline CvMat cvMat( int rows, int cols, int type, void* data = NULL)
 {
     CvMat m;
@@ -256,7 +258,7 @@ inline CvMat cvMat( int rows, int cols, int type, void* data = NULL)
 
     return m;
 }
-# 645 "../../../cxcore/include/cxtypes.h"
+# 647 "../../../cxcore/include/cxtypes.h"
 inline double cvmGet( const CvMat* mat, int row, int col )
 {
     int type;
@@ -298,7 +300,7 @@ inline int cvCvToIplDepth( int type )
     return ((((sizeof(size_t)<<28)|0x8442211) >> ((depth) & ((1 << 3) - 1))*4) & 15)*8 | (depth == 1 || depth == 3 ||
            depth == 4 ? 0x80000000 : 0);
 }
-# 698 "../../../cxcore/include/cxtypes.h"
+# 700 "../../../cxcore/include/cxtypes.h"
 typedef struct CvMatND
 {
     int type;
@@ -324,7 +326,7 @@ typedef struct CvMatND
     dim[32];
 }
 CvMatND;
-# 738 "../../../cxcore/include/cxtypes.h"
+# 740 "../../../cxcore/include/cxtypes.h"
 struct CvSet;
 
 typedef struct CvSparseMat
@@ -342,7 +344,7 @@ typedef struct CvSparseMat
     int size[32];
 }
 CvSparseMat;
-# 765 "../../../cxcore/include/cxtypes.h"
+# 767 "../../../cxcore/include/cxtypes.h"
 typedef struct CvSparseNode
 {
     unsigned hashval;
@@ -357,9 +359,9 @@ typedef struct CvSparseMatIterator
     int curidx;
 }
 CvSparseMatIterator;
-# 787 "../../../cxcore/include/cxtypes.h"
+# 789 "../../../cxcore/include/cxtypes.h"
 typedef int CvHistType;
-# 803 "../../../cxcore/include/cxtypes.h"
+# 805 "../../../cxcore/include/cxtypes.h"
 typedef struct CvHistogram
 {
     int type;
@@ -369,7 +371,7 @@ typedef struct CvHistogram
     CvMatND mat;
 }
 CvHistogram;
-# 833 "../../../cxcore/include/cxtypes.h"
+# 835 "../../../cxcore/include/cxtypes.h"
 typedef struct CvRect
 {
     int x;
@@ -724,16 +726,16 @@ typedef struct CvSeqBlock
     int start_index;
 
     int count;
-    char* data;
+    schar* data;
 }
 CvSeqBlock;
-# 1215 "../../../cxcore/include/cxtypes.h"
+# 1217 "../../../cxcore/include/cxtypes.h"
 typedef struct CvSeq
 {
-    int flags; int header_size; struct CvSeq* h_prev; struct CvSeq* h_next; struct CvSeq* v_prev; struct CvSeq* v_next; int total; int elem_size; char* block_max; char* ptr; int delta_elems; CvMemStorage* storage; CvSeqBlock* free_blocks; CvSeqBlock* first;
+    int flags; int header_size; struct CvSeq* h_prev; struct CvSeq* h_next; struct CvSeq* v_prev; struct CvSeq* v_next; int total; int elem_size; schar* block_max; schar* ptr; int delta_elems; CvMemStorage* storage; CvSeqBlock* free_blocks; CvSeqBlock* first;
 }
 CvSeq;
-# 1235 "../../../cxcore/include/cxtypes.h"
+# 1237 "../../../cxcore/include/cxtypes.h"
 typedef struct CvSetElem
 {
     int flags; struct CvSetElem* next_free;
@@ -747,10 +749,10 @@ CvSetElem;
 
 typedef struct CvSet
 {
-    int flags; int header_size; struct CvSeq* h_prev; struct CvSeq* h_next; struct CvSeq* v_prev; struct CvSeq* v_next; int total; int elem_size; char* block_max; char* ptr; int delta_elems; CvMemStorage* storage; CvSeqBlock* free_blocks; CvSeqBlock* first; CvSetElem* free_elems; int active_count;
+    int flags; int header_size; struct CvSeq* h_prev; struct CvSeq* h_next; struct CvSeq* v_prev; struct CvSeq* v_next; int total; int elem_size; schar* block_max; schar* ptr; int delta_elems; CvMemStorage* storage; CvSeqBlock* free_blocks; CvSeqBlock* first; CvSetElem* free_elems; int active_count;
 }
 CvSet;
-# 1288 "../../../cxcore/include/cxtypes.h"
+# 1290 "../../../cxcore/include/cxtypes.h"
 typedef struct CvGraphEdge
 {
     int flags; float weight; struct CvGraphEdge* next[2]; struct CvGraphVtx* vtx[2];
@@ -769,10 +771,10 @@ typedef struct CvGraphVtx2D
     CvPoint2D32f* ptr;
 }
 CvGraphVtx2D;
-# 1315 "../../../cxcore/include/cxtypes.h"
+# 1317 "../../../cxcore/include/cxtypes.h"
 typedef struct CvGraph
 {
-    int flags; int header_size; struct CvSeq* h_prev; struct CvSeq* h_next; struct CvSeq* v_prev; struct CvSeq* v_next; int total; int elem_size; char* block_max; char* ptr; int delta_elems; CvMemStorage* storage; CvSeqBlock* free_blocks; CvSeqBlock* first; CvSetElem* free_elems; int active_count; CvSet* edges;
+    int flags; int header_size; struct CvSeq* h_prev; struct CvSeq* h_next; struct CvSeq* v_prev; struct CvSeq* v_next; int total; int elem_size; schar* block_max; schar* ptr; int delta_elems; CvMemStorage* storage; CvSeqBlock* free_blocks; CvSeqBlock* first; CvSetElem* free_elems; int active_count; CvSet* edges;
 }
 CvGraph;
 
@@ -782,7 +784,7 @@ CvGraph;
 
 typedef struct CvChain
 {
-    int flags; int header_size; struct CvSeq* h_prev; struct CvSeq* h_next; struct CvSeq* v_prev; struct CvSeq* v_next; int total; int elem_size; char* block_max; char* ptr; int delta_elems; CvMemStorage* storage; CvSeqBlock* free_blocks; CvSeqBlock* first;
+    int flags; int header_size; struct CvSeq* h_prev; struct CvSeq* h_next; struct CvSeq* v_prev; struct CvSeq* v_next; int total; int elem_size; schar* block_max; schar* ptr; int delta_elems; CvMemStorage* storage; CvSeqBlock* free_blocks; CvSeqBlock* first;
     CvPoint origin;
 }
 CvChain;
@@ -795,26 +797,26 @@ CvChain;
 
 typedef struct CvContour
 {
-    int flags; int header_size; struct CvSeq* h_prev; struct CvSeq* h_next; struct CvSeq* v_prev; struct CvSeq* v_next; int total; int elem_size; char* block_max; char* ptr; int delta_elems; CvMemStorage* storage; CvSeqBlock* free_blocks; CvSeqBlock* first; CvRect rect; int color; int reserved[3];
+    int flags; int header_size; struct CvSeq* h_prev; struct CvSeq* h_next; struct CvSeq* v_prev; struct CvSeq* v_next; int total; int elem_size; schar* block_max; schar* ptr; int delta_elems; CvMemStorage* storage; CvSeqBlock* free_blocks; CvSeqBlock* first; CvRect rect; int color; int reserved[3];
 }
 CvContour;
 
 typedef CvContour CvPoint2DSeq;
-# 1482 "../../../cxcore/include/cxtypes.h"
+# 1484 "../../../cxcore/include/cxtypes.h"
 typedef struct CvSeqWriter
 {
-    int header_size; CvSeq* seq; CvSeqBlock* block; char* ptr; char* block_min; char* block_max;
+    int header_size; CvSeq* seq; CvSeqBlock* block; schar* ptr; schar* block_min; schar* block_max;
 }
 CvSeqWriter;
-# 1500 "../../../cxcore/include/cxtypes.h"
+# 1502 "../../../cxcore/include/cxtypes.h"
 typedef struct CvSeqReader
 {
-    int header_size; CvSeq* seq; CvSeqBlock* block; char* ptr; char* block_min; char* block_max; int delta_index; char* prev_elem;
+    int header_size; CvSeq* seq; CvSeqBlock* block; schar* ptr; schar* block_min; schar* block_max; int delta_index; schar* prev_elem;
 }
 CvSeqReader;
-# 1620 "../../../cxcore/include/cxtypes.h"
+# 1622 "../../../cxcore/include/cxtypes.h"
 typedef struct CvFileStorage CvFileStorage;
-# 1630 "../../../cxcore/include/cxtypes.h"
+# 1632 "../../../cxcore/include/cxtypes.h"
 typedef struct CvAttrList
 {
     const char** attr;
@@ -833,7 +835,7 @@ inline CvAttrList cvAttrList( const char** attr = NULL,
 }
 
 struct CvTypeInfo;
-# 1683 "../../../cxcore/include/cxtypes.h"
+# 1685 "../../../cxcore/include/cxtypes.h"
 typedef struct CvString
 {
     int len;
@@ -1685,11 +1687,11 @@ extern "C" void cvSetSeqBlockSize( CvSeq* seq, int delta_elems );
 
 
 
-extern "C" char* cvSeqPush( CvSeq* seq, void* element = NULL);
+extern "C" schar* cvSeqPush( CvSeq* seq, void* element = NULL);
 
 
 
-extern "C" char* cvSeqPushFront( CvSeq* seq, void* element = NULL);
+extern "C" schar* cvSeqPushFront( CvSeq* seq, void* element = NULL);
 
 
 
@@ -1712,8 +1714,8 @@ extern "C" void cvSeqPopMulti( CvSeq* seq, void* elements,
 
 
 
-extern "C" char* cvSeqInsert( CvSeq* seq, int before_index,
-                           void* element = NULL);
+extern "C" schar* cvSeqInsert( CvSeq* seq, int before_index,
+                            void* element = NULL);
 
 
 extern "C" void cvSeqRemove( CvSeq* seq, int index );
@@ -1728,7 +1730,7 @@ extern "C" void cvClearSeq( CvSeq* seq );
 
 
 
-extern "C" char* cvGetSeqElem( const CvSeq* seq, int index );
+extern "C" schar* cvGetSeqElem( const CvSeq* seq, int index );
 
 
 
@@ -1805,9 +1807,9 @@ typedef int (* CvCmpFunc)(const void* a, const void* b, void* userdata );
 extern "C" void cvSeqSort( CvSeq* seq, CvCmpFunc func, void* userdata = NULL );
 
 
-extern "C" char* cvSeqSearch( CvSeq* seq, const void* elem, CvCmpFunc func,
-                          int is_sorted, int* elem_idx,
-                          void* userdata = NULL );
+extern "C" schar* cvSeqSearch( CvSeq* seq, const void* elem, CvCmpFunc func,
+                           int is_sorted, int* elem_idx,
+                           void* userdata = NULL );
 
 
 extern "C" void cvSeqInvert( CvSeq* seq );
@@ -2753,16 +2755,16 @@ typedef struct _CvContourScanner* CvContourScanner;
 # 99 "../../../cv/include/cvtypes.h"
 typedef struct CvChainPtReader
 {
-    int header_size; CvSeq* seq; CvSeqBlock* block; char* ptr; char* block_min; char* block_max; int delta_index; char* prev_elem;
+    int header_size; CvSeq* seq; CvSeqBlock* block; schar* ptr; schar* block_min; schar* block_max; int delta_index; schar* prev_elem;
     char code;
     CvPoint pt;
-    char deltas[8][2];
+    schar deltas[8][2];
 }
 CvChainPtReader;
 # 116 "../../../cv/include/cvtypes.h"
 typedef struct CvContourTree
 {
-    int flags; int header_size; struct CvSeq* h_prev; struct CvSeq* h_next; struct CvSeq* v_prev; struct CvSeq* v_next; int total; int elem_size; char* block_max; char* ptr; int delta_elems; CvMemStorage* storage; CvSeqBlock* free_blocks; CvSeqBlock* first;
+    int flags; int header_size; struct CvSeq* h_prev; struct CvSeq* h_next; struct CvSeq* v_prev; struct CvSeq* v_next; int total; int elem_size; schar* block_max; schar* ptr; int delta_elems; CvMemStorage* storage; CvSeqBlock* free_blocks; CvSeqBlock* first;
     CvPoint p1;
     CvPoint p2;
 }
@@ -2796,7 +2798,7 @@ CvSubdiv2DPoint;
 # 170 "../../../cv/include/cvtypes.h"
 typedef struct CvSubdiv2D
 {
-    int flags; int header_size; struct CvSeq* h_prev; struct CvSeq* h_next; struct CvSeq* v_prev; struct CvSeq* v_next; int total; int elem_size; char* block_max; char* ptr; int delta_elems; CvMemStorage* storage; CvSeqBlock* free_blocks; CvSeqBlock* first; CvSetElem* free_elems; int active_count; CvSet* edges; int quad_edges; int is_geometry_valid; CvSubdiv2DEdge recent_edge; CvPoint2D32f topleft; CvPoint2D32f bottomright;
+    int flags; int header_size; struct CvSeq* h_prev; struct CvSeq* h_next; struct CvSeq* v_prev; struct CvSeq* v_next; int total; int elem_size; schar* block_max; schar* ptr; int delta_elems; CvMemStorage* storage; CvSeqBlock* free_blocks; CvSeqBlock* first; CvSetElem* free_elems; int active_count; CvSet* edges; int quad_edges; int is_geometry_valid; CvSubdiv2DEdge recent_edge; CvPoint2D32f topleft; CvPoint2D32f bottomright;
 }
 CvSubdiv2D;
 
@@ -3805,6 +3807,21 @@ extern "C" void cvFindHomography( const CvMat* src_points,
                               CvMat* homography );
 
 
+extern "C" void cvRQDecomp3x3( const CvMat *matrixM, CvMat *matrixR, CvMat *matrixQ,
+                           CvMat *matrixQx = NULL,
+                           CvMat *matrixQy = NULL,
+                           CvMat *matrixQz = NULL,
+                           CvPoint3D64f *eulerAngles = NULL);
+
+
+extern "C" void cvDecomposeProjectionMatrix( const CvMat *projMatr, CvMat *calibMatr,
+                                         CvMat *rotMatr, CvMat *posVect,
+                                         CvMat *rotMatrX = NULL,
+                                         CvMat *rotMatrY = NULL,
+                                         CvMat *rotMatrZ = NULL,
+                                         CvPoint3D64f *eulerAngles = NULL);
+
+
 
 extern "C" void cvProjectPoints2( const CvMat* object_points, const CvMat* rotation_vector,
                               const CvMat* translation_vector, const CvMat* intrinsic_matrix,
@@ -3821,7 +3838,7 @@ extern "C" void cvFindExtrinsicCameraParams2( const CvMat* object_points,
                                           const CvMat* distortion_coeffs,
                                           CvMat* rotation_vector,
                                           CvMat* translation_vector );
-# 1133 "../../../cv/include/cv.h"
+# 1148 "../../../cv/include/cv.h"
 extern "C" void cvCalibrateCamera2( const CvMat* object_points,
                                 const CvMat* image_points,
                                 const CvMat* point_counts,
@@ -3872,7 +3889,7 @@ extern "C" int cvRANSACUpdateNumIters( double p, double err_prob,
                                    int model_points, int max_iters );
 
 extern "C" void cvConvertPointsHomogenious( const CvMat* src, CvMat* dst );
-# 1191 "../../../cv/include/cv.h"
+# 1206 "../../../cv/include/cv.h"
 extern "C" int cvFindFundamentalMat( const CvMat* points1, const CvMat* points2,
                                  CvMat* fundamental_matrix,
                                  int method = (8 + 2),
@@ -4179,4 +4196,4 @@ protected:
     int el_shape;
     int operation;
 };
-# 1211 "../../../cv/include/cv.h" 2
+# 1226 "../../../cv/include/cv.h" 2