/// <summary> /// Evaluation procedure -- implementation for modules without layers /// </summary> /// <param name="input">The input.</param> /// <param name="wRecord">The w record.</param> /// <returns></returns> public override ISpiderModuleData evaluate(ISpiderModuleData input, modelSpiderSiteRecord wRecord) { List <spiderLink> output = new List <spiderLink>(); spiderModuleData <spiderLink> outdata = new spiderModuleData <spiderLink>(); moduleDLCRecord moduleLevelReportTable = ((spiderModuleData <spiderLink>)input).moduleDLC; moduleIterationRecord moduleDLCRecordTableEntry = ((spiderModuleData <spiderLink>)input).moduleDLCRecordTableEntry; if (imbWEMManager.settings.directReportEngine.DR_ReportModules) { //dataInput.moduleDLCRecordTableEntry = dataInput.moduleDLC.GetOrCreate(wRecord.iteration.ToString("D3") + module.name); moduleDLCRecordTableEntry.reportEvaluateStart(input as spiderModuleData <spiderLink>, wRecord, this); // <--- module level report --- start } input.active.ForEach(x => output.Add(x as spiderLink)); // ----- this is part where the layer modules are emulated if (imbWEMManager.settings.directReportEngine.DR_ReportModules) { moduleDLCRecordTableEntry.reportEvaluateEnd(output, wRecord, this); // <--- module level report --- start } outdata.active.AddRange(rankLinks(output, wRecord.iteration)); if (imbWEMManager.settings.directReportEngine.DR_ReportModules) { moduleDLCRecordTableEntry.reportEvaluateAlterRanking(outdata.active, wRecord, this); // <--- module level report --- start } return(outdata); }
public override ISpiderModuleData evaluate(ISpiderModuleData input, modelSpiderSiteRecord wRecord) { return(evaluate(input as spiderModuleData <spiderLink>, wRecord)); }
public abstract ISpiderModuleData evaluate(ISpiderModuleData input, modelSpiderSiteRecord wRecord);