fsfw/serviceinterface/ServiceInterfacePrinter.h

41 lines
958 B
C
Raw Normal View History

2021-01-12 15:06:25 +01:00
#if FSFW_DISABLE_PRINTOUT == 0
#include <cstdio>
#endif
2021-01-03 01:02:07 +01:00
2021-01-12 15:06:25 +01:00
namespace sif {
2021-01-03 01:02:07 +01:00
2021-01-12 15:06:25 +01:00
enum PrintLevel {
2021-01-03 01:02:07 +01:00
NONE = 0,
//! Strange error when using just ERROR..
2021-01-12 15:06:25 +01:00
ERROR_LEVEL = 1,
WARNING_LEVEL = 2,
INFO_LEVEL = 3,
DEBUG_LEVEL = 4
2021-01-03 01:02:07 +01:00
};
2021-01-12 15:06:25 +01:00
/**
* Set the print level. All print types with a smaller level will be printed
* as well. For example, set to PrintLevel::WARNING to only enable error
* and warning output.
* @param printLevel
*/
2021-01-03 01:02:07 +01:00
void setPrintLevel(PrintLevel printLevel);
PrintLevel getPrintLevel();
2021-01-12 15:06:25 +01:00
void setToAddCrAtEnd(bool addCrAtEnd_);
2021-01-03 01:47:01 +01:00
/**
* These functions can be used like the C stdio printf and forward the
* supplied formatted string arguments to a printf function.
* They prepend the string with a color (if enabled), a log preamble and
* a timestamp.
* @param fmt Formatted string
*/
2021-01-03 01:02:07 +01:00
void printInfo(const char *fmt, ...);
void printWarning(const char* fmt, ...);
void printDebug(const char* fmt, ...);
void printError(const char* fmt, ...);
}