OpenCL 2.0 C++ Bindings  2.0.7
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Public Member Functions | Static Public Member Functions | List of all members
cl::Device Class Reference

Class interface for cl_device_id. More...

#include <cl2.hpp>

Inheritance diagram for cl::Device:
Inheritance graph
[legend]
Collaboration diagram for cl::Device:
Collaboration graph
[legend]

Public Member Functions

 Device ()
 Default constructor - initializes to NULL. More...
 
 Device (const cl_device_id &device, bool retainObject=false)
 Constructor from cl_device_id. More...
 
Deviceoperator= (const cl_device_id &rhs)
 Assignment operator from cl_device_id. More...
 
 Device (const Device &dev)
 Copy constructor to forward copy to the superclass correctly. Required for MSVC. More...
 
Deviceoperator= (const Device &dev)
 Copy assignment to forward copy to the superclass correctly. Required for MSVC. More...
 
 Device (Device &&dev) CL_HPP_NOEXCEPT_
 Move constructor to forward move to the superclass correctly. Required for MSVC. More...
 
Deviceoperator= (Device &&dev)
 Move assignment to forward move to the superclass correctly. Required for MSVC. More...
 
template<typename T >
cl_int getInfo (cl_device_info name, T *param) const
 Wrapper for clGetDeviceInfo(). More...
 
template<cl_int name>
detail::param_traits
< detail::cl_device_info, name >
::param_type 
getInfo (cl_int *err=NULL) const
 Wrapper for clGetDeviceInfo() that returns by value. More...
 
cl_int createSubDevices (const cl_device_partition_property *properties, vector< Device > *devices)
 Wrapper for clCreateSubDevices(). More...
 
- Public Member Functions inherited from cl::detail::Wrapper< cl_device_id >
 Wrapper ()
 
 Wrapper (const cl_type &obj, bool retainObject)
 
 ~Wrapper ()
 
 Wrapper (const Wrapper< cl_type > &rhs)
 
 Wrapper (Wrapper< cl_type > &&rhs) CL_HPP_NOEXCEPT_
 
Wrapper< cl_type > & operator= (const Wrapper< cl_type > &rhs)
 
Wrapper< cl_type > & operator= (Wrapper< cl_type > &&rhs)
 
Wrapper< cl_type > & operator= (const cl_type &rhs)
 
const cl_typeoperator() () const
 
cl_typeoperator() ()
 
const cl_type get () const
 
cl_type get ()
 

Static Public Member Functions

static Device getDefault (cl_int *errResult=NULL)
 Returns the first device on the default context. More...
 
static Device setDefault (const Device &default_device)
 

Additional Inherited Members

- Public Types inherited from cl::detail::Wrapper< cl_device_id >
typedef cl_device_id cl_type
 
- Protected Member Functions inherited from cl::detail::Wrapper< cl_device_id >
cl_int retain () const
 
cl_int release () const
 
- Static Protected Member Functions inherited from cl::detail::Wrapper< cl_device_id >
static bool isReferenceCountable (cl_device_id device)
 
- Protected Attributes inherited from cl::detail::Wrapper< cl_device_id >
cl_type object_
 
bool referenceCountable_
 

Detailed Description

Class interface for cl_device_id.

Note
Copies of these objects are inexpensive, since they don't 'own' any underlying resources or data structures.
See also
cl_device_id

Definition at line 1909 of file cl2.hpp.

Constructor & Destructor Documentation

cl::Device::Device ( )
inline

Default constructor - initializes to NULL.

Definition at line 1946 of file cl2.hpp.

cl::Device::Device ( const cl_device_id &  device,
bool  retainObject = false 
)
inlineexplicit

Constructor from cl_device_id.

This simply copies the device ID value, which is an inexpensive operation.

Definition at line 1952 of file cl2.hpp.

cl::Device::Device ( const Device dev)
inline

Copy constructor to forward copy to the superclass correctly. Required for MSVC.

Definition at line 1997 of file cl2.hpp.

cl::Device::Device ( Device &&  dev)
inline

Move constructor to forward move to the superclass correctly. Required for MSVC.

Definition at line 2011 of file cl2.hpp.

Member Function Documentation

cl_int cl::Device::createSubDevices ( const cl_device_partition_property *  properties,
vector< Device > *  devices 
)
inline

Wrapper for clCreateSubDevices().

CL 1.2 version

Definition at line 2050 of file cl2.hpp.

static Device cl::Device::getDefault ( cl_int *  errResult = NULL)
inlinestatic

Returns the first device on the default context.

See also
Context::getDefault()

Definition at line 1959 of file cl2.hpp.

template<typename T >
cl_int cl::Device::getInfo ( cl_device_info  name,
T *  param 
) const
inline

Wrapper for clGetDeviceInfo().

Definition at line 2024 of file cl2.hpp.

template<cl_int name>
detail::param_traits<detail::cl_device_info, name>::param_type cl::Device::getInfo ( cl_int *  err = NULL) const
inline

Wrapper for clGetDeviceInfo() that returns by value.

Definition at line 2034 of file cl2.hpp.

Device& cl::Device::operator= ( const cl_device_id &  rhs)
inline

Assignment operator from cl_device_id.

This simply copies the device ID value, which is an inexpensive operation.

Definition at line 1988 of file cl2.hpp.

Device& cl::Device::operator= ( const Device dev)
inline

Copy assignment to forward copy to the superclass correctly. Required for MSVC.

Definition at line 2002 of file cl2.hpp.

Device& cl::Device::operator= ( Device &&  dev)
inline

Move assignment to forward move to the superclass correctly. Required for MSVC.

Definition at line 2016 of file cl2.hpp.

static Device cl::Device::setDefault ( const Device default_device)
inlinestatic

Modify the default device to be used by subsequent operations. Will only set the default if no default was previously created.

Returns
updated default device. Should be compared to the passed value to ensure that it was updated.

Definition at line 1977 of file cl2.hpp.


The documentation for this class was generated from the following file: