/// <summary> /// Preprocessor stage implementation. /// </summary> /// <param name="t">Input trace entity.</param> /// <returns></returns> private static async Task <TraceEntity> PreprocessorStageFunc(TraceEntity t) { // Run module await _moduleConfiguration.PreprocessorStageModule.PreprocessTraceAsync(t); return(t); }
/// <summary> /// Trace stage implementation. /// </summary> /// <param name="t">Input trace entity.</param> /// <returns></returns> private static async Task <TraceEntity> TraceStageFunc(TraceEntity t) { // Run module await _moduleConfiguration.TraceStageModule.GenerateTraceAsync(t); return(t); }
/// <summary> /// Analysis stage implementation. /// </summary> /// <param name="t">Input trace entity.</param> /// <returns></returns> private static async Task AnalysisStageFunc(TraceEntity t) { // Run modules in parallel await Task.WhenAll(_moduleConfiguration.AnalysesStageModules.Select(module => module.AddTraceAsync(t))); }