libdballe
6.8
|
Structure used to build and execute a query, and to iterate through the results. More...
#include <cursor.h>
Data Structures | |
struct | SQLRecord |
Query results from SQL output. More... | |
Public Member Functions | |
virtual dballe::DB & | get_db () const |
Get the database that created this cursor. | |
int | remaining () const |
Get the number of rows still to be fetched. More... | |
virtual void | query (const Record &query)=0 |
Perform the query. | |
virtual bool | next ()=0 |
Get a new item from the results of a query. More... | |
virtual void | discard_rest ()=0 |
Discard the results that have not been read yet. | |
unsigned | query_attrs (const AttrList &qcs, Record &attrs) |
Query attributes for the current variable. | |
virtual void | attr_insert (const Record &attrs) |
Insert/overwrite new attributes for the current variable. More... | |
virtual void | attr_remove (const AttrList &qcs) |
Delete attributes for the current variable. More... | |
virtual int | get_station_id () const |
Get the station identifier. | |
virtual double | get_lat () const |
Get the station latitude. | |
virtual double | get_lon () const |
Get the station longitude. | |
virtual const char * | get_ident (const char *def=0) const |
Get the station identifier, or NULL if missing. | |
virtual const char * | get_rep_memo (const char *def=0) const |
Get the report name. | |
virtual Level | get_level () const |
Get the level. | |
virtual Trange | get_trange () const |
Get the level. | |
virtual void | get_datetime (int(&dt)[6]) const |
Get the datetime. | |
virtual wreport::Varcode | get_varcode () const |
Get the variable code. | |
virtual wreport::Var | get_var () const |
Get the variable. | |
virtual int | attr_reference_id () const |
Return an integer value that can be used to refer to the current variable for attribute access. | |
virtual unsigned | test_iterate (FILE *dump=0)=0 |
Iterate the cursor until the end, returning the number of items. More... | |
![]() | |
virtual void | to_record (Record &rec)=0 |
Fill in a record with the contents of a dba_db_cursor. More... | |
Data Fields | |
v6::DB & | db |
Database to operate on. | |
const unsigned int | modifiers |
Modifier flags to enable special query behaviours. | |
DBALLE_SQL_C_SINT_TYPE | count |
Number of results still to be fetched. | |
SQLRecord | sqlrec |
Results written by fetch. | |
Protected Member Functions | |
Cursor (v6::DB &db, unsigned int modifiers) | |
Create a query cursor. More... | |
void | to_record_pseudoana (Record &rec) |
void | to_record_repinfo (Record &rec) |
void | to_record_ltr (Record &rec) |
void | to_record_datetime (Record &rec) |
void | to_record_varcode (Record &rec) |
int | query_stations (db::Statement &stm, const Record &rec) |
int | query_data (db::Statement &stm, const Record &rec) |
void | add_station_info (Record &rec) |
Query extra station info and add it to rec. | |
Structure used to build and execute a query, and to iterate through the results.
|
protected |
Create a query cursor.
wanted | The values wanted in output |
modifiers | Optional modifiers to ask for special query behaviours |
|
virtual |
Insert/overwrite new attributes for the current variable.
attrs | The record with the attributes to be added |
Implements dballe::db::Cursor.
|
virtual |
Delete attributes for the current variable.
qcs | Array of WMO codes of the attributes to delete. If empty, all attributes associated to id_data will be deleted. |
Implements dballe::db::Cursor.
|
pure virtual |
Get a new item from the results of a query.
Implements dballe::db::Cursor.
Implemented in dballe::db::v6::CursorBest, and dballe::db::v6::CursorLinear.
|
virtual |
Get the number of rows still to be fetched.
Implements dballe::db::Cursor.
|
pure virtual |
Iterate the cursor until the end, returning the number of items.
If dump is a FILE pointer, also dump the cursor values to it
Reimplemented from dballe::db::Cursor.
Implemented in dballe::db::v6::CursorBest, dballe::db::v6::CursorDataIDs, dballe::db::v6::CursorSummary, dballe::db::v6::CursorData, and dballe::db::v6::CursorStations.