internal Status(Simulator simulation) { _sim = simulation; Machines = _sim.Scenario.MachineTypes.SelectMany(type => Enumerable.Range(0, type.Count) .Select(i => new Machine { Type = type, Processing = null })).ToList(); Queues = _sim.Scenario.MachineTypes.Select(t => new Queue<Job>()).ToList(); for (int i = 0; i < Machines.Count; i++) Machines[i].Id = i; JobsInSystem = new List<Job>(); JobsDeparted = new List<Job>(); TimeSeries_JobHoursInSystem = new List<double>(); JobCounter = 0; }
internal FinishProcess(Simulator sim, Job job) : base(sim) { Job = job; }
static void Main(string[] args) { var sim = new Simulator(Scenario.GetExample(2, 5, 4, 3, 6), 0); sim.Run(TimeSpan.FromDays(30)); }
internal Arrival(Simulator sim) : base(sim) { }
internal StartProcess(Simulator sim, Job job) : base(sim) { Job = job; }