Template Class XCDFFieldData#
Defined in File XCDFFieldData.h
Inheritance Relationships#
Base Type#
public XCDFFieldDataBase
(Class XCDFFieldDataBase)
Derived Types#
public XCDFFieldDataScalar< T >
(Template Class XCDFFieldDataScalar)public XCDFFieldDataVector< T >
(Template Class XCDFFieldDataVector)
Class Documentation#
-
template<typename T>
class XCDFFieldData : public XCDFFieldDataBase# XCDF field data container. Manages data storage, type conversions, and XCDF max/min/size calculations.
- Author
Jim Braun
Subclassed by XCDFFieldDataScalar< T >, XCDFFieldDataVector< T >
Public Functions
-
inline XCDFFieldData(const XCDFFieldType type, const std::string &name, const T res)#
-
inline virtual ~XCDFFieldData()#
-
virtual void ZeroAlign()#
-
inline virtual void SetActiveSize(const uint32_t activeSize)#
Set the active size of the field, as when reading back a file.
-
inline virtual void Reset()#
-
inline virtual void CalculateGlobals()#
-
inline virtual bool GlobalsSet() const#
-
inline virtual void ClearBitsProcessed()#
-
inline virtual uint64_t GetBitsProcessed() const#
-
inline virtual uint64_t GetStashSize() const#
-
inline virtual uint32_t GetActiveSize() const#
-
inline virtual uint64_t GetRawResolution() const#
-
inline virtual uint64_t GetRawActiveMin() const#
-
inline virtual void SetRawActiveMin(uint64_t rawActiveMin)#
Set the active min, as when reading back a file.
-
inline virtual uint64_t GetRawGlobalMin() const#
-
inline virtual uint64_t GetRawGlobalMax() const#
-
inline virtual void SetRawGlobalMin(uint64_t rawGlobalMin)#
-
inline virtual void SetRawGlobalMax(uint64_t rawGlobalMax)#
-
inline virtual uint64_t GetTotalBytes() const#
-
inline virtual void SetTotalBytes(uint64_t totalBytes)#
-
virtual ConstIterator Begin() const = 0#
-
virtual ConstIterator End() const = 0#
-
virtual const T &At(const uint32_t index) const = 0#
Get a value from the field. Preserve At() call for vectors At(x) is undefined for x > 0 (or possibly x == 0). Just return datum_.
-
inline virtual void ZeroAlign()
-
inline virtual void ZeroAlign()
Protected Functions
-
inline T LoadValue(XCDFBlockData &data)#
-
inline void DumpValue(XCDFBlockData &data, T datum)#
-
inline unsigned CalcActiveSize() const#
-
inline double CalculateTypeValue(uint64_t datum) const
-
inline uint64_t CalculateIntegerValue(double datum) const#
-
inline unsigned CalcActiveSize() const
Protected Attributes
-
bool minSet_#
Have we written data to the field?
-
bool maxSet_#
-
bool globalMinSet_#
Have we written the global max/min?
-
bool globalMaxSet_#
-
mutable uint32_t activeSize_#
Number of bits needed for this field in the current block.
-
uint64_t totalBytes_#
Total bytes used by the field. We can’t just use bitsProcessed because reading files back must necessarily alter bitsProcessed, but totalBytes_ should be static after we’ve calculated the value.
-
uint64_t bitsProcessed_#
Bits we’ve processed; used to determine total bytes.