|
Field3D
|
#include <DenseFieldIO.h>
Public Types | |
| typedef DenseFieldIO | class_type |
| typedef boost::intrusive_ptr< DenseFieldIO > | Ptr |
Public Types inherited from FieldIO | |
| typedef FieldIO | class_type |
| typedef boost::intrusive_ptr< FieldIO > | Ptr |
Public Types inherited from RefBase | |
| typedef boost::intrusive_ptr< RefBase > | Ptr |
| typedef boost::weak_ptr< RefBase > | WeakPtr |
Public Member Functions | |
| virtual std::string | className () const |
| Returns the class name. More... | |
| DenseFieldIO () | |
| Ctor. More... | |
| virtual FieldBase::Ptr | read (hid_t layerGroup, const std::string &filename, const std::string &layerPath, DataTypeEnum typeEnum) |
| Reads the field at the given location and tries to create a DenseField object from it. Calls out to readData() for template-specific work. More... | |
| virtual bool | write (hid_t layerGroup, FieldBase::Ptr field) |
| Writes the given field to disk. This function calls out to writeInternal once the template type has been determined. More... | |
| virtual | ~DenseFieldIO () |
| Dtor. More... | |
Public Member Functions inherited from FieldIO | |
| FieldIO () | |
| Ctor. More... | |
| virtual | ~FieldIO () |
| Dtor. More... | |
Public Member Functions inherited from RefBase | |
| void | ref () const |
| Used by boost::intrusive_pointer. More... | |
| size_t | refcnt () |
| Used by boost::intrusive_pointer. More... | |
| void | unref () const |
| Used by boost::intrusive_pointer. More... | |
| WeakPtr | weakPtr () const |
| RefBase () | |
| RefBase (const RefBase &) | |
| Copy constructor. More... | |
| RefBase & | operator= (const RefBase &) |
| Assignment operator. More... | |
| virtual | ~RefBase () |
| Destructor. More... | |
| virtual bool | checkRTTI (const char *typenameStr)=0 |
| This function is only implemented by concrete classes and triggers the actual RTTI check through matchRTTI();. More... | |
| bool | matchRTTI (const char *typenameStr) |
| Performs a check to see if the given typename string matches this class' This needs to be implemented in -all- subclasses, even abstract ones. More... | |
Static Public Member Functions | |
| static FieldIO::Ptr | create () |
| static const char * | staticClassType () |
Static Public Member Functions inherited from FieldIO | |
| static const char * | staticClassType () |
Static Public Member Functions inherited from RefBase | |
| static const char * | staticClassType () |
Public Attributes | |
| DEFINE_FIELD_RTTI_CONCRETE_CLASS | |
Public Attributes inherited from FieldIO | |
| DEFINE_FIELD_RTTI_ABSTRACT_CLASS | |
Private Types | |
| typedef FieldIO | base |
| Convenience typedef for referring to base class. More... | |
Private Member Functions | |
| template<class Data_T > | |
| DenseField< Data_T >::Ptr | readData (hid_t dataSet, const Box3i &extents, const Box3i &dataW) |
| This call performs the actual reading of data from disk. More... | |
| template<class Data_T > | |
| bool | writeData (hid_t dataSet, typename DenseField< Data_T >::Ptr field, Data_T dummy) |
| This call performs the actual writing of data to disk. More... | |
| template<class Data_T > | |
| bool | writeInternal (hid_t layerGroup, typename DenseField< Data_T >::Ptr field) |
| This call writes all the attributes and sets up the data space. More... | |
Static Private Attributes | |
| static const std::string | k_bitsPerComponentStr |
| static const std::string | k_componentsStr |
| static const std::string | k_dataStr |
| static const std::string | k_dataWindowStr |
| static const std::string | k_extentsStr |
| static const std::string | k_versionAttrName |
| static const int | k_versionNumber |
Handles IO for a DenseField object
Definition at line 78 of file DenseFieldIO.h.
| typedef boost::intrusive_ptr<DenseFieldIO> DenseFieldIO::Ptr |
Definition at line 85 of file DenseFieldIO.h.
| typedef DenseFieldIO DenseFieldIO::class_type |
Definition at line 89 of file DenseFieldIO.h.
|
private |
Convenience typedef for referring to base class.
Definition at line 161 of file DenseFieldIO.h.
|
inline |
Ctor.
Definition at line 100 of file DenseFieldIO.h.
|
inlinevirtual |
|
inlinestatic |
Definition at line 92 of file DenseFieldIO.h.
|
inlinestatic |
Definition at line 108 of file DenseFieldIO.h.
References read(), and write().
Referenced by initIO().
|
virtual |
Reads the field at the given location and tries to create a DenseField object from it. Calls out to readData() for template-specific work.
Implements FieldIO.
Definition at line 77 of file DenseFieldIO.cpp.
References DataTypeDouble, DataTypeFloat, DataTypeHalf, DataTypeVecDouble, DataTypeVecFloat, DataTypeVecHalf, Hdf5Util::H5Base::id(), and Hdf5Util::readAttribute().
Referenced by create().
|
virtual |
Writes the given field to disk. This function calls out to writeInternal once the template type has been determined.
Implements FieldIO.
Definition at line 162 of file DenseFieldIO.cpp.
References FIELD3D_NAMESPACE_SOURCE_CLOSE, field_dynamic_cast(), and Hdf5Util::writeAttribute().
Referenced by create().
|
inlinevirtual |
Returns the class name.
Implements FieldIO.
Definition at line 126 of file DenseFieldIO.h.
References readData(), writeData(), and writeInternal().
|
private |
This call writes all the attributes and sets up the data space.
Definition at line 171 of file DenseFieldIO.h.
References Hdf5Util::checkHdf5Gzip(), FieldTraits< Data_T >::dataDims(), FieldRes::dataWindow(), FieldRes::extents(), DataTypeTraits< T >::h5bits(), Hdf5Util::H5Base::id(), DenseField< Data_T >::internalMemSize(), k_bitsPerComponentStr, k_componentsStr, k_dataStr, k_dataWindowStr, k_extentsStr, Msg::print(), Msg::SevWarning, and Hdf5Util::writeAttribute().
Referenced by className().
|
private |
This call performs the actual writing of data to disk.
Definition at line 275 of file DenseFieldIO.h.
References DenseField< Data_T >::begin().
Referenced by className().
|
private |
This call performs the actual reading of data from disk.
Definition at line 298 of file DenseFieldIO.h.
References DenseField< Data_T >::begin(), FIELD3D_NAMESPACE_HEADER_CLOSE, DataTypeTraits< T >::name(), and ResizableField< Data_T >::setSize().
Referenced by className().
| DenseFieldIO::DEFINE_FIELD_RTTI_CONCRETE_CLASS |
Definition at line 90 of file DenseFieldIO.h.
|
staticprivate |
Definition at line 150 of file DenseFieldIO.h.
|
staticprivate |
Definition at line 151 of file DenseFieldIO.h.
|
staticprivate |
Definition at line 152 of file DenseFieldIO.h.
Referenced by writeInternal().
|
staticprivate |
Definition at line 153 of file DenseFieldIO.h.
Referenced by writeInternal().
|
staticprivate |
Definition at line 154 of file DenseFieldIO.h.
Referenced by writeInternal().
|
staticprivate |
Definition at line 155 of file DenseFieldIO.h.
Referenced by writeInternal().
|
staticprivate |
Definition at line 156 of file DenseFieldIO.h.
Referenced by writeInternal().