Back to index

fet  5.18.0
room.h
Go to the documentation of this file.
00001 //
00002 //
00003 // Description: This file is part of FET
00004 //
00005 //
00006 // Author: Liviu Lalescu <Please see http://lalescu.ro/liviu/ for details about contacting Liviu Lalescu (in particular, you can find here the e-mail address)>
00007 // Copyright (C) 2003 Liviu Lalescu <http://lalescu.ro/liviu/>
00008 //
00009 /***************************************************************************
00010  *                                                                         *
00011  *   This program is free software; you can redistribute it and/or modify  *
00012  *   it under the terms of the GNU General Public License as published by  *
00013  *   the Free Software Foundation; either version 2 of the License, or     *
00014  *   (at your option) any later version.                                   *
00015  *                                                                         *
00016  ***************************************************************************/
00017 
00018 #ifndef ROOM_H
00019 #define ROOM_H
00020 
00021 #include <QCoreApplication>
00022 
00023 #include "timetable_defs.h"
00024 
00025 #include <QString>
00026 #include <QList>
00027 #include <QStringList>
00028 
00029 class Room;
00030 class Rules;
00031 
00032 typedef QList<Room*> RoomsList;
00033 
00039 class Room{ /*classroom :-)*/
00040        Q_DECLARE_TR_FUNCTIONS(Room)
00041 
00042 public:
00043        QString name;
00044        int capacity;
00045        
00049        QString building; 
00050        
00054        int buildingIndex;
00055 
00056        Room();
00057        ~Room();
00058        
00059        void computeInternalStructure(Rules& r);
00060 
00061        QString getXmlDescription();
00062        QString getDescription();
00063        QString getDetailedDescription();
00064        QString getDetailedDescriptionWithConstraints(Rules& r);
00065 };
00066 
00067 int roomsAscending(const Room* r1, const Room* r2);
00068 
00069 #endif