/* Dump fields and values in a socket to plot them with villasDump.py. * * Author: Manuel Pitz * SPDX-FileCopyrightText: 2014-2023 Institute for Automation of Complex Power Systems, RWTH Aachen University * SPDX-License-Identifier: Apache-2.0 */ #pragma once #include #include namespace villas { namespace node { class Dumper { protected: bool active; int socketFd; std::string socketPath; bool supressRepeatedWarning; uint64_t warningCounter; Logger logger; public: Dumper(); ~Dumper(); int openSocket(); int closeSocket(); bool isActive(); int setActive(); int setPath(const std::string &socketPathIn); void writeDataCSV(unsigned len, double *yData, double *xData = nullptr); void writeDataBinary(unsigned len, double *yData, double *xData = nullptr); }; } // namespace node } // namespace villas