|
| VerboseDataSectionDecoder (Bulletin &bulletin, DecoderTarget &target, FILE *out) |
|
void | b_variable (Varcode code) override |
| Notify of a B variable entry.
|
|
void | c_modifier (Varcode code, Opcodes &next) override |
| Notify of a C modifier.
|
|
void | r_replication (Varcode code, Varcode delayed_code, const Opcodes &ops) override |
| Handle a replicated section.
|
|
void | run_d_expansion (Varcode code) override |
| Executes the expansion of code, which has been put on top of the opcode stack.
|
|
unsigned | define_delayed_replication_factor (Varinfo info) override |
| Request processing, according to info, of a data variabile that is significant for controlling the encoding process.
|
|
unsigned | define_associated_field_significance (Varinfo info) override |
| Request processing of an associated field significance variable (B31021).
|
|
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.
|
|
void | define_c03_refval_override (Varcode code) override |
| Request processing of a new value for the reference value of the given B code.
|
|
void | define_bitmap (unsigned bitmap_size) override |
| Request processing of a data present bitmap.
|
|
void | define_attribute (Varinfo info, unsigned pos) override |
| Request processing of an attribute encoded with info, related to the variable as position pos in the list of previous variables.
|
|
void | define_substituted_value (unsigned pos) override |
| Request processing of a substituted value corresponding to position pos in the list or previous variables.
|
|
void | define_variable (Varinfo info) override |
| Request processing, according to info, of a data variable.
|
|
void | define_variable_with_associated_field (Varinfo info) override |
| Request processing, according to info, of a data variable.
|
|
void | define_raw_character_data (Varcode code) override |
| Request processing of C05yyy raw character data.
|
|
| DataSectionDecoder (Bulletin &bulletin, DecoderTarget &target) |
|
| Interpreter (const Tables &tables, const Opcodes &opcodes) |
|
| Interpreter (const Interpreter &)=delete |
|
Interpreter & | operator= (const Interpreter &)=delete |
|
void | run () |
| Run the interpreter.
|
|
virtual void | r_bitmap (Varcode code, Varcode delayed_code, const Opcodes &ops) |
| Handle a replicated section which defines a bitmap.
|
|
virtual void | run_r_repetition (unsigned cur, unsigned total) |
| Executes a repetition of the opcodes on top of the stack.
|
|
|
FILE * | out |
|
unsigned | indent = 0 |
| Current indent level.
|
|
unsigned | indent_step = 2 |
| How many spaces in an indentation level.
|
|
DecoderTarget & | target |
|
const Tables & | tables |
|
std::stack< Opcodes > | opcode_stack |
|
Bitmaps | bitmaps |
| Bitmap iteration.
|
|
AssociatedField | associated_field |
| Current associated field state.
|
|
int | c_scale_change = 0 |
| Current value of scale change from C modifier.
|
|
int | c_width_change = 0 |
| Current value of width change from C modifier.
|
|
int | c_scale_ref_width_increase = 0 |
| Increase of scale, reference value and data width.
|
|
int | c_string_len_override = 0 |
| Current value of string length override from C08 modifiers (0 for no override)
|
|
std::map< wreport::Varcode, uint32_t > | c03_refval_overrides |
| Current reference value overrides.
|
|
unsigned | c03_refval_override_bits = 0 |
| Set to the number of reference value override bits while reading the override values.
|
|
unsigned wreport::bufr::VerboseDataSectionDecoder::define_delayed_replication_factor |
( |
Varinfo |
info | ) |
|
|
overridevirtual |
Request processing, according to info, of a data variabile that is significant for controlling the encoding process.
This means that the variable has always the same value on all datasets (in case of compressed datasets), and that the interpreter needs to know its value.
- Returns
- the value of the variable, or 0xffffffff if it is unset
Reimplemented from wreport::bufr::DataSectionDecoder.