4 #include <dballe/fwd.h> 6 #include <wreport/var.h> 56 virtual void clear() = 0;
71 virtual void foreach_key(std::function<
void(
const char*,
wreport::Var&&)> dest)
const = 0;
75 virtual void print(FILE* out)
const = 0;
78 virtual std::unique_ptr<Query>
clone()
const = 0;
81 static std::unique_ptr<Query>
create();
84 virtual bool empty()
const = 0;
Common base types used by most of DB-All.e code.
static std::unique_ptr< Query > create()
Create a new Query.
virtual void print(FILE *out) const =0
Print the query contents to stderr.
virtual void set_datetimerange(const DatetimeRange &dt)=0
Set the Datetime range for this query.
virtual bool is_subquery(const Query &other) const =0
Return true if this query matches a subset of the given query.
Information on how a value has been sampled or computed with regards to time.
Definition: types.h:686
virtual bool empty() const =0
Check if the query is empty, that is, it queries everything.
Vertical level or layer.
Definition: types.h:624
virtual void set_trange(const Trange &trange)=0
Set the level to be matched.
virtual std::unique_ptr< Query > clone() const =0
Return a copy of this query.
Range of datetimes.
Definition: types.h:294
virtual DatetimeRange get_datetimerange() const =0
Get the Datetime bounds set in this query.
virtual void set_level(const Level &level)=0
Set the level to be matched.
Range of latitudes.
Definition: types.h:467
virtual void clear()=0
Clear the contents of the query, making it match all data.
virtual LatRange get_latrange() const =0
Get the range of latitudes to be matched.
Range of longitudes.
Definition: types.h:551
virtual Level get_level() const =0
Get the level to be matched.
virtual void set_latrange(const LatRange &latrange)=0
Set the range of latitudes to be matched.
Query used to filter DB-All.e data.
Definition: query.h:14
virtual void set_lonrange(const LonRange &lonrange)=0
Set the range of longitudes to be matched.
virtual LonRange get_lonrange() const =0
Get the range of longitudes to be matched.
virtual Trange get_trange() const =0
Get the time range to be matched.