Public Member Functions | Public Attributes | List of all members
SourceODIM Class Reference
Inheritance diagram for SourceODIM:
Inheritance graph
[legend]
Collaboration diagram for SourceODIM:
Collaboration graph
[legend]

Public Member Functions

 SourceODIM (const std::string &source="")
 Sets NOD, WMO, RAD, CTY and ORG. More...
 
 SourceODIM (const SourceODIM &s)
 
const std::string & getSourceCode () const
 Derives a most standard name. Returns the first-non empty value of NOD, RAD, WMO, WIGOS, PLC, ORG, CTY, CMT. More...
 
- Public Member Functions inherited from FlexVariableMap
 FlexVariableMap (char separator='\0')
 
 FlexVariableMap (const FlexVariableMap &m)
 Copies a map like VariableMap does - creates an own entry for every input entry.
 
FlexVariableMapoperator= (const FlexVariableMap &v)
 
template<class T >
FlexVariableMaplink (const std::string &key, T &target)
 
void clearVariables ()
 
- Public Member Functions inherited from SmartMap< FlexibleVariable >
 SmartMap (char separator='\0', char arraySeparator=':')
 
 SmartMap (const SmartMap &smap)
 
virtual void clear ()
 
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 FlexibleVariableoperator[] (const std::string &key)
 Returns an element. Creates one, conditionally. More...
 
virtual const FlexibleVariableoperator[] (const std::string &key) const
 Unlike with std::map, operator[] const is defined, returning reference to a static empty instance.
 
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...
 

Public Attributes

std::string source
 
std::string WMO
 
std::string RAD
 
std::string NOD
 
std::string PLC
 
std::string ORG
 
std::string CTY
 
std::string CMT
 
std::string WIGOS
 
- Public Attributes inherited from SmartMap< FlexibleVariable >
char separator
 Default character used for splitting input and output. See setValues.
 
char arraySeparator
 Default separator character for array elements (std::vector's)
 

Additional Inherited Members

- Public Types inherited from SmartMap< FlexibleVariable >
typedef SmartMap< FlexibleVariablesmap_t
 
typedef std::map< std::string, FlexibleVariablemap_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
 
- Protected Attributes inherited from SmartMap< FlexibleVariable >
std::list< std::string > keyList
 Assigns values from std::string of type "value,value2,...valueN". More...
 

Constructor & Destructor Documentation

◆ SourceODIM()

SourceODIM ( const std::string &  source = "")

Sets NOD, WMO, RAD, CTY and ORG.

Parameters
source- ODIM source std::string separated with ':', eg. "what:source=WMO:02870,RAD:FI47,PLC:Utajärvi,NOD:fiuta"

Note: some radars have had semicolon as separator: RAD:NL51;PLC:nldhl

Member Function Documentation

◆ getSourceCode()

const std::string & getSourceCode ( ) const

Derives a most standard name. Returns the first-non empty value of NOD, RAD, WMO, WIGOS, PLC, ORG, CTY, CMT.

Codes in checked in their order of initialization, see init().


The documentation for this class was generated from the following files: