1#ifndef UTIL_ARRAY_PARAM_H
2#define UTIL_ARRAY_PARAM_H
11#include <util/param/Parameter.h>
54 template <
typename Type>
103 virtual void readLabel(std::istream& in);
114 virtual void readValue(std::istream& in);
146 virtual Type
const &
element(
int i)
const = 0;
152 {
return hasBrackets_; }
173#include <util/param/ArrayParam.tpp>
An array-valued parameter in a parameter file.
int n() const
Get the logical array dimension.
ArrayParam(const char *label, int n, bool isRequired=true)
Constructor.
bool hasBrackets() const
Are square brackets being used as delimiters?
std::string label() const
Return label string.
void writeParam(std::ostream &out) const
Write an array-valued parameter to stream.
virtual Type & element(int i)=0
Return a non-const reference to one element of the array.
virtual void readValue(std::istream &in)
Read array of element values from an input stream.
virtual Type const & element(int i) const =0
Return a non-const reference to one element of the array.
virtual ~ArrayParam()
Destructor.
void readEndBracket(std::istream &in)
Read a closing bracket, if necessary.
bool isRequired() const
Is this an optional parameter?
virtual void readLabel(std::istream &in)
Read parameter label from an input stream.
std::string indent() const
Return indent string for this object (string of spaces).
A single variable in a parameter file.
std::string label() const
Return label string.
virtual void save(Serializable::OArchive &ar)
Save to an archive.
bool isRequired() const
Is this an optional parameter?
Label label_
Label object that contains parameter label string.
bool isActive() const
Is this parameter active?
virtual void load(Serializable::IArchive &ar)
Load from an archive.
Utility classes for scientific computation.