]> pilppa.org Git - lib1wire.git/blobdiff - src_test/test_w1_datalog_read.cc
started adding support for reading average and sum data...
[lib1wire.git] / src_test / test_w1_datalog_read.cc
index 49c567e746928102281487b34ac9670e106cd037..acddf0d6fd69d7d4c73c2695d19da07ab5a3c6ad 100644 (file)
@@ -47,30 +47,46 @@ bool try_parse_long(const char *str, long *result) {
 
 int main(int argc, char** argv) {
        int             round;
-       string          location;
+       string          loc;
        bool            err_flg;
-       W1DataList      *datalist;
+       Data            *fdata;
+       Data            *ldata;
+       W1DataList      *dlist;
        DataRange       *dr;
+       DataRange       *dr2;
 
        // default values than can be overwritten with parameters
        //location      = "/tmp/";
-       location        = "/home/lamikr/own/src/plp/w1data2/";
+       loc     = "/home/lamikr/own/src/plp/w1data2/";
        if (argc > 1) {
-               location        = argv[1];
-               log_info("storage location: %s\n", location.c_str());
+               loc     = argv[1];
+               log_info("storage location: %s\n", loc.c_str());
        }
        else {
-               log_warning("No storage location parameter given, using default location: %s\n", location.c_str());
+               log_warning("No storage location parameter given, using default location: %s\n", loc.c_str());
        }
-       W1Store::set_location_base_dir(location.c_str());
-       datalist        = new W1DataList("00080160c563");
-       if (datalist != NULL) {
-               dr      = datalist->get_data_range();
+       W1Store::set_store_base_dir(loc.c_str());
+       dlist   = new W1DataList("0008014e9e09");
+       if (dlist != NULL) {
+               dr      = dlist->get_data_range();
                if (dr != NULL) {
-                       W1Util::printout_data(dr->first_data);
+                       fdata   = dr->get_first_data();
+                       if (fdata != NULL) {
+                               fdata->printout();
+                               ldata   = dr->get_last_data();
+                               if (ldata != NULL) {
+                                       ldata->printout();
+                                       dr2     = dlist->get_data(&fdata->get_date(), &ldata->get_date());
+                                       delete(ldata);
+                                       if (dr2 != NULL) {
+                                               delete(dr2);
+                                       }
+                               }
+                               delete(fdata);
+                       }
                        delete(dr);
                }
-               delete(datalist);
+               delete(dlist);
        }
        return 0;
 }