]> pilppa.org Git - lib1wire.git/blob - src/W1Store.hh
fb6fadbdae4278b2312b40fcc4adb4269c7dc184
[lib1wire.git] / src / W1Store.hh
1 /*
2  * W1Store.hh
3  *
4  *  Created on: Oct 31, 2010
5  *      Author: lamikr
6  */
7
8 #ifndef W1STORE_HH_
9 #define W1STORE_HH_
10
11 #include <string>
12 #include <list>
13 #include <vector>
14
15 #include <stdbool.h>
16
17 #include "Data.hh"
18 #include "Date.hh"
19
20 namespace w1 {
21         class W1Store {
22                 public:
23                         W1Store(std::string device_id,
24                                 plp::Date *date_time);
25                         W1Store(std::string file_name_param);
26                         virtual ~W1Store();
27                         static std::string get_dir_name(std::string device_id, plp::Date *ltime);
28                         static std::string get_file_name(std::string device_id, plp::Date *ltime);
29                         static void store(std::string device_id, std::list<std::string> *string_list);
30                         bool load();
31                         Data *get_sum();
32                         Data *get_delta();
33                         Data *get_mean();
34                         Data *get_max();
35                         Data *get_min();
36                         std::vector<w1::Data *> get_mean(int freq_sec);
37                         std::vector<w1::Data *> get_delta(int freq_sec);
38                         w1::Data *get_oldest_data();
39                         w1::Data *get_newest_data();
40                         w1::DataRange *get_oldest_and_newest_data();
41                 protected:
42                         std::string             store_file_name;
43                         DataRange               *store_data;
44                         DataRange               *range_data;
45         };
46 }
47
48 #endif /* W1STORE_HH_ */