Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | File Members

BasicClassGroup.h

Go to the documentation of this file.
00001 /*******************************************************************\ 00002 00003 Copyright (C) 2003 Joseph Coffland 00004 00005 This program is free software; you can redistribute it and/or 00006 modify it under the terms of the GNU General Public License 00007 as published by the Free Software Foundation; either version 2 00008 of the License, or (at your option) any later version. 00009 00010 This program is distributed in the hope that it will be useful, 00011 but WITHOUT ANY WARRANTY; without even the implied warranty of 00012 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00013 GNU General Public License for more details. 00014 00015 You should have received a copy of the GNU General Public License 00016 along with this program; if not, write to the Free Software 00017 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 00018 02111-1307, USA. 00019 00020 For information regarding this software email 00021 jcofflan@users.sourceforge.net 00022 00023 \*******************************************************************/ 00024 00025 #ifndef BASICCLASSGROUP_H 00026 #define BASICCLASSGROUP_H 00027 00028 #include "BasicException.h" 00029 00035 class BasicClassGroup { 00036 protected: 00037 void **classes; 00038 unsigned int size; 00039 00044 BasicClassGroup(void **classes, const unsigned int size) : 00045 classes(classes), size(size) {} 00046 00047 ~BasicClassGroup() {} 00048 00056 void *getClass(const unsigned int id) { 00057 ASSERT_OR_THROW("BasicClassGroup id out of range!", 00058 0 <= id && id < size); 00059 return classes[id]; 00060 } 00061 00062 friend class BasicClassGroupFactory; 00063 friend class BasicClassAccessorBase; 00064 }; 00065 00066 #endif

Generated on Thu Sep 16 16:17:17 2004 for nostdinc by doxygen 1.3.8