STM32LIB
Classes | Public Types | Public Member Functions | Private Types | Private Member Functions | Private Attributes | List of all members
fastdelegate::FastDelegate5< Param1, Param2, Param3, Param4, Param5, RetType > Class Template Reference

#include <FastDelegate.h>

Classes

struct  SafeBoolStruct
 

Public Types

typedef FastDelegate5 type
 

Public Member Functions

 FastDelegate5 ()
 
 FastDelegate5 (const FastDelegate5 &x)
 
void operator= (const FastDelegate5 &x)
 
bool operator== (const FastDelegate5 &x) const
 
bool operator!= (const FastDelegate5 &x) const
 
bool operator< (const FastDelegate5 &x) const
 
bool operator> (const FastDelegate5 &x) const
 
template<class X , class Y >
 FastDelegate5 (Y *pthis, DesiredRetType(X::*function_to_bind)(Param1 p1, Param2 p2, Param3 p3, Param4 p4, Param5 p5))
 
template<class X , class Y >
void bind (Y *pthis, DesiredRetType(X::*function_to_bind)(Param1 p1, Param2 p2, Param3 p3, Param4 p4, Param5 p5))
 
template<class X , class Y >
 FastDelegate5 (const Y *pthis, DesiredRetType(X::*function_to_bind)(Param1 p1, Param2 p2, Param3 p3, Param4 p4, Param5 p5) const)
 
template<class X , class Y >
void bind (const Y *pthis, DesiredRetType(X::*function_to_bind)(Param1 p1, Param2 p2, Param3 p3, Param4 p4, Param5 p5) const)
 
 FastDelegate5 (DesiredRetType(*function_to_bind)(Param1 p1, Param2 p2, Param3 p3, Param4 p4, Param5 p5))
 
void operator= (DesiredRetType(*function_to_bind)(Param1 p1, Param2 p2, Param3 p3, Param4 p4, Param5 p5))
 
void bind (DesiredRetType(*function_to_bind)(Param1 p1, Param2 p2, Param3 p3, Param4 p4, Param5 p5))
 
RetType operator() (Param1 p1, Param2 p2, Param3 p3, Param4 p4, Param5 p5) const
 
 operator unspecified_bool_type () const
 
bool operator== (StaticFunctionPtr funcptr)
 
bool operator!= (StaticFunctionPtr funcptr)
 
bool operator! () const
 
bool empty () const
 
void clear ()
 
const DelegateMementoGetMemento ()
 
void SetMemento (const DelegateMemento &any)
 

Private Types

typedef detail::DefaultVoidToVoid< RetType >::type DesiredRetType
 
typedef DesiredRetType(* StaticFunctionPtr) (Param1 p1, Param2 p2, Param3 p3, Param4 p4, Param5 p5)
 
typedef RetType(* UnvoidStaticFunctionPtr) (Param1 p1, Param2 p2, Param3 p3, Param4 p4, Param5 p5)
 
typedef RetType(detail::GenericClass::* GenericMemFn) (Param1 p1, Param2 p2, Param3 p3, Param4 p4, Param5 p5)
 
typedef detail::ClosurePtr< GenericMemFn, StaticFunctionPtr, UnvoidStaticFunctionPtrClosureType
 
typedef struct fastdelegate::FastDelegate5::SafeBoolStruct UselessTypedef
 
typedef StaticFunctionPtr SafeBoolStruct::* unspecified_bool_type
 

Private Member Functions

RetType InvokeStaticFunction (Param1 p1, Param2 p2, Param3 p3, Param4 p4, Param5 p5) const
 

Private Attributes

ClosureType m_Closure
 

Member Typedef Documentation

template<class Param1, class Param2, class Param3, class Param4, class Param5, class RetType = detail::DefaultVoid>
typedef detail::DefaultVoidToVoid<RetType>::type fastdelegate::FastDelegate5< Param1, Param2, Param3, Param4, Param5, RetType >::DesiredRetType
private
template<class Param1, class Param2, class Param3, class Param4, class Param5, class RetType = detail::DefaultVoid>
typedef DesiredRetType(* fastdelegate::FastDelegate5< Param1, Param2, Param3, Param4, Param5, RetType >::StaticFunctionPtr) (Param1 p1, Param2 p2, Param3 p3, Param4 p4, Param5 p5)
private
template<class Param1, class Param2, class Param3, class Param4, class Param5, class RetType = detail::DefaultVoid>
typedef RetType(* fastdelegate::FastDelegate5< Param1, Param2, Param3, Param4, Param5, RetType >::UnvoidStaticFunctionPtr) (Param1 p1, Param2 p2, Param3 p3, Param4 p4, Param5 p5)
private
template<class Param1, class Param2, class Param3, class Param4, class Param5, class RetType = detail::DefaultVoid>
typedef RetType(detail::GenericClass::* fastdelegate::FastDelegate5< Param1, Param2, Param3, Param4, Param5, RetType >::GenericMemFn) (Param1 p1, Param2 p2, Param3 p3, Param4 p4, Param5 p5)
private
template<class Param1, class Param2, class Param3, class Param4, class Param5, class RetType = detail::DefaultVoid>
typedef detail::ClosurePtr<GenericMemFn, StaticFunctionPtr, UnvoidStaticFunctionPtr> fastdelegate::FastDelegate5< Param1, Param2, Param3, Param4, Param5, RetType >::ClosureType
private
template<class Param1, class Param2, class Param3, class Param4, class Param5, class RetType = detail::DefaultVoid>
typedef FastDelegate5 fastdelegate::FastDelegate5< Param1, Param2, Param3, Param4, Param5, RetType >::type
template<class Param1, class Param2, class Param3, class Param4, class Param5, class RetType = detail::DefaultVoid>
typedef struct fastdelegate::FastDelegate5::SafeBoolStruct fastdelegate::FastDelegate5< Param1, Param2, Param3, Param4, Param5, RetType >::UselessTypedef
private
template<class Param1, class Param2, class Param3, class Param4, class Param5, class RetType = detail::DefaultVoid>
typedef StaticFunctionPtr SafeBoolStruct::* fastdelegate::FastDelegate5< Param1, Param2, Param3, Param4, Param5, RetType >::unspecified_bool_type
private

Constructor & Destructor Documentation

template<class Param1, class Param2, class Param3, class Param4, class Param5, class RetType = detail::DefaultVoid>
fastdelegate::FastDelegate5< Param1, Param2, Param3, Param4, Param5, RetType >::FastDelegate5 ( )
inline
template<class Param1, class Param2, class Param3, class Param4, class Param5, class RetType = detail::DefaultVoid>
fastdelegate::FastDelegate5< Param1, Param2, Param3, Param4, Param5, RetType >::FastDelegate5 ( const FastDelegate5< Param1, Param2, Param3, Param4, Param5, RetType > &  x)
inline
template<class Param1, class Param2, class Param3, class Param4, class Param5, class RetType = detail::DefaultVoid>
template<class X , class Y >
fastdelegate::FastDelegate5< Param1, Param2, Param3, Param4, Param5, RetType >::FastDelegate5 ( Y *  pthis,
DesiredRetType(X::*)(Param1 p1, Param2 p2, Param3 p3, Param4 p4, Param5 p5)  function_to_bind 
)
inline
template<class Param1, class Param2, class Param3, class Param4, class Param5, class RetType = detail::DefaultVoid>
template<class X , class Y >
fastdelegate::FastDelegate5< Param1, Param2, Param3, Param4, Param5, RetType >::FastDelegate5 ( const Y *  pthis,
DesiredRetType(X::*)(Param1 p1, Param2 p2, Param3 p3, Param4 p4, Param5 p5) const  function_to_bind 
)
inline
template<class Param1, class Param2, class Param3, class Param4, class Param5, class RetType = detail::DefaultVoid>
fastdelegate::FastDelegate5< Param1, Param2, Param3, Param4, Param5, RetType >::FastDelegate5 ( DesiredRetType(*)(Param1 p1, Param2 p2, Param3 p3, Param4 p4, Param5 p5)  function_to_bind)
inline

Member Function Documentation

template<class Param1, class Param2, class Param3, class Param4, class Param5, class RetType = detail::DefaultVoid>
void fastdelegate::FastDelegate5< Param1, Param2, Param3, Param4, Param5, RetType >::operator= ( const FastDelegate5< Param1, Param2, Param3, Param4, Param5, RetType > &  x)
inline
template<class Param1, class Param2, class Param3, class Param4, class Param5, class RetType = detail::DefaultVoid>
bool fastdelegate::FastDelegate5< Param1, Param2, Param3, Param4, Param5, RetType >::operator== ( const FastDelegate5< Param1, Param2, Param3, Param4, Param5, RetType > &  x) const
inline
template<class Param1, class Param2, class Param3, class Param4, class Param5, class RetType = detail::DefaultVoid>
bool fastdelegate::FastDelegate5< Param1, Param2, Param3, Param4, Param5, RetType >::operator!= ( const FastDelegate5< Param1, Param2, Param3, Param4, Param5, RetType > &  x) const
inline
template<class Param1, class Param2, class Param3, class Param4, class Param5, class RetType = detail::DefaultVoid>
bool fastdelegate::FastDelegate5< Param1, Param2, Param3, Param4, Param5, RetType >::operator< ( const FastDelegate5< Param1, Param2, Param3, Param4, Param5, RetType > &  x) const
inline
template<class Param1, class Param2, class Param3, class Param4, class Param5, class RetType = detail::DefaultVoid>
bool fastdelegate::FastDelegate5< Param1, Param2, Param3, Param4, Param5, RetType >::operator> ( const FastDelegate5< Param1, Param2, Param3, Param4, Param5, RetType > &  x) const
inline
template<class Param1, class Param2, class Param3, class Param4, class Param5, class RetType = detail::DefaultVoid>
template<class X , class Y >
void fastdelegate::FastDelegate5< Param1, Param2, Param3, Param4, Param5, RetType >::bind ( Y *  pthis,
DesiredRetType(X::*)(Param1 p1, Param2 p2, Param3 p3, Param4 p4, Param5 p5)  function_to_bind 
)
inline
template<class Param1, class Param2, class Param3, class Param4, class Param5, class RetType = detail::DefaultVoid>
template<class X , class Y >
void fastdelegate::FastDelegate5< Param1, Param2, Param3, Param4, Param5, RetType >::bind ( const Y *  pthis,
DesiredRetType(X::*)(Param1 p1, Param2 p2, Param3 p3, Param4 p4, Param5 p5) const  function_to_bind 
)
inline
template<class Param1, class Param2, class Param3, class Param4, class Param5, class RetType = detail::DefaultVoid>
void fastdelegate::FastDelegate5< Param1, Param2, Param3, Param4, Param5, RetType >::operator= ( DesiredRetType(*)(Param1 p1, Param2 p2, Param3 p3, Param4 p4, Param5 p5)  function_to_bind)
inline
template<class Param1, class Param2, class Param3, class Param4, class Param5, class RetType = detail::DefaultVoid>
void fastdelegate::FastDelegate5< Param1, Param2, Param3, Param4, Param5, RetType >::bind ( DesiredRetType(*)(Param1 p1, Param2 p2, Param3 p3, Param4 p4, Param5 p5)  function_to_bind)
inline
template<class Param1, class Param2, class Param3, class Param4, class Param5, class RetType = detail::DefaultVoid>
RetType fastdelegate::FastDelegate5< Param1, Param2, Param3, Param4, Param5, RetType >::operator() ( Param1  p1,
Param2  p2,
Param3  p3,
Param4  p4,
Param5  p5 
) const
inline
template<class Param1, class Param2, class Param3, class Param4, class Param5, class RetType = detail::DefaultVoid>
fastdelegate::FastDelegate5< Param1, Param2, Param3, Param4, Param5, RetType >::operator unspecified_bool_type ( ) const
inline
template<class Param1, class Param2, class Param3, class Param4, class Param5, class RetType = detail::DefaultVoid>
bool fastdelegate::FastDelegate5< Param1, Param2, Param3, Param4, Param5, RetType >::operator== ( StaticFunctionPtr  funcptr)
inline
template<class Param1, class Param2, class Param3, class Param4, class Param5, class RetType = detail::DefaultVoid>
bool fastdelegate::FastDelegate5< Param1, Param2, Param3, Param4, Param5, RetType >::operator!= ( StaticFunctionPtr  funcptr)
inline
template<class Param1, class Param2, class Param3, class Param4, class Param5, class RetType = detail::DefaultVoid>
bool fastdelegate::FastDelegate5< Param1, Param2, Param3, Param4, Param5, RetType >::operator! ( ) const
inline
template<class Param1, class Param2, class Param3, class Param4, class Param5, class RetType = detail::DefaultVoid>
bool fastdelegate::FastDelegate5< Param1, Param2, Param3, Param4, Param5, RetType >::empty ( ) const
inline
template<class Param1, class Param2, class Param3, class Param4, class Param5, class RetType = detail::DefaultVoid>
void fastdelegate::FastDelegate5< Param1, Param2, Param3, Param4, Param5, RetType >::clear ( )
inline
template<class Param1, class Param2, class Param3, class Param4, class Param5, class RetType = detail::DefaultVoid>
const DelegateMemento& fastdelegate::FastDelegate5< Param1, Param2, Param3, Param4, Param5, RetType >::GetMemento ( )
inline
template<class Param1, class Param2, class Param3, class Param4, class Param5, class RetType = detail::DefaultVoid>
void fastdelegate::FastDelegate5< Param1, Param2, Param3, Param4, Param5, RetType >::SetMemento ( const DelegateMemento any)
inline
template<class Param1, class Param2, class Param3, class Param4, class Param5, class RetType = detail::DefaultVoid>
RetType fastdelegate::FastDelegate5< Param1, Param2, Param3, Param4, Param5, RetType >::InvokeStaticFunction ( Param1  p1,
Param2  p2,
Param3  p3,
Param4  p4,
Param5  p5 
) const
inlineprivate

Member Data Documentation

template<class Param1, class Param2, class Param3, class Param4, class Param5, class RetType = detail::DefaultVoid>
ClosureType fastdelegate::FastDelegate5< Param1, Param2, Param3, Param4, Param5, RetType >::m_Closure
private

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