|
void | clear () override |
| Reset the bulletin.
|
|
const char * | encoding_name () const override throw () |
| Type of source/target encoding.
|
|
void | load_tables () override |
| Load a new set of tables to use for encoding this message.
|
|
std::string | encode () const override |
| Encode the message.
|
|
void | print_details (FILE *out) const override |
| Print format-specific details.
|
|
unsigned | diff_details (const Bulletin &msg) const override |
| Diff format-specific details.
|
|
Subset & | obtain_subset (unsigned subsection) |
| Get a Subset from the message.
|
|
const Subset & | subset (unsigned subsection) const |
| Get a Subset from the message.
|
|
void | print (FILE *out) const |
| Dump the contents of this bulletin.
|
|
void | print_structured (FILE *out) const |
| Dump the contents of this bulletin, in a more structured way.
|
|
void | print_datadesc (FILE *out, unsigned indent=0) const |
| Pretty-print the data descriptor section.
|
|
virtual unsigned | diff (const Bulletin &msg) const |
| Compute the differences between two bulletins.
|
|
|
static bool | read (FILE *in, std::string &buf, const char *fname=0, off_t *offset=0) |
| Read an encoded BUFR message from a stream.
|
|
static void | write (const std::string &buf, FILE *out, const char *fname=0) |
| Write an encoded BUFR message to a stream.
|
|
static std::unique_ptr< BufrBulletin > | create () |
| To prevent breaking ABI if new members are added to bulletins, direct construction is discouraged in favour of an allocator function.
|
|
static std::unique_ptr< BufrBulletin > | decode_header (const std::string &raw, const char *fname="(memory)", size_t offset=0) |
| Parse only the header of an encoded BUFR message.
|
|
static std::unique_ptr< BufrBulletin > | decode_header (const std::string &raw, const BufrCodecOptions &opts, const char *fname="(memory)", size_t offset=0) |
| Parse only the header of an encoded BUFR message.
|
|
static std::unique_ptr< BufrBulletin > | decode (const std::string &raw, const char *fname="(memory)", size_t offset=0) |
| Parse an encoded BUFR message.
|
|
static std::unique_ptr< BufrBulletin > | decode_verbose (const std::string &raw, FILE *out, const char *fname="(memory)", size_t offset=0) |
| Parse an encoded BUFR message, printing decoding information.
|
|
static std::unique_ptr< BufrBulletin > | decode (const std::string &raw, const BufrCodecOptions &opts, const char *fname="(memory)", size_t offset=0) |
| Parse an encoded BUFR message.
|
|
|
uint8_t | edition_number = 4 |
| BUFR edition number.
|
|
uint8_t | master_table_version_number = 19 |
| Version number of BUFR master table used.
|
|
uint8_t | master_table_version_number_local = 0 |
| Version number of local table used to augment the master table.
|
|
bool | compression |
| Whether the message is compressed.
|
|
std::string | optional_section |
| Raw optional section of the message.
|
|
unsigned | section_end [6] = { 0, 0, 0, 0, 0, 0 } |
| Offsets of the end of BUFR sections.
|
|
std::string | fname |
| Input file name (optional).
|
|
off_t | offset = 0 |
| File offset of the start of the message.
|
|
uint8_t | master_table_number = 0 |
| BUFR Master table number.
|
|
uint8_t | data_category = 0xff |
| Data category (BUFR or CREX Table A)
|
|
uint8_t | data_subcategory = 0xff |
| International data sub-category (see Common Code table C-13)
|
|
uint8_t | data_subcategory_local = 0xff |
| Local data sub-category, defined locally by automatic data-processing (ADP) centres.
|
|
uint16_t | originating_centre = 0xffff |
| Identification of originating/generating centre (see Common Code table C-11)
|
|
uint16_t | originating_subcentre = 0xffff |
| Identification of originating/generating sub-centre (allocated by originating/generating centre - see Common Code table C-12)
|
|
uint8_t | update_sequence_number = 0 |
| Update sequence number (zero for original messages and for messages containing only delayed reports; incremented for the other updates)
|
|
uint16_t | rep_year = 0 |
| Reference year in bulletin header.
|
|
uint8_t | rep_month = 0 |
| Reference month in bulletin header.
|
|
uint8_t | rep_day = 0 |
| Reference day in bulletin header.
|
|
uint8_t | rep_hour = 0 |
| Reference hour in bulletin header.
|
|
uint8_t | rep_minute = 0 |
| Reference minute in bulletin header.
|
|
uint8_t | rep_second = 0 |
| Reference second in bulletin header.
|
|
Tables | tables |
| Varcode and opcode tables used for encoding or decoding.
|
|
std::vector< Varcode > | datadesc |
| Parsed data descriptor section.
|
|
std::vector< Subset > | subsets |
| Decoded variables.
|
|
BUFR bulletin implementation.
uint8_t wreport::BufrBulletin::master_table_version_number = 19 |
Version number of BUFR master table used.
See WMO Manual on Codes, Binary codes, FM94-XIV BUFR, Section 1 Identification section, note 5, or FB95-XIV CREX, Specification of sections, note 3, for a list.