RISA
glados::Volume< MemoryManager > Class Template Reference

#include <Volume.h>

Inheritance diagram for glados::Volume< MemoryManager >:
Collaboration diagram for glados::Volume< MemoryManager >:

Public Types

using value_type = typename MemoryManager::value_type
 
using pointer_type = typename MemoryManager::pointer_type_3D
 
using pointer_type_2D = typename MemoryManager::pointer_type_2D
 
using size_type = typename MemoryManager::size_type
 

Public Member Functions

 Volume () noexcept
 
 Volume (size_type w, size_type h, size_type d, pointer_type ptr=nullptr)
 
 Volume (const Volume &other)
 
template<typename U >
auto operator= (const Volume< U > &rhs) -> Volume< MemoryManager > &
 
 Volume (Volume &&other) noexcept
 
auto operator= (Volume &&rhs) noexcept-> Volume &
 
auto width () const noexcept-> size_type
 
auto height () const noexcept-> size_type
 
auto depth () const noexcept-> size_type
 
auto pitch () const noexcept-> size_type
 
auto data () const noexcept-> value_type *
 
auto valid () const noexcept-> bool
 
auto container () const noexcept-> const pointer_type &
 
auto operator[] (size_type i) -> Image< MemoryManager >
 

Private Attributes

size_type width_
 
size_type height_
 
size_type depth_
 
pointer_type data_
 
bool valid_
 

Detailed Description

template<class MemoryManager>
class glados::Volume< MemoryManager >

Definition at line 36 of file Volume.h.

Member Typedef Documentation

template<class MemoryManager>
using glados::Volume< MemoryManager >::pointer_type = typename MemoryManager::pointer_type_3D

Definition at line 40 of file Volume.h.

template<class MemoryManager>
using glados::Volume< MemoryManager >::pointer_type_2D = typename MemoryManager::pointer_type_2D

Definition at line 41 of file Volume.h.

template<class MemoryManager>
using glados::Volume< MemoryManager >::size_type = typename MemoryManager::size_type

Definition at line 42 of file Volume.h.

template<class MemoryManager>
using glados::Volume< MemoryManager >::value_type = typename MemoryManager::value_type

Definition at line 39 of file Volume.h.

Constructor & Destructor Documentation

template<class MemoryManager>
glados::Volume< MemoryManager >::Volume ( )
inlinenoexcept

Definition at line 45 of file Volume.h.

template<class MemoryManager>
glados::Volume< MemoryManager >::Volume ( size_type  w,
size_type  h,
size_type  d,
pointer_type  ptr = nullptr 
)
inline

Definition at line 50 of file Volume.h.

template<class MemoryManager>
glados::Volume< MemoryManager >::Volume ( const Volume< MemoryManager > &  other)
inline

Definition at line 58 of file Volume.h.

template<class MemoryManager>
glados::Volume< MemoryManager >::Volume ( Volume< MemoryManager > &&  other)
inlinenoexcept

Definition at line 89 of file Volume.h.

Member Function Documentation

template<class MemoryManager>
auto glados::Volume< MemoryManager >::container ( ) const -> const pointer_type&
inlinenoexcept

Definition at line 139 of file Volume.h.

template<class MemoryManager>
auto glados::Volume< MemoryManager >::data ( ) const -> value_type*
inlinenoexcept

Definition at line 129 of file Volume.h.

template<class MemoryManager>
auto glados::Volume< MemoryManager >::depth ( ) const -> size_type
inlinenoexcept

Definition at line 119 of file Volume.h.

template<class MemoryManager>
auto glados::Volume< MemoryManager >::height ( ) const -> size_type
inlinenoexcept

Definition at line 114 of file Volume.h.

template<class MemoryManager>
template<typename U >
auto glados::Volume< MemoryManager >::operator= ( const Volume< U > &  rhs) -> Volume<MemoryManager>&
inline

Definition at line 72 of file Volume.h.

template<class MemoryManager>
auto glados::Volume< MemoryManager >::operator= ( Volume< MemoryManager > &&  rhs) -> Volume&
inlinenoexcept

Definition at line 95 of file Volume.h.

template<class MemoryManager>
auto glados::Volume< MemoryManager >::operator[] ( size_type  i) -> Image<MemoryManager>
inline

Definition at line 144 of file Volume.h.

template<class MemoryManager>
auto glados::Volume< MemoryManager >::pitch ( ) const -> size_type
inlinenoexcept

Definition at line 124 of file Volume.h.

template<class MemoryManager>
auto glados::Volume< MemoryManager >::valid ( ) const -> bool
inlinenoexcept

Definition at line 134 of file Volume.h.

template<class MemoryManager>
auto glados::Volume< MemoryManager >::width ( ) const -> size_type
inlinenoexcept

Definition at line 109 of file Volume.h.

Member Data Documentation

template<class MemoryManager>
pointer_type glados::Volume< MemoryManager >::data_
private

Definition at line 164 of file Volume.h.

template<class MemoryManager>
size_type glados::Volume< MemoryManager >::depth_
private

Definition at line 163 of file Volume.h.

template<class MemoryManager>
size_type glados::Volume< MemoryManager >::height_
private

Definition at line 162 of file Volume.h.

template<class MemoryManager>
bool glados::Volume< MemoryManager >::valid_
private

Definition at line 165 of file Volume.h.

template<class MemoryManager>
size_type glados::Volume< MemoryManager >::width_
private

Definition at line 161 of file Volume.h.


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