FOSSredder 0.5.0
Loading...
Searching...
No Matches
IDiagnostics.h
Go to the documentation of this file.
1
5
6#pragma once
7
8#include <cstdint>
9#include <string>
10#include <vector>
11
13
18public:
22 virtual ~IDiagnostics() = default;
23
28 virtual bool enabled() const = 0;
29
35 virtual void writeText(const std::string &relPath, const std::string &text) = 0;
36
42 virtual void writeBytes(const std::string &relPath,
43 const std::vector<std::uint8_t> &data) = 0;
44
48 virtual void flush() {}
49};
50
51} // namespace core::ports::diagnostics
Port for writing optional diagnostic artifacts.
virtual void writeBytes(const std::string &relPath, const std::vector< std::uint8_t > &data)=0
Write a binary diagnostic artifact.
virtual bool enabled() const =0
Check whether diagnostic artifact writing is enabled.
virtual ~IDiagnostics()=default
Destroy the diagnostics port.
virtual void flush()
Flush pending diagnostic output.
virtual void writeText(const std::string &relPath, const std::string &text)=0
Write a text diagnostic artifact.