//ATM Simulation Interface - Individual Sessions

ATM Simulation Interface - Individual Sessions

 * Example ATM simulation - file session.h
 * This file declares the class that represents a single customer session
 * with the ATM, implementing the corresponding use case.
 * Copyright (c) 1996 - Russell C. Bjork


Interface for class Session

class Session
    /* PURPOSE: Manage a session with a single user.


	Session(int cardNumber);

	// Run session until user is through or some exceptional condition
	// prevents further processing

	void doSessionUseCase();

	// Force user to re-enter PIN if bank says original PIN was invalid.
	// Return final code from resubmission to bank.

	Bank::ApprovalCode doInvalidPINExtension();

	// Each transation obtains this information from the session when it
	// is needed

	int cardNumber() const;
	int PIN() const;


	enum { RUNNING, ABORTED } _state;
 	int			  _cardNumber;
	int 			  _PIN;
	class Transaction * 	  _currentTransaction;