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

OSGNewActionBase.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 #ifdef OSG_NEWACTION_STATISTICS
00042 
00043 //----------------------------------------------------------------------------
00044 //    Statistics
00045 //----------------------------------------------------------------------------
00046 
00047 inline const StatCollector *
00048 NewActionBase::getStatistics(void) const
00049 {
00050     return _pStatistics;
00051 }
00052 
00053 inline StatCollector *
00054 NewActionBase::getStatistics(void)
00055 {
00056     return _pStatistics;
00057 }
00058 
00059 inline void
00060 NewActionBase::setStatistics(StatCollector *pStatistics)
00061 {
00062     _pStatistics = pStatistics;
00063 }
00064 
00065 #endif /* OSG_NEWACTION_STATISTICS */
00066 
00067 //----------------------------------------------------------------------------
00068 //    Traversal Mask
00069 //----------------------------------------------------------------------------
00070 
00075 inline UInt32
00076 NewActionBase::getTravMask(void) const
00077 {
00078     return _travMask;
00079 }
00080 
00085 inline void
00086 NewActionBase::setTravMask(UInt32 travMask)
00087 {
00088     _travMask = travMask;
00089 }
00090 
00091 //----------------------------------------------------------------------------
00092 //    ChildrenList/ExtraChildrenList Access
00093 //----------------------------------------------------------------------------
00094 
00098 inline bool
00099 NewActionBase::getChildrenListEnabled(void) const
00100 {
00101     return _childrenListEnabled;
00102 }
00103 
00114 inline void
00115 NewActionBase::setChildrenListEnabled(bool enabled)
00116 {
00117     if((enabled == true) && (_childrenListEnabled == false))
00118     {
00119         _childrenList.reset();
00120     }
00121 
00122     _childrenListEnabled = enabled;
00123 }
00124 
00133 inline const ChildrenList &
00134 NewActionBase::getChildrenList(void) const
00135 {
00136     return _childrenList;
00137 }
00138 
00147 inline ChildrenList &
00148 NewActionBase::getChildrenList(void)
00149 {
00150     return _childrenList;
00151 }
00152 
00161 inline const ExtraChildrenList &
00162 NewActionBase::getExtraChildrenList(void) const
00163 {
00164     return _extraChildrenList;
00165 }
00166 
00175 inline ExtraChildrenList &
00176 NewActionBase::getExtraChildrenList(void)
00177 {
00178     return _extraChildrenList;
00179 }
00180 
00181 //----------------------------------------------------------------------------
00182 //    MultiPass Setup
00183 //----------------------------------------------------------------------------
00184 
00185 inline UInt32
00186 NewActionBase::getNumPasses(void) const
00187 {
00188     return _numPasses;
00189 }
00190 
00191 inline void
00192 NewActionBase::setNumPasses(UInt32 numPasses)
00193 {
00194     _numPasses = numPasses;
00195 }
00196 
00197 //----------------------------------------------------------------------------
00198 //    Actor Access
00199 //----------------------------------------------------------------------------
00200 
00204 inline NewActionBase::ExtendActorStoreConstIt
00205 NewActionBase::beginExtend(void) const
00206 {
00207     return _extendActors.begin();
00208 }
00209 
00213 inline NewActionBase::ExtendActorStoreIt
00214 NewActionBase::beginExtend(void)
00215 {
00216     return _extendActors.begin();
00217 }
00218 
00222 inline NewActionBase::ExtendActorStoreConstIt
00223 NewActionBase::endExtend(void) const
00224 {
00225     return _extendActors.end();
00226 }
00227 
00231 inline NewActionBase::ExtendActorStoreIt
00232 NewActionBase::endExtend(void)
00233 {
00234     return _extendActors.end();
00235 }
00236 
00240 inline NewActionBase::BasicActorStoreConstIt
00241 NewActionBase::beginBasic(void) const
00242 {
00243     return _basicActors.begin();
00244 }
00245 
00249 inline NewActionBase::BasicActorStoreIt
00250 NewActionBase::beginBasic(void)
00251 {
00252     return _basicActors.begin();
00253 }
00254 
00258 inline NewActionBase::BasicActorStoreConstIt
00259 NewActionBase::endBasic(void) const
00260 {
00261     return _basicActors.end();
00262 }
00263 
00267 inline NewActionBase::BasicActorStoreIt
00268 NewActionBase::endBasic(void)
00269 {
00270     return _basicActors.end();
00271 }
00272 
00273 OSG_END_NAMESPACE
00274 
00275 #define OSGNEWACTIONBASE_INLINE_CVSID "@(#)$Id: OSGNewActionBase.inl,v 1.3 2004/09/17 14:09:43 neumannc Exp $"

Generated on Thu Aug 25 04:07:55 2005 for OpenSG by  doxygen 1.4.3