World Ocean Simulation System (WOSS) library
WossMPhyBpsk Class Reference

BPSK modulation class with woss::Transducer power control. More...

#include <uw-woss-bpsk.h>

Inheritance diagram for WossMPhyBpsk:
Inheritance graph
Collaboration diagram for WossMPhyBpsk:
Collaboration graph

Public Member Functions

 WossMPhyBpsk ()=default
virtual ~WossMPhyBpsk () override=default
Public Member Functions inherited from UwMPhyBpskTransducer
 UwMPhyBpskTransducer ()=default
virtual ~UwMPhyBpskTransducer () override=default
virtual int command (int argc, const char *const *argv) override

Protected Member Functions

virtual double getTxPower (Packet *p) override
Protected Member Functions inherited from UwMPhyBpskTransducer
virtual double consumedEnergyTx (double Ptx, double duration) override
virtual std::shared_ptr< woss::TransducergetTransducer (double frequency) const

Additional Inherited Members

Protected Types inherited from UwMPhyBpskTransducer
using FreqTransducerMap = std::map< std::pair< double, double >, std::shared_ptr<woss::Transducer> >
using FTMIter = FreqTransducerMap::iterator
using FTMCIter = FreqTransducerMap::const_iterator
using FTMRIter = FreqTransducerMap::reverse_iterator
using FTMRCIter = FreqTransducerMap::const_reverse_iterator
Protected Attributes inherited from UwMPhyBpskTransducer
FreqTransducerMap freq_transd_map

Detailed Description

BPSK modulation class with woss::Transducer power control.

WossMPhyBpsk extends UwMPhyBpskTransducer replacing old tx power control based on distance.

Constructor & Destructor Documentation

◆ WossMPhyBpsk()

WossMPhyBpsk::WossMPhyBpsk ( )
default

◆ ~WossMPhyBpsk()

virtual WossMPhyBpsk::~WossMPhyBpsk ( )
overridevirtualdefault

Member Function Documentation

◆ getTxPower()

double WossMPhyBpsk::getTxPower ( Packet * p)
overrideprotectedvirtual

It sends a synchronous cross-layer message asking for the current channel estimation. Upon valid answer it provides optimal power calculations.

Parameters
ppointer to the current Packet being processed
Returns
Tx power in uPa

References woss::DefHandler::createPressure(), ClMsgChannelEstimation::getTimeArr(), UwMPhyBpskTransducer::getTransducer(), and woss::Singleton< DefHandler >::instance().

Here is the call graph for this function:

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