18#ifndef __itkOpenCLVector_h
19#define __itkOpenCLVector_h
104 void Read( T * data,
const std::size_t count,
const std::size_t offset = 0 );
108 void Write(
const T * data,
const std::size_t count,
const std::size_t offset = 0 );
111 void Write(
const Vector< T > & data,
const std::size_t offset = 0 );
132template<
typename charT,
typename traits,
typename dataType >
134std::basic_ostream< charT, traits > &
135operator<<( std::basic_ostream< charT, traits > & strm,
140 strm <<
"OpenCLVector(null)";
144 const char indent =
' ';
146 strm <<
"OpenCLVector" << std::endl
147 << indent <<
"Size: " << vector.
GetSize() << std::endl;
157#ifndef ITK_MANUAL_INSTANTIATION
158#include "itkOpenCLVector.hxx"
The OpenCLBuffer class represents an OpenCL buffer object.
The OpenCLContext class represents an OpenCL context.
The base class for the OpenCLVector implementation.
The OpenCLVector class represents a templated OpenCL buffer object.
OpenCLContext * GetContext() const
OpenCLVector(const OpenCLVector< T > &other)
T & operator[](const std::vcl_size_t index)
const T & operator[](const std::vcl_size_t index) const
std::vcl_size_t GetSize() const
OpenCLVector< T > & operator=(const OpenCLVector< T > &other)
void Write(const T *data, const std::vcl_size_t count, const std::vcl_size_t offset=0)
void Write(const Vector< T > &data, const std::vcl_size_t offset=0)
OpenCLVector(OpenCLContext *context, const OpenCLMemoryObject::Access access, const std::vcl_size_t size)
void Read(T *data, const std::vcl_size_t count, const std::vcl_size_t offset=0)
OpenCLBuffer GetBuffer() const
std::basic_ostream< charT, traits > & operator<<(std::basic_ostream< charT, traits > &strm, const OpenCLCommandQueue &queue)