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 $"
1.4.3