/* * W1Store.hh * * Created on: Oct 31, 2010 * Author: lamikr */ #ifndef W1STORE_HH_ #define W1STORE_HH_ #include #include #include #include #include "Data.hh" #include "Date.hh" namespace w1 { class W1Store { public: W1Store(std::string device_id, plp::Date *date_time); W1Store(std::string file_name_param); virtual ~W1Store(); static std::string get_dir_name(std::string device_id, plp::Date *ltime); static std::string get_file_name(std::string device_id, plp::Date *ltime); static void save(std::string device_id, std::list *data_list, int dec_precision); bool load(); Data *get_sum(); Data *get_delta(); Data *get_mean(); Data *get_max(); Data *get_min(); std::vector *get_sum(int freq_sec); std::vector *get_mean(int freq_sec); std::vector *get_delta(int freq_sec); std::vector *get_max(int freq_sec); std::vector *get_min(int freq_sec); w1::Data *get_oldest_data(); w1::Data *get_newest_data(); w1::DataRange *get_oldest_and_newest_data(); protected: std::string store_file_name; DataRange *store_data; DataRange *range_data; std::vector *get_max_or_min(int freq_sec, bool max); }; } #endif /* W1STORE_HH_ */