diff options
author | Trygve Laugstøl <trygvis@inamo.no> | 2015-03-21 18:07:44 +0100 |
---|---|---|
committer | Trygve Laugstøl <trygvis@inamo.no> | 2015-03-21 18:07:44 +0100 |
commit | ac03535bc7d08c4fc05c19eda6271e92b6558e41 (patch) | |
tree | ed33830b5fb6740ca80ba408a113ca944d0906ef | |
parent | f12bef0c3696f87c55210557fb3b056284e82494 (diff) | |
download | ble-toys-ac03535bc7d08c4fc05c19eda6271e92b6558e41.tar.gz ble-toys-ac03535bc7d08c4fc05c19eda6271e92b6558e41.tar.bz2 ble-toys-ac03535bc7d08c4fc05c19eda6271e92b6558e41.tar.xz ble-toys-ac03535bc7d08c4fc05c19eda6271e92b6558e41.zip |
o Dropping empty samples when looking for an end sample.
-rw-r--r-- | README-apps.md | 16 | ||||
-rw-r--r-- | apps/SoilMoistureIo.cpp | 4 | ||||
-rw-r--r-- | apps/sample-timestamp.cpp | 3 |
3 files changed, 22 insertions, 1 deletions
diff --git a/README-apps.md b/README-apps.md new file mode 100644 index 0000000..f9c3753 --- /dev/null +++ b/README-apps.md @@ -0,0 +1,16 @@ +Example pipeline that adds an absolute timestamp and converts to CSV. + + sample-timestamp --input log.txt --relative-name now | \ + sample-convert --output-format csv > log.csv + +Example input: + + analog=251, dry=0, pumping_water=0, last_watering_started=234, last_watering_stopped=235, now=346 + +Example output: + + now,analog,dry,pumping_water,last_watering_started,last_watering_stopped,timestamp + 346,251,0,0,234,235,1425594335 + 347,249,0,0,234,235,1425594336 + 348,248,0,0,234,235,1425594337 + 349,245,0,0,234,235,1425594338 diff --git a/apps/SoilMoistureIo.cpp b/apps/SoilMoistureIo.cpp index 7d8f5bb..66e1dce 100644 --- a/apps/SoilMoistureIo.cpp +++ b/apps/SoilMoistureIo.cpp @@ -12,6 +12,10 @@ using namespace std; using json = nlohmann::json; void VectorSampleOutputStream::write(SampleRecord const &sample) { + if (sample.empty()) { + return; + } + samples.emplace_back(sample); } diff --git a/apps/sample-timestamp.cpp b/apps/sample-timestamp.cpp index 6672091..0affd36 100644 --- a/apps/sample-timestamp.cpp +++ b/apps/sample-timestamp.cpp @@ -107,7 +107,7 @@ public: return EXIT_FAILURE; } - const int buffer_size = 100; + const int buffer_size = 1024; input.seekg(-buffer_size, ios_base::end); @@ -146,6 +146,7 @@ public: o<string> s = sample.at(relative_key); if (!s) { cerr << "Missing key '" + relative_name + "'." << endl; + cerr << "Found " << sample_buffer->samples.size() << " samples." << endl; cerr << "keys: " << sample.to_string() << endl; return EXIT_FAILURE; } |