Add a workaround to interpolate between oclMat and Input/OutputArray.

This commit is contained in:
peng xiao
2013-06-21 14:05:29 +08:00
parent e600beb484
commit e129638263
4 changed files with 69 additions and 1 deletions

View File

@@ -980,6 +980,11 @@ Mat _InputArray::getMat(int i) const
return !v.empty() ? Mat(size(i), t, (void*)&v[0]) : Mat();
}
if( k == OCL_MAT )
{
CV_Error(-1, "Not implemented");
}
CV_Assert( k == STD_VECTOR_MAT );
//if( k == STD_VECTOR_MAT )
{
@@ -1062,6 +1067,11 @@ void _InputArray::getMatVector(vector<Mat>& mv) const
return;
}
if( k == OCL_MAT )
{
CV_Error(-1, "Not implemented");
}
CV_Assert( k == STD_VECTOR_MAT );
//if( k == STD_VECTOR_MAT )
{
@@ -1189,6 +1199,11 @@ Size _InputArray::size(int i) const
return tex->size();
}
if( k == OCL_MAT )
{
CV_Error(-1, "Not implemented");
}
CV_Assert( k == GPU_MAT );
//if( k == GPU_MAT )
{
@@ -1303,6 +1318,11 @@ bool _InputArray::empty() const
if( k == OPENGL_TEXTURE )
return ((const ogl::Texture2D*)obj)->empty();
if( k == OCL_MAT )
{
CV_Error(-1, "Not implemented");
}
CV_Assert( k == GPU_MAT );
//if( k == GPU_MAT )
return ((const gpu::GpuMat*)obj)->empty();
@@ -1523,6 +1543,11 @@ void _OutputArray::create(int dims, const int* sizes, int mtype, int i, bool all
return;
}
if( k == OCL_MAT )
{
CV_Error(-1, "Not implemented");
}
if( k == NONE )
{
CV_Error(CV_StsNullPtr, "create() called for the missing output array" );
@@ -1634,6 +1659,11 @@ void _OutputArray::release() const
return;
}
if( k == OCL_MAT )
{
CV_Error(-1, "Not implemented");
}
CV_Assert( k == STD_VECTOR_MAT );
//if( k == STD_VECTOR_MAT )
{