18 #ifndef __itkOpenCLImage_h 19 #define __itkOpenCLImage_h 68 std::size_t GetElementSizeInBytes()
const;
71 std::size_t GetRowSizeInBytes()
const;
76 std::size_t GetSliceSizeInBytes()
const;
79 std::size_t GetDimension()
const;
83 std::size_t GetWidth()
const;
88 std::size_t GetHeight()
const;
94 std::size_t GetDepth()
const;
103 const std::size_t rowPitch = 0,
const std::size_t slicePitch = 0 );
114 const std::size_t rowPitch = 0,
const std::size_t slicePitch = 0 );
122 bool Write(
const void * data,
124 const std::size_t rowPitch = 0,
const std::size_t slicePitch = 0 );
135 const std::size_t rowPitch = 0,
const std::size_t slicePitch = 0 );
146 std::size_t * rowPitch = 0, std::size_t * slicePitch = 0 );
158 std::size_t * rowPitch = 0, std::size_t * slicePitch = 0 );
187 const std::size_t dst_offset = 0 );
198 const std::size_t dst_offset = 0 );
200 #ifdef CL_VERSION_1_2 202 static void SetImageDescription( cl_image_desc & imageDescription,
211 std::size_t GetImageInfo(
const cl_image_info name )
const;
214 void SetOrigin( std::size_t * origin_t,
const OpenCLSize & origin )
const;
217 void SetRegion( std::size_t * region_t,
const OpenCLSize & region )
const;
220 void SetSize( std::size_t * region_t,
const OpenCLSize & region,
const std::size_t value )
const;
227 template<
typename charT,
typename traits >
229 std::basic_ostream< charT, traits > &
230 operator<<( std::basic_ostream< charT, traits > & strm,
235 strm <<
"OpenCLImage(null)";
239 const char indent =
' ';
241 strm <<
"OpenCLImage" << std::endl
243 << indent <<
"Row size(bytes): " << image.GetRowSizeInBytes() << std::endl
244 << indent <<
"Slice size(bytes): " << image.GetSliceSizeInBytes() << std::endl
245 << indent <<
"Dimension: " << image.GetDimension() << std::endl
246 << indent <<
"Width: " << image.GetWidth() << std::endl
247 << indent <<
"Height: " << image.GetHeight() << std::endl
248 << indent <<
"Depth: " << image.GetDepth() << std::endl;
OpenCLImage(OpenCLContext *context, const cl_mem id)
The OpenCLImage class represents an image object is used to store a one, two or three dimensional tex...
OpenCLEventList class represents a list of OpenCLEvent objects.
The OpenCLSize class defines the size of an item of work for an OpenCL kernel.
The OpenCLBuffer class represents an OpenCL buffer object.
The OpenCLContext class represents an OpenCL context.
OpenCLMemoryObject Superclass
The OpenCLMemoryObject class represents all common memory objects such as buffers and image objects...
OpenCLEvent class represents an OpenCL event object.
std::vcl_size_t GetElementSizeInBytes() const