OpenCV453
公開型 | 公開メンバ関数 | 静的公開メンバ関数 | 限定公開変数類 | フレンド | 全メンバ一覧
cv::ocl::ProgramSource クラス

公開型

typedef uint64 hash_t
 

公開メンバ関数

 ProgramSource (const String &module, const String &name, const String &codeStr, const String &codeHash)
 
 ProgramSource (const String &prog)
 
 ProgramSource (const char *prog)
 
 ProgramSource (const ProgramSource &prog)
 
ProgramSourceoperator= (const ProgramSource &prog)
 
 ProgramSource (ProgramSource &&prog) CV_NOEXCEPT
 
ProgramSourceoperator= (ProgramSource &&prog) CV_NOEXCEPT
 
const String & source () const
 
hash_t hash () const
 
Impl * getImpl () const
 
bool empty () const
 

静的公開メンバ関数

static 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(). [詳解]
 
static 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(). [詳解]
 

限定公開変数類

Impl * p
 

フレンド

struct Impl
 

関数詳解

◆ 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() 
)
static

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.

引数
modulename of program owner module
nameunique name of program (module+name is used as key for OpenCL program caching)
binarybuffer address. See buffer lifetime requirement in description.
sizebuffer size
buildOptionsadditional program-related build options passed to clBuildProgram()
戻り値
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() 
)
static

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'.

引数
modulename of program owner module
nameunique name of program (module+name is used as key for OpenCL program caching)
binarybuffer address. See buffer lifetime requirement in description.
sizebuffer size
buildOptionsadditional program-related build options passed to clBuildProgram() (these options are added automatically: '-x spir' and '-spir-std=1.2')
戻り値
created ProgramSource object.

このクラス詳解は次のファイルから抽出されました: