30 ArgosStation(
const std::string& argosID,
const Config& metaCfg,
const float& in_nodata,
const double& in_TZ,
const std::string& coordin,
const std::string& coordinparam,
const bool& isDebug);
31 Date parseDate(
const std::string& str,
const size_t &linenr)
const;
34 bool isValid()
const {
return validStation;}
35 bool isValidMessage(
const size_t& msg_length)
const {
return (msg_length==fields_idx.size());}
39 void parseFieldsSpecs(
const std::vector<std::string>& fieldsNames,
MeteoData &meteo_template, std::vector<size_t> &idx);
40 static std::vector<float> decodeData(
const std::vector<unsigned int> &raw);
42 std::vector<size_t> fields_idx;
43 std::vector<double> units_offset, units_multiplier;
44 std::vector<size_t> fields_idx2;
45 std::vector<double> units_offset2, units_multiplier2;
49 bool validStation, debug, wsl_hack;
66 ArgosIO(
const std::string& configfile);
70 virtual void readStationData(
const Date& date, std::vector<StationData>& vecStation)
override;
73 std::vector< std::vector<MeteoData> >& vecMeteo)
override;
76 void parseInputOutputSection(
const Config& cfgreader);
77 static std::string readLine(
ifilestream &fin,
size_t &linenr);
79 void readMessage(
ifilestream &fin,
size_t &linenr,
const Date& dateStart,
const Date& dateEnd, std::vector< std::vector<MeteoData> >& vecMeteo);
80 void readRaw(
const std::string& file_and_path,
const Date& dateStart,
const Date& dateEnd, std::vector< std::vector<MeteoData> >& vecMeteo);
81 void addStation(
const std::string& argosID);
83 std::vector<std::string> vecFilenames;
84 std::map<std::string, ArgosStation> stations;
86 std::string meteopath;
87 std::string coordin, coordinparam;
This plugin deals with data that has been transmitted through the ARGOS satellites....
Definition Argos.h:64
virtual void readMeteoData(const Date &dateStart, const Date &dateEnd, std::vector< std::vector< MeteoData > > &vecMeteo) override
Fill vecMeteo with a time series of objects corresponding to the interval indicated by dateStart and ...
Definition Argos.cc:165
virtual void readStationData(const Date &date, std::vector< StationData > &vecStation) override
Fill vecStation with StationData objects for a certain date of interest.
Definition Argos.cc:149
Date parseDate(const std::string &str, const size_t &linenr) const
Definition Argos.cc:451
bool isValidMessage(const size_t &msg_length) const
Definition Argos.h:35
size_t meteoIdx
index within vecMeteo
Definition Argos.h:37
MeteoData parseDataLine(const Date &dt, const std::vector< unsigned int > &raw_data, const size_t &linenr) const
Definition Argos.cc:465
bool isValid() const
Definition Argos.h:34
StationData getStationData() const
Definition Argos.h:33
ArgosStation()
Definition Argos.cc:344
A class that reads a key/value file. These files (typically named *.ini) follow the INI file format s...
Definition Config.h:79
A class to handle timestamps. This class handles conversion between different time display formats (I...
Definition Date.h:87
A class representing the IO Layer of the software Alpine3D. For each type of IO (File,...
Definition IOInterface.h:121
A class to represent a singular measurement received from one station at a certain time (represented ...
Definition MeteoData.h:108
StationData meta
The meta data of the measurement.
Definition MeteoData.h:406
A class to represent meteo stations with attributes like longitude, latitude, etc.
Definition StationData.h:40
A class that extends std::ifstream, adding sandbox validation.
Definition FStream.h:69