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...
 
R operator() (void)
 Functor with varying numbers of arguments. More...
 
R operator() (T1 a1)
 
R operator() (T1 a1, T2 a2)
 
R operator() (T1 a1, T2 a2, T3 a3)
 
R operator() (T1 a1, T2 a2, T3 a3, T4 a4)
 
R operator() (T1 a1, T2 a2, T3 a3, T4 a4, T5 a5)
 
R operator() (T1 a1, T2 a2, T3 a3, T4 a4, T5 a5, T6 a6)
 
R operator() (T1 a1, T2 a2, T3 a3, T4 a4, T5 a5, T6 a6, T7 a7)
 
R operator() (T1 a1, T2 a2, T3 a3, T4 a4, T5 a5, T6 a6, T7 a7, T8 a8)
 
R 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 ()
 Default constructor. More...
 
 SimpleRefCount (const SimpleRefCount &o)
 Copy constructor. More...
 
uint32_t GetReferenceCount (void) const
 Get the reference count of the object. More...
 
SimpleRefCount & operator= (const SimpleRefCount &o)
 Assignment operator. 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 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.

Template Parameters
OBJ_PTR[deduced] Type of the target object, as a pointer.
MEM_PTR[deduced] Type of the class member function.

Definition at line 598 of file callback.h.

Constructor & Destructor Documentation

◆ MemPtrCallbackImpl()

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 607 of file callback.h.

◆ ~MemPtrCallbackImpl()

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 610 of file callback.h.

Member Function Documentation

◆ IsEqual()

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 736 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:

◆ operator()() [1/10]

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

◆ operator()() [2/10]

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

◆ operator()() [3/10]

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 644 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.

◆ operator()() [4/10]

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 655 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.

◆ operator()() [5/10]

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 667 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.

◆ operator()() [6/10]

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 680 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.

◆ operator()() [7/10]

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 694 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.

◆ operator()() [8/10]

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 709 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.

◆ operator()() [9/10]

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 725 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.

◆ operator()() [10/10]

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

Member Data Documentation

◆ m_memPtr

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

◆ 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 >
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: