libwreport 3.40
dtable.h
1#ifndef WREPORT_DTABLE_H
2#define WREPORT_DTABLE_H
3
4#include <filesystem>
5#include <string>
6#include <vector>
7#include <wreport/opcodes.h>
8
9namespace wreport {
10
14class DTable
15{
16public:
17 virtual ~DTable();
18
20 [[deprecated("Use path() instead")]] virtual std::string
21 pathname() const = 0;
22
32 virtual Opcodes query(Varcode var) const = 0;
33
35 virtual std::filesystem::path path() const = 0;
36
43 static const DTable* load_bufr(const std::string& pathname);
44
51 static const DTable* load_crex(const std::string& pathname);
52};
53
54} // namespace wreport
55
56#endif
BUFR/CREX table D with Dxxyyy aggregate code expansions.
Definition dtable.h:15
static const DTable * load_bufr(const std::string &pathname)
Return a BUFR D table, by file name.
virtual std::filesystem::path path() const =0
Return the pathname of the file from which this table has been loaded.
virtual Opcodes query(Varcode var) const =0
Query the DTable.
virtual std::string pathname() const =0
Return the pathname of the file from which this table has been loaded.
static const DTable * load_crex(const std::string &pathname)
Return a CREX D table, by file name.
String functions.
Definition benchmark.h:13
uint16_t Varcode
Holds the WMO variable code of a variable.
Definition fwd.h:12
Sequence of opcodes, as a slice of a Varcode vector.
Definition opcodes.h:20