PIP 5.6.1
Platform-Independent Primitives
Classes | Public Types | Static Public Member Functions | List of all members
PIOpenCL Class Reference

Entry point for the OpenCL wrapper API. More...

#include <piopencl.h>

Classes

class  Buffer
 OpenCL buffer wrapper optionally bound to a host container. More...
 
class  Context
 OpenCL context wrapper that owns created programs and buffers. More...
 
struct  Device
 Description of a discovered OpenCL device. More...
 
class  Kernel
 OpenCL kernel wrapper with reflected argument metadata. More...
 
struct  KernelArg
 Reflected description of a kernel argument. More...
 
struct  Platform
 Description of an OpenCL platform and its devices. More...
 
class  Program
 Compiled OpenCL program that owns discovered kernels. More...
 

Public Types

enum  AddressQualifier { AddressGlobal , AddressLocal , AddressConstant , AddressPrivate }
 Address space qualifier of a kernel argument. More...
 
enum  AccessQualifier { AccessReadOnly , AccessWriteOnly , AccessReadWrite , AccessNone }
 Access qualifier of an image or memory argument. More...
 
enum  Direction
 Intended data flow direction for buffers.
 
enum  TypeQualifier { TypeConst , TypeRestrict , TypeVolatile , TypeNone }
 Type qualifier of a kernel argument. More...
 
enum  ArgType {
}
 Scalar argument type recognized by the wrapper. More...
 
typedef PIVector< DeviceDeviceList
 List of OpenCL devices.
 

Static Public Member Functions

static void init ()
 Initializes platform and device discovery.
 
static const PIVector< Platform > & platforms ()
 Returns discovered OpenCL platforms.
 
static const PIVector< Devicedevices ()
 Returns devices from all discovered platforms.
 
static Device deviceByID (void *id)
 Returns a device description for the given native device handle.
 
static PIString prepareProgram (const PIString &prog)
 Prepares OpenCL source code before compilation.
 

Detailed Description

Entry point for the OpenCL wrapper API.

Member Enumeration Documentation

◆ AddressQualifier

Address space qualifier of a kernel argument.

Enumerator
AddressGlobal 

Global memory argument

AddressLocal 

Local memory argument

AddressConstant 

Constant memory argument

AddressPrivate 

Private argument

◆ AccessQualifier

Access qualifier of an image or memory argument.

Enumerator
AccessReadOnly 

Read-only access

AccessWriteOnly 

Write-only access

AccessReadWrite 

Read-write access

AccessNone 

Access qualifier is not specified

◆ TypeQualifier

Type qualifier of a kernel argument.

Enumerator
TypeConst 

Constant argument

TypeRestrict 

Restricted argument

TypeVolatile 

Volatile argument

TypeNone 

No type qualifier

◆ ArgType

Scalar argument type recognized by the wrapper.

Enumerator
UChar 

Unsigned 8-bit integer

Short 

Signed 16-bit integer

UShort 

Unsigned 16-bit integer

Int 

Signed 32-bit integer

UInt 

Unsigned 32-bit integer

Long 

Signed long integer

ULong 

Unsigned long integer

Float 

Single-precision floating point

Double 

Double-precision floating point