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

Public Member Functions

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

Public Attributes

MessageIndex messageIndex
 The SegmentLeaderboardEntryMessage FIT message's messageIndex field.
 
QString name
 The SegmentLeaderboardEntryMessage FIT message's name field. More...
 
SegmentLeaderboardType type
 The SegmentLeaderboardEntryMessage FIT message's type field. More...
 
quint32 groupPrimaryKey
 The SegmentLeaderboardEntryMessage FIT message's groupPrimaryKey field. More...
 
quint32 activityId
 The SegmentLeaderboardEntryMessage FIT message's activityId field. More...
 
quint32 segmentTime
 The SegmentLeaderboardEntryMessage FIT message's segmentTime field. More...
 
QString activityIdString
 The SegmentLeaderboardEntryMessage FIT message's activityIdString 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 SegmentLeaderboardEntryMessagePrivate class provides private implementation for the SegmentLeaderboardEntryMessage.

See also
SegmentLeaderboardEntryMessage

Definition at line 38 of file segmentleaderboardentrymessage_p.h.

Constructor & Destructor Documentation

◆ SegmentLeaderboardEntryMessagePrivate()

SegmentLeaderboardEntryMessagePrivate::SegmentLeaderboardEntryMessagePrivate ( SegmentLeaderboardEntryMessage *const  q)
explicit

Constructs a SegmentLeaderboardEntryMessagePrivate object with public implementation q.

Parameters
qPointer to public implementaton.

Definition at line 248 of file segmentleaderboardentrymessage.cpp.

250  , messageIndex(static_cast<MessageIndex>(-1))
251  , type(static_cast<SegmentLeaderboardType>(-1))
252  , groupPrimaryKey(0xFFFFFFFF)
253  , activityId(0xFFFFFFFF)
254  , segmentTime(0xFFFFFFFF)
255 {
256  globalMessageNumber = MesgNum::SegmentLeaderboardEntry;
257 }
MesgNum globalMessageNumber
FIT Globla Message Number for this FIT Data Message.
MessageIndex messageIndex
The SegmentLeaderboardEntryMessage FIT message's messageIndex field.
quint32 activityId
The SegmentLeaderboardEntryMessage FIT message's activityId field.
quint32 groupPrimaryKey
The SegmentLeaderboardEntryMessage FIT message's groupPrimaryKey field.
quint32 segmentTime
The SegmentLeaderboardEntryMessage FIT message's segmentTime field.
SegmentLeaderboardType type
The SegmentLeaderboardEntryMessage FIT message's type field.
SegmentLeaderboardType
Garmin FIT SegmentLeaderboardType type.
Definition: types.h:2737
MessageIndex
Garmin FIT MessageIndex type.
Definition: types.h:263

References AbstractDataMessagePrivate::globalMessageNumber.

◆ ~SegmentLeaderboardEntryMessagePrivate()

SegmentLeaderboardEntryMessagePrivate::~SegmentLeaderboardEntryMessagePrivate ( )
virtual

Destroys the SegmentLeaderboardEntryMessagePrivate object.

Definition at line 264 of file segmentleaderboardentrymessage.cpp.

265 {
266 
267 }

Member Function Documentation

◆ setField()

bool SegmentLeaderboardEntryMessagePrivate::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 269 of file segmentleaderboardentrymessage.cpp.

271 {
272  switch (fieldId) {
273  case 254: // See Profile.xlsx::Messages:segment_leaderboard_entry.messageIndex
274  if (!verify(data, baseType, 2, FitBaseType::Uint16, "segment_leaderboard_entry.messageIndex")) return false;
275  this->messageIndex = static_cast<MessageIndex>(bigEndian ? qFromBigEndian<quint16>(data) : qFromLittleEndian<quint16>(data));
276  break;
277  case 0: // See Profile.xlsx::Messages:segment_leaderboard_entry.name
278  if (!verify(data, baseType, 1, FitBaseType::String, "segment_leaderboard_entry.name")) return false;
279  this->name = QString::fromUtf8(data);
280  break;
281  case 1: // See Profile.xlsx::Messages:segment_leaderboard_entry.type
282  if (!verify(data, baseType, 1, FitBaseType::Enum, "segment_leaderboard_entry.type")) return false;
283  this->type = static_cast<SegmentLeaderboardType>(data.at(0));
284  break;
285  case 2: // See Profile.xlsx::Messages:segment_leaderboard_entry.groupPrimaryKey
286  if (!verify(data, baseType, 4, FitBaseType::Uint32, "segment_leaderboard_entry.groupPrimaryKey")) return false;
287  this->groupPrimaryKey = static_cast<quint32>(bigEndian ? qFromBigEndian<quint32>(data) : qFromLittleEndian<quint32>(data));
288  break;
289  case 3: // See Profile.xlsx::Messages:segment_leaderboard_entry.activityId
290  if (!verify(data, baseType, 4, FitBaseType::Uint32, "segment_leaderboard_entry.activityId")) return false;
291  this->activityId = static_cast<quint32>(bigEndian ? qFromBigEndian<quint32>(data) : qFromLittleEndian<quint32>(data));
292  break;
293  case 4: // See Profile.xlsx::Messages:segment_leaderboard_entry.segmentTime
294  if (!verify(data, baseType, 4, FitBaseType::Uint32, "segment_leaderboard_entry.segmentTime")) return false;
295  this->segmentTime = static_cast<quint32>(bigEndian ? qFromBigEndian<quint32>(data) : qFromLittleEndian<quint32>(data));
296  break;
297  case 5: // See Profile.xlsx::Messages:segment_leaderboard_entry.activityIdString
298  if (!verify(data, baseType, 1, FitBaseType::String, "segment_leaderboard_entry.activityIdString")) return false;
299  this->activityIdString = QString::fromUtf8(data);
300  break;
301  default:
302  qWarning() << "ignoring unknown segment_leaderboard_entry message field number" << fieldId << bigEndian;
303  // Fall through to return true, as its still 'safe' to continue parsing data messages.
304  }
305  return true;
306 }
bool verify(const QByteArray &data, const FitBaseType actualType, const int expectedSize, const FitBaseType expectedType, const char *messageFieldName)
QString activityIdString
The SegmentLeaderboardEntryMessage FIT message's activityIdString field.
QString name
The SegmentLeaderboardEntryMessage FIT message's name field.

References AbstractDataMessagePrivate::verify().

Here is the call graph for this function:

Member Data Documentation

◆ activityId

quint32 SegmentLeaderboardEntryMessagePrivate::activityId

The SegmentLeaderboardEntryMessage FIT message's activityId field.

ID of the activity associated with this leader time

Definition at line 72 of file segmentleaderboardentrymessage_p.h.

◆ activityIdString

QString SegmentLeaderboardEntryMessagePrivate::activityIdString

The SegmentLeaderboardEntryMessage FIT message's activityIdString field.

String version of the activity_id. 21 characters long, express in decimal

Definition at line 86 of file segmentleaderboardentrymessage_p.h.

◆ groupPrimaryKey

quint32 SegmentLeaderboardEntryMessagePrivate::groupPrimaryKey

The SegmentLeaderboardEntryMessage FIT message's groupPrimaryKey field.

Primary user ID of this leader

Definition at line 65 of file segmentleaderboardentrymessage_p.h.

◆ name

QString SegmentLeaderboardEntryMessagePrivate::name

The SegmentLeaderboardEntryMessage FIT message's name field.

Friendly name assigned to leader

Definition at line 51 of file segmentleaderboardentrymessage_p.h.

◆ segmentTime

quint32 SegmentLeaderboardEntryMessagePrivate::segmentTime

The SegmentLeaderboardEntryMessage FIT message's segmentTime field.

Segment Time (includes pauses)

Definition at line 79 of file segmentleaderboardentrymessage_p.h.

◆ type

SegmentLeaderboardType SegmentLeaderboardEntryMessagePrivate::type

The SegmentLeaderboardEntryMessage FIT message's type field.

Leader classification

Definition at line 58 of file segmentleaderboardentrymessage_p.h.


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