19 #ifndef REALTIME_SIMULATOR_IMPL_H
20 #define REALTIME_SIMULATOR_IMPL_H
60 virtual void Stop (
void);
61 virtual void Stop (
Time const &time);
69 virtual void Run (
void);
92 uint64_t
NextTs (
void)
const;
void ProcessOneEvent(void)
void ScheduleRealtimeNowWithContext(uint32_t context, EventImpl *event)
void SetSynchronizationMode(RealtimeSimulatorImpl::SynchronizationMode mode)
keep track of time values and allow control of global simulation resolution
Ptr< Synchronizer > m_synchronizer
smart pointer class similar to boost::intrusive_ptr
uint64_t NextTs(void) const
virtual EventId ScheduleNow(EventImpl *event)
virtual EventId Schedule(Time const &time, EventImpl *event)
SystemThread::ThreadId m_main
void ScheduleRealtimeNow(EventImpl *event)
Time RealtimeNow(void) const
virtual Time GetMaximumSimulationTime(void) const
Time m_hardLimit
The maximum allowable drift from real-time in SYNC_HARD_LIMIT mode.
Time GetHardLimit(void) const
SynchronizationMode m_synchronizationMode
The policy to use if the simulation cannot keep synchronized to real-time.
void ScheduleRealtimeWithContext(uint32_t context, Time const &time, EventImpl *event)
DestroyEvents m_destroyEvents
virtual void DoDispose(void)
This method is called by Object::Dispose or by the object's destructor, whichever comes first...
virtual EventId ScheduleDestroy(EventImpl *event)
virtual void ScheduleWithContext(uint32_t context, Time const &time, EventImpl *event)
Ptr< Scheduler > m_events
RealtimeSimulatorImpl::SynchronizationMode GetSynchronizationMode(void) const
static TypeId GetTypeId(void)
Make a best effort to keep synced to real-time.
virtual Time Now(void) const
Return the "current simulation time".
virtual void Run(void)
Run the simulation until one of:
virtual void Destroy()
This method is typically invoked at the end of a simulation to avoid false-positive reports by a leak...
std::list< EventId > DestroyEvents
virtual void Remove(const EventId &ev)
Remove an event from the event list.
Doxygen introspection did not find any typical Config paths.
virtual void Cancel(const EventId &ev)
Set the cancel bit on this event: the event's associated function will not be invoked when it expires...
SynchronizationMode
Enumeration of the types of packets supported in the class.
virtual Time GetDelayLeft(const EventId &id) const
virtual uint32_t GetSystemId(void) const
void SetHardLimit(Time limit)
A class which provides a relatively platform-independent Mutual Exclusion thread synchronization prim...
virtual bool IsExpired(const EventId &ev) const
This method has O(1) complexity.
virtual void SetScheduler(ObjectFactory schedulerFactory)
instantiate subclasses of ns3::Object.
an identifier for simulation events.
bool Realtime(void) const
virtual uint32_t GetContext(void) const
virtual void Stop(void)
If an event invokes this method, it will be the last event scheduled by the Simulator::Run method bef...
void ScheduleRealtime(Time const &time, EventImpl *event)
virtual bool IsFinished(void) const
If there are no more events lefts to be scheduled, or if simulation time has already reached the "sto...
a unique identifier for an interface.
uint32_t m_currentContext
Doxygen introspection did not find any typical Config paths.