/[RomCheater]/trunk/RomCheater.Logging/logger.cs
ViewVC logotype

Diff of /trunk/RomCheater.Logging/logger.cs

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

--- trunk/RomCheater.Logging/logger.cs	2012/05/09 10:05:28	28
+++ trunk/RomCheater.Logging/logger.cs	2012/05/09 22:48:59	97
@@ -16,20 +16,21 @@
 
     #region MesageLogger
     [Flags]
-    public enum loggerflags
+    public enum loggerflags :ushort
     {
         NONE = 0x0000,              // 000
         INFO = 0x0001,              // 001
         DEBUG = 0x0002,             // 010
         ERROR= 0x0004,              // 100
-        DEFAULT = INFO | ERROR,
-        ALL = 0x07,
+        DEFAULT = INFO | ERROR | DEBUG,
+        ALL = DEFAULT,
     }
     public static class logger
     {
         private static loggerflags logging_flags;
         static logger() { SetLoggingFlags(loggerflags.DEFAULT); }
         public static void SetLoggingFlags(loggerflags flags) { logging_flags = flags; }
+        public static loggerflags GetLoggingFlags() { return logging_flags; }
         #region sub-classes
         private static string CreateTimeStamp()
         {
@@ -56,6 +57,29 @@
             public static void Write(string format, params object[] args) { if (logging_flags.HasFlag(loggerflags.ERROR)) { xlogger.Write(CreateNewFormat(format), args); } }
             public static void WriteLine(string format, params object[] args) { if (logging_flags.HasFlag(loggerflags.ERROR)) { xlogger.WriteLine(CreateNewFormat(format), args); } }
         }
+        #region Force logging
+        public static class ForceLog
+        {
+            public static class Info
+            {
+                private static string CreateNewFormat(string format) { return "    " + CreateTimeStamp() + "(FORCED INFO) " + format; }
+                public static void Write(string format, params object[] args) { xlogger.Write(CreateNewFormat(format), args); }
+                public static void WriteLine(string format, params object[] args) { xlogger.WriteLine(CreateNewFormat(format), args); }
+            }
+            public static class Debug
+            {
+                private static string CreateNewFormat(string format) { return "    " + CreateTimeStamp() + "(FORCED DEBUG) " + format; }
+                public static void Write(string format, params object[] args) { xlogger.Write(CreateNewFormat(format), args); }
+                public static void WriteLine(string format, params object[] args) { xlogger.WriteLine(CreateNewFormat(format), args); }
+            }
+            public static class Error
+            {
+                private static string CreateNewFormat(string format) { return "    " + CreateTimeStamp() + "(FORCED ERROR) " + format; }
+                public static void Write(string format, params object[] args) { xlogger.Write(CreateNewFormat(format), args); }
+                public static void WriteLine(string format, params object[] args) { xlogger.WriteLine(CreateNewFormat(format), args); }
+            }
+        }
+        #endregion
         #endregion
 
     }
@@ -99,6 +123,7 @@
                             try
                             {
                                 lw = (LogWriter)prop.GetValue(null, null);
+                                lh = new logwriter(lw);
                                 break;
                             }
                             catch (Exception)
@@ -106,9 +131,7 @@
                                 throw;
                             }
                         }
-                    }
-                    lh = new logwriter(lw);
-                    break;
+                    }                    
                 }
             }
         }

 

  ViewVC Help
Powered by ViewVC 1.1.22