15 #ifndef OSGANIMATION_TIMELINE
16 #define OSGANIMATION_TIMELINE 1
18 #include <osgAnimation/Export>
21 #include <osg/observer_ptr>
24 #include <osgAnimation/Action>
25 #include <osgAnimation/FrameAction>
26 #include <osgAnimation/AnimationManagerBase>
27 #include <osgAnimation/StatsVisitor>
55 void play() { _state = Play; }
56 void gotoFrame(
unsigned int frame) { _currentFrame = frame; }
57 void stop() { _state = Stop; }
60 bool isActive(
Action* activeAction);
62 void removeAction(
Action* action);
63 virtual void addActionAt(
unsigned int frame,
Action* action,
int priority = 0);
64 virtual void addActionAt(
double t,
Action* action,
int priority = 0);
65 void addActionNow(
Action* action,
int priority = 0);
69 virtual void update(
double simulationTime);
77 void collectStats(
bool state);
82 void processPendingOperation();
113 void internalRemoveAction(
Action* action);
114 void internalAddAction(
int priority,
const FrameAction& ftl);
#define OSGANIMATION_EXPORT
double getCurrentTime() const
std::vector< FrameAction > ActionList
const ActionLayers & getActionLayers() const
osg::ref_ptr< osg::Stats > _stats
const ActionList & getActionLayer(int i)
unsigned int _currentFrame
TimelineStatus getStatus() const
bool getEvaluating() const
osg::observer_ptr< AnimationManagerBase > _animationManager
std::pair< unsigned int, osg::ref_ptr< Action > > FrameAction
Command(int priority, const FrameAction &action)
unsigned int _previousFrameEvaluated
void setEvaluating(bool state)
CommandList _addActionOperations
void gotoFrame(unsigned int frame)
osg::ref_ptr< osgAnimation::StatsActionVisitor > _statsVisitor
ActionList _removeActionOperations
std::vector< Command > CommandList
void setLastFrameEvaluated(unsigned int frame)
std::map< int, ActionList > ActionLayers
unsigned int getCurrentFrame() const
#define META_Action(library, name)