Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

OSGStatElemDesc.inl

Go to the documentation of this file.
00001 /*---------------------------------------------------------------------------*\
00002  *                                OpenSG                                     *
00003  *                                                                           *
00004  *                                                                           *
00005  *             Copyright (C) 2000-2002 by the OpenSG Forum                   *
00006  *                                                                           *
00007  *                            www.opensg.org                                 *
00008  *                                                                           *
00009  *   contact: dirk@opensg.org, gerrit.voss@vossg.org, jbehr@zgdv.de          *
00010  *                                                                           *
00011 \*---------------------------------------------------------------------------*/
00012 /*---------------------------------------------------------------------------*\
00013  *                                License                                    *
00014  *                                                                           *
00015  * This library is free software; you can redistribute it and/or modify it   *
00016  * under the terms of the GNU Library General Public License as published    *
00017  * by the Free Software Foundation, version 2.                               *
00018  *                                                                           *
00019  * This library is distributed in the hope that it will be useful, but       *
00020  * WITHOUT ANY WARRANTY; without even the implied warranty of                *
00021  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU         *
00022  * Library General Public License for more details.                          *
00023  *                                                                           *
00024  * You should have received a copy of the GNU Library General Public         *
00025  * License along with this library; if not, write to the Free Software       *
00026  * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.                 *
00027  *                                                                           *
00028 \*---------------------------------------------------------------------------*/
00029 /*---------------------------------------------------------------------------*\
00030  *                                Changes                                    *
00031  *                                                                           *
00032  *                                                                           *
00033  *                                                                           *
00034  *                                                                           *
00035  *                                                                           *
00036  *                                                                           *
00037 \*---------------------------------------------------------------------------*/
00038 
00039 OSG_BEGIN_NAMESPACE
00040 
00041 /*-------------------------------------------------------------------------*/
00042 
00043 inline bool StatElemDescBase::isValidID (Int32 id)
00044 { 
00045   return (_descVec && (id >= 0) && (id < Int32(_descVec->size()))); 
00046 }
00047 
00048 /*-------------------------------------------------------------------------*/
00049 
00050 inline  StatElemDescBase *StatElemDescBase::getDesc (Int32 id)
00051 { 
00052   return (*_descVec)[id]; 
00053 }
00054 
00055 /*-------------------------------------------------------------------------*/
00056 
00057 inline  Int32 StatElemDescBase::getNumOfDescs(void)
00058 { 
00059   return _descVec ? _descVec->size() : 0; 
00060 }
00061 
00062 /*-------------------------------------------------------------------------*/
00063 
00064 inline const Char8 *StatElemDescBase::getClassname(void)
00065 { 
00066   return "StatElemDescBase"; 
00067 }
00068 
00069 /*-------------------------------------------------------------------------*/
00070 
00071 inline        Int32   StatElemDescBase::getID            (void) 
00072 { 
00073   return _id; 
00074 }
00075 
00076 /*-------------------------------------------------------------------------*/
00077 
00078 inline  const IDString &StatElemDescBase::getName        (void) 
00079 { 
00080   return _name; 
00081 }
00082 
00083 /*-------------------------------------------------------------------------*/
00084 
00085 inline  const IDString &StatElemDescBase::getDescription (void) 
00086 { 
00087   return _description; 
00088 }
00089 
00090 
00091 
00092 // The templated StatElemDesc
00093 
00094 template <class T>
00095 char StatElemDesc<T>::cvsid[] = "@(#)$Id: OSGStatElemDesc.inl,v 1.5 2002/01/24 22:55:05 dirk Exp $";
00096 
00097 
00098 template <class T> inline
00099 StatElemDesc<T>::StatElemDesc( const Char8 *name, const Char8 *description ) :
00100     StatElemDescBase(name, description)
00101 {
00102 }
00103 
00104 
00105 template <class T> inline
00106 StatElemDesc<T>::~StatElemDesc()
00107 {
00108 }
00109 
00110 
00111 template <class T> inline
00112 StatElem *StatElemDesc<T>::createElem(void)
00113 {
00114     return T::create(this);
00115 }
00116 
00117 
00118 OSG_END_NAMESPACE
00119 
00120 #define OSGSTATELEMDESC_INLINE_CVSID "@(#)$Id: OSGStatElemDesc.inl,v 1.5 2002/01/24 22:55:05 dirk Exp $"

Generated on Thu Aug 25 04:10:46 2005 for OpenSG by  doxygen 1.4.3