ViennaCL - The Vienna Computing Library  1.5.1
Public Member Functions
handle< OCL_TYPE > Class Template Reference

Handle class the effectively represents a smart pointer for OpenCL handles. More...

#include <handle.hpp>

Public Member Functions

 handle ()
 handle (const OCL_TYPE &something, viennacl::ocl::context const &c)
 handle (const handle &other)
 ~handle ()
handleoperator= (const handle &other)
 Copies the OpenCL handle from the provided handle. Does not take ownership like e.g. std::auto_ptr<>, so both handle objects are valid (more like shared_ptr).
handleoperator= (const OCL_TYPE &something)
 Wraps an OpenCL handle. Does not change the context of this handle object! Decreases the reference count if the handle object is destroyed or another OpenCL handle is assigned.
handleoperator= (std::pair< OCL_TYPE, cl_context > p)
 Wraps an OpenCL handle including its associated context. Decreases the reference count if the handle object is destroyed or another OpenCL handle is assigned.
 operator OCL_TYPE () const
 Implicit conversion to the plain OpenCL handle. DEPRECATED and will be removed some time in the future.
const OCL_TYPE & get () const
viennacl::ocl::context const & context () const
void context (viennacl::ocl::context const &c)
handleswap (handle &other)
 Swaps the OpenCL handle of two handle objects.
void inc ()
 Manually increment the OpenCL reference count. Typically called automatically, but is necessary if user-supplied memory objects are wrapped.
void dec ()
 Manually decrement the OpenCL reference count. Typically called automatically, but might be useful with user-supplied memory objects.

Detailed Description

template<class OCL_TYPE>
class viennacl::ocl::handle< OCL_TYPE >

Handle class the effectively represents a smart pointer for OpenCL handles.


Constructor & Destructor Documentation

handle ( ) [inline]
handle ( const OCL_TYPE &  something,
viennacl::ocl::context const &  c 
) [inline]
handle ( const handle< OCL_TYPE > &  other) [inline]
~handle ( ) [inline]

Member Function Documentation

viennacl::ocl::context const& context ( ) const [inline]
void context ( viennacl::ocl::context const &  c) [inline]
void dec ( ) [inline]

Manually decrement the OpenCL reference count. Typically called automatically, but might be useful with user-supplied memory objects.

const OCL_TYPE& get ( ) const [inline]
void inc ( ) [inline]

Manually increment the OpenCL reference count. Typically called automatically, but is necessary if user-supplied memory objects are wrapped.

operator OCL_TYPE ( ) const [inline]

Implicit conversion to the plain OpenCL handle. DEPRECATED and will be removed some time in the future.

handle& operator= ( const handle< OCL_TYPE > &  other) [inline]

Copies the OpenCL handle from the provided handle. Does not take ownership like e.g. std::auto_ptr<>, so both handle objects are valid (more like shared_ptr).

handle& operator= ( const OCL_TYPE &  something) [inline]

Wraps an OpenCL handle. Does not change the context of this handle object! Decreases the reference count if the handle object is destroyed or another OpenCL handle is assigned.

handle& operator= ( std::pair< OCL_TYPE, cl_context >  p) [inline]

Wraps an OpenCL handle including its associated context. Decreases the reference count if the handle object is destroyed or another OpenCL handle is assigned.

handle& swap ( handle< OCL_TYPE > &  other) [inline]

Swaps the OpenCL handle of two handle objects.


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