Dali 3D User Interface Engine
List of all members | Public Member Functions | Static Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes
Dali::Internal::KeyFrames Class Reference

KeyFrames class is responsible for creating and building a specialized KeyFrame class from the Property::Value type used in Add. More...

#include <key-frames-impl.h>

Inheritance diagram for Dali::Internal::KeyFrames:
Inheritance graph
[legend]
Collaboration diagram for Dali::Internal::KeyFrames:
Collaboration graph
[legend]

Public Member Functions

 KeyFrames ()
 Instantiate an empty KeyFrames object. More...
 
Property::Type GetType () const
 Get the type of this key frame. More...
 
void Add (float time, Property::Value value, AlphaFunction alpha)
 Add a key frame. More...
 
KeyFrameSpecGetKeyFramesBase () const
 Return the key frames without specialization. More...
 
- Public Member Functions inherited from Dali::BaseObject
template<class T >
bool ConnectSignal (ConnectionTrackerInterface *connectionTracker, const std::string &signalName, const T &functor)
 Connects a void() functor to a specified signal. More...
 
bool DoAction (const std::string &actionName, const Property::Map &attributes)
 Perform action on this object with the given action name and attributes. More...
 
const std::string & GetTypeName () const
 Returns the type name for the Handle. More...
 
bool GetTypeInfo (Dali::TypeInfo &info) const
 Returns the type info for the Handle. More...
 
bool DoConnectSignal (ConnectionTrackerInterface *connectionTracker, const std::string &signalName, FunctorDelegate *functorDelegate)
 Not intended for application developers. More...
 
- Public Member Functions inherited from Dali::RefObject
void Reference ()
 Increment the object's reference count. More...
 
void Unreference ()
 Decrement the object's reference count. More...
 
int ReferenceCount ()
 Retrieve the object's reference count. More...
 

Static Public Member Functions

static KeyFramesNew ()
 

Protected Member Functions

virtual ~KeyFrames ()
 
- Protected Member Functions inherited from Dali::BaseObject
 BaseObject ()
 Default constructor. More...
 
virtual ~BaseObject ()
 A reference counted object may only be deleted by calling Unreference(). More...
 
void RegisterObject ()
 Registers the object as created with the Object registry. More...
 
void UnregisterObject ()
 Unregisters the object from Object registry. More...
 
- Protected Member Functions inherited from Dali::RefObject
 RefObject ()
 Default constructor. More...
 
virtual ~RefObject ()
 RefObject is intended as a base class. More...
 
 RefObject (const RefObject &rhs)
 Copy constructor. More...
 
RefObjectoperator= (const RefObject &rhs)
 Assignment operator. More...
 

Private Member Functions

 KeyFrames (const KeyFrames &rhs)
 Don't allow copy constructor. More...
 
KeyFramesoperator= (const KeyFrames &rhs)
 Don't allow copy operator. More...
 
void CreateKeyFramesSpec (Property::Type type)
 Create a specialization from the given type, and store it to the mSpec member variable. More...
 

Private Attributes

Dali::Property::Type mType
 
IntrusivePtr< KeyFrameSpecmKeyFrames
 

Detailed Description

KeyFrames class is responsible for creating and building a specialized KeyFrame class from the Property::Value type used in Add.

Definition at line 42 of file key-frames-impl.h.

Constructor & Destructor Documentation

Dali::Internal::KeyFrames::KeyFrames ( )

Instantiate an empty KeyFrames object.

Definition at line 31 of file key-frames-impl.cpp.

Referenced by New().

Here is the caller graph for this function:

Dali::Internal::KeyFrames::~KeyFrames ( )
protectedvirtual

Definition at line 37 of file key-frames-impl.cpp.

Dali::Internal::KeyFrames::KeyFrames ( const KeyFrames rhs)
private

Don't allow copy constructor.

Member Function Documentation

void Dali::Internal::KeyFrames::Add ( float  time,
Property::Value  value,
AlphaFunction  alpha 
)

Add a key frame.

The first key frame to be added denotes the type of all subsequent key frames. If a value with a different type is added, it will throw a run time assert.

Parameters
[in]timeThe time (between 0 and 1)
[in]valueThe value of the keyframe at the given time
[in]alphaAn alpha function to blend between this key frame and the next key frame.

Definition at line 96 of file key-frames-impl.cpp.

References Dali::Internal::KeyFrameBaseSpec< V >::AddKeyFrame(), Dali::Property::BOOLEAN, CreateKeyFramesSpec(), DALI_ASSERT_ALWAYS, DALI_ASSERT_DEBUG, Dali::Property::FLOAT, Dali::Property::INTEGER, mKeyFrames, mType, Dali::Property::NONE, Dali::Property::ROTATION, Dali::Property::VECTOR2, Dali::Property::VECTOR3, and Dali::Property::VECTOR4.

Here is the call graph for this function:

void Dali::Internal::KeyFrames::CreateKeyFramesSpec ( Property::Type  type)
private

Create a specialization from the given type, and store it to the mSpec member variable.

Definition at line 42 of file key-frames-impl.cpp.

References Dali::Property::BOOLEAN, DALI_ASSERT_DEBUG, Dali::Property::FLOAT, Dali::Property::INTEGER, mKeyFrames, mType, Dali::Internal::KeyFrameBaseSpec< V >::New(), Dali::Property::ROTATION, Dali::Property::VECTOR2, Dali::Property::VECTOR3, and Dali::Property::VECTOR4.

Referenced by Add().

Here is the call graph for this function:

Here is the caller graph for this function:

KeyFrameSpec * Dali::Internal::KeyFrames::GetKeyFramesBase ( ) const

Return the key frames without specialization.

The GetSpecialization methods below will convert to the specialized objects.

Definition at line 158 of file key-frames-impl.cpp.

References mKeyFrames.

Referenced by Dali::Internal::GetSpecialization().

Here is the caller graph for this function:

Property::Type Dali::Internal::KeyFrames::GetType ( ) const

Get the type of this key frame.

An empty key frame will return Property::NONE, wheras an initialised key frame object will return the type of it's first element.

Returns
the Property::Type of the key frame values

Definition at line 91 of file key-frames-impl.cpp.

References mType.

Referenced by Dali::Internal::Animation::AnimateBetween().

Here is the caller graph for this function:

KeyFrames * Dali::Internal::KeyFrames::New ( )
static

Definition at line 26 of file key-frames-impl.cpp.

References KeyFrames().

Referenced by Dali::KeyFrames::New().

Here is the call graph for this function:

Here is the caller graph for this function:

KeyFrames& Dali::Internal::KeyFrames::operator= ( const KeyFrames rhs)
private

Don't allow copy operator.

Member Data Documentation

IntrusivePtr<KeyFrameSpec> Dali::Internal::KeyFrames::mKeyFrames
private

Definition at line 100 of file key-frames-impl.h.

Referenced by Add(), CreateKeyFramesSpec(), and GetKeyFramesBase().

Dali::Property::Type Dali::Internal::KeyFrames::mType
private

Definition at line 99 of file key-frames-impl.h.

Referenced by Add(), CreateKeyFramesSpec(), and GetType().


The documentation for this class was generated from the following files:
Dali Docs Home
Read more about Dali