1 #ifndef DBALLE_CORE_MATCHER_H
2 #define DBALLE_CORE_MATCHER_H
20 std::string result_format(Result res);
80 static matcher::Result
int_in_range(
int val,
int min,
int max);
85 static matcher::Result
lon_in_range(
int val,
int min,
int max);
96 virtual matcher::Result match(
const Matched& item)
const = 0;
99 static std::unique_ptr<Matcher> create(
const dballe::Query& query);
Common base types used by most of DB-All.e code.
static matcher::Result int_in_range(int val, int min, int max)
Match if min <= val <= max.
Common interface for things that are matched.
Definition: matcher.h:31
Key/value store where keys are strings and values are wreport variables.
Definition: record.h:17
virtual matcher::Result match_datetime(const DatetimeRange &range) const
Match datetime.
virtual matcher::Result match_var_id(int val) const
Match variable ID.
virtual matcher::Result match_station_wmo(int block, int station=-1) const
Match station WMO code.
virtual matcher::Result match_station_id(int val) const
Match station ID.
static matcher::Result lon_in_range(int val, int min, int max)
Match if val is contained inside the given longitude range.
Range of datetimes.
Definition: types.h:272
Match DB-All.e objects using the same queries that can be made on DB-All.e databases.
Definition: matcher.h:92
virtual matcher::Result match_coords(const LatRange &latrange, const LonRange &lonrange) const
Match coordinates, with bounds in 1/100000 of degree.
virtual matcher::Result match_rep_memo(const char *memo) const
Match rep_memo.
Range of latitudes.
Definition: types.h:407
Query used to filter DB-All.e data.
Definition: query.h:14
Range of longitudes.
Definition: types.h:481