libdballe  7.7
mem/cursor.h
1 #ifndef DBA_DB_MEM_CURSOR_H
2 #define DBA_DB_MEM_CURSOR_H
3 
4 #include <dballe/memdb/memdb.h>
5 #include <dballe/memdb/results.h>
6 #include <dballe/db/db.h>
7 #include <iosfwd>
8 
9 namespace dballe {
10 struct DB;
11 struct Record;
12 
13 namespace memdb {
14 template<typename T> class ValueStorage;
15 }
16 
17 namespace db {
18 
19 namespace mem {
20 struct DB;
21 
26 typedef std::vector<wreport::Varcode> AttrList;
27 
28 
29 namespace cursor {
30 
31 std::unique_ptr<db::CursorStation> createStations(mem::DB& db, unsigned modifiers, memdb::Results<memdb::Station>& res);
32 std::unique_ptr<db::CursorStationData> createStationData(mem::DB& db, unsigned modifiers, memdb::Results<memdb::StationValue>& res);
33 std::unique_ptr<db::CursorData> createData(mem::DB& db, unsigned modifiers, memdb::Results<memdb::Value>& res);
34 std::unique_ptr<db::CursorData> createDataBest(mem::DB& db, unsigned modifiers, memdb::Results<memdb::Value>& res);
35 std::unique_ptr<db::CursorSummary> createSummary(mem::DB& db, unsigned modifiers, memdb::Results<memdb::Value>& res);
36 
44 {
46  size_t idx;
47 
48  DataBestKey(const memdb::ValueStorage<memdb::Value>& values, size_t idx);
49  const memdb::Value& value() const { return *values[idx]; }
50  bool operator<(const DataBestKey& o) const;
51 };
52 std::ostream& operator<<(std::ostream& out, const DataBestKey& k);
53 
54 }
55 
56 }
57 }
58 }
59 #endif
Wrapper around a Value index that compares so that all values from which the best report should be se...
Definition: mem/cursor.h:43
Definition: mem/cursor.h:14
Copyright (C) 2008–2010 ARPA-SIM urpsim@smr.arpa.emr.it
Definition: cmdline.h:17
A value measured by a station.
Definition: value.h:25
Functions used to connect to DB-All.e and insert, query and delete data.
Definition: db.h:182
Definition: memdb/levtr.h:16