QtFit  0.1
Internal library development documentation
All Classes Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
AviationAttitudeMessagePrivate Class Reference
Inheritance diagram for AviationAttitudeMessagePrivate:
[legend]
Collaboration diagram for AviationAttitudeMessagePrivate:
[legend]

Public Member Functions

 AviationAttitudeMessagePrivate (AviationAttitudeMessage *const q)
 
virtual ~AviationAttitudeMessagePrivate ()
 
- Public Member Functions inherited from AbstractDataMessagePrivate
 AbstractDataMessagePrivate (AbstractDataMessage *const q)
 
virtual ~AbstractDataMessagePrivate ()
 
bool setFields (const DataDefinition *const defn, const QByteArray &record)
 

Public Attributes

DateTime timestamp
 The AviationAttitudeMessage FIT message's timestamp field. More...
 
quint16 timestampMs
 The AviationAttitudeMessage FIT message's timestampMs field. More...
 
quint32 systemTime
 The AviationAttitudeMessage FIT message's systemTime field. More...
 
qint16 pitch
 The AviationAttitudeMessage FIT message's pitch field. More...
 
qint16 roll
 The AviationAttitudeMessage FIT message's roll field. More...
 
qint16 accelLateral
 The AviationAttitudeMessage FIT message's accelLateral field. More...
 
qint16 accelNormal
 The AviationAttitudeMessage FIT message's accelNormal field. More...
 
qint16 turnRate
 The AviationAttitudeMessage FIT message's turnRate field. More...
 
AttitudeStage stage
 The AviationAttitudeMessage FIT message's stage field.
 
quint8 attitudeStageComplete
 The AviationAttitudeMessage FIT message's attitudeStageComplete field. More...
 
quint16 track
 The AviationAttitudeMessage FIT message's track field. More...
 
AttitudeValidity validity
 The AviationAttitudeMessage FIT message's validity field.
 
- Public Attributes inherited from AbstractDataMessagePrivate
MesgNum globalMessageNumber
 FIT Globla Message Number for this FIT Data Message.
 

Protected Member Functions

bool setField (const int fieldId, const QByteArray &data, const FitBaseType baseType, const bool bigEndian) override
 
- Protected Member Functions inherited from AbstractDataMessagePrivate
bool verify (const QByteArray &data, const FitBaseType actualType, const int expectedSize, const FitBaseType expectedType, const char *messageFieldName)
 

Additional Inherited Members

- Protected Attributes inherited from AbstractDataMessagePrivate
AbstractDataMessage *const q_ptr
 Internal q-pointer.
 

Detailed Description

The AviationAttitudeMessagePrivate class provides private implementation for the AviationAttitudeMessage.

See also
AviationAttitudeMessage

Definition at line 38 of file aviationattitudemessage_p.h.

Constructor & Destructor Documentation

◆ AviationAttitudeMessagePrivate()

AviationAttitudeMessagePrivate::AviationAttitudeMessagePrivate ( AviationAttitudeMessage *const  q)
explicit

Constructs a AviationAttitudeMessagePrivate object with public implementation q.

Parameters
qPointer to public implementaton.

Definition at line 362 of file aviationattitudemessage.cpp.

364  , timestamp(static_cast<DateTime>(-1))
365  , timestampMs(0xFFFF)
366  , systemTime(0xFFFFFFFF)
367  , pitch(0x7FFF)
368  , roll(0x7FFF)
369  , accelLateral(0x7FFF)
370  , accelNormal(0x7FFF)
371  , turnRate(0x7FFF)
372  , stage(static_cast<AttitudeStage>(-1))
373  , attitudeStageComplete(0xFF)
374  , track(0xFFFF)
375  , validity(static_cast<AttitudeValidity>(-1))
376 {
377  globalMessageNumber = MesgNum::AviationAttitude;
378 }
MesgNum globalMessageNumber
FIT Globla Message Number for this FIT Data Message.
qint16 accelNormal
The AviationAttitudeMessage FIT message's accelNormal field.
quint16 track
The AviationAttitudeMessage FIT message's track field.
quint8 attitudeStageComplete
The AviationAttitudeMessage FIT message's attitudeStageComplete field.
qint16 roll
The AviationAttitudeMessage FIT message's roll field.
qint16 turnRate
The AviationAttitudeMessage FIT message's turnRate field.
quint16 timestampMs
The AviationAttitudeMessage FIT message's timestampMs field.
qint16 pitch
The AviationAttitudeMessage FIT message's pitch field.
DateTime timestamp
The AviationAttitudeMessage FIT message's timestamp field.
qint16 accelLateral
The AviationAttitudeMessage FIT message's accelLateral field.
AttitudeValidity validity
The AviationAttitudeMessage FIT message's validity field.
AttitudeStage stage
The AviationAttitudeMessage FIT message's stage field.
quint32 systemTime
The AviationAttitudeMessage FIT message's systemTime field.
AttitudeValidity
Garmin FIT AttitudeValidity type.
Definition: types.h:3036
AttitudeStage
Garmin FIT AttitudeStage type.
Definition: types.h:3020
DateTime
Seconds since UTC 00:00 Dec 31 1989.
Definition: types.h:237

References AbstractDataMessagePrivate::globalMessageNumber.

◆ ~AviationAttitudeMessagePrivate()

AviationAttitudeMessagePrivate::~AviationAttitudeMessagePrivate ( )
virtual

Destroys the AviationAttitudeMessagePrivate object.

Definition at line 385 of file aviationattitudemessage.cpp.

386 {
387 
388 }

Member Function Documentation

◆ setField()

bool AviationAttitudeMessagePrivate::setField ( const int  fieldId,
const QByteArray &  data,
const FitBaseType  baseType,
const bool  bigEndian 
)
overrideprotectedvirtual

Sets the value of the fieldId field.

Derived classes must implement this method to extract the baseType value from data, and assign the extracted value the fieldId field.

Parameters
fieldIdThe field number within the given FIT data message.
dataThe raw data to extract the field value from.
baseTypeThe FIT base type for the field.
bigEndianWhether or not multibyte values in record are big-endian.
Returns
true if the field was set, or safely ignored; false otherwise.

Implements AbstractDataMessagePrivate.

Definition at line 390 of file aviationattitudemessage.cpp.

392 {
393  switch (fieldId) {
394  case 253: // See Profile.xlsx::Messages:aviation_attitude.timestamp
395  if (!verify(data, baseType, 4, FitBaseType::Uint32, "aviation_attitude.timestamp")) return false;
396  this->timestamp = static_cast<DateTime>(bigEndian ? qFromBigEndian<quint32>(data) : qFromLittleEndian<quint32>(data));
397  break;
398  case 0: // See Profile.xlsx::Messages:aviation_attitude.timestampMs
399  if (!verify(data, baseType, 2, FitBaseType::Uint16, "aviation_attitude.timestampMs")) return false;
400  this->timestampMs = static_cast<quint16>(bigEndian ? qFromBigEndian<quint16>(data) : qFromLittleEndian<quint16>(data));
401  break;
402  case 1: // See Profile.xlsx::Messages:aviation_attitude.systemTime
403  if (!verify(data, baseType, 4, FitBaseType::Uint32, "aviation_attitude.systemTime")) return false;
404  this->systemTime = static_cast<quint32>(bigEndian ? qFromBigEndian<quint32>(data) : qFromLittleEndian<quint32>(data));
405  break;
406  case 2: // See Profile.xlsx::Messages:aviation_attitude.pitch
407  if (!verify(data, baseType, 2, FitBaseType::Sint16, "aviation_attitude.pitch")) return false;
408  this->pitch = static_cast<qint16>(bigEndian ? qFromBigEndian< qint16>(data) : qFromLittleEndian< qint16>(data));
409  break;
410  case 3: // See Profile.xlsx::Messages:aviation_attitude.roll
411  if (!verify(data, baseType, 2, FitBaseType::Sint16, "aviation_attitude.roll")) return false;
412  this->roll = static_cast<qint16>(bigEndian ? qFromBigEndian< qint16>(data) : qFromLittleEndian< qint16>(data));
413  break;
414  case 4: // See Profile.xlsx::Messages:aviation_attitude.accelLateral
415  if (!verify(data, baseType, 2, FitBaseType::Sint16, "aviation_attitude.accelLateral")) return false;
416  this->accelLateral = static_cast<qint16>(bigEndian ? qFromBigEndian< qint16>(data) : qFromLittleEndian< qint16>(data));
417  break;
418  case 5: // See Profile.xlsx::Messages:aviation_attitude.accelNormal
419  if (!verify(data, baseType, 2, FitBaseType::Sint16, "aviation_attitude.accelNormal")) return false;
420  this->accelNormal = static_cast<qint16>(bigEndian ? qFromBigEndian< qint16>(data) : qFromLittleEndian< qint16>(data));
421  break;
422  case 6: // See Profile.xlsx::Messages:aviation_attitude.turnRate
423  if (!verify(data, baseType, 2, FitBaseType::Sint16, "aviation_attitude.turnRate")) return false;
424  this->turnRate = static_cast<qint16>(bigEndian ? qFromBigEndian< qint16>(data) : qFromLittleEndian< qint16>(data));
425  break;
426  case 7: // See Profile.xlsx::Messages:aviation_attitude.stage
427  if (!verify(data, baseType, 1, FitBaseType::Enum, "aviation_attitude.stage")) return false;
428  this->stage = static_cast<AttitudeStage>(data.at(0));
429  break;
430  case 8: // See Profile.xlsx::Messages:aviation_attitude.attitudeStageComplete
431  if (!verify(data, baseType, 1, FitBaseType::Uint8, "aviation_attitude.attitudeStageComplete")) return false;
432  this->attitudeStageComplete = static_cast<quint8>(data.at(0));
433  break;
434  case 9: // See Profile.xlsx::Messages:aviation_attitude.track
435  if (!verify(data, baseType, 2, FitBaseType::Uint16, "aviation_attitude.track")) return false;
436  this->track = static_cast<quint16>(bigEndian ? qFromBigEndian<quint16>(data) : qFromLittleEndian<quint16>(data));
437  break;
438  case 10: // See Profile.xlsx::Messages:aviation_attitude.validity
439  if (!verify(data, baseType, 2, FitBaseType::Uint16, "aviation_attitude.validity")) return false;
440  this->validity = static_cast<AttitudeValidity>(bigEndian ? qFromBigEndian<quint16>(data) : qFromLittleEndian<quint16>(data));
441  break;
442  default:
443  qWarning() << "ignoring unknown aviation_attitude message field number" << fieldId << bigEndian;
444  // Fall through to return true, as its still 'safe' to continue parsing data messages.
445  }
446  return true;
447 }
bool verify(const QByteArray &data, const FitBaseType actualType, const int expectedSize, const FitBaseType expectedType, const char *messageFieldName)

References AbstractDataMessagePrivate::verify().

Here is the call graph for this function:

Member Data Documentation

◆ accelLateral

qint16 AviationAttitudeMessagePrivate::accelLateral

The AviationAttitudeMessage FIT message's accelLateral field.

Range -78.4 to +78.4 (-8 Gs to 8 Gs)

Definition at line 81 of file aviationattitudemessage_p.h.

◆ accelNormal

qint16 AviationAttitudeMessagePrivate::accelNormal

The AviationAttitudeMessage FIT message's accelNormal field.

Range -78.4 to +78.4 (-8 Gs to 8 Gs)

Definition at line 88 of file aviationattitudemessage_p.h.

◆ attitudeStageComplete

quint8 AviationAttitudeMessagePrivate::attitudeStageComplete

The AviationAttitudeMessage FIT message's attitudeStageComplete field.

The percent complete of the current attitude stage. Set to 0 for attitude stages 0, 1 and 2 and to 100 for attitude stage 3 by AHRS modules that do not support it. Range - 100

Definition at line 108 of file aviationattitudemessage_p.h.

◆ pitch

qint16 AviationAttitudeMessagePrivate::pitch

The AviationAttitudeMessage FIT message's pitch field.

Range -PI/2 to +PI/2

Definition at line 67 of file aviationattitudemessage_p.h.

◆ roll

qint16 AviationAttitudeMessagePrivate::roll

The AviationAttitudeMessage FIT message's roll field.

Range -PI to +PI

Definition at line 74 of file aviationattitudemessage_p.h.

◆ systemTime

quint32 AviationAttitudeMessagePrivate::systemTime

The AviationAttitudeMessage FIT message's systemTime field.

System time associated with sample expressed in ms.

Definition at line 60 of file aviationattitudemessage_p.h.

◆ timestamp

DateTime AviationAttitudeMessagePrivate::timestamp

The AviationAttitudeMessage FIT message's timestamp field.

Timestamp message was output

Definition at line 46 of file aviationattitudemessage_p.h.

◆ timestampMs

quint16 AviationAttitudeMessagePrivate::timestampMs

The AviationAttitudeMessage FIT message's timestampMs field.

Fractional part of timestamp, added to timestamp

Definition at line 53 of file aviationattitudemessage_p.h.

◆ track

quint16 AviationAttitudeMessagePrivate::track

The AviationAttitudeMessage FIT message's track field.

Track Angle/Heading Range 0 - 2pi

Definition at line 115 of file aviationattitudemessage_p.h.

◆ turnRate

qint16 AviationAttitudeMessagePrivate::turnRate

The AviationAttitudeMessage FIT message's turnRate field.

Range -8.727 to +8.727 (-500 degs/sec to +500 degs/sec)

Definition at line 95 of file aviationattitudemessage_p.h.


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