Class cv::ocl::ProgramSource#
#include <opencv2/core/ocl.hpp>Collaboration diagram for cv::ocl::ProgramSource:
Friends#
Return |
Name |
Description |
|---|---|---|
|
Member Typedef Documentation#
hash_t#
typedef uint64 cv::ocl::ProgramSource::hash_t
Constructor & Destructor Documentation#
ProgramSource()#
cv::ocl::ProgramSource::ProgramSource()
ProgramSource()#
cv::ocl::ProgramSource::ProgramSource(const char * prog)
ProgramSource()#
cv::ocl::ProgramSource::ProgramSource(const ProgramSource & prog)
ProgramSource()#
cv::ocl::ProgramSource::ProgramSource(
const String & module,
const String & name,
const String & codeStr,
const String & codeHash )
ProgramSource()#
cv::ocl::ProgramSource::ProgramSource(const String & prog)
ProgramSource()#
cv::ocl::ProgramSource::ProgramSource(ProgramSource && prog)
~ProgramSource()#
cv::ocl::ProgramSource::~ProgramSource()
Member Function Documentation#
empty()#
bool cv::ocl::ProgramSource::empty()
getImpl()#
Impl * cv::ocl::ProgramSource::getImpl()
hash()#
hash_t cv::ocl::ProgramSource::hash()
operator=()#
ProgramSource & cv::ocl::ProgramSource::operator=(const ProgramSource & prog)
operator=()#
ProgramSource & cv::ocl::ProgramSource::operator=(ProgramSource && prog)
source()#
const String & cv::ocl::ProgramSource::source()
fromBinary()#
static ProgramSource cv::ocl::ProgramSource::fromBinary(
const String & module,
const String & name,
const unsigned char * binary,
const size_t size,
const cv::String & buildOptions = cv::String() )
Describe OpenCL program binary. Do not call clCreateProgramWithBinary() and/or clBuildProgram().
Caller should guarantee binary buffer lifetime greater than ProgramSource object (and any of its copies).
This kind of binary is not portable between platforms in general - it is specific to OpenCL vendor / device / driver version.
Parameters
module— name of program owner modulename— unique name of program (module+name is used as key for OpenCL program caching)binary— buffer address. See buffer lifetime requirement in description.size— buffer sizebuildOptions— additional program-related build options passed to clBuildProgram()
Returns
created ProgramSource object
fromSPIR()#
static ProgramSource cv::ocl::ProgramSource::fromSPIR(
const String & module,
const String & name,
const unsigned char * binary,
const size_t size,
const cv::String & buildOptions = cv::String() )
Describe OpenCL program in SPIR format. Do not call clCreateProgramWithBinary() and/or clBuildProgram().
Supports SPIR 1.2 by default (pass ‘-spir-std=X.Y’ in buildOptions to override this behavior)
Caller should guarantee binary buffer lifetime greater than ProgramSource object (and any of its copies).
Programs in this format are portable between OpenCL implementations with ‘khr_spir’ extension: https://www.khronos.org/registry/OpenCL/sdk/2.0/docs/man/xhtml/cl_khr_spir.html (but they are not portable between different platforms: 32-bit / 64-bit)
Note: these programs can’t support vendor specific extensions, like ‘cl_intel_subgroups’.
Parameters
module— name of program owner modulename— unique name of program (module+name is used as key for OpenCL program caching)binary— buffer address. See buffer lifetime requirement in description.size— buffer sizebuildOptions— additional program-related build options passed to clBuildProgram() (these options are added automatically: ‘-x spir’ and ‘-spir-std=1.2’)
Returns
created ProgramSource object.
Member Data Documentation#
p#
Impl * cv::ocl::ProgramSource::p
Source file#
The documentation for this class was generated from the following file:
opencv2/core/ocl.hpp