| 1289 | } |
| 1290 | |
| 1291 | bool _InputArray::empty() const |
| 1292 | { |
| 1293 | int k = kind(); |
| 1294 | |
| 1295 | if( k == MAT ) |
| 1296 | return ((const Mat*)obj)->empty(); |
| 1297 | |
| 1298 | if( k == EXPR ) |
| 1299 | return false; |
| 1300 | |
| 1301 | if( k == MATX ) |
| 1302 | return false; |
| 1303 | |
| 1304 | if( k == STD_VECTOR ) |
| 1305 | { |
| 1306 | const vector<uchar>& v = *(const vector<uchar>*)obj; |
| 1307 | return v.empty(); |
| 1308 | } |
| 1309 | |
| 1310 | if( k == NONE ) |
| 1311 | return true; |
| 1312 | |
| 1313 | if( k == STD_VECTOR_VECTOR ) |
| 1314 | { |
| 1315 | const vector<vector<uchar> >& vv = *(const vector<vector<uchar> >*)obj; |
| 1316 | return vv.empty(); |
| 1317 | } |
| 1318 | |
| 1319 | if( k == STD_VECTOR_MAT ) |
| 1320 | { |
| 1321 | const vector<Mat>& vv = *(const vector<Mat>*)obj; |
| 1322 | return vv.empty(); |
| 1323 | } |
| 1324 | |
| 1325 | if( k == OPENGL_BUFFER ) |
| 1326 | return ((const ogl::Buffer*)obj)->empty(); |
| 1327 | |
| 1328 | if( k == OPENGL_TEXTURE ) |
| 1329 | return ((const ogl::Texture2D*)obj)->empty(); |
| 1330 | |
| 1331 | if( k == OCL_MAT ) |
| 1332 | { |
| 1333 | CV_Error(CV_StsNotImplemented, "This method is not implemented for oclMat yet"); |
| 1334 | } |
| 1335 | |
| 1336 | CV_Assert( k == GPU_MAT ); |
| 1337 | //if( k == GPU_MAT ) |
| 1338 | return ((const gpu::GpuMat*)obj)->empty(); |
| 1339 | } |
| 1340 | |
| 1341 | |
| 1342 | _OutputArray::_OutputArray() {} |
no outgoing calls
no test coverage detected