A Discrete-Event Network Simulator
API
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
ns3::TracedCallback< T1, T2, T3, T4, T5, T6, T7, T8 > Class Template Reference

forward calls to a chain of CallbackAn ns3::TracedCallback has almost exactly the same API as a normal ns3::Callback but instead of forwarding calls to a single function (as an ns3::Callback normally does), it forwards calls to a chain of ns3::Callback. TracedCallback::Connect adds a ns3::Callback at the end of the chain of callbacks. TracedCallback::Disconnect removes a ns3::Callback from the chain of callbacks. More...

#include <traced-callback.h>

Public Member Functions

void Connect (const CallbackBase &callback, std::string path)
 
void ConnectWithoutContext (const CallbackBase &callback)
 
void Disconnect (const CallbackBase &callback, std::string path)
 
void DisconnectWithoutContext (const CallbackBase &callback)
 
void operator() (void) const
 
void operator() (T1 a1) const
 
void operator() (T1 a1, T2 a2) const
 
void operator() (T1 a1, T2 a2, T3 a3) const
 
void operator() (T1 a1, T2 a2, T3 a3, T4 a4) const
 
void operator() (T1 a1, T2 a2, T3 a3, T4 a4, T5 a5) const
 
void operator() (T1 a1, T2 a2, T3 a3, T4 a4, T5 a5, T6 a6) const
 
void operator() (T1 a1, T2 a2, T3 a3, T4 a4, T5 a5, T6 a6, T7 a7) const
 
void operator() (T1 a1, T2 a2, T3 a3, T4 a4, T5 a5, T6 a6, T7 a7, T8 a8) const
 

Private Types

typedef std::list< Callback
< void, T1, T2, T3, T4, T5, T6,
T7, T8 > > 
CallbackList
 

Private Attributes

CallbackList m_callbackList
 

Detailed Description

template<typename T1 = empty, typename T2 = empty, typename T3 = empty, typename T4 = empty, typename T5 = empty, typename T6 = empty, typename T7 = empty, typename T8 = empty>
class ns3::TracedCallback< T1, T2, T3, T4, T5, T6, T7, T8 >

forward calls to a chain of Callback

An ns3::TracedCallback has almost exactly the same API as a normal ns3::Callback but instead of forwarding calls to a single function (as an ns3::Callback normally does), it forwards calls to a chain of ns3::Callback. TracedCallback::Connect adds a ns3::Callback at the end of the chain of callbacks. TracedCallback::Disconnect removes a ns3::Callback from the chain of callbacks.

Definition at line 43 of file traced-callback.h.

Member Function Documentation

template<typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 >
void ns3::TracedCallback< T1, T2, T3, T4, T5, T6, T7, T8 >::Connect ( const CallbackBase callback,
std::string  path 
)
Parameters
callbackcallback to add to chain of callbacks
paththe path to send back to the user callback.

Append the input callback to the end of the internal list of ns3::Callback. This method also will make sure that the input path specified by the user will be give back to the user's callback as its first argument.

Definition at line 126 of file traced-callback.h.

template<typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 >
void ns3::TracedCallback< T1, T2, T3, T4, T5, T6, T7, T8 >::ConnectWithoutContext ( const CallbackBase callback)
template<typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 >
void ns3::TracedCallback< T1, T2, T3, T4, T5, T6, T7, T8 >::Disconnect ( const CallbackBase callback,
std::string  path 
)
Parameters
callbackcallback to remove from the chain of callbacks.
paththe path which is sent back to the user callback.

Remove the input callback which has a matching path as first argument from the internal list of ns3::Callback. This method is really the symmetric of the TracedCallback::Connect method.

Definition at line 158 of file traced-callback.h.

template<typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 >
void ns3::TracedCallback< T1, T2, T3, T4, T5, T6, T7, T8 >::DisconnectWithoutContext ( const CallbackBase callback)
Parameters
callbackcallback to remove from the chain of callbacks.

Remove the input callback from the internal list of ns3::Callback. This method is really the symmetric of the TracedCallback::ConnectWithoutContext method.

Definition at line 138 of file traced-callback.h.

Referenced by BasicTracedCallbackTestCase::DoRun().


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