cartodata  5.1.2
carto::VolumeProxy< T > Class Template Reference

VolumeProxy is the base class for volumes. More...

#include <cartodata/volume/volumeproxy.h>

Inheritance diagram for carto::VolumeProxy< T >:
Collaboration diagram for carto::VolumeProxy< T >:

Public Member Functions

 VolumeProxy (int sizeX=1, int sizeY=1, int sizeZ=1, int sizeT=1)
 
 VolumeProxy (const std::vector< int > &size)
 
 VolumeProxy (const VolumeProxy< T > &other)
 
virtual ~VolumeProxy ()
 
int getSizeX () const
 
int getSizeY () const
 
int getSizeZ () const
 
int getSizeT () const
 
std::vector< int > getSize () const
 get the 4 dimensions in a vector More...
 
std::vector< float > getVoxelSize () const
 get the voxel size from the header, with 4 values defaulting to 1.mm if not present More...
 
void setVoxelSize (float vx, float vy=1., float vz=1., float vt=1.)
 
void setVoxelSize (const std::vector< float > &vs)
 
VolumeProxy< T > & operator= (const VolumeProxy< T > &other)
 
virtual void copyHeaderFrom (const PropertySet &other)
 copy properties from other to this, avoiding forbidden properties like size. More...
 
virtual void copyHeaderFrom (const Object &other)
 
- Public Member Functions inherited from carto::Headered
 Headered ()
 
 Headered (const Headered &other)
 
virtual ~Headered ()
 
Headeredoperator= (const Headered &other)
 
const PropertySetheader () const
 
PropertySetheader ()
 
void addPropertyFilter (const rc_ptr< PropertyFilter > &propertyFilter)
 
bool hasPropertyFilter (const std::string &propertyFilterName) const
 
bool connect (const std::string &propertyFilterName, const PropertyFilter::Slot &slot)
 
bool disconnect (const std::string &propertyFilterName, const PropertyFilter::Slot &slot)
 
std::set< rc_ptr< PropertyFilter > > getPropertyFilters (const std::string &propertyName) const
 
void delay ()
 
void flush ()
 
void blockSignals (bool)
 
bool signalsBlocked () const
 
virtual void initialize ()
 
std::string uuid ()
 
bool copyUuid (const PropertySet &)
 
bool copyUuid (const Headered &)
 
- Public Member Functions inherited from carto::RCObject
 RCObject ()
 
 RCObject (const RCObject &)
 
RCObjectoperator= (const RCObject &)
 
virtual ~RCObject ()
 
- Public Member Functions inherited from carto::Observer
virtual ~Observer ()
 

Protected Attributes

std::vector< int > _size
 

Additional Inherited Members

- Public Types inherited from carto::RCObject
typedef int RefCounterType
 
- Protected Member Functions inherited from carto::Observer
 Observer ()
 

Detailed Description

template<typename T>
class carto::VolumeProxy< T >

VolumeProxy is the base class for volumes.

It handles the management of the volume size, but not its contents (it has no data block).

Definition at line 49 of file volumeproxy.h.

Constructor & Destructor Documentation

◆ VolumeProxy() [1/3]

template<typename T >
carto::VolumeProxy< T >::VolumeProxy ( int  sizeX = 1,
int  sizeY = 1,
int  sizeZ = 1,
int  sizeT = 1 
)
explicit

◆ VolumeProxy() [2/3]

template<typename T >
carto::VolumeProxy< T >::VolumeProxy ( const std::vector< int > &  size)
explicit

◆ VolumeProxy() [3/3]

◆ ~VolumeProxy()

template<typename T >
carto::VolumeProxy< T >::~VolumeProxy
virtual

Definition at line 110 of file volumeproxy_d.h.

Member Function Documentation

◆ copyHeaderFrom() [1/2]

template<typename T >
void carto::VolumeProxy< T >::copyHeaderFrom ( const Object other)
virtual

◆ copyHeaderFrom() [2/2]

template<typename T >
void carto::VolumeProxy< T >::copyHeaderFrom ( const PropertySet other)
inlinevirtual

copy properties from other to this, avoiding forbidden properties like size.

Definition at line 139 of file volumeproxy.h.

References carto::Object::reference().

Referenced by carto::copy(), carto::copyStructure(), and carto::deepcopy().

◆ getSize()

◆ getSizeT()

template<typename T >
int carto::VolumeProxy< T >::getSizeT
inline

◆ getSizeX()

template<typename T >
int carto::VolumeProxy< T >::getSizeX
inline

◆ getSizeY()

template<typename T >
int carto::VolumeProxy< T >::getSizeY
inline

◆ getSizeZ()

template<typename T >
int carto::VolumeProxy< T >::getSizeZ
inline

◆ getVoxelSize()

template<typename T >
std::vector< float > carto::VolumeProxy< T >::getVoxelSize

get the voxel size from the header, with 4 values defaulting to 1.mm if not present

Definition at line 141 of file volumeproxy_d.h.

◆ operator=()

template<typename T >
VolumeProxy< T > & carto::VolumeProxy< T >::operator= ( const VolumeProxy< T > &  other)

◆ setVoxelSize() [1/2]

template<typename T >
void carto::VolumeProxy< T >::setVoxelSize ( const std::vector< float > &  vs)

Definition at line 183 of file volumeproxy_d.h.

◆ setVoxelSize() [2/2]

template<typename T >
void carto::VolumeProxy< T >::setVoxelSize ( float  vx,
float  vy = 1.,
float  vz = 1.,
float  vt = 1. 
)

Definition at line 171 of file volumeproxy_d.h.

Member Data Documentation

◆ _size

template<typename T >
std::vector<int> carto::VolumeProxy< T >::_size
protected

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