39#if defined(WOSS_NETCDF4_SUPPORT)
41#elif defined(WOSS_NETCDF_SUPPORT)
59 static constexpr inline const char* DB_NAME_NOT_SET =
"DB_NAME_NOT_SET";
66 using PathName = std::pair< std::string, std::string >;
89 WossDb(
const std::string& name );
169#ifdef WOSS_NETCDF_SUPPORT
207#if defined(WOSS_NETCDF4_SUPPORT)
363 virtual std::unique_ptr<SSP>
getValue(
const Coord& coords,
const Time& time,
long double ssp_depth_precision )
const = 0;
391 virtual std::unique_ptr<TimeArr>
getValue(
const CoordZ& coord_tx,
const CoordZ& coord_rx,
const double frequency,
const Time& time_value )
const = 0;
428 virtual std::unique_ptr<Pressure>
getValue(
const CoordZ& coord_tx,
const CoordZ& coord_rx,
const double frequency,
const Time& time_value )
const = 0;
3D-Coordinates (lat, long, depth) class definitions and functions library
Definition coordinates-definitions.h:384
Coordinates (lat, long) class definitions and functions library.
Definition coordinates-definitions.h:98
Complex attenuated pressure class.
Definition pressure-definitions.h:52
SSP class offers multiple creation and manipulation capabilities for sound speed profile.
Definition ssp-definitions.h:247
Surficial sediment geoacoustic parameters definitions.
Definition sediment-definitions.h:54
Channel power delay profile class.
Definition time-arrival-definitions.h:70
a class for time date manipulation
Definition time-definitions.h:83
Data behaviour class for bathymetry database.
Definition woss-db.h:265
virtual bool insertValue(const Coord &coordinates, const Bathymetry &bathymetry_value)=0
WossBathymetryDb()=default
virtual Bathymetry getValue(const Coord &coords) const =0
virtual ~WossBathymetryDb()=default
Abstract class that provides the interface of databases.
Definition woss-db.h:79
void setDbName(const std::string &pathname)
Definition woss-db.h:98
std::string db_name
Definition woss-db.h:152
std::string getDbName() const
Definition woss-db.h:104
bool debug
Definition woss-db.h:157
virtual ~WossDb()=default
bool isUsingDebug() const
Definition woss-db.h:117
virtual bool finalizeConnection()=0
virtual bool closeConnection()=0
virtual bool openConnection()=0
virtual bool isValid() const
Definition woss-db.h:124
void setDebug(double flag=true)
Definition woss-db.h:111
PathName getPathName(const std::string &complete_path) const
Definition woss-db.cpp:47
NetCDF implementation of WossDb.
Definition woss-db.h:178
virtual ~WossNetcdfDb() override
Definition woss-db.cpp:83
virtual bool closeConnection() override
Definition woss-db.cpp:105
virtual bool openConnection() override
Definition woss-db.cpp:89
std::unique_ptr< netCDF::NcFile > netcdf_db
Definition woss-db.h:208
Data behaviour class for storing calculated Pressure.
Definition woss-db.h:412
virtual ~WossResPressDb()=default
virtual std::unique_ptr< Pressure > getValue(const CoordZ &coord_tx, const CoordZ &coord_rx, const double frequency, const Time &time_value) const =0
virtual bool insertValue(const CoordZ &coord_tx, const CoordZ &coord_rx, const double frequency, const Time &time_value, const Pressure &pressure)=0
Data behaviour class for storing calculated TimeArr.
Definition woss-db.h:374
virtual std::unique_ptr< TimeArr > getValue(const CoordZ &coord_tx, const CoordZ &coord_rx, const double frequency, const Time &time_value) const =0
virtual bool insertValue(const CoordZ &coord_tx, const CoordZ &coord_rx, const double frequency, const Time &time_value, const TimeArr &channel)=0
virtual ~WossResTimeArrDb()=default
WossResTimeArrDb()=default
Data behaviour class for SSP database.
Definition woss-db.h:338
virtual ~WossSSPDb()=default
virtual bool insertValue(const Coord &coordinates, const Time &time_value, const SSP &ssp_value)=0
virtual std::unique_ptr< SSP > getValue(const Coord &coords, const Time &time, long double ssp_depth_precision) const =0
Data behaviour class for Sediment database.
Definition woss-db.h:296
virtual std::unique_ptr< Sediment > getValue(const CoordZ &coords) const =0
virtual std::unique_ptr< Sediment > getValue(const CoordZVector &coordz_vector) const =0
virtual bool insertValue(const Coord &coordinates, const Sediment &sediment_value)=0
virtual ~WossSedimentDb()=default
Textual implementation of WossDb.
Definition woss-db.h:224
virtual ~WossTextualDb() override
Definition woss-db.cpp:120
virtual bool openConnection() override
Definition woss-db.cpp:126
std::fstream textual_db
Definition woss-db.h:253
virtual bool closeConnection() override
Definition woss-db.cpp:131
Provides the interface for the woss::Coord and woss::CoordZ classes.
Generic functions and variables
Definition ac-toolbox-arr-asc-reader.h:44
std::vector< CoordZ > CoordZVector
Definition coordinates-definitions.h:58
double Bathymetry
Definition definitions.h:44
std::pair< std::string, std::string > PathName
Definition woss-db.h:66
Definitions and library for woss::Pressure class.
Definitions and library for woss::Sediment class.
Definitions and library for Sound Speed Profiles.
Definitions and library for woss::TimeArr class.