/*    Lawrenceville Press CollegeClass type DECLARATION                    */
/*    This library file has been modified to operate with CodeWarrior 3.3  */
/*	  October 1997, updated September 1998                                 */

#ifndef _College_
#define _College_
//#include <bool.h>
#include <lvpstring.h>
#include <iostream.h>
#include <fstream.h>
#include <stdlib.h>

class CollegeClass
{
	public:
		CollegeClass();
		~CollegeClass();

		bool GetNext();        // Move to next college; returns false if fails
		bool CurrentIsValid(); // Returns true only if current item is valid
		void Reset();          // Moves back to the start of the database

		// These functions obtain the information of the current item
		lvpstring GetName() const;
		lvpstring GetTown() const;
		lvpstring GetState() const;
		lvpstring GetPubOrPri() const;
		long GetEnrollment() const;
		long GetTuition() const;
		long GetRoomAndBoard() const;

		// Dislays information of the current item (for debugging)
		friend ostream & operator << (ostream &, const CollegeClass &);

	private:
		lvpstring CurrentName;
		lvpstring CurrentTown;
		lvpstring CurrentState;
		lvpstring CurrentPubOrPri;
		long CurrentEnrollment;
		long CurrentTuition;
		long CurrentRoomAndBoard;
		ifstream DBFile;
		bool IsValid;
};

#include <college.cpp>
#endif

