// person walks onto a floor void Person::stepOntoFloor( Floor& floor ) { // notify floor a person is coming cout << "person " << ID << " steps onto floor " << floor.getNumber() << endl; floor.personArrives( this ); // press button on the floor cout << "person " << ID << " presses floor button on floor " << floor.getNumber() << endl; floor.floorButton.pressButton(); }
Elevator::Elevator(Floor &flr1, Floor &flr2) : currentFloor(flr1.getNumber()), destFloor(flr1.getNumber()), floor1(flr1), floor2(flr2), personPtr(0), moving(false), doors(), bell(), currentTime(0), arrivalTime(0), movingDirection(NO), elevatorbutton(*this) { cout << "Elevator was created." << endl; }
// person exits elevator void Person::exitElevator( const Floor &floor, Elevator &elevator ) const { cout << "person " << ID << " exits elevator on floor " << floor.getNumber() << endl; elevator.passengerExits(); }