Schnittstelle von CRaum
CRaum besitzt als Datenobjekt naturgemäß mehrere Zugriffsfunktionen. Da diese für Gegenstände und Räume identisch sind, wird hier nur die Schnittstelle zur Raumverbindung erläutert. Die Gegenstandsverwaltung arbeitet entsprechend analog.
Konstruktor
CRaum::CRaum (string strName);
Der Konstruktor erstellt die notwendigen Listen und weist dem Raum den Namen strName zu.
Raumverbindung hinzufügen
virtual int CRaum::AddRaum (CRaum * pRaum);
Diese Funktion hängt den übergebenen Raum an die Liste mit Raumverbindungen an und liefert 0 zurück. Mögliche Fehlerfälle existieren bisher nicht. Ist die Verbindung bereits vorhanden, wird die Anfrage ignoriert.
Raumverbindung abfragen
virtual int CRaum::GetRaum (int iPos, CRaum * & pRaum);
GetRaum(..) liefert einen Zeiger auf den Raum, der durch die Verbindung iPos erreichbar ist, zurück. Ist der Index außerhalb des gültigen Bereiches, so ist der Rückgabewert der Funktion 1 und der zurückgelieferter CRaum Zeiger ist ungültig.
Raumverbindung entfernen
virtual int CRaum::RemoveRaum (int iPos, CRaum * & pRaum);
RemoveRaum(..) liefert einen Zieger auf den Raum, der durch die Verbindung iPos erreichbar ist, zurück und entfernt diesen aus der Liste der vorhandenen Verbindungen. Ist der Index außerhalb des gültigen bereiches, so ist der Rückgabewert der Funktion 1 und der zurückgelieferte CRaum - Zeiger ist ungültig.