kanzi::AnimationPlayer Class Reference

Use the Animation Player to play back an animation timeline that you set using the TimelineProperty property in that Animation Player. More...

#include <kanzi/core.ui/animation/animation_player.hpp>

Inheritance diagram for kanzi::AnimationPlayer:
kanzi::NodeComponent kanzi::Object kanzi::MetaObject kanzi::PropertyObject

Classes

class  CompletedMessageArguments
 Message arguments for Completed message. More...
 
class  PauseMessageArguments
 Message arguments for Pause message. More...
 
class  PlayMessageArguments
 Message arguments for Play message. More...
 
class  ResumeMessageArguments
 Message arguments for Resume message. More...
 
class  StartedMessageArguments
 Message arguments for Started message. More...
 
class  StopMessageArguments
 Message arguments for Stop message. More...
 
class  StoppedMessageArguments
 Message arguments for Stopped message. More...
 

Public Member Functions

void setTimeline (TimelineSharedPtr animationTimeline)
 Sets the TimelineProperty property of an Animation Player to the animation timeline that you pass in this method. More...
 
TimelineSharedPtr getTimeline () const
 Gets the animation timeline from the TimelineProperty property of an Animation Player. More...
 
TimelinePlaybackSharedPtr getTimelinePlayback () const
 Gets the timeline playback made for the timeline. More...
 
void setAutoplayEnabled (bool enabled)
 Sets the value of the AutoplayEnabledProperty property of an Animation Player. More...
 
bool isAutoplayEnabled () const
 Gets the value of the AutoplayEnabledProperty property. More...
 
void setRelativePlayback (bool relativePlayback)
 Sets the value of the RelativePlaybackProperty property. More...
 
bool isRelativePlayback () const
 Gets the value of the RelativePlaybackProperty property. More...
 
void setRestoreOriginalValuesAfterPlayback (bool restore)
 Sets the values of the RestoreOriginalValuesAfterPlaybackProperty property. More...
 
bool isRestoreOriginalValuesAfterPlayback () const
 Gets the values of the RestoreOriginalValuesAfterPlaybackProperty property. More...
 
void setPlaybackMode (Timeline::DirectionBehavior mode)
 Sets the value of the PlaybackModeProperty property. More...
 
Timeline::DirectionBehavior getPlaybackMode () const
 Gets the value of the PlaybackModeProperty property. More...
 
void setDurationScale (float durationScale)
 Sets the value of the DurationScaleProperty property. More...
 
float getDurationScale () const
 Gets the value of the DurationScaleProperty property. More...
 
void setRepeatCount (int repeatCount)
 Sets the value of the RepeatCountProperty property. More...
 
int getRepeatCount () const
 Gets the value of the RepeatCountProperty property. More...
 
void start (Timeline::DirectionBehavior direction, float durationScale, unsigned int repeatCount)
 Starts a new playback from the state of any animation player. More...
 
void resume ()
 Resumes playing a paused timeline. If the playback is stopped, starts playing the timeline from the beginning. More...
 
void pause ()
 Pauses running playback. If the playback is already paused or stopped, does nothing. More...
 
void stop ()
 Stops running or paused playback. More...
 
- Public Member Functions inherited from kanzi::NodeComponent
virtual ~NodeComponent ()
 Destructor. More...
 
void setName (string_view name)
 Sets the name of node component. More...
 
string getName () const
 Gets the name of node component. More...
 
NodeSharedPtr getNode () const
 Returns the node the node component is attached to or null pointer if node component is not attached to a node. More...
 
void attach (NodeWeakPtr node)
 Attaches node component to node. More...
 
void detach ()
 Detaches node component from the node it was attached to. More...
 
State getState () const
 Gets the state of node component indicating if component is attached to a node, detached from any node or in process of attaching/detaching. More...
 
bool isAttaching () const
 Indicates whether node component is in the process of attaching to a node. More...
 
bool isAttached () const
 Indicates whether node component is attached to a node. More...
 
bool isAttachingOrAttached () const
 Indicates whether node component is in the process of attaching to a node or already attached. More...
 
bool isDetaching () const
 Indicates whether node component currently detaching from the node. More...
 
bool isDetached () const
 Indicates whether node component is detached from any node. More...
 
bool isDetachingOrDetached () const
 Indicates whether node component is in the process of detaching from the node or already detached. More...
 
- Public Member Functions inherited from kanzi::Object
 Object (Domain *domain)
 
virtual ~Object ()
 
DomaingetDomain () const
 Returns the domain the object belongs to. More...
 
KzuTaskSchedulergetTaskScheduler () const
 Returns the task scheduler of the object. More...
 
KzuMessageDispatchergetMessageDispatcher () const
 Returns the message dispatcher of the object. More...
 
ResourceManagergetResourceManager () const
 Returns the resource manager of the object. More...
 
virtual const MetaclassgetDynamicMetaclass () const KZ_OVERRIDE
 Returns the metaclass of the dynamic type of the object. More...
 
AppliedStyleEntrySharedPtr applyObjectStyle (kanzi::StyleSharedPtr style)
 Applies a style to an object. More...
 
void unapplyObjectStyle (AppliedStyleEntrySharedPtr appliedStyleEntry)
 
void applyObjectStyles ()
 Apply all styles for an object node. More...
 
void unapplyObjectStyles ()
 Unapplies and removes all applied styles. More...
 
- Public Member Functions inherited from kanzi::MetaObject
virtual ~MetaObject ()
 
bool isTypeOf (const Metaclass *objectType) const
 Determines if the type of this object is the given type or derived from it. More...
 
- Public Member Functions inherited from kanzi::PropertyObject
 PropertyObject ()
 
virtual ~PropertyObject ()
 
template<typename DataType >
void setProperty (const PropertyType< DataType > &propertyType, typename PropertyType< DataType >::Traits::ParameterType value)
 Sets the local value of a property. More...
 
void removeKzbProperties ()
 
template<typename DataType >
PropertyType< DataType >::Traits::ReturnType getProperty (const PropertyType< DataType > &propertyType) const
 Returns the current value of a property. More...
 
template<typename DataType >
optional< typename PropertyType< DataType >::Traits::ReturnType > getOptionalProperty (const PropertyType< DataType > &propertyType) const
 Evaluates the property value in the same way as the overload above but does not default to the value in property metadata if there are no inputs to the property value. More...
 
template<typename DataType >
PropertyType< DataType >::Traits::ReturnType getPropertyBase (const PropertyType< DataType > &propertyType) const
 Returns the current value of a property disregarding modifiers. More...
 
template<typename DataType >
void setAbstractProperty (AbstractPropertyType abstractPropertyType, typename PropertyType< DataType >::Traits::ParameterType value)
 
template<typename DataType >
PropertyType< DataType >::Traits::ReturnType getAbstractProperty (AbstractPropertyType abstractPropertyType) const
 
template<typename DataType >
PropertyType< DataType >::Traits::ReturnType getAbstractPropertyBase (AbstractPropertyType abstractPropertyType) const
 
template<typename DataType >
optional< typename PropertyType< DataType >::Traits::ReturnType > getOptionalAbstractProperty (AbstractPropertyType abstractPropertyType) const
 
void setPropertyFlag (AbstractPropertyType propertyType, uint32_t flag)
 
bool isPropertyFlagSet (AbstractPropertyType propertyType, uint32_t flag) const
 
void clearPropertyFlag (AbstractPropertyType propertyType, uint32_t flag)
 
bool hasValue (AbstractPropertyType propertyType) const
 Evaluates whether there are any inputs into the property value. More...
 
bool hasBaseValue (AbstractPropertyType propertyType) const
 Evaluates whether there are any inputs into the property value, disregarding modifiers. More...
 
bool hasLocalValue (AbstractPropertyType propertyType) const
 Evaluates whether there is a local value set for the property. More...
 
bool hasNonClassValue (AbstractPropertyType propertyType) const
 Evaluates whether there is a value of any precedence higher than class default value set for the property. More...
 
void removeLocalValue (AbstractPropertyType propertyType)
 Removes the local value associated with the property. More...
 
void copyLocalValue (const PropertyObject &other, AbstractPropertyType propertyType)
 Copies local value of single property from another object. More...
 
void copyLocalValues (const PropertyObject &other)
 Copies all local values from another object. More...
 
virtual void onPropertyChanged (AbstractPropertyType propertyType, PropertyNotificationReason reason)
 Virtual function to handle property change notifications. More...
 
template<typename DataType >
void addPropertyValueSource (const PropertyType< DataType > &propertyType, typename PropertyType< DataType >::Descriptor::TypedValueSource *valueSource, PropertyValuePrecedence precedence, void *owner)
 
template<typename DataType >
void removePropertyValueSource (const PropertyType< DataType > &propertyType, typename PropertyType< DataType >::Descriptor::TypedValueSource *valueSource, void *owner)
 
template<typename DataType >
void addPropertyModifier (const PropertyType< DataType > &propertyType, typename PropertyType< DataType >::Descriptor::ModifierCallback callback, void *owner)
 
template<typename DataType >
void removePropertyModifier (const PropertyType< DataType > &propertyType, typename PropertyType< DataType >::Descriptor::ModifierCallback callback, void *owner)
 
void validatePropertyModifiers (AbstractPropertyType propertyType)
 
template<typename DataType >
void addPropertyNotificationHandler (const PropertyType< DataType > &propertyType, typename PropertyType< DataType >::Descriptor::NotificationCallback callback, void *owner)
 
template<typename DataType >
void removePropertyNotificationHandler (const PropertyType< DataType > &propertyType, typename PropertyType< DataType >::Descriptor::NotificationCallback callback, void *owner)
 
template<typename DataType >
size_t getPropertyNotificationHandlerCount (const PropertyType< DataType > &propertyType)
 Gets number of current notification handlers for given property type. More...
 

Static Public Member Functions

static PropertyTypeEditorInfoSharedPtr makeEditorInfo ()
 
static AnimationPlayerSharedPtr create (Domain *domain, string_view name)
 Creates animation player. More...
 
- Static Public Member Functions inherited from kanzi::NodeComponent
static PropertyTypeEditorInfoSharedPtr makeEditorInfo ()
 
- Static Public Member Functions inherited from kanzi::Object
static const MetaclassgetStaticMetaclass ()
 Returns the metaclass of Object class. More...
 
static PropertyTypeEditorInfoSharedPtr makeEditorInfo ()
 Default implementation that returns empty editor info. More...
 
- Static Public Member Functions inherited from kanzi::MetaObject
static const MetaclassgetStaticMetaclass ()
 Returns the metaclass of Object class. More...
 
static PropertyTypeEditorInfoSharedPtr makeEditorInfo ()
 Default implementation that returns empty editor info. More...
 

Static Public Attributes

static PropertyType< ResourceSharedPtrTimelineProperty
 Sets the animation timeline that an Animation Player plays after you attach it. More...
 
static PropertyType< bool > AutoplayEnabledProperty
 Sets whether an Animation Player starts the playback of its animation timeline immediately after the player is attached to a node which is attached to the scene graph. More...
 
static PropertyType< bool > RelativePlaybackProperty
 Sets whether an Animation Player plays animation timelines in a relative manner by adding the animated value to the target property value instead of replacing the property value. More...
 
static PropertyType< bool > RestoreOriginalValuesAfterPlaybackProperty
 Sets whether animated properties return to their initial values after the playback of an animation timeline ends. More...
 
static PropertyType< KzuTimeLineEntryPlaybackModePlaybackModeProperty
 Sets the mode of an animation timeline playback to either: More...
 
static PropertyType< float > DurationScaleProperty
 Sets the amount by which the duration of an animation timeline is scaled during its playback. More...
 
static PropertyType< int > RepeatCountProperty
 Sets how many times an animation timeline is played during its playback. More...
 
static MessageType< PlayMessageArgumentsPlayMessage
 Play message. More...
 
static MessageType< ResumeMessageArgumentsResumeMessage
 Resume message. More...
 
static MessageType< PauseMessageArgumentsPauseMessage
 Pause message. More...
 
static MessageType< StopMessageArgumentsStopMessage
 Stop message. More...
 
static MessageType< StartedMessageArgumentsStartedMessage
 Started message. More...
 
static MessageType< StoppedMessageArgumentsStoppedMessage
 Stopped message. More...
 
static MessageType< CompletedMessageArgumentsCompletedMessage
 Completed message. More...
 
- Static Public Attributes inherited from kanzi::NodeComponent
static PropertyType< string > NameProperty
 Name property specifies the name of node component. More...
 

Protected Member Functions

 AnimationPlayer (Domain *domain, string_view name)
 Constructor. More...
 
virtual void attachOverride () KZ_OVERRIDE
 NodeComponent::attachOverride() implementation. More...
 
virtual void detachOverride () KZ_OVERRIDE
 NodeComponent::detachOverride() implementation. More...
 
void playMessageHandler (PlayMessageArguments &messageArguments)
 Message handler for the PlayMessage message. More...
 
void resumeMessageHandler (ResumeMessageArguments &messageArguments)
 Message handler for the ResumeMessage message. More...
 
void pauseMessageHandler (PauseMessageArguments &messageArguments)
 Message handler for the PauseMessage message. More...
 
void stopMessageHandler (StopMessageArguments &messageArguments)
 Message handler for the StopMessage message. More...
 
void onPlaybackFinished (TimelinePlayback &timelinePlayback)
 Handler for finish timeline playback. More...
 
- Protected Member Functions inherited from kanzi::NodeComponent
 NodeComponent (Domain *domain, string_view name)
 Constructor. More...
 
template<typename TMessageType , typename TClass , typename TMethod >
Node::MessageSubscriptionToken addNodeComponentMessageHandler (TMessageType &messageType, TClass *nodeComponent, TMethod method)
 Kanzi calls the message handler that you add using this function when the target name of the incoming message matches the name of the node component, or if the message is broadcast to all node components with an empty target name. More...
 
void removeNodeComponentMessageFilter (Node::MessageSubscriptionToken subscriptionToken)
 Removes message handler added via addNodeComponentMessageHandler function. More...
 
template<typename TArgumentsType >
void dispatchMessage (const MessageType< TArgumentsType > &messageType, typename MessageType< TArgumentsType >::ArgumentsType &messageArguments)
 Adds the name of the node component to the message arguments and dispatches the message to the node of the node component. More...
 
- Protected Member Functions inherited from kanzi::Object
void initialize ()
 
void onCopy (const Object &other)
 
- Protected Member Functions inherited from kanzi::MetaObject
 MetaObject ()
 
void initialize ()
 
- Protected Member Functions inherited from kanzi::PropertyObject
void addPropertyValueSource (AbstractPropertyTypeDescriptor &descriptor, AbstractPropertyTypeDescriptor::ValueSource *valueSource, PropertyValuePrecedence precedence, void *owner)
 
void removePropertyValueSource (AbstractPropertyTypeDescriptor &descriptor, AbstractPropertyTypeDescriptor::ValueSource *valueSource, void *owner)
 
AbstractPropertyTypeDescriptor::ValueSourceEntrygetTopValueSourceEntry (AbstractPropertyTypeDescriptor::PropertyStorage &propertyStorage) const
 
AbstractPropertyTypeDescriptor::ValueSourceEntrygetTopValueSourceEntry (AbstractPropertyTypeDescriptor &descriptor) const
 
AbstractPropertyTypeDescriptor::ValueSourcegetTopValueSource (AbstractPropertyTypeDescriptor &descriptor) const
 
AbstractPropertyTypeDescriptor::ValueSourcegetFinalValueSource (AbstractPropertyTypeDescriptor &descriptor) const
 
AbstractPropertyTypeDescriptor::ValueSourcegetNonClassValueSource (AbstractPropertyTypeDescriptor &descriptor) const
 
AbstractPropertyTypeDescriptor::ValueSourcegetClassValueSource (AbstractPropertyTypeDescriptor &descriptor) const
 
AbstractPropertyTypeDescriptor::ValueSourceEntryfindLocalValueSourceEntry (AbstractPropertyTypeDescriptor::PropertyStorage &propertyStorage)
 
AbstractPropertyTypeDescriptor::ValueSourceEntryconstructLocalValueSourceEntry (AbstractPropertyTypeDescriptor &descriptor, AbstractPropertyTypeDescriptor::PropertyStorage &propertyStorage)
 
AbstractPropertyTypeDescriptor::ValueSourceEntryacquireLocalValueSourceEntry (AbstractPropertyTypeDescriptor &descriptor, PropertyStoragePtr &propertyStorage)
 
AbstractPropertyTypeDescriptor::PropertyStoragefindPropertyStorage (AbstractPropertyTypeDescriptor &descriptor) const
 
PropertyStoragePtr findPropertyStoragePtr (AbstractPropertyTypeDescriptor &descriptor) const
 Gets property storage intrusive pointer that can be used to hold a reference until end of operation. More...
 
PropertyStoragePtr constructPropertyStorage (AbstractPropertyTypeDescriptor &descriptor)
 
PropertyStoragePtr acquirePropertyStorage (AbstractPropertyTypeDescriptor &descriptor)
 
AbstractPropertyTypeDescriptor::ModifierStorageacquireModifierStorage (AbstractPropertyTypeDescriptor &descriptor, AbstractPropertyTypeDescriptor::PropertyStorage &propertyStorage)
 
AbstractPropertyTypeDescriptor::ModifierStoragefindModifierStorage (AbstractPropertyTypeDescriptor &descriptor)
 
AbstractPropertyTypeDescriptor::NotificationStorageacquireNotificationStorage (AbstractPropertyTypeDescriptor &descriptor)
 
AbstractPropertyTypeDescriptor::NotificationStoragefindNotificationStorage (AbstractPropertyTypeDescriptor &descriptor)
 
AbstractPropertyTypeDescriptorfindPropertyTypeDescriptorByUnqualifiedNameAndDataType (string_view unqualifiedName, PropertyDataType dataType)
 
void validatePropertyModifiersAndNotifyHandlers (PropertyStoragePtr &propertyStorage)
 
void copyLocalValue (const AbstractPropertyTypeDescriptor::PropertyStorage &otherPropertyStorage)
 Copy local value from property storage. More...
 
PropertyStorageContainer::iterator beginPropertyStorage ()
 
PropertyStorageContainer::iterator endPropertyStorage ()
 
virtual void notifyPropertyHandlers (PropertyStoragePtr &propertyStorage, PropertyNotificationReason reason)
 
void onCopy (const PropertyObject &other)
 

Additional Inherited Members

- Public Types inherited from kanzi::NodeComponent
enum  State { StateDetached, StateDetaching, StateAttaching, StateAttached }
 State indicating if component is attached to a node, detached from any node or in process of attaching/detaching. More...
 
typedef NodeComponentTargetMessageArguments NodeComponentMessageArguments
 Legacy name for NodeComponentTargetMessageArguments. More...
 
- Public Types inherited from kanzi::PropertyObject
typedef intrusive_ptr< AbstractPropertyTypeDescriptor::PropertyStoragePropertyStoragePtr
 
typedef vector< PropertyStoragePtrPropertyStorageContainer
 
typedef PropertyStorageContainer::iterator PropertyStorageIterator
 
typedef PropertyStorageContainer::const_iterator PropertyStorageConstIterator
 
typedef PropertyStorageContainer::reverse_iterator PropertyStorageReverseIterator
 
- Protected Types inherited from kanzi::Object
typedef vector< AppliedStyleEntrySharedPtrAppliedStyleContainer
 Applied style container. More...
 
- Static Protected Member Functions inherited from kanzi::NodeComponent
template<typename TMessageType , typename TClass , typename TMethod >
static void nodeComponentMessageHandler (TClass *nodeComponent, TMethod method, typename TMessageType::ArgumentsType &messageArguments)
 Handler function for node component messages. More...
 
- Protected Attributes inherited from kanzi::Object
AppliedStyleContainer m_appliedStyles
 Listing of applied styles applied to this object. More...
 

Detailed Description

Use the Animation Player to play back an animation timeline that you set using the TimelineProperty property in that Animation Player.

Kanzi resolves paths to animated nodes relative to the node where you attach an Animation Player.

To control the playback of an Animation Player, send these messages to the node where you attached the Animation Player:

By default, an Animation Player does not start playback until you send the PlayMessage message to the node. To set an Animation Player to start the playback when you attach the Animation Player to a node, enable the AutoplayEnabledProperty property.

When you start the playback of an Animation Player by sending to it the PlayMessage or ResumeMessage message, or if the AutoplayEnabledProperty property is enabled, the player adds its timeline as a child to a parallel timeline and applies all playback settings from its PlaybackModeProperty, DurationScaleProperty and RepeatCountProperty properties to it. If you start the playback by sending a PlayMessage message with playback arguments, the player adds its parallel timeline as a child to yet another parallel timeline and applies playback settings from the PlayMessageArguments to it.

See also
PropertyDrivenAnimationPlayer, PropertyTargetInterpolator

Examples

To create animation player and set timeline:

// Create animation player.
AnimationPlayerSharedPtr animationPlayer = AnimationPlayer::create(domain, "player");
// Set timeline.
animationPlayer->setTimeline(timeline);

To attach animation player to the node:

node->addNodeComponent(animationPlayer);

To start animation player:

// Start playback in animation player by sending PlayMessage
// to the node where animation player is attached.
AnimationPlayer::PlayMessageArguments playMessageArguments;
playMessageArguments.setPlaybackMode(Timeline::DirectionBehaviorReverse);
playMessageArguments.setDurationScale(2.0f);
playMessageArguments.setRepeatCount(2);
node->dispatchMessage(AnimationPlayer::PlayMessage, playMessageArguments);

To pause animation player:

// Pause playback in animation player by sending PauseMessage
// to the node where animation player is attached.
AnimationPlayer::PauseMessageArguments pauseMessageArguments;
node->dispatchMessage(AnimationPlayer::PauseMessage, pauseMessageArguments);

To resume animation player:

// Resume playback in animation player by sending ResumeMessage
// to the node where animation player is attached.
AnimationPlayer::ResumeMessageArguments resumeMessageArguments;
node->dispatchMessage(AnimationPlayer::ResumeMessage, resumeMessageArguments);

To stop animation player:

// Stop playback in animation player by sending StopMessage
// to the node where animation player is attached.
AnimationPlayer::StopMessageArguments stopMessageArguments;
node->dispatchMessage(AnimationPlayer::StopMessage, stopMessageArguments);

To detach animation player from the node:

node->removeNodeComponent(*animationPlayer);

Constructor & Destructor Documentation

kanzi::AnimationPlayer::AnimationPlayer ( Domain domain,
string_view  name 
)
explicitprotected

Constructor.

Parameters
domainDomain.
nameThe name of the animation player.

Member Function Documentation

static PropertyTypeEditorInfoSharedPtr kanzi::AnimationPlayer::makeEditorInfo ( )
static
static AnimationPlayerSharedPtr kanzi::AnimationPlayer::create ( Domain domain,
string_view  name 
)
inlinestatic

Creates animation player.

Parameters
domainDomain.
nameName of animation player.
Returns
animation player.
void kanzi::AnimationPlayer::setTimeline ( TimelineSharedPtr  animationTimeline)

Sets the TimelineProperty property of an Animation Player to the animation timeline that you pass in this method.

The Animation Player uses this timeline the next time it starts animation playback.

Parameters
animationTimelineThe animation timeline that you want to set to the Animation Player.
TimelineSharedPtr kanzi::AnimationPlayer::getTimeline ( ) const

Gets the animation timeline from the TimelineProperty property of an Animation Player.

Returns
The animation timeline of the Animation Player.
TimelinePlaybackSharedPtr kanzi::AnimationPlayer::getTimelinePlayback ( ) const

Gets the timeline playback made for the timeline.

Returns
Timeline playback. The return value can be null.
void kanzi::AnimationPlayer::setAutoplayEnabled ( bool  enabled)

Sets the value of the AutoplayEnabledProperty property of an Animation Player.

The Animation Player uses this value the next time you attach that Animation Player.

Parameters
enabledIf the Animation Player starts playback of its animation timeline on attach automatically, true, otherwise false.
bool kanzi::AnimationPlayer::isAutoplayEnabled ( ) const

Gets the value of the AutoplayEnabledProperty property.

Returns
If the Animation Player starts the playback of its animation timeline on attach automatically, true, otherwise false.
void kanzi::AnimationPlayer::setRelativePlayback ( bool  relativePlayback)

Sets the value of the RelativePlaybackProperty property.

Parameters
relativePlaybackSpecifies whether playback is relative.
bool kanzi::AnimationPlayer::isRelativePlayback ( ) const

Gets the value of the RelativePlaybackProperty property.

Returns
If the playback is relative, true, otherwise false.
void kanzi::AnimationPlayer::setRestoreOriginalValuesAfterPlayback ( bool  restore)

Sets the values of the RestoreOriginalValuesAfterPlaybackProperty property.

Parameters
restoreSpecifies whether original values restored after playback finishes.
bool kanzi::AnimationPlayer::isRestoreOriginalValuesAfterPlayback ( ) const

Gets the values of the RestoreOriginalValuesAfterPlaybackProperty property.

Returns
If the original values are restored after playback finishes, true, otherwise false.
void kanzi::AnimationPlayer::setPlaybackMode ( Timeline::DirectionBehavior  mode)

Sets the value of the PlaybackModeProperty property.

Parameters
modePlayback mode.
Timeline::DirectionBehavior kanzi::AnimationPlayer::getPlaybackMode ( ) const

Gets the value of the PlaybackModeProperty property.

Returns
Playback mode.
void kanzi::AnimationPlayer::setDurationScale ( float  durationScale)

Sets the value of the DurationScaleProperty property.

Parameters
durationScaleDuration scale.
float kanzi::AnimationPlayer::getDurationScale ( ) const

Gets the value of the DurationScaleProperty property.

Returns
Duration scale.
void kanzi::AnimationPlayer::setRepeatCount ( int  repeatCount)

Sets the value of the RepeatCountProperty property.

Parameters
repeatCountRepeat count.
int kanzi::AnimationPlayer::getRepeatCount ( ) const

Gets the value of the RepeatCountProperty property.

Returns
Repeat count.
void kanzi::AnimationPlayer::start ( Timeline::DirectionBehavior  direction,
float  durationScale,
unsigned int  repeatCount 
)

Starts a new playback from the state of any animation player.

Kanzi applies the parameters, which you pass to this function, as a whole on top of the property values that are set in the animation player. For example, if in the animation player the AnimationPlayer::PlaybackModeProperty property is set to Timeline::DirectionBehaviorNormal and the AnimationPlayer::RepeatCountProperty property is set to 2, and you call this function with the direction parameter set to Timeline::DirectionBehaviorPingPong, the animation player plays its timeline first twice normally and then twice in reverse.

Parameters
directionThe playback mode that you want to apply on top of the value of the AnimationPlayer::PlaybackModeProperty property.
durationScaleThe duration scale that you want to apply on top of the value of the AnimationPlayer::DurationScaleProperty property.
repeatCountThe repeat count that you want to apply on top of the value of the AnimationPlayer::RepeatCountProperty property.
void kanzi::AnimationPlayer::resume ( )

Resumes playing a paused timeline. If the playback is stopped, starts playing the timeline from the beginning.

void kanzi::AnimationPlayer::pause ( )

Pauses running playback. If the playback is already paused or stopped, does nothing.

void kanzi::AnimationPlayer::stop ( )

Stops running or paused playback.

If the playback is already stopped, does nothing. To start a new playback after stopping the playback, call start() or resume().

virtual void kanzi::AnimationPlayer::attachOverride ( )
protectedvirtual

NodeComponent::attachOverride() implementation.

Reimplemented from kanzi::NodeComponent.

virtual void kanzi::AnimationPlayer::detachOverride ( )
protectedvirtual

NodeComponent::detachOverride() implementation.

Reimplemented from kanzi::NodeComponent.

void kanzi::AnimationPlayer::playMessageHandler ( PlayMessageArguments messageArguments)
protected

Message handler for the PlayMessage message.

Parameters
messageArgumentsArguments of Play message.
void kanzi::AnimationPlayer::resumeMessageHandler ( ResumeMessageArguments messageArguments)
protected

Message handler for the ResumeMessage message.

Parameters
messageArgumentsArguments of Resume message.
void kanzi::AnimationPlayer::pauseMessageHandler ( PauseMessageArguments messageArguments)
protected

Message handler for the PauseMessage message.

Parameters
messageArgumentsArguments of pause message.
void kanzi::AnimationPlayer::stopMessageHandler ( StopMessageArguments messageArguments)
protected

Message handler for the StopMessage message.

Parameters
messageArgumentsArguments of Stop message.
void kanzi::AnimationPlayer::onPlaybackFinished ( TimelinePlayback timelinePlayback)
protected

Handler for finish timeline playback.

Parameters
timelinePlaybackFinished playback.

Member Data Documentation

PropertyType<ResourceSharedPtr> kanzi::AnimationPlayer::TimelineProperty
static

Sets the animation timeline that an Animation Player plays after you attach it.

PropertyType<bool> kanzi::AnimationPlayer::AutoplayEnabledProperty
static

Sets whether an Animation Player starts the playback of its animation timeline immediately after the player is attached to a node which is attached to the scene graph.

By default, autoplay is disabled.

PropertyType<bool> kanzi::AnimationPlayer::RelativePlaybackProperty
static

Sets whether an Animation Player plays animation timelines in a relative manner by adding the animated value to the target property value instead of replacing the property value.

By default, relative playback is disabled.

PropertyType<bool> kanzi::AnimationPlayer::RestoreOriginalValuesAfterPlaybackProperty
static

Sets whether animated properties return to their initial values after the playback of an animation timeline ends.

By default, this is disabled.

PropertyType<KzuTimeLineEntryPlaybackMode> kanzi::AnimationPlayer::PlaybackModeProperty
static

Sets the mode of an animation timeline playback to either:

  • Normal plays the animation timeline normally from the start to end. This is the default value.
  • Reverse plays the animation timeline in reverse from the end to start.
  • Ping pong plays the animation timeline first normally, then in reverse.
PropertyType<float> kanzi::AnimationPlayer::DurationScaleProperty
static

Sets the amount by which the duration of an animation timeline is scaled during its playback.

For example:

  • When set to 1.0, the animation is of the same length as it is defined in the animation. This is the default value.
  • When set to 0.5, the animation is half as long as it is defined in the animation.
  • When set to 2.0, the animation is twice as long as it is defined in the animation.
PropertyType<int> kanzi::AnimationPlayer::RepeatCountProperty
static

Sets how many times an animation timeline is played during its playback.

The default value is 1.

MessageType<PlayMessageArguments> kanzi::AnimationPlayer::PlayMessage
static

Play message.

When you send this message to a node to which an Animation Player is attached, that Animation Player starts to play the animation timeline set in its TimelineProperty property. When you send the Play message to an Animation Player that is playing back an animation timeline, the Animation Player stops that playback and starts a new playback.

MessageType<ResumeMessageArguments> kanzi::AnimationPlayer::ResumeMessage
static

Resume message.

When you send this message to the node to which an animation player is attached, the animation player starts to play the animation timeline set in its TimelineProperty property. If the animation player has paused a playback, it resumes playing it.

MessageType<PauseMessageArguments> kanzi::AnimationPlayer::PauseMessage
static

Pause message.

When you send this message to the node to which an animation player is attached, the animation player pauses the current playback. If the playback is paused of stopped, the animation player does nothing.

MessageType<StopMessageArguments> kanzi::AnimationPlayer::StopMessage
static

Stop message.

When you send this message to the node to which an animation player is attached, the animation player stops the playback. The next PlayMessage message starts to play the animation timeline from the beginning.

MessageType<StartedMessageArguments> kanzi::AnimationPlayer::StartedMessage
static

Started message.

When the animation player starts the playback of its timeline, it dispatches the Started message. The animation player does not dispatch this message when it resumes playback after it was paused. After this message is sent the timeline is actively applied to animate the target properties.

MessageType<StoppedMessageArguments> kanzi::AnimationPlayer::StoppedMessage
static

Stopped message.

When the animation player stops the playback of its timeline, it dispatches the Stopped message. After this message is sent the timeline is not applied to the target properties.

MessageType<CompletedMessageArguments> kanzi::AnimationPlayer::CompletedMessage
static

Completed message.

When the animation player completes the playback of its timeline, it dispatches the Completed message. After this message is sent the timeline is still applied to the target properties.


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