using System; using System.Collections.Generic; using System.Text; using System.Collections; using System.IO; namespace ElementalGame { public class Logging { private static int NaN; private static int Nulls; private static System.DateTime start; private static ArrayList Events = new ArrayList(); public static void addNan() { Logging.NaN++; } public static void addNull() { Logging.Nulls++; } public static void setStart(System.DateTime val) { Logging.start = val; } public static void addEventString(String data) { Logging.Events.Add(data + "\r"); } public static void genReport(System.DateTime val2) { System.Diagnostics.Debug.WriteLine("Run Report"); System.Diagnostics.Debug.WriteLine("Run Started: " + Logging.start.ToString()); System.Diagnostics.Debug.WriteLine("Run Ended: " + val2.ToString()); System.Diagnostics.Debug.WriteLine("Elapsed time: " + (val2.Minute - Logging.start.Minute) + ":" + (val2.Second - Logging.start.Second)); System.Diagnostics.Debug.WriteLine("Total NaNs: " + Logging.NaN); System.Diagnostics.Debug.WriteLine("Total Nulls: " + Logging.Nulls); System.Diagnostics.Debug.WriteLine("Events: \n"); for (int i = 0; i < Logging.Events.Count; i++) { System.Diagnostics.Debug.WriteLine((String)Logging.Events[i]); } } public static void saveLog(System.DateTime val2) { FileStream fs = File.Open("log.txt", FileMode.Create); StreamWriter sw = new StreamWriter(fs); sw.WriteLine("Run Report"); sw.WriteLine("Run Started: " + Logging.start.ToString()); sw.WriteLine("Run Ended: " + val2.ToString()); sw.WriteLine("Elapsed time: " + (val2.Minute - Logging.start.Minute) + ":" + (val2.Second - Logging.start.Second)); sw.WriteLine("Total NaNs: " + Logging.NaN); sw.WriteLine("Total Nulls: " + Logging.Nulls); sw.WriteLine("Events: \r"); for (int i = 0; i < Logging.Events.Count; i++) { sw.WriteLine((String)Logging.Events[i]); } sw.Flush(); sw.Close(); } } }