diff --git a/modules/core/include/opencv2/core/opencl/runtime/autogenerated/opencl_clamdfft.hpp b/modules/core/include/opencv2/core/opencl/runtime/autogenerated/opencl_clamdfft.hpp index b370f0e36..325145cab 100644 --- a/modules/core/include/opencv2/core/opencl/runtime/autogenerated/opencl_clamdfft.hpp +++ b/modules/core/include/opencv2/core/opencl/runtime/autogenerated/opencl_clamdfft.hpp @@ -79,7 +79,7 @@ #undef clAmdFftGetTmpBufSize #define clAmdFftGetTmpBufSize clAmdFftGetTmpBufSize_pfn #undef clAmdFftGetVersion -//#define clAmdFftGetVersion clAmdFftGetVersion_pfn +#define clAmdFftGetVersion clAmdFftGetVersion_pfn #undef clAmdFftSetLayout #define clAmdFftSetLayout clAmdFftSetLayout_pfn #undef clAmdFftSetPlanBatchSize @@ -126,7 +126,7 @@ extern CL_RUNTIME_EXPORT clAmdFftStatus (*clAmdFftEnqueueTransform)(clAmdFftPlan //extern CL_RUNTIME_EXPORT clAmdFftStatus (*clAmdFftGetPlanTransposeResult)(const clAmdFftPlanHandle plHandle, clAmdFftResultTransposed* transposed); //extern CL_RUNTIME_EXPORT clAmdFftStatus (*clAmdFftGetResultLocation)(const clAmdFftPlanHandle plHandle, clAmdFftResultLocation* placeness); extern CL_RUNTIME_EXPORT clAmdFftStatus (*clAmdFftGetTmpBufSize)(const clAmdFftPlanHandle plHandle, size_t* buffersize); -//extern CL_RUNTIME_EXPORT clAmdFftStatus (*clAmdFftGetVersion)(cl_uint* major, cl_uint* minor, cl_uint* patch); +extern CL_RUNTIME_EXPORT clAmdFftStatus (*clAmdFftGetVersion)(cl_uint* major, cl_uint* minor, cl_uint* patch); extern CL_RUNTIME_EXPORT clAmdFftStatus (*clAmdFftSetLayout)(clAmdFftPlanHandle plHandle, clAmdFftLayout iLayout, clAmdFftLayout oLayout); extern CL_RUNTIME_EXPORT clAmdFftStatus (*clAmdFftSetPlanBatchSize)(clAmdFftPlanHandle plHandle, size_t batchSize); //extern CL_RUNTIME_EXPORT clAmdFftStatus (*clAmdFftSetPlanDim)(clAmdFftPlanHandle plHandle, const clAmdFftDim dim); diff --git a/modules/core/src/ocl.cpp b/modules/core/src/ocl.cpp index 9192af8e8..36c5142b0 100644 --- a/modules/core/src/ocl.cpp +++ b/modules/core/src/ocl.cpp @@ -1581,7 +1581,11 @@ protected: { try { + cl_uint major, minor, patch; CV_Assert(clAmdFftInitSetupData(&setupData) == CLFFT_SUCCESS); + + // it throws exception in case AmdFft binaries are not found + CV_Assert(clAmdFftGetVersion(&major, &minor, &patch) == CLFFT_SUCCESS); g_isAmdFftAvailable = true; } catch (const Exception &) diff --git a/modules/core/src/opencl/runtime/autogenerated/opencl_clamdfft_impl.hpp b/modules/core/src/opencl/runtime/autogenerated/opencl_clamdfft_impl.hpp index d5bdf7e0b..fd36adfa4 100644 --- a/modules/core/src/opencl/runtime/autogenerated/opencl_clamdfft_impl.hpp +++ b/modules/core/src/opencl/runtime/autogenerated/opencl_clamdfft_impl.hpp @@ -21,7 +21,7 @@ enum OPENCLAMDFFT_FN_ID { // OPENCLAMDFFT_FN_clAmdFftGetPlanTransposeResult = 15, // OPENCLAMDFFT_FN_clAmdFftGetResultLocation = 16, OPENCLAMDFFT_FN_clAmdFftGetTmpBufSize = 17, -// OPENCLAMDFFT_FN_clAmdFftGetVersion = 18, + OPENCLAMDFFT_FN_clAmdFftGetVersion = 18, OPENCLAMDFFT_FN_clAmdFftSetLayout = 19, OPENCLAMDFFT_FN_clAmdFftSetPlanBatchSize = 20, // OPENCLAMDFFT_FN_clAmdFftSetPlanDim = 21, @@ -298,9 +298,9 @@ clAmdFftStatus (*clAmdFftGetTmpBufSize)(const clAmdFftPlanHandle, size_t*) = openclamdfft_fn2::switch_fn; static const struct DynamicFnEntry clAmdFftGetTmpBufSize_definition = { "clAmdFftGetTmpBufSize", (void**)&clAmdFftGetTmpBufSize}; -//clAmdFftStatus (*clAmdFftGetVersion)(cl_uint*, cl_uint*, cl_uint*) = -// openclamdfft_fn3::switch_fn; -//static const struct DynamicFnEntry clAmdFftGetVersion_definition = { "clAmdFftGetVersion", (void**)&clAmdFftGetVersion}; +clAmdFftStatus (*clAmdFftGetVersion)(cl_uint*, cl_uint*, cl_uint*) = + openclamdfft_fn3::switch_fn; +static const struct DynamicFnEntry clAmdFftGetVersion_definition = { "clAmdFftGetVersion", (void**)&clAmdFftGetVersion}; clAmdFftStatus (*clAmdFftSetLayout)(clAmdFftPlanHandle, clAmdFftLayout, clAmdFftLayout) = openclamdfft_fn3::switch_fn; @@ -375,7 +375,7 @@ static const struct DynamicFnEntry* openclamdfft_fn[] = { NULL/*&clAmdFftGetPlanTransposeResult_definition*/, NULL/*&clAmdFftGetResultLocation_definition*/, &clAmdFftGetTmpBufSize_definition, - NULL/*&clAmdFftGetVersion_definition*/, + &clAmdFftGetVersion_definition, &clAmdFftSetLayout_definition, &clAmdFftSetPlanBatchSize_definition, NULL/*&clAmdFftSetPlanDim_definition*/, @@ -391,4 +391,4 @@ static const struct DynamicFnEntry* openclamdfft_fn[] = { &clAmdFftTeardown_definition, }; -// number of enabled functions: 15 +// number of enabled functions: 16 diff --git a/modules/core/src/opencl/runtime/generator/filter/opencl_clamdfft_functions.list b/modules/core/src/opencl/runtime/generator/filter/opencl_clamdfft_functions.list index 8b78df175..32e9a9f34 100644 --- a/modules/core/src/opencl/runtime/generator/filter/opencl_clamdfft_functions.list +++ b/modules/core/src/opencl/runtime/generator/filter/opencl_clamdfft_functions.list @@ -16,7 +16,7 @@ clAmdFftEnqueueTransform //clAmdFftGetPlanTransposeResult //clAmdFftGetResultLocation clAmdFftGetTmpBufSize -//clAmdFftGetVersion +clAmdFftGetVersion clAmdFftSetLayout clAmdFftSetPlanBatchSize //clAmdFftSetPlanDim