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

osg::DrawActionBase Class Reference
[Action]

#include <OSGDrawActionBase.h>

Inheritance diagram for osg::DrawActionBase:

osg::Action osg::DrawAction osg::RenderActionBase osg::RenderAction List of all members.

Public Types

typedef ArgsCollector< Action * > FunctorArgs
typedef TypedFunctor2Base<
ResultE, CPtrRefCallArg<
CNodePtr >, FunctorArgs
Functor
enum  ResultE { Continue, Skip, Quit }

Public Member Functions

virtual ~DrawActionBase (void)
 Destructor.
ViewportgetViewport (void) const
void setViewport (Viewport *viewport)
CameragetCamera (void) const
void setCamera (Camera *cam)
const MatrixgetCameraToWorld (void)
BackgroundgetBackground (void) const
void setBackground (Background *background)
WindowgetWindow (void) const
void setWindow (Window *window)
StatCollectorgetStatistics (void)
void setStatistics (StatCollector *stat)
bool getFrustumCulling (void) const
void setFrustumCulling (bool val=true)
bool getVolumeDrawing (void) const
void setVolumeDrawing (bool val=false)
bool getAutoFrustum (void) const
void setAutoFrustum (bool val=true)
const FrustumVolumegetFrustum (void) const
void setFrustum (FrustumVolume &frust)
virtual bool isVisible (Node *node)=0
UInt32 selectVisibles (void)
MaterialgetMaterial (void) const
NodePtr getMaterialNode (void) const
void setMaterial (Material *pMaterial, NodePtr node)
virtual Action::ResultE start (void)
virtual Action::ResultE stop (Action::ResultE res)
void registerEnterFunction (const FieldContainerType &type, const Functor &func)
void registerLeaveFunction (const FieldContainerType &type, const Functor &func)
virtual ResultE apply (std::vector< NodePtr >::iterator begin, std::vector< NodePtr >::iterator end)
virtual ResultE apply (NodePtr node)
NodePtr getActNode (void)
UInt32 getNNodes (void) const
const NodePtr getNode (int index)
void addNode (NodePtr node)
void useNodeList (void)
void printTable (void)
UInt32 getTravMask (void) const
void setTravMask (UInt32 val)
bool operator< (const Action &other)
 assignment
bool operator== (const Action &other)
 equal
bool operator!= (const Action &other)
 unequal

Static Public Member Functions

static const char * getClassname (void)
static Actioncreate (void)
 create a new action
static void setPrototype (Action *proto)
static ActiongetPrototype (void)
static void registerEnterDefault (const FieldContainerType &type, const Functor &func)
static void registerLeaveDefault (const FieldContainerType &type, const Functor &func)

Static Public Attributes

static StatElemDesc< StatTimeElemstatTravTime
static StatElemDesc< StatIntElemstatCullTestedNodes
static StatElemDesc< StatIntElemstatCulledNodes

Protected Member Functions

 DrawActionBase (void)
 Constructor.
 DrawActionBase (const DrawActionBase &source)
void operator= (const DrawActionBase &source)
virtual std::vector< Functor > * getDefaultEnterFunctors (void)=0
virtual std::vector< Functor > * getDefaultLeaveFunctors (void)=0
ResultE callEnter (NodePtr node)
ResultE callLeave (NodePtr node)
virtual ResultE stop (ResultE res)
ResultE recurse (NodePtr node)
ResultE callNewList (void)
void setActNode (NodePtr node)

Static Protected Member Functions

static ResultE _defaultEnterFunction (CNodePtr &node, Action *action)
static ResultE _defaultLeaveFunction (CNodePtr &node, Action *action)

Protected Attributes

Camera_camera
Background_background
Window_window
Viewport_viewport
StatCollector_statistics
bool _ownStat
Material_pMaterial
NodePtr _pMaterialNode
bool _frustumCulling
bool _volumeDrawing
bool _autoFrustum
FrustumVolume _frustum
Matrix _mCameraToWorld
std::vector< Functor_enterFunctors
std::vector< Functor_leaveFunctors

Private Types

typedef Action Inherited

Static Private Attributes

static char cvsid [] = "@(#)$Id: $"

Detailed Description

The base class for all rendering-related actions.

Definition at line 77 of file OSGDrawActionBase.h.


Member Typedef Documentation

typedef Action osg::DrawActionBase::Inherited [private]
 

Reimplemented in osg::DrawAction, osg::RenderAction, and osg::RenderActionBase.

Definition at line 231 of file OSGDrawActionBase.h.

typedef ArgsCollector<Action *> osg::Action::FunctorArgs [inherited]
 

Definition at line 95 of file OSGAction.h.

typedef TypedFunctor2Base<ResultE, CPtrRefCallArg<CNodePtr>, FunctorArgs > osg::Action::Functor [inherited]
 

Definition at line 99 of file OSGAction.h.


Member Enumeration Documentation

enum osg::Action::ResultE [inherited]
 

Enumerator:
Continue 
Skip 
Quit 

Definition at line 87 of file OSGAction.h.

00088     {   
00089         Continue,   // continue with my children
00090         Skip,       // skip my children
00091         // really needed? Cancel, // skip my brothers, go one step up
00092         Quit        // forget it, you're done
00093     };


Constructor & Destructor Documentation

DrawActionBase::~DrawActionBase void   )  [virtual]
 

Definition at line 162 of file OSGDrawActionBase.cpp.

References _ownStat, and _statistics.

00163 {
00164 #if 0 // Altered for last frame time
00165 
00166 #else
00167   if (_ownStat) {
00168      delete _statistics;
00169   }
00170 #endif
00171 }

DrawActionBase::DrawActionBase void   )  [protected]
 

Definition at line 122 of file OSGDrawActionBase.cpp.

00122                                    :
00123      Inherited     (     ),
00124     _camera        (NULL ),
00125     _background    (NULL ),
00126     _window        (NULL ),
00127     _viewport      (NULL ),
00128     _statistics    (NULL ),
00129     _ownStat       (false),
00130     _frustumCulling(true ),
00131     _volumeDrawing (false),
00132     _autoFrustum   (true ),
00133     _frustum       (     ),
00134     _pMaterial     (     ),
00135     _pMaterialNode (     ),
00136     _mCameraToWorld(     )
00137 {
00138 }

DrawActionBase::DrawActionBase const DrawActionBase source  )  [protected]
 

Definition at line 141 of file OSGDrawActionBase.cpp.

00141                                                            :
00142      Inherited     (source                 ),
00143     _camera        (source._camera         ),
00144     _background    (source._background     ),
00145     _window        (source._window         ),
00146     _viewport      (source._viewport       ),
00147     _statistics    (source._statistics     ),
00148     _ownStat       (source._ownStat        ),
00149     _frustumCulling(source._frustumCulling ),
00150     _volumeDrawing (source._volumeDrawing  ),
00151     _autoFrustum   (source._autoFrustum    ),
00152     _frustum       (source._frustum        ),
00153     _pMaterial     (source._pMaterial      ),
00154     _pMaterialNode (source._pMaterialNode  ),
00155     _mCameraToWorld(source._mCameraToWorld )
00156 {
00157 }


Member Function Documentation

Viewport * osg::DrawActionBase::getViewport void   )  const [inline]
 

Definition at line 119 of file OSGDrawActionBase.inl.

References _viewport.

Referenced by osg::TextureTransformChunk::activate(), osg::TexGenChunk::activate(), osg::TextureTransformChunk::changeFrom(), osg::TexGenChunk::changeFrom(), osg::DVRIsoShader::deactivate_ColorMatrixShading(), osg::DVRIsoShader::getCoveredScreenRect(), start(), osg::SHLChunk::updateCameraOrientation(), osg::SHLChunk::updateCameraPosition(), osg::SHLChunk::updateInvViewMatrix(), osg::SHLChunk::updateStereoLeftEye(), and osg::SHLChunk::updateViewMatrix().

00120 {
00121     return _viewport;
00122 }

void DrawActionBase::setViewport Viewport viewport  ) 
 

Definition at line 267 of file OSGDrawActionBase.cpp.

References _viewport.

Referenced by osg::Viewport::draw(), osg::PassiveViewport::draw(), osg::Viewport::render(), and osg::PassiveViewport::render().

00268 {
00269     _viewport = viewport;
00270 }

Camera * osg::DrawActionBase::getCamera void   )  const [inline]
 

Definition at line 95 of file OSGDrawActionBase.inl.

References _camera.

Referenced by osg::TextureTransformChunk::activate(), osg::TexGenChunk::activate(), osg::TextureTransformChunk::changeFrom(), osg::TexGenChunk::changeFrom(), osg::SkyBackground::clear(), drawViewerObjects< posTrait, colTrait, sizeTrait, geoTrait >::draw(), osg::DVRVolume::draw(), drawViewerObjects< posTrait, colTrait, sizeTrait, geoTrait >::drawIndexed(), osg::DVRIsoShader::getCoveredScreenRect(), osg::Slicer::getSlicingDirection(), osg::Slicer::rotateToLocal(), start(), osg::SHLChunk::updateCameraOrientation(), osg::SHLChunk::updateCameraPosition(), osg::SHLChunk::updateInvViewMatrix(), osg::SHLChunk::updateStereoLeftEye(), and osg::SHLChunk::updateViewMatrix().

00096 {
00097     return _camera;
00098 }

void DrawActionBase::setCamera Camera cam  ) 
 

Definition at line 272 of file OSGDrawActionBase.cpp.

References _camera.

Referenced by osg::Viewport::draw(), osg::PassiveViewport::draw(), osg::Viewport::render(), and osg::PassiveViewport::render().

00273 {
00274     _camera = cam;
00275 }

const Matrix & osg::DrawActionBase::getCameraToWorld void   )  [inline]
 

Definition at line 101 of file OSGDrawActionBase.inl.

References _mCameraToWorld.

Referenced by osg::ClipPlaneChunk::activate(), osg::Particles::calcIndex(), osg::Billboard::calcMatrix(), osg::ClipPlaneChunk::changeFrom(), drawViewerQuads< posTrait, colTrait, texTrait, sizeTrait >::draw(), drawViewDirQuads< posTrait, colTrait, texTrait, sizeTrait >::draw(), osg::DistanceLOD::draw(), drawViewerQuads< posTrait, colTrait, texTrait, sizeTrait >::drawIndexed(), drawViewDirQuads< posTrait, colTrait, texTrait, sizeTrait >::drawIndexed(), osg::Slices::drawPrimitives(), and osg::Particles::drawPrimitives().

00102 {
00103     return _mCameraToWorld;
00104 }

Background * osg::DrawActionBase::getBackground void   )  const [inline]
 

Definition at line 107 of file OSGDrawActionBase.inl.

References _background.

00108 {
00109     return _background;
00110 }

void DrawActionBase::setBackground Background background  ) 
 

Definition at line 277 of file OSGDrawActionBase.cpp.

References _background.

Referenced by osg::Viewport::draw(), osg::PassiveViewport::draw(), osg::Viewport::render(), and osg::PassiveViewport::render().

00278 {
00279     _background = background;
00280 }

Window * osg::DrawActionBase::getWindow void   )  const [inline]
 

Definition at line 113 of file OSGDrawActionBase.inl.

References _window.

Referenced by osg::TextureTransformChunk::activate(), osg::TextureChunk::activate(), osg::TexGenChunk::activate(), osg::SHLParameterChunk::activate(), osg::SHLChunk::activate(), osg::RegisterCombinersChunk::activate(), osg::ProgramChunk::activate(), osg::PointChunk::activate(), osg::DVRSimpleLUTShader::activate(), osg::CubeTextureChunk::activate(), osg::BlendChunk::activate(), osg::DVRIsoShader::activate_NVRegisterCombinerShading(), osg::DVRSimpleLUTShader::brickActivate(), osg::TextureTransformChunk::changeFrom(), osg::TextureChunk::changeFrom(), osg::TexGenChunk::changeFrom(), osg::SHLParameterChunk::changeFrom(), osg::SHLChunk::changeFrom(), osg::ProgramChunk::changeFrom(), osg::PointChunk::changeFrom(), osg::CubeTextureChunk::changeFrom(), osg::BlendChunk::changeFrom(), osg::TextureGrabBackground::clear(), osg::TextureTransformChunk::deactivate(), osg::TextureChunk::deactivate(), osg::TexGenChunk::deactivate(), osg::SHLChunk::deactivate(), osg::ProgramChunk::deactivate(), osg::PointChunk::deactivate(), osg::DVRSimpleLUTShader::deactivate(), osg::CubeTextureChunk::deactivate(), osg::BlendChunk::deactivate(), osg::TextureGrabForeground::draw(), osg::DVRVolume::draw(), osg::Surface::drawPrimitives(), osg::Slices::drawPrimitives(), osg::Geometry::drawPrimitives(), osg::DVRMtexLUTShader::initCombiners(), osg::DVRIsoShader::initCombiners_Diffuse2Combiners(), osg::DVRIsoShader::initCombiners_DiffuseMultiCombiners(), osg::DVRIsoShader::initCombiners_IsoSurfaceDiffuse(), osg::DVRIsoShader::initCombiners_IsoSurfaceSpecular(), osg::DVRIsoShader::initCombiners_Specular2Combiners(), osg::DVRIsoShader::initCombiners_SpecularMultiCombiners(), osg::DVRSimpleLUTShader::initialize(), osg::DVRMtexLUTShader::initialize(), osg::DVRVolume::initializeClipObjects(), osg::DVRSimpleLUTShader::isModeSupported(), osg::DVRIsoShader::isModeSupported(), osg::BrickSet::reloadBrickTextures(), osg::DVRMtexLUTShader::renderSlice(), osg::DVRIsoShader::renderSlice_NVRegisterCombinerShading(), osg::DVRSimpleLUTShader::setupAlphaCorrectionRegisterCombiners(), osg::DVRIsoShader::setupCombinerParametersDiffuse(), osg::DVRIsoShader::setupCombinerParametersSpecular(), osg::SHLChunk::updateActiveLightsMask(), osg::SHLChunk::updateCameraOrientation(), osg::SHLChunk::updateCameraPosition(), osg::SHLChunk::updateClusterId(), osg::SHLChunk::updateInvViewMatrix(), osg::SHLChunk::updateLight0Active(), osg::SHLChunk::updateLight1Active(), osg::SHLChunk::updateLight2Active(), osg::SHLChunk::updateLight3Active(), osg::SHLChunk::updateLight4Active(), osg::SHLChunk::updateLight5Active(), osg::SHLChunk::updateLight6Active(), osg::SHLChunk::updateLight7Active(), osg::SHLChunk::updateOSGParameters(), osg::SHLChunk::updateStereoLeftEye(), and osg::SHLChunk::updateViewMatrix().

00114 {
00115     return _window;
00116 }

void DrawActionBase::setWindow Window window  ) 
 

Definition at line 282 of file OSGDrawActionBase.cpp.

References _window.

Referenced by osg::Window::drawAllViewports(), osg::Window::renderAllViewports(), and osg::SortFirstWindow::serverRender().

00283 {
00284     _window = window;
00285 }

StatCollector * osg::DrawActionBase::getStatistics void   )  [inline]
 

Definition at line 149 of file OSGDrawActionBase.inl.

References _ownStat, _statistics, and osg::StatCollector::create().

Referenced by osg::TextureChunk::activate(), osg::TextureChunk::changeFrom(), osg::SpotLight::drawEnter(), osg::PointLight::drawEnter(), osg::DirectionalLight::drawEnter(), osg::Slices::drawPrimitives(), osg::Geometry::drawPrimitives(), osg::RenderAction::isVisible(), osg::DrawAction::isVisible(), osg::RenderAction::pushVisibility(), osg::SpotLight::renderEnter(), osg::PointLight::renderEnter(), osg::DirectionalLight::renderEnter(), osg::RenderAction::start(), start(), osg::RenderAction::stop(), and stop().

00150 {
00151     if(_statistics == NULL)
00152     {
00153         _statistics = StatCollector::create();
00154         _ownStat = true;
00155     }
00156 
00157     return _statistics;
00158 }

void DrawActionBase::setStatistics StatCollector stat  ) 
 

Definition at line 287 of file OSGDrawActionBase.cpp.

References _ownStat, and _statistics.

Referenced by osg::SimpleSceneManager::setStatistics().

00288 {
00289 #if 0 // Altered for last frame time
00290     _statistics = statistics;
00291     _ownStat = false;
00292 #else
00293     if (_ownStat) {
00294        delete _statistics;
00295     }
00296     _statistics = statistics;
00297     _ownStat = false;
00298 #endif
00299 }

bool osg::DrawActionBase::getFrustumCulling void   )  const [inline]
 

Definition at line 125 of file OSGDrawActionBase.inl.

References _frustumCulling.

Referenced by osg::RenderAction::isVisible(), osg::DrawAction::isVisible(), osg::RenderAction::popVisibility(), osg::RenderAction::pushVisibility(), selectVisibles(), and start().

00126 {
00127     return _frustumCulling;
00128 }

void DrawActionBase::setFrustumCulling bool  val = true  ) 
 

Definition at line 305 of file OSGDrawActionBase.cpp.

References _frustumCulling.

00306 {
00307     _frustumCulling = frustumCulling;
00308 }

bool osg::DrawActionBase::getVolumeDrawing void   )  const [inline]
 

Definition at line 131 of file OSGDrawActionBase.inl.

References _volumeDrawing.

Referenced by osg::RenderAction::pushVisibility(), selectVisibles(), and stop().

00132 {
00133     return _volumeDrawing;
00134 }

void DrawActionBase::setVolumeDrawing bool  val = false  ) 
 

Definition at line 321 of file OSGDrawActionBase.cpp.

References _volumeDrawing.

00322 {
00323     _volumeDrawing = volumeDrawing;
00324 }

bool osg::DrawActionBase::getAutoFrustum void   )  const [inline]
 

Definition at line 137 of file OSGDrawActionBase.inl.

References _autoFrustum.

Referenced by start().

00138 {
00139     return _autoFrustum;
00140 }

void DrawActionBase::setAutoFrustum bool  val = true  ) 
 

Definition at line 313 of file OSGDrawActionBase.cpp.

References _autoFrustum.

00314 {
00315     _autoFrustum = autoFrustum;
00316 }

const FrustumVolume & osg::DrawActionBase::getFrustum void   )  const [inline]
 

Definition at line 143 of file OSGDrawActionBase.inl.

References _frustum.

00144 {
00145     return _frustum;
00146 }

void DrawActionBase::setFrustum FrustumVolume frust  ) 
 

Definition at line 328 of file OSGDrawActionBase.cpp.

References _frustum.

00329 {
00330     _frustum = frustum;
00331 }

virtual bool osg::DrawActionBase::isVisible Node node  )  [pure virtual]
 

Implemented in osg::DrawAction, and osg::RenderAction.

Referenced by osg::Switch::draw(), osg::ProxyGroup::draw(), osg::DistanceLOD::draw(), and selectVisibles().

UInt32 DrawActionBase::selectVisibles void   ) 
 

Definition at line 334 of file OSGDrawActionBase.cpp.

References osg::Action::addNode(), osg::dropVolume(), getFrustumCulling(), osg::Action::getNNodes(), osg::Action::getNode(), getVolumeDrawing(), isVisible(), osg::Color3< ValueTypeT >::setValuesRGB(), and osg::Action::useNodeList().

Referenced by osg::Switch::draw(), osg::Transform::drawEnter(), osg::MaterialGroup::drawEnter(), osg::Light::drawEnter(), osg::Inline::drawEnter(), and osg::Group::drawEnter().

00335 {
00336     if(getFrustumCulling() == false)
00337         return getNNodes();
00338 
00339     useNodeList();
00340 
00341     Color3f col;
00342     
00343     UInt32 count = 0;
00344     for ( UInt32 i = 0; i < getNNodes(); i++ )
00345     {
00346         if ( isVisible( getNode(i).getCPtr() ) )
00347         {
00348             col.setValuesRGB(0,1,0);
00349             addNode( getNode(i) );
00350             ++count;
00351         }
00352         else
00353             col.setValuesRGB(1,0,0);
00354         
00355         if(getVolumeDrawing())
00356         {
00357             dropVolume(this, getNode(i), col);
00358         }
00359     }
00360 
00361     return count;
00362 }

Material * osg::DrawActionBase::getMaterial void   )  const [inline]
 

Definition at line 161 of file OSGDrawActionBase.inl.

References _pMaterial.

Referenced by osg::DVRVolume::doDraw(), osg::MaterialDrawable::drawActionHandler(), osg::MaterialGroup::drawEnter(), osg::RenderAction::dropFunctor(), osg::RenderAction::dropGeometry(), osg::MaterialDrawable::renderActionHandler(), and osg::MaterialGroup::renderEnter().

00162 {
00163     return _pMaterial;
00164 }

NodePtr osg::DrawActionBase::getMaterialNode void   )  const [inline]
 

Definition at line 167 of file OSGDrawActionBase.inl.

References _pMaterialNode.

Referenced by osg::MaterialGroup::drawLeave(), and osg::MaterialGroup::renderLeave().

00168 {
00169     return _pMaterialNode;
00170 }

void DrawActionBase::setMaterial Material pMaterial,
NodePtr  node
 

Definition at line 175 of file OSGDrawActionBase.cpp.

References _pMaterial, and _pMaterialNode.

Referenced by osg::MaterialGroup::drawEnter(), osg::MaterialGroup::drawLeave(), osg::MaterialGroup::renderEnter(), and osg::MaterialGroup::renderLeave().

00176 {
00177     _pMaterial     = pMaterial;
00178     _pMaterialNode = node;
00179 }

Action::ResultE DrawActionBase::start void   )  [virtual]
 

Reimplemented from osg::Action.

Reimplemented in osg::DrawAction, and osg::RenderAction.

Definition at line 182 of file OSGDrawActionBase.cpp.

References _camera, _frustum, _mCameraToWorld, _ownStat, _statistics, osg::Action::Continue, osg::StatCollector::create(), getAutoFrustum(), getCamera(), osg::StatCollector::getElem(), osg::Camera::getFrustum(), getFrustumCulling(), getStatistics(), osg::Camera::getViewing(), getViewport(), osg::TransformationMatrix< ValueTypeT >::invert(), osg::StatElem::reset(), statCulledNodes, statCullTestedNodes, osg::Drawable::statNLines, osg::Drawable::statNPoints, osg::Drawable::statNPrimitives, osg::Drawable::statNTriangles, osg::Drawable::statNVertices, and statTravTime.

00183 {
00184     if(getFrustumCulling() == true &&
00185        getAutoFrustum   () == true &&
00186        getCamera        () != NULL &&
00187        getViewport      () != NULL)
00188     {
00189         getCamera()->getFrustum( _frustum, *getViewport() );
00190 //_frustum.dump();
00191     }
00192 
00193     if(_camera != NULL && getViewport() != NULL)
00194     {
00195         _camera->getViewing( _mCameraToWorld,
00196                              getViewport()->getPixelWidth(),
00197                              getViewport()->getPixelHeight() );
00198         _mCameraToWorld.invert();
00199     }
00200 
00201 //    cerr << "DA::start" << endl;
00202 
00203 //    cerr << _mCameraToWorld << endl << endl;
00204     
00205 
00206 #if 0 // Altered for last frame time
00207     if(_statistics == NULL)
00208     {
00209         _statistics = StatCollector::create();
00210         _ownStat = true;
00211     }
00212     else
00213     {
00214         _ownStat = false;        
00215     }
00216 #else
00217     if(_statistics == NULL)
00218     {
00219         _statistics = StatCollector::create();
00220         _ownStat = true;
00221     }
00222 #endif
00223 
00224     getStatistics()->getElem(statTravTime)->start();
00225     getStatistics()->getElem(statCullTestedNodes)->reset();
00226     getStatistics()->getElem(statCulledNodes)->reset();
00227    
00228     // this really doesn't belong here, but don't know a better place to put it
00229     if(getStatistics()->getElem(Drawable::statNTriangles,false))
00230     {
00231         getStatistics()->getElem(Drawable::statNTriangles)->set(0);
00232         getStatistics()->getElem(Drawable::statNLines)->set(0);
00233         getStatistics()->getElem(Drawable::statNPoints)->set(0);
00234         getStatistics()->getElem(Drawable::statNVertices)->set(0);
00235         getStatistics()->getElem(Drawable::statNPrimitives)->set(0);
00236     }
00237 
00238 //fprintf(stderr,"%p: start\n", Thread::getCurrent());
00239         
00240     return Action::Continue;
00241 }

Action::ResultE DrawActionBase::stop Action::ResultE  res  )  [virtual]
 

Definition at line 243 of file OSGDrawActionBase.cpp.

References _frustum, _ownStat, _statistics, osg::drawVolume(), osg::StatCollector::getElem(), getStatistics(), getVolumeDrawing(), and statTravTime.

Referenced by osg::RenderAction::stop().

00244 {
00245     if ( getVolumeDrawing() )
00246         drawVolume( _frustum );  
00247  
00248     getStatistics()->getElem(statTravTime)->stop();
00249   
00250 #if 0 // Altered for last frame time
00251     if(_ownStat)
00252     {
00253         delete _statistics;
00254         _statistics = NULL;
00255     }
00256     else
00257     {
00258         _ownStat = false;        
00259     }
00260 #endif
00261 
00262     return res; 
00263 }

void osg::DrawActionBase::operator= const DrawActionBase source  )  [protected]
 

virtual std::vector<Functor>* osg::DrawActionBase::getDefaultEnterFunctors void   )  [protected, pure virtual]
 

Reimplemented from osg::Action.

Implemented in osg::DrawAction, and osg::RenderAction.

virtual std::vector<Functor>* osg::DrawActionBase::getDefaultLeaveFunctors void   )  [protected, pure virtual]
 

Reimplemented from osg::Action.

Implemented in osg::DrawAction, and osg::RenderAction.

static const char* osg::Action::getClassname void   )  [inline, static, inherited]
 

Reimplemented in osg::DrawAction, osg::IntersectAction, and osg::VRMLWriteAction.

Definition at line 109 of file OSGAction.h.

00109 { return "Action"; }

Action * Action::create void   )  [static, inherited]
 

Reimplemented in osg::DrawAction, osg::IntersectAction, osg::RenderAction, and osg::VRMLWriteAction.

Definition at line 176 of file OSGAction.cpp.

References osg::Action::_prototype, and osg::Action::Action().