86#include "ns3/command-line.h"
88#include "ns3/nstime.h"
89#include "ns3/random-variable-stream.h"
90#include "ns3/simulator.h"
117 std::cout <<
"Replacing time printer function after Simulator::Run ()" << std::endl;
124main(
int argc,
char* argv[])
126 bool replaceTimePrinter =
false;
127 std::string resolution =
"Time::NS";
131 std::map<std::string, Time::Unit> resolutionMap = {
139 cmd.AddValue(
"replaceTimePrinter",
"replace time printing function", replaceTimePrinter);
140 cmd.AddValue(
"resolution",
"time resolution", resolution);
141 cmd.Parse(argc, argv);
143 auto search = resolutionMap.find(resolution);
144 if (search != resolutionMap.end())
151 if (replaceTimePrinter)
159 &UniformRandomVariable::SetAntithetic,
163 &UniformRandomVariable::SetAntithetic,
Parse command-line arguments.
Smart pointer class similar to boost::intrusive_ptr.
static EventId Schedule(const Time &delay, FUNC f, Ts &&... args)
Schedule an event to expire after delay.
static void Destroy()
Execute the events scheduled with ScheduleDestroy().
static Time Now()
Return the current simulation virtual time.
static void Run()
Run the simulation.
double GetSeconds() const
Get an approximation of the time stored in this instance in the indicated unit.
static void SetResolution(Unit resolution)
Time NanoSeconds(uint64_t value)
Construct a Time in the indicated unit.
Time Seconds(double value)
Construct a Time in the indicated unit.
Every class exported by the ns3 library is enclosed in the ns3 namespace.
void LogComponentEnable(const std::string &name, LogLevel level)
Enable the logging output associated with that log component.
void LogSetTimePrinter(TimePrinter printer)
Set the TimePrinter function to be used to prepend log messages with the simulation time.
@ LOG_LEVEL_ALL
Print everything.
@ LOG_PREFIX_TIME
Prefix all trace prints with simulation time.
void LogComponentEnableAll(LogLevel level)
Enable the logging output for all registered log components.