libwreport  3.38
dtable.h
1 #ifndef WREPORT_DTABLE_H
2 #define WREPORT_DTABLE_H
3 
4 #include <wreport/opcodes.h>
5 #include <filesystem>
6 #include <string>
7 #include <vector>
8 
9 namespace wreport {
10 
14 class DTable
15 {
16 public:
17  virtual ~DTable();
18 
20  [[deprecated("Use path() instead")]] virtual std::string pathname() const = 0;
21 
31  virtual Opcodes query(Varcode var) const = 0;
32 
34  virtual std::filesystem::path path() const = 0;
35 
42  static const DTable* load_bufr(const std::string& pathname);
43 
50  static const DTable* load_crex(const std::string& pathname);
51 };
52 
53 
54 }
55 
56 #endif
BUFR/CREX table D with Dxxyyy aggregate code expansions.
Definition: dtable.h:15
virtual std::filesystem::path path() 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.
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_bufr(const std::string &pathname)
Return a BUFR 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