A Discrete-Event Network Simulator
API
ns3::MemPtrCallbackImpl< OBJ_PTR, MEM_PTR, R, T1, T2, T3, T4, T5, T6, T7, T8, T9 > Class Template Reference

CallbackImpl for pointer to member functions. More...

#include "callback.h"

+ Inheritance diagram for ns3::MemPtrCallbackImpl< OBJ_PTR, MEM_PTR, R, T1, T2, T3, T4, T5, T6, T7, T8, T9 >:
+ Collaboration diagram for ns3::MemPtrCallbackImpl< OBJ_PTR, MEM_PTR, R, T1, T2, T3, T4, T5, T6, T7, T8, T9 >:

Public Member Functions

 MemPtrCallbackImpl (OBJ_PTR const &objPtr, MEM_PTR memPtr)
 Construct from an object pointer and member function pointer. More...
 
virtual ~MemPtrCallbackImpl ()
 
virtual bool IsEqual (Ptr< const CallbackImplBase > other) const
 Equality test. More...
 
operator() (void)
 Functor with varying numbers of arguments. More...
 
operator() (T1 a1)
 
operator() (T1 a1, T2 a2)
 
operator() (T1 a1, T2 a2, T3 a3)
 
operator() (T1 a1, T2 a2, T3 a3, T4 a4)
 
operator() (T1 a1, T2 a2, T3 a3, T4 a4, T5 a5)
 
operator() (T1 a1, T2 a2, T3 a3, T4 a4, T5 a5, T6 a6)
 
operator() (T1 a1, T2 a2, T3 a3, T4 a4, T5 a5, T6 a6, T7 a7)
 
operator() (T1 a1, T2 a2, T3 a3, T4 a4, T5 a5, T6 a6, T7 a7, T8 a8)
 
operator() (T1 a1, T2 a2, T3 a3, T4 a4, T5 a5, T6 a6, T7 a7, T8 a8, T9 a9)
 
- Public Member Functions inherited from ns3::CallbackImpl< R, T1, T2, T3, T4, T5, T6, T7, T8, T9 >
virtual ~CallbackImpl ()
 
virtual std::string GetTypeid (void) const
 Get the name of this object type. More...
 
- Public Member Functions inherited from ns3::CallbackImplBase
virtual ~CallbackImplBase ()
 Virtual destructor. More...
 
- Public Member Functions inherited from ns3::SimpleRefCount< CallbackImplBase >
 SimpleRefCount ()
 Constructor. More...
 
 SimpleRefCount (const SimpleRefCount &o)
 Copy constructor. More...
 
uint32_t GetReferenceCount (void) const
 Get the reference count of the object. More...
 
SimpleRefCountoperator= (const SimpleRefCount &o)
 Assignment. More...
 
void Ref (void) const
 Increment the reference count. More...
 
void Unref (void) const
 Decrement the reference count. More...
 

Private Attributes

MEM_PTR m_memPtr
 the member function pointer More...
 
OBJ_PTR const m_objPtr
 the object pointer More...
 

Additional Inherited Members

- Static Public Member Functions inherited from ns3::CallbackImpl< R, T1, T2, T3, T4, T5, T6, T7, T8, T9 >
static std::string DoGetTypeid (void)
 Get the name of this object type. More...
 
- Static Public Member Functions inherited from ns3::SimpleRefCount< CallbackImplBase >
static void Cleanup (void)
 Noop. More...
 
- Static Protected Member Functions inherited from ns3::CallbackImplBase
static std::string Demangle (const std::string &mangled)
 
template<typename T >
static std::string GetCppTypeid (void)
 Helper to get the C++ typeid as a string. More...
 

Detailed Description

template<typename OBJ_PTR, typename MEM_PTR, typename R, typename T1, typename T2, typename T3, typename T4, typename T5, typename T6, typename T7, typename T8, typename T9>
class ns3::MemPtrCallbackImpl< OBJ_PTR, MEM_PTR, R, T1, T2, T3, T4, T5, T6, T7, T8, T9 >

CallbackImpl for pointer to member functions.

Definition at line 588 of file callback.h.

Constructor & Destructor Documentation

template<typename OBJ_PTR, typename MEM_PTR, typename R, typename T1, typename T2, typename T3, typename T4, typename T5, typename T6, typename T7, typename T8, typename T9>
ns3::MemPtrCallbackImpl< OBJ_PTR, MEM_PTR, R, T1, T2, T3, T4, T5, T6, T7, T8, T9 >::MemPtrCallbackImpl ( OBJ_PTR const &  objPtr,
MEM_PTR  memPtr 
)
inline

Construct from an object pointer and member function pointer.

Parameters
[in]objPtrThe object pointer
[in]memPtrThe object class member function

Definition at line 596 of file callback.h.

template<typename OBJ_PTR, typename MEM_PTR, typename R, typename T1, typename T2, typename T3, typename T4, typename T5, typename T6, typename T7, typename T8, typename T9>
virtual ns3::MemPtrCallbackImpl< OBJ_PTR, MEM_PTR, R, T1, T2, T3, T4, T5, T6, T7, T8, T9 >::~MemPtrCallbackImpl ( )
inlinevirtual

Definition at line 598 of file callback.h.

Member Function Documentation

template<typename OBJ_PTR, typename MEM_PTR, typename R, typename T1, typename T2, typename T3, typename T4, typename T5, typename T6, typename T7, typename T8, typename T9>
virtual bool ns3::MemPtrCallbackImpl< OBJ_PTR, MEM_PTR, R, T1, T2, T3, T4, T5, T6, T7, T8, T9 >::IsEqual ( Ptr< const CallbackImplBase other) const
inlinevirtual

Equality test.

Parameters
[in]otherCallback Ptr
Returns
true if we have the same object and member function

Implements ns3::CallbackImplBase.

Definition at line 713 of file callback.h.

References ns3::MemPtrCallbackImpl< OBJ_PTR, MEM_PTR, R, T1, T2, T3, T4, T5, T6, T7, T8, T9 >::m_memPtr, ns3::MemPtrCallbackImpl< OBJ_PTR, MEM_PTR, R, T1, T2, T3, T4, T5, T6, T7, T8, T9 >::m_objPtr, and ns3::PeekPointer().

+ Here is the call graph for this function:

template<typename OBJ_PTR, typename MEM_PTR, typename R, typename T1, typename T2, typename T3, typename T4, typename T5, typename T6, typename T7, typename T8, typename T9>
R ns3::MemPtrCallbackImpl< OBJ_PTR, MEM_PTR, R, T1, T2, T3, T4, T5, T6, T7, T8, T9 >::operator() ( void  )
inline
template<typename OBJ_PTR, typename MEM_PTR, typename R, typename T1, typename T2, typename T3, typename T4, typename T5, typename T6, typename T7, typename T8, typename T9>
R ns3::MemPtrCallbackImpl< OBJ_PTR, MEM_PTR, R, T1, T2, T3, T4, T5, T6, T7, T8, T9 >::operator() ( T1  a1)
inline
template<typename OBJ_PTR, typename MEM_PTR, typename R, typename T1, typename T2, typename T3, typename T4, typename T5, typename T6, typename T7, typename T8, typename T9>
R ns3::MemPtrCallbackImpl< OBJ_PTR, MEM_PTR, R, T1, T2, T3, T4, T5, T6, T7, T8, T9 >::operator() ( T1  a1,
T2  a2 
)
inline
template<typename OBJ_PTR, typename MEM_PTR, typename R, typename T1, typename T2, typename T3, typename T4, typename T5, typename T6, typename T7, typename T8, typename T9>
R ns3::MemPtrCallbackImpl< OBJ_PTR, MEM_PTR, R, T1, T2, T3, T4, T5, T6, T7, T8, T9 >::operator() ( T1  a1,
T2  a2,
T3  a3 
)
inline
Parameters
[in]a1First argument
[in]a2Second argument
[in]a3Third argument
Returns
Callback value

Definition at line 628 of file callback.h.

References ns3::MemPtrCallbackImpl< OBJ_PTR, MEM_PTR, R, T1, T2, T3, T4, T5, T6, T7, T8, T9 >::m_memPtr, and ns3::MemPtrCallbackImpl< OBJ_PTR, MEM_PTR, R, T1, T2, T3, T4, T5, T6, T7, T8, T9 >::m_objPtr.

template<typename OBJ_PTR, typename MEM_PTR, typename R, typename T1, typename T2, typename T3, typename T4, typename T5, typename T6, typename T7, typename T8, typename T9>
R ns3::MemPtrCallbackImpl< OBJ_PTR, MEM_PTR, R, T1, T2, T3, T4, T5, T6, T7, T8, T9 >::operator() ( T1  a1,
T2  a2,
T3  a3,
T4  a4 
)
inline
Parameters
[in]a1First argument
[in]a2Second argument
[in]a3Third argument
[in]a4Fourth argument
Returns
Callback value

Definition at line 638 of file callback.h.

References ns3::MemPtrCallbackImpl< OBJ_PTR, MEM_PTR, R, T1, T2, T3, T4, T5, T6, T7, T8, T9 >::m_memPtr, and ns3::MemPtrCallbackImpl< OBJ_PTR, MEM_PTR, R, T1, T2, T3, T4, T5, T6, T7, T8, T9 >::m_objPtr.

template<typename OBJ_PTR, typename MEM_PTR, typename R, typename T1, typename T2, typename T3, typename T4, typename T5, typename T6, typename T7, typename T8, typename T9>
R ns3::MemPtrCallbackImpl< OBJ_PTR, MEM_PTR, R, T1, T2, T3, T4, T5, T6, T7, T8, T9 >::operator() ( T1  a1,
T2  a2,
T3  a3,
T4  a4,
T5  a5 
)
inline
Parameters
[in]a1First argument
[in]a2Second argument
[in]a3Third argument
[in]a4Fourth argument
[in]a5Fifth argument
Returns
Callback value

Definition at line 649 of file callback.h.

References ns3::MemPtrCallbackImpl< OBJ_PTR, MEM_PTR, R, T1, T2, T3, T4, T5, T6, T7, T8, T9 >::m_memPtr, and ns3::MemPtrCallbackImpl< OBJ_PTR, MEM_PTR, R, T1, T2, T3, T4, T5, T6, T7, T8, T9 >::m_objPtr.

template<typename OBJ_PTR, typename MEM_PTR, typename R, typename T1, typename T2, typename T3, typename T4, typename T5, typename T6, typename T7, typename T8, typename T9>
R ns3::MemPtrCallbackImpl< OBJ_PTR, MEM_PTR, R, T1, T2, T3, T4, T5, T6, T7, T8, T9 >::operator() ( T1  a1,
T2  a2,
T3  a3,
T4  a4,
T5  a5,
T6  a6 
)
inline
Parameters
[in]a1First argument
[in]a2Second argument
[in]a3Third argument
[in]a4Fourth argument
[in]a5Fifth argument
[in]a6Sixth argument
Returns
Callback value

Definition at line 661 of file callback.h.

References ns3::MemPtrCallbackImpl< OBJ_PTR, MEM_PTR, R, T1, T2, T3, T4, T5, T6, T7, T8, T9 >::m_memPtr, and ns3::MemPtrCallbackImpl< OBJ_PTR, MEM_PTR, R, T1, T2, T3, T4, T5, T6, T7, T8, T9 >::m_objPtr.

template<typename OBJ_PTR, typename MEM_PTR, typename R, typename T1, typename T2, typename T3, typename T4, typename T5, typename T6, typename T7, typename T8, typename T9>
R ns3::MemPtrCallbackImpl< OBJ_PTR, MEM_PTR, R, T1, T2, T3, T4, T5, T6, T7, T8, T9 >::operator() ( T1  a1,
T2  a2,
T3  a3,
T4  a4,
T5  a5,
T6  a6,
T7  a7 
)
inline
Parameters
[in]a1First argument
[in]a2Second argument
[in]a3Third argument
[in]a4Fourth argument
[in]a5Fifth argument
[in]a6Sixth argument
[in]a7Seventh argument
Returns
Callback value

Definition at line 674 of file callback.h.

References ns3::MemPtrCallbackImpl< OBJ_PTR, MEM_PTR, R, T1, T2, T3, T4, T5, T6, T7, T8, T9 >::m_memPtr, and ns3::MemPtrCallbackImpl< OBJ_PTR, MEM_PTR, R, T1, T2, T3, T4, T5, T6, T7, T8, T9 >::m_objPtr.

template<typename OBJ_PTR, typename MEM_PTR, typename R, typename T1, typename T2, typename T3, typename T4, typename T5, typename T6, typename T7, typename T8, typename T9>
R ns3::MemPtrCallbackImpl< OBJ_PTR, MEM_PTR, R, T1, T2, T3, T4, T5, T6, T7, T8, T9 >::operator() ( T1  a1,
T2  a2,
T3  a3,
T4  a4,
T5  a5,
T6  a6,
T7  a7,
T8  a8 
)
inline
Parameters
[in]a1First argument
[in]a2Second argument
[in]a3Third argument
[in]a4Fourth argument
[in]a5Fifth argument
[in]a6Sixth argument
[in]a7Seventh argument
[in]a8Eighth argument
Returns
Callback value

Definition at line 688 of file callback.h.

References ns3::MemPtrCallbackImpl< OBJ_PTR, MEM_PTR, R, T1, T2, T3, T4, T5, T6, T7, T8, T9 >::m_memPtr, and ns3::MemPtrCallbackImpl< OBJ_PTR, MEM_PTR, R, T1, T2, T3, T4, T5, T6, T7, T8, T9 >::m_objPtr.

template<typename OBJ_PTR, typename MEM_PTR, typename R, typename T1, typename T2, typename T3, typename T4, typename T5, typename T6, typename T7, typename T8, typename T9>
R ns3::MemPtrCallbackImpl< OBJ_PTR, MEM_PTR, R, T1, T2, T3, T4, T5, T6, T7, T8, T9 >::operator() ( T1  a1,
T2  a2,
T3  a3,
T4  a4,
T5  a5,
T6  a6,
T7  a7,
T8  a8,
T9  a9 
)
inlinevirtual
Parameters
[in]a1First argument
[in]a2Second argument
[in]a3Third argument
[in]a4Fourth argument
[in]a5Fifth argument
[in]a6Sixth argument
[in]a7Seventh argument
[in]a8Eighth argument
[in]a9Ninth argument
Returns
Callback value

Implements ns3::CallbackImpl< R, T1, T2, T3, T4, T5, T6, T7, T8, T9 >.

Definition at line 703 of file callback.h.

References ns3::MemPtrCallbackImpl< OBJ_PTR, MEM_PTR, R, T1, T2, T3, T4, T5, T6, T7, T8, T9 >::m_memPtr, and ns3::MemPtrCallbackImpl< OBJ_PTR, MEM_PTR, R, T1, T2, T3, T4, T5, T6, T7, T8, T9 >::m_objPtr.

Member Data Documentation

template<typename OBJ_PTR, typename MEM_PTR, typename R, typename T1, typename T2, typename T3, typename T4, typename T5, typename T6, typename T7, typename T8, typename T9>
MEM_PTR ns3::MemPtrCallbackImpl< OBJ_PTR, MEM_PTR, R, T1, T2, T3, T4, T5, T6, T7, T8, T9 >::m_memPtr
private
template<typename OBJ_PTR, typename MEM_PTR, typename R, typename T1, typename T2, typename T3, typename T4, typename T5, typename T6, typename T7, typename T8, typename T9>
OBJ_PTR const ns3::MemPtrCallbackImpl< OBJ_PTR, MEM_PTR, R, T1, T2, T3, T4, T5, T6, T7, T8, T9 >::m_objPtr
private

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