A Discrete-Event Network Simulator
API
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
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 ()
 
- 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::SimpleRefCount< CallbackImplBase >
static void Cleanup (void)
 Noop. 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 332 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
objPtrthe object pointer
memPtrthe object class member function

Definition at line 340 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 342 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
otherCallback Ptr
Returns
true if we have the same object and member function

Implements ns3::CallbackImplBase.

Definition at line 457 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
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
a1first argument
a2second argument
a3third argument
a4fourth argument
Returns
Callback value

Definition at line 382 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
a1first argument
a2second argument
a3third argument
a4fourth argument
a5fifth argument
Returns
Callback value

Definition at line 393 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
a1first argument
a2second argument
a3third argument
a4fourth argument
a5fifth argument
a6sixth argument
Returns
Callback value

Definition at line 405 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
a1first argument
a2second argument
a3third argument
a4fourth argument
a5fifth argument
a6sixth argument
a7seventh argument
Returns
Callback value

Definition at line 418 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
a1first argument
a2second argument
a3third argument
a4fourth argument
a5fifth argument
a6sixth argument
a7seventh argument
a8eighth argument
Returns
Callback value

Definition at line 432 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
a1first argument
a2second argument
a3third argument
a4fourth argument
a5fifth argument
a6sixth argument
a7seventh argument
a8eighth argument
a9ninth argument
Returns
Callback value

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

Definition at line 447 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: