Castor3D 0.16.0
Multiplatform 3D engine
Public Member Functions | Protected Attributes | Friends | List of all members
castor3d::SceneNodeAnimationInstance Class Reference

#include <SceneNodeAnimationInstance.hpp>

Inheritance diagram for castor3d::SceneNodeAnimationInstance:
Inheritance graph
[legend]
Collaboration diagram for castor3d::SceneNodeAnimationInstance:
Collaboration graph
[legend]

Public Member Functions

C3D_API SceneNodeAnimationInstance (SceneNodeAnimationInstance &&rhs)=default
 
C3D_API SceneNodeAnimationInstanceoperator= (SceneNodeAnimationInstance &&rhs)=delete
 
C3D_API SceneNodeAnimationInstance (SceneNodeAnimationInstance const &rhs)=delete
 
C3D_API SceneNodeAnimationInstanceoperator= (SceneNodeAnimationInstance const &rhs)=delete
 
C3D_API ~SceneNodeAnimationInstance () noexcept override=default
 
C3D_API SceneNodeAnimationInstance (AnimatedSceneNode &object, SceneNodeAnimation &animation)
 Constructor.
 
SceneNodeAnimation const & getSceneNodeAnimation () const
 
AnimatedSceneNodegetAnimatedSceneNode ()
 
castor::Point3f const & getInitialPosition () const
 
castor::Quaternion const & getInitialOrientation () const
 
castor::Point3f const & getInitialScale () const
 
- Public Member Functions inherited from castor3d::AnimationInstance
C3D_API AnimationInstance (AnimatedObject &object, Animation const &animation, bool looped=false)
 Constructor.
 
virtual C3D_API ~AnimationInstance () noexcept=default
 Destructor.
 
C3D_API void update (castor::Milliseconds const &elapsed)
 Updates the animation, updates the key frame at the good time index.
 
C3D_API void play ()
 Plays the animation.
 
C3D_API void pause ()
 Pauses the animation.
 
C3D_API void stop ()
 Stops the animation.
 
AnimationState getState () const
 
float getScale () const
 
void setScale (float value)
 Sets the animation time scale.
 
castor::Milliseconds getStartingPoint () const
 
void setStartingPoint (castor::Milliseconds value)
 Sets the animation stopping point.
 
castor::Milliseconds getStoppingPoint () const
 
void setStoppingPoint (castor::Milliseconds value)
 Sets the animation stopping point.
 
bool isLooped () const
 
void setLooped (bool value)
 Sets the animation loop status.
 
InterpolatorType getInterpolation () const
 
void setInterpolation (InterpolatorType value)
 Sets the animation interpolation mode.
 
Animation const & getAnimation () const
 
C3D_API AnimationInstanceoperator= (AnimationInstance &&rhs) noexcept=delete
 
C3D_API AnimationInstance (AnimationInstance const &rhs)=delete
 
C3D_API AnimationInstanceoperator= (AnimationInstance const &rhs)=delete
 
C3D_API AnimationInstance (AnimationInstance &&rhs) noexcept
 
- Public Member Functions inherited from castor::OwnedBy< AnimatedObject >
AnimatedObject * getOwner () const
 

Protected Attributes

AnimatedSceneNodem_animatedSceneNode
 
SceneNodeAnimationm_sceneNodeAnimation
 
AnimationKeyFrameArray::iterator m_prev
 
AnimationKeyFrameArray::iterator m_curr
 
InterpolatorPtr< castor::Point3f > m_vecInterpolator
 
InterpolatorPtr< castor::Quaternionm_quatInterpolator
 
castor::Point3f m_initialTranslate
 
castor::Quaternion m_initialRotate
 
castor::Point3f m_initialScale
 
- Protected Attributes inherited from castor3d::AnimationInstance
Animation const & m_animation
 
float m_scale { 1.0f }
 
std::atomic_bool m_looped
 
castor::Milliseconds m_startingPoint { 0 }
 
castor::Milliseconds m_stoppingPoint { 0 }
 
castor::Milliseconds m_currentTime { 0 }
 
AnimationState m_state { AnimationState::eStopped }
 
InterpolatorType m_interpolation { InterpolatorType::eLinear }
 

Friends

class BinaryWriter< SceneNodeAnimation >
 
class BinaryParser< SceneNodeAnimation >
 

Additional Inherited Members

- Protected Member Functions inherited from castor::OwnedBy< AnimatedObject >
 OwnedBy (AnimatedObject &owner)
 Constructor.
 

Constructor & Destructor Documentation

◆ SceneNodeAnimationInstance() [1/3]

C3D_API castor3d::SceneNodeAnimationInstance::SceneNodeAnimationInstance ( SceneNodeAnimationInstance && rhs)
default

◆ SceneNodeAnimationInstance() [2/3]

C3D_API castor3d::SceneNodeAnimationInstance::SceneNodeAnimationInstance ( SceneNodeAnimationInstance const & rhs)
delete

◆ ~SceneNodeAnimationInstance()

C3D_API castor3d::SceneNodeAnimationInstance::~SceneNodeAnimationInstance ( )
overridedefaultnoexcept

◆ SceneNodeAnimationInstance() [3/3]

C3D_API castor3d::SceneNodeAnimationInstance::SceneNodeAnimationInstance ( AnimatedSceneNode & object,
SceneNodeAnimation & animation )

Constructor.

Parameters
[in]objectThe parent AnimatedMesh.
[in]animationThe animation.

Member Function Documentation

◆ getAnimatedSceneNode()

AnimatedSceneNode & castor3d::SceneNodeAnimationInstance::getAnimatedSceneNode ( )
inline

References m_animatedSceneNode.

◆ getInitialOrientation()

castor::Quaternion const & castor3d::SceneNodeAnimationInstance::getInitialOrientation ( ) const
inline

References m_initialRotate.

◆ getInitialPosition()

castor::Point3f const & castor3d::SceneNodeAnimationInstance::getInitialPosition ( ) const
inline

References m_initialTranslate.

◆ getInitialScale()

castor::Point3f const & castor3d::SceneNodeAnimationInstance::getInitialScale ( ) const
inline

References m_initialScale.

◆ getSceneNodeAnimation()

SceneNodeAnimation const & castor3d::SceneNodeAnimationInstance::getSceneNodeAnimation ( ) const
inline

name Getters.

References m_sceneNodeAnimation.

◆ operator=() [1/2]

C3D_API SceneNodeAnimationInstance & castor3d::SceneNodeAnimationInstance::operator= ( SceneNodeAnimationInstance && rhs)
delete

◆ operator=() [2/2]

C3D_API SceneNodeAnimationInstance & castor3d::SceneNodeAnimationInstance::operator= ( SceneNodeAnimationInstance const & rhs)
delete

Friends And Related Symbol Documentation

◆ BinaryParser< SceneNodeAnimation >

friend class BinaryParser< SceneNodeAnimation >
friend

◆ BinaryWriter< SceneNodeAnimation >

friend class BinaryWriter< SceneNodeAnimation >
friend

Member Data Documentation

◆ m_animatedSceneNode

AnimatedSceneNode& castor3d::SceneNodeAnimationInstance::m_animatedSceneNode
protected

Referenced by getAnimatedSceneNode().

◆ m_curr

AnimationKeyFrameArray::iterator castor3d::SceneNodeAnimationInstance::m_curr
protected

◆ m_initialRotate

castor::Quaternion castor3d::SceneNodeAnimationInstance::m_initialRotate
protected

Referenced by getInitialOrientation().

◆ m_initialScale

castor::Point3f castor3d::SceneNodeAnimationInstance::m_initialScale
protected

Referenced by getInitialScale().

◆ m_initialTranslate

castor::Point3f castor3d::SceneNodeAnimationInstance::m_initialTranslate
protected

Referenced by getInitialPosition().

◆ m_prev

AnimationKeyFrameArray::iterator castor3d::SceneNodeAnimationInstance::m_prev
protected

◆ m_quatInterpolator

InterpolatorPtr< castor::Quaternion > castor3d::SceneNodeAnimationInstance::m_quatInterpolator
protected

◆ m_sceneNodeAnimation

SceneNodeAnimation& castor3d::SceneNodeAnimationInstance::m_sceneNodeAnimation
protected

Referenced by getSceneNodeAnimation().

◆ m_vecInterpolator

InterpolatorPtr< castor::Point3f > castor3d::SceneNodeAnimationInstance::m_vecInterpolator
protected

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