isndsys/ss_eventrecorder.h
Go to the documentation of this file.00001 /* 00002 Copyright (C) 2006 by Andrew Mann 00003 00004 This library is free software; you can redistribute it and/or 00005 modify it under the terms of the GNU Library General Public 00006 License as published by the Free Software Foundation; either 00007 version 2 of the License, or (at your option) any later version. 00008 00009 This library is distributed in the hope that it will be useful, 00010 but WITHOUT ANY WARRANTY; without even the implied warranty of 00011 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00012 Library General Public License for more details. 00013 00014 You should have received a copy of the GNU Library General Public 00015 License along with this library; if not, write to the Free 00016 Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. 00017 */ 00018 00019 #ifndef CS_SNDSYS_EVENTRECORDER_H 00020 #define CS_SNDSYS_EVENTRECORDER_H 00021 00029 struct iSndSysEventRecorder; 00030 00032 typedef enum 00033 { 00034 SSEL_BUG, // This event is surely a bug in our code - think of it like a loggable assertion 00035 SSEL_CRITICAL, // This event is so important you must absolutely know about it. It may or may not be a bug in our code. 00036 SSEL_ERROR, // Something bad happened for sure, but we can deal with it 00037 SSEL_WARNING, // Something bad _might_ be happening 00038 SSEL_DEBUG // General information that's really good to know for debugging purposes 00039 } SndSysEventLevel; 00040 00042 typedef enum 00043 { 00044 SSEC_DRIVER, // Event is related to the driver 00045 SSEC_RENDERER, // Event is related to the renderer, but not particularly a source or stream 00046 SSEC_SOURCE, // Event is related to a particular source 00047 SSEC_STREAM, // Event is related to a particular stream element 00048 SSEC_DATA // Event is relayed to a data element 00049 } SndSysEventCategory; 00050 00062 struct iSndSysEventRecorder : public virtual iBase 00063 { 00064 SCF_INTERFACE (iSndSysEventRecorder, 1, 0, 0); 00065 00067 virtual void RecordEvent(SndSysEventCategory, SndSysEventLevel, const char* Description, ...) CS_GNUC_PRINTF(4, 5) = 0; 00068 00070 virtual void RecordEventV(SndSysEventCategory, SndSysEventLevel, const char* Description, va_list) CS_GNUC_PRINTF(4, 0) = 0; 00071 00072 }; 00073 00076 #endif // #ifndef CS_SNDSYS_EVENTRECORDER_H
Generated for Crystal Space 2.0 by doxygen 1.6.1