World Ocean Simulation System (WOSS) library
woss::ResTimeArrBinDb Class Reference

Binary WossDb for TimeArr. More...

#include <res-time-arr-bin-db.h>

Inheritance diagram for woss::ResTimeArrBinDb:
Inheritance graph
Collaboration diagram for woss::ResTimeArrBinDb:
Collaboration graph

Public Member Functions

 ResTimeArrBinDb (const std::string &name)
 
virtual ~ResTimeArrBinDb () override=default
 
- Public Member Functions inherited from woss::ResTimeArrTxtDb
 ResTimeArrTxtDb (const std::string &name)
 
virtual ~ResTimeArrTxtDb () override=default
 
virtual bool finalizeConnection () override
 
virtual bool closeConnection () override
 
virtual std::unique_ptr< TimeArrgetValue (const CoordZ &coord_tx, const CoordZ &coord_rx, const double frequency, const Time &time_value) const override
 
virtual bool insertValue (const CoordZ &coord_tx, const CoordZ &coord_rx, const double frequency, const Time &time_value, const TimeArr &channel) override
 
- Public Member Functions inherited from woss::WossTextualDb
 WossTextualDb (const std::string &name)
 
virtual ~WossTextualDb () override
 
virtual bool openConnection () override
 
- Public Member Functions inherited from woss::WossDb
 WossDb (const std::string &name)
 
virtual ~WossDb ()=default
 
void setDbName (const std::string &pathname)
 
std::string getDbName () const
 
void setDebug (double flag=true)
 
bool isUsingDebug () const
 
virtual bool isValid () const
 
- Public Member Functions inherited from woss::WossResTimeArrDb
 WossResTimeArrDb ()=default
 
virtual ~WossResTimeArrDb ()=default
 

Static Public Member Functions

static void setSpaceSampling (double value)
 
static double getSpaceSampling ()
 
- Static Public Member Functions inherited from woss::ResTimeArrTxtDb
static void setSpaceSampling (double value)
 
static double getSpaceSampling ()
 

Protected Member Functions

virtual bool writeMap () override
 
virtual bool importMap () override
 
- Protected Member Functions inherited from woss::ResTimeArrTxtDb
void printScreenMap ()
 
std::optional< std::unique_ptr< TimeArr > > readMap (const CoordZ &tx, const CoordZ &rx, const double frequency, const Time &time_value) const
 
- Protected Member Functions inherited from woss::WossDb
PathName getPathName (const std::string &complete_path) const
 

Additional Inherited Members

- Protected Types inherited from woss::ResTimeArrTxtDb
using TimeMap = std::map< time_t, std::unique_ptr< TimeArr > >
 
using TMIter = TimeMap::iterator
 
using TMCIter = TimeMap::const_iterator
 
using TMRIter = TimeMap::reverse_iterator
 
using FreqMap = std::map< PDouble, TimeMap >
 
using FMIter = FreqMap::iterator
 
using FMCIter = FreqMap::const_iterator
 
using FMRIter = FreqMap::reverse_iterator
 
using RxMap = std::map< CoordZ, FreqMap, CoordComparator< ResTimeArrTxtDb, CoordZ > >
 
using RxMIter = RxMap::iterator
 
using RxMCIter = RxMap::const_iterator
 
using RxMRIter = RxMap::reverse_iterator
 
using ArrMatrix = std::map< CoordZ, RxMap, CoordComparator< ResTimeArrTxtDb, CoordZ > >
 
using AMXIter = ArrMatrix::iterator
 
using AMXCIter = ArrMatrix::const_iterator
 
using AMXRIter = ArrMatrix::reverse_iterator
 
using AMXCRIter = ArrMatrix::const_reverse_iterator
 
- Protected Attributes inherited from woss::ResTimeArrTxtDb
ArrMatrix arrivals_map
 
int initial_arrmap_size
 
bool has_been_modified
 
- Protected Attributes inherited from woss::WossTextualDb
std::fstream textual_db
 
- Protected Attributes inherited from woss::WossDb
std::string db_name
 
bool debug
 
- Static Protected Attributes inherited from woss::ResTimeArrTxtDb
static double space_sampling = 0.0
 

Detailed Description

Binary WossDb for TimeArr.

ResTimeArrBinDb implements WossTextualDb and WossResTimeArrDb for storing calculated TimeArr into a binary file

Constructor & Destructor Documentation

◆ ResTimeArrBinDb()

woss::ResTimeArrBinDb::ResTimeArrBinDb ( const std::string &  name)
inline

ResTimeArrBinDb constructor

Parameters
namepathname of database

◆ ~ResTimeArrBinDb()

virtual woss::ResTimeArrBinDb::~ResTimeArrBinDb ( )
overridevirtualdefault

Member Function Documentation

◆ getSpaceSampling()

static double woss::ResTimeArrBinDb::getSpaceSampling ( )
inlinestatic

◆ importMap()

bool ResTimeArrBinDb::importMap ( )
overrideprotectedvirtual

Imports the binary file into arrivals_map. The format is the following:
tx latitude, tx longitude, tx depth, rx latitude, rx longitude, rx depth, frequency, total channel taps, delay-i-th real pressure-i-th, imag pressure-i-th

Returns
true if operation succeeds, false otherwise

Reimplemented from woss::ResTimeArrTxtDb.

References woss::ResTimeArrTxtDb::arrivals_map, woss::WossDb::db_name, woss::WossDb::debug, woss::ResTimeArrTxtDb::initial_arrmap_size, woss::Singleton< T >::instance(), woss::ResTimeArrTxtDb::printScreenMap(), and woss::WossTextualDb::textual_db.

Here is the call graph for this function:

◆ setSpaceSampling()

static void woss::ResTimeArrBinDb::setSpaceSampling ( double  value)
inlinestatic

◆ writeMap()

bool ResTimeArrBinDb::writeMap ( )
overrideprotectedvirtual

Writes arrivals_map into the binary file. The format is the following:
tx latitude, tx longitude, tx depth, rx latitude, rx longitude, rx depth, frequency, total channel taps, delay-i-th real pressure-i-th, imag pressure-i-th

Returns
true if operation succeeds, false otherwise

Reimplemented from woss::ResTimeArrTxtDb.

References woss::ResTimeArrTxtDb::arrivals_map, woss::WossDb::db_name, woss::WossDb::debug, woss::ResTimeArrTxtDb::printScreenMap(), woss::TimeArr::size(), and woss::WossTextualDb::textual_db.

Here is the call graph for this function:

The documentation for this class was generated from the following files: