trace classes with value semantics More...
#include <traced-value.h>
Public Member Functions | |
TracedValue () | |
TracedValue (const TracedValue &o) | |
TracedValue (const T &v) | |
operator T () const | |
TracedValue & | operator= (const TracedValue &o) |
TracedValue (const IntegerValue &value) | |
operator IntegerValue () const | |
TracedValue (const UintegerValue &value) | |
operator UintegerValue () const | |
TracedValue (const BooleanValue &value) | |
operator BooleanValue () const | |
TracedValue (const EnumValue &value) | |
operator EnumValue () const | |
void | ConnectWithoutContext (const CallbackBase &cb) |
void | Connect (const CallbackBase &cb, std::string path) |
void | DisconnectWithoutContext (const CallbackBase &cb) |
void | Disconnect (const CallbackBase &cb, std::string path) |
void | Set (const T &v) |
T | Get (void) const |
TracedValue & | operator++ () |
TracedValue & | operator-- () |
TracedValue | operator++ (int) |
TracedValue | operator-- (int) |
Private Attributes | |
T | m_v |
TracedCallback< T, T > | m_cb |
trace classes with value semantics
If you want to trace the change of value of a class or primitive type which have value semantics (they _must_ support operator !=), you can wrap them in an instance of this template: this instance will behave just like the original class (if it did not export any special method), and will define Connect/DisconnectWithoutContext methods to work with ns3::MakeTraceSourceAccessor.
Definition at line 53 of file traced-value.h.
ns3::TracedValue< T >::TracedValue | ( | ) | [inline] |
Definition at line 56 of file traced-value.h.
ns3::TracedValue< T >::TracedValue | ( | const TracedValue< T > & | o | ) | [inline] |
Definition at line 58 of file traced-value.h.
ns3::TracedValue< T >::TracedValue | ( | const T & | v | ) | [inline] |
Definition at line 60 of file traced-value.h.
ns3::TracedValue< T >::TracedValue | ( | const IntegerValue & | value | ) | [inline] |
Definition at line 70 of file traced-value.h.
ns3::TracedValue< T >::TracedValue | ( | const UintegerValue & | value | ) | [inline] |
Definition at line 75 of file traced-value.h.
ns3::TracedValue< T >::TracedValue | ( | const BooleanValue & | value | ) | [inline] |
Definition at line 80 of file traced-value.h.
ns3::TracedValue< T >::TracedValue | ( | const EnumValue & | value | ) | [inline] |
Definition at line 85 of file traced-value.h.
void ns3::TracedValue< T >::Connect | ( | const CallbackBase & | cb, | |
std::string | path | |||
) | [inline] |
Definition at line 93 of file traced-value.h.
void ns3::TracedValue< T >::ConnectWithoutContext | ( | const CallbackBase & | cb | ) | [inline] |
Definition at line 90 of file traced-value.h.
void ns3::TracedValue< T >::Disconnect | ( | const CallbackBase & | cb, | |
std::string | path | |||
) | [inline] |
Definition at line 99 of file traced-value.h.
void ns3::TracedValue< T >::DisconnectWithoutContext | ( | const CallbackBase & | cb | ) | [inline] |
Definition at line 96 of file traced-value.h.
T ns3::TracedValue< T >::Get | ( | void | ) | const [inline] |
Definition at line 109 of file traced-value.h.
Referenced by ns3::TcpSocketImpl::NewAck(), ns3::operator!(), ns3::operator!=(), ns3::operator%(), ns3::operator%=(), ns3::operator&(), ns3::operator&=(), ns3::operator*(), ns3::operator*=(), ns3::operator+(), ns3::TracedValue< ValueClassTest >::operator++(), ns3::operator+=(), ns3::operator-(), ns3::TracedValue< ValueClassTest >::operator--(), ns3::operator-=(), ns3::operator/(), ns3::operator/=(), ns3::operator==(), ns3::operator>(), ns3::operator>=(), ns3::operator>>(), ns3::operator>>=(), ns3::operator^(), ns3::operator^=(), ns3::operator|(), ns3::operator|=(), ns3::operator~(), and ns3::TcpSocketImpl::Window().
ns3::TracedValue< T >::operator BooleanValue | ( | ) | const [inline] |
Definition at line 82 of file traced-value.h.
ns3::TracedValue< T >::operator EnumValue | ( | ) | const [inline] |
Definition at line 87 of file traced-value.h.
ns3::TracedValue< T >::operator IntegerValue | ( | ) | const [inline] |
Definition at line 72 of file traced-value.h.
ns3::TracedValue< T >::operator T | ( | ) | const [inline] |
Definition at line 62 of file traced-value.h.
ns3::TracedValue< T >::operator UintegerValue | ( | ) | const [inline] |
Definition at line 77 of file traced-value.h.
TracedValue ns3::TracedValue< T >::operator++ | ( | int | ) | [inline] |
Definition at line 126 of file traced-value.h.
TracedValue& ns3::TracedValue< T >::operator++ | ( | ) | [inline] |
Definition at line 112 of file traced-value.h.
TracedValue ns3::TracedValue< T >::operator-- | ( | int | ) | [inline] |
Definition at line 134 of file traced-value.h.
TracedValue& ns3::TracedValue< T >::operator-- | ( | ) | [inline] |
Definition at line 119 of file traced-value.h.
TracedValue& ns3::TracedValue< T >::operator= | ( | const TracedValue< T > & | o | ) | [inline] |
Definition at line 65 of file traced-value.h.
void ns3::TracedValue< T >::Set | ( | const T & | v | ) | [inline] |
Definition at line 102 of file traced-value.h.
Referenced by ns3::operator%=(), ns3::operator&=(), ns3::operator*=(), ns3::TracedValue< ValueClassTest >::operator++(), ns3::operator+=(), ns3::TracedValue< ValueClassTest >::operator--(), ns3::operator-=(), ns3::operator/=(), ns3::TracedValue< ValueClassTest >::operator=(), ns3::operator>>=(), ns3::operator^=(), and ns3::operator|=().
TracedCallback<T,T> ns3::TracedValue< T >::m_cb [private] |
Definition at line 144 of file traced-value.h.
Referenced by ns3::TracedValue< ValueClassTest >::Connect(), ns3::TracedValue< ValueClassTest >::ConnectWithoutContext(), ns3::TracedValue< ValueClassTest >::Disconnect(), ns3::TracedValue< ValueClassTest >::DisconnectWithoutContext(), and ns3::TracedValue< ValueClassTest >::Set().
T ns3::TracedValue< T >::m_v [private] |
Definition at line 143 of file traced-value.h.
Referenced by ns3::TracedValue< ValueClassTest >::Get(), ns3::TracedValue< ValueClassTest >::operator BooleanValue(), ns3::TracedValue< ValueClassTest >::operator EnumValue(), ns3::TracedValue< ValueClassTest >::operator IntegerValue(), ns3::TracedValue< ValueClassTest >::operator UintegerValue(), ns3::TracedValue< ValueClassTest >::operator ValueClassTest(), ns3::TracedValue< ValueClassTest >::operator=(), and ns3::TracedValue< ValueClassTest >::Set().