OpenCL C++ Bindings
cl::Pipe Class Reference

Class interface for Pipe Memory Objects. More...

#include <opencl.hpp>

Inheritance diagram for cl::Pipe:
cl::Memory cl::detail::Wrapper< cl_mem >

Public Member Functions

 Pipe (const Context &context, cl_uint packet_size, cl_uint max_packets, cl_int *err=NULL)
 Constructs a Pipe in a specified context. More...
 
 Pipe (cl_uint packet_size, cl_uint max_packets, cl_int *err=NULL)
 Constructs a Pipe in a the default context. More...
 
 Pipe ()
 Default constructor - initializes to NULL. More...
 
 Pipe (const cl_mem &pipe, bool retainObject=false)
 Constructor from cl_mem - takes ownership. More...
 
Pipeoperator= (const cl_mem &rhs)
 Assignment from cl_mem - performs shallow copy. More...
 
 Pipe (const Pipe &pipe)
 Copy constructor to forward copy to the superclass correctly. Required for MSVC. More...
 
Pipeoperator= (const Pipe &pipe)
 Copy assignment to forward copy to the superclass correctly. Required for MSVC. More...
 
 Pipe (Pipe &&pipe) CL_HPP_NOEXCEPT_
 Move constructor to forward move to the superclass correctly. Required for MSVC. More...
 
Pipeoperator= (Pipe &&pipe)
 Move assignment to forward move to the superclass correctly. Required for MSVC. More...
 
template<typename T >
cl_int getInfo (cl_pipe_info name, T *param) const
 Wrapper for clGetMemObjectInfo(). More...
 
template<cl_pipe_info name>
detail::param_traits< detail::cl_pipe_info, name >::param_type getInfo (cl_int *err=NULL) const
 Wrapper for clGetMemObjectInfo() that returns by value. More...
 
- Public Member Functions inherited from cl::Memory
 Memory ()
 Default constructor - initializes to NULL. More...
 
 Memory (const cl_mem &memory, bool retainObject)
 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...
 
 Memory (Memory &&mem) CL_HPP_NOEXCEPT_
 Move constructor to forward move to the superclass correctly. Required for MSVC. More...
 
Memoryoperator= (Memory &&mem)
 Move assignment to forward move 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_mem_info 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...
 
cl_int setDestructorCallback (void(CL_CALLBACK *pfn_notify)(cl_mem, void *), void *user_data=NULL)
 Registers a callback function to be called when the memory object is no longer needed. More...
 
- Public Member Functions inherited from cl::detail::Wrapper< cl_mem >
 Wrapper (const cl_type &obj, bool retainObject)
 
 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_type & operator() () const
 
cl_type & operator() ()
 
cl_type get () const
 

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 Pipe Memory Objects.

See Memory for details about copy semantics, etc.

See also
Memory

Definition at line 5514 of file opencl.hpp.

Constructor & Destructor Documentation

◆ Pipe() [1/6]

cl::Pipe::Pipe ( const Context context,
cl_uint  packet_size,
cl_uint  max_packets,
cl_int *  err = NULL 
)
inline

Constructs a Pipe in a specified context.

Wraps clCreatePipe().

Parameters
contextContext in which to create the pipe.
flagsBitfield. Only CL_MEM_READ_WRITE and CL_MEM_HOST_NO_ACCESS are valid.
packet_sizeSize in bytes of a single packet of the pipe.
max_packetsNumber of packets that may be stored in the pipe.

Definition at line 5527 of file opencl.hpp.

◆ Pipe() [2/6]

cl::Pipe::Pipe ( cl_uint  packet_size,
cl_uint  max_packets,
cl_int *  err = NULL 
)
inline

Constructs a Pipe in a the default context.

Wraps clCreatePipe().

Parameters
flagsBitfield. Only CL_MEM_READ_WRITE and CL_MEM_HOST_NO_ACCESS are valid.
packet_sizeSize in bytes of a single packet of the pipe.
max_packetsNumber of packets that may be stored in the pipe.

Definition at line 5552 of file opencl.hpp.

◆ Pipe() [3/6]

cl::Pipe::Pipe ( )
inline

Default constructor - initializes to NULL.

Definition at line 5571 of file opencl.hpp.

◆ Pipe() [4/6]

cl::Pipe::Pipe ( const cl_mem &  pipe,
bool  retainObject = false 
)
inlineexplicit

Constructor from cl_mem - takes ownership.

Parameters
retainObjectwill cause the constructor to retain its cl object. Defaults to false to maintain compatibility with earlier versions.

See Memory for further details.

Definition at line 5580 of file opencl.hpp.

◆ Pipe() [5/6]

cl::Pipe::Pipe ( const Pipe pipe)
inline

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

Definition at line 5596 of file opencl.hpp.

◆ Pipe() [6/6]

cl::Pipe::Pipe ( Pipe &&  pipe)
inline

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

Definition at line 5610 of file opencl.hpp.

Member Function Documentation

◆ getInfo() [1/2]

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

Wrapper for clGetMemObjectInfo() that returns by value.

Definition at line 5633 of file opencl.hpp.

◆ getInfo() [2/2]

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

Wrapper for clGetMemObjectInfo().

Definition at line 5623 of file opencl.hpp.

◆ operator=() [1/3]

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

Assignment from cl_mem - performs shallow copy.

See Memory for further details.

Definition at line 5587 of file opencl.hpp.

◆ operator=() [2/3]

Pipe & cl::Pipe::operator= ( const Pipe pipe)
inline

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

Definition at line 5601 of file opencl.hpp.

◆ operator=() [3/3]

Pipe & cl::Pipe::operator= ( Pipe &&  pipe)
inline

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

Definition at line 5615 of file opencl.hpp.


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