13 #ifndef FFR_VARIABLE_H
14 #define FFR_VARIABLE_H
71 int fillObject(
const std::vector<std::string>& tokens);
74 void dump(std::ostream& os = std::cout)
const;
98 static long int count;
Enum variables with text representations.
#define FFaEnumEntryEnd
Defines the end of an enum mapping definition.
Definition: FFaEnum.H:237
#define FFaEnumMapping(EnumType)
Defines the start of an enum mapping definition.
Definition: FFaEnum.H:221
#define FFaEnumEntry(Value, Text)
Adds one entry to the current enum mapping definition.
Definition: FFaEnum.H:234
Enums that may be used by several FFrLib classes.
FFrStatus
Enum for different states while parsing a result database header.
Definition: FFrEnums.H:18
std::set< FFrVariable *, FFrVariable::Less > VariableSet
Data type alias for a sorted set of variables.
Definition: FFrVariable.H:118
VariableSet::const_iterator VariableSetIt
Iterator over variable container.
Definition: FFrVariable.H:120
Class representing a physical variable in the result file hierarchy.
Definition: FFrVariable.H:31
size_t repeats
Total number of words in the variable.
Definition: FFrVariable.H:108
std::vector< std::string > dataBlockDescription
Component names for multi-dimensional variables.
Definition: FFrVariable.H:113
void dump(std::ostream &os=std::cout) const
Prints the variable defintion to the sepcified output stream.
Definition: FFrVariable.C:166
size_t dataSize
Size (in bits) of each word of the variable.
Definition: FFrVariable.H:107
int fillObject(const std::vector< std::string > &tokens)
Parses the variable definition from a list of strings.
Definition: FFrVariable.C:119
std::string name
Name or desription of the variable.
Definition: FFrVariable.H:103
std::string unit
Unit of the variable (only for FLOAT variables)
Definition: FFrVariable.H:104
VDType
Enum defining available the variable types.
Definition: FFrVariable.H:34
@ UCHAR
Unsigned character.
Definition: FFrVariable.H:37
@ INT
Signed integer.
Definition: FFrVariable.H:38
@ UINT
Unsigned integer.
Definition: FFrVariable.H:39
@ NONE
None - undefined.
Definition: FFrVariable.H:35
@ CHAR
Signed character.
Definition: FFrVariable.H:36
@ FLOAT
Real, either single or double precision (float or double)
Definition: FFrVariable.H:40
size_t getRepeats() const
Returns the total number of words in the variable.
Definition: FFrVariable.H:79
std::vector< size_t > dataBlockSizes
Number of data words in each direction for multi-dimensional variables.
Definition: FFrVariable.H:111
bool less(const FFrVariable *that) const
Return true if *this is less than *that.
VDTypeEnum dataType
Basic data type of the variable.
Definition: FFrVariable.H:105
size_t getTotalDataSize() const
Returns the total number of bits in the variable.
Definition: FFrVariable.H:77
static FFrStatus create(FILE *varStream, FFrCreatorData &cd, bool dataBlocks)
Static method for parsing a variable definition from file.
Definition: FFrVariable.C:43
FFrVariable()
Default constructor initializing the members.
Definition: FFrVariable.H:64
bool equal(const FFrVariable *that) const
Return true if *this equals *that.
std::string dataClass
Class name (structured type) of the variable.
Definition: FFrVariable.H:106
real(sp), dimension(:,:,:), pointer b
Definition: diffractionModule.f90:22
real(sp), dimension(:,:,:), pointer a
Definition: diffractionModule.f90:21
Incapsulation of temporary data used during results file parsing.
Definition: FFrResultContainer.H:36
Functor for comparison of two variable definitions.
Definition: FFrVariable.H:88
bool operator()(const FFrVariable *a, const FFrVariable *b) const
Returns true if *a is considered less than *b.
Definition: FFrVariable.H:90