1 #ifndef WREPORT_INTERNALS_VARTABLE_H 2 #define WREPORT_INTERNALS_VARTABLE_H 6 #include <wreport/fwd.h> 8 #include <wreport/vartable.h> 39 Entry(
const Entry& other,
int new_scale,
unsigned new_bit_len,
48 int new_bit_ref)
const;
83 int new_bit_ref)
const override;
const Entry * get_alteration(int new_scale, unsigned new_bit_len, int new_bit_ref) const
Search for this alteration in the alteration chain.
Varinfo query_altered(Varcode code, int new_scale, unsigned new_bit_len, int new_bit_ref) const override
Query an altered version of the vartable.
Definition: internals/vartable.h:12
Definition: internals/vartable.h:87
Holds a variable information table.
Definition: vartable.h:30
Crex(const std::filesystem::path &pathname)
Create and load a CREX B table.
uint16_t Varcode
Holds the WMO variable code of a variable.
Definition: fwd.h:12
Information about a variable.
Definition: varinfo.h:139
bool contains(Varcode code) const override
Check if the code can be resolved to a varinfo.
std::filesystem::path m_pathname
Pathname to the file from which this vartable has been loaded.
Definition: internals/vartable.h:56
Definition: internals/vartable.h:10
Implement fast access to information about WMO variables.
Base Vartable implementation.
Definition: internals/vartable.h:52
Entry * alterations
Altered versions of this Varinfo.
Definition: internals/vartable.h:32
Bufr(const std::filesystem::path &pathname)
Create and load a BUFR B table.
std::string pathname() const override
Return the pathname of the file from which this table has been loaded.
Definition: internals/vartable.h:74
bool iterate(std::function< bool(Varinfo)> dest) const override
Iterate the whole contents of the table.
Varinfo query(Varcode code) const override
Query the Vartable.
std::filesystem::path path() const override
Return the pathname of the file from which this table has been loaded.
Definition: internals/vartable.h:76
std::vector< Entry > entries
Entries in this Vartable.
Definition: internals/vartable.h:70
_Varinfo varinfo
Master Varinfo structure for this entry.
Definition: internals/vartable.h:20
Definition: internals/vartable.h:93