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

class for storing data of any acoustic toolbox SHD file More...

#include <ac-toolbox-shd-reader.h>

Collaboration diagram for woss::ShdData:
Collaboration graph

Public Member Functions

 ShdData ()=default
 
 ~ShdData ()=default
 
void initialize ()
 
int getPressureIndex (double tx_depth, double rx_depth, double rx_range, double theta=0.0) const
 
int getIndex (float value, float array[], int32_t array_size) const
 

Public Attributes

int32_t record_length = 0
 
std::unique_ptr< char[]> plot_type = nullptr
 
float frequency = 0.0
 
int32_t Ntheta = 0
 
std::unique_ptr< float[]> theta = nullptr
 
int32_t Nsd
 
std::unique_ptr< float[]> tx_depths = nullptr
 
int32_t Nrd = 0
 
std::unique_ptr< float[]> rx_depths = nullptr
 
int32_t Nrr = 0
 
std::unique_ptr< float[]> rx_ranges = nullptr
 
int32_t Nrx_per_range = 0
 
std::unique_ptr< std::complex< double >[] > press_values = nullptr
 

Detailed Description

class for storing data of any acoustic toolbox SHD file

class ShdData stores Pressure provided by any acoustic toolbox SHD file

Constructor & Destructor Documentation

◆ ShdData()

woss::ShdData::ShdData ( )
default

◆ ~ShdData()

woss::ShdData::~ShdData ( )
default

Member Function Documentation

◆ getIndex()

int ShdData::getIndex ( float  value,
float  array[],
int32_t  array_size 
) const

Returns the index of given array associated to given value

Parameters
valuetest value
arrayvalid pointer to an array
array_sizesize of passed array
Returns
valid array index value

Referenced by getPressureIndex().

◆ getPressureIndex()

int ShdData::getPressureIndex ( double  tx_depth,
double  rx_depth,
double  rx_range,
double  theta = 0.0 
) const

Returns the press_values index associated to given parameters

Parameters
tx_depthtransmitter depth [m]
rx_depthreceiver depth [m]
rx_rangereceiver range [m]
thetatheta value
Returns
valid press_values index value

References getIndex(), Nrr, Nrx_per_range, Nsd, Ntheta, rx_depths, rx_ranges, theta, and tx_depths.

Referenced by woss::ShdResReader::accessMap(), and woss::ShdResReader::readMapAvgPressure().

Here is the call graph for this function:

◆ initialize()

void woss::ShdData::initialize ( )
inline

Member Data Documentation

◆ frequency

float woss::ShdData::frequency = 0.0

Frequency value [Hz]

Referenced by woss::ShdResReader::getShdHeader(), and initialize().

◆ Nrd

int32_t woss::ShdData::Nrd = 0

Total number of receiver depths

Referenced by woss::ShdResReader::getShdFile(), woss::ShdResReader::getShdHeader(), and initialize().

◆ Nrr

int32_t woss::ShdData::Nrr = 0

◆ Nrx_per_range

int32_t woss::ShdData::Nrx_per_range = 0

◆ Nsd

int32_t woss::ShdData::Nsd

◆ Ntheta

int32_t woss::ShdData::Ntheta = 0

Total number of theta values. See Bellhop code for more info

Referenced by getPressureIndex(), woss::ShdResReader::getShdFile(), woss::ShdResReader::getShdHeader(), and initialize().

◆ plot_type

std::unique_ptr<char[]> woss::ShdData::plot_type = nullptr

Plot typename. See Bellhop code for more info

Referenced by woss::ShdResReader::getShdHeader(), and initialize().

◆ press_values

std::unique_ptr< std::complex<double>[] > woss::ShdData::press_values = nullptr

◆ record_length

int32_t woss::ShdData::record_length = 0

Record byte length of a binary SHD file. See Bellhop code for more info

Referenced by woss::ShdResReader::getShdFile(), woss::ShdResReader::getShdHeader(), and initialize().

◆ rx_depths

std::unique_ptr<float[]> woss::ShdData::rx_depths = nullptr

Pointer to an array of receiver depths [m]

Referenced by getPressureIndex(), woss::ShdResReader::getShdFile(), woss::ShdResReader::getShdHeader(), and initialize().

◆ rx_ranges

std::unique_ptr<float[]> woss::ShdData::rx_ranges = nullptr

Pointer to an array of receiver ranges [m]

Referenced by getPressureIndex(), woss::ShdResReader::getShdFile(), woss::ShdResReader::getShdHeader(), and initialize().

◆ theta

std::unique_ptr<float[]> woss::ShdData::theta = nullptr

Pointer to an array of theta values

Referenced by getPressureIndex(), woss::ShdResReader::getShdHeader(), and initialize().

◆ tx_depths

std::unique_ptr<float[]> woss::ShdData::tx_depths = nullptr

Pointer to an array of transmitter depths [m]

Referenced by getPressureIndex(), woss::ShdResReader::getShdFile(), woss::ShdResReader::getShdHeader(), and initialize().


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