Main Page | Class Hierarchy | Class List | File List | Class Members | Related Pages

D:/Programming/GUI Editor (Source)/Logger.h

00001 // Logger.h: interface for the CLogger class. 00002 // 00004 00005 #if !defined(AFX_LOGGER_H__D5C75D23_D1A5_43BE_A6F3_3778FDD8A669__INCLUDED_) 00006 #define AFX_LOGGER_H__D5C75D23_D1A5_43BE_A6F3_3778FDD8A669__INCLUDED_ 00007 00008 #if _MSC_VER > 1000 00009 #pragma once 00010 #endif // _MSC_VER > 1000 00011 00012 // Define this if you want to use global logger 00013 #define USE_GLOBAL_LOGGER 1 00014 00015 #include "Singleton.h" 00016 #include <stdarg.h> 00017 #include <stdio.h> 00018 00020 00025 class CLogger 00026 { 00027 public: 00028 00029 CLogger(); 00030 CLogger(char *pcFilename, bool bKeepOpen = false, bool bAppend = false); 00031 virtual ~CLogger(); 00032 00039 virtual int Open(char *pcFilename, bool bKeepOpen = false, bool bAppend = false); 00040 00041 00046 virtual int Write(const char *pcFormat, ...); 00047 00052 virtual int Append(const char *pcFormat, ...); 00053 00057 virtual int Erase(); 00061 virtual int Close(); 00062 00064 int GetError(); 00065 00066 private: 00067 00068 FILE *m_pFile; 00069 char m_strFilename[256]; 00070 bool m_bKeepOpen; 00071 }; 00072 #endif // !defined(AFX_LOGGER_H__D5C75D23_D1A5_43BE_A6F3_3778FDD8A669__INCLUDED_) 00073 00074 #ifdef USE_GLOBAL_LOGGER 00075 00076 00081 class CGlobalLogger : public CLogger, public CSingleton<CGlobalLogger> 00082 { 00083 public: 00084 00085 CGlobalLogger(); 00086 CGlobalLogger(char *pcFilename); 00087 virtual ~CGlobalLogger(); 00088 00089 void SetLogLevel(int iLogLevel); 00090 int GetLogLevel(); 00094 virtual int Open(char *pcFilename, bool bKeepOpen = true); 00098 virtual int Close(); 00099 00100 private: 00101 int m_iLogLevel; 00102 00103 }; 00104 00105 #endif

Generated on Sun Jul 17 21:34:27 2005 for OpenGL GUI by doxygen 1.3.8