#include <rng-seed-manager.h>
Static Public Member Functions | |
static uint64_t | GetNextStreamIndex (void) |
static uint64_t | GetRun (void) |
static uint32_t | GetSeed (void) |
Get the seed value. More... | |
static void | SetRun (uint64_t run) |
Set the run number of simulation. More... | |
static void | SetSeed (uint32_t seed) |
set the seed it will duplicate the seed value 6 times More... | |
Related Functions | |
(Note that these are not member functions.) | |
static uint64_t | g_nextStreamIndex = 0 |
static ns3::GlobalValue | g_rngRun ("RngRun","The run number used to modify the global seed", ns3::IntegerValue(1), ns3::MakeIntegerChecker< int64_t >()) |
static ns3::GlobalValue | g_rngSeed ("RngSeed","The global seed of all rng streams", ns3::IntegerValue(1), ns3::MakeIntegerChecker< uint32_t >()) |
Definition at line 27 of file rng-seed-manager.h.
|
static |
Definition at line 88 of file rng-seed-manager.cc.
References g_nextStreamIndex, and NS_LOG_FUNCTION_NOARGS.
Referenced by ns3::RandomVariableStream::SetStream().
|
static |
Definition at line 79 of file rng-seed-manager.cc.
References g_rngRun, ns3::IntegerValue::Get(), ns3::GlobalValue::GetValue(), and NS_LOG_FUNCTION_NOARGS.
Referenced by ns3::RandomVariableStream::SetStream().
|
static |
Get the seed value.
Note: returns the first of the six seed values used in the underlying RNG
Definition at line 59 of file rng-seed-manager.cc.
References g_rngSeed, ns3::IntegerValue::Get(), ns3::GlobalValue::GetValue(), and NS_LOG_FUNCTION_NOARGS.
Referenced by ns3::RandomVariableStream::SetStream().
|
static |
Set the run number of simulation.
In this example, N could successivly be equal to 1,2,3, etc. and the user would continue to get independent runs out of the single simulation. For this simple example, the following might work:
Definition at line 73 of file rng-seed-manager.cc.
References NS_LOG_FUNCTION, and ns3::Config::SetGlobal().
Referenced by ns3::olsr::Bug780Test::DoRun(), ns3::olsr::HelloRegressionTest::DoRun(), and ns3::olsr::TcRegressionTest::DoRun().
|
static |
set the seed it will duplicate the seed value 6 times
seed | Note, while the underlying RNG takes six integer values as a seed; it is sufficient to set these all to the same integer, so we provide a simpler interface here that just takes one integer. |
Definition at line 67 of file rng-seed-manager.cc.
References NS_LOG_FUNCTION, and ns3::Config::SetGlobal().
Referenced by SteadyStateRandomWaypointTest::DoRun(), ns3::olsr::Bug780Test::DoRun(), ns3::olsr::HelloRegressionTest::DoRun(), and ns3::olsr::TcRegressionTest::DoRun().
|
related |
The next random number generator stream number to use for automatic assignment.
Definition at line 36 of file rng-seed-manager.cc.
Referenced by GetNextStreamIndex().
|
related |
The random number generator run number global value.
This is accessible as "--RngRun" from CommandLine.
Referenced by GetRun().
|
related |
The random number generator seed number global value.
This is accessible as "--RngSeed" from CommandLine.
Referenced by GetSeed().