Workspace 6.21.5
Public Types | Public Member Functions | List of all members
Array3dTyped< T > Class Template Referenceabstract

Interface for reading from and writing to a 3d array of some type.

#include <DataAnalysis/DataStructures/array3dtyped.h>

Inheritance diagram for Array3dTyped< T >:
[legend]

Public Types

typedef T value_type
 

Public Member Functions

 ~Array3dTyped () override=default
 
Array3dTypedclone () const override=0
 
virtual T getFillValue () const
 
virtual bool hasFillValue () const
 
virtual T operator() (unsigned x, unsigned y, unsigned z) const =0
 
virtual void resize (unsigned x, unsigned y, unsigned z)=0
 
virtual void setCell (unsigned x, unsigned y, unsigned z, const T &value)=0
 
- Public Member Functions inherited from Array3d
 ~Array3d () override=default
 
virtual qint64 cacheKey () const =0
 
Array3dclone () const override=0
 
virtual unsigned dimension (unsigned i) const =0
 
virtual bool empty () const =0
 
virtual QVector3D getCellSpacing () const
 
virtual QVector3D getOrigin () const
 
virtual void setCellSpacing (const QVector3D &size)
 
virtual void setOrigin (const QVector3D &origin)
 
virtual unsigned size () const =0
 
- Public Member Functions inherited from Clonable
virtual ~Clonable ()=default
 
virtual Clonableclone () const =0
 

Member Typedef Documentation

◆ value_type

typedef T value_type

Constructor & Destructor Documentation

◆ ~Array3dTyped()

~Array3dTyped ( )
overridedefault

Member Function Documentation

◆ clone()

Array3dTyped * clone ( ) const
overridepure virtual
Returns
A clone of this object.
Note
Subclasses would normally return their own type rather than the Clonable type. The C++ language rules allow a more derived type to be returned from a virtual function and the compiler will still treat it as a valid override.

Implements Array3d.

Implemented in Array3dNullTyped< T >, Array3dTypedAdaptor< ContainerType, T, Reader, Writer, DeepCopier >, Array3dTypedAdaptor< CSIRO::DataAnalysis::Array3dTyped, double >, Array3dTypedAdaptor< CSIRO::DataAnalysis::Array3dData< CSIRO::Rendering::WSGLSparseOctree::Cell >, QRgb >, Array3dTypedAdaptor< Array3dScalar, QRgb, ImageReader, ImageWriter >, and NdTo3dAdaptor.

◆ getFillValue()

virtual T getFillValue ( ) const
inlinevirtual
Returns
the fill (empty) value of the dataset. Will return the default constructed value of T if the dataset does not have a fill value.
Note
should not be used if the dataset does not have a fill value, as the return value will be misleading.

Reimplemented in NdTo3dAdaptor.

◆ hasFillValue()

virtual bool hasFillValue ( ) const
inlinevirtual
Returns
true if a particular value of the array is used to indicate that the cell is "empty". False (default) otherwise.

Reimplemented in NdTo3dAdaptor.

◆ operator()()

virtual T operator() ( unsigned  x,
unsigned  y,
unsigned  z 
) const
pure virtual

◆ resize()

virtual void resize ( unsigned  x,
unsigned  y,
unsigned  z 
)
pure virtual

◆ setCell()

virtual void setCell ( unsigned  x,
unsigned  y,
unsigned  z,
const T &  value 
)
pure virtual