36 virtual void log(
LogLevel level, std::string_view message) = 0;
38 std::string_view value) = 0;
42 std::string_view value) = 0;
45 void printInfo (std::string_view message);
66 template<
typename... Args>
68 auto tmp =
tmpStrCat(std::forward<Args>(args)...);
71 template<
typename... Args>
73 auto tmp =
tmpStrCat(std::forward<Args>(args)...);
76 template<
typename... Args>
78 auto tmp =
tmpStrCat(std::forward<Args>(args)...);
81 template<
typename... Args>
83 auto tmp =
tmpStrCat(std::forward<Args>(args)...);
88 [[nodiscard]]
static std::span<const std::string_view, NUM_LEVELS>
getLevelStrings() {
89 static constexpr std::array<std::string_view, NUM_LEVELS> levelStr = {
90 "info",
"warning",
"error",
"progress"
94 [[nodiscard]]
static std::span<const std::string_view, NUM_UPDATES>
getUpdateStrings() {
95 static constexpr std::array<std::string_view, NUM_UPDATES> updateStr = {
96 "led",
"setting",
"setting-info",
"hardware",
"plug",
97 "media",
"status",
"extension",
"sounddevice",
"connector",
void printProgress(const char *message)
void printProgress(std::string_view message)
void printInfo(std::string_view message)
virtual void updateFiltered(UpdateType type, std::string_view name, std::string_view value)=0
Same as update(), but checks that the value for type-name is the same as in the previous call.
void printError(const char *message)
virtual void update(UpdateType type, std::string_view name, std::string_view value)=0
void printInfo(Args &&...args)
void printError(std::string_view message)
static std::span< const std::string_view, NUM_LEVELS > getLevelStrings()
void printWarning(Args &&...args)
void printProgress(Args &&...args)
void printWarning(std::string_view message)
void printError(Args &&...args)
void printWarning(const char *message)
void printInfo(const char *message)
virtual void log(LogLevel level, std::string_view message)=0
static std::span< const std::string_view, NUM_UPDATES > getUpdateStrings()
This file implemented 3 utility functions:
TemporaryString tmpStrCat(Ts &&... ts)