libwreport 3.40
dds-scanfeatures.h
1#ifndef WREPORT_BULLETIN_DDS_SCANFEATURES_H
2#define WREPORT_BULLETIN_DDS_SCANFEATURES_H
3
4#include <set>
5#include <wreport/bulletin/interpreter.h>
6
7namespace wreport {
8namespace bulletin {
9
14{
15public:
17 std::set<std::string> features;
18
19 ScanFeatures(const Tables& tables, const Opcodes& opcodes);
20
21 void c_modifier(Varcode code, Opcodes& next) override;
22 void r_replication(Varcode code, Varcode delayed_code,
23 const Opcodes& ops) override;
24 void define_variable(Varinfo info) override;
25 void define_bitmap(unsigned bitmap_size) override;
28};
29
30} // namespace bulletin
31} // namespace wreport
32#endif
Interpreter that scans what features are used by a bulletin.
Definition dds-scanfeatures.h:14
unsigned define_bitmap_delayed_replication_factor(Varinfo info) override
Request processing of a delayed replication factor variable used to encode the size of a bitmap.
std::set< std::string > features
Features that have been found.
Definition dds-scanfeatures.h:17
void define_variable(Varinfo info) override
Request processing, according to info, of a data variable.
void define_bitmap(unsigned bitmap_size) override
Request processing of a data present bitmap.
void c_modifier(Varcode code, Opcodes &next) override
Notify of a C modifier.
unsigned define_associated_field_significance(Varinfo info) override
Request processing of an associated field significance variable (B31021).
void r_replication(Varcode code, Varcode delayed_code, const Opcodes &ops) override
Handle a replicated section.
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
Collection of BUFR/CREX tables used to work on a bulletin.
Definition tables.h:15
Information about a variable.
Definition varinfo.h:140
Interpreter for data descriptor sections.
Definition interpreter.h:26