private void BuildHandle()
        {
            try
            {
                // Checks
                if (Floors.Count < 2)
                {
                    throw new Exception("The simulation model must have at least 2 floors");
                }
                if (Elevators.Count < 1)
                {
                    throw new Exception("The simulation model must have at least 1 elevator");
                }

                ElevatorSimModel simModel = m_model.BuildModel(Floors.ToList(), Elevators.ToList());
                simModel.Log += AddEventLog;

                m_model.LinkStatistics(Floors.Count, Elevators.Count);

                IsBuilded = true;
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "Error", MessageBoxButton.OK);
            }
        }
Ejemplo n.º 2
0
        public Statistic(string name, ElevatorSimModel model)
        {
            Name    = name;
            m_model = model;

            Data = new List <SData>();
        }
Ejemplo n.º 3
0
        public ElevatorSimModel BuildModel(List <FloorData> floors, List <ElevatorData> elevators)
        {
            ElevatorSimModelBuilder builder = new ElevatorSimModelBuilder();

            builder.BuildGenerators(floors);
            builder.BuildQueues(floors);
            builder.BuildElevators(elevators);

            m_model = new ElevatorSimModel(builder);

            LinkStatistics(floors.Count, elevators.Count);

            return(m_model);
        }
Ejemplo n.º 4
0
 public Event(int time, ElevatorSimModel model)
 {
     Time    = time;
     m_model = model;
 }
Ejemplo n.º 5
0
 public NewCarcall(int time, ElevatorSimModel model, Tenant tenant, Elevator elevator)
     : base(time, model, tenant, elevator)
 {
     Priority = 5;
 }
Ejemplo n.º 6
0
 public DropoffEvent(int time, ElevatorSimModel model, Elevator elevator)
     : base(time, model, elevator)
 {
     Priority = 7;
 }
Ejemplo n.º 7
0
 public ElevatorMoveEvent(int time, ElevatorSimModel model, Elevator elevator)
     : base(time, model, elevator)
 {
     Priority = 2;
 }
Ejemplo n.º 8
0
 public PickupEvent(int time, ElevatorSimModel model, TenantQueue queue, Elevator elevator)
     : base(time, model, queue, elevator)
 {
     Priority = 6;
 }
Ejemplo n.º 9
0
 public ElevatorStopMoveEvent(int time, ElevatorSimModel model, Elevator p)
     : base(time, model, p)
 {
     Priority = 8;
 }
Ejemplo n.º 10
0
 public QueueSize(string name, ElevatorSimModel model)
     : base(name, model)
 {
 }
Ejemplo n.º 11
0
 public EventOf1(int time, ElevatorSimModel model, T p)
     : base(time, model)
 {
     m_p = p;
 }
Ejemplo n.º 12
0
 public EventOf2(int time, ElevatorSimModel model, T1 p1, T2 p2)
     : base(time, model)
 {
     m_p1 = p1;
     m_p2 = p2;
 }
Ejemplo n.º 13
0
 public NewHallcallEvent(int time, ElevatorSimModel model, Tenant tenant, Elevator elevator)
     : base(time, model, tenant, elevator)
 {
     Priority = 4;
 }
Ejemplo n.º 14
0
 public ElevatorOccupancy(string name, ElevatorSimModel model)
     : base(name, model)
 {
 }
Ejemplo n.º 15
0
 public NewTenantEvent(int time, ElevatorSimModel model, TenantGenerator generator, TenantQueue queue)
     : base(time, model, generator, queue)
 {
     Priority = 3;
 }