Dali 3D User Interface Engine
List of all members | Public Types | Public Member Functions | Private Attributes
Dali::Internal::MessageValue4< T, P1, P2, P3, P4 > Class Template Reference

Templated message which calls a member function of an object. More...

#include <message.h>

Inheritance diagram for Dali::Internal::MessageValue4< T, P1, P2, P3, P4 >:
Inheritance graph
[legend]
Collaboration diagram for Dali::Internal::MessageValue4< T, P1, P2, P3, P4 >:
Collaboration graph
[legend]

Public Types

typedef void(T::* MemberFunction )(typename ParameterType< P1 >::PassingType, typename ParameterType< P2 >::PassingType, typename ParameterType< P3 >::PassingType, typename ParameterType< P4 >::PassingType)
 

Public Member Functions

 MessageValue4 (const T *obj, MemberFunction member, typename ParameterType< P1 >::PassingType p1, typename ParameterType< P2 >::PassingType p2, typename ParameterType< P3 >::PassingType p3, typename ParameterType< P4 >::PassingType p4)
 Create a message. More...
 
virtual ~MessageValue4 ()
 Virtual destructor. More...
 
virtual void Process (BufferIndex)
 Called to process the message. More...
 
- Public Member Functions inherited from Dali::Internal::MessageBase
 MessageBase ()
 Construct the message base. More...
 
virtual ~MessageBase ()
 Virtual destructor. More...
 

Private Attributes

T * object
 
MemberFunction memberFunction
 
ParameterType< P1 >::HolderType param1
 
ParameterType< P2 >::HolderType param2
 
ParameterType< P3 >::HolderType param3
 
ParameterType< P4 >::HolderType param4
 

Detailed Description

template<typename T, typename P1, typename P2, typename P3, typename P4>
class Dali::Internal::MessageValue4< T, P1, P2, P3, P4 >

Templated message which calls a member function of an object.

This overload passes four value-type parameters. Template parameters need to match the MemberFunction! The message will contain copy of the value (in case of & or const&)

Definition at line 308 of file message.h.

Member Typedef Documentation

template<typename T , typename P1 , typename P2 , typename P3 , typename P4 >
typedef void(T::* Dali::Internal::MessageValue4< T, P1, P2, P3, P4 >::MemberFunction)(typename ParameterType< P1 >::PassingType, typename ParameterType< P2 >::PassingType, typename ParameterType< P3 >::PassingType, typename ParameterType< P4 >::PassingType)

Definition at line 312 of file message.h.

Constructor & Destructor Documentation

template<typename T , typename P1 , typename P2 , typename P3 , typename P4 >
Dali::Internal::MessageValue4< T, P1, P2, P3, P4 >::MessageValue4 ( const T *  obj,
MemberFunction  member,
typename ParameterType< P1 >::PassingType  p1,
typename ParameterType< P2 >::PassingType  p2,
typename ParameterType< P3 >::PassingType  p3,
typename ParameterType< P4 >::PassingType  p4 
)
inline

Create a message.

Note
The object is expected to be const in the thread which sends this message. However it can be modified when Process() is called in a different thread.
Parameters
[in]objThe object.
[in]memberThe member function of the object.
[in]p1The first parameter to pass to the member function.
[in]p2The second parameter to pass to the member function.
[in]p3The third parameter to pass to the member function.
[in]p4The fourth parameter to pass to the member function.

Definition at line 329 of file message.h.

template<typename T , typename P1 , typename P2 , typename P3 , typename P4 >
virtual Dali::Internal::MessageValue4< T, P1, P2, P3, P4 >::~MessageValue4 ( )
inlinevirtual

Virtual destructor.

Definition at line 348 of file message.h.

Member Function Documentation

template<typename T , typename P1 , typename P2 , typename P3 , typename P4 >
virtual void Dali::Internal::MessageValue4< T, P1, P2, P3, P4 >::Process ( BufferIndex  )
inlinevirtual

Member Data Documentation

template<typename T , typename P1 , typename P2 , typename P3 , typename P4 >
MemberFunction Dali::Internal::MessageValue4< T, P1, P2, P3, P4 >::memberFunction
private
template<typename T , typename P1 , typename P2 , typename P3 , typename P4 >
T* Dali::Internal::MessageValue4< T, P1, P2, P3, P4 >::object
private

Definition at line 367 of file message.h.

template<typename T , typename P1 , typename P2 , typename P3 , typename P4 >
ParameterType< P1 >::HolderType Dali::Internal::MessageValue4< T, P1, P2, P3, P4 >::param1
private
template<typename T , typename P1 , typename P2 , typename P3 , typename P4 >
ParameterType< P2 >::HolderType Dali::Internal::MessageValue4< T, P1, P2, P3, P4 >::param2
private
template<typename T , typename P1 , typename P2 , typename P3 , typename P4 >
ParameterType< P3 >::HolderType Dali::Internal::MessageValue4< T, P1, P2, P3, P4 >::param3
private
template<typename T , typename P1 , typename P2 , typename P3 , typename P4 >
ParameterType< P4 >::HolderType Dali::Internal::MessageValue4< T, P1, P2, P3, P4 >::param4
private

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