1 #ifndef DBALLE_DB_V7_SQLITE_DATA_H
2 #define DBALLE_DB_V7_SQLITE_DATA_H
4 #include <dballe/db/v7/data.h>
5 #include <dballe/db/v7/cache.h>
15 template<
typename Parent>
42 void update(
Tracer<>& trc, std::vector<typename Parent::BatchValue>& vars,
bool with_attrs)
override;
43 void read_attrs(
Tracer<>& trc,
int id_data, std::function<
void(std::unique_ptr<wreport::Var>)> dest)
override;
44 void write_attrs(
Tracer<>& trc,
int id_data,
const Values& values)
override;
45 void remove_all_attrs(
Tracer<>& trc,
int id_data)
override;
47 void remove_by_id(
Tracer<>& trc,
int id)
override;
59 using SQLiteDataCommon::SQLiteDataCommon;
64 void insert(
Tracer<>& trc,
int id_station, std::vector<batch::StationDatum>& vars,
bool with_attrs)
override;
66 void dump(FILE* out)
override;
67 void clear_cache()
override {}
76 using SQLiteDataCommon::SQLiteDataCommon;
81 void insert(
Tracer<>& trc,
int id_station,
const Datetime& datetime, std::vector<batch::MeasuredDatum>& vars,
bool with_attrs)
override;
84 void dump(FILE* out)
override;
85 void clear_cache()
override {}
dballe::sql::SQLiteConnection & conn
DB connection.
Definition: db/v7/sqlite/data.h:20
Definition: qbuilder.h:115
Definition: qbuilder.h:124
dballe::sql::SQLiteStatement * write_attrs_stm
Precompiled write attributes statement.
Definition: db/v7/sqlite/data.h:25
Smart pointer for trace::Step objects, which calls done() when going out of scope.
Definition: db/v7/fwd.h:45
dballe::sql::SQLiteStatement * read_attrs_stm
Precompiled read attributes statement.
Definition: db/v7/sqlite/data.h:23
Definition: db/v7/sqlite/data.h:16
Definition: transaction.h:15
Range of datetimes.
Definition: types.h:294
Precompiled query to manipulate the station data table.
Definition: db/v7/sqlite/data.h:56
SQLite statement.
Definition: sqlite.h:98
Collection of Value objects, indexed by wreport::Varcode.
Definition: values.h:176
dballe::sql::SQLiteStatement * remove_attrs_stm
Precompiled remove attributes statement.
Definition: db/v7/sqlite/data.h:27
Precompiled query to manipulate the data table.
Definition: db/v7/sqlite/data.h:73
dballe::sql::SQLiteStatement * istm
Precompiled insert statement.
Definition: db/v7/sqlite/data.h:31
dballe::sql::SQLiteStatement * ustm
Precompiled update statement.
Definition: db/v7/sqlite/data.h:33
Date and time.
Definition: types.h:164
Database connection.
Definition: sqlite.h:34
Definition: qbuilder.h:91
dballe::sql::SQLiteStatement * sstm
Precompiled select statement.
Definition: db/v7/sqlite/data.h:29