static void ManualLoggingTest(Stream ecuStream, SerialPort port) { SsmLogger logger = SsmLogger.GetInstance(Environment.CurrentDirectory, ecuStream); IAsyncResult asyncResult = logger.BeginConnect(ConnectCallback, logger); asyncResult.AsyncWaitHandle.WaitOne(); LogProfile profile = LogProfile.GetInstance(); foreach (SsmParameter parameter in logger.Database.Parameters) { switch (parameter.Name) { case "Engine Load": case "Manifold Relative Pressure": case "Engine Speed": profile.Add(parameter, parameter.Conversions[0]); break; } } logger.SetProfile(profile); logger.LogStart += LogStart; logger.LogEntry += LogEntry; logger.LogStop += LogEnd; logger.StartLogging(); for (int i = 0; i < 100000 && !Console.KeyAvailable; i++) { Thread.Sleep(1); } logger.StopLogging(); Thread.Sleep(500); }
public void LoggerUserData() { SsmLogger logger = SsmLogger.GetInstance(Environment.CurrentDirectory, MockEcuStream.PortName); IAsyncResult result = logger.BeginConnect(null, null); result.AsyncWaitHandle.WaitOne(); ParameterSource source = logger.EndConnect(result); ParameterDatabase database = ParameterDatabase.GetInstance(); database.Add(source); LogProfile profile = LogProfile.CreateInstance(); foreach (SsmParameter parameter in database.Parameters) { profile.Add(parameter, parameter.Conversions[0]); if (profile.Columns.Count == 8) { break; } } string userData = "UserData"; profile.UserData = userData; logger.SetProfile(profile, database); logger.LogStart += this.LoggerUserDataLogStart; logger.LogEntry += this.LoggerUserDataLogEntry; logger.LogStop += this.LoggerUserDataLogStop; logger.StartLogging(); System.Threading.Thread.Sleep(500); IAsyncResult stopResult = logger.BeginStopLogging(null, null); stopResult.AsyncWaitHandle.WaitOne(); logger.EndStopLogging(stopResult); Assert.AreSame(userData, userDataFromLogStart); Assert.AreSame(userData, userDataFromLogEntry); Assert.AreSame(userData, userDataFromLogStop); }