00001 #ifndef SIMPARAMETER_H_
00002 #define SIMPARAMETER_H_
00003
00004 #include "globaldefinitions.h"
00005 #include "SimTime.h"
00006
00008 class SimParameter
00009 {
00010 public:
00011
00012 #ifndef SWIG
00013
00015 SimParameter(const Time & dt=SimParameter::Default.dt, const Time & minDelay=SimParameter::Default.minDelay,
00016 const Time & maxDelay=SimParameter::Default.maxDelay, uint32 constructionRNGSeed = 0, uint32 simulationRNGSeed = 0) :
00017 dt(dt), minDelay(minDelay), maxDelay(maxDelay), constructionRNGSeed(constructionRNGSeed), simulationRNGSeed(simulationRNGSeed)
00018 {
00019 if (dt.in_sec() > minDelay.in_sec() && minDelay.in_sec() != 0) {
00020 this->minDelay = Time::steps(1, dt);
00021 }
00022 if (dt.in_sec() > maxDelay.in_sec() ) {
00023 this->maxDelay = Time::steps(2, dt);
00024 }
00025 };
00026
00027 #else
00028 SimParameter(const Time & dt, const Time & minDelay, const Time & maxDelay, uint32 constructionRNGSeed = 0, uint32 simulationRNGSeed = 0);
00029 #endif
00030
00031 virtual ~SimParameter()
00032 {
00033 }
00034 ;
00035
00037 Time dt;
00038
00040 Time minDelay;
00041
00043 Time maxDelay;
00044
00046
00054 uint32 constructionRNGSeed;
00055
00057
00068 uint32 simulationRNGSeed;
00069
00070 public:
00072 static SimParameter Default;
00073
00074 };
00075
00076 #endif