A Discrete-Event Network Simulator
API
Files | Namespaces | Classes | Functions
Tracing

Publish/subscribe tools to collect and report changes to any values used by the various model components. More...

Files

file  trace-source-accessor.cc
 ns3::TraceSourceAccessor implementation (constructor and destructor).
 
file  trace-source-accessor.h
 ns3::TraceSourceAccessor and ns3::MakeTraceSourceAccessor declarations.
 
file  traced-callback.h
 ns3::TracedCallback declaration and template implementation.
 
file  traced-value.h
 ns3::TracedValue declaration and template implementation.
 

Namespaces

 ns3::TracedValueCallback
 TracedValue Callback function types.
 

Classes

class  ns3::TracedCallback< T1, T2, T3, T4, T5, T6, T7, T8 >
 Forward calls to a chain of Callback. More...
 
class  ns3::TracedValue< T >
 Trace classes with value semantics. More...
 
class  ns3::TraceSourceAccessor
 Control access to objects' trace sources. More...
 

Functions

template<typename T , typename SOURCE >
Ptr< const TraceSourceAccessorns3::DoMakeTraceSourceAccessor (SOURCE T::*a)
 MakeTraceSourceAccessor() implementation. More...
 
static Ptr< const TraceSourceAccessorns3::MakeEmptyTraceSourceAccessor ()
 Create an empty TraceSourceAccessor. More...
 
template<typename T >
Ptr< const TraceSourceAccessorns3::MakeTraceSourceAccessor (T a)
 Create a TraceSourceAccessor which will control access to the underlying trace source. More...
 
template<typename T >
TracedValue< T > ns3::operator! (const TracedValue< T > &lhs)
 Unary arithmetic operator for TracedValue.
More...
 
template<typename T , typename U >
bool ns3::operator!= (const TracedValue< T > &lhs, const TracedValue< U > &rhs)
 Boolean operator for TracedValue.
More...
 
template<typename T , typename U >
bool ns3::operator!= (const TracedValue< T > &lhs, const U &rhs)
 Boolean operator for TracedValue.
More...
 
template<typename T , typename U >
bool ns3::operator!= (const U &lhs, const TracedValue< T > &rhs)
 Boolean operator for TracedValue.
More...
 
template<typename T , typename U >
auto ns3::operator% (const TracedValue< T > &lhs, const TracedValue< U > &rhs) -> TracedValue< decltype(lhs.Get() % rhs.Get())>
 Infix arithmetic operator for TracedValue.
More...
 
template<typename T , typename U >
auto ns3::operator% (const TracedValue< T > &lhs, const U &rhs) -> TracedValue< decltype(lhs.Get() % rhs)>
 Infix arithmetic operator for TracedValue.
More...
 
template<typename T , typename U >
auto ns3::operator% (const U &lhs, const TracedValue< T > &rhs) -> TracedValue< decltype(lhs % rhs.Get())>
 Infix arithmetic operator for TracedValue.
More...
 
template<typename T , typename U >
TracedValue< T > & ns3::operator%= (TracedValue< T > &lhs, const U &rhs)
 Operator assignment for TracedValue.
More...
 
template<typename T , typename U >
auto ns3::operator& (const TracedValue< T > &lhs, const TracedValue< U > &rhs) -> TracedValue< decltype(lhs.Get() &rhs.Get())>
 Infix arithmetic operator for TracedValue.
More...
 
template<typename T , typename U >
auto ns3::operator& (const TracedValue< T > &lhs, const U &rhs) -> TracedValue< decltype(lhs.Get() &rhs)>
 Infix arithmetic operator for TracedValue.
More...
 
template<typename T , typename U >
auto ns3::operator& (const U &lhs, const TracedValue< T > &rhs) -> TracedValue< decltype(lhs &rhs.Get())>
 Infix arithmetic operator for TracedValue.
More...
 
template<typename T , typename U >
TracedValue< T > & ns3::operator&= (TracedValue< T > &lhs, const U &rhs)
 Operator assignment for TracedValue.
More...
 
template<typename T , typename U >
auto ns3::operator* (const TracedValue< T > &lhs, const TracedValue< U > &rhs) -> TracedValue< decltype(lhs.Get() *rhs.Get())>
 Infix arithmetic operator for TracedValue.
More...
 
template<typename T , typename U >
auto ns3::operator* (const TracedValue< T > &lhs, const U &rhs) -> TracedValue< decltype(lhs.Get() *rhs)>
 Infix arithmetic operator for TracedValue.
More...
 
template<typename T , typename U >
auto ns3::operator* (const U &lhs, const TracedValue< T > &rhs) -> TracedValue< decltype(lhs+rhs.Get())>
 Infix arithmetic operator for TracedValue.
More...
 
template<typename T , typename U >
TracedValue< T > & ns3::operator*= (TracedValue< T > &lhs, const U &rhs)
 Operator assignment for TracedValue.
More...
 
template<typename T , typename U >
auto ns3::operator+ (const TracedValue< T > &lhs, const TracedValue< U > &rhs) -> TracedValue< decltype(lhs.Get()+rhs.Get())>
 Infix arithmetic operator for TracedValue. More...
 
template<typename T , typename U >
auto ns3::operator+ (const TracedValue< T > &lhs, const U &rhs) -> TracedValue< decltype(lhs.Get()+rhs)>
 Infix arithmetic operator for TracedValue.
More...
 
template<typename T , typename U >
auto ns3::operator+ (const U &lhs, const TracedValue< T > &rhs) -> TracedValue< decltype(lhs+rhs.Get())>
 Infix arithmetic operator for TracedValue.
More...
 
template<typename T >
TracedValue< T > ns3::operator+ (const TracedValue< T > &lhs)
 Unary arithmetic operator for TracedValue. More...
 
template<typename T , typename U >
TracedValue< T > & ns3::operator+= (TracedValue< T > &lhs, const U &rhs)
 Operator assignment for TracedValue. More...
 
template<typename T , typename U >
auto ns3::operator- (const TracedValue< T > &lhs, const TracedValue< U > &rhs) -> TracedValue< decltype(lhs.Get() - rhs.Get())>
 Infix arithmetic operator for TracedValue.
More...
 
template<typename T , typename U >
auto ns3::operator- (const TracedValue< T > &lhs, const U &rhs) -> TracedValue< decltype(lhs.Get() - rhs)>
 Infix arithmetic operator for TracedValue.
More...
 
template<typename T , typename U >
auto ns3::operator- (const U &lhs, const TracedValue< T > &rhs) -> TracedValue< decltype(lhs - rhs.Get())>
 Infix arithmetic operator for TracedValue.
More...
 
template<typename T >
TracedValue< T > ns3::operator- (const TracedValue< T > &lhs)
 Unary arithmetic operator for TracedValue.
More...
 
template<typename T , typename U >
TracedValue< T > & ns3::operator-= (TracedValue< T > &lhs, const U &rhs)
 Operator assignment for TracedValue.
More...
 
template<typename T , typename U >
auto ns3::operator/ (const TracedValue< T > &lhs, const TracedValue< U > &rhs) -> TracedValue< decltype(lhs.Get()/rhs.Get())>
 Infix arithmetic operator for TracedValue.
More...
 
template<typename T , typename U >
auto ns3::operator/ (const TracedValue< T > &lhs, const U &rhs) -> TracedValue< decltype(lhs.Get()/rhs)>
 Infix arithmetic operator for TracedValue.
More...
 
template<typename T , typename U >
auto ns3::operator/ (const U &lhs, const TracedValue< T > &rhs) -> TracedValue< decltype(lhs/rhs.Get())>
 Infix arithmetic operator for TracedValue.
More...
 
template<typename T , typename U >
TracedValue< T > & ns3::operator/= (TracedValue< T > &lhs, const U &rhs)
 Operator assignment for TracedValue.
More...
 
template<typename T , typename U >
bool ns3::operator< (const TracedValue< T > &lhs, const TracedValue< U > &rhs)
 Boolean operator for TracedValue.
More...
 
template<typename T , typename U >
bool ns3::operator< (const TracedValue< T > &lhs, const U &rhs)
 Boolean operator for TracedValue.
More...
 
template<typename T , typename U >
bool ns3::operator< (const U &lhs, const TracedValue< T > &rhs)
 Boolean operator for TracedValue.
More...
 
template<typename T >
std::ostream & ns3::operator<< (std::ostream &os, const TracedValue< T > &rhs)
 Output streamer for TracedValue. More...
 
template<typename T , typename U >
auto ns3::operator<< (const TracedValue< T > &lhs, const TracedValue< U > &rhs) -> TracedValue< decltype(lhs.Get()<< rhs.Get())>
 Infix arithmetic operator for TracedValue.
More...
 
template<typename T , typename U >
auto ns3::operator<< (const TracedValue< T > &lhs, const U &rhs) -> TracedValue< decltype(lhs.Get()<< rhs)>
 Infix arithmetic operator for TracedValue.
More...
 
template<typename T , typename U >
auto ns3::operator<< (const U &lhs, const TracedValue< T > &rhs) -> TracedValue< decltype(lhs<< rhs.Get())>
 Infix arithmetic operator for TracedValue.
More...
 
template<typename T , typename U >
TracedValue< T > & ns3::operator<<= (TracedValue< T > &lhs, const U &rhs)
 Operator assignment for TracedValue.
More...
 
template<typename T , typename U >
bool ns3::operator<= (const TracedValue< T > &lhs, const TracedValue< U > &rhs)
 Boolean operator for TracedValue.
More...
 
template<typename T , typename U >
bool ns3::operator<= (const TracedValue< T > &lhs, const U &rhs)
 Boolean operator for TracedValue.
More...
 
template<typename T , typename U >
bool ns3::operator<= (const U &lhs, const TracedValue< T > &rhs)
 Boolean operator for TracedValue.
More...
 
template<typename T , typename U >
bool ns3::operator== (const TracedValue< T > &lhs, const TracedValue< U > &rhs)
 Boolean operator for TracedValue. More...
 
template<typename T , typename U >
bool ns3::operator== (const TracedValue< T > &lhs, const U &rhs)
 Boolean operator for TracedValue.
More...
 
template<typename T , typename U >
bool ns3::operator== (const U &lhs, const TracedValue< T > &rhs)
 Boolean operator for TracedValue.
More...
 
template<typename T , typename U >
bool ns3::operator> (const TracedValue< T > &lhs, const TracedValue< U > &rhs)
 Boolean operator for TracedValue.
More...
 
template<typename T , typename U >
bool ns3::operator> (const TracedValue< T > &lhs, const U &rhs)
 Boolean operator for TracedValue.
More...
 
template<typename T , typename U >
bool ns3::operator> (const U &lhs, const TracedValue< T > &rhs)
 Boolean operator for TracedValue.
More...
 
template<typename T , typename U >
bool ns3::operator>= (const TracedValue< T > &lhs, const TracedValue< U > &rhs)
 Boolean operator for TracedValue.
More...
 
template<typename T , typename U >
bool ns3::operator>= (const TracedValue< T > &lhs, const U &rhs)
 Boolean operator for TracedValue.
More...
 
template<typename T , typename U >
bool ns3::operator>= (const U &lhs, const TracedValue< T > &rhs)
 Boolean operator for TracedValue.
More...
 
template<typename T , typename U >
auto ns3::operator>> (const TracedValue< T > &lhs, const TracedValue< U > &rhs) -> TracedValue< decltype(lhs.Get() >> rhs.Get())>
 Infix arithmetic operator for TracedValue.
More...
 
template<typename T , typename U >
auto ns3::operator>> (const TracedValue< T > &lhs, const U &rhs) -> TracedValue< decltype(lhs.Get() >> rhs)>
 Infix arithmetic operator for TracedValue.
More...
 
template<typename T , typename U >
auto ns3::operator>> (const U &lhs, const TracedValue< T > &rhs) -> TracedValue< decltype(lhs >> rhs.Get())>
 Infix arithmetic operator for TracedValue.
More...
 
template<typename T , typename U >
TracedValue< T > & ns3::operator>>= (TracedValue< T > &lhs, const U &rhs)
 Operator assignment for TracedValue.
More...
 
template<typename T , typename U >
auto ns3::operator^ (const TracedValue< T > &lhs, const TracedValue< U > &rhs) -> TracedValue< decltype(lhs.Get() ^ rhs.Get())>
 Infix arithmetic operator for TracedValue.
More...
 
template<typename T , typename U >
auto ns3::operator^ (const TracedValue< T > &lhs, const U &rhs) -> TracedValue< decltype(lhs.Get() ^ rhs)>
 Infix arithmetic operator for TracedValue.
More...
 
template<typename T , typename U >
auto ns3::operator^ (const U &lhs, const TracedValue< T > &rhs) -> TracedValue< decltype(lhs ^ rhs.Get())>
 Infix arithmetic operator for TracedValue.
More...
 
template<typename T , typename U >
TracedValue< T > & ns3::operator^= (TracedValue< T > &lhs, const U &rhs)
 Operator assignment for TracedValue.
More...
 
template<typename T , typename U >
auto ns3::operator| (const TracedValue< T > &lhs, const TracedValue< U > &rhs) -> TracedValue< decltype(lhs.Get()|rhs.Get())>
 Infix arithmetic operator for TracedValue.
More...
 
template<typename T , typename U >
auto ns3::operator| (const TracedValue< T > &lhs, const U &rhs) -> TracedValue< decltype(lhs.Get()|rhs)>
 Infix arithmetic operator for TracedValue.
More...
 
template<typename T , typename U >
auto ns3::operator| (const U &lhs, const TracedValue< T > &rhs) -> TracedValue< decltype(lhs|rhs.Get())>
 Infix arithmetic operator for TracedValue.
More...
 
template<typename T , typename U >
TracedValue< T > & ns3::operator|= (TracedValue< T > &lhs, const U &rhs)
 Operator assignment for TracedValue.
More...
 
template<typename T >
TracedValue< T > ns3::operator~ (const TracedValue< T > &lhs)
 Unary arithmetic operator for TracedValue.
More...
 

Detailed Description

Publish/subscribe tools to collect and report changes to any values used by the various model components.

Additional callback function signatures defined elsewhere:

Function Documentation

◆ DoMakeTraceSourceAccessor()

template<typename T , typename SOURCE >
Ptr<const TraceSourceAccessor> ns3::DoMakeTraceSourceAccessor ( SOURCE T::*  a)

MakeTraceSourceAccessor() implementation.

Template Parameters
T[deduced] Class type of the TracedCallback
SOURCE[deduced] Type of the underlying value.
Parameters
[in]aThe underlying data value.
Returns
The TraceSourceAccessor

Definition at line 151 of file trace-source-accessor.h.

References ns3::Config::Connect(), ns3::Config::ConnectWithoutContext(), ns3::Config::Disconnect(), and ns3::Config::DisconnectWithoutContext().

Referenced by ns3::MakeTraceSourceAccessor().

◆ MakeEmptyTraceSourceAccessor()

static Ptr<const TraceSourceAccessor> ns3::MakeEmptyTraceSourceAccessor ( )
inlinestatic

Create an empty TraceSourceAccessor.

Returns
The empty TraceSourceAccessor (runtime exception if used)

Definition at line 126 of file trace-source-accessor.h.

Referenced by DeprecatedAttribute::GetTypeId().

◆ MakeTraceSourceAccessor()

template<typename T >
Ptr< const TraceSourceAccessor > ns3::MakeTraceSourceAccessor ( a)

Create a TraceSourceAccessor which will control access to the underlying trace source.

This helper template method assumes that the underlying type implements a statically-polymorphic set of Connect and Disconnect methods and creates a dynamic-polymorphic class to wrap the underlying static-polymorphic class. This functionality is typically provided by wrapping an object data member in a TracedCallback or TracedValue.

Parameters
[in]aThe trace source
Returns
The TraceSourceAccessor

Definition at line 198 of file trace-source-accessor.h.

References ns3::DoMakeTraceSourceAccessor().

Referenced by SampleEmitter::GetTypeId(), MyObject::GetTypeId(), Sender::GetTypeId(), ns3::BasicEnergySource::GetTypeId(), ns3::SimpleDeviceEnergyModel::GetTypeId(), Emitter::GetTypeId(), ns3::WimaxMacQueue::GetTypeId(), ns3::UdpEchoClient::GetTypeId(), ns3::MobilityModel::GetTypeId(), ns3::TcpSocketState::GetTypeId(), ns3::AarfWifiManager::GetTypeId(), ns3::WifiMac::GetTypeId(), ns3::Uinteger16Probe::GetTypeId(), ns3::Uinteger8Probe::GetTypeId(), ns3::Uinteger32Probe::GetTypeId(), ns3::LtePdcp::GetTypeId(), ns3::ParfWifiManager::GetTypeId(), ns3::V4Ping::GetTypeId(), ns3::BasicEnergyHarvester::GetTypeId(), ns3::UdpEchoServer::GetTypeId(), ns3::AarfcdWifiManager::GetTypeId(), ns3::AmrrWifiManager::GetTypeId(), ns3::IdealWifiManager::GetTypeId(), ns3::CaraWifiManager::GetTypeId(), ns3::RegularWifiMac::GetTypeId(), ns3::TcpHybla::GetTypeId(), ns3::AparfWifiManager::GetTypeId(), ns3::PacketSocketServer::GetTypeId(), ns3::RvBatteryModel::GetTypeId(), ns3::OnoeWifiManager::GetTypeId(), ns3::BooleanProbe::GetTypeId(), ns3::DoubleProbe::GetTypeId(), ns3::PacketProbe::GetTypeId(), ns3::TimeProbe::GetTypeId(), ns3::TimeSeriesAdaptor::GetTypeId(), ns3::UdpServer::GetTypeId(), ns3::ArfWifiManager::GetTypeId(), ns3::EpcUeNas::GetTypeId(), ns3::TbfQueueDisc::GetTypeId(), ns3::DhcpClient::GetTypeId(), ns3::Ipv4PacketProbe::GetTypeId(), anonymous_namespace{sequence-number-test-suite.cc}::SequenceNumberTestObj::GetTypeId(), ns3::SpectrumWifiPhy::GetTypeId(), ns3::Ipv6PacketProbe::GetTypeId(), ns3::QueueBase::GetTypeId(), ns3::PointToPointChannel::GetTypeId(), ns3::UanMacCw::GetTypeId(), ns3::ApplicationPacketProbe::GetTypeId(), ns3::LteSimpleSpectrumPhy::GetTypeId(), ns3::dot11s::PeerManagementProtocol::GetTypeId(), ns3::SpectrumAnalyzer::GetTypeId(), ns3::EpcSgwPgwApplication::GetTypeId(), ns3::UanNetDevice::GetTypeId(), ns3::LteFfrSimple::GetTypeId(), ns3::PacketSocketClient::GetTypeId(), ns3::NscTcpSocketImpl::GetTypeId(), ns3::ArpL3Protocol::GetTypeId(), ns3::SimpleNetDevice::GetTypeId(), ns3::WifiPhyStateHelper::GetTypeId(), ns3::EpcEnbApplication::GetTypeId(), ns3::LteRlc::GetTypeId(), ns3::WaveformGenerator::GetTypeId(), ns3::LteUePowerControl::GetTypeId(), ns3::RraaWifiManager::GetTypeId(), ns3::SimpleOfdmWimaxPhy::GetTypeId(), ns3::CsmaNetDevice::GetTypeId(), ns3::tests::ConfigTestObject::GetTypeId(), ns3::UanMacRcGw::GetTypeId(), ns3::VirtualNetDevice::GetTypeId(), ns3::DynamicQueueLimits::GetTypeId(), ns3::dot11s::HwmpProtocol::GetTypeId(), ns3::Ipv6L3Protocol::GetTypeId(), ns3::CoDelQueueDisc::GetTypeId(), ns3::AcousticModemEnergyModel::GetTypeId(), ns3::SpectrumChannel::GetTypeId(), ns3::PointToPointNetDevice::GetTypeId(), ns3::WifiPhy::GetTypeId(), ns3::BaseStationNetDevice::GetTypeId(), ns3::ArpCache::GetTypeId(), ns3::LteEnbPhy::GetTypeId(), ns3::TcpWestwood::GetTypeId(), ns3::LiIonEnergySource::GetTypeId(), ns3::BulkSendApplication::GetTypeId(), ns3::LteEnbMac::GetTypeId(), ns3::PacketSink::GetTypeId(), ns3::UdpSocketImpl::GetTypeId(), ns3::AlohaNoackNetDevice::GetTypeId(), ns3::RrpaaWifiManager::GetTypeId(), ns3::TcpRxBuffer::GetTypeId(), ns3::dsr::DsrOptions::GetTypeId(), ns3::SixLowPanNetDevice::GetTypeId(), ns3::SubscriberStationNetDevice::GetTypeId(), ns3::Ipv4L3Protocol::GetTypeId(), ns3::LteUePhy::GetTypeId(), ns3::ThreeGppHttpServer::GetTypeId(), ns3::FdNetDevice::GetTypeId(), ns3::WimaxNetDevice::GetTypeId(), ns3::olsr::RoutingProtocol::GetTypeId(), ns3::OnOffApplication::GetTypeId(), ns3::UanPhyDual::GetTypeId(), ns3::HalfDuplexIdealPhy::GetTypeId(), ns3::WifiRemoteStationManager::GetTypeId(), ns3::PacketSocket::GetTypeId(), ns3::dsr::DsrRouting::GetTypeId(), ns3::QosTxop::GetTypeId(), AttributeObjectTest::GetTypeId(), ns3::StaWifiMac::GetTypeId(), ns3::ThreeGppHttpClient::GetTypeId(), ns3::UeManager::GetTypeId(), TracedValueCallbackTestCase::CheckTvCb< T >::GetTypeId(), ns3::LteUeRrc::GetTypeId(), ns3::TcpTxBuffer::GetTypeId(), ns3::MinstrelWifiManager::GetTypeId(), ns3::LteSpectrumPhy::GetTypeId(), ns3::UanMacRc::GetTypeId(), ns3::MinstrelHtWifiManager::GetTypeId(), DeprecatedAttribute::GetTypeId(), ns3::TcpSocketBase::GetTypeId(), ns3::WifiRadioEnergyModel::GetTypeId(), ns3::LrWpanMac::GetTypeId(), ns3::LrWpanPhy::GetTypeId(), ns3::Queue< ns3::Packet >::GetTypeId(), ns3::QueueDisc::GetTypeId(), ns3::UanPhyGen::GetTypeId(), ns3::UanPhy::GetTypeId(), and ns3::LteEnbRrc::GetTypeId().

◆ operator!()

template<typename T >
TracedValue<T> ns3::operator! ( const TracedValue< T > &  lhs)

Unary arithmetic operator for TracedValue.

Template Parameters
T[deduced] The underlying type held by the TracedValue.
Parameters
[in]lhsThe TracedValue.
Returns
The result of doing the operator on the underlying values.

Definition at line 764 of file traced-value.h.

References ns3::TracedValue< T >::Get(), and TRACED_VALUE_DEBUG.

◆ operator!=() [1/3]

template<typename T , typename U >
bool ns3::operator!= ( const TracedValue< T > &  lhs,
const TracedValue< U > &  rhs 
)

Boolean operator for TracedValue.

Template Parameters
T[deduced] The underlying type held by the left-hand argument.
U[deduced] The underlying type held by the right-hand argument.
Parameters
[in]lhsThe left-hand argument.
[in]rhsThe right-hand argument.
Returns
The Boolean result of comparing the underlying values.

Definition at line 323 of file traced-value.h.

References ns3::TracedValue< T >::Get(), and TRACED_VALUE_DEBUG.

◆ operator!=() [2/3]

template<typename T , typename U >
bool ns3::operator!= ( const TracedValue< T > &  lhs,
const U &  rhs 
)

Boolean operator for TracedValue.

Template Parameters
T[deduced] The underlying type held by the left-hand argument.
U[deduced] The underlying type held by the right-hand argument.
Parameters
[in]lhsThe left-hand argument.
[in]rhsThe right-hand argument.
Returns
The Boolean result of comparing the underlying values.

Definition at line 330 of file traced-value.h.

References ns3::TracedValue< T >::Get(), and TRACED_VALUE_DEBUG.

◆ operator!=() [3/3]

template<typename T , typename U >
bool ns3::operator!= ( const U &  lhs,
const TracedValue< T > &  rhs 
)

Boolean operator for TracedValue.

Template Parameters
T[deduced] The underlying type held by the left-hand argument.
U[deduced] The underlying type held by the right-hand argument.
Parameters
[in]lhsThe left-hand argument.
[in]rhsThe right-hand argument.
Returns
The Boolean result of comparing the underlying values.

Definition at line 337 of file traced-value.h.

References ns3::TracedValue< T >::Get(), and TRACED_VALUE_DEBUG.

◆ operator%() [1/3]

template<typename T , typename U >
auto ns3::operator% ( const TracedValue< T > &  lhs,
const TracedValue< U > &  rhs 
) -> TracedValue<decltype(lhs.Get() % rhs.Get())>

Infix arithmetic operator for TracedValue.

This returns the arithmetic result in a new TracedValue, which has no Callback connected.

Template Parameters
T[deduced] The underlying type held by the left-hand argument.
U[deduced] The underlying type held by the right-hand argument.
Parameters
[in]lhsThe left-hand argument.
[in]rhsThe right-hand argument.
Returns
The result of doing the operator on the underlying values.

Definition at line 520 of file traced-value.h.

References TRACED_VALUE_DEBUG.

◆ operator%() [2/3]

template<typename T , typename U >
auto ns3::operator% ( const TracedValue< T > &  lhs,
const U &  rhs 
) -> TracedValue<decltype(lhs.Get() % rhs)>

Infix arithmetic operator for TracedValue.

This returns the arithmetic result in a new TracedValue, which has no Callback connected.

Template Parameters
T[deduced] The underlying type held by the left-hand argument.
U[deduced] The underlying type held by the right-hand argument.
Parameters
[in]lhsThe left-hand argument.
[in]rhsThe right-hand argument.
Returns
The result of doing the operator on the underlying values.

Definition at line 526 of file traced-value.h.

References TRACED_VALUE_DEBUG.

◆ operator%() [3/3]

template<typename T , typename U >
auto ns3::operator% ( const U &  lhs,
const TracedValue< T > &  rhs 
) -> TracedValue<decltype(lhs % rhs.Get())>

Infix arithmetic operator for TracedValue.

This returns the arithmetic result in a new TracedValue, which has no Callback connected.

Template Parameters
T[deduced] The underlying type held by the left-hand argument.
U[deduced] The underlying type held by the right-hand argument.
Parameters
[in]lhsThe left-hand argument.
[in]rhsThe right-hand argument.
Returns
The result of doing the operator on the underlying values.

Definition at line 532 of file traced-value.h.

References TRACED_VALUE_DEBUG.

◆ operator%=()

template<typename T , typename U >
TracedValue<T>& ns3::operator%= ( TracedValue< T > &  lhs,
const U &  rhs 
)

Operator assignment for TracedValue.

The result of the arithmetic operation on the underlying values is assigned to the lhs TracedValue. If the new value is different, the Callback will be invoked.

Template Parameters
T[deduced] The underlying type held by the left-hand argument.
U[deduced] The underlying type held by the right-hand argument.
Parameters
[in]lhsThe left-hand argument.
[in]rhsThe right-hand argument.
Returns
The result of doing the operator on the underlying values.

Definition at line 683 of file traced-value.h.

References ns3::TracedValue< T >::Get(), ns3::TracedValue< T >::Set(), and TRACED_VALUE_DEBUG.

◆ operator&() [1/3]

template<typename T , typename U >
auto ns3::operator & ( const TracedValue< T > &  lhs,
const TracedValue< U > &  rhs 
) -> TracedValue<decltype(lhs.Get() & rhs.Get())>

Infix arithmetic operator for TracedValue.

This returns the arithmetic result in a new TracedValue, which has no Callback connected.

Template Parameters
T[deduced] The underlying type held by the left-hand argument.
U[deduced] The underlying type held by the right-hand argument.
Parameters
[in]lhsThe left-hand argument.
[in]rhsThe right-hand argument.
Returns
The result of doing the operator on the underlying values.

Definition at line 577 of file traced-value.h.

References TRACED_VALUE_DEBUG.

◆ operator&() [2/3]

template<typename T , typename U >
auto ns3::operator & ( const TracedValue< T > &  lhs,
const U &  rhs 
) -> TracedValue<decltype(lhs.Get() & rhs)>

Infix arithmetic operator for TracedValue.

This returns the arithmetic result in a new TracedValue, which has no Callback connected.

Template Parameters
T[deduced] The underlying type held by the left-hand argument.
U[deduced] The underlying type held by the right-hand argument.
Parameters
[in]lhsThe left-hand argument.
[in]rhsThe right-hand argument.
Returns
The result of doing the operator on the underlying values.

Definition at line 583 of file traced-value.h.

References TRACED_VALUE_DEBUG.

◆ operator&() [3/3]

template<typename T , typename U >
auto ns3::operator & ( const U &  lhs,
const TracedValue< T > &  rhs 
) -> TracedValue<decltype(lhs & rhs.Get())>

Infix arithmetic operator for TracedValue.

This returns the arithmetic result in a new TracedValue, which has no Callback connected.

Template Parameters
T[deduced] The underlying type held by the left-hand argument.
U[deduced] The underlying type held by the right-hand argument.
Parameters
[in]lhsThe left-hand argument.
[in]rhsThe right-hand argument.
Returns
The result of doing the operator on the underlying values.

Definition at line 589 of file traced-value.h.

References TRACED_VALUE_DEBUG.

◆ operator&=()

template<typename T , typename U >
TracedValue<T>& ns3::operator &= ( TracedValue< T > &  lhs,
const U &  rhs 
)

Operator assignment for TracedValue.

The result of the arithmetic operation on the underlying values is assigned to the lhs TracedValue. If the new value is different, the Callback will be invoked.

Template Parameters
T[deduced] The underlying type held by the left-hand argument.
U[deduced] The underlying type held by the right-hand argument.
Parameters
[in]lhsThe left-hand argument.
[in]rhsThe right-hand argument.
Returns
The result of doing the operator on the underlying values.

Definition at line 710 of file traced-value.h.

References ns3::TracedValue< T >::Get(), ns3::TracedValue< T >::Set(), and TRACED_VALUE_DEBUG.

◆ operator*() [1/3]

template<typename T , typename U >
auto ns3::operator* ( const TracedValue< T > &  lhs,
const TracedValue< U > &  rhs 
) -> TracedValue<decltype(lhs.Get() * rhs.Get())>

Infix arithmetic operator for TracedValue.

This returns the arithmetic result in a new TracedValue, which has no Callback connected.

Template Parameters
T[deduced] The underlying type held by the left-hand argument.
U[deduced] The underlying type held by the right-hand argument.
Parameters
[in]lhsThe left-hand argument.
[in]rhsThe right-hand argument.
Returns
The result of doing the operator on the underlying values.

Definition at line 482 of file traced-value.h.

References TRACED_VALUE_DEBUG.

◆ operator*() [2/3]

template<typename T , typename U >
auto ns3::operator* ( const TracedValue< T > &  lhs,
const U &  rhs 
) -> TracedValue<decltype(lhs.Get() * rhs)>

Infix arithmetic operator for TracedValue.

This returns the arithmetic result in a new TracedValue, which has no Callback connected.

Template Parameters
T[deduced] The underlying type held by the left-hand argument.
U[deduced] The underlying type held by the right-hand argument.
Parameters
[in]lhsThe left-hand argument.
[in]rhsThe right-hand argument.
Returns
The result of doing the operator on the underlying values.

Definition at line 488 of file traced-value.h.

References TRACED_VALUE_DEBUG.

◆ operator*() [3/3]

template<typename T , typename U >
auto ns3::operator* ( const U &  lhs,
const TracedValue< T > &  rhs 
) -> TracedValue<decltype(lhs + rhs.Get())>

Infix arithmetic operator for TracedValue.

This returns the arithmetic result in a new TracedValue, which has no Callback connected.

Template Parameters
T[deduced] The underlying type held by the left-hand argument.
U[deduced] The underlying type held by the right-hand argument.
Parameters
[in]lhsThe left-hand argument.
[in]rhsThe right-hand argument.
Returns
The result of doing the operator on the underlying values.

Definition at line 494 of file traced-value.h.

References TRACED_VALUE_DEBUG.

◆ operator*=()

template<typename T , typename U >
TracedValue<T>& ns3::operator*= ( TracedValue< T > &  lhs,
const U &  rhs 
)

Operator assignment for TracedValue.

The result of the arithmetic operation on the underlying values is assigned to the lhs TracedValue. If the new value is different, the Callback will be invoked.

Template Parameters
T[deduced] The underlying type held by the left-hand argument.
U[deduced] The underlying type held by the right-hand argument.
Parameters
[in]lhsThe left-hand argument.
[in]rhsThe right-hand argument.
Returns
The result of doing the operator on the underlying values.

Definition at line 665 of file traced-value.h.

References ns3::TracedValue< T >::Get(), ns3::TracedValue< T >::Set(), and TRACED_VALUE_DEBUG.

◆ operator+() [1/4]

template<typename T , typename U >
auto ns3::operator+ ( const TracedValue< T > &  lhs,
const TracedValue< U > &  rhs 
) -> TracedValue<decltype(lhs.Get() + rhs.Get())>

Infix arithmetic operator for TracedValue.

This returns the arithmetic result in a new TracedValue, which has no Callback connected.

Template Parameters
T[deduced] The underlying type held by the left-hand argument.
U[deduced] The underlying type held by the right-hand argument.
Parameters
[in]lhsThe left-hand argument.
[in]rhsThe right-hand argument.
Returns
The result of doing the operator on the underlying values.

Definition at line 444 of file traced-value.h.

References TRACED_VALUE_DEBUG.

◆ operator+() [2/4]

template<typename T , typename U >
auto ns3::operator+ ( const TracedValue< T > &  lhs,
const U &  rhs 
) -> TracedValue<decltype(lhs.Get() + rhs)>

Infix arithmetic operator for TracedValue.

This returns the arithmetic result in a new TracedValue, which has no Callback connected.

Template Parameters
T[deduced] The underlying type held by the left-hand argument.
U[deduced] The underlying type held by the right-hand argument.
Parameters
[in]lhsThe left-hand argument.
[in]rhsThe right-hand argument.
Returns
The result of doing the operator on the underlying values.

Definition at line 450 of file traced-value.h.

References TRACED_VALUE_DEBUG.

◆ operator+() [3/4]

template<typename T , typename U >
auto ns3::operator+ ( const U &  lhs,
const TracedValue< T > &  rhs 
) -> TracedValue<decltype(lhs + rhs.Get())>

Infix arithmetic operator for TracedValue.

This returns the arithmetic result in a new TracedValue, which has no Callback connected.

Template Parameters
T[deduced] The underlying type held by the left-hand argument.
U[deduced] The underlying type held by the right-hand argument.
Parameters
[in]lhsThe left-hand argument.
[in]rhsThe right-hand argument.
Returns
The result of doing the operator on the underlying values.

Definition at line 456 of file traced-value.h.

References TRACED_VALUE_DEBUG.

◆ operator+() [4/4]

template<typename T >
TracedValue<T> ns3::operator+ ( const TracedValue< T > &  lhs)

Unary arithmetic operator for TracedValue.

Template Parameters
T[deduced] The underlying type held by the TracedValue.
Parameters
[in]lhsThe TracedValue.
Returns
The result of doing the operator on the underlying values.

Definition at line 746 of file traced-value.h.

References ns3::TracedValue< T >::Get(), and TRACED_VALUE_DEBUG.

◆ operator+=()

template<typename T , typename U >
TracedValue<T>& ns3::operator+= ( TracedValue< T > &  lhs,
const U &  rhs 
)

Operator assignment for TracedValue.

The result of the arithmetic operation on the underlying values is assigned to the lhs TracedValue. If the new value is different, the Callback will be invoked.

Template Parameters
T[deduced] The underlying type held by the left-hand argument.
U[deduced] The underlying type held by the right-hand argument.
Parameters
[in]lhsThe left-hand argument.
[in]rhsThe right-hand argument.
Returns
The result of doing the operator on the underlying values.

Definition at line 647 of file traced-value.h.

References ns3::TracedValue< T >::Get(), ns3::TracedValue< T >::Set(), and TRACED_VALUE_DEBUG.

◆ operator-() [1/4]

template<typename T , typename U >
auto ns3::operator- ( const TracedValue< T > &  lhs,
const TracedValue< U > &  rhs 
) -> TracedValue<decltype(lhs.Get() - rhs.Get())>

Infix arithmetic operator for TracedValue.

This returns the arithmetic result in a new TracedValue, which has no Callback connected.

Template Parameters
T[deduced] The underlying type held by the left-hand argument.
U[deduced] The underlying type held by the right-hand argument.
Parameters
[in]lhsThe left-hand argument.
[in]rhsThe right-hand argument.
Returns
The result of doing the operator on the underlying values.

Definition at line 463 of file traced-value.h.

References TRACED_VALUE_DEBUG.

◆ operator-() [2/4]

template<typename T , typename U >
auto ns3::operator- ( const TracedValue< T > &  lhs,
const U &  rhs 
) -> TracedValue<decltype(lhs.Get() - rhs)>

Infix arithmetic operator for TracedValue.

This returns the arithmetic result in a new TracedValue, which has no Callback connected.

Template Parameters
T[deduced] The underlying type held by the left-hand argument.
U[deduced] The underlying type held by the right-hand argument.
Parameters
[in]lhsThe left-hand argument.
[in]rhsThe right-hand argument.
Returns
The result of doing the operator on the underlying values.

Definition at line 469 of file traced-value.h.

References TRACED_VALUE_DEBUG.

◆ operator-() [3/4]

template<typename T , typename U >
auto ns3::operator- ( const U &  lhs,
const TracedValue< T > &  rhs 
) -> TracedValue<decltype(lhs - rhs.Get())>

Infix arithmetic operator for TracedValue.

This returns the arithmetic result in a new TracedValue, which has no Callback connected.

Template Parameters
T[deduced] The underlying type held by the left-hand argument.
U[deduced] The underlying type held by the right-hand argument.
Parameters
[in]lhsThe left-hand argument.
[in]rhsThe right-hand argument.
Returns
The result of doing the operator on the underlying values.

Definition at line 475 of file traced-value.h.

References TRACED_VALUE_DEBUG.

◆ operator-() [4/4]

template<typename T >
TracedValue<T> ns3::operator- ( const TracedValue< T > &  lhs)

Unary arithmetic operator for TracedValue.

Template Parameters
T[deduced] The underlying type held by the TracedValue.
Parameters
[in]lhsThe TracedValue.
Returns
The result of doing the operator on the underlying values.

Definition at line 752 of file traced-value.h.

References ns3::TracedValue< T >::Get(), and TRACED_VALUE_DEBUG.

◆ operator-=()

template<typename T , typename U >
TracedValue<T>& ns3::operator-= ( TracedValue< T > &  lhs,
const U &  rhs 
)

Operator assignment for TracedValue.

The result of the arithmetic operation on the underlying values is assigned to the lhs TracedValue. If the new value is different, the Callback will be invoked.

Template Parameters
T[deduced] The underlying type held by the left-hand argument.
U[deduced] The underlying type held by the right-hand argument.
Parameters
[in]lhsThe left-hand argument.
[in]rhsThe right-hand argument.
Returns
The result of doing the operator on the underlying values.

Definition at line 656 of file traced-value.h.

References ns3::TracedValue< T >::Get(), ns3::TracedValue< T >::Set(), and TRACED_VALUE_DEBUG.

◆ operator/() [1/3]

template<typename T , typename U >
auto ns3::operator/ ( const TracedValue< T > &  lhs,
const TracedValue< U > &  rhs 
) -> TracedValue<decltype(lhs.Get() / rhs.Get())>

Infix arithmetic operator for TracedValue.

This returns the arithmetic result in a new TracedValue, which has no Callback connected.

Template Parameters
T[deduced] The underlying type held by the left-hand argument.
U[deduced] The underlying type held by the right-hand argument.
Parameters
[in]lhsThe left-hand argument.
[in]rhsThe right-hand argument.
Returns
The result of doing the operator on the underlying values.

Definition at line 501 of file traced-value.h.

References TRACED_VALUE_DEBUG.

◆ operator/() [2/3]

template<typename T , typename U >
auto ns3::operator/ ( const TracedValue< T > &  lhs,
const U &  rhs 
) -> TracedValue<decltype(lhs.Get() / rhs)>

Infix arithmetic operator for TracedValue.

This returns the arithmetic result in a new TracedValue, which has no Callback connected.

Template Parameters
T[deduced] The underlying type held by the left-hand argument.
U[deduced] The underlying type held by the right-hand argument.
Parameters
[in]lhsThe left-hand argument.
[in]rhsThe right-hand argument.
Returns
The result of doing the operator on the underlying values.

Definition at line 507 of file traced-value.h.

References TRACED_VALUE_DEBUG.

◆ operator/() [3/3]

template<typename T , typename U >
auto ns3::operator/ ( const U &  lhs,
const TracedValue< T > &  rhs 
) -> TracedValue<decltype(lhs / rhs.Get())>

Infix arithmetic operator for TracedValue.

This returns the arithmetic result in a new TracedValue, which has no Callback connected.

Template Parameters
T[deduced] The underlying type held by the left-hand argument.
U[deduced] The underlying type held by the right-hand argument.
Parameters
[in]lhsThe left-hand argument.
[in]rhsThe right-hand argument.
Returns
The result of doing the operator on the underlying values.

Definition at line 513 of file traced-value.h.

References TRACED_VALUE_DEBUG.

◆ operator/=()

template<typename T , typename U >
TracedValue<T>& ns3::operator/= ( TracedValue< T > &  lhs,
const U &  rhs 
)

Operator assignment for TracedValue.

The result of the arithmetic operation on the underlying values is assigned to the lhs TracedValue. If the new value is different, the Callback will be invoked.

Template Parameters
T[deduced] The underlying type held by the left-hand argument.
U[deduced] The underlying type held by the right-hand argument.
Parameters
[in]lhsThe left-hand argument.
[in]rhsThe right-hand argument.
Returns
The result of doing the operator on the underlying values.

Definition at line 674 of file traced-value.h.

References ns3::TracedValue< T >::Get(), ns3::TracedValue< T >::Set(), and TRACED_VALUE_DEBUG.

◆ operator<() [1/3]

template<typename T , typename U >
bool ns3::operator< ( const TracedValue< T > &  lhs,
const TracedValue< U > &  rhs 
)

Boolean operator for TracedValue.

Template Parameters
T[deduced] The underlying type held by the left-hand argument.
U[deduced] The underlying type held by the right-hand argument.
Parameters
[in]lhsThe left-hand argument.
[in]rhsThe right-hand argument.
Returns
The Boolean result of comparing the underlying values.

Definition at line 388 of file traced-value.h.

References TRACED_VALUE_DEBUG.

◆ operator<() [2/3]

template<typename T , typename U >
bool ns3::operator< ( const TracedValue< T > &  lhs,
const U &  rhs 
)

Boolean operator for TracedValue.

Template Parameters
T[deduced] The underlying type held by the left-hand argument.
U[deduced] The underlying type held by the right-hand argument.
Parameters
[in]lhsThe left-hand argument.
[in]rhsThe right-hand argument.
Returns
The Boolean result of comparing the underlying values.

Definition at line 395 of file traced-value.h.

References TRACED_VALUE_DEBUG.

◆ operator<() [3/3]

template<typename T , typename U >
bool ns3::operator< ( const U &  lhs,
const TracedValue< T > &  rhs 
)

Boolean operator for TracedValue.

Template Parameters
T[deduced] The underlying type held by the left-hand argument.
U[deduced] The underlying type held by the right-hand argument.
Parameters
[in]lhsThe left-hand argument.
[in]rhsThe right-hand argument.
Returns
The Boolean result of comparing the underlying values.

Definition at line 402 of file traced-value.h.

References TRACED_VALUE_DEBUG.

◆ operator<<() [1/4]

template<typename T >
std::ostream& ns3::operator<< ( std::ostream &  os,
const TracedValue< T > &  rhs 
)

Output streamer for TracedValue.

The underlying value will be written to the stream.

Template Parameters
T[deduced] The underlying type of the TracedValue.
Parameters
[in,out]osThe output stream.
[in]rhsThe TracedValue to stream.
Returns
The stream.

Definition at line 287 of file traced-value.h.

◆ operator<<() [2/4]

template<typename T , typename U >
auto ns3::operator<< ( const TracedValue< T > &  lhs,
const TracedValue< U > &  rhs 
) -> TracedValue<decltype(lhs.Get() << rhs.Get())>

Infix arithmetic operator for TracedValue.

This returns the arithmetic result in a new TracedValue, which has no Callback connected.

Template Parameters
T[deduced] The underlying type held by the left-hand argument.
U[deduced] The underlying type held by the right-hand argument.
Parameters
[in]lhsThe left-hand argument.
[in]rhsThe right-hand argument.
Returns
The result of doing the operator on the underlying values.

Definition at line 596 of file traced-value.h.

References TRACED_VALUE_DEBUG.

◆ operator<<() [3/4]

template<typename T , typename U >
auto ns3::operator<< ( const TracedValue< T > &  lhs,
const U &  rhs 
) -> TracedValue<decltype(lhs.Get() << rhs)>

Infix arithmetic operator for TracedValue.

This returns the arithmetic result in a new TracedValue, which has no Callback connected.

Template Parameters
T[deduced] The underlying type held by the left-hand argument.
U[deduced] The underlying type held by the right-hand argument.
Parameters
[in]lhsThe left-hand argument.
[in]rhsThe right-hand argument.
Returns
The result of doing the operator on the underlying values.

Definition at line 602 of file traced-value.h.

References TRACED_VALUE_DEBUG.

◆ operator<<() [4/4]

template<typename T , typename U >
auto ns3::operator<< ( const U &  lhs,
const TracedValue< T > &  rhs 
) -> TracedValue<decltype(lhs << rhs.Get())>

Infix arithmetic operator for TracedValue.

This returns the arithmetic result in a new TracedValue, which has no Callback connected.

Template Parameters
T[deduced] The underlying type held by the left-hand argument.
U[deduced] The underlying type held by the right-hand argument.
Parameters
[in]lhsThe left-hand argument.
[in]rhsThe right-hand argument.
Returns
The result of doing the operator on the underlying values.

Definition at line 608 of file traced-value.h.

References TRACED_VALUE_DEBUG.

◆ operator<<=()

template<typename T , typename U >
TracedValue<T>& ns3::operator<<= ( TracedValue< T > &  lhs,
const U &  rhs 
)

Operator assignment for TracedValue.

The result of the arithmetic operation on the underlying values is assigned to the lhs TracedValue. If the new value is different, the Callback will be invoked.

Template Parameters
T[deduced] The underlying type held by the left-hand argument.
U[deduced] The underlying type held by the right-hand argument.
Parameters
[in]lhsThe left-hand argument.
[in]rhsThe right-hand argument.
Returns
The result of doing the operator on the underlying values.

Definition at line 692 of file traced-value.h.

References ns3::TracedValue< T >::Get(), ns3::TracedValue< T >::Set(), and TRACED_VALUE_DEBUG.

◆ operator<=() [1/3]

template<typename T , typename U >
bool ns3::operator<= ( const TracedValue< T > &  lhs,
const TracedValue< U > &  rhs 
)

Boolean operator for TracedValue.

Template Parameters
T[deduced] The underlying type held by the left-hand argument.
U[deduced] The underlying type held by the right-hand argument.
Parameters
[in]lhsThe left-hand argument.
[in]rhsThe right-hand argument.
Returns
The Boolean result of comparing the underlying values.

Definition at line 345 of file traced-value.h.

References TRACED_VALUE_DEBUG.

◆ operator<=() [2/3]

template<typename T , typename U >
bool ns3::operator<= ( const TracedValue< T > &  lhs,
const U &  rhs 
)

Boolean operator for TracedValue.

Template Parameters
T[deduced] The underlying type held by the left-hand argument.
U[deduced] The underlying type held by the right-hand argument.
Parameters
[in]lhsThe left-hand argument.
[in]rhsThe right-hand argument.
Returns
The Boolean result of comparing the underlying values.

Definition at line 352 of file traced-value.h.

References TRACED_VALUE_DEBUG.

◆ operator<=() [3/3]

template<typename T , typename U >
bool ns3::operator<= ( const U &  lhs,
const TracedValue< T > &  rhs 
)

Boolean operator for TracedValue.

Template Parameters
T[deduced] The underlying type held by the left-hand argument.
U[deduced] The underlying type held by the right-hand argument.
Parameters
[in]lhsThe left-hand argument.
[in]rhsThe right-hand argument.
Returns
The Boolean result of comparing the underlying values.

Definition at line 359 of file traced-value.h.

References TRACED_VALUE_DEBUG.

◆ operator==() [1/3]

template<typename T , typename U >
bool ns3::operator== ( const TracedValue< T > &  lhs,
const TracedValue< U > &  rhs 
)

Boolean operator for TracedValue.

Template Parameters
T[deduced] The underlying type held by the left-hand argument.
U[deduced] The underlying type held by the right-hand argument.
Parameters
[in]lhsThe left-hand argument.
[in]rhsThe right-hand argument.
Returns
The Boolean result of comparing the underlying values.

Definition at line 301 of file traced-value.h.

References ns3::TracedValue< T >::Get(), and TRACED_VALUE_DEBUG.

◆ operator==() [2/3]

template<typename T , typename U >
bool ns3::operator== ( const TracedValue< T > &  lhs,
const U &  rhs 
)

Boolean operator for TracedValue.

Template Parameters
T[deduced] The underlying type held by the left-hand argument.
U[deduced] The underlying type held by the right-hand argument.
Parameters
[in]lhsThe left-hand argument.
[in]rhsThe right-hand argument.
Returns
The Boolean result of comparing the underlying values.

Definition at line 308 of file traced-value.h.

References ns3::TracedValue< T >::Get(), and TRACED_VALUE_DEBUG.

◆ operator==() [3/3]

template<typename T , typename U >
bool ns3::operator== ( const U &  lhs,
const TracedValue< T > &  rhs 
)

Boolean operator for TracedValue.

Template Parameters
T[deduced] The underlying type held by the left-hand argument.
U[deduced] The underlying type held by the right-hand argument.
Parameters
[in]lhsThe left-hand argument.
[in]rhsThe right-hand argument.
Returns
The Boolean result of comparing the underlying values.

Definition at line 315 of file traced-value.h.

References ns3::TracedValue< T >::Get(), and TRACED_VALUE_DEBUG.

◆ operator>() [1/3]

template<typename T , typename U >
bool ns3::operator> ( const TracedValue< T > &  lhs,
const TracedValue< U > &  rhs 
)

Boolean operator for TracedValue.

Template Parameters
T[deduced] The underlying type held by the left-hand argument.
U[deduced] The underlying type held by the right-hand argument.
Parameters
[in]lhsThe left-hand argument.
[in]rhsThe right-hand argument.
Returns
The Boolean result of comparing the underlying values.

Definition at line 409 of file traced-value.h.

References ns3::TracedValue< T >::Get(), and TRACED_VALUE_DEBUG.

◆ operator>() [2/3]

template<typename T , typename U >
bool ns3::operator> ( const TracedValue< T > &  lhs,
const U &  rhs 
)

Boolean operator for TracedValue.

Template Parameters
T[deduced] The underlying type held by the left-hand argument.
U[deduced] The underlying type held by the right-hand argument.
Parameters
[in]lhsThe left-hand argument.
[in]rhsThe right-hand argument.
Returns
The Boolean result of comparing the underlying values.

Definition at line 416 of file traced-value.h.

References ns3::TracedValue< T >::Get(), and TRACED_VALUE_DEBUG.

◆ operator>() [3/3]

template<typename T , typename U >
bool ns3::operator> ( const U &  lhs,
const TracedValue< T > &  rhs 
)

Boolean operator for TracedValue.

Template Parameters
T[deduced] The underlying type held by the left-hand argument.
U[deduced] The underlying type held by the right-hand argument.
Parameters
[in]lhsThe left-hand argument.
[in]rhsThe right-hand argument.
Returns
The Boolean result of comparing the underlying values.

Definition at line 423 of file traced-value.h.

References ns3::TracedValue< T >::Get(), and TRACED_VALUE_DEBUG.

◆ operator>=() [1/3]

template<typename T , typename U >
bool ns3::operator>= ( const TracedValue< T > &  lhs,
const TracedValue< U > &  rhs 
)

Boolean operator for TracedValue.

Template Parameters
T[deduced] The underlying type held by the left-hand argument.
U[deduced] The underlying type held by the right-hand argument.
Parameters
[in]lhsThe left-hand argument.
[in]rhsThe right-hand argument.
Returns
The Boolean result of comparing the underlying values.

Definition at line 366 of file traced-value.h.

References ns3::TracedValue< T >::Get(), and TRACED_VALUE_DEBUG.

◆ operator>=() [2/3]

template<typename T , typename U >
bool ns3::operator>= ( const TracedValue< T > &  lhs,
const U &  rhs 
)

Boolean operator for TracedValue.

Template Parameters
T[deduced] The underlying type held by the left-hand argument.
U[deduced] The underlying type held by the right-hand argument.
Parameters
[in]lhsThe left-hand argument.
[in]rhsThe right-hand argument.
Returns
The Boolean result of comparing the underlying values.

Definition at line 373 of file traced-value.h.

References ns3::TracedValue< T >::Get(), and TRACED_VALUE_DEBUG.

◆ operator>=() [3/3]

template<typename T , typename U >
bool ns3::operator>= ( const U &  lhs,
const TracedValue< T > &  rhs 
)

Boolean operator for TracedValue.

Template Parameters
T[deduced] The underlying type held by the left-hand argument.
U[deduced] The underlying type held by the right-hand argument.
Parameters
[in]lhsThe left-hand argument.
[in]rhsThe right-hand argument.
Returns
The Boolean result of comparing the underlying values.

Definition at line 380 of file traced-value.h.

References ns3::TracedValue< T >::Get(), and TRACED_VALUE_DEBUG.

◆ operator>>() [1/3]

template<typename T , typename U >
auto ns3::operator>> ( const TracedValue< T > &  lhs,
const TracedValue< U > &  rhs 
) -> TracedValue<decltype(lhs.Get() >> rhs.Get())>

Infix arithmetic operator for TracedValue.

This returns the arithmetic result in a new TracedValue, which has no Callback connected.

Template Parameters
T[deduced] The underlying type held by the left-hand argument.
U[deduced] The underlying type held by the right-hand argument.
Parameters
[in]lhsThe left-hand argument.
[in]rhsThe right-hand argument.
Returns
The result of doing the operator on the underlying values.

Definition at line 615 of file traced-value.h.

References TRACED_VALUE_DEBUG.

◆ operator>>() [2/3]

template<typename T , typename U >
auto ns3::operator>> ( const TracedValue< T > &  lhs,
const U &  rhs 
) -> TracedValue<decltype(lhs.Get() >> rhs)>

Infix arithmetic operator for TracedValue.

This returns the arithmetic result in a new TracedValue, which has no Callback connected.

Template Parameters
T[deduced] The underlying type held by the left-hand argument.
U[deduced] The underlying type held by the right-hand argument.
Parameters
[in]lhsThe left-hand argument.
[in]rhsThe right-hand argument.
Returns
The result of doing the operator on the underlying values.

Definition at line 621 of file traced-value.h.

References TRACED_VALUE_DEBUG.

◆ operator>>() [3/3]

template<typename T , typename U >
auto ns3::operator>> ( const U &  lhs,
const TracedValue< T > &  rhs 
) -> TracedValue<decltype(lhs >> rhs.Get())>

Infix arithmetic operator for TracedValue.

This returns the arithmetic result in a new TracedValue, which has no Callback connected.

Template Parameters
T[deduced] The underlying type held by the left-hand argument.
U[deduced] The underlying type held by the right-hand argument.
Parameters
[in]lhsThe left-hand argument.
[in]rhsThe right-hand argument.
Returns
The result of doing the operator on the underlying values.

Definition at line 627 of file traced-value.h.

References ns3::TracedValue< T >::Get(), and TRACED_VALUE_DEBUG.

◆ operator>>=()

template<typename T , typename U >
TracedValue<T>& ns3::operator>>= ( TracedValue< T > &  lhs,
const U &  rhs 
)

Operator assignment for TracedValue.

The result of the arithmetic operation on the underlying values is assigned to the lhs TracedValue. If the new value is different, the Callback will be invoked.

Template Parameters
T[deduced] The underlying type held by the left-hand argument.
U[deduced] The underlying type held by the right-hand argument.
Parameters
[in]lhsThe left-hand argument.
[in]rhsThe right-hand argument.
Returns
The result of doing the operator on the underlying values.

Definition at line 701 of file traced-value.h.

References ns3::TracedValue< T >::Get(), ns3::TracedValue< T >::Set(), and TRACED_VALUE_DEBUG.

◆ operator^() [1/3]

template<typename T , typename U >
auto ns3::operator^ ( const TracedValue< T > &  lhs,
const TracedValue< U > &  rhs 
) -> TracedValue<decltype(lhs.Get() ^ rhs.Get())>

Infix arithmetic operator for TracedValue.

This returns the arithmetic result in a new TracedValue, which has no Callback connected.

Template Parameters
T[deduced] The underlying type held by the left-hand argument.
U[deduced] The underlying type held by the right-hand argument.
Parameters
[in]lhsThe left-hand argument.
[in]rhsThe right-hand argument.
Returns
The result of doing the operator on the underlying values.

Definition at line 539 of file traced-value.h.

References TRACED_VALUE_DEBUG.

◆ operator^() [2/3]

template<typename T , typename U >
auto ns3::operator^ ( const TracedValue< T > &  lhs,
const U &  rhs 
) -> TracedValue<decltype(lhs.Get() ^ rhs)>

Infix arithmetic operator for TracedValue.

This returns the arithmetic result in a new TracedValue, which has no Callback connected.

Template Parameters
T[deduced] The underlying type held by the left-hand argument.
U[deduced] The underlying type held by the right-hand argument.
Parameters
[in]lhsThe left-hand argument.
[in]rhsThe right-hand argument.
Returns
The result of doing the operator on the underlying values.

Definition at line 545 of file traced-value.h.

References TRACED_VALUE_DEBUG.

◆ operator^() [3/3]

template<typename T , typename U >
auto ns3::operator^ ( const U &  lhs,
const TracedValue< T > &  rhs 
) -> TracedValue<decltype(lhs ^ rhs.Get())>

Infix arithmetic operator for TracedValue.

This returns the arithmetic result in a new TracedValue, which has no Callback connected.

Template Parameters
T[deduced] The underlying type held by the left-hand argument.
U[deduced] The underlying type held by the right-hand argument.
Parameters
[in]lhsThe left-hand argument.
[in]rhsThe right-hand argument.
Returns
The result of doing the operator on the underlying values.

Definition at line 551 of file traced-value.h.

References TRACED_VALUE_DEBUG.

◆ operator^=()

template<typename T , typename U >
TracedValue<T>& ns3::operator^= ( TracedValue< T > &  lhs,
const U &  rhs 
)

Operator assignment for TracedValue.

The result of the arithmetic operation on the underlying values is assigned to the lhs TracedValue. If the new value is different, the Callback will be invoked.

Template Parameters
T[deduced] The underlying type held by the left-hand argument.
U[deduced] The underlying type held by the right-hand argument.
Parameters
[in]lhsThe left-hand argument.
[in]rhsThe right-hand argument.
Returns
The result of doing the operator on the underlying values.

Definition at line 728 of file traced-value.h.

References ns3::TracedValue< T >::Get(), ns3::TracedValue< T >::Set(), and TRACED_VALUE_DEBUG.

◆ operator|() [1/3]

template<typename T , typename U >
auto ns3::operator| ( const TracedValue< T > &  lhs,
const TracedValue< U > &  rhs 
) -> TracedValue<decltype(lhs.Get() | rhs.Get())>

Infix arithmetic operator for TracedValue.

This returns the arithmetic result in a new TracedValue, which has no Callback connected.

Template Parameters
T[deduced] The underlying type held by the left-hand argument.
U[deduced] The underlying type held by the right-hand argument.
Parameters
[in]lhsThe left-hand argument.
[in]rhsThe right-hand argument.
Returns
The result of doing the operator on the underlying values.

Definition at line 558 of file traced-value.h.

References TRACED_VALUE_DEBUG.

◆ operator|() [2/3]

template<typename T , typename U >
auto ns3::operator| ( const TracedValue< T > &  lhs,
const U &  rhs 
) -> TracedValue<decltype(lhs.Get() | rhs)>

Infix arithmetic operator for TracedValue.

This returns the arithmetic result in a new TracedValue, which has no Callback connected.

Template Parameters
T[deduced] The underlying type held by the left-hand argument.
U[deduced] The underlying type held by the right-hand argument.
Parameters
[in]lhsThe left-hand argument.
[in]rhsThe right-hand argument.
Returns
The result of doing the operator on the underlying values.

Definition at line 564 of file traced-value.h.

References TRACED_VALUE_DEBUG.

◆ operator|() [3/3]

template<typename T , typename U >
auto ns3::operator| ( const U &  lhs,
const TracedValue< T > &  rhs 
) -> TracedValue<decltype(lhs | rhs.Get())>

Infix arithmetic operator for TracedValue.

This returns the arithmetic result in a new TracedValue, which has no Callback connected.

Template Parameters
T[deduced] The underlying type held by the left-hand argument.
U[deduced] The underlying type held by the right-hand argument.
Parameters
[in]lhsThe left-hand argument.
[in]rhsThe right-hand argument.
Returns
The result of doing the operator on the underlying values.

Definition at line 570 of file traced-value.h.

References TRACED_VALUE_DEBUG.

◆ operator|=()

template<typename T , typename U >
TracedValue<T>& ns3::operator|= ( TracedValue< T > &  lhs,
const U &  rhs 
)

Operator assignment for TracedValue.

The result of the arithmetic operation on the underlying values is assigned to the lhs TracedValue. If the new value is different, the Callback will be invoked.

Template Parameters
T[deduced] The underlying type held by the left-hand argument.
U[deduced] The underlying type held by the right-hand argument.
Parameters
[in]lhsThe left-hand argument.
[in]rhsThe right-hand argument.
Returns
The result of doing the operator on the underlying values.

Definition at line 719 of file traced-value.h.

References ns3::TracedValue< T >::Get(), ns3::TracedValue< T >::Set(), and TRACED_VALUE_DEBUG.

◆ operator~()

template<typename T >
TracedValue<T> ns3::operator~ ( const TracedValue< T > &  lhs)

Unary arithmetic operator for TracedValue.

Template Parameters
T[deduced] The underlying type held by the TracedValue.
Parameters
[in]lhsThe TracedValue.
Returns
The result of doing the operator on the underlying values.

Definition at line 758 of file traced-value.h.

References ns3::TracedValue< T >::Get(), and TRACED_VALUE_DEBUG.