libdballe 9.13
fwd.h
1#ifndef DBALLE_FWD_H
2#define DBALLE_FWD_H
3
4#include <limits.h>
5
6namespace dballe {
7
9enum class Encoding {
10 BUFR = 0,
11 CREX = 1,
12 JSON = 2,
13};
14
16enum class MessageType {
17 GENERIC = 1,
18 SYNOP = 2,
19 PILOT = 3,
20 TEMP = 4,
21 TEMP_SHIP = 5,
22 AIREP = 6,
23 AMDAR = 7,
24 ACARS = 8,
25 SHIP = 9,
26 BUOY = 10,
27 METAR = 11,
28 SAT = 12,
29 POLLUTION = 13,
30};
31
35static constexpr int MISSING_INT = INT_MAX;
36
37// Types
38struct Date;
39struct Time;
40struct Datetime;
41struct DatetimeRange;
42struct Coords;
43struct LatRange;
44struct LonRange;
45struct Level;
46struct Trange;
47struct Ident;
48struct Report;
49struct Station;
50struct DBStation;
51
52struct Value;
53struct DBValue;
54
55// Aggregates
56struct Values;
57struct DBValues;
58struct Data;
59struct Query;
60struct Message;
61
62// File
63struct File;
64struct BinaryMessage;
65
66// Importer
67struct ImporterOptions;
68struct Importer;
69
70// Exporter
71struct ExporterOptions;
72struct Exporter;
73
74struct DB;
75struct DBConnectOptions;
76struct DBImportOptions;
77struct DBInsertOptions;
78struct Transaction;
79struct Cursor;
80struct CursorStation;
82struct CursorData;
83struct CursorSummary;
84struct CursorMessage;
85
86namespace db {
87
91enum class Format {
92 V5 = 0, // Deprecated (add C++14 attributes when possible)
93 V6 = 1, // Deprecated (add C++14 attributes when possible)
94 MEM = 2, // Deprecated (add C++14 attributes when possible)
95 MESSAGES = 3, // Deprecated (add C++14 attributes when possible)
96 V7 = 4,
97};
98
99} // namespace db
100
101} // namespace dballe
102
103#endif
Binary message.
Definition file.h:135
Cursor iterating over data values.
Definition cursor.h:79
Cursor iterating over messages.
Definition cursor.h:119
Cursor iterating over station data values.
Definition cursor.h:68
Cursor iterating over stations.
Definition cursor.h:58
Cursor iterating over summary entries.
Definition cursor.h:99
Base class for cursors that iterate over DB query results.
Definition cursor.h:16
Options controlling how to connect to a database.
Definition db.h:18
Options controlling how messages are imported in the database.
Definition db.h:65
Options controlling how values are inserted in the database.
Definition db.h:123
Definition db.h:308
Key/value store where keys are strings and values are wreport variables.
Definition data.h:18
Options to control message export.
Definition exporter.h:25
Message exporter interface.
Definition exporter.h:65
File object for doing I/O on binary message streams.
Definition file.h:18
A station identifier, that can be any string (including the empty string) or a missing value.
Definition types.h:751
Options to control message import.
Definition importer.h:25
Message importer interface.
Definition importer.h:69
A bulletin that has been decoded and physically interpreted.
Definition message.h:29
Query used to filter DB-All.e data.
Definition query.h:17
A report name.
Definition types.h:816
Definition db.h:150
Container for a wreport::Var pointer.
Definition value.h:19
Coordinates.
Definition types.h:372
Definition types.h:940
Container for a wreport::Var pointer, and its database ID.
Definition value.h:71
Collection of DBValue objects, indexed by wreport::Varcode.
Definition values.h:230
Calendar date.
Definition types.h:28
Range of datetimes.
Definition types.h:297
Date and time.
Definition types.h:164
Range of latitudes.
Definition types.h:470
Vertical level or layer.
Definition types.h:625
Range of longitudes.
Definition types.h:553
Station information.
Definition types.h:879
Time of the day.
Definition types.h:100
Information on how a value has been sampled or computed with regards to time.
Definition types.h:689
Collection of Value objects, indexed by wreport::Varcode.
Definition values.h:216