dynLattice
Loading...
Searching...
No Matches
CSVDataPrinter.h
Go to the documentation of this file.
1
6#pragma once
7
8#include <jive/app/DataPrinter.h>
9#include <jive/util/DofSpace.h>
10#include <jive/util/Table.h>
11
12using jive::IdxVector;
13using jive::Properties;
14using jive::String;
15using jive::Vector;
16using jive::app::DataPrinter;
17using jive::util::DofSpace;
18using jive::util::Table;
19
35class CSVDataPrinter : public DataPrinter
36{
37public:
46
47 JEM_DECLARE_CLASS(CSVDataPrinter, DataPrinter);
48
54 explicit CSVDataPrinter
55
56 (const String &name = "CSVDataPrinter");
57
69 virtual void printTable
70
71 (Output &out,
72 const String &label,
73 const Table &table,
74 const Properties &globdat) override;
75
87 virtual void printVector
88
89 (Output &out,
90 const String &label,
91 const Vector &vec,
92 const DofSpace &dofs,
93 const Properties &globdat) override;
94
108 virtual void printSparseVector
109
110 (Output &out,
111 const String &label,
112 const Vector &vec,
113 const IdxVector &idofs,
114 const DofSpace &dofs,
115 const Properties &globdat) override;
116
117protected:
118 virtual ~CSVDataPrinter();
119
120private:
127 void startTables_
128
129 (Output &out,
130 const Table &table,
131 const Properties &globdat);
132
140 void startVectors_
141
142 (Output &out,
143 const DofSpace &dofs,
144 const Properties &globdat,
145 const IdxVector &idofs = {});
146
153 void writePrefix_
154
155 (Output &out,
156 const Properties &globdat,
157 const String &label = "");
158
164 void writeVector_
165
166 (Output &out,
167 const Vector &vec);
168
169private:
170 mode mode_;
171};
CSV data printer for simulation output.
Definition CSVDataPrinter.h:36
virtual void printVector(Output &out, const String &label, const Vector &vec, const DofSpace &dofs, const Properties &globdat) override
Print vector data in CSV format with DOF information.
Definition CSVDataPrinter.cpp:88
mode
Output mode enumeration for CSV printer state.
Definition CSVDataPrinter.h:40
@ SPARSEVECTORS
Sparse vector output mode active.
Definition CSVDataPrinter.h:44
@ TABLES
Table output mode active.
Definition CSVDataPrinter.h:42
@ VECTORS
Vector output mode active.
Definition CSVDataPrinter.h:43
@ EMPTY
No output mode set yet.
Definition CSVDataPrinter.h:41
virtual ~CSVDataPrinter()
Definition CSVDataPrinter.cpp:44
virtual void printSparseVector(Output &out, const String &label, const Vector &vec, const IdxVector &idofs, const DofSpace &dofs, const Properties &globdat) override
Print sparse vector data in CSV format.
Definition CSVDataPrinter.cpp:113
virtual void printTable(Output &out, const String &label, const Table &table, const Properties &globdat) override
Print table data in CSV format with timestamps.
Definition CSVDataPrinter.cpp:54