/* * Store.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 plp { class Store { public: Store(std::string device_id, plp::Date *date_time); Store(std::string file_name_param); virtual ~Store(); 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(); plp::Data *get_sum(); plp::Data *get_delta(); plp::Data *get_mean(); plp::Data *get_max(); plp::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); plp::Data *get_oldest_data(); plp::Data *get_newest_data(); plp::DataRange *get_oldest_and_newest_data(); protected: std::string store_file_name; plp::DataRange *store_data; plp::DataRange *range_data; std::vector *get_max_or_min(int freq_sec, bool max); }; } #endif /* W1STORE_HH_ */