A Discrete-Event Network Simulator
API
MakeEvent from Function Pointers and Lambdas.

Create EventImpl instances from function pointers or lambdas which take varying numbers of arguments. More...

+ Collaboration diagram for MakeEvent from Function Pointers and Lambdas.:

Functions

template<typename T >
EventImplns3::MakeEvent (T function)
 Make an EventImpl from a lambda. More...
 
EventImplns3::MakeEvent (void(*f)())
 Make an EventImpl from a function pointer taking varying numbers of arguments. More...
 
template<typename U1 , typename T1 >
EventImplns3::MakeEvent (void(*f)(U1), T1 a1)
 Make an EventImpl from a function pointer taking varying numbers of arguments. More...
 
template<typename U1 , typename U2 , typename T1 , typename T2 >
EventImplns3::MakeEvent (void(*f)(U1, U2), T1 a1, T2 a2)
 Make an EventImpl from a function pointer taking varying numbers of arguments. More...
 
template<typename U1 , typename U2 , typename U3 , typename T1 , typename T2 , typename T3 >
EventImplns3::MakeEvent (void(*f)(U1, U2, U3), T1 a1, T2 a2, T3 a3)
 Make an EventImpl from a function pointer taking varying numbers of arguments. More...
 
template<typename U1 , typename U2 , typename U3 , typename U4 , typename T1 , typename T2 , typename T3 , typename T4 >
EventImplns3::MakeEvent (void(*f)(U1, U2, U3, U4), T1 a1, T2 a2, T3 a3, T4 a4)
 Make an EventImpl from a function pointer taking varying numbers of arguments. More...
 
template<typename U1 , typename U2 , typename U3 , typename U4 , typename U5 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 >
EventImplns3::MakeEvent (void(*f)(U1, U2, U3, U4, U5), T1 a1, T2 a2, T3 a3, T4 a4, T5 a5)
 Make an EventImpl from a function pointer taking varying numbers of arguments. More...
 
template<typename U1 , typename U2 , typename U3 , typename U4 , typename U5 , typename U6 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 >
EventImplns3::MakeEvent (void(*f)(U1, U2, U3, U4, U5, U6), T1 a1, T2 a2, T3 a3, T4 a4, T5 a5, T6 a6)
 Make an EventImpl from a function pointer taking varying numbers of arguments. More...
 

Detailed Description

Create EventImpl instances from function pointers or lambdas which take varying numbers of arguments.

Function Documentation

◆ MakeEvent() [1/8]

template<typename T >
EventImpl * ns3::MakeEvent ( function)

Make an EventImpl from a lambda.

Parameters
[in]functionThe lambda
Returns
The constructed EventImpl.

Definition at line 939 of file make-event.h.

◆ MakeEvent() [2/8]

EventImpl * ns3::MakeEvent ( void(*)()  f)

Make an EventImpl from a function pointer taking varying numbers of arguments.

Parameters
[in]fThe function pointer.
Returns
The constructed EventImpl.

Definition at line 36 of file make-event.cc.

References f(), and NS_LOG_FUNCTION.

Referenced by ns3::TapBridge::ReadCallback(), ns3::FdNetDevice::ReceiveCallback(), ns3::Simulator::Schedule(), ns3::Simulator::ScheduleDestroy(), ns3::Simulator::ScheduleNow(), and ns3::Simulator::ScheduleWithContext().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ MakeEvent() [3/8]

template<typename U1 , typename T1 >
EventImpl * ns3::MakeEvent ( void(*)(U1)  f,
T1  a1 
)

Make an EventImpl from a function pointer taking varying numbers of arguments.

Template Parameters
U1[deduced] Formal type of the argument to the function.
T1[deduced] Actual type of the argument to the function.
Parameters
[in]fThe function pointer.
[in]a1Argument to be bound to the function.
Returns
The constructed EventImpl.

Definition at line 678 of file make-event.h.

References f().

+ Here is the call graph for this function:

◆ MakeEvent() [4/8]

template<typename U1 , typename U2 , typename T1 , typename T2 >
EventImpl * ns3::MakeEvent ( void(*)(U1, U2)  f,
T1  a1,
T2  a2 
)

Make an EventImpl from a function pointer taking varying numbers of arguments.

Template Parameters
U1[deduced] Formal type of the first argument to the function.
U2[deduced] Formal type of the second argument to the function.
T1[deduced] Actual type of the first argument to the function.
T2[deduced] Actual type of the second argument to the function.
Parameters
[in]fThe function pointer.
[in]a1First argument to be bound to the function.
[in]a2Second argument to be bound to the function.
Returns
The constructed EventImpl.

Definition at line 712 of file make-event.h.

References f().

+ Here is the call graph for this function:

◆ MakeEvent() [5/8]

template<typename U1 , typename U2 , typename U3 , typename T1 , typename T2 , typename T3 >
EventImpl * ns3::MakeEvent ( void(*)(U1, U2, U3)  f,
T1  a1,
T2  a2,
T3  a3 
)

Make an EventImpl from a function pointer taking varying numbers of arguments.

Template Parameters
U1[deduced] Formal type of the first argument to the function.
U2[deduced] Formal type of the second argument to the function.
U3[deduced] Formal type of the third argument to the function.
T1[deduced] Actual type of the first argument to the function.
T2[deduced] Actual type of the second argument to the function.
T3[deduced] Actual type of the third argument to the function.
Parameters
[in]fThe function pointer.
[in]a1First argument to be bound to the function.
[in]a2Second argument to be bound to the function.
[in]a3Third argument to be bound to the function.
Returns
The constructed EventImpl.

Definition at line 748 of file make-event.h.

References f().

+ Here is the call graph for this function:

◆ MakeEvent() [6/8]

template<typename U1 , typename U2 , typename U3 , typename U4 , typename T1 , typename T2 , typename T3 , typename T4 >
EventImpl * ns3::MakeEvent ( void(*)(U1, U2, U3, U4)  f,
T1  a1,
T2  a2,
T3  a3,
T4  a4 
)

Make an EventImpl from a function pointer taking varying numbers of arguments.

Template Parameters
U1[deduced] Formal type of the first argument to the function.
U2[deduced] Formal type of the second argument to the function.
U3[deduced] Formal type of the third argument to the function.
U4[deduced] Formal type of the fourth argument to the function.
T1[deduced] Actual type of the first argument to the function.
T2[deduced] Actual type of the second argument to the function.
T3[deduced] Actual type of the third argument to the function.
T4[deduced] Actual type of the fourth argument to the function.
Parameters
[in]fThe function pointer.
[in]a1First argument to be bound to the function.
[in]a2Second argument to be bound to the function.
[in]a3Third argument to be bound to the function.
[in]a4Fourth argument to be bound to the function.
Returns
The constructed EventImpl.

Definition at line 793 of file make-event.h.

References f().

+ Here is the call graph for this function:

◆ MakeEvent() [7/8]

template<typename U1 , typename U2 , typename U3 , typename U4 , typename U5 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 >
EventImpl * ns3::MakeEvent ( void(*)(U1, U2, U3, U4, U5)  f,
T1  a1,
T2  a2,
T3  a3,
T4  a4,
T5  a5 
)

Make an EventImpl from a function pointer taking varying numbers of arguments.

Template Parameters
U1[deduced] Formal type of the first argument to the function.
U2[deduced] Formal type of the second argument to the function.
U3[deduced] Formal type of the third argument to the function.
U4[deduced] Formal type of the fourth argument to the function.
U5[deduced] Formal type of the fifth argument to the function.
T1[deduced] Actual type of the first argument to the function.
T2[deduced] Actual type of the second argument to the function.
T3[deduced] Actual type of the third argument to the function.
T4[deduced] Actual type of the fourth argument to the function.
T5[deduced] Actual type of the fifth argument to the function.
Parameters
[in]fThe function pointer.
[in]a1First argument to be bound to the function.
[in]a2Second argument to be bound to the function.
[in]a3Third argument to be bound to the function.
[in]a4Fourth argument to be bound to the function.
[in]a5Fifth argument to be bound to the function.
Returns
The constructed EventImpl.

Definition at line 842 of file make-event.h.

References f().

+ Here is the call graph for this function:

◆ MakeEvent() [8/8]

template<typename U1 , typename U2 , typename U3 , typename U4 , typename U5 , typename U6 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 >
EventImpl * ns3::MakeEvent ( void(*)(U1, U2, U3, U4, U5, U6)  f,
T1  a1,
T2  a2,
T3  a3,
T4  a4,
T5  a5,
T6  a6 
)

Make an EventImpl from a function pointer taking varying numbers of arguments.

Template Parameters
U1Formal type of the first argument to the function.
U2Formal type of the second argument to the function.
U3Formal type of the third argument to the function.
U4Formal type of the fourth argument to the function.
U5Formal type of the fifth argument to the function.
U6Formal type of the sixth argument to the function.
T1Actual type of the first argument to the function.
T2Actual type of the second argument to the function.
T3Actual type of the third argument to the function.
T4Actual type of the fourth argument to the function.
T5Actual type of the fifth argument to the function.
T6Actual type of the sixth argument to the function.
Parameters
fThe function pointer.
a1First argument to be bound to the function.
a2Second argument to be bound to the function.
a3Third argument to be bound to the function.
a4Fourth argument to be bound to the function.
a5Fifth argument to be bound to the function.
a6Sixth argument to be bound to the function.
Returns
The constructed EventImpl.

Definition at line 895 of file make-event.h.

References f().

+ Here is the call graph for this function: