/////////////////////////////////////////////////////////// // Softwarebauelemente II, Aufgabe O2.1 // // author: Stephan Brumme // last changes: February 26, 2001 #if !defined(AFX_ROOM_H__34138CE0_E97C_11D4_9BB7_8BA1BD2C3421__INCLUDED_) #define AFX_ROOM_H__34138CE0_E97C_11D4_9BB7_8BA1BD2C3421__INCLUDED_ #if _MSC_VER > 1000 #pragma once #endif // _MSC_VER > 1000 // for basic class behaviour #include "BasicClass.h" // declare class CRoom class CRoom : public CBasicClass { public: // constructor (former Init) CRoom(int nNumberOfRoom, int nArea); // return class name static char* ClassnameOf() { return "CRoom"; } // display the attributes friend ostream& operator<<(ostream &mystream, const CRoom& room); // compare two rooms bool operator==(const CRoom &room) const; virtual bool EqualValue(const CRoom* room) const; // copy one room to another one CRoom& operator=(const CRoom &room); virtual bool Copy(const CRoom* room); // access m_nNumberOfRoom int GetNumberOfRoom() const; void SetNumberOfRoom(const int nNumberOfRoom); // retrieve covered area int GetArea() const; protected: // used to perform proper display in derived classes virtual ostream& OutStream(ostream& mystream, bool bDebug=false) const; private: // hide the member variables int m_nNumberOfRoom; int m_nArea; }; #endif // !defined(AFX_ROOM_H__34138CE0_E97C_11D4_9BB7_8BA1BD2C3421__INCLUDED_)