36 : m_flags (CHECK_ON_DESTROY),
45 : m_flags (destroyPolicy),
static Time GetDelayLeft(const EventId &id)
Get the remaining time until this event will execute.
Simulation virtual time values and global simulation resolution.
#define NS_LOG_FUNCTION(parameters)
If log level LOG_FUNCTION is enabled, this macro will output all input parameters separated by "...
Timer()
Create a timer with a default event lifetime management policy:
Timer is currently running.
#define NS_ASSERT(condition)
At runtime, in debugging builds, if this condition is not true, the program prints the source file...
Time GetDelayLeft(void) const
#define NS_LOG_COMPONENT_DEFINE(name)
Define a Log component with a specific name.
bool IsSuspended(void) const
#define NS_FATAL_ERROR(msg)
Report a fatal error with a message and terminate.
static void Cancel(const EventId &id)
Set the cancel bit on this event: the event's associated function will not be invoked when it expires...
ns3::SimulationSingleton declaration and template implementation.
ns3::Simulator declaration.
bool IsExpired(void) const
This method is syntactic sugar for the ns3::Simulator::IsExpired method.
Time m_delay
The delay configured for this Timer.
ns3::Timer class declaration.
This policy enforces a check from the destructor of the Timer to verify that the timer has already ex...
void Schedule(void)
Schedule a new event using the currently-configured delay, function, and arguments.
void Remove(void)
Remove from the simulation event-list the currently-running event if there is one.
virtual EventId Schedule(const Time &delay)=0
Schedule the callback for a future time.
Time m_delayLeft
The amount of time left on the Timer while it is suspended.
void SetDelay(const Time &delay)
int m_flags
Bitfield for Timer State, DestroyPolicy and InternalSuspended.
This policy cancels the event from the destructor of the Timer to verify that the event has already e...
This policy removes the event from the simulation event list when the destructor of the Timer is invo...
static void Remove(const EventId &id)
Remove an event from the event list.
Every class exported by the ns3 library is enclosed in the ns3 namespace.
void Resume(void)
Restart the timer to expire within the amount of time left saved during Suspend.
Time TimeStep(uint64_t ts)
State
The possible states of the Timer.
bool IsRunning(void) const
Timer has already expired.
enum Timer::State GetState(void) const
TimerImpl * m_impl
The timer implementation, which contains the bound callback function and arguments.
EventId m_event
The future event scheduled to expire the timer.
void Cancel(void)
Cancel the currently-running event if there is one.
bool IsRunning(void) const
This method is syntactic sugar for !IsExpired().
void Cancel(void)
This method is syntactic sugar for the ns3::Simulator::Cancel method.
DestroyPolicy
The policy to use to manager the internal timer when an instance of the Timer class is destroyed...
void Suspend(void)
Cancel the timer and save the amount of time left until it was set to expire.
Time FemtoSeconds(uint64_t value)
Construct a Time in the indicated unit.
Time GetDelay(void) const
bool IsExpired(void) const