libwreport  3.10
Namespaces | Data Structures | Typedefs | Enumerations | Functions
wreport Namespace Reference

String functions. More...

Namespaces

 bulletin
 The bulletin namespace contains bulletin implementation details, internals and utility functions.
 
 notes
 Collect notes about unusual things that happen during processing.
 

Data Structures

struct  Bulletin
 Storage for the decoded data of a BUFR or CREX message. More...
 
struct  BufrCodecOptions
 Options used to configure BUFR decoding. More...
 
struct  BufrBulletin
 BUFR bulletin implementation. More...
 
struct  CrexBulletin
 CREX bulletin implementation. More...
 
struct  DTable
 BUFR/CREX table D with Dxxyyy aggregate code expansions. More...
 
struct  error
 Base class for DB-All.e exceptions. More...
 
struct  error_alloc
 Reports that memory allocation has failed. More...
 
struct  error_notfound
 Reports that a search-like function could not find what was requested. More...
 
struct  error_type
 For functions handling data with multiple types, reports a mismatch between the type requested and the type found. More...
 
struct  error_handles
 For functions working with handles, reports a problem with handling handles, such as impossibility to allocate a new one, or an invalid handle being passed to the function. More...
 
struct  error_toolong
 Report an error with a buffer being to short for the data it needs to fit. More...
 
struct  error_system
 Report a system error message. More...
 
struct  error_consistency
 Report an error when a consistency check failed. More...
 
struct  error_parse
 Report an error when parsing informations. More...
 
struct  error_regexp
 Report an error while handling regular expressions. More...
 
struct  error_unimplemented
 Reports that a feature is still not implemented. More...
 
struct  error_domain
 Report that a parameter is outside the acceptable domain. More...
 
struct  Opcodes
 Sequence of opcodes, as a slice of a Varcode vector. More...
 
struct  Subset
 Represent a BUFR/CREX data subset as a list of decoded variables. More...
 
struct  BufrTableID
 Identifying information for one distinct instance of BUFR tables. More...
 
struct  CrexTableID
 Identifying information for one distinct instance of CREX tables. More...
 
struct  Tables
 Collection of BUFR/CREX tables used to work on a bulletin. More...
 
class  Var
 A physical variable. More...
 
struct  _Varinfo
 Information about a variable. More...
 
struct  Vartable
 Holds a variable information table. More...
 

Typedefs

typedef uint16_t Varcode
 Holds the WMO variable code of a variable.
 
typedef const _VarinfoVarinfo
 Varinfo reference. More...
 

Enumerations

enum  ErrorCode {
  WR_ERR_NONE = 0, WR_ERR_NOTFOUND = 1, WR_ERR_TYPE = 2, WR_ERR_ALLOC = 3,
  WR_ERR_ODBC = 4, WR_ERR_HANDLES = 5, WR_ERR_TOOLONG = 6, WR_ERR_SYSTEM = 7,
  WR_ERR_CONSISTENCY = 8, WR_ERR_PARSE = 9, WR_ERR_WRITE = 10, WR_ERR_REGEX = 11,
  WR_ERR_UNIMPLEMENTED = 12, WR_ERR_DOMAIN = 13
}
 C-style error codes used by exceptions. More...
 
enum  Vartype : unsigned { Integer, Decimal, String, Binary }
 Variable type.
 

Functions

double convert_units (const char *from, const char *to, double val)
 Convert between different units. More...
 
double convert_icao_to_press (double from)
 Convert ICAO height (in meters) to pressure (in hpa) and back.
 
double convert_press_to_icao (double from)
 Convert pressure (in hpa) to ICAO height (in meters)
 
double convert_octants_to_degrees (int from)
 Convert wind direction (in octants) to degrees.
 
int convert_degrees_to_octants (double from)
 Convert wind direction (in degrees) to octancts.
 
unsigned convert_AOFVSS_to_BUFR08042 (unsigned from)
 Convert vertical sounding significance from the AOF encoding to BUFR code table 08001.
 
double convert_units_get_mul (const char *from, const char *to)
 Get the multiplier used in the given conversion. More...
 
bool convert_units_allowed (const char *from, const char *to)
 Check if conversion is possible among the given units. More...
 
std::string varcode_format (Varcode code)
 Format a varcode into a string.
 
Varcode varcode_parse (const char *desc)
 Convert a FXXYYY string descriptor code into its short integer representation. More...
 
const char * vartype_format (Vartype type)
 Return a string description of a Vartype.
 
Vartype vartype_parse (const char *s)
 Return a Vartype from its string description.
 
int convert_WMO0500_to_BUFR20012 (int from)
 Conversion functions between various code tables. More...
 
int convert_WMO0509_to_BUFR20012 (int from)
 Cloud type (CH)
 
int convert_WMO0515_to_BUFR20012 (int from)
 Cloud type (CM)
 
int convert_WMO0513_to_BUFR20012 (int from)
 Cloud type (CL)
 
int convert_WMO4677_to_BUFR20003 (int from)
 Present weather.
 
int convert_WMO4561_to_BUFR20004 (int from)
 Past weather.
 
int convert_BUFR20012_to_WMO0500 (int from)
 Cloud type.
 
int convert_BUFR20012_to_WMO0509 (int from)
 Cloud type (CH)
 
int convert_BUFR20012_to_WMO0515 (int from)
 Cloud type (CM)
 
int convert_BUFR20012_to_WMO0513 (int from)
 Cloud type (CL)
 
int convert_BUFR20003_to_WMO4677 (int from)
 Present weather.
 
int convert_BUFR20004_to_WMO4561 (int from)
 Past weather.
 
unsigned convert_BUFR08001_to_BUFR08042 (unsigned from)
 Vertical sounding significance.
 
unsigned convert_BUFR08042_to_BUFR08001 (unsigned from)
 Vertical sounding significance.
 

Detailed Description

String functions.

Utility functions for the unit tests.

Operating system functions.

Author
Enrico Zini enric.nosp@m.o@en.nosp@m.ricoz.nosp@m.ini..nosp@m.org Copyright (C) 2007–2015 Enrico Zini enric.nosp@m.o@de.nosp@m.bian..nosp@m.org
Enrico Zini enric.nosp@m.o@en.nosp@m.ricoz.nosp@m.ini..nosp@m.org, Peter Rockai (mornfall) me@mo.nosp@m.rnfa.nosp@m.ll.ne.nosp@m.t Copyright (C) 2006–2007 Peter Rockai (mornfall) me@mo.nosp@m.rnfa.nosp@m.ll.ne.nosp@m.t Copyright (C) 2003–2017 Enrico Zini enric.nosp@m.o@de.nosp@m.bian..nosp@m.org

Typedef Documentation

typedef const _Varinfo* wreport::Varinfo

Varinfo reference.

Since the actual structures are allocated inside the Vartable objects and never deallocated until the program quits, we do not need to track memory allocation and we can just refer to variable information with const pointers.

Enumeration Type Documentation

C-style error codes used by exceptions.

Enumerator
WR_ERR_NONE 

No error.

Function Documentation

double wreport::convert_units ( const char *  from,
const char *  to,
double  val 
)

Convert between different units.

Parameters
fromUnit of the value to convert (see wreport::Varinfo)
toUnit to convert to (see wreport::Varinfo)
valValue to convert
Return values
resConverted value
Returns
The error indicator for the function (See error.h)
bool wreport::convert_units_allowed ( const char *  from,
const char *  to 
)

Check if conversion is possible among the given units.

Parameters
fromUnit of the value to convert (see wreport::Varinfo)
toUnit to convert to (see wreport::Varinfo)
Returns
True if conversion is supported, else false.
double wreport::convert_units_get_mul ( const char *  from,
const char *  to 
)

Get the multiplier used in the given conversion.

Parameters
fromUnit of the value to convert (see wreport::Varinfo)
toUnit to convert to (see wreport::Varinfo)
Returns
Multiplier factor used in the conversion
int wreport::convert_WMO0500_to_BUFR20012 ( int  from)

Conversion functions between various code tables.

Cloud type

Varcode wreport::varcode_parse ( const char *  desc)

Convert a FXXYYY string descriptor code into its short integer representation.

Parameters
descThe 6-byte string descriptor as FXXYYY
Returns
The short integer code that can be queried with the WR_GET_* macros