]> pilppa.org Git - lib1wire.git/blob - src/Data.hh
started adding support for reading average and sum data...
[lib1wire.git] / src / Data.hh
1 /*
2  * Data.hh
3  *
4  *  Created on: Dec 8, 2010
5  *      Author: lamikr
6  */
7
8 #ifndef DATA_HH_
9 #define DATA_HH_
10
11 #include <string>
12 #include <valarray>
13 #include <vector>
14 #include <hash_map>
15
16 #include "Date.hh"
17
18 namespace w1 {
19         class Data {
20                 public:
21                         Data(int size);
22                         Data(std::vector<double> vector_param, plp::Date *date_param);
23                         Data(std::valarray<double> value_arr_param, plp::Date *date_param);
24                         virtual ~Data();
25                         plp::Date get_date();
26                         void set_date(plp::Date date);
27                         void printout();
28                         std::valarray<double>   value_arr;
29                 private:
30                         plp::Date               date_time;
31         };
32
33         class DataRange {
34                 public:
35                         DataRange(Data data);
36                         DataRange(int value_count_per_data_item);
37                         virtual ~DataRange();
38                         void add_data(Data data);
39                         Data *get_data(int row_index);
40                         Data *get_first_data();
41                         Data *get_last_data();
42                         int get_data_row_count();
43                         int get_data_column_count();
44                 protected:
45                         double                          *val_matrix;
46                         std::vector<plp::Date *>        date_list;
47                         int                             row_count;
48                         int                             column_count;
49         };
50 }
51
52 #endif /* DATA_HH_ */