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

Public Member Functions

 EventMessagePrivate (EventMessage *const q)
 
virtual ~EventMessagePrivate ()
 
- 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 EventMessage FIT message's timestamp field.
 
Event event
 The EventMessage FIT message's event field.
 
EventType eventType
 The EventMessage FIT message's eventType field.
 
quint16 data16
 The EventMessage FIT message's data16 field.
 
quint32 data
 The EventMessage FIT message's data field.
 
quint8 eventGroup
 The EventMessage FIT message's eventGroup field.
 
quint16 score
 The EventMessage FIT message's score field. More...
 
quint16 opponentScore
 The EventMessage FIT message's opponentScore field. More...
 
quint8z frontGearNum
 The EventMessage FIT message's frontGearNum field. More...
 
quint8z frontGear
 The EventMessage FIT message's frontGear field. More...
 
quint8z rearGearNum
 The EventMessage FIT message's rearGearNum field. More...
 
quint8z rearGear
 The EventMessage FIT message's rearGear field. More...
 
DeviceIndex deviceIndex
 The EventMessage FIT message's deviceIndex field.
 
RadarThreatLevelType radarThreatLevelMax
 The EventMessage FIT message's radarThreatLevelMax field. More...
 
quint8 radarThreatCount
 The EventMessage FIT message's radarThreatCount field. More...
 
- 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 EventMessagePrivate class provides private implementation for the EventMessage.

See also
EventMessage

Definition at line 38 of file eventmessage_p.h.

Constructor & Destructor Documentation

◆ EventMessagePrivate()

EventMessagePrivate::EventMessagePrivate ( EventMessage *const  q)
explicit

Constructs a EventMessagePrivate object with public implementation q.

Parameters
qPointer to public implementaton.

Definition at line 424 of file eventmessage.cpp.

426  , timestamp(static_cast<DateTime>(-1))
427  , event(static_cast<Event>(-1))
428  , eventType(static_cast<EventType>(-1))
429  , data16(0xFFFF)
430  , data(0xFFFFFFFF)
431  , eventGroup(0xFF)
432  , score(0xFFFF)
433  , opponentScore(0xFFFF)
434  , frontGearNum(static_cast<quint8z>(-1))
435  , frontGear(static_cast<quint8z>(-1))
436  , rearGearNum(static_cast<quint8z>(-1))
437  , rearGear(static_cast<quint8z>(-1))
438  , deviceIndex(static_cast<DeviceIndex>(-1))
439  , radarThreatLevelMax(static_cast<RadarThreatLevelType>(-1))
440  , radarThreatCount(0xFF)
441 {
442  globalMessageNumber = MesgNum::Event;
443 }
MesgNum globalMessageNumber
FIT Globla Message Number for this FIT Data Message.
DateTime timestamp
The EventMessage FIT message's timestamp field.
Event event
The EventMessage FIT message's event field.
quint8z frontGearNum
The EventMessage FIT message's frontGearNum field.
quint8 radarThreatCount
The EventMessage FIT message's radarThreatCount field.
EventType eventType
The EventMessage FIT message's eventType field.
RadarThreatLevelType radarThreatLevelMax
The EventMessage FIT message's radarThreatLevelMax field.
quint8z rearGearNum
The EventMessage FIT message's rearGearNum field.
quint16 score
The EventMessage FIT message's score field.
quint8z frontGear
The EventMessage FIT message's frontGear field.
quint8 eventGroup
The EventMessage FIT message's eventGroup field.
quint16 opponentScore
The EventMessage FIT message's opponentScore field.
quint32 data
The EventMessage FIT message's data field.
quint8z rearGear
The EventMessage FIT message's rearGear field.
quint16 data16
The EventMessage FIT message's data16 field.
DeviceIndex deviceIndex
The EventMessage FIT message's deviceIndex field.
EventType
Garmin FIT EventType type.
Definition: types.h:1182
RadarThreatLevelType
Garmin FIT RadarThreatLevelType type.
Definition: types.h:5307
DeviceIndex
Garmin FIT DeviceIndex type.
Definition: types.h:278
Event
Garmin FIT Event type.
Definition: types.h:1133
QTFIT_BEGIN_NAMESPACE typedef quint8 quint8z
8-bit unsigned integer, with 0-is-invalid semantics.
Definition: types.h:45
DateTime
Seconds since UTC 00:00 Dec 31 1989.
Definition: types.h:237

References AbstractDataMessagePrivate::globalMessageNumber.

◆ ~EventMessagePrivate()

EventMessagePrivate::~EventMessagePrivate ( )
virtual

Destroys the EventMessagePrivate object.

Definition at line 450 of file eventmessage.cpp.

451 {
452 
453 }

Member Function Documentation

◆ setField()

bool EventMessagePrivate::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 455 of file eventmessage.cpp.

457 {
458  switch (fieldId) {
459  case 253: // See Profile.xlsx::Messages:event.timestamp
460  if (!verify(data, baseType, 4, FitBaseType::Uint32, "event.timestamp")) return false;
461  this->timestamp = static_cast<DateTime>(bigEndian ? qFromBigEndian<quint32>(data) : qFromLittleEndian<quint32>(data));
462  break;
463  case 0: // See Profile.xlsx::Messages:event.event
464  if (!verify(data, baseType, 1, FitBaseType::Enum, "event.event")) return false;
465  this->event = static_cast<Event>(data.at(0));
466  break;
467  case 1: // See Profile.xlsx::Messages:event.eventType
468  if (!verify(data, baseType, 1, FitBaseType::Enum, "event.eventType")) return false;
469  this->eventType = static_cast<EventType>(data.at(0));
470  break;
471  case 2: // See Profile.xlsx::Messages:event.data16
472  if (!verify(data, baseType, 2, FitBaseType::Uint16, "event.data16")) return false;
473  this->data16 = static_cast<quint16>(bigEndian ? qFromBigEndian<quint16>(data) : qFromLittleEndian<quint16>(data));
474  break;
475  case 3: // See Profile.xlsx::Messages:event.data
476  if (!verify(data, baseType, 4, FitBaseType::Uint32, "event.data")) return false;
477  this->data = static_cast<quint32>(bigEndian ? qFromBigEndian<quint32>(data) : qFromLittleEndian<quint32>(data));
478  break;
479  case 4: // See Profile.xlsx::Messages:event.eventGroup
480  if (!verify(data, baseType, 1, FitBaseType::Uint8, "event.eventGroup")) return false;
481  this->eventGroup = static_cast<quint8>(data.at(0));
482  break;
483  case 7: // See Profile.xlsx::Messages:event.score
484  if (!verify(data, baseType, 2, FitBaseType::Uint16, "event.score")) return false;
485  this->score = static_cast<quint16>(bigEndian ? qFromBigEndian<quint16>(data) : qFromLittleEndian<quint16>(data));
486  break;
487  case 8: // See Profile.xlsx::Messages:event.opponentScore
488  if (!verify(data, baseType, 2, FitBaseType::Uint16, "event.opponentScore")) return false;
489  this->opponentScore = static_cast<quint16>(bigEndian ? qFromBigEndian<quint16>(data) : qFromLittleEndian<quint16>(data));
490  break;
491  case 9: // See Profile.xlsx::Messages:event.frontGearNum
492  if (!verify(data, baseType, 1, FitBaseType::Uint8z, "event.frontGearNum")) return false;
493  this->frontGearNum = static_cast<quint8z>(data.at(0));
494  break;
495  case 10: // See Profile.xlsx::Messages:event.frontGear
496  if (!verify(data, baseType, 1, FitBaseType::Uint8z, "event.frontGear")) return false;
497  this->frontGear = static_cast<quint8z>(data.at(0));
498  break;
499  case 11: // See Profile.xlsx::Messages:event.rearGearNum
500  if (!verify(data, baseType, 1, FitBaseType::Uint8z, "event.rearGearNum")) return false;
501  this->rearGearNum = static_cast<quint8z>(data.at(0));
502  break;
503  case 12: // See Profile.xlsx::Messages:event.rearGear
504  if (!verify(data, baseType, 1, FitBaseType::Uint8z, "event.rearGear")) return false;
505  this->rearGear = static_cast<quint8z>(data.at(0));
506  break;
507  case 13: // See Profile.xlsx::Messages:event.deviceIndex
508  if (!verify(data, baseType, 1, FitBaseType::Uint8, "event.deviceIndex")) return false;
509  this->deviceIndex = static_cast<DeviceIndex>(data.at(0));
510  break;
511  case 21: // See Profile.xlsx::Messages:event.radarThreatLevelMax
512  if (!verify(data, baseType, 1, FitBaseType::Enum, "event.radarThreatLevelMax")) return false;
513  this->radarThreatLevelMax = static_cast<RadarThreatLevelType>(data.at(0));
514  break;
515  case 22: // See Profile.xlsx::Messages:event.radarThreatCount
516  if (!verify(data, baseType, 1, FitBaseType::Uint8, "event.radarThreatCount")) return false;
517  this->radarThreatCount = static_cast<quint8>(data.at(0));
518  break;
519  default:
520  qWarning() << "ignoring unknown event message field number" << fieldId << bigEndian;
521  // Fall through to return true, as its still 'safe' to continue parsing data messages.
522  }
523  return true;
524 }
bool verify(const QByteArray &data, const FitBaseType actualType, const int expectedSize, const FitBaseType expectedType, const char *messageFieldName)

References data, and AbstractDataMessagePrivate::verify().

Here is the call graph for this function:

Member Data Documentation

◆ frontGear

quint8z EventMessagePrivate::frontGear

The EventMessage FIT message's frontGear field.

Do not populate directly. Autogenerated by decoder for gear_change subfield components. Number of front teeth.

Definition at line 99 of file eventmessage_p.h.

◆ frontGearNum

quint8z EventMessagePrivate::frontGearNum

The EventMessage FIT message's frontGearNum field.

Do not populate directly. Autogenerated by decoder for gear_change subfield components. Front gear number. 1 is innermost.

Definition at line 91 of file eventmessage_p.h.

◆ opponentScore

quint16 EventMessagePrivate::opponentScore

The EventMessage FIT message's opponentScore field.

Do not populate directly. Autogenerated by decoder for sport_point subfield components

Definition at line 83 of file eventmessage_p.h.

◆ radarThreatCount

quint8 EventMessagePrivate::radarThreatCount

The EventMessage FIT message's radarThreatCount field.

Do not populate directly. Autogenerated by decoder for threat_alert subfield components.

Definition at line 134 of file eventmessage_p.h.

◆ radarThreatLevelMax

RadarThreatLevelType EventMessagePrivate::radarThreatLevelMax

The EventMessage FIT message's radarThreatLevelMax field.

Do not populate directly. Autogenerated by decoder for threat_alert subfield components.

Definition at line 127 of file eventmessage_p.h.

◆ rearGear

quint8z EventMessagePrivate::rearGear

The EventMessage FIT message's rearGear field.

Do not populate directly. Autogenerated by decoder for gear_change subfield components. Number of rear teeth.

Definition at line 115 of file eventmessage_p.h.

◆ rearGearNum

quint8z EventMessagePrivate::rearGearNum

The EventMessage FIT message's rearGearNum field.

Do not populate directly. Autogenerated by decoder for gear_change subfield components. Rear gear number. 1 is innermost.

Definition at line 107 of file eventmessage_p.h.

◆ score

quint16 EventMessagePrivate::score

The EventMessage FIT message's score field.

Do not populate directly. Autogenerated by decoder for sport_point subfield components

Definition at line 76 of file eventmessage_p.h.


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