rename RealtimeSimulator to WallclockSimulator

This commit is contained in:
Mathieu Lacage
2008-10-15 14:51:16 +02:00
parent 6557016724
commit 82bbe71419
9 changed files with 103 additions and 103 deletions

View File

@@ -1,7 +1,7 @@
/* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
#include "ns3/simulator.h"
#include "ns3/realtime-simulator.h"
#include "ns3/wallclock-simulator.h"
#include "ns3/nstime.h"
#include "ns3/log.h"
#include "ns3/system-thread.h"
@@ -97,7 +97,7 @@ FakeNetDevice::Doit3 (void)
//
// Exercise the realtime relative now path
//
RealtimeSimulator::ScheduleRealtimeNow (&inserted_function);
WallclockSimulator::ScheduleNow (&inserted_function);
usleep (1000);
}
}
@@ -112,7 +112,7 @@ FakeNetDevice::Doit4 (void)
//
// Exercise the realtime relative schedule path
//
RealtimeSimulator::ScheduleRealtime (Seconds (0), &inserted_function);
WallclockSimulator::Schedule (Seconds (0), &inserted_function);
usleep (1000);
}
}
@@ -126,9 +126,9 @@ test (void)
FakeNetDevice fnd;
//
// Make sure ScheduleRealNow works when the system isn't running
// Make sure ScheduleNow works when the system isn't running
//
RealtimeSimulator::ScheduleRealtimeNow(&first_function);
WallclockSimulator::ScheduleNow(&first_function);
//
// drive the progression of m_currentTs at a ten millisecond rate

View File

@@ -321,12 +321,12 @@ DefaultSimulatorImpl::GetMaximumSimulationTime (void) const
}
void
DefaultSimulatorImpl::ScheduleRealtime (Time const &time, EventImpl *event)
DefaultSimulatorImpl::ScheduleWallclock (Time const &time, EventImpl *event)
{
NS_FATAL_ERROR ("not implemented");
}
void
DefaultSimulatorImpl::ScheduleRealtimeNow (EventImpl *event)
DefaultSimulatorImpl::ScheduleWallclockNow (EventImpl *event)
{
NS_FATAL_ERROR ("not implemented");
}

View File

@@ -59,8 +59,8 @@ public:
virtual Time GetMaximumSimulationTime (void) const;
virtual void SetScheduler (Ptr<Scheduler> scheduler);
virtual Ptr<Scheduler> GetScheduler (void) const;
virtual void ScheduleRealtime (Time const &time, EventImpl *event);
virtual void ScheduleRealtimeNow (EventImpl *event);
virtual void ScheduleWallclock (Time const &time, EventImpl *event);
virtual void ScheduleWallclockNow (EventImpl *event);
private:
void ProcessOneEvent (void);

View File

@@ -647,7 +647,7 @@ RealtimeSimulatorImpl::Now (void) const
// Schedule an event for a _relative_ time in the future.
//
void
RealtimeSimulatorImpl::ScheduleRealtime (Time const &time, EventImpl *impl)
RealtimeSimulatorImpl::ScheduleWallclock (Time const &time, EventImpl *impl)
{
NS_LOG_FUNCTION (time << impl);
@@ -656,7 +656,7 @@ RealtimeSimulatorImpl::ScheduleRealtime (Time const &time, EventImpl *impl)
CriticalSection cs (m_mutex);
uint64_t ts = m_synchronizer->GetCurrentRealtime () + time.GetTimeStep ();
NS_ASSERT_MSG (ts >= m_currentTs, "RealtimeSimulatorImpl::ScheduleRealtime(): schedule for time < m_currentTs");
NS_ASSERT_MSG (ts >= m_currentTs, "RealtimeSimulatorImpl::ScheduleWallClock(): schedule for time < m_currentTs");
Scheduler::Event ev;
ev.impl = impl;
ev.key.m_ts = ts;
@@ -670,7 +670,7 @@ RealtimeSimulatorImpl::ScheduleRealtime (Time const &time, EventImpl *impl)
}
void
RealtimeSimulatorImpl::ScheduleRealtimeNow (EventImpl *impl)
RealtimeSimulatorImpl::ScheduleWallclockNow (EventImpl *impl)
{
NS_LOG_FUNCTION_NOARGS ();
{
@@ -681,7 +681,7 @@ RealtimeSimulatorImpl::ScheduleRealtimeNow (EventImpl *impl)
// realtime clock. If we're not, then m_currentTs is were we stopped.
//
uint64_t ts = m_running ? m_synchronizer->GetCurrentRealtime () : m_currentTs;
NS_ASSERT_MSG (ts >= m_currentTs, "RealtimeSimulatorImpl::ScheduleRealrimeNow(): schedule for time < m_currentTs");
NS_ASSERT_MSG (ts >= m_currentTs, "RealtimeSimulatorImpl::ScheduleWallclockNow(): schedule for time < m_currentTs");
Scheduler::Event ev;
ev.impl = impl;
ev.key.m_ts = ts;

View File

@@ -78,8 +78,8 @@ public:
virtual Time GetMaximumSimulationTime (void) const;
virtual void SetScheduler (Ptr<Scheduler> scheduler);
virtual Ptr<Scheduler> GetScheduler (void) const;
virtual void ScheduleRealtime (Time const &time, EventImpl *event);
virtual void ScheduleRealtimeNow (EventImpl *event);
virtual void ScheduleWallclock (Time const &time, EventImpl *event);
virtual void ScheduleWallclockNow (EventImpl *event);
Time RealtimeNow (void) const;

View File

@@ -52,8 +52,8 @@ public:
virtual Time GetMaximumSimulationTime (void) const = 0;
virtual void SetScheduler (Ptr<Scheduler> scheduler) = 0;
virtual Ptr<Scheduler> GetScheduler (void) const = 0;
virtual void ScheduleRealtime (Time const &time, EventImpl *event) = 0;
virtual void ScheduleRealtimeNow (EventImpl *event) = 0;
virtual void ScheduleWallclock (Time const &time, EventImpl *event) = 0;
virtual void ScheduleWallclockNow (EventImpl *event) = 0;
};
} // namespace ns3

View File

@@ -19,7 +19,7 @@
*/
#include "simulator.h"
#include "realtime-simulator.h"
#include "wallclock-simulator.h"
#include "simulator-impl.h"
#include "default-simulator-impl.h"
#include "realtime-simulator-impl.h"
@@ -289,31 +289,31 @@ Simulator::SetImplementation (Ptr<SimulatorImpl> impl)
void
RealtimeSimulator::ScheduleRealtime (Time const &time, EventImpl *ev)
WallclockSimulator::Schedule (Time const &time, EventImpl *ev)
{
NS_LOG_FUNCTION (time << ev);
return GetImpl ()->ScheduleRealtime (time, ev);
return GetImpl ()->ScheduleWallclock (time, ev);
}
void
RealtimeSimulator::ScheduleRealtimeNow (EventImpl *ev)
WallclockSimulator::ScheduleNow (EventImpl *ev)
{
NS_LOG_FUNCTION (ev);
return GetImpl ()->ScheduleRealtimeNow (ev);
return GetImpl ()->ScheduleWallclockNow (ev);
}
void
RealtimeSimulator::ScheduleRealtime (Time const &time, void (*f) (void))
WallclockSimulator::Schedule (Time const &time, void (*f) (void))
{
NS_LOG_FUNCTION (time << f);
return ScheduleRealtime (time, MakeEvent (f));
return WallclockSimulator::Schedule (time, MakeEvent (f));
}
void
RealtimeSimulator::ScheduleRealtimeNow (void (*f) (void))
WallclockSimulator::ScheduleNow (void (*f) (void))
{
NS_LOG_FUNCTION (f);
return ScheduleRealtimeNow (MakeEvent (f));
return WallclockSimulator::ScheduleNow (MakeEvent (f));
}

View File

@@ -16,8 +16,8 @@
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
#ifndef REALTIME_SIMULATOR_H
#define REALTIME_SIMULATOR_H
#ifndef WALLCLOCK_SIMULATOR_H
#define WALLCLOCK_SIMULATOR_H
#include "simulator.h"
#include "make-event.h"
@@ -32,7 +32,7 @@ namespace ns3 {
* events and will schedule events using the current real-time instead of
* the current simulation time.
*/
class RealtimeSimulator
class WallclockSimulator
{
public:
/**
@@ -49,7 +49,7 @@ public:
* @returns an id for the scheduled event.
*/
template <typename MEM, typename OBJ>
static void ScheduleRealtime (Time const &time, MEM mem_ptr, OBJ obj);
static void Schedule (Time const &time, MEM mem_ptr, OBJ obj);
/**
* @param time the relative expiration time of the event.
@@ -59,7 +59,7 @@ public:
* @returns an id for the scheduled event.
*/
template <typename MEM, typename OBJ, typename T1>
static void ScheduleRealtime (Time const &time, MEM mem_ptr, OBJ obj, T1 a1);
static void Schedule (Time const &time, MEM mem_ptr, OBJ obj, T1 a1);
/**
* @param time the relative expiration time of the event.
@@ -70,7 +70,7 @@ public:
* @returns an id for the scheduled event.
*/
template <typename MEM, typename OBJ, typename T1, typename T2>
static void ScheduleRealtime (Time const &time, MEM mem_ptr, OBJ obj, T1 a1, T2 a2);
static void Schedule (Time const &time, MEM mem_ptr, OBJ obj, T1 a1, T2 a2);
/**
* @param time the relative expiration time of the event.
@@ -83,7 +83,7 @@ public:
*/
template <typename MEM, typename OBJ,
typename T1, typename T2, typename T3>
static void ScheduleRealtime (Time const &time, MEM mem_ptr, OBJ obj, T1 a1, T2 a2, T3 a3);
static void Schedule (Time const &time, MEM mem_ptr, OBJ obj, T1 a1, T2 a2, T3 a3);
/**
* @param time the relative expiration time of the event.
@@ -97,7 +97,7 @@ public:
*/
template <typename MEM, typename OBJ,
typename T1, typename T2, typename T3, typename T4>
static void ScheduleRealtime (Time const &time, MEM mem_ptr, OBJ obj, T1 a1, T2 a2, T3 a3, T4 a4);
static void Schedule (Time const &time, MEM mem_ptr, OBJ obj, T1 a1, T2 a2, T3 a3, T4 a4);
/**
* @param time the relative expiration time of the event.
@@ -112,14 +112,14 @@ public:
*/
template <typename MEM, typename OBJ,
typename T1, typename T2, typename T3, typename T4, typename T5>
static void ScheduleRealtime (Time const &time, MEM mem_ptr, OBJ obj,
static void Schedule (Time const &time, MEM mem_ptr, OBJ obj,
T1 a1, T2 a2, T3 a3, T4 a4, T5 a5);
/**
* @param time the relative expiration time of the event.
* @param f the function to invoke
* @returns an id for the scheduled event.
*/
static void ScheduleRealtime (Time const &time, void (*f) (void));
static void Schedule (Time const &time, void (*f) (void));
/**
* @param time the relative expiration time of the event.
@@ -128,7 +128,7 @@ public:
* @returns an id for the scheduled event.
*/
template <typename U1, typename T1>
static void ScheduleRealtime (Time const &time, void (*f) (U1), T1 a1);
static void Schedule (Time const &time, void (*f) (U1), T1 a1);
/**
* @param time the relative expiration time of the event.
@@ -138,7 +138,7 @@ public:
* @returns an id for the scheduled event.
*/
template <typename U1, typename U2, typename T1, typename T2>
static void ScheduleRealtime (Time const &time, void (*f) (U1,U2), T1 a1, T2 a2);
static void Schedule (Time const &time, void (*f) (U1,U2), T1 a1, T2 a2);
/**
* @param time the relative expiration time of the event.
@@ -149,7 +149,7 @@ public:
* @returns an id for the scheduled event.
*/
template <typename U1, typename U2, typename U3, typename T1, typename T2, typename T3>
static void ScheduleRealtime (Time const &time, void (*f) (U1,U2,U3), T1 a1, T2 a2, T3 a3);
static void Schedule (Time const &time, void (*f) (U1,U2,U3), T1 a1, T2 a2, T3 a3);
/**
* @param time the relative expiration time of the event.
@@ -162,7 +162,7 @@ public:
*/
template <typename U1, typename U2, typename U3, typename U4,
typename T1, typename T2, typename T3, typename T4>
static void ScheduleRealtime (Time const &time, void (*f) (U1,U2,U3,U4), T1 a1, T2 a2, T3 a3, T4 a4);
static void Schedule (Time const &time, void (*f) (U1,U2,U3,U4), T1 a1, T2 a2, T3 a3, T4 a4);
/**
* @param time the relative expiration time of the event.
@@ -176,7 +176,7 @@ public:
*/
template <typename U1, typename U2, typename U3, typename U4, typename U5,
typename T1, typename T2, typename T3, typename T4, typename T5>
static void ScheduleRealtime (Time const &time, void (*f) (U1,U2,U3,U4,U5), T1 a1, T2 a2, T3 a3, T4 a4, T5 a5);
static void Schedule (Time const &time, void (*f) (U1,U2,U3,U4,U5), T1 a1, T2 a2, T3 a3, T4 a4, T5 a5);
/**
* Schedule an event to expire Now. All events scheduled to
@@ -187,7 +187,7 @@ public:
* @param obj the object on which to invoke the member method
*/
template <typename MEM, typename OBJ>
static void ScheduleRealtimeNow (MEM mem_ptr, OBJ obj);
static void ScheduleNow (MEM mem_ptr, OBJ obj);
/**
* @param mem_ptr member method pointer to invoke
@@ -196,7 +196,7 @@ public:
*/
template <typename MEM, typename OBJ,
typename T1>
static void ScheduleRealtimeNow (MEM mem_ptr, OBJ obj, T1 a1);
static void ScheduleNow (MEM mem_ptr, OBJ obj, T1 a1);
/**
* @param mem_ptr member method pointer to invoke
@@ -206,7 +206,7 @@ public:
*/
template <typename MEM, typename OBJ,
typename T1, typename T2>
static void ScheduleRealtimeNow (MEM mem_ptr, OBJ obj, T1 a1, T2 a2);
static void ScheduleNow (MEM mem_ptr, OBJ obj, T1 a1, T2 a2);
/**
* @param mem_ptr member method pointer to invoke
@@ -217,7 +217,7 @@ public:
*/
template <typename MEM, typename OBJ,
typename T1, typename T2, typename T3>
static void ScheduleRealtimeNow (MEM mem_ptr, OBJ obj, T1 a1, T2 a2, T3 a3);
static void ScheduleNow (MEM mem_ptr, OBJ obj, T1 a1, T2 a2, T3 a3);
/**
* @param mem_ptr member method pointer to invoke
@@ -229,7 +229,7 @@ public:
*/
template <typename MEM, typename OBJ,
typename T1, typename T2, typename T3, typename T4>
static void ScheduleRealtimeNow (MEM mem_ptr, OBJ obj,
static void ScheduleNow (MEM mem_ptr, OBJ obj,
T1 a1, T2 a2, T3 a3, T4 a4);
/**
* @param mem_ptr member method pointer to invoke
@@ -242,12 +242,12 @@ public:
*/
template <typename MEM, typename OBJ,
typename T1, typename T2, typename T3, typename T4, typename T5>
static void ScheduleRealtimeNow (MEM mem_ptr, OBJ obj,
static void ScheduleNow (MEM mem_ptr, OBJ obj,
T1 a1, T2 a2, T3 a3, T4 a4, T5 a5);
/**
* @param f the function to invoke
*/
static void ScheduleRealtimeNow (void (*f) (void));
static void ScheduleNow (void (*f) (void));
/**
* @param f the function to invoke
@@ -255,7 +255,7 @@ public:
*/
template <typename U1,
typename T1>
static void ScheduleRealtimeNow (void (*f) (U1), T1 a1);
static void ScheduleNow (void (*f) (U1), T1 a1);
/**
* @param f the function to invoke
@@ -264,7 +264,7 @@ public:
*/
template <typename U1, typename U2,
typename T1, typename T2>
static void ScheduleRealtimeNow (void (*f) (U1,U2), T1 a1, T2 a2);
static void ScheduleNow (void (*f) (U1,U2), T1 a1, T2 a2);
/**
* @param f the function to invoke
@@ -274,7 +274,7 @@ public:
*/
template <typename U1, typename U2, typename U3,
typename T1, typename T2, typename T3>
static void ScheduleRealtimeNow (void (*f) (U1,U2,U3), T1 a1, T2 a2, T3 a3);
static void ScheduleNow (void (*f) (U1,U2,U3), T1 a1, T2 a2, T3 a3);
/**
* @param f the function to invoke
@@ -285,7 +285,7 @@ public:
*/
template <typename U1, typename U2, typename U3, typename U4,
typename T1, typename T2, typename T3, typename T4>
static void ScheduleRealtimeNow (void (*f) (U1,U2,U3,U4), T1 a1, T2 a2, T3 a3, T4 a4);
static void ScheduleNow (void (*f) (U1,U2,U3,U4), T1 a1, T2 a2, T3 a3, T4 a4);
/**
* @param f the function to invoke
@@ -297,179 +297,179 @@ public:
*/
template <typename U1, typename U2, typename U3, typename U4, typename U5,
typename T1, typename T2, typename T3, typename T4, typename T5>
static void ScheduleRealtimeNow (void (*f) (U1,U2,U3,U4,U5), T1 a1, T2 a2, T3 a3, T4 a4, T5 a5);
static void ScheduleNow (void (*f) (U1,U2,U3,U4,U5), T1 a1, T2 a2, T3 a3, T4 a4, T5 a5);
private:
RealtimeSimulator ();
~RealtimeSimulator ();
static void ScheduleRealtime (const Time &delay, EventImpl *impl);
static void ScheduleRealtimeNow (EventImpl *impl);
WallclockSimulator ();
~WallclockSimulator ();
static void Schedule (const Time &delay, EventImpl *impl);
static void ScheduleNow (EventImpl *impl);
};
template <typename MEM, typename OBJ>
void RealtimeSimulator::ScheduleRealtime (Time const &time, MEM mem_ptr, OBJ obj)
void WallclockSimulator::Schedule (Time const &time, MEM mem_ptr, OBJ obj)
{
return ScheduleRealtime (time, MakeEvent (mem_ptr, obj));
return Schedule (time, MakeEvent (mem_ptr, obj));
}
template <typename MEM, typename OBJ,
typename T1>
void RealtimeScheduleRealtime (Time const &time, MEM mem_ptr, OBJ obj, T1 a1)
void Schedule (Time const &time, MEM mem_ptr, OBJ obj, T1 a1)
{
return ScheduleRealtime (time, MakeEvent (mem_ptr, obj, a1));
return Schedule (time, MakeEvent (mem_ptr, obj, a1));
}
template <typename MEM, typename OBJ,
typename T1, typename T2>
void RealtimeScheduleRealtime (Time const &time, MEM mem_ptr, OBJ obj, T1 a1, T2 a2)
void Schedule (Time const &time, MEM mem_ptr, OBJ obj, T1 a1, T2 a2)
{
return ScheduleRealtime (time, MakeEvent (mem_ptr, obj, a1, a2));
return Schedule (time, MakeEvent (mem_ptr, obj, a1, a2));
}
template <typename MEM, typename OBJ,
typename T1, typename T2, typename T3>
void RealtimeScheduleRealtime (Time const &time, MEM mem_ptr, OBJ obj, T1 a1, T2 a2, T3 a3)
void Schedule (Time const &time, MEM mem_ptr, OBJ obj, T1 a1, T2 a2, T3 a3)
{
return ScheduleRealtime (time, MakeEvent (mem_ptr, obj, a1, a2, a3));
return Schedule (time, MakeEvent (mem_ptr, obj, a1, a2, a3));
}
template <typename MEM, typename OBJ,
typename T1, typename T2, typename T3, typename T4>
void RealtimeScheduleRealtime (Time const &time, MEM mem_ptr, OBJ obj, T1 a1, T2 a2, T3 a3, T4 a4)
void Schedule (Time const &time, MEM mem_ptr, OBJ obj, T1 a1, T2 a2, T3 a3, T4 a4)
{
return ScheduleRealtime (time, MakeEvent (mem_ptr, obj, a1, a2, a3, a4));
return Schedule (time, MakeEvent (mem_ptr, obj, a1, a2, a3, a4));
}
template <typename MEM, typename OBJ,
typename T1, typename T2, typename T3, typename T4, typename T5>
void RealtimeScheduleRealtime (Time const &time, MEM mem_ptr, OBJ obj,
void Schedule (Time const &time, MEM mem_ptr, OBJ obj,
T1 a1, T2 a2, T3 a3, T4 a4, T5 a5)
{
return ScheduleRealtime (time, MakeEvent (mem_ptr, obj, a1, a2, a3, a4, a5));
return Schedule (time, MakeEvent (mem_ptr, obj, a1, a2, a3, a4, a5));
}
template <typename U1, typename T1>
void RealtimeScheduleRealtime (Time const &time, void (*f) (U1), T1 a1)
void Schedule (Time const &time, void (*f) (U1), T1 a1)
{
return ScheduleRealtime (time, MakeEvent (f, a1));
return Schedule (time, MakeEvent (f, a1));
}
template <typename U1, typename U2,
typename T1, typename T2>
void RealtimeScheduleRealtime (Time const &time, void (*f) (U1,U2), T1 a1, T2 a2)
void Schedule (Time const &time, void (*f) (U1,U2), T1 a1, T2 a2)
{
return ScheduleRealtime (time, MakeEvent (f, a1, a2));
return Schedule (time, MakeEvent (f, a1, a2));
}
template <typename U1, typename U2, typename U3,
typename T1, typename T2, typename T3>
void RealtimeScheduleRealtime (Time const &time, void (*f) (U1,U2,U3), T1 a1, T2 a2, T3 a3)
void Schedule (Time const &time, void (*f) (U1,U2,U3), T1 a1, T2 a2, T3 a3)
{
return ScheduleRealtime (time, MakeEvent (f, a1, a2, a3));
return Schedule (time, MakeEvent (f, a1, a2, a3));
}
template <typename U1, typename U2, typename U3, typename U4,
typename T1, typename T2, typename T3, typename T4>
void RealtimeScheduleRealtime (Time const &time, void (*f) (U1,U2,U3,U4), T1 a1, T2 a2, T3 a3, T4 a4)
void Schedule (Time const &time, void (*f) (U1,U2,U3,U4), T1 a1, T2 a2, T3 a3, T4 a4)
{
return ScheduleRealtime (time, MakeEvent (f, a1, a2, a3, a4));
return Schedule (time, MakeEvent (f, a1, a2, a3, a4));
}
template <typename U1, typename U2, typename U3, typename U4, typename U5,
typename T1, typename T2, typename T3, typename T4, typename T5>
void RealtimeScheduleRealtime (Time const &time, void (*f) (U1,U2,U3,U4,U5), T1 a1, T2 a2, T3 a3, T4 a4, T5 a5)
void Schedule (Time const &time, void (*f) (U1,U2,U3,U4,U5), T1 a1, T2 a2, T3 a3, T4 a4, T5 a5)
{
return ScheduleRealtime (time, MakeEvent (f, a1, a2, a3, a4, a5));
return Schedule (time, MakeEvent (f, a1, a2, a3, a4, a5));
}
template <typename MEM, typename OBJ>
void
RealtimeScheduleRealtimeNow (MEM mem_ptr, OBJ obj)
ScheduleNow (MEM mem_ptr, OBJ obj)
{
return ScheduleRealtimeNow (MakeEvent (mem_ptr, obj));
return ScheduleNow (MakeEvent (mem_ptr, obj));
}
template <typename MEM, typename OBJ,
typename T1>
void
RealtimeScheduleRealtimeNow (MEM mem_ptr, OBJ obj, T1 a1)
ScheduleNow (MEM mem_ptr, OBJ obj, T1 a1)
{
return ScheduleRealtimeNow (MakeEvent (mem_ptr, obj, a1));
return ScheduleNow (MakeEvent (mem_ptr, obj, a1));
}
template <typename MEM, typename OBJ,
typename T1, typename T2>
void
RealtimeScheduleRealtimeNow (MEM mem_ptr, OBJ obj, T1 a1, T2 a2)
ScheduleNow (MEM mem_ptr, OBJ obj, T1 a1, T2 a2)
{
return ScheduleRealtimeNow (MakeEvent (mem_ptr, obj, a1, a2));
return ScheduleNow (MakeEvent (mem_ptr, obj, a1, a2));
}
template <typename MEM, typename OBJ,
typename T1, typename T2, typename T3>
void
RealtimeScheduleRealtimeNow (MEM mem_ptr, OBJ obj, T1 a1, T2 a2, T3 a3)
ScheduleNow (MEM mem_ptr, OBJ obj, T1 a1, T2 a2, T3 a3)
{
return ScheduleRealtimeNow (MakeEvent (mem_ptr, obj, a1, a2, a3));
return ScheduleNow (MakeEvent (mem_ptr, obj, a1, a2, a3));
}
template <typename MEM, typename OBJ,
typename T1, typename T2, typename T3, typename T4>
void
RealtimeScheduleRealtimeNow (MEM mem_ptr, OBJ obj, T1 a1, T2 a2, T3 a3, T4 a4)
ScheduleNow (MEM mem_ptr, OBJ obj, T1 a1, T2 a2, T3 a3, T4 a4)
{
return ScheduleRealtimeNow (MakeEvent (mem_ptr, obj, a1, a2, a3, a4));
return ScheduleNow (MakeEvent (mem_ptr, obj, a1, a2, a3, a4));
}
template <typename MEM, typename OBJ,
typename T1, typename T2, typename T3, typename T4, typename T5>
void
RealtimeScheduleRealtimeNow (MEM mem_ptr, OBJ obj,
ScheduleNow (MEM mem_ptr, OBJ obj,
T1 a1, T2 a2, T3 a3, T4 a4, T5 a5)
{
return ScheduleRealtimeNow (MakeEvent (mem_ptr, obj, a1, a2, a3, a4, a5));
return ScheduleNow (MakeEvent (mem_ptr, obj, a1, a2, a3, a4, a5));
}
template <typename U1,
typename T1>
void
RealtimeScheduleRealtimeNow (void (*f) (U1), T1 a1)
ScheduleNow (void (*f) (U1), T1 a1)
{
return ScheduleRealtimeNow (MakeEvent (f, a1));
return ScheduleNow (MakeEvent (f, a1));
}
template <typename U1, typename U2,
typename T1, typename T2>
void
RealtimeScheduleRealtimeNow (void (*f) (U1,U2), T1 a1, T2 a2)
ScheduleNow (void (*f) (U1,U2), T1 a1, T2 a2)
{
return ScheduleRealtimeNow (MakeEvent (f, a1, a2));
return ScheduleNow (MakeEvent (f, a1, a2));
}
template <typename U1, typename U2, typename U3,
typename T1, typename T2, typename T3>
void
RealtimeScheduleRealtimeNow (void (*f) (U1,U2,U3), T1 a1, T2 a2, T3 a3)
ScheduleNow (void (*f) (U1,U2,U3), T1 a1, T2 a2, T3 a3)
{
return ScheduleRealtimeNow (MakeEvent (f, a1, a2, a3));
return ScheduleNow (MakeEvent (f, a1, a2, a3));
}
template <typename U1, typename U2, typename U3, typename U4,
typename T1, typename T2, typename T3, typename T4>
void
RealtimeScheduleRealtimeNow (void (*f) (U1,U2,U3,U4), T1 a1, T2 a2, T3 a3, T4 a4)
ScheduleNow (void (*f) (U1,U2,U3,U4), T1 a1, T2 a2, T3 a3, T4 a4)
{
return ScheduleRealtimeNow (MakeEvent (f, a1, a2, a3, a4));
return ScheduleNow (MakeEvent (f, a1, a2, a3, a4));
}
template <typename U1, typename U2, typename U3, typename U4, typename U5,
typename T1, typename T2, typename T3, typename T4, typename T5>
void
RealtimeScheduleRealtimeNow (void (*f) (U1,U2,U3,U4,U5), T1 a1, T2 a2, T3 a3, T4 a4, T5 a5)
ScheduleNow (void (*f) (U1,U2,U3,U4,U5), T1 a1, T2 a2, T3 a3, T4 a4, T5 a5)
{
return ScheduleRealtimeNow (MakeEvent (f, a1, a2, a3, a4, a5));
return ScheduleNow (MakeEvent (f, a1, a2, a3, a4, a5));
}
} // namespace ns3
#endif /* REALTIME_SIMULATOR_H */
#endif /* WALLCLOCK_SIMULATOR_H */

View File

@@ -76,7 +76,7 @@ def build(bld):
'event-id.h',
'event-impl.h',
'simulator.h',
'realtime-simulator.h',
'wallclock-simulator.h',
'simulator-impl.h',
'default-simulator-impl.h',
'scheduler.h',