|
libwreport
2.9
|
Visitor-style interface for scanning the contents of a data descriptor section. More...
#include <opcode.h>
Public Member Functions | |
| virtual void | b_variable (Varcode code) |
| Notify of a B variable entry. More... | |
| virtual void | c_modifier (Varcode code) |
| Notify of a C modifier. More... | |
| virtual void | c_change_data_width (Varcode code, int change) |
| Notify a change of data width. More... | |
| virtual void | c_change_data_scale (Varcode code, int change) |
| Notify a change of data scale. More... | |
| virtual void | c_associated_field (Varcode code, Varcode sig_code, unsigned nbits) |
| Notify the declaration of an associated field for the next values. More... | |
| virtual void | c_char_data (Varcode code) |
| Notify raw character data encoded via a C modifier. More... | |
| virtual void | c_char_data_override (Varcode code, unsigned new_length) |
| Notify an override of character data length. More... | |
| virtual void | c_quality_information_bitmap (Varcode code) |
| Notify a bitmap for quality information data. More... | |
| virtual void | c_substituted_value_bitmap (Varcode code) |
| Notify a bitmap for substituted values. More... | |
| virtual void | c_substituted_value (Varcode code) |
| Notify a substituted value. More... | |
| virtual void | c_local_descriptor (Varcode code, Varcode desc_code, unsigned nbits) |
| Notify the length of the following local descriptor. More... | |
| virtual void | r_replication (Varcode code, Varcode delayed_code, const Opcodes &ops) |
| Notify a replicated section. More... | |
| virtual void | d_group_begin (Varcode code) |
| Notify the start of a D group. More... | |
| virtual void | d_group_end (Varcode code) |
| Notify the end of a D group. More... | |
| virtual void | c_increase_scale_ref_width (Varcode code, int change) |
| Notify an increase of scale, reference value and data width. More... | |
Data Fields | |
| const DTable * | dtable |
| D table to use to expand D groups. More... | |
Visitor-style interface for scanning the contents of a data descriptor section.
This supports scanning the DDS without looking at the data, so it cannot be used for encoding/decoding, as it cannot access the data that controls decoding such as delayed replicator factors or data descriptor bitmaps.
All interface methods have a default implementations that do nothing, so you can override only what you need.
|
virtual |
Notify of a B variable entry.
| code | The B variable code |
Reimplemented in wreport::opcode::Printer, and wreport::bulletin::Visitor.
|
virtual |
Notify the declaration of an associated field for the next values.
| code | The C modifier code |
| sig_code | The B code of the associated field significance opcode (or 0 to mark the end of the associated field encoding) |
| nbits | The number of bits used for the associated field. |
Reimplemented in wreport::opcode::Printer, and wreport::bulletin::Visitor.
|
virtual |
Notify a change of data scale.
| code | The C modifier code |
| change | The scale change (positive or negative) |
Reimplemented in wreport::opcode::Printer, and wreport::bulletin::Visitor.
|
virtual |
Notify a change of data width.
| code | The C modifier code |
| change | The width change (positive or negative) |
Reimplemented in wreport::opcode::Printer, and wreport::bulletin::Visitor.
|
virtual |
Notify raw character data encoded via a C modifier.
| code | The C modifier code |
Reimplemented in wreport::opcode::Printer, and wreport::bulletin::Visitor.
|
virtual |
Notify an override of character data length.
| code | The C modifier code |
| new_length | New length of all following character data (or 0 to reset to default) |
Reimplemented in wreport::opcode::Printer, and wreport::bulletin::Visitor.
|
virtual |
Notify an increase of scale, reference value and data width.
| code | The C modifier code |
| change | The increase, to be handled according to table C, X=7 |
Reimplemented in wreport::bulletin::Visitor.
|
virtual |
Notify the length of the following local descriptor.
| code | The C modifier code |
| desc_code | Local descriptor for which the length is provided |
| nbits | Bit size of the data described by desc_code |
Reimplemented in wreport::opcode::Printer, and wreport::bulletin::Visitor.
|
virtual |
Notify of a C modifier.
Whenever the modifier is a supported one, this is followed by an invocation of one of the specific c_* methods.
| code | The C modifier code |
Reimplemented in wreport::opcode::Printer, and wreport::bulletin::Visitor.
|
virtual |
Notify a bitmap for quality information data.
| code | The C modifier code |
Reimplemented in wreport::opcode::Printer, and wreport::bulletin::Visitor.
|
virtual |
Notify a substituted value.
| code | The C modifier code |
Reimplemented in wreport::opcode::Printer, and wreport::bulletin::Visitor.
|
virtual |
Notify a bitmap for substituted values.
| code | The C modifier code |
Reimplemented in wreport::opcode::Printer, and wreport::bulletin::Visitor.
|
virtual |
Notify the start of a D group.
| code | The D code that is being expanded |
Reimplemented in wreport::opcode::Printer, and wreport::bulletin::DDSPrinter.
|
virtual |
Notify the end of a D group.
| code | The D code that has just been expanded |
Reimplemented in wreport::opcode::Printer, and wreport::bulletin::DDSPrinter.
|
virtual |
Notify a replicated section.
| code | The R replication code |
| delayed_code | The delayed replication B code, or 0 if delayed replication is not used |
| ops | The replicated operators |
Reimplemented in wreport::opcode::Printer, wreport::bulletin::Visitor, and wreport::bulletin::DDSPrinter.
| const DTable* wreport::opcode::Visitor::dtable |
D table to use to expand D groups.
This must be provided by the caller
1.8.6