45 std::string
read(std::istream& stream);
51 std::string
load(
const std::string& path);
63 std::string
average(
double start,
double seconds, std::array<double, 5>& result)
const;
67 bool empty() const noexcept {
return records_.empty(); }
72 const std::vector<HourlyMetRecord>&
records() const noexcept {
return records_; }
75 std::vector<HourlyMetRecord> records_;
Owned consecutive hourly records with interval-weighted means. Concurrent const queries are safe only...
Definition HourlyMeteorology.hpp:34
std::string read(std::istream &stream)
Replace the cache with validated consecutive hourly records from a stream.
Definition HourlyMeteorology.cpp:28
std::string average(double start, double seconds, std::array< double, 5 > &result) const
Compute duration-weighted means of hourly piecewise-constant weather.
Definition HourlyMeteorology.cpp:76
const std::vector< HourlyMetRecord > & records() const noexcept
Borrow immutable hourly starts and their complete-hour weather values.
Definition HourlyMeteorology.hpp:72
bool empty() const noexcept
Test whether any validated records are stored.
Definition HourlyMeteorology.hpp:67
std::string load(const std::string &path)
Open a text weather file and replace the cache through read().
Definition HourlyMeteorology.cpp:22
Definition Rk2RuntimeSources.hpp:19
Definition HourlyMeteorology.hpp:22
double date
Definition HourlyMeteorology.hpp:23
std::array< double, 5 > values
Definition HourlyMeteorology.hpp:24
Definition HourlyMeteorology.hpp:28
double previous_max
Definition HourlyMeteorology.hpp:29
double wind
Definition HourlyMeteorology.hpp:29
double tmax
Definition HourlyMeteorology.hpp:29
double date
Definition HourlyMeteorology.hpp:29
double tmin
Definition HourlyMeteorology.hpp:29