MOOSE - Multiscale Object Oriented Simulation Environment
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
StreamerBase.h
Go to the documentation of this file.
1 /***
2  * Filename: StreamerBaseBase.h
3  *
4  * Description: Stream table data to a stream.
5  *
6  * Created: 2016-04-26
7  *
8  * Author: Dilawar Singh <dilawars@ncbs.res.in>
9  * Organization: NCBS Bangalore
10  *
11  * License: GNU GPL2
12  */
13 
14 #ifndef StreamerBase_INC
15 #define StreamerBase_INC
16 
17 #define STRINGSTREAM_DOUBLE_PRECISION 10
18 
19 #include <iostream>
20 #include <string>
21 #include <map>
22 #include <fstream>
23 #include <sstream>
24 
25 #include "TableBase.h"
26 
27 using namespace std;
28 
29 class TableBase;
30 
31 class StreamerBase : public TableBase
32 {
33 
34 public:
35  StreamerBase();
36  ~StreamerBase();
37 
38  StreamerBase& operator=( const StreamerBase& st );
39 
40  /* Functions to set and get Streamer fields */
41  void setOutFilepath( string stream );
42  string getOutFilepath() const;
43 
64  static void writeToOutFile(
65  const string& filepath, const string& format
66  , const string& openmode
67  , const vector<double>& data
68  , const vector<string>& columns
69  );
70 
75  static void writeToCSVFile( const string& filepath, const string& openmode
76  , const vector<double>& data, const vector<string>& columns
77  );
78 
83  static void writeToNPYFile( const string& filepath, const string& openmode
84  , const vector<double>& data
85  , const vector<string>& columns
86  );
87 
88 
89 private:
90 
91  string outfilePath_;
92 
93  static const char eol = '\n';
94  static const char delimiter_ = ' ';
95 
96 };
97 
98 #endif /* ----- #ifndef StreamerBase_INC ----- */
string outfilePath_
Definition: StreamerBase.h:91