Field3D
FieldMetadata Class Reference

#include <FieldMetadata.h>

Public Types

typedef std::map< std::string, float > FloatMetadata
 
typedef std::map< std::string, int > IntMetadata
 
typedef std::map< std::string, std::string > StrMetadata
 
typedef std::map< std::string, V3fVecFloatMetadata
 
typedef std::map< std::string, V3iVecIntMetadata
 

Public Member Functions

void operator= (const FieldMetadata &other)
 
Constructors & destructor
 FieldMetadata (MetadataCallback *owner)
 
virtual ~FieldMetadata ()
 
Metadata
V3f vecFloatMetadata (const std::string &name, const V3f &defaultVal) const
 Tries to retrieve a V3f metadata value. Returns the specified default value if no metadata was found. More...
 
float floatMetadata (const std::string &name, const float defaultVal) const
 Tries to retrieve a float metadata value. Returns the specified default value if no metadata was found. More...
 
V3i vecIntMetadata (const std::string &name, const V3i &defaultVal) const
 Tries to retrieve a V3i metadata value. Returns the specified default value if no metadata was found. More...
 
int intMetadata (const std::string &name, const int defaultVal) const
 Tries to retrieve an int metadata value. Returns the specified default value if no metadata was found. More...
 
std::string strMetadata (const std::string &name, const std::string &defaultVal) const
 Tries to retrieve a string metadata value. Returns the specified default value if no metadata was found. More...
 
const VecFloatMetadatavecFloatMetadata () const
 Read only access to the m_vecFloatMetadata dictionary. More...
 
const FloatMetadatafloatMetadata () const
 Read only access to the m_floatMetadata dictionary. More...
 
const VecIntMetadatavecIntMetadata () const
 Read only access to the m_vecIntMetadata dictionary. More...
 
const IntMetadataintMetadata () const
 Read only access to the m_intMetadata dictionary. More...
 
const StrMetadatastrMetadata () const
 Read only access to the m_strMetadata dictionary. More...
 
void setVecFloatMetadata (const std::string &name, const V3f &val)
 Set the a V3f value for the given metadata name. More...
 
void setFloatMetadata (const std::string &name, const float val)
 Set the a float value for the given metadata name. More...
 
void setVecIntMetadata (const std::string &name, const V3i &val)
 Set the a V3i value for the given metadata name. More...
 
void setIntMetadata (const std::string &name, const int val)
 Set the a int value for the given metadata name. More...
 
void setStrMetadata (const std::string &name, const std::string &val)
 Set the a string value for the given metadata name. More...
 

Private Member Functions

 FieldMetadata (const FieldMetadata &)
 

Private Attributes

FloatMetadata m_floatMetadata
 Float metadata. More...
 
IntMetadata m_intMetadata
 Int metadata. More...
 
MetadataCallbackm_owner
 Pointer to owner. It is assumed that this has a lifetime at least as long as the Metadata instance. More...
 
StrMetadata m_strMetadata
 String metadata. More...
 
VecFloatMetadata m_vecFloatMetadata
 V3f metadata. More...
 
VecIntMetadata m_vecIntMetadata
 V3i metadata. More...
 

Detailed Description

Definition at line 84 of file FieldMetadata.h.

Member Typedef Documentation

◆ StrMetadata

typedef std::map<std::string, std::string> FieldMetadata::StrMetadata

Definition at line 90 of file FieldMetadata.h.

◆ IntMetadata

typedef std::map<std::string, int> FieldMetadata::IntMetadata

Definition at line 91 of file FieldMetadata.h.

◆ FloatMetadata

typedef std::map<std::string, float> FieldMetadata::FloatMetadata

Definition at line 92 of file FieldMetadata.h.

◆ VecIntMetadata

typedef std::map<std::string, V3i> FieldMetadata::VecIntMetadata

Definition at line 93 of file FieldMetadata.h.

◆ VecFloatMetadata

typedef std::map<std::string, V3f> FieldMetadata::VecFloatMetadata

Definition at line 94 of file FieldMetadata.h.

Constructor & Destructor Documentation

◆ FieldMetadata() [1/2]

FieldMetadata::FieldMetadata ( MetadataCallback owner)
inline

Definition at line 101 of file FieldMetadata.h.

102  : m_owner(owner)
103  { }

◆ ~FieldMetadata()

virtual FieldMetadata::~FieldMetadata ( )
inlinevirtual

Definition at line 105 of file FieldMetadata.h.

105 {}

◆ FieldMetadata() [2/2]

FieldMetadata::FieldMetadata ( const FieldMetadata )
private

Member Function Documentation

◆ operator=()

void FieldMetadata::operator= ( const FieldMetadata other)
inline

◆ vecFloatMetadata() [1/2]

V3f FieldMetadata::vecFloatMetadata ( const std::string &  name,
const V3f defaultVal 
) const

Tries to retrieve a V3f metadata value. Returns the specified default value if no metadata was found.

Definition at line 113 of file FieldMetadata.cpp.

115 {
116  V3f retVal = defaultVal;
117 
118  VecFloatMetadata::const_iterator i = m_vecFloatMetadata.find(name);
119  if (i != m_vecFloatMetadata.end()) {
120  retVal = i->second;
121  }
122 
123  return retVal;
124 }

References m_vecFloatMetadata.

Referenced by Field3DOutputFile::writeMetadata(), and Field3DOutputFileHDF5::writeMetadata().

◆ floatMetadata() [1/2]

float FieldMetadata::floatMetadata ( const std::string &  name,
const float  defaultVal 
) const

Tries to retrieve a float metadata value. Returns the specified default value if no metadata was found.

Definition at line 128 of file FieldMetadata.cpp.

130 {
131  float retVal = defaultVal;
132 
133  FloatMetadata::const_iterator i = m_floatMetadata.find(name);
134  if (i != m_floatMetadata.end()) {
135  retVal = i->second;
136  }
137 
138  return retVal;
139 }

References m_floatMetadata.

Referenced by Field3DOutputFile::writeMetadata(), and Field3DOutputFileHDF5::writeMetadata().

◆ vecIntMetadata() [1/2]

V3i FieldMetadata::vecIntMetadata ( const std::string &  name,
const V3i defaultVal 
) const

Tries to retrieve a V3i metadata value. Returns the specified default value if no metadata was found.

Definition at line 143 of file FieldMetadata.cpp.

145 {
146  V3i retVal = defaultVal;
147 
148  VecIntMetadata::const_iterator i = m_vecIntMetadata.find(name);
149  if (i != m_vecIntMetadata.end()) {
150  retVal = i->second;
151  }
152 
153  return retVal;
154 }

References m_vecIntMetadata.

Referenced by detail::adjustedMIPFieldMapping(), Field3DOutputFile::writeMetadata(), and Field3DOutputFileHDF5::writeMetadata().

◆ intMetadata() [1/2]

int FieldMetadata::intMetadata ( const std::string &  name,
const int  defaultVal 
) const

Tries to retrieve an int metadata value. Returns the specified default value if no metadata was found.

Definition at line 158 of file FieldMetadata.cpp.

160 {
161  int retVal = defaultVal;
162 
163  IntMetadata::const_iterator i = m_intMetadata.find(name);
164  if (i != m_intMetadata.end()) {
165  retVal = i->second;
166  }
167 
168  return retVal;
169 }

References m_intMetadata.

Referenced by Field3DOutputFile::writeMetadata(), and Field3DOutputFileHDF5::writeMetadata().

◆ strMetadata() [1/2]

std::string FieldMetadata::strMetadata ( const std::string &  name,
const std::string &  defaultVal 
) const

Tries to retrieve a string metadata value. Returns the specified default value if no metadata was found.

Definition at line 173 of file FieldMetadata.cpp.

175 {
176  std::string retVal = defaultVal;
177 
178  StrMetadata::const_iterator i = m_strMetadata.find(name);
179  if (i != m_strMetadata.end()) {
180  retVal = i->second;
181  }
182 
183  return retVal;
184 }

References m_strMetadata.

Referenced by Field3DOutputFile::writeMetadata(), and Field3DOutputFileHDF5::writeMetadata().

◆ vecFloatMetadata() [2/2]

const VecFloatMetadata& FieldMetadata::vecFloatMetadata ( ) const
inline

Read only access to the m_vecFloatMetadata dictionary.

Definition at line 147 of file FieldMetadata.h.

148  { return m_vecFloatMetadata; }

◆ floatMetadata() [2/2]

const FloatMetadata& FieldMetadata::floatMetadata ( ) const
inline

Read only access to the m_floatMetadata dictionary.

Definition at line 151 of file FieldMetadata.h.

152  { return m_floatMetadata; }

◆ vecIntMetadata() [2/2]

const VecIntMetadata& FieldMetadata::vecIntMetadata ( ) const
inline

Read only access to the m_vecIntMetadata dictionary.

Definition at line 155 of file FieldMetadata.h.

156  { return m_vecIntMetadata; }

◆ intMetadata() [2/2]

const IntMetadata& FieldMetadata::intMetadata ( ) const
inline

Read only access to the m_intMetadata dictionary.

Definition at line 159 of file FieldMetadata.h.

160  { return m_intMetadata; }

◆ strMetadata() [2/2]

const StrMetadata& FieldMetadata::strMetadata ( ) const
inline

Read only access to the m_strMetadata dictionary.

Definition at line 163 of file FieldMetadata.h.

164  { return m_strMetadata; }

◆ setVecFloatMetadata()

FIELD3D_NAMESPACE_OPEN void FieldMetadata::setVecFloatMetadata ( const std::string &  name,
const V3f val 
)

Set the a V3f value for the given metadata name.

Definition at line 58 of file FieldMetadata.cpp.

60 {
61  m_vecFloatMetadata[name] = val;
62  if (m_owner) {
64  }
65 }

References m_owner, m_vecFloatMetadata, and MetadataCallback::metadataHasChanged().

Referenced by Field3DInputFileHDF5::readMetadata().

◆ setFloatMetadata()

void FieldMetadata::setFloatMetadata ( const std::string &  name,
const float  val 
)

Set the a float value for the given metadata name.

Definition at line 69 of file FieldMetadata.cpp.

71 {
72  m_floatMetadata[name] = val;
73  if (m_owner) {
75  }
76 }

References m_floatMetadata, m_owner, and MetadataCallback::metadataHasChanged().

Referenced by Field3DInputFileHDF5::readMetadata().

◆ setVecIntMetadata()

void FieldMetadata::setVecIntMetadata ( const std::string &  name,
const V3i val 
)

Set the a V3i value for the given metadata name.

Definition at line 80 of file FieldMetadata.cpp.

82 {
83  m_vecIntMetadata[name] = val;
84  if (m_owner) {
86  }
87 }

References m_owner, m_vecIntMetadata, and MetadataCallback::metadataHasChanged().

Referenced by Field3DInputFileHDF5::readMetadata().

◆ setIntMetadata()

void FieldMetadata::setIntMetadata ( const std::string &  name,
const int  val 
)

Set the a int value for the given metadata name.

Definition at line 91 of file FieldMetadata.cpp.

93 {
94  m_intMetadata[name] = val;
95  if (m_owner) {
97  }
98 }

References m_intMetadata, m_owner, and MetadataCallback::metadataHasChanged().

Referenced by Field3DInputFileHDF5::readMetadata(), Field3DInputFile::readProxyLayer(), and Field3DInputFileHDF5::readProxyLayer().

◆ setStrMetadata()

void FieldMetadata::setStrMetadata ( const std::string &  name,
const std::string &  val 
)

Set the a string value for the given metadata name.

Definition at line 102 of file FieldMetadata.cpp.

104 {
105  m_strMetadata[name] = val;
106  if (m_owner) {
108  }
109 }

References m_owner, m_strMetadata, and MetadataCallback::metadataHasChanged().

Referenced by Field3DInputFileHDF5::readMetadata().

Member Data Documentation

◆ m_vecFloatMetadata

VecFloatMetadata FieldMetadata::m_vecFloatMetadata
private

V3f metadata.

Definition at line 192 of file FieldMetadata.h.

Referenced by operator=(), setVecFloatMetadata(), and vecFloatMetadata().

◆ m_floatMetadata

FloatMetadata FieldMetadata::m_floatMetadata
private

Float metadata.

Definition at line 194 of file FieldMetadata.h.

Referenced by floatMetadata(), operator=(), and setFloatMetadata().

◆ m_vecIntMetadata

VecIntMetadata FieldMetadata::m_vecIntMetadata
private

V3i metadata.

Definition at line 196 of file FieldMetadata.h.

Referenced by operator=(), setVecIntMetadata(), and vecIntMetadata().

◆ m_intMetadata

IntMetadata FieldMetadata::m_intMetadata
private

Int metadata.

Definition at line 198 of file FieldMetadata.h.

Referenced by intMetadata(), operator=(), and setIntMetadata().

◆ m_strMetadata

StrMetadata FieldMetadata::m_strMetadata
private

String metadata.

Definition at line 200 of file FieldMetadata.h.

Referenced by operator=(), setStrMetadata(), and strMetadata().

◆ m_owner

MetadataCallback* FieldMetadata::m_owner
private

Pointer to owner. It is assumed that this has a lifetime at least as long as the Metadata instance.

Definition at line 204 of file FieldMetadata.h.

Referenced by setFloatMetadata(), setIntMetadata(), setStrMetadata(), setVecFloatMetadata(), and setVecIntMetadata().


The documentation for this class was generated from the following files:
V3i
Imath::V3i V3i
Definition: SpiMathLib.h:71
V3f
Imath::V3f V3f
Definition: SpiMathLib.h:73
FieldMetadata::m_vecFloatMetadata
VecFloatMetadata m_vecFloatMetadata
V3f metadata.
Definition: FieldMetadata.h:192
FieldMetadata::m_owner
MetadataCallback * m_owner
Pointer to owner. It is assumed that this has a lifetime at least as long as the Metadata instance.
Definition: FieldMetadata.h:204
FieldMetadata::m_floatMetadata
FloatMetadata m_floatMetadata
Float metadata.
Definition: FieldMetadata.h:194
FieldMetadata::m_intMetadata
IntMetadata m_intMetadata
Int metadata.
Definition: FieldMetadata.h:198
FieldMetadata::m_strMetadata
StrMetadata m_strMetadata
String metadata.
Definition: FieldMetadata.h:200
FieldMetadata::m_vecIntMetadata
VecIntMetadata m_vecIntMetadata
V3i metadata.
Definition: FieldMetadata.h:196
MetadataCallback::metadataHasChanged
virtual void metadataHasChanged(const std::string &)
Alerts the callback holder that the metadata has changed.
Definition: FieldMetadata.h:75