Lines Matching refs:arr
98 CvMat* arr = 0;
104 CV_CALL( arr = cvCreateMatHeader( height, width, type ));
105 CV_CALL( cvCreateData( arr ));
110 cvReleaseMat( &arr );
112 return arr;
116 static void icvCheckHuge( CvMat* arr )
118 if( (int64)arr->step*arr->rows > INT_MAX )
119 arr->type &= ~CV_MAT_CONT_FLAG;
126 CvMat* arr = 0;
142 CV_CALL( arr = (CvMat*)cvAlloc( sizeof(*arr)));
144 arr->step = rows == 1 ? 0 : cvAlign(min_step, CV_DEFAULT_MAT_ROW_ALIGN);
145 arr->type = CV_MAT_MAGIC_VAL | type |
146 (arr->step == 0 || arr->step == min_step ? CV_MAT_CONT_FLAG : 0);
147 arr->rows = rows;
148 arr->cols = cols;
149 arr->data.ptr = 0;
150 arr->refcount = 0;
151 arr->hdr_refcount = 1;
153 icvCheckHuge( arr );
158 cvReleaseMat( &arr );
160 return arr;
166 cvInitMatHeader( CvMat* arr, int rows, int cols,
175 if( !arr )
185 arr->type = type | CV_MAT_MAGIC_VAL;
186 arr->rows = rows;
187 arr->cols = cols;
188 arr->data.ptr = (uchar*)data;
189 arr->refcount = 0;
190 arr->hdr_refcount = 0;
192 mask = (arr->rows <= 1) - 1;
194 min_step = arr->cols*pix_size & mask;
200 arr->step = step & mask;
204 arr->step = min_step;
207 arr->type = CV_MAT_MAGIC_VAL | type |
208 (arr->step == min_step ? CV_MAT_CONT_FLAG : 0);
210 icvCheckHuge( arr );
214 return arr;
231 CvMat* arr = *array;
233 if( !CV_IS_MAT_HDR(arr) && !CV_IS_MATND_HDR(arr) )
238 cvDecRefData( arr );
239 cvFree( &arr );
337 CvMatND* arr = 0;
343 CV_CALL( arr = cvCreateMatNDHeader( dims, sizes, type ));
344 CV_CALL( cvCreateData( arr ));
349 cvReleaseMatND( &arr );
351 return arr;
359 CvMatND* arr = 0;
369 CV_CALL( arr = (CvMatND*)cvAlloc( sizeof(*arr) ));
371 CV_CALL( cvInitMatNDHeader( arr, dims, sizes, type, 0 ));
372 arr->hdr_refcount = 1;
377 cvReleaseMatND( &arr );
379 return arr;
417 cvGetMatND( const CvArr* arr, CvMatND* matnd, int* coi )
428 if( !matnd || !arr )
431 if( CV_IS_MATND_HDR(arr))
433 if( !((CvMatND*)arr)->data.ptr )
436 result = (CvMatND*)arr;
440 CvMat stub, *mat = (CvMat*)arr;
504 const CvArr* arr = i < count ? arrs[i] : mask;
507 if( !arr )
514 if( CV_IS_MATND( arr ))
515 hdr = (CvMatND*)arr;
519 CV_CALL( hdr = cvGetMatND( arr, stubs + i, &coi ));
641 CvSparseMat* arr = 0;
668 CV_CALL( arr = (CvSparseMat*)cvAlloc(sizeof(*arr)+MAX(0,dims-CV_MAX_DIM)*sizeof(arr->size[0])));
670 arr->type = CV_SPARSE_MAT_MAGIC_VAL | type;
671 arr->dims = dims;
672 arr->refcount = 0;
673 arr->hdr_refcount = 1;
674 memcpy( arr->size, sizes, dims*sizeof(sizes[0]));
676 arr->valoffset = (int)cvAlign(sizeof(CvSparseNode), pix_size1);
677 arr->idxoffset = (int)cvAlign(arr->valoffset + pix_size, sizeof(int));
678 size = (int)cvAlign(arr->idxoffset + dims*sizeof(int), sizeof(CvSetElem));
681 CV_CALL( arr->heap = cvCreateSet( 0, sizeof(CvSet), size, storage ));
683 arr->hashsize = CV_SPARSE_HASH_SIZE0;
684 size = arr->hashsize*sizeof(arr->hashtable[0]);
686 CV_CALL( arr->hashtable = (void**)cvAlloc( size ));
687 memset( arr->hashtable, 0, size );
692 cvReleaseSparseMat( &arr );
694 return arr;
711 CvSparseMat* arr = *array;
713 if( !CV_IS_SPARSE_MAT_HDR(arr) )
718 cvReleaseMemStorage( &arr->heap->storage );
719 cvFree( &arr->hashtable );
720 cvFree( &arr );
952 cvCreateData( CvArr* arr )
958 if( CV_IS_MAT_HDR( arr ))
961 CvMat* mat = (CvMat*)arr;
975 else if( CV_IS_IMAGE_HDR(arr))
977 IplImage* img = (IplImage*)arr;
1004 else if( CV_IS_MATND_HDR( arr ))
1006 CvMatND* mat = (CvMatND*)arr;
1045 cvSetData( CvArr* arr, void* data, int step )
1053 if( CV_IS_MAT_HDR(arr) || CV_IS_MATND_HDR(arr) )
1054 cvReleaseData( arr );
1056 if( CV_IS_MAT_HDR( arr ))
1058 CvMat* mat = (CvMat*)arr;
1080 else if( CV_IS_IMAGE_HDR( arr ))
1082 IplImage* img = (IplImage*)arr;
1111 else if( CV_IS_MATND_HDR( arr ))
1113 CvMatND* mat = (CvMatND*)arr;
1143 cvReleaseData( CvArr* arr )
1149 if( CV_IS_MAT_HDR( arr ) || CV_IS_MATND_HDR( arr ))
1151 CvMat* mat = (CvMat*)arr;
1154 else if( CV_IS_IMAGE_HDR( arr ))
1156 IplImage* img = (IplImage*)arr;
1180 cvGetRawData( const CvArr* arr, uchar** data, int* step, CvSize* roi_size )
1186 if( CV_IS_MAT( arr ))
1188 CvMat *mat = (CvMat*)arr;
1199 else if( CV_IS_IMAGE( arr ))
1201 IplImage* img = (IplImage*)arr;
1221 else if( CV_IS_MATND( arr ))
1223 CvMatND* mat = (CvMatND*)arr;
1261 cvGetElemType( const CvArr* arr )
1269 if( CV_IS_MAT_HDR(arr) || CV_IS_MATND_HDR(arr) || CV_IS_SPARSE_MAT_HDR(arr))
1271 arr)->type );
1273 else if( CV_IS_IMAGE(arr))
1275 IplImage* img = (IplImage*)arr;
1289 cvGetDims( const CvArr* arr, int* sizes )
1296 if( CV_IS_MAT_HDR( arr ))
1298 CvMat* mat = (CvMat*)arr;
1307 else if( CV_IS_IMAGE( arr ))
1309 IplImage* img = (IplImage*)arr;
1318 else if( CV_IS_MATND_HDR( arr ))
1320 CvMatND* mat = (CvMatND*)arr;
1330 else if( CV_IS_SPARSE_MAT_HDR( arr ))
1332 CvSparseMat* mat = (CvSparseMat*)arr;
1351 cvGetDimSize( const CvArr* arr, int index )
1358 if( CV_IS_MAT( arr ))
1360 CvMat *mat = (CvMat*)arr;
1374 else if( CV_IS_IMAGE( arr ))
1376 IplImage* img = (IplImage*)arr;
1390 else if( CV_IS_MATND_HDR( arr ))
1392 CvMatND* mat = (CvMatND*)arr;
1399 else if( CV_IS_SPARSE_MAT_HDR( arr ))
1401 CvSparseMat* mat = (CvSparseMat*)arr;
1421 cvGetSize( const CvArr* arr )
1429 if( CV_IS_MAT_HDR( arr ))
1431 CvMat *mat = (CvMat*)arr;
1436 else if( CV_IS_IMAGE_HDR( arr ))
1438 IplImage* img = (IplImage*)arr;
1464 cvGetSubRect( const CvArr* arr, CvMat* submat, CvRect rect )
1472 CvMat stub, *mat = (CvMat*)arr;
1515 cvGetRows( const CvArr* arr, CvMat* submat,
1524 CvMat stub, *mat = (CvMat*)arr;
1574 cvGetCols( const CvArr* arr, CvMat* submat, int start_col, int end_col )
1582 CvMat stub, *mat = (CvMat*)arr;
1623 cvGetDiag( const CvArr* arr, CvMat* submat, int diag )
1631 CvMat stub, *mat = (CvMat*)arr;
1896 cvPtr1D( const CvArr* arr, int idx, int* _type )
1904 if( CV_IS_MAT( arr ))
1906 CvMat* mat = (CvMat*)arr;
1934 else if( CV_IS_IMAGE_HDR( arr ))
1936 IplImage* img = (IplImage*)arr;
1940 ptr = cvPtr2D( arr, y, x, _type );
1942 else if( CV_IS_MATND( arr ))
1944 CvMatND* mat = (CvMatND*)arr;
1977 else if( CV_IS_SPARSE_MAT( arr ))
1979 CvSparseMat* m = (CvSparseMat*)arr;
1981 ptr = icvGetNodePtr( (CvSparseMat*)arr, &idx, _type, 1, 0 );
1993 ptr = icvGetNodePtr( (CvSparseMat*)arr, _idx, _type, 1, 0 );
2009 cvPtr2D( const CvArr* arr, int y, int x, int* _type )
2017 if( CV_IS_MAT( arr ))
2019 CvMat* mat = (CvMat*)arr;
2032 else if( CV_IS_IMAGE( arr ))
2034 IplImage* img = (IplImage*)arr;
2080 else if( CV_IS_MATND( arr ))
2082 CvMatND* mat = (CvMatND*)arr;
2093 else if( CV_IS_SPARSE_MAT( arr ))
2096 ptr = icvGetNodePtr( (CvSparseMat*)arr, idx, _type, 1, 0 );
2111 cvPtr3D( const CvArr* arr, int z, int y, int x, int* _type )
2119 if( CV_IS_MATND( arr ))
2121 CvMatND* mat = (CvMatND*)arr;
2135 else if( CV_IS_SPARSE_MAT( arr ))
2138 ptr = icvGetNodePtr( (CvSparseMat*)arr, idx, _type, 1, 0 );
2153 cvPtrND( const CvArr* arr, const int* idx, int* _type,
2164 if( CV_IS_SPARSE_MAT( arr ))
2165 ptr = icvGetNodePtr( (CvSparseMat*)arr, idx,
2167 else if( CV_IS_MATND( arr ))
2169 CvMatND* mat = (CvMatND*)arr;
2183 else if( CV_IS_MAT_HDR(arr) || CV_IS_IMAGE_HDR(arr) )
2184 ptr = cvPtr2D( arr, idx[0], idx[1], _type );
2196 cvGet1D( const CvArr* arr, int idx )
2207 if( CV_IS_MAT( arr ) && CV_IS_MAT_CONT( ((CvMat*)arr)->type ))
2209 CvMat* mat = (CvMat*)arr;
2222 else if( !CV_IS_SPARSE_MAT( arr ) || ((CvSparseMat*)arr)->dims > 1 )
2223 ptr = cvPtr1D( arr, idx, &type );
2225 ptr = icvGetNodePtr( (CvSparseMat*)arr, &idx, &type, 0, 0 );
2237 cvGet2D( const CvArr* arr, int y, int x )
2248 if( CV_IS_MAT( arr ))
2250 CvMat* mat = (CvMat*)arr;
2259 else if( !CV_IS_SPARSE_MAT( arr ))
2260 ptr = cvPtr2D( arr, y, x, &type );
2264 ptr = icvGetNodePtr( (CvSparseMat*)arr, idx, &type, 0, 0 );
2277 cvGet3D( const CvArr* arr, int z, int y, int x )
2288 if( !CV_IS_SPARSE_MAT( arr ))
2289 ptr = cvPtr3D( arr, z, y, x, &type );
2293 ptr = icvGetNodePtr( (CvSparseMat*)arr, idx, &type, 0, 0 );
2306 cvGetND( const CvArr* arr, const int* idx )
2317 if( !CV_IS_SPARSE_MAT( arr ))
2318 ptr = cvPtrND( arr, idx, &type );
2320 ptr = icvGetNodePtr( (CvSparseMat*)arr, idx, &type, 0, 0 );
2332 cvGetReal1D( const CvArr* arr, int idx )
2343 if( CV_IS_MAT( arr ) && CV_IS_MAT_CONT( ((CvMat*)arr)->type ))
2345 CvMat* mat = (CvMat*)arr;
2358 else if( !CV_IS_SPARSE_MAT( arr ) || ((CvSparseMat*)arr)->dims > 1 )
2359 ptr = cvPtr1D( arr, idx, &type );
2361 ptr = icvGetNodePtr( (CvSparseMat*)arr, &idx, &type, 0, 0 );
2379 cvGetReal2D( const CvArr* arr, int y, int x )
2390 if( CV_IS_MAT( arr ))
2392 CvMat* mat = (CvMat*)arr;
2401 else if( !CV_IS_SPARSE_MAT( arr ))
2402 ptr = cvPtr2D( arr, y, x, &type );
2406 ptr = icvGetNodePtr( (CvSparseMat*)arr, idx, &type, 0, 0 );
2425 cvGetReal3D( const CvArr* arr, int z, int y, int x )
2436 if( !CV_IS_SPARSE_MAT( arr ))
2437 ptr = cvPtr3D( arr, z, y, x, &type );
2441 ptr = icvGetNodePtr( (CvSparseMat*)arr, idx, &type, 0, 0 );
2460 cvGetRealND( const CvArr* arr, const int* idx )
2471 if( !CV_IS_SPARSE_MAT( arr ))
2472 ptr = cvPtrND( arr, idx, &type );
2474 ptr = icvGetNodePtr( (CvSparseMat*)arr, idx, &type, 0, 0 );
2492 cvSet1D( CvArr* arr, int idx, CvScalar scalar )
2501 if( CV_IS_MAT( arr ) && CV_IS_MAT_CONT( ((CvMat*)arr)->type ))
2503 CvMat* mat = (CvMat*)arr;
2516 else if( !CV_IS_SPARSE_MAT( arr ) || ((CvSparseMat*)arr)->dims > 1 )
2517 ptr = cvPtr1D( arr, idx, &type );
2519 ptr = icvGetNodePtr( (CvSparseMat*)arr, &idx, &type, -1, 0 );
2529 cvSet2D( CvArr* arr, int y, int x, CvScalar scalar )
2538 if( CV_IS_MAT( arr ))
2540 CvMat* mat = (CvMat*)arr;
2549 else if( !CV_IS_SPARSE_MAT( arr ))
2550 ptr = cvPtr2D( arr, y, x, &type );
2554 ptr = icvGetNodePtr( (CvSparseMat*)arr, idx, &type, -1, 0 );
2564 cvSet3D( CvArr* arr, int z, int y, int x, CvScalar scalar )
2573 if( !CV_IS_SPARSE_MAT( arr ))
2574 ptr = cvPtr3D( arr, z, y, x, &type );
2578 ptr = icvGetNodePtr( (CvSparseMat*)arr, idx, &type, -1, 0 );
2588 cvSetND( CvArr* arr, const int* idx, CvScalar scalar )
2597 if( !CV_IS_SPARSE_MAT( arr ))
2598 ptr = cvPtrND( arr, idx, &type );
2600 ptr = icvGetNodePtr( (CvSparseMat*)arr, idx, &type, -1, 0 );
2608 cvSetReal1D( CvArr* arr, int idx, double value )
2617 if( CV_IS_MAT( arr ) && CV_IS_MAT_CONT( ((CvMat*)arr)->type ))
2619 CvMat* mat = (CvMat*)arr;
2632 else if( !CV_IS_SPARSE_MAT( arr ) || ((CvSparseMat*)arr)->dims > 1 )
2633 ptr = cvPtr1D( arr, idx, &type );
2635 ptr = icvGetNodePtr( (CvSparseMat*)arr, &idx, &type, -1, 0 );
2648 cvSetReal2D( CvArr* arr, int y, int x, double value )
2657 if( CV_IS_MAT( arr ))
2659 CvMat* mat = (CvMat*)arr;
2668 else if( !CV_IS_SPARSE_MAT( arr ))
2670 ptr = cvPtr2D( arr, y, x, &type );
2675 ptr = icvGetNodePtr( (CvSparseMat*)arr, idx, &type, -1, 0 );
2688 cvSetReal3D( CvArr* arr, int z, int y, int x, double value )
2697 if( !CV_IS_SPARSE_MAT( arr ))
2698 ptr = cvPtr3D( arr, z, y, x, &type );
2702 ptr = icvGetNodePtr( (CvSparseMat*)arr, idx, &type, -1, 0 );
2715 cvSetRealND( CvArr* arr, const int* idx, double value )
2724 if( !CV_IS_SPARSE_MAT( arr ))
2725 ptr = cvPtrND( arr, idx, &type );
2727 ptr = icvGetNodePtr( (CvSparseMat*)arr, idx, &type, -1, 0 );
2740 cvClearND( CvArr* arr, const int* idx )
2746 if( !CV_IS_SPARSE_MAT( arr ))
2750 ptr = cvPtrND( arr, idx, &type );
2756 icvDeleteNode( (CvSparseMat*)arr, idx, 0 );
2895 cvReshapeMatND( const CvArr* arr,
2906 if( !arr || !_header )
2912 CV_CALL( dims = cvGetDims( arr ));
2933 CvMat* mat = (CvMat*)arr;
3005 if( !CV_IS_MATND( arr ))
3009 CvMatND* mat = (CvMatND*)arr;
3032 CvMatND* mat = (CvMatND*)arr;