QtFit  0.1
Internal library development documentation
All Classes Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
lapmessage.cpp
Go to the documentation of this file.
1 /*
2  Copyright 2021 Paul Colby
3 
4  This file is part of QtFit.
5 
6  QtFit is free software: you can redistribute it and/or modify
7  it under the terms of the GNU Lesser General Public License as published by
8  the Free Software Foundation, either version 3 of the License, or
9  (at your option) any later version.
10 
11  QtFit is distributed in the hope that it will be useful,
12  but WITHOUT ANY WARRANTY; without even the implied warranty of
13  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14  GNU Lesser General Public License for more details.
15 
16  You should have received a copy of the GNU Lesser General Public License
17  along with QtFit. If not, see <http://www.gnu.org/licenses/>.
18 */
19 
20 /*!
21  * \file
22  * \note This file is automatcially generated. Any changes here are likely to be overwritten.
23  */
24 
25 /*!
26  * \file
27  * Defines the LapMessage, and LapMessagePrivate classes.
28  */
29 
30 #include "lapmessage.h"
31 #include "lapmessage_p.h"
32 
33 #include <QDebug>
34 #include <QtEndian>
35 
37 
38 /*!
39  * \class LapMessage
40  *
41  * The LapMessage class represents a FIT LapMessage data message.
42  *
43  * \sa DataMessage
44  */
45 
46 /*!
47  * Constructs a LapMessage object.
48  *
49  * Typically, instances of this class will be returned by FitStreamReader::readNext, but this
50  * constructor may be used, along with the relevant setter methods, to create a valid message.
51  */
53 {
54 
55 }
56 
57 /*!
58  * \internal
59  *
60  * Constructs a LapMessage object with private implementation \a d.
61  *
62  * \param d Pointer to private implementation.
63  */
65 {
66 
67 }
68 
69 /*!
70  * Returns the LapMessage data message's \c messageIndex field's current value.
71  *
72  * \return the \c messageIndex field value.
73  */
75 {
76  Q_D(const LapMessage);
77  return d->messageIndex;
78 }
79 
80 /*!
81  * Returns the LapMessage data message's \c timestamp field's current value.
82  *
83  * Lap end time.
84  *
85  * \return the \c timestamp field value.
86  */
88 {
89  Q_D(const LapMessage);
90  return d->timestamp;
91 }
92 
93 /*!
94  * Returns the LapMessage data message's \c event field's current value.
95  *
96  * \return the \c event field value.
97  */
99 {
100  Q_D(const LapMessage);
101  return d->event;
102 }
103 
104 /*!
105  * Returns the LapMessage data message's \c eventType field's current value.
106  *
107  * \return the \c eventType field value.
108  */
110 {
111  Q_D(const LapMessage);
112  return d->eventType;
113 }
114 
115 /*!
116  * Returns the LapMessage data message's \c startTime field's current value.
117  *
118  * \return the \c startTime field value.
119  */
121 {
122  Q_D(const LapMessage);
123  return d->startTime;
124 }
125 
126 /*!
127  * Returns the LapMessage data message's \c startPositionLat field's current value.
128  *
129  * \return the \c startPositionLat field value.
130  */
132 {
133  Q_D(const LapMessage);
134  return d->startPositionLat;
135 }
136 
137 /*!
138  * Returns the LapMessage data message's \c startPositionLong field's current value.
139  *
140  * \return the \c startPositionLong field value.
141  */
143 {
144  Q_D(const LapMessage);
145  return d->startPositionLong;
146 }
147 
148 /*!
149  * Returns the LapMessage data message's \c endPositionLat field's current value.
150  *
151  * \return the \c endPositionLat field value.
152  */
154 {
155  Q_D(const LapMessage);
156  return d->endPositionLat;
157 }
158 
159 /*!
160  * Returns the LapMessage data message's \c endPositionLong field's current value.
161  *
162  * \return the \c endPositionLong field value.
163  */
165 {
166  Q_D(const LapMessage);
167  return d->endPositionLong;
168 }
169 
170 /*!
171  * Returns the LapMessage data message's \c totalElapsedTime field's current value.
172  *
173  * Time (includes pauses)
174  *
175  * \return the \c totalElapsedTime field value.
176  */
178 {
179  Q_D(const LapMessage);
180  return d->totalElapsedTime;
181 }
182 
183 /*!
184  * Returns the LapMessage data message's \c totalTimerTime field's current value.
185  *
186  * Timer Time (excludes pauses)
187  *
188  * \return the \c totalTimerTime field value.
189  */
191 {
192  Q_D(const LapMessage);
193  return d->totalTimerTime;
194 }
195 
196 /*!
197  * Returns the LapMessage data message's \c totalDistance field's current value.
198  *
199  * \return the \c totalDistance field value.
200  */
202 {
203  Q_D(const LapMessage);
204  return d->totalDistance;
205 }
206 
207 /*!
208  * Returns the LapMessage data message's \c totalCycles field's current value.
209  *
210  * \return the \c totalCycles field value.
211  */
212 quint32 LapMessage::totalCycles() const
213 {
214  Q_D(const LapMessage);
215  return d->totalCycles;
216 }
217 
218 /*!
219  * Returns the LapMessage data message's \c totalCalories field's current value.
220  *
221  * \return the \c totalCalories field value.
222  */
224 {
225  Q_D(const LapMessage);
226  return d->totalCalories;
227 }
228 
229 /*!
230  * Returns the LapMessage data message's \c totalFatCalories field's current value.
231  *
232  * If New Leaf
233  *
234  * \return the \c totalFatCalories field value.
235  */
237 {
238  Q_D(const LapMessage);
239  return d->totalFatCalories;
240 }
241 
242 /*!
243  * Returns the LapMessage data message's \c avgSpeed field's current value.
244  *
245  * \return the \c avgSpeed field value.
246  */
247 quint16 LapMessage::avgSpeed() const
248 {
249  Q_D(const LapMessage);
250  return d->avgSpeed;
251 }
252 
253 /*!
254  * Returns the LapMessage data message's \c maxSpeed field's current value.
255  *
256  * \return the \c maxSpeed field value.
257  */
258 quint16 LapMessage::maxSpeed() const
259 {
260  Q_D(const LapMessage);
261  return d->maxSpeed;
262 }
263 
264 /*!
265  * Returns the LapMessage data message's \c avgHeartRate field's current value.
266  *
267  * \return the \c avgHeartRate field value.
268  */
270 {
271  Q_D(const LapMessage);
272  return d->avgHeartRate;
273 }
274 
275 /*!
276  * Returns the LapMessage data message's \c maxHeartRate field's current value.
277  *
278  * \return the \c maxHeartRate field value.
279  */
281 {
282  Q_D(const LapMessage);
283  return d->maxHeartRate;
284 }
285 
286 /*!
287  * Returns the LapMessage data message's \c avgCadence field's current value.
288  *
289  * total_cycles / total_timer_time if non_zero_avg_cadence otherwise total_cycles /
290  * total_elapsed_time
291  *
292  * \return the \c avgCadence field value.
293  */
295 {
296  Q_D(const LapMessage);
297  return d->avgCadence;
298 }
299 
300 /*!
301  * Returns the LapMessage data message's \c maxCadence field's current value.
302  *
303  * \return the \c maxCadence field value.
304  */
306 {
307  Q_D(const LapMessage);
308  return d->maxCadence;
309 }
310 
311 /*!
312  * Returns the LapMessage data message's \c avgPower field's current value.
313  *
314  * total_power / total_timer_time if non_zero_avg_power otherwise total_power /
315  * total_elapsed_time
316  *
317  * \return the \c avgPower field value.
318  */
319 quint16 LapMessage::avgPower() const
320 {
321  Q_D(const LapMessage);
322  return d->avgPower;
323 }
324 
325 /*!
326  * Returns the LapMessage data message's \c maxPower field's current value.
327  *
328  * \return the \c maxPower field value.
329  */
330 quint16 LapMessage::maxPower() const
331 {
332  Q_D(const LapMessage);
333  return d->maxPower;
334 }
335 
336 /*!
337  * Returns the LapMessage data message's \c totalAscent field's current value.
338  *
339  * \return the \c totalAscent field value.
340  */
341 quint16 LapMessage::totalAscent() const
342 {
343  Q_D(const LapMessage);
344  return d->totalAscent;
345 }
346 
347 /*!
348  * Returns the LapMessage data message's \c totalDescent field's current value.
349  *
350  * \return the \c totalDescent field value.
351  */
353 {
354  Q_D(const LapMessage);
355  return d->totalDescent;
356 }
357 
358 /*!
359  * Returns the LapMessage data message's \c intensity field's current value.
360  *
361  * \return the \c intensity field value.
362  */
364 {
365  Q_D(const LapMessage);
366  return d->intensity;
367 }
368 
369 /*!
370  * Returns the LapMessage data message's \c lapTrigger field's current value.
371  *
372  * \return the \c lapTrigger field value.
373  */
375 {
376  Q_D(const LapMessage);
377  return d->lapTrigger;
378 }
379 
380 /*!
381  * Returns the LapMessage data message's \c sport field's current value.
382  *
383  * \return the \c sport field value.
384  */
386 {
387  Q_D(const LapMessage);
388  return d->sport;
389 }
390 
391 /*!
392  * Returns the LapMessage data message's \c eventGroup field's current value.
393  *
394  * \return the \c eventGroup field value.
395  */
397 {
398  Q_D(const LapMessage);
399  return d->eventGroup;
400 }
401 
402 /*!
403  * Returns the LapMessage data message's \c numLengths field's current value.
404  *
405  * # of lengths of swim pool
406  *
407  * \return the \c numLengths field value.
408  */
409 quint16 LapMessage::numLengths() const
410 {
411  Q_D(const LapMessage);
412  return d->numLengths;
413 }
414 
415 /*!
416  * Returns the LapMessage data message's \c normalizedPower field's current value.
417  *
418  * \return the \c normalizedPower field value.
419  */
421 {
422  Q_D(const LapMessage);
423  return d->normalizedPower;
424 }
425 
426 /*!
427  * Returns the LapMessage data message's \c leftRightBalance field's current value.
428  *
429  * \return the \c leftRightBalance field value.
430  */
432 {
433  Q_D(const LapMessage);
434  return d->leftRightBalance;
435 }
436 
437 /*!
438  * Returns the LapMessage data message's \c firstLengthIndex field's current value.
439  *
440  * \return the \c firstLengthIndex field value.
441  */
443 {
444  Q_D(const LapMessage);
445  return d->firstLengthIndex;
446 }
447 
448 /*!
449  * Returns the LapMessage data message's \c avgStrokeDistance field's current value.
450  *
451  * \return the \c avgStrokeDistance field value.
452  */
454 {
455  Q_D(const LapMessage);
456  return d->avgStrokeDistance;
457 }
458 
459 /*!
460  * Returns the LapMessage data message's \c swimStroke field's current value.
461  *
462  * \return the \c swimStroke field value.
463  */
465 {
466  Q_D(const LapMessage);
467  return d->swimStroke;
468 }
469 
470 /*!
471  * Returns the LapMessage data message's \c subSport field's current value.
472  *
473  * \return the \c subSport field value.
474  */
476 {
477  Q_D(const LapMessage);
478  return d->subSport;
479 }
480 
481 /*!
482  * Returns the LapMessage data message's \c numActiveLengths field's current value.
483  *
484  * # of active lengths of swim pool
485  *
486  * \return the \c numActiveLengths field value.
487  */
489 {
490  Q_D(const LapMessage);
491  return d->numActiveLengths;
492 }
493 
494 /*!
495  * Returns the LapMessage data message's \c totalWork field's current value.
496  *
497  * \return the \c totalWork field value.
498  */
499 quint32 LapMessage::totalWork() const
500 {
501  Q_D(const LapMessage);
502  return d->totalWork;
503 }
504 
505 /*!
506  * Returns the LapMessage data message's \c avgAltitude field's current value.
507  *
508  * \return the \c avgAltitude field value.
509  */
510 quint16 LapMessage::avgAltitude() const
511 {
512  Q_D(const LapMessage);
513  return d->avgAltitude;
514 }
515 
516 /*!
517  * Returns the LapMessage data message's \c maxAltitude field's current value.
518  *
519  * \return the \c maxAltitude field value.
520  */
521 quint16 LapMessage::maxAltitude() const
522 {
523  Q_D(const LapMessage);
524  return d->maxAltitude;
525 }
526 
527 /*!
528  * Returns the LapMessage data message's \c gpsAccuracy field's current value.
529  *
530  * \return the \c gpsAccuracy field value.
531  */
533 {
534  Q_D(const LapMessage);
535  return d->gpsAccuracy;
536 }
537 
538 /*!
539  * Returns the LapMessage data message's \c avgGrade field's current value.
540  *
541  * \return the \c avgGrade field value.
542  */
543 qint16 LapMessage::avgGrade() const
544 {
545  Q_D(const LapMessage);
546  return d->avgGrade;
547 }
548 
549 /*!
550  * Returns the LapMessage data message's \c avgPosGrade field's current value.
551  *
552  * \return the \c avgPosGrade field value.
553  */
555 {
556  Q_D(const LapMessage);
557  return d->avgPosGrade;
558 }
559 
560 /*!
561  * Returns the LapMessage data message's \c avgNegGrade field's current value.
562  *
563  * \return the \c avgNegGrade field value.
564  */
566 {
567  Q_D(const LapMessage);
568  return d->avgNegGrade;
569 }
570 
571 /*!
572  * Returns the LapMessage data message's \c maxPosGrade field's current value.
573  *
574  * \return the \c maxPosGrade field value.
575  */
577 {
578  Q_D(const LapMessage);
579  return d->maxPosGrade;
580 }
581 
582 /*!
583  * Returns the LapMessage data message's \c maxNegGrade field's current value.
584  *
585  * \return the \c maxNegGrade field value.
586  */
588 {
589  Q_D(const LapMessage);
590  return d->maxNegGrade;
591 }
592 
593 /*!
594  * Returns the LapMessage data message's \c avgTemperature field's current value.
595  *
596  * \return the \c avgTemperature field value.
597  */
599 {
600  Q_D(const LapMessage);
601  return d->avgTemperature;
602 }
603 
604 /*!
605  * Returns the LapMessage data message's \c maxTemperature field's current value.
606  *
607  * \return the \c maxTemperature field value.
608  */
610 {
611  Q_D(const LapMessage);
612  return d->maxTemperature;
613 }
614 
615 /*!
616  * Returns the LapMessage data message's \c totalMovingTime field's current value.
617  *
618  * \return the \c totalMovingTime field value.
619  */
621 {
622  Q_D(const LapMessage);
623  return d->totalMovingTime;
624 }
625 
626 /*!
627  * Returns the LapMessage data message's \c avgPosVerticalSpeed field's current value.
628  *
629  * \return the \c avgPosVerticalSpeed field value.
630  */
632 {
633  Q_D(const LapMessage);
634  return d->avgPosVerticalSpeed;
635 }
636 
637 /*!
638  * Returns the LapMessage data message's \c avgNegVerticalSpeed field's current value.
639  *
640  * \return the \c avgNegVerticalSpeed field value.
641  */
643 {
644  Q_D(const LapMessage);
645  return d->avgNegVerticalSpeed;
646 }
647 
648 /*!
649  * Returns the LapMessage data message's \c maxPosVerticalSpeed field's current value.
650  *
651  * \return the \c maxPosVerticalSpeed field value.
652  */
654 {
655  Q_D(const LapMessage);
656  return d->maxPosVerticalSpeed;
657 }
658 
659 /*!
660  * Returns the LapMessage data message's \c maxNegVerticalSpeed field's current value.
661  *
662  * \return the \c maxNegVerticalSpeed field value.
663  */
665 {
666  Q_D(const LapMessage);
667  return d->maxNegVerticalSpeed;
668 }
669 
670 /*!
671  * Returns the LapMessage data message's \c timeInHrZone field's current value.
672  *
673  * \return the \c timeInHrZone field value.
674  */
676 {
677  Q_D(const LapMessage);
678  return d->timeInHrZone;
679 }
680 
681 /*!
682  * Returns the LapMessage data message's \c timeInSpeedZone field's current value.
683  *
684  * \return the \c timeInSpeedZone field value.
685  */
687 {
688  Q_D(const LapMessage);
689  return d->timeInSpeedZone;
690 }
691 
692 /*!
693  * Returns the LapMessage data message's \c timeInCadenceZone field's current value.
694  *
695  * \return the \c timeInCadenceZone field value.
696  */
698 {
699  Q_D(const LapMessage);
700  return d->timeInCadenceZone;
701 }
702 
703 /*!
704  * Returns the LapMessage data message's \c timeInPowerZone field's current value.
705  *
706  * \return the \c timeInPowerZone field value.
707  */
709 {
710  Q_D(const LapMessage);
711  return d->timeInPowerZone;
712 }
713 
714 /*!
715  * Returns the LapMessage data message's \c repetitionNum field's current value.
716  *
717  * \return the \c repetitionNum field value.
718  */
720 {
721  Q_D(const LapMessage);
722  return d->repetitionNum;
723 }
724 
725 /*!
726  * Returns the LapMessage data message's \c minAltitude field's current value.
727  *
728  * \return the \c minAltitude field value.
729  */
730 quint16 LapMessage::minAltitude() const
731 {
732  Q_D(const LapMessage);
733  return d->minAltitude;
734 }
735 
736 /*!
737  * Returns the LapMessage data message's \c minHeartRate field's current value.
738  *
739  * \return the \c minHeartRate field value.
740  */
742 {
743  Q_D(const LapMessage);
744  return d->minHeartRate;
745 }
746 
747 /*!
748  * Returns the LapMessage data message's \c wktStepIndex field's current value.
749  *
750  * \return the \c wktStepIndex field value.
751  */
753 {
754  Q_D(const LapMessage);
755  return d->wktStepIndex;
756 }
757 
758 /*!
759  * Returns the LapMessage data message's \c opponentScore field's current value.
760  *
761  * \return the \c opponentScore field value.
762  */
764 {
765  Q_D(const LapMessage);
766  return d->opponentScore;
767 }
768 
769 /*!
770  * Returns the LapMessage data message's \c strokeCount field's current value.
771  *
772  * stroke_type enum used as the index
773  *
774  * \return the \c strokeCount field value.
775  */
776 quint16 LapMessage::strokeCount() const
777 {
778  Q_D(const LapMessage);
779  return d->strokeCount;
780 }
781 
782 /*!
783  * Returns the LapMessage data message's \c zoneCount field's current value.
784  *
785  * zone number used as the index
786  *
787  * \return the \c zoneCount field value.
788  */
789 quint16 LapMessage::zoneCount() const
790 {
791  Q_D(const LapMessage);
792  return d->zoneCount;
793 }
794 
795 /*!
796  * Returns the LapMessage data message's \c avgVerticalOscillation field's current value.
797  *
798  * \return the \c avgVerticalOscillation field value.
799  */
801 {
802  Q_D(const LapMessage);
803  return d->avgVerticalOscillation;
804 }
805 
806 /*!
807  * Returns the LapMessage data message's \c avgStanceTimePercent field's current value.
808  *
809  * \return the \c avgStanceTimePercent field value.
810  */
812 {
813  Q_D(const LapMessage);
814  return d->avgStanceTimePercent;
815 }
816 
817 /*!
818  * Returns the LapMessage data message's \c avgStanceTime field's current value.
819  *
820  * \return the \c avgStanceTime field value.
821  */
823 {
824  Q_D(const LapMessage);
825  return d->avgStanceTime;
826 }
827 
828 /*!
829  * Returns the LapMessage data message's \c avgFractionalCadence field's current value.
830  *
831  * fractional part of the avg_cadence
832  *
833  * \return the \c avgFractionalCadence field value.
834  */
836 {
837  Q_D(const LapMessage);
838  return d->avgFractionalCadence;
839 }
840 
841 /*!
842  * Returns the LapMessage data message's \c maxFractionalCadence field's current value.
843  *
844  * fractional part of the max_cadence
845  *
846  * \return the \c maxFractionalCadence field value.
847  */
849 {
850  Q_D(const LapMessage);
851  return d->maxFractionalCadence;
852 }
853 
854 /*!
855  * Returns the LapMessage data message's \c totalFractionalCycles field's current value.
856  *
857  * fractional part of the total_cycles
858  *
859  * \return the \c totalFractionalCycles field value.
860  */
862 {
863  Q_D(const LapMessage);
864  return d->totalFractionalCycles;
865 }
866 
867 /*!
868  * Returns the LapMessage data message's \c playerScore field's current value.
869  *
870  * \return the \c playerScore field value.
871  */
872 quint16 LapMessage::playerScore() const
873 {
874  Q_D(const LapMessage);
875  return d->playerScore;
876 }
877 
878 /*!
879  * Returns the LapMessage data message's \c avgTotalHemoglobinConc field's current value.
880  *
881  * Avg saturated and unsaturated hemoglobin
882  *
883  * \return the \c avgTotalHemoglobinConc field value.
884  */
886 {
887  Q_D(const LapMessage);
888  return d->avgTotalHemoglobinConc;
889 }
890 
891 /*!
892  * Returns the LapMessage data message's \c minTotalHemoglobinConc field's current value.
893  *
894  * Min saturated and unsaturated hemoglobin
895  *
896  * \return the \c minTotalHemoglobinConc field value.
897  */
899 {
900  Q_D(const LapMessage);
901  return d->minTotalHemoglobinConc;
902 }
903 
904 /*!
905  * Returns the LapMessage data message's \c maxTotalHemoglobinConc field's current value.
906  *
907  * Max saturated and unsaturated hemoglobin
908  *
909  * \return the \c maxTotalHemoglobinConc field value.
910  */
912 {
913  Q_D(const LapMessage);
914  return d->maxTotalHemoglobinConc;
915 }
916 
917 /*!
918  * Returns the LapMessage data message's \c avgSaturatedHemoglobinPercent field's current value.
919  *
920  * Avg percentage of hemoglobin saturated with oxygen
921  *
922  * \return the \c avgSaturatedHemoglobinPercent field value.
923  */
925 {
926  Q_D(const LapMessage);
927  return d->avgSaturatedHemoglobinPercent;
928 }
929 
930 /*!
931  * Returns the LapMessage data message's \c minSaturatedHemoglobinPercent field's current value.
932  *
933  * Min percentage of hemoglobin saturated with oxygen
934  *
935  * \return the \c minSaturatedHemoglobinPercent field value.
936  */
938 {
939  Q_D(const LapMessage);
940  return d->minSaturatedHemoglobinPercent;
941 }
942 
943 /*!
944  * Returns the LapMessage data message's \c maxSaturatedHemoglobinPercent field's current value.
945  *
946  * Max percentage of hemoglobin saturated with oxygen
947  *
948  * \return the \c maxSaturatedHemoglobinPercent field value.
949  */
951 {
952  Q_D(const LapMessage);
953  return d->maxSaturatedHemoglobinPercent;
954 }
955 
956 /*!
957  * Returns the LapMessage data message's \c avgLeftTorqueEffectiveness field's current value.
958  *
959  * \return the \c avgLeftTorqueEffectiveness field value.
960  */
962 {
963  Q_D(const LapMessage);
964  return d->avgLeftTorqueEffectiveness;
965 }
966 
967 /*!
968  * Returns the LapMessage data message's \c avgRightTorqueEffectiveness field's current value.
969  *
970  * \return the \c avgRightTorqueEffectiveness field value.
971  */
973 {
974  Q_D(const LapMessage);
975  return d->avgRightTorqueEffectiveness;
976 }
977 
978 /*!
979  * Returns the LapMessage data message's \c avgLeftPedalSmoothness field's current value.
980  *
981  * \return the \c avgLeftPedalSmoothness field value.
982  */
984 {
985  Q_D(const LapMessage);
986  return d->avgLeftPedalSmoothness;
987 }
988 
989 /*!
990  * Returns the LapMessage data message's \c avgRightPedalSmoothness field's current value.
991  *
992  * \return the \c avgRightPedalSmoothness field value.
993  */
995 {
996  Q_D(const LapMessage);
997  return d->avgRightPedalSmoothness;
998 }
999 
1000 /*!
1001  * Returns the LapMessage data message's \c avgCombinedPedalSmoothness field's current value.
1002  *
1003  * \return the \c avgCombinedPedalSmoothness field value.
1004  */
1006 {
1007  Q_D(const LapMessage);
1008  return d->avgCombinedPedalSmoothness;
1009 }
1010 
1011 /*!
1012  * Returns the LapMessage data message's \c timeStanding field's current value.
1013  *
1014  * Total time spent in the standing position
1015  *
1016  * \return the \c timeStanding field value.
1017  */
1019 {
1020  Q_D(const LapMessage);
1021  return d->timeStanding;
1022 }
1023 
1024 /*!
1025  * Returns the LapMessage data message's \c standCount field's current value.
1026  *
1027  * Number of transitions to the standing state
1028  *
1029  * \return the \c standCount field value.
1030  */
1031 quint16 LapMessage::standCount() const
1032 {
1033  Q_D(const LapMessage);
1034  return d->standCount;
1035 }
1036 
1037 /*!
1038  * Returns the LapMessage data message's \c avgLeftPco field's current value.
1039  *
1040  * Average left platform center offset
1041  *
1042  * \return the \c avgLeftPco field value.
1043  */
1045 {
1046  Q_D(const LapMessage);
1047  return d->avgLeftPco;
1048 }
1049 
1050 /*!
1051  * Returns the LapMessage data message's \c avgRightPco field's current value.
1052  *
1053  * Average right platform center offset
1054  *
1055  * \return the \c avgRightPco field value.
1056  */
1058 {
1059  Q_D(const LapMessage);
1060  return d->avgRightPco;
1061 }
1062 
1063 /*!
1064  * Returns the LapMessage data message's \c avgLeftPowerPhase field's current value.
1065  *
1066  * Average left power phase angles. Data value indexes defined by power_phase_type.
1067  *
1068  * \return the \c avgLeftPowerPhase field value.
1069  */
1071 {
1072  Q_D(const LapMessage);
1073  return d->avgLeftPowerPhase;
1074 }
1075 
1076 /*!
1077  * Returns the LapMessage data message's \c avgLeftPowerPhasePeak field's current value.
1078  *
1079  * Average left power phase peak angles. Data value indexes defined by power_phase_type.
1080  *
1081  * \return the \c avgLeftPowerPhasePeak field value.
1082  */
1084 {
1085  Q_D(const LapMessage);
1086  return d->avgLeftPowerPhasePeak;
1087 }
1088 
1089 /*!
1090  * Returns the LapMessage data message's \c avgRightPowerPhase field's current value.
1091  *
1092  * Average right power phase angles. Data value indexes defined by power_phase_type.
1093  *
1094  * \return the \c avgRightPowerPhase field value.
1095  */
1097 {
1098  Q_D(const LapMessage);
1099  return d->avgRightPowerPhase;
1100 }
1101 
1102 /*!
1103  * Returns the LapMessage data message's \c avgRightPowerPhasePeak field's current value.
1104  *
1105  * Average right power phase peak angles. Data value indexes defined by power_phase_type.
1106  *
1107  * \return the \c avgRightPowerPhasePeak field value.
1108  */
1110 {
1111  Q_D(const LapMessage);
1112  return d->avgRightPowerPhasePeak;
1113 }
1114 
1115 /*!
1116  * Returns the LapMessage data message's \c avgPowerPosition field's current value.
1117  *
1118  * Average power by position. Data value indexes defined by rider_position_type.
1119  *
1120  * \return the \c avgPowerPosition field value.
1121  */
1123 {
1124  Q_D(const LapMessage);
1125  return d->avgPowerPosition;
1126 }
1127 
1128 /*!
1129  * Returns the LapMessage data message's \c maxPowerPosition field's current value.
1130  *
1131  * Maximum power by position. Data value indexes defined by rider_position_type.
1132  *
1133  * \return the \c maxPowerPosition field value.
1134  */
1136 {
1137  Q_D(const LapMessage);
1138  return d->maxPowerPosition;
1139 }
1140 
1141 /*!
1142  * Returns the LapMessage data message's \c avgCadencePosition field's current value.
1143  *
1144  * Average cadence by position. Data value indexes defined by rider_position_type.
1145  *
1146  * \return the \c avgCadencePosition field value.
1147  */
1149 {
1150  Q_D(const LapMessage);
1151  return d->avgCadencePosition;
1152 }
1153 
1154 /*!
1155  * Returns the LapMessage data message's \c maxCadencePosition field's current value.
1156  *
1157  * Maximum cadence by position. Data value indexes defined by rider_position_type.
1158  *
1159  * \return the \c maxCadencePosition field value.
1160  */
1162 {
1163  Q_D(const LapMessage);
1164  return d->maxCadencePosition;
1165 }
1166 
1167 /*!
1168  * Returns the LapMessage data message's \c enhancedAvgSpeed field's current value.
1169  *
1170  * \return the \c enhancedAvgSpeed field value.
1171  */
1173 {
1174  Q_D(const LapMessage);
1175  return d->enhancedAvgSpeed;
1176 }
1177 
1178 /*!
1179  * Returns the LapMessage data message's \c enhancedMaxSpeed field's current value.
1180  *
1181  * \return the \c enhancedMaxSpeed field value.
1182  */
1184 {
1185  Q_D(const LapMessage);
1186  return d->enhancedMaxSpeed;
1187 }
1188 
1189 /*!
1190  * Returns the LapMessage data message's \c enhancedAvgAltitude field's current value.
1191  *
1192  * \return the \c enhancedAvgAltitude field value.
1193  */
1195 {
1196  Q_D(const LapMessage);
1197  return d->enhancedAvgAltitude;
1198 }
1199 
1200 /*!
1201  * Returns the LapMessage data message's \c enhancedMinAltitude field's current value.
1202  *
1203  * \return the \c enhancedMinAltitude field value.
1204  */
1206 {
1207  Q_D(const LapMessage);
1208  return d->enhancedMinAltitude;
1209 }
1210 
1211 /*!
1212  * Returns the LapMessage data message's \c enhancedMaxAltitude field's current value.
1213  *
1214  * \return the \c enhancedMaxAltitude field value.
1215  */
1217 {
1218  Q_D(const LapMessage);
1219  return d->enhancedMaxAltitude;
1220 }
1221 
1222 /*!
1223  * Returns the LapMessage data message's \c avgLevMotorPower field's current value.
1224  *
1225  * lev average motor power during lap
1226  *
1227  * \return the \c avgLevMotorPower field value.
1228  */
1230 {
1231  Q_D(const LapMessage);
1232  return d->avgLevMotorPower;
1233 }
1234 
1235 /*!
1236  * Returns the LapMessage data message's \c maxLevMotorPower field's current value.
1237  *
1238  * lev maximum motor power during lap
1239  *
1240  * \return the \c maxLevMotorPower field value.
1241  */
1243 {
1244  Q_D(const LapMessage);
1245  return d->maxLevMotorPower;
1246 }
1247 
1248 /*!
1249  * Returns the LapMessage data message's \c levBatteryConsumption field's current value.
1250  *
1251  * lev battery consumption during lap
1252  *
1253  * \return the \c levBatteryConsumption field value.
1254  */
1256 {
1257  Q_D(const LapMessage);
1258  return d->levBatteryConsumption;
1259 }
1260 
1261 /*!
1262  * Returns the LapMessage data message's \c avgVerticalRatio field's current value.
1263  *
1264  * \return the \c avgVerticalRatio field value.
1265  */
1267 {
1268  Q_D(const LapMessage);
1269  return d->avgVerticalRatio;
1270 }
1271 
1272 /*!
1273  * Returns the LapMessage data message's \c avgStanceTimeBalance field's current value.
1274  *
1275  * \return the \c avgStanceTimeBalance field value.
1276  */
1278 {
1279  Q_D(const LapMessage);
1280  return d->avgStanceTimeBalance;
1281 }
1282 
1283 /*!
1284  * Returns the LapMessage data message's \c avgStepLength field's current value.
1285  *
1286  * \return the \c avgStepLength field value.
1287  */
1289 {
1290  Q_D(const LapMessage);
1291  return d->avgStepLength;
1292 }
1293 
1294 /*!
1295  * Returns the LapMessage data message's \c avgVam field's current value.
1296  *
1297  * \return the \c avgVam field value.
1298  */
1299 quint16 LapMessage::avgVam() const
1300 {
1301  Q_D(const LapMessage);
1302  return d->avgVam;
1303 }
1304 
1305 /*!
1306  * Returns the LapMessage data message's \c totalGrit field's current value.
1307  *
1308  * The grit score estimates how challenging a route could be for a cyclist in terms of time
1309  * spent going over sharp turns or large grade slopes.
1310  *
1311  * \return the \c totalGrit field value.
1312  */
1314 {
1315  Q_D(const LapMessage);
1316  return d->totalGrit;
1317 }
1318 
1319 /*!
1320  * Returns the LapMessage data message's \c totalFlow field's current value.
1321  *
1322  * The flow score estimates how long distance wise a cyclist deaccelerates over intervals where
1323  * deacceleration is unnecessary such as smooth turns or small grade angle intervals.
1324  *
1325  * \return the \c totalFlow field value.
1326  */
1328 {
1329  Q_D(const LapMessage);
1330  return d->totalFlow;
1331 }
1332 
1333 /*!
1334  * Returns the LapMessage data message's \c jumpCount field's current value.
1335  *
1336  * \return the \c jumpCount field value.
1337  */
1338 quint16 LapMessage::jumpCount() const
1339 {
1340  Q_D(const LapMessage);
1341  return d->jumpCount;
1342 }
1343 
1344 /*!
1345  * Returns the LapMessage data message's \c avgGrit field's current value.
1346  *
1347  * The grit score estimates how challenging a route could be for a cyclist in terms of time
1348  * spent going over sharp turns or large grade slopes.
1349  *
1350  * \return the \c avgGrit field value.
1351  */
1352 float LapMessage::avgGrit() const
1353 {
1354  Q_D(const LapMessage);
1355  return d->avgGrit;
1356 }
1357 
1358 /*!
1359  * Returns the LapMessage data message's \c avgFlow field's current value.
1360  *
1361  * The flow score estimates how long distance wise a cyclist deaccelerates over intervals where
1362  * deacceleration is unnecessary such as smooth turns or small grade angle intervals.
1363  *
1364  * \return the \c avgFlow field value.
1365  */
1366 float LapMessage::avgFlow() const
1367 {
1368  Q_D(const LapMessage);
1369  return d->avgFlow;
1370 }
1371 
1372 /*!
1373  * Returns the LapMessage data message's \c totalFractionalAscent field's current value.
1374  *
1375  * fractional part of total_ascent
1376  *
1377  * \return the \c totalFractionalAscent field value.
1378  */
1380 {
1381  Q_D(const LapMessage);
1382  return d->totalFractionalAscent;
1383 }
1384 
1385 /*!
1386  * Returns the LapMessage data message's \c totalFractionalDescent field's current value.
1387  *
1388  * fractional part of total_descent
1389  *
1390  * \return the \c totalFractionalDescent field value.
1391  */
1393 {
1394  Q_D(const LapMessage);
1395  return d->totalFractionalDescent;
1396 }
1397 
1398 /*!
1399  * Returns the LapMessage data message's \c avgCoreTemperature field's current value.
1400  *
1401  * \return the \c avgCoreTemperature field value.
1402  */
1404 {
1405  Q_D(const LapMessage);
1406  return d->avgCoreTemperature;
1407 }
1408 
1409 /*!
1410  * Returns the LapMessage data message's \c minCoreTemperature field's current value.
1411  *
1412  * \return the \c minCoreTemperature field value.
1413  */
1415 {
1416  Q_D(const LapMessage);
1417  return d->minCoreTemperature;
1418 }
1419 
1420 /*!
1421  * Returns the LapMessage data message's \c maxCoreTemperature field's current value.
1422  *
1423  * \return the \c maxCoreTemperature field value.
1424  */
1426 {
1427  Q_D(const LapMessage);
1428  return d->maxCoreTemperature;
1429 }
1430 
1431 /*!
1432  * Sets the \c messageIndex field to \a messageIndex.
1433  *
1434  * \param messageIndex The field value to set.
1435  */
1437 {
1438  Q_D(LapMessage);
1439  d->messageIndex = messageIndex;
1440 }
1441 /*!
1442  * Sets the \c timestamp field to \a timestamp.
1443  *
1444  * \param timestamp The field value to set.
1445  */
1446 void LapMessage::setTimestamp(const DateTime timestamp)
1447 {
1448  Q_D(LapMessage);
1449  d->timestamp = timestamp;
1450 }
1451 /*!
1452  * Sets the \c event field to \a event.
1453  *
1454  * \param event The field value to set.
1455  */
1456 void LapMessage::setEvent(const Event event)
1457 {
1458  Q_D(LapMessage);
1459  d->event = event;
1460 }
1461 /*!
1462  * Sets the \c eventType field to \a eventType.
1463  *
1464  * \param eventType The field value to set.
1465  */
1467 {
1468  Q_D(LapMessage);
1469  d->eventType = eventType;
1470 }
1471 /*!
1472  * Sets the \c startTime field to \a startTime.
1473  *
1474  * \param startTime The field value to set.
1475  */
1476 void LapMessage::setStartTime(const DateTime startTime)
1477 {
1478  Q_D(LapMessage);
1479  d->startTime = startTime;
1480 }
1481 /*!
1482  * Sets the \c startPositionLat field to \a startPositionLat.
1483  *
1484  * \param startPositionLat The field value to set.
1485  */
1486 void LapMessage::setStartPositionLat(const qint32 startPositionLat)
1487 {
1488  Q_D(LapMessage);
1489  d->startPositionLat = startPositionLat;
1490 }
1491 /*!
1492  * Sets the \c startPositionLong field to \a startPositionLong.
1493  *
1494  * \param startPositionLong The field value to set.
1495  */
1496 void LapMessage::setStartPositionLong(const qint32 startPositionLong)
1497 {
1498  Q_D(LapMessage);
1499  d->startPositionLong = startPositionLong;
1500 }
1501 /*!
1502  * Sets the \c endPositionLat field to \a endPositionLat.
1503  *
1504  * \param endPositionLat The field value to set.
1505  */
1506 void LapMessage::setEndPositionLat(const qint32 endPositionLat)
1507 {
1508  Q_D(LapMessage);
1509  d->endPositionLat = endPositionLat;
1510 }
1511 /*!
1512  * Sets the \c endPositionLong field to \a endPositionLong.
1513  *
1514  * \param endPositionLong The field value to set.
1515  */
1516 void LapMessage::setEndPositionLong(const qint32 endPositionLong)
1517 {
1518  Q_D(LapMessage);
1519  d->endPositionLong = endPositionLong;
1520 }
1521 /*!
1522  * Sets the \c totalElapsedTime field to \a totalElapsedTime.
1523  *
1524  * \param totalElapsedTime The field value to set.
1525  */
1526 void LapMessage::setTotalElapsedTime(const quint32 totalElapsedTime)
1527 {
1528  Q_D(LapMessage);
1529  d->totalElapsedTime = totalElapsedTime;
1530 }
1531 /*!
1532  * Sets the \c totalTimerTime field to \a totalTimerTime.
1533  *
1534  * \param totalTimerTime The field value to set.
1535  */
1536 void LapMessage::setTotalTimerTime(const quint32 totalTimerTime)
1537 {
1538  Q_D(LapMessage);
1539  d->totalTimerTime = totalTimerTime;
1540 }
1541 /*!
1542  * Sets the \c totalDistance field to \a totalDistance.
1543  *
1544  * \param totalDistance The field value to set.
1545  */
1546 void LapMessage::setTotalDistance(const quint32 totalDistance)
1547 {
1548  Q_D(LapMessage);
1549  d->totalDistance = totalDistance;
1550 }
1551 /*!
1552  * Sets the \c totalCycles field to \a totalCycles.
1553  *
1554  * \param totalCycles The field value to set.
1555  */
1556 void LapMessage::setTotalCycles(const quint32 totalCycles)
1557 {
1558  Q_D(LapMessage);
1559  d->totalCycles = totalCycles;
1560 }
1561 /*!
1562  * Sets the \c totalCalories field to \a totalCalories.
1563  *
1564  * \param totalCalories The field value to set.
1565  */
1566 void LapMessage::setTotalCalories(const quint16 totalCalories)
1567 {
1568  Q_D(LapMessage);
1569  d->totalCalories = totalCalories;
1570 }
1571 /*!
1572  * Sets the \c totalFatCalories field to \a totalFatCalories.
1573  *
1574  * \param totalFatCalories The field value to set.
1575  */
1576 void LapMessage::setTotalFatCalories(const quint16 totalFatCalories)
1577 {
1578  Q_D(LapMessage);
1579  d->totalFatCalories = totalFatCalories;
1580 }
1581 /*!
1582  * Sets the \c avgSpeed field to \a avgSpeed.
1583  *
1584  * \param avgSpeed The field value to set.
1585  */
1586 void LapMessage::setAvgSpeed(const quint16 avgSpeed)
1587 {
1588  Q_D(LapMessage);
1589  d->avgSpeed = avgSpeed;
1590 }
1591 /*!
1592  * Sets the \c maxSpeed field to \a maxSpeed.
1593  *
1594  * \param maxSpeed The field value to set.
1595  */
1596 void LapMessage::setMaxSpeed(const quint16 maxSpeed)
1597 {
1598  Q_D(LapMessage);
1599  d->maxSpeed = maxSpeed;
1600 }
1601 /*!
1602  * Sets the \c avgHeartRate field to \a avgHeartRate.
1603  *
1604  * \param avgHeartRate The field value to set.
1605  */
1606 void LapMessage::setAvgHeartRate(const quint8 avgHeartRate)
1607 {
1608  Q_D(LapMessage);
1609  d->avgHeartRate = avgHeartRate;
1610 }
1611 /*!
1612  * Sets the \c maxHeartRate field to \a maxHeartRate.
1613  *
1614  * \param maxHeartRate The field value to set.
1615  */
1616 void LapMessage::setMaxHeartRate(const quint8 maxHeartRate)
1617 {
1618  Q_D(LapMessage);
1619  d->maxHeartRate = maxHeartRate;
1620 }
1621 /*!
1622  * Sets the \c avgCadence field to \a avgCadence.
1623  *
1624  * \param avgCadence The field value to set.
1625  */
1626 void LapMessage::setAvgCadence(const quint8 avgCadence)
1627 {
1628  Q_D(LapMessage);
1629  d->avgCadence = avgCadence;
1630 }
1631 /*!
1632  * Sets the \c maxCadence field to \a maxCadence.
1633  *
1634  * \param maxCadence The field value to set.
1635  */
1636 void LapMessage::setMaxCadence(const quint8 maxCadence)
1637 {
1638  Q_D(LapMessage);
1639  d->maxCadence = maxCadence;
1640 }
1641 /*!
1642  * Sets the \c avgPower field to \a avgPower.
1643  *
1644  * \param avgPower The field value to set.
1645  */
1646 void LapMessage::setAvgPower(const quint16 avgPower)
1647 {
1648  Q_D(LapMessage);
1649  d->avgPower = avgPower;
1650 }
1651 /*!
1652  * Sets the \c maxPower field to \a maxPower.
1653  *
1654  * \param maxPower The field value to set.
1655  */
1656 void LapMessage::setMaxPower(const quint16 maxPower)
1657 {
1658  Q_D(LapMessage);
1659  d->maxPower = maxPower;
1660 }
1661 /*!
1662  * Sets the \c totalAscent field to \a totalAscent.
1663  *
1664  * \param totalAscent The field value to set.
1665  */
1666 void LapMessage::setTotalAscent(const quint16 totalAscent)
1667 {
1668  Q_D(LapMessage);
1669  d->totalAscent = totalAscent;
1670 }
1671 /*!
1672  * Sets the \c totalDescent field to \a totalDescent.
1673  *
1674  * \param totalDescent The field value to set.
1675  */
1676 void LapMessage::setTotalDescent(const quint16 totalDescent)
1677 {
1678  Q_D(LapMessage);
1679  d->totalDescent = totalDescent;
1680 }
1681 /*!
1682  * Sets the \c intensity field to \a intensity.
1683  *
1684  * \param intensity The field value to set.
1685  */
1687 {
1688  Q_D(LapMessage);
1689  d->intensity = intensity;
1690 }
1691 /*!
1692  * Sets the \c lapTrigger field to \a lapTrigger.
1693  *
1694  * \param lapTrigger The field value to set.
1695  */
1697 {
1698  Q_D(LapMessage);
1699  d->lapTrigger = lapTrigger;
1700 }
1701 /*!
1702  * Sets the \c sport field to \a sport.
1703  *
1704  * \param sport The field value to set.
1705  */
1706 void LapMessage::setSport(const Sport sport)
1707 {
1708  Q_D(LapMessage);
1709  d->sport = sport;
1710 }
1711 /*!
1712  * Sets the \c eventGroup field to \a eventGroup.
1713  *
1714  * \param eventGroup The field value to set.
1715  */
1716 void LapMessage::setEventGroup(const quint8 eventGroup)
1717 {
1718  Q_D(LapMessage);
1719  d->eventGroup = eventGroup;
1720 }
1721 /*!
1722  * Sets the \c numLengths field to \a numLengths.
1723  *
1724  * \param numLengths The field value to set.
1725  */
1726 void LapMessage::setNumLengths(const quint16 numLengths)
1727 {
1728  Q_D(LapMessage);
1729  d->numLengths = numLengths;
1730 }
1731 /*!
1732  * Sets the \c normalizedPower field to \a normalizedPower.
1733  *
1734  * \param normalizedPower The field value to set.
1735  */
1736 void LapMessage::setNormalizedPower(const quint16 normalizedPower)
1737 {
1738  Q_D(LapMessage);
1739  d->normalizedPower = normalizedPower;
1740 }
1741 /*!
1742  * Sets the \c leftRightBalance field to \a leftRightBalance.
1743  *
1744  * \param leftRightBalance The field value to set.
1745  */
1747 {
1748  Q_D(LapMessage);
1749  d->leftRightBalance = leftRightBalance;
1750 }
1751 /*!
1752  * Sets the \c firstLengthIndex field to \a firstLengthIndex.
1753  *
1754  * \param firstLengthIndex The field value to set.
1755  */
1756 void LapMessage::setFirstLengthIndex(const quint16 firstLengthIndex)
1757 {
1758  Q_D(LapMessage);
1759  d->firstLengthIndex = firstLengthIndex;
1760 }
1761 /*!
1762  * Sets the \c avgStrokeDistance field to \a avgStrokeDistance.
1763  *
1764  * \param avgStrokeDistance The field value to set.
1765  */
1766 void LapMessage::setAvgStrokeDistance(const quint16 avgStrokeDistance)
1767 {
1768  Q_D(LapMessage);
1769  d->avgStrokeDistance = avgStrokeDistance;
1770 }
1771 /*!
1772  * Sets the \c swimStroke field to \a swimStroke.
1773  *
1774  * \param swimStroke The field value to set.
1775  */
1777 {
1778  Q_D(LapMessage);
1779  d->swimStroke = swimStroke;
1780 }
1781 /*!
1782  * Sets the \c subSport field to \a subSport.
1783  *
1784  * \param subSport The field value to set.
1785  */
1786 void LapMessage::setSubSport(const SubSport subSport)
1787 {
1788  Q_D(LapMessage);
1789  d->subSport = subSport;
1790 }
1791 /*!
1792  * Sets the \c numActiveLengths field to \a numActiveLengths.
1793  *
1794  * \param numActiveLengths The field value to set.
1795  */
1796 void LapMessage::setNumActiveLengths(const quint16 numActiveLengths)
1797 {
1798  Q_D(LapMessage);
1799  d->numActiveLengths = numActiveLengths;
1800 }
1801 /*!
1802  * Sets the \c totalWork field to \a totalWork.
1803  *
1804  * \param totalWork The field value to set.
1805  */
1806 void LapMessage::setTotalWork(const quint32 totalWork)
1807 {
1808  Q_D(LapMessage);
1809  d->totalWork = totalWork;
1810 }
1811 /*!
1812  * Sets the \c avgAltitude field to \a avgAltitude.
1813  *
1814  * \param avgAltitude The field value to set.
1815  */
1816 void LapMessage::setAvgAltitude(const quint16 avgAltitude)
1817 {
1818  Q_D(LapMessage);
1819  d->avgAltitude = avgAltitude;
1820 }
1821 /*!
1822  * Sets the \c maxAltitude field to \a maxAltitude.
1823  *
1824  * \param maxAltitude The field value to set.
1825  */
1826 void LapMessage::setMaxAltitude(const quint16 maxAltitude)
1827 {
1828  Q_D(LapMessage);
1829  d->maxAltitude = maxAltitude;
1830 }
1831 /*!
1832  * Sets the \c gpsAccuracy field to \a gpsAccuracy.
1833  *
1834  * \param gpsAccuracy The field value to set.
1835  */
1836 void LapMessage::setGpsAccuracy(const quint8 gpsAccuracy)
1837 {
1838  Q_D(LapMessage);
1839  d->gpsAccuracy = gpsAccuracy;
1840 }
1841 /*!
1842  * Sets the \c avgGrade field to \a avgGrade.
1843  *
1844  * \param avgGrade The field value to set.
1845  */
1846 void LapMessage::setAvgGrade(const qint16 avgGrade)
1847 {
1848  Q_D(LapMessage);
1849  d->avgGrade = avgGrade;
1850 }
1851 /*!
1852  * Sets the \c avgPosGrade field to \a avgPosGrade.
1853  *
1854  * \param avgPosGrade The field value to set.
1855  */
1856 void LapMessage::setAvgPosGrade(const qint16 avgPosGrade)
1857 {
1858  Q_D(LapMessage);
1859  d->avgPosGrade = avgPosGrade;
1860 }
1861 /*!
1862  * Sets the \c avgNegGrade field to \a avgNegGrade.
1863  *
1864  * \param avgNegGrade The field value to set.
1865  */
1866 void LapMessage::setAvgNegGrade(const qint16 avgNegGrade)
1867 {
1868  Q_D(LapMessage);
1869  d->avgNegGrade = avgNegGrade;
1870 }
1871 /*!
1872  * Sets the \c maxPosGrade field to \a maxPosGrade.
1873  *
1874  * \param maxPosGrade The field value to set.
1875  */
1876 void LapMessage::setMaxPosGrade(const qint16 maxPosGrade)
1877 {
1878  Q_D(LapMessage);
1879  d->maxPosGrade = maxPosGrade;
1880 }
1881 /*!
1882  * Sets the \c maxNegGrade field to \a maxNegGrade.
1883  *
1884  * \param maxNegGrade The field value to set.
1885  */
1886 void LapMessage::setMaxNegGrade(const qint16 maxNegGrade)
1887 {
1888  Q_D(LapMessage);
1889  d->maxNegGrade = maxNegGrade;
1890 }
1891 /*!
1892  * Sets the \c avgTemperature field to \a avgTemperature.
1893  *
1894  * \param avgTemperature The field value to set.
1895  */
1896 void LapMessage::setAvgTemperature(const qint8 avgTemperature)
1897 {
1898  Q_D(LapMessage);
1899  d->avgTemperature = avgTemperature;
1900 }
1901 /*!
1902  * Sets the \c maxTemperature field to \a maxTemperature.
1903  *
1904  * \param maxTemperature The field value to set.
1905  */
1906 void LapMessage::setMaxTemperature(const qint8 maxTemperature)
1907 {
1908  Q_D(LapMessage);
1909  d->maxTemperature = maxTemperature;
1910 }
1911 /*!
1912  * Sets the \c totalMovingTime field to \a totalMovingTime.
1913  *
1914  * \param totalMovingTime The field value to set.
1915  */
1916 void LapMessage::setTotalMovingTime(const quint32 totalMovingTime)
1917 {
1918  Q_D(LapMessage);
1919  d->totalMovingTime = totalMovingTime;
1920 }
1921 /*!
1922  * Sets the \c avgPosVerticalSpeed field to \a avgPosVerticalSpeed.
1923  *
1924  * \param avgPosVerticalSpeed The field value to set.
1925  */
1926 void LapMessage::setAvgPosVerticalSpeed(const qint16 avgPosVerticalSpeed)
1927 {
1928  Q_D(LapMessage);
1929  d->avgPosVerticalSpeed = avgPosVerticalSpeed;
1930 }
1931 /*!
1932  * Sets the \c avgNegVerticalSpeed field to \a avgNegVerticalSpeed.
1933  *
1934  * \param avgNegVerticalSpeed The field value to set.
1935  */
1936 void LapMessage::setAvgNegVerticalSpeed(const qint16 avgNegVerticalSpeed)
1937 {
1938  Q_D(LapMessage);
1939  d->avgNegVerticalSpeed = avgNegVerticalSpeed;
1940 }
1941 /*!
1942  * Sets the \c maxPosVerticalSpeed field to \a maxPosVerticalSpeed.
1943  *
1944  * \param maxPosVerticalSpeed The field value to set.
1945  */
1946 void LapMessage::setMaxPosVerticalSpeed(const qint16 maxPosVerticalSpeed)
1947 {
1948  Q_D(LapMessage);
1949  d->maxPosVerticalSpeed = maxPosVerticalSpeed;
1950 }
1951 /*!
1952  * Sets the \c maxNegVerticalSpeed field to \a maxNegVerticalSpeed.
1953  *
1954  * \param maxNegVerticalSpeed The field value to set.
1955  */
1956 void LapMessage::setMaxNegVerticalSpeed(const qint16 maxNegVerticalSpeed)
1957 {
1958  Q_D(LapMessage);
1959  d->maxNegVerticalSpeed = maxNegVerticalSpeed;
1960 }
1961 /*!
1962  * Sets the \c timeInHrZone field to \a timeInHrZone.
1963  *
1964  * \param timeInHrZone The field value to set.
1965  */
1966 void LapMessage::setTimeInHrZone(const quint32 timeInHrZone)
1967 {
1968  Q_D(LapMessage);
1969  d->timeInHrZone = timeInHrZone;
1970 }
1971 /*!
1972  * Sets the \c timeInSpeedZone field to \a timeInSpeedZone.
1973  *
1974  * \param timeInSpeedZone The field value to set.
1975  */
1976 void LapMessage::setTimeInSpeedZone(const quint32 timeInSpeedZone)
1977 {
1978  Q_D(LapMessage);
1979  d->timeInSpeedZone = timeInSpeedZone;
1980 }
1981 /*!
1982  * Sets the \c timeInCadenceZone field to \a timeInCadenceZone.
1983  *
1984  * \param timeInCadenceZone The field value to set.
1985  */
1986 void LapMessage::setTimeInCadenceZone(const quint32 timeInCadenceZone)
1987 {
1988  Q_D(LapMessage);
1989  d->timeInCadenceZone = timeInCadenceZone;
1990 }
1991 /*!
1992  * Sets the \c timeInPowerZone field to \a timeInPowerZone.
1993  *
1994  * \param timeInPowerZone The field value to set.
1995  */
1996 void LapMessage::setTimeInPowerZone(const quint32 timeInPowerZone)
1997 {
1998  Q_D(LapMessage);
1999  d->timeInPowerZone = timeInPowerZone;
2000 }
2001 /*!
2002  * Sets the \c repetitionNum field to \a repetitionNum.
2003  *
2004  * \param repetitionNum The field value to set.
2005  */
2006 void LapMessage::setRepetitionNum(const quint16 repetitionNum)
2007 {
2008  Q_D(LapMessage);
2009  d->repetitionNum = repetitionNum;
2010 }
2011 /*!
2012  * Sets the \c minAltitude field to \a minAltitude.
2013  *
2014  * \param minAltitude The field value to set.
2015  */
2016 void LapMessage::setMinAltitude(const quint16 minAltitude)
2017 {
2018  Q_D(LapMessage);
2019  d->minAltitude = minAltitude;
2020 }
2021 /*!
2022  * Sets the \c minHeartRate field to \a minHeartRate.
2023  *
2024  * \param minHeartRate The field value to set.
2025  */
2026 void LapMessage::setMinHeartRate(const quint8 minHeartRate)
2027 {
2028  Q_D(LapMessage);
2029  d->minHeartRate = minHeartRate;
2030 }
2031 /*!
2032  * Sets the \c wktStepIndex field to \a wktStepIndex.
2033  *
2034  * \param wktStepIndex The field value to set.
2035  */
2037 {
2038  Q_D(LapMessage);
2039  d->wktStepIndex = wktStepIndex;
2040 }
2041 /*!
2042  * Sets the \c opponentScore field to \a opponentScore.
2043  *
2044  * \param opponentScore The field value to set.
2045  */
2046 void LapMessage::setOpponentScore(const quint16 opponentScore)
2047 {
2048  Q_D(LapMessage);
2049  d->opponentScore = opponentScore;
2050 }
2051 /*!
2052  * Sets the \c strokeCount field to \a strokeCount.
2053  *
2054  * \param strokeCount The field value to set.
2055  */
2056 void LapMessage::setStrokeCount(const quint16 strokeCount)
2057 {
2058  Q_D(LapMessage);
2059  d->strokeCount = strokeCount;
2060 }
2061 /*!
2062  * Sets the \c zoneCount field to \a zoneCount.
2063  *
2064  * \param zoneCount The field value to set.
2065  */
2066 void LapMessage::setZoneCount(const quint16 zoneCount)
2067 {
2068  Q_D(LapMessage);
2069  d->zoneCount = zoneCount;
2070 }
2071 /*!
2072  * Sets the \c avgVerticalOscillation field to \a avgVerticalOscillation.
2073  *
2074  * \param avgVerticalOscillation The field value to set.
2075  */
2076 void LapMessage::setAvgVerticalOscillation(const quint16 avgVerticalOscillation)
2077 {
2078  Q_D(LapMessage);
2079  d->avgVerticalOscillation = avgVerticalOscillation;
2080 }
2081 /*!
2082  * Sets the \c avgStanceTimePercent field to \a avgStanceTimePercent.
2083  *
2084  * \param avgStanceTimePercent The field value to set.
2085  */
2086 void LapMessage::setAvgStanceTimePercent(const quint16 avgStanceTimePercent)
2087 {
2088  Q_D(LapMessage);
2089  d->avgStanceTimePercent = avgStanceTimePercent;
2090 }
2091 /*!
2092  * Sets the \c avgStanceTime field to \a avgStanceTime.
2093  *
2094  * \param avgStanceTime The field value to set.
2095  */
2096 void LapMessage::setAvgStanceTime(const quint16 avgStanceTime)
2097 {
2098  Q_D(LapMessage);
2099  d->avgStanceTime = avgStanceTime;
2100 }
2101 /*!
2102  * Sets the \c avgFractionalCadence field to \a avgFractionalCadence.
2103  *
2104  * \param avgFractionalCadence The field value to set.
2105  */
2106 void LapMessage::setAvgFractionalCadence(const quint8 avgFractionalCadence)
2107 {
2108  Q_D(LapMessage);
2109  d->avgFractionalCadence = avgFractionalCadence;
2110 }
2111 /*!
2112  * Sets the \c maxFractionalCadence field to \a maxFractionalCadence.
2113  *
2114  * \param maxFractionalCadence The field value to set.
2115  */
2116 void LapMessage::setMaxFractionalCadence(const quint8 maxFractionalCadence)
2117 {
2118  Q_D(LapMessage);
2119  d->maxFractionalCadence = maxFractionalCadence;
2120 }
2121 /*!
2122  * Sets the \c totalFractionalCycles field to \a totalFractionalCycles.
2123  *
2124  * \param totalFractionalCycles The field value to set.
2125  */
2126 void LapMessage::setTotalFractionalCycles(const quint8 totalFractionalCycles)
2127 {
2128  Q_D(LapMessage);
2129  d->totalFractionalCycles = totalFractionalCycles;
2130 }
2131 /*!
2132  * Sets the \c playerScore field to \a playerScore.
2133  *
2134  * \param playerScore The field value to set.
2135  */
2136 void LapMessage::setPlayerScore(const quint16 playerScore)
2137 {
2138  Q_D(LapMessage);
2139  d->playerScore = playerScore;
2140 }
2141 /*!
2142  * Sets the \c avgTotalHemoglobinConc field to \a avgTotalHemoglobinConc.
2143  *
2144  * \param avgTotalHemoglobinConc The field value to set.
2145  */
2146 void LapMessage::setAvgTotalHemoglobinConc(const quint16 avgTotalHemoglobinConc)
2147 {
2148  Q_D(LapMessage);
2149  d->avgTotalHemoglobinConc = avgTotalHemoglobinConc;
2150 }
2151 /*!
2152  * Sets the \c minTotalHemoglobinConc field to \a minTotalHemoglobinConc.
2153  *
2154  * \param minTotalHemoglobinConc The field value to set.
2155  */
2156 void LapMessage::setMinTotalHemoglobinConc(const quint16 minTotalHemoglobinConc)
2157 {
2158  Q_D(LapMessage);
2159  d->minTotalHemoglobinConc = minTotalHemoglobinConc;
2160 }
2161 /*!
2162  * Sets the \c maxTotalHemoglobinConc field to \a maxTotalHemoglobinConc.
2163  *
2164  * \param maxTotalHemoglobinConc The field value to set.
2165  */
2166 void LapMessage::setMaxTotalHemoglobinConc(const quint16 maxTotalHemoglobinConc)
2167 {
2168  Q_D(LapMessage);
2169  d->maxTotalHemoglobinConc = maxTotalHemoglobinConc;
2170 }
2171 /*!
2172  * Sets the \c avgSaturatedHemoglobinPercent field to \a avgSaturatedHemoglobinPercent.
2173  *
2174  * \param avgSaturatedHemoglobinPercent The field value to set.
2175  */
2176 void LapMessage::setAvgSaturatedHemoglobinPercent(const quint16 avgSaturatedHemoglobinPercent)
2177 {
2178  Q_D(LapMessage);
2179  d->avgSaturatedHemoglobinPercent = avgSaturatedHemoglobinPercent;
2180 }
2181 /*!
2182  * Sets the \c minSaturatedHemoglobinPercent field to \a minSaturatedHemoglobinPercent.
2183  *
2184  * \param minSaturatedHemoglobinPercent The field value to set.
2185  */
2186 void LapMessage::setMinSaturatedHemoglobinPercent(const quint16 minSaturatedHemoglobinPercent)
2187 {
2188  Q_D(LapMessage);
2189  d->minSaturatedHemoglobinPercent = minSaturatedHemoglobinPercent;
2190 }
2191 /*!
2192  * Sets the \c maxSaturatedHemoglobinPercent field to \a maxSaturatedHemoglobinPercent.
2193  *
2194  * \param maxSaturatedHemoglobinPercent The field value to set.
2195  */
2196 void LapMessage::setMaxSaturatedHemoglobinPercent(const quint16 maxSaturatedHemoglobinPercent)
2197 {
2198  Q_D(LapMessage);
2199  d->maxSaturatedHemoglobinPercent = maxSaturatedHemoglobinPercent;
2200 }
2201 /*!
2202  * Sets the \c avgLeftTorqueEffectiveness field to \a avgLeftTorqueEffectiveness.
2203  *
2204  * \param avgLeftTorqueEffectiveness The field value to set.
2205  */
2206 void LapMessage::setAvgLeftTorqueEffectiveness(const quint8 avgLeftTorqueEffectiveness)
2207 {
2208  Q_D(LapMessage);
2209  d->avgLeftTorqueEffectiveness = avgLeftTorqueEffectiveness;
2210 }
2211 /*!
2212  * Sets the \c avgRightTorqueEffectiveness field to \a avgRightTorqueEffectiveness.
2213  *
2214  * \param avgRightTorqueEffectiveness The field value to set.
2215  */
2216 void LapMessage::setAvgRightTorqueEffectiveness(const quint8 avgRightTorqueEffectiveness)
2217 {
2218  Q_D(LapMessage);
2219  d->avgRightTorqueEffectiveness = avgRightTorqueEffectiveness;
2220 }
2221 /*!
2222  * Sets the \c avgLeftPedalSmoothness field to \a avgLeftPedalSmoothness.
2223  *
2224  * \param avgLeftPedalSmoothness The field value to set.
2225  */
2226 void LapMessage::setAvgLeftPedalSmoothness(const quint8 avgLeftPedalSmoothness)
2227 {
2228  Q_D(LapMessage);
2229  d->avgLeftPedalSmoothness = avgLeftPedalSmoothness;
2230 }
2231 /*!
2232  * Sets the \c avgRightPedalSmoothness field to \a avgRightPedalSmoothness.
2233  *
2234  * \param avgRightPedalSmoothness The field value to set.
2235  */
2236 void LapMessage::setAvgRightPedalSmoothness(const quint8 avgRightPedalSmoothness)
2237 {
2238  Q_D(LapMessage);
2239  d->avgRightPedalSmoothness = avgRightPedalSmoothness;
2240 }
2241 /*!
2242  * Sets the \c avgCombinedPedalSmoothness field to \a avgCombinedPedalSmoothness.
2243  *
2244  * \param avgCombinedPedalSmoothness The field value to set.
2245  */
2246 void LapMessage::setAvgCombinedPedalSmoothness(const quint8 avgCombinedPedalSmoothness)
2247 {
2248  Q_D(LapMessage);
2249  d->avgCombinedPedalSmoothness = avgCombinedPedalSmoothness;
2250 }
2251 /*!
2252  * Sets the \c timeStanding field to \a timeStanding.
2253  *
2254  * \param timeStanding The field value to set.
2255  */
2256 void LapMessage::setTimeStanding(const quint32 timeStanding)
2257 {
2258  Q_D(LapMessage);
2259  d->timeStanding = timeStanding;
2260 }
2261 /*!
2262  * Sets the \c standCount field to \a standCount.
2263  *
2264  * \param standCount The field value to set.
2265  */
2266 void LapMessage::setStandCount(const quint16 standCount)
2267 {
2268  Q_D(LapMessage);
2269  d->standCount = standCount;
2270 }
2271 /*!
2272  * Sets the \c avgLeftPco field to \a avgLeftPco.
2273  *
2274  * \param avgLeftPco The field value to set.
2275  */
2276 void LapMessage::setAvgLeftPco(const qint8 avgLeftPco)
2277 {
2278  Q_D(LapMessage);
2279  d->avgLeftPco = avgLeftPco;
2280 }
2281 /*!
2282  * Sets the \c avgRightPco field to \a avgRightPco.
2283  *
2284  * \param avgRightPco The field value to set.
2285  */
2286 void LapMessage::setAvgRightPco(const qint8 avgRightPco)
2287 {
2288  Q_D(LapMessage);
2289  d->avgRightPco = avgRightPco;
2290 }
2291 /*!
2292  * Sets the \c avgLeftPowerPhase field to \a avgLeftPowerPhase.
2293  *
2294  * \param avgLeftPowerPhase The field value to set.
2295  */
2296 void LapMessage::setAvgLeftPowerPhase(const quint8 avgLeftPowerPhase)
2297 {
2298  Q_D(LapMessage);
2299  d->avgLeftPowerPhase = avgLeftPowerPhase;
2300 }
2301 /*!
2302  * Sets the \c avgLeftPowerPhasePeak field to \a avgLeftPowerPhasePeak.
2303  *
2304  * \param avgLeftPowerPhasePeak The field value to set.
2305  */
2306 void LapMessage::setAvgLeftPowerPhasePeak(const quint8 avgLeftPowerPhasePeak)
2307 {
2308  Q_D(LapMessage);
2309  d->avgLeftPowerPhasePeak = avgLeftPowerPhasePeak;
2310 }
2311 /*!
2312  * Sets the \c avgRightPowerPhase field to \a avgRightPowerPhase.
2313  *
2314  * \param avgRightPowerPhase The field value to set.
2315  */
2316 void LapMessage::setAvgRightPowerPhase(const quint8 avgRightPowerPhase)
2317 {
2318  Q_D(LapMessage);
2319  d->avgRightPowerPhase = avgRightPowerPhase;
2320 }
2321 /*!
2322  * Sets the \c avgRightPowerPhasePeak field to \a avgRightPowerPhasePeak.
2323  *
2324  * \param avgRightPowerPhasePeak The field value to set.
2325  */
2326 void LapMessage::setAvgRightPowerPhasePeak(const quint8 avgRightPowerPhasePeak)
2327 {
2328  Q_D(LapMessage);
2329  d->avgRightPowerPhasePeak = avgRightPowerPhasePeak;
2330 }
2331 /*!
2332  * Sets the \c avgPowerPosition field to \a avgPowerPosition.
2333  *
2334  * \param avgPowerPosition The field value to set.
2335  */
2336 void LapMessage::setAvgPowerPosition(const quint16 avgPowerPosition)
2337 {
2338  Q_D(LapMessage);
2339  d->avgPowerPosition = avgPowerPosition;
2340 }
2341 /*!
2342  * Sets the \c maxPowerPosition field to \a maxPowerPosition.
2343  *
2344  * \param maxPowerPosition The field value to set.
2345  */
2346 void LapMessage::setMaxPowerPosition(const quint16 maxPowerPosition)
2347 {
2348  Q_D(LapMessage);
2349  d->maxPowerPosition = maxPowerPosition;
2350 }
2351 /*!
2352  * Sets the \c avgCadencePosition field to \a avgCadencePosition.
2353  *
2354  * \param avgCadencePosition The field value to set.
2355  */
2356 void LapMessage::setAvgCadencePosition(const quint8 avgCadencePosition)
2357 {
2358  Q_D(LapMessage);
2359  d->avgCadencePosition = avgCadencePosition;
2360 }
2361 /*!
2362  * Sets the \c maxCadencePosition field to \a maxCadencePosition.
2363  *
2364  * \param maxCadencePosition The field value to set.
2365  */
2366 void LapMessage::setMaxCadencePosition(const quint8 maxCadencePosition)
2367 {
2368  Q_D(LapMessage);
2369  d->maxCadencePosition = maxCadencePosition;
2370 }
2371 /*!
2372  * Sets the \c enhancedAvgSpeed field to \a enhancedAvgSpeed.
2373  *
2374  * \param enhancedAvgSpeed The field value to set.
2375  */
2376 void LapMessage::setEnhancedAvgSpeed(const quint32 enhancedAvgSpeed)
2377 {
2378  Q_D(LapMessage);
2379  d->enhancedAvgSpeed = enhancedAvgSpeed;
2380 }
2381 /*!
2382  * Sets the \c enhancedMaxSpeed field to \a enhancedMaxSpeed.
2383  *
2384  * \param enhancedMaxSpeed The field value to set.
2385  */
2386 void LapMessage::setEnhancedMaxSpeed(const quint32 enhancedMaxSpeed)
2387 {
2388  Q_D(LapMessage);
2389  d->enhancedMaxSpeed = enhancedMaxSpeed;
2390 }
2391 /*!
2392  * Sets the \c enhancedAvgAltitude field to \a enhancedAvgAltitude.
2393  *
2394  * \param enhancedAvgAltitude The field value to set.
2395  */
2396 void LapMessage::setEnhancedAvgAltitude(const quint32 enhancedAvgAltitude)
2397 {
2398  Q_D(LapMessage);
2399  d->enhancedAvgAltitude = enhancedAvgAltitude;
2400 }
2401 /*!
2402  * Sets the \c enhancedMinAltitude field to \a enhancedMinAltitude.
2403  *
2404  * \param enhancedMinAltitude The field value to set.
2405  */
2406 void LapMessage::setEnhancedMinAltitude(const quint32 enhancedMinAltitude)
2407 {
2408  Q_D(LapMessage);
2409  d->enhancedMinAltitude = enhancedMinAltitude;
2410 }
2411 /*!
2412  * Sets the \c enhancedMaxAltitude field to \a enhancedMaxAltitude.
2413  *
2414  * \param enhancedMaxAltitude The field value to set.
2415  */
2416 void LapMessage::setEnhancedMaxAltitude(const quint32 enhancedMaxAltitude)
2417 {
2418  Q_D(LapMessage);
2419  d->enhancedMaxAltitude = enhancedMaxAltitude;
2420 }
2421 /*!
2422  * Sets the \c avgLevMotorPower field to \a avgLevMotorPower.
2423  *
2424  * \param avgLevMotorPower The field value to set.
2425  */
2426 void LapMessage::setAvgLevMotorPower(const quint16 avgLevMotorPower)
2427 {
2428  Q_D(LapMessage);
2429  d->avgLevMotorPower = avgLevMotorPower;
2430 }
2431 /*!
2432  * Sets the \c maxLevMotorPower field to \a maxLevMotorPower.
2433  *
2434  * \param maxLevMotorPower The field value to set.
2435  */
2436 void LapMessage::setMaxLevMotorPower(const quint16 maxLevMotorPower)
2437 {
2438  Q_D(LapMessage);
2439  d->maxLevMotorPower = maxLevMotorPower;
2440 }
2441 /*!
2442  * Sets the \c levBatteryConsumption field to \a levBatteryConsumption.
2443  *
2444  * \param levBatteryConsumption The field value to set.
2445  */
2446 void LapMessage::setLevBatteryConsumption(const quint8 levBatteryConsumption)
2447 {
2448  Q_D(LapMessage);
2449  d->levBatteryConsumption = levBatteryConsumption;
2450 }
2451 /*!
2452  * Sets the \c avgVerticalRatio field to \a avgVerticalRatio.
2453  *
2454  * \param avgVerticalRatio The field value to set.
2455  */
2456 void LapMessage::setAvgVerticalRatio(const quint16 avgVerticalRatio)
2457 {
2458  Q_D(LapMessage);
2459  d->avgVerticalRatio = avgVerticalRatio;
2460 }
2461 /*!
2462  * Sets the \c avgStanceTimeBalance field to \a avgStanceTimeBalance.
2463  *
2464  * \param avgStanceTimeBalance The field value to set.
2465  */
2466 void LapMessage::setAvgStanceTimeBalance(const quint16 avgStanceTimeBalance)
2467 {
2468  Q_D(LapMessage);
2469  d->avgStanceTimeBalance = avgStanceTimeBalance;
2470 }
2471 /*!
2472  * Sets the \c avgStepLength field to \a avgStepLength.
2473  *
2474  * \param avgStepLength The field value to set.
2475  */
2476 void LapMessage::setAvgStepLength(const quint16 avgStepLength)
2477 {
2478  Q_D(LapMessage);
2479  d->avgStepLength = avgStepLength;
2480 }
2481 /*!
2482  * Sets the \c avgVam field to \a avgVam.
2483  *
2484  * \param avgVam The field value to set.
2485  */
2486 void LapMessage::setAvgVam(const quint16 avgVam)
2487 {
2488  Q_D(LapMessage);
2489  d->avgVam = avgVam;
2490 }
2491 /*!
2492  * Sets the \c totalGrit field to \a totalGrit.
2493  *
2494  * \param totalGrit The field value to set.
2495  */
2496 void LapMessage::setTotalGrit(const float totalGrit)
2497 {
2498  Q_D(LapMessage);
2499  d->totalGrit = totalGrit;
2500 }
2501 /*!
2502  * Sets the \c totalFlow field to \a totalFlow.
2503  *
2504  * \param totalFlow The field value to set.
2505  */
2506 void LapMessage::setTotalFlow(const float totalFlow)
2507 {
2508  Q_D(LapMessage);
2509  d->totalFlow = totalFlow;
2510 }
2511 /*!
2512  * Sets the \c jumpCount field to \a jumpCount.
2513  *
2514  * \param jumpCount The field value to set.
2515  */
2516 void LapMessage::setJumpCount(const quint16 jumpCount)
2517 {
2518  Q_D(LapMessage);
2519  d->jumpCount = jumpCount;
2520 }
2521 /*!
2522  * Sets the \c avgGrit field to \a avgGrit.
2523  *
2524  * \param avgGrit The field value to set.
2525  */
2526 void LapMessage::setAvgGrit(const float avgGrit)
2527 {
2528  Q_D(LapMessage);
2529  d->avgGrit = avgGrit;
2530 }
2531 /*!
2532  * Sets the \c avgFlow field to \a avgFlow.
2533  *
2534  * \param avgFlow The field value to set.
2535  */
2536 void LapMessage::setAvgFlow(const float avgFlow)
2537 {
2538  Q_D(LapMessage);
2539  d->avgFlow = avgFlow;
2540 }
2541 /*!
2542  * Sets the \c totalFractionalAscent field to \a totalFractionalAscent.
2543  *
2544  * \param totalFractionalAscent The field value to set.
2545  */
2546 void LapMessage::setTotalFractionalAscent(const quint8 totalFractionalAscent)
2547 {
2548  Q_D(LapMessage);
2549  d->totalFractionalAscent = totalFractionalAscent;
2550 }
2551 /*!
2552  * Sets the \c totalFractionalDescent field to \a totalFractionalDescent.
2553  *
2554  * \param totalFractionalDescent The field value to set.
2555  */
2556 void LapMessage::setTotalFractionalDescent(const quint8 totalFractionalDescent)
2557 {
2558  Q_D(LapMessage);
2559  d->totalFractionalDescent = totalFractionalDescent;
2560 }
2561 /*!
2562  * Sets the \c avgCoreTemperature field to \a avgCoreTemperature.
2563  *
2564  * \param avgCoreTemperature The field value to set.
2565  */
2566 void LapMessage::setAvgCoreTemperature(const quint16 avgCoreTemperature)
2567 {
2568  Q_D(LapMessage);
2569  d->avgCoreTemperature = avgCoreTemperature;
2570 }
2571 /*!
2572  * Sets the \c minCoreTemperature field to \a minCoreTemperature.
2573  *
2574  * \param minCoreTemperature The field value to set.
2575  */
2576 void LapMessage::setMinCoreTemperature(const quint16 minCoreTemperature)
2577 {
2578  Q_D(LapMessage);
2579  d->minCoreTemperature = minCoreTemperature;
2580 }
2581 /*!
2582  * Sets the \c maxCoreTemperature field to \a maxCoreTemperature.
2583  *
2584  * \param maxCoreTemperature The field value to set.
2585  */
2586 void LapMessage::setMaxCoreTemperature(const quint16 maxCoreTemperature)
2587 {
2588  Q_D(LapMessage);
2589  d->maxCoreTemperature = maxCoreTemperature;
2590 }
2591 
2592 /// \cond internal
2593 
2594 /*!
2595  * \internal
2596  *
2597  * \class LapMessagePrivate
2598  *
2599  * The LapMessagePrivate class provides private implementation for the LapMessage.
2600  *
2601  * \sa LapMessage
2602  */
2603 
2604 /*!
2605  * \internal
2606  *
2607  * Constructs a LapMessagePrivate object with public implementation \a q.
2608  *
2609  * \param q Pointer to public implementaton.
2610  */
2611 LapMessagePrivate::LapMessagePrivate(LapMessage * const q)
2613  , messageIndex(static_cast<MessageIndex>(-1))
2614  , timestamp(static_cast<DateTime>(-1))
2615  , event(static_cast<Event>(-1))
2616  , eventType(static_cast<EventType>(-1))
2617  , startTime(static_cast<DateTime>(-1))
2618  , startPositionLat(0x7FFFFFFF)
2619  , startPositionLong(0x7FFFFFFF)
2620  , endPositionLat(0x7FFFFFFF)
2621  , endPositionLong(0x7FFFFFFF)
2622  , totalElapsedTime(0xFFFFFFFF)
2623  , totalTimerTime(0xFFFFFFFF)
2624  , totalDistance(0xFFFFFFFF)
2625  , totalCycles(0xFFFFFFFF)
2626  , totalCalories(0xFFFF)
2627  , totalFatCalories(0xFFFF)
2628  , avgSpeed(0xFFFF)
2629  , maxSpeed(0xFFFF)
2630  , avgHeartRate(0xFF)
2631  , maxHeartRate(0xFF)
2632  , avgCadence(0xFF)
2633  , maxCadence(0xFF)
2634  , avgPower(0xFFFF)
2635  , maxPower(0xFFFF)
2636  , totalAscent(0xFFFF)
2637  , totalDescent(0xFFFF)
2638  , intensity(static_cast<Intensity>(-1))
2639  , lapTrigger(static_cast<LapTrigger>(-1))
2640  , sport(static_cast<Sport>(-1))
2641  , eventGroup(0xFF)
2642  , numLengths(0xFFFF)
2643  , normalizedPower(0xFFFF)
2644  , leftRightBalance(static_cast<LeftRightBalance100>(-1))
2645  , firstLengthIndex(0xFFFF)
2646  , avgStrokeDistance(0xFFFF)
2647  , swimStroke(static_cast<SwimStroke>(-1))
2648  , subSport(static_cast<SubSport>(-1))
2649  , numActiveLengths(0xFFFF)
2650  , totalWork(0xFFFFFFFF)
2651  , avgAltitude(0xFFFF)
2652  , maxAltitude(0xFFFF)
2653  , gpsAccuracy(0xFF)
2654  , avgGrade(0x7FFF)
2655  , avgPosGrade(0x7FFF)
2656  , avgNegGrade(0x7FFF)
2657  , maxPosGrade(0x7FFF)
2658  , maxNegGrade(0x7FFF)
2659  , avgTemperature(0x7F)
2660  , maxTemperature(0x7F)
2661  , totalMovingTime(0xFFFFFFFF)
2662  , avgPosVerticalSpeed(0x7FFF)
2663  , avgNegVerticalSpeed(0x7FFF)
2664  , maxPosVerticalSpeed(0x7FFF)
2665  , maxNegVerticalSpeed(0x7FFF)
2666  , timeInHrZone(0xFFFFFFFF)
2667  , timeInSpeedZone(0xFFFFFFFF)
2668  , timeInCadenceZone(0xFFFFFFFF)
2669  , timeInPowerZone(0xFFFFFFFF)
2670  , repetitionNum(0xFFFF)
2671  , minAltitude(0xFFFF)
2672  , minHeartRate(0xFF)
2673  , wktStepIndex(static_cast<MessageIndex>(-1))
2674  , opponentScore(0xFFFF)
2675  , strokeCount(0xFFFF)
2676  , zoneCount(0xFFFF)
2677  , avgVerticalOscillation(0xFFFF)
2678  , avgStanceTimePercent(0xFFFF)
2679  , avgStanceTime(0xFFFF)
2680  , avgFractionalCadence(0xFF)
2681  , maxFractionalCadence(0xFF)
2682  , totalFractionalCycles(0xFF)
2683  , playerScore(0xFFFF)
2684  , avgTotalHemoglobinConc(0xFFFF)
2685  , minTotalHemoglobinConc(0xFFFF)
2686  , maxTotalHemoglobinConc(0xFFFF)
2687  , avgSaturatedHemoglobinPercent(0xFFFF)
2688  , minSaturatedHemoglobinPercent(0xFFFF)
2689  , maxSaturatedHemoglobinPercent(0xFFFF)
2690  , avgLeftTorqueEffectiveness(0xFF)
2691  , avgRightTorqueEffectiveness(0xFF)
2692  , avgLeftPedalSmoothness(0xFF)
2693  , avgRightPedalSmoothness(0xFF)
2694  , avgCombinedPedalSmoothness(0xFF)
2695  , timeStanding(0xFFFFFFFF)
2696  , standCount(0xFFFF)
2697  , avgLeftPco(0x7F)
2698  , avgRightPco(0x7F)
2699  , avgLeftPowerPhase(0xFF)
2700  , avgLeftPowerPhasePeak(0xFF)
2701  , avgRightPowerPhase(0xFF)
2702  , avgRightPowerPhasePeak(0xFF)
2703  , avgPowerPosition(0xFFFF)
2704  , maxPowerPosition(0xFFFF)
2705  , avgCadencePosition(0xFF)
2706  , maxCadencePosition(0xFF)
2707  , enhancedAvgSpeed(0xFFFFFFFF)
2708  , enhancedMaxSpeed(0xFFFFFFFF)
2709  , enhancedAvgAltitude(0xFFFFFFFF)
2710  , enhancedMinAltitude(0xFFFFFFFF)
2711  , enhancedMaxAltitude(0xFFFFFFFF)
2712  , avgLevMotorPower(0xFFFF)
2713  , maxLevMotorPower(0xFFFF)
2714  , levBatteryConsumption(0xFF)
2715  , avgVerticalRatio(0xFFFF)
2716  , avgStanceTimeBalance(0xFFFF)
2717  , avgStepLength(0xFFFF)
2718  , avgVam(0xFFFF)
2719  , totalGrit(static_cast<float>(-1))
2720  , totalFlow(static_cast<float>(-1))
2721  , jumpCount(0xFFFF)
2722  , avgGrit(static_cast<float>(-1))
2723  , avgFlow(static_cast<float>(-1))
2724  , totalFractionalAscent(0xFF)
2725  , totalFractionalDescent(0xFF)
2726  , avgCoreTemperature(0xFFFF)
2727  , minCoreTemperature(0xFFFF)
2728  , maxCoreTemperature(0xFFFF)
2729 {
2730  globalMessageNumber = MesgNum::Lap;
2731 }
2732 
2733 /*!
2734  * \internal
2735  *
2736  * Destroys the LapMessagePrivate object.
2737  */
2739 {
2740 
2741 }
2742 
2744  const int fieldId, const QByteArray &data, const FitBaseType baseType, const bool bigEndian)
2745 {
2746  switch (fieldId) {
2747  case 254: // See Profile.xlsx::Messages:lap.messageIndex
2748  if (!verify(data, baseType, 2, FitBaseType::Uint16, "lap.messageIndex")) return false;
2749  this->messageIndex = static_cast<MessageIndex>(bigEndian ? qFromBigEndian<quint16>(data) : qFromLittleEndian<quint16>(data));
2750  break;
2751  case 253: // See Profile.xlsx::Messages:lap.timestamp
2752  if (!verify(data, baseType, 4, FitBaseType::Uint32, "lap.timestamp")) return false;
2753  this->timestamp = static_cast<DateTime>(bigEndian ? qFromBigEndian<quint32>(data) : qFromLittleEndian<quint32>(data));
2754  break;
2755  case 0: // See Profile.xlsx::Messages:lap.event
2756  if (!verify(data, baseType, 1, FitBaseType::Enum, "lap.event")) return false;
2757  this->event = static_cast<Event>(data.at(0));
2758  break;
2759  case 1: // See Profile.xlsx::Messages:lap.eventType
2760  if (!verify(data, baseType, 1, FitBaseType::Enum, "lap.eventType")) return false;
2761  this->eventType = static_cast<EventType>(data.at(0));
2762  break;
2763  case 2: // See Profile.xlsx::Messages:lap.startTime
2764  if (!verify(data, baseType, 4, FitBaseType::Uint32, "lap.startTime")) return false;
2765  this->startTime = static_cast<DateTime>(bigEndian ? qFromBigEndian<quint32>(data) : qFromLittleEndian<quint32>(data));
2766  break;
2767  case 3: // See Profile.xlsx::Messages:lap.startPositionLat
2768  if (!verify(data, baseType, 4, FitBaseType::Sint32, "lap.startPositionLat")) return false;
2769  this->startPositionLat = static_cast<qint32>(bigEndian ? qFromBigEndian< qint32>(data) : qFromLittleEndian< qint32>(data));
2770  break;
2771  case 4: // See Profile.xlsx::Messages:lap.startPositionLong
2772  if (!verify(data, baseType, 4, FitBaseType::Sint32, "lap.startPositionLong")) return false;
2773  this->startPositionLong = static_cast<qint32>(bigEndian ? qFromBigEndian< qint32>(data) : qFromLittleEndian< qint32>(data));
2774  break;
2775  case 5: // See Profile.xlsx::Messages:lap.endPositionLat
2776  if (!verify(data, baseType, 4, FitBaseType::Sint32, "lap.endPositionLat")) return false;
2777  this->endPositionLat = static_cast<qint32>(bigEndian ? qFromBigEndian< qint32>(data) : qFromLittleEndian< qint32>(data));
2778  break;
2779  case 6: // See Profile.xlsx::Messages:lap.endPositionLong
2780  if (!verify(data, baseType, 4, FitBaseType::Sint32, "lap.endPositionLong")) return false;
2781  this->endPositionLong = static_cast<qint32>(bigEndian ? qFromBigEndian< qint32>(data) : qFromLittleEndian< qint32>(data));
2782  break;
2783  case 7: // See Profile.xlsx::Messages:lap.totalElapsedTime
2784  if (!verify(data, baseType, 4, FitBaseType::Uint32, "lap.totalElapsedTime")) return false;
2785  this->totalElapsedTime = static_cast<quint32>(bigEndian ? qFromBigEndian<quint32>(data) : qFromLittleEndian<quint32>(data));
2786  break;
2787  case 8: // See Profile.xlsx::Messages:lap.totalTimerTime
2788  if (!verify(data, baseType, 4, FitBaseType::Uint32, "lap.totalTimerTime")) return false;
2789  this->totalTimerTime = static_cast<quint32>(bigEndian ? qFromBigEndian<quint32>(data) : qFromLittleEndian<quint32>(data));
2790  break;
2791  case 9: // See Profile.xlsx::Messages:lap.totalDistance
2792  if (!verify(data, baseType, 4, FitBaseType::Uint32, "lap.totalDistance")) return false;
2793  this->totalDistance = static_cast<quint32>(bigEndian ? qFromBigEndian<quint32>(data) : qFromLittleEndian<quint32>(data));
2794  break;
2795  case 10: // See Profile.xlsx::Messages:lap.totalCycles
2796  if (!verify(data, baseType, 4, FitBaseType::Uint32, "lap.totalCycles")) return false;
2797  this->totalCycles = static_cast<quint32>(bigEndian ? qFromBigEndian<quint32>(data) : qFromLittleEndian<quint32>(data));
2798  break;
2799  case 11: // See Profile.xlsx::Messages:lap.totalCalories
2800  if (!verify(data, baseType, 2, FitBaseType::Uint16, "lap.totalCalories")) return false;
2801  this->totalCalories = static_cast<quint16>(bigEndian ? qFromBigEndian<quint16>(data) : qFromLittleEndian<quint16>(data));
2802  break;
2803  case 12: // See Profile.xlsx::Messages:lap.totalFatCalories
2804  if (!verify(data, baseType, 2, FitBaseType::Uint16, "lap.totalFatCalories")) return false;
2805  this->totalFatCalories = static_cast<quint16>(bigEndian ? qFromBigEndian<quint16>(data) : qFromLittleEndian<quint16>(data));
2806  break;
2807  case 13: // See Profile.xlsx::Messages:lap.avgSpeed
2808  if (!verify(data, baseType, 2, FitBaseType::Uint16, "lap.avgSpeed")) return false;
2809  this->avgSpeed = static_cast<quint16>(bigEndian ? qFromBigEndian<quint16>(data) : qFromLittleEndian<quint16>(data));
2810  break;
2811  case 14: // See Profile.xlsx::Messages:lap.maxSpeed
2812  if (!verify(data, baseType, 2, FitBaseType::Uint16, "lap.maxSpeed")) return false;
2813  this->maxSpeed = static_cast<quint16>(bigEndian ? qFromBigEndian<quint16>(data) : qFromLittleEndian<quint16>(data));
2814  break;
2815  case 15: // See Profile.xlsx::Messages:lap.avgHeartRate
2816  if (!verify(data, baseType, 1, FitBaseType::Uint8, "lap.avgHeartRate")) return false;
2817  this->avgHeartRate = static_cast<quint8>(data.at(0));
2818  break;
2819  case 16: // See Profile.xlsx::Messages:lap.maxHeartRate
2820  if (!verify(data, baseType, 1, FitBaseType::Uint8, "lap.maxHeartRate")) return false;
2821  this->maxHeartRate = static_cast<quint8>(data.at(0));
2822  break;
2823  case 17: // See Profile.xlsx::Messages:lap.avgCadence
2824  if (!verify(data, baseType, 1, FitBaseType::Uint8, "lap.avgCadence")) return false;
2825  this->avgCadence = static_cast<quint8>(data.at(0));
2826  break;
2827  case 18: // See Profile.xlsx::Messages:lap.maxCadence
2828  if (!verify(data, baseType, 1, FitBaseType::Uint8, "lap.maxCadence")) return false;
2829  this->maxCadence = static_cast<quint8>(data.at(0));
2830  break;
2831  case 19: // See Profile.xlsx::Messages:lap.avgPower
2832  if (!verify(data, baseType, 2, FitBaseType::Uint16, "lap.avgPower")) return false;
2833  this->avgPower = static_cast<quint16>(bigEndian ? qFromBigEndian<quint16>(data) : qFromLittleEndian<quint16>(data));
2834  break;
2835  case 20: // See Profile.xlsx::Messages:lap.maxPower
2836  if (!verify(data, baseType, 2, FitBaseType::Uint16, "lap.maxPower")) return false;
2837  this->maxPower = static_cast<quint16>(bigEndian ? qFromBigEndian<quint16>(data) : qFromLittleEndian<quint16>(data));
2838  break;
2839  case 21: // See Profile.xlsx::Messages:lap.totalAscent
2840  if (!verify(data, baseType, 2, FitBaseType::Uint16, "lap.totalAscent")) return false;
2841  this->totalAscent = static_cast<quint16>(bigEndian ? qFromBigEndian<quint16>(data) : qFromLittleEndian<quint16>(data));
2842  break;
2843  case 22: // See Profile.xlsx::Messages:lap.totalDescent
2844  if (!verify(data, baseType, 2, FitBaseType::Uint16, "lap.totalDescent")) return false;
2845  this->totalDescent = static_cast<quint16>(bigEndian ? qFromBigEndian<quint16>(data) : qFromLittleEndian<quint16>(data));
2846  break;
2847  case 23: // See Profile.xlsx::Messages:lap.intensity
2848  if (!verify(data, baseType, 1, FitBaseType::Enum, "lap.intensity")) return false;
2849  this->intensity = static_cast<Intensity>(data.at(0));
2850  break;
2851  case 24: // See Profile.xlsx::Messages:lap.lapTrigger
2852  if (!verify(data, baseType, 1, FitBaseType::Enum, "lap.lapTrigger")) return false;
2853  this->lapTrigger = static_cast<LapTrigger>(data.at(0));
2854  break;
2855  case 25: // See Profile.xlsx::Messages:lap.sport
2856  if (!verify(data, baseType, 1, FitBaseType::Enum, "lap.sport")) return false;
2857  this->sport = static_cast<Sport>(data.at(0));
2858  break;
2859  case 26: // See Profile.xlsx::Messages:lap.eventGroup
2860  if (!verify(data, baseType, 1, FitBaseType::Uint8, "lap.eventGroup")) return false;
2861  this->eventGroup = static_cast<quint8>(data.at(0));
2862  break;
2863  case 32: // See Profile.xlsx::Messages:lap.numLengths
2864  if (!verify(data, baseType, 2, FitBaseType::Uint16, "lap.numLengths")) return false;
2865  this->numLengths = static_cast<quint16>(bigEndian ? qFromBigEndian<quint16>(data) : qFromLittleEndian<quint16>(data));
2866  break;
2867  case 33: // See Profile.xlsx::Messages:lap.normalizedPower
2868  if (!verify(data, baseType, 2, FitBaseType::Uint16, "lap.normalizedPower")) return false;
2869  this->normalizedPower = static_cast<quint16>(bigEndian ? qFromBigEndian<quint16>(data) : qFromLittleEndian<quint16>(data));
2870  break;
2871  case 34: // See Profile.xlsx::Messages:lap.leftRightBalance
2872  if (!verify(data, baseType, 2, FitBaseType::Uint16, "lap.leftRightBalance")) return false;
2873  this->leftRightBalance = static_cast<LeftRightBalance100>(bigEndian ? qFromBigEndian<quint16>(data) : qFromLittleEndian<quint16>(data));
2874  break;
2875  case 35: // See Profile.xlsx::Messages:lap.firstLengthIndex
2876  if (!verify(data, baseType, 2, FitBaseType::Uint16, "lap.firstLengthIndex")) return false;
2877  this->firstLengthIndex = static_cast<quint16>(bigEndian ? qFromBigEndian<quint16>(data) : qFromLittleEndian<quint16>(data));
2878  break;
2879  case 37: // See Profile.xlsx::Messages:lap.avgStrokeDistance
2880  if (!verify(data, baseType, 2, FitBaseType::Uint16, "lap.avgStrokeDistance")) return false;
2881  this->avgStrokeDistance = static_cast<quint16>(bigEndian ? qFromBigEndian<quint16>(data) : qFromLittleEndian<quint16>(data));
2882  break;
2883  case 38: // See Profile.xlsx::Messages:lap.swimStroke
2884  if (!verify(data, baseType, 1, FitBaseType::Enum, "lap.swimStroke")) return false;
2885  this->swimStroke = static_cast<SwimStroke>(data.at(0));
2886  break;
2887  case 39: // See Profile.xlsx::Messages:lap.subSport
2888  if (!verify(data, baseType, 1, FitBaseType::Enum, "lap.subSport")) return false;
2889  this->subSport = static_cast<SubSport>(data.at(0));
2890  break;
2891  case 40: // See Profile.xlsx::Messages:lap.numActiveLengths
2892  if (!verify(data, baseType, 2, FitBaseType::Uint16, "lap.numActiveLengths")) return false;
2893  this->numActiveLengths = static_cast<quint16>(bigEndian ? qFromBigEndian<quint16>(data) : qFromLittleEndian<quint16>(data));
2894  break;
2895  case 41: // See Profile.xlsx::Messages:lap.totalWork
2896  if (!verify(data, baseType, 4, FitBaseType::Uint32, "lap.totalWork")) return false;
2897  this->totalWork = static_cast<quint32>(bigEndian ? qFromBigEndian<quint32>(data) : qFromLittleEndian<quint32>(data));
2898  break;
2899  case 42: // See Profile.xlsx::Messages:lap.avgAltitude
2900  if (!verify(data, baseType, 2, FitBaseType::Uint16, "lap.avgAltitude")) return false;
2901  this->avgAltitude = static_cast<quint16>(bigEndian ? qFromBigEndian<quint16>(data) : qFromLittleEndian<quint16>(data));
2902  break;
2903  case 43: // See Profile.xlsx::Messages:lap.maxAltitude
2904  if (!verify(data, baseType, 2, FitBaseType::Uint16, "lap.maxAltitude")) return false;
2905  this->maxAltitude = static_cast<quint16>(bigEndian ? qFromBigEndian<quint16>(data) : qFromLittleEndian<quint16>(data));
2906  break;
2907  case 44: // See Profile.xlsx::Messages:lap.gpsAccuracy
2908  if (!verify(data, baseType, 1, FitBaseType::Uint8, "lap.gpsAccuracy")) return false;
2909  this->gpsAccuracy = static_cast<quint8>(data.at(0));
2910  break;
2911  case 45: // See Profile.xlsx::Messages:lap.avgGrade
2912  if (!verify(data, baseType, 2, FitBaseType::Sint16, "lap.avgGrade")) return false;
2913  this->avgGrade = static_cast<qint16>(bigEndian ? qFromBigEndian< qint16>(data) : qFromLittleEndian< qint16>(data));
2914  break;
2915  case 46: // See Profile.xlsx::Messages:lap.avgPosGrade
2916  if (!verify(data, baseType, 2, FitBaseType::Sint16, "lap.avgPosGrade")) return false;
2917  this->avgPosGrade = static_cast<qint16>(bigEndian ? qFromBigEndian< qint16>(data) : qFromLittleEndian< qint16>(data));
2918  break;
2919  case 47: // See Profile.xlsx::Messages:lap.avgNegGrade
2920  if (!verify(data, baseType, 2, FitBaseType::Sint16, "lap.avgNegGrade")) return false;
2921  this->avgNegGrade = static_cast<qint16>(bigEndian ? qFromBigEndian< qint16>(data) : qFromLittleEndian< qint16>(data));
2922  break;
2923  case 48: // See Profile.xlsx::Messages:lap.maxPosGrade
2924  if (!verify(data, baseType, 2, FitBaseType::Sint16, "lap.maxPosGrade")) return false;
2925  this->maxPosGrade = static_cast<qint16>(bigEndian ? qFromBigEndian< qint16>(data) : qFromLittleEndian< qint16>(data));
2926  break;
2927  case 49: // See Profile.xlsx::Messages:lap.maxNegGrade
2928  if (!verify(data, baseType, 2, FitBaseType::Sint16, "lap.maxNegGrade")) return false;
2929  this->maxNegGrade = static_cast<qint16>(bigEndian ? qFromBigEndian< qint16>(data) : qFromLittleEndian< qint16>(data));
2930  break;
2931  case 50: // See Profile.xlsx::Messages:lap.avgTemperature
2932  if (!verify(data, baseType, 1, FitBaseType::Sint8, "lap.avgTemperature")) return false;
2933  this->avgTemperature = static_cast<qint8>(data.at(0));
2934  break;
2935  case 51: // See Profile.xlsx::Messages:lap.maxTemperature
2936  if (!verify(data, baseType, 1, FitBaseType::Sint8, "lap.maxTemperature")) return false;
2937  this->maxTemperature = static_cast<qint8>(data.at(0));
2938  break;
2939  case 52: // See Profile.xlsx::Messages:lap.totalMovingTime
2940  if (!verify(data, baseType, 4, FitBaseType::Uint32, "lap.totalMovingTime")) return false;
2941  this->totalMovingTime = static_cast<quint32>(bigEndian ? qFromBigEndian<quint32>(data) : qFromLittleEndian<quint32>(data));
2942  break;
2943  case 53: // See Profile.xlsx::Messages:lap.avgPosVerticalSpeed
2944  if (!verify(data, baseType, 2, FitBaseType::Sint16, "lap.avgPosVerticalSpeed")) return false;
2945  this->avgPosVerticalSpeed = static_cast<qint16>(bigEndian ? qFromBigEndian< qint16>(data) : qFromLittleEndian< qint16>(data));
2946  break;
2947  case 54: // See Profile.xlsx::Messages:lap.avgNegVerticalSpeed
2948  if (!verify(data, baseType, 2, FitBaseType::Sint16, "lap.avgNegVerticalSpeed")) return false;
2949  this->avgNegVerticalSpeed = static_cast<qint16>(bigEndian ? qFromBigEndian< qint16>(data) : qFromLittleEndian< qint16>(data));
2950  break;
2951  case 55: // See Profile.xlsx::Messages:lap.maxPosVerticalSpeed
2952  if (!verify(data, baseType, 2, FitBaseType::Sint16, "lap.maxPosVerticalSpeed")) return false;
2953  this->maxPosVerticalSpeed = static_cast<qint16>(bigEndian ? qFromBigEndian< qint16>(data) : qFromLittleEndian< qint16>(data));
2954  break;
2955  case 56: // See Profile.xlsx::Messages:lap.maxNegVerticalSpeed
2956  if (!verify(data, baseType, 2, FitBaseType::Sint16, "lap.maxNegVerticalSpeed")) return false;
2957  this->maxNegVerticalSpeed = static_cast<qint16>(bigEndian ? qFromBigEndian< qint16>(data) : qFromLittleEndian< qint16>(data));
2958  break;
2959  case 57: // See Profile.xlsx::Messages:lap.timeInHrZone
2960  if (!verify(data, baseType, 4, FitBaseType::Uint32, "lap.timeInHrZone")) return false;
2961  this->timeInHrZone = static_cast<quint32>(bigEndian ? qFromBigEndian<quint32>(data) : qFromLittleEndian<quint32>(data));
2962  break;
2963  case 58: // See Profile.xlsx::Messages:lap.timeInSpeedZone
2964  if (!verify(data, baseType, 4, FitBaseType::Uint32, "lap.timeInSpeedZone")) return false;
2965  this->timeInSpeedZone = static_cast<quint32>(bigEndian ? qFromBigEndian<quint32>(data) : qFromLittleEndian<quint32>(data));
2966  break;
2967  case 59: // See Profile.xlsx::Messages:lap.timeInCadenceZone
2968  if (!verify(data, baseType, 4, FitBaseType::Uint32, "lap.timeInCadenceZone")) return false;
2969  this->timeInCadenceZone = static_cast<quint32>(bigEndian ? qFromBigEndian<quint32>(data) : qFromLittleEndian<quint32>(data));
2970  break;
2971  case 60: // See Profile.xlsx::Messages:lap.timeInPowerZone
2972  if (!verify(data, baseType, 4, FitBaseType::Uint32, "lap.timeInPowerZone")) return false;
2973  this->timeInPowerZone = static_cast<quint32>(bigEndian ? qFromBigEndian<quint32>(data) : qFromLittleEndian<quint32>(data));
2974  break;
2975  case 61: // See Profile.xlsx::Messages:lap.repetitionNum
2976  if (!verify(data, baseType, 2, FitBaseType::Uint16, "lap.repetitionNum")) return false;
2977  this->repetitionNum = static_cast<quint16>(bigEndian ? qFromBigEndian<quint16>(data) : qFromLittleEndian<quint16>(data));
2978  break;
2979  case 62: // See Profile.xlsx::Messages:lap.minAltitude
2980  if (!verify(data, baseType, 2, FitBaseType::Uint16, "lap.minAltitude")) return false;
2981  this->minAltitude = static_cast<quint16>(bigEndian ? qFromBigEndian<quint16>(data) : qFromLittleEndian<quint16>(data));
2982  break;
2983  case 63: // See Profile.xlsx::Messages:lap.minHeartRate
2984  if (!verify(data, baseType, 1, FitBaseType::Uint8, "lap.minHeartRate")) return false;
2985  this->minHeartRate = static_cast<quint8>(data.at(0));
2986  break;
2987  case 71: // See Profile.xlsx::Messages:lap.wktStepIndex
2988  if (!verify(data, baseType, 2, FitBaseType::Uint16, "lap.wktStepIndex")) return false;
2989  this->wktStepIndex = static_cast<MessageIndex>(bigEndian ? qFromBigEndian<quint16>(data) : qFromLittleEndian<quint16>(data));
2990  break;
2991  case 74: // See Profile.xlsx::Messages:lap.opponentScore
2992  if (!verify(data, baseType, 2, FitBaseType::Uint16, "lap.opponentScore")) return false;
2993  this->opponentScore = static_cast<quint16>(bigEndian ? qFromBigEndian<quint16>(data) : qFromLittleEndian<quint16>(data));
2994  break;
2995  case 75: // See Profile.xlsx::Messages:lap.strokeCount
2996  if (!verify(data, baseType, 2, FitBaseType::Uint16, "lap.strokeCount")) return false;
2997  this->strokeCount = static_cast<quint16>(bigEndian ? qFromBigEndian<quint16>(data) : qFromLittleEndian<quint16>(data));
2998  break;
2999  case 76: // See Profile.xlsx::Messages:lap.zoneCount
3000  if (!verify(data, baseType, 2, FitBaseType::Uint16, "lap.zoneCount")) return false;
3001  this->zoneCount = static_cast<quint16>(bigEndian ? qFromBigEndian<quint16>(data) : qFromLittleEndian<quint16>(data));
3002  break;
3003  case 77: // See Profile.xlsx::Messages:lap.avgVerticalOscillation
3004  if (!verify(data, baseType, 2, FitBaseType::Uint16, "lap.avgVerticalOscillation")) return false;
3005  this->avgVerticalOscillation = static_cast<quint16>(bigEndian ? qFromBigEndian<quint16>(data) : qFromLittleEndian<quint16>(data));
3006  break;
3007  case 78: // See Profile.xlsx::Messages:lap.avgStanceTimePercent
3008  if (!verify(data, baseType, 2, FitBaseType::Uint16, "lap.avgStanceTimePercent")) return false;
3009  this->avgStanceTimePercent = static_cast<quint16>(bigEndian ? qFromBigEndian<quint16>(data) : qFromLittleEndian<quint16>(data));
3010  break;
3011  case 79: // See Profile.xlsx::Messages:lap.avgStanceTime
3012  if (!verify(data, baseType, 2, FitBaseType::Uint16, "lap.avgStanceTime")) return false;
3013  this->avgStanceTime = static_cast<quint16>(bigEndian ? qFromBigEndian<quint16>(data) : qFromLittleEndian<quint16>(data));
3014  break;
3015  case 80: // See Profile.xlsx::Messages:lap.avgFractionalCadence
3016  if (!verify(data, baseType, 1, FitBaseType::Uint8, "lap.avgFractionalCadence")) return false;
3017  this->avgFractionalCadence = static_cast<quint8>(data.at(0));
3018  break;
3019  case 81: // See Profile.xlsx::Messages:lap.maxFractionalCadence
3020  if (!verify(data, baseType, 1, FitBaseType::Uint8, "lap.maxFractionalCadence")) return false;
3021  this->maxFractionalCadence = static_cast<quint8>(data.at(0));
3022  break;
3023  case 82: // See Profile.xlsx::Messages:lap.totalFractionalCycles
3024  if (!verify(data, baseType, 1, FitBaseType::Uint8, "lap.totalFractionalCycles")) return false;
3025  this->totalFractionalCycles = static_cast<quint8>(data.at(0));
3026  break;
3027  case 83: // See Profile.xlsx::Messages:lap.playerScore
3028  if (!verify(data, baseType, 2, FitBaseType::Uint16, "lap.playerScore")) return false;
3029  this->playerScore = static_cast<quint16>(bigEndian ? qFromBigEndian<quint16>(data) : qFromLittleEndian<quint16>(data));
3030  break;
3031  case 84: // See Profile.xlsx::Messages:lap.avgTotalHemoglobinConc
3032  if (!verify(data, baseType, 2, FitBaseType::Uint16, "lap.avgTotalHemoglobinConc")) return false;
3033  this->avgTotalHemoglobinConc = static_cast<quint16>(bigEndian ? qFromBigEndian<quint16>(data) : qFromLittleEndian<quint16>(data));
3034  break;
3035  case 85: // See Profile.xlsx::Messages:lap.minTotalHemoglobinConc
3036  if (!verify(data, baseType, 2, FitBaseType::Uint16, "lap.minTotalHemoglobinConc")) return false;
3037  this->minTotalHemoglobinConc = static_cast<quint16>(bigEndian ? qFromBigEndian<quint16>(data) : qFromLittleEndian<quint16>(data));
3038  break;
3039  case 86: // See Profile.xlsx::Messages:lap.maxTotalHemoglobinConc
3040  if (!verify(data, baseType, 2, FitBaseType::Uint16, "lap.maxTotalHemoglobinConc")) return false;
3041  this->maxTotalHemoglobinConc = static_cast<quint16>(bigEndian ? qFromBigEndian<quint16>(data) : qFromLittleEndian<quint16>(data));
3042  break;
3043  case 87: // See Profile.xlsx::Messages:lap.avgSaturatedHemoglobinPercent
3044  if (!verify(data, baseType, 2, FitBaseType::Uint16, "lap.avgSaturatedHemoglobinPercent")) return false;
3045  this->avgSaturatedHemoglobinPercent = static_cast<quint16>(bigEndian ? qFromBigEndian<quint16>(data) : qFromLittleEndian<quint16>(data));
3046  break;
3047  case 88: // See Profile.xlsx::Messages:lap.minSaturatedHemoglobinPercent
3048  if (!verify(data, baseType, 2, FitBaseType::Uint16, "lap.minSaturatedHemoglobinPercent")) return false;
3049  this->minSaturatedHemoglobinPercent = static_cast<quint16>(bigEndian ? qFromBigEndian<quint16>(data) : qFromLittleEndian<quint16>(data));
3050  break;
3051  case 89: // See Profile.xlsx::Messages:lap.maxSaturatedHemoglobinPercent
3052  if (!verify(data, baseType, 2, FitBaseType::Uint16, "lap.maxSaturatedHemoglobinPercent")) return false;
3053  this->maxSaturatedHemoglobinPercent = static_cast<quint16>(bigEndian ? qFromBigEndian<quint16>(data) : qFromLittleEndian<quint16>(data));
3054  break;
3055  case 91: // See Profile.xlsx::Messages:lap.avgLeftTorqueEffectiveness
3056  if (!verify(data, baseType, 1, FitBaseType::Uint8, "lap.avgLeftTorqueEffectiveness")) return false;
3057  this->avgLeftTorqueEffectiveness = static_cast<quint8>(data.at(0));
3058  break;
3059  case 92: // See Profile.xlsx::Messages:lap.avgRightTorqueEffectiveness
3060  if (!verify(data, baseType, 1, FitBaseType::Uint8, "lap.avgRightTorqueEffectiveness")) return false;
3061  this->avgRightTorqueEffectiveness = static_cast<quint8>(data.at(0));
3062  break;
3063  case 93: // See Profile.xlsx::Messages:lap.avgLeftPedalSmoothness
3064  if (!verify(data, baseType, 1, FitBaseType::Uint8, "lap.avgLeftPedalSmoothness")) return false;
3065  this->avgLeftPedalSmoothness = static_cast<quint8>(data.at(0));
3066  break;
3067  case 94: // See Profile.xlsx::Messages:lap.avgRightPedalSmoothness
3068  if (!verify(data, baseType, 1, FitBaseType::Uint8, "lap.avgRightPedalSmoothness")) return false;
3069  this->avgRightPedalSmoothness = static_cast<quint8>(data.at(0));
3070  break;
3071  case 95: // See Profile.xlsx::Messages:lap.avgCombinedPedalSmoothness
3072  if (!verify(data, baseType, 1, FitBaseType::Uint8, "lap.avgCombinedPedalSmoothness")) return false;
3073  this->avgCombinedPedalSmoothness = static_cast<quint8>(data.at(0));
3074  break;
3075  case 98: // See Profile.xlsx::Messages:lap.timeStanding
3076  if (!verify(data, baseType, 4, FitBaseType::Uint32, "lap.timeStanding")) return false;
3077  this->timeStanding = static_cast<quint32>(bigEndian ? qFromBigEndian<quint32>(data) : qFromLittleEndian<quint32>(data));
3078  break;
3079  case 99: // See Profile.xlsx::Messages:lap.standCount
3080  if (!verify(data, baseType, 2, FitBaseType::Uint16, "lap.standCount")) return false;
3081  this->standCount = static_cast<quint16>(bigEndian ? qFromBigEndian<quint16>(data) : qFromLittleEndian<quint16>(data));
3082  break;
3083  case 100: // See Profile.xlsx::Messages:lap.avgLeftPco
3084  if (!verify(data, baseType, 1, FitBaseType::Sint8, "lap.avgLeftPco")) return false;
3085  this->avgLeftPco = static_cast<qint8>(data.at(0));
3086  break;
3087  case 101: // See Profile.xlsx::Messages:lap.avgRightPco
3088  if (!verify(data, baseType, 1, FitBaseType::Sint8, "lap.avgRightPco")) return false;
3089  this->avgRightPco = static_cast<qint8>(data.at(0));
3090  break;
3091  case 102: // See Profile.xlsx::Messages:lap.avgLeftPowerPhase
3092  if (!verify(data, baseType, 1, FitBaseType::Uint8, "lap.avgLeftPowerPhase")) return false;
3093  this->avgLeftPowerPhase = static_cast<quint8>(data.at(0));
3094  break;
3095  case 103: // See Profile.xlsx::Messages:lap.avgLeftPowerPhasePeak
3096  if (!verify(data, baseType, 1, FitBaseType::Uint8, "lap.avgLeftPowerPhasePeak")) return false;
3097  this->avgLeftPowerPhasePeak = static_cast<quint8>(data.at(0));
3098  break;
3099  case 104: // See Profile.xlsx::Messages:lap.avgRightPowerPhase
3100  if (!verify(data, baseType, 1, FitBaseType::Uint8, "lap.avgRightPowerPhase")) return false;
3101  this->avgRightPowerPhase = static_cast<quint8>(data.at(0));
3102  break;
3103  case 105: // See Profile.xlsx::Messages:lap.avgRightPowerPhasePeak
3104  if (!verify(data, baseType, 1, FitBaseType::Uint8, "lap.avgRightPowerPhasePeak")) return false;
3105  this->avgRightPowerPhasePeak = static_cast<quint8>(data.at(0));
3106  break;
3107  case 106: // See Profile.xlsx::Messages:lap.avgPowerPosition
3108  if (!verify(data, baseType, 2, FitBaseType::Uint16, "lap.avgPowerPosition")) return false;
3109  this->avgPowerPosition = static_cast<quint16>(bigEndian ? qFromBigEndian<quint16>(data) : qFromLittleEndian<quint16>(data));
3110  break;
3111  case 107: // See Profile.xlsx::Messages:lap.maxPowerPosition
3112  if (!verify(data, baseType, 2, FitBaseType::Uint16, "lap.maxPowerPosition")) return false;
3113  this->maxPowerPosition = static_cast<quint16>(bigEndian ? qFromBigEndian<quint16>(data) : qFromLittleEndian<quint16>(data));
3114  break;
3115  case 108: // See Profile.xlsx::Messages:lap.avgCadencePosition
3116  if (!verify(data, baseType, 1, FitBaseType::Uint8, "lap.avgCadencePosition")) return false;
3117  this->avgCadencePosition = static_cast<quint8>(data.at(0));
3118  break;
3119  case 109: // See Profile.xlsx::Messages:lap.maxCadencePosition
3120  if (!verify(data, baseType, 1, FitBaseType::Uint8, "lap.maxCadencePosition")) return false;
3121  this->maxCadencePosition = static_cast<quint8>(data.at(0));
3122  break;
3123  case 110: // See Profile.xlsx::Messages:lap.enhancedAvgSpeed
3124  if (!verify(data, baseType, 4, FitBaseType::Uint32, "lap.enhancedAvgSpeed")) return false;
3125  this->enhancedAvgSpeed = static_cast<quint32>(bigEndian ? qFromBigEndian<quint32>(data) : qFromLittleEndian<quint32>(data));
3126  break;
3127  case 111: // See Profile.xlsx::Messages:lap.enhancedMaxSpeed
3128  if (!verify(data, baseType, 4, FitBaseType::Uint32, "lap.enhancedMaxSpeed")) return false;
3129  this->enhancedMaxSpeed = static_cast<quint32>(bigEndian ? qFromBigEndian<quint32>(data) : qFromLittleEndian<quint32>(data));
3130  break;
3131  case 112: // See Profile.xlsx::Messages:lap.enhancedAvgAltitude
3132  if (!verify(data, baseType, 4, FitBaseType::Uint32, "lap.enhancedAvgAltitude")) return false;
3133  this->enhancedAvgAltitude = static_cast<quint32>(bigEndian ? qFromBigEndian<quint32>(data) : qFromLittleEndian<quint32>(data));
3134  break;
3135  case 113: // See Profile.xlsx::Messages:lap.enhancedMinAltitude
3136  if (!verify(data, baseType, 4, FitBaseType::Uint32, "lap.enhancedMinAltitude")) return false;
3137  this->enhancedMinAltitude = static_cast<quint32>(bigEndian ? qFromBigEndian<quint32>(data) : qFromLittleEndian<quint32>(data));
3138  break;
3139  case 114: // See Profile.xlsx::Messages:lap.enhancedMaxAltitude
3140  if (!verify(data, baseType, 4, FitBaseType::Uint32, "lap.enhancedMaxAltitude")) return false;
3141  this->enhancedMaxAltitude = static_cast<quint32>(bigEndian ? qFromBigEndian<quint32>(data) : qFromLittleEndian<quint32>(data));
3142  break;
3143  case 115: // See Profile.xlsx::Messages:lap.avgLevMotorPower
3144  if (!verify(data, baseType, 2, FitBaseType::Uint16, "lap.avgLevMotorPower")) return false;
3145  this->avgLevMotorPower = static_cast<quint16>(bigEndian ? qFromBigEndian<quint16>(data) : qFromLittleEndian<quint16>(data));
3146  break;
3147  case 116: // See Profile.xlsx::Messages:lap.maxLevMotorPower
3148  if (!verify(data, baseType, 2, FitBaseType::Uint16, "lap.maxLevMotorPower")) return false;
3149  this->maxLevMotorPower = static_cast<quint16>(bigEndian ? qFromBigEndian<quint16>(data) : qFromLittleEndian<quint16>(data));
3150  break;
3151  case 117: // See Profile.xlsx::Messages:lap.levBatteryConsumption
3152  if (!verify(data, baseType, 1, FitBaseType::Uint8, "lap.levBatteryConsumption")) return false;
3153  this->levBatteryConsumption = static_cast<quint8>(data.at(0));
3154  break;
3155  case 118: // See Profile.xlsx::Messages:lap.avgVerticalRatio
3156  if (!verify(data, baseType, 2, FitBaseType::Uint16, "lap.avgVerticalRatio")) return false;
3157  this->avgVerticalRatio = static_cast<quint16>(bigEndian ? qFromBigEndian<quint16>(data) : qFromLittleEndian<quint16>(data));
3158  break;
3159  case 119: // See Profile.xlsx::Messages:lap.avgStanceTimeBalance
3160  if (!verify(data, baseType, 2, FitBaseType::Uint16, "lap.avgStanceTimeBalance")) return false;
3161  this->avgStanceTimeBalance = static_cast<quint16>(bigEndian ? qFromBigEndian<quint16>(data) : qFromLittleEndian<quint16>(data));
3162  break;
3163  case 120: // See Profile.xlsx::Messages:lap.avgStepLength
3164  if (!verify(data, baseType, 2, FitBaseType::Uint16, "lap.avgStepLength")) return false;
3165  this->avgStepLength = static_cast<quint16>(bigEndian ? qFromBigEndian<quint16>(data) : qFromLittleEndian<quint16>(data));
3166  break;
3167  case 121: // See Profile.xlsx::Messages:lap.avgVam
3168  if (!verify(data, baseType, 2, FitBaseType::Uint16, "lap.avgVam")) return false;
3169  this->avgVam = static_cast<quint16>(bigEndian ? qFromBigEndian<quint16>(data) : qFromLittleEndian<quint16>(data));
3170  break;
3171  case 149: // See Profile.xlsx::Messages:lap.totalGrit
3172  if (!verify(data, baseType, 4, FitBaseType::Float32, "lap.totalGrit")) return false;
3173  #if QT_VERSION < QT_VERSION_CHECK(5, 12, 0)
3174  { // Qt's from-endian functions have no float/double specialisations prior to Qt 5.12.
3175  const quint32 localEndian = bigEndian ? qFromBigEndian<quint32>(data) : qFromLittleEndian<quint32>(data);
3176  static_assert(sizeof(localEndian) == 4, "src not expected size");
3177  static_assert(sizeof(this->totalGrit) == 4, "src and dst not the same size");
3178  memcpy(&this->totalGrit, &localEndian, data.size());
3179  }
3180  #else
3181  this->totalGrit = static_cast<float>(bigEndian ? qFromBigEndian<float>(data) : qFromLittleEndian<float>(data));
3182  #endif
3183  break;
3184  case 150: // See Profile.xlsx::Messages:lap.totalFlow
3185  if (!verify(data, baseType, 4, FitBaseType::Float32, "lap.totalFlow")) return false;
3186  #if QT_VERSION < QT_VERSION_CHECK(5, 12, 0)
3187  { // Qt's from-endian functions have no float/double specialisations prior to Qt 5.12.
3188  const quint32 localEndian = bigEndian ? qFromBigEndian<quint32>(data) : qFromLittleEndian<quint32>(data);
3189  static_assert(sizeof(localEndian) == 4, "src not expected size");
3190  static_assert(sizeof(this->totalFlow) == 4, "src and dst not the same size");
3191  memcpy(&this->totalFlow, &localEndian, data.size());
3192  }
3193  #else
3194  this->totalFlow = static_cast<float>(bigEndian ? qFromBigEndian<float>(data) : qFromLittleEndian<float>(data));
3195  #endif
3196  break;
3197  case 151: // See Profile.xlsx::Messages:lap.jumpCount
3198  if (!verify(data, baseType, 2, FitBaseType::Uint16, "lap.jumpCount")) return false;
3199  this->jumpCount = static_cast<quint16>(bigEndian ? qFromBigEndian<quint16>(data) : qFromLittleEndian<quint16>(data));
3200  break;
3201  case 153: // See Profile.xlsx::Messages:lap.avgGrit
3202  if (!verify(data, baseType, 4, FitBaseType::Float32, "lap.avgGrit")) return false;
3203  #if QT_VERSION < QT_VERSION_CHECK(5, 12, 0)
3204  { // Qt's from-endian functions have no float/double specialisations prior to Qt 5.12.
3205  const quint32 localEndian = bigEndian ? qFromBigEndian<quint32>(data) : qFromLittleEndian<quint32>(data);
3206  static_assert(sizeof(localEndian) == 4, "src not expected size");
3207  static_assert(sizeof(this->avgGrit) == 4, "src and dst not the same size");
3208  memcpy(&this->avgGrit, &localEndian, data.size());
3209  }
3210  #else
3211  this->avgGrit = static_cast<float>(bigEndian ? qFromBigEndian<float>(data) : qFromLittleEndian<float>(data));
3212  #endif
3213  break;
3214  case 154: // See Profile.xlsx::Messages:lap.avgFlow
3215  if (!verify(data, baseType, 4, FitBaseType::Float32, "lap.avgFlow")) return false;
3216  #if QT_VERSION < QT_VERSION_CHECK(5, 12, 0)
3217  { // Qt's from-endian functions have no float/double specialisations prior to Qt 5.12.
3218  const quint32 localEndian = bigEndian ? qFromBigEndian<quint32>(data) : qFromLittleEndian<quint32>(data);
3219  static_assert(sizeof(localEndian) == 4, "src not expected size");
3220  static_assert(sizeof(this->avgFlow) == 4, "src and dst not the same size");
3221  memcpy(&this->avgFlow, &localEndian, data.size());
3222  }
3223  #else
3224  this->avgFlow = static_cast<float>(bigEndian ? qFromBigEndian<float>(data) : qFromLittleEndian<float>(data));
3225  #endif
3226  break;
3227  case 156: // See Profile.xlsx::Messages:lap.totalFractionalAscent
3228  if (!verify(data, baseType, 1, FitBaseType::Uint8, "lap.totalFractionalAscent")) return false;
3229  this->totalFractionalAscent = static_cast<quint8>(data.at(0));
3230  break;
3231  case 157: // See Profile.xlsx::Messages:lap.totalFractionalDescent
3232  if (!verify(data, baseType, 1, FitBaseType::Uint8, "lap.totalFractionalDescent")) return false;
3233  this->totalFractionalDescent = static_cast<quint8>(data.at(0));
3234  break;
3235  case 158: // See Profile.xlsx::Messages:lap.avgCoreTemperature
3236  if (!verify(data, baseType, 2, FitBaseType::Uint16, "lap.avgCoreTemperature")) return false;
3237  this->avgCoreTemperature = static_cast<quint16>(bigEndian ? qFromBigEndian<quint16>(data) : qFromLittleEndian<quint16>(data));
3238  break;
3239  case 159: // See Profile.xlsx::Messages:lap.minCoreTemperature
3240  if (!verify(data, baseType, 2, FitBaseType::Uint16, "lap.minCoreTemperature")) return false;
3241  this->minCoreTemperature = static_cast<quint16>(bigEndian ? qFromBigEndian<quint16>(data) : qFromLittleEndian<quint16>(data));
3242  break;
3243  case 160: // See Profile.xlsx::Messages:lap.maxCoreTemperature
3244  if (!verify(data, baseType, 2, FitBaseType::Uint16, "lap.maxCoreTemperature")) return false;
3245  this->maxCoreTemperature = static_cast<quint16>(bigEndian ? qFromBigEndian<quint16>(data) : qFromLittleEndian<quint16>(data));
3246  break;
3247  default:
3248  qWarning() << "ignoring unknown lap message field number" << fieldId << bigEndian;
3249  // Fall through to return true, as its still 'safe' to continue parsing data messages.
3250  }
3251  return true;
3252 }
3253 
3254 /// \endcond
3255 
#define QTFIT_END_NAMESPACE
Macro for ending the QtFit library's top-most namespace (if one is defined).
Definition: QtFit_global.h:78
#define QTFIT_BEGIN_NAMESPACE
Macro for starting the QtFit library's top-most namespace (if one is defined).
Definition: QtFit_global.h:77
MesgNum globalMessageNumber
FIT Globla Message Number for this FIT Data Message.
bool verify(const QByteArray &data, const FitBaseType actualType, const int expectedSize, const FitBaseType expectedType, const char *messageFieldName)
The AbstractDataMessage class is the polymorphic base class for all FIT Data Message classes.
quint8 avgCombinedPedalSmoothness
The LapMessage FIT message's avgCombinedPedalSmoothness field.
Definition: lapmessage_p.h:489
quint32 totalMovingTime
The LapMessage FIT message's totalMovingTime field.
Definition: lapmessage_p.h:302
MessageIndex wktStepIndex
The LapMessage FIT message's wktStepIndex field.
Definition: lapmessage_p.h:362
quint32 enhancedMaxSpeed
The LapMessage FIT message's enhancedMaxSpeed field.
Definition: lapmessage_p.h:583
qint8 avgRightPco
The LapMessage FIT message's avgRightPco field.
Definition: lapmessage_p.h:517
quint8 totalFractionalCycles
The LapMessage FIT message's totalFractionalCycles field.
Definition: lapmessage_p.h:417
quint16 avgSpeed
The LapMessage FIT message's avgSpeed field.
Definition: lapmessage_p.h:127
quint16 avgVerticalRatio
The LapMessage FIT message's avgVerticalRatio field.
Definition: lapmessage_p.h:624
qint16 maxNegGrade
The LapMessage FIT message's maxNegGrade field.
Definition: lapmessage_p.h:287
qint32 endPositionLong
The LapMessage FIT message's endPositionLong field.
Definition: lapmessage_p.h:86
quint16 numLengths
The LapMessage FIT message's numLengths field.
Definition: lapmessage_p.h:205
quint8 avgRightTorqueEffectiveness
The LapMessage FIT message's avgRightTorqueEffectiveness field.
Definition: lapmessage_p.h:474
qint16 maxPosGrade
The LapMessage FIT message's maxPosGrade field.
Definition: lapmessage_p.h:282
LeftRightBalance100 leftRightBalance
The LapMessage FIT message's leftRightBalance field.
Definition: lapmessage_p.h:215
quint32 totalTimerTime
The LapMessage FIT message's totalTimerTime field.
Definition: lapmessage_p.h:100
EventType eventType
The LapMessage FIT message's eventType field.
Definition: lapmessage_p.h:61
quint16 numActiveLengths
The LapMessage FIT message's numActiveLengths field.
Definition: lapmessage_p.h:242
quint16 repetitionNum
The LapMessage FIT message's repetitionNum field.
Definition: lapmessage_p.h:347
quint32 timeInPowerZone
The LapMessage FIT message's timeInPowerZone field.
Definition: lapmessage_p.h:342
quint32 enhancedMinAltitude
The LapMessage FIT message's enhancedMinAltitude field.
Definition: lapmessage_p.h:593
qint16 avgPosGrade
The LapMessage FIT message's avgPosGrade field.
Definition: lapmessage_p.h:272
float avgFlow
The LapMessage FIT message's avgFlow field.
Definition: lapmessage_p.h:676
quint8 maxCadencePosition
The LapMessage FIT message's maxCadencePosition field.
Definition: lapmessage_p.h:573
quint16 avgPower
The LapMessage FIT message's avgPower field.
Definition: lapmessage_p.h:163
quint8 maxHeartRate
The LapMessage FIT message's maxHeartRate field.
Definition: lapmessage_p.h:142
quint8 avgCadence
The LapMessage FIT message's avgCadence field.
Definition: lapmessage_p.h:150
qint16 maxNegVerticalSpeed
The LapMessage FIT message's maxNegVerticalSpeed field.
Definition: lapmessage_p.h:322
qint16 avgGrade
The LapMessage FIT message's avgGrade field.
Definition: lapmessage_p.h:267
float avgGrit
The LapMessage FIT message's avgGrit field.
Definition: lapmessage_p.h:668
quint16 avgStanceTime
The LapMessage FIT message's avgStanceTime field.
Definition: lapmessage_p.h:396
quint8 totalFractionalAscent
The LapMessage FIT message's totalFractionalAscent field.
Definition: lapmessage_p.h:683
quint16 avgStepLength
The LapMessage FIT message's avgStepLength field.
Definition: lapmessage_p.h:634
qint32 startPositionLong
The LapMessage FIT message's startPositionLong field.
Definition: lapmessage_p.h:76
quint8 avgFractionalCadence
The LapMessage FIT message's avgFractionalCadence field.
Definition: lapmessage_p.h:403
float totalGrit
The LapMessage FIT message's totalGrit field.
Definition: lapmessage_p.h:647
SwimStroke swimStroke
The LapMessage FIT message's swimStroke field.
Definition: lapmessage_p.h:230
quint8 avgCadencePosition
The LapMessage FIT message's avgCadencePosition field.
Definition: lapmessage_p.h:566
qint8 avgLeftPco
The LapMessage FIT message's avgLeftPco field.
Definition: lapmessage_p.h:510
quint16 minCoreTemperature
The LapMessage FIT message's minCoreTemperature field.
Definition: lapmessage_p.h:700
quint16 normalizedPower
The LapMessage FIT message's normalizedPower field.
Definition: lapmessage_p.h:210
quint16 maxTotalHemoglobinConc
The LapMessage FIT message's maxTotalHemoglobinConc field.
Definition: lapmessage_p.h:443
quint8 avgHeartRate
The LapMessage FIT message's avgHeartRate field.
Definition: lapmessage_p.h:137
qint16 avgNegVerticalSpeed
The LapMessage FIT message's avgNegVerticalSpeed field.
Definition: lapmessage_p.h:312
quint16 avgStanceTimeBalance
The LapMessage FIT message's avgStanceTimeBalance field.
Definition: lapmessage_p.h:629
quint16 totalCalories
The LapMessage FIT message's totalCalories field.
Definition: lapmessage_p.h:115
Sport sport
The LapMessage FIT message's sport field.
Definition: lapmessage_p.h:193
SubSport subSport
The LapMessage FIT message's subSport field.
Definition: lapmessage_p.h:235
quint16 jumpCount
The LapMessage FIT message's jumpCount field.
Definition: lapmessage_p.h:660
quint32 timeInSpeedZone
The LapMessage FIT message's timeInSpeedZone field.
Definition: lapmessage_p.h:332
quint16 opponentScore
The LapMessage FIT message's opponentScore field.
Definition: lapmessage_p.h:367
LapTrigger lapTrigger
The LapMessage FIT message's lapTrigger field.
Definition: lapmessage_p.h:188
quint32 timeInHrZone
The LapMessage FIT message's timeInHrZone field.
Definition: lapmessage_p.h:327
float totalFlow
The LapMessage FIT message's totalFlow field.
Definition: lapmessage_p.h:655
quint16 maxLevMotorPower
The LapMessage FIT message's maxLevMotorPower field.
Definition: lapmessage_p.h:612
quint8 totalFractionalDescent
The LapMessage FIT message's totalFractionalDescent field.
Definition: lapmessage_p.h:690
quint16 avgStanceTimePercent
The LapMessage FIT message's avgStanceTimePercent field.
Definition: lapmessage_p.h:391
quint32 timeInCadenceZone
The LapMessage FIT message's timeInCadenceZone field.
Definition: lapmessage_p.h:337
quint8 maxCadence
The LapMessage FIT message's maxCadence field.
Definition: lapmessage_p.h:155
quint16 playerScore
The LapMessage FIT message's playerScore field.
Definition: lapmessage_p.h:422
quint16 totalDescent
The LapMessage FIT message's totalDescent field.
Definition: lapmessage_p.h:178
quint16 maxPower
The LapMessage FIT message's maxPower field.
Definition: lapmessage_p.h:168
virtual ~LapMessagePrivate()
quint16 avgCoreTemperature
The LapMessage FIT message's avgCoreTemperature field.
Definition: lapmessage_p.h:695
quint8 minHeartRate
The LapMessage FIT message's minHeartRate field.
Definition: lapmessage_p.h:357
quint16 maxSpeed
The LapMessage FIT message's maxSpeed field.
Definition: lapmessage_p.h:132
bool setField(const int fieldId, const QByteArray &data, const FitBaseType baseType, const bool bigEndian) override
qint32 endPositionLat
The LapMessage FIT message's endPositionLat field.
Definition: lapmessage_p.h:81
quint32 timeStanding
The LapMessage FIT message's timeStanding field.
Definition: lapmessage_p.h:496
quint16 minSaturatedHemoglobinPercent
The LapMessage FIT message's minSaturatedHemoglobinPercent field.
Definition: lapmessage_p.h:457
quint8 avgLeftTorqueEffectiveness
The LapMessage FIT message's avgLeftTorqueEffectiveness field.
Definition: lapmessage_p.h:469
Intensity intensity
The LapMessage FIT message's intensity field.
Definition: lapmessage_p.h:183
qint16 avgPosVerticalSpeed
The LapMessage FIT message's avgPosVerticalSpeed field.
Definition: lapmessage_p.h:307
quint16 maxPowerPosition
The LapMessage FIT message's maxPowerPosition field.
Definition: lapmessage_p.h:559
quint16 zoneCount
The LapMessage FIT message's zoneCount field.
Definition: lapmessage_p.h:381
quint16 totalAscent
The LapMessage FIT message's totalAscent field.
Definition: lapmessage_p.h:173
quint32 totalDistance
The LapMessage FIT message's totalDistance field.
Definition: lapmessage_p.h:105
quint8 avgRightPowerPhase
The LapMessage FIT message's avgRightPowerPhase field.
Definition: lapmessage_p.h:538
quint32 enhancedAvgSpeed
The LapMessage FIT message's enhancedAvgSpeed field.
Definition: lapmessage_p.h:578
quint16 minAltitude
The LapMessage FIT message's minAltitude field.
Definition: lapmessage_p.h:352
quint16 avgVam
The LapMessage FIT message's avgVam field.
Definition: lapmessage_p.h:639
DateTime startTime
The LapMessage FIT message's startTime field.
Definition: lapmessage_p.h:66
qint16 avgNegGrade
The LapMessage FIT message's avgNegGrade field.
Definition: lapmessage_p.h:277
DateTime timestamp
The LapMessage FIT message's timestamp field.
Definition: lapmessage_p.h:51
qint16 maxPosVerticalSpeed
The LapMessage FIT message's maxPosVerticalSpeed field.
Definition: lapmessage_p.h:317
quint8 eventGroup
The LapMessage FIT message's eventGroup field.
Definition: lapmessage_p.h:198
quint16 minTotalHemoglobinConc
The LapMessage FIT message's minTotalHemoglobinConc field.
Definition: lapmessage_p.h:436
quint16 maxSaturatedHemoglobinPercent
The LapMessage FIT message's maxSaturatedHemoglobinPercent field.
Definition: lapmessage_p.h:464
quint16 maxCoreTemperature
The LapMessage FIT message's maxCoreTemperature field.
Definition: lapmessage_p.h:705
quint8 avgLeftPowerPhase
The LapMessage FIT message's avgLeftPowerPhase field.
Definition: lapmessage_p.h:524
quint16 totalFatCalories
The LapMessage FIT message's totalFatCalories field.
Definition: lapmessage_p.h:122
qint8 maxTemperature
The LapMessage FIT message's maxTemperature field.
Definition: lapmessage_p.h:297
quint16 standCount
The LapMessage FIT message's standCount field.
Definition: lapmessage_p.h:503
quint32 enhancedMaxAltitude
The LapMessage FIT message's enhancedMaxAltitude field.
Definition: lapmessage_p.h:598
quint16 avgPowerPosition
The LapMessage FIT message's avgPowerPosition field.
Definition: lapmessage_p.h:552
quint8 maxFractionalCadence
The LapMessage FIT message's maxFractionalCadence field.
Definition: lapmessage_p.h:410
quint16 avgTotalHemoglobinConc
The LapMessage FIT message's avgTotalHemoglobinConc field.
Definition: lapmessage_p.h:429
quint8 avgLeftPedalSmoothness
The LapMessage FIT message's avgLeftPedalSmoothness field.
Definition: lapmessage_p.h:479
qint8 avgTemperature
The LapMessage FIT message's avgTemperature field.
Definition: lapmessage_p.h:292
quint8 avgRightPowerPhasePeak
The LapMessage FIT message's avgRightPowerPhasePeak field.
Definition: lapmessage_p.h:545
quint32 totalWork
The LapMessage FIT message's totalWork field.
Definition: lapmessage_p.h:247
quint16 avgLevMotorPower
The LapMessage FIT message's avgLevMotorPower field.
Definition: lapmessage_p.h:605
quint16 firstLengthIndex
The LapMessage FIT message's firstLengthIndex field.
Definition: lapmessage_p.h:220
quint32 totalElapsedTime
The LapMessage FIT message's totalElapsedTime field.
Definition: lapmessage_p.h:93
quint16 avgVerticalOscillation
The LapMessage FIT message's avgVerticalOscillation field.
Definition: lapmessage_p.h:386
quint32 totalCycles
The LapMessage FIT message's totalCycles field.
Definition: lapmessage_p.h:110
quint8 gpsAccuracy
The LapMessage FIT message's gpsAccuracy field.
Definition: lapmessage_p.h:262
MessageIndex messageIndex
The LapMessage FIT message's messageIndex field.
Definition: lapmessage_p.h:44
qint32 startPositionLat
The LapMessage FIT message's startPositionLat field.
Definition: lapmessage_p.h:71
quint16 strokeCount
The LapMessage FIT message's strokeCount field.
Definition: lapmessage_p.h:374
quint16 maxAltitude
The LapMessage FIT message's maxAltitude field.
Definition: lapmessage_p.h:257
quint32 enhancedAvgAltitude
The LapMessage FIT message's enhancedAvgAltitude field.
Definition: lapmessage_p.h:588
quint8 avgRightPedalSmoothness
The LapMessage FIT message's avgRightPedalSmoothness field.
Definition: lapmessage_p.h:484
quint16 avgAltitude
The LapMessage FIT message's avgAltitude field.
Definition: lapmessage_p.h:252
quint16 avgSaturatedHemoglobinPercent
The LapMessage FIT message's avgSaturatedHemoglobinPercent field.
Definition: lapmessage_p.h:450
quint16 avgStrokeDistance
The LapMessage FIT message's avgStrokeDistance field.
Definition: lapmessage_p.h:225
quint8 levBatteryConsumption
The LapMessage FIT message's levBatteryConsumption field.
Definition: lapmessage_p.h:619
quint8 avgLeftPowerPhasePeak
The LapMessage FIT message's avgLeftPowerPhasePeak field.
Definition: lapmessage_p.h:531
The LapMessage class represents a FIT LapMessage data message.
Definition: lapmessage.h:39
void setTotalElapsedTime(const quint32 totalElapsedTime)
Sets the totalElapsedTime field to totalElapsedTime.
quint16 minCoreTemperature() const
Returns the LapMessage data message's minCoreTemperature field's current value.
void setAvgPosGrade(const qint16 avgPosGrade)
Sets the avgPosGrade field to avgPosGrade.
quint16 maxSpeed() const
Returns the LapMessage data message's maxSpeed field's current value.
Definition: lapmessage.cpp:258
quint32 timeStanding() const
Returns the LapMessage data message's timeStanding field's current value.
quint8 maxFractionalCadence() const
Returns the LapMessage data message's maxFractionalCadence field's current value.
Definition: lapmessage.cpp:848
quint32 totalElapsedTime() const
Returns the LapMessage data message's totalElapsedTime field's current value.
Definition: lapmessage.cpp:177
quint8 totalFractionalCycles() const
Returns the LapMessage data message's totalFractionalCycles field's current value.
Definition: lapmessage.cpp:861
void setTotalWork(const quint32 totalWork)
Sets the totalWork field to totalWork.
quint32 totalTimerTime() const
Returns the LapMessage data message's totalTimerTime field's current value.
Definition: lapmessage.cpp:190
void setMaxNegGrade(const qint16 maxNegGrade)
Sets the maxNegGrade field to maxNegGrade.
void setEnhancedAvgSpeed(const quint32 enhancedAvgSpeed)
Sets the enhancedAvgSpeed field to enhancedAvgSpeed.
quint32 totalDistance() const
Returns the LapMessage data message's totalDistance field's current value.
Definition: lapmessage.cpp:201
void setTotalTimerTime(const quint32 totalTimerTime)
Sets the totalTimerTime field to totalTimerTime.
void setAvgNegVerticalSpeed(const qint16 avgNegVerticalSpeed)
Sets the avgNegVerticalSpeed field to avgNegVerticalSpeed.
quint8 avgCadence() const
Returns the LapMessage data message's avgCadence field's current value.
Definition: lapmessage.cpp:294
qint16 avgNegGrade() const
Returns the LapMessage data message's avgNegGrade field's current value.
Definition: lapmessage.cpp:565
LapTrigger lapTrigger() const
Returns the LapMessage data message's lapTrigger field's current value.
Definition: lapmessage.cpp:374
void setMaxCoreTemperature(const quint16 maxCoreTemperature)
Sets the maxCoreTemperature field to maxCoreTemperature.
void setTotalFractionalCycles(const quint8 totalFractionalCycles)
Sets the totalFractionalCycles field to totalFractionalCycles.
quint16 repetitionNum() const
Returns the LapMessage data message's repetitionNum field's current value.
Definition: lapmessage.cpp:719
void setTimeInCadenceZone(const quint32 timeInCadenceZone)
Sets the timeInCadenceZone field to timeInCadenceZone.
qint32 startPositionLat() const
Returns the LapMessage data message's startPositionLat field's current value.
Definition: lapmessage.cpp:131
LeftRightBalance100 leftRightBalance() const
Returns the LapMessage data message's leftRightBalance field's current value.
Definition: lapmessage.cpp:431
void setEndPositionLat(const qint32 endPositionLat)
Sets the endPositionLat field to endPositionLat.
quint8 maxCadence() const
Returns the LapMessage data message's maxCadence field's current value.
Definition: lapmessage.cpp:305
void setAvgHeartRate(const quint8 avgHeartRate)
Sets the avgHeartRate field to avgHeartRate.
SubSport subSport() const
Returns the LapMessage data message's subSport field's current value.
Definition: lapmessage.cpp:475
void setAvgCadence(const quint8 avgCadence)
Sets the avgCadence field to avgCadence.
void setAvgLevMotorPower(const quint16 avgLevMotorPower)
Sets the avgLevMotorPower field to avgLevMotorPower.
void setAvgCoreTemperature(const quint16 avgCoreTemperature)
Sets the avgCoreTemperature field to avgCoreTemperature.
void setAvgRightPowerPhasePeak(const quint8 avgRightPowerPhasePeak)
Sets the avgRightPowerPhasePeak field to avgRightPowerPhasePeak.
void setAvgPosVerticalSpeed(const qint16 avgPosVerticalSpeed)
Sets the avgPosVerticalSpeed field to avgPosVerticalSpeed.
void setWktStepIndex(const MessageIndex wktStepIndex)
Sets the wktStepIndex field to wktStepIndex.
DateTime startTime() const
Returns the LapMessage data message's startTime field's current value.
Definition: lapmessage.cpp:120
quint16 avgStanceTimePercent() const
Returns the LapMessage data message's avgStanceTimePercent field's current value.
Definition: lapmessage.cpp:811
quint16 avgVerticalRatio() const
Returns the LapMessage data message's avgVerticalRatio field's current value.
quint8 avgRightPedalSmoothness() const
Returns the LapMessage data message's avgRightPedalSmoothness field's current value.
Definition: lapmessage.cpp:994
void setTotalDistance(const quint32 totalDistance)
Sets the totalDistance field to totalDistance.
quint16 opponentScore() const
Returns the LapMessage data message's opponentScore field's current value.
Definition: lapmessage.cpp:763
void setMaxPower(const quint16 maxPower)
Sets the maxPower field to maxPower.
quint8 avgRightPowerPhase() const
Returns the LapMessage data message's avgRightPowerPhase field's current value.
Sport sport() const
Returns the LapMessage data message's sport field's current value.
Definition: lapmessage.cpp:385
quint8 levBatteryConsumption() const
Returns the LapMessage data message's levBatteryConsumption field's current value.
quint16 firstLengthIndex() const
Returns the LapMessage data message's firstLengthIndex field's current value.
Definition: lapmessage.cpp:442
void setZoneCount(const quint16 zoneCount)
Sets the zoneCount field to zoneCount.
quint32 enhancedMaxSpeed() const
Returns the LapMessage data message's enhancedMaxSpeed field's current value.
void setMaxPowerPosition(const quint16 maxPowerPosition)
Sets the maxPowerPosition field to maxPowerPosition.
qint16 maxPosGrade() const
Returns the LapMessage data message's maxPosGrade field's current value.
Definition: lapmessage.cpp:576
qint16 maxPosVerticalSpeed() const
Returns the LapMessage data message's maxPosVerticalSpeed field's current value.
Definition: lapmessage.cpp:653
quint16 numLengths() const
Returns the LapMessage data message's numLengths field's current value.
Definition: lapmessage.cpp:409
void setTotalCycles(const quint32 totalCycles)
Sets the totalCycles field to totalCycles.
quint16 strokeCount() const
Returns the LapMessage data message's strokeCount field's current value.
Definition: lapmessage.cpp:776
void setAvgCadencePosition(const quint8 avgCadencePosition)
Sets the avgCadencePosition field to avgCadencePosition.
void setAvgRightPedalSmoothness(const quint8 avgRightPedalSmoothness)
Sets the avgRightPedalSmoothness field to avgRightPedalSmoothness.
void setFirstLengthIndex(const quint16 firstLengthIndex)
Sets the firstLengthIndex field to firstLengthIndex.
void setTotalGrit(const float totalGrit)
Sets the totalGrit field to totalGrit.
void setAvgStanceTimePercent(const quint16 avgStanceTimePercent)
Sets the avgStanceTimePercent field to avgStanceTimePercent.
void setAvgStepLength(const quint16 avgStepLength)
Sets the avgStepLength field to avgStepLength.
void setEnhancedMaxSpeed(const quint32 enhancedMaxSpeed)
Sets the enhancedMaxSpeed field to enhancedMaxSpeed.
void setTotalFatCalories(const quint16 totalFatCalories)
Sets the totalFatCalories field to totalFatCalories.
void setStartPositionLong(const qint32 startPositionLong)
Sets the startPositionLong field to startPositionLong.
qint16 avgGrade() const
Returns the LapMessage data message's avgGrade field's current value.
Definition: lapmessage.cpp:543
quint16 totalFatCalories() const
Returns the LapMessage data message's totalFatCalories field's current value.
Definition: lapmessage.cpp:236
quint16 avgPower() const
Returns the LapMessage data message's avgPower field's current value.
Definition: lapmessage.cpp:319
void setLapTrigger(const LapTrigger lapTrigger)
Sets the lapTrigger field to lapTrigger.
void setMinTotalHemoglobinConc(const quint16 minTotalHemoglobinConc)
Sets the minTotalHemoglobinConc field to minTotalHemoglobinConc.
void setAvgFractionalCadence(const quint8 avgFractionalCadence)
Sets the avgFractionalCadence field to avgFractionalCadence.
quint16 totalCalories() const
Returns the LapMessage data message's totalCalories field's current value.
Definition: lapmessage.cpp:223
quint16 playerScore() const
Returns the LapMessage data message's playerScore field's current value.
Definition: lapmessage.cpp:872
void setMinSaturatedHemoglobinPercent(const quint16 minSaturatedHemoglobinPercent)
Sets the minSaturatedHemoglobinPercent field to minSaturatedHemoglobinPercent.
quint16 avgStrokeDistance() const
Returns the LapMessage data message's avgStrokeDistance field's current value.
Definition: lapmessage.cpp:453
quint8 avgCadencePosition() const
Returns the LapMessage data message's avgCadencePosition field's current value.
quint16 avgVerticalOscillation() const
Returns the LapMessage data message's avgVerticalOscillation field's current value.
Definition: lapmessage.cpp:800
void setPlayerScore(const quint16 playerScore)
Sets the playerScore field to playerScore.
void setEnhancedMaxAltitude(const quint32 enhancedMaxAltitude)
Sets the enhancedMaxAltitude field to enhancedMaxAltitude.
quint16 maxCoreTemperature() const
Returns the LapMessage data message's maxCoreTemperature field's current value.
quint16 totalAscent() const
Returns the LapMessage data message's totalAscent field's current value.
Definition: lapmessage.cpp:341
quint16 maxAltitude() const
Returns the LapMessage data message's maxAltitude field's current value.
Definition: lapmessage.cpp:521
quint32 totalCycles() const
Returns the LapMessage data message's totalCycles field's current value.
Definition: lapmessage.cpp:212
void setRepetitionNum(const quint16 repetitionNum)
Sets the repetitionNum field to repetitionNum.
void setTimestamp(const DateTime timestamp)
Sets the timestamp field to timestamp.
quint8 gpsAccuracy() const
Returns the LapMessage data message's gpsAccuracy field's current value.
Definition: lapmessage.cpp:532
void setEndPositionLong(const qint32 endPositionLong)
Sets the endPositionLong field to endPositionLong.
quint16 avgStepLength() const
Returns the LapMessage data message's avgStepLength field's current value.
void setAvgVerticalOscillation(const quint16 avgVerticalOscillation)
Sets the avgVerticalOscillation field to avgVerticalOscillation.
quint8 avgLeftPowerPhase() const
Returns the LapMessage data message's avgLeftPowerPhase field's current value.
quint8 avgLeftTorqueEffectiveness() const
Returns the LapMessage data message's avgLeftTorqueEffectiveness field's current value.
Definition: lapmessage.cpp:961
quint16 normalizedPower() const
Returns the LapMessage data message's normalizedPower field's current value.
Definition: lapmessage.cpp:420
void setOpponentScore(const quint16 opponentScore)
Sets the opponentScore field to opponentScore.
quint16 avgTotalHemoglobinConc() const
Returns the LapMessage data message's avgTotalHemoglobinConc field's current value.
Definition: lapmessage.cpp:885
void setTotalDescent(const quint16 totalDescent)
Sets the totalDescent field to totalDescent.
float avgGrit() const
Returns the LapMessage data message's avgGrit field's current value.
void setAvgNegGrade(const qint16 avgNegGrade)
Sets the avgNegGrade field to avgNegGrade.
void setMaxCadencePosition(const quint8 maxCadencePosition)
Sets the maxCadencePosition field to maxCadencePosition.
quint32 enhancedAvgSpeed() const
Returns the LapMessage data message's enhancedAvgSpeed field's current value.
void setTotalFractionalAscent(const quint8 totalFractionalAscent)
Sets the totalFractionalAscent field to totalFractionalAscent.
void setAvgLeftPowerPhasePeak(const quint8 avgLeftPowerPhasePeak)
Sets the avgLeftPowerPhasePeak field to avgLeftPowerPhasePeak.
quint8 avgHeartRate() const
Returns the LapMessage data message's avgHeartRate field's current value.
Definition: lapmessage.cpp:269
qint32 endPositionLong() const
Returns the LapMessage data message's endPositionLong field's current value.
Definition: lapmessage.cpp:164
void setMaxHeartRate(const quint8 maxHeartRate)
Sets the maxHeartRate field to maxHeartRate.
quint16 maxSaturatedHemoglobinPercent() const
Returns the LapMessage data message's maxSaturatedHemoglobinPercent field's current value.
Definition: lapmessage.cpp:950
void setAvgPower(const quint16 avgPower)
Sets the avgPower field to avgPower.
void setTotalFractionalDescent(const quint8 totalFractionalDescent)
Sets the totalFractionalDescent field to totalFractionalDescent.
qint32 startPositionLong() const
Returns the LapMessage data message's startPositionLong field's current value.
Definition: lapmessage.cpp:142
quint16 jumpCount() const
Returns the LapMessage data message's jumpCount field's current value.
void setAvgPowerPosition(const quint16 avgPowerPosition)
Sets the avgPowerPosition field to avgPowerPosition.
void setMaxLevMotorPower(const quint16 maxLevMotorPower)
Sets the maxLevMotorPower field to maxLevMotorPower.
void setMaxCadence(const quint8 maxCadence)
Sets the maxCadence field to maxCadence.
void setEnhancedAvgAltitude(const quint32 enhancedAvgAltitude)
Sets the enhancedAvgAltitude field to enhancedAvgAltitude.
void setTotalFlow(const float totalFlow)
Sets the totalFlow field to totalFlow.
void setMaxFractionalCadence(const quint8 maxFractionalCadence)
Sets the maxFractionalCadence field to maxFractionalCadence.
void setAvgStanceTime(const quint16 avgStanceTime)
Sets the avgStanceTime field to avgStanceTime.
void setStartTime(const DateTime startTime)
Sets the startTime field to startTime.
qint8 avgTemperature() const
Returns the LapMessage data message's avgTemperature field's current value.
Definition: lapmessage.cpp:598
void setNumActiveLengths(const quint16 numActiveLengths)
Sets the numActiveLengths field to numActiveLengths.
quint16 standCount() const
Returns the LapMessage data message's standCount field's current value.
void setAvgFlow(const float avgFlow)
Sets the avgFlow field to avgFlow.
quint8 totalFractionalAscent() const
Returns the LapMessage data message's totalFractionalAscent field's current value.
quint32 enhancedAvgAltitude() const
Returns the LapMessage data message's enhancedAvgAltitude field's current value.
void setAvgGrade(const qint16 avgGrade)
Sets the avgGrade field to avgGrade.
qint16 maxNegGrade() const
Returns the LapMessage data message's maxNegGrade field's current value.
Definition: lapmessage.cpp:587
void setMaxAltitude(const quint16 maxAltitude)
Sets the maxAltitude field to maxAltitude.
void setTimeStanding(const quint32 timeStanding)
Sets the timeStanding field to timeStanding.
void setTimeInHrZone(const quint32 timeInHrZone)
Sets the timeInHrZone field to timeInHrZone.
quint16 avgLevMotorPower() const
Returns the LapMessage data message's avgLevMotorPower field's current value.
void setAvgLeftPco(const qint8 avgLeftPco)
Sets the avgLeftPco field to avgLeftPco.
void setNormalizedPower(const quint16 normalizedPower)
Sets the normalizedPower field to normalizedPower.
quint16 avgCoreTemperature() const
Returns the LapMessage data message's avgCoreTemperature field's current value.
quint8 avgLeftPowerPhasePeak() const
Returns the LapMessage data message's avgLeftPowerPhasePeak field's current value.
SwimStroke swimStroke() const
Returns the LapMessage data message's swimStroke field's current value.
Definition: lapmessage.cpp:464
void setMinCoreTemperature(const quint16 minCoreTemperature)
Sets the minCoreTemperature field to minCoreTemperature.
void setStrokeCount(const quint16 strokeCount)
Sets the strokeCount field to strokeCount.
quint16 avgVam() const
Returns the LapMessage data message's avgVam field's current value.
quint16 avgSpeed() const
Returns the LapMessage data message's avgSpeed field's current value.
Definition: lapmessage.cpp:247
void setAvgVam(const quint16 avgVam)
Sets the avgVam field to avgVam.
void setAvgSpeed(const quint16 avgSpeed)
Sets the avgSpeed field to avgSpeed.
quint16 minSaturatedHemoglobinPercent() const
Returns the LapMessage data message's minSaturatedHemoglobinPercent field's current value.
Definition: lapmessage.cpp:937
void setAvgVerticalRatio(const quint16 avgVerticalRatio)
Sets the avgVerticalRatio field to avgVerticalRatio.
quint8 avgRightPowerPhasePeak() const
Returns the LapMessage data message's avgRightPowerPhasePeak field's current value.
MessageIndex wktStepIndex() const
Returns the LapMessage data message's wktStepIndex field's current value.
Definition: lapmessage.cpp:752
void setSwimStroke(const SwimStroke swimStroke)
Sets the swimStroke field to swimStroke.
quint16 totalDescent() const
Returns the LapMessage data message's totalDescent field's current value.
Definition: lapmessage.cpp:352
void setAvgTotalHemoglobinConc(const quint16 avgTotalHemoglobinConc)
Sets the avgTotalHemoglobinConc field to avgTotalHemoglobinConc.
float totalFlow() const
Returns the LapMessage data message's totalFlow field's current value.
quint8 avgFractionalCadence() const
Returns the LapMessage data message's avgFractionalCadence field's current value.
Definition: lapmessage.cpp:835
void setAvgGrit(const float avgGrit)
Sets the avgGrit field to avgGrit.
quint32 timeInPowerZone() const
Returns the LapMessage data message's timeInPowerZone field's current value.
Definition: lapmessage.cpp:708
qint16 maxNegVerticalSpeed() const
Returns the LapMessage data message's maxNegVerticalSpeed field's current value.
Definition: lapmessage.cpp:664
void setAvgStrokeDistance(const quint16 avgStrokeDistance)
Sets the avgStrokeDistance field to avgStrokeDistance.
void setMinAltitude(const quint16 minAltitude)
Sets the minAltitude field to minAltitude.
qint8 avgLeftPco() const
Returns the LapMessage data message's avgLeftPco field's current value.
void setMaxSaturatedHemoglobinPercent(const quint16 maxSaturatedHemoglobinPercent)
Sets the maxSaturatedHemoglobinPercent field to maxSaturatedHemoglobinPercent.
quint8 avgCombinedPedalSmoothness() const
Returns the LapMessage data message's avgCombinedPedalSmoothness field's current value.
float totalGrit() const
Returns the LapMessage data message's totalGrit field's current value.
quint32 timeInCadenceZone() const
Returns the LapMessage data message's timeInCadenceZone field's current value.
Definition: lapmessage.cpp:697
void setEventType(const EventType eventType)
Sets the eventType field to eventType.
void setMaxTemperature(const qint8 maxTemperature)
Sets the maxTemperature field to maxTemperature.
quint16 minTotalHemoglobinConc() const
Returns the LapMessage data message's minTotalHemoglobinConc field's current value.
Definition: lapmessage.cpp:898
void setAvgRightPowerPhase(const quint8 avgRightPowerPhase)
Sets the avgRightPowerPhase field to avgRightPowerPhase.
qint16 avgPosVerticalSpeed() const
Returns the LapMessage data message's avgPosVerticalSpeed field's current value.
Definition: lapmessage.cpp:631
void setAvgAltitude(const quint16 avgAltitude)
Sets the avgAltitude field to avgAltitude.
quint32 timeInSpeedZone() const
Returns the LapMessage data message's timeInSpeedZone field's current value.
Definition: lapmessage.cpp:686
void setTotalMovingTime(const quint32 totalMovingTime)
Sets the totalMovingTime field to totalMovingTime.
void setTotalAscent(const quint16 totalAscent)
Sets the totalAscent field to totalAscent.
quint16 avgStanceTimeBalance() const
Returns the LapMessage data message's avgStanceTimeBalance field's current value.
void setAvgRightPco(const qint8 avgRightPco)
Sets the avgRightPco field to avgRightPco.
EventType eventType() const
Returns the LapMessage data message's eventType field's current value.
Definition: lapmessage.cpp:109
void setMaxSpeed(const quint16 maxSpeed)
Sets the maxSpeed field to maxSpeed.
quint8 eventGroup() const
Returns the LapMessage data message's eventGroup field's current value.
Definition: lapmessage.cpp:396
quint16 maxTotalHemoglobinConc() const
Returns the LapMessage data message's maxTotalHemoglobinConc field's current value.
Definition: lapmessage.cpp:911
void setEvent(const Event event)
Sets the event field to event.
void setAvgStanceTimeBalance(const quint16 avgStanceTimeBalance)
Sets the avgStanceTimeBalance field to avgStanceTimeBalance.
quint16 maxLevMotorPower() const
Returns the LapMessage data message's maxLevMotorPower field's current value.
qint16 avgNegVerticalSpeed() const
Returns the LapMessage data message's avgNegVerticalSpeed field's current value.
Definition: lapmessage.cpp:642
void setMessageIndex(const MessageIndex messageIndex)
Sets the messageIndex field to messageIndex.
quint16 avgPowerPosition() const
Returns the LapMessage data message's avgPowerPosition field's current value.
Event event() const
Returns the LapMessage data message's event field's current value.
Definition: lapmessage.cpp:98
void setJumpCount(const quint16 jumpCount)
Sets the jumpCount field to jumpCount.
quint16 avgStanceTime() const
Returns the LapMessage data message's avgStanceTime field's current value.
Definition: lapmessage.cpp:822
void setAvgRightTorqueEffectiveness(const quint8 avgRightTorqueEffectiveness)
Sets the avgRightTorqueEffectiveness field to avgRightTorqueEffectiveness.
qint32 endPositionLat() const
Returns the LapMessage data message's endPositionLat field's current value.
Definition: lapmessage.cpp:153
qint8 avgRightPco() const
Returns the LapMessage data message's avgRightPco field's current value.
void setAvgLeftPedalSmoothness(const quint8 avgLeftPedalSmoothness)
Sets the avgLeftPedalSmoothness field to avgLeftPedalSmoothness.
void setTotalCalories(const quint16 totalCalories)
Sets the totalCalories field to totalCalories.
void setMaxPosGrade(const qint16 maxPosGrade)
Sets the maxPosGrade field to maxPosGrade.
void setNumLengths(const quint16 numLengths)
Sets the numLengths field to numLengths.
quint8 avgRightTorqueEffectiveness() const
Returns the LapMessage data message's avgRightTorqueEffectiveness field's current value.
Definition: lapmessage.cpp:972
quint8 totalFractionalDescent() const
Returns the LapMessage data message's totalFractionalDescent field's current value.
quint16 avgSaturatedHemoglobinPercent() const
Returns the LapMessage data message's avgSaturatedHemoglobinPercent field's current value.
Definition: lapmessage.cpp:924
void setLevBatteryConsumption(const quint8 levBatteryConsumption)
Sets the levBatteryConsumption field to levBatteryConsumption.
void setSubSport(const SubSport subSport)
Sets the subSport field to subSport.
void setLeftRightBalance(const LeftRightBalance100 leftRightBalance)
Sets the leftRightBalance field to leftRightBalance.
qint8 maxTemperature() const
Returns the LapMessage data message's maxTemperature field's current value.
Definition: lapmessage.cpp:609
void setAvgTemperature(const qint8 avgTemperature)
Sets the avgTemperature field to avgTemperature.
void setStartPositionLat(const qint32 startPositionLat)
Sets the startPositionLat field to startPositionLat.
void setAvgCombinedPedalSmoothness(const quint8 avgCombinedPedalSmoothness)
Sets the avgCombinedPedalSmoothness field to avgCombinedPedalSmoothness.
quint32 totalMovingTime() const
Returns the LapMessage data message's totalMovingTime field's current value.
Definition: lapmessage.cpp:620
void setTimeInSpeedZone(const quint32 timeInSpeedZone)
Sets the timeInSpeedZone field to timeInSpeedZone.
DateTime timestamp() const
Returns the LapMessage data message's timestamp field's current value.
Definition: lapmessage.cpp:87
quint8 minHeartRate() const
Returns the LapMessage data message's minHeartRate field's current value.
Definition: lapmessage.cpp:741
quint32 totalWork() const
Returns the LapMessage data message's totalWork field's current value.
Definition: lapmessage.cpp:499
quint16 maxPowerPosition() const
Returns the LapMessage data message's maxPowerPosition field's current value.
quint16 minAltitude() const
Returns the LapMessage data message's minAltitude field's current value.
Definition: lapmessage.cpp:730
quint32 enhancedMaxAltitude() const
Returns the LapMessage data message's enhancedMaxAltitude field's current value.
quint16 avgAltitude() const
Returns the LapMessage data message's avgAltitude field's current value.
Definition: lapmessage.cpp:510
quint8 maxHeartRate() const
Returns the LapMessage data message's maxHeartRate field's current value.
Definition: lapmessage.cpp:280
quint16 maxPower() const
Returns the LapMessage data message's maxPower field's current value.
Definition: lapmessage.cpp:330
quint16 zoneCount() const
Returns the LapMessage data message's zoneCount field's current value.
Definition: lapmessage.cpp:789
void setIntensity(const Intensity intensity)
Sets the intensity field to intensity.
void setSport(const Sport sport)
Sets the sport field to sport.
void setAvgSaturatedHemoglobinPercent(const quint16 avgSaturatedHemoglobinPercent)
Sets the avgSaturatedHemoglobinPercent field to avgSaturatedHemoglobinPercent.
void setMaxPosVerticalSpeed(const qint16 maxPosVerticalSpeed)
Sets the maxPosVerticalSpeed field to maxPosVerticalSpeed.
void setMinHeartRate(const quint8 minHeartRate)
Sets the minHeartRate field to minHeartRate.
void setGpsAccuracy(const quint8 gpsAccuracy)
Sets the gpsAccuracy field to gpsAccuracy.
void setAvgLeftTorqueEffectiveness(const quint8 avgLeftTorqueEffectiveness)
Sets the avgLeftTorqueEffectiveness field to avgLeftTorqueEffectiveness.
quint32 enhancedMinAltitude() const
Returns the LapMessage data message's enhancedMinAltitude field's current value.
quint16 numActiveLengths() const
Returns the LapMessage data message's numActiveLengths field's current value.
Definition: lapmessage.cpp:488
void setAvgLeftPowerPhase(const quint8 avgLeftPowerPhase)
Sets the avgLeftPowerPhase field to avgLeftPowerPhase.
MessageIndex messageIndex() const
Returns the LapMessage data message's messageIndex field's current value.
Definition: lapmessage.cpp:74
qint16 avgPosGrade() const
Returns the LapMessage data message's avgPosGrade field's current value.
Definition: lapmessage.cpp:554
void setMaxNegVerticalSpeed(const qint16 maxNegVerticalSpeed)
Sets the maxNegVerticalSpeed field to maxNegVerticalSpeed.
void setStandCount(const quint16 standCount)
Sets the standCount field to standCount.
quint8 maxCadencePosition() const
Returns the LapMessage data message's maxCadencePosition field's current value.
void setMaxTotalHemoglobinConc(const quint16 maxTotalHemoglobinConc)
Sets the maxTotalHemoglobinConc field to maxTotalHemoglobinConc.
quint32 timeInHrZone() const
Returns the LapMessage data message's timeInHrZone field's current value.
Definition: lapmessage.cpp:675
quint8 avgLeftPedalSmoothness() const
Returns the LapMessage data message's avgLeftPedalSmoothness field's current value.
Definition: lapmessage.cpp:983
LapMessage()
Constructs a LapMessage object.
Definition: lapmessage.cpp:52
float avgFlow() const
Returns the LapMessage data message's avgFlow field's current value.
Intensity intensity() const
Returns the LapMessage data message's intensity field's current value.
Definition: lapmessage.cpp:363
void setEventGroup(const quint8 eventGroup)
Sets the eventGroup field to eventGroup.
void setTimeInPowerZone(const quint32 timeInPowerZone)
Sets the timeInPowerZone field to timeInPowerZone.
void setEnhancedMinAltitude(const quint32 enhancedMinAltitude)
Sets the enhancedMinAltitude field to enhancedMinAltitude.
Declares the LapMessage class.
Declares the LapMessagePrivate class.
SwimStroke
Garmin FIT SwimStroke type.
Definition: types.h:2262
EventType
Garmin FIT EventType type.
Definition: types.h:1182
LapTrigger
Garmin FIT LapTrigger type.
Definition: types.h:1048
Event
Garmin FIT Event type.
Definition: types.h:1133
Intensity
Garmin FIT Intensity type.
Definition: types.h:994
FitBaseType
Garmin FIT FitBaseType type.
Definition: types.h:3388
LeftRightBalance100
Garmin FIT LeftRightBalance100 type.
Definition: types.h:2377
Sport
Garmin FIT Sport type.
Definition: types.h:685
MessageIndex
Garmin FIT MessageIndex type.
Definition: types.h:263
SubSport
Garmin FIT SubSport type.
Definition: types.h:881
DateTime
Seconds since UTC 00:00 Dec 31 1989.
Definition: types.h:237