OpenCV  4.10.0
开源计算机视觉
加载中...
搜索中...
没有匹配项
公共类型 | 公共成员函数 | 静态公共成员函数 | 受保护的属性 | 朋友 | 所有成员列表
cv::ocl::ProgramSource 类参考

#include <opencv2/core/ocl.hpp>

cv::ocl::ProgramSource 的协作图

公共类型

typedef uint64 hash_t
 

公共成员函数

 ProgramSource () CV_NOEXCEPT
 
 ProgramSource (const char *prog)
 
 ProgramSource (const ProgramSource &prog)
 
 ProgramSource (const String &module, const String &name, const String &codeStr, const String &codeHash)
 
 ProgramSource (const String &prog)
 
 ProgramSource (ProgramSource &&prog) CV_NOEXCEPT
 
 ~ProgramSource ()
 
bool empty () const
 
ImplgetImpl () const
 
hash_t hash () const
 
ProgramSourceoperator= (const ProgramSource &prog)
 
ProgramSourceoperator= (ProgramSource &&prog) CV_NOEXCEPT
 
const Stringsource () const
 

静态公共成员函数

static ProgramSource fromBinary (const String &module, const String &name, const unsigned char *binary, const size_t size, const cv::String &buildOptions=cv::String())
 描述 OpenCL 程序二进制文件。不要调用 clCreateProgramWithBinary() 和/或 clBuildProgram()。
 
static ProgramSource fromSPIR (const String &module, const String &name, const unsigned char *binary, const size_t size, const cv::String &buildOptions=cv::String())
 描述 SPIR 格式的 OpenCL 程序。不要调用 clCreateProgramWithBinary() 和/或 clBuildProgram()。
 

受保护的属性

Implp
 

朋友

struct Impl
 

成员类型定义文档

◆ hash_t

构造函数和析构函数文档

◆ ProgramSource() [1/6]

cv::ocl::ProgramSource::ProgramSource ( )

◆ ProgramSource() [2/6]

cv::ocl::ProgramSource::ProgramSource ( const String module,
const String name,
const String codeStr,
const String codeHash 
)
explicit

◆ ProgramSource() [3/6]

cv::ocl::ProgramSource::ProgramSource ( const String prog)
explicit

◆ ProgramSource() [4/6]

cv::ocl::ProgramSource::ProgramSource ( const char *  prog)
explicit

◆ ~ProgramSource()

cv::ocl::ProgramSource::~ProgramSource ( )

◆ ProgramSource() [5/6]

cv::ocl::ProgramSource::ProgramSource ( const ProgramSource prog)

◆ ProgramSource() [6/6]

cv::ocl::ProgramSource::ProgramSource ( ProgramSource &&  prog)

成员函数文档

◆ empty()

bool cv::ocl::ProgramSource::empty ( ) const
inline

◆ 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

描述 OpenCL 程序二进制文件。不要调用 clCreateProgramWithBinary() 和/或 clBuildProgram()。

调用者应保证二进制缓冲区生命周期大于 ProgramSource 对象(及其任何副本)。

这种二进制文件通常在平台之间不可移植 - 它特定于 OpenCL 供应商/设备/驱动程序版本。

参数
module程序所有者模块的名称
name程序的唯一名称(module+name 用作 OpenCL 程序缓存的键)
binary缓冲区地址。请参阅描述中的缓冲区生命周期要求。
size缓冲区大小
buildOptions传递给 clBuildProgram() 的其他与程序相关的构建选项
返回值
创建的 ProgramSource 对象

◆ 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

描述 SPIR 格式的 OpenCL 程序。不要调用 clCreateProgramWithBinary() 和/或 clBuildProgram()。

默认情况下支持 SPIR 1.2(在 buildOptions 中传递 '-spir-std=X.Y' 以覆盖此行为)

调用者应保证二进制缓冲区生命周期大于 ProgramSource 对象(及其任何副本)。

这种格式的程序在具有 'khr_spir' 扩展的 OpenCL 实现之间可移植: https://www.khronos.org/registry/OpenCL/sdk/2.0/docs/man/xhtml/cl_khr_spir.html(但它们在不同平台之间不可移植:32 位/64 位)

注意:这些程序无法支持供应商特定的扩展,例如 'cl_intel_subgroups'。

参数
module程序所有者模块的名称
name程序的唯一名称(module+name 用作 OpenCL 程序缓存的键)
binary缓冲区地址。请参阅描述中的缓冲区生命周期要求。
size缓冲区大小
buildOptions传递给 clBuildProgram() 的其他与程序相关的构建选项(这些选项将自动添加:'-x spir' 和 '-spir-std=1.2')
返回值
创建的 ProgramSource 对象。

◆ getImpl()

Impl * cv::ocl::ProgramSource::getImpl ( ) const
inline

◆ hash()

hash_t cv::ocl::ProgramSource::hash ( ) const

◆ operator=() [1/2]

ProgramSource & cv::ocl::ProgramSource::operator= ( const ProgramSource prog)

◆ operator=() [2/2]

ProgramSource & cv::ocl::ProgramSource::operator= ( ProgramSource &&  prog)

◆ source()

const String & cv::ocl::ProgramSource::source ( ) const

朋友和相关符号文档

◆ Impl

friend struct Impl
friend

成员数据文档

◆ p

Impl* cv::ocl::ProgramSource::p
protected

此类的文档是从以下文件生成的