A Discrete-Event Network Simulator
API
Loading...
Searching...
No Matches
callback.h File Reference

Declaration of the various callback functions. More...

#include "attribute-helper.h"
#include "attribute.h"
#include "fatal-error.h"
#include "ptr.h"
#include "simple-ref-count.h"
#include <functional>
#include <memory>
#include <typeinfo>
#include <utility>
#include <vector>
+ Include dependency graph for callback.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  ns3::Callback< R, UArgs >
 Callback template class. More...
 
class  ns3::CallbackBase
 Base class for Callback class. More...
 
class  ns3::CallbackChecker
 AttributeChecker implementation for CallbackValue. More...
 
class  ns3::CallbackComponent< T, isComparable >
 Stores a component of a callback, i.e., the callable object or a bound argument. More...
 
class  ns3::CallbackComponent< T, false >
 Partial specialization of class CallbackComponent with isComparable equal to false. More...
 
class  ns3::CallbackComponentBase
 Abstract base class for CallbackComponent. More...
 
class  ns3::CallbackImpl< R, UArgs >
 CallbackImpl class with varying numbers of argument types. More...
 
class  ns3::CallbackImplBase
 Abstract base class for CallbackImpl Provides reference counting and equality test. More...
 
class  ns3::CallbackValue
 AttributeValue implementation for Callback. More...
 

Namespaces

namespace  ns3
 Every class exported by the ns3 library is enclosed in the ns3 namespace.
 

Typedefs

typedef std::vector< std::shared_ptr< CallbackComponentBase > > ns3::CallbackComponentVector
 Vector of callback components.
 

Functions

template<typename R , typename... Args>
Callback< R, Args... > ns3::MakeCallback (R(*fnPtr)(Args...))
 
template<typename T1 >
Ptr< const AttributeAccessor > ns3::MakeCallbackAccessor (T1 a1)
 
template<typename T1 , typename T2 >
Ptr< const AttributeAccessor > ns3::MakeCallbackAccessor (T1 a1, T2 a2)
 
Ptr< const AttributeChecker > ns3::MakeCallbackChecker ()
 
template<typename R , typename... Args>
Callback< R, Args... > ns3::MakeNullCallback ()
 
template<typename R , typename... Args>
bool ns3::operator!= (Callback< R, Args... > a, Callback< R, Args... > b)
 Inequality test.
 
template<typename T , typename OBJ , typename R , typename... Args>
Callback< R, Args... > ns3::MakeCallback (R(T::*memPtr)(Args...), OBJ objPtr)
 Build Callbacks for class method members which take varying numbers of arguments and potentially returning a value.
 
template<typename R , typename... Args, typename... BArgs>
auto ns3::MakeBoundCallback (R(*fnPtr)(Args...), BArgs &&... bargs)
 Make Callbacks with varying number of bound arguments.
 
template<typename T , typename OBJ , typename R , typename... Args, typename... BArgs>
auto ns3::MakeCallback (R(T::*memPtr)(Args...), OBJ objPtr, BArgs... bargs)
 

Detailed Description

Declaration of the various callback functions.

Definition in file callback.h.