diff options
Diffstat (limited to 'apps/SoilMoistureIo.h')
-rw-r--r-- | apps/SoilMoistureIo.h | 26 |
1 files changed, 19 insertions, 7 deletions
diff --git a/apps/SoilMoistureIo.h b/apps/SoilMoistureIo.h index aff7c85..4edf4f4 100644 --- a/apps/SoilMoistureIo.h +++ b/apps/SoilMoistureIo.h @@ -34,7 +34,7 @@ public: return entries.end(); } - string& operator[](string key) { + string &operator[](string key) { return entries[key]; } @@ -49,34 +49,46 @@ public: class CsvSampleOutputStream : public SampleOutputStream { public: - CsvSampleOutputStream(ostream& stream, vector<string> fields); + CsvSampleOutputStream(ostream &stream); + + CsvSampleOutputStream(ostream &stream, vector<string> fields); void write(Sample values); private: - ostream& stream; + void writeHeader(); + + ostream &stream; + bool headerWritten; + bool filterFields; vector<string> fields; }; class JsonSampleOutputStream : public SampleOutputStream { public: - JsonSampleOutputStream(ostream& stream, vector<string> fields); + JsonSampleOutputStream(ostream &stream); + + JsonSampleOutputStream(ostream &stream, vector<string> fields); void write(Sample values); private: - ostream& stream; + ostream &stream; + bool filterFields; vector<string> fields; }; class SqlSampleOutputStream : public SampleOutputStream { public: - SqlSampleOutputStream(ostream& stream, vector<string> fields); + SqlSampleOutputStream(ostream &stream); + + SqlSampleOutputStream(ostream &stream, vector<string> fields); void write(Sample values); private: - ostream& stream; + ostream &stream; + bool filterFields; vector<string> fields; }; |