Inviwo 0.9.12-pre
Inviwo documentation
Loading...
Searching...
No Matches
inviwo::animation::KeyframeSequenceTyped< Key > Class Template Reference

#include <valuekeyframesequence.h>

Inheritance diagram for inviwo::animation::KeyframeSequenceTyped< Key >:

Public Types

using key_type = Key
using value_type = typename Key::value_type
Public Types inherited from inviwo::animation::BaseKeyframeSequence< Key >
using key_type = Key
using value_type = typename Key::value_type
using iterator = util::IndirectIterator<typename std::vector<std::unique_ptr<Key>>::iterator>
using const_iterator

Public Member Functions

 KeyframeSequenceTyped (std::vector< std::unique_ptr< Key > > keyframes)
 KeyframeSequenceTyped (std::vector< std::unique_ptr< Key > > keyframes, std::unique_ptr< InterpolationTyped< Key > > interpolation)
 KeyframeSequenceTyped (const KeyframeSequenceTyped &rhs)
KeyframeSequenceTypedoperator= (const KeyframeSequenceTyped &that)
virtual ~KeyframeSequenceTyped ()
virtual KeyframeSequenceTyped< Key > * clone () const override
virtual void operator() (Seconds from, Seconds to, value_type &out) const
virtual const InterpolationTyped< Key > & getInterpolation () const override
virtual void setInterpolation (std::unique_ptr< Interpolation > interpolation) override
void setInterpolation (std::unique_ptr< InterpolationTyped< Key, value_type > > interpolation)
virtual std::vector< InterpolationFactoryObject * > getSupportedInterpolations (InterpolationFactory &factory) const override
virtual Easing getEasingType () const override
virtual void setEasingType (Easing easing) override
virtual void serialize (Serializer &s) const override
virtual void deserialize (Deserializer &d) override
Public Member Functions inherited from inviwo::animation::BaseKeyframeSequence< Key >
 BaseKeyframeSequence (std::vector< std::unique_ptr< Key > > keyframes)
virtual ~BaseKeyframeSequence ()
virtual size_t size () const override
virtual const Key & operator[] (size_t i) const override
virtual Key & operator[] (size_t i) override
virtual const Key & getFirst () const override
virtual Key & getFirst () override
virtual const Key & getLast () const override
virtual Key & getLast () override
virtual std::optional< Seconds > getPrevTime (Seconds at) const final
virtual std::optional< Seconds > getNextTime (Seconds at) const final
iterator begin ()
const_iterator begin () const
iterator end ()
const_iterator end () const
virtual Key * add (std::unique_ptr< Keyframe > key) override
Key * add (std::unique_ptr< Key > key)
virtual std::unique_ptr< Keyframeremove (size_t i) override
virtual std::unique_ptr< Keyframeremove (Keyframe *key) override
virtual bool isSelected () const override
virtual void setSelected (bool selected) override
Public Member Functions inherited from inviwo::animation::KeyframeSequence
Seconds getFirstTime () const
Seconds getLastTime () const
std::pair< Seconds, Seconds > getTimeSpan () const
bool isAnyKeyframeSelected () const
Public Member Functions inherited from inviwo::Observable< KeyframeSequenceObserver >
Observable< KeyframeSequenceObserver > & operator= (const 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 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 ()
Public Member Functions inherited from inviwo::Observable< ValueKeyframeSequenceObserver >
Observable< ValueKeyframeSequenceObserver > & operator= (const Observable< ValueKeyframeSequenceObserver > &other)
void addObserver (ValueKeyframeSequenceObserver *observer)
void removeObserver (ValueKeyframeSequenceObserver *observer)
virtual void startBlockingNotifications () override final
virtual void stopBlockingNotifications () override final

Additional Inherited Members

Protected Member Functions inherited from inviwo::animation::BaseKeyframeSequence< Key >
 BaseKeyframeSequence (const BaseKeyframeSequence &rhs)
BaseKeyframeSequenceoperator= (const BaseKeyframeSequence &that)
virtual void onKeyframeTimeChanged (Keyframe *key, Seconds oldTime) override
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
virtual void addObserver (Observer *observer)=0
virtual void removeObserver (Observer *observer)=0
void addObservationHelper (Observer *observer)
void removeObservationHelper (Observer *observer)
Protected Member Functions inherited from inviwo::Observer
void addObservation (ObservableInterface *observable)
Protected Member Functions inherited from inviwo::animation::ValueKeyframeSequenceObserverble
void notifyValueKeyframeSequenceEasingChanged (ValueKeyframeSequence *seq)
void notifyValueKeyframeSequenceInterpolationChanged (ValueKeyframeSequence *seq)
Protected Member Functions inherited from inviwo::Observable< ValueKeyframeSequenceObserver >
void forEachObserver (C callback)
Protected Attributes inherited from inviwo::animation::BaseKeyframeSequence< Key >
std::vector< std::unique_ptr< Key > > keyframes_
bool isSelected_ {false}
Protected Attributes inherited from inviwo::Observer
std::unordered_set< ObservableInterface * > observables_

Detailed Description

template<typename Key>
class inviwo::animation::KeyframeSequenceTyped< Key >

KeyframeSequence for a given type of KeyFames. Keyframes are expected to be interpolated so a InterpolationTyped<Key> must be defined for the given Keyframe.

See also
KeyframeSequence

Constructor & Destructor Documentation

◆ ~KeyframeSequenceTyped()

template<typename Key>
virtual inviwo::animation::KeyframeSequenceTyped< Key >::~KeyframeSequenceTyped ( )
virtual

Remove all keyframes and call KeyframeObserver::notifyKeyframeRemoved

Member Function Documentation

◆ clone()

template<typename Key>
virtual KeyframeSequenceTyped< Key > * inviwo::animation::KeyframeSequenceTyped< Key >::clone ( ) const
overridevirtual

◆ deserialize()

template<typename Key>
virtual void inviwo::animation::KeyframeSequenceTyped< Key >::deserialize ( Deserializer & d)
overridevirtual

◆ getEasingType()

template<typename Key>
virtual Easing inviwo::animation::KeyframeSequenceTyped< Key >::getEasingType ( ) const
overridevirtual

◆ getInterpolation()

template<typename Key>
virtual const InterpolationTyped< Key > & inviwo::animation::KeyframeSequenceTyped< Key >::getInterpolation ( ) const
overridevirtual

◆ getSupportedInterpolations()

template<typename Key>
virtual std::vector< InterpolationFactoryObject * > inviwo::animation::KeyframeSequenceTyped< Key >::getSupportedInterpolations ( InterpolationFactory & factory) const
overridevirtual

◆ serialize()

template<typename Key>
virtual void inviwo::animation::KeyframeSequenceTyped< Key >::serialize ( Serializer & s) const
overridevirtual

◆ setEasingType()

template<typename Key>
virtual void inviwo::animation::KeyframeSequenceTyped< Key >::setEasingType ( Easing easing)
overridevirtual

◆ setInterpolation()

template<typename Key>
virtual void inviwo::animation::KeyframeSequenceTyped< Key >::setInterpolation ( std::unique_ptr< Interpolation > interpolation)
overridevirtual

The documentation for this class was generated from the following file:
  • valuekeyframesequence.h