private void Init() { lock (s_mainLockObject) { Tracings = new TracingBlock(); LastRequest = DateTime.Now; LastResultRequest = DateTime.Now; Results = new List <DetectionArtifact>(); for (int i = 0; i < 15 && Engine == null; i++) { Engine = new PatternsProcessorWrapper(GUID, DateTime.Now); } // PAW20171123 if (Engine == null) { Logger.WriteLogEntry(TraceEventType.Verbose, "Patterns Add On Manager, Patterns Session Data, Init", "PAW debug: Failed to create an Engine"); } else { Logger.WriteLogEntry(TraceEventType.Verbose, "Patterns Add On Manager, Patterns Session Data, Init", "PAW debug: Engine created"); } StartTime = DateTime.MinValue; EndTimeOfPreviousTracings = DateTime.MinValue; Logger.WriteLogEntry(TraceEventType.Verbose, "Patterns Add On Manager, Patterns Session Data, Init", "Session created"); } }
private void ReInstance(TracingData inData, int nTracingLength) { lock (s_mainLockObject) { UnInitSessionData(); LastRequest = DateTime.Now; // Clear buffers of live calculation m_fhrToProcess.Clear(); m_upToProcess.Clear(); String logHeader = "Patterns Add On Manager, Patterns Session Data, ReInstance"; Logger.WriteLogEntry(TraceEventType.Verbose, logHeader, "Engine should be null, is " + Engine == null ? "null" : "exists"); Engine = new PatternsProcessorWrapper(GUID, DateTime.Now); Logger.WriteLogEntry(TraceEventType.Verbose, logHeader, "Engine should exist, is " + Engine == null ? "null" : "exists"); System.Diagnostics.Trace.WriteLine("ReInstance: inData.StartTime (before RI)= " + StartTime.ToString()); StartTime = inData.StartTime; EndTimeOfPreviousTracings = inData.StartTime.AddSeconds(nTracingLength); System.Diagnostics.Trace.WriteLine("PrepareProcessPatterns: EndTimeOfPreviousTracings (after RI)= " + EndTimeOfPreviousTracings.ToString()); System.Diagnostics.Trace.WriteLine("PrepareProcessPatterns: inData.StartTime (after RI)= " + StartTime.ToString()); Logger.WriteLogEntry(TraceEventType.Verbose, logHeader, "Engine recreated"); } }