Exemplo n.º 1
0
 internal Simulation(
     int lengthInHours,
     BoardParameters boardParameters,
     int initialCaseCount)
     : this(
         lengthInHours,
         boardParameters,
         0,
         initialCaseCount,
         new Dictionary <Hour, int>())
 {
 }
Exemplo n.º 2
0
 internal Simulation(
     int lengthInHours,
     BoardParameters boardParameters,
     int minimumDaysBetweenOP,
     int initialCaseCount,
     Dictionary <int, int> arriving)
     : this(
         lengthInHours,
         boardParameters,
         minimumDaysBetweenOP,
         initialCaseCount,
         __scheduleArrivals(arriving))
 {
 }
Exemplo n.º 3
0
 public static Simulation MakeSimulation(
     int years,
     BoardParameters boardParameters,
     int minimumDaysBetweenOP,
     int initialCaseCount,
     int arrivalsPerMonth = 0)
 {
     return(new Simulation(
                years * TimeParameters.HoursPerYear,
                boardParameters,
                minimumDaysBetweenOP,
                initialCaseCount,
                arrivalsPerMonth));
 }
Exemplo n.º 4
0
 internal Simulation(
     int lengthInHours,
     BoardParameters boardParameters,
     int minimumDaysBetweenOP,
     int initialCaseCount,
     int arrivalsPerMonth)
     : this(
         lengthInHours,
         boardParameters,
         minimumDaysBetweenOP,
         initialCaseCount,
         __scheduleArrivals(arrivalsPerMonth, lengthInHours))
 {
 }
Exemplo n.º 5
0
        internal Simulation(
            int lengthInHours,
            BoardParameters boardParameters,
            int minimumDaysBetweenOP,
            int initialCaseCount,
            Dictionary <Hour, int> arriving)
        {
            OPSchedule opSchedule = new SimpleOPScheduler(minimumDaysBetweenOP);
            Registrar  registrar  = new Registrar(opSchedule);

            _board         = boardParameters.MakeBoard(registrar);
            _timeSpan      = new SimulationTimeSpan(new Hour(0), new Hour(lengthInHours - 1));
            _reports       = new HourlyReports();
            _arrivingCases = arriving;

            _assembleInitialCases(initialCaseCount);
        }