From fe5aae4e830bbe2d3120968186ff1b4709371959 Mon Sep 17 00:00:00 2001 From: Mario Fink Date: Mon, 17 Feb 2020 14:08:35 +0000 Subject: [PATCH] fixed bug of converting twice, added asserts to avoid double conversion --- example.py | 2 +- src/main.cpp | 9 --------- src/raweat.hpp | 14 +++++++++++++- 3 files changed, 14 insertions(+), 11 deletions(-) diff --git a/example.py b/example.py index 24b3b46..58773b2 100644 --- a/example.py +++ b/example.py @@ -1,7 +1,7 @@ import raw_eater -eatraw = raw_eater.raweater(b"/home/mario/raw_eater/sample/VehicleSpeed_HS.raw") +eatraw = raw_eater.raweater(b"sample/pressure_Vacuum.raw") print(eatraw.channel_name()) print(eatraw.unit()) diff --git a/src/main.cpp b/src/main.cpp index 8a0285d..fb2fb43 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -33,12 +33,6 @@ int main(int argc, char* argv[]) //eatraw.show_markers(); - // determine position of markers in buffer and read data - eatraw.find_markers(); - - // split data segments into elements - eatraw.split_segments(); - // std::cout<<"\n"; // std::map> marks = eatraw.get_markers(); // for ( auto mrk: marks ) @@ -57,9 +51,6 @@ int main(int argc, char* argv[]) // //for ( auto el: segvec ) std::cout< maindata = eatraw.get_data(); // std::cout<<"\nsize of data array: "<> mrk : markers_ ) { assert( mrk.second.size() > 0 && "please don't define any empty marker" ); @@ -200,6 +203,9 @@ public: // split data segments into arrays void split_segments() { + assert( datasec_.size() > 0 ); + assert( segments_.size() == 0 ); + // split segments of all markers for (std::pair> mrk : markers_ ) { @@ -245,9 +251,10 @@ public: //---------------------------------------------------------------------------// // convert actual measurement data - void convert_data() + void convert_data(bool showlog = false) { assert( segments_.size() > 0 && "extract markers and separate into segments before conversion!" ); + assert( datmes_.size() == 0 ); // by convention, the actual data is the 4th element in respective segment std::string datstr = segments_["datas marker"][3]; @@ -298,6 +305,11 @@ public: break; } + // show excerpt of result + if ( showlog ) + { + std::cout<<"length of data: "<