/// <summary> /// Constructor for Signal phase /// </summary> /// <param name="startDate"></param> /// <param name="endDate"></param> /// <param name="signalId"></param> /// <param name="eventData1"></param> /// <param name="region"></param> /// <param name="detChannel"></param> public RLMSignalPhase(DateTime startDate, DateTime endDate, int binSize, double srlvSeconds, int metricTypeID, MOE.Common.Models.Approach approach, bool usePermissivePhase) { this.srlvSeconds = srlvSeconds; this.startDate = startDate; this.endDate = endDate; this.Approach = approach; this.binSize = binSize; IsPermissive = usePermissivePhase; Models.Repositories.IControllerEventLogRepository controllerRepository = Models.Repositories.ControllerEventLogRepositoryFactory.Create(); if (!Approach.IsProtectedPhaseOverlap) { GetSignalPhaseData(startDate, endDate, showVolume, binSize, usePermissivePhase); } else { totalVolume = controllerRepository.GetTMCVolume(startDate, endDate, Approach.SignalID, Approach.ProtectedPhaseNumber); GetSignalOverlapData(startDate, endDate, showVolume, binSize); } }
private void AddStartingPlan() { if (Plans.Count > 0 && Plans[0].PlanStart != StartDate) { Models.Repositories.IControllerEventLogRepository controllerEventLogRepository = Models.Repositories.ControllerEventLogRepositoryFactory.Create(); Models.Controller_Event_Log planEvent = controllerEventLogRepository.GetFirstEventBeforeDate(SignalID, 131, Plans[0].PlanStart); if (planEvent != null) { Plan plan = new Plan(StartDate, Plans[0].PlanStart, planEvent.EventParam); Plans.Insert(0, plan); } else { Plan plan = new Plan(StartDate, Plans[0].PlanStart, 0); Plans.Insert(0, plan); } } }