If device does not support double, returns immediately.

Double floating points are not default supported by OpenCL.
This commit is contained in:
peng xiao 2013-09-26 12:59:21 +08:00
parent 0b41df46ad
commit 28ac23c1a1

View File

@ -131,6 +131,11 @@ typedef ConvertToTestBase ConvertTo;
TEST_P(ConvertTo, Accuracy)
{
if((src_depth == CV_64F || dst_depth == CV_64F) &&
!cv::ocl::Context::getContext()->supportsFeature(cv::ocl::Context::CL_DOUBLE))
{
return; // returns silently
}
for (int j = 0; j < LOOP_TIMES; j++)
{
random_roi();
@ -222,6 +227,11 @@ typedef CopyToTestBase CopyTo;
TEST_P(CopyTo, Without_mask)
{
if((src.depth() == CV_64F) &&
!cv::ocl::Context::getContext()->supportsFeature(cv::ocl::Context::CL_DOUBLE))
{
return; // returns silently
}
for (int j = 0; j < LOOP_TIMES; j++)
{
random_roi();
@ -235,6 +245,11 @@ TEST_P(CopyTo, Without_mask)
TEST_P(CopyTo, With_mask)
{
if(src.depth() == CV_64F &&
!cv::ocl::Context::getContext()->supportsFeature(cv::ocl::Context::CL_DOUBLE))
{
return; // returns silently
}
for (int j = 0; j < LOOP_TIMES; j++)
{
random_roi();
@ -326,6 +341,11 @@ typedef SetToTestBase SetTo;
TEST_P(SetTo, Without_mask)
{
if(depth == CV_64F &&
!cv::ocl::Context::getContext()->supportsFeature(cv::ocl::Context::CL_DOUBLE))
{
return; // returns silently
}
for (int j = 0; j < LOOP_TIMES; j++)
{
random_roi();
@ -339,6 +359,11 @@ TEST_P(SetTo, Without_mask)
TEST_P(SetTo, With_mask)
{
if(depth == CV_64F &&
!cv::ocl::Context::getContext()->supportsFeature(cv::ocl::Context::CL_DOUBLE))
{
return; // returns silently
}
for (int j = 0; j < LOOP_TIMES; j++)
{
random_roi();
@ -404,6 +429,11 @@ PARAM_TEST_CASE(convertC3C4, MatType, bool)
TEST_P(convertC3C4, Accuracy)
{
if(depth == CV_64F &&
!cv::ocl::Context::getContext()->supportsFeature(cv::ocl::Context::CL_DOUBLE))
{
return; // returns silently
}
for (int j = 0; j < LOOP_TIMES; j++)
{
random_roi();