World Ocean Simulation System (WOSS) library
|
simple template extension of WossManagerResDb or WossManagerResDbMT More...
#include <woss-manager-simple.h>
Public Member Functions | |
WossManagerSimple () | |
virtual WossManagerSimple & | eraseActiveWoss (const CoordZ &tx, const CoordZ &rx, double start_frequency, double end_frequency) |
virtual bool | reset () |
virtual bool | timeEvolve (const Time &time_value) |
Public Member Functions inherited from woss::WossManagerResDb | |
virtual Pressure * | getWossPressure (const CoordZ &tx_coordz, const CoordZ &rx_coordz, double start_frequency, double end_frequency, const Time &time_value) |
virtual TimeArr * | getWossTimeArr (const CoordZ &tx_coordz, const CoordZ &rx_coordz, double start_frequency, double end_frequency, const Time &time_value) |
WossManagerResDb & | setWossDbManager (const WossDbManager *const ptr) |
Public Member Functions inherited from woss::WossManager | |
WossManager () | |
virtual const Woss & | getActiveWoss (const CoordZ &tx, const CoordZ &rx, double start_frequency, double end_frequency) const |
virtual Pressure * | getWossPressure (const CoordZ &tx_coordz, const CoordZ &rx_coordz, double start_frequency, double end_frequency, double time_value=0.0) |
virtual PressureVector | getWossPressure (const CoordZPairVect &coordinates, double start_frequency, double end_frequency, const Time &time_value) |
virtual PressureVector | getWossPressure (const CoordZPairVect &coordinates, double start_frequency, double end_frequency, double time_value=0.0) |
virtual TimeArr * | getWossTimeArr (const CoordZ &tx_coordz, const CoordZ &rx_coordz, double start_frequency, double end_frequency, double time_value=0.0) |
virtual TimeArrVector | getWossTimeArr (const CoordZPairVect &coordinates, double start_frequency, double end_frequency, const Time &time_value) |
virtual TimeArrVector | getWossTimeArr (const CoordZPairVect &coordinates, double start_frequency, double end_frequency, double time_value=0.0) |
WossManager & | setWossCreator (const WossCreator *const ptr) |
void | setTimeEvolutionActiveFlag (bool flag) |
void | setDebugFlag (bool flag) |
const WossCreator *const | getWossCreator () |
bool | getTimeEvolutionActiveFlag () |
bool | getDebugFlag () |
Static Public Member Functions | |
static void | setSpaceSampling (double radius) |
static double | getSpaceSampling () |
Protected Types | |
typedef ::std::map< CoordZ, Woss *, CoordComparator< WossManagerSimple, CoordZ > > | WossCoordZMap |
typedef WossCoordZMap::iterator | WCZIter |
typedef WossCoordZMap::reverse_iterator | WCZRIter |
typedef ::std::map< CoordZ, WossCoordZMap, CoordComparator< WossManagerSimple, CoordZ > > | WossContainer |
typedef WossContainer::iterator | WCIter |
typedef WossContainer::reverse_iterator | WCRIter |
Protected Member Functions | |
virtual Woss *const | getWoss (const CoordZ &tx, const CoordZ &rx, double start_frequency, double end_frequency) |
Protected Member Functions inherited from woss::WossManagerResDb | |
TimeArr * | dbGetTimeArr (const CoordZ &tx, const CoordZ &rx, double frequency, const Time &time_value) const |
void | dbInsertTimeArr (const CoordZ &tx, const CoordZ &rx, double frequency, const Time &time_value, const TimeArr &channel) const |
Pressure * | dbGetPressure (const CoordZ &tx, const CoordZ &rx, double frequency, const Time &time_value) const |
void | dbInsertPressure (const CoordZ &tx, const CoordZ &rx, double frequency, const Time &time_value, const Pressure &press) const |
Protected Attributes | |
WossContainer | woss_map |
Protected Attributes inherited from woss::WossManagerResDb | |
const WossDbManager * | woss_db_manager |
Protected Attributes inherited from woss::WossManager | |
const WossCreator * | woss_creator |
bool | debug |
bool | is_time_evolution_active |
Static Protected Attributes | |
static double | space_sampling = 0.0 |
Static Protected Attributes inherited from woss::WossManager | |
static const Time | NO_EVOLUTION_TIME = Time(1,1,1901,1,1,1) |
simple template extension of WossManagerResDb or WossManagerResDbMT
WossManagerSimple is a simple but functional template extension of WossManagerResDb or WossManagerResDbMT. It creates a Woss for every tx-rx pair. No memory management is done. In simulation with high mobility rate, a Woss for every receiver will be created everytime a transmitter will move, without removing old objects. If a memory management is needed, the user should extend this class to suit his needs.
|
protected |
Map that links a transmitter CoordZ to a WossCoordZMap
|
protected |
woss::WossManagerSimple< WMResDb >::WossManagerSimple | ( | ) |
WossManagerSimple default constructor
|
virtual |
Deletes a woss::Woss object for given params
tx | const reference to a valid CoordZ object ( transmitter ) |
rx | const reference to a valid CoordZ object ( receiver ) |
start_freq | start frequency [Hz] |
end_freq | end frequency [Hz] |
Implements woss::WossManager.
|
inlinestatic |
Gets the radius in meters of a cartesian sphere, in which all coordinates are considered to be equivalent
References woss::WossManagerSimple< WMResDb >::space_sampling.
|
protectedvirtual |
Returns a pointer to a properly initialized Woss, for storage purposes
tx | const reference to a valid CoordZ object ( transmitter ) |
rx | const reference to a valid CoordZ object ( receiver ) |
start_freq | start frequency [Hz] |
end_freq | end frequency [Hz] |
Implements woss::WossManager.
|
virtual |
Deletes all created Woss instances
Implements woss::WossManager.
|
inlinestatic |
Sets the radius in meters of a cartesian sphere, in which all coordinates are considered to be equivalent
radius | radius >= 0.0 in meters |
References woss::WossManagerSimple< WMResDb >::space_sampling.
|
virtual |
Performs a time evoulion of all time-dependant parameters of all created Woss instances
time_value | const reference to a valid Time object |
Implements woss::WossManager.
|
staticprotected |
The radius in meters (>= 0.0) of a cartesian sphere, in which all coordinates are considered to be equivalent
Referenced by woss::WossManagerSimple< WMResDb >::getSpaceSampling(), and woss::WossManagerSimple< WMResDb >::setSpaceSampling().
|
protected |
Map containing all created Woss objects