Inviwo  0.9.10.1
Inviwo documentation
inviwo::animation::KeyframeSequence Class Referenceabstract

#include <keyframesequence.h>

+ Inheritance diagram for inviwo::animation::KeyframeSequence:

Public Member Functions

virtual KeyframeSequenceclone () const =0
 
virtual size_t size () const =0
 
virtual const Keyframeoperator[] (size_t i) const =0
 
virtual Keyframeoperator[] (size_t i)=0
 
virtual const KeyframegetFirst () const =0
 
virtual KeyframegetFirst ()=0
 
virtual const KeyframegetLast () const =0
 
virtual KeyframegetLast ()=0
 
Seconds getFirstTime () const
 
Seconds getLastTime () const
 
std::pair< Seconds, Seconds > getTimeSpan () const
 
virtual void add (std::unique_ptr< Keyframe > key)=0
 
virtual std::unique_ptr< Keyframeremove (size_t i)=0
 
virtual std::unique_ptr< Keyframeremove (Keyframe *key)=0
 
virtual bool isSelected () const =0
 
virtual void setSelected (bool selected)=0
 
bool isAnyKeyframeSelected () const
 
virtual void serialize (Serializer &s) const override=0
 
virtual void deserialize (Deserializer &d) override=0
 
- Public Member Functions inherited from inviwo::Observable< KeyframeSequenceObserver >
 Observable (const Observable< KeyframeSequenceObserver > &other)
 
 Observable (Observable< KeyframeSequenceObserver > &&other)
 
Observable< KeyframeSequenceObserver > & operator= (const Observable< KeyframeSequenceObserver > &other)
 
Observable< KeyframeSequenceObserver > & operator= (Observable< KeyframeSequenceObserver > &&other)
 
void addObserver (KeyframeSequenceObserver *observer)
 
void removeObserver (KeyframeSequenceObserver *observer)
 
virtual void startBlockingNotifications () override final
 
virtual void stopBlockingNotifications () override final
 
- Public Member Functions inherited from inviwo::animation::KeyframeObserver
virtual void onKeyframeTimeChanged (Keyframe *, Seconds)
 
virtual void onKeyframeSelectionChanged (Keyframe *)
 
- Public Member Functions inherited from inviwo::Observer
 Observer (const Observer &other)
 
 Observer (Observer &&other)
 
Observeroperator= (Observer &&other)
 
Observeroperator= (const Observer &other)
 
virtual ~Observer ()
 
void removeObservation (ObservableInterface *observable)
 
void removeObservations ()
 

Additional Inherited Members

- Protected Types inherited from inviwo::Observer
using ObservableSet = std::unordered_set< ObservableInterface * >
 
- Protected Member Functions inherited from inviwo::animation::KeyframeSequenceObserverble
void notifyKeyframeAdded (Keyframe *key, KeyframeSequence *seq)
 
void notifyKeyframeRemoved (Keyframe *key, KeyframeSequence *seq)
 
void notifyKeyframeSequenceMoved (KeyframeSequence *seq)
 
void notifyKeyframeSequenceSelectionChanged (KeyframeSequence *seq)
 
- Protected Member Functions inherited from inviwo::Observable< KeyframeSequenceObserver >
void forEachObserver (C callback)
 
- Protected Member Functions inherited from inviwo::ObservableInterface
void addObservationHelper (Observer *observer)
 
void removeObservationHelper (Observer *observer)
 
- Protected Member Functions inherited from inviwo::Observer
void addObservation (ObservableInterface *observable)
 
- Protected Attributes inherited from inviwo::Observer
ObservableSet observables_
 

Detailed Description

Interface for a sequence of keyframes, which will be evaluated during an animation. The KeyframeSequence is a part of a Track and owns Keyframes. All keyframes in the sequence are interpolated using the same Interpolation method.

Note
Interpolation will only be performed if more than two key frames exist.
See also
KeyFrame
Interpolation

Member Function Documentation

◆ add()

virtual void inviwo::animation::KeyframeSequence::add ( std::unique_ptr< Keyframe key)
pure virtual

Add Keyframe and call KeyframeObserver::notifyKeyframeAdded

Implemented in inviwo::animation::BaseKeyframeSequence< Key >, and inviwo::animation::BaseKeyframeSequence< ControlKeyframe >.

◆ remove()

virtual std::unique_ptr<Keyframe> inviwo::animation::KeyframeSequence::remove ( size_t  i)
pure virtual

Remove Keyframe and call KeyframeObserver::notifyKeyframeRemoved

Implemented in inviwo::animation::BaseKeyframeSequence< Key >, and inviwo::animation::BaseKeyframeSequence< ControlKeyframe >.

◆ size()

virtual size_t inviwo::animation::KeyframeSequence::size ( ) const
pure virtual

The documentation for this class was generated from the following files: