|
| RhiODIM (group_t initialize=ODIMPathElem::ALL_LEVELS) |
|
| RhiODIM (const RhiODIM &odim) |
|
template<class T > |
| RhiODIM (const std::map< std::string, T > &m) |
|
| RhiODIM (const drain::image::Image &img, const std::string &quantity="") |
|
| VerticalCrossSectionODIM (group_t initialize=ODIMPathElem::ALL_LEVELS) |
|
| VerticalCrossSectionODIM (const ODIM &odim) |
|
void | setGeometry (size_t cols, size_t rows) |
| Sets number of columns (nbins) and number of rows (nrays). Does not change resolution.
|
|
| ODIM (group_t initialize=ODIMPathElem::ALL_LEVELS) |
|
| ODIM (const ODIM &odim) |
|
| ODIM (const drain::image::Image &image, const std::string &quantity="") |
|
| ODIM (drain::image::Image &image, const std::string &quantity="") |
|
virtual void | setGeometry (const drain::image::AreaGeometry &g) |
|
virtual const drain::image::AreaGeometry & | getGeometry () const |
|
virtual void | adjustGeometry (size_t cols, size_t rows) |
| Change geometry and adjust spatial resolution respectively.
|
|
virtual void | updateLenient (const ODIM &odim) |
| Updates object, quantity, product and time information. More...
|
|
bool | getTime (drain::Time &t) const |
| Retrieves the stored time. Returns true if successful. // consider: throws error if fail.
|
|
bool | getStartTime (drain::Time &t) const |
| Retrieves the start time. Returns true if successful. // consider: throws error if fail.
|
|
bool | getEndTime (drain::Time &t) const |
| Retrieves the end time. Returns true if successful. // consider: throws error if fail.
|
|
bool | setTime (const drain::Time &t) |
| Sets date and time . Returns true if successful, throws error if fail.
|
|
bool | setTime (const std::string &s) |
| Sets date and time given a string of Returns true if successful, throws error if fail.
|
|
virtual const drain::image::CoordinatePolicy & | getCoordinatePolicy () const |
| Returns recommended coordinate policy. Redefined in PolarODIM.
|
|
bool | distinguishNodata (const std::string &quantityPrefix="") |
| If nodata==undetect, set nodata=maxValue (hoping its not nodata...) More...
|
|
| EncodingODIM (group_t initialize=ODIMPathElem::ALL_LEVELS) |
| Default constructor.
|
|
| EncodingODIM (const EncodingODIM &odim) |
| Copy constructor.
|
|
| EncodingODIM (char type, double scale=1.0, double offset=0.0, double nodata=NAN, double undetect=NAN, const drain::Range< double > &range={0, 0}) |
| Scale driven encoding for brace inits. RISK: group_t confusion?
|
|
| EncodingODIM (char type, const drain::Range< double > &range, double scale=0.0, double offset=0.0, double nodata=NAN, double undetect=NAN) |
| Range-driven encoding for brace inits.
|
|
| EncodingODIM (const drain::image::Image &image) |
|
| EncodingODIM (drain::image::Image &image) |
|
EncodingODIM & | operator= (const EncodingODIM &odim) |
|
| operator drain::ValueScaling & () |
|
| operator const drain::ValueScaling & () const |
|
EncodingODIM & | setScaling (double gain, double offset=NAN) |
|
EncodingODIM & | setScaling (double gain, double offset, double undetect, double nodata) |
|
bool | isSet () const |
|
void | setRange (double min, double max) |
|
template<class T > |
void | setTypeDefaults (const T &type, const std::string &values="") |
| Sets gain=1, offset=0, undetect=type_min, nodata=type_max. Note: sets type only if unset.
|
|
void | setTypeDefaults () |
|
bool | isValue (double x) const |
| Returns true for a valid measurement value, false for undetect and nodata marker values.
|
|
double | scaleForward (double x) const |
| Converts a quantity from storage scale: y = offset + gain*y .
|
|
double | scaleInverse (double y) const |
| Converts a quantity to storage scale: x = (y-offset)/gain .
|
|
double | getMin () const |
| Returns the minimum physical value that can be returned using current storage type, gain and offset.
|
|
double | getMax () const |
| Returns the minimum physical value that can be returned using current storage type, gain and offset.
|
|
double | operator() (double y) const |
| Functor (why inverse?)
|
|
void | clear () |
| Resets the values. More...
|
|
virtual void | updateLenient (const EncodingODIM &odim) |
| Todo: keep the function, but move implementation to (future single-exec) register ? More...
|
|
void | grantShortKeys (drain::ReferenceMap &ref) |
| Creates a short alias (attrib) for each (group):(attrib). Example: "gain" => "what:gain".
|
|
void | addShortKeys () |
| Creates a short alias (attrib) for each (group):(attrib). Example: "gain" => "what:gain".
|
|
void | copyFrom (const drain::image::Image &data) |
| Copies image attributes and type . Experimental. More...
|
|
| ReferenceMap (char separator=',') |
| Default constructor. More...
|
|
| ReferenceMap (const ReferenceMap &rmap) |
| Copy constructor copies only the separators; does not copy the items. More...
|
|
template<class F > |
Reference & | link (const std::string &key, Range< F > &x, const std::string &unit=std::string()) |
|
template<class F > |
Reference & | link (const std::string &key, F &x, const std::string &unit=std::string()) |
| Associates a map entry with a variable. More...
|
|
Reference & | link (const std::string &key, Reference &x, const std::string &unit=std::string()) |
|
Reference & | link (const std::string &key, void *ptr, const std::type_info &type, size_t count, const std::string &unit=std::string()) |
| For arrays.
|
|
Reference & | link (const std::string &key, void *ptr, const std::type_info &type, const std::string &unit=std::string()) |
| Convenience: create a reference to a scalar. For arrays, use the.
|
|
template<class F > |
Reference & | referenceTop (const std::string &key, F &x, const std::string &unit=std::string()) |
| Associates a map entry with a variable, adding key in the beginning of key list. More...
|
|
void | append (ReferenceMap &rMap, bool replace=true) |
| Adopts the references of r. If replace==false, only new entries are appended.
|
|
void | delink (const std::string &key) |
| Removes an entry from the map.
|
|
void | reserve (const std::string &key) |
| Adds a null entry, expecting the link later. More...
|
|
template<class T > |
void | copyStruct (const ReferenceMap &m, const T &src, T &dst, extLinkPolicy policy=RESERVE) |
| Experimental. Copies references and values of a structure to another. More...
|
|
template<class T > |
ReferenceMap & | operator= (const SmartMap< T > &v) |
| Import map, adopting the element types.
|
|
virtual mapped_type & | operator[] (const std::string &key) |
| Return element associated with key .
|
|
virtual const mapped_type & | operator[] (const std::string &key) const |
| Calling unreferenced key throws an exception.
|
|
const unitmap_t & | getUnitMap () const |
| Returns measurement unit information of the actual map entries.
|
|
| SmartMap (char separator='\0', char arraySeparator=':') |
|
| SmartMap (const SmartMap &smap) |
|
bool | hasKey (const std::string &key) const |
|
std::string | get (const std::string &key, const std::string &defaultValue) const |
| Retrieves a value, or default value if value is unset. More...
|
|
std::string | get (const std::string &key, const char *defaultValue) const |
|
T2 | get (const std::string &key, const T2 &defaultValue) const |
| Retrieves a value, if set, else returns the given default value. More...
|
|
virtual const keylist_t & | getKeyList () const |
| Derived versions may produce an ordered set of keys.
|
|
const map_t & | getMap () const |
|
void | exportMap (std::map< std::string, T2 > &m) const |
| Copies the contents to another map.
|
|
void | importEntries (const std::string &entries, char assignmentSymbol='=', char separatorSymbol=0) |
| Assigns a value to given key; if the entry does not exist, tries to create it with directly with operator[]. More...
|
|
void | importEntries (const std::list< std::string > &entries, char assignmentSymbol='=') |
|
void | importMap (const std::map< std::string, S > &m) |
| Assign values from a map, overriding existing entries. More...
|
|
void | importCastableMap (const drain::SmartMap< T2 > &m) |
| Assign values from a map, possibly extending the map. More...
|
|
void | updateFromMap (const std::map< std::string, T2 > &m) |
| Assign values from a map. Updates existing entries only. More...
|
|
void | updateFromCastableMap (const drain::SmartMap< T2 > &m) |
| Convenience.
|
|
void | setValues (const std::string &entries, char assignmentSymbol='=', char separatorSymbol=0) |
| Sets values. If strictness==STRICTLY_CLOSED, throws exception if tries to assign a non-existing entry.
|
|
void | setValues (const char *entries, char assignmentSymbol='=', char separatorSymbol=0) |
|
void | setValuesSEQ (const S &sequence) |
|
void | updateValues (const std::string &entries, char assignmentSymbol='=', char separatorSymbol=0) |
| Sets applicable values ie. modifies existing entries only. In ordered maps, skips extra entries silently.
|
|
void | getKeys (std::ostream &ostr) const |
|
std::string | getKeys () const |
| Convenience function for std::string output.
|
|
void | getValues (std::ostream &ostr) const |
| Dumps the values.
|
|
std::string | getValues () const |
| Convenience function for std::string output.
|
|
std::ostream & | toStream (std::ostream &ostr, char equal='=', char startChar='{', char endChar='}', char separatorChar=',') const |
| Note: parameters discarded.
|
|
std::string | toStr (char equal='=', char start=0, char end=0, char separator=0) const |
|
void | dump (std::ostream &ostr=std::cout) const |
| Write map as a JSON code. More...
|
|
|
enum | Version {
KILOMETRES = 1
, RACK_EXTENSIONS = 8
, ODIM_2_2 = 16 | KILOMETRES
, ODIM_2_3 = 32 | KILOMETRES
,
ODIM_2_4 = 64
} |
|
typedef drain::EnumFlagger< drain::MultiFlagger< Version > > | VersionFlagger |
|
typedef std::set< std::string > | nameSet |
|
enum | ExplicitSetting { NONE =0
, SCALING =1
, RANGE =2
} |
|
typedef ODIMPathElem::group_t | group_t |
|
enum | extLinkPolicy { LINK
, RESERVE
, SKIP
, ERROR
} |
|
typedef std::map< std::string, std::string > | unitmap_t |
|
typedef SmartMap< Reference > | smap_t |
|
typedef std::map< std::string, Reference > | map_t |
|
typedef map_t::key_type | key_t |
|
typedef map_t::mapped_type | value_t |
|
typedef map_t::value_type | entry_t |
|
typedef std::list< std::string > | keylist_t |
|
typedef map_t::iterator | iterator |
| Needed?
|
|
typedef map_t::const_iterator | const_iterator |
|
template<group_t G, class T > |
static void | updateH5AttributeGroups (const T &odim, Hi5Tree &dst) |
| Write ODIM metadata to WHAT, WHERE and HOW groups. More...
|
|
template<group_t G, class T > |
static void | updateH5AttributeGroups (const T &odim, const Hi5Tree &dst) |
|
static bool | getTime (drain::Time &t, const std::string &dateStr, const std::string &timeStr) |
| Retrieves the stored time. Returns true if successful, throws error if fail.
|
|
static bool | haveSimilarEncoding (const EncodingODIM &odim1, const EncodingODIM &odim2) |
| Checks if data encoding is similar (storage type, gain, offset, undetect and nodata are the same).
|
|
static void | checkType (Hi5Tree &dst) |
| Traverses recursively subtrees and checks the types of PolarODIM variables. More...
|
|
static VersionFlagger | versionFlagger |
|
static const nameSet | timeKeys = {"what:time", "what:starttime", "what:endtime"} |
|
static const nameSet | dateKeys = {"what:date", "what:startdate", "what:enddate"} |
|
static const nameSet | locationKeys = {"where:site", "where:src", "where:lat", "where:lon", "PLC", "NOD", "WMO"} |
|
static const std::string | dateformat |
| Applied 8-digit date format, "%Y%m%d".
|
|
static const std::string | timeformat |
| Applied 6-digit date format, "%H%M%S".
|
|
static const drain::FlagResolver::dict_t | settingDict |
|
static const ODIMPathElemSeq & | attributeGroups |
| Copies contents of this to a h5 group. More...
|
|
static void | checkType (Hi5Tree &dst, EncodingODIM &odim) |
|
static const ODIMPathElemSeq & | getAttributeGroups () |
|
unitmap_t | unitMap |
| Creating a common segment for. More...
|
|
std::list< std::string > | keyList |
| Assigns values from std::string of type "value,value2,...valueN". More...
|
|