DUNE: Uniform Navigational Environment
2019.02.0
|
Data logger base frame for Imagenex files.
Public Types | |
enum | HeaderIndices { HDR_IDX_TBYTES_HI, HDR_IDX_TBYTES_LO, HDR_IDX_DATE, HDR_IDX_TIME, HDR_IDX_TIME_HSEC } |
enum | FooterIndices { FTR_IDX_TYPE, FTR_IDX_PITCH, FTR_IDX_ROLL, FTR_IDX_HEADING, FTR_IDX_AZIMUTH_UP } |
Public Member Functions | |
Frame (void) | |
virtual | ~Frame (void) |
uint8_t * | getData (void) |
virtual uint8_t * | getMessageData (void) |
virtual uint8_t * | getFooterData (void) |
virtual size_t | getSize (void) const |
virtual size_t | getMessageSize (void) const |
virtual size_t | getFooterSize (void) const |
virtual void | setRange (uint8_t range) |
void | setProfileTiltAngle (float angle) |
void | setSoundVelocity (float speed) |
void | setSpeed (float speed) |
void | setCourse (float course) |
void | setRoll (float roll) |
void | setPitch (float pitch) |
void | setHeading (float heading) |
void | setRepRate (uint16_t rate) |
void | setGpsData (double lat, double lon) |
void | setDateTime (uint64_t now) |
virtual void | setExtendedDataPoints (bool mode) |
Protected Member Functions | |
void | setFrequency (void) |
virtual unsigned | getIndexRange (void)=0 |
virtual unsigned | getIndexTiltAngle (void)=0 |
virtual unsigned | getIndexLatitude (void)=0 |
virtual unsigned | getIndexLongitude (void)=0 |
virtual unsigned | getIndexSpeed (void)=0 |
virtual unsigned | getIndexSoundSpeed (void)=0 |
virtual unsigned | getIndexCourse (void)=0 |
virtual unsigned | getIndexMilli (void)=0 |
virtual unsigned | getIndexRoll (void)=0 |
virtual unsigned | getIndexPitch (void)=0 |
virtual unsigned | getIndexHeading (void)=0 |
virtual unsigned | getIndexRepRate (void)=0 |
virtual unsigned | getIndexFrequency (void)=0 |
Protected Attributes | |
std::vector< uint8_t > | m_data |
|
inline |
Constructor.
|
inlinevirtual |
Destructor.
|
inline |
Get frame start address.
References m_data.
Referenced by Sensors::Imagenex837B::Task::getEcho(), setCourse(), setHeading(), setPitch(), setProfileTiltAngle(), setRepRate(), setRoll(), setSoundVelocity(), and Sensors::Imagenex837B::Task::writeToFile().
|
inlinevirtual |
Get footer start address.
Reimplemented in Sensors::Imagenex837B::Frame837.
Referenced by setHeading(), setPitch(), and setRoll().
|
inlinevirtual |
|
protectedpure virtual |
Get course index.
Implemented in Sensors::Imagenex837B::Frame837, and Sensors::Imagenex837B::Frame83P.
Referenced by setCourse().
|
protectedpure virtual |
Get frequency index.
Implemented in Sensors::Imagenex837B::Frame837, and Sensors::Imagenex837B::Frame83P.
Referenced by setFrequency().
|
protectedpure virtual |
Get heading index.
Implemented in Sensors::Imagenex837B::Frame837, and Sensors::Imagenex837B::Frame83P.
Referenced by setHeading().
|
protectedpure virtual |
Get latitude index.
Implemented in Sensors::Imagenex837B::Frame837, and Sensors::Imagenex837B::Frame83P.
Referenced by setGpsData().
|
protectedpure virtual |
Get longitude index.
Implemented in Sensors::Imagenex837B::Frame837, and Sensors::Imagenex837B::Frame83P.
Referenced by setGpsData().
|
protectedpure virtual |
Get milliseconds index.
Implemented in Sensors::Imagenex837B::Frame837, and Sensors::Imagenex837B::Frame83P.
Referenced by setDateTime().
|
protectedpure virtual |
Get pitch index.
Implemented in Sensors::Imagenex837B::Frame837, and Sensors::Imagenex837B::Frame83P.
Referenced by setPitch().
|
protectedpure virtual |
Get range index.
Implemented in Sensors::Imagenex837B::Frame837, and Sensors::Imagenex837B::Frame83P.
Referenced by setRange().
|
protectedpure virtual |
Get repetition rate index.
Implemented in Sensors::Imagenex837B::Frame837, and Sensors::Imagenex837B::Frame83P.
Referenced by setRepRate().
|
protectedpure virtual |
Get roll index.
Implemented in Sensors::Imagenex837B::Frame837, and Sensors::Imagenex837B::Frame83P.
Referenced by setRoll().
|
protectedpure virtual |
Get speed index.
Implemented in Sensors::Imagenex837B::Frame837, and Sensors::Imagenex837B::Frame83P.
Referenced by setSoundVelocity().
|
protectedpure virtual |
Get speed index.
Implemented in Sensors::Imagenex837B::Frame837, and Sensors::Imagenex837B::Frame83P.
Referenced by setSpeed().
|
protectedpure virtual |
Get tilt angle index.
Implemented in Sensors::Imagenex837B::Frame837, and Sensors::Imagenex837B::Frame83P.
Referenced by setProfileTiltAngle().
|
inlinevirtual |
Get data start address.
Reimplemented in Sensors::Imagenex837B::Frame83P, and Sensors::Imagenex837B::Frame837.
|
inlinevirtual |
Retrieve message size.
Reimplemented in Sensors::Imagenex837B::Frame83P, and Sensors::Imagenex837B::Frame837.
|
inlinevirtual |
Retrieve the size of the frame.
Reimplemented in Sensors::Imagenex837B::Frame837, and Sensors::Imagenex837B::Frame83P.
|
inline |
Set GNSS ships course.
[in] | course | course. |
References getData(), and getIndexCourse().
Referenced by Sensors::Imagenex837B::Task::update().
|
inline |
Set frame date and time.
[in] | now | millisecond since epoch. |
References getIndexMilli(), HDR_IDX_DATE, HDR_IDX_TIME, HDR_IDX_TIME_HSEC, and m_data.
Referenced by Sensors::Imagenex837B::Task::writeToFile().
|
inlinevirtual |
Change mode according with data points.
Reimplemented in Sensors::Imagenex837B::Frame837.
|
inlineprotected |
References getIndexFrequency(), and m_data.
|
inline |
Define frame GPS data.
[in] | lat | latitude. |
[in] | lon | longitude. |
References DUNE::Math::Angles::degrees(), getIndexLatitude(), getIndexLongitude(), m_data, and DUNE::Math::min().
Referenced by Sensors::Imagenex837B::Task::update().
|
inline |
Set heading.
[in] | heading | heading angle. |
References FTR_IDX_HEADING, getData(), getFooterData(), and getIndexHeading().
Referenced by Sensors::Imagenex837B::Task::update().
|
inline |
Set pitch.
[in] | pitch | pitch angle. |
References FTR_IDX_PITCH, getData(), getFooterData(), and getIndexPitch().
Referenced by Sensors::Imagenex837B::Task::update().
|
inline |
Set profile tilt angle.
[in] | angle | profile tilt angle. |
References getData(), getIndexTiltAngle(), and m_data.
Referenced by Sensors::Imagenex837B::Task::onUpdateParameters().
|
inlinevirtual |
Set sonar range.
[in] | range | range. |
References getIndexRange(), and m_data.
Referenced by Sensors::Imagenex837B::Task::setRange().
|
inline |
Set repetition rate.
[in] | rate | repetition rate. |
References getData(), and getIndexRepRate().
Referenced by Sensors::Imagenex837B::Frame837::setRepRate().
|
inline |
Set roll.
[in] | roll | roll angle. |
References FTR_IDX_ROLL, getData(), getFooterData(), and getIndexRoll().
Referenced by Sensors::Imagenex837B::Task::update().
|
inline |
Set sound velocity.
[in] | speed | sound velocity. |
References getData(), and getIndexSoundSpeed().
Referenced by Sensors::Imagenex837B::Task::consume().
|
inline |
Set GNSS ships speed.
[in] | speed | speed. |
References getIndexSpeed(), and m_data.
Referenced by Sensors::Imagenex837B::Task::update().
|
protected |
Message data.
Referenced by Sensors::Imagenex837B::Frame837::Frame837(), Sensors::Imagenex837B::Frame83P::Frame83P(), getData(), Sensors::Imagenex837B::Frame837::getFooterData(), Sensors::Imagenex837B::Frame837::getMessageData(), Sensors::Imagenex837B::Frame83P::getMessageData(), Sensors::Imagenex837B::Frame83P::getRange(), Sensors::Imagenex837B::Frame837::setBytesToRead(), setDateTime(), Sensors::Imagenex837B::Frame837::setDisplayGain(), Sensors::Imagenex837B::Frame837::setDisplayMode(), Sensors::Imagenex837B::Frame837::setFirmwareVersion(), setFrequency(), setGpsData(), setProfileTiltAngle(), Sensors::Imagenex837B::Frame837::setPulseLength(), setRange(), Sensors::Imagenex837B::Frame837::setSerialStatus(), setSpeed(), Sensors::Imagenex837B::Frame837::setStartGain(), and Sensors::Imagenex837B::Frame837::setTotalBytes().