Example #1
0
// 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();
}
Example #2
0
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;
}
Example #3
0
// person exits elevator
void Person::exitElevator( 
   const Floor &floor, Elevator &elevator ) const
{
   cout << "person " << ID << " exits elevator on floor "
        << floor.getNumber() << endl;
   elevator.passengerExits();
}