ASL 0.1.7
Advanced Simulation Library
Public Member Functions | List of all members
cl::Buffer Class Reference

Class interface for Buffer Memory Objects. More...

#include <cl.hpp>

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

Public Member Functions

 Buffer (const Context &context, cl_mem_flags flags, ::size_t size, void *host_ptr=NULL, cl_int *err=NULL)
 Constructs a Buffer in a specified context. More...
 
 Buffer (cl_mem_flags flags, ::size_t size, void *host_ptr=NULL, cl_int *err=NULL)
 Constructs a Buffer in the default context. More...
 
template<typename IteratorType >
 Buffer (IteratorType startIterator, IteratorType endIterator, bool readOnly, bool useHostPtr=false, cl_int *err=NULL)
 Construct a Buffer from a host container via iterators. IteratorType must be random access. If useHostPtr is specified iterators must represent contiguous data. More...
 
template<typename IteratorType >
 Buffer (const Context &context, IteratorType startIterator, IteratorType endIterator, bool readOnly, bool useHostPtr=false, cl_int *err=NULL)
 Construct a Buffer from a host container via iterators using a specified context. IteratorType must be random access. If useHostPtr is specified iterators must represent contiguous data. More...
 
template<typename IteratorType >
 Buffer (const CommandQueue &queue, IteratorType startIterator, IteratorType endIterator, bool readOnly, bool useHostPtr=false, cl_int *err=NULL)
 Construct a Buffer from a host container via iterators using a specified queue. If useHostPtr is specified iterators must represent contiguous data. More...
 
 Buffer ()
 Default constructor - initializes to NULL. More...
 
__CL_EXPLICIT_CONSTRUCTORS Buffer (const cl_mem &buffer)
 Constructor from cl_mem - takes ownership. More...
 
Bufferoperator= (const cl_mem &rhs)
 Assignment from cl_mem - performs shallow copy. More...
 
 Buffer (const Buffer &buf)
 Copy constructor to forward copy to the superclass correctly. Required for MSVC. More...
 
Bufferoperator= (const Buffer &buf)
 Copy assignment to forward copy to the superclass correctly. Required for MSVC. More...
 
- Public Member Functions inherited from cl::Memory
 Memory ()
 Default constructor - initializes to NULL. More...
 
__CL_EXPLICIT_CONSTRUCTORS Memory (const cl_mem &memory)
 Constructor from cl_mem - takes ownership. More...
 
Memoryoperator= (const cl_mem &rhs)
 Assignment operator from cl_mem - takes ownership. More...
 
 Memory (const Memory &mem)
 Copy constructor to forward copy to the superclass correctly. Required for MSVC. More...
 
Memoryoperator= (const Memory &mem)
 Copy assignment to forward copy to the superclass correctly. Required for MSVC. More...
 
template<typename T >
cl_int getInfo (cl_mem_info name, T *param) const
 Wrapper for clGetMemObjectInfo(). More...
 
template<cl_int name>
detail::param_traits< detail::cl_mem_info, name >::param_type getInfo (cl_int *err=NULL) const
 Wrapper for clGetMemObjectInfo() that returns by value. More...
 
- Public Member Functions inherited from cl::detail::Wrapper< cl_mem >
 Wrapper ()
 
 Wrapper (const cl_type &obj)
 
 Wrapper (const Wrapper< cl_type > &rhs)
 
 ~Wrapper ()
 
Wrapper< cl_type > & operator= (const Wrapper< cl_type > &rhs)
 
Wrapper< cl_type > & operator= (const cl_type &rhs)
 
cl_type operator() () const
 
cl_typeoperator() ()
 

Additional Inherited Members

- Public Types inherited from cl::detail::Wrapper< cl_mem >
typedef cl_mem cl_type
 
- Protected Member Functions inherited from cl::detail::Wrapper< cl_mem >
cl_int retain () const
 
cl_int release () const
 
- Protected Attributes inherited from cl::detail::Wrapper< cl_mem >
cl_type object_
 

Detailed Description

Class interface for Buffer Memory Objects.

See Memory for details about copy semantics, etc.

See also
Memory

Definition at line 3017 of file cl.hpp.

Constructor & Destructor Documentation

◆ Buffer() [1/8]

cl::Buffer::Buffer ( const Context context,
cl_mem_flags  flags,
::size_t  size,
void *  host_ptr = NULL,
cl_int *  err = NULL 
)
inline

Constructs a Buffer in a specified context.

Wraps clCreateBuffer().

Parameters
host_ptrStorage to be used if the CL_MEM_USE_HOST_PTR flag was specified. Note alignment & exclusivity requirements.

Definition at line 3028 of file cl.hpp.

◆ Buffer() [2/8]

cl::Buffer::Buffer ( cl_mem_flags  flags,
::size_t  size,
void *  host_ptr = NULL,
cl_int *  err = NULL 
)
inline

Constructs a Buffer in the default context.

Wraps clCreateBuffer().

Parameters
host_ptrStorage to be used if the CL_MEM_USE_HOST_PTR flag was specified. Note alignment & exclusivity requirements.
See also
Context::getDefault()

Definition at line 3053 of file cl.hpp.

◆ Buffer() [3/8]

template<typename IteratorType >
cl::Buffer::Buffer ( IteratorType  startIterator,
IteratorType  endIterator,
bool  readOnly,
bool  useHostPtr = false,
cl_int *  err = NULL 
)
inline

Construct a Buffer from a host container via iterators. IteratorType must be random access. If useHostPtr is specified iterators must represent contiguous data.

Definition at line 3077 of file cl.hpp.

◆ Buffer() [4/8]

template<typename IteratorType >
cl::Buffer::Buffer ( const Context context,
IteratorType  startIterator,
IteratorType  endIterator,
bool  readOnly,
bool  useHostPtr = false,
cl_int *  err = NULL 
)

Construct a Buffer from a host container via iterators using a specified context. IteratorType must be random access. If useHostPtr is specified iterators must represent contiguous data.

◆ Buffer() [5/8]

template<typename IteratorType >
cl::Buffer::Buffer ( const CommandQueue queue,
IteratorType  startIterator,
IteratorType  endIterator,
bool  readOnly,
bool  useHostPtr = false,
cl_int *  err = NULL 
)

Construct a Buffer from a host container via iterators using a specified queue. If useHostPtr is specified iterators must represent contiguous data.

Definition at line 6530 of file cl.hpp.

◆ Buffer() [6/8]

cl::Buffer::Buffer ( )
inline

Default constructor - initializes to NULL.

Definition at line 3140 of file cl.hpp.

◆ Buffer() [7/8]

__CL_EXPLICIT_CONSTRUCTORS cl::Buffer::Buffer ( const cl_mem &  buffer)
inline

Constructor from cl_mem - takes ownership.

See Memory for further details.

Definition at line 3146 of file cl.hpp.

◆ Buffer() [8/8]

cl::Buffer::Buffer ( const Buffer buf)
inline

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

Definition at line 3161 of file cl.hpp.

Member Function Documentation

◆ operator=() [1/2]

Buffer & cl::Buffer::operator= ( const Buffer buf)
inline

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

Definition at line 3166 of file cl.hpp.

◆ operator=() [2/2]

Buffer & cl::Buffer::operator= ( const cl_mem &  rhs)
inline

Assignment from cl_mem - performs shallow copy.

See Memory for further details.

Definition at line 3152 of file cl.hpp.


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