1#ifndef DBALLE_DB_V7_STATION_H
2#define DBALLE_DB_V7_STATION_H
5#include <dballe/core/fwd.h>
7#include <dballe/db/v7/fwd.h>
8#include <dballe/db/v7/cache.h>
12#include <unordered_map>
13#include <unordered_set>
28 virtual void _dump(std::function<
void(
int,
int,
const Coords& coords,
const char* ident)> out) = 0;
Smart pointer for trace::Step objects, which calls done() when going out of scope.
Definition: db/v7/fwd.h:46
Forward declarations for public dballe/sql names.
Coordinates.
Definition: types.h:369
Collection of DBValue objects, indexed by wreport::Varcode.
Definition: values.h:192
Definition: qbuilder.h:82
virtual int insert_new(Tracer<> &trc, const dballe::DBStation &desc)=0
Insert a new station in the database, without checking if it already exists.
virtual int maybe_get_id(Tracer<> &trc, const dballe::DBStation &st)=0
Get the station ID given latitude, longitude and mobile identifier.
virtual void get_station_vars(Tracer<> &trc, int id_station, std::function< void(std::unique_ptr< wreport::Var >)> dest)=0
Export station variables.
virtual void add_station_vars(Tracer<> &trc, int id_station, DBValues &values)=0
Add all station variables (without attributes) to values.
virtual void run_station_query(Tracer<> &trc, const v7::StationQueryBuilder &qb, std::function< void(const dballe::DBStation &station)>)=0
Run a station query, iterating on the resulting stations.
void dump(FILE *out)
Dump the entire contents of the table to an output stream.
virtual DBStation lookup(Tracer<> &trc, int id_station)=0
Lookup station data by ID.
Definition: transaction.h:16