libwreport  2.14
Public Member Functions | Data Fields
wreport::bulletin::ConstBaseVisitor Struct Reference

Common bulletin::Visitor base for visitors that do not modify the bulletin. More...

#include <internals.h>

Inheritance diagram for wreport::bulletin::ConstBaseVisitor:
wreport::bulletin::Visitor wreport::opcode::Visitor wreport::bulletin::DDSPrinter wreport::bulletin::DDSValidator

Public Member Functions

 ConstBaseVisitor (const Bulletin &bulletin)
 Create visitor for the given bulletin.
 
const Varget_var ()
 Get the next variable.
 
const Varget_var (unsigned var_pos) const
 Get the variable at the given position.
 
virtual void do_start_subset (unsigned subset_no, const Subset &current_subset)
 Notify the start of a subset.
 
virtual const Vardo_bitmap (Varcode code, Varcode rep_code, Varcode delayed_code, const Opcodes &ops)
 Request processing of a data present bitmap. More...
 
- Public Member Functions inherited from wreport::bulletin::Visitor
Varinfo get_varinfo (Varcode code)
 Return the Varinfo describing the variable code, possibly altered taking into account current C modifiers.
 
virtual void do_start_repetition (unsigned idx)
 Notify the beginning of one instance of an R group. More...
 
virtual void do_associated_field (unsigned bit_count, unsigned significance)=0
 Request processing of bit_count bits of associated field with the given significance.
 
virtual void do_attr (Varinfo info, unsigned var_pos, Varcode attr_code)=0
 Request processing, according to info, of the attribute attr_code of the variable in position var_pos in the current subset.
 
virtual void do_var (Varinfo info)=0
 Request processing, according to info, of a data variable.
 
virtual const Vardo_semantic_var (Varinfo info)=0
 Request processing, according to info, of a data variabile that is significant for controlling the encoding process. More...
 
virtual void do_char_data (Varcode code)=0
 Request processing of C05yyy character data.
 
virtual void b_variable (Varcode code)
 opcode::Visitor methods implementation
 
virtual void c_modifier (Varcode code)
 opcode::Visitor methods implementation
 
virtual void c_change_data_width (Varcode code, int change)
 opcode::Visitor methods implementation
 
virtual void c_change_data_scale (Varcode code, int change)
 opcode::Visitor methods implementation
 
virtual void c_associated_field (Varcode code, Varcode sig_code, unsigned nbits)
 opcode::Visitor methods implementation
 
virtual void c_char_data (Varcode code)
 opcode::Visitor methods implementation
 
virtual void c_char_data_override (Varcode code, unsigned new_length)
 opcode::Visitor methods implementation
 
virtual void c_quality_information_bitmap (Varcode code)
 opcode::Visitor methods implementation
 
virtual void c_substituted_value_bitmap (Varcode code)
 opcode::Visitor methods implementation
 
virtual void c_substituted_value (Varcode code)
 opcode::Visitor methods implementation
 
virtual void c_local_descriptor (Varcode code, Varcode desc_code, unsigned nbits)
 opcode::Visitor methods implementation
 
virtual void r_replication (Varcode code, Varcode delayed_code, const Opcodes &ops)
 opcode::Visitor methods implementation
 
virtual void c_increase_scale_ref_width (Varcode code, int change)
 opcode::Visitor methods implementation
 
- Public Member Functions inherited from wreport::opcode::Visitor
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...
 

Data Fields

const Bulletinbulletin
 Bulletin being visited.
 
unsigned current_subset_no
 Index of the subset being visited.
 
unsigned current_var
 Index of the next variable to be visited.
 
- Data Fields inherited from wreport::bulletin::Visitor
const Vartablebtable
 B table used to resolve variable information.
 
const Subsetcurrent_subset
 Current subset (used to refer to past variables)
 
Bitmap bitmap
 Bitmap iteration.
 
int c_scale_change
 Current value of scale change from C modifier.
 
int c_width_change
 Current value of width change from C modifier.
 
int c_string_len_override
 Current value of string length override from C08 modifiers (0 for no override)
 
int c_scale_ref_width_increase
 Increase of scale, reference value and data width.
 
int c04_bits
 Number of extra bits inserted by the current C04yyy modifier (0 for no C04yyy operator in use)
 
int c04_meaning
 Meaning of C04yyy field according to code table B31021.
 
Varcode want_bitmap
 Nonzero if a Data Present Bitmap is expected.
 
unsigned data_pos
 Number of data items processed so far. More...
 
- Data Fields inherited from wreport::opcode::Visitor
const DTabledtable
 D table to use to expand D groups. More...
 

Detailed Description

Common bulletin::Visitor base for visitors that do not modify the bulletin.

This assumes a fully decoded bulletin.

Member Function Documentation

virtual const Var& wreport::bulletin::ConstBaseVisitor::do_bitmap ( Varcode  code,
Varcode  rep_code,
Varcode  delayed_code,
const Opcodes ops 
)
virtual

Request processing of a data present bitmap.

Parameters
codeThe C modifier code that defines the bitmap
rep_codeThe R replicator that defines the bitmap
delayed_codeThe B delayed replicator that defines the bitmap length (it is 0 if the length is encoded in the YYY part of rep_code
opsThe replicated opcodes that define the bitmap
Returns
The bitmap that has been processed.

Implements wreport::bulletin::Visitor.

Reimplemented in wreport::bulletin::DDSPrinter.


The documentation for this struct was generated from the following file: