#include <itkOpenCLKernel.h>
The OpenCLKernel class represents an executable entry point function in an OpenCL program.
Definition at line 135 of file itkOpenCLKernel.h.
Public Types | |
using | CovariantVectorDouble1DType = CovariantVector<double, 1> |
using | CovariantVectorDouble2DType = CovariantVector<double, 2> |
using | CovariantVectorDouble3DType = CovariantVector<double, 3> |
using | CovariantVectorDouble4DType = CovariantVector<double, 4> |
using | CovariantVectorFloat1DType = CovariantVector<float, 1> |
using | CovariantVectorFloat2DType = CovariantVector<float, 2> |
using | CovariantVectorFloat3DType = CovariantVector<float, 3> |
using | CovariantVectorFloat4DType = CovariantVector<float, 4> |
using | CovariantVectorInt1DType = CovariantVector<int, 1> |
using | CovariantVectorInt2DType = CovariantVector<int, 2> |
using | CovariantVectorInt3DType = CovariantVector<int, 3> |
using | CovariantVectorInt4DType = CovariantVector<int, 4> |
using | Index1DType = Index<1> |
using | Index2DType = Index<2> |
using | Index3DType = Index<3> |
using | Index4DType = Index<4> |
using | MatrixDouble1x1Type = Matrix<double, 1, 1> |
using | MatrixDouble2x2Type = Matrix<double, 2, 2> |
using | MatrixDouble3x3Type = Matrix<double, 3, 3> |
using | MatrixDouble4x4Type = Matrix<double, 4, 4> |
using | MatrixFloat1x1Type = Matrix<float, 1, 1> |
using | MatrixFloat2x2Type = Matrix<float, 2, 2> |
using | MatrixFloat3x3Type = Matrix<float, 3, 3> |
using | MatrixFloat4x4Type = Matrix<float, 4, 4> |
using | Offset1DType = Offset<1> |
using | Offset2DType = Offset<2> |
using | Offset3DType = Offset<3> |
using | Offset4DType = Offset<4> |
using | PointDouble1DType = Point<double, 1> |
using | PointDouble2DType = Point<double, 2> |
using | PointDouble3DType = Point<double, 3> |
using | PointDouble4DType = Point<double, 4> |
using | PointFloat1DType = Point<float, 1> |
using | PointFloat2DType = Point<float, 2> |
using | PointFloat3DType = Point<float, 3> |
using | PointFloat4DType = Point<float, 4> |
using | PointInt1DType = Point<int, 1> |
using | PointInt2DType = Point<int, 2> |
using | PointInt3DType = Point<int, 3> |
using | PointInt4DType = Point<int, 4> |
using | Self = OpenCLMemoryObject |
using | Size1DType = Size<1> |
using | Size2DType = Size<2> |
using | Size3DType = Size<3> |
using | Size4DType = Size<4> |
using | VectorDouble1DType = Vector<double, 1> |
using | VectorDouble2DType = Vector<double, 2> |
using | VectorDouble3DType = Vector<double, 3> |
using | VectorDouble4DType = Vector<double, 4> |
using | VectorFloat1DType = Vector<float, 1> |
using | VectorFloat2DType = Vector<float, 2> |
using | VectorFloat3DType = Vector<float, 3> |
using | VectorFloat4DType = Vector<float, 4> |
using | VectorInt1DType = Vector<int, 1> |
using | VectorInt2DType = Vector<int, 2> |
using | VectorInt3DType = Vector<int, 3> |
using | VectorInt4DType = Vector<int, 4> |
Public Member Functions | |
OpenCLSize | GetBestLocalWorkSizeImage (const std::vcl_size_t dimension) const |
OpenCLSize | GetBestLocalWorkSizeImage1D () const |
OpenCLSize | GetBestLocalWorkSizeImage2D () const |
OpenCLSize | GetBestLocalWorkSizeImage3D () const |
OpenCLSize | GetCompileWorkGroupSize () const |
OpenCLSize | GetCompileWorkGroupSize (const OpenCLDevice &device) const |
OpenCLContext * | GetContext () const |
bool | GetDoubleAsFloatEnabled () |
OpenCLSize | GetGlobalWorkOffset () const |
OpenCLSize | GetGlobalWorkSize () const |
cl_kernel | GetKernelId () const |
OpenCLSize | GetLocalWorkSize () const |
std::string | GetName () const |
std::vcl_size_t | GetNumberOfArguments () const |
vcl_size_t | GetPreferredWorkSizeMultiple () const |
OpenCLProgram | GetProgram () const |
bool | IsNull () const |
OpenCLEvent | LaunchKernel () |
OpenCLEvent | LaunchKernel (const OpenCLEventList &event_list) |
OpenCLEvent | LaunchKernel (const OpenCLEventList &event_list, const OpenCLSize &global_work_size, const OpenCLSize &local_work_size=OpenCLSize::null, const OpenCLSize &global_work_offset=OpenCLSize::null) |
OpenCLEvent | LaunchKernel (const OpenCLSize &global_work_size, const OpenCLSize &local_work_size=OpenCLSize::null, const OpenCLSize &global_work_offset=OpenCLSize::null) |
bool | LaunchTask (const OpenCLEventList &event_list) |
OpenCLEvent | LaunchTaskAsync (const OpenCLEventList &event_list) |
OpenCLKernel () | |
OpenCLKernel (const OpenCLKernel &other) | |
OpenCLKernel (OpenCLContext *context, const cl_kernel id) | |
cl_char16 cl_short16 cl_int16 cl_long16 | OpenCLKernelSetArgsMacroH (cl_float, cl_float2, cl_float4, cl_float8, cl_float16) OpenCLKernelSetArgsMacroH(cl_double |
OpenCLKernelSetArgsMacroH (cl_uchar, cl_uchar2, cl_uchar4, cl_uchar8, cl_uchar16) OpenCLKernelSetArgsMacroH(cl_char | |
cl_char16 cl_short16 | OpenCLKernelSetArgsMacroH (cl_uint, cl_uint2, cl_uint4, cl_uint8, cl_uint16) OpenCLKernelSetArgsMacroH(cl_int |
cl_char16 cl_short16 cl_int16 | OpenCLKernelSetArgsMacroH (cl_ulong, cl_ulong2, cl_ulong4, cl_ulong8, cl_ulong16) OpenCLKernelSetArgsMacroH(cl_long |
cl_char16 | OpenCLKernelSetArgsMacroH (cl_ushort, cl_ushort2, cl_ushort4, cl_ushort8, cl_ushort16) OpenCLKernelSetArgsMacroH(cl_short |
OpenCLEvent | operator() () |
template<typename T1 > | |
OpenCLEvent | operator() (const T1 &arg1) |
template<typename T1 , typename T2 > | |
OpenCLEvent | operator() (const T1 &arg1, const T2 &arg2) |
template<typename T1 , typename T2 , typename T3 > | |
OpenCLEvent | operator() (const T1 &arg1, const T2 &arg2, const T3 &arg3) |
template<typename T1 , typename T2 , typename T3 , typename T4 > | |
OpenCLEvent | operator() (const T1 &arg1, const T2 &arg2, const T3 &arg3, const T4 &arg4) |
template<typename T1 , typename T2 , typename T3 , typename T4 , typename T5 > | |
OpenCLEvent | operator() (const T1 &arg1, const T2 &arg2, const T3 &arg3, const T4 &arg4, const T5 &arg5) |
template<typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 > | |
OpenCLEvent | operator() (const T1 &arg1, const T2 &arg2, const T3 &arg3, const T4 &arg4, const T5 &arg5, const T6 &arg6) |
template<typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 > | |
OpenCLEvent | operator() (const T1 &arg1, const T2 &arg2, const T3 &arg3, const T4 &arg4, const T5 &arg5, const T6 &arg6, const T7 &arg7) |
template<typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 > | |
OpenCLEvent | operator() (const T1 &arg1, const T2 &arg2, const T3 &arg3, const T4 &arg4, const T5 &arg5, const T6 &arg6, const T7 &arg7, const T8 &arg8) |
template<typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 > | |
OpenCLEvent | operator() (const T1 &arg1, const T2 &arg2, const T3 &arg3, const T4 &arg4, const T5 &arg5, const T6 &arg6, const T7 &arg7, const T8 &arg8, const T9 &arg9) |
template<typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 > | |
OpenCLEvent | operator() (const T1 &arg1, const T2 &arg2, const T3 &arg3, const T4 &arg4, const T5 &arg5, const T6 &arg6, const T7 &arg7, const T8 &arg8, const T9 &arg9, const T10 &arg10) |
OpenCLKernel & | operator= (const OpenCLKernel &other) |
cl_int | SetArg (const cl_uint index, const CovariantVectorDouble1DType &value) |
cl_int | SetArg (const cl_uint index, const CovariantVectorDouble2DType &value) |
cl_int | SetArg (const cl_uint index, const CovariantVectorDouble3DType &value) |
cl_int | SetArg (const cl_uint index, const CovariantVectorDouble4DType &value) |
cl_int | SetArg (const cl_uint index, const CovariantVectorFloat1DType &value) |
cl_int | SetArg (const cl_uint index, const CovariantVectorFloat2DType &value) |
cl_int | SetArg (const cl_uint index, const CovariantVectorFloat3DType &value) |
cl_int | SetArg (const cl_uint index, const CovariantVectorFloat4DType &value) |
cl_int | SetArg (const cl_uint index, const CovariantVectorInt1DType &value) |
cl_int | SetArg (const cl_uint index, const CovariantVectorInt2DType &value) |
cl_int | SetArg (const cl_uint index, const CovariantVectorInt3DType &value) |
cl_int | SetArg (const cl_uint index, const CovariantVectorInt4DType &value) |
cl_int | SetArg (const cl_uint index, const Index1DType &value) |
cl_int | SetArg (const cl_uint index, const Index2DType &value) |
cl_int | SetArg (const cl_uint index, const Index3DType &value) |
cl_int | SetArg (const cl_uint index, const Index4DType &value) |
cl_int | SetArg (const cl_uint index, const MatrixDouble1x1Type &value) |
cl_int | SetArg (const cl_uint index, const MatrixDouble2x2Type &value) |
cl_int | SetArg (const cl_uint index, const MatrixDouble3x3Type &value) |
cl_int | SetArg (const cl_uint index, const MatrixDouble4x4Type &value) |
cl_int | SetArg (const cl_uint index, const MatrixFloat1x1Type &value) |
cl_int | SetArg (const cl_uint index, const MatrixFloat2x2Type &value) |
cl_int | SetArg (const cl_uint index, const MatrixFloat3x3Type &value) |
cl_int | SetArg (const cl_uint index, const MatrixFloat4x4Type &value) |
cl_int | SetArg (const cl_uint index, const Offset1DType &value) |
cl_int | SetArg (const cl_uint index, const Offset2DType &value) |
cl_int | SetArg (const cl_uint index, const Offset3DType &value) |
cl_int | SetArg (const cl_uint index, const Offset4DType &value) |
cl_int | SetArg (const cl_uint index, const OpenCLMemoryObject &value) |
cl_int | SetArg (const cl_uint index, const OpenCLSampler &value) |
cl_int | SetArg (const cl_uint index, const OpenCLVectorBase &value) |
cl_int | SetArg (const cl_uint index, const PointDouble1DType &value) |
cl_int | SetArg (const cl_uint index, const PointDouble2DType &value) |
cl_int | SetArg (const cl_uint index, const PointDouble3DType &value) |
cl_int | SetArg (const cl_uint index, const PointDouble4DType &value) |
cl_int | SetArg (const cl_uint index, const PointFloat1DType &value) |
cl_int | SetArg (const cl_uint index, const PointFloat2DType &value) |
cl_int | SetArg (const cl_uint index, const PointFloat3DType &value) |
cl_int | SetArg (const cl_uint index, const PointFloat4DType &value) |
cl_int | SetArg (const cl_uint index, const PointInt1DType &value) |
cl_int | SetArg (const cl_uint index, const PointInt2DType &value) |
cl_int | SetArg (const cl_uint index, const PointInt3DType &value) |
cl_int | SetArg (const cl_uint index, const PointInt4DType &value) |
cl_int | SetArg (const cl_uint index, const Size1DType &value) |
cl_int | SetArg (const cl_uint index, const Size2DType &value) |
cl_int | SetArg (const cl_uint index, const Size3DType &value) |
cl_int | SetArg (const cl_uint index, const Size4DType &value) |
cl_int | SetArg (const cl_uint index, const VectorDouble1DType &value) |
cl_int | SetArg (const cl_uint index, const VectorDouble2DType &value) |
cl_int | SetArg (const cl_uint index, const VectorDouble3DType &value) |
cl_int | SetArg (const cl_uint index, const VectorDouble4DType &value) |
cl_int | SetArg (const cl_uint index, const VectorFloat1DType &value) |
cl_int | SetArg (const cl_uint index, const VectorFloat2DType &value) |
cl_int | SetArg (const cl_uint index, const VectorFloat3DType &value) |
cl_int | SetArg (const cl_uint index, const VectorFloat4DType &value) |
cl_int | SetArg (const cl_uint index, const VectorInt1DType &value) |
cl_int | SetArg (const cl_uint index, const VectorInt2DType &value) |
cl_int | SetArg (const cl_uint index, const VectorInt3DType &value) |
cl_int | SetArg (const cl_uint index, const VectorInt4DType &value) |
cl_char16 cl_short16 cl_int16 cl_long16 cl_double16 cl_int | SetArg (const cl_uint index, const void *data, const vcl_size_t size) |
void | SetDoubleAsFloat (const bool value) |
void | SetDoubleAsFloatDisable () |
void | SetDoubleAsFloatEnable () |
void | SetGlobalWorkOffset (const OpenCLSize &offset) |
void | SetGlobalWorkSize (const OpenCLSize &size) |
void | SetLocalWorkSize (const OpenCLSize &size) |
void | SetRoundedGlobalWorkSize (const OpenCLSize &size) |
~OpenCLKernel () | |
Data Fields | |
cl_char2 | |
cl_char4 | |
cl_char8 | |
cl_char16 cl_short16 cl_int16 cl_long16 | cl_double2 |
cl_char16 cl_short16 cl_int16 cl_long16 | cl_double4 |
cl_char16 cl_short16 cl_int16 cl_long16 | cl_double8 |
cl_char16 cl_short16 | cl_int2 |
cl_char16 cl_short16 | cl_int4 |
cl_char16 cl_short16 | cl_int8 |
cl_char16 cl_short16 cl_int16 | cl_long2 |
cl_char16 cl_short16 cl_int16 | cl_long4 |
cl_char16 cl_short16 cl_int16 | cl_long8 |
cl_char16 | cl_short2 |
cl_char16 | cl_short4 |
cl_char16 | cl_short8 |
Private Attributes | |
std::unique_ptr< OpenCLKernelPimpl > | d_ptr |
bool | m_DoubleAsFloat |
cl_kernel | m_KernelId |
using itk::OpenCLKernel::CovariantVectorDouble1DType = CovariantVector<double, 1> |
Definition at line 497 of file itkOpenCLKernel.h.
using itk::OpenCLKernel::CovariantVectorDouble2DType = CovariantVector<double, 2> |
Definition at line 509 of file itkOpenCLKernel.h.
using itk::OpenCLKernel::CovariantVectorDouble3DType = CovariantVector<double, 3> |
Definition at line 521 of file itkOpenCLKernel.h.
using itk::OpenCLKernel::CovariantVectorDouble4DType = CovariantVector<double, 4> |
Definition at line 533 of file itkOpenCLKernel.h.
using itk::OpenCLKernel::CovariantVectorFloat1DType = CovariantVector<float, 1> |
Definition at line 493 of file itkOpenCLKernel.h.
using itk::OpenCLKernel::CovariantVectorFloat2DType = CovariantVector<float, 2> |
Definition at line 505 of file itkOpenCLKernel.h.
using itk::OpenCLKernel::CovariantVectorFloat3DType = CovariantVector<float, 3> |
Definition at line 517 of file itkOpenCLKernel.h.
using itk::OpenCLKernel::CovariantVectorFloat4DType = CovariantVector<float, 4> |
Definition at line 529 of file itkOpenCLKernel.h.
using itk::OpenCLKernel::CovariantVectorInt1DType = CovariantVector<int, 1> |
Sets argument index for this kernel to covariant vector value.
Definition at line 489 of file itkOpenCLKernel.h.
using itk::OpenCLKernel::CovariantVectorInt2DType = CovariantVector<int, 2> |
Definition at line 501 of file itkOpenCLKernel.h.
using itk::OpenCLKernel::CovariantVectorInt3DType = CovariantVector<int, 3> |
Definition at line 513 of file itkOpenCLKernel.h.
using itk::OpenCLKernel::CovariantVectorInt4DType = CovariantVector<int, 4> |
Definition at line 525 of file itkOpenCLKernel.h.
using itk::OpenCLKernel::Index1DType = Index<1> |
Sets argument index for this kernel to index value.
Definition at line 356 of file itkOpenCLKernel.h.
using itk::OpenCLKernel::Index2DType = Index<2> |
Definition at line 360 of file itkOpenCLKernel.h.
using itk::OpenCLKernel::Index3DType = Index<3> |
Definition at line 364 of file itkOpenCLKernel.h.
using itk::OpenCLKernel::Index4DType = Index<4> |
Definition at line 368 of file itkOpenCLKernel.h.
using itk::OpenCLKernel::MatrixDouble1x1Type = Matrix<double, 1, 1> |
Definition at line 542 of file itkOpenCLKernel.h.
using itk::OpenCLKernel::MatrixDouble2x2Type = Matrix<double, 2, 2> |
Definition at line 550 of file itkOpenCLKernel.h.
using itk::OpenCLKernel::MatrixDouble3x3Type = Matrix<double, 3, 3> |
Definition at line 558 of file itkOpenCLKernel.h.
using itk::OpenCLKernel::MatrixDouble4x4Type = Matrix<double, 4, 4> |
Definition at line 566 of file itkOpenCLKernel.h.
using itk::OpenCLKernel::MatrixFloat1x1Type = Matrix<float, 1, 1> |
Sets argument index for this kernel to matrix value.
Definition at line 538 of file itkOpenCLKernel.h.
using itk::OpenCLKernel::MatrixFloat2x2Type = Matrix<float, 2, 2> |
Definition at line 546 of file itkOpenCLKernel.h.
using itk::OpenCLKernel::MatrixFloat3x3Type = Matrix<float, 3, 3> |
Definition at line 554 of file itkOpenCLKernel.h.
using itk::OpenCLKernel::MatrixFloat4x4Type = Matrix<float, 4, 4> |
Definition at line 562 of file itkOpenCLKernel.h.
using itk::OpenCLKernel::Offset1DType = Offset<1> |
Sets argument index for this kernel to offset value.
Definition at line 373 of file itkOpenCLKernel.h.
using itk::OpenCLKernel::Offset2DType = Offset<2> |
Definition at line 377 of file itkOpenCLKernel.h.
using itk::OpenCLKernel::Offset3DType = Offset<3> |
Definition at line 381 of file itkOpenCLKernel.h.
using itk::OpenCLKernel::Offset4DType = Offset<4> |
Definition at line 385 of file itkOpenCLKernel.h.
using itk::OpenCLKernel::PointDouble1DType = Point<double, 1> |
Definition at line 398 of file itkOpenCLKernel.h.
using itk::OpenCLKernel::PointDouble2DType = Point<double, 2> |
Definition at line 410 of file itkOpenCLKernel.h.
using itk::OpenCLKernel::PointDouble3DType = Point<double, 3> |
Definition at line 422 of file itkOpenCLKernel.h.
using itk::OpenCLKernel::PointDouble4DType = Point<double, 4> |
Definition at line 434 of file itkOpenCLKernel.h.
using itk::OpenCLKernel::PointFloat1DType = Point<float, 1> |
Definition at line 394 of file itkOpenCLKernel.h.
using itk::OpenCLKernel::PointFloat2DType = Point<float, 2> |
Definition at line 406 of file itkOpenCLKernel.h.
using itk::OpenCLKernel::PointFloat3DType = Point<float, 3> |
Definition at line 418 of file itkOpenCLKernel.h.
using itk::OpenCLKernel::PointFloat4DType = Point<float, 4> |
Definition at line 430 of file itkOpenCLKernel.h.
using itk::OpenCLKernel::PointInt1DType = Point<int, 1> |
Sets argument index for this kernel to point value.
Definition at line 390 of file itkOpenCLKernel.h.
using itk::OpenCLKernel::PointInt2DType = Point<int, 2> |
Definition at line 402 of file itkOpenCLKernel.h.
using itk::OpenCLKernel::PointInt3DType = Point<int, 3> |
Definition at line 414 of file itkOpenCLKernel.h.
using itk::OpenCLKernel::PointInt4DType = Point<int, 4> |
Definition at line 426 of file itkOpenCLKernel.h.
Standard class typedefs.
Definition at line 139 of file itkOpenCLKernel.h.
using itk::OpenCLKernel::Size1DType = Size<1> |
Sets argument index for this kernel to size value.
Definition at line 339 of file itkOpenCLKernel.h.
using itk::OpenCLKernel::Size2DType = Size<2> |
Definition at line 343 of file itkOpenCLKernel.h.
using itk::OpenCLKernel::Size3DType = Size<3> |
Definition at line 347 of file itkOpenCLKernel.h.
using itk::OpenCLKernel::Size4DType = Size<4> |
Definition at line 351 of file itkOpenCLKernel.h.
using itk::OpenCLKernel::VectorDouble1DType = Vector<double, 1> |
Definition at line 448 of file itkOpenCLKernel.h.
using itk::OpenCLKernel::VectorDouble2DType = Vector<double, 2> |
Definition at line 460 of file itkOpenCLKernel.h.
using itk::OpenCLKernel::VectorDouble3DType = Vector<double, 3> |
Definition at line 472 of file itkOpenCLKernel.h.
using itk::OpenCLKernel::VectorDouble4DType = Vector<double, 4> |
Definition at line 484 of file itkOpenCLKernel.h.
using itk::OpenCLKernel::VectorFloat1DType = Vector<float, 1> |
Definition at line 444 of file itkOpenCLKernel.h.
using itk::OpenCLKernel::VectorFloat2DType = Vector<float, 2> |
Definition at line 456 of file itkOpenCLKernel.h.
using itk::OpenCLKernel::VectorFloat3DType = Vector<float, 3> |
Definition at line 468 of file itkOpenCLKernel.h.
using itk::OpenCLKernel::VectorFloat4DType = Vector<float, 4> |
Definition at line 480 of file itkOpenCLKernel.h.
using itk::OpenCLKernel::VectorInt1DType = Vector<int, 1> |
Sets argument index for this kernel to vector value. ITK Vector typedefs.
Definition at line 440 of file itkOpenCLKernel.h.
using itk::OpenCLKernel::VectorInt2DType = Vector<int, 2> |
Definition at line 452 of file itkOpenCLKernel.h.
using itk::OpenCLKernel::VectorInt3DType = Vector<int, 3> |
Definition at line 464 of file itkOpenCLKernel.h.
using itk::OpenCLKernel::VectorInt4DType = Vector<int, 4> |
Definition at line 476 of file itkOpenCLKernel.h.
itk::OpenCLKernel::OpenCLKernel | ( | ) |
Constructs a null OpenCL kernel object.
itk::OpenCLKernel::OpenCLKernel | ( | OpenCLContext * | context, |
const cl_kernel | id ) |
Constructs an OpenCL kernel object from the native identifier id, and associates it with GetContext. This class will take over ownership of id and release it in the destructor.
itk::OpenCLKernel::OpenCLKernel | ( | const OpenCLKernel & | other | ) |
Constructs a copy of other.
itk::OpenCLKernel::~OpenCLKernel | ( | ) |
Releases this OpenCL kernel object. If this is the last reference to the kernel, it will be destroyed.
OpenCLSize itk::OpenCLKernel::GetBestLocalWorkSizeImage | ( | const std::vcl_size_t | dimension | ) | const |
Returns the recommended best local work size for 1D/2D/3D image processing based on the dimension on this kernel.
OpenCLSize itk::OpenCLKernel::GetBestLocalWorkSizeImage1D | ( | ) | const |
Returns the recommended best local work size for 1D image processing on this kernel. Default value is 8 unless the maximum work size is not large enough to accommodate 8 items.
OpenCLSize itk::OpenCLKernel::GetBestLocalWorkSizeImage2D | ( | ) | const |
Returns the recommended best local work size for 2D image processing on this kernel. Default value is 8x8 unless the maximum work size is not large enough to accommodate 8x8 items.
OpenCLSize itk::OpenCLKernel::GetBestLocalWorkSizeImage3D | ( | ) | const |
Returns the recommended best local work size for 3D image processing on this kernel. Default value is 8x8x8 unless the maximum work size is not large enough to accommodate 8x8x8 items.
OpenCLSize itk::OpenCLKernel::GetCompileWorkGroupSize | ( | ) | const |
Returns the work group size that was declared in the kernel's source code using a {reqd_work_group_size} qualifier. Returns (0, 0, 0) if the size is not declared. The default device for GetContext() is used to retrieve the work group size.
OpenCLSize itk::OpenCLKernel::GetCompileWorkGroupSize | ( | const OpenCLDevice & | device | ) | const |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. Returns the work group size that was declared in the kernel's source code using a {reqd_work_group_size} qualifier. Returns (0, 0, 0) if the size is not declared. The specified device is used to retrieve the work group size.
OpenCLContext * itk::OpenCLKernel::GetContext | ( | ) | const |
Returns the OpenCL GetContext that this kernel was created within.
|
inline |
Definition at line 295 of file itkOpenCLKernel.h.
OpenCLSize itk::OpenCLKernel::GetGlobalWorkOffset | ( | ) | const |
Returns the global work offset size for this instance of the kernel. The default value is 0.
OpenCLSize itk::OpenCLKernel::GetGlobalWorkSize | ( | ) | const |
Returns the global work size for this instance of the kernel. The default value is 1.
cl_kernel itk::OpenCLKernel::GetKernelId | ( | ) | const |
Returns the native OpenCL identifier for this kernel.
OpenCLSize itk::OpenCLKernel::GetLocalWorkSize | ( | ) | const |
Returns the local work size for this instance of the kernel. The default value is 0, which indicates that the local work size is not used.
std::string itk::OpenCLKernel::GetName | ( | ) | const |
Returns the name of this OpenCL kernel's entry point function.
std::vcl_size_t itk::OpenCLKernel::GetNumberOfArguments | ( | ) | const |
Returns the number of arguments that are expected by this OpenCL kernel.
vcl_size_t itk::OpenCLKernel::GetPreferredWorkSizeMultiple | ( | ) | const |
Returns the preferred work group size multiple, which is a performance hint for the local work group size on OpenCL 1.1 systems. Returns zero if the system is OpenCL 1.0, or a preferred work group size multiple is not available.
OpenCLProgram itk::OpenCLKernel::GetProgram | ( | ) | const |
Returns the OpenCL program that this kernel is associated with.
bool itk::OpenCLKernel::IsNull | ( | ) | const |
Returns true if this OpenCL kernel object is null, false otherwise.
OpenCLEvent itk::OpenCLKernel::LaunchKernel | ( | ) |
Requests that this kernel instance be run on GetGlobalWorkSize() items, optionally subdivided into work groups of GetLocalWorkSize() items. Returns an event object that can be used to wait for the kernel to finish execution. The request is executed on the active command queue for GetContext().
OpenCLEvent itk::OpenCLKernel::LaunchKernel | ( | const OpenCLEventList & | event_list | ) |
Requests that this kernel instance be run on GetGlobalWorkSize() items, optionally subdivided into work groups of GetLocalWorkSize() items. If event_list is not an empty list, it indicates the events that must be signaled as finished before this kernel instance can begin executing. Returns an event object that can be used to wait for the kernel to finish execution. The request is executed on the active command queue for GetContext().
OpenCLEvent itk::OpenCLKernel::LaunchKernel | ( | const OpenCLEventList & | event_list, |
const OpenCLSize & | global_work_size, | ||
const OpenCLSize & | local_work_size = OpenCLSize::null, | ||
const OpenCLSize & | global_work_offset = OpenCLSize::null ) |
OpenCLEvent itk::OpenCLKernel::LaunchKernel | ( | const OpenCLSize & | global_work_size, |
const OpenCLSize & | local_work_size = OpenCLSize::null, | ||
const OpenCLSize & | global_work_offset = OpenCLSize::null ) |
bool itk::OpenCLKernel::LaunchTask | ( | const OpenCLEventList & | event_list | ) |
Enqueues a command to execute a kernel on a device. The kernel is executed using a single work-item. Returns true if the task was successful, false otherwise. This function will block until the request finishes. The request is executed on the active command queue for context().
OpenCLEvent itk::OpenCLKernel::LaunchTaskAsync | ( | const OpenCLEventList & | event_list | ) |
Asynchronous version of the LaunchTask() method. This function will queue the task event_list and return immediately. Returns an OpenCLEvent object that can be used to wait for the request to finish. The request will not start until all of the events in event_list have been signaled as completed.
cl_char16 cl_short16 cl_int16 cl_long16 itk::OpenCLKernel::OpenCLKernelSetArgsMacroH | ( | cl_float | , |
cl_float2 | , | ||
cl_float4 | , | ||
cl_float8 | , | ||
cl_float16 | ) |
itk::OpenCLKernel::OpenCLKernelSetArgsMacroH | ( | cl_uchar | , |
cl_uchar2 | , | ||
cl_uchar4 | , | ||
cl_uchar8 | , | ||
cl_uchar16 | ) |
Sets argument index for this kernel to value. The argument is assumed to have been declared with the types: char(n), uchar(n), short(n), ushort(n), int(n), uint(n), long(n), ulong(n), float(n), double(n). Due to number of overloads below, we have to use C++11 std::enable_if, std::is_scalar, std::is_union, which doesn't supported by all compilers. Sets argument index for this kernel to value. Macro definitions of SetArg() methods for types: char(n), uchar(n), short(n), ushort(n), int(n), uint(n), long(n), ulong(n), float(n), double(n).
cl_char16 cl_short16 itk::OpenCLKernel::OpenCLKernelSetArgsMacroH | ( | cl_uint | , |
cl_uint2 | , | ||
cl_uint4 | , | ||
cl_uint8 | , | ||
cl_uint16 | ) |
cl_char16 cl_short16 cl_int16 itk::OpenCLKernel::OpenCLKernelSetArgsMacroH | ( | cl_ulong | , |
cl_ulong2 | , | ||
cl_ulong4 | , | ||
cl_ulong8 | , | ||
cl_ulong16 | ) |
cl_char16 itk::OpenCLKernel::OpenCLKernelSetArgsMacroH | ( | cl_ushort | , |
cl_ushort2 | , | ||
cl_ushort4 | , | ||
cl_ushort8 | , | ||
cl_ushort16 | ) |
|
inline |
Runs this kernel instance with zero arguments. Returns an event object that can be used to wait for the kernel to finish execution.
Definition at line 639 of file itkOpenCLKernel.h.
|
inline |
Runs this kernel instance with the argument arg1. Returns an event object that can be used to wait for the kernel to finish execution.
Definition at line 649 of file itkOpenCLKernel.h.
|
inline |
Runs this kernel instance with the arguments arg1 and arg2. Returns an event object that can be used to wait for the kernel to finish execution.
Definition at line 661 of file itkOpenCLKernel.h.
|
inline |
Runs this kernel instance with the arguments arg1, arg2, and arg3. Returns an event object that can be used to wait for the kernel to finish execution.
Definition at line 674 of file itkOpenCLKernel.h.
|
inline |
Runs this kernel instance with the arguments arg1, arg2, arg3, and arg4. Returns an event object that can be used to wait for the kernel to finish execution.
Definition at line 688 of file itkOpenCLKernel.h.
|
inline |
Runs this kernel instance with the arguments arg1, arg2, arg3, arg4, and arg5. Returns an event object that can be used to wait for the kernel to finish execution.
Definition at line 703 of file itkOpenCLKernel.h.
|
inline |
Runs this kernel instance with the arguments arg1, arg2, arg3, arg4, arg5, and arg6. Returns an event object that can be used to wait for the kernel to finish execution.
Definition at line 719 of file itkOpenCLKernel.h.
|
inline |
Runs this kernel instance with the arguments arg1, arg2, arg3, arg4, arg5, arg6, and arg7. Returns an event object that can be used to wait for the kernel to finish execution.
Definition at line 736 of file itkOpenCLKernel.h.
|
inline |
Runs this kernel instance with the arguments arg1, arg2, arg3, arg4, arg5, arg6, arg7, and arg8. Returns an event object that can be used to wait for the kernel to finish execution.
Definition at line 760 of file itkOpenCLKernel.h.
|
inline |
Runs this kernel instance with the arguments arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, and arg9. Returns an event object that can be used to wait for the kernel to finish execution.
Definition at line 795 of file itkOpenCLKernel.h.
|
inline |
Runs this kernel instance with the arguments arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, and arg10. Returns an event object that can be used to wait for the kernel to finish execution.
Definition at line 833 of file itkOpenCLKernel.h.
OpenCLKernel & itk::OpenCLKernel::operator= | ( | const OpenCLKernel & | other | ) |
Assigns other to this object.
cl_int itk::OpenCLKernel::SetArg | ( | const cl_uint | index, |
const CovariantVectorDouble1DType & | value ) |
cl_int itk::OpenCLKernel::SetArg | ( | const cl_uint | index, |
const CovariantVectorDouble2DType & | value ) |
cl_int itk::OpenCLKernel::SetArg | ( | const cl_uint | index, |
const CovariantVectorDouble3DType & | value ) |
cl_int itk::OpenCLKernel::SetArg | ( | const cl_uint | index, |
const CovariantVectorDouble4DType & | value ) |
cl_int itk::OpenCLKernel::SetArg | ( | const cl_uint | index, |
const CovariantVectorFloat1DType & | value ) |
cl_int itk::OpenCLKernel::SetArg | ( | const cl_uint | index, |
const CovariantVectorFloat2DType & | value ) |
cl_int itk::OpenCLKernel::SetArg | ( | const cl_uint | index, |
const CovariantVectorFloat3DType & | value ) |
cl_int itk::OpenCLKernel::SetArg | ( | const cl_uint | index, |
const CovariantVectorFloat4DType & | value ) |
cl_int itk::OpenCLKernel::SetArg | ( | const cl_uint | index, |
const CovariantVectorInt1DType & | value ) |
cl_int itk::OpenCLKernel::SetArg | ( | const cl_uint | index, |
const CovariantVectorInt2DType & | value ) |
cl_int itk::OpenCLKernel::SetArg | ( | const cl_uint | index, |
const CovariantVectorInt3DType & | value ) |
cl_int itk::OpenCLKernel::SetArg | ( | const cl_uint | index, |
const CovariantVectorInt4DType & | value ) |
cl_int itk::OpenCLKernel::SetArg | ( | const cl_uint | index, |
const Index1DType & | value ) |
cl_int itk::OpenCLKernel::SetArg | ( | const cl_uint | index, |
const Index2DType & | value ) |
cl_int itk::OpenCLKernel::SetArg | ( | const cl_uint | index, |
const Index3DType & | value ) |
cl_int itk::OpenCLKernel::SetArg | ( | const cl_uint | index, |
const Index4DType & | value ) |
cl_int itk::OpenCLKernel::SetArg | ( | const cl_uint | index, |
const MatrixDouble1x1Type & | value ) |
cl_int itk::OpenCLKernel::SetArg | ( | const cl_uint | index, |
const MatrixDouble2x2Type & | value ) |
cl_int itk::OpenCLKernel::SetArg | ( | const cl_uint | index, |
const MatrixDouble3x3Type & | value ) |
cl_int itk::OpenCLKernel::SetArg | ( | const cl_uint | index, |
const MatrixDouble4x4Type & | value ) |
cl_int itk::OpenCLKernel::SetArg | ( | const cl_uint | index, |
const MatrixFloat1x1Type & | value ) |
cl_int itk::OpenCLKernel::SetArg | ( | const cl_uint | index, |
const MatrixFloat2x2Type & | value ) |
cl_int itk::OpenCLKernel::SetArg | ( | const cl_uint | index, |
const MatrixFloat3x3Type & | value ) |
cl_int itk::OpenCLKernel::SetArg | ( | const cl_uint | index, |
const MatrixFloat4x4Type & | value ) |
cl_int itk::OpenCLKernel::SetArg | ( | const cl_uint | index, |
const Offset1DType & | value ) |
cl_int itk::OpenCLKernel::SetArg | ( | const cl_uint | index, |
const Offset2DType & | value ) |
cl_int itk::OpenCLKernel::SetArg | ( | const cl_uint | index, |
const Offset3DType & | value ) |
cl_int itk::OpenCLKernel::SetArg | ( | const cl_uint | index, |
const Offset4DType & | value ) |
cl_int itk::OpenCLKernel::SetArg | ( | const cl_uint | index, |
const OpenCLMemoryObject & | value ) |
Sets argument index for this kernel to value. The argument is assumed to have been declared with the type image1d_t
, image2d_t
, image3d_t
, or be a pointer to a buffer, according to the type of memory object represented by value.
cl_int itk::OpenCLKernel::SetArg | ( | const cl_uint | index, |
const OpenCLSampler & | value ) |
Sets argument index for this kernel to value. The argument is assumed to have been declared with the type sampler_t
.
cl_int itk::OpenCLKernel::SetArg | ( | const cl_uint | index, |
const OpenCLVectorBase & | value ) |
Sets argument index for this kernel to value. The argument is assumed to have been declared as a pointer to a buffer.
cl_int itk::OpenCLKernel::SetArg | ( | const cl_uint | index, |
const PointDouble1DType & | value ) |
cl_int itk::OpenCLKernel::SetArg | ( | const cl_uint | index, |
const PointDouble2DType & | value ) |
cl_int itk::OpenCLKernel::SetArg | ( | const cl_uint | index, |
const PointDouble3DType & | value ) |
cl_int itk::OpenCLKernel::SetArg | ( | const cl_uint | index, |
const PointDouble4DType & | value ) |
cl_int itk::OpenCLKernel::SetArg | ( | const cl_uint | index, |
const PointFloat1DType & | value ) |
cl_int itk::OpenCLKernel::SetArg | ( | const cl_uint | index, |
const PointFloat2DType & | value ) |
cl_int itk::OpenCLKernel::SetArg | ( | const cl_uint | index, |
const PointFloat3DType & | value ) |
cl_int itk::OpenCLKernel::SetArg | ( | const cl_uint | index, |
const PointFloat4DType & | value ) |
cl_int itk::OpenCLKernel::SetArg | ( | const cl_uint | index, |
const PointInt1DType & | value ) |
cl_int itk::OpenCLKernel::SetArg | ( | const cl_uint | index, |
const PointInt2DType & | value ) |
cl_int itk::OpenCLKernel::SetArg | ( | const cl_uint | index, |
const PointInt3DType & | value ) |
cl_int itk::OpenCLKernel::SetArg | ( | const cl_uint | index, |
const PointInt4DType & | value ) |
cl_int itk::OpenCLKernel::SetArg | ( | const cl_uint | index, |
const Size1DType & | value ) |
cl_int itk::OpenCLKernel::SetArg | ( | const cl_uint | index, |
const Size2DType & | value ) |
cl_int itk::OpenCLKernel::SetArg | ( | const cl_uint | index, |
const Size3DType & | value ) |
cl_int itk::OpenCLKernel::SetArg | ( | const cl_uint | index, |
const Size4DType & | value ) |
cl_int itk::OpenCLKernel::SetArg | ( | const cl_uint | index, |
const VectorDouble1DType & | value ) |
cl_int itk::OpenCLKernel::SetArg | ( | const cl_uint | index, |
const VectorDouble2DType & | value ) |
cl_int itk::OpenCLKernel::SetArg | ( | const cl_uint | index, |
const VectorDouble3DType & | value ) |
cl_int itk::OpenCLKernel::SetArg | ( | const cl_uint | index, |
const VectorDouble4DType & | value ) |
cl_int itk::OpenCLKernel::SetArg | ( | const cl_uint | index, |
const VectorFloat1DType & | value ) |
cl_int itk::OpenCLKernel::SetArg | ( | const cl_uint | index, |
const VectorFloat2DType & | value ) |
cl_int itk::OpenCLKernel::SetArg | ( | const cl_uint | index, |
const VectorFloat3DType & | value ) |
cl_int itk::OpenCLKernel::SetArg | ( | const cl_uint | index, |
const VectorFloat4DType & | value ) |
cl_int itk::OpenCLKernel::SetArg | ( | const cl_uint | index, |
const VectorInt1DType & | value ) |
cl_int itk::OpenCLKernel::SetArg | ( | const cl_uint | index, |
const VectorInt2DType & | value ) |
cl_int itk::OpenCLKernel::SetArg | ( | const cl_uint | index, |
const VectorInt3DType & | value ) |
cl_int itk::OpenCLKernel::SetArg | ( | const cl_uint | index, |
const VectorInt4DType & | value ) |
cl_char16 cl_short16 cl_int16 cl_long16 cl_double16 cl_int itk::OpenCLKernel::SetArg | ( | const cl_uint | index, |
const void * | data, | ||
const vcl_size_t | size ) |
Sets argument index to the size bytes at data.
|
inline |
Sets the flag double as float to value. Default is true. By enabling this flag, setting kernel with all double values are converted to float. \not Doesn't effect SetArg(index, double(n)) method.
Definition at line 280 of file itkOpenCLKernel.h.
|
inline |
Definition at line 290 of file itkOpenCLKernel.h.
|
inline |
Definition at line 285 of file itkOpenCLKernel.h.
void itk::OpenCLKernel::SetGlobalWorkOffset | ( | const OpenCLSize & | offset | ) |
Sets the offset for this instance of the kernel to offset.
void itk::OpenCLKernel::SetGlobalWorkSize | ( | const OpenCLSize & | size | ) |
Sets the global work size for this instance of the kernel to size.
void itk::OpenCLKernel::SetLocalWorkSize | ( | const OpenCLSize & | size | ) |
Sets the local work size for this instance of the kernel to size.
void itk::OpenCLKernel::SetRoundedGlobalWorkSize | ( | const OpenCLSize & | size | ) |
Sets the global work size for this instance of the kernel to size, after rounding it up to the next multiple of GetLocalWorkSize().
itk::OpenCLKernel::cl_char2 |
Definition at line 325 of file itkOpenCLKernel.h.
itk::OpenCLKernel::cl_char4 |
Definition at line 325 of file itkOpenCLKernel.h.
itk::OpenCLKernel::cl_char8 |
Definition at line 325 of file itkOpenCLKernel.h.
cl_char16 cl_short16 cl_int16 cl_long16 itk::OpenCLKernel::cl_double2 |
Definition at line 333 of file itkOpenCLKernel.h.
cl_char16 cl_short16 cl_int16 cl_long16 itk::OpenCLKernel::cl_double4 |
Definition at line 333 of file itkOpenCLKernel.h.
cl_char16 cl_short16 cl_int16 cl_long16 itk::OpenCLKernel::cl_double8 |
Definition at line 333 of file itkOpenCLKernel.h.
cl_char16 cl_short16 itk::OpenCLKernel::cl_int2 |
Definition at line 329 of file itkOpenCLKernel.h.
cl_char16 cl_short16 itk::OpenCLKernel::cl_int4 |
Definition at line 329 of file itkOpenCLKernel.h.
cl_char16 cl_short16 itk::OpenCLKernel::cl_int8 |
Definition at line 329 of file itkOpenCLKernel.h.
cl_char16 cl_short16 cl_int16 itk::OpenCLKernel::cl_long2 |
Definition at line 331 of file itkOpenCLKernel.h.
cl_char16 cl_short16 cl_int16 itk::OpenCLKernel::cl_long4 |
Definition at line 331 of file itkOpenCLKernel.h.
cl_char16 cl_short16 cl_int16 itk::OpenCLKernel::cl_long8 |
Definition at line 331 of file itkOpenCLKernel.h.
cl_char16 itk::OpenCLKernel::cl_short2 |
Definition at line 327 of file itkOpenCLKernel.h.
cl_char16 itk::OpenCLKernel::cl_short4 |
Definition at line 327 of file itkOpenCLKernel.h.
cl_char16 itk::OpenCLKernel::cl_short8 |
Definition at line 327 of file itkOpenCLKernel.h.
|
private |
Definition at line 859 of file itkOpenCLKernel.h.
|
private |
Definition at line 861 of file itkOpenCLKernel.h.
|
private |
Definition at line 860 of file itkOpenCLKernel.h.
Generated on 2024-07-17 for elastix by 1.11.0 (9b424b03c9833626cd435af22a444888fbbb192d) |