0.2.0
Loading...
Searching...
No Matches
CsvLogger.hpp
Go to the documentation of this file.
1// This file is part of INSTINCT, the INS Toolkit for Integrated
2// Navigation Concepts and Training by the Institute of Navigation of
3// the University of Stuttgart, Germany.
4//
5// This Source Code Form is subject to the terms of the Mozilla Public
6// License, v. 2.0. If a copy of the MPL was not distributed with this
7// file, You can obtain one at https://mozilla.org/MPL/2.0/.
8
13
14#pragma once
15
19
20namespace NAV
21{
22class NodeData;
23
25class CsvLogger : public Node, public FileWriter, public CommonLog
26{
27 public:
31 ~CsvLogger() override;
33 CsvLogger(const CsvLogger&) = delete;
35 CsvLogger(CsvLogger&&) = delete;
37 CsvLogger& operator=(const CsvLogger&) = delete;
40
42 [[nodiscard]] static std::string typeStatic();
43
45 [[nodiscard]] std::string type() const override;
46
48 [[nodiscard]] static std::string category();
49
52 void guiConfig() override;
53
55 [[nodiscard]] json save() const override;
56
59 void restore(const json& j) override;
60
62 void flush() override;
63
64 private:
66 bool initialize() override;
67
69 void deinitialize() override;
70
74 void writeObservation(InputPin::NodeDataQueue& queue, size_t pinIdx);
75
77 bool _headerWritten = false;
78};
79
80} // namespace NAV
Common logging variables like time into run and local positions.
File Writer class.
nlohmann::json json
json namespace
Definition FlowManager.hpp:21
Node Class.
Common logging variables like time into run and local positions.
Definition CommonLog.hpp:26
Data Logger for PosVelAtt observations.
Definition CsvLogger.hpp:26
void guiConfig() override
ImGui config window which is shown on double click.
static std::string category()
String representation of the Class Category.
void restore(const json &j) override
Restores the node from a json object.
json save() const override
Saves the node into a json object.
CsvLogger(const CsvLogger &)=delete
Copy constructor.
CsvLogger(CsvLogger &&)=delete
Move constructor.
std::string type() const override
String representation of the Class Type.
CsvLogger & operator=(CsvLogger &&)=delete
Move assignment operator.
CsvLogger & operator=(const CsvLogger &)=delete
Copy assignment operator.
void flush() override
Function called by the flow executer after finishing to flush out remaining data.
~CsvLogger() override
Destructor.
static std::string typeStatic()
String representation of the Class Type.
CsvLogger()
Default constructor.
Parent class for other data loggers which manages the output filestream.
Definition FileWriter.hpp:27
Abstract parent class for all nodes.
Definition Node.hpp:86