Grok 15.1.0
ILogger.h
Go to the documentation of this file.
1/*
2 * Copyright (C) 2016-2025 Grok Image Compression Inc.
3 *
4 * This source code is free software: you can redistribute it and/or modify
5 * it under the terms of the GNU Affero General Public License, version 3,
6 * as published by the Free Software Foundation.
7 *
8 * This source code is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU Affero General Public License for more details.
12 *
13 * You should have received a copy of the GNU Affero General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
16#pragma once
17
18#include <cstring>
19#include <cstdarg>
20
21namespace grk
22{
23
24struct ILogger
25{
26 virtual ~ILogger() = default; // Virtual destructor for polymorphism
27 virtual void info(const char* fmt, ...) = 0;
28 virtual void warn(const char* fmt, ...) = 0;
29 virtual void error(const char* fmt, ...) = 0;
30 virtual void debug(const char* fmt, ...) = 0; // Added debug
31 virtual void trace(const char* fmt, ...) = 0; // Added trace
32};
33
34} // namespace grk
Copyright (C) 2016-2025 Grok Image Compression Inc.
Definition ICacheable.h:20
Definition ILogger.h:25
virtual ~ILogger()=default
virtual void warn(const char *fmt,...)=0
virtual void info(const char *fmt,...)=0
virtual void error(const char *fmt,...)=0
virtual void debug(const char *fmt,...)=0
virtual void trace(const char *fmt,...)=0