1/* 2 * Copyright 2008, Ingo Weinhold, ingo_weinhold@gmx.de 3 * Distributed under the terms of the MIT License. 4 */ 5#ifndef _KERNEL_DEBUG_OUTPUT_FILTER_H 6#define _KERNEL_DEBUG_OUTPUT_FILTER_H 7 8#include <stdarg.h> 9 10#include <SupportDefs.h> 11 12 13class DebugOutputFilter { 14public: 15 DebugOutputFilter(); 16 virtual ~DebugOutputFilter(); 17 18 virtual void PrintString(const char* string); 19 virtual void Print(const char* format, va_list args); 20}; 21 22class DefaultDebugOutputFilter : public DebugOutputFilter { 23public: 24 virtual void PrintString(const char* string); 25 virtual void Print(const char* format, va_list args); 26}; 27 28 29extern DefaultDebugOutputFilter gDefaultDebugOutputFilter; 30 31 32DebugOutputFilter* set_debug_output_filter(DebugOutputFilter* filter); 33 34 35#endif // _KERNEL_DEBUG_OUTPUT_FILTER_H 36