|
| AnimationController (Animation &animation, AnimationManager &manager, InviwoApplication *app=util::getInviwoApplication()) |
|
void | play () |
| Play animation.
|
|
void | pause () |
| Pause animation.
|
|
void | render () |
| Render the animation into an image sequence.
|
|
void | stop () |
|
void | jumpToPrevKeyframe () |
|
void | jumpToNextKeyframe () |
|
void | jumpToPrevControlKeyframe () |
|
void | jumpToNextControlKeyframe () |
|
void | setState (AnimationState newState) |
|
void | tick () |
| Advances the animation to the next time step in playing state.
|
|
void | eval (Seconds oldTime, Seconds newTime) |
| Asks the animation to update the network to reflect the new time.
|
|
void | setAnimation (Animation &animation) |
|
Animation & | getAnimation () |
| Returns mutable controlled animation.
|
|
const Animation & | getAnimation () const |
| Returns controlled animation.
|
|
const AnimationState & | getState () const |
| Returns the current state of the controller, whether it is playing, or pausing, and such.
|
|
PlaybackDirection | getPlaybackDirection () const |
| Returns the playback direction used during tick.
|
|
void | setPlaybackDirection (PlaybackDirection newDirection) |
|
Seconds | getCurrentTime () const |
|
Seconds | deltaTime () const |
|
InviwoApplication * | getInviwoApplication () override |
|
| Observable (const Observable< AnimationControllerObserver > &other) |
|
| Observable (Observable< AnimationControllerObserver > &&other) noexcept |
|
Observable< AnimationControllerObserver > & | operator= (const Observable< AnimationControllerObserver > &other) |
|
Observable< AnimationControllerObserver > & | operator= (Observable< AnimationControllerObserver > &&other) noexcept |
|
void | addObserver (AnimationControllerObserver *observer) |
|
void | removeObserver (AnimationControllerObserver *observer) |
|
virtual void | startBlockingNotifications () override final |
|
virtual void | stopBlockingNotifications () override final |
|
virtual | ~PropertyOwner () |
| Removes all properties and notifies its observers of the removal.
|
|
virtual void | addProperty (Property *property, bool owner=true) |
|
virtual void | addProperty (Property &property) |
|
virtual Property * | addProperty (std::unique_ptr< Property > property) |
|
template<typename... Ts> |
void | addProperties (Ts &... properties) |
|
virtual void | insertProperty (size_t index, Property *property, bool owner=true) |
| insert property property at position index If index is not valid, the property is appended.
|
|
virtual void | insertProperty (size_t index, Property &property) |
| insert property property at position index If index is not valid, the property is appended.
|
|
virtual Property * | insertProperty (size_t index, std::unique_ptr< Property > property) |
| insert property property at position index If index is not valid, the property is appended.
|
|
virtual Property * | removeProperty (std::string_view identifier) |
|
virtual Property * | removeProperty (Property *property) |
|
virtual Property * | removeProperty (Property &property) |
|
virtual Property * | removeProperty (size_t index) |
| remove property referred to by index
|
|
virtual bool | move (Property *property, size_t newIndex) |
|
virtual void | clear () |
| Remove all properties; Owned properties will be deleted.
|
|
virtual const std::string & | getIdentifier () const |
|
const std::vector< Property * > & | getProperties () const |
|
const std::vector< CompositeProperty * > & | getCompositeProperties () const |
|
std::vector< Property * > | getPropertiesRecursive () const |
|
std::vector< Property * > & | getPropertiesRecursive (std::vector< Property * > &destination) const |
|
Property * | getPropertyByIdentifier (std::string_view identifier, bool recursiveSearch=false) const |
|
Property * | getPropertyByPath (std::string_view path) const |
|
template<class T > |
std::vector< T * > | getPropertiesByType (bool recursiveSearch=false) const |
|
bool | empty () const |
|
size_t | size () const |
|
Property * | operator[] (size_t) |
|
const Property * | operator[] (size_t) const |
|
const_iterator | find (Property *property) const |
|
iterator | begin () |
|
iterator | end () |
|
const_iterator | begin () const |
|
const_iterator | end () const |
|
const_iterator | cbegin () const |
|
const_iterator | cend () const |
|
virtual bool | isValid () const |
|
virtual void | setValid () |
|
InvalidationLevel | getInvalidationLevel () const |
|
virtual void | invalidate (InvalidationLevel invalidationLevel, Property *modifiedProperty) |
|
virtual Processor * | getProcessor () |
|
virtual const Processor * | getProcessor () const |
|
virtual const PropertyOwner * | getOwner () const |
|
virtual PropertyOwner * | getOwner () |
|
virtual void | serialize (Serializer &s) const override |
|
virtual void | deserialize (Deserializer &d) override |
|
virtual void | setAllPropertiesCurrentStateAsDefault () |
|
virtual void | resetAllProperties () |
|
virtual void | invokeEvent (Event *event) override |
|
void | notifyObserversWillAddProperty (PropertyOwner *owner, Property *property, size_t index) |
|
void | notifyObserversDidAddProperty (Property *property, size_t index) |
|
void | notifyObserversWillRemoveProperty (Property *property, size_t index) |
|
void | notifyObserversDidRemoveProperty (PropertyOwner *owner, Property *property, size_t index) |
|
| Observable (const Observable< PropertyOwnerObserver > &other) |
|
| Observable (Observable< PropertyOwnerObserver > &&other) noexcept |
|
Observable< PropertyOwnerObserver > & | operator= (const Observable< PropertyOwnerObserver > &other) |
|
Observable< PropertyOwnerObserver > & | operator= (Observable< PropertyOwnerObserver > &&other) noexcept |
|
void | addObserver (PropertyOwnerObserver *observer) |
|
void | removeObserver (PropertyOwnerObserver *observer) |
|
virtual void | startBlockingNotifications () override final |
|
virtual void | stopBlockingNotifications () override final |
|
The AnimationController is responsible for steering the animation.
It keeps track of the animation time and state. When playing, it should adjust the step sizes to maintain a certain playback speed (frames per second).
Furthermore, it allows to render the animation into an image sequence.