![]() |
RAMSES Documentation
27.0.130
Information for RAMSES users and developers
|
The AnimationSystem holds all animation related data. More...
#include <AnimationSystem.h>
Public Member Functions | |
status_t | setTime (globalTimeStamp_t timeStamp) |
Sets the animation system to a given time. Any unsigned integral values that are used in an incrementing fashion can be used. This time stamp is distributed to renderer and can be used as a synchronization point. More... | |
globalTimeStamp_t | getTime () const |
Gets the current animation system time. The time stamp retrieved is the time stamp that was previously set by calling setTime. More... | |
SplineStepBool * | createSplineStepBool (const char *name=nullptr) |
Creates a spline in this animation system using bool data type and step interpolation. More... | |
SplineStepInt32 * | createSplineStepInt32 (const char *name=nullptr) |
Creates a spline in this animation system using int32_t data type and step interpolation. More... | |
SplineStepFloat * | createSplineStepFloat (const char *name=nullptr) |
Creates a spline in this animation system using float data type and step interpolation. More... | |
SplineStepVector2f * | createSplineStepVector2f (const char *name=nullptr) |
Creates a spline in this animation system using Vector2f data type and step interpolation. More... | |
SplineStepVector3f * | createSplineStepVector3f (const char *name=nullptr) |
Creates a spline in this animation system using Vector3f data type and step interpolation. More... | |
SplineStepVector4f * | createSplineStepVector4f (const char *name=nullptr) |
Creates a spline in this animation system using Vector4f data type and step interpolation. More... | |
SplineStepVector2i * | createSplineStepVector2i (const char *name=nullptr) |
Creates a spline in this animation system using Vector2i data type and step interpolation. More... | |
SplineStepVector3i * | createSplineStepVector3i (const char *name=nullptr) |
Creates a spline in this animation system using Vector3i data type and step interpolation. More... | |
SplineStepVector4i * | createSplineStepVector4i (const char *name=nullptr) |
Creates a spline in this animation system using Vector4i data type and step interpolation. More... | |
SplineLinearInt32 * | createSplineLinearInt32 (const char *name=nullptr) |
Creates a spline in this animation system using int32_t data type and linear interpolation. More... | |
SplineLinearFloat * | createSplineLinearFloat (const char *name=nullptr) |
Creates a spline in this animation system using float data type and linear interpolation. More... | |
SplineLinearVector2f * | createSplineLinearVector2f (const char *name=nullptr) |
Creates a spline in this animation system using Vector2f data type and linear interpolation. More... | |
SplineLinearVector3f * | createSplineLinearVector3f (const char *name=nullptr) |
Creates a spline in this animation system using Vector3f data type and linear interpolation. More... | |
SplineLinearVector4f * | createSplineLinearVector4f (const char *name=nullptr) |
Creates a spline in this animation system using Vector4f data type and linear interpolation. More... | |
SplineLinearVector2i * | createSplineLinearVector2i (const char *name=nullptr) |
Creates a spline in this animation system using Vector2i data type and linear interpolation. More... | |
SplineLinearVector3i * | createSplineLinearVector3i (const char *name=nullptr) |
Creates a spline in this animation system using Vector3i data type and linear interpolation. More... | |
SplineLinearVector4i * | createSplineLinearVector4i (const char *name=nullptr) |
Creates a spline in this animation system using Vector4i data type and linear interpolation. More... | |
SplineBezierInt32 * | createSplineBezierInt32 (const char *name=nullptr) |
Creates a spline in this animation system using int32_t data type and Bezier interpolation. More... | |
SplineBezierFloat * | createSplineBezierFloat (const char *name=nullptr) |
Creates a spline in this animation system using float data type and Bezier interpolation. More... | |
SplineBezierVector2f * | createSplineBezierVector2f (const char *name=nullptr) |
Creates a spline in this animation system using Vector2f data type and Bezier interpolation. More... | |
SplineBezierVector3f * | createSplineBezierVector3f (const char *name=nullptr) |
Creates a spline in this animation system using Vector3f data type and Bezier interpolation. More... | |
SplineBezierVector4f * | createSplineBezierVector4f (const char *name=nullptr) |
Creates a spline in this animation system using Vector4f data type and Bezier interpolation. More... | |
SplineBezierVector2i * | createSplineBezierVector2i (const char *name=nullptr) |
Creates a spline in this animation system using Vector2i data type and Bezier interpolation. More... | |
SplineBezierVector3i * | createSplineBezierVector3i (const char *name=nullptr) |
Creates a spline in this animation system using Vector3i data type and Bezier interpolation. More... | |
SplineBezierVector4i * | createSplineBezierVector4i (const char *name=nullptr) |
Creates a spline in this animation system using Vector4i data type and Bezier interpolation. More... | |
Animation * | createAnimation (const AnimatedProperty &animatedProperty, const Spline &spline, const char *name=nullptr) |
Creates Animation that can animate given property using given spline. More... | |
AnimationSequence * | createAnimationSequence (const char *name=nullptr) |
Creates AnimationSequence that can hold references to multiple animations and control them together. More... | |
status_t | destroy (AnimationObject &animationObject) |
Release an animation system object and its data. The object must be owned by this animation system. The reference to this object is no longer valid after it is destroyed. More... | |
AnimatedProperty * | createAnimatedProperty (const Node &propertyOwner, EAnimatedProperty property, EAnimatedPropertyComponent propertyComponent=EAnimatedPropertyComponent_All, const char *name=nullptr) |
Create a new animated property for Node. More... | |
AnimatedProperty * | createAnimatedProperty (const UniformInput &propertyOwner, const Appearance &appearance, EAnimatedPropertyComponent propertyComponent=EAnimatedPropertyComponent_All, const char *name=nullptr) |
Create a new animated property for Appearance's input. More... | |
AnimatedProperty * | createAnimatedProperty (const DataObject &propertyOwner, EAnimatedPropertyComponent propertyComponent=EAnimatedPropertyComponent_All, const char *name=nullptr) |
Create a new animated property for a DataObject. More... | |
uint32_t | getNumberOfFinishedAnimationsSincePreviousUpdate () const |
Get number of animations that were finished in current update round. The animation system collects finished animations between current and previous setTime/updateLocalTime call. More... | |
const Animation * | getFinishedAnimationSincePreviousUpdate (uint32_t index) const |
Get animation that was finished in current update round. The animation system collects finished animations between current and previous setTime/updateLocalTime call. More... | |
Animation * | getFinishedAnimationSincePreviousUpdate (uint32_t index) |
Get animation that was finished in current update round. The animation system collects finished animations between current and previous setTime/updateLocalTime call. More... | |
const RamsesObject * | findObjectByName (const char *name) const |
Get an object from the animation system by name. More... | |
RamsesObject * | findObjectByName (const char *name) |
Get an object from the animation system by name. More... | |
![]() | |
sceneObjectId_t | getSceneObjectId () const |
Returns scene object id which is automatically assigned at creation time of object and is unique within scope of one scene. More... | |
sceneId_t | getSceneId () const |
Returns sceneid to which this object belongs to. More... | |
![]() | |
const char * | getName () const |
Returns the name of the object. More... | |
status_t | setName (const char *name) |
Changes the name of the object. More... | |
ERamsesObjectType | getType () const |
Gets type of the object. More... | |
bool | isOfType (ERamsesObjectType type) const |
Checks if the object is of given type. More... | |
![]() | |
status_t | validate () const |
Generates verbose validation of the object. More... | |
const char * | getValidationReport (EValidationSeverity minSeverity=EValidationSeverity_Info) const |
Provides verbose report in human readable form generated by validate. More... | |
const char * | getStatusMessage (status_t status) const |
Get the string description for a status provided by a RAMSES API function. More... | |
StatusObject (const StatusObject &other)=delete | |
Deleted copy constructor. More... | |
StatusObject & | operator= (const StatusObject &other)=delete |
Deleted copy assignment. More... | |
Public Attributes | |
class AnimationSystemImpl & | impl |
![]() | |
class SceneObjectImpl & | impl |
![]() | |
class ClientObjectImpl & | impl |
![]() | |
class RamsesObjectImpl & | impl |
![]() | |
class StatusObjectImpl & | impl |
Protected Member Functions | |
AnimationSystem (AnimationSystemImpl &pimpl) | |
Constructor of the animation system. More... | |
AnimationSystem (const AnimationSystem &other) | |
Copy constructor of animation system. More... | |
AnimationSystem & | operator= (const AnimationSystem &other) |
Assignment operator of animation system. More... | |
virtual | ~AnimationSystem () |
Destructor of the animation system. More... | |
![]() | |
SceneObject (SceneObjectImpl &pimpl) | |
Constructor for SceneObject. More... | |
virtual | ~SceneObject () |
Destructor of the SceneObject. More... | |
![]() | |
ClientObject (ClientObjectImpl &pimpl) | |
Constructor for ClientObject. More... | |
virtual | ~ClientObject () |
Destructor of the ClientObject. More... | |
![]() | |
RamsesObject (RamsesObjectImpl &pimpl) | |
Constructor for RamsesObject. More... | |
virtual | ~RamsesObject () |
Destructor of the RamsesObject. More... | |
![]() | |
StatusObject (StatusObjectImpl &pimpl) | |
Constructor for StatusObject. More... | |
virtual | ~StatusObject () |
Destructor of the StatusObject. More... | |
Friends | |
class | SceneImpl |
SceneImpl is the factory for creating animation system instances. More... | |
The AnimationSystem holds all animation related data.
|
explicitprotected |
Constructor of the animation system.
[in] | pimpl | Internal data for implementation specifics of AnimationSystem (sink - instance becomes owner) |
|
protected |
Copy constructor of animation system.
[in] | other | Other instance of animation system class |
|
protectedvirtual |
Destructor of the animation system.
AnimatedProperty* ramses::AnimationSystem::createAnimatedProperty | ( | const DataObject & | propertyOwner, |
EAnimatedPropertyComponent | propertyComponent = EAnimatedPropertyComponent_All , |
||
const char * | name = nullptr |
||
) |
Create a new animated property for a DataObject.
[in] | propertyOwner | Reference to an entity that contains data to animate. |
[in] | propertyComponent | The optional component to animate in case of vector property. |
[in] | name | The optional name of the AnimatedProperty. |
AnimatedProperty* ramses::AnimationSystem::createAnimatedProperty | ( | const Node & | propertyOwner, |
EAnimatedProperty | property, | ||
EAnimatedPropertyComponent | propertyComponent = EAnimatedPropertyComponent_All , |
||
const char * | name = nullptr |
||
) |
Create a new animated property for Node.
[in] | propertyOwner | Reference to an entity that contains data to animate. |
[in] | property | Property to animate. |
[in] | propertyComponent | The optional component to animate in case of vector property. |
[in] | name | The optional name of the AnimatedProperty. |
AnimatedProperty* ramses::AnimationSystem::createAnimatedProperty | ( | const UniformInput & | propertyOwner, |
const Appearance & | appearance, | ||
EAnimatedPropertyComponent | propertyComponent = EAnimatedPropertyComponent_All , |
||
const char * | name = nullptr |
||
) |
Create a new animated property for Appearance's input.
[in] | propertyOwner | Reference to an entity that contains data to animate. |
[in] | appearance | Reference to the appearance to which the input belongs. |
[in] | propertyComponent | The optional component to animate in case of vector property. |
[in] | name | The optional name of the AnimatedProperty. |
Animation* ramses::AnimationSystem::createAnimation | ( | const AnimatedProperty & | animatedProperty, |
const Spline & | spline, | ||
const char * | name = nullptr |
||
) |
Creates Animation that can animate given property using given spline.
[in] | animatedProperty | AnimatedProperty to animate with this Animation |
[in] | spline | Spline to be used for animation |
[in] | name | The optional name of the Animation |
AnimationSequence* ramses::AnimationSystem::createAnimationSequence | ( | const char * | name = nullptr | ) |
Creates AnimationSequence that can hold references to multiple animations and control them together.
[in] | name | The optional name of the AnimationSequence |
SplineBezierFloat* ramses::AnimationSystem::createSplineBezierFloat | ( | const char * | name = nullptr | ) |
Creates a spline in this animation system using float data type and Bezier interpolation.
[in] | name | The optional name of the spline |
SplineBezierInt32* ramses::AnimationSystem::createSplineBezierInt32 | ( | const char * | name = nullptr | ) |
Creates a spline in this animation system using int32_t data type and Bezier interpolation.
[in] | name | The optional name of the spline |
SplineBezierVector2f* ramses::AnimationSystem::createSplineBezierVector2f | ( | const char * | name = nullptr | ) |
Creates a spline in this animation system using Vector2f data type and Bezier interpolation.
[in] | name | The optional name of the spline |
SplineBezierVector2i* ramses::AnimationSystem::createSplineBezierVector2i | ( | const char * | name = nullptr | ) |
Creates a spline in this animation system using Vector2i data type and Bezier interpolation.
[in] | name | The optional name of the spline |
SplineBezierVector3f* ramses::AnimationSystem::createSplineBezierVector3f | ( | const char * | name = nullptr | ) |
Creates a spline in this animation system using Vector3f data type and Bezier interpolation.
[in] | name | The optional name of the spline |
SplineBezierVector3i* ramses::AnimationSystem::createSplineBezierVector3i | ( | const char * | name = nullptr | ) |
Creates a spline in this animation system using Vector3i data type and Bezier interpolation.
[in] | name | The optional name of the spline |
SplineBezierVector4f* ramses::AnimationSystem::createSplineBezierVector4f | ( | const char * | name = nullptr | ) |
Creates a spline in this animation system using Vector4f data type and Bezier interpolation.
[in] | name | The optional name of the spline |
SplineBezierVector4i* ramses::AnimationSystem::createSplineBezierVector4i | ( | const char * | name = nullptr | ) |
Creates a spline in this animation system using Vector4i data type and Bezier interpolation.
[in] | name | The optional name of the spline |
SplineLinearFloat* ramses::AnimationSystem::createSplineLinearFloat | ( | const char * | name = nullptr | ) |
Creates a spline in this animation system using float data type and linear interpolation.
[in] | name | The optional name of the spline |
SplineLinearInt32* ramses::AnimationSystem::createSplineLinearInt32 | ( | const char * | name = nullptr | ) |
Creates a spline in this animation system using int32_t data type and linear interpolation.
[in] | name | The optional name of the spline |
SplineLinearVector2f* ramses::AnimationSystem::createSplineLinearVector2f | ( | const char * | name = nullptr | ) |
Creates a spline in this animation system using Vector2f data type and linear interpolation.
[in] | name | The optional name of the spline |
SplineLinearVector2i* ramses::AnimationSystem::createSplineLinearVector2i | ( | const char * | name = nullptr | ) |
Creates a spline in this animation system using Vector2i data type and linear interpolation.
[in] | name | The optional name of the spline |
SplineLinearVector3f* ramses::AnimationSystem::createSplineLinearVector3f | ( | const char * | name = nullptr | ) |
Creates a spline in this animation system using Vector3f data type and linear interpolation.
[in] | name | The optional name of the spline |
SplineLinearVector3i* ramses::AnimationSystem::createSplineLinearVector3i | ( | const char * | name = nullptr | ) |
Creates a spline in this animation system using Vector3i data type and linear interpolation.
[in] | name | The optional name of the spline |
SplineLinearVector4f* ramses::AnimationSystem::createSplineLinearVector4f | ( | const char * | name = nullptr | ) |
Creates a spline in this animation system using Vector4f data type and linear interpolation.
[in] | name | The optional name of the spline |
SplineLinearVector4i* ramses::AnimationSystem::createSplineLinearVector4i | ( | const char * | name = nullptr | ) |
Creates a spline in this animation system using Vector4i data type and linear interpolation.
[in] | name | The optional name of the spline |
SplineStepBool* ramses::AnimationSystem::createSplineStepBool | ( | const char * | name = nullptr | ) |
Creates a spline in this animation system using bool data type and step interpolation.
[in] | name | The optional name of the spline |
SplineStepFloat* ramses::AnimationSystem::createSplineStepFloat | ( | const char * | name = nullptr | ) |
Creates a spline in this animation system using float data type and step interpolation.
[in] | name | The optional name of the spline |
SplineStepInt32* ramses::AnimationSystem::createSplineStepInt32 | ( | const char * | name = nullptr | ) |
Creates a spline in this animation system using int32_t data type and step interpolation.
[in] | name | The optional name of the spline |
SplineStepVector2f* ramses::AnimationSystem::createSplineStepVector2f | ( | const char * | name = nullptr | ) |
Creates a spline in this animation system using Vector2f data type and step interpolation.
[in] | name | The optional name of the spline |
SplineStepVector2i* ramses::AnimationSystem::createSplineStepVector2i | ( | const char * | name = nullptr | ) |
Creates a spline in this animation system using Vector2i data type and step interpolation.
[in] | name | The optional name of the spline |
SplineStepVector3f* ramses::AnimationSystem::createSplineStepVector3f | ( | const char * | name = nullptr | ) |
Creates a spline in this animation system using Vector3f data type and step interpolation.
[in] | name | The optional name of the spline |
SplineStepVector3i* ramses::AnimationSystem::createSplineStepVector3i | ( | const char * | name = nullptr | ) |
Creates a spline in this animation system using Vector3i data type and step interpolation.
[in] | name | The optional name of the spline |
SplineStepVector4f* ramses::AnimationSystem::createSplineStepVector4f | ( | const char * | name = nullptr | ) |
Creates a spline in this animation system using Vector4f data type and step interpolation.
[in] | name | The optional name of the spline |
SplineStepVector4i* ramses::AnimationSystem::createSplineStepVector4i | ( | const char * | name = nullptr | ) |
Creates a spline in this animation system using Vector4i data type and step interpolation.
[in] | name | The optional name of the spline |
status_t ramses::AnimationSystem::destroy | ( | AnimationObject & | animationObject | ) |
Release an animation system object and its data. The object must be owned by this animation system. The reference to this object is no longer valid after it is destroyed.
[in] | animationObject | Animation object to be released. |
RamsesObject* ramses::AnimationSystem::findObjectByName | ( | const char * | name | ) |
Get an object from the animation system by name.
[in] | name | The name of the object to get. |
const RamsesObject* ramses::AnimationSystem::findObjectByName | ( | const char * | name | ) | const |
Get an object from the animation system by name.
[in] | name | The name of the object to get. |
Animation* ramses::AnimationSystem::getFinishedAnimationSincePreviousUpdate | ( | uint32_t | index | ) |
Get animation that was finished in current update round. The animation system collects finished animations between current and previous setTime/updateLocalTime call.
[in] | index | Index of the finished animation. Use getNumberOfFinishedAnimationsSincePreviousUpdate() to get the count. |
const Animation* ramses::AnimationSystem::getFinishedAnimationSincePreviousUpdate | ( | uint32_t | index | ) | const |
Get animation that was finished in current update round. The animation system collects finished animations between current and previous setTime/updateLocalTime call.
[in] | index | Index of the finished animation. Use getNumberOfFinishedAnimationsSincePreviousUpdate() to get the count. |
uint32_t ramses::AnimationSystem::getNumberOfFinishedAnimationsSincePreviousUpdate | ( | ) | const |
Get number of animations that were finished in current update round. The animation system collects finished animations between current and previous setTime/updateLocalTime call.
globalTimeStamp_t ramses::AnimationSystem::getTime | ( | ) | const |
Gets the current animation system time. The time stamp retrieved is the time stamp that was previously set by calling setTime.
|
protected |
Assignment operator of animation system.
[in] | other | Other instance of animation system class |
status_t ramses::AnimationSystem::setTime | ( | globalTimeStamp_t | timeStamp | ) |
Sets the animation system to a given time. Any unsigned integral values that are used in an incrementing fashion can be used. This time stamp is distributed to renderer and can be used as a synchronization point.
[in] | timeStamp | The global time stamp to be set in animation system |
|
friend |
SceneImpl is the factory for creating animation system instances.
class AnimationSystemImpl& ramses::AnimationSystem::impl |
Stores internal data for implementation specifics of animation system.