|
DESERT 4.0.0
|
#include <uwsc-tracker-follower-module.h>
Public Member Functions | |
| UwSCFTrackerModule () | |
| virtual | ~UwSCFTrackerModule ()=default |
| virtual int | command (int argc, const char *const *argv) override |
| virtual void | initPkt (Packet *p) override |
Public Member Functions inherited from UwTrackerModule | |
| UwTrackerModule () | |
| UwTrackerModule (UWSMPosition *p) | |
| virtual | ~UwTrackerModule () |
Public Member Functions inherited from UwCbrModule | |
| UwCbrModule () | |
| virtual | ~UwCbrModule ()=default |
| virtual void | recv (Packet *) override |
| virtual void | recv (Packet *p, Handler *h) override |
| virtual double | GetRTT () const |
| virtual double | GetFTT () const |
| virtual double | GetTxTime () const |
| virtual double | GetPER () const |
| virtual double | GetTHR () const |
| virtual double | GetRTTstd () const |
| virtual double | GetFTTstd () const |
| virtual void | resetStats () |
| void | printIdsPkts () const |
Protected Types | |
| enum class | FollowerState { TRACK , DETECT , DEMINE , IDLE } |
Protected Member Functions | |
| void | sendPkt () |
| void | updateMineRemove () |
| UWSMPosition * | updateTrackPosition () |
| virtual void | start () override |
| virtual void | stop () override |
Protected Member Functions inherited from UwTrackerModule | |
| virtual void | printReceivedPacket (Packet *p) |
| void | sendPkt () |
| void | updateTrackMeasure () |
Protected Member Functions inherited from UwCbrModule | |
| virtual void | sendPktLowPriority () |
| virtual void | sendPktHighPriority () |
| virtual void | transmit () |
| virtual void | updateRTT (const double &) |
| virtual void | updateFTT (const double &) |
| virtual void | updateThroughput (const int &, const double &) |
| virtual void | incrPktLost (const int &) |
| virtual void | incrPktRecv () |
| virtual void | incrPktOoseq () |
| virtual void | incrPktInvalid () |
| virtual double | getTimeBeforeNextPkt () |
Friends | |
| class | UwUpdateMineStatus |
Additional Inherited Members | |
Static Protected Member Functions inherited from UwCbrModule | |
| static int | getCbrHeaderSize () |
Static Protected Attributes inherited from UwCbrModule | |
| static int | uidcnt_ = 0 |
UwSCFTrackerModule class is used to track mines via sonar and share tracking information via packets. After a given time a mine is detected, this module provides to remove it.
|
strongprotected |
| UwSCFTrackerModule::UwSCFTrackerModule | ( | ) |
Default Constructor of UwSCFTrackerModule class.
References demine_period.
|
virtualdefault |
Destructor of UwSCFTrackerModule class.
|
overridevirtual |
TCL command interpreter. It implements the following OTcl methods:
| argc | Number of arguments in argv. |
| argv | Array of strings which are the command parameters (Note that argv[0] is the name of the object). |
Reimplemented from UwTrackerModule.
References UwTrackerModule::command(), mine_positions, and UwTrackerModule::track_position.
|
overridevirtual |
Initializes a monitoring data packet passed as argument with the default values.
| Packet* | Pointer to a packet already allocated to fill with the right values. |
Reimplemented from UwTrackerModule.
References UwTrackerModule::initPkt(), mine_measure, UwTrackerModule::track_measure, hdr_uwSCFTracker::x(), hdr_uwTracker::x(), hdr_uwSCFTracker::y(), hdr_uwTracker::y(), hdr_uwSCFTracker::z(), and hdr_uwTracker::z().
|
protectedvirtual |
Allocates, initialize and sends a packet with the default priority flag set from tcl.
Reimplemented from UwCbrModule.
References auv_state, DEMINE, DETECT, IDLE, mine_measure, mine_positions, hdr_uwSCFTracker::mine_remove(), mine_timer, UwTrackerModule::sendPkt(), UwTrackerModule::track_measure, UwTrackerModule::track_position, UwTrackerModule::tracking_period, hdr_uwTracker::x(), hdr_uwTracker::y(), and hdr_uwTracker::z().
|
overrideprotectedvirtual |
Start to send packets.
Reimplemented from UwTrackerModule.
References auv_position, mine_timer, UWSMPosition::setX(), UwTrackerModule::start(), and UwTrackerModule::tracking_period.
|
overrideprotectedvirtual |
Stop to send packets.
Reimplemented from UwTrackerModule.
References mine_timer, and UwTrackerModule::stop().
|
protected |
Update the mine measure
References auv_position, auv_state, UwCbrModule::debug_, DEMINE, demine_period, DETECT, IDLE, UwTrackerModule::measure_timer, mine_measure, hdr_uwSCFTracker::mine_remove(), mine_timer, UwCbrModule::sendTmr_, TRACK, UwTrackerModule::track_measure, UwTrackerModule::track_position, UwTrackerModule::tracking_period, updateTrackPosition(), hdr_uwTracker::x(), hdr_uwTracker::y(), and hdr_uwTracker::z().
|
protected |
Update the current track position with the nearest mine position
References auv_position, UwCbrModule::debug_, UWSMPosition::getX(), UWSMPosition::getY(), UWSMPosition::getZ(), mine_measure, mine_positions, hdr_uwSCFTracker::timestamp(), and UwTrackerModule::track_position.
Referenced by updateMineRemove().
|
friend |
|
protected |
Current position of the follower.
Referenced by start(), updateMineRemove(), and updateTrackPosition().
|
protected |
Current state of the follower.
Referenced by sendPkt(), and updateMineRemove().
|
protected |
Timer to schedule packets transmission.
Referenced by updateMineRemove(), and UwSCFTrackerModule().
|
protected |
Detected mine packets.
Referenced by initPkt(), sendPkt(), updateMineRemove(), and updateTrackPosition().
|
protected |
Positions of the mines in the area.
Referenced by command(), sendPkt(), and updateTrackPosition().
|
protected |
Timer to schedule detecting measurements
Referenced by sendPkt(), start(), stop(), and updateMineRemove().