Field3D
|
#include <Field.h>
Classes | |
class | const_iterator |
Public Types | |
typedef Field< Data_T > | class_type |
typedef boost::intrusive_ptr < Field > | Ptr |
typedef Data_T | value_type |
Allows us to reference the template class. | |
typedef std::vector< Ptr > | Vec |
This is a convenience typedef for the list that Field3DInputFile::readScalarLayers() and Field3DInputFile::readVectorLayers() will return its data in. | |
Public Member Functions | |
const_iterator | cbegin () const |
Const iterator to first element. "cbegin" matches the tr1 c++ standard. | |
const_iterator | cbegin (const Box3i &subset) const |
Const iterator to first element of specific subset. | |
const_iterator | cend () const |
Const iterator pointing one element past the last valid one. | |
const_iterator | cend (const Box3i &subset) const |
Const iterator pointing one element past the last valid one (for a subset) | |
virtual std::string | dataTypeString () const |
virtual Data_T | value (int i, int j, int k) const =0 |
Read access to a voxel. The coordinates are in integer voxel space . | |
virtual | ~Field () |
Dtor. | |
Static Public Member Functions | |
static const char * | classType () |
static const char * | staticClassName () |
Public Attributes | |
DEFINE_FIELD_RTTI_ABSTRACT_CLASS | |
Private Types | |
typedef FieldRes | base |
Convenience typedef for referring to base class. | |
Static Private Attributes | |
static TemplatedFieldType < Field< Data_T > > | ms_classType |
This class provides read-only access to voxels. A read-only buffer can not be resized. Resizing is added by ResizableField. The object still has a size of course, but it can only be set by subclass-specific methods.
Reimplemented from FieldRes.
Reimplemented in DenseField< Data_T >, EmptyField< Data_T >, WritableField< Data_T >, ResizableField< Data_T >, MACField< Data_T >, ProceduralField< Data_T >, and SparseField< Data_T >.
typedef Data_T Field< Data_T >::value_type |
This is a convenience typedef for the list that Field3DInputFile::readScalarLayers() and Field3DInputFile::readVectorLayers() will return its data in.
Reimplemented from FieldRes.
Reimplemented in DenseField< Data_T >, EmptyField< Data_T >, MACField< Data_T >, and SparseField< Data_T >.
typedef Field<Data_T> Field< Data_T >::class_type |
Reimplemented from FieldRes.
Reimplemented in DenseField< Data_T >, EmptyField< Data_T >, WritableField< Data_T >, ResizableField< Data_T >, MACField< Data_T >, ProceduralField< Data_T >, and SparseField< Data_T >.
Convenience typedef for referring to base class.
Reimplemented from FieldRes.
Reimplemented in DenseField< Data_T >, EmptyField< Data_T >, WritableField< Data_T >, ResizableField< Data_T >, MACField< Data_T >, ProceduralField< Data_T >, and SparseField< Data_T >.
static const char* Field< Data_T >::staticClassName | ( | ) | [inline, static] |
Reimplemented from FieldRes.
Reimplemented in DenseField< Data_T >, WritableField< Data_T >, ResizableField< Data_T >, MACField< Data_T >, ProceduralField< Data_T >, and SparseField< Data_T >.
Definition at line 397 of file Field.h.
{ return "Field"; }
static const char* Field< Data_T >::classType | ( | ) | [inline, static] |
Reimplemented from FieldRes.
Reimplemented in DenseField< Data_T >, EmptyField< Data_T >, WritableField< Data_T >, ResizableField< Data_T >, MACField< Data_T >, ProceduralField< Data_T >, and SparseField< Data_T >.
Definition at line 402 of file Field.h.
References FieldBase::name.
{ return Field<Data_T>::ms_classType.name(); }
Field< Data_T >::const_iterator Field< Data_T >::cbegin | ( | ) | const |
Const iterator to first element. "cbegin" matches the tr1 c++ standard.
Reimplemented in DenseField< Data_T >, and SparseField< Data_T >.
Definition at line 471 of file Field.h.
References FieldRes::dataResolution().
Referenced by ResizableField< Data_T >::copyFrom(), and isIdentical().
{ if (FieldRes::dataResolution() == V3i(0)) return cend(); return const_iterator(*this, m_dataWindow, m_dataWindow.min); }
Field< Data_T >::const_iterator Field< Data_T >::cbegin | ( | const Box3i & | subset | ) | const |
Const iterator to first element of specific subset.
Reimplemented in DenseField< Data_T >, and SparseField< Data_T >.
Definition at line 482 of file Field.h.
{ if (subset.isEmpty()) return cend(subset); return const_iterator(*this, subset, subset.min); }
Field< Data_T >::const_iterator Field< Data_T >::cend | ( | ) | const |
Const iterator pointing one element past the last valid one.
Reimplemented in DenseField< Data_T >, and SparseField< Data_T >.
Definition at line 493 of file Field.h.
Referenced by isIdentical().
{ return const_iterator(*this, m_dataWindow, V3i(m_dataWindow.min.x, m_dataWindow.min.y, m_dataWindow.max.z + 1)); }
Field< Data_T >::const_iterator Field< Data_T >::cend | ( | const Box3i & | subset | ) | const |
Const iterator pointing one element past the last valid one (for a subset)
Reimplemented in DenseField< Data_T >, and SparseField< Data_T >.
Definition at line 505 of file Field.h.
{ return const_iterator(*this, subset, V3i(subset.min.x, subset.min.y, subset.max.z + 1)); }
virtual Data_T Field< Data_T >::value | ( | int | i, |
int | j, | ||
int | k | ||
) | const [pure virtual] |
Read access to a voxel. The coordinates are in integer voxel space .
Implemented in DenseField< Data_T >, EmptyField< Data_T >, MACField< Data_T >, ProceduralField< Data_T >, and SparseField< Data_T >.
Referenced by CubicFieldInterp< Data_T >::sample(), and LinearFieldInterp< Data_T >::sample().
virtual std::string Field< Data_T >::dataTypeString | ( | ) | const [inline, virtual] |
Reimplemented from FieldRes.
Definition at line 441 of file Field.h.
References FieldBase::name.
{ return DataTypeTraits<Data_T>::name(); }
Field< Data_T >::DEFINE_FIELD_RTTI_ABSTRACT_CLASS |
Reimplemented from FieldRes.
Reimplemented in WritableField< Data_T >, and ResizableField< Data_T >.
TemplatedFieldType<Field<Data_T> > Field< Data_T >::ms_classType [static, private] |