Esempio n. 1
0
    // Methods //
    public void RequestElevator(int floorNumber, CageManager cageManager)
    {
        foreach (FloorButton button in floorButtons)
        {
            if (button.id == floorNumber)
            {
                button.status = "Active";
            }
        }

        Column myColumn = cageManager.GetColumn(1, floorNumber);

        Console.WriteLine("Floor requested. Please proceed to column " + myColumn.id);
    }
Esempio n. 2
0
 // Assign each request to an elevator //
 static void AssignElevator(CageManager myCageManager)
 {
     foreach (Request request in requestQueue)
     {
         if (request.assignment == "Unassigned")
         {
             Column myColumn = myCageManager.GetColumn(request.pickup, request.destination);
             Console.WriteLine("Column " + myColumn.id + " is selected.");
             Cage myCage = myCageManager.GetCage(request.direction, myColumn.id - 1, request.pickup);
             request.assignment = "Assigned";
             myCage.pickupRequests.Add(request);
             Console.WriteLine("Cage " + myCage.id + " receives request for floor " + myCage.pickupRequests[0].pickup);
             myCage.pickupRequests.OrderBy(o => o.pickup);
         }
     }
 }