LinkVisitor
Go to the documentation of this file.
/* -*-c++-*-
* Copyright (C) 2008 Cedric Pinson <cedric.pinson@plopbyte.net>
*
* This library is open source and may be redistributed and/or modified under
* the terms of the OpenSceneGraph Public License (OSGPL) version 0.0 or
* (at your option) any later version. The full license is in LICENSE file
* included with this distribution, and on the openscenegraph.org website.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* OpenSceneGraph Public License for more details.
*/
#ifndef OSGANIMATION_NODE_VISITOR_H
#define OSGANIMATION_NODE_VISITOR_H
#include <osg/NodeVisitor>
#include <osg/StateSet>
#include <osgAnimation/Animation>
namespace osgAnimation
{
class AnimationUpdateCallbackBase;
class OSGANIMATION_EXPORT LinkVisitor : public osg::NodeVisitor
{
public:
LinkVisitor();
META_NodeVisitor(osgAnimation, LinkVisitor);
void apply(osg::Node& node);
void apply(osg::Geode& node);
AnimationList& getAnimationList();
void reset();
unsigned int getNbLinkedTarget() const { return _nbLinkedTarget; }
protected:
void handle_stateset(osg::StateSet* stateset);
void link(osgAnimation::AnimationUpdateCallbackBase* cb);
// animation list to link
AnimationList _animations;
// number of success link done
unsigned int _nbLinkedTarget;
};
}
#endif
Animation
NodeVisitor
StateSet
osgAnimation::AnimationUpdateCallbackBase
Definition AnimationUpdateCallback:27
osgAnimation::LinkVisitor::META_NodeVisitor
META_NodeVisitor(osgAnimation, LinkVisitor)
osgAnimation::LinkVisitor::LinkVisitor
LinkVisitor()
osgAnimation::LinkVisitor::reset
void reset()
osgAnimation::LinkVisitor::handle_stateset
void handle_stateset(osg::StateSet *stateset)
osgAnimation::LinkVisitor::apply
void apply(osg::Geode &node)
osgAnimation::LinkVisitor::_animations
AnimationList _animations
Definition LinkVisitor:48
osgAnimation::LinkVisitor::_nbLinkedTarget
unsigned int _nbLinkedTarget
Definition LinkVisitor:51
osgAnimation::LinkVisitor::getAnimationList
AnimationList & getAnimationList()
osgAnimation::LinkVisitor::getNbLinkedTarget
unsigned int getNbLinkedTarget() const
Definition LinkVisitor:40
osgAnimation::LinkVisitor::link
void link(osgAnimation::AnimationUpdateCallbackBase *cb)
osgAnimation::LinkVisitor::apply
void apply(osg::Node &node)
osg::Geode
Definition Geode:29
osg::NodeVisitor
Definition NodeVisitor:82
osg::Node
Definition Node:72
osg::StateSet
Definition StateSet:46
osgAnimation
Definition Action:34
osgAnimation::AnimationList
std::vector< osg::ref_ptr< osgAnimation::Animation > > AnimationList
Definition Animation:100
OSGANIMATION_EXPORT
#define OSGANIMATION_EXPORT
Definition osgAnimation/Export:40