/[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

revision 391 by william, Wed Jun 20 10:02:14 2012 UTC revision 414 by william, Fri Jun 22 08:21:18 2012 UTC
# Line 1  Line 1 
1  ´╗┐using System;  ´╗┐#region Logging Defines
2    // include this any class or method that required logging, and comment-out what is not needed
3    #define LOGGING_ENABLED
4    #region Enabled logging levels
5    #define LOGGING_ENABLE_INFO
6    #define LOGGING_ENABLE_WARN
7    #define LOGGING_ENABLE_DEBUG
8    #define LOGGING_ENABLE_VERBOSEDEBUG
9    #define LOGGING_ENABLE_ERROR
10    #define LOGGING_ENABLE_VERBOSEERROR
11    #define LOGGING_ENABLE_PROFILER
12    #endregion
13    #endregion
14    
15    
16    using System;
17  using System.Collections.Generic;  using System.Collections.Generic;
18  using System.Linq;  using System.Linq;
19  using System.Text;  using System.Text;
20  using System.Reflection;  using System.Reflection;
21  using System.Windows.Forms;  using System.Windows.Forms;
22  using System.IO;  using System.IO;
23    using System.Diagnostics;
24    
25  namespace RomCheater.Logging  namespace RomCheater.Logging
26  {  {
# Line 16  namespace RomCheater.Logging Line 32  namespace RomCheater.Logging
32    
33    
34      #region loggerflags      #region loggerflags
35      public class loggerflagsbase<TValue>      public class loggerflagsbase<TValue>
36          where TValue : IConvertible          where TValue : IConvertible
37      {      {
38           static loggerflagsbase()          static loggerflagsbase()
39          {          {
40              value_pairs = new Dictionary<TValue, EnumNameValuePair<TValue>>();              value_pairs = new Dictionary<TValue, EnumNameValuePair<TValue>>();
41              name_pairs = new Dictionary<string, EnumNameValuePair<TValue>>();              name_pairs = new Dictionary<string, EnumNameValuePair<TValue>>();
42                
43              init_dicts();              init_dicts();
44          }          }
45          protected loggerflagsbase()          protected loggerflagsbase()
46          {          {
47              CurrentValue = NONE;              CurrentValue = NONE;
48          }          }
49          //protected loggerflags(ushort t) : this() { CurrentValue = new EnumNameValuePair< ushort>("", t); }          //protected loggerflags(ushort t) : this() { CurrentValue = new EnumNameValuePair< ushort>("", t); }
50          protected loggerflagsbase(EnumNameValuePair< TValue> t) { CurrentValue = t; }          protected loggerflagsbase(EnumNameValuePair<TValue> t) { CurrentValue = t; }
51          protected loggerflagsbase(loggerflagsbase<TValue> t) { this.CurrentValue = t.CurrentValue; }          protected loggerflagsbase(loggerflagsbase<TValue> t) { this.CurrentValue = t.CurrentValue; }
52          private static void init_dicts()          private static void init_dicts()
53          {          {
54              value_pairs = new Dictionary<TValue, EnumNameValuePair< TValue>>();              value_pairs = new Dictionary<TValue, EnumNameValuePair<TValue>>();
55              name_pairs = new Dictionary<string, EnumNameValuePair< TValue>>();              name_pairs = new Dictionary<string, EnumNameValuePair<TValue>>();
56              add_dict_entry(NONE);              add_dict_entry(NONE);
57              add_dict_entry(INFO);              add_dict_entry(INFO);
58              add_dict_entry(DEBUG);              add_dict_entry(DEBUG);
# Line 89  namespace RomCheater.Logging Line 105  namespace RomCheater.Logging
105                      }                      }
106                      else                      else
107                      {                      {
108                          builder.AppendFormat(" | {0}",pair);                          builder.AppendFormat(" | {0}", pair);
109                      }                      }
110                      count++;                      count++;
111                  }                  }
# Line 115  namespace RomCheater.Logging Line 131  namespace RomCheater.Logging
131          }          }
132          public override string ToString()          public override string ToString()
133          {          {
134                
135              return CurrentValue.ToString();              return CurrentValue.ToString();
136          }          }
137          #endregion          #endregion
# Line 162  namespace RomCheater.Logging Line 178  namespace RomCheater.Logging
178      //[Flags]      //[Flags]
179      public class loggerflags : loggerflagsbase<ushort>      public class loggerflags : loggerflagsbase<ushort>
180      {      {
181            protected loggerflags() :base()        {        }          protected loggerflags() : base() { }
182            protected loggerflags(EnumNameValuePair<ushort> t) : base(t) { }          protected loggerflags(EnumNameValuePair<ushort> t) : base(t) { }
183            protected loggerflags(loggerflagsbase<ushort> t) : base(t) { }          protected loggerflags(loggerflagsbase<ushort> t) : base(t) { }
184          #region implicit operators          #region implicit operators
185            public static implicit operator loggerflags(EnumNameValuePair<ushort> t) { return new loggerflags(t); }          public static implicit operator loggerflags(EnumNameValuePair<ushort> t) { return new loggerflags(t); }
186            public static implicit operator EnumNameValuePair<ushort>(loggerflags t) { return new EnumNameValuePair<ushort>(t.Name,t.Value); }          public static implicit operator EnumNameValuePair<ushort>(loggerflags t) { return new EnumNameValuePair<ushort>(t.Name, t.Value); }
187            public static implicit operator ushort(loggerflags t) { return t.Value; }          public static implicit operator ushort(loggerflags t) { return t.Value; }
188            public static implicit operator loggerflags(ushort t) { return new loggerflags(t); }          public static implicit operator loggerflags(ushort t) { return new loggerflags(t); }
189            public static implicit operator string(loggerflags t) { return t.Name; }          public static implicit operator string(loggerflags t) { return t.Name; }
190          #endregion          #endregion
191    
192      }      }
193            #endregion
194    
195        #region public static class logger
196      public static class logger      public static class logger
197      {      {
198          private static loggerflags logging_flags;          private static loggerflags logging_flags;
# Line 191  namespace RomCheater.Logging Line 209  namespace RomCheater.Logging
209          }          }
210          public static class Info          public static class Info
211          {          {
212              private static string CreateNewFormat(string format) { return "    " + CreateTimeStamp()+ "(INFO) " + format; }              private static string CreateNewFormat(string format) { return "    " + CreateTimeStamp() + "(INFO) " + format; }
213                [Conditional("LOGGING_ENABLE_INFO"), Conditional("LOGGING_ENABLED")]
214              public static void Write(string format, params object[] args) { if (logging_flags.HasFlag(loggerflags.INFO)) { xlogger.Write(CreateNewFormat(format), args); } }              public static void Write(string format, params object[] args) { if (logging_flags.HasFlag(loggerflags.INFO)) { xlogger.Write(CreateNewFormat(format), args); } }
215                [Conditional("LOGGING_ENABLE_INFO"), Conditional("LOGGING_ENABLED")]
216              public static void WriteLine(string format, params object[] args) { if (logging_flags.HasFlag(loggerflags.INFO)) { xlogger.WriteLine(CreateNewFormat(format), args); } }              public static void WriteLine(string format, params object[] args) { if (logging_flags.HasFlag(loggerflags.INFO)) { xlogger.WriteLine(CreateNewFormat(format), args); } }
217          }          }
218          public static class Warn          public static class Warn
219          {          {
220              private static string CreateNewFormat(string format) { return "    " + CreateTimeStamp() + "(WARN) " + format; }              private static string CreateNewFormat(string format) { return "    " + CreateTimeStamp() + "(WARN) " + format; }
221                [Conditional("LOGGING_ENABLE_WARN"), Conditional("LOGGING_ENABLED")]
222              public static void Write(string format, params object[] args) { if (logging_flags.HasFlag(loggerflags.WARN)) { xlogger.Write(CreateNewFormat(format), args); } }              public static void Write(string format, params object[] args) { if (logging_flags.HasFlag(loggerflags.WARN)) { xlogger.Write(CreateNewFormat(format), args); } }
223                [Conditional("LOGGING_ENABLE_WARN"), Conditional("LOGGING_ENABLED")]
224              public static void WriteLine(string format, params object[] args) { if (logging_flags.HasFlag(loggerflags.WARN)) { xlogger.WriteLine(CreateNewFormat(format), args); } }              public static void WriteLine(string format, params object[] args) { if (logging_flags.HasFlag(loggerflags.WARN)) { xlogger.WriteLine(CreateNewFormat(format), args); } }
225          }          }
226          public static class Debug          public static class Debug
227          {          {
228              private static string CreateNewFormat(string format) { return "    " + CreateTimeStamp() + "(DEBUG) " + format; }              private static string CreateNewFormat(string format) { return "    " + CreateTimeStamp() + "(DEBUG) " + format; }
229                [Conditional("LOGGING_ENABLE_DEBUG"), Conditional("LOGGING_ENABLED")]
230              public static void Write(string format, params object[] args) { if (logging_flags.HasFlag(loggerflags.DEBUG)) { xlogger.Write(CreateNewFormat(format), args); } }              public static void Write(string format, params object[] args) { if (logging_flags.HasFlag(loggerflags.DEBUG)) { xlogger.Write(CreateNewFormat(format), args); } }
231                [Conditional("LOGGING_ENABLE_DEBUG"), Conditional("LOGGING_ENABLED")]
232              public static void WriteLine(string format, params object[] args) { if (logging_flags.HasFlag(loggerflags.DEBUG)) { xlogger.WriteLine(CreateNewFormat(format), args); } }              public static void WriteLine(string format, params object[] args) { if (logging_flags.HasFlag(loggerflags.DEBUG)) { xlogger.WriteLine(CreateNewFormat(format), args); } }
233          }          }
234          public static class VerboseDebug          public static class VerboseDebug
235          {          {
236              private static string CreateNewFormat(string format) { return "    " + CreateTimeStamp() + "(VERBOSE DEBUG) " + format; }              private static string CreateNewFormat(string format) { return "    " + CreateTimeStamp() + "(VERBOSE DEBUG) " + format; }
237                [Conditional("LOGGING_ENABLE_VERBOSEDEBUG"), Conditional("LOGGING_ENABLED")]
238              public static void Write(string format, params object[] args) { if (logging_flags.HasFlag(loggerflags.VERBOSE_DEBUG)) { xlogger.Write(CreateNewFormat(format), args); } }              public static void Write(string format, params object[] args) { if (logging_flags.HasFlag(loggerflags.VERBOSE_DEBUG)) { xlogger.Write(CreateNewFormat(format), args); } }
239                [Conditional("LOGGING_ENABLE_VERBOSEDEBUG"), Conditional("LOGGING_ENABLED")]
240              public static void WriteLine(string format, params object[] args) { if (logging_flags.HasFlag(loggerflags.VERBOSE_DEBUG)) { xlogger.WriteLine(CreateNewFormat(format), args); } }              public static void WriteLine(string format, params object[] args) { if (logging_flags.HasFlag(loggerflags.VERBOSE_DEBUG)) { xlogger.WriteLine(CreateNewFormat(format), args); } }
241          }          }
242          public static class Error          public static class Error
243          {          {
244              private static string CreateNewFormat(string format) { return "    " + CreateTimeStamp() + "(ERROR) " + format; }              private static string CreateNewFormat(string format) { return "    " + CreateTimeStamp() + "(ERROR) " + format; }
245                [Conditional("LOGGING_ENABLE_ERROR"), Conditional("LOGGING_ENABLED")]
246              public static void Write(string format, params object[] args) { if (logging_flags.HasFlag(loggerflags.ERROR)) { xlogger.Write(CreateNewFormat(format), args); } }              public static void Write(string format, params object[] args) { if (logging_flags.HasFlag(loggerflags.ERROR)) { xlogger.Write(CreateNewFormat(format), args); } }
247                [Conditional("LOGGING_ENABLE_ERROR"), Conditional("LOGGING_ENABLED")]
248              public static void WriteLine(string format, params object[] args) { if (logging_flags.HasFlag(loggerflags.ERROR)) { xlogger.WriteLine(CreateNewFormat(format), args); } }              public static void WriteLine(string format, params object[] args) { if (logging_flags.HasFlag(loggerflags.ERROR)) { xlogger.WriteLine(CreateNewFormat(format), args); } }
249          }          }
250          public static class VerboseError          public static class VerboseError
251          {          {
252              private static string CreateNewFormat(string format) { return "    " + CreateTimeStamp() + "(VERBOSE ERROR) " + format; }              private static string CreateNewFormat(string format) { return "    " + CreateTimeStamp() + "(VERBOSE ERROR) " + format; }
253                [Conditional("LOGGING_ENABLE_VERBOSEERROR"), Conditional("LOGGING_ENABLED")]
254              public static void Write(string format, params object[] args) { if (logging_flags.HasFlag(loggerflags.VERBOSE_ERROR)) { xlogger.Write(CreateNewFormat(format), args); } }              public static void Write(string format, params object[] args) { if (logging_flags.HasFlag(loggerflags.VERBOSE_ERROR)) { xlogger.Write(CreateNewFormat(format), args); } }
255                [Conditional("LOGGING_ENABLE_VERBOSEERROR"), Conditional("LOGGING_ENABLED")]
256              public static void WriteLine(string format, params object[] args) { if (logging_flags.HasFlag(loggerflags.VERBOSE_ERROR)) { xlogger.WriteLine(CreateNewFormat(format), args); } }              public static void WriteLine(string format, params object[] args) { if (logging_flags.HasFlag(loggerflags.VERBOSE_ERROR)) { xlogger.WriteLine(CreateNewFormat(format), args); } }
257          }          }
258          public static class Profiler          public static class Profiler
259          {          {
260              private static string CreateNewFormat(string format) { return "    " + CreateTimeStamp() + "(PROFILER) " + format; }              private static string CreateNewFormat(string format) { return "    " + CreateTimeStamp() + "(PROFILER) " + format; }
261                [Conditional("LOGGING_ENABLE_PROFILER"), Conditional("LOGGING_ENABLED")]
262              public static void Write(string format, params object[] args) { if (logging_flags.HasFlag(loggerflags.PROFILER)) { xlogger.Write(CreateNewFormat(format), args); } }              public static void Write(string format, params object[] args) { if (logging_flags.HasFlag(loggerflags.PROFILER)) { xlogger.Write(CreateNewFormat(format), args); } }
263                [Conditional("LOGGING_ENABLE_PROFILER"), Conditional("LOGGING_ENABLED")]
264              public static void WriteLine(string format, params object[] args) { if (logging_flags.HasFlag(loggerflags.PROFILER)) { xlogger.WriteLine(CreateNewFormat(format), args); } }              public static void WriteLine(string format, params object[] args) { if (logging_flags.HasFlag(loggerflags.PROFILER)) { xlogger.WriteLine(CreateNewFormat(format), args); } }
265          }          }
266          #region Force logging          #region Force logging
# Line 279  namespace RomCheater.Logging Line 311  namespace RomCheater.Logging
311    
312          #region ILogger Members          #region ILogger Members
313          public static void Write(string format, params object[] args)          public static void Write(string format, params object[] args)
314          {                      {
315              init();              init();
316              lh.Write(format, args);              lh.Write(format, args);
317          }          }
# Line 317  namespace RomCheater.Logging Line 349  namespace RomCheater.Logging
349                                  throw;                                  throw;
350                              }                              }
351                          }                          }
352                      }                                          }
353                  }                  }
354              }              }
355          }          }
# Line 337  namespace RomCheater.Logging Line 369  namespace RomCheater.Logging
369          #region ILogger Members          #region ILogger Members
370          public void Write(string format, params object[] args)          public void Write(string format, params object[] args)
371          {          {
372              WriteToLog(format,false, args);              WriteToLog(format, false, args);
373          }          }
374          public void WriteLine(string format, params object[] args)          public void WriteLine(string format, params object[] args)
375          {          {
376              WriteToLog(format,true, args);              WriteToLog(format, true, args);
377          }          }
378          private void WriteToLog(string format, bool newline, params object[] args)          private void WriteToLog(string format, bool newline, params object[] args)
379          {          {
# Line 371  namespace RomCheater.Logging Line 403  namespace RomCheater.Logging
403          }          }
404          #endregion          #endregion
405      }      }
406  #endregion      #endregion
407  }  }

Legend:
Removed from v.391  
changed lines
  Added in v.414

  ViewVC Help
Powered by ViewVC 1.1.22