mirror of
https://github.com/GoldenCheetah/GoldenCheetah.git
synced 2026-02-13 16:18:42 +00:00
8696 lines
626 KiB
C
8696 lines
626 KiB
C
/////////////////////////////////////////////////////////////////////////////////////////////
|
|
// Copyright 2024 Garmin International, Inc.
|
|
// Licensed under the Flexible and Interoperable Data Transfer (FIT) Protocol License; you
|
|
// may not use this file except in compliance with the Flexible and Interoperable Data
|
|
// Transfer (FIT) Protocol License.
|
|
/////////////////////////////////////////////////////////////////////////////////////////////
|
|
// ****WARNING**** This file is auto-generated! Do NOT edit this file.
|
|
// Profile Version = 21.133.0Release
|
|
// Tag = production/release/21.133.0-0-g6002091
|
|
// Product = EXAMPLE
|
|
// Alignment = 4 bytes, padding disabled.
|
|
/////////////////////////////////////////////////////////////////////////////////////////////
|
|
|
|
|
|
#if !defined(FIT_EXAMPLE_H)
|
|
#define FIT_EXAMPLE_H
|
|
|
|
#include "fit.h"
|
|
|
|
#if defined(__cplusplus)
|
|
extern "C" {
|
|
#endif
|
|
|
|
|
|
///////////////////////////////////////////////////////////////////////
|
|
// Public Definitions
|
|
///////////////////////////////////////////////////////////////////////
|
|
|
|
#define FIT_ALIGNMENT 4
|
|
|
|
///////////////////////////////////////////////////////////////////////
|
|
// Types
|
|
///////////////////////////////////////////////////////////////////////
|
|
|
|
|
|
typedef FIT_ENUM FIT_FILE;
|
|
#define FIT_FILE_INVALID FIT_ENUM_INVALID
|
|
#define FIT_FILE_DEVICE ((FIT_FILE)1) // Read only, single file. Must be in root directory.
|
|
#define FIT_FILE_SETTINGS ((FIT_FILE)2) // Read/write, single file. Directory=Settings
|
|
#define FIT_FILE_SPORT ((FIT_FILE)3) // Read/write, multiple files, file number = sport type. Directory=Sports
|
|
#define FIT_FILE_ACTIVITY ((FIT_FILE)4) // Read/erase, multiple files. Directory=Activities
|
|
#define FIT_FILE_WORKOUT ((FIT_FILE)5) // Read/write/erase, multiple files. Directory=Workouts
|
|
#define FIT_FILE_COURSE ((FIT_FILE)6) // Read/write/erase, multiple files. Directory=Courses
|
|
#define FIT_FILE_SCHEDULES ((FIT_FILE)7) // Read/write, single file. Directory=Schedules
|
|
#define FIT_FILE_WEIGHT ((FIT_FILE)9) // Read only, single file. Circular buffer. All message definitions at start of file. Directory=Weight
|
|
#define FIT_FILE_TOTALS ((FIT_FILE)10) // Read only, single file. Directory=Totals
|
|
#define FIT_FILE_GOALS ((FIT_FILE)11) // Read/write, single file. Directory=Goals
|
|
#define FIT_FILE_BLOOD_PRESSURE ((FIT_FILE)14) // Read only. Directory=Blood Pressure
|
|
#define FIT_FILE_MONITORING_A ((FIT_FILE)15) // Read only. Directory=Monitoring. File number=sub type.
|
|
#define FIT_FILE_ACTIVITY_SUMMARY ((FIT_FILE)20) // Read/erase, multiple files. Directory=Activities
|
|
#define FIT_FILE_MONITORING_DAILY ((FIT_FILE)28)
|
|
#define FIT_FILE_MONITORING_B ((FIT_FILE)32) // Read only. Directory=Monitoring. File number=identifier
|
|
#define FIT_FILE_SEGMENT ((FIT_FILE)34) // Read/write/erase. Multiple Files. Directory=Segments
|
|
#define FIT_FILE_SEGMENT_LIST ((FIT_FILE)35) // Read/write/erase. Single File. Directory=Segments
|
|
#define FIT_FILE_EXD_CONFIGURATION ((FIT_FILE)40) // Read/write/erase. Single File. Directory=Settings
|
|
#define FIT_FILE_MFG_RANGE_MIN ((FIT_FILE)0xF7) // 0xF7 - 0xFE reserved for manufacturer specific file types
|
|
#define FIT_FILE_MFG_RANGE_MAX ((FIT_FILE)0xFE) // 0xF7 - 0xFE reserved for manufacturer specific file types
|
|
#define FIT_FILE_COUNT 20
|
|
|
|
typedef FIT_UINT16 FIT_MESG_NUM;
|
|
#define FIT_MESG_NUM_INVALID FIT_UINT16_INVALID
|
|
#define FIT_MESG_NUM_FILE_ID ((FIT_MESG_NUM)0)
|
|
#define FIT_MESG_NUM_CAPABILITIES ((FIT_MESG_NUM)1)
|
|
#define FIT_MESG_NUM_DEVICE_SETTINGS ((FIT_MESG_NUM)2)
|
|
#define FIT_MESG_NUM_USER_PROFILE ((FIT_MESG_NUM)3)
|
|
#define FIT_MESG_NUM_HRM_PROFILE ((FIT_MESG_NUM)4)
|
|
#define FIT_MESG_NUM_SDM_PROFILE ((FIT_MESG_NUM)5)
|
|
#define FIT_MESG_NUM_BIKE_PROFILE ((FIT_MESG_NUM)6)
|
|
#define FIT_MESG_NUM_ZONES_TARGET ((FIT_MESG_NUM)7)
|
|
#define FIT_MESG_NUM_HR_ZONE ((FIT_MESG_NUM)8)
|
|
#define FIT_MESG_NUM_POWER_ZONE ((FIT_MESG_NUM)9)
|
|
#define FIT_MESG_NUM_MET_ZONE ((FIT_MESG_NUM)10)
|
|
#define FIT_MESG_NUM_SPORT ((FIT_MESG_NUM)12)
|
|
#define FIT_MESG_NUM_GOAL ((FIT_MESG_NUM)15)
|
|
#define FIT_MESG_NUM_SESSION ((FIT_MESG_NUM)18)
|
|
#define FIT_MESG_NUM_LAP ((FIT_MESG_NUM)19)
|
|
#define FIT_MESG_NUM_RECORD ((FIT_MESG_NUM)20)
|
|
#define FIT_MESG_NUM_EVENT ((FIT_MESG_NUM)21)
|
|
#define FIT_MESG_NUM_DEVICE_INFO ((FIT_MESG_NUM)23)
|
|
#define FIT_MESG_NUM_WORKOUT ((FIT_MESG_NUM)26)
|
|
#define FIT_MESG_NUM_WORKOUT_STEP ((FIT_MESG_NUM)27)
|
|
#define FIT_MESG_NUM_SCHEDULE ((FIT_MESG_NUM)28)
|
|
#define FIT_MESG_NUM_WEIGHT_SCALE ((FIT_MESG_NUM)30)
|
|
#define FIT_MESG_NUM_COURSE ((FIT_MESG_NUM)31)
|
|
#define FIT_MESG_NUM_COURSE_POINT ((FIT_MESG_NUM)32)
|
|
#define FIT_MESG_NUM_TOTALS ((FIT_MESG_NUM)33)
|
|
#define FIT_MESG_NUM_ACTIVITY ((FIT_MESG_NUM)34)
|
|
#define FIT_MESG_NUM_SOFTWARE ((FIT_MESG_NUM)35)
|
|
#define FIT_MESG_NUM_FILE_CAPABILITIES ((FIT_MESG_NUM)37)
|
|
#define FIT_MESG_NUM_MESG_CAPABILITIES ((FIT_MESG_NUM)38)
|
|
#define FIT_MESG_NUM_FIELD_CAPABILITIES ((FIT_MESG_NUM)39)
|
|
#define FIT_MESG_NUM_FILE_CREATOR ((FIT_MESG_NUM)49)
|
|
#define FIT_MESG_NUM_BLOOD_PRESSURE ((FIT_MESG_NUM)51)
|
|
#define FIT_MESG_NUM_SPEED_ZONE ((FIT_MESG_NUM)53)
|
|
#define FIT_MESG_NUM_MONITORING ((FIT_MESG_NUM)55)
|
|
#define FIT_MESG_NUM_TRAINING_FILE ((FIT_MESG_NUM)72)
|
|
#define FIT_MESG_NUM_HRV ((FIT_MESG_NUM)78)
|
|
#define FIT_MESG_NUM_ANT_RX ((FIT_MESG_NUM)80)
|
|
#define FIT_MESG_NUM_ANT_TX ((FIT_MESG_NUM)81)
|
|
#define FIT_MESG_NUM_ANT_CHANNEL_ID ((FIT_MESG_NUM)82)
|
|
#define FIT_MESG_NUM_LENGTH ((FIT_MESG_NUM)101)
|
|
#define FIT_MESG_NUM_MONITORING_INFO ((FIT_MESG_NUM)103)
|
|
#define FIT_MESG_NUM_PAD ((FIT_MESG_NUM)105)
|
|
#define FIT_MESG_NUM_SLAVE_DEVICE ((FIT_MESG_NUM)106)
|
|
#define FIT_MESG_NUM_CONNECTIVITY ((FIT_MESG_NUM)127)
|
|
#define FIT_MESG_NUM_WEATHER_CONDITIONS ((FIT_MESG_NUM)128)
|
|
#define FIT_MESG_NUM_WEATHER_ALERT ((FIT_MESG_NUM)129)
|
|
#define FIT_MESG_NUM_CADENCE_ZONE ((FIT_MESG_NUM)131)
|
|
#define FIT_MESG_NUM_HR ((FIT_MESG_NUM)132)
|
|
#define FIT_MESG_NUM_SEGMENT_LAP ((FIT_MESG_NUM)142)
|
|
#define FIT_MESG_NUM_MEMO_GLOB ((FIT_MESG_NUM)145)
|
|
#define FIT_MESG_NUM_SEGMENT_ID ((FIT_MESG_NUM)148)
|
|
#define FIT_MESG_NUM_SEGMENT_LEADERBOARD_ENTRY ((FIT_MESG_NUM)149)
|
|
#define FIT_MESG_NUM_SEGMENT_POINT ((FIT_MESG_NUM)150)
|
|
#define FIT_MESG_NUM_SEGMENT_FILE ((FIT_MESG_NUM)151)
|
|
#define FIT_MESG_NUM_WORKOUT_SESSION ((FIT_MESG_NUM)158)
|
|
#define FIT_MESG_NUM_WATCHFACE_SETTINGS ((FIT_MESG_NUM)159)
|
|
#define FIT_MESG_NUM_GPS_METADATA ((FIT_MESG_NUM)160)
|
|
#define FIT_MESG_NUM_CAMERA_EVENT ((FIT_MESG_NUM)161)
|
|
#define FIT_MESG_NUM_TIMESTAMP_CORRELATION ((FIT_MESG_NUM)162)
|
|
#define FIT_MESG_NUM_GYROSCOPE_DATA ((FIT_MESG_NUM)164)
|
|
#define FIT_MESG_NUM_ACCELEROMETER_DATA ((FIT_MESG_NUM)165)
|
|
#define FIT_MESG_NUM_THREE_D_SENSOR_CALIBRATION ((FIT_MESG_NUM)167)
|
|
#define FIT_MESG_NUM_VIDEO_FRAME ((FIT_MESG_NUM)169)
|
|
#define FIT_MESG_NUM_OBDII_DATA ((FIT_MESG_NUM)174)
|
|
#define FIT_MESG_NUM_NMEA_SENTENCE ((FIT_MESG_NUM)177)
|
|
#define FIT_MESG_NUM_AVIATION_ATTITUDE ((FIT_MESG_NUM)178)
|
|
#define FIT_MESG_NUM_VIDEO ((FIT_MESG_NUM)184)
|
|
#define FIT_MESG_NUM_VIDEO_TITLE ((FIT_MESG_NUM)185)
|
|
#define FIT_MESG_NUM_VIDEO_DESCRIPTION ((FIT_MESG_NUM)186)
|
|
#define FIT_MESG_NUM_VIDEO_CLIP ((FIT_MESG_NUM)187)
|
|
#define FIT_MESG_NUM_OHR_SETTINGS ((FIT_MESG_NUM)188)
|
|
#define FIT_MESG_NUM_EXD_SCREEN_CONFIGURATION ((FIT_MESG_NUM)200)
|
|
#define FIT_MESG_NUM_EXD_DATA_FIELD_CONFIGURATION ((FIT_MESG_NUM)201)
|
|
#define FIT_MESG_NUM_EXD_DATA_CONCEPT_CONFIGURATION ((FIT_MESG_NUM)202)
|
|
#define FIT_MESG_NUM_FIELD_DESCRIPTION ((FIT_MESG_NUM)206)
|
|
#define FIT_MESG_NUM_DEVELOPER_DATA_ID ((FIT_MESG_NUM)207)
|
|
#define FIT_MESG_NUM_MAGNETOMETER_DATA ((FIT_MESG_NUM)208)
|
|
#define FIT_MESG_NUM_BAROMETER_DATA ((FIT_MESG_NUM)209)
|
|
#define FIT_MESG_NUM_ONE_D_SENSOR_CALIBRATION ((FIT_MESG_NUM)210)
|
|
#define FIT_MESG_NUM_MONITORING_HR_DATA ((FIT_MESG_NUM)211)
|
|
#define FIT_MESG_NUM_TIME_IN_ZONE ((FIT_MESG_NUM)216)
|
|
#define FIT_MESG_NUM_SET ((FIT_MESG_NUM)225)
|
|
#define FIT_MESG_NUM_STRESS_LEVEL ((FIT_MESG_NUM)227)
|
|
#define FIT_MESG_NUM_MAX_MET_DATA ((FIT_MESG_NUM)229)
|
|
#define FIT_MESG_NUM_DIVE_SETTINGS ((FIT_MESG_NUM)258)
|
|
#define FIT_MESG_NUM_DIVE_GAS ((FIT_MESG_NUM)259)
|
|
#define FIT_MESG_NUM_DIVE_ALARM ((FIT_MESG_NUM)262)
|
|
#define FIT_MESG_NUM_EXERCISE_TITLE ((FIT_MESG_NUM)264)
|
|
#define FIT_MESG_NUM_DIVE_SUMMARY ((FIT_MESG_NUM)268)
|
|
#define FIT_MESG_NUM_SPO2_DATA ((FIT_MESG_NUM)269)
|
|
#define FIT_MESG_NUM_SLEEP_LEVEL ((FIT_MESG_NUM)275)
|
|
#define FIT_MESG_NUM_JUMP ((FIT_MESG_NUM)285)
|
|
#define FIT_MESG_NUM_AAD_ACCEL_FEATURES ((FIT_MESG_NUM)289)
|
|
#define FIT_MESG_NUM_BEAT_INTERVALS ((FIT_MESG_NUM)290)
|
|
#define FIT_MESG_NUM_RESPIRATION_RATE ((FIT_MESG_NUM)297)
|
|
#define FIT_MESG_NUM_HSA_ACCELEROMETER_DATA ((FIT_MESG_NUM)302)
|
|
#define FIT_MESG_NUM_HSA_STEP_DATA ((FIT_MESG_NUM)304)
|
|
#define FIT_MESG_NUM_HSA_SPO2_DATA ((FIT_MESG_NUM)305)
|
|
#define FIT_MESG_NUM_HSA_STRESS_DATA ((FIT_MESG_NUM)306)
|
|
#define FIT_MESG_NUM_HSA_RESPIRATION_DATA ((FIT_MESG_NUM)307)
|
|
#define FIT_MESG_NUM_HSA_HEART_RATE_DATA ((FIT_MESG_NUM)308)
|
|
#define FIT_MESG_NUM_SPLIT ((FIT_MESG_NUM)312)
|
|
#define FIT_MESG_NUM_SPLIT_SUMMARY ((FIT_MESG_NUM)313)
|
|
#define FIT_MESG_NUM_HSA_BODY_BATTERY_DATA ((FIT_MESG_NUM)314)
|
|
#define FIT_MESG_NUM_HSA_EVENT ((FIT_MESG_NUM)315)
|
|
#define FIT_MESG_NUM_CLIMB_PRO ((FIT_MESG_NUM)317)
|
|
#define FIT_MESG_NUM_TANK_UPDATE ((FIT_MESG_NUM)319)
|
|
#define FIT_MESG_NUM_TANK_SUMMARY ((FIT_MESG_NUM)323)
|
|
#define FIT_MESG_NUM_SLEEP_ASSESSMENT ((FIT_MESG_NUM)346)
|
|
#define FIT_MESG_NUM_HRV_STATUS_SUMMARY ((FIT_MESG_NUM)370)
|
|
#define FIT_MESG_NUM_HRV_VALUE ((FIT_MESG_NUM)371)
|
|
#define FIT_MESG_NUM_RAW_BBI ((FIT_MESG_NUM)372)
|
|
#define FIT_MESG_NUM_DEVICE_AUX_BATTERY_INFO ((FIT_MESG_NUM)375)
|
|
#define FIT_MESG_NUM_HSA_GYROSCOPE_DATA ((FIT_MESG_NUM)376)
|
|
#define FIT_MESG_NUM_CHRONO_SHOT_SESSION ((FIT_MESG_NUM)387)
|
|
#define FIT_MESG_NUM_CHRONO_SHOT_DATA ((FIT_MESG_NUM)388)
|
|
#define FIT_MESG_NUM_HSA_CONFIGURATION_DATA ((FIT_MESG_NUM)389)
|
|
#define FIT_MESG_NUM_DIVE_APNEA_ALARM ((FIT_MESG_NUM)393)
|
|
#define FIT_MESG_NUM_HSA_WRIST_TEMPERATURE_DATA ((FIT_MESG_NUM)409) // Message number for the HSA wrist temperature data message
|
|
#define FIT_MESG_NUM_MFG_RANGE_MIN ((FIT_MESG_NUM)0xFF00) // 0xFF00 - 0xFFFE reserved for manufacturer specific messages
|
|
#define FIT_MESG_NUM_MFG_RANGE_MAX ((FIT_MESG_NUM)0xFFFE) // 0xFF00 - 0xFFFE reserved for manufacturer specific messages
|
|
#define FIT_MESG_NUM_COUNT 121
|
|
|
|
typedef FIT_UINT8 FIT_CHECKSUM;
|
|
#define FIT_CHECKSUM_INVALID FIT_UINT8_INVALID
|
|
#define FIT_CHECKSUM_CLEAR ((FIT_CHECKSUM)0) // Allows clear of checksum for flash memory where can only write 1 to 0 without erasing sector.
|
|
#define FIT_CHECKSUM_OK ((FIT_CHECKSUM)1) // Set to mark checksum as valid if computes to invalid values 0 or 0xFF. Checksum can also be set to ok to save encoding computation time.
|
|
#define FIT_CHECKSUM_COUNT 2
|
|
|
|
typedef FIT_UINT8Z FIT_FILE_FLAGS;
|
|
#define FIT_FILE_FLAGS_INVALID FIT_UINT8Z_INVALID
|
|
#define FIT_FILE_FLAGS_READ ((FIT_FILE_FLAGS)0x02)
|
|
#define FIT_FILE_FLAGS_WRITE ((FIT_FILE_FLAGS)0x04)
|
|
#define FIT_FILE_FLAGS_ERASE ((FIT_FILE_FLAGS)0x08)
|
|
#define FIT_FILE_FLAGS_COUNT 3
|
|
|
|
typedef FIT_ENUM FIT_MESG_COUNT;
|
|
#define FIT_MESG_COUNT_INVALID FIT_ENUM_INVALID
|
|
#define FIT_MESG_COUNT_NUM_PER_FILE ((FIT_MESG_COUNT)0)
|
|
#define FIT_MESG_COUNT_MAX_PER_FILE ((FIT_MESG_COUNT)1)
|
|
#define FIT_MESG_COUNT_MAX_PER_FILE_TYPE ((FIT_MESG_COUNT)2)
|
|
#define FIT_MESG_COUNT_COUNT 3
|
|
|
|
typedef FIT_UINT32 FIT_DATE_TIME; // seconds since UTC 00:00 Dec 31 1989
|
|
#define FIT_DATE_TIME_INVALID FIT_UINT32_INVALID
|
|
#define FIT_DATE_TIME_MIN ((FIT_DATE_TIME)0x10000000) // if date_time is < 0x10000000 then it is system time (seconds from device power on)
|
|
#define FIT_DATE_TIME_COUNT 1
|
|
|
|
typedef FIT_UINT32 FIT_LOCAL_DATE_TIME; // seconds since 00:00 Dec 31 1989 in local time zone
|
|
#define FIT_LOCAL_DATE_TIME_INVALID FIT_UINT32_INVALID
|
|
#define FIT_LOCAL_DATE_TIME_MIN ((FIT_LOCAL_DATE_TIME)0x10000000) // if date_time is < 0x10000000 then it is system time (seconds from device power on)
|
|
#define FIT_LOCAL_DATE_TIME_COUNT 1
|
|
|
|
typedef FIT_UINT16 FIT_MESSAGE_INDEX;
|
|
#define FIT_MESSAGE_INDEX_INVALID FIT_UINT16_INVALID
|
|
#define FIT_MESSAGE_INDEX_SELECTED ((FIT_MESSAGE_INDEX)0x8000) // message is selected if set
|
|
#define FIT_MESSAGE_INDEX_RESERVED ((FIT_MESSAGE_INDEX)0x7000) // reserved (default 0)
|
|
#define FIT_MESSAGE_INDEX_MASK ((FIT_MESSAGE_INDEX)0x0FFF) // index
|
|
#define FIT_MESSAGE_INDEX_COUNT 3
|
|
|
|
typedef FIT_UINT8 FIT_DEVICE_INDEX;
|
|
#define FIT_DEVICE_INDEX_INVALID FIT_UINT8_INVALID
|
|
#define FIT_DEVICE_INDEX_CREATOR ((FIT_DEVICE_INDEX)0) // Creator of the file is always device index 0.
|
|
#define FIT_DEVICE_INDEX_COUNT 1
|
|
|
|
typedef FIT_ENUM FIT_GENDER;
|
|
#define FIT_GENDER_INVALID FIT_ENUM_INVALID
|
|
#define FIT_GENDER_FEMALE ((FIT_GENDER)0)
|
|
#define FIT_GENDER_MALE ((FIT_GENDER)1)
|
|
#define FIT_GENDER_COUNT 2
|
|
|
|
typedef FIT_ENUM FIT_LANGUAGE;
|
|
#define FIT_LANGUAGE_INVALID FIT_ENUM_INVALID
|
|
#define FIT_LANGUAGE_ENGLISH ((FIT_LANGUAGE)0)
|
|
#define FIT_LANGUAGE_FRENCH ((FIT_LANGUAGE)1)
|
|
#define FIT_LANGUAGE_ITALIAN ((FIT_LANGUAGE)2)
|
|
#define FIT_LANGUAGE_GERMAN ((FIT_LANGUAGE)3)
|
|
#define FIT_LANGUAGE_SPANISH ((FIT_LANGUAGE)4)
|
|
#define FIT_LANGUAGE_CROATIAN ((FIT_LANGUAGE)5)
|
|
#define FIT_LANGUAGE_CZECH ((FIT_LANGUAGE)6)
|
|
#define FIT_LANGUAGE_DANISH ((FIT_LANGUAGE)7)
|
|
#define FIT_LANGUAGE_DUTCH ((FIT_LANGUAGE)8)
|
|
#define FIT_LANGUAGE_FINNISH ((FIT_LANGUAGE)9)
|
|
#define FIT_LANGUAGE_GREEK ((FIT_LANGUAGE)10)
|
|
#define FIT_LANGUAGE_HUNGARIAN ((FIT_LANGUAGE)11)
|
|
#define FIT_LANGUAGE_NORWEGIAN ((FIT_LANGUAGE)12)
|
|
#define FIT_LANGUAGE_POLISH ((FIT_LANGUAGE)13)
|
|
#define FIT_LANGUAGE_PORTUGUESE ((FIT_LANGUAGE)14)
|
|
#define FIT_LANGUAGE_SLOVAKIAN ((FIT_LANGUAGE)15)
|
|
#define FIT_LANGUAGE_SLOVENIAN ((FIT_LANGUAGE)16)
|
|
#define FIT_LANGUAGE_SWEDISH ((FIT_LANGUAGE)17)
|
|
#define FIT_LANGUAGE_RUSSIAN ((FIT_LANGUAGE)18)
|
|
#define FIT_LANGUAGE_TURKISH ((FIT_LANGUAGE)19)
|
|
#define FIT_LANGUAGE_LATVIAN ((FIT_LANGUAGE)20)
|
|
#define FIT_LANGUAGE_UKRAINIAN ((FIT_LANGUAGE)21)
|
|
#define FIT_LANGUAGE_ARABIC ((FIT_LANGUAGE)22)
|
|
#define FIT_LANGUAGE_FARSI ((FIT_LANGUAGE)23)
|
|
#define FIT_LANGUAGE_BULGARIAN ((FIT_LANGUAGE)24)
|
|
#define FIT_LANGUAGE_ROMANIAN ((FIT_LANGUAGE)25)
|
|
#define FIT_LANGUAGE_CHINESE ((FIT_LANGUAGE)26)
|
|
#define FIT_LANGUAGE_JAPANESE ((FIT_LANGUAGE)27)
|
|
#define FIT_LANGUAGE_KOREAN ((FIT_LANGUAGE)28)
|
|
#define FIT_LANGUAGE_TAIWANESE ((FIT_LANGUAGE)29)
|
|
#define FIT_LANGUAGE_THAI ((FIT_LANGUAGE)30)
|
|
#define FIT_LANGUAGE_HEBREW ((FIT_LANGUAGE)31)
|
|
#define FIT_LANGUAGE_BRAZILIAN_PORTUGUESE ((FIT_LANGUAGE)32)
|
|
#define FIT_LANGUAGE_INDONESIAN ((FIT_LANGUAGE)33)
|
|
#define FIT_LANGUAGE_MALAYSIAN ((FIT_LANGUAGE)34)
|
|
#define FIT_LANGUAGE_VIETNAMESE ((FIT_LANGUAGE)35)
|
|
#define FIT_LANGUAGE_BURMESE ((FIT_LANGUAGE)36)
|
|
#define FIT_LANGUAGE_MONGOLIAN ((FIT_LANGUAGE)37)
|
|
#define FIT_LANGUAGE_CUSTOM ((FIT_LANGUAGE)254)
|
|
#define FIT_LANGUAGE_COUNT 39
|
|
|
|
typedef FIT_UINT8Z FIT_LANGUAGE_BITS_0; // Bit field corresponding to language enum type (1 << language).
|
|
#define FIT_LANGUAGE_BITS_0_INVALID FIT_UINT8Z_INVALID
|
|
#define FIT_LANGUAGE_BITS_0_ENGLISH ((FIT_LANGUAGE_BITS_0)0x01)
|
|
#define FIT_LANGUAGE_BITS_0_FRENCH ((FIT_LANGUAGE_BITS_0)0x02)
|
|
#define FIT_LANGUAGE_BITS_0_ITALIAN ((FIT_LANGUAGE_BITS_0)0x04)
|
|
#define FIT_LANGUAGE_BITS_0_GERMAN ((FIT_LANGUAGE_BITS_0)0x08)
|
|
#define FIT_LANGUAGE_BITS_0_SPANISH ((FIT_LANGUAGE_BITS_0)0x10)
|
|
#define FIT_LANGUAGE_BITS_0_CROATIAN ((FIT_LANGUAGE_BITS_0)0x20)
|
|
#define FIT_LANGUAGE_BITS_0_CZECH ((FIT_LANGUAGE_BITS_0)0x40)
|
|
#define FIT_LANGUAGE_BITS_0_DANISH ((FIT_LANGUAGE_BITS_0)0x80)
|
|
#define FIT_LANGUAGE_BITS_0_COUNT 8
|
|
|
|
typedef FIT_UINT8Z FIT_LANGUAGE_BITS_1;
|
|
#define FIT_LANGUAGE_BITS_1_INVALID FIT_UINT8Z_INVALID
|
|
#define FIT_LANGUAGE_BITS_1_DUTCH ((FIT_LANGUAGE_BITS_1)0x01)
|
|
#define FIT_LANGUAGE_BITS_1_FINNISH ((FIT_LANGUAGE_BITS_1)0x02)
|
|
#define FIT_LANGUAGE_BITS_1_GREEK ((FIT_LANGUAGE_BITS_1)0x04)
|
|
#define FIT_LANGUAGE_BITS_1_HUNGARIAN ((FIT_LANGUAGE_BITS_1)0x08)
|
|
#define FIT_LANGUAGE_BITS_1_NORWEGIAN ((FIT_LANGUAGE_BITS_1)0x10)
|
|
#define FIT_LANGUAGE_BITS_1_POLISH ((FIT_LANGUAGE_BITS_1)0x20)
|
|
#define FIT_LANGUAGE_BITS_1_PORTUGUESE ((FIT_LANGUAGE_BITS_1)0x40)
|
|
#define FIT_LANGUAGE_BITS_1_SLOVAKIAN ((FIT_LANGUAGE_BITS_1)0x80)
|
|
#define FIT_LANGUAGE_BITS_1_COUNT 8
|
|
|
|
typedef FIT_UINT8Z FIT_LANGUAGE_BITS_2;
|
|
#define FIT_LANGUAGE_BITS_2_INVALID FIT_UINT8Z_INVALID
|
|
#define FIT_LANGUAGE_BITS_2_SLOVENIAN ((FIT_LANGUAGE_BITS_2)0x01)
|
|
#define FIT_LANGUAGE_BITS_2_SWEDISH ((FIT_LANGUAGE_BITS_2)0x02)
|
|
#define FIT_LANGUAGE_BITS_2_RUSSIAN ((FIT_LANGUAGE_BITS_2)0x04)
|
|
#define FIT_LANGUAGE_BITS_2_TURKISH ((FIT_LANGUAGE_BITS_2)0x08)
|
|
#define FIT_LANGUAGE_BITS_2_LATVIAN ((FIT_LANGUAGE_BITS_2)0x10)
|
|
#define FIT_LANGUAGE_BITS_2_UKRAINIAN ((FIT_LANGUAGE_BITS_2)0x20)
|
|
#define FIT_LANGUAGE_BITS_2_ARABIC ((FIT_LANGUAGE_BITS_2)0x40)
|
|
#define FIT_LANGUAGE_BITS_2_FARSI ((FIT_LANGUAGE_BITS_2)0x80)
|
|
#define FIT_LANGUAGE_BITS_2_COUNT 8
|
|
|
|
typedef FIT_UINT8Z FIT_LANGUAGE_BITS_3;
|
|
#define FIT_LANGUAGE_BITS_3_INVALID FIT_UINT8Z_INVALID
|
|
#define FIT_LANGUAGE_BITS_3_BULGARIAN ((FIT_LANGUAGE_BITS_3)0x01)
|
|
#define FIT_LANGUAGE_BITS_3_ROMANIAN ((FIT_LANGUAGE_BITS_3)0x02)
|
|
#define FIT_LANGUAGE_BITS_3_CHINESE ((FIT_LANGUAGE_BITS_3)0x04)
|
|
#define FIT_LANGUAGE_BITS_3_JAPANESE ((FIT_LANGUAGE_BITS_3)0x08)
|
|
#define FIT_LANGUAGE_BITS_3_KOREAN ((FIT_LANGUAGE_BITS_3)0x10)
|
|
#define FIT_LANGUAGE_BITS_3_TAIWANESE ((FIT_LANGUAGE_BITS_3)0x20)
|
|
#define FIT_LANGUAGE_BITS_3_THAI ((FIT_LANGUAGE_BITS_3)0x40)
|
|
#define FIT_LANGUAGE_BITS_3_HEBREW ((FIT_LANGUAGE_BITS_3)0x80)
|
|
#define FIT_LANGUAGE_BITS_3_COUNT 8
|
|
|
|
typedef FIT_UINT8Z FIT_LANGUAGE_BITS_4;
|
|
#define FIT_LANGUAGE_BITS_4_INVALID FIT_UINT8Z_INVALID
|
|
#define FIT_LANGUAGE_BITS_4_BRAZILIAN_PORTUGUESE ((FIT_LANGUAGE_BITS_4)0x01)
|
|
#define FIT_LANGUAGE_BITS_4_INDONESIAN ((FIT_LANGUAGE_BITS_4)0x02)
|
|
#define FIT_LANGUAGE_BITS_4_MALAYSIAN ((FIT_LANGUAGE_BITS_4)0x04)
|
|
#define FIT_LANGUAGE_BITS_4_VIETNAMESE ((FIT_LANGUAGE_BITS_4)0x08)
|
|
#define FIT_LANGUAGE_BITS_4_BURMESE ((FIT_LANGUAGE_BITS_4)0x10)
|
|
#define FIT_LANGUAGE_BITS_4_MONGOLIAN ((FIT_LANGUAGE_BITS_4)0x20)
|
|
#define FIT_LANGUAGE_BITS_4_COUNT 6
|
|
|
|
typedef FIT_ENUM FIT_TIME_ZONE;
|
|
#define FIT_TIME_ZONE_INVALID FIT_ENUM_INVALID
|
|
#define FIT_TIME_ZONE_ALMATY ((FIT_TIME_ZONE)0)
|
|
#define FIT_TIME_ZONE_BANGKOK ((FIT_TIME_ZONE)1)
|
|
#define FIT_TIME_ZONE_BOMBAY ((FIT_TIME_ZONE)2)
|
|
#define FIT_TIME_ZONE_BRASILIA ((FIT_TIME_ZONE)3)
|
|
#define FIT_TIME_ZONE_CAIRO ((FIT_TIME_ZONE)4)
|
|
#define FIT_TIME_ZONE_CAPE_VERDE_IS ((FIT_TIME_ZONE)5)
|
|
#define FIT_TIME_ZONE_DARWIN ((FIT_TIME_ZONE)6)
|
|
#define FIT_TIME_ZONE_ENIWETOK ((FIT_TIME_ZONE)7)
|
|
#define FIT_TIME_ZONE_FIJI ((FIT_TIME_ZONE)8)
|
|
#define FIT_TIME_ZONE_HONG_KONG ((FIT_TIME_ZONE)9)
|
|
#define FIT_TIME_ZONE_ISLAMABAD ((FIT_TIME_ZONE)10)
|
|
#define FIT_TIME_ZONE_KABUL ((FIT_TIME_ZONE)11)
|
|
#define FIT_TIME_ZONE_MAGADAN ((FIT_TIME_ZONE)12)
|
|
#define FIT_TIME_ZONE_MID_ATLANTIC ((FIT_TIME_ZONE)13)
|
|
#define FIT_TIME_ZONE_MOSCOW ((FIT_TIME_ZONE)14)
|
|
#define FIT_TIME_ZONE_MUSCAT ((FIT_TIME_ZONE)15)
|
|
#define FIT_TIME_ZONE_NEWFOUNDLAND ((FIT_TIME_ZONE)16)
|
|
#define FIT_TIME_ZONE_SAMOA ((FIT_TIME_ZONE)17)
|
|
#define FIT_TIME_ZONE_SYDNEY ((FIT_TIME_ZONE)18)
|
|
#define FIT_TIME_ZONE_TEHRAN ((FIT_TIME_ZONE)19)
|
|
#define FIT_TIME_ZONE_TOKYO ((FIT_TIME_ZONE)20)
|
|
#define FIT_TIME_ZONE_US_ALASKA ((FIT_TIME_ZONE)21)
|
|
#define FIT_TIME_ZONE_US_ATLANTIC ((FIT_TIME_ZONE)22)
|
|
#define FIT_TIME_ZONE_US_CENTRAL ((FIT_TIME_ZONE)23)
|
|
#define FIT_TIME_ZONE_US_EASTERN ((FIT_TIME_ZONE)24)
|
|
#define FIT_TIME_ZONE_US_HAWAII ((FIT_TIME_ZONE)25)
|
|
#define FIT_TIME_ZONE_US_MOUNTAIN ((FIT_TIME_ZONE)26)
|
|
#define FIT_TIME_ZONE_US_PACIFIC ((FIT_TIME_ZONE)27)
|
|
#define FIT_TIME_ZONE_OTHER ((FIT_TIME_ZONE)28)
|
|
#define FIT_TIME_ZONE_AUCKLAND ((FIT_TIME_ZONE)29)
|
|
#define FIT_TIME_ZONE_KATHMANDU ((FIT_TIME_ZONE)30)
|
|
#define FIT_TIME_ZONE_EUROPE_WESTERN_WET ((FIT_TIME_ZONE)31)
|
|
#define FIT_TIME_ZONE_EUROPE_CENTRAL_CET ((FIT_TIME_ZONE)32)
|
|
#define FIT_TIME_ZONE_EUROPE_EASTERN_EET ((FIT_TIME_ZONE)33)
|
|
#define FIT_TIME_ZONE_JAKARTA ((FIT_TIME_ZONE)34)
|
|
#define FIT_TIME_ZONE_PERTH ((FIT_TIME_ZONE)35)
|
|
#define FIT_TIME_ZONE_ADELAIDE ((FIT_TIME_ZONE)36)
|
|
#define FIT_TIME_ZONE_BRISBANE ((FIT_TIME_ZONE)37)
|
|
#define FIT_TIME_ZONE_TASMANIA ((FIT_TIME_ZONE)38)
|
|
#define FIT_TIME_ZONE_ICELAND ((FIT_TIME_ZONE)39)
|
|
#define FIT_TIME_ZONE_AMSTERDAM ((FIT_TIME_ZONE)40)
|
|
#define FIT_TIME_ZONE_ATHENS ((FIT_TIME_ZONE)41)
|
|
#define FIT_TIME_ZONE_BARCELONA ((FIT_TIME_ZONE)42)
|
|
#define FIT_TIME_ZONE_BERLIN ((FIT_TIME_ZONE)43)
|
|
#define FIT_TIME_ZONE_BRUSSELS ((FIT_TIME_ZONE)44)
|
|
#define FIT_TIME_ZONE_BUDAPEST ((FIT_TIME_ZONE)45)
|
|
#define FIT_TIME_ZONE_COPENHAGEN ((FIT_TIME_ZONE)46)
|
|
#define FIT_TIME_ZONE_DUBLIN ((FIT_TIME_ZONE)47)
|
|
#define FIT_TIME_ZONE_HELSINKI ((FIT_TIME_ZONE)48)
|
|
#define FIT_TIME_ZONE_LISBON ((FIT_TIME_ZONE)49)
|
|
#define FIT_TIME_ZONE_LONDON ((FIT_TIME_ZONE)50)
|
|
#define FIT_TIME_ZONE_MADRID ((FIT_TIME_ZONE)51)
|
|
#define FIT_TIME_ZONE_MUNICH ((FIT_TIME_ZONE)52)
|
|
#define FIT_TIME_ZONE_OSLO ((FIT_TIME_ZONE)53)
|
|
#define FIT_TIME_ZONE_PARIS ((FIT_TIME_ZONE)54)
|
|
#define FIT_TIME_ZONE_PRAGUE ((FIT_TIME_ZONE)55)
|
|
#define FIT_TIME_ZONE_REYKJAVIK ((FIT_TIME_ZONE)56)
|
|
#define FIT_TIME_ZONE_ROME ((FIT_TIME_ZONE)57)
|
|
#define FIT_TIME_ZONE_STOCKHOLM ((FIT_TIME_ZONE)58)
|
|
#define FIT_TIME_ZONE_VIENNA ((FIT_TIME_ZONE)59)
|
|
#define FIT_TIME_ZONE_WARSAW ((FIT_TIME_ZONE)60)
|
|
#define FIT_TIME_ZONE_ZURICH ((FIT_TIME_ZONE)61)
|
|
#define FIT_TIME_ZONE_QUEBEC ((FIT_TIME_ZONE)62)
|
|
#define FIT_TIME_ZONE_ONTARIO ((FIT_TIME_ZONE)63)
|
|
#define FIT_TIME_ZONE_MANITOBA ((FIT_TIME_ZONE)64)
|
|
#define FIT_TIME_ZONE_SASKATCHEWAN ((FIT_TIME_ZONE)65)
|
|
#define FIT_TIME_ZONE_ALBERTA ((FIT_TIME_ZONE)66)
|
|
#define FIT_TIME_ZONE_BRITISH_COLUMBIA ((FIT_TIME_ZONE)67)
|
|
#define FIT_TIME_ZONE_BOISE ((FIT_TIME_ZONE)68)
|
|
#define FIT_TIME_ZONE_BOSTON ((FIT_TIME_ZONE)69)
|
|
#define FIT_TIME_ZONE_CHICAGO ((FIT_TIME_ZONE)70)
|
|
#define FIT_TIME_ZONE_DALLAS ((FIT_TIME_ZONE)71)
|
|
#define FIT_TIME_ZONE_DENVER ((FIT_TIME_ZONE)72)
|
|
#define FIT_TIME_ZONE_KANSAS_CITY ((FIT_TIME_ZONE)73)
|
|
#define FIT_TIME_ZONE_LAS_VEGAS ((FIT_TIME_ZONE)74)
|
|
#define FIT_TIME_ZONE_LOS_ANGELES ((FIT_TIME_ZONE)75)
|
|
#define FIT_TIME_ZONE_MIAMI ((FIT_TIME_ZONE)76)
|
|
#define FIT_TIME_ZONE_MINNEAPOLIS ((FIT_TIME_ZONE)77)
|
|
#define FIT_TIME_ZONE_NEW_YORK ((FIT_TIME_ZONE)78)
|
|
#define FIT_TIME_ZONE_NEW_ORLEANS ((FIT_TIME_ZONE)79)
|
|
#define FIT_TIME_ZONE_PHOENIX ((FIT_TIME_ZONE)80)
|
|
#define FIT_TIME_ZONE_SANTA_FE ((FIT_TIME_ZONE)81)
|
|
#define FIT_TIME_ZONE_SEATTLE ((FIT_TIME_ZONE)82)
|
|
#define FIT_TIME_ZONE_WASHINGTON_DC ((FIT_TIME_ZONE)83)
|
|
#define FIT_TIME_ZONE_US_ARIZONA ((FIT_TIME_ZONE)84)
|
|
#define FIT_TIME_ZONE_CHITA ((FIT_TIME_ZONE)85)
|
|
#define FIT_TIME_ZONE_EKATERINBURG ((FIT_TIME_ZONE)86)
|
|
#define FIT_TIME_ZONE_IRKUTSK ((FIT_TIME_ZONE)87)
|
|
#define FIT_TIME_ZONE_KALININGRAD ((FIT_TIME_ZONE)88)
|
|
#define FIT_TIME_ZONE_KRASNOYARSK ((FIT_TIME_ZONE)89)
|
|
#define FIT_TIME_ZONE_NOVOSIBIRSK ((FIT_TIME_ZONE)90)
|
|
#define FIT_TIME_ZONE_PETROPAVLOVSK_KAMCHATSKIY ((FIT_TIME_ZONE)91)
|
|
#define FIT_TIME_ZONE_SAMARA ((FIT_TIME_ZONE)92)
|
|
#define FIT_TIME_ZONE_VLADIVOSTOK ((FIT_TIME_ZONE)93)
|
|
#define FIT_TIME_ZONE_MEXICO_CENTRAL ((FIT_TIME_ZONE)94)
|
|
#define FIT_TIME_ZONE_MEXICO_MOUNTAIN ((FIT_TIME_ZONE)95)
|
|
#define FIT_TIME_ZONE_MEXICO_PACIFIC ((FIT_TIME_ZONE)96)
|
|
#define FIT_TIME_ZONE_CAPE_TOWN ((FIT_TIME_ZONE)97)
|
|
#define FIT_TIME_ZONE_WINKHOEK ((FIT_TIME_ZONE)98)
|
|
#define FIT_TIME_ZONE_LAGOS ((FIT_TIME_ZONE)99)
|
|
#define FIT_TIME_ZONE_RIYAHD ((FIT_TIME_ZONE)100)
|
|
#define FIT_TIME_ZONE_VENEZUELA ((FIT_TIME_ZONE)101)
|
|
#define FIT_TIME_ZONE_AUSTRALIA_LH ((FIT_TIME_ZONE)102)
|
|
#define FIT_TIME_ZONE_SANTIAGO ((FIT_TIME_ZONE)103)
|
|
#define FIT_TIME_ZONE_MANUAL ((FIT_TIME_ZONE)253)
|
|
#define FIT_TIME_ZONE_AUTOMATIC ((FIT_TIME_ZONE)254)
|
|
#define FIT_TIME_ZONE_COUNT 106
|
|
|
|
typedef FIT_ENUM FIT_DISPLAY_MEASURE;
|
|
#define FIT_DISPLAY_MEASURE_INVALID FIT_ENUM_INVALID
|
|
#define FIT_DISPLAY_MEASURE_METRIC ((FIT_DISPLAY_MEASURE)0)
|
|
#define FIT_DISPLAY_MEASURE_STATUTE ((FIT_DISPLAY_MEASURE)1)
|
|
#define FIT_DISPLAY_MEASURE_NAUTICAL ((FIT_DISPLAY_MEASURE)2)
|
|
#define FIT_DISPLAY_MEASURE_COUNT 3
|
|
|
|
typedef FIT_ENUM FIT_DISPLAY_HEART;
|
|
#define FIT_DISPLAY_HEART_INVALID FIT_ENUM_INVALID
|
|
#define FIT_DISPLAY_HEART_BPM ((FIT_DISPLAY_HEART)0)
|
|
#define FIT_DISPLAY_HEART_MAX ((FIT_DISPLAY_HEART)1)
|
|
#define FIT_DISPLAY_HEART_RESERVE ((FIT_DISPLAY_HEART)2)
|
|
#define FIT_DISPLAY_HEART_COUNT 3
|
|
|
|
typedef FIT_ENUM FIT_DISPLAY_POWER;
|
|
#define FIT_DISPLAY_POWER_INVALID FIT_ENUM_INVALID
|
|
#define FIT_DISPLAY_POWER_WATTS ((FIT_DISPLAY_POWER)0)
|
|
#define FIT_DISPLAY_POWER_PERCENT_FTP ((FIT_DISPLAY_POWER)1)
|
|
#define FIT_DISPLAY_POWER_COUNT 2
|
|
|
|
typedef FIT_ENUM FIT_DISPLAY_POSITION;
|
|
#define FIT_DISPLAY_POSITION_INVALID FIT_ENUM_INVALID
|
|
#define FIT_DISPLAY_POSITION_DEGREE ((FIT_DISPLAY_POSITION)0) // dd.dddddd
|
|
#define FIT_DISPLAY_POSITION_DEGREE_MINUTE ((FIT_DISPLAY_POSITION)1) // dddmm.mmm
|
|
#define FIT_DISPLAY_POSITION_DEGREE_MINUTE_SECOND ((FIT_DISPLAY_POSITION)2) // dddmmss
|
|
#define FIT_DISPLAY_POSITION_AUSTRIAN_GRID ((FIT_DISPLAY_POSITION)3) // Austrian Grid (BMN)
|
|
#define FIT_DISPLAY_POSITION_BRITISH_GRID ((FIT_DISPLAY_POSITION)4) // British National Grid
|
|
#define FIT_DISPLAY_POSITION_DUTCH_GRID ((FIT_DISPLAY_POSITION)5) // Dutch grid system
|
|
#define FIT_DISPLAY_POSITION_HUNGARIAN_GRID ((FIT_DISPLAY_POSITION)6) // Hungarian grid system
|
|
#define FIT_DISPLAY_POSITION_FINNISH_GRID ((FIT_DISPLAY_POSITION)7) // Finnish grid system Zone3 KKJ27
|
|
#define FIT_DISPLAY_POSITION_GERMAN_GRID ((FIT_DISPLAY_POSITION)8) // Gausss Krueger (German)
|
|
#define FIT_DISPLAY_POSITION_ICELANDIC_GRID ((FIT_DISPLAY_POSITION)9) // Icelandic Grid
|
|
#define FIT_DISPLAY_POSITION_INDONESIAN_EQUATORIAL ((FIT_DISPLAY_POSITION)10) // Indonesian Equatorial LCO
|
|
#define FIT_DISPLAY_POSITION_INDONESIAN_IRIAN ((FIT_DISPLAY_POSITION)11) // Indonesian Irian LCO
|
|
#define FIT_DISPLAY_POSITION_INDONESIAN_SOUTHERN ((FIT_DISPLAY_POSITION)12) // Indonesian Southern LCO
|
|
#define FIT_DISPLAY_POSITION_INDIA_ZONE_0 ((FIT_DISPLAY_POSITION)13) // India zone 0
|
|
#define FIT_DISPLAY_POSITION_INDIA_ZONE_IA ((FIT_DISPLAY_POSITION)14) // India zone IA
|
|
#define FIT_DISPLAY_POSITION_INDIA_ZONE_IB ((FIT_DISPLAY_POSITION)15) // India zone IB
|
|
#define FIT_DISPLAY_POSITION_INDIA_ZONE_IIA ((FIT_DISPLAY_POSITION)16) // India zone IIA
|
|
#define FIT_DISPLAY_POSITION_INDIA_ZONE_IIB ((FIT_DISPLAY_POSITION)17) // India zone IIB
|
|
#define FIT_DISPLAY_POSITION_INDIA_ZONE_IIIA ((FIT_DISPLAY_POSITION)18) // India zone IIIA
|
|
#define FIT_DISPLAY_POSITION_INDIA_ZONE_IIIB ((FIT_DISPLAY_POSITION)19) // India zone IIIB
|
|
#define FIT_DISPLAY_POSITION_INDIA_ZONE_IVA ((FIT_DISPLAY_POSITION)20) // India zone IVA
|
|
#define FIT_DISPLAY_POSITION_INDIA_ZONE_IVB ((FIT_DISPLAY_POSITION)21) // India zone IVB
|
|
#define FIT_DISPLAY_POSITION_IRISH_TRANSVERSE ((FIT_DISPLAY_POSITION)22) // Irish Transverse Mercator
|
|
#define FIT_DISPLAY_POSITION_IRISH_GRID ((FIT_DISPLAY_POSITION)23) // Irish Grid
|
|
#define FIT_DISPLAY_POSITION_LORAN ((FIT_DISPLAY_POSITION)24) // Loran TD
|
|
#define FIT_DISPLAY_POSITION_MAIDENHEAD_GRID ((FIT_DISPLAY_POSITION)25) // Maidenhead grid system
|
|
#define FIT_DISPLAY_POSITION_MGRS_GRID ((FIT_DISPLAY_POSITION)26) // MGRS grid system
|
|
#define FIT_DISPLAY_POSITION_NEW_ZEALAND_GRID ((FIT_DISPLAY_POSITION)27) // New Zealand grid system
|
|
#define FIT_DISPLAY_POSITION_NEW_ZEALAND_TRANSVERSE ((FIT_DISPLAY_POSITION)28) // New Zealand Transverse Mercator
|
|
#define FIT_DISPLAY_POSITION_QATAR_GRID ((FIT_DISPLAY_POSITION)29) // Qatar National Grid
|
|
#define FIT_DISPLAY_POSITION_MODIFIED_SWEDISH_GRID ((FIT_DISPLAY_POSITION)30) // Modified RT-90 (Sweden)
|
|
#define FIT_DISPLAY_POSITION_SWEDISH_GRID ((FIT_DISPLAY_POSITION)31) // RT-90 (Sweden)
|
|
#define FIT_DISPLAY_POSITION_SOUTH_AFRICAN_GRID ((FIT_DISPLAY_POSITION)32) // South African Grid
|
|
#define FIT_DISPLAY_POSITION_SWISS_GRID ((FIT_DISPLAY_POSITION)33) // Swiss CH-1903 grid
|
|
#define FIT_DISPLAY_POSITION_TAIWAN_GRID ((FIT_DISPLAY_POSITION)34) // Taiwan Grid
|
|
#define FIT_DISPLAY_POSITION_UNITED_STATES_GRID ((FIT_DISPLAY_POSITION)35) // United States National Grid
|
|
#define FIT_DISPLAY_POSITION_UTM_UPS_GRID ((FIT_DISPLAY_POSITION)36) // UTM/UPS grid system
|
|
#define FIT_DISPLAY_POSITION_WEST_MALAYAN ((FIT_DISPLAY_POSITION)37) // West Malayan RSO
|
|
#define FIT_DISPLAY_POSITION_BORNEO_RSO ((FIT_DISPLAY_POSITION)38) // Borneo RSO
|
|
#define FIT_DISPLAY_POSITION_ESTONIAN_GRID ((FIT_DISPLAY_POSITION)39) // Estonian grid system
|
|
#define FIT_DISPLAY_POSITION_LATVIAN_GRID ((FIT_DISPLAY_POSITION)40) // Latvian Transverse Mercator
|
|
#define FIT_DISPLAY_POSITION_SWEDISH_REF_99_GRID ((FIT_DISPLAY_POSITION)41) // Reference Grid 99 TM (Swedish)
|
|
#define FIT_DISPLAY_POSITION_COUNT 42
|
|
|
|
typedef FIT_ENUM FIT_SWITCH;
|
|
#define FIT_SWITCH_INVALID FIT_ENUM_INVALID
|
|
#define FIT_SWITCH_OFF ((FIT_SWITCH)0)
|
|
#define FIT_SWITCH_ON ((FIT_SWITCH)1)
|
|
#define FIT_SWITCH_AUTO ((FIT_SWITCH)2)
|
|
#define FIT_SWITCH_COUNT 3
|
|
|
|
typedef FIT_ENUM FIT_SPORT;
|
|
#define FIT_SPORT_INVALID FIT_ENUM_INVALID
|
|
#define FIT_SPORT_GENERIC ((FIT_SPORT)0)
|
|
#define FIT_SPORT_RUNNING ((FIT_SPORT)1)
|
|
#define FIT_SPORT_CYCLING ((FIT_SPORT)2)
|
|
#define FIT_SPORT_TRANSITION ((FIT_SPORT)3) // Mulitsport transition
|
|
#define FIT_SPORT_FITNESS_EQUIPMENT ((FIT_SPORT)4)
|
|
#define FIT_SPORT_SWIMMING ((FIT_SPORT)5)
|
|
#define FIT_SPORT_BASKETBALL ((FIT_SPORT)6)
|
|
#define FIT_SPORT_SOCCER ((FIT_SPORT)7)
|
|
#define FIT_SPORT_TENNIS ((FIT_SPORT)8)
|
|
#define FIT_SPORT_AMERICAN_FOOTBALL ((FIT_SPORT)9)
|
|
#define FIT_SPORT_TRAINING ((FIT_SPORT)10)
|
|
#define FIT_SPORT_WALKING ((FIT_SPORT)11)
|
|
#define FIT_SPORT_CROSS_COUNTRY_SKIING ((FIT_SPORT)12)
|
|
#define FIT_SPORT_ALPINE_SKIING ((FIT_SPORT)13)
|
|
#define FIT_SPORT_SNOWBOARDING ((FIT_SPORT)14)
|
|
#define FIT_SPORT_ROWING ((FIT_SPORT)15)
|
|
#define FIT_SPORT_MOUNTAINEERING ((FIT_SPORT)16)
|
|
#define FIT_SPORT_HIKING ((FIT_SPORT)17)
|
|
#define FIT_SPORT_MULTISPORT ((FIT_SPORT)18)
|
|
#define FIT_SPORT_PADDLING ((FIT_SPORT)19)
|
|
#define FIT_SPORT_FLYING ((FIT_SPORT)20)
|
|
#define FIT_SPORT_E_BIKING ((FIT_SPORT)21)
|
|
#define FIT_SPORT_MOTORCYCLING ((FIT_SPORT)22)
|
|
#define FIT_SPORT_BOATING ((FIT_SPORT)23)
|
|
#define FIT_SPORT_DRIVING ((FIT_SPORT)24)
|
|
#define FIT_SPORT_GOLF ((FIT_SPORT)25)
|
|
#define FIT_SPORT_HANG_GLIDING ((FIT_SPORT)26)
|
|
#define FIT_SPORT_HORSEBACK_RIDING ((FIT_SPORT)27)
|
|
#define FIT_SPORT_HUNTING ((FIT_SPORT)28)
|
|
#define FIT_SPORT_FISHING ((FIT_SPORT)29)
|
|
#define FIT_SPORT_INLINE_SKATING ((FIT_SPORT)30)
|
|
#define FIT_SPORT_ROCK_CLIMBING ((FIT_SPORT)31)
|
|
#define FIT_SPORT_SAILING ((FIT_SPORT)32)
|
|
#define FIT_SPORT_ICE_SKATING ((FIT_SPORT)33)
|
|
#define FIT_SPORT_SKY_DIVING ((FIT_SPORT)34)
|
|
#define FIT_SPORT_SNOWSHOEING ((FIT_SPORT)35)
|
|
#define FIT_SPORT_SNOWMOBILING ((FIT_SPORT)36)
|
|
#define FIT_SPORT_STAND_UP_PADDLEBOARDING ((FIT_SPORT)37)
|
|
#define FIT_SPORT_SURFING ((FIT_SPORT)38)
|
|
#define FIT_SPORT_WAKEBOARDING ((FIT_SPORT)39)
|
|
#define FIT_SPORT_WATER_SKIING ((FIT_SPORT)40)
|
|
#define FIT_SPORT_KAYAKING ((FIT_SPORT)41)
|
|
#define FIT_SPORT_RAFTING ((FIT_SPORT)42)
|
|
#define FIT_SPORT_WINDSURFING ((FIT_SPORT)43)
|
|
#define FIT_SPORT_KITESURFING ((FIT_SPORT)44)
|
|
#define FIT_SPORT_TACTICAL ((FIT_SPORT)45)
|
|
#define FIT_SPORT_JUMPMASTER ((FIT_SPORT)46)
|
|
#define FIT_SPORT_BOXING ((FIT_SPORT)47)
|
|
#define FIT_SPORT_FLOOR_CLIMBING ((FIT_SPORT)48)
|
|
#define FIT_SPORT_BASEBALL ((FIT_SPORT)49)
|
|
#define FIT_SPORT_DIVING ((FIT_SPORT)53)
|
|
#define FIT_SPORT_HIIT ((FIT_SPORT)62)
|
|
#define FIT_SPORT_RACKET ((FIT_SPORT)64)
|
|
#define FIT_SPORT_WHEELCHAIR_PUSH_WALK ((FIT_SPORT)65)
|
|
#define FIT_SPORT_WHEELCHAIR_PUSH_RUN ((FIT_SPORT)66)
|
|
#define FIT_SPORT_MEDITATION ((FIT_SPORT)67)
|
|
#define FIT_SPORT_DISC_GOLF ((FIT_SPORT)69)
|
|
#define FIT_SPORT_CRICKET ((FIT_SPORT)71)
|
|
#define FIT_SPORT_RUGBY ((FIT_SPORT)72)
|
|
#define FIT_SPORT_HOCKEY ((FIT_SPORT)73)
|
|
#define FIT_SPORT_LACROSSE ((FIT_SPORT)74)
|
|
#define FIT_SPORT_VOLLEYBALL ((FIT_SPORT)75)
|
|
#define FIT_SPORT_WATER_TUBING ((FIT_SPORT)76)
|
|
#define FIT_SPORT_WAKESURFING ((FIT_SPORT)77)
|
|
#define FIT_SPORT_MIXED_MARTIAL_ARTS ((FIT_SPORT)80)
|
|
#define FIT_SPORT_SNORKELING ((FIT_SPORT)82)
|
|
#define FIT_SPORT_DANCE ((FIT_SPORT)83)
|
|
#define FIT_SPORT_JUMP_ROPE ((FIT_SPORT)84)
|
|
#define FIT_SPORT_ALL ((FIT_SPORT)254) // All is for goals only to include all sports.
|
|
#define FIT_SPORT_COUNT 69
|
|
|
|
typedef FIT_UINT8Z FIT_SPORT_BITS_0; // Bit field corresponding to sport enum type (1 << sport).
|
|
#define FIT_SPORT_BITS_0_INVALID FIT_UINT8Z_INVALID
|
|
#define FIT_SPORT_BITS_0_GENERIC ((FIT_SPORT_BITS_0)0x01)
|
|
#define FIT_SPORT_BITS_0_RUNNING ((FIT_SPORT_BITS_0)0x02)
|
|
#define FIT_SPORT_BITS_0_CYCLING ((FIT_SPORT_BITS_0)0x04)
|
|
#define FIT_SPORT_BITS_0_TRANSITION ((FIT_SPORT_BITS_0)0x08) // Mulitsport transition
|
|
#define FIT_SPORT_BITS_0_FITNESS_EQUIPMENT ((FIT_SPORT_BITS_0)0x10)
|
|
#define FIT_SPORT_BITS_0_SWIMMING ((FIT_SPORT_BITS_0)0x20)
|
|
#define FIT_SPORT_BITS_0_BASKETBALL ((FIT_SPORT_BITS_0)0x40)
|
|
#define FIT_SPORT_BITS_0_SOCCER ((FIT_SPORT_BITS_0)0x80)
|
|
#define FIT_SPORT_BITS_0_COUNT 8
|
|
|
|
typedef FIT_UINT8Z FIT_SPORT_BITS_1; // Bit field corresponding to sport enum type (1 << (sport-8)).
|
|
#define FIT_SPORT_BITS_1_INVALID FIT_UINT8Z_INVALID
|
|
#define FIT_SPORT_BITS_1_TENNIS ((FIT_SPORT_BITS_1)0x01)
|
|
#define FIT_SPORT_BITS_1_AMERICAN_FOOTBALL ((FIT_SPORT_BITS_1)0x02)
|
|
#define FIT_SPORT_BITS_1_TRAINING ((FIT_SPORT_BITS_1)0x04)
|
|
#define FIT_SPORT_BITS_1_WALKING ((FIT_SPORT_BITS_1)0x08)
|
|
#define FIT_SPORT_BITS_1_CROSS_COUNTRY_SKIING ((FIT_SPORT_BITS_1)0x10)
|
|
#define FIT_SPORT_BITS_1_ALPINE_SKIING ((FIT_SPORT_BITS_1)0x20)
|
|
#define FIT_SPORT_BITS_1_SNOWBOARDING ((FIT_SPORT_BITS_1)0x40)
|
|
#define FIT_SPORT_BITS_1_ROWING ((FIT_SPORT_BITS_1)0x80)
|
|
#define FIT_SPORT_BITS_1_COUNT 8
|
|
|
|
typedef FIT_UINT8Z FIT_SPORT_BITS_2; // Bit field corresponding to sport enum type (1 << (sport-16)).
|
|
#define FIT_SPORT_BITS_2_INVALID FIT_UINT8Z_INVALID
|
|
#define FIT_SPORT_BITS_2_MOUNTAINEERING ((FIT_SPORT_BITS_2)0x01)
|
|
#define FIT_SPORT_BITS_2_HIKING ((FIT_SPORT_BITS_2)0x02)
|
|
#define FIT_SPORT_BITS_2_MULTISPORT ((FIT_SPORT_BITS_2)0x04)
|
|
#define FIT_SPORT_BITS_2_PADDLING ((FIT_SPORT_BITS_2)0x08)
|
|
#define FIT_SPORT_BITS_2_FLYING ((FIT_SPORT_BITS_2)0x10)
|
|
#define FIT_SPORT_BITS_2_E_BIKING ((FIT_SPORT_BITS_2)0x20)
|
|
#define FIT_SPORT_BITS_2_MOTORCYCLING ((FIT_SPORT_BITS_2)0x40)
|
|
#define FIT_SPORT_BITS_2_BOATING ((FIT_SPORT_BITS_2)0x80)
|
|
#define FIT_SPORT_BITS_2_COUNT 8
|
|
|
|
typedef FIT_UINT8Z FIT_SPORT_BITS_3; // Bit field corresponding to sport enum type (1 << (sport-24)).
|
|
#define FIT_SPORT_BITS_3_INVALID FIT_UINT8Z_INVALID
|
|
#define FIT_SPORT_BITS_3_DRIVING ((FIT_SPORT_BITS_3)0x01)
|
|
#define FIT_SPORT_BITS_3_GOLF ((FIT_SPORT_BITS_3)0x02)
|
|
#define FIT_SPORT_BITS_3_HANG_GLIDING ((FIT_SPORT_BITS_3)0x04)
|
|
#define FIT_SPORT_BITS_3_HORSEBACK_RIDING ((FIT_SPORT_BITS_3)0x08)
|
|
#define FIT_SPORT_BITS_3_HUNTING ((FIT_SPORT_BITS_3)0x10)
|
|
#define FIT_SPORT_BITS_3_FISHING ((FIT_SPORT_BITS_3)0x20)
|
|
#define FIT_SPORT_BITS_3_INLINE_SKATING ((FIT_SPORT_BITS_3)0x40)
|
|
#define FIT_SPORT_BITS_3_ROCK_CLIMBING ((FIT_SPORT_BITS_3)0x80)
|
|
#define FIT_SPORT_BITS_3_COUNT 8
|
|
|
|
typedef FIT_UINT8Z FIT_SPORT_BITS_4; // Bit field corresponding to sport enum type (1 << (sport-32)).
|
|
#define FIT_SPORT_BITS_4_INVALID FIT_UINT8Z_INVALID
|
|
#define FIT_SPORT_BITS_4_SAILING ((FIT_SPORT_BITS_4)0x01)
|
|
#define FIT_SPORT_BITS_4_ICE_SKATING ((FIT_SPORT_BITS_4)0x02)
|
|
#define FIT_SPORT_BITS_4_SKY_DIVING ((FIT_SPORT_BITS_4)0x04)
|
|
#define FIT_SPORT_BITS_4_SNOWSHOEING ((FIT_SPORT_BITS_4)0x08)
|
|
#define FIT_SPORT_BITS_4_SNOWMOBILING ((FIT_SPORT_BITS_4)0x10)
|
|
#define FIT_SPORT_BITS_4_STAND_UP_PADDLEBOARDING ((FIT_SPORT_BITS_4)0x20)
|
|
#define FIT_SPORT_BITS_4_SURFING ((FIT_SPORT_BITS_4)0x40)
|
|
#define FIT_SPORT_BITS_4_WAKEBOARDING ((FIT_SPORT_BITS_4)0x80)
|
|
#define FIT_SPORT_BITS_4_COUNT 8
|
|
|
|
typedef FIT_UINT8Z FIT_SPORT_BITS_5; // Bit field corresponding to sport enum type (1 << (sport-40)).
|
|
#define FIT_SPORT_BITS_5_INVALID FIT_UINT8Z_INVALID
|
|
#define FIT_SPORT_BITS_5_WATER_SKIING ((FIT_SPORT_BITS_5)0x01)
|
|
#define FIT_SPORT_BITS_5_KAYAKING ((FIT_SPORT_BITS_5)0x02)
|
|
#define FIT_SPORT_BITS_5_RAFTING ((FIT_SPORT_BITS_5)0x04)
|
|
#define FIT_SPORT_BITS_5_WINDSURFING ((FIT_SPORT_BITS_5)0x08)
|
|
#define FIT_SPORT_BITS_5_KITESURFING ((FIT_SPORT_BITS_5)0x10)
|
|
#define FIT_SPORT_BITS_5_TACTICAL ((FIT_SPORT_BITS_5)0x20)
|
|
#define FIT_SPORT_BITS_5_JUMPMASTER ((FIT_SPORT_BITS_5)0x40)
|
|
#define FIT_SPORT_BITS_5_BOXING ((FIT_SPORT_BITS_5)0x80)
|
|
#define FIT_SPORT_BITS_5_COUNT 8
|
|
|
|
typedef FIT_UINT8Z FIT_SPORT_BITS_6; // Bit field corresponding to sport enum type (1 << (sport-48)).
|
|
#define FIT_SPORT_BITS_6_INVALID FIT_UINT8Z_INVALID
|
|
#define FIT_SPORT_BITS_6_FLOOR_CLIMBING ((FIT_SPORT_BITS_6)0x01)
|
|
#define FIT_SPORT_BITS_6_COUNT 1
|
|
|
|
typedef FIT_ENUM FIT_SUB_SPORT;
|
|
#define FIT_SUB_SPORT_INVALID FIT_ENUM_INVALID
|
|
#define FIT_SUB_SPORT_GENERIC ((FIT_SUB_SPORT)0)
|
|
#define FIT_SUB_SPORT_TREADMILL ((FIT_SUB_SPORT)1) // Run/Fitness Equipment
|
|
#define FIT_SUB_SPORT_STREET ((FIT_SUB_SPORT)2) // Run
|
|
#define FIT_SUB_SPORT_TRAIL ((FIT_SUB_SPORT)3) // Run
|
|
#define FIT_SUB_SPORT_TRACK ((FIT_SUB_SPORT)4) // Run
|
|
#define FIT_SUB_SPORT_SPIN ((FIT_SUB_SPORT)5) // Cycling
|
|
#define FIT_SUB_SPORT_INDOOR_CYCLING ((FIT_SUB_SPORT)6) // Cycling/Fitness Equipment
|
|
#define FIT_SUB_SPORT_ROAD ((FIT_SUB_SPORT)7) // Cycling
|
|
#define FIT_SUB_SPORT_MOUNTAIN ((FIT_SUB_SPORT)8) // Cycling
|
|
#define FIT_SUB_SPORT_DOWNHILL ((FIT_SUB_SPORT)9) // Cycling
|
|
#define FIT_SUB_SPORT_RECUMBENT ((FIT_SUB_SPORT)10) // Cycling
|
|
#define FIT_SUB_SPORT_CYCLOCROSS ((FIT_SUB_SPORT)11) // Cycling
|
|
#define FIT_SUB_SPORT_HAND_CYCLING ((FIT_SUB_SPORT)12) // Cycling
|
|
#define FIT_SUB_SPORT_TRACK_CYCLING ((FIT_SUB_SPORT)13) // Cycling
|
|
#define FIT_SUB_SPORT_INDOOR_ROWING ((FIT_SUB_SPORT)14) // Fitness Equipment
|
|
#define FIT_SUB_SPORT_ELLIPTICAL ((FIT_SUB_SPORT)15) // Fitness Equipment
|
|
#define FIT_SUB_SPORT_STAIR_CLIMBING ((FIT_SUB_SPORT)16) // Fitness Equipment
|
|
#define FIT_SUB_SPORT_LAP_SWIMMING ((FIT_SUB_SPORT)17) // Swimming
|
|
#define FIT_SUB_SPORT_OPEN_WATER ((FIT_SUB_SPORT)18) // Swimming
|
|
#define FIT_SUB_SPORT_FLEXIBILITY_TRAINING ((FIT_SUB_SPORT)19) // Training
|
|
#define FIT_SUB_SPORT_STRENGTH_TRAINING ((FIT_SUB_SPORT)20) // Training
|
|
#define FIT_SUB_SPORT_WARM_UP ((FIT_SUB_SPORT)21) // Tennis
|
|
#define FIT_SUB_SPORT_MATCH ((FIT_SUB_SPORT)22) // Tennis
|
|
#define FIT_SUB_SPORT_EXERCISE ((FIT_SUB_SPORT)23) // Tennis
|
|
#define FIT_SUB_SPORT_CHALLENGE ((FIT_SUB_SPORT)24)
|
|
#define FIT_SUB_SPORT_INDOOR_SKIING ((FIT_SUB_SPORT)25) // Fitness Equipment
|
|
#define FIT_SUB_SPORT_CARDIO_TRAINING ((FIT_SUB_SPORT)26) // Training
|
|
#define FIT_SUB_SPORT_INDOOR_WALKING ((FIT_SUB_SPORT)27) // Walking/Fitness Equipment
|
|
#define FIT_SUB_SPORT_E_BIKE_FITNESS ((FIT_SUB_SPORT)28) // E-Biking
|
|
#define FIT_SUB_SPORT_BMX ((FIT_SUB_SPORT)29) // Cycling
|
|
#define FIT_SUB_SPORT_CASUAL_WALKING ((FIT_SUB_SPORT)30) // Walking
|
|
#define FIT_SUB_SPORT_SPEED_WALKING ((FIT_SUB_SPORT)31) // Walking
|
|
#define FIT_SUB_SPORT_BIKE_TO_RUN_TRANSITION ((FIT_SUB_SPORT)32) // Transition
|
|
#define FIT_SUB_SPORT_RUN_TO_BIKE_TRANSITION ((FIT_SUB_SPORT)33) // Transition
|
|
#define FIT_SUB_SPORT_SWIM_TO_BIKE_TRANSITION ((FIT_SUB_SPORT)34) // Transition
|
|
#define FIT_SUB_SPORT_ATV ((FIT_SUB_SPORT)35) // Motorcycling
|
|
#define FIT_SUB_SPORT_MOTOCROSS ((FIT_SUB_SPORT)36) // Motorcycling
|
|
#define FIT_SUB_SPORT_BACKCOUNTRY ((FIT_SUB_SPORT)37) // Alpine Skiing/Snowboarding
|
|
#define FIT_SUB_SPORT_RESORT ((FIT_SUB_SPORT)38) // Alpine Skiing/Snowboarding
|
|
#define FIT_SUB_SPORT_RC_DRONE ((FIT_SUB_SPORT)39) // Flying
|
|
#define FIT_SUB_SPORT_WINGSUIT ((FIT_SUB_SPORT)40) // Flying
|
|
#define FIT_SUB_SPORT_WHITEWATER ((FIT_SUB_SPORT)41) // Kayaking/Rafting
|
|
#define FIT_SUB_SPORT_SKATE_SKIING ((FIT_SUB_SPORT)42) // Cross Country Skiing
|
|
#define FIT_SUB_SPORT_YOGA ((FIT_SUB_SPORT)43) // Training
|
|
#define FIT_SUB_SPORT_PILATES ((FIT_SUB_SPORT)44) // Fitness Equipment
|
|
#define FIT_SUB_SPORT_INDOOR_RUNNING ((FIT_SUB_SPORT)45) // Run
|
|
#define FIT_SUB_SPORT_GRAVEL_CYCLING ((FIT_SUB_SPORT)46) // Cycling
|
|
#define FIT_SUB_SPORT_E_BIKE_MOUNTAIN ((FIT_SUB_SPORT)47) // Cycling
|
|
#define FIT_SUB_SPORT_COMMUTING ((FIT_SUB_SPORT)48) // Cycling
|
|
#define FIT_SUB_SPORT_MIXED_SURFACE ((FIT_SUB_SPORT)49) // Cycling
|
|
#define FIT_SUB_SPORT_NAVIGATE ((FIT_SUB_SPORT)50)
|
|
#define FIT_SUB_SPORT_TRACK_ME ((FIT_SUB_SPORT)51)
|
|
#define FIT_SUB_SPORT_MAP ((FIT_SUB_SPORT)52)
|
|
#define FIT_SUB_SPORT_SINGLE_GAS_DIVING ((FIT_SUB_SPORT)53) // Diving
|
|
#define FIT_SUB_SPORT_MULTI_GAS_DIVING ((FIT_SUB_SPORT)54) // Diving
|
|
#define FIT_SUB_SPORT_GAUGE_DIVING ((FIT_SUB_SPORT)55) // Diving
|
|
#define FIT_SUB_SPORT_APNEA_DIVING ((FIT_SUB_SPORT)56) // Diving
|
|
#define FIT_SUB_SPORT_APNEA_HUNTING ((FIT_SUB_SPORT)57) // Diving
|
|
#define FIT_SUB_SPORT_VIRTUAL_ACTIVITY ((FIT_SUB_SPORT)58)
|
|
#define FIT_SUB_SPORT_OBSTACLE ((FIT_SUB_SPORT)59) // Used for events where participants run, crawl through mud, climb over walls, etc.
|
|
#define FIT_SUB_SPORT_BREATHING ((FIT_SUB_SPORT)62)
|
|
#define FIT_SUB_SPORT_SAIL_RACE ((FIT_SUB_SPORT)65) // Sailing
|
|
#define FIT_SUB_SPORT_ULTRA ((FIT_SUB_SPORT)67) // Ultramarathon
|
|
#define FIT_SUB_SPORT_INDOOR_CLIMBING ((FIT_SUB_SPORT)68) // Climbing
|
|
#define FIT_SUB_SPORT_BOULDERING ((FIT_SUB_SPORT)69) // Climbing
|
|
#define FIT_SUB_SPORT_HIIT ((FIT_SUB_SPORT)70) // High Intensity Interval Training
|
|
#define FIT_SUB_SPORT_AMRAP ((FIT_SUB_SPORT)73) // HIIT
|
|
#define FIT_SUB_SPORT_EMOM ((FIT_SUB_SPORT)74) // HIIT
|
|
#define FIT_SUB_SPORT_TABATA ((FIT_SUB_SPORT)75) // HIIT
|
|
#define FIT_SUB_SPORT_PICKLEBALL ((FIT_SUB_SPORT)84) // Racket
|
|
#define FIT_SUB_SPORT_PADEL ((FIT_SUB_SPORT)85) // Racket
|
|
#define FIT_SUB_SPORT_INDOOR_WHEELCHAIR_WALK ((FIT_SUB_SPORT)86)
|
|
#define FIT_SUB_SPORT_INDOOR_WHEELCHAIR_RUN ((FIT_SUB_SPORT)87)
|
|
#define FIT_SUB_SPORT_INDOOR_HAND_CYCLING ((FIT_SUB_SPORT)88)
|
|
#define FIT_SUB_SPORT_SQUASH ((FIT_SUB_SPORT)94)
|
|
#define FIT_SUB_SPORT_BADMINTON ((FIT_SUB_SPORT)95)
|
|
#define FIT_SUB_SPORT_RACQUETBALL ((FIT_SUB_SPORT)96)
|
|
#define FIT_SUB_SPORT_TABLE_TENNIS ((FIT_SUB_SPORT)97)
|
|
#define FIT_SUB_SPORT_FLY_CANOPY ((FIT_SUB_SPORT)110) // Flying
|
|
#define FIT_SUB_SPORT_FLY_PARAGLIDE ((FIT_SUB_SPORT)111) // Flying
|
|
#define FIT_SUB_SPORT_FLY_PARAMOTOR ((FIT_SUB_SPORT)112) // Flying
|
|
#define FIT_SUB_SPORT_FLY_PRESSURIZED ((FIT_SUB_SPORT)113) // Flying
|
|
#define FIT_SUB_SPORT_FLY_NAVIGATE ((FIT_SUB_SPORT)114) // Flying
|
|
#define FIT_SUB_SPORT_FLY_TIMER ((FIT_SUB_SPORT)115) // Flying
|
|
#define FIT_SUB_SPORT_FLY_ALTIMETER ((FIT_SUB_SPORT)116) // Flying
|
|
#define FIT_SUB_SPORT_FLY_WX ((FIT_SUB_SPORT)117) // Flying
|
|
#define FIT_SUB_SPORT_FLY_VFR ((FIT_SUB_SPORT)118) // Flying
|
|
#define FIT_SUB_SPORT_FLY_IFR ((FIT_SUB_SPORT)119) // Flying
|
|
#define FIT_SUB_SPORT_ALL ((FIT_SUB_SPORT)254)
|
|
#define FIT_SUB_SPORT_COUNT 89
|
|
|
|
typedef FIT_ENUM FIT_SPORT_EVENT;
|
|
#define FIT_SPORT_EVENT_INVALID FIT_ENUM_INVALID
|
|
#define FIT_SPORT_EVENT_UNCATEGORIZED ((FIT_SPORT_EVENT)0)
|
|
#define FIT_SPORT_EVENT_GEOCACHING ((FIT_SPORT_EVENT)1)
|
|
#define FIT_SPORT_EVENT_FITNESS ((FIT_SPORT_EVENT)2)
|
|
#define FIT_SPORT_EVENT_RECREATION ((FIT_SPORT_EVENT)3)
|
|
#define FIT_SPORT_EVENT_RACE ((FIT_SPORT_EVENT)4)
|
|
#define FIT_SPORT_EVENT_SPECIAL_EVENT ((FIT_SPORT_EVENT)5)
|
|
#define FIT_SPORT_EVENT_TRAINING ((FIT_SPORT_EVENT)6)
|
|
#define FIT_SPORT_EVENT_TRANSPORTATION ((FIT_SPORT_EVENT)7)
|
|
#define FIT_SPORT_EVENT_TOURING ((FIT_SPORT_EVENT)8)
|
|
#define FIT_SPORT_EVENT_COUNT 9
|
|
|
|
typedef FIT_ENUM FIT_ACTIVITY;
|
|
#define FIT_ACTIVITY_INVALID FIT_ENUM_INVALID
|
|
#define FIT_ACTIVITY_MANUAL ((FIT_ACTIVITY)0)
|
|
#define FIT_ACTIVITY_AUTO_MULTI_SPORT ((FIT_ACTIVITY)1)
|
|
#define FIT_ACTIVITY_COUNT 2
|
|
|
|
typedef FIT_ENUM FIT_INTENSITY;
|
|
#define FIT_INTENSITY_INVALID FIT_ENUM_INVALID
|
|
#define FIT_INTENSITY_ACTIVE ((FIT_INTENSITY)0)
|
|
#define FIT_INTENSITY_REST ((FIT_INTENSITY)1)
|
|
#define FIT_INTENSITY_WARMUP ((FIT_INTENSITY)2)
|
|
#define FIT_INTENSITY_COOLDOWN ((FIT_INTENSITY)3)
|
|
#define FIT_INTENSITY_RECOVERY ((FIT_INTENSITY)4)
|
|
#define FIT_INTENSITY_INTERVAL ((FIT_INTENSITY)5)
|
|
#define FIT_INTENSITY_OTHER ((FIT_INTENSITY)6)
|
|
#define FIT_INTENSITY_COUNT 7
|
|
|
|
typedef FIT_ENUM FIT_SESSION_TRIGGER;
|
|
#define FIT_SESSION_TRIGGER_INVALID FIT_ENUM_INVALID
|
|
#define FIT_SESSION_TRIGGER_ACTIVITY_END ((FIT_SESSION_TRIGGER)0)
|
|
#define FIT_SESSION_TRIGGER_MANUAL ((FIT_SESSION_TRIGGER)1) // User changed sport.
|
|
#define FIT_SESSION_TRIGGER_AUTO_MULTI_SPORT ((FIT_SESSION_TRIGGER)2) // Auto multi-sport feature is enabled and user pressed lap button to advance session.
|
|
#define FIT_SESSION_TRIGGER_FITNESS_EQUIPMENT ((FIT_SESSION_TRIGGER)3) // Auto sport change caused by user linking to fitness equipment.
|
|
#define FIT_SESSION_TRIGGER_COUNT 4
|
|
|
|
typedef FIT_ENUM FIT_AUTOLAP_TRIGGER;
|
|
#define FIT_AUTOLAP_TRIGGER_INVALID FIT_ENUM_INVALID
|
|
#define FIT_AUTOLAP_TRIGGER_TIME ((FIT_AUTOLAP_TRIGGER)0)
|
|
#define FIT_AUTOLAP_TRIGGER_DISTANCE ((FIT_AUTOLAP_TRIGGER)1)
|
|
#define FIT_AUTOLAP_TRIGGER_POSITION_START ((FIT_AUTOLAP_TRIGGER)2)
|
|
#define FIT_AUTOLAP_TRIGGER_POSITION_LAP ((FIT_AUTOLAP_TRIGGER)3)
|
|
#define FIT_AUTOLAP_TRIGGER_POSITION_WAYPOINT ((FIT_AUTOLAP_TRIGGER)4)
|
|
#define FIT_AUTOLAP_TRIGGER_POSITION_MARKED ((FIT_AUTOLAP_TRIGGER)5)
|
|
#define FIT_AUTOLAP_TRIGGER_OFF ((FIT_AUTOLAP_TRIGGER)6)
|
|
#define FIT_AUTOLAP_TRIGGER_COUNT 7
|
|
|
|
typedef FIT_ENUM FIT_LAP_TRIGGER;
|
|
#define FIT_LAP_TRIGGER_INVALID FIT_ENUM_INVALID
|
|
#define FIT_LAP_TRIGGER_MANUAL ((FIT_LAP_TRIGGER)0)
|
|
#define FIT_LAP_TRIGGER_TIME ((FIT_LAP_TRIGGER)1)
|
|
#define FIT_LAP_TRIGGER_DISTANCE ((FIT_LAP_TRIGGER)2)
|
|
#define FIT_LAP_TRIGGER_POSITION_START ((FIT_LAP_TRIGGER)3)
|
|
#define FIT_LAP_TRIGGER_POSITION_LAP ((FIT_LAP_TRIGGER)4)
|
|
#define FIT_LAP_TRIGGER_POSITION_WAYPOINT ((FIT_LAP_TRIGGER)5)
|
|
#define FIT_LAP_TRIGGER_POSITION_MARKED ((FIT_LAP_TRIGGER)6)
|
|
#define FIT_LAP_TRIGGER_SESSION_END ((FIT_LAP_TRIGGER)7)
|
|
#define FIT_LAP_TRIGGER_FITNESS_EQUIPMENT ((FIT_LAP_TRIGGER)8)
|
|
#define FIT_LAP_TRIGGER_COUNT 9
|
|
|
|
typedef FIT_ENUM FIT_TIME_MODE;
|
|
#define FIT_TIME_MODE_INVALID FIT_ENUM_INVALID
|
|
#define FIT_TIME_MODE_HOUR12 ((FIT_TIME_MODE)0)
|
|
#define FIT_TIME_MODE_HOUR24 ((FIT_TIME_MODE)1) // Does not use a leading zero and has a colon
|
|
#define FIT_TIME_MODE_MILITARY ((FIT_TIME_MODE)2) // Uses a leading zero and does not have a colon
|
|
#define FIT_TIME_MODE_HOUR_12_WITH_SECONDS ((FIT_TIME_MODE)3)
|
|
#define FIT_TIME_MODE_HOUR_24_WITH_SECONDS ((FIT_TIME_MODE)4)
|
|
#define FIT_TIME_MODE_UTC ((FIT_TIME_MODE)5)
|
|
#define FIT_TIME_MODE_COUNT 6
|
|
|
|
typedef FIT_ENUM FIT_BACKLIGHT_MODE;
|
|
#define FIT_BACKLIGHT_MODE_INVALID FIT_ENUM_INVALID
|
|
#define FIT_BACKLIGHT_MODE_OFF ((FIT_BACKLIGHT_MODE)0)
|
|
#define FIT_BACKLIGHT_MODE_MANUAL ((FIT_BACKLIGHT_MODE)1)
|
|
#define FIT_BACKLIGHT_MODE_KEY_AND_MESSAGES ((FIT_BACKLIGHT_MODE)2)
|
|
#define FIT_BACKLIGHT_MODE_AUTO_BRIGHTNESS ((FIT_BACKLIGHT_MODE)3)
|
|
#define FIT_BACKLIGHT_MODE_SMART_NOTIFICATIONS ((FIT_BACKLIGHT_MODE)4)
|
|
#define FIT_BACKLIGHT_MODE_KEY_AND_MESSAGES_NIGHT ((FIT_BACKLIGHT_MODE)5)
|
|
#define FIT_BACKLIGHT_MODE_KEY_AND_MESSAGES_AND_SMART_NOTIFICATIONS ((FIT_BACKLIGHT_MODE)6)
|
|
#define FIT_BACKLIGHT_MODE_COUNT 7
|
|
|
|
typedef FIT_ENUM FIT_DATE_MODE;
|
|
#define FIT_DATE_MODE_INVALID FIT_ENUM_INVALID
|
|
#define FIT_DATE_MODE_DAY_MONTH ((FIT_DATE_MODE)0)
|
|
#define FIT_DATE_MODE_MONTH_DAY ((FIT_DATE_MODE)1)
|
|
#define FIT_DATE_MODE_COUNT 2
|
|
|
|
typedef FIT_UINT8 FIT_BACKLIGHT_TIMEOUT; // Timeout in seconds.
|
|
#define FIT_BACKLIGHT_TIMEOUT_INVALID FIT_UINT8_INVALID
|
|
#define FIT_BACKLIGHT_TIMEOUT_INFINITE ((FIT_BACKLIGHT_TIMEOUT)0) // Backlight stays on forever.
|
|
#define FIT_BACKLIGHT_TIMEOUT_COUNT 1
|
|
|
|
typedef FIT_ENUM FIT_EVENT;
|
|
#define FIT_EVENT_INVALID FIT_ENUM_INVALID
|
|
#define FIT_EVENT_TIMER ((FIT_EVENT)0) // Group 0. Start / stop_all
|
|
#define FIT_EVENT_WORKOUT ((FIT_EVENT)3) // start / stop
|
|
#define FIT_EVENT_WORKOUT_STEP ((FIT_EVENT)4) // Start at beginning of workout. Stop at end of each step.
|
|
#define FIT_EVENT_POWER_DOWN ((FIT_EVENT)5) // stop_all group 0
|
|
#define FIT_EVENT_POWER_UP ((FIT_EVENT)6) // stop_all group 0
|
|
#define FIT_EVENT_OFF_COURSE ((FIT_EVENT)7) // start / stop group 0
|
|
#define FIT_EVENT_SESSION ((FIT_EVENT)8) // Stop at end of each session.
|
|
#define FIT_EVENT_LAP ((FIT_EVENT)9) // Stop at end of each lap.
|
|
#define FIT_EVENT_COURSE_POINT ((FIT_EVENT)10) // marker
|
|
#define FIT_EVENT_BATTERY ((FIT_EVENT)11) // marker
|
|
#define FIT_EVENT_VIRTUAL_PARTNER_PACE ((FIT_EVENT)12) // Group 1. Start at beginning of activity if VP enabled, when VP pace is changed during activity or VP enabled mid activity. stop_disable when VP disabled.
|
|
#define FIT_EVENT_HR_HIGH_ALERT ((FIT_EVENT)13) // Group 0. Start / stop when in alert condition.
|
|
#define FIT_EVENT_HR_LOW_ALERT ((FIT_EVENT)14) // Group 0. Start / stop when in alert condition.
|
|
#define FIT_EVENT_SPEED_HIGH_ALERT ((FIT_EVENT)15) // Group 0. Start / stop when in alert condition.
|
|
#define FIT_EVENT_SPEED_LOW_ALERT ((FIT_EVENT)16) // Group 0. Start / stop when in alert condition.
|
|
#define FIT_EVENT_CAD_HIGH_ALERT ((FIT_EVENT)17) // Group 0. Start / stop when in alert condition.
|
|
#define FIT_EVENT_CAD_LOW_ALERT ((FIT_EVENT)18) // Group 0. Start / stop when in alert condition.
|
|
#define FIT_EVENT_POWER_HIGH_ALERT ((FIT_EVENT)19) // Group 0. Start / stop when in alert condition.
|
|
#define FIT_EVENT_POWER_LOW_ALERT ((FIT_EVENT)20) // Group 0. Start / stop when in alert condition.
|
|
#define FIT_EVENT_RECOVERY_HR ((FIT_EVENT)21) // marker
|
|
#define FIT_EVENT_BATTERY_LOW ((FIT_EVENT)22) // marker
|
|
#define FIT_EVENT_TIME_DURATION_ALERT ((FIT_EVENT)23) // Group 1. Start if enabled mid activity (not required at start of activity). Stop when duration is reached. stop_disable if disabled.
|
|
#define FIT_EVENT_DISTANCE_DURATION_ALERT ((FIT_EVENT)24) // Group 1. Start if enabled mid activity (not required at start of activity). Stop when duration is reached. stop_disable if disabled.
|
|
#define FIT_EVENT_CALORIE_DURATION_ALERT ((FIT_EVENT)25) // Group 1. Start if enabled mid activity (not required at start of activity). Stop when duration is reached. stop_disable if disabled.
|
|
#define FIT_EVENT_ACTIVITY ((FIT_EVENT)26) // Group 1.. Stop at end of activity.
|
|
#define FIT_EVENT_FITNESS_EQUIPMENT ((FIT_EVENT)27) // marker
|
|
#define FIT_EVENT_LENGTH ((FIT_EVENT)28) // Stop at end of each length.
|
|
#define FIT_EVENT_USER_MARKER ((FIT_EVENT)32) // marker
|
|
#define FIT_EVENT_SPORT_POINT ((FIT_EVENT)33) // marker
|
|
#define FIT_EVENT_CALIBRATION ((FIT_EVENT)36) // start/stop/marker
|
|
#define FIT_EVENT_FRONT_GEAR_CHANGE ((FIT_EVENT)42) // marker
|
|
#define FIT_EVENT_REAR_GEAR_CHANGE ((FIT_EVENT)43) // marker
|
|
#define FIT_EVENT_RIDER_POSITION_CHANGE ((FIT_EVENT)44) // marker
|
|
#define FIT_EVENT_ELEV_HIGH_ALERT ((FIT_EVENT)45) // Group 0. Start / stop when in alert condition.
|
|
#define FIT_EVENT_ELEV_LOW_ALERT ((FIT_EVENT)46) // Group 0. Start / stop when in alert condition.
|
|
#define FIT_EVENT_COMM_TIMEOUT ((FIT_EVENT)47) // marker
|
|
#define FIT_EVENT_AUTO_ACTIVITY_DETECT ((FIT_EVENT)54) // marker
|
|
#define FIT_EVENT_DIVE_ALERT ((FIT_EVENT)56) // marker
|
|
#define FIT_EVENT_DIVE_GAS_SWITCHED ((FIT_EVENT)57) // marker
|
|
#define FIT_EVENT_TANK_PRESSURE_RESERVE ((FIT_EVENT)71) // marker
|
|
#define FIT_EVENT_TANK_PRESSURE_CRITICAL ((FIT_EVENT)72) // marker
|
|
#define FIT_EVENT_TANK_LOST ((FIT_EVENT)73) // marker
|
|
#define FIT_EVENT_RADAR_THREAT_ALERT ((FIT_EVENT)75) // start/stop/marker
|
|
#define FIT_EVENT_TANK_BATTERY_LOW ((FIT_EVENT)76) // marker
|
|
#define FIT_EVENT_TANK_POD_CONNECTED ((FIT_EVENT)81) // marker - tank pod has connected
|
|
#define FIT_EVENT_TANK_POD_DISCONNECTED ((FIT_EVENT)82) // marker - tank pod has lost connection
|
|
#define FIT_EVENT_COUNT 46
|
|
|
|
typedef FIT_ENUM FIT_EVENT_TYPE;
|
|
#define FIT_EVENT_TYPE_INVALID FIT_ENUM_INVALID
|
|
#define FIT_EVENT_TYPE_START ((FIT_EVENT_TYPE)0)
|
|
#define FIT_EVENT_TYPE_STOP ((FIT_EVENT_TYPE)1)
|
|
#define FIT_EVENT_TYPE_CONSECUTIVE_DEPRECIATED ((FIT_EVENT_TYPE)2)
|
|
#define FIT_EVENT_TYPE_MARKER ((FIT_EVENT_TYPE)3)
|
|
#define FIT_EVENT_TYPE_STOP_ALL ((FIT_EVENT_TYPE)4)
|
|
#define FIT_EVENT_TYPE_BEGIN_DEPRECIATED ((FIT_EVENT_TYPE)5)
|
|
#define FIT_EVENT_TYPE_END_DEPRECIATED ((FIT_EVENT_TYPE)6)
|
|
#define FIT_EVENT_TYPE_END_ALL_DEPRECIATED ((FIT_EVENT_TYPE)7)
|
|
#define FIT_EVENT_TYPE_STOP_DISABLE ((FIT_EVENT_TYPE)8)
|
|
#define FIT_EVENT_TYPE_STOP_DISABLE_ALL ((FIT_EVENT_TYPE)9)
|
|
#define FIT_EVENT_TYPE_COUNT 10
|
|
|
|
typedef FIT_ENUM FIT_TIMER_TRIGGER; // timer event data
|
|
#define FIT_TIMER_TRIGGER_INVALID FIT_ENUM_INVALID
|
|
#define FIT_TIMER_TRIGGER_MANUAL ((FIT_TIMER_TRIGGER)0)
|
|
#define FIT_TIMER_TRIGGER_AUTO ((FIT_TIMER_TRIGGER)1)
|
|
#define FIT_TIMER_TRIGGER_FITNESS_EQUIPMENT ((FIT_TIMER_TRIGGER)2)
|
|
#define FIT_TIMER_TRIGGER_COUNT 3
|
|
|
|
typedef FIT_ENUM FIT_FITNESS_EQUIPMENT_STATE; // fitness equipment event data
|
|
#define FIT_FITNESS_EQUIPMENT_STATE_INVALID FIT_ENUM_INVALID
|
|
#define FIT_FITNESS_EQUIPMENT_STATE_READY ((FIT_FITNESS_EQUIPMENT_STATE)0)
|
|
#define FIT_FITNESS_EQUIPMENT_STATE_IN_USE ((FIT_FITNESS_EQUIPMENT_STATE)1)
|
|
#define FIT_FITNESS_EQUIPMENT_STATE_PAUSED ((FIT_FITNESS_EQUIPMENT_STATE)2)
|
|
#define FIT_FITNESS_EQUIPMENT_STATE_UNKNOWN ((FIT_FITNESS_EQUIPMENT_STATE)3) // lost connection to fitness equipment
|
|
#define FIT_FITNESS_EQUIPMENT_STATE_COUNT 4
|
|
|
|
typedef FIT_ENUM FIT_TONE;
|
|
#define FIT_TONE_INVALID FIT_ENUM_INVALID
|
|
#define FIT_TONE_OFF ((FIT_TONE)0)
|
|
#define FIT_TONE_TONE ((FIT_TONE)1)
|
|
#define FIT_TONE_VIBRATE ((FIT_TONE)2)
|
|
#define FIT_TONE_TONE_AND_VIBRATE ((FIT_TONE)3)
|
|
#define FIT_TONE_COUNT 4
|
|
|
|
typedef FIT_ENUM FIT_AUTOSCROLL;
|
|
#define FIT_AUTOSCROLL_INVALID FIT_ENUM_INVALID
|
|
#define FIT_AUTOSCROLL_NONE ((FIT_AUTOSCROLL)0)
|
|
#define FIT_AUTOSCROLL_SLOW ((FIT_AUTOSCROLL)1)
|
|
#define FIT_AUTOSCROLL_MEDIUM ((FIT_AUTOSCROLL)2)
|
|
#define FIT_AUTOSCROLL_FAST ((FIT_AUTOSCROLL)3)
|
|
#define FIT_AUTOSCROLL_COUNT 4
|
|
|
|
typedef FIT_ENUM FIT_ACTIVITY_CLASS;
|
|
#define FIT_ACTIVITY_CLASS_INVALID FIT_ENUM_INVALID
|
|
#define FIT_ACTIVITY_CLASS_LEVEL ((FIT_ACTIVITY_CLASS)0x7F) // 0 to 100
|
|
#define FIT_ACTIVITY_CLASS_LEVEL_MAX ((FIT_ACTIVITY_CLASS)100)
|
|
#define FIT_ACTIVITY_CLASS_ATHLETE ((FIT_ACTIVITY_CLASS)0x80)
|
|
#define FIT_ACTIVITY_CLASS_COUNT 3
|
|
|
|
typedef FIT_ENUM FIT_HR_ZONE_CALC;
|
|
#define FIT_HR_ZONE_CALC_INVALID FIT_ENUM_INVALID
|
|
#define FIT_HR_ZONE_CALC_CUSTOM ((FIT_HR_ZONE_CALC)0)
|
|
#define FIT_HR_ZONE_CALC_PERCENT_MAX_HR ((FIT_HR_ZONE_CALC)1)
|
|
#define FIT_HR_ZONE_CALC_PERCENT_HRR ((FIT_HR_ZONE_CALC)2)
|
|
#define FIT_HR_ZONE_CALC_PERCENT_LTHR ((FIT_HR_ZONE_CALC)3)
|
|
#define FIT_HR_ZONE_CALC_COUNT 4
|
|
|
|
typedef FIT_ENUM FIT_PWR_ZONE_CALC;
|
|
#define FIT_PWR_ZONE_CALC_INVALID FIT_ENUM_INVALID
|
|
#define FIT_PWR_ZONE_CALC_CUSTOM ((FIT_PWR_ZONE_CALC)0)
|
|
#define FIT_PWR_ZONE_CALC_PERCENT_FTP ((FIT_PWR_ZONE_CALC)1)
|
|
#define FIT_PWR_ZONE_CALC_COUNT 2
|
|
|
|
typedef FIT_ENUM FIT_WKT_STEP_DURATION;
|
|
#define FIT_WKT_STEP_DURATION_INVALID FIT_ENUM_INVALID
|
|
#define FIT_WKT_STEP_DURATION_TIME ((FIT_WKT_STEP_DURATION)0)
|
|
#define FIT_WKT_STEP_DURATION_DISTANCE ((FIT_WKT_STEP_DURATION)1)
|
|
#define FIT_WKT_STEP_DURATION_HR_LESS_THAN ((FIT_WKT_STEP_DURATION)2)
|
|
#define FIT_WKT_STEP_DURATION_HR_GREATER_THAN ((FIT_WKT_STEP_DURATION)3)
|
|
#define FIT_WKT_STEP_DURATION_CALORIES ((FIT_WKT_STEP_DURATION)4)
|
|
#define FIT_WKT_STEP_DURATION_OPEN ((FIT_WKT_STEP_DURATION)5)
|
|
#define FIT_WKT_STEP_DURATION_REPEAT_UNTIL_STEPS_CMPLT ((FIT_WKT_STEP_DURATION)6)
|
|
#define FIT_WKT_STEP_DURATION_REPEAT_UNTIL_TIME ((FIT_WKT_STEP_DURATION)7)
|
|
#define FIT_WKT_STEP_DURATION_REPEAT_UNTIL_DISTANCE ((FIT_WKT_STEP_DURATION)8)
|
|
#define FIT_WKT_STEP_DURATION_REPEAT_UNTIL_CALORIES ((FIT_WKT_STEP_DURATION)9)
|
|
#define FIT_WKT_STEP_DURATION_REPEAT_UNTIL_HR_LESS_THAN ((FIT_WKT_STEP_DURATION)10)
|
|
#define FIT_WKT_STEP_DURATION_REPEAT_UNTIL_HR_GREATER_THAN ((FIT_WKT_STEP_DURATION)11)
|
|
#define FIT_WKT_STEP_DURATION_REPEAT_UNTIL_POWER_LESS_THAN ((FIT_WKT_STEP_DURATION)12)
|
|
#define FIT_WKT_STEP_DURATION_REPEAT_UNTIL_POWER_GREATER_THAN ((FIT_WKT_STEP_DURATION)13)
|
|
#define FIT_WKT_STEP_DURATION_POWER_LESS_THAN ((FIT_WKT_STEP_DURATION)14)
|
|
#define FIT_WKT_STEP_DURATION_POWER_GREATER_THAN ((FIT_WKT_STEP_DURATION)15)
|
|
#define FIT_WKT_STEP_DURATION_TRAINING_PEAKS_TSS ((FIT_WKT_STEP_DURATION)16)
|
|
#define FIT_WKT_STEP_DURATION_REPEAT_UNTIL_POWER_LAST_LAP_LESS_THAN ((FIT_WKT_STEP_DURATION)17)
|
|
#define FIT_WKT_STEP_DURATION_REPEAT_UNTIL_MAX_POWER_LAST_LAP_LESS_THAN ((FIT_WKT_STEP_DURATION)18)
|
|
#define FIT_WKT_STEP_DURATION_POWER_3S_LESS_THAN ((FIT_WKT_STEP_DURATION)19)
|
|
#define FIT_WKT_STEP_DURATION_POWER_10S_LESS_THAN ((FIT_WKT_STEP_DURATION)20)
|
|
#define FIT_WKT_STEP_DURATION_POWER_30S_LESS_THAN ((FIT_WKT_STEP_DURATION)21)
|
|
#define FIT_WKT_STEP_DURATION_POWER_3S_GREATER_THAN ((FIT_WKT_STEP_DURATION)22)
|
|
#define FIT_WKT_STEP_DURATION_POWER_10S_GREATER_THAN ((FIT_WKT_STEP_DURATION)23)
|
|
#define FIT_WKT_STEP_DURATION_POWER_30S_GREATER_THAN ((FIT_WKT_STEP_DURATION)24)
|
|
#define FIT_WKT_STEP_DURATION_POWER_LAP_LESS_THAN ((FIT_WKT_STEP_DURATION)25)
|
|
#define FIT_WKT_STEP_DURATION_POWER_LAP_GREATER_THAN ((FIT_WKT_STEP_DURATION)26)
|
|
#define FIT_WKT_STEP_DURATION_REPEAT_UNTIL_TRAINING_PEAKS_TSS ((FIT_WKT_STEP_DURATION)27)
|
|
#define FIT_WKT_STEP_DURATION_REPETITION_TIME ((FIT_WKT_STEP_DURATION)28)
|
|
#define FIT_WKT_STEP_DURATION_REPS ((FIT_WKT_STEP_DURATION)29)
|
|
#define FIT_WKT_STEP_DURATION_TIME_ONLY ((FIT_WKT_STEP_DURATION)31)
|
|
#define FIT_WKT_STEP_DURATION_COUNT 31
|
|
|
|
typedef FIT_ENUM FIT_WKT_STEP_TARGET;
|
|
#define FIT_WKT_STEP_TARGET_INVALID FIT_ENUM_INVALID
|
|
#define FIT_WKT_STEP_TARGET_SPEED ((FIT_WKT_STEP_TARGET)0)
|
|
#define FIT_WKT_STEP_TARGET_HEART_RATE ((FIT_WKT_STEP_TARGET)1)
|
|
#define FIT_WKT_STEP_TARGET_OPEN ((FIT_WKT_STEP_TARGET)2)
|
|
#define FIT_WKT_STEP_TARGET_CADENCE ((FIT_WKT_STEP_TARGET)3)
|
|
#define FIT_WKT_STEP_TARGET_POWER ((FIT_WKT_STEP_TARGET)4)
|
|
#define FIT_WKT_STEP_TARGET_GRADE ((FIT_WKT_STEP_TARGET)5)
|
|
#define FIT_WKT_STEP_TARGET_RESISTANCE ((FIT_WKT_STEP_TARGET)6)
|
|
#define FIT_WKT_STEP_TARGET_POWER_3S ((FIT_WKT_STEP_TARGET)7)
|
|
#define FIT_WKT_STEP_TARGET_POWER_10S ((FIT_WKT_STEP_TARGET)8)
|
|
#define FIT_WKT_STEP_TARGET_POWER_30S ((FIT_WKT_STEP_TARGET)9)
|
|
#define FIT_WKT_STEP_TARGET_POWER_LAP ((FIT_WKT_STEP_TARGET)10)
|
|
#define FIT_WKT_STEP_TARGET_SWIM_STROKE ((FIT_WKT_STEP_TARGET)11)
|
|
#define FIT_WKT_STEP_TARGET_SPEED_LAP ((FIT_WKT_STEP_TARGET)12)
|
|
#define FIT_WKT_STEP_TARGET_HEART_RATE_LAP ((FIT_WKT_STEP_TARGET)13)
|
|
#define FIT_WKT_STEP_TARGET_COUNT 14
|
|
|
|
typedef FIT_ENUM FIT_GOAL;
|
|
#define FIT_GOAL_INVALID FIT_ENUM_INVALID
|
|
#define FIT_GOAL_TIME ((FIT_GOAL)0)
|
|
#define FIT_GOAL_DISTANCE ((FIT_GOAL)1)
|
|
#define FIT_GOAL_CALORIES ((FIT_GOAL)2)
|
|
#define FIT_GOAL_FREQUENCY ((FIT_GOAL)3)
|
|
#define FIT_GOAL_STEPS ((FIT_GOAL)4)
|
|
#define FIT_GOAL_ASCENT ((FIT_GOAL)5)
|
|
#define FIT_GOAL_ACTIVE_MINUTES ((FIT_GOAL)6)
|
|
#define FIT_GOAL_COUNT 7
|
|
|
|
typedef FIT_ENUM FIT_GOAL_RECURRENCE;
|
|
#define FIT_GOAL_RECURRENCE_INVALID FIT_ENUM_INVALID
|
|
#define FIT_GOAL_RECURRENCE_OFF ((FIT_GOAL_RECURRENCE)0)
|
|
#define FIT_GOAL_RECURRENCE_DAILY ((FIT_GOAL_RECURRENCE)1)
|
|
#define FIT_GOAL_RECURRENCE_WEEKLY ((FIT_GOAL_RECURRENCE)2)
|
|
#define FIT_GOAL_RECURRENCE_MONTHLY ((FIT_GOAL_RECURRENCE)3)
|
|
#define FIT_GOAL_RECURRENCE_YEARLY ((FIT_GOAL_RECURRENCE)4)
|
|
#define FIT_GOAL_RECURRENCE_CUSTOM ((FIT_GOAL_RECURRENCE)5)
|
|
#define FIT_GOAL_RECURRENCE_COUNT 6
|
|
|
|
typedef FIT_ENUM FIT_GOAL_SOURCE;
|
|
#define FIT_GOAL_SOURCE_INVALID FIT_ENUM_INVALID
|
|
#define FIT_GOAL_SOURCE_AUTO ((FIT_GOAL_SOURCE)0) // Device generated
|
|
#define FIT_GOAL_SOURCE_COMMUNITY ((FIT_GOAL_SOURCE)1) // Social network sourced goal
|
|
#define FIT_GOAL_SOURCE_USER ((FIT_GOAL_SOURCE)2) // Manually generated
|
|
#define FIT_GOAL_SOURCE_COUNT 3
|
|
|
|
typedef FIT_ENUM FIT_SCHEDULE;
|
|
#define FIT_SCHEDULE_INVALID FIT_ENUM_INVALID
|
|
#define FIT_SCHEDULE_WORKOUT ((FIT_SCHEDULE)0)
|
|
#define FIT_SCHEDULE_COURSE ((FIT_SCHEDULE)1)
|
|
#define FIT_SCHEDULE_COUNT 2
|
|
|
|
typedef FIT_ENUM FIT_COURSE_POINT;
|
|
#define FIT_COURSE_POINT_INVALID FIT_ENUM_INVALID
|
|
#define FIT_COURSE_POINT_GENERIC ((FIT_COURSE_POINT)0)
|
|
#define FIT_COURSE_POINT_SUMMIT ((FIT_COURSE_POINT)1)
|
|
#define FIT_COURSE_POINT_VALLEY ((FIT_COURSE_POINT)2)
|
|
#define FIT_COURSE_POINT_WATER ((FIT_COURSE_POINT)3)
|
|
#define FIT_COURSE_POINT_FOOD ((FIT_COURSE_POINT)4)
|
|
#define FIT_COURSE_POINT_DANGER ((FIT_COURSE_POINT)5)
|
|
#define FIT_COURSE_POINT_LEFT ((FIT_COURSE_POINT)6)
|
|
#define FIT_COURSE_POINT_RIGHT ((FIT_COURSE_POINT)7)
|
|
#define FIT_COURSE_POINT_STRAIGHT ((FIT_COURSE_POINT)8)
|
|
#define FIT_COURSE_POINT_FIRST_AID ((FIT_COURSE_POINT)9)
|
|
#define FIT_COURSE_POINT_FOURTH_CATEGORY ((FIT_COURSE_POINT)10)
|
|
#define FIT_COURSE_POINT_THIRD_CATEGORY ((FIT_COURSE_POINT)11)
|
|
#define FIT_COURSE_POINT_SECOND_CATEGORY ((FIT_COURSE_POINT)12)
|
|
#define FIT_COURSE_POINT_FIRST_CATEGORY ((FIT_COURSE_POINT)13)
|
|
#define FIT_COURSE_POINT_HORS_CATEGORY ((FIT_COURSE_POINT)14)
|
|
#define FIT_COURSE_POINT_SPRINT ((FIT_COURSE_POINT)15)
|
|
#define FIT_COURSE_POINT_LEFT_FORK ((FIT_COURSE_POINT)16)
|
|
#define FIT_COURSE_POINT_RIGHT_FORK ((FIT_COURSE_POINT)17)
|
|
#define FIT_COURSE_POINT_MIDDLE_FORK ((FIT_COURSE_POINT)18)
|
|
#define FIT_COURSE_POINT_SLIGHT_LEFT ((FIT_COURSE_POINT)19)
|
|
#define FIT_COURSE_POINT_SHARP_LEFT ((FIT_COURSE_POINT)20)
|
|
#define FIT_COURSE_POINT_SLIGHT_RIGHT ((FIT_COURSE_POINT)21)
|
|
#define FIT_COURSE_POINT_SHARP_RIGHT ((FIT_COURSE_POINT)22)
|
|
#define FIT_COURSE_POINT_U_TURN ((FIT_COURSE_POINT)23)
|
|
#define FIT_COURSE_POINT_SEGMENT_START ((FIT_COURSE_POINT)24)
|
|
#define FIT_COURSE_POINT_SEGMENT_END ((FIT_COURSE_POINT)25)
|
|
#define FIT_COURSE_POINT_CAMPSITE ((FIT_COURSE_POINT)27)
|
|
#define FIT_COURSE_POINT_AID_STATION ((FIT_COURSE_POINT)28)
|
|
#define FIT_COURSE_POINT_REST_AREA ((FIT_COURSE_POINT)29)
|
|
#define FIT_COURSE_POINT_GENERAL_DISTANCE ((FIT_COURSE_POINT)30) // Used with UpAhead
|
|
#define FIT_COURSE_POINT_SERVICE ((FIT_COURSE_POINT)31)
|
|
#define FIT_COURSE_POINT_ENERGY_GEL ((FIT_COURSE_POINT)32)
|
|
#define FIT_COURSE_POINT_SPORTS_DRINK ((FIT_COURSE_POINT)33)
|
|
#define FIT_COURSE_POINT_MILE_MARKER ((FIT_COURSE_POINT)34)
|
|
#define FIT_COURSE_POINT_CHECKPOINT ((FIT_COURSE_POINT)35)
|
|
#define FIT_COURSE_POINT_SHELTER ((FIT_COURSE_POINT)36)
|
|
#define FIT_COURSE_POINT_MEETING_SPOT ((FIT_COURSE_POINT)37)
|
|
#define FIT_COURSE_POINT_OVERLOOK ((FIT_COURSE_POINT)38)
|
|
#define FIT_COURSE_POINT_TOILET ((FIT_COURSE_POINT)39)
|
|
#define FIT_COURSE_POINT_SHOWER ((FIT_COURSE_POINT)40)
|
|
#define FIT_COURSE_POINT_GEAR ((FIT_COURSE_POINT)41)
|
|
#define FIT_COURSE_POINT_SHARP_CURVE ((FIT_COURSE_POINT)42)
|
|
#define FIT_COURSE_POINT_STEEP_INCLINE ((FIT_COURSE_POINT)43)
|
|
#define FIT_COURSE_POINT_TUNNEL ((FIT_COURSE_POINT)44)
|
|
#define FIT_COURSE_POINT_BRIDGE ((FIT_COURSE_POINT)45)
|
|
#define FIT_COURSE_POINT_OBSTACLE ((FIT_COURSE_POINT)46)
|
|
#define FIT_COURSE_POINT_CROSSING ((FIT_COURSE_POINT)47)
|
|
#define FIT_COURSE_POINT_STORE ((FIT_COURSE_POINT)48)
|
|
#define FIT_COURSE_POINT_TRANSITION ((FIT_COURSE_POINT)49)
|
|
#define FIT_COURSE_POINT_NAVAID ((FIT_COURSE_POINT)50)
|
|
#define FIT_COURSE_POINT_TRANSPORT ((FIT_COURSE_POINT)51)
|
|
#define FIT_COURSE_POINT_ALERT ((FIT_COURSE_POINT)52)
|
|
#define FIT_COURSE_POINT_INFO ((FIT_COURSE_POINT)53)
|
|
#define FIT_COURSE_POINT_COUNT 53
|
|
|
|
typedef FIT_UINT16 FIT_MANUFACTURER;
|
|
#define FIT_MANUFACTURER_INVALID FIT_UINT16_INVALID
|
|
#define FIT_MANUFACTURER_GARMIN ((FIT_MANUFACTURER)1)
|
|
#define FIT_MANUFACTURER_GARMIN_FR405_ANTFS ((FIT_MANUFACTURER)2) // Do not use. Used by FR405 for ANTFS man id.
|
|
#define FIT_MANUFACTURER_ZEPHYR ((FIT_MANUFACTURER)3)
|
|
#define FIT_MANUFACTURER_DAYTON ((FIT_MANUFACTURER)4)
|
|
#define FIT_MANUFACTURER_IDT ((FIT_MANUFACTURER)5)
|
|
#define FIT_MANUFACTURER_SRM ((FIT_MANUFACTURER)6)
|
|
#define FIT_MANUFACTURER_QUARQ ((FIT_MANUFACTURER)7)
|
|
#define FIT_MANUFACTURER_IBIKE ((FIT_MANUFACTURER)8)
|
|
#define FIT_MANUFACTURER_SARIS ((FIT_MANUFACTURER)9)
|
|
#define FIT_MANUFACTURER_SPARK_HK ((FIT_MANUFACTURER)10)
|
|
#define FIT_MANUFACTURER_TANITA ((FIT_MANUFACTURER)11)
|
|
#define FIT_MANUFACTURER_ECHOWELL ((FIT_MANUFACTURER)12)
|
|
#define FIT_MANUFACTURER_DYNASTREAM_OEM ((FIT_MANUFACTURER)13)
|
|
#define FIT_MANUFACTURER_NAUTILUS ((FIT_MANUFACTURER)14)
|
|
#define FIT_MANUFACTURER_DYNASTREAM ((FIT_MANUFACTURER)15)
|
|
#define FIT_MANUFACTURER_TIMEX ((FIT_MANUFACTURER)16)
|
|
#define FIT_MANUFACTURER_METRIGEAR ((FIT_MANUFACTURER)17)
|
|
#define FIT_MANUFACTURER_XELIC ((FIT_MANUFACTURER)18)
|
|
#define FIT_MANUFACTURER_BEURER ((FIT_MANUFACTURER)19)
|
|
#define FIT_MANUFACTURER_CARDIOSPORT ((FIT_MANUFACTURER)20)
|
|
#define FIT_MANUFACTURER_A_AND_D ((FIT_MANUFACTURER)21)
|
|
#define FIT_MANUFACTURER_HMM ((FIT_MANUFACTURER)22)
|
|
#define FIT_MANUFACTURER_SUUNTO ((FIT_MANUFACTURER)23)
|
|
#define FIT_MANUFACTURER_THITA_ELEKTRONIK ((FIT_MANUFACTURER)24)
|
|
#define FIT_MANUFACTURER_GPULSE ((FIT_MANUFACTURER)25)
|
|
#define FIT_MANUFACTURER_CLEAN_MOBILE ((FIT_MANUFACTURER)26)
|
|
#define FIT_MANUFACTURER_PEDAL_BRAIN ((FIT_MANUFACTURER)27)
|
|
#define FIT_MANUFACTURER_PEAKSWARE ((FIT_MANUFACTURER)28)
|
|
#define FIT_MANUFACTURER_SAXONAR ((FIT_MANUFACTURER)29)
|
|
#define FIT_MANUFACTURER_LEMOND_FITNESS ((FIT_MANUFACTURER)30)
|
|
#define FIT_MANUFACTURER_DEXCOM ((FIT_MANUFACTURER)31)
|
|
#define FIT_MANUFACTURER_WAHOO_FITNESS ((FIT_MANUFACTURER)32)
|
|
#define FIT_MANUFACTURER_OCTANE_FITNESS ((FIT_MANUFACTURER)33)
|
|
#define FIT_MANUFACTURER_ARCHINOETICS ((FIT_MANUFACTURER)34)
|
|
#define FIT_MANUFACTURER_THE_HURT_BOX ((FIT_MANUFACTURER)35)
|
|
#define FIT_MANUFACTURER_CITIZEN_SYSTEMS ((FIT_MANUFACTURER)36)
|
|
#define FIT_MANUFACTURER_MAGELLAN ((FIT_MANUFACTURER)37)
|
|
#define FIT_MANUFACTURER_OSYNCE ((FIT_MANUFACTURER)38)
|
|
#define FIT_MANUFACTURER_HOLUX ((FIT_MANUFACTURER)39)
|
|
#define FIT_MANUFACTURER_CONCEPT2 ((FIT_MANUFACTURER)40)
|
|
#define FIT_MANUFACTURER_SHIMANO ((FIT_MANUFACTURER)41)
|
|
#define FIT_MANUFACTURER_ONE_GIANT_LEAP ((FIT_MANUFACTURER)42)
|
|
#define FIT_MANUFACTURER_ACE_SENSOR ((FIT_MANUFACTURER)43)
|
|
#define FIT_MANUFACTURER_BRIM_BROTHERS ((FIT_MANUFACTURER)44)
|
|
#define FIT_MANUFACTURER_XPLOVA ((FIT_MANUFACTURER)45)
|
|
#define FIT_MANUFACTURER_PERCEPTION_DIGITAL ((FIT_MANUFACTURER)46)
|
|
#define FIT_MANUFACTURER_BF1SYSTEMS ((FIT_MANUFACTURER)47)
|
|
#define FIT_MANUFACTURER_PIONEER ((FIT_MANUFACTURER)48)
|
|
#define FIT_MANUFACTURER_SPANTEC ((FIT_MANUFACTURER)49)
|
|
#define FIT_MANUFACTURER_METALOGICS ((FIT_MANUFACTURER)50)
|
|
#define FIT_MANUFACTURER_4IIIIS ((FIT_MANUFACTURER)51)
|
|
#define FIT_MANUFACTURER_SEIKO_EPSON ((FIT_MANUFACTURER)52)
|
|
#define FIT_MANUFACTURER_SEIKO_EPSON_OEM ((FIT_MANUFACTURER)53)
|
|
#define FIT_MANUFACTURER_IFOR_POWELL ((FIT_MANUFACTURER)54)
|
|
#define FIT_MANUFACTURER_MAXWELL_GUIDER ((FIT_MANUFACTURER)55)
|
|
#define FIT_MANUFACTURER_STAR_TRAC ((FIT_MANUFACTURER)56)
|
|
#define FIT_MANUFACTURER_BREAKAWAY ((FIT_MANUFACTURER)57)
|
|
#define FIT_MANUFACTURER_ALATECH_TECHNOLOGY_LTD ((FIT_MANUFACTURER)58)
|
|
#define FIT_MANUFACTURER_MIO_TECHNOLOGY_EUROPE ((FIT_MANUFACTURER)59)
|
|
#define FIT_MANUFACTURER_ROTOR ((FIT_MANUFACTURER)60)
|
|
#define FIT_MANUFACTURER_GEONAUTE ((FIT_MANUFACTURER)61)
|
|
#define FIT_MANUFACTURER_ID_BIKE ((FIT_MANUFACTURER)62)
|
|
#define FIT_MANUFACTURER_SPECIALIZED ((FIT_MANUFACTURER)63)
|
|
#define FIT_MANUFACTURER_WTEK ((FIT_MANUFACTURER)64)
|
|
#define FIT_MANUFACTURER_PHYSICAL_ENTERPRISES ((FIT_MANUFACTURER)65)
|
|
#define FIT_MANUFACTURER_NORTH_POLE_ENGINEERING ((FIT_MANUFACTURER)66)
|
|
#define FIT_MANUFACTURER_BKOOL ((FIT_MANUFACTURER)67)
|
|
#define FIT_MANUFACTURER_CATEYE ((FIT_MANUFACTURER)68)
|
|
#define FIT_MANUFACTURER_STAGES_CYCLING ((FIT_MANUFACTURER)69)
|
|
#define FIT_MANUFACTURER_SIGMASPORT ((FIT_MANUFACTURER)70)
|
|
#define FIT_MANUFACTURER_TOMTOM ((FIT_MANUFACTURER)71)
|
|
#define FIT_MANUFACTURER_PERIPEDAL ((FIT_MANUFACTURER)72)
|
|
#define FIT_MANUFACTURER_WATTBIKE ((FIT_MANUFACTURER)73)
|
|
#define FIT_MANUFACTURER_MOXY ((FIT_MANUFACTURER)76)
|
|
#define FIT_MANUFACTURER_CICLOSPORT ((FIT_MANUFACTURER)77)
|
|
#define FIT_MANUFACTURER_POWERBAHN ((FIT_MANUFACTURER)78)
|
|
#define FIT_MANUFACTURER_ACORN_PROJECTS_APS ((FIT_MANUFACTURER)79)
|
|
#define FIT_MANUFACTURER_LIFEBEAM ((FIT_MANUFACTURER)80)
|
|
#define FIT_MANUFACTURER_BONTRAGER ((FIT_MANUFACTURER)81)
|
|
#define FIT_MANUFACTURER_WELLGO ((FIT_MANUFACTURER)82)
|
|
#define FIT_MANUFACTURER_SCOSCHE ((FIT_MANUFACTURER)83)
|
|
#define FIT_MANUFACTURER_MAGURA ((FIT_MANUFACTURER)84)
|
|
#define FIT_MANUFACTURER_WOODWAY ((FIT_MANUFACTURER)85)
|
|
#define FIT_MANUFACTURER_ELITE ((FIT_MANUFACTURER)86)
|
|
#define FIT_MANUFACTURER_NIELSEN_KELLERMAN ((FIT_MANUFACTURER)87)
|
|
#define FIT_MANUFACTURER_DK_CITY ((FIT_MANUFACTURER)88)
|
|
#define FIT_MANUFACTURER_TACX ((FIT_MANUFACTURER)89)
|
|
#define FIT_MANUFACTURER_DIRECTION_TECHNOLOGY ((FIT_MANUFACTURER)90)
|
|
#define FIT_MANUFACTURER_MAGTONIC ((FIT_MANUFACTURER)91)
|
|
#define FIT_MANUFACTURER_1PARTCARBON ((FIT_MANUFACTURER)92)
|
|
#define FIT_MANUFACTURER_INSIDE_RIDE_TECHNOLOGIES ((FIT_MANUFACTURER)93)
|
|
#define FIT_MANUFACTURER_SOUND_OF_MOTION ((FIT_MANUFACTURER)94)
|
|
#define FIT_MANUFACTURER_STRYD ((FIT_MANUFACTURER)95)
|
|
#define FIT_MANUFACTURER_ICG ((FIT_MANUFACTURER)96) // Indoorcycling Group
|
|
#define FIT_MANUFACTURER_MIPULSE ((FIT_MANUFACTURER)97)
|
|
#define FIT_MANUFACTURER_BSX_ATHLETICS ((FIT_MANUFACTURER)98)
|
|
#define FIT_MANUFACTURER_LOOK ((FIT_MANUFACTURER)99)
|
|
#define FIT_MANUFACTURER_CAMPAGNOLO_SRL ((FIT_MANUFACTURER)100)
|
|
#define FIT_MANUFACTURER_BODY_BIKE_SMART ((FIT_MANUFACTURER)101)
|
|
#define FIT_MANUFACTURER_PRAXISWORKS ((FIT_MANUFACTURER)102)
|
|
#define FIT_MANUFACTURER_LIMITS_TECHNOLOGY ((FIT_MANUFACTURER)103) // Limits Technology Ltd.
|
|
#define FIT_MANUFACTURER_TOPACTION_TECHNOLOGY ((FIT_MANUFACTURER)104) // TopAction Technology Inc.
|
|
#define FIT_MANUFACTURER_COSINUSS ((FIT_MANUFACTURER)105)
|
|
#define FIT_MANUFACTURER_FITCARE ((FIT_MANUFACTURER)106)
|
|
#define FIT_MANUFACTURER_MAGENE ((FIT_MANUFACTURER)107)
|
|
#define FIT_MANUFACTURER_GIANT_MANUFACTURING_CO ((FIT_MANUFACTURER)108)
|
|
#define FIT_MANUFACTURER_TIGRASPORT ((FIT_MANUFACTURER)109) // Tigrasport
|
|
#define FIT_MANUFACTURER_SALUTRON ((FIT_MANUFACTURER)110)
|
|
#define FIT_MANUFACTURER_TECHNOGYM ((FIT_MANUFACTURER)111)
|
|
#define FIT_MANUFACTURER_BRYTON_SENSORS ((FIT_MANUFACTURER)112)
|
|
#define FIT_MANUFACTURER_LATITUDE_LIMITED ((FIT_MANUFACTURER)113)
|
|
#define FIT_MANUFACTURER_SOARING_TECHNOLOGY ((FIT_MANUFACTURER)114)
|
|
#define FIT_MANUFACTURER_IGPSPORT ((FIT_MANUFACTURER)115)
|
|
#define FIT_MANUFACTURER_THINKRIDER ((FIT_MANUFACTURER)116)
|
|
#define FIT_MANUFACTURER_GOPHER_SPORT ((FIT_MANUFACTURER)117)
|
|
#define FIT_MANUFACTURER_WATERROWER ((FIT_MANUFACTURER)118)
|
|
#define FIT_MANUFACTURER_ORANGETHEORY ((FIT_MANUFACTURER)119)
|
|
#define FIT_MANUFACTURER_INPEAK ((FIT_MANUFACTURER)120)
|
|
#define FIT_MANUFACTURER_KINETIC ((FIT_MANUFACTURER)121)
|
|
#define FIT_MANUFACTURER_JOHNSON_HEALTH_TECH ((FIT_MANUFACTURER)122)
|
|
#define FIT_MANUFACTURER_POLAR_ELECTRO ((FIT_MANUFACTURER)123)
|
|
#define FIT_MANUFACTURER_SEESENSE ((FIT_MANUFACTURER)124)
|
|
#define FIT_MANUFACTURER_NCI_TECHNOLOGY ((FIT_MANUFACTURER)125)
|
|
#define FIT_MANUFACTURER_IQSQUARE ((FIT_MANUFACTURER)126)
|
|
#define FIT_MANUFACTURER_LEOMO ((FIT_MANUFACTURER)127)
|
|
#define FIT_MANUFACTURER_IFIT_COM ((FIT_MANUFACTURER)128)
|
|
#define FIT_MANUFACTURER_COROS_BYTE ((FIT_MANUFACTURER)129)
|
|
#define FIT_MANUFACTURER_VERSA_DESIGN ((FIT_MANUFACTURER)130)
|
|
#define FIT_MANUFACTURER_CHILEAF ((FIT_MANUFACTURER)131)
|
|
#define FIT_MANUFACTURER_CYCPLUS ((FIT_MANUFACTURER)132)
|
|
#define FIT_MANUFACTURER_GRAVAA_BYTE ((FIT_MANUFACTURER)133)
|
|
#define FIT_MANUFACTURER_SIGEYI ((FIT_MANUFACTURER)134)
|
|
#define FIT_MANUFACTURER_COOSPO ((FIT_MANUFACTURER)135)
|
|
#define FIT_MANUFACTURER_GEOID ((FIT_MANUFACTURER)136)
|
|
#define FIT_MANUFACTURER_BOSCH ((FIT_MANUFACTURER)137)
|
|
#define FIT_MANUFACTURER_KYTO ((FIT_MANUFACTURER)138)
|
|
#define FIT_MANUFACTURER_KINETIC_SPORTS ((FIT_MANUFACTURER)139)
|
|
#define FIT_MANUFACTURER_DECATHLON_BYTE ((FIT_MANUFACTURER)140)
|
|
#define FIT_MANUFACTURER_TQ_SYSTEMS ((FIT_MANUFACTURER)141)
|
|
#define FIT_MANUFACTURER_TAG_HEUER ((FIT_MANUFACTURER)142)
|
|
#define FIT_MANUFACTURER_KEISER_FITNESS ((FIT_MANUFACTURER)143)
|
|
#define FIT_MANUFACTURER_ZWIFT_BYTE ((FIT_MANUFACTURER)144)
|
|
#define FIT_MANUFACTURER_PORSCHE_EP ((FIT_MANUFACTURER)145)
|
|
#define FIT_MANUFACTURER_BLACKBIRD ((FIT_MANUFACTURER)146)
|
|
#define FIT_MANUFACTURER_MEILAN_BYTE ((FIT_MANUFACTURER)147)
|
|
#define FIT_MANUFACTURER_EZON ((FIT_MANUFACTURER)148)
|
|
#define FIT_MANUFACTURER_LAISI ((FIT_MANUFACTURER)149)
|
|
#define FIT_MANUFACTURER_MYZONE ((FIT_MANUFACTURER)150)
|
|
#define FIT_MANUFACTURER_DEVELOPMENT ((FIT_MANUFACTURER)255)
|
|
#define FIT_MANUFACTURER_HEALTHANDLIFE ((FIT_MANUFACTURER)257)
|
|
#define FIT_MANUFACTURER_LEZYNE ((FIT_MANUFACTURER)258)
|
|
#define FIT_MANUFACTURER_SCRIBE_LABS ((FIT_MANUFACTURER)259)
|
|
#define FIT_MANUFACTURER_ZWIFT ((FIT_MANUFACTURER)260)
|
|
#define FIT_MANUFACTURER_WATTEAM ((FIT_MANUFACTURER)261)
|
|
#define FIT_MANUFACTURER_RECON ((FIT_MANUFACTURER)262)
|
|
#define FIT_MANUFACTURER_FAVERO_ELECTRONICS ((FIT_MANUFACTURER)263)
|
|
#define FIT_MANUFACTURER_DYNOVELO ((FIT_MANUFACTURER)264)
|
|
#define FIT_MANUFACTURER_STRAVA ((FIT_MANUFACTURER)265)
|
|
#define FIT_MANUFACTURER_PRECOR ((FIT_MANUFACTURER)266) // Amer Sports
|
|
#define FIT_MANUFACTURER_BRYTON ((FIT_MANUFACTURER)267)
|
|
#define FIT_MANUFACTURER_SRAM ((FIT_MANUFACTURER)268)
|
|
#define FIT_MANUFACTURER_NAVMAN ((FIT_MANUFACTURER)269) // MiTAC Global Corporation (Mio Technology)
|
|
#define FIT_MANUFACTURER_COBI ((FIT_MANUFACTURER)270) // COBI GmbH
|
|
#define FIT_MANUFACTURER_SPIVI ((FIT_MANUFACTURER)271)
|
|
#define FIT_MANUFACTURER_MIO_MAGELLAN ((FIT_MANUFACTURER)272)
|
|
#define FIT_MANUFACTURER_EVESPORTS ((FIT_MANUFACTURER)273)
|
|
#define FIT_MANUFACTURER_SENSITIVUS_GAUGE ((FIT_MANUFACTURER)274)
|
|
#define FIT_MANUFACTURER_PODOON ((FIT_MANUFACTURER)275)
|
|
#define FIT_MANUFACTURER_LIFE_TIME_FITNESS ((FIT_MANUFACTURER)276)
|
|
#define FIT_MANUFACTURER_FALCO_E_MOTORS ((FIT_MANUFACTURER)277) // Falco eMotors Inc.
|
|
#define FIT_MANUFACTURER_MINOURA ((FIT_MANUFACTURER)278)
|
|
#define FIT_MANUFACTURER_CYCLIQ ((FIT_MANUFACTURER)279)
|
|
#define FIT_MANUFACTURER_LUXOTTICA ((FIT_MANUFACTURER)280)
|
|
#define FIT_MANUFACTURER_TRAINER_ROAD ((FIT_MANUFACTURER)281)
|
|
#define FIT_MANUFACTURER_THE_SUFFERFEST ((FIT_MANUFACTURER)282)
|
|
#define FIT_MANUFACTURER_FULLSPEEDAHEAD ((FIT_MANUFACTURER)283)
|
|
#define FIT_MANUFACTURER_VIRTUALTRAINING ((FIT_MANUFACTURER)284)
|
|
#define FIT_MANUFACTURER_FEEDBACKSPORTS ((FIT_MANUFACTURER)285)
|
|
#define FIT_MANUFACTURER_OMATA ((FIT_MANUFACTURER)286)
|
|
#define FIT_MANUFACTURER_VDO ((FIT_MANUFACTURER)287)
|
|
#define FIT_MANUFACTURER_MAGNETICDAYS ((FIT_MANUFACTURER)288)
|
|
#define FIT_MANUFACTURER_HAMMERHEAD ((FIT_MANUFACTURER)289)
|
|
#define FIT_MANUFACTURER_KINETIC_BY_KURT ((FIT_MANUFACTURER)290)
|
|
#define FIT_MANUFACTURER_SHAPELOG ((FIT_MANUFACTURER)291)
|
|
#define FIT_MANUFACTURER_DABUZIDUO ((FIT_MANUFACTURER)292)
|
|
#define FIT_MANUFACTURER_JETBLACK ((FIT_MANUFACTURER)293)
|
|
#define FIT_MANUFACTURER_COROS ((FIT_MANUFACTURER)294)
|
|
#define FIT_MANUFACTURER_VIRTUGO ((FIT_MANUFACTURER)295)
|
|
#define FIT_MANUFACTURER_VELOSENSE ((FIT_MANUFACTURER)296)
|
|
#define FIT_MANUFACTURER_CYCLIGENTINC ((FIT_MANUFACTURER)297)
|
|
#define FIT_MANUFACTURER_TRAILFORKS ((FIT_MANUFACTURER)298)
|
|
#define FIT_MANUFACTURER_MAHLE_EBIKEMOTION ((FIT_MANUFACTURER)299)
|
|
#define FIT_MANUFACTURER_NURVV ((FIT_MANUFACTURER)300)
|
|
#define FIT_MANUFACTURER_MICROPROGRAM ((FIT_MANUFACTURER)301)
|
|
#define FIT_MANUFACTURER_ZONE5CLOUD ((FIT_MANUFACTURER)302)
|
|
#define FIT_MANUFACTURER_GREENTEG ((FIT_MANUFACTURER)303)
|
|
#define FIT_MANUFACTURER_YAMAHA_MOTORS ((FIT_MANUFACTURER)304)
|
|
#define FIT_MANUFACTURER_WHOOP ((FIT_MANUFACTURER)305)
|
|
#define FIT_MANUFACTURER_GRAVAA ((FIT_MANUFACTURER)306)
|
|
#define FIT_MANUFACTURER_ONELAP ((FIT_MANUFACTURER)307)
|
|
#define FIT_MANUFACTURER_MONARK_EXERCISE ((FIT_MANUFACTURER)308)
|
|
#define FIT_MANUFACTURER_FORM ((FIT_MANUFACTURER)309)
|
|
#define FIT_MANUFACTURER_DECATHLON ((FIT_MANUFACTURER)310)
|
|
#define FIT_MANUFACTURER_SYNCROS ((FIT_MANUFACTURER)311)
|
|
#define FIT_MANUFACTURER_HEATUP ((FIT_MANUFACTURER)312)
|
|
#define FIT_MANUFACTURER_CANNONDALE ((FIT_MANUFACTURER)313)
|
|
#define FIT_MANUFACTURER_TRUE_FITNESS ((FIT_MANUFACTURER)314)
|
|
#define FIT_MANUFACTURER_RGT_CYCLING ((FIT_MANUFACTURER)315)
|
|
#define FIT_MANUFACTURER_VASA ((FIT_MANUFACTURER)316)
|
|
#define FIT_MANUFACTURER_RACE_REPUBLIC ((FIT_MANUFACTURER)317)
|
|
#define FIT_MANUFACTURER_FAZUA ((FIT_MANUFACTURER)318)
|
|
#define FIT_MANUFACTURER_OREKA_TRAINING ((FIT_MANUFACTURER)319)
|
|
#define FIT_MANUFACTURER_LSEC ((FIT_MANUFACTURER)320) // Lishun Electric & Communication
|
|
#define FIT_MANUFACTURER_LULULEMON_STUDIO ((FIT_MANUFACTURER)321)
|
|
#define FIT_MANUFACTURER_SHANYUE ((FIT_MANUFACTURER)322)
|
|
#define FIT_MANUFACTURER_SPINNING_MDA ((FIT_MANUFACTURER)323)
|
|
#define FIT_MANUFACTURER_HILLDATING ((FIT_MANUFACTURER)324)
|
|
#define FIT_MANUFACTURER_AERO_SENSOR ((FIT_MANUFACTURER)325)
|
|
#define FIT_MANUFACTURER_NIKE ((FIT_MANUFACTURER)326)
|
|
#define FIT_MANUFACTURER_MAGICSHINE ((FIT_MANUFACTURER)327)
|
|
#define FIT_MANUFACTURER_ICTRAINER ((FIT_MANUFACTURER)328)
|
|
#define FIT_MANUFACTURER_ACTIGRAPHCORP ((FIT_MANUFACTURER)5759)
|
|
#define FIT_MANUFACTURER_COUNT 222
|
|
|
|
typedef FIT_UINT16 FIT_GARMIN_PRODUCT;
|
|
#define FIT_GARMIN_PRODUCT_INVALID FIT_UINT16_INVALID
|
|
#define FIT_GARMIN_PRODUCT_HRM1 ((FIT_GARMIN_PRODUCT)1)
|
|
#define FIT_GARMIN_PRODUCT_AXH01 ((FIT_GARMIN_PRODUCT)2) // AXH01 HRM chipset
|
|
#define FIT_GARMIN_PRODUCT_AXB01 ((FIT_GARMIN_PRODUCT)3)
|
|
#define FIT_GARMIN_PRODUCT_AXB02 ((FIT_GARMIN_PRODUCT)4)
|
|
#define FIT_GARMIN_PRODUCT_HRM2SS ((FIT_GARMIN_PRODUCT)5)
|
|
#define FIT_GARMIN_PRODUCT_DSI_ALF02 ((FIT_GARMIN_PRODUCT)6)
|
|
#define FIT_GARMIN_PRODUCT_HRM3SS ((FIT_GARMIN_PRODUCT)7)
|
|
#define FIT_GARMIN_PRODUCT_HRM_RUN_SINGLE_BYTE_PRODUCT_ID ((FIT_GARMIN_PRODUCT)8) // hrm_run model for HRM ANT+ messaging
|
|
#define FIT_GARMIN_PRODUCT_BSM ((FIT_GARMIN_PRODUCT)9) // BSM model for ANT+ messaging
|
|
#define FIT_GARMIN_PRODUCT_BCM ((FIT_GARMIN_PRODUCT)10) // BCM model for ANT+ messaging
|
|
#define FIT_GARMIN_PRODUCT_AXS01 ((FIT_GARMIN_PRODUCT)11) // AXS01 HRM Bike Chipset model for ANT+ messaging
|
|
#define FIT_GARMIN_PRODUCT_HRM_TRI_SINGLE_BYTE_PRODUCT_ID ((FIT_GARMIN_PRODUCT)12) // hrm_tri model for HRM ANT+ messaging
|
|
#define FIT_GARMIN_PRODUCT_HRM4_RUN_SINGLE_BYTE_PRODUCT_ID ((FIT_GARMIN_PRODUCT)13) // hrm4 run model for HRM ANT+ messaging
|
|
#define FIT_GARMIN_PRODUCT_FR225_SINGLE_BYTE_PRODUCT_ID ((FIT_GARMIN_PRODUCT)14) // fr225 model for HRM ANT+ messaging
|
|
#define FIT_GARMIN_PRODUCT_GEN3_BSM_SINGLE_BYTE_PRODUCT_ID ((FIT_GARMIN_PRODUCT)15) // gen3_bsm model for Bike Speed ANT+ messaging
|
|
#define FIT_GARMIN_PRODUCT_GEN3_BCM_SINGLE_BYTE_PRODUCT_ID ((FIT_GARMIN_PRODUCT)16) // gen3_bcm model for Bike Cadence ANT+ messaging
|
|
#define FIT_GARMIN_PRODUCT_HRM_FIT_SINGLE_BYTE_PRODUCT_ID ((FIT_GARMIN_PRODUCT)22)
|
|
#define FIT_GARMIN_PRODUCT_OHR ((FIT_GARMIN_PRODUCT)255) // Garmin Wearable Optical Heart Rate Sensor for ANT+ HR Profile Broadcasting
|
|
#define FIT_GARMIN_PRODUCT_FR301_CHINA ((FIT_GARMIN_PRODUCT)473)
|
|
#define FIT_GARMIN_PRODUCT_FR301_JAPAN ((FIT_GARMIN_PRODUCT)474)
|
|
#define FIT_GARMIN_PRODUCT_FR301_KOREA ((FIT_GARMIN_PRODUCT)475)
|
|
#define FIT_GARMIN_PRODUCT_FR301_TAIWAN ((FIT_GARMIN_PRODUCT)494)
|
|
#define FIT_GARMIN_PRODUCT_FR405 ((FIT_GARMIN_PRODUCT)717) // Forerunner 405
|
|
#define FIT_GARMIN_PRODUCT_FR50 ((FIT_GARMIN_PRODUCT)782) // Forerunner 50
|
|
#define FIT_GARMIN_PRODUCT_FR405_JAPAN ((FIT_GARMIN_PRODUCT)987)
|
|
#define FIT_GARMIN_PRODUCT_FR60 ((FIT_GARMIN_PRODUCT)988) // Forerunner 60
|
|
#define FIT_GARMIN_PRODUCT_DSI_ALF01 ((FIT_GARMIN_PRODUCT)1011)
|
|
#define FIT_GARMIN_PRODUCT_FR310XT ((FIT_GARMIN_PRODUCT)1018) // Forerunner 310
|
|
#define FIT_GARMIN_PRODUCT_EDGE500 ((FIT_GARMIN_PRODUCT)1036)
|
|
#define FIT_GARMIN_PRODUCT_FR110 ((FIT_GARMIN_PRODUCT)1124) // Forerunner 110
|
|
#define FIT_GARMIN_PRODUCT_EDGE800 ((FIT_GARMIN_PRODUCT)1169)
|
|
#define FIT_GARMIN_PRODUCT_EDGE500_TAIWAN ((FIT_GARMIN_PRODUCT)1199)
|
|
#define FIT_GARMIN_PRODUCT_EDGE500_JAPAN ((FIT_GARMIN_PRODUCT)1213)
|
|
#define FIT_GARMIN_PRODUCT_CHIRP ((FIT_GARMIN_PRODUCT)1253)
|
|
#define FIT_GARMIN_PRODUCT_FR110_JAPAN ((FIT_GARMIN_PRODUCT)1274)
|
|
#define FIT_GARMIN_PRODUCT_EDGE200 ((FIT_GARMIN_PRODUCT)1325)
|
|
#define FIT_GARMIN_PRODUCT_FR910XT ((FIT_GARMIN_PRODUCT)1328)
|
|
#define FIT_GARMIN_PRODUCT_EDGE800_TAIWAN ((FIT_GARMIN_PRODUCT)1333)
|
|
#define FIT_GARMIN_PRODUCT_EDGE800_JAPAN ((FIT_GARMIN_PRODUCT)1334)
|
|
#define FIT_GARMIN_PRODUCT_ALF04 ((FIT_GARMIN_PRODUCT)1341)
|
|
#define FIT_GARMIN_PRODUCT_FR610 ((FIT_GARMIN_PRODUCT)1345)
|
|
#define FIT_GARMIN_PRODUCT_FR210_JAPAN ((FIT_GARMIN_PRODUCT)1360)
|
|
#define FIT_GARMIN_PRODUCT_VECTOR_SS ((FIT_GARMIN_PRODUCT)1380)
|
|
#define FIT_GARMIN_PRODUCT_VECTOR_CP ((FIT_GARMIN_PRODUCT)1381)
|
|
#define FIT_GARMIN_PRODUCT_EDGE800_CHINA ((FIT_GARMIN_PRODUCT)1386)
|
|
#define FIT_GARMIN_PRODUCT_EDGE500_CHINA ((FIT_GARMIN_PRODUCT)1387)
|
|
#define FIT_GARMIN_PRODUCT_APPROACH_G10 ((FIT_GARMIN_PRODUCT)1405)
|
|
#define FIT_GARMIN_PRODUCT_FR610_JAPAN ((FIT_GARMIN_PRODUCT)1410)
|
|
#define FIT_GARMIN_PRODUCT_EDGE500_KOREA ((FIT_GARMIN_PRODUCT)1422)
|
|
#define FIT_GARMIN_PRODUCT_FR70 ((FIT_GARMIN_PRODUCT)1436)
|
|
#define FIT_GARMIN_PRODUCT_FR310XT_4T ((FIT_GARMIN_PRODUCT)1446)
|
|
#define FIT_GARMIN_PRODUCT_AMX ((FIT_GARMIN_PRODUCT)1461)
|
|
#define FIT_GARMIN_PRODUCT_FR10 ((FIT_GARMIN_PRODUCT)1482)
|
|
#define FIT_GARMIN_PRODUCT_EDGE800_KOREA ((FIT_GARMIN_PRODUCT)1497)
|
|
#define FIT_GARMIN_PRODUCT_SWIM ((FIT_GARMIN_PRODUCT)1499)
|
|
#define FIT_GARMIN_PRODUCT_FR910XT_CHINA ((FIT_GARMIN_PRODUCT)1537)
|
|
#define FIT_GARMIN_PRODUCT_FENIX ((FIT_GARMIN_PRODUCT)1551)
|
|
#define FIT_GARMIN_PRODUCT_EDGE200_TAIWAN ((FIT_GARMIN_PRODUCT)1555)
|
|
#define FIT_GARMIN_PRODUCT_EDGE510 ((FIT_GARMIN_PRODUCT)1561)
|
|
#define FIT_GARMIN_PRODUCT_EDGE810 ((FIT_GARMIN_PRODUCT)1567)
|
|
#define FIT_GARMIN_PRODUCT_TEMPE ((FIT_GARMIN_PRODUCT)1570)
|
|
#define FIT_GARMIN_PRODUCT_FR910XT_JAPAN ((FIT_GARMIN_PRODUCT)1600)
|
|
#define FIT_GARMIN_PRODUCT_FR620 ((FIT_GARMIN_PRODUCT)1623)
|
|
#define FIT_GARMIN_PRODUCT_FR220 ((FIT_GARMIN_PRODUCT)1632)
|
|
#define FIT_GARMIN_PRODUCT_FR910XT_KOREA ((FIT_GARMIN_PRODUCT)1664)
|
|
#define FIT_GARMIN_PRODUCT_FR10_JAPAN ((FIT_GARMIN_PRODUCT)1688)
|
|
#define FIT_GARMIN_PRODUCT_EDGE810_JAPAN ((FIT_GARMIN_PRODUCT)1721)
|
|
#define FIT_GARMIN_PRODUCT_VIRB_ELITE ((FIT_GARMIN_PRODUCT)1735)
|
|
#define FIT_GARMIN_PRODUCT_EDGE_TOURING ((FIT_GARMIN_PRODUCT)1736) // Also Edge Touring Plus
|
|
#define FIT_GARMIN_PRODUCT_EDGE510_JAPAN ((FIT_GARMIN_PRODUCT)1742)
|
|
#define FIT_GARMIN_PRODUCT_HRM_TRI ((FIT_GARMIN_PRODUCT)1743) // Also HRM-Swim
|
|
#define FIT_GARMIN_PRODUCT_HRM_RUN ((FIT_GARMIN_PRODUCT)1752)
|
|
#define FIT_GARMIN_PRODUCT_FR920XT ((FIT_GARMIN_PRODUCT)1765)
|
|
#define FIT_GARMIN_PRODUCT_EDGE510_ASIA ((FIT_GARMIN_PRODUCT)1821)
|
|
#define FIT_GARMIN_PRODUCT_EDGE810_CHINA ((FIT_GARMIN_PRODUCT)1822)
|
|
#define FIT_GARMIN_PRODUCT_EDGE810_TAIWAN ((FIT_GARMIN_PRODUCT)1823)
|
|
#define FIT_GARMIN_PRODUCT_EDGE1000 ((FIT_GARMIN_PRODUCT)1836)
|
|
#define FIT_GARMIN_PRODUCT_VIVO_FIT ((FIT_GARMIN_PRODUCT)1837)
|
|
#define FIT_GARMIN_PRODUCT_VIRB_REMOTE ((FIT_GARMIN_PRODUCT)1853)
|
|
#define FIT_GARMIN_PRODUCT_VIVO_KI ((FIT_GARMIN_PRODUCT)1885)
|
|
#define FIT_GARMIN_PRODUCT_FR15 ((FIT_GARMIN_PRODUCT)1903)
|
|
#define FIT_GARMIN_PRODUCT_VIVO_ACTIVE ((FIT_GARMIN_PRODUCT)1907)
|
|
#define FIT_GARMIN_PRODUCT_EDGE510_KOREA ((FIT_GARMIN_PRODUCT)1918)
|
|
#define FIT_GARMIN_PRODUCT_FR620_JAPAN ((FIT_GARMIN_PRODUCT)1928)
|
|
#define FIT_GARMIN_PRODUCT_FR620_CHINA ((FIT_GARMIN_PRODUCT)1929)
|
|
#define FIT_GARMIN_PRODUCT_FR220_JAPAN ((FIT_GARMIN_PRODUCT)1930)
|
|
#define FIT_GARMIN_PRODUCT_FR220_CHINA ((FIT_GARMIN_PRODUCT)1931)
|
|
#define FIT_GARMIN_PRODUCT_APPROACH_S6 ((FIT_GARMIN_PRODUCT)1936)
|
|
#define FIT_GARMIN_PRODUCT_VIVO_SMART ((FIT_GARMIN_PRODUCT)1956)
|
|
#define FIT_GARMIN_PRODUCT_FENIX2 ((FIT_GARMIN_PRODUCT)1967)
|
|
#define FIT_GARMIN_PRODUCT_EPIX ((FIT_GARMIN_PRODUCT)1988)
|
|
#define FIT_GARMIN_PRODUCT_FENIX3 ((FIT_GARMIN_PRODUCT)2050)
|
|
#define FIT_GARMIN_PRODUCT_EDGE1000_TAIWAN ((FIT_GARMIN_PRODUCT)2052)
|
|
#define FIT_GARMIN_PRODUCT_EDGE1000_JAPAN ((FIT_GARMIN_PRODUCT)2053)
|
|
#define FIT_GARMIN_PRODUCT_FR15_JAPAN ((FIT_GARMIN_PRODUCT)2061)
|
|
#define FIT_GARMIN_PRODUCT_EDGE520 ((FIT_GARMIN_PRODUCT)2067)
|
|
#define FIT_GARMIN_PRODUCT_EDGE1000_CHINA ((FIT_GARMIN_PRODUCT)2070)
|
|
#define FIT_GARMIN_PRODUCT_FR620_RUSSIA ((FIT_GARMIN_PRODUCT)2072)
|
|
#define FIT_GARMIN_PRODUCT_FR220_RUSSIA ((FIT_GARMIN_PRODUCT)2073)
|
|
#define FIT_GARMIN_PRODUCT_VECTOR_S ((FIT_GARMIN_PRODUCT)2079)
|
|
#define FIT_GARMIN_PRODUCT_EDGE1000_KOREA ((FIT_GARMIN_PRODUCT)2100)
|
|
#define FIT_GARMIN_PRODUCT_FR920XT_TAIWAN ((FIT_GARMIN_PRODUCT)2130)
|
|
#define FIT_GARMIN_PRODUCT_FR920XT_CHINA ((FIT_GARMIN_PRODUCT)2131)
|
|
#define FIT_GARMIN_PRODUCT_FR920XT_JAPAN ((FIT_GARMIN_PRODUCT)2132)
|
|
#define FIT_GARMIN_PRODUCT_VIRBX ((FIT_GARMIN_PRODUCT)2134)
|
|
#define FIT_GARMIN_PRODUCT_VIVO_SMART_APAC ((FIT_GARMIN_PRODUCT)2135)
|
|
#define FIT_GARMIN_PRODUCT_ETREX_TOUCH ((FIT_GARMIN_PRODUCT)2140)
|
|
#define FIT_GARMIN_PRODUCT_EDGE25 ((FIT_GARMIN_PRODUCT)2147)
|
|
#define FIT_GARMIN_PRODUCT_FR25 ((FIT_GARMIN_PRODUCT)2148)
|
|
#define FIT_GARMIN_PRODUCT_VIVO_FIT2 ((FIT_GARMIN_PRODUCT)2150)
|
|
#define FIT_GARMIN_PRODUCT_FR225 ((FIT_GARMIN_PRODUCT)2153)
|
|
#define FIT_GARMIN_PRODUCT_FR630 ((FIT_GARMIN_PRODUCT)2156)
|
|
#define FIT_GARMIN_PRODUCT_FR230 ((FIT_GARMIN_PRODUCT)2157)
|
|
#define FIT_GARMIN_PRODUCT_FR735XT ((FIT_GARMIN_PRODUCT)2158)
|
|
#define FIT_GARMIN_PRODUCT_VIVO_ACTIVE_APAC ((FIT_GARMIN_PRODUCT)2160)
|
|
#define FIT_GARMIN_PRODUCT_VECTOR_2 ((FIT_GARMIN_PRODUCT)2161)
|
|
#define FIT_GARMIN_PRODUCT_VECTOR_2S ((FIT_GARMIN_PRODUCT)2162)
|
|
#define FIT_GARMIN_PRODUCT_VIRBXE ((FIT_GARMIN_PRODUCT)2172)
|
|
#define FIT_GARMIN_PRODUCT_FR620_TAIWAN ((FIT_GARMIN_PRODUCT)2173)
|
|
#define FIT_GARMIN_PRODUCT_FR220_TAIWAN ((FIT_GARMIN_PRODUCT)2174)
|
|
#define FIT_GARMIN_PRODUCT_TRUSWING ((FIT_GARMIN_PRODUCT)2175)
|
|
#define FIT_GARMIN_PRODUCT_D2AIRVENU ((FIT_GARMIN_PRODUCT)2187)
|
|
#define FIT_GARMIN_PRODUCT_FENIX3_CHINA ((FIT_GARMIN_PRODUCT)2188)
|
|
#define FIT_GARMIN_PRODUCT_FENIX3_TWN ((FIT_GARMIN_PRODUCT)2189)
|
|
#define FIT_GARMIN_PRODUCT_VARIA_HEADLIGHT ((FIT_GARMIN_PRODUCT)2192)
|
|
#define FIT_GARMIN_PRODUCT_VARIA_TAILLIGHT_OLD ((FIT_GARMIN_PRODUCT)2193)
|
|
#define FIT_GARMIN_PRODUCT_EDGE_EXPLORE_1000 ((FIT_GARMIN_PRODUCT)2204)
|
|
#define FIT_GARMIN_PRODUCT_FR225_ASIA ((FIT_GARMIN_PRODUCT)2219)
|
|
#define FIT_GARMIN_PRODUCT_VARIA_RADAR_TAILLIGHT ((FIT_GARMIN_PRODUCT)2225)
|
|
#define FIT_GARMIN_PRODUCT_VARIA_RADAR_DISPLAY ((FIT_GARMIN_PRODUCT)2226)
|
|
#define FIT_GARMIN_PRODUCT_EDGE20 ((FIT_GARMIN_PRODUCT)2238)
|
|
#define FIT_GARMIN_PRODUCT_EDGE520_ASIA ((FIT_GARMIN_PRODUCT)2260)
|
|
#define FIT_GARMIN_PRODUCT_EDGE520_JAPAN ((FIT_GARMIN_PRODUCT)2261)
|
|
#define FIT_GARMIN_PRODUCT_D2_BRAVO ((FIT_GARMIN_PRODUCT)2262)
|
|
#define FIT_GARMIN_PRODUCT_APPROACH_S20 ((FIT_GARMIN_PRODUCT)2266)
|
|
#define FIT_GARMIN_PRODUCT_VIVO_SMART2 ((FIT_GARMIN_PRODUCT)2271)
|
|
#define FIT_GARMIN_PRODUCT_EDGE1000_THAI ((FIT_GARMIN_PRODUCT)2274)
|
|
#define FIT_GARMIN_PRODUCT_VARIA_REMOTE ((FIT_GARMIN_PRODUCT)2276)
|
|
#define FIT_GARMIN_PRODUCT_EDGE25_ASIA ((FIT_GARMIN_PRODUCT)2288)
|
|
#define FIT_GARMIN_PRODUCT_EDGE25_JPN ((FIT_GARMIN_PRODUCT)2289)
|
|
#define FIT_GARMIN_PRODUCT_EDGE20_ASIA ((FIT_GARMIN_PRODUCT)2290)
|
|
#define FIT_GARMIN_PRODUCT_APPROACH_X40 ((FIT_GARMIN_PRODUCT)2292)
|
|
#define FIT_GARMIN_PRODUCT_FENIX3_JAPAN ((FIT_GARMIN_PRODUCT)2293)
|
|
#define FIT_GARMIN_PRODUCT_VIVO_SMART_EMEA ((FIT_GARMIN_PRODUCT)2294)
|
|
#define FIT_GARMIN_PRODUCT_FR630_ASIA ((FIT_GARMIN_PRODUCT)2310)
|
|
#define FIT_GARMIN_PRODUCT_FR630_JPN ((FIT_GARMIN_PRODUCT)2311)
|
|
#define FIT_GARMIN_PRODUCT_FR230_JPN ((FIT_GARMIN_PRODUCT)2313)
|
|
#define FIT_GARMIN_PRODUCT_HRM4_RUN ((FIT_GARMIN_PRODUCT)2327)
|
|
#define FIT_GARMIN_PRODUCT_EPIX_JAPAN ((FIT_GARMIN_PRODUCT)2332)
|
|
#define FIT_GARMIN_PRODUCT_VIVO_ACTIVE_HR ((FIT_GARMIN_PRODUCT)2337)
|
|
#define FIT_GARMIN_PRODUCT_VIVO_SMART_GPS_HR ((FIT_GARMIN_PRODUCT)2347)
|
|
#define FIT_GARMIN_PRODUCT_VIVO_SMART_HR ((FIT_GARMIN_PRODUCT)2348)
|
|
#define FIT_GARMIN_PRODUCT_VIVO_SMART_HR_ASIA ((FIT_GARMIN_PRODUCT)2361)
|
|
#define FIT_GARMIN_PRODUCT_VIVO_SMART_GPS_HR_ASIA ((FIT_GARMIN_PRODUCT)2362)
|
|
#define FIT_GARMIN_PRODUCT_VIVO_MOVE ((FIT_GARMIN_PRODUCT)2368)
|
|
#define FIT_GARMIN_PRODUCT_VARIA_TAILLIGHT ((FIT_GARMIN_PRODUCT)2379)
|
|
#define FIT_GARMIN_PRODUCT_FR235_ASIA ((FIT_GARMIN_PRODUCT)2396)
|
|
#define FIT_GARMIN_PRODUCT_FR235_JAPAN ((FIT_GARMIN_PRODUCT)2397)
|
|
#define FIT_GARMIN_PRODUCT_VARIA_VISION ((FIT_GARMIN_PRODUCT)2398)
|
|
#define FIT_GARMIN_PRODUCT_VIVO_FIT3 ((FIT_GARMIN_PRODUCT)2406)
|
|
#define FIT_GARMIN_PRODUCT_FENIX3_KOREA ((FIT_GARMIN_PRODUCT)2407)
|
|
#define FIT_GARMIN_PRODUCT_FENIX3_SEA ((FIT_GARMIN_PRODUCT)2408)
|
|
#define FIT_GARMIN_PRODUCT_FENIX3_HR ((FIT_GARMIN_PRODUCT)2413)
|
|
#define FIT_GARMIN_PRODUCT_VIRB_ULTRA_30 ((FIT_GARMIN_PRODUCT)2417)
|
|
#define FIT_GARMIN_PRODUCT_INDEX_SMART_SCALE ((FIT_GARMIN_PRODUCT)2429)
|
|
#define FIT_GARMIN_PRODUCT_FR235 ((FIT_GARMIN_PRODUCT)2431)
|
|
#define FIT_GARMIN_PRODUCT_FENIX3_CHRONOS ((FIT_GARMIN_PRODUCT)2432)
|
|
#define FIT_GARMIN_PRODUCT_OREGON7XX ((FIT_GARMIN_PRODUCT)2441)
|
|
#define FIT_GARMIN_PRODUCT_RINO7XX ((FIT_GARMIN_PRODUCT)2444)
|
|
#define FIT_GARMIN_PRODUCT_EPIX_KOREA ((FIT_GARMIN_PRODUCT)2457)
|
|
#define FIT_GARMIN_PRODUCT_FENIX3_HR_CHN ((FIT_GARMIN_PRODUCT)2473)
|
|
#define FIT_GARMIN_PRODUCT_FENIX3_HR_TWN ((FIT_GARMIN_PRODUCT)2474)
|
|
#define FIT_GARMIN_PRODUCT_FENIX3_HR_JPN ((FIT_GARMIN_PRODUCT)2475)
|
|
#define FIT_GARMIN_PRODUCT_FENIX3_HR_SEA ((FIT_GARMIN_PRODUCT)2476)
|
|
#define FIT_GARMIN_PRODUCT_FENIX3_HR_KOR ((FIT_GARMIN_PRODUCT)2477)
|
|
#define FIT_GARMIN_PRODUCT_NAUTIX ((FIT_GARMIN_PRODUCT)2496)
|
|
#define FIT_GARMIN_PRODUCT_VIVO_ACTIVE_HR_APAC ((FIT_GARMIN_PRODUCT)2497)
|
|
#define FIT_GARMIN_PRODUCT_FR35 ((FIT_GARMIN_PRODUCT)2503)
|
|
#define FIT_GARMIN_PRODUCT_OREGON7XX_WW ((FIT_GARMIN_PRODUCT)2512)
|
|
#define FIT_GARMIN_PRODUCT_EDGE_820 ((FIT_GARMIN_PRODUCT)2530)
|
|
#define FIT_GARMIN_PRODUCT_EDGE_EXPLORE_820 ((FIT_GARMIN_PRODUCT)2531)
|
|
#define FIT_GARMIN_PRODUCT_FR735XT_APAC ((FIT_GARMIN_PRODUCT)2533)
|
|
#define FIT_GARMIN_PRODUCT_FR735XT_JAPAN ((FIT_GARMIN_PRODUCT)2534)
|
|
#define FIT_GARMIN_PRODUCT_FENIX5S ((FIT_GARMIN_PRODUCT)2544)
|
|
#define FIT_GARMIN_PRODUCT_D2_BRAVO_TITANIUM ((FIT_GARMIN_PRODUCT)2547)
|
|
#define FIT_GARMIN_PRODUCT_VARIA_UT800 ((FIT_GARMIN_PRODUCT)2567) // Varia UT 800 SW
|
|
#define FIT_GARMIN_PRODUCT_RUNNING_DYNAMICS_POD ((FIT_GARMIN_PRODUCT)2593)
|
|
#define FIT_GARMIN_PRODUCT_EDGE_820_CHINA ((FIT_GARMIN_PRODUCT)2599)
|
|
#define FIT_GARMIN_PRODUCT_EDGE_820_JAPAN ((FIT_GARMIN_PRODUCT)2600)
|
|
#define FIT_GARMIN_PRODUCT_FENIX5X ((FIT_GARMIN_PRODUCT)2604)
|
|
#define FIT_GARMIN_PRODUCT_VIVO_FIT_JR ((FIT_GARMIN_PRODUCT)2606)
|
|
#define FIT_GARMIN_PRODUCT_VIVO_SMART3 ((FIT_GARMIN_PRODUCT)2622)
|
|
#define FIT_GARMIN_PRODUCT_VIVO_SPORT ((FIT_GARMIN_PRODUCT)2623)
|
|
#define FIT_GARMIN_PRODUCT_EDGE_820_TAIWAN ((FIT_GARMIN_PRODUCT)2628)
|
|
#define FIT_GARMIN_PRODUCT_EDGE_820_KOREA ((FIT_GARMIN_PRODUCT)2629)
|
|
#define FIT_GARMIN_PRODUCT_EDGE_820_SEA ((FIT_GARMIN_PRODUCT)2630)
|
|
#define FIT_GARMIN_PRODUCT_FR35_HEBREW ((FIT_GARMIN_PRODUCT)2650)
|
|
#define FIT_GARMIN_PRODUCT_APPROACH_S60 ((FIT_GARMIN_PRODUCT)2656)
|
|
#define FIT_GARMIN_PRODUCT_FR35_APAC ((FIT_GARMIN_PRODUCT)2667)
|
|
#define FIT_GARMIN_PRODUCT_FR35_JAPAN ((FIT_GARMIN_PRODUCT)2668)
|
|
#define FIT_GARMIN_PRODUCT_FENIX3_CHRONOS_ASIA ((FIT_GARMIN_PRODUCT)2675)
|
|
#define FIT_GARMIN_PRODUCT_VIRB_360 ((FIT_GARMIN_PRODUCT)2687)
|
|
#define FIT_GARMIN_PRODUCT_FR935 ((FIT_GARMIN_PRODUCT)2691)
|
|
#define FIT_GARMIN_PRODUCT_FENIX5 ((FIT_GARMIN_PRODUCT)2697)
|
|
#define FIT_GARMIN_PRODUCT_VIVOACTIVE3 ((FIT_GARMIN_PRODUCT)2700)
|
|
#define FIT_GARMIN_PRODUCT_FR235_CHINA_NFC ((FIT_GARMIN_PRODUCT)2733)
|
|
#define FIT_GARMIN_PRODUCT_FORETREX_601_701 ((FIT_GARMIN_PRODUCT)2769)
|
|
#define FIT_GARMIN_PRODUCT_VIVO_MOVE_HR ((FIT_GARMIN_PRODUCT)2772)
|
|
#define FIT_GARMIN_PRODUCT_EDGE_1030 ((FIT_GARMIN_PRODUCT)2713)
|
|
#define FIT_GARMIN_PRODUCT_FR35_SEA ((FIT_GARMIN_PRODUCT)2727)
|
|
#define FIT_GARMIN_PRODUCT_VECTOR_3 ((FIT_GARMIN_PRODUCT)2787)
|
|
#define FIT_GARMIN_PRODUCT_FENIX5_ASIA ((FIT_GARMIN_PRODUCT)2796)
|
|
#define FIT_GARMIN_PRODUCT_FENIX5S_ASIA ((FIT_GARMIN_PRODUCT)2797)
|
|
#define FIT_GARMIN_PRODUCT_FENIX5X_ASIA ((FIT_GARMIN_PRODUCT)2798)
|
|
#define FIT_GARMIN_PRODUCT_APPROACH_Z80 ((FIT_GARMIN_PRODUCT)2806)
|
|
#define FIT_GARMIN_PRODUCT_FR35_KOREA ((FIT_GARMIN_PRODUCT)2814)
|
|
#define FIT_GARMIN_PRODUCT_D2CHARLIE ((FIT_GARMIN_PRODUCT)2819)
|
|
#define FIT_GARMIN_PRODUCT_VIVO_SMART3_APAC ((FIT_GARMIN_PRODUCT)2831)
|
|
#define FIT_GARMIN_PRODUCT_VIVO_SPORT_APAC ((FIT_GARMIN_PRODUCT)2832)
|
|
#define FIT_GARMIN_PRODUCT_FR935_ASIA ((FIT_GARMIN_PRODUCT)2833)
|
|
#define FIT_GARMIN_PRODUCT_DESCENT ((FIT_GARMIN_PRODUCT)2859)
|
|
#define FIT_GARMIN_PRODUCT_VIVO_FIT4 ((FIT_GARMIN_PRODUCT)2878)
|
|
#define FIT_GARMIN_PRODUCT_FR645 ((FIT_GARMIN_PRODUCT)2886)
|
|
#define FIT_GARMIN_PRODUCT_FR645M ((FIT_GARMIN_PRODUCT)2888)
|
|
#define FIT_GARMIN_PRODUCT_FR30 ((FIT_GARMIN_PRODUCT)2891)
|
|
#define FIT_GARMIN_PRODUCT_FENIX5S_PLUS ((FIT_GARMIN_PRODUCT)2900)
|
|
#define FIT_GARMIN_PRODUCT_EDGE_130 ((FIT_GARMIN_PRODUCT)2909)
|
|
#define FIT_GARMIN_PRODUCT_EDGE_1030_ASIA ((FIT_GARMIN_PRODUCT)2924)
|
|
#define FIT_GARMIN_PRODUCT_VIVOSMART_4 ((FIT_GARMIN_PRODUCT)2927)
|
|
#define FIT_GARMIN_PRODUCT_VIVO_MOVE_HR_ASIA ((FIT_GARMIN_PRODUCT)2945)
|
|
#define FIT_GARMIN_PRODUCT_APPROACH_X10 ((FIT_GARMIN_PRODUCT)2962)
|
|
#define FIT_GARMIN_PRODUCT_FR30_ASIA ((FIT_GARMIN_PRODUCT)2977)
|
|
#define FIT_GARMIN_PRODUCT_VIVOACTIVE3M_W ((FIT_GARMIN_PRODUCT)2988)
|
|
#define FIT_GARMIN_PRODUCT_FR645_ASIA ((FIT_GARMIN_PRODUCT)3003)
|
|
#define FIT_GARMIN_PRODUCT_FR645M_ASIA ((FIT_GARMIN_PRODUCT)3004)
|
|
#define FIT_GARMIN_PRODUCT_EDGE_EXPLORE ((FIT_GARMIN_PRODUCT)3011)
|
|
#define FIT_GARMIN_PRODUCT_GPSMAP66 ((FIT_GARMIN_PRODUCT)3028)
|
|
#define FIT_GARMIN_PRODUCT_APPROACH_S10 ((FIT_GARMIN_PRODUCT)3049)
|
|
#define FIT_GARMIN_PRODUCT_VIVOACTIVE3M_L ((FIT_GARMIN_PRODUCT)3066)
|
|
#define FIT_GARMIN_PRODUCT_APPROACH_G80 ((FIT_GARMIN_PRODUCT)3085)
|
|
#define FIT_GARMIN_PRODUCT_EDGE_130_ASIA ((FIT_GARMIN_PRODUCT)3092)
|
|
#define FIT_GARMIN_PRODUCT_EDGE_1030_BONTRAGER ((FIT_GARMIN_PRODUCT)3095)
|
|
#define FIT_GARMIN_PRODUCT_FENIX5_PLUS ((FIT_GARMIN_PRODUCT)3110)
|
|
#define FIT_GARMIN_PRODUCT_FENIX5X_PLUS ((FIT_GARMIN_PRODUCT)3111)
|
|
#define FIT_GARMIN_PRODUCT_EDGE_520_PLUS ((FIT_GARMIN_PRODUCT)3112)
|
|
#define FIT_GARMIN_PRODUCT_FR945 ((FIT_GARMIN_PRODUCT)3113)
|
|
#define FIT_GARMIN_PRODUCT_EDGE_530 ((FIT_GARMIN_PRODUCT)3121)
|
|
#define FIT_GARMIN_PRODUCT_EDGE_830 ((FIT_GARMIN_PRODUCT)3122)
|
|
#define FIT_GARMIN_PRODUCT_INSTINCT_ESPORTS ((FIT_GARMIN_PRODUCT)3126)
|
|
#define FIT_GARMIN_PRODUCT_FENIX5S_PLUS_APAC ((FIT_GARMIN_PRODUCT)3134)
|
|
#define FIT_GARMIN_PRODUCT_FENIX5X_PLUS_APAC ((FIT_GARMIN_PRODUCT)3135)
|
|
#define FIT_GARMIN_PRODUCT_EDGE_520_PLUS_APAC ((FIT_GARMIN_PRODUCT)3142)
|
|
#define FIT_GARMIN_PRODUCT_DESCENT_T1 ((FIT_GARMIN_PRODUCT)3143)
|
|
#define FIT_GARMIN_PRODUCT_FR235L_ASIA ((FIT_GARMIN_PRODUCT)3144)
|
|
#define FIT_GARMIN_PRODUCT_FR245_ASIA ((FIT_GARMIN_PRODUCT)3145)
|
|
#define FIT_GARMIN_PRODUCT_VIVO_ACTIVE3M_APAC ((FIT_GARMIN_PRODUCT)3163)
|
|
#define FIT_GARMIN_PRODUCT_GEN3_BSM ((FIT_GARMIN_PRODUCT)3192) // gen3 bike speed sensor
|
|
#define FIT_GARMIN_PRODUCT_GEN3_BCM ((FIT_GARMIN_PRODUCT)3193) // gen3 bike cadence sensor
|
|
#define FIT_GARMIN_PRODUCT_VIVO_SMART4_ASIA ((FIT_GARMIN_PRODUCT)3218)
|
|
#define FIT_GARMIN_PRODUCT_VIVOACTIVE4_SMALL ((FIT_GARMIN_PRODUCT)3224)
|
|
#define FIT_GARMIN_PRODUCT_VIVOACTIVE4_LARGE ((FIT_GARMIN_PRODUCT)3225)
|
|
#define FIT_GARMIN_PRODUCT_VENU ((FIT_GARMIN_PRODUCT)3226)
|
|
#define FIT_GARMIN_PRODUCT_MARQ_DRIVER ((FIT_GARMIN_PRODUCT)3246)
|
|
#define FIT_GARMIN_PRODUCT_MARQ_AVIATOR ((FIT_GARMIN_PRODUCT)3247)
|
|
#define FIT_GARMIN_PRODUCT_MARQ_CAPTAIN ((FIT_GARMIN_PRODUCT)3248)
|
|
#define FIT_GARMIN_PRODUCT_MARQ_COMMANDER ((FIT_GARMIN_PRODUCT)3249)
|
|
#define FIT_GARMIN_PRODUCT_MARQ_EXPEDITION ((FIT_GARMIN_PRODUCT)3250)
|
|
#define FIT_GARMIN_PRODUCT_MARQ_ATHLETE ((FIT_GARMIN_PRODUCT)3251)
|
|
#define FIT_GARMIN_PRODUCT_DESCENT_MK2 ((FIT_GARMIN_PRODUCT)3258)
|
|
#define FIT_GARMIN_PRODUCT_GPSMAP66I ((FIT_GARMIN_PRODUCT)3284)
|
|
#define FIT_GARMIN_PRODUCT_FENIX6S_SPORT ((FIT_GARMIN_PRODUCT)3287)
|
|
#define FIT_GARMIN_PRODUCT_FENIX6S ((FIT_GARMIN_PRODUCT)3288)
|
|
#define FIT_GARMIN_PRODUCT_FENIX6_SPORT ((FIT_GARMIN_PRODUCT)3289)
|
|
#define FIT_GARMIN_PRODUCT_FENIX6 ((FIT_GARMIN_PRODUCT)3290)
|
|
#define FIT_GARMIN_PRODUCT_FENIX6X ((FIT_GARMIN_PRODUCT)3291)
|
|
#define FIT_GARMIN_PRODUCT_HRM_DUAL ((FIT_GARMIN_PRODUCT)3299) // HRM-Dual
|
|
#define FIT_GARMIN_PRODUCT_HRM_PRO ((FIT_GARMIN_PRODUCT)3300) // HRM-Pro
|
|
#define FIT_GARMIN_PRODUCT_VIVO_MOVE3_PREMIUM ((FIT_GARMIN_PRODUCT)3308)
|
|
#define FIT_GARMIN_PRODUCT_APPROACH_S40 ((FIT_GARMIN_PRODUCT)3314)
|
|
#define FIT_GARMIN_PRODUCT_FR245M_ASIA ((FIT_GARMIN_PRODUCT)3321)
|
|
#define FIT_GARMIN_PRODUCT_EDGE_530_APAC ((FIT_GARMIN_PRODUCT)3349)
|
|
#define FIT_GARMIN_PRODUCT_EDGE_830_APAC ((FIT_GARMIN_PRODUCT)3350)
|
|
#define FIT_GARMIN_PRODUCT_VIVO_MOVE3 ((FIT_GARMIN_PRODUCT)3378)
|
|
#define FIT_GARMIN_PRODUCT_VIVO_ACTIVE4_SMALL_ASIA ((FIT_GARMIN_PRODUCT)3387)
|
|
#define FIT_GARMIN_PRODUCT_VIVO_ACTIVE4_LARGE_ASIA ((FIT_GARMIN_PRODUCT)3388)
|
|
#define FIT_GARMIN_PRODUCT_VIVO_ACTIVE4_OLED_ASIA ((FIT_GARMIN_PRODUCT)3389)
|
|
#define FIT_GARMIN_PRODUCT_SWIM2 ((FIT_GARMIN_PRODUCT)3405)
|
|
#define FIT_GARMIN_PRODUCT_MARQ_DRIVER_ASIA ((FIT_GARMIN_PRODUCT)3420)
|
|
#define FIT_GARMIN_PRODUCT_MARQ_AVIATOR_ASIA ((FIT_GARMIN_PRODUCT)3421)
|
|
#define FIT_GARMIN_PRODUCT_VIVO_MOVE3_ASIA ((FIT_GARMIN_PRODUCT)3422)
|
|
#define FIT_GARMIN_PRODUCT_FR945_ASIA ((FIT_GARMIN_PRODUCT)3441)
|
|
#define FIT_GARMIN_PRODUCT_VIVO_ACTIVE3T_CHN ((FIT_GARMIN_PRODUCT)3446)
|
|
#define FIT_GARMIN_PRODUCT_MARQ_CAPTAIN_ASIA ((FIT_GARMIN_PRODUCT)3448)
|
|
#define FIT_GARMIN_PRODUCT_MARQ_COMMANDER_ASIA ((FIT_GARMIN_PRODUCT)3449)
|
|
#define FIT_GARMIN_PRODUCT_MARQ_EXPEDITION_ASIA ((FIT_GARMIN_PRODUCT)3450)
|
|
#define FIT_GARMIN_PRODUCT_MARQ_ATHLETE_ASIA ((FIT_GARMIN_PRODUCT)3451)
|
|
#define FIT_GARMIN_PRODUCT_INSTINCT_SOLAR ((FIT_GARMIN_PRODUCT)3466)
|
|
#define FIT_GARMIN_PRODUCT_FR45_ASIA ((FIT_GARMIN_PRODUCT)3469)
|
|
#define FIT_GARMIN_PRODUCT_VIVOACTIVE3_DAIMLER ((FIT_GARMIN_PRODUCT)3473)
|
|
#define FIT_GARMIN_PRODUCT_LEGACY_REY ((FIT_GARMIN_PRODUCT)3498)
|
|
#define FIT_GARMIN_PRODUCT_LEGACY_DARTH_VADER ((FIT_GARMIN_PRODUCT)3499)
|
|
#define FIT_GARMIN_PRODUCT_LEGACY_CAPTAIN_MARVEL ((FIT_GARMIN_PRODUCT)3500)
|
|
#define FIT_GARMIN_PRODUCT_LEGACY_FIRST_AVENGER ((FIT_GARMIN_PRODUCT)3501)
|
|
#define FIT_GARMIN_PRODUCT_FENIX6S_SPORT_ASIA ((FIT_GARMIN_PRODUCT)3512)
|
|
#define FIT_GARMIN_PRODUCT_FENIX6S_ASIA ((FIT_GARMIN_PRODUCT)3513)
|
|
#define FIT_GARMIN_PRODUCT_FENIX6_SPORT_ASIA ((FIT_GARMIN_PRODUCT)3514)
|
|
#define FIT_GARMIN_PRODUCT_FENIX6_ASIA ((FIT_GARMIN_PRODUCT)3515)
|
|
#define FIT_GARMIN_PRODUCT_FENIX6X_ASIA ((FIT_GARMIN_PRODUCT)3516)
|
|
#define FIT_GARMIN_PRODUCT_LEGACY_CAPTAIN_MARVEL_ASIA ((FIT_GARMIN_PRODUCT)3535)
|
|
#define FIT_GARMIN_PRODUCT_LEGACY_FIRST_AVENGER_ASIA ((FIT_GARMIN_PRODUCT)3536)
|
|
#define FIT_GARMIN_PRODUCT_LEGACY_REY_ASIA ((FIT_GARMIN_PRODUCT)3537)
|
|
#define FIT_GARMIN_PRODUCT_LEGACY_DARTH_VADER_ASIA ((FIT_GARMIN_PRODUCT)3538)
|
|
#define FIT_GARMIN_PRODUCT_DESCENT_MK2S ((FIT_GARMIN_PRODUCT)3542)
|
|
#define FIT_GARMIN_PRODUCT_EDGE_130_PLUS ((FIT_GARMIN_PRODUCT)3558)
|
|
#define FIT_GARMIN_PRODUCT_EDGE_1030_PLUS ((FIT_GARMIN_PRODUCT)3570)
|
|
#define FIT_GARMIN_PRODUCT_RALLY_200 ((FIT_GARMIN_PRODUCT)3578) // Rally 100/200 Power Meter Series
|
|
#define FIT_GARMIN_PRODUCT_FR745 ((FIT_GARMIN_PRODUCT)3589)
|
|
#define FIT_GARMIN_PRODUCT_VENUSQ ((FIT_GARMIN_PRODUCT)3600)
|
|
#define FIT_GARMIN_PRODUCT_LILY ((FIT_GARMIN_PRODUCT)3615)
|
|
#define FIT_GARMIN_PRODUCT_MARQ_ADVENTURER ((FIT_GARMIN_PRODUCT)3624)
|
|
#define FIT_GARMIN_PRODUCT_ENDURO ((FIT_GARMIN_PRODUCT)3638)
|
|
#define FIT_GARMIN_PRODUCT_SWIM2_APAC ((FIT_GARMIN_PRODUCT)3639)
|
|
#define FIT_GARMIN_PRODUCT_MARQ_ADVENTURER_ASIA ((FIT_GARMIN_PRODUCT)3648)
|
|
#define FIT_GARMIN_PRODUCT_FR945_LTE ((FIT_GARMIN_PRODUCT)3652)
|
|
#define FIT_GARMIN_PRODUCT_DESCENT_MK2_ASIA ((FIT_GARMIN_PRODUCT)3702) // Mk2 and Mk2i
|
|
#define FIT_GARMIN_PRODUCT_VENU2 ((FIT_GARMIN_PRODUCT)3703)
|
|
#define FIT_GARMIN_PRODUCT_VENU2S ((FIT_GARMIN_PRODUCT)3704)
|
|
#define FIT_GARMIN_PRODUCT_VENU_DAIMLER_ASIA ((FIT_GARMIN_PRODUCT)3737)
|
|
#define FIT_GARMIN_PRODUCT_MARQ_GOLFER ((FIT_GARMIN_PRODUCT)3739)
|
|
#define FIT_GARMIN_PRODUCT_VENU_DAIMLER ((FIT_GARMIN_PRODUCT)3740)
|
|
#define FIT_GARMIN_PRODUCT_FR745_ASIA ((FIT_GARMIN_PRODUCT)3794)
|
|
#define FIT_GARMIN_PRODUCT_VARIA_RCT715 ((FIT_GARMIN_PRODUCT)3808)
|
|
#define FIT_GARMIN_PRODUCT_LILY_ASIA ((FIT_GARMIN_PRODUCT)3809)
|
|
#define FIT_GARMIN_PRODUCT_EDGE_1030_PLUS_ASIA ((FIT_GARMIN_PRODUCT)3812)
|
|
#define FIT_GARMIN_PRODUCT_EDGE_130_PLUS_ASIA ((FIT_GARMIN_PRODUCT)3813)
|
|
#define FIT_GARMIN_PRODUCT_APPROACH_S12 ((FIT_GARMIN_PRODUCT)3823)
|
|
#define FIT_GARMIN_PRODUCT_ENDURO_ASIA ((FIT_GARMIN_PRODUCT)3872)
|
|
#define FIT_GARMIN_PRODUCT_VENUSQ_ASIA ((FIT_GARMIN_PRODUCT)3837)
|
|
#define FIT_GARMIN_PRODUCT_EDGE_1040 ((FIT_GARMIN_PRODUCT)3843)
|
|
#define FIT_GARMIN_PRODUCT_MARQ_GOLFER_ASIA ((FIT_GARMIN_PRODUCT)3850)
|
|
#define FIT_GARMIN_PRODUCT_VENU2_PLUS ((FIT_GARMIN_PRODUCT)3851)
|
|
#define FIT_GARMIN_PRODUCT_GNSS ((FIT_GARMIN_PRODUCT)3865)
|
|
#define FIT_GARMIN_PRODUCT_FR55 ((FIT_GARMIN_PRODUCT)3869)
|
|
#define FIT_GARMIN_PRODUCT_INSTINCT_2 ((FIT_GARMIN_PRODUCT)3888)
|
|
#define FIT_GARMIN_PRODUCT_FENIX7S ((FIT_GARMIN_PRODUCT)3905)
|
|
#define FIT_GARMIN_PRODUCT_FENIX7 ((FIT_GARMIN_PRODUCT)3906)
|
|
#define FIT_GARMIN_PRODUCT_FENIX7X ((FIT_GARMIN_PRODUCT)3907)
|
|
#define FIT_GARMIN_PRODUCT_FENIX7S_APAC ((FIT_GARMIN_PRODUCT)3908)
|
|
#define FIT_GARMIN_PRODUCT_FENIX7_APAC ((FIT_GARMIN_PRODUCT)3909)
|
|
#define FIT_GARMIN_PRODUCT_FENIX7X_APAC ((FIT_GARMIN_PRODUCT)3910)
|
|
#define FIT_GARMIN_PRODUCT_APPROACH_G12 ((FIT_GARMIN_PRODUCT) 3927)
|
|
#define FIT_GARMIN_PRODUCT_DESCENT_MK2S_ASIA ((FIT_GARMIN_PRODUCT)3930)
|
|
#define FIT_GARMIN_PRODUCT_APPROACH_S42 ((FIT_GARMIN_PRODUCT)3934)
|
|
#define FIT_GARMIN_PRODUCT_EPIX_GEN2 ((FIT_GARMIN_PRODUCT)3943)
|
|
#define FIT_GARMIN_PRODUCT_EPIX_GEN2_APAC ((FIT_GARMIN_PRODUCT)3944)
|
|
#define FIT_GARMIN_PRODUCT_VENU2S_ASIA ((FIT_GARMIN_PRODUCT)3949)
|
|
#define FIT_GARMIN_PRODUCT_VENU2_ASIA ((FIT_GARMIN_PRODUCT)3950)
|
|
#define FIT_GARMIN_PRODUCT_FR945_LTE_ASIA ((FIT_GARMIN_PRODUCT)3978)
|
|
#define FIT_GARMIN_PRODUCT_VIVO_MOVE_SPORT ((FIT_GARMIN_PRODUCT)3982)
|
|
#define FIT_GARMIN_PRODUCT_VIVOMOVE_TREND ((FIT_GARMIN_PRODUCT)3983)
|
|
#define FIT_GARMIN_PRODUCT_APPROACH_S12_ASIA ((FIT_GARMIN_PRODUCT)3986)
|
|
#define FIT_GARMIN_PRODUCT_FR255_MUSIC ((FIT_GARMIN_PRODUCT)3990)
|
|
#define FIT_GARMIN_PRODUCT_FR255_SMALL_MUSIC ((FIT_GARMIN_PRODUCT)3991)
|
|
#define FIT_GARMIN_PRODUCT_FR255 ((FIT_GARMIN_PRODUCT)3992)
|
|
#define FIT_GARMIN_PRODUCT_FR255_SMALL ((FIT_GARMIN_PRODUCT)3993)
|
|
#define FIT_GARMIN_PRODUCT_APPROACH_G12_ASIA ((FIT_GARMIN_PRODUCT) 4001)
|
|
#define FIT_GARMIN_PRODUCT_APPROACH_S42_ASIA ((FIT_GARMIN_PRODUCT)4002)
|
|
#define FIT_GARMIN_PRODUCT_DESCENT_G1 ((FIT_GARMIN_PRODUCT)4005)
|
|
#define FIT_GARMIN_PRODUCT_VENU2_PLUS_ASIA ((FIT_GARMIN_PRODUCT)4017)
|
|
#define FIT_GARMIN_PRODUCT_FR955 ((FIT_GARMIN_PRODUCT)4024)
|
|
#define FIT_GARMIN_PRODUCT_FR55_ASIA ((FIT_GARMIN_PRODUCT)4033)
|
|
#define FIT_GARMIN_PRODUCT_EDGE_540 ((FIT_GARMIN_PRODUCT)4061)
|
|
#define FIT_GARMIN_PRODUCT_EDGE_840 ((FIT_GARMIN_PRODUCT)4062)
|
|
#define FIT_GARMIN_PRODUCT_VIVOSMART_5 ((FIT_GARMIN_PRODUCT)4063)
|
|
#define FIT_GARMIN_PRODUCT_INSTINCT_2_ASIA ((FIT_GARMIN_PRODUCT)4071)
|
|
#define FIT_GARMIN_PRODUCT_MARQ_GEN2 ((FIT_GARMIN_PRODUCT)4105) // Adventurer, Athlete, Captain, Golfer
|
|
#define FIT_GARMIN_PRODUCT_VENUSQ2 ((FIT_GARMIN_PRODUCT)4115)
|
|
#define FIT_GARMIN_PRODUCT_VENUSQ2MUSIC ((FIT_GARMIN_PRODUCT)4116)
|
|
#define FIT_GARMIN_PRODUCT_MARQ_GEN2_AVIATOR ((FIT_GARMIN_PRODUCT)4124)
|
|
#define FIT_GARMIN_PRODUCT_D2_AIR_X10 ((FIT_GARMIN_PRODUCT)4125)
|
|
#define FIT_GARMIN_PRODUCT_HRM_PRO_PLUS ((FIT_GARMIN_PRODUCT)4130)
|
|
#define FIT_GARMIN_PRODUCT_DESCENT_G1_ASIA ((FIT_GARMIN_PRODUCT)4132)
|
|
#define FIT_GARMIN_PRODUCT_TACTIX7 ((FIT_GARMIN_PRODUCT)4135)
|
|
#define FIT_GARMIN_PRODUCT_INSTINCT_CROSSOVER ((FIT_GARMIN_PRODUCT)4155)
|
|
#define FIT_GARMIN_PRODUCT_EDGE_EXPLORE2 ((FIT_GARMIN_PRODUCT)4169)
|
|
#define FIT_GARMIN_PRODUCT_DESCENT_MK3 ((FIT_GARMIN_PRODUCT)4222)
|
|
#define FIT_GARMIN_PRODUCT_DESCENT_MK3I ((FIT_GARMIN_PRODUCT)4223)
|
|
#define FIT_GARMIN_PRODUCT_APPROACH_S70 ((FIT_GARMIN_PRODUCT)4233)
|
|
#define FIT_GARMIN_PRODUCT_FR265_LARGE ((FIT_GARMIN_PRODUCT)4257)
|
|
#define FIT_GARMIN_PRODUCT_FR265_SMALL ((FIT_GARMIN_PRODUCT)4258)
|
|
#define FIT_GARMIN_PRODUCT_VENU3 ((FIT_GARMIN_PRODUCT)4260)
|
|
#define FIT_GARMIN_PRODUCT_VENU3S ((FIT_GARMIN_PRODUCT)4261)
|
|
#define FIT_GARMIN_PRODUCT_TACX_NEO_SMART ((FIT_GARMIN_PRODUCT)4265) // Neo Smart, Tacx
|
|
#define FIT_GARMIN_PRODUCT_TACX_NEO2_SMART ((FIT_GARMIN_PRODUCT)4266) // Neo 2 Smart, Tacx
|
|
#define FIT_GARMIN_PRODUCT_TACX_NEO2_T_SMART ((FIT_GARMIN_PRODUCT)4267) // Neo 2T Smart, Tacx
|
|
#define FIT_GARMIN_PRODUCT_TACX_NEO_SMART_BIKE ((FIT_GARMIN_PRODUCT)4268) // Neo Smart Bike, Tacx
|
|
#define FIT_GARMIN_PRODUCT_TACX_SATORI_SMART ((FIT_GARMIN_PRODUCT)4269) // Satori Smart, Tacx
|
|
#define FIT_GARMIN_PRODUCT_TACX_FLOW_SMART ((FIT_GARMIN_PRODUCT)4270) // Flow Smart, Tacx
|
|
#define FIT_GARMIN_PRODUCT_TACX_VORTEX_SMART ((FIT_GARMIN_PRODUCT)4271) // Vortex Smart, Tacx
|
|
#define FIT_GARMIN_PRODUCT_TACX_BUSHIDO_SMART ((FIT_GARMIN_PRODUCT)4272) // Bushido Smart, Tacx
|
|
#define FIT_GARMIN_PRODUCT_TACX_GENIUS_SMART ((FIT_GARMIN_PRODUCT)4273) // Genius Smart, Tacx
|
|
#define FIT_GARMIN_PRODUCT_TACX_FLUX_FLUX_S_SMART ((FIT_GARMIN_PRODUCT)4274) // Flux/Flux S Smart, Tacx
|
|
#define FIT_GARMIN_PRODUCT_TACX_FLUX2_SMART ((FIT_GARMIN_PRODUCT)4275) // Flux 2 Smart, Tacx
|
|
#define FIT_GARMIN_PRODUCT_TACX_MAGNUM ((FIT_GARMIN_PRODUCT)4276) // Magnum, Tacx
|
|
#define FIT_GARMIN_PRODUCT_EDGE_1040_ASIA ((FIT_GARMIN_PRODUCT)4305)
|
|
#define FIT_GARMIN_PRODUCT_EPIX_GEN2_PRO_42 ((FIT_GARMIN_PRODUCT)4312)
|
|
#define FIT_GARMIN_PRODUCT_EPIX_GEN2_PRO_47 ((FIT_GARMIN_PRODUCT)4313)
|
|
#define FIT_GARMIN_PRODUCT_EPIX_GEN2_PRO_51 ((FIT_GARMIN_PRODUCT)4314)
|
|
#define FIT_GARMIN_PRODUCT_FR965 ((FIT_GARMIN_PRODUCT)4315)
|
|
#define FIT_GARMIN_PRODUCT_ENDURO2 ((FIT_GARMIN_PRODUCT)4341)
|
|
#define FIT_GARMIN_PRODUCT_FENIX7S_PRO_SOLAR ((FIT_GARMIN_PRODUCT)4374)
|
|
#define FIT_GARMIN_PRODUCT_FENIX7_PRO_SOLAR ((FIT_GARMIN_PRODUCT)4375)
|
|
#define FIT_GARMIN_PRODUCT_FENIX7X_PRO_SOLAR ((FIT_GARMIN_PRODUCT)4376)
|
|
#define FIT_GARMIN_PRODUCT_LILY2 ((FIT_GARMIN_PRODUCT)4380)
|
|
#define FIT_GARMIN_PRODUCT_INSTINCT_2X ((FIT_GARMIN_PRODUCT)4394)
|
|
#define FIT_GARMIN_PRODUCT_VIVOACTIVE5 ((FIT_GARMIN_PRODUCT)4426)
|
|
#define FIT_GARMIN_PRODUCT_DESCENT_T2 ((FIT_GARMIN_PRODUCT)4442)
|
|
#define FIT_GARMIN_PRODUCT_HRM_FIT ((FIT_GARMIN_PRODUCT)4446)
|
|
#define FIT_GARMIN_PRODUCT_MARQ_GEN2_COMMANDER ((FIT_GARMIN_PRODUCT)4472)
|
|
#define FIT_GARMIN_PRODUCT_D2_MACH1_PRO ((FIT_GARMIN_PRODUCT)4556)
|
|
#define FIT_GARMIN_PRODUCT_SDM4 ((FIT_GARMIN_PRODUCT)10007) // SDM4 footpod
|
|
#define FIT_GARMIN_PRODUCT_EDGE_REMOTE ((FIT_GARMIN_PRODUCT)10014)
|
|
#define FIT_GARMIN_PRODUCT_TACX_TRAINING_APP_WIN ((FIT_GARMIN_PRODUCT)20533)
|
|
#define FIT_GARMIN_PRODUCT_TACX_TRAINING_APP_MAC ((FIT_GARMIN_PRODUCT)20534)
|
|
#define FIT_GARMIN_PRODUCT_TACX_TRAINING_APP_MAC_CATALYST ((FIT_GARMIN_PRODUCT)20565)
|
|
#define FIT_GARMIN_PRODUCT_TRAINING_CENTER ((FIT_GARMIN_PRODUCT)20119)
|
|
#define FIT_GARMIN_PRODUCT_TACX_TRAINING_APP_ANDROID ((FIT_GARMIN_PRODUCT)30045)
|
|
#define FIT_GARMIN_PRODUCT_TACX_TRAINING_APP_IOS ((FIT_GARMIN_PRODUCT)30046)
|
|
#define FIT_GARMIN_PRODUCT_TACX_TRAINING_APP_LEGACY ((FIT_GARMIN_PRODUCT)30047)
|
|
#define FIT_GARMIN_PRODUCT_CONNECTIQ_SIMULATOR ((FIT_GARMIN_PRODUCT)65531)
|
|
#define FIT_GARMIN_PRODUCT_ANDROID_ANTPLUS_PLUGIN ((FIT_GARMIN_PRODUCT)65532)
|
|
#define FIT_GARMIN_PRODUCT_CONNECT ((FIT_GARMIN_PRODUCT)65534) // Garmin Connect website
|
|
#define FIT_GARMIN_PRODUCT_COUNT 432
|
|
|
|
typedef FIT_UINT8 FIT_ANTPLUS_DEVICE_TYPE;
|
|
#define FIT_ANTPLUS_DEVICE_TYPE_INVALID FIT_UINT8_INVALID
|
|
#define FIT_ANTPLUS_DEVICE_TYPE_ANTFS ((FIT_ANTPLUS_DEVICE_TYPE)1)
|
|
#define FIT_ANTPLUS_DEVICE_TYPE_BIKE_POWER ((FIT_ANTPLUS_DEVICE_TYPE)11)
|
|
#define FIT_ANTPLUS_DEVICE_TYPE_ENVIRONMENT_SENSOR_LEGACY ((FIT_ANTPLUS_DEVICE_TYPE)12)
|
|
#define FIT_ANTPLUS_DEVICE_TYPE_MULTI_SPORT_SPEED_DISTANCE ((FIT_ANTPLUS_DEVICE_TYPE)15)
|
|
#define FIT_ANTPLUS_DEVICE_TYPE_CONTROL ((FIT_ANTPLUS_DEVICE_TYPE)16)
|
|
#define FIT_ANTPLUS_DEVICE_TYPE_FITNESS_EQUIPMENT ((FIT_ANTPLUS_DEVICE_TYPE)17)
|
|
#define FIT_ANTPLUS_DEVICE_TYPE_BLOOD_PRESSURE ((FIT_ANTPLUS_DEVICE_TYPE)18)
|
|
#define FIT_ANTPLUS_DEVICE_TYPE_GEOCACHE_NODE ((FIT_ANTPLUS_DEVICE_TYPE)19)
|
|
#define FIT_ANTPLUS_DEVICE_TYPE_LIGHT_ELECTRIC_VEHICLE ((FIT_ANTPLUS_DEVICE_TYPE)20)
|
|
#define FIT_ANTPLUS_DEVICE_TYPE_ENV_SENSOR ((FIT_ANTPLUS_DEVICE_TYPE)25)
|
|
#define FIT_ANTPLUS_DEVICE_TYPE_RACQUET ((FIT_ANTPLUS_DEVICE_TYPE)26)
|
|
#define FIT_ANTPLUS_DEVICE_TYPE_CONTROL_HUB ((FIT_ANTPLUS_DEVICE_TYPE)27)
|
|
#define FIT_ANTPLUS_DEVICE_TYPE_MUSCLE_OXYGEN ((FIT_ANTPLUS_DEVICE_TYPE)31)
|
|
#define FIT_ANTPLUS_DEVICE_TYPE_SHIFTING ((FIT_ANTPLUS_DEVICE_TYPE)34)
|
|
#define FIT_ANTPLUS_DEVICE_TYPE_BIKE_LIGHT_MAIN ((FIT_ANTPLUS_DEVICE_TYPE)35)
|
|
#define FIT_ANTPLUS_DEVICE_TYPE_BIKE_LIGHT_SHARED ((FIT_ANTPLUS_DEVICE_TYPE)36)
|
|
#define FIT_ANTPLUS_DEVICE_TYPE_EXD ((FIT_ANTPLUS_DEVICE_TYPE)38)
|
|
#define FIT_ANTPLUS_DEVICE_TYPE_BIKE_RADAR ((FIT_ANTPLUS_DEVICE_TYPE)40)
|
|
#define FIT_ANTPLUS_DEVICE_TYPE_BIKE_AERO ((FIT_ANTPLUS_DEVICE_TYPE)46)
|
|
#define FIT_ANTPLUS_DEVICE_TYPE_WEIGHT_SCALE ((FIT_ANTPLUS_DEVICE_TYPE)119)
|
|
#define FIT_ANTPLUS_DEVICE_TYPE_HEART_RATE ((FIT_ANTPLUS_DEVICE_TYPE)120)
|
|
#define FIT_ANTPLUS_DEVICE_TYPE_BIKE_SPEED_CADENCE ((FIT_ANTPLUS_DEVICE_TYPE)121)
|
|
#define FIT_ANTPLUS_DEVICE_TYPE_BIKE_CADENCE ((FIT_ANTPLUS_DEVICE_TYPE)122)
|
|
#define FIT_ANTPLUS_DEVICE_TYPE_BIKE_SPEED ((FIT_ANTPLUS_DEVICE_TYPE)123)
|
|
#define FIT_ANTPLUS_DEVICE_TYPE_STRIDE_SPEED_DISTANCE ((FIT_ANTPLUS_DEVICE_TYPE)124)
|
|
#define FIT_ANTPLUS_DEVICE_TYPE_COUNT 25
|
|
|
|
typedef FIT_ENUM FIT_ANT_NETWORK;
|
|
#define FIT_ANT_NETWORK_INVALID FIT_ENUM_INVALID
|
|
#define FIT_ANT_NETWORK_PUBLIC ((FIT_ANT_NETWORK)0)
|
|
#define FIT_ANT_NETWORK_ANTPLUS ((FIT_ANT_NETWORK)1)
|
|
#define FIT_ANT_NETWORK_ANTFS ((FIT_ANT_NETWORK)2)
|
|
#define FIT_ANT_NETWORK_PRIVATE ((FIT_ANT_NETWORK)3)
|
|
#define FIT_ANT_NETWORK_COUNT 4
|
|
|
|
typedef FIT_UINT32Z FIT_WORKOUT_CAPABILITIES;
|
|
#define FIT_WORKOUT_CAPABILITIES_INVALID FIT_UINT32Z_INVALID
|
|
#define FIT_WORKOUT_CAPABILITIES_INTERVAL ((FIT_WORKOUT_CAPABILITIES)0x00000001)
|
|
#define FIT_WORKOUT_CAPABILITIES_CUSTOM ((FIT_WORKOUT_CAPABILITIES)0x00000002)
|
|
#define FIT_WORKOUT_CAPABILITIES_FITNESS_EQUIPMENT ((FIT_WORKOUT_CAPABILITIES)0x00000004)
|
|
#define FIT_WORKOUT_CAPABILITIES_FIRSTBEAT ((FIT_WORKOUT_CAPABILITIES)0x00000008)
|
|
#define FIT_WORKOUT_CAPABILITIES_NEW_LEAF ((FIT_WORKOUT_CAPABILITIES)0x00000010)
|
|
#define FIT_WORKOUT_CAPABILITIES_TCX ((FIT_WORKOUT_CAPABILITIES)0x00000020) // For backwards compatibility. Watch should add missing id fields then clear flag.
|
|
#define FIT_WORKOUT_CAPABILITIES_SPEED ((FIT_WORKOUT_CAPABILITIES)0x00000080) // Speed source required for workout step.
|
|
#define FIT_WORKOUT_CAPABILITIES_HEART_RATE ((FIT_WORKOUT_CAPABILITIES)0x00000100) // Heart rate source required for workout step.
|
|
#define FIT_WORKOUT_CAPABILITIES_DISTANCE ((FIT_WORKOUT_CAPABILITIES)0x00000200) // Distance source required for workout step.
|
|
#define FIT_WORKOUT_CAPABILITIES_CADENCE ((FIT_WORKOUT_CAPABILITIES)0x00000400) // Cadence source required for workout step.
|
|
#define FIT_WORKOUT_CAPABILITIES_POWER ((FIT_WORKOUT_CAPABILITIES)0x00000800) // Power source required for workout step.
|
|
#define FIT_WORKOUT_CAPABILITIES_GRADE ((FIT_WORKOUT_CAPABILITIES)0x00001000) // Grade source required for workout step.
|
|
#define FIT_WORKOUT_CAPABILITIES_RESISTANCE ((FIT_WORKOUT_CAPABILITIES)0x00002000) // Resistance source required for workout step.
|
|
#define FIT_WORKOUT_CAPABILITIES_PROTECTED ((FIT_WORKOUT_CAPABILITIES)0x00004000)
|
|
#define FIT_WORKOUT_CAPABILITIES_COUNT 14
|
|
|
|
typedef FIT_UINT8 FIT_BATTERY_STATUS;
|
|
#define FIT_BATTERY_STATUS_INVALID FIT_UINT8_INVALID
|
|
#define FIT_BATTERY_STATUS_NEW ((FIT_BATTERY_STATUS)1)
|
|
#define FIT_BATTERY_STATUS_GOOD ((FIT_BATTERY_STATUS)2)
|
|
#define FIT_BATTERY_STATUS_OK ((FIT_BATTERY_STATUS)3)
|
|
#define FIT_BATTERY_STATUS_LOW ((FIT_BATTERY_STATUS)4)
|
|
#define FIT_BATTERY_STATUS_CRITICAL ((FIT_BATTERY_STATUS)5)
|
|
#define FIT_BATTERY_STATUS_CHARGING ((FIT_BATTERY_STATUS)6)
|
|
#define FIT_BATTERY_STATUS_UNKNOWN ((FIT_BATTERY_STATUS)7)
|
|
#define FIT_BATTERY_STATUS_COUNT 7
|
|
|
|
typedef FIT_ENUM FIT_HR_TYPE;
|
|
#define FIT_HR_TYPE_INVALID FIT_ENUM_INVALID
|
|
#define FIT_HR_TYPE_NORMAL ((FIT_HR_TYPE)0)
|
|
#define FIT_HR_TYPE_IRREGULAR ((FIT_HR_TYPE)1)
|
|
#define FIT_HR_TYPE_COUNT 2
|
|
|
|
typedef FIT_UINT32Z FIT_COURSE_CAPABILITIES;
|
|
#define FIT_COURSE_CAPABILITIES_INVALID FIT_UINT32Z_INVALID
|
|
#define FIT_COURSE_CAPABILITIES_PROCESSED ((FIT_COURSE_CAPABILITIES)0x00000001)
|
|
#define FIT_COURSE_CAPABILITIES_VALID ((FIT_COURSE_CAPABILITIES)0x00000002)
|
|
#define FIT_COURSE_CAPABILITIES_TIME ((FIT_COURSE_CAPABILITIES)0x00000004)
|
|
#define FIT_COURSE_CAPABILITIES_DISTANCE ((FIT_COURSE_CAPABILITIES)0x00000008)
|
|
#define FIT_COURSE_CAPABILITIES_POSITION ((FIT_COURSE_CAPABILITIES)0x00000010)
|
|
#define FIT_COURSE_CAPABILITIES_HEART_RATE ((FIT_COURSE_CAPABILITIES)0x00000020)
|
|
#define FIT_COURSE_CAPABILITIES_POWER ((FIT_COURSE_CAPABILITIES)0x00000040)
|
|
#define FIT_COURSE_CAPABILITIES_CADENCE ((FIT_COURSE_CAPABILITIES)0x00000080)
|
|
#define FIT_COURSE_CAPABILITIES_TRAINING ((FIT_COURSE_CAPABILITIES)0x00000100)
|
|
#define FIT_COURSE_CAPABILITIES_NAVIGATION ((FIT_COURSE_CAPABILITIES)0x00000200)
|
|
#define FIT_COURSE_CAPABILITIES_BIKEWAY ((FIT_COURSE_CAPABILITIES)0x00000400)
|
|
#define FIT_COURSE_CAPABILITIES_AVIATION ((FIT_COURSE_CAPABILITIES)0x00001000) // Denote course files to be used as flight plans
|
|
#define FIT_COURSE_CAPABILITIES_COUNT 12
|
|
|
|
typedef FIT_UINT16 FIT_WEIGHT;
|
|
#define FIT_WEIGHT_INVALID FIT_UINT16_INVALID
|
|
#define FIT_WEIGHT_CALCULATING ((FIT_WEIGHT)0xFFFE)
|
|
#define FIT_WEIGHT_COUNT 1
|
|
|
|
typedef FIT_UINT32 FIT_WORKOUT_HR; // 0 - 100 indicates% of max hr; >100 indicates bpm (255 max) plus 100
|
|
#define FIT_WORKOUT_HR_INVALID FIT_UINT32_INVALID
|
|
#define FIT_WORKOUT_HR_BPM_OFFSET ((FIT_WORKOUT_HR)100)
|
|
#define FIT_WORKOUT_HR_COUNT 1
|
|
|
|
typedef FIT_UINT32 FIT_WORKOUT_POWER; // 0 - 1000 indicates % of functional threshold power; >1000 indicates watts plus 1000.
|
|
#define FIT_WORKOUT_POWER_INVALID FIT_UINT32_INVALID
|
|
#define FIT_WORKOUT_POWER_WATTS_OFFSET ((FIT_WORKOUT_POWER)1000)
|
|
#define FIT_WORKOUT_POWER_COUNT 1
|
|
|
|
typedef FIT_ENUM FIT_BP_STATUS;
|
|
#define FIT_BP_STATUS_INVALID FIT_ENUM_INVALID
|
|
#define FIT_BP_STATUS_NO_ERROR ((FIT_BP_STATUS)0)
|
|
#define FIT_BP_STATUS_ERROR_INCOMPLETE_DATA ((FIT_BP_STATUS)1)
|
|
#define FIT_BP_STATUS_ERROR_NO_MEASUREMENT ((FIT_BP_STATUS)2)
|
|
#define FIT_BP_STATUS_ERROR_DATA_OUT_OF_RANGE ((FIT_BP_STATUS)3)
|
|
#define FIT_BP_STATUS_ERROR_IRREGULAR_HEART_RATE ((FIT_BP_STATUS)4)
|
|
#define FIT_BP_STATUS_COUNT 5
|
|
|
|
typedef FIT_UINT16 FIT_USER_LOCAL_ID;
|
|
#define FIT_USER_LOCAL_ID_INVALID FIT_UINT16_INVALID
|
|
#define FIT_USER_LOCAL_ID_LOCAL_MIN ((FIT_USER_LOCAL_ID)0x0000)
|
|
#define FIT_USER_LOCAL_ID_LOCAL_MAX ((FIT_USER_LOCAL_ID)0x000F)
|
|
#define FIT_USER_LOCAL_ID_STATIONARY_MIN ((FIT_USER_LOCAL_ID)0x0010)
|
|
#define FIT_USER_LOCAL_ID_STATIONARY_MAX ((FIT_USER_LOCAL_ID)0x00FF)
|
|
#define FIT_USER_LOCAL_ID_PORTABLE_MIN ((FIT_USER_LOCAL_ID)0x0100)
|
|
#define FIT_USER_LOCAL_ID_PORTABLE_MAX ((FIT_USER_LOCAL_ID)0xFFFE)
|
|
#define FIT_USER_LOCAL_ID_COUNT 6
|
|
|
|
typedef FIT_ENUM FIT_SWIM_STROKE;
|
|
#define FIT_SWIM_STROKE_INVALID FIT_ENUM_INVALID
|
|
#define FIT_SWIM_STROKE_FREESTYLE ((FIT_SWIM_STROKE)0)
|
|
#define FIT_SWIM_STROKE_BACKSTROKE ((FIT_SWIM_STROKE)1)
|
|
#define FIT_SWIM_STROKE_BREASTSTROKE ((FIT_SWIM_STROKE)2)
|
|
#define FIT_SWIM_STROKE_BUTTERFLY ((FIT_SWIM_STROKE)3)
|
|
#define FIT_SWIM_STROKE_DRILL ((FIT_SWIM_STROKE)4)
|
|
#define FIT_SWIM_STROKE_MIXED ((FIT_SWIM_STROKE)5)
|
|
#define FIT_SWIM_STROKE_IM ((FIT_SWIM_STROKE)6) // IM is a mixed interval containing the same number of lengths for each of: Butterfly, Backstroke, Breaststroke, Freestyle, swam in that order.
|
|
#define FIT_SWIM_STROKE_COUNT 7
|
|
|
|
typedef FIT_ENUM FIT_ACTIVITY_TYPE;
|
|
#define FIT_ACTIVITY_TYPE_INVALID FIT_ENUM_INVALID
|
|
#define FIT_ACTIVITY_TYPE_GENERIC ((FIT_ACTIVITY_TYPE)0)
|
|
#define FIT_ACTIVITY_TYPE_RUNNING ((FIT_ACTIVITY_TYPE)1)
|
|
#define FIT_ACTIVITY_TYPE_CYCLING ((FIT_ACTIVITY_TYPE)2)
|
|
#define FIT_ACTIVITY_TYPE_TRANSITION ((FIT_ACTIVITY_TYPE)3) // Mulitsport transition
|
|
#define FIT_ACTIVITY_TYPE_FITNESS_EQUIPMENT ((FIT_ACTIVITY_TYPE)4)
|
|
#define FIT_ACTIVITY_TYPE_SWIMMING ((FIT_ACTIVITY_TYPE)5)
|
|
#define FIT_ACTIVITY_TYPE_WALKING ((FIT_ACTIVITY_TYPE)6)
|
|
#define FIT_ACTIVITY_TYPE_SEDENTARY ((FIT_ACTIVITY_TYPE)8)
|
|
#define FIT_ACTIVITY_TYPE_ALL ((FIT_ACTIVITY_TYPE)254) // All is for goals only to include all sports.
|
|
#define FIT_ACTIVITY_TYPE_COUNT 9
|
|
|
|
typedef FIT_ENUM FIT_ACTIVITY_SUBTYPE;
|
|
#define FIT_ACTIVITY_SUBTYPE_INVALID FIT_ENUM_INVALID
|
|
#define FIT_ACTIVITY_SUBTYPE_GENERIC ((FIT_ACTIVITY_SUBTYPE)0)
|
|
#define FIT_ACTIVITY_SUBTYPE_TREADMILL ((FIT_ACTIVITY_SUBTYPE)1) // Run
|
|
#define FIT_ACTIVITY_SUBTYPE_STREET ((FIT_ACTIVITY_SUBTYPE)2) // Run
|
|
#define FIT_ACTIVITY_SUBTYPE_TRAIL ((FIT_ACTIVITY_SUBTYPE)3) // Run
|
|
#define FIT_ACTIVITY_SUBTYPE_TRACK ((FIT_ACTIVITY_SUBTYPE)4) // Run
|
|
#define FIT_ACTIVITY_SUBTYPE_SPIN ((FIT_ACTIVITY_SUBTYPE)5) // Cycling
|
|
#define FIT_ACTIVITY_SUBTYPE_INDOOR_CYCLING ((FIT_ACTIVITY_SUBTYPE)6) // Cycling
|
|
#define FIT_ACTIVITY_SUBTYPE_ROAD ((FIT_ACTIVITY_SUBTYPE)7) // Cycling
|
|
#define FIT_ACTIVITY_SUBTYPE_MOUNTAIN ((FIT_ACTIVITY_SUBTYPE)8) // Cycling
|
|
#define FIT_ACTIVITY_SUBTYPE_DOWNHILL ((FIT_ACTIVITY_SUBTYPE)9) // Cycling
|
|
#define FIT_ACTIVITY_SUBTYPE_RECUMBENT ((FIT_ACTIVITY_SUBTYPE)10) // Cycling
|
|
#define FIT_ACTIVITY_SUBTYPE_CYCLOCROSS ((FIT_ACTIVITY_SUBTYPE)11) // Cycling
|
|
#define FIT_ACTIVITY_SUBTYPE_HAND_CYCLING ((FIT_ACTIVITY_SUBTYPE)12) // Cycling
|
|
#define FIT_ACTIVITY_SUBTYPE_TRACK_CYCLING ((FIT_ACTIVITY_SUBTYPE)13) // Cycling
|
|
#define FIT_ACTIVITY_SUBTYPE_INDOOR_ROWING ((FIT_ACTIVITY_SUBTYPE)14) // Fitness Equipment
|
|
#define FIT_ACTIVITY_SUBTYPE_ELLIPTICAL ((FIT_ACTIVITY_SUBTYPE)15) // Fitness Equipment
|
|
#define FIT_ACTIVITY_SUBTYPE_STAIR_CLIMBING ((FIT_ACTIVITY_SUBTYPE)16) // Fitness Equipment
|
|
#define FIT_ACTIVITY_SUBTYPE_LAP_SWIMMING ((FIT_ACTIVITY_SUBTYPE)17) // Swimming
|
|
#define FIT_ACTIVITY_SUBTYPE_OPEN_WATER ((FIT_ACTIVITY_SUBTYPE)18) // Swimming
|
|
#define FIT_ACTIVITY_SUBTYPE_ALL ((FIT_ACTIVITY_SUBTYPE)254)
|
|
#define FIT_ACTIVITY_SUBTYPE_COUNT 20
|
|
|
|
typedef FIT_ENUM FIT_ACTIVITY_LEVEL;
|
|
#define FIT_ACTIVITY_LEVEL_INVALID FIT_ENUM_INVALID
|
|
#define FIT_ACTIVITY_LEVEL_LOW ((FIT_ACTIVITY_LEVEL)0)
|
|
#define FIT_ACTIVITY_LEVEL_MEDIUM ((FIT_ACTIVITY_LEVEL)1)
|
|
#define FIT_ACTIVITY_LEVEL_HIGH ((FIT_ACTIVITY_LEVEL)2)
|
|
#define FIT_ACTIVITY_LEVEL_COUNT 3
|
|
|
|
typedef FIT_ENUM FIT_SIDE;
|
|
#define FIT_SIDE_INVALID FIT_ENUM_INVALID
|
|
#define FIT_SIDE_RIGHT ((FIT_SIDE)0)
|
|
#define FIT_SIDE_LEFT ((FIT_SIDE)1)
|
|
#define FIT_SIDE_COUNT 2
|
|
|
|
typedef FIT_UINT8 FIT_LEFT_RIGHT_BALANCE;
|
|
#define FIT_LEFT_RIGHT_BALANCE_INVALID FIT_UINT8_INVALID
|
|
#define FIT_LEFT_RIGHT_BALANCE_MASK ((FIT_LEFT_RIGHT_BALANCE)0x7F) // % contribution
|
|
#define FIT_LEFT_RIGHT_BALANCE_RIGHT ((FIT_LEFT_RIGHT_BALANCE)0x80) // data corresponds to right if set, otherwise unknown
|
|
#define FIT_LEFT_RIGHT_BALANCE_COUNT 2
|
|
|
|
typedef FIT_UINT16 FIT_LEFT_RIGHT_BALANCE_100;
|
|
#define FIT_LEFT_RIGHT_BALANCE_100_INVALID FIT_UINT16_INVALID
|
|
#define FIT_LEFT_RIGHT_BALANCE_100_MASK ((FIT_LEFT_RIGHT_BALANCE_100)0x3FFF) // % contribution scaled by 100
|
|
#define FIT_LEFT_RIGHT_BALANCE_100_RIGHT ((FIT_LEFT_RIGHT_BALANCE_100)0x8000) // data corresponds to right if set, otherwise unknown
|
|
#define FIT_LEFT_RIGHT_BALANCE_100_COUNT 2
|
|
|
|
typedef FIT_ENUM FIT_LENGTH_TYPE;
|
|
#define FIT_LENGTH_TYPE_INVALID FIT_ENUM_INVALID
|
|
#define FIT_LENGTH_TYPE_IDLE ((FIT_LENGTH_TYPE)0) // Rest period. Length with no strokes
|
|
#define FIT_LENGTH_TYPE_ACTIVE ((FIT_LENGTH_TYPE)1) // Length with strokes.
|
|
#define FIT_LENGTH_TYPE_COUNT 2
|
|
|
|
typedef FIT_ENUM FIT_DAY_OF_WEEK;
|
|
#define FIT_DAY_OF_WEEK_INVALID FIT_ENUM_INVALID
|
|
#define FIT_DAY_OF_WEEK_SUNDAY ((FIT_DAY_OF_WEEK)0)
|
|
#define FIT_DAY_OF_WEEK_MONDAY ((FIT_DAY_OF_WEEK)1)
|
|
#define FIT_DAY_OF_WEEK_TUESDAY ((FIT_DAY_OF_WEEK)2)
|
|
#define FIT_DAY_OF_WEEK_WEDNESDAY ((FIT_DAY_OF_WEEK)3)
|
|
#define FIT_DAY_OF_WEEK_THURSDAY ((FIT_DAY_OF_WEEK)4)
|
|
#define FIT_DAY_OF_WEEK_FRIDAY ((FIT_DAY_OF_WEEK)5)
|
|
#define FIT_DAY_OF_WEEK_SATURDAY ((FIT_DAY_OF_WEEK)6)
|
|
#define FIT_DAY_OF_WEEK_COUNT 7
|
|
|
|
typedef FIT_UINT32Z FIT_CONNECTIVITY_CAPABILITIES;
|
|
#define FIT_CONNECTIVITY_CAPABILITIES_INVALID FIT_UINT32Z_INVALID
|
|
#define FIT_CONNECTIVITY_CAPABILITIES_BLUETOOTH ((FIT_CONNECTIVITY_CAPABILITIES)0x00000001)
|
|
#define FIT_CONNECTIVITY_CAPABILITIES_BLUETOOTH_LE ((FIT_CONNECTIVITY_CAPABILITIES)0x00000002)
|
|
#define FIT_CONNECTIVITY_CAPABILITIES_ANT ((FIT_CONNECTIVITY_CAPABILITIES)0x00000004)
|
|
#define FIT_CONNECTIVITY_CAPABILITIES_ACTIVITY_UPLOAD ((FIT_CONNECTIVITY_CAPABILITIES)0x00000008)
|
|
#define FIT_CONNECTIVITY_CAPABILITIES_COURSE_DOWNLOAD ((FIT_CONNECTIVITY_CAPABILITIES)0x00000010)
|
|
#define FIT_CONNECTIVITY_CAPABILITIES_WORKOUT_DOWNLOAD ((FIT_CONNECTIVITY_CAPABILITIES)0x00000020)
|
|
#define FIT_CONNECTIVITY_CAPABILITIES_LIVE_TRACK ((FIT_CONNECTIVITY_CAPABILITIES)0x00000040)
|
|
#define FIT_CONNECTIVITY_CAPABILITIES_WEATHER_CONDITIONS ((FIT_CONNECTIVITY_CAPABILITIES)0x00000080)
|
|
#define FIT_CONNECTIVITY_CAPABILITIES_WEATHER_ALERTS ((FIT_CONNECTIVITY_CAPABILITIES)0x00000100)
|
|
#define FIT_CONNECTIVITY_CAPABILITIES_GPS_EPHEMERIS_DOWNLOAD ((FIT_CONNECTIVITY_CAPABILITIES)0x00000200)
|
|
#define FIT_CONNECTIVITY_CAPABILITIES_EXPLICIT_ARCHIVE ((FIT_CONNECTIVITY_CAPABILITIES)0x00000400)
|
|
#define FIT_CONNECTIVITY_CAPABILITIES_SETUP_INCOMPLETE ((FIT_CONNECTIVITY_CAPABILITIES)0x00000800)
|
|
#define FIT_CONNECTIVITY_CAPABILITIES_CONTINUE_SYNC_AFTER_SOFTWARE_UPDATE ((FIT_CONNECTIVITY_CAPABILITIES)0x00001000)
|
|
#define FIT_CONNECTIVITY_CAPABILITIES_CONNECT_IQ_APP_DOWNLOAD ((FIT_CONNECTIVITY_CAPABILITIES)0x00002000)
|
|
#define FIT_CONNECTIVITY_CAPABILITIES_GOLF_COURSE_DOWNLOAD ((FIT_CONNECTIVITY_CAPABILITIES)0x00004000)
|
|
#define FIT_CONNECTIVITY_CAPABILITIES_DEVICE_INITIATES_SYNC ((FIT_CONNECTIVITY_CAPABILITIES)0x00008000) // Indicates device is in control of initiating all syncs
|
|
#define FIT_CONNECTIVITY_CAPABILITIES_CONNECT_IQ_WATCH_APP_DOWNLOAD ((FIT_CONNECTIVITY_CAPABILITIES)0x00010000)
|
|
#define FIT_CONNECTIVITY_CAPABILITIES_CONNECT_IQ_WIDGET_DOWNLOAD ((FIT_CONNECTIVITY_CAPABILITIES)0x00020000)
|
|
#define FIT_CONNECTIVITY_CAPABILITIES_CONNECT_IQ_WATCH_FACE_DOWNLOAD ((FIT_CONNECTIVITY_CAPABILITIES)0x00040000)
|
|
#define FIT_CONNECTIVITY_CAPABILITIES_CONNECT_IQ_DATA_FIELD_DOWNLOAD ((FIT_CONNECTIVITY_CAPABILITIES)0x00080000)
|
|
#define FIT_CONNECTIVITY_CAPABILITIES_CONNECT_IQ_APP_MANAGMENT ((FIT_CONNECTIVITY_CAPABILITIES)0x00100000) // Device supports delete and reorder of apps via GCM
|
|
#define FIT_CONNECTIVITY_CAPABILITIES_SWING_SENSOR ((FIT_CONNECTIVITY_CAPABILITIES)0x00200000)
|
|
#define FIT_CONNECTIVITY_CAPABILITIES_SWING_SENSOR_REMOTE ((FIT_CONNECTIVITY_CAPABILITIES)0x00400000)
|
|
#define FIT_CONNECTIVITY_CAPABILITIES_INCIDENT_DETECTION ((FIT_CONNECTIVITY_CAPABILITIES)0x00800000) // Device supports incident detection
|
|
#define FIT_CONNECTIVITY_CAPABILITIES_AUDIO_PROMPTS ((FIT_CONNECTIVITY_CAPABILITIES)0x01000000)
|
|
#define FIT_CONNECTIVITY_CAPABILITIES_WIFI_VERIFICATION ((FIT_CONNECTIVITY_CAPABILITIES)0x02000000) // Device supports reporting wifi verification via GCM
|
|
#define FIT_CONNECTIVITY_CAPABILITIES_TRUE_UP ((FIT_CONNECTIVITY_CAPABILITIES)0x04000000) // Device supports True Up
|
|
#define FIT_CONNECTIVITY_CAPABILITIES_FIND_MY_WATCH ((FIT_CONNECTIVITY_CAPABILITIES)0x08000000) // Device supports Find My Watch
|
|
#define FIT_CONNECTIVITY_CAPABILITIES_REMOTE_MANUAL_SYNC ((FIT_CONNECTIVITY_CAPABILITIES)0x10000000)
|
|
#define FIT_CONNECTIVITY_CAPABILITIES_LIVE_TRACK_AUTO_START ((FIT_CONNECTIVITY_CAPABILITIES)0x20000000) // Device supports LiveTrack auto start
|
|
#define FIT_CONNECTIVITY_CAPABILITIES_LIVE_TRACK_MESSAGING ((FIT_CONNECTIVITY_CAPABILITIES)0x40000000) // Device supports LiveTrack Messaging
|
|
#define FIT_CONNECTIVITY_CAPABILITIES_INSTANT_INPUT ((FIT_CONNECTIVITY_CAPABILITIES)0x80000000) // Device supports instant input feature
|
|
#define FIT_CONNECTIVITY_CAPABILITIES_COUNT 32
|
|
|
|
typedef FIT_ENUM FIT_WEATHER_REPORT;
|
|
#define FIT_WEATHER_REPORT_INVALID FIT_ENUM_INVALID
|
|
#define FIT_WEATHER_REPORT_CURRENT ((FIT_WEATHER_REPORT)0)
|
|
#define FIT_WEATHER_REPORT_FORECAST ((FIT_WEATHER_REPORT)1) // Deprecated use hourly_forecast instead
|
|
#define FIT_WEATHER_REPORT_HOURLY_FORECAST ((FIT_WEATHER_REPORT)1)
|
|
#define FIT_WEATHER_REPORT_DAILY_FORECAST ((FIT_WEATHER_REPORT)2)
|
|
#define FIT_WEATHER_REPORT_COUNT 4
|
|
|
|
typedef FIT_ENUM FIT_WEATHER_STATUS;
|
|
#define FIT_WEATHER_STATUS_INVALID FIT_ENUM_INVALID
|
|
#define FIT_WEATHER_STATUS_CLEAR ((FIT_WEATHER_STATUS)0)
|
|
#define FIT_WEATHER_STATUS_PARTLY_CLOUDY ((FIT_WEATHER_STATUS)1)
|
|
#define FIT_WEATHER_STATUS_MOSTLY_CLOUDY ((FIT_WEATHER_STATUS)2)
|
|
#define FIT_WEATHER_STATUS_RAIN ((FIT_WEATHER_STATUS)3)
|
|
#define FIT_WEATHER_STATUS_SNOW ((FIT_WEATHER_STATUS)4)
|
|
#define FIT_WEATHER_STATUS_WINDY ((FIT_WEATHER_STATUS)5)
|
|
#define FIT_WEATHER_STATUS_THUNDERSTORMS ((FIT_WEATHER_STATUS)6)
|
|
#define FIT_WEATHER_STATUS_WINTRY_MIX ((FIT_WEATHER_STATUS)7)
|
|
#define FIT_WEATHER_STATUS_FOG ((FIT_WEATHER_STATUS)8)
|
|
#define FIT_WEATHER_STATUS_HAZY ((FIT_WEATHER_STATUS)11)
|
|
#define FIT_WEATHER_STATUS_HAIL ((FIT_WEATHER_STATUS)12)
|
|
#define FIT_WEATHER_STATUS_SCATTERED_SHOWERS ((FIT_WEATHER_STATUS)13)
|
|
#define FIT_WEATHER_STATUS_SCATTERED_THUNDERSTORMS ((FIT_WEATHER_STATUS)14)
|
|
#define FIT_WEATHER_STATUS_UNKNOWN_PRECIPITATION ((FIT_WEATHER_STATUS)15)
|
|
#define FIT_WEATHER_STATUS_LIGHT_RAIN ((FIT_WEATHER_STATUS)16)
|
|
#define FIT_WEATHER_STATUS_HEAVY_RAIN ((FIT_WEATHER_STATUS)17)
|
|
#define FIT_WEATHER_STATUS_LIGHT_SNOW ((FIT_WEATHER_STATUS)18)
|
|
#define FIT_WEATHER_STATUS_HEAVY_SNOW ((FIT_WEATHER_STATUS)19)
|
|
#define FIT_WEATHER_STATUS_LIGHT_RAIN_SNOW ((FIT_WEATHER_STATUS)20)
|
|
#define FIT_WEATHER_STATUS_HEAVY_RAIN_SNOW ((FIT_WEATHER_STATUS)21)
|
|
#define FIT_WEATHER_STATUS_CLOUDY ((FIT_WEATHER_STATUS)22)
|
|
#define FIT_WEATHER_STATUS_COUNT 21
|
|
|
|
typedef FIT_ENUM FIT_WEATHER_SEVERITY;
|
|
#define FIT_WEATHER_SEVERITY_INVALID FIT_ENUM_INVALID
|
|
#define FIT_WEATHER_SEVERITY_UNKNOWN ((FIT_WEATHER_SEVERITY)0)
|
|
#define FIT_WEATHER_SEVERITY_WARNING ((FIT_WEATHER_SEVERITY)1)
|
|
#define FIT_WEATHER_SEVERITY_WATCH ((FIT_WEATHER_SEVERITY)2)
|
|
#define FIT_WEATHER_SEVERITY_ADVISORY ((FIT_WEATHER_SEVERITY)3)
|
|
#define FIT_WEATHER_SEVERITY_STATEMENT ((FIT_WEATHER_SEVERITY)4)
|
|
#define FIT_WEATHER_SEVERITY_COUNT 5
|
|
|
|
typedef FIT_ENUM FIT_WEATHER_SEVERE_TYPE;
|
|
#define FIT_WEATHER_SEVERE_TYPE_INVALID FIT_ENUM_INVALID
|
|
#define FIT_WEATHER_SEVERE_TYPE_UNSPECIFIED ((FIT_WEATHER_SEVERE_TYPE)0)
|
|
#define FIT_WEATHER_SEVERE_TYPE_TORNADO ((FIT_WEATHER_SEVERE_TYPE)1)
|
|
#define FIT_WEATHER_SEVERE_TYPE_TSUNAMI ((FIT_WEATHER_SEVERE_TYPE)2)
|
|
#define FIT_WEATHER_SEVERE_TYPE_HURRICANE ((FIT_WEATHER_SEVERE_TYPE)3)
|
|
#define FIT_WEATHER_SEVERE_TYPE_EXTREME_WIND ((FIT_WEATHER_SEVERE_TYPE)4)
|
|
#define FIT_WEATHER_SEVERE_TYPE_TYPHOON ((FIT_WEATHER_SEVERE_TYPE)5)
|
|
#define FIT_WEATHER_SEVERE_TYPE_INLAND_HURRICANE ((FIT_WEATHER_SEVERE_TYPE)6)
|
|
#define FIT_WEATHER_SEVERE_TYPE_HURRICANE_FORCE_WIND ((FIT_WEATHER_SEVERE_TYPE)7)
|
|
#define FIT_WEATHER_SEVERE_TYPE_WATERSPOUT ((FIT_WEATHER_SEVERE_TYPE)8)
|
|
#define FIT_WEATHER_SEVERE_TYPE_SEVERE_THUNDERSTORM ((FIT_WEATHER_SEVERE_TYPE)9)
|
|
#define FIT_WEATHER_SEVERE_TYPE_WRECKHOUSE_WINDS ((FIT_WEATHER_SEVERE_TYPE)10)
|
|
#define FIT_WEATHER_SEVERE_TYPE_LES_SUETES_WIND ((FIT_WEATHER_SEVERE_TYPE)11)
|
|
#define FIT_WEATHER_SEVERE_TYPE_AVALANCHE ((FIT_WEATHER_SEVERE_TYPE)12)
|
|
#define FIT_WEATHER_SEVERE_TYPE_FLASH_FLOOD ((FIT_WEATHER_SEVERE_TYPE)13)
|
|
#define FIT_WEATHER_SEVERE_TYPE_TROPICAL_STORM ((FIT_WEATHER_SEVERE_TYPE)14)
|
|
#define FIT_WEATHER_SEVERE_TYPE_INLAND_TROPICAL_STORM ((FIT_WEATHER_SEVERE_TYPE)15)
|
|
#define FIT_WEATHER_SEVERE_TYPE_BLIZZARD ((FIT_WEATHER_SEVERE_TYPE)16)
|
|
#define FIT_WEATHER_SEVERE_TYPE_ICE_STORM ((FIT_WEATHER_SEVERE_TYPE)17)
|
|
#define FIT_WEATHER_SEVERE_TYPE_FREEZING_RAIN ((FIT_WEATHER_SEVERE_TYPE)18)
|
|
#define FIT_WEATHER_SEVERE_TYPE_DEBRIS_FLOW ((FIT_WEATHER_SEVERE_TYPE)19)
|
|
#define FIT_WEATHER_SEVERE_TYPE_FLASH_FREEZE ((FIT_WEATHER_SEVERE_TYPE)20)
|
|
#define FIT_WEATHER_SEVERE_TYPE_DUST_STORM ((FIT_WEATHER_SEVERE_TYPE)21)
|
|
#define FIT_WEATHER_SEVERE_TYPE_HIGH_WIND ((FIT_WEATHER_SEVERE_TYPE)22)
|
|
#define FIT_WEATHER_SEVERE_TYPE_WINTER_STORM ((FIT_WEATHER_SEVERE_TYPE)23)
|
|
#define FIT_WEATHER_SEVERE_TYPE_HEAVY_FREEZING_SPRAY ((FIT_WEATHER_SEVERE_TYPE)24)
|
|
#define FIT_WEATHER_SEVERE_TYPE_EXTREME_COLD ((FIT_WEATHER_SEVERE_TYPE)25)
|
|
#define FIT_WEATHER_SEVERE_TYPE_WIND_CHILL ((FIT_WEATHER_SEVERE_TYPE)26)
|
|
#define FIT_WEATHER_SEVERE_TYPE_COLD_WAVE ((FIT_WEATHER_SEVERE_TYPE)27)
|
|
#define FIT_WEATHER_SEVERE_TYPE_HEAVY_SNOW_ALERT ((FIT_WEATHER_SEVERE_TYPE)28)
|
|
#define FIT_WEATHER_SEVERE_TYPE_LAKE_EFFECT_BLOWING_SNOW ((FIT_WEATHER_SEVERE_TYPE)29)
|
|
#define FIT_WEATHER_SEVERE_TYPE_SNOW_SQUALL ((FIT_WEATHER_SEVERE_TYPE)30)
|
|
#define FIT_WEATHER_SEVERE_TYPE_LAKE_EFFECT_SNOW ((FIT_WEATHER_SEVERE_TYPE)31)
|
|
#define FIT_WEATHER_SEVERE_TYPE_WINTER_WEATHER ((FIT_WEATHER_SEVERE_TYPE)32)
|
|
#define FIT_WEATHER_SEVERE_TYPE_SLEET ((FIT_WEATHER_SEVERE_TYPE)33)
|
|
#define FIT_WEATHER_SEVERE_TYPE_SNOWFALL ((FIT_WEATHER_SEVERE_TYPE)34)
|
|
#define FIT_WEATHER_SEVERE_TYPE_SNOW_AND_BLOWING_SNOW ((FIT_WEATHER_SEVERE_TYPE)35)
|
|
#define FIT_WEATHER_SEVERE_TYPE_BLOWING_SNOW ((FIT_WEATHER_SEVERE_TYPE)36)
|
|
#define FIT_WEATHER_SEVERE_TYPE_SNOW_ALERT ((FIT_WEATHER_SEVERE_TYPE)37)
|
|
#define FIT_WEATHER_SEVERE_TYPE_ARCTIC_OUTFLOW ((FIT_WEATHER_SEVERE_TYPE)38)
|
|
#define FIT_WEATHER_SEVERE_TYPE_FREEZING_DRIZZLE ((FIT_WEATHER_SEVERE_TYPE)39)
|
|
#define FIT_WEATHER_SEVERE_TYPE_STORM ((FIT_WEATHER_SEVERE_TYPE)40)
|
|
#define FIT_WEATHER_SEVERE_TYPE_STORM_SURGE ((FIT_WEATHER_SEVERE_TYPE)41)
|
|
#define FIT_WEATHER_SEVERE_TYPE_RAINFALL ((FIT_WEATHER_SEVERE_TYPE)42)
|
|
#define FIT_WEATHER_SEVERE_TYPE_AREAL_FLOOD ((FIT_WEATHER_SEVERE_TYPE)43)
|
|
#define FIT_WEATHER_SEVERE_TYPE_COASTAL_FLOOD ((FIT_WEATHER_SEVERE_TYPE)44)
|
|
#define FIT_WEATHER_SEVERE_TYPE_LAKESHORE_FLOOD ((FIT_WEATHER_SEVERE_TYPE)45)
|
|
#define FIT_WEATHER_SEVERE_TYPE_EXCESSIVE_HEAT ((FIT_WEATHER_SEVERE_TYPE)46)
|
|
#define FIT_WEATHER_SEVERE_TYPE_HEAT ((FIT_WEATHER_SEVERE_TYPE)47)
|
|
#define FIT_WEATHER_SEVERE_TYPE_WEATHER ((FIT_WEATHER_SEVERE_TYPE)48)
|
|
#define FIT_WEATHER_SEVERE_TYPE_HIGH_HEAT_AND_HUMIDITY ((FIT_WEATHER_SEVERE_TYPE)49)
|
|
#define FIT_WEATHER_SEVERE_TYPE_HUMIDEX_AND_HEALTH ((FIT_WEATHER_SEVERE_TYPE)50)
|
|
#define FIT_WEATHER_SEVERE_TYPE_HUMIDEX ((FIT_WEATHER_SEVERE_TYPE)51)
|
|
#define FIT_WEATHER_SEVERE_TYPE_GALE ((FIT_WEATHER_SEVERE_TYPE)52)
|
|
#define FIT_WEATHER_SEVERE_TYPE_FREEZING_SPRAY ((FIT_WEATHER_SEVERE_TYPE)53)
|
|
#define FIT_WEATHER_SEVERE_TYPE_SPECIAL_MARINE ((FIT_WEATHER_SEVERE_TYPE)54)
|
|
#define FIT_WEATHER_SEVERE_TYPE_SQUALL ((FIT_WEATHER_SEVERE_TYPE)55)
|
|
#define FIT_WEATHER_SEVERE_TYPE_STRONG_WIND ((FIT_WEATHER_SEVERE_TYPE)56)
|
|
#define FIT_WEATHER_SEVERE_TYPE_LAKE_WIND ((FIT_WEATHER_SEVERE_TYPE)57)
|
|
#define FIT_WEATHER_SEVERE_TYPE_MARINE_WEATHER ((FIT_WEATHER_SEVERE_TYPE)58)
|
|
#define FIT_WEATHER_SEVERE_TYPE_WIND ((FIT_WEATHER_SEVERE_TYPE)59)
|
|
#define FIT_WEATHER_SEVERE_TYPE_SMALL_CRAFT_HAZARDOUS_SEAS ((FIT_WEATHER_SEVERE_TYPE)60)
|
|
#define FIT_WEATHER_SEVERE_TYPE_HAZARDOUS_SEAS ((FIT_WEATHER_SEVERE_TYPE)61)
|
|
#define FIT_WEATHER_SEVERE_TYPE_SMALL_CRAFT ((FIT_WEATHER_SEVERE_TYPE)62)
|
|
#define FIT_WEATHER_SEVERE_TYPE_SMALL_CRAFT_WINDS ((FIT_WEATHER_SEVERE_TYPE)63)
|
|
#define FIT_WEATHER_SEVERE_TYPE_SMALL_CRAFT_ROUGH_BAR ((FIT_WEATHER_SEVERE_TYPE)64)
|
|
#define FIT_WEATHER_SEVERE_TYPE_HIGH_WATER_LEVEL ((FIT_WEATHER_SEVERE_TYPE)65)
|
|
#define FIT_WEATHER_SEVERE_TYPE_ASHFALL ((FIT_WEATHER_SEVERE_TYPE)66)
|
|
#define FIT_WEATHER_SEVERE_TYPE_FREEZING_FOG ((FIT_WEATHER_SEVERE_TYPE)67)
|
|
#define FIT_WEATHER_SEVERE_TYPE_DENSE_FOG ((FIT_WEATHER_SEVERE_TYPE)68)
|
|
#define FIT_WEATHER_SEVERE_TYPE_DENSE_SMOKE ((FIT_WEATHER_SEVERE_TYPE)69)
|
|
#define FIT_WEATHER_SEVERE_TYPE_BLOWING_DUST ((FIT_WEATHER_SEVERE_TYPE)70)
|
|
#define FIT_WEATHER_SEVERE_TYPE_HARD_FREEZE ((FIT_WEATHER_SEVERE_TYPE)71)
|
|
#define FIT_WEATHER_SEVERE_TYPE_FREEZE ((FIT_WEATHER_SEVERE_TYPE)72)
|
|
#define FIT_WEATHER_SEVERE_TYPE_FROST ((FIT_WEATHER_SEVERE_TYPE)73)
|
|
#define FIT_WEATHER_SEVERE_TYPE_FIRE_WEATHER ((FIT_WEATHER_SEVERE_TYPE)74)
|
|
#define FIT_WEATHER_SEVERE_TYPE_FLOOD ((FIT_WEATHER_SEVERE_TYPE)75)
|
|
#define FIT_WEATHER_SEVERE_TYPE_RIP_TIDE ((FIT_WEATHER_SEVERE_TYPE)76)
|
|
#define FIT_WEATHER_SEVERE_TYPE_HIGH_SURF ((FIT_WEATHER_SEVERE_TYPE)77)
|
|
#define FIT_WEATHER_SEVERE_TYPE_SMOG ((FIT_WEATHER_SEVERE_TYPE)78)
|
|
#define FIT_WEATHER_SEVERE_TYPE_AIR_QUALITY ((FIT_WEATHER_SEVERE_TYPE)79)
|
|
#define FIT_WEATHER_SEVERE_TYPE_BRISK_WIND ((FIT_WEATHER_SEVERE_TYPE)80)
|
|
#define FIT_WEATHER_SEVERE_TYPE_AIR_STAGNATION ((FIT_WEATHER_SEVERE_TYPE)81)
|
|
#define FIT_WEATHER_SEVERE_TYPE_LOW_WATER ((FIT_WEATHER_SEVERE_TYPE)82)
|
|
#define FIT_WEATHER_SEVERE_TYPE_HYDROLOGICAL ((FIT_WEATHER_SEVERE_TYPE)83)
|
|
#define FIT_WEATHER_SEVERE_TYPE_SPECIAL_WEATHER ((FIT_WEATHER_SEVERE_TYPE)84)
|
|
#define FIT_WEATHER_SEVERE_TYPE_COUNT 85
|
|
|
|
typedef FIT_UINT32 FIT_TIME_INTO_DAY; // number of seconds into the day since 00:00:00 UTC
|
|
#define FIT_TIME_INTO_DAY_INVALID FIT_UINT32_INVALID
|
|
#define FIT_TIME_INTO_DAY_COUNT 0
|
|
|
|
typedef FIT_UINT32 FIT_LOCALTIME_INTO_DAY; // number of seconds into the day since local 00:00:00
|
|
#define FIT_LOCALTIME_INTO_DAY_INVALID FIT_UINT32_INVALID
|
|
#define FIT_LOCALTIME_INTO_DAY_COUNT 0
|
|
|
|
typedef FIT_ENUM FIT_STROKE_TYPE;
|
|
#define FIT_STROKE_TYPE_INVALID FIT_ENUM_INVALID
|
|
#define FIT_STROKE_TYPE_NO_EVENT ((FIT_STROKE_TYPE)0)
|
|
#define FIT_STROKE_TYPE_OTHER ((FIT_STROKE_TYPE)1) // stroke was detected but cannot be identified
|
|
#define FIT_STROKE_TYPE_SERVE ((FIT_STROKE_TYPE)2)
|
|
#define FIT_STROKE_TYPE_FOREHAND ((FIT_STROKE_TYPE)3)
|
|
#define FIT_STROKE_TYPE_BACKHAND ((FIT_STROKE_TYPE)4)
|
|
#define FIT_STROKE_TYPE_SMASH ((FIT_STROKE_TYPE)5)
|
|
#define FIT_STROKE_TYPE_COUNT 6
|
|
|
|
typedef FIT_ENUM FIT_BODY_LOCATION;
|
|
#define FIT_BODY_LOCATION_INVALID FIT_ENUM_INVALID
|
|
#define FIT_BODY_LOCATION_LEFT_LEG ((FIT_BODY_LOCATION)0)
|
|
#define FIT_BODY_LOCATION_LEFT_CALF ((FIT_BODY_LOCATION)1)
|
|
#define FIT_BODY_LOCATION_LEFT_SHIN ((FIT_BODY_LOCATION)2)
|
|
#define FIT_BODY_LOCATION_LEFT_HAMSTRING ((FIT_BODY_LOCATION)3)
|
|
#define FIT_BODY_LOCATION_LEFT_QUAD ((FIT_BODY_LOCATION)4)
|
|
#define FIT_BODY_LOCATION_LEFT_GLUTE ((FIT_BODY_LOCATION)5)
|
|
#define FIT_BODY_LOCATION_RIGHT_LEG ((FIT_BODY_LOCATION)6)
|
|
#define FIT_BODY_LOCATION_RIGHT_CALF ((FIT_BODY_LOCATION)7)
|
|
#define FIT_BODY_LOCATION_RIGHT_SHIN ((FIT_BODY_LOCATION)8)
|
|
#define FIT_BODY_LOCATION_RIGHT_HAMSTRING ((FIT_BODY_LOCATION)9)
|
|
#define FIT_BODY_LOCATION_RIGHT_QUAD ((FIT_BODY_LOCATION)10)
|
|
#define FIT_BODY_LOCATION_RIGHT_GLUTE ((FIT_BODY_LOCATION)11)
|
|
#define FIT_BODY_LOCATION_TORSO_BACK ((FIT_BODY_LOCATION)12)
|
|
#define FIT_BODY_LOCATION_LEFT_LOWER_BACK ((FIT_BODY_LOCATION)13)
|
|
#define FIT_BODY_LOCATION_LEFT_UPPER_BACK ((FIT_BODY_LOCATION)14)
|
|
#define FIT_BODY_LOCATION_RIGHT_LOWER_BACK ((FIT_BODY_LOCATION)15)
|
|
#define FIT_BODY_LOCATION_RIGHT_UPPER_BACK ((FIT_BODY_LOCATION)16)
|
|
#define FIT_BODY_LOCATION_TORSO_FRONT ((FIT_BODY_LOCATION)17)
|
|
#define FIT_BODY_LOCATION_LEFT_ABDOMEN ((FIT_BODY_LOCATION)18)
|
|
#define FIT_BODY_LOCATION_LEFT_CHEST ((FIT_BODY_LOCATION)19)
|
|
#define FIT_BODY_LOCATION_RIGHT_ABDOMEN ((FIT_BODY_LOCATION)20)
|
|
#define FIT_BODY_LOCATION_RIGHT_CHEST ((FIT_BODY_LOCATION)21)
|
|
#define FIT_BODY_LOCATION_LEFT_ARM ((FIT_BODY_LOCATION)22)
|
|
#define FIT_BODY_LOCATION_LEFT_SHOULDER ((FIT_BODY_LOCATION)23)
|
|
#define FIT_BODY_LOCATION_LEFT_BICEP ((FIT_BODY_LOCATION)24)
|
|
#define FIT_BODY_LOCATION_LEFT_TRICEP ((FIT_BODY_LOCATION)25)
|
|
#define FIT_BODY_LOCATION_LEFT_BRACHIORADIALIS ((FIT_BODY_LOCATION)26) // Left anterior forearm
|
|
#define FIT_BODY_LOCATION_LEFT_FOREARM_EXTENSORS ((FIT_BODY_LOCATION)27) // Left posterior forearm
|
|
#define FIT_BODY_LOCATION_RIGHT_ARM ((FIT_BODY_LOCATION)28)
|
|
#define FIT_BODY_LOCATION_RIGHT_SHOULDER ((FIT_BODY_LOCATION)29)
|
|
#define FIT_BODY_LOCATION_RIGHT_BICEP ((FIT_BODY_LOCATION)30)
|
|
#define FIT_BODY_LOCATION_RIGHT_TRICEP ((FIT_BODY_LOCATION)31)
|
|
#define FIT_BODY_LOCATION_RIGHT_BRACHIORADIALIS ((FIT_BODY_LOCATION)32) // Right anterior forearm
|
|
#define FIT_BODY_LOCATION_RIGHT_FOREARM_EXTENSORS ((FIT_BODY_LOCATION)33) // Right posterior forearm
|
|
#define FIT_BODY_LOCATION_NECK ((FIT_BODY_LOCATION)34)
|
|
#define FIT_BODY_LOCATION_THROAT ((FIT_BODY_LOCATION)35)
|
|
#define FIT_BODY_LOCATION_WAIST_MID_BACK ((FIT_BODY_LOCATION)36)
|
|
#define FIT_BODY_LOCATION_WAIST_FRONT ((FIT_BODY_LOCATION)37)
|
|
#define FIT_BODY_LOCATION_WAIST_LEFT ((FIT_BODY_LOCATION)38)
|
|
#define FIT_BODY_LOCATION_WAIST_RIGHT ((FIT_BODY_LOCATION)39)
|
|
#define FIT_BODY_LOCATION_COUNT 40
|
|
|
|
typedef FIT_ENUM FIT_SEGMENT_LAP_STATUS;
|
|
#define FIT_SEGMENT_LAP_STATUS_INVALID FIT_ENUM_INVALID
|
|
#define FIT_SEGMENT_LAP_STATUS_END ((FIT_SEGMENT_LAP_STATUS)0)
|
|
#define FIT_SEGMENT_LAP_STATUS_FAIL ((FIT_SEGMENT_LAP_STATUS)1)
|
|
#define FIT_SEGMENT_LAP_STATUS_COUNT 2
|
|
|
|
typedef FIT_ENUM FIT_SEGMENT_LEADERBOARD_TYPE;
|
|
#define FIT_SEGMENT_LEADERBOARD_TYPE_INVALID FIT_ENUM_INVALID
|
|
#define FIT_SEGMENT_LEADERBOARD_TYPE_OVERALL ((FIT_SEGMENT_LEADERBOARD_TYPE)0)
|
|
#define FIT_SEGMENT_LEADERBOARD_TYPE_PERSONAL_BEST ((FIT_SEGMENT_LEADERBOARD_TYPE)1)
|
|
#define FIT_SEGMENT_LEADERBOARD_TYPE_CONNECTIONS ((FIT_SEGMENT_LEADERBOARD_TYPE)2)
|
|
#define FIT_SEGMENT_LEADERBOARD_TYPE_GROUP ((FIT_SEGMENT_LEADERBOARD_TYPE)3)
|
|
#define FIT_SEGMENT_LEADERBOARD_TYPE_CHALLENGER ((FIT_SEGMENT_LEADERBOARD_TYPE)4)
|
|
#define FIT_SEGMENT_LEADERBOARD_TYPE_KOM ((FIT_SEGMENT_LEADERBOARD_TYPE)5)
|
|
#define FIT_SEGMENT_LEADERBOARD_TYPE_QOM ((FIT_SEGMENT_LEADERBOARD_TYPE)6)
|
|
#define FIT_SEGMENT_LEADERBOARD_TYPE_PR ((FIT_SEGMENT_LEADERBOARD_TYPE)7)
|
|
#define FIT_SEGMENT_LEADERBOARD_TYPE_GOAL ((FIT_SEGMENT_LEADERBOARD_TYPE)8)
|
|
#define FIT_SEGMENT_LEADERBOARD_TYPE_RIVAL ((FIT_SEGMENT_LEADERBOARD_TYPE)9)
|
|
#define FIT_SEGMENT_LEADERBOARD_TYPE_CLUB_LEADER ((FIT_SEGMENT_LEADERBOARD_TYPE)10)
|
|
#define FIT_SEGMENT_LEADERBOARD_TYPE_COUNT 11
|
|
|
|
typedef FIT_ENUM FIT_SEGMENT_DELETE_STATUS;
|
|
#define FIT_SEGMENT_DELETE_STATUS_INVALID FIT_ENUM_INVALID
|
|
#define FIT_SEGMENT_DELETE_STATUS_DO_NOT_DELETE ((FIT_SEGMENT_DELETE_STATUS)0)
|
|
#define FIT_SEGMENT_DELETE_STATUS_DELETE_ONE ((FIT_SEGMENT_DELETE_STATUS)1)
|
|
#define FIT_SEGMENT_DELETE_STATUS_DELETE_ALL ((FIT_SEGMENT_DELETE_STATUS)2)
|
|
#define FIT_SEGMENT_DELETE_STATUS_COUNT 3
|
|
|
|
typedef FIT_ENUM FIT_SEGMENT_SELECTION_TYPE;
|
|
#define FIT_SEGMENT_SELECTION_TYPE_INVALID FIT_ENUM_INVALID
|
|
#define FIT_SEGMENT_SELECTION_TYPE_STARRED ((FIT_SEGMENT_SELECTION_TYPE)0)
|
|
#define FIT_SEGMENT_SELECTION_TYPE_SUGGESTED ((FIT_SEGMENT_SELECTION_TYPE)1)
|
|
#define FIT_SEGMENT_SELECTION_TYPE_COUNT 2
|
|
|
|
typedef FIT_ENUM FIT_SOURCE_TYPE;
|
|
#define FIT_SOURCE_TYPE_INVALID FIT_ENUM_INVALID
|
|
#define FIT_SOURCE_TYPE_ANT ((FIT_SOURCE_TYPE)0) // External device connected with ANT
|
|
#define FIT_SOURCE_TYPE_ANTPLUS ((FIT_SOURCE_TYPE)1) // External device connected with ANT+
|
|
#define FIT_SOURCE_TYPE_BLUETOOTH ((FIT_SOURCE_TYPE)2) // External device connected with BT
|
|
#define FIT_SOURCE_TYPE_BLUETOOTH_LOW_ENERGY ((FIT_SOURCE_TYPE)3) // External device connected with BLE
|
|
#define FIT_SOURCE_TYPE_WIFI ((FIT_SOURCE_TYPE)4) // External device connected with Wifi
|
|
#define FIT_SOURCE_TYPE_LOCAL ((FIT_SOURCE_TYPE)5) // Onboard device
|
|
#define FIT_SOURCE_TYPE_COUNT 6
|
|
|
|
typedef FIT_UINT8 FIT_LOCAL_DEVICE_TYPE;
|
|
#define FIT_LOCAL_DEVICE_TYPE_INVALID FIT_UINT8_INVALID
|
|
#define FIT_LOCAL_DEVICE_TYPE_GPS ((FIT_LOCAL_DEVICE_TYPE)0) // Onboard gps receiver
|
|
#define FIT_LOCAL_DEVICE_TYPE_GLONASS ((FIT_LOCAL_DEVICE_TYPE)1) // Onboard glonass receiver
|
|
#define FIT_LOCAL_DEVICE_TYPE_GPS_GLONASS ((FIT_LOCAL_DEVICE_TYPE)2) // Onboard gps glonass receiver
|
|
#define FIT_LOCAL_DEVICE_TYPE_ACCELEROMETER ((FIT_LOCAL_DEVICE_TYPE)3) // Onboard sensor
|
|
#define FIT_LOCAL_DEVICE_TYPE_BAROMETER ((FIT_LOCAL_DEVICE_TYPE)4) // Onboard sensor
|
|
#define FIT_LOCAL_DEVICE_TYPE_TEMPERATURE ((FIT_LOCAL_DEVICE_TYPE)5) // Onboard sensor
|
|
#define FIT_LOCAL_DEVICE_TYPE_WHR ((FIT_LOCAL_DEVICE_TYPE)10) // Onboard wrist HR sensor
|
|
#define FIT_LOCAL_DEVICE_TYPE_SENSOR_HUB ((FIT_LOCAL_DEVICE_TYPE)12) // Onboard software package
|
|
#define FIT_LOCAL_DEVICE_TYPE_COUNT 8
|
|
|
|
typedef FIT_UINT8 FIT_BLE_DEVICE_TYPE;
|
|
#define FIT_BLE_DEVICE_TYPE_INVALID FIT_UINT8_INVALID
|
|
#define FIT_BLE_DEVICE_TYPE_CONNECTED_GPS ((FIT_BLE_DEVICE_TYPE)0) // GPS that is provided over a proprietary bluetooth service
|
|
#define FIT_BLE_DEVICE_TYPE_HEART_RATE ((FIT_BLE_DEVICE_TYPE)1)
|
|
#define FIT_BLE_DEVICE_TYPE_BIKE_POWER ((FIT_BLE_DEVICE_TYPE)2)
|
|
#define FIT_BLE_DEVICE_TYPE_BIKE_SPEED_CADENCE ((FIT_BLE_DEVICE_TYPE)3)
|
|
#define FIT_BLE_DEVICE_TYPE_BIKE_SPEED ((FIT_BLE_DEVICE_TYPE)4)
|
|
#define FIT_BLE_DEVICE_TYPE_BIKE_CADENCE ((FIT_BLE_DEVICE_TYPE)5)
|
|
#define FIT_BLE_DEVICE_TYPE_FOOTPOD ((FIT_BLE_DEVICE_TYPE)6)
|
|
#define FIT_BLE_DEVICE_TYPE_BIKE_TRAINER ((FIT_BLE_DEVICE_TYPE)7) // Indoor-Bike FTMS protocol
|
|
#define FIT_BLE_DEVICE_TYPE_COUNT 8
|
|
|
|
typedef FIT_UINT32Z FIT_ANT_CHANNEL_ID;
|
|
#define FIT_ANT_CHANNEL_ID_INVALID FIT_UINT32Z_INVALID
|
|
#define FIT_ANT_CHANNEL_ID_ANT_EXTENDED_DEVICE_NUMBER_UPPER_NIBBLE ((FIT_ANT_CHANNEL_ID)0xF0000000)
|
|
#define FIT_ANT_CHANNEL_ID_ANT_TRANSMISSION_TYPE_LOWER_NIBBLE ((FIT_ANT_CHANNEL_ID)0x0F000000)
|
|
#define FIT_ANT_CHANNEL_ID_ANT_DEVICE_TYPE ((FIT_ANT_CHANNEL_ID)0x00FF0000)
|
|
#define FIT_ANT_CHANNEL_ID_ANT_DEVICE_NUMBER ((FIT_ANT_CHANNEL_ID)0x0000FFFF)
|
|
#define FIT_ANT_CHANNEL_ID_COUNT 4
|
|
|
|
typedef FIT_ENUM FIT_DISPLAY_ORIENTATION;
|
|
#define FIT_DISPLAY_ORIENTATION_INVALID FIT_ENUM_INVALID
|
|
#define FIT_DISPLAY_ORIENTATION_AUTO ((FIT_DISPLAY_ORIENTATION)0) // automatic if the device supports it
|
|
#define FIT_DISPLAY_ORIENTATION_PORTRAIT ((FIT_DISPLAY_ORIENTATION)1)
|
|
#define FIT_DISPLAY_ORIENTATION_LANDSCAPE ((FIT_DISPLAY_ORIENTATION)2)
|
|
#define FIT_DISPLAY_ORIENTATION_PORTRAIT_FLIPPED ((FIT_DISPLAY_ORIENTATION)3) // portrait mode but rotated 180 degrees
|
|
#define FIT_DISPLAY_ORIENTATION_LANDSCAPE_FLIPPED ((FIT_DISPLAY_ORIENTATION)4) // landscape mode but rotated 180 degrees
|
|
#define FIT_DISPLAY_ORIENTATION_COUNT 5
|
|
|
|
typedef FIT_ENUM FIT_WORKOUT_EQUIPMENT;
|
|
#define FIT_WORKOUT_EQUIPMENT_INVALID FIT_ENUM_INVALID
|
|
#define FIT_WORKOUT_EQUIPMENT_NONE ((FIT_WORKOUT_EQUIPMENT)0)
|
|
#define FIT_WORKOUT_EQUIPMENT_SWIM_FINS ((FIT_WORKOUT_EQUIPMENT)1)
|
|
#define FIT_WORKOUT_EQUIPMENT_SWIM_KICKBOARD ((FIT_WORKOUT_EQUIPMENT)2)
|
|
#define FIT_WORKOUT_EQUIPMENT_SWIM_PADDLES ((FIT_WORKOUT_EQUIPMENT)3)
|
|
#define FIT_WORKOUT_EQUIPMENT_SWIM_PULL_BUOY ((FIT_WORKOUT_EQUIPMENT)4)
|
|
#define FIT_WORKOUT_EQUIPMENT_SWIM_SNORKEL ((FIT_WORKOUT_EQUIPMENT)5)
|
|
#define FIT_WORKOUT_EQUIPMENT_COUNT 6
|
|
|
|
typedef FIT_ENUM FIT_WATCHFACE_MODE;
|
|
#define FIT_WATCHFACE_MODE_INVALID FIT_ENUM_INVALID
|
|
#define FIT_WATCHFACE_MODE_DIGITAL ((FIT_WATCHFACE_MODE)0)
|
|
#define FIT_WATCHFACE_MODE_ANALOG ((FIT_WATCHFACE_MODE)1)
|
|
#define FIT_WATCHFACE_MODE_CONNECT_IQ ((FIT_WATCHFACE_MODE)2)
|
|
#define FIT_WATCHFACE_MODE_DISABLED ((FIT_WATCHFACE_MODE)3)
|
|
#define FIT_WATCHFACE_MODE_COUNT 4
|
|
|
|
typedef FIT_ENUM FIT_DIGITAL_WATCHFACE_LAYOUT;
|
|
#define FIT_DIGITAL_WATCHFACE_LAYOUT_INVALID FIT_ENUM_INVALID
|
|
#define FIT_DIGITAL_WATCHFACE_LAYOUT_TRADITIONAL ((FIT_DIGITAL_WATCHFACE_LAYOUT)0)
|
|
#define FIT_DIGITAL_WATCHFACE_LAYOUT_MODERN ((FIT_DIGITAL_WATCHFACE_LAYOUT)1)
|
|
#define FIT_DIGITAL_WATCHFACE_LAYOUT_BOLD ((FIT_DIGITAL_WATCHFACE_LAYOUT)2)
|
|
#define FIT_DIGITAL_WATCHFACE_LAYOUT_COUNT 3
|
|
|
|
typedef FIT_ENUM FIT_ANALOG_WATCHFACE_LAYOUT;
|
|
#define FIT_ANALOG_WATCHFACE_LAYOUT_INVALID FIT_ENUM_INVALID
|
|
#define FIT_ANALOG_WATCHFACE_LAYOUT_MINIMAL ((FIT_ANALOG_WATCHFACE_LAYOUT)0)
|
|
#define FIT_ANALOG_WATCHFACE_LAYOUT_TRADITIONAL ((FIT_ANALOG_WATCHFACE_LAYOUT)1)
|
|
#define FIT_ANALOG_WATCHFACE_LAYOUT_MODERN ((FIT_ANALOG_WATCHFACE_LAYOUT)2)
|
|
#define FIT_ANALOG_WATCHFACE_LAYOUT_COUNT 3
|
|
|
|
typedef FIT_ENUM FIT_RIDER_POSITION_TYPE;
|
|
#define FIT_RIDER_POSITION_TYPE_INVALID FIT_ENUM_INVALID
|
|
#define FIT_RIDER_POSITION_TYPE_SEATED ((FIT_RIDER_POSITION_TYPE)0)
|
|
#define FIT_RIDER_POSITION_TYPE_STANDING ((FIT_RIDER_POSITION_TYPE)1)
|
|
#define FIT_RIDER_POSITION_TYPE_TRANSITION_TO_SEATED ((FIT_RIDER_POSITION_TYPE)2)
|
|
#define FIT_RIDER_POSITION_TYPE_TRANSITION_TO_STANDING ((FIT_RIDER_POSITION_TYPE)3)
|
|
#define FIT_RIDER_POSITION_TYPE_COUNT 4
|
|
|
|
typedef FIT_ENUM FIT_POWER_PHASE_TYPE;
|
|
#define FIT_POWER_PHASE_TYPE_INVALID FIT_ENUM_INVALID
|
|
#define FIT_POWER_PHASE_TYPE_POWER_PHASE_START_ANGLE ((FIT_POWER_PHASE_TYPE)0)
|
|
#define FIT_POWER_PHASE_TYPE_POWER_PHASE_END_ANGLE ((FIT_POWER_PHASE_TYPE)1)
|
|
#define FIT_POWER_PHASE_TYPE_POWER_PHASE_ARC_LENGTH ((FIT_POWER_PHASE_TYPE)2)
|
|
#define FIT_POWER_PHASE_TYPE_POWER_PHASE_CENTER ((FIT_POWER_PHASE_TYPE)3)
|
|
#define FIT_POWER_PHASE_TYPE_COUNT 4
|
|
|
|
typedef FIT_ENUM FIT_CAMERA_EVENT_TYPE;
|
|
#define FIT_CAMERA_EVENT_TYPE_INVALID FIT_ENUM_INVALID
|
|
#define FIT_CAMERA_EVENT_TYPE_VIDEO_START ((FIT_CAMERA_EVENT_TYPE)0) // Start of video recording
|
|
#define FIT_CAMERA_EVENT_TYPE_VIDEO_SPLIT ((FIT_CAMERA_EVENT_TYPE)1) // Mark of video file split (end of one file, beginning of the other)
|
|
#define FIT_CAMERA_EVENT_TYPE_VIDEO_END ((FIT_CAMERA_EVENT_TYPE)2) // End of video recording
|
|
#define FIT_CAMERA_EVENT_TYPE_PHOTO_TAKEN ((FIT_CAMERA_EVENT_TYPE)3) // Still photo taken
|
|
#define FIT_CAMERA_EVENT_TYPE_VIDEO_SECOND_STREAM_START ((FIT_CAMERA_EVENT_TYPE)4)
|
|
#define FIT_CAMERA_EVENT_TYPE_VIDEO_SECOND_STREAM_SPLIT ((FIT_CAMERA_EVENT_TYPE)5)
|
|
#define FIT_CAMERA_EVENT_TYPE_VIDEO_SECOND_STREAM_END ((FIT_CAMERA_EVENT_TYPE)6)
|
|
#define FIT_CAMERA_EVENT_TYPE_VIDEO_SPLIT_START ((FIT_CAMERA_EVENT_TYPE)7) // Mark of video file split start
|
|
#define FIT_CAMERA_EVENT_TYPE_VIDEO_SECOND_STREAM_SPLIT_START ((FIT_CAMERA_EVENT_TYPE)8)
|
|
#define FIT_CAMERA_EVENT_TYPE_VIDEO_PAUSE ((FIT_CAMERA_EVENT_TYPE)11) // Mark when a video recording has been paused
|
|
#define FIT_CAMERA_EVENT_TYPE_VIDEO_SECOND_STREAM_PAUSE ((FIT_CAMERA_EVENT_TYPE)12)
|
|
#define FIT_CAMERA_EVENT_TYPE_VIDEO_RESUME ((FIT_CAMERA_EVENT_TYPE)13) // Mark when a video recording has been resumed
|
|
#define FIT_CAMERA_EVENT_TYPE_VIDEO_SECOND_STREAM_RESUME ((FIT_CAMERA_EVENT_TYPE)14)
|
|
#define FIT_CAMERA_EVENT_TYPE_COUNT 13
|
|
|
|
typedef FIT_ENUM FIT_SENSOR_TYPE;
|
|
#define FIT_SENSOR_TYPE_INVALID FIT_ENUM_INVALID
|
|
#define FIT_SENSOR_TYPE_ACCELEROMETER ((FIT_SENSOR_TYPE)0)
|
|
#define FIT_SENSOR_TYPE_GYROSCOPE ((FIT_SENSOR_TYPE)1)
|
|
#define FIT_SENSOR_TYPE_COMPASS ((FIT_SENSOR_TYPE)2) // Magnetometer
|
|
#define FIT_SENSOR_TYPE_BAROMETER ((FIT_SENSOR_TYPE)3)
|
|
#define FIT_SENSOR_TYPE_COUNT 4
|
|
|
|
typedef FIT_ENUM FIT_BIKE_LIGHT_NETWORK_CONFIG_TYPE;
|
|
#define FIT_BIKE_LIGHT_NETWORK_CONFIG_TYPE_INVALID FIT_ENUM_INVALID
|
|
#define FIT_BIKE_LIGHT_NETWORK_CONFIG_TYPE_AUTO ((FIT_BIKE_LIGHT_NETWORK_CONFIG_TYPE)0)
|
|
#define FIT_BIKE_LIGHT_NETWORK_CONFIG_TYPE_INDIVIDUAL ((FIT_BIKE_LIGHT_NETWORK_CONFIG_TYPE)4)
|
|
#define FIT_BIKE_LIGHT_NETWORK_CONFIG_TYPE_HIGH_VISIBILITY ((FIT_BIKE_LIGHT_NETWORK_CONFIG_TYPE)5)
|
|
#define FIT_BIKE_LIGHT_NETWORK_CONFIG_TYPE_TRAIL ((FIT_BIKE_LIGHT_NETWORK_CONFIG_TYPE)6)
|
|
#define FIT_BIKE_LIGHT_NETWORK_CONFIG_TYPE_COUNT 4
|
|
|
|
typedef FIT_UINT16 FIT_COMM_TIMEOUT_TYPE;
|
|
#define FIT_COMM_TIMEOUT_TYPE_INVALID FIT_UINT16_INVALID
|
|
#define FIT_COMM_TIMEOUT_TYPE_WILDCARD_PAIRING_TIMEOUT ((FIT_COMM_TIMEOUT_TYPE)0) // Timeout pairing to any device
|
|
#define FIT_COMM_TIMEOUT_TYPE_PAIRING_TIMEOUT ((FIT_COMM_TIMEOUT_TYPE)1) // Timeout pairing to previously paired device
|
|
#define FIT_COMM_TIMEOUT_TYPE_CONNECTION_LOST ((FIT_COMM_TIMEOUT_TYPE)2) // Temporary loss of communications
|
|
#define FIT_COMM_TIMEOUT_TYPE_CONNECTION_TIMEOUT ((FIT_COMM_TIMEOUT_TYPE)3) // Connection closed due to extended bad communications
|
|
#define FIT_COMM_TIMEOUT_TYPE_COUNT 4
|
|
|
|
typedef FIT_ENUM FIT_CAMERA_ORIENTATION_TYPE;
|
|
#define FIT_CAMERA_ORIENTATION_TYPE_INVALID FIT_ENUM_INVALID
|
|
#define FIT_CAMERA_ORIENTATION_TYPE_CAMERA_ORIENTATION_0 ((FIT_CAMERA_ORIENTATION_TYPE)0)
|
|
#define FIT_CAMERA_ORIENTATION_TYPE_CAMERA_ORIENTATION_90 ((FIT_CAMERA_ORIENTATION_TYPE)1)
|
|
#define FIT_CAMERA_ORIENTATION_TYPE_CAMERA_ORIENTATION_180 ((FIT_CAMERA_ORIENTATION_TYPE)2)
|
|
#define FIT_CAMERA_ORIENTATION_TYPE_CAMERA_ORIENTATION_270 ((FIT_CAMERA_ORIENTATION_TYPE)3)
|
|
#define FIT_CAMERA_ORIENTATION_TYPE_COUNT 4
|
|
|
|
typedef FIT_ENUM FIT_ATTITUDE_STAGE;
|
|
#define FIT_ATTITUDE_STAGE_INVALID FIT_ENUM_INVALID
|
|
#define FIT_ATTITUDE_STAGE_FAILED ((FIT_ATTITUDE_STAGE)0)
|
|
#define FIT_ATTITUDE_STAGE_ALIGNING ((FIT_ATTITUDE_STAGE)1)
|
|
#define FIT_ATTITUDE_STAGE_DEGRADED ((FIT_ATTITUDE_STAGE)2)
|
|
#define FIT_ATTITUDE_STAGE_VALID ((FIT_ATTITUDE_STAGE)3)
|
|
#define FIT_ATTITUDE_STAGE_COUNT 4
|
|
|
|
typedef FIT_UINT16 FIT_ATTITUDE_VALIDITY;
|
|
#define FIT_ATTITUDE_VALIDITY_INVALID FIT_UINT16_INVALID
|
|
#define FIT_ATTITUDE_VALIDITY_TRACK_ANGLE_HEADING_VALID ((FIT_ATTITUDE_VALIDITY)0x0001)
|
|
#define FIT_ATTITUDE_VALIDITY_PITCH_VALID ((FIT_ATTITUDE_VALIDITY)0x0002)
|
|
#define FIT_ATTITUDE_VALIDITY_ROLL_VALID ((FIT_ATTITUDE_VALIDITY)0x0004)
|
|
#define FIT_ATTITUDE_VALIDITY_LATERAL_BODY_ACCEL_VALID ((FIT_ATTITUDE_VALIDITY)0x0008)
|
|
#define FIT_ATTITUDE_VALIDITY_NORMAL_BODY_ACCEL_VALID ((FIT_ATTITUDE_VALIDITY)0x0010)
|
|
#define FIT_ATTITUDE_VALIDITY_TURN_RATE_VALID ((FIT_ATTITUDE_VALIDITY)0x0020)
|
|
#define FIT_ATTITUDE_VALIDITY_HW_FAIL ((FIT_ATTITUDE_VALIDITY)0x0040)
|
|
#define FIT_ATTITUDE_VALIDITY_MAG_INVALID ((FIT_ATTITUDE_VALIDITY)0x0080)
|
|
#define FIT_ATTITUDE_VALIDITY_NO_GPS ((FIT_ATTITUDE_VALIDITY)0x0100)
|
|
#define FIT_ATTITUDE_VALIDITY_GPS_INVALID ((FIT_ATTITUDE_VALIDITY)0x0200)
|
|
#define FIT_ATTITUDE_VALIDITY_SOLUTION_COASTING ((FIT_ATTITUDE_VALIDITY)0x0400)
|
|
#define FIT_ATTITUDE_VALIDITY_TRUE_TRACK_ANGLE ((FIT_ATTITUDE_VALIDITY)0x0800)
|
|
#define FIT_ATTITUDE_VALIDITY_MAGNETIC_HEADING ((FIT_ATTITUDE_VALIDITY)0x1000)
|
|
#define FIT_ATTITUDE_VALIDITY_COUNT 13
|
|
|
|
typedef FIT_ENUM FIT_AUTO_SYNC_FREQUENCY;
|
|
#define FIT_AUTO_SYNC_FREQUENCY_INVALID FIT_ENUM_INVALID
|
|
#define FIT_AUTO_SYNC_FREQUENCY_NEVER ((FIT_AUTO_SYNC_FREQUENCY)0)
|
|
#define FIT_AUTO_SYNC_FREQUENCY_OCCASIONALLY ((FIT_AUTO_SYNC_FREQUENCY)1)
|
|
#define FIT_AUTO_SYNC_FREQUENCY_FREQUENT ((FIT_AUTO_SYNC_FREQUENCY)2)
|
|
#define FIT_AUTO_SYNC_FREQUENCY_ONCE_A_DAY ((FIT_AUTO_SYNC_FREQUENCY)3)
|
|
#define FIT_AUTO_SYNC_FREQUENCY_REMOTE ((FIT_AUTO_SYNC_FREQUENCY)4)
|
|
#define FIT_AUTO_SYNC_FREQUENCY_COUNT 5
|
|
|
|
typedef FIT_ENUM FIT_EXD_LAYOUT;
|
|
#define FIT_EXD_LAYOUT_INVALID FIT_ENUM_INVALID
|
|
#define FIT_EXD_LAYOUT_FULL_SCREEN ((FIT_EXD_LAYOUT)0)
|
|
#define FIT_EXD_LAYOUT_HALF_VERTICAL ((FIT_EXD_LAYOUT)1)
|
|
#define FIT_EXD_LAYOUT_HALF_HORIZONTAL ((FIT_EXD_LAYOUT)2)
|
|
#define FIT_EXD_LAYOUT_HALF_VERTICAL_RIGHT_SPLIT ((FIT_EXD_LAYOUT)3)
|
|
#define FIT_EXD_LAYOUT_HALF_HORIZONTAL_BOTTOM_SPLIT ((FIT_EXD_LAYOUT)4)
|
|
#define FIT_EXD_LAYOUT_FULL_QUARTER_SPLIT ((FIT_EXD_LAYOUT)5)
|
|
#define FIT_EXD_LAYOUT_HALF_VERTICAL_LEFT_SPLIT ((FIT_EXD_LAYOUT)6)
|
|
#define FIT_EXD_LAYOUT_HALF_HORIZONTAL_TOP_SPLIT ((FIT_EXD_LAYOUT)7)
|
|
#define FIT_EXD_LAYOUT_DYNAMIC ((FIT_EXD_LAYOUT)8) // The EXD may display the configured concepts in any layout it sees fit.
|
|
#define FIT_EXD_LAYOUT_COUNT 9
|
|
|
|
typedef FIT_ENUM FIT_EXD_DISPLAY_TYPE;
|
|
#define FIT_EXD_DISPLAY_TYPE_INVALID FIT_ENUM_INVALID
|
|
#define FIT_EXD_DISPLAY_TYPE_NUMERICAL ((FIT_EXD_DISPLAY_TYPE)0)
|
|
#define FIT_EXD_DISPLAY_TYPE_SIMPLE ((FIT_EXD_DISPLAY_TYPE)1)
|
|
#define FIT_EXD_DISPLAY_TYPE_GRAPH ((FIT_EXD_DISPLAY_TYPE)2)
|
|
#define FIT_EXD_DISPLAY_TYPE_BAR ((FIT_EXD_DISPLAY_TYPE)3)
|
|
#define FIT_EXD_DISPLAY_TYPE_CIRCLE_GRAPH ((FIT_EXD_DISPLAY_TYPE)4)
|
|
#define FIT_EXD_DISPLAY_TYPE_VIRTUAL_PARTNER ((FIT_EXD_DISPLAY_TYPE)5)
|
|
#define FIT_EXD_DISPLAY_TYPE_BALANCE ((FIT_EXD_DISPLAY_TYPE)6)
|
|
#define FIT_EXD_DISPLAY_TYPE_STRING_LIST ((FIT_EXD_DISPLAY_TYPE)7)
|
|
#define FIT_EXD_DISPLAY_TYPE_STRING ((FIT_EXD_DISPLAY_TYPE)8)
|
|
#define FIT_EXD_DISPLAY_TYPE_SIMPLE_DYNAMIC_ICON ((FIT_EXD_DISPLAY_TYPE)9)
|
|
#define FIT_EXD_DISPLAY_TYPE_GAUGE ((FIT_EXD_DISPLAY_TYPE)10)
|
|
#define FIT_EXD_DISPLAY_TYPE_COUNT 11
|
|
|
|
typedef FIT_ENUM FIT_EXD_DATA_UNITS;
|
|
#define FIT_EXD_DATA_UNITS_INVALID FIT_ENUM_INVALID
|
|
#define FIT_EXD_DATA_UNITS_NO_UNITS ((FIT_EXD_DATA_UNITS)0)
|
|
#define FIT_EXD_DATA_UNITS_LAPS ((FIT_EXD_DATA_UNITS)1)
|
|
#define FIT_EXD_DATA_UNITS_MILES_PER_HOUR ((FIT_EXD_DATA_UNITS)2)
|
|
#define FIT_EXD_DATA_UNITS_KILOMETERS_PER_HOUR ((FIT_EXD_DATA_UNITS)3)
|
|
#define FIT_EXD_DATA_UNITS_FEET_PER_HOUR ((FIT_EXD_DATA_UNITS)4)
|
|
#define FIT_EXD_DATA_UNITS_METERS_PER_HOUR ((FIT_EXD_DATA_UNITS)5)
|
|
#define FIT_EXD_DATA_UNITS_DEGREES_CELSIUS ((FIT_EXD_DATA_UNITS)6)
|
|
#define FIT_EXD_DATA_UNITS_DEGREES_FARENHEIT ((FIT_EXD_DATA_UNITS)7)
|
|
#define FIT_EXD_DATA_UNITS_ZONE ((FIT_EXD_DATA_UNITS)8)
|
|
#define FIT_EXD_DATA_UNITS_GEAR ((FIT_EXD_DATA_UNITS)9)
|
|
#define FIT_EXD_DATA_UNITS_RPM ((FIT_EXD_DATA_UNITS)10)
|
|
#define FIT_EXD_DATA_UNITS_BPM ((FIT_EXD_DATA_UNITS)11)
|
|
#define FIT_EXD_DATA_UNITS_DEGREES ((FIT_EXD_DATA_UNITS)12)
|
|
#define FIT_EXD_DATA_UNITS_MILLIMETERS ((FIT_EXD_DATA_UNITS)13)
|
|
#define FIT_EXD_DATA_UNITS_METERS ((FIT_EXD_DATA_UNITS)14)
|
|
#define FIT_EXD_DATA_UNITS_KILOMETERS ((FIT_EXD_DATA_UNITS)15)
|
|
#define FIT_EXD_DATA_UNITS_FEET ((FIT_EXD_DATA_UNITS)16)
|
|
#define FIT_EXD_DATA_UNITS_YARDS ((FIT_EXD_DATA_UNITS)17)
|
|
#define FIT_EXD_DATA_UNITS_KILOFEET ((FIT_EXD_DATA_UNITS)18)
|
|
#define FIT_EXD_DATA_UNITS_MILES ((FIT_EXD_DATA_UNITS)19)
|
|
#define FIT_EXD_DATA_UNITS_TIME ((FIT_EXD_DATA_UNITS)20)
|
|
#define FIT_EXD_DATA_UNITS_ENUM_TURN_TYPE ((FIT_EXD_DATA_UNITS)21)
|
|
#define FIT_EXD_DATA_UNITS_PERCENT ((FIT_EXD_DATA_UNITS)22)
|
|
#define FIT_EXD_DATA_UNITS_WATTS ((FIT_EXD_DATA_UNITS)23)
|
|
#define FIT_EXD_DATA_UNITS_WATTS_PER_KILOGRAM ((FIT_EXD_DATA_UNITS)24)
|
|
#define FIT_EXD_DATA_UNITS_ENUM_BATTERY_STATUS ((FIT_EXD_DATA_UNITS)25)
|
|
#define FIT_EXD_DATA_UNITS_ENUM_BIKE_LIGHT_BEAM_ANGLE_MODE ((FIT_EXD_DATA_UNITS)26)
|
|
#define FIT_EXD_DATA_UNITS_ENUM_BIKE_LIGHT_BATTERY_STATUS ((FIT_EXD_DATA_UNITS)27)
|
|
#define FIT_EXD_DATA_UNITS_ENUM_BIKE_LIGHT_NETWORK_CONFIG_TYPE ((FIT_EXD_DATA_UNITS)28)
|
|
#define FIT_EXD_DATA_UNITS_LIGHTS ((FIT_EXD_DATA_UNITS)29)
|
|
#define FIT_EXD_DATA_UNITS_SECONDS ((FIT_EXD_DATA_UNITS)30)
|
|
#define FIT_EXD_DATA_UNITS_MINUTES ((FIT_EXD_DATA_UNITS)31)
|
|
#define FIT_EXD_DATA_UNITS_HOURS ((FIT_EXD_DATA_UNITS)32)
|
|
#define FIT_EXD_DATA_UNITS_CALORIES ((FIT_EXD_DATA_UNITS)33)
|
|
#define FIT_EXD_DATA_UNITS_KILOJOULES ((FIT_EXD_DATA_UNITS)34)
|
|
#define FIT_EXD_DATA_UNITS_MILLISECONDS ((FIT_EXD_DATA_UNITS)35)
|
|
#define FIT_EXD_DATA_UNITS_SECOND_PER_MILE ((FIT_EXD_DATA_UNITS)36)
|
|
#define FIT_EXD_DATA_UNITS_SECOND_PER_KILOMETER ((FIT_EXD_DATA_UNITS)37)
|
|
#define FIT_EXD_DATA_UNITS_CENTIMETER ((FIT_EXD_DATA_UNITS)38)
|
|
#define FIT_EXD_DATA_UNITS_ENUM_COURSE_POINT ((FIT_EXD_DATA_UNITS)39)
|
|
#define FIT_EXD_DATA_UNITS_BRADIANS ((FIT_EXD_DATA_UNITS)40)
|
|
#define FIT_EXD_DATA_UNITS_ENUM_SPORT ((FIT_EXD_DATA_UNITS)41)
|
|
#define FIT_EXD_DATA_UNITS_INCHES_HG ((FIT_EXD_DATA_UNITS)42)
|
|
#define FIT_EXD_DATA_UNITS_MM_HG ((FIT_EXD_DATA_UNITS)43)
|
|
#define FIT_EXD_DATA_UNITS_MBARS ((FIT_EXD_DATA_UNITS)44)
|
|
#define FIT_EXD_DATA_UNITS_HECTO_PASCALS ((FIT_EXD_DATA_UNITS)45)
|
|
#define FIT_EXD_DATA_UNITS_FEET_PER_MIN ((FIT_EXD_DATA_UNITS)46)
|
|
#define FIT_EXD_DATA_UNITS_METERS_PER_MIN ((FIT_EXD_DATA_UNITS)47)
|
|
#define FIT_EXD_DATA_UNITS_METERS_PER_SEC ((FIT_EXD_DATA_UNITS)48)
|
|
#define FIT_EXD_DATA_UNITS_EIGHT_CARDINAL ((FIT_EXD_DATA_UNITS)49)
|
|
#define FIT_EXD_DATA_UNITS_COUNT 50
|
|
|
|
typedef FIT_ENUM FIT_EXD_QUALIFIERS;
|
|
#define FIT_EXD_QUALIFIERS_INVALID FIT_ENUM_INVALID
|
|
#define FIT_EXD_QUALIFIERS_NO_QUALIFIER ((FIT_EXD_QUALIFIERS)0)
|
|
#define FIT_EXD_QUALIFIERS_INSTANTANEOUS ((FIT_EXD_QUALIFIERS)1)
|
|
#define FIT_EXD_QUALIFIERS_AVERAGE ((FIT_EXD_QUALIFIERS)2)
|
|
#define FIT_EXD_QUALIFIERS_LAP ((FIT_EXD_QUALIFIERS)3)
|
|
#define FIT_EXD_QUALIFIERS_MAXIMUM ((FIT_EXD_QUALIFIERS)4)
|
|
#define FIT_EXD_QUALIFIERS_MAXIMUM_AVERAGE ((FIT_EXD_QUALIFIERS)5)
|
|
#define FIT_EXD_QUALIFIERS_MAXIMUM_LAP ((FIT_EXD_QUALIFIERS)6)
|
|
#define FIT_EXD_QUALIFIERS_LAST_LAP ((FIT_EXD_QUALIFIERS)7)
|
|
#define FIT_EXD_QUALIFIERS_AVERAGE_LAP ((FIT_EXD_QUALIFIERS)8)
|
|
#define FIT_EXD_QUALIFIERS_TO_DESTINATION ((FIT_EXD_QUALIFIERS)9)
|
|
#define FIT_EXD_QUALIFIERS_TO_GO ((FIT_EXD_QUALIFIERS)10)
|
|
#define FIT_EXD_QUALIFIERS_TO_NEXT ((FIT_EXD_QUALIFIERS)11)
|
|
#define FIT_EXD_QUALIFIERS_NEXT_COURSE_POINT ((FIT_EXD_QUALIFIERS)12)
|
|
#define FIT_EXD_QUALIFIERS_TOTAL ((FIT_EXD_QUALIFIERS)13)
|
|
#define FIT_EXD_QUALIFIERS_THREE_SECOND_AVERAGE ((FIT_EXD_QUALIFIERS)14)
|
|
#define FIT_EXD_QUALIFIERS_TEN_SECOND_AVERAGE ((FIT_EXD_QUALIFIERS)15)
|
|
#define FIT_EXD_QUALIFIERS_THIRTY_SECOND_AVERAGE ((FIT_EXD_QUALIFIERS)16)
|
|
#define FIT_EXD_QUALIFIERS_PERCENT_MAXIMUM ((FIT_EXD_QUALIFIERS)17)
|
|
#define FIT_EXD_QUALIFIERS_PERCENT_MAXIMUM_AVERAGE ((FIT_EXD_QUALIFIERS)18)
|
|
#define FIT_EXD_QUALIFIERS_LAP_PERCENT_MAXIMUM ((FIT_EXD_QUALIFIERS)19)
|
|
#define FIT_EXD_QUALIFIERS_ELAPSED ((FIT_EXD_QUALIFIERS)20)
|
|
#define FIT_EXD_QUALIFIERS_SUNRISE ((FIT_EXD_QUALIFIERS)21)
|
|
#define FIT_EXD_QUALIFIERS_SUNSET ((FIT_EXD_QUALIFIERS)22)
|
|
#define FIT_EXD_QUALIFIERS_COMPARED_TO_VIRTUAL_PARTNER ((FIT_EXD_QUALIFIERS)23)
|
|
#define FIT_EXD_QUALIFIERS_MAXIMUM_24H ((FIT_EXD_QUALIFIERS)24)
|
|
#define FIT_EXD_QUALIFIERS_MINIMUM_24H ((FIT_EXD_QUALIFIERS)25)
|
|
#define FIT_EXD_QUALIFIERS_MINIMUM ((FIT_EXD_QUALIFIERS)26)
|
|
#define FIT_EXD_QUALIFIERS_FIRST ((FIT_EXD_QUALIFIERS)27)
|
|
#define FIT_EXD_QUALIFIERS_SECOND ((FIT_EXD_QUALIFIERS)28)
|
|
#define FIT_EXD_QUALIFIERS_THIRD ((FIT_EXD_QUALIFIERS)29)
|
|
#define FIT_EXD_QUALIFIERS_SHIFTER ((FIT_EXD_QUALIFIERS)30)
|
|
#define FIT_EXD_QUALIFIERS_LAST_SPORT ((FIT_EXD_QUALIFIERS)31)
|
|
#define FIT_EXD_QUALIFIERS_MOVING ((FIT_EXD_QUALIFIERS)32)
|
|
#define FIT_EXD_QUALIFIERS_STOPPED ((FIT_EXD_QUALIFIERS)33)
|
|
#define FIT_EXD_QUALIFIERS_ESTIMATED_TOTAL ((FIT_EXD_QUALIFIERS)34)
|
|
#define FIT_EXD_QUALIFIERS_ZONE_9 ((FIT_EXD_QUALIFIERS)242)
|
|
#define FIT_EXD_QUALIFIERS_ZONE_8 ((FIT_EXD_QUALIFIERS)243)
|
|
#define FIT_EXD_QUALIFIERS_ZONE_7 ((FIT_EXD_QUALIFIERS)244)
|
|
#define FIT_EXD_QUALIFIERS_ZONE_6 ((FIT_EXD_QUALIFIERS)245)
|
|
#define FIT_EXD_QUALIFIERS_ZONE_5 ((FIT_EXD_QUALIFIERS)246)
|
|
#define FIT_EXD_QUALIFIERS_ZONE_4 ((FIT_EXD_QUALIFIERS)247)
|
|
#define FIT_EXD_QUALIFIERS_ZONE_3 ((FIT_EXD_QUALIFIERS)248)
|
|
#define FIT_EXD_QUALIFIERS_ZONE_2 ((FIT_EXD_QUALIFIERS)249)
|
|
#define FIT_EXD_QUALIFIERS_ZONE_1 ((FIT_EXD_QUALIFIERS)250)
|
|
#define FIT_EXD_QUALIFIERS_COUNT 44
|
|
|
|
typedef FIT_ENUM FIT_EXD_DESCRIPTORS;
|
|
#define FIT_EXD_DESCRIPTORS_INVALID FIT_ENUM_INVALID
|
|
#define FIT_EXD_DESCRIPTORS_BIKE_LIGHT_BATTERY_STATUS ((FIT_EXD_DESCRIPTORS)0)
|
|
#define FIT_EXD_DESCRIPTORS_BEAM_ANGLE_STATUS ((FIT_EXD_DESCRIPTORS)1)
|
|
#define FIT_EXD_DESCRIPTORS_BATERY_LEVEL ((FIT_EXD_DESCRIPTORS)2)
|
|
#define FIT_EXD_DESCRIPTORS_LIGHT_NETWORK_MODE ((FIT_EXD_DESCRIPTORS)3)
|
|
#define FIT_EXD_DESCRIPTORS_NUMBER_LIGHTS_CONNECTED ((FIT_EXD_DESCRIPTORS)4)
|
|
#define FIT_EXD_DESCRIPTORS_CADENCE ((FIT_EXD_DESCRIPTORS)5)
|
|
#define FIT_EXD_DESCRIPTORS_DISTANCE ((FIT_EXD_DESCRIPTORS)6)
|
|
#define FIT_EXD_DESCRIPTORS_ESTIMATED_TIME_OF_ARRIVAL ((FIT_EXD_DESCRIPTORS)7)
|
|
#define FIT_EXD_DESCRIPTORS_HEADING ((FIT_EXD_DESCRIPTORS)8)
|
|
#define FIT_EXD_DESCRIPTORS_TIME ((FIT_EXD_DESCRIPTORS)9)
|
|
#define FIT_EXD_DESCRIPTORS_BATTERY_LEVEL ((FIT_EXD_DESCRIPTORS)10)
|
|
#define FIT_EXD_DESCRIPTORS_TRAINER_RESISTANCE ((FIT_EXD_DESCRIPTORS)11)
|
|
#define FIT_EXD_DESCRIPTORS_TRAINER_TARGET_POWER ((FIT_EXD_DESCRIPTORS)12)
|
|
#define FIT_EXD_DESCRIPTORS_TIME_SEATED ((FIT_EXD_DESCRIPTORS)13)
|
|
#define FIT_EXD_DESCRIPTORS_TIME_STANDING ((FIT_EXD_DESCRIPTORS)14)
|
|
#define FIT_EXD_DESCRIPTORS_ELEVATION ((FIT_EXD_DESCRIPTORS)15)
|
|
#define FIT_EXD_DESCRIPTORS_GRADE ((FIT_EXD_DESCRIPTORS)16)
|
|
#define FIT_EXD_DESCRIPTORS_ASCENT ((FIT_EXD_DESCRIPTORS)17)
|
|
#define FIT_EXD_DESCRIPTORS_DESCENT ((FIT_EXD_DESCRIPTORS)18)
|
|
#define FIT_EXD_DESCRIPTORS_VERTICAL_SPEED ((FIT_EXD_DESCRIPTORS)19)
|
|
#define FIT_EXD_DESCRIPTORS_DI2_BATTERY_LEVEL ((FIT_EXD_DESCRIPTORS)20)
|
|
#define FIT_EXD_DESCRIPTORS_FRONT_GEAR ((FIT_EXD_DESCRIPTORS)21)
|
|
#define FIT_EXD_DESCRIPTORS_REAR_GEAR ((FIT_EXD_DESCRIPTORS)22)
|
|
#define FIT_EXD_DESCRIPTORS_GEAR_RATIO ((FIT_EXD_DESCRIPTORS)23)
|
|
#define FIT_EXD_DESCRIPTORS_HEART_RATE ((FIT_EXD_DESCRIPTORS)24)
|
|
#define FIT_EXD_DESCRIPTORS_HEART_RATE_ZONE ((FIT_EXD_DESCRIPTORS)25)
|
|
#define FIT_EXD_DESCRIPTORS_TIME_IN_HEART_RATE_ZONE ((FIT_EXD_DESCRIPTORS)26)
|
|
#define FIT_EXD_DESCRIPTORS_HEART_RATE_RESERVE ((FIT_EXD_DESCRIPTORS)27)
|
|
#define FIT_EXD_DESCRIPTORS_CALORIES ((FIT_EXD_DESCRIPTORS)28)
|
|
#define FIT_EXD_DESCRIPTORS_GPS_ACCURACY ((FIT_EXD_DESCRIPTORS)29)
|
|
#define FIT_EXD_DESCRIPTORS_GPS_SIGNAL_STRENGTH ((FIT_EXD_DESCRIPTORS)30)
|
|
#define FIT_EXD_DESCRIPTORS_TEMPERATURE ((FIT_EXD_DESCRIPTORS)31)
|
|
#define FIT_EXD_DESCRIPTORS_TIME_OF_DAY ((FIT_EXD_DESCRIPTORS)32)
|
|
#define FIT_EXD_DESCRIPTORS_BALANCE ((FIT_EXD_DESCRIPTORS)33)
|
|
#define FIT_EXD_DESCRIPTORS_PEDAL_SMOOTHNESS ((FIT_EXD_DESCRIPTORS)34)
|
|
#define FIT_EXD_DESCRIPTORS_POWER ((FIT_EXD_DESCRIPTORS)35)
|
|
#define FIT_EXD_DESCRIPTORS_FUNCTIONAL_THRESHOLD_POWER ((FIT_EXD_DESCRIPTORS)36)
|
|
#define FIT_EXD_DESCRIPTORS_INTENSITY_FACTOR ((FIT_EXD_DESCRIPTORS)37)
|
|
#define FIT_EXD_DESCRIPTORS_WORK ((FIT_EXD_DESCRIPTORS)38)
|
|
#define FIT_EXD_DESCRIPTORS_POWER_RATIO ((FIT_EXD_DESCRIPTORS)39)
|
|
#define FIT_EXD_DESCRIPTORS_NORMALIZED_POWER ((FIT_EXD_DESCRIPTORS)40)
|
|
#define FIT_EXD_DESCRIPTORS_TRAINING_STRESS_SCORE ((FIT_EXD_DESCRIPTORS)41)
|
|
#define FIT_EXD_DESCRIPTORS_TIME_ON_ZONE ((FIT_EXD_DESCRIPTORS)42)
|
|
#define FIT_EXD_DESCRIPTORS_SPEED ((FIT_EXD_DESCRIPTORS)43)
|
|
#define FIT_EXD_DESCRIPTORS_LAPS ((FIT_EXD_DESCRIPTORS)44)
|
|
#define FIT_EXD_DESCRIPTORS_REPS ((FIT_EXD_DESCRIPTORS)45)
|
|
#define FIT_EXD_DESCRIPTORS_WORKOUT_STEP ((FIT_EXD_DESCRIPTORS)46)
|
|
#define FIT_EXD_DESCRIPTORS_COURSE_DISTANCE ((FIT_EXD_DESCRIPTORS)47)
|
|
#define FIT_EXD_DESCRIPTORS_NAVIGATION_DISTANCE ((FIT_EXD_DESCRIPTORS)48)
|
|
#define FIT_EXD_DESCRIPTORS_COURSE_ESTIMATED_TIME_OF_ARRIVAL ((FIT_EXD_DESCRIPTORS)49)
|
|
#define FIT_EXD_DESCRIPTORS_NAVIGATION_ESTIMATED_TIME_OF_ARRIVAL ((FIT_EXD_DESCRIPTORS)50)
|
|
#define FIT_EXD_DESCRIPTORS_COURSE_TIME ((FIT_EXD_DESCRIPTORS)51)
|
|
#define FIT_EXD_DESCRIPTORS_NAVIGATION_TIME ((FIT_EXD_DESCRIPTORS)52)
|
|
#define FIT_EXD_DESCRIPTORS_COURSE_HEADING ((FIT_EXD_DESCRIPTORS)53)
|
|
#define FIT_EXD_DESCRIPTORS_NAVIGATION_HEADING ((FIT_EXD_DESCRIPTORS)54)
|
|
#define FIT_EXD_DESCRIPTORS_POWER_ZONE ((FIT_EXD_DESCRIPTORS)55)
|
|
#define FIT_EXD_DESCRIPTORS_TORQUE_EFFECTIVENESS ((FIT_EXD_DESCRIPTORS)56)
|
|
#define FIT_EXD_DESCRIPTORS_TIMER_TIME ((FIT_EXD_DESCRIPTORS)57)
|
|
#define FIT_EXD_DESCRIPTORS_POWER_WEIGHT_RATIO ((FIT_EXD_DESCRIPTORS)58)
|
|
#define FIT_EXD_DESCRIPTORS_LEFT_PLATFORM_CENTER_OFFSET ((FIT_EXD_DESCRIPTORS)59)
|
|
#define FIT_EXD_DESCRIPTORS_RIGHT_PLATFORM_CENTER_OFFSET ((FIT_EXD_DESCRIPTORS)60)
|
|
#define FIT_EXD_DESCRIPTORS_LEFT_POWER_PHASE_START_ANGLE ((FIT_EXD_DESCRIPTORS)61)
|
|
#define FIT_EXD_DESCRIPTORS_RIGHT_POWER_PHASE_START_ANGLE ((FIT_EXD_DESCRIPTORS)62)
|
|
#define FIT_EXD_DESCRIPTORS_LEFT_POWER_PHASE_FINISH_ANGLE ((FIT_EXD_DESCRIPTORS)63)
|
|
#define FIT_EXD_DESCRIPTORS_RIGHT_POWER_PHASE_FINISH_ANGLE ((FIT_EXD_DESCRIPTORS)64)
|
|
#define FIT_EXD_DESCRIPTORS_GEARS ((FIT_EXD_DESCRIPTORS)65) // Combined gear information
|
|
#define FIT_EXD_DESCRIPTORS_PACE ((FIT_EXD_DESCRIPTORS)66)
|
|
#define FIT_EXD_DESCRIPTORS_TRAINING_EFFECT ((FIT_EXD_DESCRIPTORS)67)
|
|
#define FIT_EXD_DESCRIPTORS_VERTICAL_OSCILLATION ((FIT_EXD_DESCRIPTORS)68)
|
|
#define FIT_EXD_DESCRIPTORS_VERTICAL_RATIO ((FIT_EXD_DESCRIPTORS)69)
|
|
#define FIT_EXD_DESCRIPTORS_GROUND_CONTACT_TIME ((FIT_EXD_DESCRIPTORS)70)
|
|
#define FIT_EXD_DESCRIPTORS_LEFT_GROUND_CONTACT_TIME_BALANCE ((FIT_EXD_DESCRIPTORS)71)
|
|
#define FIT_EXD_DESCRIPTORS_RIGHT_GROUND_CONTACT_TIME_BALANCE ((FIT_EXD_DESCRIPTORS)72)
|
|
#define FIT_EXD_DESCRIPTORS_STRIDE_LENGTH ((FIT_EXD_DESCRIPTORS)73)
|
|
#define FIT_EXD_DESCRIPTORS_RUNNING_CADENCE ((FIT_EXD_DESCRIPTORS)74)
|
|
#define FIT_EXD_DESCRIPTORS_PERFORMANCE_CONDITION ((FIT_EXD_DESCRIPTORS)75)
|
|
#define FIT_EXD_DESCRIPTORS_COURSE_TYPE ((FIT_EXD_DESCRIPTORS)76)
|
|
#define FIT_EXD_DESCRIPTORS_TIME_IN_POWER_ZONE ((FIT_EXD_DESCRIPTORS)77)
|
|
#define FIT_EXD_DESCRIPTORS_NAVIGATION_TURN ((FIT_EXD_DESCRIPTORS)78)
|
|
#define FIT_EXD_DESCRIPTORS_COURSE_LOCATION ((FIT_EXD_DESCRIPTORS)79)
|
|
#define FIT_EXD_DESCRIPTORS_NAVIGATION_LOCATION ((FIT_EXD_DESCRIPTORS)80)
|
|
#define FIT_EXD_DESCRIPTORS_COMPASS ((FIT_EXD_DESCRIPTORS)81)
|
|
#define FIT_EXD_DESCRIPTORS_GEAR_COMBO ((FIT_EXD_DESCRIPTORS)82)
|
|
#define FIT_EXD_DESCRIPTORS_MUSCLE_OXYGEN ((FIT_EXD_DESCRIPTORS)83)
|
|
#define FIT_EXD_DESCRIPTORS_ICON ((FIT_EXD_DESCRIPTORS)84)
|
|
#define FIT_EXD_DESCRIPTORS_COMPASS_HEADING ((FIT_EXD_DESCRIPTORS)85)
|
|
#define FIT_EXD_DESCRIPTORS_GPS_HEADING ((FIT_EXD_DESCRIPTORS)86)
|
|
#define FIT_EXD_DESCRIPTORS_GPS_ELEVATION ((FIT_EXD_DESCRIPTORS)87)
|
|
#define FIT_EXD_DESCRIPTORS_ANAEROBIC_TRAINING_EFFECT ((FIT_EXD_DESCRIPTORS)88)
|
|
#define FIT_EXD_DESCRIPTORS_COURSE ((FIT_EXD_DESCRIPTORS)89)
|
|
#define FIT_EXD_DESCRIPTORS_OFF_COURSE ((FIT_EXD_DESCRIPTORS)90)
|
|
#define FIT_EXD_DESCRIPTORS_GLIDE_RATIO ((FIT_EXD_DESCRIPTORS)91)
|
|
#define FIT_EXD_DESCRIPTORS_VERTICAL_DISTANCE ((FIT_EXD_DESCRIPTORS)92)
|
|
#define FIT_EXD_DESCRIPTORS_VMG ((FIT_EXD_DESCRIPTORS)93)
|
|
#define FIT_EXD_DESCRIPTORS_AMBIENT_PRESSURE ((FIT_EXD_DESCRIPTORS)94)
|
|
#define FIT_EXD_DESCRIPTORS_PRESSURE ((FIT_EXD_DESCRIPTORS)95)
|
|
#define FIT_EXD_DESCRIPTORS_VAM ((FIT_EXD_DESCRIPTORS)96)
|
|
#define FIT_EXD_DESCRIPTORS_COUNT 97
|
|
|
|
typedef FIT_UINT32 FIT_AUTO_ACTIVITY_DETECT;
|
|
#define FIT_AUTO_ACTIVITY_DETECT_INVALID FIT_UINT32_INVALID
|
|
#define FIT_AUTO_ACTIVITY_DETECT_NONE ((FIT_AUTO_ACTIVITY_DETECT)0x00000000)
|
|
#define FIT_AUTO_ACTIVITY_DETECT_RUNNING ((FIT_AUTO_ACTIVITY_DETECT)0x00000001)
|
|
#define FIT_AUTO_ACTIVITY_DETECT_CYCLING ((FIT_AUTO_ACTIVITY_DETECT)0x00000002)
|
|
#define FIT_AUTO_ACTIVITY_DETECT_SWIMMING ((FIT_AUTO_ACTIVITY_DETECT)0x00000004)
|
|
#define FIT_AUTO_ACTIVITY_DETECT_WALKING ((FIT_AUTO_ACTIVITY_DETECT)0x00000008)
|
|
#define FIT_AUTO_ACTIVITY_DETECT_ELLIPTICAL ((FIT_AUTO_ACTIVITY_DETECT)0x00000020)
|
|
#define FIT_AUTO_ACTIVITY_DETECT_SEDENTARY ((FIT_AUTO_ACTIVITY_DETECT)0x00000400)
|
|
#define FIT_AUTO_ACTIVITY_DETECT_COUNT 7
|
|
|
|
typedef FIT_UINT32Z FIT_SUPPORTED_EXD_SCREEN_LAYOUTS;
|
|
#define FIT_SUPPORTED_EXD_SCREEN_LAYOUTS_INVALID FIT_UINT32Z_INVALID
|
|
#define FIT_SUPPORTED_EXD_SCREEN_LAYOUTS_FULL_SCREEN ((FIT_SUPPORTED_EXD_SCREEN_LAYOUTS)0x00000001)
|
|
#define FIT_SUPPORTED_EXD_SCREEN_LAYOUTS_HALF_VERTICAL ((FIT_SUPPORTED_EXD_SCREEN_LAYOUTS)0x00000002)
|
|
#define FIT_SUPPORTED_EXD_SCREEN_LAYOUTS_HALF_HORIZONTAL ((FIT_SUPPORTED_EXD_SCREEN_LAYOUTS)0x00000004)
|
|
#define FIT_SUPPORTED_EXD_SCREEN_LAYOUTS_HALF_VERTICAL_RIGHT_SPLIT ((FIT_SUPPORTED_EXD_SCREEN_LAYOUTS)0x00000008)
|
|
#define FIT_SUPPORTED_EXD_SCREEN_LAYOUTS_HALF_HORIZONTAL_BOTTOM_SPLIT ((FIT_SUPPORTED_EXD_SCREEN_LAYOUTS)0x00000010)
|
|
#define FIT_SUPPORTED_EXD_SCREEN_LAYOUTS_FULL_QUARTER_SPLIT ((FIT_SUPPORTED_EXD_SCREEN_LAYOUTS)0x00000020)
|
|
#define FIT_SUPPORTED_EXD_SCREEN_LAYOUTS_HALF_VERTICAL_LEFT_SPLIT ((FIT_SUPPORTED_EXD_SCREEN_LAYOUTS)0x00000040)
|
|
#define FIT_SUPPORTED_EXD_SCREEN_LAYOUTS_HALF_HORIZONTAL_TOP_SPLIT ((FIT_SUPPORTED_EXD_SCREEN_LAYOUTS)0x00000080)
|
|
#define FIT_SUPPORTED_EXD_SCREEN_LAYOUTS_COUNT 8
|
|
|
|
typedef FIT_UINT8 FIT_FIT_BASE_TYPE;
|
|
#define FIT_FIT_BASE_TYPE_INVALID FIT_UINT8_INVALID
|
|
#define FIT_FIT_BASE_TYPE_ENUM ((FIT_FIT_BASE_TYPE)0)
|
|
#define FIT_FIT_BASE_TYPE_SINT8 ((FIT_FIT_BASE_TYPE)1)
|
|
#define FIT_FIT_BASE_TYPE_UINT8 ((FIT_FIT_BASE_TYPE)2)
|
|
#define FIT_FIT_BASE_TYPE_SINT16 ((FIT_FIT_BASE_TYPE)131)
|
|
#define FIT_FIT_BASE_TYPE_UINT16 ((FIT_FIT_BASE_TYPE)132)
|
|
#define FIT_FIT_BASE_TYPE_SINT32 ((FIT_FIT_BASE_TYPE)133)
|
|
#define FIT_FIT_BASE_TYPE_UINT32 ((FIT_FIT_BASE_TYPE)134)
|
|
#define FIT_FIT_BASE_TYPE_STRING ((FIT_FIT_BASE_TYPE)7)
|
|
#define FIT_FIT_BASE_TYPE_FLOAT32 ((FIT_FIT_BASE_TYPE)136)
|
|
#define FIT_FIT_BASE_TYPE_FLOAT64 ((FIT_FIT_BASE_TYPE)137)
|
|
#define FIT_FIT_BASE_TYPE_UINT8Z ((FIT_FIT_BASE_TYPE)10)
|
|
#define FIT_FIT_BASE_TYPE_UINT16Z ((FIT_FIT_BASE_TYPE)139)
|
|
#define FIT_FIT_BASE_TYPE_UINT32Z ((FIT_FIT_BASE_TYPE)140)
|
|
#define FIT_FIT_BASE_TYPE_BYTE ((FIT_FIT_BASE_TYPE)13)
|
|
#define FIT_FIT_BASE_TYPE_SINT64 ((FIT_FIT_BASE_TYPE)142)
|
|
#define FIT_FIT_BASE_TYPE_UINT64 ((FIT_FIT_BASE_TYPE)143)
|
|
#define FIT_FIT_BASE_TYPE_UINT64Z ((FIT_FIT_BASE_TYPE)144)
|
|
#define FIT_FIT_BASE_TYPE_COUNT 17
|
|
|
|
typedef FIT_ENUM FIT_TURN_TYPE;
|
|
#define FIT_TURN_TYPE_INVALID FIT_ENUM_INVALID
|
|
#define FIT_TURN_TYPE_ARRIVING_IDX ((FIT_TURN_TYPE)0)
|
|
#define FIT_TURN_TYPE_ARRIVING_LEFT_IDX ((FIT_TURN_TYPE)1)
|
|
#define FIT_TURN_TYPE_ARRIVING_RIGHT_IDX ((FIT_TURN_TYPE)2)
|
|
#define FIT_TURN_TYPE_ARRIVING_VIA_IDX ((FIT_TURN_TYPE)3)
|
|
#define FIT_TURN_TYPE_ARRIVING_VIA_LEFT_IDX ((FIT_TURN_TYPE)4)
|
|
#define FIT_TURN_TYPE_ARRIVING_VIA_RIGHT_IDX ((FIT_TURN_TYPE)5)
|
|
#define FIT_TURN_TYPE_BEAR_KEEP_LEFT_IDX ((FIT_TURN_TYPE)6)
|
|
#define FIT_TURN_TYPE_BEAR_KEEP_RIGHT_IDX ((FIT_TURN_TYPE)7)
|
|
#define FIT_TURN_TYPE_CONTINUE_IDX ((FIT_TURN_TYPE)8)
|
|
#define FIT_TURN_TYPE_EXIT_LEFT_IDX ((FIT_TURN_TYPE)9)
|
|
#define FIT_TURN_TYPE_EXIT_RIGHT_IDX ((FIT_TURN_TYPE)10)
|
|
#define FIT_TURN_TYPE_FERRY_IDX ((FIT_TURN_TYPE)11)
|
|
#define FIT_TURN_TYPE_ROUNDABOUT_45_IDX ((FIT_TURN_TYPE)12)
|
|
#define FIT_TURN_TYPE_ROUNDABOUT_90_IDX ((FIT_TURN_TYPE)13)
|
|
#define FIT_TURN_TYPE_ROUNDABOUT_135_IDX ((FIT_TURN_TYPE)14)
|
|
#define FIT_TURN_TYPE_ROUNDABOUT_180_IDX ((FIT_TURN_TYPE)15)
|
|
#define FIT_TURN_TYPE_ROUNDABOUT_225_IDX ((FIT_TURN_TYPE)16)
|
|
#define FIT_TURN_TYPE_ROUNDABOUT_270_IDX ((FIT_TURN_TYPE)17)
|
|
#define FIT_TURN_TYPE_ROUNDABOUT_315_IDX ((FIT_TURN_TYPE)18)
|
|
#define FIT_TURN_TYPE_ROUNDABOUT_360_IDX ((FIT_TURN_TYPE)19)
|
|
#define FIT_TURN_TYPE_ROUNDABOUT_NEG_45_IDX ((FIT_TURN_TYPE)20)
|
|
#define FIT_TURN_TYPE_ROUNDABOUT_NEG_90_IDX ((FIT_TURN_TYPE)21)
|
|
#define FIT_TURN_TYPE_ROUNDABOUT_NEG_135_IDX ((FIT_TURN_TYPE)22)
|
|
#define FIT_TURN_TYPE_ROUNDABOUT_NEG_180_IDX ((FIT_TURN_TYPE)23)
|
|
#define FIT_TURN_TYPE_ROUNDABOUT_NEG_225_IDX ((FIT_TURN_TYPE)24)
|
|
#define FIT_TURN_TYPE_ROUNDABOUT_NEG_270_IDX ((FIT_TURN_TYPE)25)
|
|
#define FIT_TURN_TYPE_ROUNDABOUT_NEG_315_IDX ((FIT_TURN_TYPE)26)
|
|
#define FIT_TURN_TYPE_ROUNDABOUT_NEG_360_IDX ((FIT_TURN_TYPE)27)
|
|
#define FIT_TURN_TYPE_ROUNDABOUT_GENERIC_IDX ((FIT_TURN_TYPE)28)
|
|
#define FIT_TURN_TYPE_ROUNDABOUT_NEG_GENERIC_IDX ((FIT_TURN_TYPE)29)
|
|
#define FIT_TURN_TYPE_SHARP_TURN_LEFT_IDX ((FIT_TURN_TYPE)30)
|
|
#define FIT_TURN_TYPE_SHARP_TURN_RIGHT_IDX ((FIT_TURN_TYPE)31)
|
|
#define FIT_TURN_TYPE_TURN_LEFT_IDX ((FIT_TURN_TYPE)32)
|
|
#define FIT_TURN_TYPE_TURN_RIGHT_IDX ((FIT_TURN_TYPE)33)
|
|
#define FIT_TURN_TYPE_UTURN_LEFT_IDX ((FIT_TURN_TYPE)34)
|
|
#define FIT_TURN_TYPE_UTURN_RIGHT_IDX ((FIT_TURN_TYPE)35)
|
|
#define FIT_TURN_TYPE_ICON_INV_IDX ((FIT_TURN_TYPE)36)
|
|
#define FIT_TURN_TYPE_ICON_IDX_CNT ((FIT_TURN_TYPE)37)
|
|
#define FIT_TURN_TYPE_COUNT 38
|
|
|
|
typedef FIT_UINT8 FIT_BIKE_LIGHT_BEAM_ANGLE_MODE;
|
|
#define FIT_BIKE_LIGHT_BEAM_ANGLE_MODE_INVALID FIT_UINT8_INVALID
|
|
#define FIT_BIKE_LIGHT_BEAM_ANGLE_MODE_MANUAL ((FIT_BIKE_LIGHT_BEAM_ANGLE_MODE)0)
|
|
#define FIT_BIKE_LIGHT_BEAM_ANGLE_MODE_AUTO ((FIT_BIKE_LIGHT_BEAM_ANGLE_MODE)1)
|
|
#define FIT_BIKE_LIGHT_BEAM_ANGLE_MODE_COUNT 2
|
|
|
|
typedef FIT_UINT16 FIT_FIT_BASE_UNIT;
|
|
#define FIT_FIT_BASE_UNIT_INVALID FIT_UINT16_INVALID
|
|
#define FIT_FIT_BASE_UNIT_OTHER ((FIT_FIT_BASE_UNIT)0)
|
|
#define FIT_FIT_BASE_UNIT_KILOGRAM ((FIT_FIT_BASE_UNIT)1)
|
|
#define FIT_FIT_BASE_UNIT_POUND ((FIT_FIT_BASE_UNIT)2)
|
|
#define FIT_FIT_BASE_UNIT_COUNT 3
|
|
|
|
typedef FIT_UINT8 FIT_SET_TYPE;
|
|
#define FIT_SET_TYPE_INVALID FIT_UINT8_INVALID
|
|
#define FIT_SET_TYPE_REST ((FIT_SET_TYPE)0)
|
|
#define FIT_SET_TYPE_ACTIVE ((FIT_SET_TYPE)1)
|
|
#define FIT_SET_TYPE_COUNT 2
|
|
|
|
typedef FIT_ENUM FIT_MAX_MET_CATEGORY;
|
|
#define FIT_MAX_MET_CATEGORY_INVALID FIT_ENUM_INVALID
|
|
#define FIT_MAX_MET_CATEGORY_GENERIC ((FIT_MAX_MET_CATEGORY)0)
|
|
#define FIT_MAX_MET_CATEGORY_CYCLING ((FIT_MAX_MET_CATEGORY)1)
|
|
#define FIT_MAX_MET_CATEGORY_COUNT 2
|
|
|
|
typedef FIT_UINT16 FIT_EXERCISE_CATEGORY;
|
|
#define FIT_EXERCISE_CATEGORY_INVALID FIT_UINT16_INVALID
|
|
#define FIT_EXERCISE_CATEGORY_BENCH_PRESS ((FIT_EXERCISE_CATEGORY)0)
|
|
#define FIT_EXERCISE_CATEGORY_CALF_RAISE ((FIT_EXERCISE_CATEGORY)1)
|
|
#define FIT_EXERCISE_CATEGORY_CARDIO ((FIT_EXERCISE_CATEGORY)2)
|
|
#define FIT_EXERCISE_CATEGORY_CARRY ((FIT_EXERCISE_CATEGORY)3)
|
|
#define FIT_EXERCISE_CATEGORY_CHOP ((FIT_EXERCISE_CATEGORY)4)
|
|
#define FIT_EXERCISE_CATEGORY_CORE ((FIT_EXERCISE_CATEGORY)5)
|
|
#define FIT_EXERCISE_CATEGORY_CRUNCH ((FIT_EXERCISE_CATEGORY)6)
|
|
#define FIT_EXERCISE_CATEGORY_CURL ((FIT_EXERCISE_CATEGORY)7)
|
|
#define FIT_EXERCISE_CATEGORY_DEADLIFT ((FIT_EXERCISE_CATEGORY)8)
|
|
#define FIT_EXERCISE_CATEGORY_FLYE ((FIT_EXERCISE_CATEGORY)9)
|
|
#define FIT_EXERCISE_CATEGORY_HIP_RAISE ((FIT_EXERCISE_CATEGORY)10)
|
|
#define FIT_EXERCISE_CATEGORY_HIP_STABILITY ((FIT_EXERCISE_CATEGORY)11)
|
|
#define FIT_EXERCISE_CATEGORY_HIP_SWING ((FIT_EXERCISE_CATEGORY)12)
|
|
#define FIT_EXERCISE_CATEGORY_HYPEREXTENSION ((FIT_EXERCISE_CATEGORY)13)
|
|
#define FIT_EXERCISE_CATEGORY_LATERAL_RAISE ((FIT_EXERCISE_CATEGORY)14)
|
|
#define FIT_EXERCISE_CATEGORY_LEG_CURL ((FIT_EXERCISE_CATEGORY)15)
|
|
#define FIT_EXERCISE_CATEGORY_LEG_RAISE ((FIT_EXERCISE_CATEGORY)16)
|
|
#define FIT_EXERCISE_CATEGORY_LUNGE ((FIT_EXERCISE_CATEGORY)17)
|
|
#define FIT_EXERCISE_CATEGORY_OLYMPIC_LIFT ((FIT_EXERCISE_CATEGORY)18)
|
|
#define FIT_EXERCISE_CATEGORY_PLANK ((FIT_EXERCISE_CATEGORY)19)
|
|
#define FIT_EXERCISE_CATEGORY_PLYO ((FIT_EXERCISE_CATEGORY)20)
|
|
#define FIT_EXERCISE_CATEGORY_PULL_UP ((FIT_EXERCISE_CATEGORY)21)
|
|
#define FIT_EXERCISE_CATEGORY_PUSH_UP ((FIT_EXERCISE_CATEGORY)22)
|
|
#define FIT_EXERCISE_CATEGORY_ROW ((FIT_EXERCISE_CATEGORY)23)
|
|
#define FIT_EXERCISE_CATEGORY_SHOULDER_PRESS ((FIT_EXERCISE_CATEGORY)24)
|
|
#define FIT_EXERCISE_CATEGORY_SHOULDER_STABILITY ((FIT_EXERCISE_CATEGORY)25)
|
|
#define FIT_EXERCISE_CATEGORY_SHRUG ((FIT_EXERCISE_CATEGORY)26)
|
|
#define FIT_EXERCISE_CATEGORY_SIT_UP ((FIT_EXERCISE_CATEGORY)27)
|
|
#define FIT_EXERCISE_CATEGORY_SQUAT ((FIT_EXERCISE_CATEGORY)28)
|
|
#define FIT_EXERCISE_CATEGORY_TOTAL_BODY ((FIT_EXERCISE_CATEGORY)29)
|
|
#define FIT_EXERCISE_CATEGORY_TRICEPS_EXTENSION ((FIT_EXERCISE_CATEGORY)30)
|
|
#define FIT_EXERCISE_CATEGORY_WARM_UP ((FIT_EXERCISE_CATEGORY)31)
|
|
#define FIT_EXERCISE_CATEGORY_RUN ((FIT_EXERCISE_CATEGORY)32)
|
|
#define FIT_EXERCISE_CATEGORY_UNKNOWN ((FIT_EXERCISE_CATEGORY)65534)
|
|
#define FIT_EXERCISE_CATEGORY_COUNT 34
|
|
|
|
typedef FIT_UINT16 FIT_BENCH_PRESS_EXERCISE_NAME;
|
|
#define FIT_BENCH_PRESS_EXERCISE_NAME_INVALID FIT_UINT16_INVALID
|
|
#define FIT_BENCH_PRESS_EXERCISE_NAME_ALTERNATING_DUMBBELL_CHEST_PRESS_ON_SWISS_BALL ((FIT_BENCH_PRESS_EXERCISE_NAME)0)
|
|
#define FIT_BENCH_PRESS_EXERCISE_NAME_BARBELL_BENCH_PRESS ((FIT_BENCH_PRESS_EXERCISE_NAME)1)
|
|
#define FIT_BENCH_PRESS_EXERCISE_NAME_BARBELL_BOARD_BENCH_PRESS ((FIT_BENCH_PRESS_EXERCISE_NAME)2)
|
|
#define FIT_BENCH_PRESS_EXERCISE_NAME_BARBELL_FLOOR_PRESS ((FIT_BENCH_PRESS_EXERCISE_NAME)3)
|
|
#define FIT_BENCH_PRESS_EXERCISE_NAME_CLOSE_GRIP_BARBELL_BENCH_PRESS ((FIT_BENCH_PRESS_EXERCISE_NAME)4)
|
|
#define FIT_BENCH_PRESS_EXERCISE_NAME_DECLINE_DUMBBELL_BENCH_PRESS ((FIT_BENCH_PRESS_EXERCISE_NAME)5)
|
|
#define FIT_BENCH_PRESS_EXERCISE_NAME_DUMBBELL_BENCH_PRESS ((FIT_BENCH_PRESS_EXERCISE_NAME)6)
|
|
#define FIT_BENCH_PRESS_EXERCISE_NAME_DUMBBELL_FLOOR_PRESS ((FIT_BENCH_PRESS_EXERCISE_NAME)7)
|
|
#define FIT_BENCH_PRESS_EXERCISE_NAME_INCLINE_BARBELL_BENCH_PRESS ((FIT_BENCH_PRESS_EXERCISE_NAME)8)
|
|
#define FIT_BENCH_PRESS_EXERCISE_NAME_INCLINE_DUMBBELL_BENCH_PRESS ((FIT_BENCH_PRESS_EXERCISE_NAME)9)
|
|
#define FIT_BENCH_PRESS_EXERCISE_NAME_INCLINE_SMITH_MACHINE_BENCH_PRESS ((FIT_BENCH_PRESS_EXERCISE_NAME)10)
|
|
#define FIT_BENCH_PRESS_EXERCISE_NAME_ISOMETRIC_BARBELL_BENCH_PRESS ((FIT_BENCH_PRESS_EXERCISE_NAME)11)
|
|
#define FIT_BENCH_PRESS_EXERCISE_NAME_KETTLEBELL_CHEST_PRESS ((FIT_BENCH_PRESS_EXERCISE_NAME)12)
|
|
#define FIT_BENCH_PRESS_EXERCISE_NAME_NEUTRAL_GRIP_DUMBBELL_BENCH_PRESS ((FIT_BENCH_PRESS_EXERCISE_NAME)13)
|
|
#define FIT_BENCH_PRESS_EXERCISE_NAME_NEUTRAL_GRIP_DUMBBELL_INCLINE_BENCH_PRESS ((FIT_BENCH_PRESS_EXERCISE_NAME)14)
|
|
#define FIT_BENCH_PRESS_EXERCISE_NAME_ONE_ARM_FLOOR_PRESS ((FIT_BENCH_PRESS_EXERCISE_NAME)15)
|
|
#define FIT_BENCH_PRESS_EXERCISE_NAME_WEIGHTED_ONE_ARM_FLOOR_PRESS ((FIT_BENCH_PRESS_EXERCISE_NAME)16)
|
|
#define FIT_BENCH_PRESS_EXERCISE_NAME_PARTIAL_LOCKOUT ((FIT_BENCH_PRESS_EXERCISE_NAME)17)
|
|
#define FIT_BENCH_PRESS_EXERCISE_NAME_REVERSE_GRIP_BARBELL_BENCH_PRESS ((FIT_BENCH_PRESS_EXERCISE_NAME)18)
|
|
#define FIT_BENCH_PRESS_EXERCISE_NAME_REVERSE_GRIP_INCLINE_BENCH_PRESS ((FIT_BENCH_PRESS_EXERCISE_NAME)19)
|
|
#define FIT_BENCH_PRESS_EXERCISE_NAME_SINGLE_ARM_CABLE_CHEST_PRESS ((FIT_BENCH_PRESS_EXERCISE_NAME)20)
|
|
#define FIT_BENCH_PRESS_EXERCISE_NAME_SINGLE_ARM_DUMBBELL_BENCH_PRESS ((FIT_BENCH_PRESS_EXERCISE_NAME)21)
|
|
#define FIT_BENCH_PRESS_EXERCISE_NAME_SMITH_MACHINE_BENCH_PRESS ((FIT_BENCH_PRESS_EXERCISE_NAME)22)
|
|
#define FIT_BENCH_PRESS_EXERCISE_NAME_SWISS_BALL_DUMBBELL_CHEST_PRESS ((FIT_BENCH_PRESS_EXERCISE_NAME)23)
|
|
#define FIT_BENCH_PRESS_EXERCISE_NAME_TRIPLE_STOP_BARBELL_BENCH_PRESS ((FIT_BENCH_PRESS_EXERCISE_NAME)24)
|
|
#define FIT_BENCH_PRESS_EXERCISE_NAME_WIDE_GRIP_BARBELL_BENCH_PRESS ((FIT_BENCH_PRESS_EXERCISE_NAME)25)
|
|
#define FIT_BENCH_PRESS_EXERCISE_NAME_ALTERNATING_DUMBBELL_CHEST_PRESS ((FIT_BENCH_PRESS_EXERCISE_NAME)26)
|
|
#define FIT_BENCH_PRESS_EXERCISE_NAME_COUNT 27
|
|
|
|
typedef FIT_UINT16 FIT_CALF_RAISE_EXERCISE_NAME;
|
|
#define FIT_CALF_RAISE_EXERCISE_NAME_INVALID FIT_UINT16_INVALID
|
|
#define FIT_CALF_RAISE_EXERCISE_NAME_3_WAY_CALF_RAISE ((FIT_CALF_RAISE_EXERCISE_NAME)0)
|
|
#define FIT_CALF_RAISE_EXERCISE_NAME_3_WAY_WEIGHTED_CALF_RAISE ((FIT_CALF_RAISE_EXERCISE_NAME)1)
|
|
#define FIT_CALF_RAISE_EXERCISE_NAME_3_WAY_SINGLE_LEG_CALF_RAISE ((FIT_CALF_RAISE_EXERCISE_NAME)2)
|
|
#define FIT_CALF_RAISE_EXERCISE_NAME_3_WAY_WEIGHTED_SINGLE_LEG_CALF_RAISE ((FIT_CALF_RAISE_EXERCISE_NAME)3)
|
|
#define FIT_CALF_RAISE_EXERCISE_NAME_DONKEY_CALF_RAISE ((FIT_CALF_RAISE_EXERCISE_NAME)4)
|
|
#define FIT_CALF_RAISE_EXERCISE_NAME_WEIGHTED_DONKEY_CALF_RAISE ((FIT_CALF_RAISE_EXERCISE_NAME)5)
|
|
#define FIT_CALF_RAISE_EXERCISE_NAME_SEATED_CALF_RAISE ((FIT_CALF_RAISE_EXERCISE_NAME)6)
|
|
#define FIT_CALF_RAISE_EXERCISE_NAME_WEIGHTED_SEATED_CALF_RAISE ((FIT_CALF_RAISE_EXERCISE_NAME)7)
|
|
#define FIT_CALF_RAISE_EXERCISE_NAME_SEATED_DUMBBELL_TOE_RAISE ((FIT_CALF_RAISE_EXERCISE_NAME)8)
|
|
#define FIT_CALF_RAISE_EXERCISE_NAME_SINGLE_LEG_BENT_KNEE_CALF_RAISE ((FIT_CALF_RAISE_EXERCISE_NAME)9)
|
|
#define FIT_CALF_RAISE_EXERCISE_NAME_WEIGHTED_SINGLE_LEG_BENT_KNEE_CALF_RAISE ((FIT_CALF_RAISE_EXERCISE_NAME)10)
|
|
#define FIT_CALF_RAISE_EXERCISE_NAME_SINGLE_LEG_DECLINE_PUSH_UP ((FIT_CALF_RAISE_EXERCISE_NAME)11)
|
|
#define FIT_CALF_RAISE_EXERCISE_NAME_SINGLE_LEG_DONKEY_CALF_RAISE ((FIT_CALF_RAISE_EXERCISE_NAME)12)
|
|
#define FIT_CALF_RAISE_EXERCISE_NAME_WEIGHTED_SINGLE_LEG_DONKEY_CALF_RAISE ((FIT_CALF_RAISE_EXERCISE_NAME)13)
|
|
#define FIT_CALF_RAISE_EXERCISE_NAME_SINGLE_LEG_HIP_RAISE_WITH_KNEE_HOLD ((FIT_CALF_RAISE_EXERCISE_NAME)14)
|
|
#define FIT_CALF_RAISE_EXERCISE_NAME_SINGLE_LEG_STANDING_CALF_RAISE ((FIT_CALF_RAISE_EXERCISE_NAME)15)
|
|
#define FIT_CALF_RAISE_EXERCISE_NAME_SINGLE_LEG_STANDING_DUMBBELL_CALF_RAISE ((FIT_CALF_RAISE_EXERCISE_NAME)16)
|
|
#define FIT_CALF_RAISE_EXERCISE_NAME_STANDING_BARBELL_CALF_RAISE ((FIT_CALF_RAISE_EXERCISE_NAME)17)
|
|
#define FIT_CALF_RAISE_EXERCISE_NAME_STANDING_CALF_RAISE ((FIT_CALF_RAISE_EXERCISE_NAME)18)
|
|
#define FIT_CALF_RAISE_EXERCISE_NAME_WEIGHTED_STANDING_CALF_RAISE ((FIT_CALF_RAISE_EXERCISE_NAME)19)
|
|
#define FIT_CALF_RAISE_EXERCISE_NAME_STANDING_DUMBBELL_CALF_RAISE ((FIT_CALF_RAISE_EXERCISE_NAME)20)
|
|
#define FIT_CALF_RAISE_EXERCISE_NAME_COUNT 21
|
|
|
|
typedef FIT_UINT16 FIT_CARDIO_EXERCISE_NAME;
|
|
#define FIT_CARDIO_EXERCISE_NAME_INVALID FIT_UINT16_INVALID
|
|
#define FIT_CARDIO_EXERCISE_NAME_BOB_AND_WEAVE_CIRCLE ((FIT_CARDIO_EXERCISE_NAME)0)
|
|
#define FIT_CARDIO_EXERCISE_NAME_WEIGHTED_BOB_AND_WEAVE_CIRCLE ((FIT_CARDIO_EXERCISE_NAME)1)
|
|
#define FIT_CARDIO_EXERCISE_NAME_CARDIO_CORE_CRAWL ((FIT_CARDIO_EXERCISE_NAME)2)
|
|
#define FIT_CARDIO_EXERCISE_NAME_WEIGHTED_CARDIO_CORE_CRAWL ((FIT_CARDIO_EXERCISE_NAME)3)
|
|
#define FIT_CARDIO_EXERCISE_NAME_DOUBLE_UNDER ((FIT_CARDIO_EXERCISE_NAME)4)
|
|
#define FIT_CARDIO_EXERCISE_NAME_WEIGHTED_DOUBLE_UNDER ((FIT_CARDIO_EXERCISE_NAME)5)
|
|
#define FIT_CARDIO_EXERCISE_NAME_JUMP_ROPE ((FIT_CARDIO_EXERCISE_NAME)6)
|
|
#define FIT_CARDIO_EXERCISE_NAME_WEIGHTED_JUMP_ROPE ((FIT_CARDIO_EXERCISE_NAME)7)
|
|
#define FIT_CARDIO_EXERCISE_NAME_JUMP_ROPE_CROSSOVER ((FIT_CARDIO_EXERCISE_NAME)8)
|
|
#define FIT_CARDIO_EXERCISE_NAME_WEIGHTED_JUMP_ROPE_CROSSOVER ((FIT_CARDIO_EXERCISE_NAME)9)
|
|
#define FIT_CARDIO_EXERCISE_NAME_JUMP_ROPE_JOG ((FIT_CARDIO_EXERCISE_NAME)10)
|
|
#define FIT_CARDIO_EXERCISE_NAME_WEIGHTED_JUMP_ROPE_JOG ((FIT_CARDIO_EXERCISE_NAME)11)
|
|
#define FIT_CARDIO_EXERCISE_NAME_JUMPING_JACKS ((FIT_CARDIO_EXERCISE_NAME)12)
|
|
#define FIT_CARDIO_EXERCISE_NAME_WEIGHTED_JUMPING_JACKS ((FIT_CARDIO_EXERCISE_NAME)13)
|
|
#define FIT_CARDIO_EXERCISE_NAME_SKI_MOGULS ((FIT_CARDIO_EXERCISE_NAME)14)
|
|
#define FIT_CARDIO_EXERCISE_NAME_WEIGHTED_SKI_MOGULS ((FIT_CARDIO_EXERCISE_NAME)15)
|
|
#define FIT_CARDIO_EXERCISE_NAME_SPLIT_JACKS ((FIT_CARDIO_EXERCISE_NAME)16)
|
|
#define FIT_CARDIO_EXERCISE_NAME_WEIGHTED_SPLIT_JACKS ((FIT_CARDIO_EXERCISE_NAME)17)
|
|
#define FIT_CARDIO_EXERCISE_NAME_SQUAT_JACKS ((FIT_CARDIO_EXERCISE_NAME)18)
|
|
#define FIT_CARDIO_EXERCISE_NAME_WEIGHTED_SQUAT_JACKS ((FIT_CARDIO_EXERCISE_NAME)19)
|
|
#define FIT_CARDIO_EXERCISE_NAME_TRIPLE_UNDER ((FIT_CARDIO_EXERCISE_NAME)20)
|
|
#define FIT_CARDIO_EXERCISE_NAME_WEIGHTED_TRIPLE_UNDER ((FIT_CARDIO_EXERCISE_NAME)21)
|
|
#define FIT_CARDIO_EXERCISE_NAME_COUNT 22
|
|
|
|
typedef FIT_UINT16 FIT_CARRY_EXERCISE_NAME;
|
|
#define FIT_CARRY_EXERCISE_NAME_INVALID FIT_UINT16_INVALID
|
|
#define FIT_CARRY_EXERCISE_NAME_BAR_HOLDS ((FIT_CARRY_EXERCISE_NAME)0)
|
|
#define FIT_CARRY_EXERCISE_NAME_FARMERS_WALK ((FIT_CARRY_EXERCISE_NAME)1)
|
|
#define FIT_CARRY_EXERCISE_NAME_FARMERS_WALK_ON_TOES ((FIT_CARRY_EXERCISE_NAME)2)
|
|
#define FIT_CARRY_EXERCISE_NAME_HEX_DUMBBELL_HOLD ((FIT_CARRY_EXERCISE_NAME)3)
|
|
#define FIT_CARRY_EXERCISE_NAME_OVERHEAD_CARRY ((FIT_CARRY_EXERCISE_NAME)4)
|
|
#define FIT_CARRY_EXERCISE_NAME_COUNT 5
|
|
|
|
typedef FIT_UINT16 FIT_CHOP_EXERCISE_NAME;
|
|
#define FIT_CHOP_EXERCISE_NAME_INVALID FIT_UINT16_INVALID
|
|
#define FIT_CHOP_EXERCISE_NAME_CABLE_PULL_THROUGH ((FIT_CHOP_EXERCISE_NAME)0)
|
|
#define FIT_CHOP_EXERCISE_NAME_CABLE_ROTATIONAL_LIFT ((FIT_CHOP_EXERCISE_NAME)1)
|
|
#define FIT_CHOP_EXERCISE_NAME_CABLE_WOODCHOP ((FIT_CHOP_EXERCISE_NAME)2)
|
|
#define FIT_CHOP_EXERCISE_NAME_CROSS_CHOP_TO_KNEE ((FIT_CHOP_EXERCISE_NAME)3)
|
|
#define FIT_CHOP_EXERCISE_NAME_WEIGHTED_CROSS_CHOP_TO_KNEE ((FIT_CHOP_EXERCISE_NAME)4)
|
|
#define FIT_CHOP_EXERCISE_NAME_DUMBBELL_CHOP ((FIT_CHOP_EXERCISE_NAME)5)
|
|
#define FIT_CHOP_EXERCISE_NAME_HALF_KNEELING_ROTATION ((FIT_CHOP_EXERCISE_NAME)6)
|
|
#define FIT_CHOP_EXERCISE_NAME_WEIGHTED_HALF_KNEELING_ROTATION ((FIT_CHOP_EXERCISE_NAME)7)
|
|
#define FIT_CHOP_EXERCISE_NAME_HALF_KNEELING_ROTATIONAL_CHOP ((FIT_CHOP_EXERCISE_NAME)8)
|
|
#define FIT_CHOP_EXERCISE_NAME_HALF_KNEELING_ROTATIONAL_REVERSE_CHOP ((FIT_CHOP_EXERCISE_NAME)9)
|
|
#define FIT_CHOP_EXERCISE_NAME_HALF_KNEELING_STABILITY_CHOP ((FIT_CHOP_EXERCISE_NAME)10)
|
|
#define FIT_CHOP_EXERCISE_NAME_HALF_KNEELING_STABILITY_REVERSE_CHOP ((FIT_CHOP_EXERCISE_NAME)11)
|
|
#define FIT_CHOP_EXERCISE_NAME_KNEELING_ROTATIONAL_CHOP ((FIT_CHOP_EXERCISE_NAME)12)
|
|
#define FIT_CHOP_EXERCISE_NAME_KNEELING_ROTATIONAL_REVERSE_CHOP ((FIT_CHOP_EXERCISE_NAME)13)
|
|
#define FIT_CHOP_EXERCISE_NAME_KNEELING_STABILITY_CHOP ((FIT_CHOP_EXERCISE_NAME)14)
|
|
#define FIT_CHOP_EXERCISE_NAME_KNEELING_WOODCHOPPER ((FIT_CHOP_EXERCISE_NAME)15)
|
|
#define FIT_CHOP_EXERCISE_NAME_MEDICINE_BALL_WOOD_CHOPS ((FIT_CHOP_EXERCISE_NAME)16)
|
|
#define FIT_CHOP_EXERCISE_NAME_POWER_SQUAT_CHOPS ((FIT_CHOP_EXERCISE_NAME)17)
|
|
#define FIT_CHOP_EXERCISE_NAME_WEIGHTED_POWER_SQUAT_CHOPS ((FIT_CHOP_EXERCISE_NAME)18)
|
|
#define FIT_CHOP_EXERCISE_NAME_STANDING_ROTATIONAL_CHOP ((FIT_CHOP_EXERCISE_NAME)19)
|
|
#define FIT_CHOP_EXERCISE_NAME_STANDING_SPLIT_ROTATIONAL_CHOP ((FIT_CHOP_EXERCISE_NAME)20)
|
|
#define FIT_CHOP_EXERCISE_NAME_STANDING_SPLIT_ROTATIONAL_REVERSE_CHOP ((FIT_CHOP_EXERCISE_NAME)21)
|
|
#define FIT_CHOP_EXERCISE_NAME_STANDING_STABILITY_REVERSE_CHOP ((FIT_CHOP_EXERCISE_NAME)22)
|
|
#define FIT_CHOP_EXERCISE_NAME_COUNT 23
|
|
|
|
typedef FIT_UINT16 FIT_CORE_EXERCISE_NAME;
|
|
#define FIT_CORE_EXERCISE_NAME_INVALID FIT_UINT16_INVALID
|
|
#define FIT_CORE_EXERCISE_NAME_ABS_JABS ((FIT_CORE_EXERCISE_NAME)0)
|
|
#define FIT_CORE_EXERCISE_NAME_WEIGHTED_ABS_JABS ((FIT_CORE_EXERCISE_NAME)1)
|
|
#define FIT_CORE_EXERCISE_NAME_ALTERNATING_PLATE_REACH ((FIT_CORE_EXERCISE_NAME)2)
|
|
#define FIT_CORE_EXERCISE_NAME_BARBELL_ROLLOUT ((FIT_CORE_EXERCISE_NAME)3)
|
|
#define FIT_CORE_EXERCISE_NAME_WEIGHTED_BARBELL_ROLLOUT ((FIT_CORE_EXERCISE_NAME)4)
|
|
#define FIT_CORE_EXERCISE_NAME_BODY_BAR_OBLIQUE_TWIST ((FIT_CORE_EXERCISE_NAME)5)
|
|
#define FIT_CORE_EXERCISE_NAME_CABLE_CORE_PRESS ((FIT_CORE_EXERCISE_NAME)6)
|
|
#define FIT_CORE_EXERCISE_NAME_CABLE_SIDE_BEND ((FIT_CORE_EXERCISE_NAME)7)
|
|
#define FIT_CORE_EXERCISE_NAME_SIDE_BEND ((FIT_CORE_EXERCISE_NAME)8)
|
|
#define FIT_CORE_EXERCISE_NAME_WEIGHTED_SIDE_BEND ((FIT_CORE_EXERCISE_NAME)9)
|
|
#define FIT_CORE_EXERCISE_NAME_CRESCENT_CIRCLE ((FIT_CORE_EXERCISE_NAME)10)
|
|
#define FIT_CORE_EXERCISE_NAME_WEIGHTED_CRESCENT_CIRCLE ((FIT_CORE_EXERCISE_NAME)11)
|
|
#define FIT_CORE_EXERCISE_NAME_CYCLING_RUSSIAN_TWIST ((FIT_CORE_EXERCISE_NAME)12)
|
|
#define FIT_CORE_EXERCISE_NAME_WEIGHTED_CYCLING_RUSSIAN_TWIST ((FIT_CORE_EXERCISE_NAME)13)
|
|
#define FIT_CORE_EXERCISE_NAME_ELEVATED_FEET_RUSSIAN_TWIST ((FIT_CORE_EXERCISE_NAME)14)
|
|
#define FIT_CORE_EXERCISE_NAME_WEIGHTED_ELEVATED_FEET_RUSSIAN_TWIST ((FIT_CORE_EXERCISE_NAME)15)
|
|
#define FIT_CORE_EXERCISE_NAME_HALF_TURKISH_GET_UP ((FIT_CORE_EXERCISE_NAME)16)
|
|
#define FIT_CORE_EXERCISE_NAME_KETTLEBELL_WINDMILL ((FIT_CORE_EXERCISE_NAME)17)
|
|
#define FIT_CORE_EXERCISE_NAME_KNEELING_AB_WHEEL ((FIT_CORE_EXERCISE_NAME)18)
|
|
#define FIT_CORE_EXERCISE_NAME_WEIGHTED_KNEELING_AB_WHEEL ((FIT_CORE_EXERCISE_NAME)19)
|
|
#define FIT_CORE_EXERCISE_NAME_MODIFIED_FRONT_LEVER ((FIT_CORE_EXERCISE_NAME)20)
|
|
#define FIT_CORE_EXERCISE_NAME_OPEN_KNEE_TUCKS ((FIT_CORE_EXERCISE_NAME)21)
|
|
#define FIT_CORE_EXERCISE_NAME_WEIGHTED_OPEN_KNEE_TUCKS ((FIT_CORE_EXERCISE_NAME)22)
|
|
#define FIT_CORE_EXERCISE_NAME_SIDE_ABS_LEG_LIFT ((FIT_CORE_EXERCISE_NAME)23)
|
|
#define FIT_CORE_EXERCISE_NAME_WEIGHTED_SIDE_ABS_LEG_LIFT ((FIT_CORE_EXERCISE_NAME)24)
|
|
#define FIT_CORE_EXERCISE_NAME_SWISS_BALL_JACKKNIFE ((FIT_CORE_EXERCISE_NAME)25)
|
|
#define FIT_CORE_EXERCISE_NAME_WEIGHTED_SWISS_BALL_JACKKNIFE ((FIT_CORE_EXERCISE_NAME)26)
|
|
#define FIT_CORE_EXERCISE_NAME_SWISS_BALL_PIKE ((FIT_CORE_EXERCISE_NAME)27)
|
|
#define FIT_CORE_EXERCISE_NAME_WEIGHTED_SWISS_BALL_PIKE ((FIT_CORE_EXERCISE_NAME)28)
|
|
#define FIT_CORE_EXERCISE_NAME_SWISS_BALL_ROLLOUT ((FIT_CORE_EXERCISE_NAME)29)
|
|
#define FIT_CORE_EXERCISE_NAME_WEIGHTED_SWISS_BALL_ROLLOUT ((FIT_CORE_EXERCISE_NAME)30)
|
|
#define FIT_CORE_EXERCISE_NAME_TRIANGLE_HIP_PRESS ((FIT_CORE_EXERCISE_NAME)31)
|
|
#define FIT_CORE_EXERCISE_NAME_WEIGHTED_TRIANGLE_HIP_PRESS ((FIT_CORE_EXERCISE_NAME)32)
|
|
#define FIT_CORE_EXERCISE_NAME_TRX_SUSPENDED_JACKKNIFE ((FIT_CORE_EXERCISE_NAME)33)
|
|
#define FIT_CORE_EXERCISE_NAME_WEIGHTED_TRX_SUSPENDED_JACKKNIFE ((FIT_CORE_EXERCISE_NAME)34)
|
|
#define FIT_CORE_EXERCISE_NAME_U_BOAT ((FIT_CORE_EXERCISE_NAME)35)
|
|
#define FIT_CORE_EXERCISE_NAME_WEIGHTED_U_BOAT ((FIT_CORE_EXERCISE_NAME)36)
|
|
#define FIT_CORE_EXERCISE_NAME_WINDMILL_SWITCHES ((FIT_CORE_EXERCISE_NAME)37)
|
|
#define FIT_CORE_EXERCISE_NAME_WEIGHTED_WINDMILL_SWITCHES ((FIT_CORE_EXERCISE_NAME)38)
|
|
#define FIT_CORE_EXERCISE_NAME_ALTERNATING_SLIDE_OUT ((FIT_CORE_EXERCISE_NAME)39)
|
|
#define FIT_CORE_EXERCISE_NAME_WEIGHTED_ALTERNATING_SLIDE_OUT ((FIT_CORE_EXERCISE_NAME)40)
|
|
#define FIT_CORE_EXERCISE_NAME_GHD_BACK_EXTENSIONS ((FIT_CORE_EXERCISE_NAME)41)
|
|
#define FIT_CORE_EXERCISE_NAME_WEIGHTED_GHD_BACK_EXTENSIONS ((FIT_CORE_EXERCISE_NAME)42)
|
|
#define FIT_CORE_EXERCISE_NAME_OVERHEAD_WALK ((FIT_CORE_EXERCISE_NAME)43)
|
|
#define FIT_CORE_EXERCISE_NAME_INCHWORM ((FIT_CORE_EXERCISE_NAME)44)
|
|
#define FIT_CORE_EXERCISE_NAME_WEIGHTED_MODIFIED_FRONT_LEVER ((FIT_CORE_EXERCISE_NAME)45)
|
|
#define FIT_CORE_EXERCISE_NAME_RUSSIAN_TWIST ((FIT_CORE_EXERCISE_NAME)46)
|
|
#define FIT_CORE_EXERCISE_NAME_ABDOMINAL_LEG_ROTATIONS ((FIT_CORE_EXERCISE_NAME)47) // Deprecated do not use
|
|
#define FIT_CORE_EXERCISE_NAME_ARM_AND_LEG_EXTENSION_ON_KNEES ((FIT_CORE_EXERCISE_NAME)48)
|
|
#define FIT_CORE_EXERCISE_NAME_BICYCLE ((FIT_CORE_EXERCISE_NAME)49)
|
|
#define FIT_CORE_EXERCISE_NAME_BICEP_CURL_WITH_LEG_EXTENSION ((FIT_CORE_EXERCISE_NAME)50)
|
|
#define FIT_CORE_EXERCISE_NAME_CAT_COW ((FIT_CORE_EXERCISE_NAME)51)
|
|
#define FIT_CORE_EXERCISE_NAME_CORKSCREW ((FIT_CORE_EXERCISE_NAME)52)
|
|
#define FIT_CORE_EXERCISE_NAME_CRISS_CROSS ((FIT_CORE_EXERCISE_NAME)53)
|
|
#define FIT_CORE_EXERCISE_NAME_CRISS_CROSS_WITH_BALL ((FIT_CORE_EXERCISE_NAME)54) // Deprecated do not use
|
|
#define FIT_CORE_EXERCISE_NAME_DOUBLE_LEG_STRETCH ((FIT_CORE_EXERCISE_NAME)55)
|
|
#define FIT_CORE_EXERCISE_NAME_KNEE_FOLDS ((FIT_CORE_EXERCISE_NAME)56)
|
|
#define FIT_CORE_EXERCISE_NAME_LOWER_LIFT ((FIT_CORE_EXERCISE_NAME)57)
|
|
#define FIT_CORE_EXERCISE_NAME_NECK_PULL ((FIT_CORE_EXERCISE_NAME)58)
|
|
#define FIT_CORE_EXERCISE_NAME_PELVIC_CLOCKS ((FIT_CORE_EXERCISE_NAME)59)
|
|
#define FIT_CORE_EXERCISE_NAME_ROLL_OVER ((FIT_CORE_EXERCISE_NAME)60)
|
|
#define FIT_CORE_EXERCISE_NAME_ROLL_UP ((FIT_CORE_EXERCISE_NAME)61)
|
|
#define FIT_CORE_EXERCISE_NAME_ROLLING ((FIT_CORE_EXERCISE_NAME)62)
|
|
#define FIT_CORE_EXERCISE_NAME_ROWING_1 ((FIT_CORE_EXERCISE_NAME)63)
|
|
#define FIT_CORE_EXERCISE_NAME_ROWING_2 ((FIT_CORE_EXERCISE_NAME)64)
|
|
#define FIT_CORE_EXERCISE_NAME_SCISSORS ((FIT_CORE_EXERCISE_NAME)65)
|
|
#define FIT_CORE_EXERCISE_NAME_SINGLE_LEG_CIRCLES ((FIT_CORE_EXERCISE_NAME)66)
|
|
#define FIT_CORE_EXERCISE_NAME_SINGLE_LEG_STRETCH ((FIT_CORE_EXERCISE_NAME)67)
|
|
#define FIT_CORE_EXERCISE_NAME_SNAKE_TWIST_1_AND_2 ((FIT_CORE_EXERCISE_NAME)68) // Deprecated do not use
|
|
#define FIT_CORE_EXERCISE_NAME_SWAN ((FIT_CORE_EXERCISE_NAME)69)
|
|
#define FIT_CORE_EXERCISE_NAME_SWIMMING ((FIT_CORE_EXERCISE_NAME)70)
|
|
#define FIT_CORE_EXERCISE_NAME_TEASER ((FIT_CORE_EXERCISE_NAME)71)
|
|
#define FIT_CORE_EXERCISE_NAME_THE_HUNDRED ((FIT_CORE_EXERCISE_NAME)72)
|
|
#define FIT_CORE_EXERCISE_NAME_COUNT 73
|
|
|
|
typedef FIT_UINT16 FIT_CRUNCH_EXERCISE_NAME;
|
|
#define FIT_CRUNCH_EXERCISE_NAME_INVALID FIT_UINT16_INVALID
|
|
#define FIT_CRUNCH_EXERCISE_NAME_BICYCLE_CRUNCH ((FIT_CRUNCH_EXERCISE_NAME)0)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_CABLE_CRUNCH ((FIT_CRUNCH_EXERCISE_NAME)1)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_CIRCULAR_ARM_CRUNCH ((FIT_CRUNCH_EXERCISE_NAME)2)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_CROSSED_ARMS_CRUNCH ((FIT_CRUNCH_EXERCISE_NAME)3)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_WEIGHTED_CROSSED_ARMS_CRUNCH ((FIT_CRUNCH_EXERCISE_NAME)4)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_CROSS_LEG_REVERSE_CRUNCH ((FIT_CRUNCH_EXERCISE_NAME)5)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_WEIGHTED_CROSS_LEG_REVERSE_CRUNCH ((FIT_CRUNCH_EXERCISE_NAME)6)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_CRUNCH_CHOP ((FIT_CRUNCH_EXERCISE_NAME)7)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_WEIGHTED_CRUNCH_CHOP ((FIT_CRUNCH_EXERCISE_NAME)8)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_DOUBLE_CRUNCH ((FIT_CRUNCH_EXERCISE_NAME)9)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_WEIGHTED_DOUBLE_CRUNCH ((FIT_CRUNCH_EXERCISE_NAME)10)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_ELBOW_TO_KNEE_CRUNCH ((FIT_CRUNCH_EXERCISE_NAME)11)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_WEIGHTED_ELBOW_TO_KNEE_CRUNCH ((FIT_CRUNCH_EXERCISE_NAME)12)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_FLUTTER_KICKS ((FIT_CRUNCH_EXERCISE_NAME)13)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_WEIGHTED_FLUTTER_KICKS ((FIT_CRUNCH_EXERCISE_NAME)14)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_FOAM_ROLLER_REVERSE_CRUNCH_ON_BENCH ((FIT_CRUNCH_EXERCISE_NAME)15)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_WEIGHTED_FOAM_ROLLER_REVERSE_CRUNCH_ON_BENCH ((FIT_CRUNCH_EXERCISE_NAME)16)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_FOAM_ROLLER_REVERSE_CRUNCH_WITH_DUMBBELL ((FIT_CRUNCH_EXERCISE_NAME)17)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_FOAM_ROLLER_REVERSE_CRUNCH_WITH_MEDICINE_BALL ((FIT_CRUNCH_EXERCISE_NAME)18)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_FROG_PRESS ((FIT_CRUNCH_EXERCISE_NAME)19)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_HANGING_KNEE_RAISE_OBLIQUE_CRUNCH ((FIT_CRUNCH_EXERCISE_NAME)20)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_WEIGHTED_HANGING_KNEE_RAISE_OBLIQUE_CRUNCH ((FIT_CRUNCH_EXERCISE_NAME)21)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_HIP_CROSSOVER ((FIT_CRUNCH_EXERCISE_NAME)22)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_WEIGHTED_HIP_CROSSOVER ((FIT_CRUNCH_EXERCISE_NAME)23)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_HOLLOW_ROCK ((FIT_CRUNCH_EXERCISE_NAME)24)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_WEIGHTED_HOLLOW_ROCK ((FIT_CRUNCH_EXERCISE_NAME)25)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_INCLINE_REVERSE_CRUNCH ((FIT_CRUNCH_EXERCISE_NAME)26)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_WEIGHTED_INCLINE_REVERSE_CRUNCH ((FIT_CRUNCH_EXERCISE_NAME)27)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_KNEELING_CABLE_CRUNCH ((FIT_CRUNCH_EXERCISE_NAME)28)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_KNEELING_CROSS_CRUNCH ((FIT_CRUNCH_EXERCISE_NAME)29)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_WEIGHTED_KNEELING_CROSS_CRUNCH ((FIT_CRUNCH_EXERCISE_NAME)30)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_KNEELING_OBLIQUE_CABLE_CRUNCH ((FIT_CRUNCH_EXERCISE_NAME)31)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_KNEES_TO_ELBOW ((FIT_CRUNCH_EXERCISE_NAME)32)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_LEG_EXTENSIONS ((FIT_CRUNCH_EXERCISE_NAME)33)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_WEIGHTED_LEG_EXTENSIONS ((FIT_CRUNCH_EXERCISE_NAME)34)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_LEG_LEVERS ((FIT_CRUNCH_EXERCISE_NAME)35)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_MCGILL_CURL_UP ((FIT_CRUNCH_EXERCISE_NAME)36)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_WEIGHTED_MCGILL_CURL_UP ((FIT_CRUNCH_EXERCISE_NAME)37)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_MODIFIED_PILATES_ROLL_UP_WITH_BALL ((FIT_CRUNCH_EXERCISE_NAME)38)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_WEIGHTED_MODIFIED_PILATES_ROLL_UP_WITH_BALL ((FIT_CRUNCH_EXERCISE_NAME)39)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_PILATES_CRUNCH ((FIT_CRUNCH_EXERCISE_NAME)40)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_WEIGHTED_PILATES_CRUNCH ((FIT_CRUNCH_EXERCISE_NAME)41)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_PILATES_ROLL_UP_WITH_BALL ((FIT_CRUNCH_EXERCISE_NAME)42)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_WEIGHTED_PILATES_ROLL_UP_WITH_BALL ((FIT_CRUNCH_EXERCISE_NAME)43)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_RAISED_LEGS_CRUNCH ((FIT_CRUNCH_EXERCISE_NAME)44)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_WEIGHTED_RAISED_LEGS_CRUNCH ((FIT_CRUNCH_EXERCISE_NAME)45)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_REVERSE_CRUNCH ((FIT_CRUNCH_EXERCISE_NAME)46)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_WEIGHTED_REVERSE_CRUNCH ((FIT_CRUNCH_EXERCISE_NAME)47)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_REVERSE_CRUNCH_ON_A_BENCH ((FIT_CRUNCH_EXERCISE_NAME)48)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_WEIGHTED_REVERSE_CRUNCH_ON_A_BENCH ((FIT_CRUNCH_EXERCISE_NAME)49)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_REVERSE_CURL_AND_LIFT ((FIT_CRUNCH_EXERCISE_NAME)50)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_WEIGHTED_REVERSE_CURL_AND_LIFT ((FIT_CRUNCH_EXERCISE_NAME)51)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_ROTATIONAL_LIFT ((FIT_CRUNCH_EXERCISE_NAME)52)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_WEIGHTED_ROTATIONAL_LIFT ((FIT_CRUNCH_EXERCISE_NAME)53)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_SEATED_ALTERNATING_REVERSE_CRUNCH ((FIT_CRUNCH_EXERCISE_NAME)54)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_WEIGHTED_SEATED_ALTERNATING_REVERSE_CRUNCH ((FIT_CRUNCH_EXERCISE_NAME)55)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_SEATED_LEG_U ((FIT_CRUNCH_EXERCISE_NAME)56)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_WEIGHTED_SEATED_LEG_U ((FIT_CRUNCH_EXERCISE_NAME)57)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_SIDE_TO_SIDE_CRUNCH_AND_WEAVE ((FIT_CRUNCH_EXERCISE_NAME)58)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_WEIGHTED_SIDE_TO_SIDE_CRUNCH_AND_WEAVE ((FIT_CRUNCH_EXERCISE_NAME)59)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_SINGLE_LEG_REVERSE_CRUNCH ((FIT_CRUNCH_EXERCISE_NAME)60)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_WEIGHTED_SINGLE_LEG_REVERSE_CRUNCH ((FIT_CRUNCH_EXERCISE_NAME)61)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_SKATER_CRUNCH_CROSS ((FIT_CRUNCH_EXERCISE_NAME)62)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_WEIGHTED_SKATER_CRUNCH_CROSS ((FIT_CRUNCH_EXERCISE_NAME)63)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_STANDING_CABLE_CRUNCH ((FIT_CRUNCH_EXERCISE_NAME)64)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_STANDING_SIDE_CRUNCH ((FIT_CRUNCH_EXERCISE_NAME)65)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_STEP_CLIMB ((FIT_CRUNCH_EXERCISE_NAME)66)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_WEIGHTED_STEP_CLIMB ((FIT_CRUNCH_EXERCISE_NAME)67)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_SWISS_BALL_CRUNCH ((FIT_CRUNCH_EXERCISE_NAME)68)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_SWISS_BALL_REVERSE_CRUNCH ((FIT_CRUNCH_EXERCISE_NAME)69)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_WEIGHTED_SWISS_BALL_REVERSE_CRUNCH ((FIT_CRUNCH_EXERCISE_NAME)70)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_SWISS_BALL_RUSSIAN_TWIST ((FIT_CRUNCH_EXERCISE_NAME)71)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_WEIGHTED_SWISS_BALL_RUSSIAN_TWIST ((FIT_CRUNCH_EXERCISE_NAME)72)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_SWISS_BALL_SIDE_CRUNCH ((FIT_CRUNCH_EXERCISE_NAME)73)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_WEIGHTED_SWISS_BALL_SIDE_CRUNCH ((FIT_CRUNCH_EXERCISE_NAME)74)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_THORACIC_CRUNCHES_ON_FOAM_ROLLER ((FIT_CRUNCH_EXERCISE_NAME)75)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_WEIGHTED_THORACIC_CRUNCHES_ON_FOAM_ROLLER ((FIT_CRUNCH_EXERCISE_NAME)76)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_TRICEPS_CRUNCH ((FIT_CRUNCH_EXERCISE_NAME)77)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_WEIGHTED_BICYCLE_CRUNCH ((FIT_CRUNCH_EXERCISE_NAME)78)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_WEIGHTED_CRUNCH ((FIT_CRUNCH_EXERCISE_NAME)79)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_WEIGHTED_SWISS_BALL_CRUNCH ((FIT_CRUNCH_EXERCISE_NAME)80)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_TOES_TO_BAR ((FIT_CRUNCH_EXERCISE_NAME)81)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_WEIGHTED_TOES_TO_BAR ((FIT_CRUNCH_EXERCISE_NAME)82)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_CRUNCH ((FIT_CRUNCH_EXERCISE_NAME)83)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_STRAIGHT_LEG_CRUNCH_WITH_BALL ((FIT_CRUNCH_EXERCISE_NAME)84)
|
|
#define FIT_CRUNCH_EXERCISE_NAME_COUNT 85
|
|
|
|
typedef FIT_UINT16 FIT_CURL_EXERCISE_NAME;
|
|
#define FIT_CURL_EXERCISE_NAME_INVALID FIT_UINT16_INVALID
|
|
#define FIT_CURL_EXERCISE_NAME_ALTERNATING_DUMBBELL_BICEPS_CURL ((FIT_CURL_EXERCISE_NAME)0)
|
|
#define FIT_CURL_EXERCISE_NAME_ALTERNATING_DUMBBELL_BICEPS_CURL_ON_SWISS_BALL ((FIT_CURL_EXERCISE_NAME)1)
|
|
#define FIT_CURL_EXERCISE_NAME_ALTERNATING_INCLINE_DUMBBELL_BICEPS_CURL ((FIT_CURL_EXERCISE_NAME)2)
|
|
#define FIT_CURL_EXERCISE_NAME_BARBELL_BICEPS_CURL ((FIT_CURL_EXERCISE_NAME)3)
|
|
#define FIT_CURL_EXERCISE_NAME_BARBELL_REVERSE_WRIST_CURL ((FIT_CURL_EXERCISE_NAME)4)
|
|
#define FIT_CURL_EXERCISE_NAME_BARBELL_WRIST_CURL ((FIT_CURL_EXERCISE_NAME)5)
|
|
#define FIT_CURL_EXERCISE_NAME_BEHIND_THE_BACK_BARBELL_REVERSE_WRIST_CURL ((FIT_CURL_EXERCISE_NAME)6)
|
|
#define FIT_CURL_EXERCISE_NAME_BEHIND_THE_BACK_ONE_ARM_CABLE_CURL ((FIT_CURL_EXERCISE_NAME)7)
|
|
#define FIT_CURL_EXERCISE_NAME_CABLE_BICEPS_CURL ((FIT_CURL_EXERCISE_NAME)8)
|
|
#define FIT_CURL_EXERCISE_NAME_CABLE_HAMMER_CURL ((FIT_CURL_EXERCISE_NAME)9)
|
|
#define FIT_CURL_EXERCISE_NAME_CHEATING_BARBELL_BICEPS_CURL ((FIT_CURL_EXERCISE_NAME)10)
|
|
#define FIT_CURL_EXERCISE_NAME_CLOSE_GRIP_EZ_BAR_BICEPS_CURL ((FIT_CURL_EXERCISE_NAME)11)
|
|
#define FIT_CURL_EXERCISE_NAME_CROSS_BODY_DUMBBELL_HAMMER_CURL ((FIT_CURL_EXERCISE_NAME)12)
|
|
#define FIT_CURL_EXERCISE_NAME_DEAD_HANG_BICEPS_CURL ((FIT_CURL_EXERCISE_NAME)13)
|
|
#define FIT_CURL_EXERCISE_NAME_DECLINE_HAMMER_CURL ((FIT_CURL_EXERCISE_NAME)14)
|
|
#define FIT_CURL_EXERCISE_NAME_DUMBBELL_BICEPS_CURL_WITH_STATIC_HOLD ((FIT_CURL_EXERCISE_NAME)15)
|
|
#define FIT_CURL_EXERCISE_NAME_DUMBBELL_HAMMER_CURL ((FIT_CURL_EXERCISE_NAME)16)
|
|
#define FIT_CURL_EXERCISE_NAME_DUMBBELL_REVERSE_WRIST_CURL ((FIT_CURL_EXERCISE_NAME)17)
|
|
#define FIT_CURL_EXERCISE_NAME_DUMBBELL_WRIST_CURL ((FIT_CURL_EXERCISE_NAME)18)
|
|
#define FIT_CURL_EXERCISE_NAME_EZ_BAR_PREACHER_CURL ((FIT_CURL_EXERCISE_NAME)19)
|
|
#define FIT_CURL_EXERCISE_NAME_FORWARD_BEND_BICEPS_CURL ((FIT_CURL_EXERCISE_NAME)20)
|
|
#define FIT_CURL_EXERCISE_NAME_HAMMER_CURL_TO_PRESS ((FIT_CURL_EXERCISE_NAME)21)
|
|
#define FIT_CURL_EXERCISE_NAME_INCLINE_DUMBBELL_BICEPS_CURL ((FIT_CURL_EXERCISE_NAME)22)
|
|
#define FIT_CURL_EXERCISE_NAME_INCLINE_OFFSET_THUMB_DUMBBELL_CURL ((FIT_CURL_EXERCISE_NAME)23)
|
|
#define FIT_CURL_EXERCISE_NAME_KETTLEBELL_BICEPS_CURL ((FIT_CURL_EXERCISE_NAME)24)
|
|
#define FIT_CURL_EXERCISE_NAME_LYING_CONCENTRATION_CABLE_CURL ((FIT_CURL_EXERCISE_NAME)25)
|
|
#define FIT_CURL_EXERCISE_NAME_ONE_ARM_PREACHER_CURL ((FIT_CURL_EXERCISE_NAME)26)
|
|
#define FIT_CURL_EXERCISE_NAME_PLATE_PINCH_CURL ((FIT_CURL_EXERCISE_NAME)27)
|
|
#define FIT_CURL_EXERCISE_NAME_PREACHER_CURL_WITH_CABLE ((FIT_CURL_EXERCISE_NAME)28)
|
|
#define FIT_CURL_EXERCISE_NAME_REVERSE_EZ_BAR_CURL ((FIT_CURL_EXERCISE_NAME)29)
|
|
#define FIT_CURL_EXERCISE_NAME_REVERSE_GRIP_WRIST_CURL ((FIT_CURL_EXERCISE_NAME)30)
|
|
#define FIT_CURL_EXERCISE_NAME_REVERSE_GRIP_BARBELL_BICEPS_CURL ((FIT_CURL_EXERCISE_NAME)31)
|
|
#define FIT_CURL_EXERCISE_NAME_SEATED_ALTERNATING_DUMBBELL_BICEPS_CURL ((FIT_CURL_EXERCISE_NAME)32)
|
|
#define FIT_CURL_EXERCISE_NAME_SEATED_DUMBBELL_BICEPS_CURL ((FIT_CURL_EXERCISE_NAME)33)
|
|
#define FIT_CURL_EXERCISE_NAME_SEATED_REVERSE_DUMBBELL_CURL ((FIT_CURL_EXERCISE_NAME)34)
|
|
#define FIT_CURL_EXERCISE_NAME_SPLIT_STANCE_OFFSET_PINKY_DUMBBELL_CURL ((FIT_CURL_EXERCISE_NAME)35)
|
|
#define FIT_CURL_EXERCISE_NAME_STANDING_ALTERNATING_DUMBBELL_CURLS ((FIT_CURL_EXERCISE_NAME)36)
|
|
#define FIT_CURL_EXERCISE_NAME_STANDING_DUMBBELL_BICEPS_CURL ((FIT_CURL_EXERCISE_NAME)37)
|
|
#define FIT_CURL_EXERCISE_NAME_STANDING_EZ_BAR_BICEPS_CURL ((FIT_CURL_EXERCISE_NAME)38)
|
|
#define FIT_CURL_EXERCISE_NAME_STATIC_CURL ((FIT_CURL_EXERCISE_NAME)39)
|
|
#define FIT_CURL_EXERCISE_NAME_SWISS_BALL_DUMBBELL_OVERHEAD_TRICEPS_EXTENSION ((FIT_CURL_EXERCISE_NAME)40)
|
|
#define FIT_CURL_EXERCISE_NAME_SWISS_BALL_EZ_BAR_PREACHER_CURL ((FIT_CURL_EXERCISE_NAME)41)
|
|
#define FIT_CURL_EXERCISE_NAME_TWISTING_STANDING_DUMBBELL_BICEPS_CURL ((FIT_CURL_EXERCISE_NAME)42)
|
|
#define FIT_CURL_EXERCISE_NAME_WIDE_GRIP_EZ_BAR_BICEPS_CURL ((FIT_CURL_EXERCISE_NAME)43)
|
|
#define FIT_CURL_EXERCISE_NAME_COUNT 44
|
|
|
|
typedef FIT_UINT16 FIT_DEADLIFT_EXERCISE_NAME;
|
|
#define FIT_DEADLIFT_EXERCISE_NAME_INVALID FIT_UINT16_INVALID
|
|
#define FIT_DEADLIFT_EXERCISE_NAME_BARBELL_DEADLIFT ((FIT_DEADLIFT_EXERCISE_NAME)0)
|
|
#define FIT_DEADLIFT_EXERCISE_NAME_BARBELL_STRAIGHT_LEG_DEADLIFT ((FIT_DEADLIFT_EXERCISE_NAME)1)
|
|
#define FIT_DEADLIFT_EXERCISE_NAME_DUMBBELL_DEADLIFT ((FIT_DEADLIFT_EXERCISE_NAME)2)
|
|
#define FIT_DEADLIFT_EXERCISE_NAME_DUMBBELL_SINGLE_LEG_DEADLIFT_TO_ROW ((FIT_DEADLIFT_EXERCISE_NAME)3)
|
|
#define FIT_DEADLIFT_EXERCISE_NAME_DUMBBELL_STRAIGHT_LEG_DEADLIFT ((FIT_DEADLIFT_EXERCISE_NAME)4)
|
|
#define FIT_DEADLIFT_EXERCISE_NAME_KETTLEBELL_FLOOR_TO_SHELF ((FIT_DEADLIFT_EXERCISE_NAME)5)
|
|
#define FIT_DEADLIFT_EXERCISE_NAME_ONE_ARM_ONE_LEG_DEADLIFT ((FIT_DEADLIFT_EXERCISE_NAME)6)
|
|
#define FIT_DEADLIFT_EXERCISE_NAME_RACK_PULL ((FIT_DEADLIFT_EXERCISE_NAME)7)
|
|
#define FIT_DEADLIFT_EXERCISE_NAME_ROTATIONAL_DUMBBELL_STRAIGHT_LEG_DEADLIFT ((FIT_DEADLIFT_EXERCISE_NAME)8)
|
|
#define FIT_DEADLIFT_EXERCISE_NAME_SINGLE_ARM_DEADLIFT ((FIT_DEADLIFT_EXERCISE_NAME)9)
|
|
#define FIT_DEADLIFT_EXERCISE_NAME_SINGLE_LEG_BARBELL_DEADLIFT ((FIT_DEADLIFT_EXERCISE_NAME)10)
|
|
#define FIT_DEADLIFT_EXERCISE_NAME_SINGLE_LEG_BARBELL_STRAIGHT_LEG_DEADLIFT ((FIT_DEADLIFT_EXERCISE_NAME)11)
|
|
#define FIT_DEADLIFT_EXERCISE_NAME_SINGLE_LEG_DEADLIFT_WITH_BARBELL ((FIT_DEADLIFT_EXERCISE_NAME)12)
|
|
#define FIT_DEADLIFT_EXERCISE_NAME_SINGLE_LEG_RDL_CIRCUIT ((FIT_DEADLIFT_EXERCISE_NAME)13)
|
|
#define FIT_DEADLIFT_EXERCISE_NAME_SINGLE_LEG_ROMANIAN_DEADLIFT_WITH_DUMBBELL ((FIT_DEADLIFT_EXERCISE_NAME)14)
|
|
#define FIT_DEADLIFT_EXERCISE_NAME_SUMO_DEADLIFT ((FIT_DEADLIFT_EXERCISE_NAME)15)
|
|
#define FIT_DEADLIFT_EXERCISE_NAME_SUMO_DEADLIFT_HIGH_PULL ((FIT_DEADLIFT_EXERCISE_NAME)16)
|
|
#define FIT_DEADLIFT_EXERCISE_NAME_TRAP_BAR_DEADLIFT ((FIT_DEADLIFT_EXERCISE_NAME)17)
|
|
#define FIT_DEADLIFT_EXERCISE_NAME_WIDE_GRIP_BARBELL_DEADLIFT ((FIT_DEADLIFT_EXERCISE_NAME)18)
|
|
#define FIT_DEADLIFT_EXERCISE_NAME_COUNT 19
|
|
|
|
typedef FIT_UINT16 FIT_FLYE_EXERCISE_NAME;
|
|
#define FIT_FLYE_EXERCISE_NAME_INVALID FIT_UINT16_INVALID
|
|
#define FIT_FLYE_EXERCISE_NAME_CABLE_CROSSOVER ((FIT_FLYE_EXERCISE_NAME)0)
|
|
#define FIT_FLYE_EXERCISE_NAME_DECLINE_DUMBBELL_FLYE ((FIT_FLYE_EXERCISE_NAME)1)
|
|
#define FIT_FLYE_EXERCISE_NAME_DUMBBELL_FLYE ((FIT_FLYE_EXERCISE_NAME)2)
|
|
#define FIT_FLYE_EXERCISE_NAME_INCLINE_DUMBBELL_FLYE ((FIT_FLYE_EXERCISE_NAME)3)
|
|
#define FIT_FLYE_EXERCISE_NAME_KETTLEBELL_FLYE ((FIT_FLYE_EXERCISE_NAME)4)
|
|
#define FIT_FLYE_EXERCISE_NAME_KNEELING_REAR_FLYE ((FIT_FLYE_EXERCISE_NAME)5)
|
|
#define FIT_FLYE_EXERCISE_NAME_SINGLE_ARM_STANDING_CABLE_REVERSE_FLYE ((FIT_FLYE_EXERCISE_NAME)6)
|
|
#define FIT_FLYE_EXERCISE_NAME_SWISS_BALL_DUMBBELL_FLYE ((FIT_FLYE_EXERCISE_NAME)7)
|
|
#define FIT_FLYE_EXERCISE_NAME_ARM_ROTATIONS ((FIT_FLYE_EXERCISE_NAME)8)
|
|
#define FIT_FLYE_EXERCISE_NAME_HUG_A_TREE ((FIT_FLYE_EXERCISE_NAME)9)
|
|
#define FIT_FLYE_EXERCISE_NAME_COUNT 10
|
|
|
|
typedef FIT_UINT16 FIT_HIP_RAISE_EXERCISE_NAME;
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_INVALID FIT_UINT16_INVALID
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_BARBELL_HIP_THRUST_ON_FLOOR ((FIT_HIP_RAISE_EXERCISE_NAME)0)
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_BARBELL_HIP_THRUST_WITH_BENCH ((FIT_HIP_RAISE_EXERCISE_NAME)1)
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_BENT_KNEE_SWISS_BALL_REVERSE_HIP_RAISE ((FIT_HIP_RAISE_EXERCISE_NAME)2)
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_WEIGHTED_BENT_KNEE_SWISS_BALL_REVERSE_HIP_RAISE ((FIT_HIP_RAISE_EXERCISE_NAME)3)
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_BRIDGE_WITH_LEG_EXTENSION ((FIT_HIP_RAISE_EXERCISE_NAME)4)
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_WEIGHTED_BRIDGE_WITH_LEG_EXTENSION ((FIT_HIP_RAISE_EXERCISE_NAME)5)
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_CLAM_BRIDGE ((FIT_HIP_RAISE_EXERCISE_NAME)6)
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_FRONT_KICK_TABLETOP ((FIT_HIP_RAISE_EXERCISE_NAME)7)
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_WEIGHTED_FRONT_KICK_TABLETOP ((FIT_HIP_RAISE_EXERCISE_NAME)8)
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_HIP_EXTENSION_AND_CROSS ((FIT_HIP_RAISE_EXERCISE_NAME)9)
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_WEIGHTED_HIP_EXTENSION_AND_CROSS ((FIT_HIP_RAISE_EXERCISE_NAME)10)
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_HIP_RAISE ((FIT_HIP_RAISE_EXERCISE_NAME)11)
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_WEIGHTED_HIP_RAISE ((FIT_HIP_RAISE_EXERCISE_NAME)12)
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_HIP_RAISE_WITH_FEET_ON_SWISS_BALL ((FIT_HIP_RAISE_EXERCISE_NAME)13)
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_WEIGHTED_HIP_RAISE_WITH_FEET_ON_SWISS_BALL ((FIT_HIP_RAISE_EXERCISE_NAME)14)
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_HIP_RAISE_WITH_HEAD_ON_BOSU_BALL ((FIT_HIP_RAISE_EXERCISE_NAME)15)
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_WEIGHTED_HIP_RAISE_WITH_HEAD_ON_BOSU_BALL ((FIT_HIP_RAISE_EXERCISE_NAME)16)
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_HIP_RAISE_WITH_HEAD_ON_SWISS_BALL ((FIT_HIP_RAISE_EXERCISE_NAME)17)
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_WEIGHTED_HIP_RAISE_WITH_HEAD_ON_SWISS_BALL ((FIT_HIP_RAISE_EXERCISE_NAME)18)
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_HIP_RAISE_WITH_KNEE_SQUEEZE ((FIT_HIP_RAISE_EXERCISE_NAME)19)
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_WEIGHTED_HIP_RAISE_WITH_KNEE_SQUEEZE ((FIT_HIP_RAISE_EXERCISE_NAME)20)
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_INCLINE_REAR_LEG_EXTENSION ((FIT_HIP_RAISE_EXERCISE_NAME)21)
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_WEIGHTED_INCLINE_REAR_LEG_EXTENSION ((FIT_HIP_RAISE_EXERCISE_NAME)22)
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_KETTLEBELL_SWING ((FIT_HIP_RAISE_EXERCISE_NAME)23)
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_MARCHING_HIP_RAISE ((FIT_HIP_RAISE_EXERCISE_NAME)24)
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_WEIGHTED_MARCHING_HIP_RAISE ((FIT_HIP_RAISE_EXERCISE_NAME)25)
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_MARCHING_HIP_RAISE_WITH_FEET_ON_A_SWISS_BALL ((FIT_HIP_RAISE_EXERCISE_NAME)26)
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_WEIGHTED_MARCHING_HIP_RAISE_WITH_FEET_ON_A_SWISS_BALL ((FIT_HIP_RAISE_EXERCISE_NAME)27)
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_REVERSE_HIP_RAISE ((FIT_HIP_RAISE_EXERCISE_NAME)28)
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_WEIGHTED_REVERSE_HIP_RAISE ((FIT_HIP_RAISE_EXERCISE_NAME)29)
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_SINGLE_LEG_HIP_RAISE ((FIT_HIP_RAISE_EXERCISE_NAME)30)
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_WEIGHTED_SINGLE_LEG_HIP_RAISE ((FIT_HIP_RAISE_EXERCISE_NAME)31)
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_SINGLE_LEG_HIP_RAISE_WITH_FOOT_ON_BENCH ((FIT_HIP_RAISE_EXERCISE_NAME)32)
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_WEIGHTED_SINGLE_LEG_HIP_RAISE_WITH_FOOT_ON_BENCH ((FIT_HIP_RAISE_EXERCISE_NAME)33)
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_SINGLE_LEG_HIP_RAISE_WITH_FOOT_ON_BOSU_BALL ((FIT_HIP_RAISE_EXERCISE_NAME)34)
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_WEIGHTED_SINGLE_LEG_HIP_RAISE_WITH_FOOT_ON_BOSU_BALL ((FIT_HIP_RAISE_EXERCISE_NAME)35)
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_SINGLE_LEG_HIP_RAISE_WITH_FOOT_ON_FOAM_ROLLER ((FIT_HIP_RAISE_EXERCISE_NAME)36)
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_WEIGHTED_SINGLE_LEG_HIP_RAISE_WITH_FOOT_ON_FOAM_ROLLER ((FIT_HIP_RAISE_EXERCISE_NAME)37)
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_SINGLE_LEG_HIP_RAISE_WITH_FOOT_ON_MEDICINE_BALL ((FIT_HIP_RAISE_EXERCISE_NAME)38)
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_WEIGHTED_SINGLE_LEG_HIP_RAISE_WITH_FOOT_ON_MEDICINE_BALL ((FIT_HIP_RAISE_EXERCISE_NAME)39)
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_SINGLE_LEG_HIP_RAISE_WITH_HEAD_ON_BOSU_BALL ((FIT_HIP_RAISE_EXERCISE_NAME)40)
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_WEIGHTED_SINGLE_LEG_HIP_RAISE_WITH_HEAD_ON_BOSU_BALL ((FIT_HIP_RAISE_EXERCISE_NAME)41)
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_WEIGHTED_CLAM_BRIDGE ((FIT_HIP_RAISE_EXERCISE_NAME)42)
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_SINGLE_LEG_SWISS_BALL_HIP_RAISE_AND_LEG_CURL ((FIT_HIP_RAISE_EXERCISE_NAME)43)
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_CLAMS ((FIT_HIP_RAISE_EXERCISE_NAME)44)
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_INNER_THIGH_CIRCLES ((FIT_HIP_RAISE_EXERCISE_NAME)45) // Deprecated do not use
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_INNER_THIGH_SIDE_LIFT ((FIT_HIP_RAISE_EXERCISE_NAME)46) // Deprecated do not use
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_LEG_CIRCLES ((FIT_HIP_RAISE_EXERCISE_NAME)47)
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_LEG_LIFT ((FIT_HIP_RAISE_EXERCISE_NAME)48)
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_LEG_LIFT_IN_EXTERNAL_ROTATION ((FIT_HIP_RAISE_EXERCISE_NAME)49)
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_COUNT 50
|
|
|
|
typedef FIT_UINT16 FIT_HIP_STABILITY_EXERCISE_NAME;
|
|
#define FIT_HIP_STABILITY_EXERCISE_NAME_INVALID FIT_UINT16_INVALID
|
|
#define FIT_HIP_STABILITY_EXERCISE_NAME_BAND_SIDE_LYING_LEG_RAISE ((FIT_HIP_STABILITY_EXERCISE_NAME)0)
|
|
#define FIT_HIP_STABILITY_EXERCISE_NAME_DEAD_BUG ((FIT_HIP_STABILITY_EXERCISE_NAME)1)
|
|
#define FIT_HIP_STABILITY_EXERCISE_NAME_WEIGHTED_DEAD_BUG ((FIT_HIP_STABILITY_EXERCISE_NAME)2)
|
|
#define FIT_HIP_STABILITY_EXERCISE_NAME_EXTERNAL_HIP_RAISE ((FIT_HIP_STABILITY_EXERCISE_NAME)3)
|
|
#define FIT_HIP_STABILITY_EXERCISE_NAME_WEIGHTED_EXTERNAL_HIP_RAISE ((FIT_HIP_STABILITY_EXERCISE_NAME)4)
|
|
#define FIT_HIP_STABILITY_EXERCISE_NAME_FIRE_HYDRANT_KICKS ((FIT_HIP_STABILITY_EXERCISE_NAME)5)
|
|
#define FIT_HIP_STABILITY_EXERCISE_NAME_WEIGHTED_FIRE_HYDRANT_KICKS ((FIT_HIP_STABILITY_EXERCISE_NAME)6)
|
|
#define FIT_HIP_STABILITY_EXERCISE_NAME_HIP_CIRCLES ((FIT_HIP_STABILITY_EXERCISE_NAME)7)
|
|
#define FIT_HIP_STABILITY_EXERCISE_NAME_WEIGHTED_HIP_CIRCLES ((FIT_HIP_STABILITY_EXERCISE_NAME)8)
|
|
#define FIT_HIP_STABILITY_EXERCISE_NAME_INNER_THIGH_LIFT ((FIT_HIP_STABILITY_EXERCISE_NAME)9)
|
|
#define FIT_HIP_STABILITY_EXERCISE_NAME_WEIGHTED_INNER_THIGH_LIFT ((FIT_HIP_STABILITY_EXERCISE_NAME)10)
|
|
#define FIT_HIP_STABILITY_EXERCISE_NAME_LATERAL_WALKS_WITH_BAND_AT_ANKLES ((FIT_HIP_STABILITY_EXERCISE_NAME)11)
|
|
#define FIT_HIP_STABILITY_EXERCISE_NAME_PRETZEL_SIDE_KICK ((FIT_HIP_STABILITY_EXERCISE_NAME)12)
|
|
#define FIT_HIP_STABILITY_EXERCISE_NAME_WEIGHTED_PRETZEL_SIDE_KICK ((FIT_HIP_STABILITY_EXERCISE_NAME)13)
|
|
#define FIT_HIP_STABILITY_EXERCISE_NAME_PRONE_HIP_INTERNAL_ROTATION ((FIT_HIP_STABILITY_EXERCISE_NAME)14)
|
|
#define FIT_HIP_STABILITY_EXERCISE_NAME_WEIGHTED_PRONE_HIP_INTERNAL_ROTATION ((FIT_HIP_STABILITY_EXERCISE_NAME)15)
|
|
#define FIT_HIP_STABILITY_EXERCISE_NAME_QUADRUPED ((FIT_HIP_STABILITY_EXERCISE_NAME)16)
|
|
#define FIT_HIP_STABILITY_EXERCISE_NAME_QUADRUPED_HIP_EXTENSION ((FIT_HIP_STABILITY_EXERCISE_NAME)17)
|
|
#define FIT_HIP_STABILITY_EXERCISE_NAME_WEIGHTED_QUADRUPED_HIP_EXTENSION ((FIT_HIP_STABILITY_EXERCISE_NAME)18)
|
|
#define FIT_HIP_STABILITY_EXERCISE_NAME_QUADRUPED_WITH_LEG_LIFT ((FIT_HIP_STABILITY_EXERCISE_NAME)19)
|
|
#define FIT_HIP_STABILITY_EXERCISE_NAME_WEIGHTED_QUADRUPED_WITH_LEG_LIFT ((FIT_HIP_STABILITY_EXERCISE_NAME)20)
|
|
#define FIT_HIP_STABILITY_EXERCISE_NAME_SIDE_LYING_LEG_RAISE ((FIT_HIP_STABILITY_EXERCISE_NAME)21)
|
|
#define FIT_HIP_STABILITY_EXERCISE_NAME_WEIGHTED_SIDE_LYING_LEG_RAISE ((FIT_HIP_STABILITY_EXERCISE_NAME)22)
|
|
#define FIT_HIP_STABILITY_EXERCISE_NAME_SLIDING_HIP_ADDUCTION ((FIT_HIP_STABILITY_EXERCISE_NAME)23)
|
|
#define FIT_HIP_STABILITY_EXERCISE_NAME_WEIGHTED_SLIDING_HIP_ADDUCTION ((FIT_HIP_STABILITY_EXERCISE_NAME)24)
|
|
#define FIT_HIP_STABILITY_EXERCISE_NAME_STANDING_ADDUCTION ((FIT_HIP_STABILITY_EXERCISE_NAME)25)
|
|
#define FIT_HIP_STABILITY_EXERCISE_NAME_WEIGHTED_STANDING_ADDUCTION ((FIT_HIP_STABILITY_EXERCISE_NAME)26)
|
|
#define FIT_HIP_STABILITY_EXERCISE_NAME_STANDING_CABLE_HIP_ABDUCTION ((FIT_HIP_STABILITY_EXERCISE_NAME)27)
|
|
#define FIT_HIP_STABILITY_EXERCISE_NAME_STANDING_HIP_ABDUCTION ((FIT_HIP_STABILITY_EXERCISE_NAME)28)
|
|
#define FIT_HIP_STABILITY_EXERCISE_NAME_WEIGHTED_STANDING_HIP_ABDUCTION ((FIT_HIP_STABILITY_EXERCISE_NAME)29)
|
|
#define FIT_HIP_STABILITY_EXERCISE_NAME_STANDING_REAR_LEG_RAISE ((FIT_HIP_STABILITY_EXERCISE_NAME)30)
|
|
#define FIT_HIP_STABILITY_EXERCISE_NAME_WEIGHTED_STANDING_REAR_LEG_RAISE ((FIT_HIP_STABILITY_EXERCISE_NAME)31)
|
|
#define FIT_HIP_STABILITY_EXERCISE_NAME_SUPINE_HIP_INTERNAL_ROTATION ((FIT_HIP_STABILITY_EXERCISE_NAME)32)
|
|
#define FIT_HIP_STABILITY_EXERCISE_NAME_WEIGHTED_SUPINE_HIP_INTERNAL_ROTATION ((FIT_HIP_STABILITY_EXERCISE_NAME)33)
|
|
#define FIT_HIP_STABILITY_EXERCISE_NAME_COUNT 34
|
|
|
|
typedef FIT_UINT16 FIT_HIP_SWING_EXERCISE_NAME;
|
|
#define FIT_HIP_SWING_EXERCISE_NAME_INVALID FIT_UINT16_INVALID
|
|
#define FIT_HIP_SWING_EXERCISE_NAME_SINGLE_ARM_KETTLEBELL_SWING ((FIT_HIP_SWING_EXERCISE_NAME)0)
|
|
#define FIT_HIP_SWING_EXERCISE_NAME_SINGLE_ARM_DUMBBELL_SWING ((FIT_HIP_SWING_EXERCISE_NAME)1)
|
|
#define FIT_HIP_SWING_EXERCISE_NAME_STEP_OUT_SWING ((FIT_HIP_SWING_EXERCISE_NAME)2)
|
|
#define FIT_HIP_SWING_EXERCISE_NAME_COUNT 3
|
|
|
|
typedef FIT_UINT16 FIT_HYPEREXTENSION_EXERCISE_NAME;
|
|
#define FIT_HYPEREXTENSION_EXERCISE_NAME_INVALID FIT_UINT16_INVALID
|
|
#define FIT_HYPEREXTENSION_EXERCISE_NAME_BACK_EXTENSION_WITH_OPPOSITE_ARM_AND_LEG_REACH ((FIT_HYPEREXTENSION_EXERCISE_NAME)0)
|
|
#define FIT_HYPEREXTENSION_EXERCISE_NAME_WEIGHTED_BACK_EXTENSION_WITH_OPPOSITE_ARM_AND_LEG_REACH ((FIT_HYPEREXTENSION_EXERCISE_NAME)1)
|
|
#define FIT_HYPEREXTENSION_EXERCISE_NAME_BASE_ROTATIONS ((FIT_HYPEREXTENSION_EXERCISE_NAME)2)
|
|
#define FIT_HYPEREXTENSION_EXERCISE_NAME_WEIGHTED_BASE_ROTATIONS ((FIT_HYPEREXTENSION_EXERCISE_NAME)3)
|
|
#define FIT_HYPEREXTENSION_EXERCISE_NAME_BENT_KNEE_REVERSE_HYPEREXTENSION ((FIT_HYPEREXTENSION_EXERCISE_NAME)4)
|
|
#define FIT_HYPEREXTENSION_EXERCISE_NAME_WEIGHTED_BENT_KNEE_REVERSE_HYPEREXTENSION ((FIT_HYPEREXTENSION_EXERCISE_NAME)5)
|
|
#define FIT_HYPEREXTENSION_EXERCISE_NAME_HOLLOW_HOLD_AND_ROLL ((FIT_HYPEREXTENSION_EXERCISE_NAME)6)
|
|
#define FIT_HYPEREXTENSION_EXERCISE_NAME_WEIGHTED_HOLLOW_HOLD_AND_ROLL ((FIT_HYPEREXTENSION_EXERCISE_NAME)7)
|
|
#define FIT_HYPEREXTENSION_EXERCISE_NAME_KICKS ((FIT_HYPEREXTENSION_EXERCISE_NAME)8)
|
|
#define FIT_HYPEREXTENSION_EXERCISE_NAME_WEIGHTED_KICKS ((FIT_HYPEREXTENSION_EXERCISE_NAME)9)
|
|
#define FIT_HYPEREXTENSION_EXERCISE_NAME_KNEE_RAISES ((FIT_HYPEREXTENSION_EXERCISE_NAME)10)
|
|
#define FIT_HYPEREXTENSION_EXERCISE_NAME_WEIGHTED_KNEE_RAISES ((FIT_HYPEREXTENSION_EXERCISE_NAME)11)
|
|
#define FIT_HYPEREXTENSION_EXERCISE_NAME_KNEELING_SUPERMAN ((FIT_HYPEREXTENSION_EXERCISE_NAME)12)
|
|
#define FIT_HYPEREXTENSION_EXERCISE_NAME_WEIGHTED_KNEELING_SUPERMAN ((FIT_HYPEREXTENSION_EXERCISE_NAME)13)
|
|
#define FIT_HYPEREXTENSION_EXERCISE_NAME_LAT_PULL_DOWN_WITH_ROW ((FIT_HYPEREXTENSION_EXERCISE_NAME)14)
|
|
#define FIT_HYPEREXTENSION_EXERCISE_NAME_MEDICINE_BALL_DEADLIFT_TO_REACH ((FIT_HYPEREXTENSION_EXERCISE_NAME)15)
|
|
#define FIT_HYPEREXTENSION_EXERCISE_NAME_ONE_ARM_ONE_LEG_ROW ((FIT_HYPEREXTENSION_EXERCISE_NAME)16)
|
|
#define FIT_HYPEREXTENSION_EXERCISE_NAME_ONE_ARM_ROW_WITH_BAND ((FIT_HYPEREXTENSION_EXERCISE_NAME)17)
|
|
#define FIT_HYPEREXTENSION_EXERCISE_NAME_OVERHEAD_LUNGE_WITH_MEDICINE_BALL ((FIT_HYPEREXTENSION_EXERCISE_NAME)18)
|
|
#define FIT_HYPEREXTENSION_EXERCISE_NAME_PLANK_KNEE_TUCKS ((FIT_HYPEREXTENSION_EXERCISE_NAME)19)
|
|
#define FIT_HYPEREXTENSION_EXERCISE_NAME_WEIGHTED_PLANK_KNEE_TUCKS ((FIT_HYPEREXTENSION_EXERCISE_NAME)20)
|
|
#define FIT_HYPEREXTENSION_EXERCISE_NAME_SIDE_STEP ((FIT_HYPEREXTENSION_EXERCISE_NAME)21)
|
|
#define FIT_HYPEREXTENSION_EXERCISE_NAME_WEIGHTED_SIDE_STEP ((FIT_HYPEREXTENSION_EXERCISE_NAME)22)
|
|
#define FIT_HYPEREXTENSION_EXERCISE_NAME_SINGLE_LEG_BACK_EXTENSION ((FIT_HYPEREXTENSION_EXERCISE_NAME)23)
|
|
#define FIT_HYPEREXTENSION_EXERCISE_NAME_WEIGHTED_SINGLE_LEG_BACK_EXTENSION ((FIT_HYPEREXTENSION_EXERCISE_NAME)24)
|
|
#define FIT_HYPEREXTENSION_EXERCISE_NAME_SPINE_EXTENSION ((FIT_HYPEREXTENSION_EXERCISE_NAME)25)
|
|
#define FIT_HYPEREXTENSION_EXERCISE_NAME_WEIGHTED_SPINE_EXTENSION ((FIT_HYPEREXTENSION_EXERCISE_NAME)26)
|
|
#define FIT_HYPEREXTENSION_EXERCISE_NAME_STATIC_BACK_EXTENSION ((FIT_HYPEREXTENSION_EXERCISE_NAME)27)
|
|
#define FIT_HYPEREXTENSION_EXERCISE_NAME_WEIGHTED_STATIC_BACK_EXTENSION ((FIT_HYPEREXTENSION_EXERCISE_NAME)28)
|
|
#define FIT_HYPEREXTENSION_EXERCISE_NAME_SUPERMAN_FROM_FLOOR ((FIT_HYPEREXTENSION_EXERCISE_NAME)29)
|
|
#define FIT_HYPEREXTENSION_EXERCISE_NAME_WEIGHTED_SUPERMAN_FROM_FLOOR ((FIT_HYPEREXTENSION_EXERCISE_NAME)30)
|
|
#define FIT_HYPEREXTENSION_EXERCISE_NAME_SWISS_BALL_BACK_EXTENSION ((FIT_HYPEREXTENSION_EXERCISE_NAME)31)
|
|
#define FIT_HYPEREXTENSION_EXERCISE_NAME_WEIGHTED_SWISS_BALL_BACK_EXTENSION ((FIT_HYPEREXTENSION_EXERCISE_NAME)32)
|
|
#define FIT_HYPEREXTENSION_EXERCISE_NAME_SWISS_BALL_HYPEREXTENSION ((FIT_HYPEREXTENSION_EXERCISE_NAME)33)
|
|
#define FIT_HYPEREXTENSION_EXERCISE_NAME_WEIGHTED_SWISS_BALL_HYPEREXTENSION ((FIT_HYPEREXTENSION_EXERCISE_NAME)34)
|
|
#define FIT_HYPEREXTENSION_EXERCISE_NAME_SWISS_BALL_OPPOSITE_ARM_AND_LEG_LIFT ((FIT_HYPEREXTENSION_EXERCISE_NAME)35)
|
|
#define FIT_HYPEREXTENSION_EXERCISE_NAME_WEIGHTED_SWISS_BALL_OPPOSITE_ARM_AND_LEG_LIFT ((FIT_HYPEREXTENSION_EXERCISE_NAME)36)
|
|
#define FIT_HYPEREXTENSION_EXERCISE_NAME_SUPERMAN_ON_SWISS_BALL ((FIT_HYPEREXTENSION_EXERCISE_NAME)37)
|
|
#define FIT_HYPEREXTENSION_EXERCISE_NAME_COBRA ((FIT_HYPEREXTENSION_EXERCISE_NAME)38)
|
|
#define FIT_HYPEREXTENSION_EXERCISE_NAME_SUPINE_FLOOR_BARRE ((FIT_HYPEREXTENSION_EXERCISE_NAME)39) // Deprecated do not use
|
|
#define FIT_HYPEREXTENSION_EXERCISE_NAME_COUNT 40
|
|
|
|
typedef FIT_UINT16 FIT_LATERAL_RAISE_EXERCISE_NAME;
|
|
#define FIT_LATERAL_RAISE_EXERCISE_NAME_INVALID FIT_UINT16_INVALID
|
|
#define FIT_LATERAL_RAISE_EXERCISE_NAME_45_DEGREE_CABLE_EXTERNAL_ROTATION ((FIT_LATERAL_RAISE_EXERCISE_NAME)0)
|
|
#define FIT_LATERAL_RAISE_EXERCISE_NAME_ALTERNATING_LATERAL_RAISE_WITH_STATIC_HOLD ((FIT_LATERAL_RAISE_EXERCISE_NAME)1)
|
|
#define FIT_LATERAL_RAISE_EXERCISE_NAME_BAR_MUSCLE_UP ((FIT_LATERAL_RAISE_EXERCISE_NAME)2)
|
|
#define FIT_LATERAL_RAISE_EXERCISE_NAME_BENT_OVER_LATERAL_RAISE ((FIT_LATERAL_RAISE_EXERCISE_NAME)3)
|
|
#define FIT_LATERAL_RAISE_EXERCISE_NAME_CABLE_DIAGONAL_RAISE ((FIT_LATERAL_RAISE_EXERCISE_NAME)4)
|
|
#define FIT_LATERAL_RAISE_EXERCISE_NAME_CABLE_FRONT_RAISE ((FIT_LATERAL_RAISE_EXERCISE_NAME)5)
|
|
#define FIT_LATERAL_RAISE_EXERCISE_NAME_CALORIE_ROW ((FIT_LATERAL_RAISE_EXERCISE_NAME)6)
|
|
#define FIT_LATERAL_RAISE_EXERCISE_NAME_COMBO_SHOULDER_RAISE ((FIT_LATERAL_RAISE_EXERCISE_NAME)7)
|
|
#define FIT_LATERAL_RAISE_EXERCISE_NAME_DUMBBELL_DIAGONAL_RAISE ((FIT_LATERAL_RAISE_EXERCISE_NAME)8)
|
|
#define FIT_LATERAL_RAISE_EXERCISE_NAME_DUMBBELL_V_RAISE ((FIT_LATERAL_RAISE_EXERCISE_NAME)9)
|
|
#define FIT_LATERAL_RAISE_EXERCISE_NAME_FRONT_RAISE ((FIT_LATERAL_RAISE_EXERCISE_NAME)10)
|
|
#define FIT_LATERAL_RAISE_EXERCISE_NAME_LEANING_DUMBBELL_LATERAL_RAISE ((FIT_LATERAL_RAISE_EXERCISE_NAME)11)
|
|
#define FIT_LATERAL_RAISE_EXERCISE_NAME_LYING_DUMBBELL_RAISE ((FIT_LATERAL_RAISE_EXERCISE_NAME)12)
|
|
#define FIT_LATERAL_RAISE_EXERCISE_NAME_MUSCLE_UP ((FIT_LATERAL_RAISE_EXERCISE_NAME)13)
|
|
#define FIT_LATERAL_RAISE_EXERCISE_NAME_ONE_ARM_CABLE_LATERAL_RAISE ((FIT_LATERAL_RAISE_EXERCISE_NAME)14)
|
|
#define FIT_LATERAL_RAISE_EXERCISE_NAME_OVERHAND_GRIP_REAR_LATERAL_RAISE ((FIT_LATERAL_RAISE_EXERCISE_NAME)15)
|
|
#define FIT_LATERAL_RAISE_EXERCISE_NAME_PLATE_RAISES ((FIT_LATERAL_RAISE_EXERCISE_NAME)16)
|
|
#define FIT_LATERAL_RAISE_EXERCISE_NAME_RING_DIP ((FIT_LATERAL_RAISE_EXERCISE_NAME)17)
|
|
#define FIT_LATERAL_RAISE_EXERCISE_NAME_WEIGHTED_RING_DIP ((FIT_LATERAL_RAISE_EXERCISE_NAME)18)
|
|
#define FIT_LATERAL_RAISE_EXERCISE_NAME_RING_MUSCLE_UP ((FIT_LATERAL_RAISE_EXERCISE_NAME)19)
|
|
#define FIT_LATERAL_RAISE_EXERCISE_NAME_WEIGHTED_RING_MUSCLE_UP ((FIT_LATERAL_RAISE_EXERCISE_NAME)20)
|
|
#define FIT_LATERAL_RAISE_EXERCISE_NAME_ROPE_CLIMB ((FIT_LATERAL_RAISE_EXERCISE_NAME)21)
|
|
#define FIT_LATERAL_RAISE_EXERCISE_NAME_WEIGHTED_ROPE_CLIMB ((FIT_LATERAL_RAISE_EXERCISE_NAME)22)
|
|
#define FIT_LATERAL_RAISE_EXERCISE_NAME_SCAPTION ((FIT_LATERAL_RAISE_EXERCISE_NAME)23)
|
|
#define FIT_LATERAL_RAISE_EXERCISE_NAME_SEATED_LATERAL_RAISE ((FIT_LATERAL_RAISE_EXERCISE_NAME)24)
|
|
#define FIT_LATERAL_RAISE_EXERCISE_NAME_SEATED_REAR_LATERAL_RAISE ((FIT_LATERAL_RAISE_EXERCISE_NAME)25)
|
|
#define FIT_LATERAL_RAISE_EXERCISE_NAME_SIDE_LYING_LATERAL_RAISE ((FIT_LATERAL_RAISE_EXERCISE_NAME)26)
|
|
#define FIT_LATERAL_RAISE_EXERCISE_NAME_STANDING_LIFT ((FIT_LATERAL_RAISE_EXERCISE_NAME)27)
|
|
#define FIT_LATERAL_RAISE_EXERCISE_NAME_SUSPENDED_ROW ((FIT_LATERAL_RAISE_EXERCISE_NAME)28)
|
|
#define FIT_LATERAL_RAISE_EXERCISE_NAME_UNDERHAND_GRIP_REAR_LATERAL_RAISE ((FIT_LATERAL_RAISE_EXERCISE_NAME)29)
|
|
#define FIT_LATERAL_RAISE_EXERCISE_NAME_WALL_SLIDE ((FIT_LATERAL_RAISE_EXERCISE_NAME)30)
|
|
#define FIT_LATERAL_RAISE_EXERCISE_NAME_WEIGHTED_WALL_SLIDE ((FIT_LATERAL_RAISE_EXERCISE_NAME)31)
|
|
#define FIT_LATERAL_RAISE_EXERCISE_NAME_ARM_CIRCLES ((FIT_LATERAL_RAISE_EXERCISE_NAME)32)
|
|
#define FIT_LATERAL_RAISE_EXERCISE_NAME_SHAVING_THE_HEAD ((FIT_LATERAL_RAISE_EXERCISE_NAME)33)
|
|
#define FIT_LATERAL_RAISE_EXERCISE_NAME_COUNT 34
|
|
|
|
typedef FIT_UINT16 FIT_LEG_CURL_EXERCISE_NAME;
|
|
#define FIT_LEG_CURL_EXERCISE_NAME_INVALID FIT_UINT16_INVALID
|
|
#define FIT_LEG_CURL_EXERCISE_NAME_LEG_CURL ((FIT_LEG_CURL_EXERCISE_NAME)0)
|
|
#define FIT_LEG_CURL_EXERCISE_NAME_WEIGHTED_LEG_CURL ((FIT_LEG_CURL_EXERCISE_NAME)1)
|
|
#define FIT_LEG_CURL_EXERCISE_NAME_GOOD_MORNING ((FIT_LEG_CURL_EXERCISE_NAME)2)
|
|
#define FIT_LEG_CURL_EXERCISE_NAME_SEATED_BARBELL_GOOD_MORNING ((FIT_LEG_CURL_EXERCISE_NAME)3)
|
|
#define FIT_LEG_CURL_EXERCISE_NAME_SINGLE_LEG_BARBELL_GOOD_MORNING ((FIT_LEG_CURL_EXERCISE_NAME)4)
|
|
#define FIT_LEG_CURL_EXERCISE_NAME_SINGLE_LEG_SLIDING_LEG_CURL ((FIT_LEG_CURL_EXERCISE_NAME)5)
|
|
#define FIT_LEG_CURL_EXERCISE_NAME_SLIDING_LEG_CURL ((FIT_LEG_CURL_EXERCISE_NAME)6)
|
|
#define FIT_LEG_CURL_EXERCISE_NAME_SPLIT_BARBELL_GOOD_MORNING ((FIT_LEG_CURL_EXERCISE_NAME)7)
|
|
#define FIT_LEG_CURL_EXERCISE_NAME_SPLIT_STANCE_EXTENSION ((FIT_LEG_CURL_EXERCISE_NAME)8)
|
|
#define FIT_LEG_CURL_EXERCISE_NAME_STAGGERED_STANCE_GOOD_MORNING ((FIT_LEG_CURL_EXERCISE_NAME)9)
|
|
#define FIT_LEG_CURL_EXERCISE_NAME_SWISS_BALL_HIP_RAISE_AND_LEG_CURL ((FIT_LEG_CURL_EXERCISE_NAME)10)
|
|
#define FIT_LEG_CURL_EXERCISE_NAME_ZERCHER_GOOD_MORNING ((FIT_LEG_CURL_EXERCISE_NAME)11)
|
|
#define FIT_LEG_CURL_EXERCISE_NAME_COUNT 12
|
|
|
|
typedef FIT_UINT16 FIT_LEG_RAISE_EXERCISE_NAME;
|
|
#define FIT_LEG_RAISE_EXERCISE_NAME_INVALID FIT_UINT16_INVALID
|
|
#define FIT_LEG_RAISE_EXERCISE_NAME_HANGING_KNEE_RAISE ((FIT_LEG_RAISE_EXERCISE_NAME)0)
|
|
#define FIT_LEG_RAISE_EXERCISE_NAME_HANGING_LEG_RAISE ((FIT_LEG_RAISE_EXERCISE_NAME)1)
|
|
#define FIT_LEG_RAISE_EXERCISE_NAME_WEIGHTED_HANGING_LEG_RAISE ((FIT_LEG_RAISE_EXERCISE_NAME)2)
|
|
#define FIT_LEG_RAISE_EXERCISE_NAME_HANGING_SINGLE_LEG_RAISE ((FIT_LEG_RAISE_EXERCISE_NAME)3)
|
|
#define FIT_LEG_RAISE_EXERCISE_NAME_WEIGHTED_HANGING_SINGLE_LEG_RAISE ((FIT_LEG_RAISE_EXERCISE_NAME)4)
|
|
#define FIT_LEG_RAISE_EXERCISE_NAME_KETTLEBELL_LEG_RAISES ((FIT_LEG_RAISE_EXERCISE_NAME)5)
|
|
#define FIT_LEG_RAISE_EXERCISE_NAME_LEG_LOWERING_DRILL ((FIT_LEG_RAISE_EXERCISE_NAME)6)
|
|
#define FIT_LEG_RAISE_EXERCISE_NAME_WEIGHTED_LEG_LOWERING_DRILL ((FIT_LEG_RAISE_EXERCISE_NAME)7)
|
|
#define FIT_LEG_RAISE_EXERCISE_NAME_LYING_STRAIGHT_LEG_RAISE ((FIT_LEG_RAISE_EXERCISE_NAME)8)
|
|
#define FIT_LEG_RAISE_EXERCISE_NAME_WEIGHTED_LYING_STRAIGHT_LEG_RAISE ((FIT_LEG_RAISE_EXERCISE_NAME)9)
|
|
#define FIT_LEG_RAISE_EXERCISE_NAME_MEDICINE_BALL_LEG_DROPS ((FIT_LEG_RAISE_EXERCISE_NAME)10)
|
|
#define FIT_LEG_RAISE_EXERCISE_NAME_QUADRUPED_LEG_RAISE ((FIT_LEG_RAISE_EXERCISE_NAME)11)
|
|
#define FIT_LEG_RAISE_EXERCISE_NAME_WEIGHTED_QUADRUPED_LEG_RAISE ((FIT_LEG_RAISE_EXERCISE_NAME)12)
|
|
#define FIT_LEG_RAISE_EXERCISE_NAME_REVERSE_LEG_RAISE ((FIT_LEG_RAISE_EXERCISE_NAME)13)
|
|
#define FIT_LEG_RAISE_EXERCISE_NAME_WEIGHTED_REVERSE_LEG_RAISE ((FIT_LEG_RAISE_EXERCISE_NAME)14)
|
|
#define FIT_LEG_RAISE_EXERCISE_NAME_REVERSE_LEG_RAISE_ON_SWISS_BALL ((FIT_LEG_RAISE_EXERCISE_NAME)15)
|
|
#define FIT_LEG_RAISE_EXERCISE_NAME_WEIGHTED_REVERSE_LEG_RAISE_ON_SWISS_BALL ((FIT_LEG_RAISE_EXERCISE_NAME)16)
|
|
#define FIT_LEG_RAISE_EXERCISE_NAME_SINGLE_LEG_LOWERING_DRILL ((FIT_LEG_RAISE_EXERCISE_NAME)17)
|
|
#define FIT_LEG_RAISE_EXERCISE_NAME_WEIGHTED_SINGLE_LEG_LOWERING_DRILL ((FIT_LEG_RAISE_EXERCISE_NAME)18)
|
|
#define FIT_LEG_RAISE_EXERCISE_NAME_WEIGHTED_HANGING_KNEE_RAISE ((FIT_LEG_RAISE_EXERCISE_NAME)19)
|
|
#define FIT_LEG_RAISE_EXERCISE_NAME_LATERAL_STEPOVER ((FIT_LEG_RAISE_EXERCISE_NAME)20)
|
|
#define FIT_LEG_RAISE_EXERCISE_NAME_WEIGHTED_LATERAL_STEPOVER ((FIT_LEG_RAISE_EXERCISE_NAME)21)
|
|
#define FIT_LEG_RAISE_EXERCISE_NAME_COUNT 22
|
|
|
|
typedef FIT_UINT16 FIT_LUNGE_EXERCISE_NAME;
|
|
#define FIT_LUNGE_EXERCISE_NAME_INVALID FIT_UINT16_INVALID
|
|
#define FIT_LUNGE_EXERCISE_NAME_OVERHEAD_LUNGE ((FIT_LUNGE_EXERCISE_NAME)0)
|
|
#define FIT_LUNGE_EXERCISE_NAME_LUNGE_MATRIX ((FIT_LUNGE_EXERCISE_NAME)1)
|
|
#define FIT_LUNGE_EXERCISE_NAME_WEIGHTED_LUNGE_MATRIX ((FIT_LUNGE_EXERCISE_NAME)2)
|
|
#define FIT_LUNGE_EXERCISE_NAME_ALTERNATING_BARBELL_FORWARD_LUNGE ((FIT_LUNGE_EXERCISE_NAME)3)
|
|
#define FIT_LUNGE_EXERCISE_NAME_ALTERNATING_DUMBBELL_LUNGE_WITH_REACH ((FIT_LUNGE_EXERCISE_NAME)4)
|
|
#define FIT_LUNGE_EXERCISE_NAME_BACK_FOOT_ELEVATED_DUMBBELL_SPLIT_SQUAT ((FIT_LUNGE_EXERCISE_NAME)5)
|
|
#define FIT_LUNGE_EXERCISE_NAME_BARBELL_BOX_LUNGE ((FIT_LUNGE_EXERCISE_NAME)6)
|
|
#define FIT_LUNGE_EXERCISE_NAME_BARBELL_BULGARIAN_SPLIT_SQUAT ((FIT_LUNGE_EXERCISE_NAME)7)
|
|
#define FIT_LUNGE_EXERCISE_NAME_BARBELL_CROSSOVER_LUNGE ((FIT_LUNGE_EXERCISE_NAME)8)
|
|
#define FIT_LUNGE_EXERCISE_NAME_BARBELL_FRONT_SPLIT_SQUAT ((FIT_LUNGE_EXERCISE_NAME)9)
|
|
#define FIT_LUNGE_EXERCISE_NAME_BARBELL_LUNGE ((FIT_LUNGE_EXERCISE_NAME)10)
|
|
#define FIT_LUNGE_EXERCISE_NAME_BARBELL_REVERSE_LUNGE ((FIT_LUNGE_EXERCISE_NAME)11)
|
|
#define FIT_LUNGE_EXERCISE_NAME_BARBELL_SIDE_LUNGE ((FIT_LUNGE_EXERCISE_NAME)12)
|
|
#define FIT_LUNGE_EXERCISE_NAME_BARBELL_SPLIT_SQUAT ((FIT_LUNGE_EXERCISE_NAME)13)
|
|
#define FIT_LUNGE_EXERCISE_NAME_CORE_CONTROL_REAR_LUNGE ((FIT_LUNGE_EXERCISE_NAME)14)
|
|
#define FIT_LUNGE_EXERCISE_NAME_DIAGONAL_LUNGE ((FIT_LUNGE_EXERCISE_NAME)15)
|
|
#define FIT_LUNGE_EXERCISE_NAME_DROP_LUNGE ((FIT_LUNGE_EXERCISE_NAME)16)
|
|
#define FIT_LUNGE_EXERCISE_NAME_DUMBBELL_BOX_LUNGE ((FIT_LUNGE_EXERCISE_NAME)17)
|
|
#define FIT_LUNGE_EXERCISE_NAME_DUMBBELL_BULGARIAN_SPLIT_SQUAT ((FIT_LUNGE_EXERCISE_NAME)18)
|
|
#define FIT_LUNGE_EXERCISE_NAME_DUMBBELL_CROSSOVER_LUNGE ((FIT_LUNGE_EXERCISE_NAME)19)
|
|
#define FIT_LUNGE_EXERCISE_NAME_DUMBBELL_DIAGONAL_LUNGE ((FIT_LUNGE_EXERCISE_NAME)20)
|
|
#define FIT_LUNGE_EXERCISE_NAME_DUMBBELL_LUNGE ((FIT_LUNGE_EXERCISE_NAME)21)
|
|
#define FIT_LUNGE_EXERCISE_NAME_DUMBBELL_LUNGE_AND_ROTATION ((FIT_LUNGE_EXERCISE_NAME)22)
|
|
#define FIT_LUNGE_EXERCISE_NAME_DUMBBELL_OVERHEAD_BULGARIAN_SPLIT_SQUAT ((FIT_LUNGE_EXERCISE_NAME)23)
|
|
#define FIT_LUNGE_EXERCISE_NAME_DUMBBELL_REVERSE_LUNGE_TO_HIGH_KNEE_AND_PRESS ((FIT_LUNGE_EXERCISE_NAME)24)
|
|
#define FIT_LUNGE_EXERCISE_NAME_DUMBBELL_SIDE_LUNGE ((FIT_LUNGE_EXERCISE_NAME)25)
|
|
#define FIT_LUNGE_EXERCISE_NAME_ELEVATED_FRONT_FOOT_BARBELL_SPLIT_SQUAT ((FIT_LUNGE_EXERCISE_NAME)26)
|
|
#define FIT_LUNGE_EXERCISE_NAME_FRONT_FOOT_ELEVATED_DUMBBELL_SPLIT_SQUAT ((FIT_LUNGE_EXERCISE_NAME)27)
|
|
#define FIT_LUNGE_EXERCISE_NAME_GUNSLINGER_LUNGE ((FIT_LUNGE_EXERCISE_NAME)28)
|
|
#define FIT_LUNGE_EXERCISE_NAME_LAWNMOWER_LUNGE ((FIT_LUNGE_EXERCISE_NAME)29)
|
|
#define FIT_LUNGE_EXERCISE_NAME_LOW_LUNGE_WITH_ISOMETRIC_ADDUCTION ((FIT_LUNGE_EXERCISE_NAME)30)
|
|
#define FIT_LUNGE_EXERCISE_NAME_LOW_SIDE_TO_SIDE_LUNGE ((FIT_LUNGE_EXERCISE_NAME)31)
|
|
#define FIT_LUNGE_EXERCISE_NAME_LUNGE ((FIT_LUNGE_EXERCISE_NAME)32)
|
|
#define FIT_LUNGE_EXERCISE_NAME_WEIGHTED_LUNGE ((FIT_LUNGE_EXERCISE_NAME)33)
|
|
#define FIT_LUNGE_EXERCISE_NAME_LUNGE_WITH_ARM_REACH ((FIT_LUNGE_EXERCISE_NAME)34)
|
|
#define FIT_LUNGE_EXERCISE_NAME_LUNGE_WITH_DIAGONAL_REACH ((FIT_LUNGE_EXERCISE_NAME)35)
|
|
#define FIT_LUNGE_EXERCISE_NAME_LUNGE_WITH_SIDE_BEND ((FIT_LUNGE_EXERCISE_NAME)36)
|
|
#define FIT_LUNGE_EXERCISE_NAME_OFFSET_DUMBBELL_LUNGE ((FIT_LUNGE_EXERCISE_NAME)37)
|
|
#define FIT_LUNGE_EXERCISE_NAME_OFFSET_DUMBBELL_REVERSE_LUNGE ((FIT_LUNGE_EXERCISE_NAME)38)
|
|
#define FIT_LUNGE_EXERCISE_NAME_OVERHEAD_BULGARIAN_SPLIT_SQUAT ((FIT_LUNGE_EXERCISE_NAME)39)
|
|
#define FIT_LUNGE_EXERCISE_NAME_OVERHEAD_DUMBBELL_REVERSE_LUNGE ((FIT_LUNGE_EXERCISE_NAME)40)
|
|
#define FIT_LUNGE_EXERCISE_NAME_OVERHEAD_DUMBBELL_SPLIT_SQUAT ((FIT_LUNGE_EXERCISE_NAME)41)
|
|
#define FIT_LUNGE_EXERCISE_NAME_OVERHEAD_LUNGE_WITH_ROTATION ((FIT_LUNGE_EXERCISE_NAME)42)
|
|
#define FIT_LUNGE_EXERCISE_NAME_REVERSE_BARBELL_BOX_LUNGE ((FIT_LUNGE_EXERCISE_NAME)43)
|
|
#define FIT_LUNGE_EXERCISE_NAME_REVERSE_BOX_LUNGE ((FIT_LUNGE_EXERCISE_NAME)44)
|
|
#define FIT_LUNGE_EXERCISE_NAME_REVERSE_DUMBBELL_BOX_LUNGE ((FIT_LUNGE_EXERCISE_NAME)45)
|
|
#define FIT_LUNGE_EXERCISE_NAME_REVERSE_DUMBBELL_CROSSOVER_LUNGE ((FIT_LUNGE_EXERCISE_NAME)46)
|
|
#define FIT_LUNGE_EXERCISE_NAME_REVERSE_DUMBBELL_DIAGONAL_LUNGE ((FIT_LUNGE_EXERCISE_NAME)47)
|
|
#define FIT_LUNGE_EXERCISE_NAME_REVERSE_LUNGE_WITH_REACH_BACK ((FIT_LUNGE_EXERCISE_NAME)48)
|
|
#define FIT_LUNGE_EXERCISE_NAME_WEIGHTED_REVERSE_LUNGE_WITH_REACH_BACK ((FIT_LUNGE_EXERCISE_NAME)49)
|
|
#define FIT_LUNGE_EXERCISE_NAME_REVERSE_LUNGE_WITH_TWIST_AND_OVERHEAD_REACH ((FIT_LUNGE_EXERCISE_NAME)50)
|
|
#define FIT_LUNGE_EXERCISE_NAME_WEIGHTED_REVERSE_LUNGE_WITH_TWIST_AND_OVERHEAD_REACH ((FIT_LUNGE_EXERCISE_NAME)51)
|
|
#define FIT_LUNGE_EXERCISE_NAME_REVERSE_SLIDING_BOX_LUNGE ((FIT_LUNGE_EXERCISE_NAME)52)
|
|
#define FIT_LUNGE_EXERCISE_NAME_WEIGHTED_REVERSE_SLIDING_BOX_LUNGE ((FIT_LUNGE_EXERCISE_NAME)53)
|
|
#define FIT_LUNGE_EXERCISE_NAME_REVERSE_SLIDING_LUNGE ((FIT_LUNGE_EXERCISE_NAME)54)
|
|
#define FIT_LUNGE_EXERCISE_NAME_WEIGHTED_REVERSE_SLIDING_LUNGE ((FIT_LUNGE_EXERCISE_NAME)55)
|
|
#define FIT_LUNGE_EXERCISE_NAME_RUNNERS_LUNGE_TO_BALANCE ((FIT_LUNGE_EXERCISE_NAME)56)
|
|
#define FIT_LUNGE_EXERCISE_NAME_WEIGHTED_RUNNERS_LUNGE_TO_BALANCE ((FIT_LUNGE_EXERCISE_NAME)57)
|
|
#define FIT_LUNGE_EXERCISE_NAME_SHIFTING_SIDE_LUNGE ((FIT_LUNGE_EXERCISE_NAME)58)
|
|
#define FIT_LUNGE_EXERCISE_NAME_SIDE_AND_CROSSOVER_LUNGE ((FIT_LUNGE_EXERCISE_NAME)59)
|
|
#define FIT_LUNGE_EXERCISE_NAME_WEIGHTED_SIDE_AND_CROSSOVER_LUNGE ((FIT_LUNGE_EXERCISE_NAME)60)
|
|
#define FIT_LUNGE_EXERCISE_NAME_SIDE_LUNGE ((FIT_LUNGE_EXERCISE_NAME)61)
|
|
#define FIT_LUNGE_EXERCISE_NAME_WEIGHTED_SIDE_LUNGE ((FIT_LUNGE_EXERCISE_NAME)62)
|
|
#define FIT_LUNGE_EXERCISE_NAME_SIDE_LUNGE_AND_PRESS ((FIT_LUNGE_EXERCISE_NAME)63)
|
|
#define FIT_LUNGE_EXERCISE_NAME_SIDE_LUNGE_JUMP_OFF ((FIT_LUNGE_EXERCISE_NAME)64)
|
|
#define FIT_LUNGE_EXERCISE_NAME_SIDE_LUNGE_SWEEP ((FIT_LUNGE_EXERCISE_NAME)65)
|
|
#define FIT_LUNGE_EXERCISE_NAME_WEIGHTED_SIDE_LUNGE_SWEEP ((FIT_LUNGE_EXERCISE_NAME)66)
|
|
#define FIT_LUNGE_EXERCISE_NAME_SIDE_LUNGE_TO_CROSSOVER_TAP ((FIT_LUNGE_EXERCISE_NAME)67)
|
|
#define FIT_LUNGE_EXERCISE_NAME_WEIGHTED_SIDE_LUNGE_TO_CROSSOVER_TAP ((FIT_LUNGE_EXERCISE_NAME)68)
|
|
#define FIT_LUNGE_EXERCISE_NAME_SIDE_TO_SIDE_LUNGE_CHOPS ((FIT_LUNGE_EXERCISE_NAME)69)
|
|
#define FIT_LUNGE_EXERCISE_NAME_WEIGHTED_SIDE_TO_SIDE_LUNGE_CHOPS ((FIT_LUNGE_EXERCISE_NAME)70)
|
|
#define FIT_LUNGE_EXERCISE_NAME_SIFF_JUMP_LUNGE ((FIT_LUNGE_EXERCISE_NAME)71)
|
|
#define FIT_LUNGE_EXERCISE_NAME_WEIGHTED_SIFF_JUMP_LUNGE ((FIT_LUNGE_EXERCISE_NAME)72)
|
|
#define FIT_LUNGE_EXERCISE_NAME_SINGLE_ARM_REVERSE_LUNGE_AND_PRESS ((FIT_LUNGE_EXERCISE_NAME)73)
|
|
#define FIT_LUNGE_EXERCISE_NAME_SLIDING_LATERAL_LUNGE ((FIT_LUNGE_EXERCISE_NAME)74)
|
|
#define FIT_LUNGE_EXERCISE_NAME_WEIGHTED_SLIDING_LATERAL_LUNGE ((FIT_LUNGE_EXERCISE_NAME)75)
|
|
#define FIT_LUNGE_EXERCISE_NAME_WALKING_BARBELL_LUNGE ((FIT_LUNGE_EXERCISE_NAME)76)
|
|
#define FIT_LUNGE_EXERCISE_NAME_WALKING_DUMBBELL_LUNGE ((FIT_LUNGE_EXERCISE_NAME)77)
|
|
#define FIT_LUNGE_EXERCISE_NAME_WALKING_LUNGE ((FIT_LUNGE_EXERCISE_NAME)78)
|
|
#define FIT_LUNGE_EXERCISE_NAME_WEIGHTED_WALKING_LUNGE ((FIT_LUNGE_EXERCISE_NAME)79)
|
|
#define FIT_LUNGE_EXERCISE_NAME_WIDE_GRIP_OVERHEAD_BARBELL_SPLIT_SQUAT ((FIT_LUNGE_EXERCISE_NAME)80)
|
|
#define FIT_LUNGE_EXERCISE_NAME_COUNT 81
|
|
|
|
typedef FIT_UINT16 FIT_OLYMPIC_LIFT_EXERCISE_NAME;
|
|
#define FIT_OLYMPIC_LIFT_EXERCISE_NAME_INVALID FIT_UINT16_INVALID
|
|
#define FIT_OLYMPIC_LIFT_EXERCISE_NAME_BARBELL_HANG_POWER_CLEAN ((FIT_OLYMPIC_LIFT_EXERCISE_NAME)0)
|
|
#define FIT_OLYMPIC_LIFT_EXERCISE_NAME_BARBELL_HANG_SQUAT_CLEAN ((FIT_OLYMPIC_LIFT_EXERCISE_NAME)1)
|
|
#define FIT_OLYMPIC_LIFT_EXERCISE_NAME_BARBELL_POWER_CLEAN ((FIT_OLYMPIC_LIFT_EXERCISE_NAME)2)
|
|
#define FIT_OLYMPIC_LIFT_EXERCISE_NAME_BARBELL_POWER_SNATCH ((FIT_OLYMPIC_LIFT_EXERCISE_NAME)3)
|
|
#define FIT_OLYMPIC_LIFT_EXERCISE_NAME_BARBELL_SQUAT_CLEAN ((FIT_OLYMPIC_LIFT_EXERCISE_NAME)4)
|
|
#define FIT_OLYMPIC_LIFT_EXERCISE_NAME_CLEAN_AND_JERK ((FIT_OLYMPIC_LIFT_EXERCISE_NAME)5)
|
|
#define FIT_OLYMPIC_LIFT_EXERCISE_NAME_BARBELL_HANG_POWER_SNATCH ((FIT_OLYMPIC_LIFT_EXERCISE_NAME)6)
|
|
#define FIT_OLYMPIC_LIFT_EXERCISE_NAME_BARBELL_HANG_PULL ((FIT_OLYMPIC_LIFT_EXERCISE_NAME)7)
|
|
#define FIT_OLYMPIC_LIFT_EXERCISE_NAME_BARBELL_HIGH_PULL ((FIT_OLYMPIC_LIFT_EXERCISE_NAME)8)
|
|
#define FIT_OLYMPIC_LIFT_EXERCISE_NAME_BARBELL_SNATCH ((FIT_OLYMPIC_LIFT_EXERCISE_NAME)9)
|
|
#define FIT_OLYMPIC_LIFT_EXERCISE_NAME_BARBELL_SPLIT_JERK ((FIT_OLYMPIC_LIFT_EXERCISE_NAME)10)
|
|
#define FIT_OLYMPIC_LIFT_EXERCISE_NAME_CLEAN ((FIT_OLYMPIC_LIFT_EXERCISE_NAME)11)
|
|
#define FIT_OLYMPIC_LIFT_EXERCISE_NAME_DUMBBELL_CLEAN ((FIT_OLYMPIC_LIFT_EXERCISE_NAME)12)
|
|
#define FIT_OLYMPIC_LIFT_EXERCISE_NAME_DUMBBELL_HANG_PULL ((FIT_OLYMPIC_LIFT_EXERCISE_NAME)13)
|
|
#define FIT_OLYMPIC_LIFT_EXERCISE_NAME_ONE_HAND_DUMBBELL_SPLIT_SNATCH ((FIT_OLYMPIC_LIFT_EXERCISE_NAME)14)
|
|
#define FIT_OLYMPIC_LIFT_EXERCISE_NAME_PUSH_JERK ((FIT_OLYMPIC_LIFT_EXERCISE_NAME)15)
|
|
#define FIT_OLYMPIC_LIFT_EXERCISE_NAME_SINGLE_ARM_DUMBBELL_SNATCH ((FIT_OLYMPIC_LIFT_EXERCISE_NAME)16)
|
|
#define FIT_OLYMPIC_LIFT_EXERCISE_NAME_SINGLE_ARM_HANG_SNATCH ((FIT_OLYMPIC_LIFT_EXERCISE_NAME)17)
|
|
#define FIT_OLYMPIC_LIFT_EXERCISE_NAME_SINGLE_ARM_KETTLEBELL_SNATCH ((FIT_OLYMPIC_LIFT_EXERCISE_NAME)18)
|
|
#define FIT_OLYMPIC_LIFT_EXERCISE_NAME_SPLIT_JERK ((FIT_OLYMPIC_LIFT_EXERCISE_NAME)19)
|
|
#define FIT_OLYMPIC_LIFT_EXERCISE_NAME_SQUAT_CLEAN_AND_JERK ((FIT_OLYMPIC_LIFT_EXERCISE_NAME)20)
|
|
#define FIT_OLYMPIC_LIFT_EXERCISE_NAME_COUNT 21
|
|
|
|
typedef FIT_UINT16 FIT_PLANK_EXERCISE_NAME;
|
|
#define FIT_PLANK_EXERCISE_NAME_INVALID FIT_UINT16_INVALID
|
|
#define FIT_PLANK_EXERCISE_NAME_45_DEGREE_PLANK ((FIT_PLANK_EXERCISE_NAME)0)
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_45_DEGREE_PLANK ((FIT_PLANK_EXERCISE_NAME)1)
|
|
#define FIT_PLANK_EXERCISE_NAME_90_DEGREE_STATIC_HOLD ((FIT_PLANK_EXERCISE_NAME)2)
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_90_DEGREE_STATIC_HOLD ((FIT_PLANK_EXERCISE_NAME)3)
|
|
#define FIT_PLANK_EXERCISE_NAME_BEAR_CRAWL ((FIT_PLANK_EXERCISE_NAME)4)
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_BEAR_CRAWL ((FIT_PLANK_EXERCISE_NAME)5)
|
|
#define FIT_PLANK_EXERCISE_NAME_CROSS_BODY_MOUNTAIN_CLIMBER ((FIT_PLANK_EXERCISE_NAME)6)
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_CROSS_BODY_MOUNTAIN_CLIMBER ((FIT_PLANK_EXERCISE_NAME)7)
|
|
#define FIT_PLANK_EXERCISE_NAME_ELBOW_PLANK_PIKE_JACKS ((FIT_PLANK_EXERCISE_NAME)8)
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_ELBOW_PLANK_PIKE_JACKS ((FIT_PLANK_EXERCISE_NAME)9)
|
|
#define FIT_PLANK_EXERCISE_NAME_ELEVATED_FEET_PLANK ((FIT_PLANK_EXERCISE_NAME)10)
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_ELEVATED_FEET_PLANK ((FIT_PLANK_EXERCISE_NAME)11)
|
|
#define FIT_PLANK_EXERCISE_NAME_ELEVATOR_ABS ((FIT_PLANK_EXERCISE_NAME)12)
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_ELEVATOR_ABS ((FIT_PLANK_EXERCISE_NAME)13)
|
|
#define FIT_PLANK_EXERCISE_NAME_EXTENDED_PLANK ((FIT_PLANK_EXERCISE_NAME)14)
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_EXTENDED_PLANK ((FIT_PLANK_EXERCISE_NAME)15)
|
|
#define FIT_PLANK_EXERCISE_NAME_FULL_PLANK_PASSE_TWIST ((FIT_PLANK_EXERCISE_NAME)16)
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_FULL_PLANK_PASSE_TWIST ((FIT_PLANK_EXERCISE_NAME)17)
|
|
#define FIT_PLANK_EXERCISE_NAME_INCHING_ELBOW_PLANK ((FIT_PLANK_EXERCISE_NAME)18)
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_INCHING_ELBOW_PLANK ((FIT_PLANK_EXERCISE_NAME)19)
|
|
#define FIT_PLANK_EXERCISE_NAME_INCHWORM_TO_SIDE_PLANK ((FIT_PLANK_EXERCISE_NAME)20)
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_INCHWORM_TO_SIDE_PLANK ((FIT_PLANK_EXERCISE_NAME)21)
|
|
#define FIT_PLANK_EXERCISE_NAME_KNEELING_PLANK ((FIT_PLANK_EXERCISE_NAME)22)
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_KNEELING_PLANK ((FIT_PLANK_EXERCISE_NAME)23)
|
|
#define FIT_PLANK_EXERCISE_NAME_KNEELING_SIDE_PLANK_WITH_LEG_LIFT ((FIT_PLANK_EXERCISE_NAME)24)
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_KNEELING_SIDE_PLANK_WITH_LEG_LIFT ((FIT_PLANK_EXERCISE_NAME)25)
|
|
#define FIT_PLANK_EXERCISE_NAME_LATERAL_ROLL ((FIT_PLANK_EXERCISE_NAME)26)
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_LATERAL_ROLL ((FIT_PLANK_EXERCISE_NAME)27)
|
|
#define FIT_PLANK_EXERCISE_NAME_LYING_REVERSE_PLANK ((FIT_PLANK_EXERCISE_NAME)28)
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_LYING_REVERSE_PLANK ((FIT_PLANK_EXERCISE_NAME)29)
|
|
#define FIT_PLANK_EXERCISE_NAME_MEDICINE_BALL_MOUNTAIN_CLIMBER ((FIT_PLANK_EXERCISE_NAME)30)
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_MEDICINE_BALL_MOUNTAIN_CLIMBER ((FIT_PLANK_EXERCISE_NAME)31)
|
|
#define FIT_PLANK_EXERCISE_NAME_MODIFIED_MOUNTAIN_CLIMBER_AND_EXTENSION ((FIT_PLANK_EXERCISE_NAME)32)
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_MODIFIED_MOUNTAIN_CLIMBER_AND_EXTENSION ((FIT_PLANK_EXERCISE_NAME)33)
|
|
#define FIT_PLANK_EXERCISE_NAME_MOUNTAIN_CLIMBER ((FIT_PLANK_EXERCISE_NAME)34)
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_MOUNTAIN_CLIMBER ((FIT_PLANK_EXERCISE_NAME)35)
|
|
#define FIT_PLANK_EXERCISE_NAME_MOUNTAIN_CLIMBER_ON_SLIDING_DISCS ((FIT_PLANK_EXERCISE_NAME)36)
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_MOUNTAIN_CLIMBER_ON_SLIDING_DISCS ((FIT_PLANK_EXERCISE_NAME)37)
|
|
#define FIT_PLANK_EXERCISE_NAME_MOUNTAIN_CLIMBER_WITH_FEET_ON_BOSU_BALL ((FIT_PLANK_EXERCISE_NAME)38)
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_MOUNTAIN_CLIMBER_WITH_FEET_ON_BOSU_BALL ((FIT_PLANK_EXERCISE_NAME)39)
|
|
#define FIT_PLANK_EXERCISE_NAME_MOUNTAIN_CLIMBER_WITH_HANDS_ON_BENCH ((FIT_PLANK_EXERCISE_NAME)40)
|
|
#define FIT_PLANK_EXERCISE_NAME_MOUNTAIN_CLIMBER_WITH_HANDS_ON_SWISS_BALL ((FIT_PLANK_EXERCISE_NAME)41)
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_MOUNTAIN_CLIMBER_WITH_HANDS_ON_SWISS_BALL ((FIT_PLANK_EXERCISE_NAME)42)
|
|
#define FIT_PLANK_EXERCISE_NAME_PLANK ((FIT_PLANK_EXERCISE_NAME)43)
|
|
#define FIT_PLANK_EXERCISE_NAME_PLANK_JACKS_WITH_FEET_ON_SLIDING_DISCS ((FIT_PLANK_EXERCISE_NAME)44)
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_PLANK_JACKS_WITH_FEET_ON_SLIDING_DISCS ((FIT_PLANK_EXERCISE_NAME)45)
|
|
#define FIT_PLANK_EXERCISE_NAME_PLANK_KNEE_TWIST ((FIT_PLANK_EXERCISE_NAME)46)
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_PLANK_KNEE_TWIST ((FIT_PLANK_EXERCISE_NAME)47)
|
|
#define FIT_PLANK_EXERCISE_NAME_PLANK_PIKE_JUMPS ((FIT_PLANK_EXERCISE_NAME)48)
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_PLANK_PIKE_JUMPS ((FIT_PLANK_EXERCISE_NAME)49)
|
|
#define FIT_PLANK_EXERCISE_NAME_PLANK_PIKES ((FIT_PLANK_EXERCISE_NAME)50)
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_PLANK_PIKES ((FIT_PLANK_EXERCISE_NAME)51)
|
|
#define FIT_PLANK_EXERCISE_NAME_PLANK_TO_STAND_UP ((FIT_PLANK_EXERCISE_NAME)52)
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_PLANK_TO_STAND_UP ((FIT_PLANK_EXERCISE_NAME)53)
|
|
#define FIT_PLANK_EXERCISE_NAME_PLANK_WITH_ARM_RAISE ((FIT_PLANK_EXERCISE_NAME)54)
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_PLANK_WITH_ARM_RAISE ((FIT_PLANK_EXERCISE_NAME)55)
|
|
#define FIT_PLANK_EXERCISE_NAME_PLANK_WITH_KNEE_TO_ELBOW ((FIT_PLANK_EXERCISE_NAME)56)
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_PLANK_WITH_KNEE_TO_ELBOW ((FIT_PLANK_EXERCISE_NAME)57)
|
|
#define FIT_PLANK_EXERCISE_NAME_PLANK_WITH_OBLIQUE_CRUNCH ((FIT_PLANK_EXERCISE_NAME)58)
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_PLANK_WITH_OBLIQUE_CRUNCH ((FIT_PLANK_EXERCISE_NAME)59)
|
|
#define FIT_PLANK_EXERCISE_NAME_PLYOMETRIC_SIDE_PLANK ((FIT_PLANK_EXERCISE_NAME)60)
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_PLYOMETRIC_SIDE_PLANK ((FIT_PLANK_EXERCISE_NAME)61)
|
|
#define FIT_PLANK_EXERCISE_NAME_ROLLING_SIDE_PLANK ((FIT_PLANK_EXERCISE_NAME)62)
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_ROLLING_SIDE_PLANK ((FIT_PLANK_EXERCISE_NAME)63)
|
|
#define FIT_PLANK_EXERCISE_NAME_SIDE_KICK_PLANK ((FIT_PLANK_EXERCISE_NAME)64)
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_SIDE_KICK_PLANK ((FIT_PLANK_EXERCISE_NAME)65)
|
|
#define FIT_PLANK_EXERCISE_NAME_SIDE_PLANK ((FIT_PLANK_EXERCISE_NAME)66)
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_SIDE_PLANK ((FIT_PLANK_EXERCISE_NAME)67)
|
|
#define FIT_PLANK_EXERCISE_NAME_SIDE_PLANK_AND_ROW ((FIT_PLANK_EXERCISE_NAME)68)
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_SIDE_PLANK_AND_ROW ((FIT_PLANK_EXERCISE_NAME)69)
|
|
#define FIT_PLANK_EXERCISE_NAME_SIDE_PLANK_LIFT ((FIT_PLANK_EXERCISE_NAME)70)
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_SIDE_PLANK_LIFT ((FIT_PLANK_EXERCISE_NAME)71)
|
|
#define FIT_PLANK_EXERCISE_NAME_SIDE_PLANK_WITH_ELBOW_ON_BOSU_BALL ((FIT_PLANK_EXERCISE_NAME)72)
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_SIDE_PLANK_WITH_ELBOW_ON_BOSU_BALL ((FIT_PLANK_EXERCISE_NAME)73)
|
|
#define FIT_PLANK_EXERCISE_NAME_SIDE_PLANK_WITH_FEET_ON_BENCH ((FIT_PLANK_EXERCISE_NAME)74)
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_SIDE_PLANK_WITH_FEET_ON_BENCH ((FIT_PLANK_EXERCISE_NAME)75)
|
|
#define FIT_PLANK_EXERCISE_NAME_SIDE_PLANK_WITH_KNEE_CIRCLE ((FIT_PLANK_EXERCISE_NAME)76)
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_SIDE_PLANK_WITH_KNEE_CIRCLE ((FIT_PLANK_EXERCISE_NAME)77)
|
|
#define FIT_PLANK_EXERCISE_NAME_SIDE_PLANK_WITH_KNEE_TUCK ((FIT_PLANK_EXERCISE_NAME)78)
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_SIDE_PLANK_WITH_KNEE_TUCK ((FIT_PLANK_EXERCISE_NAME)79)
|
|
#define FIT_PLANK_EXERCISE_NAME_SIDE_PLANK_WITH_LEG_LIFT ((FIT_PLANK_EXERCISE_NAME)80)
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_SIDE_PLANK_WITH_LEG_LIFT ((FIT_PLANK_EXERCISE_NAME)81)
|
|
#define FIT_PLANK_EXERCISE_NAME_SIDE_PLANK_WITH_REACH_UNDER ((FIT_PLANK_EXERCISE_NAME)82)
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_SIDE_PLANK_WITH_REACH_UNDER ((FIT_PLANK_EXERCISE_NAME)83)
|
|
#define FIT_PLANK_EXERCISE_NAME_SINGLE_LEG_ELEVATED_FEET_PLANK ((FIT_PLANK_EXERCISE_NAME)84)
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_SINGLE_LEG_ELEVATED_FEET_PLANK ((FIT_PLANK_EXERCISE_NAME)85)
|
|
#define FIT_PLANK_EXERCISE_NAME_SINGLE_LEG_FLEX_AND_EXTEND ((FIT_PLANK_EXERCISE_NAME)86)
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_SINGLE_LEG_FLEX_AND_EXTEND ((FIT_PLANK_EXERCISE_NAME)87)
|
|
#define FIT_PLANK_EXERCISE_NAME_SINGLE_LEG_SIDE_PLANK ((FIT_PLANK_EXERCISE_NAME)88)
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_SINGLE_LEG_SIDE_PLANK ((FIT_PLANK_EXERCISE_NAME)89)
|
|
#define FIT_PLANK_EXERCISE_NAME_SPIDERMAN_PLANK ((FIT_PLANK_EXERCISE_NAME)90)
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_SPIDERMAN_PLANK ((FIT_PLANK_EXERCISE_NAME)91)
|
|
#define FIT_PLANK_EXERCISE_NAME_STRAIGHT_ARM_PLANK ((FIT_PLANK_EXERCISE_NAME)92)
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_STRAIGHT_ARM_PLANK ((FIT_PLANK_EXERCISE_NAME)93)
|
|
#define FIT_PLANK_EXERCISE_NAME_STRAIGHT_ARM_PLANK_WITH_SHOULDER_TOUCH ((FIT_PLANK_EXERCISE_NAME)94)
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_STRAIGHT_ARM_PLANK_WITH_SHOULDER_TOUCH ((FIT_PLANK_EXERCISE_NAME)95)
|
|
#define FIT_PLANK_EXERCISE_NAME_SWISS_BALL_PLANK ((FIT_PLANK_EXERCISE_NAME)96)
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_SWISS_BALL_PLANK ((FIT_PLANK_EXERCISE_NAME)97)
|
|
#define FIT_PLANK_EXERCISE_NAME_SWISS_BALL_PLANK_LEG_LIFT ((FIT_PLANK_EXERCISE_NAME)98)
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_SWISS_BALL_PLANK_LEG_LIFT ((FIT_PLANK_EXERCISE_NAME)99)
|
|
#define FIT_PLANK_EXERCISE_NAME_SWISS_BALL_PLANK_LEG_LIFT_AND_HOLD ((FIT_PLANK_EXERCISE_NAME)100)
|
|
#define FIT_PLANK_EXERCISE_NAME_SWISS_BALL_PLANK_WITH_FEET_ON_BENCH ((FIT_PLANK_EXERCISE_NAME)101)
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_SWISS_BALL_PLANK_WITH_FEET_ON_BENCH ((FIT_PLANK_EXERCISE_NAME)102)
|
|
#define FIT_PLANK_EXERCISE_NAME_SWISS_BALL_PRONE_JACKKNIFE ((FIT_PLANK_EXERCISE_NAME)103)
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_SWISS_BALL_PRONE_JACKKNIFE ((FIT_PLANK_EXERCISE_NAME)104)
|
|
#define FIT_PLANK_EXERCISE_NAME_SWISS_BALL_SIDE_PLANK ((FIT_PLANK_EXERCISE_NAME)105)
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_SWISS_BALL_SIDE_PLANK ((FIT_PLANK_EXERCISE_NAME)106)
|
|
#define FIT_PLANK_EXERCISE_NAME_THREE_WAY_PLANK ((FIT_PLANK_EXERCISE_NAME)107)
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_THREE_WAY_PLANK ((FIT_PLANK_EXERCISE_NAME)108)
|
|
#define FIT_PLANK_EXERCISE_NAME_TOWEL_PLANK_AND_KNEE_IN ((FIT_PLANK_EXERCISE_NAME)109)
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_TOWEL_PLANK_AND_KNEE_IN ((FIT_PLANK_EXERCISE_NAME)110)
|
|
#define FIT_PLANK_EXERCISE_NAME_T_STABILIZATION ((FIT_PLANK_EXERCISE_NAME)111)
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_T_STABILIZATION ((FIT_PLANK_EXERCISE_NAME)112)
|
|
#define FIT_PLANK_EXERCISE_NAME_TURKISH_GET_UP_TO_SIDE_PLANK ((FIT_PLANK_EXERCISE_NAME)113)
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_TURKISH_GET_UP_TO_SIDE_PLANK ((FIT_PLANK_EXERCISE_NAME)114)
|
|
#define FIT_PLANK_EXERCISE_NAME_TWO_POINT_PLANK ((FIT_PLANK_EXERCISE_NAME)115)
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_TWO_POINT_PLANK ((FIT_PLANK_EXERCISE_NAME)116)
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_PLANK ((FIT_PLANK_EXERCISE_NAME)117)
|
|
#define FIT_PLANK_EXERCISE_NAME_WIDE_STANCE_PLANK_WITH_DIAGONAL_ARM_LIFT ((FIT_PLANK_EXERCISE_NAME)118)
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_WIDE_STANCE_PLANK_WITH_DIAGONAL_ARM_LIFT ((FIT_PLANK_EXERCISE_NAME)119)
|
|
#define FIT_PLANK_EXERCISE_NAME_WIDE_STANCE_PLANK_WITH_DIAGONAL_LEG_LIFT ((FIT_PLANK_EXERCISE_NAME)120)
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_WIDE_STANCE_PLANK_WITH_DIAGONAL_LEG_LIFT ((FIT_PLANK_EXERCISE_NAME)121)
|
|
#define FIT_PLANK_EXERCISE_NAME_WIDE_STANCE_PLANK_WITH_LEG_LIFT ((FIT_PLANK_EXERCISE_NAME)122)
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_WIDE_STANCE_PLANK_WITH_LEG_LIFT ((FIT_PLANK_EXERCISE_NAME)123)
|
|
#define FIT_PLANK_EXERCISE_NAME_WIDE_STANCE_PLANK_WITH_OPPOSITE_ARM_AND_LEG_LIFT ((FIT_PLANK_EXERCISE_NAME)124)
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_MOUNTAIN_CLIMBER_WITH_HANDS_ON_BENCH ((FIT_PLANK_EXERCISE_NAME)125)
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_SWISS_BALL_PLANK_LEG_LIFT_AND_HOLD ((FIT_PLANK_EXERCISE_NAME)126)
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_WIDE_STANCE_PLANK_WITH_OPPOSITE_ARM_AND_LEG_LIFT ((FIT_PLANK_EXERCISE_NAME)127)
|
|
#define FIT_PLANK_EXERCISE_NAME_PLANK_WITH_FEET_ON_SWISS_BALL ((FIT_PLANK_EXERCISE_NAME)128)
|
|
#define FIT_PLANK_EXERCISE_NAME_SIDE_PLANK_TO_PLANK_WITH_REACH_UNDER ((FIT_PLANK_EXERCISE_NAME)129)
|
|
#define FIT_PLANK_EXERCISE_NAME_BRIDGE_WITH_GLUTE_LOWER_LIFT ((FIT_PLANK_EXERCISE_NAME)130)
|
|
#define FIT_PLANK_EXERCISE_NAME_BRIDGE_ONE_LEG_BRIDGE ((FIT_PLANK_EXERCISE_NAME)131)
|
|
#define FIT_PLANK_EXERCISE_NAME_PLANK_WITH_ARM_VARIATIONS ((FIT_PLANK_EXERCISE_NAME)132)
|
|
#define FIT_PLANK_EXERCISE_NAME_PLANK_WITH_LEG_LIFT ((FIT_PLANK_EXERCISE_NAME)133)
|
|
#define FIT_PLANK_EXERCISE_NAME_REVERSE_PLANK_WITH_LEG_PULL ((FIT_PLANK_EXERCISE_NAME)134)
|
|
#define FIT_PLANK_EXERCISE_NAME_COUNT 135
|
|
|
|
typedef FIT_UINT16 FIT_PLYO_EXERCISE_NAME;
|
|
#define FIT_PLYO_EXERCISE_NAME_INVALID FIT_UINT16_INVALID
|
|
#define FIT_PLYO_EXERCISE_NAME_ALTERNATING_JUMP_LUNGE ((FIT_PLYO_EXERCISE_NAME)0)
|
|
#define FIT_PLYO_EXERCISE_NAME_WEIGHTED_ALTERNATING_JUMP_LUNGE ((FIT_PLYO_EXERCISE_NAME)1)
|
|
#define FIT_PLYO_EXERCISE_NAME_BARBELL_JUMP_SQUAT ((FIT_PLYO_EXERCISE_NAME)2)
|
|
#define FIT_PLYO_EXERCISE_NAME_BODY_WEIGHT_JUMP_SQUAT ((FIT_PLYO_EXERCISE_NAME)3)
|
|
#define FIT_PLYO_EXERCISE_NAME_WEIGHTED_JUMP_SQUAT ((FIT_PLYO_EXERCISE_NAME)4)
|
|
#define FIT_PLYO_EXERCISE_NAME_CROSS_KNEE_STRIKE ((FIT_PLYO_EXERCISE_NAME)5)
|
|
#define FIT_PLYO_EXERCISE_NAME_WEIGHTED_CROSS_KNEE_STRIKE ((FIT_PLYO_EXERCISE_NAME)6)
|
|
#define FIT_PLYO_EXERCISE_NAME_DEPTH_JUMP ((FIT_PLYO_EXERCISE_NAME)7)
|
|
#define FIT_PLYO_EXERCISE_NAME_WEIGHTED_DEPTH_JUMP ((FIT_PLYO_EXERCISE_NAME)8)
|
|
#define FIT_PLYO_EXERCISE_NAME_DUMBBELL_JUMP_SQUAT ((FIT_PLYO_EXERCISE_NAME)9)
|
|
#define FIT_PLYO_EXERCISE_NAME_DUMBBELL_SPLIT_JUMP ((FIT_PLYO_EXERCISE_NAME)10)
|
|
#define FIT_PLYO_EXERCISE_NAME_FRONT_KNEE_STRIKE ((FIT_PLYO_EXERCISE_NAME)11)
|
|
#define FIT_PLYO_EXERCISE_NAME_WEIGHTED_FRONT_KNEE_STRIKE ((FIT_PLYO_EXERCISE_NAME)12)
|
|
#define FIT_PLYO_EXERCISE_NAME_HIGH_BOX_JUMP ((FIT_PLYO_EXERCISE_NAME)13)
|
|
#define FIT_PLYO_EXERCISE_NAME_WEIGHTED_HIGH_BOX_JUMP ((FIT_PLYO_EXERCISE_NAME)14)
|
|
#define FIT_PLYO_EXERCISE_NAME_ISOMETRIC_EXPLOSIVE_BODY_WEIGHT_JUMP_SQUAT ((FIT_PLYO_EXERCISE_NAME)15)
|
|
#define FIT_PLYO_EXERCISE_NAME_WEIGHTED_ISOMETRIC_EXPLOSIVE_JUMP_SQUAT ((FIT_PLYO_EXERCISE_NAME)16)
|
|
#define FIT_PLYO_EXERCISE_NAME_LATERAL_LEAP_AND_HOP ((FIT_PLYO_EXERCISE_NAME)17)
|
|
#define FIT_PLYO_EXERCISE_NAME_WEIGHTED_LATERAL_LEAP_AND_HOP ((FIT_PLYO_EXERCISE_NAME)18)
|
|
#define FIT_PLYO_EXERCISE_NAME_LATERAL_PLYO_SQUATS ((FIT_PLYO_EXERCISE_NAME)19)
|
|
#define FIT_PLYO_EXERCISE_NAME_WEIGHTED_LATERAL_PLYO_SQUATS ((FIT_PLYO_EXERCISE_NAME)20)
|
|
#define FIT_PLYO_EXERCISE_NAME_LATERAL_SLIDE ((FIT_PLYO_EXERCISE_NAME)21)
|
|
#define FIT_PLYO_EXERCISE_NAME_WEIGHTED_LATERAL_SLIDE ((FIT_PLYO_EXERCISE_NAME)22)
|
|
#define FIT_PLYO_EXERCISE_NAME_MEDICINE_BALL_OVERHEAD_THROWS ((FIT_PLYO_EXERCISE_NAME)23)
|
|
#define FIT_PLYO_EXERCISE_NAME_MEDICINE_BALL_SIDE_THROW ((FIT_PLYO_EXERCISE_NAME)24)
|
|
#define FIT_PLYO_EXERCISE_NAME_MEDICINE_BALL_SLAM ((FIT_PLYO_EXERCISE_NAME)25)
|
|
#define FIT_PLYO_EXERCISE_NAME_SIDE_TO_SIDE_MEDICINE_BALL_THROWS ((FIT_PLYO_EXERCISE_NAME)26)
|
|
#define FIT_PLYO_EXERCISE_NAME_SIDE_TO_SIDE_SHUFFLE_JUMP ((FIT_PLYO_EXERCISE_NAME)27)
|
|
#define FIT_PLYO_EXERCISE_NAME_WEIGHTED_SIDE_TO_SIDE_SHUFFLE_JUMP ((FIT_PLYO_EXERCISE_NAME)28)
|
|
#define FIT_PLYO_EXERCISE_NAME_SQUAT_JUMP_ONTO_BOX ((FIT_PLYO_EXERCISE_NAME)29)
|
|
#define FIT_PLYO_EXERCISE_NAME_WEIGHTED_SQUAT_JUMP_ONTO_BOX ((FIT_PLYO_EXERCISE_NAME)30)
|
|
#define FIT_PLYO_EXERCISE_NAME_SQUAT_JUMPS_IN_AND_OUT ((FIT_PLYO_EXERCISE_NAME)31)
|
|
#define FIT_PLYO_EXERCISE_NAME_WEIGHTED_SQUAT_JUMPS_IN_AND_OUT ((FIT_PLYO_EXERCISE_NAME)32)
|
|
#define FIT_PLYO_EXERCISE_NAME_COUNT 33
|
|
|
|
typedef FIT_UINT16 FIT_PULL_UP_EXERCISE_NAME;
|
|
#define FIT_PULL_UP_EXERCISE_NAME_INVALID FIT_UINT16_INVALID
|
|
#define FIT_PULL_UP_EXERCISE_NAME_BANDED_PULL_UPS ((FIT_PULL_UP_EXERCISE_NAME)0)
|
|
#define FIT_PULL_UP_EXERCISE_NAME_30_DEGREE_LAT_PULLDOWN ((FIT_PULL_UP_EXERCISE_NAME)1)
|
|
#define FIT_PULL_UP_EXERCISE_NAME_BAND_ASSISTED_CHIN_UP ((FIT_PULL_UP_EXERCISE_NAME)2)
|
|
#define FIT_PULL_UP_EXERCISE_NAME_CLOSE_GRIP_CHIN_UP ((FIT_PULL_UP_EXERCISE_NAME)3)
|
|
#define FIT_PULL_UP_EXERCISE_NAME_WEIGHTED_CLOSE_GRIP_CHIN_UP ((FIT_PULL_UP_EXERCISE_NAME)4)
|
|
#define FIT_PULL_UP_EXERCISE_NAME_CLOSE_GRIP_LAT_PULLDOWN ((FIT_PULL_UP_EXERCISE_NAME)5)
|
|
#define FIT_PULL_UP_EXERCISE_NAME_CROSSOVER_CHIN_UP ((FIT_PULL_UP_EXERCISE_NAME)6)
|
|
#define FIT_PULL_UP_EXERCISE_NAME_WEIGHTED_CROSSOVER_CHIN_UP ((FIT_PULL_UP_EXERCISE_NAME)7)
|
|
#define FIT_PULL_UP_EXERCISE_NAME_EZ_BAR_PULLOVER ((FIT_PULL_UP_EXERCISE_NAME)8)
|
|
#define FIT_PULL_UP_EXERCISE_NAME_HANGING_HURDLE ((FIT_PULL_UP_EXERCISE_NAME)9)
|
|
#define FIT_PULL_UP_EXERCISE_NAME_WEIGHTED_HANGING_HURDLE ((FIT_PULL_UP_EXERCISE_NAME)10)
|
|
#define FIT_PULL_UP_EXERCISE_NAME_KNEELING_LAT_PULLDOWN ((FIT_PULL_UP_EXERCISE_NAME)11)
|
|
#define FIT_PULL_UP_EXERCISE_NAME_KNEELING_UNDERHAND_GRIP_LAT_PULLDOWN ((FIT_PULL_UP_EXERCISE_NAME)12)
|
|
#define FIT_PULL_UP_EXERCISE_NAME_LAT_PULLDOWN ((FIT_PULL_UP_EXERCISE_NAME)13)
|
|
#define FIT_PULL_UP_EXERCISE_NAME_MIXED_GRIP_CHIN_UP ((FIT_PULL_UP_EXERCISE_NAME)14)
|
|
#define FIT_PULL_UP_EXERCISE_NAME_WEIGHTED_MIXED_GRIP_CHIN_UP ((FIT_PULL_UP_EXERCISE_NAME)15)
|
|
#define FIT_PULL_UP_EXERCISE_NAME_MIXED_GRIP_PULL_UP ((FIT_PULL_UP_EXERCISE_NAME)16)
|
|
#define FIT_PULL_UP_EXERCISE_NAME_WEIGHTED_MIXED_GRIP_PULL_UP ((FIT_PULL_UP_EXERCISE_NAME)17)
|
|
#define FIT_PULL_UP_EXERCISE_NAME_REVERSE_GRIP_PULLDOWN ((FIT_PULL_UP_EXERCISE_NAME)18)
|
|
#define FIT_PULL_UP_EXERCISE_NAME_STANDING_CABLE_PULLOVER ((FIT_PULL_UP_EXERCISE_NAME)19)
|
|
#define FIT_PULL_UP_EXERCISE_NAME_STRAIGHT_ARM_PULLDOWN ((FIT_PULL_UP_EXERCISE_NAME)20)
|
|
#define FIT_PULL_UP_EXERCISE_NAME_SWISS_BALL_EZ_BAR_PULLOVER ((FIT_PULL_UP_EXERCISE_NAME)21)
|
|
#define FIT_PULL_UP_EXERCISE_NAME_TOWEL_PULL_UP ((FIT_PULL_UP_EXERCISE_NAME)22)
|
|
#define FIT_PULL_UP_EXERCISE_NAME_WEIGHTED_TOWEL_PULL_UP ((FIT_PULL_UP_EXERCISE_NAME)23)
|
|
#define FIT_PULL_UP_EXERCISE_NAME_WEIGHTED_PULL_UP ((FIT_PULL_UP_EXERCISE_NAME)24)
|
|
#define FIT_PULL_UP_EXERCISE_NAME_WIDE_GRIP_LAT_PULLDOWN ((FIT_PULL_UP_EXERCISE_NAME)25)
|
|
#define FIT_PULL_UP_EXERCISE_NAME_WIDE_GRIP_PULL_UP ((FIT_PULL_UP_EXERCISE_NAME)26)
|
|
#define FIT_PULL_UP_EXERCISE_NAME_WEIGHTED_WIDE_GRIP_PULL_UP ((FIT_PULL_UP_EXERCISE_NAME)27)
|
|
#define FIT_PULL_UP_EXERCISE_NAME_BURPEE_PULL_UP ((FIT_PULL_UP_EXERCISE_NAME)28)
|
|
#define FIT_PULL_UP_EXERCISE_NAME_WEIGHTED_BURPEE_PULL_UP ((FIT_PULL_UP_EXERCISE_NAME)29)
|
|
#define FIT_PULL_UP_EXERCISE_NAME_JUMPING_PULL_UPS ((FIT_PULL_UP_EXERCISE_NAME)30)
|
|
#define FIT_PULL_UP_EXERCISE_NAME_WEIGHTED_JUMPING_PULL_UPS ((FIT_PULL_UP_EXERCISE_NAME)31)
|
|
#define FIT_PULL_UP_EXERCISE_NAME_KIPPING_PULL_UP ((FIT_PULL_UP_EXERCISE_NAME)32)
|
|
#define FIT_PULL_UP_EXERCISE_NAME_WEIGHTED_KIPPING_PULL_UP ((FIT_PULL_UP_EXERCISE_NAME)33)
|
|
#define FIT_PULL_UP_EXERCISE_NAME_L_PULL_UP ((FIT_PULL_UP_EXERCISE_NAME)34)
|
|
#define FIT_PULL_UP_EXERCISE_NAME_WEIGHTED_L_PULL_UP ((FIT_PULL_UP_EXERCISE_NAME)35)
|
|
#define FIT_PULL_UP_EXERCISE_NAME_SUSPENDED_CHIN_UP ((FIT_PULL_UP_EXERCISE_NAME)36)
|
|
#define FIT_PULL_UP_EXERCISE_NAME_WEIGHTED_SUSPENDED_CHIN_UP ((FIT_PULL_UP_EXERCISE_NAME)37)
|
|
#define FIT_PULL_UP_EXERCISE_NAME_PULL_UP ((FIT_PULL_UP_EXERCISE_NAME)38)
|
|
#define FIT_PULL_UP_EXERCISE_NAME_COUNT 39
|
|
|
|
typedef FIT_UINT16 FIT_PUSH_UP_EXERCISE_NAME;
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_INVALID FIT_UINT16_INVALID
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_CHEST_PRESS_WITH_BAND ((FIT_PUSH_UP_EXERCISE_NAME)0)
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_ALTERNATING_STAGGERED_PUSH_UP ((FIT_PUSH_UP_EXERCISE_NAME)1)
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WEIGHTED_ALTERNATING_STAGGERED_PUSH_UP ((FIT_PUSH_UP_EXERCISE_NAME)2)
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_ALTERNATING_HANDS_MEDICINE_BALL_PUSH_UP ((FIT_PUSH_UP_EXERCISE_NAME)3)
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WEIGHTED_ALTERNATING_HANDS_MEDICINE_BALL_PUSH_UP ((FIT_PUSH_UP_EXERCISE_NAME)4)
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_BOSU_BALL_PUSH_UP ((FIT_PUSH_UP_EXERCISE_NAME)5)
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WEIGHTED_BOSU_BALL_PUSH_UP ((FIT_PUSH_UP_EXERCISE_NAME)6)
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_CLAPPING_PUSH_UP ((FIT_PUSH_UP_EXERCISE_NAME)7)
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WEIGHTED_CLAPPING_PUSH_UP ((FIT_PUSH_UP_EXERCISE_NAME)8)
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_CLOSE_GRIP_MEDICINE_BALL_PUSH_UP ((FIT_PUSH_UP_EXERCISE_NAME)9)
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WEIGHTED_CLOSE_GRIP_MEDICINE_BALL_PUSH_UP ((FIT_PUSH_UP_EXERCISE_NAME)10)
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_CLOSE_HANDS_PUSH_UP ((FIT_PUSH_UP_EXERCISE_NAME)11)
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WEIGHTED_CLOSE_HANDS_PUSH_UP ((FIT_PUSH_UP_EXERCISE_NAME)12)
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_DECLINE_PUSH_UP ((FIT_PUSH_UP_EXERCISE_NAME)13)
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WEIGHTED_DECLINE_PUSH_UP ((FIT_PUSH_UP_EXERCISE_NAME)14)
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_DIAMOND_PUSH_UP ((FIT_PUSH_UP_EXERCISE_NAME)15)
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WEIGHTED_DIAMOND_PUSH_UP ((FIT_PUSH_UP_EXERCISE_NAME)16)
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_EXPLOSIVE_CROSSOVER_PUSH_UP ((FIT_PUSH_UP_EXERCISE_NAME)17)
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WEIGHTED_EXPLOSIVE_CROSSOVER_PUSH_UP ((FIT_PUSH_UP_EXERCISE_NAME)18)
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_EXPLOSIVE_PUSH_UP ((FIT_PUSH_UP_EXERCISE_NAME)19)
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WEIGHTED_EXPLOSIVE_PUSH_UP ((FIT_PUSH_UP_EXERCISE_NAME)20)
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_FEET_ELEVATED_SIDE_TO_SIDE_PUSH_UP ((FIT_PUSH_UP_EXERCISE_NAME)21)
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WEIGHTED_FEET_ELEVATED_SIDE_TO_SIDE_PUSH_UP ((FIT_PUSH_UP_EXERCISE_NAME)22)
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_HAND_RELEASE_PUSH_UP ((FIT_PUSH_UP_EXERCISE_NAME)23)
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WEIGHTED_HAND_RELEASE_PUSH_UP ((FIT_PUSH_UP_EXERCISE_NAME)24)
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_HANDSTAND_PUSH_UP ((FIT_PUSH_UP_EXERCISE_NAME)25)
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WEIGHTED_HANDSTAND_PUSH_UP ((FIT_PUSH_UP_EXERCISE_NAME)26)
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_INCLINE_PUSH_UP ((FIT_PUSH_UP_EXERCISE_NAME)27)
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WEIGHTED_INCLINE_PUSH_UP ((FIT_PUSH_UP_EXERCISE_NAME)28)
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_ISOMETRIC_EXPLOSIVE_PUSH_UP ((FIT_PUSH_UP_EXERCISE_NAME)29)
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WEIGHTED_ISOMETRIC_EXPLOSIVE_PUSH_UP ((FIT_PUSH_UP_EXERCISE_NAME)30)
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_JUDO_PUSH_UP ((FIT_PUSH_UP_EXERCISE_NAME)31)
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WEIGHTED_JUDO_PUSH_UP ((FIT_PUSH_UP_EXERCISE_NAME)32)
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_KNEELING_PUSH_UP ((FIT_PUSH_UP_EXERCISE_NAME)33)
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WEIGHTED_KNEELING_PUSH_UP ((FIT_PUSH_UP_EXERCISE_NAME)34)
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_MEDICINE_BALL_CHEST_PASS ((FIT_PUSH_UP_EXERCISE_NAME)35)
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_MEDICINE_BALL_PUSH_UP ((FIT_PUSH_UP_EXERCISE_NAME)36)
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WEIGHTED_MEDICINE_BALL_PUSH_UP ((FIT_PUSH_UP_EXERCISE_NAME)37)
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_ONE_ARM_PUSH_UP ((FIT_PUSH_UP_EXERCISE_NAME)38)
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WEIGHTED_ONE_ARM_PUSH_UP ((FIT_PUSH_UP_EXERCISE_NAME)39)
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WEIGHTED_PUSH_UP ((FIT_PUSH_UP_EXERCISE_NAME)40)
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_PUSH_UP_AND_ROW ((FIT_PUSH_UP_EXERCISE_NAME)41)
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WEIGHTED_PUSH_UP_AND_ROW ((FIT_PUSH_UP_EXERCISE_NAME)42)
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_PUSH_UP_PLUS ((FIT_PUSH_UP_EXERCISE_NAME)43)
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WEIGHTED_PUSH_UP_PLUS ((FIT_PUSH_UP_EXERCISE_NAME)44)
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_PUSH_UP_WITH_FEET_ON_SWISS_BALL ((FIT_PUSH_UP_EXERCISE_NAME)45)
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WEIGHTED_PUSH_UP_WITH_FEET_ON_SWISS_BALL ((FIT_PUSH_UP_EXERCISE_NAME)46)
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_PUSH_UP_WITH_ONE_HAND_ON_MEDICINE_BALL ((FIT_PUSH_UP_EXERCISE_NAME)47)
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WEIGHTED_PUSH_UP_WITH_ONE_HAND_ON_MEDICINE_BALL ((FIT_PUSH_UP_EXERCISE_NAME)48)
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_SHOULDER_PUSH_UP ((FIT_PUSH_UP_EXERCISE_NAME)49)
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WEIGHTED_SHOULDER_PUSH_UP ((FIT_PUSH_UP_EXERCISE_NAME)50)
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_SINGLE_ARM_MEDICINE_BALL_PUSH_UP ((FIT_PUSH_UP_EXERCISE_NAME)51)
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WEIGHTED_SINGLE_ARM_MEDICINE_BALL_PUSH_UP ((FIT_PUSH_UP_EXERCISE_NAME)52)
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_SPIDERMAN_PUSH_UP ((FIT_PUSH_UP_EXERCISE_NAME)53)
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WEIGHTED_SPIDERMAN_PUSH_UP ((FIT_PUSH_UP_EXERCISE_NAME)54)
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_STACKED_FEET_PUSH_UP ((FIT_PUSH_UP_EXERCISE_NAME)55)
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WEIGHTED_STACKED_FEET_PUSH_UP ((FIT_PUSH_UP_EXERCISE_NAME)56)
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_STAGGERED_HANDS_PUSH_UP ((FIT_PUSH_UP_EXERCISE_NAME)57)
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WEIGHTED_STAGGERED_HANDS_PUSH_UP ((FIT_PUSH_UP_EXERCISE_NAME)58)
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_SUSPENDED_PUSH_UP ((FIT_PUSH_UP_EXERCISE_NAME)59)
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WEIGHTED_SUSPENDED_PUSH_UP ((FIT_PUSH_UP_EXERCISE_NAME)60)
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_SWISS_BALL_PUSH_UP ((FIT_PUSH_UP_EXERCISE_NAME)61)
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WEIGHTED_SWISS_BALL_PUSH_UP ((FIT_PUSH_UP_EXERCISE_NAME)62)
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_SWISS_BALL_PUSH_UP_PLUS ((FIT_PUSH_UP_EXERCISE_NAME)63)
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WEIGHTED_SWISS_BALL_PUSH_UP_PLUS ((FIT_PUSH_UP_EXERCISE_NAME)64)
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_T_PUSH_UP ((FIT_PUSH_UP_EXERCISE_NAME)65)
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WEIGHTED_T_PUSH_UP ((FIT_PUSH_UP_EXERCISE_NAME)66)
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_TRIPLE_STOP_PUSH_UP ((FIT_PUSH_UP_EXERCISE_NAME)67)
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WEIGHTED_TRIPLE_STOP_PUSH_UP ((FIT_PUSH_UP_EXERCISE_NAME)68)
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WIDE_HANDS_PUSH_UP ((FIT_PUSH_UP_EXERCISE_NAME)69)
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WEIGHTED_WIDE_HANDS_PUSH_UP ((FIT_PUSH_UP_EXERCISE_NAME)70)
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_PARALLETTE_HANDSTAND_PUSH_UP ((FIT_PUSH_UP_EXERCISE_NAME)71)
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WEIGHTED_PARALLETTE_HANDSTAND_PUSH_UP ((FIT_PUSH_UP_EXERCISE_NAME)72)
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_RING_HANDSTAND_PUSH_UP ((FIT_PUSH_UP_EXERCISE_NAME)73)
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WEIGHTED_RING_HANDSTAND_PUSH_UP ((FIT_PUSH_UP_EXERCISE_NAME)74)
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_RING_PUSH_UP ((FIT_PUSH_UP_EXERCISE_NAME)75)
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WEIGHTED_RING_PUSH_UP ((FIT_PUSH_UP_EXERCISE_NAME)76)
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_PUSH_UP ((FIT_PUSH_UP_EXERCISE_NAME)77)
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_PILATES_PUSHUP ((FIT_PUSH_UP_EXERCISE_NAME)78)
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_COUNT 79
|
|
|
|
typedef FIT_UINT16 FIT_ROW_EXERCISE_NAME;
|
|
#define FIT_ROW_EXERCISE_NAME_INVALID FIT_UINT16_INVALID
|
|
#define FIT_ROW_EXERCISE_NAME_BARBELL_STRAIGHT_LEG_DEADLIFT_TO_ROW ((FIT_ROW_EXERCISE_NAME)0)
|
|
#define FIT_ROW_EXERCISE_NAME_CABLE_ROW_STANDING ((FIT_ROW_EXERCISE_NAME)1)
|
|
#define FIT_ROW_EXERCISE_NAME_DUMBBELL_ROW ((FIT_ROW_EXERCISE_NAME)2)
|
|
#define FIT_ROW_EXERCISE_NAME_ELEVATED_FEET_INVERTED_ROW ((FIT_ROW_EXERCISE_NAME)3)
|
|
#define FIT_ROW_EXERCISE_NAME_WEIGHTED_ELEVATED_FEET_INVERTED_ROW ((FIT_ROW_EXERCISE_NAME)4)
|
|
#define FIT_ROW_EXERCISE_NAME_FACE_PULL ((FIT_ROW_EXERCISE_NAME)5)
|
|
#define FIT_ROW_EXERCISE_NAME_FACE_PULL_WITH_EXTERNAL_ROTATION ((FIT_ROW_EXERCISE_NAME)6)
|
|
#define FIT_ROW_EXERCISE_NAME_INVERTED_ROW_WITH_FEET_ON_SWISS_BALL ((FIT_ROW_EXERCISE_NAME)7)
|
|
#define FIT_ROW_EXERCISE_NAME_WEIGHTED_INVERTED_ROW_WITH_FEET_ON_SWISS_BALL ((FIT_ROW_EXERCISE_NAME)8)
|
|
#define FIT_ROW_EXERCISE_NAME_KETTLEBELL_ROW ((FIT_ROW_EXERCISE_NAME)9)
|
|
#define FIT_ROW_EXERCISE_NAME_MODIFIED_INVERTED_ROW ((FIT_ROW_EXERCISE_NAME)10)
|
|
#define FIT_ROW_EXERCISE_NAME_WEIGHTED_MODIFIED_INVERTED_ROW ((FIT_ROW_EXERCISE_NAME)11)
|
|
#define FIT_ROW_EXERCISE_NAME_NEUTRAL_GRIP_ALTERNATING_DUMBBELL_ROW ((FIT_ROW_EXERCISE_NAME)12)
|
|
#define FIT_ROW_EXERCISE_NAME_ONE_ARM_BENT_OVER_ROW ((FIT_ROW_EXERCISE_NAME)13)
|
|
#define FIT_ROW_EXERCISE_NAME_ONE_LEGGED_DUMBBELL_ROW ((FIT_ROW_EXERCISE_NAME)14)
|
|
#define FIT_ROW_EXERCISE_NAME_RENEGADE_ROW ((FIT_ROW_EXERCISE_NAME)15)
|
|
#define FIT_ROW_EXERCISE_NAME_REVERSE_GRIP_BARBELL_ROW ((FIT_ROW_EXERCISE_NAME)16)
|
|
#define FIT_ROW_EXERCISE_NAME_ROPE_HANDLE_CABLE_ROW ((FIT_ROW_EXERCISE_NAME)17)
|
|
#define FIT_ROW_EXERCISE_NAME_SEATED_CABLE_ROW ((FIT_ROW_EXERCISE_NAME)18)
|
|
#define FIT_ROW_EXERCISE_NAME_SEATED_DUMBBELL_ROW ((FIT_ROW_EXERCISE_NAME)19)
|
|
#define FIT_ROW_EXERCISE_NAME_SINGLE_ARM_CABLE_ROW ((FIT_ROW_EXERCISE_NAME)20)
|
|
#define FIT_ROW_EXERCISE_NAME_SINGLE_ARM_CABLE_ROW_AND_ROTATION ((FIT_ROW_EXERCISE_NAME)21)
|
|
#define FIT_ROW_EXERCISE_NAME_SINGLE_ARM_INVERTED_ROW ((FIT_ROW_EXERCISE_NAME)22)
|
|
#define FIT_ROW_EXERCISE_NAME_WEIGHTED_SINGLE_ARM_INVERTED_ROW ((FIT_ROW_EXERCISE_NAME)23)
|
|
#define FIT_ROW_EXERCISE_NAME_SINGLE_ARM_NEUTRAL_GRIP_DUMBBELL_ROW ((FIT_ROW_EXERCISE_NAME)24)
|
|
#define FIT_ROW_EXERCISE_NAME_SINGLE_ARM_NEUTRAL_GRIP_DUMBBELL_ROW_AND_ROTATION ((FIT_ROW_EXERCISE_NAME)25)
|
|
#define FIT_ROW_EXERCISE_NAME_SUSPENDED_INVERTED_ROW ((FIT_ROW_EXERCISE_NAME)26)
|
|
#define FIT_ROW_EXERCISE_NAME_WEIGHTED_SUSPENDED_INVERTED_ROW ((FIT_ROW_EXERCISE_NAME)27)
|
|
#define FIT_ROW_EXERCISE_NAME_T_BAR_ROW ((FIT_ROW_EXERCISE_NAME)28)
|
|
#define FIT_ROW_EXERCISE_NAME_TOWEL_GRIP_INVERTED_ROW ((FIT_ROW_EXERCISE_NAME)29)
|
|
#define FIT_ROW_EXERCISE_NAME_WEIGHTED_TOWEL_GRIP_INVERTED_ROW ((FIT_ROW_EXERCISE_NAME)30)
|
|
#define FIT_ROW_EXERCISE_NAME_UNDERHAND_GRIP_CABLE_ROW ((FIT_ROW_EXERCISE_NAME)31)
|
|
#define FIT_ROW_EXERCISE_NAME_V_GRIP_CABLE_ROW ((FIT_ROW_EXERCISE_NAME)32)
|
|
#define FIT_ROW_EXERCISE_NAME_WIDE_GRIP_SEATED_CABLE_ROW ((FIT_ROW_EXERCISE_NAME)33)
|
|
#define FIT_ROW_EXERCISE_NAME_COUNT 34
|
|
|
|
typedef FIT_UINT16 FIT_SHOULDER_PRESS_EXERCISE_NAME;
|
|
#define FIT_SHOULDER_PRESS_EXERCISE_NAME_INVALID FIT_UINT16_INVALID
|
|
#define FIT_SHOULDER_PRESS_EXERCISE_NAME_ALTERNATING_DUMBBELL_SHOULDER_PRESS ((FIT_SHOULDER_PRESS_EXERCISE_NAME)0)
|
|
#define FIT_SHOULDER_PRESS_EXERCISE_NAME_ARNOLD_PRESS ((FIT_SHOULDER_PRESS_EXERCISE_NAME)1)
|
|
#define FIT_SHOULDER_PRESS_EXERCISE_NAME_BARBELL_FRONT_SQUAT_TO_PUSH_PRESS ((FIT_SHOULDER_PRESS_EXERCISE_NAME)2)
|
|
#define FIT_SHOULDER_PRESS_EXERCISE_NAME_BARBELL_PUSH_PRESS ((FIT_SHOULDER_PRESS_EXERCISE_NAME)3)
|
|
#define FIT_SHOULDER_PRESS_EXERCISE_NAME_BARBELL_SHOULDER_PRESS ((FIT_SHOULDER_PRESS_EXERCISE_NAME)4)
|
|
#define FIT_SHOULDER_PRESS_EXERCISE_NAME_DEAD_CURL_PRESS ((FIT_SHOULDER_PRESS_EXERCISE_NAME)5)
|
|
#define FIT_SHOULDER_PRESS_EXERCISE_NAME_DUMBBELL_ALTERNATING_SHOULDER_PRESS_AND_TWIST ((FIT_SHOULDER_PRESS_EXERCISE_NAME)6)
|
|
#define FIT_SHOULDER_PRESS_EXERCISE_NAME_DUMBBELL_HAMMER_CURL_TO_LUNGE_TO_PRESS ((FIT_SHOULDER_PRESS_EXERCISE_NAME)7)
|
|
#define FIT_SHOULDER_PRESS_EXERCISE_NAME_DUMBBELL_PUSH_PRESS ((FIT_SHOULDER_PRESS_EXERCISE_NAME)8)
|
|
#define FIT_SHOULDER_PRESS_EXERCISE_NAME_FLOOR_INVERTED_SHOULDER_PRESS ((FIT_SHOULDER_PRESS_EXERCISE_NAME)9)
|
|
#define FIT_SHOULDER_PRESS_EXERCISE_NAME_WEIGHTED_FLOOR_INVERTED_SHOULDER_PRESS ((FIT_SHOULDER_PRESS_EXERCISE_NAME)10)
|
|
#define FIT_SHOULDER_PRESS_EXERCISE_NAME_INVERTED_SHOULDER_PRESS ((FIT_SHOULDER_PRESS_EXERCISE_NAME)11)
|
|
#define FIT_SHOULDER_PRESS_EXERCISE_NAME_WEIGHTED_INVERTED_SHOULDER_PRESS ((FIT_SHOULDER_PRESS_EXERCISE_NAME)12)
|
|
#define FIT_SHOULDER_PRESS_EXERCISE_NAME_ONE_ARM_PUSH_PRESS ((FIT_SHOULDER_PRESS_EXERCISE_NAME)13)
|
|
#define FIT_SHOULDER_PRESS_EXERCISE_NAME_OVERHEAD_BARBELL_PRESS ((FIT_SHOULDER_PRESS_EXERCISE_NAME)14)
|
|
#define FIT_SHOULDER_PRESS_EXERCISE_NAME_OVERHEAD_DUMBBELL_PRESS ((FIT_SHOULDER_PRESS_EXERCISE_NAME)15)
|
|
#define FIT_SHOULDER_PRESS_EXERCISE_NAME_SEATED_BARBELL_SHOULDER_PRESS ((FIT_SHOULDER_PRESS_EXERCISE_NAME)16)
|
|
#define FIT_SHOULDER_PRESS_EXERCISE_NAME_SEATED_DUMBBELL_SHOULDER_PRESS ((FIT_SHOULDER_PRESS_EXERCISE_NAME)17)
|
|
#define FIT_SHOULDER_PRESS_EXERCISE_NAME_SINGLE_ARM_DUMBBELL_SHOULDER_PRESS ((FIT_SHOULDER_PRESS_EXERCISE_NAME)18)
|
|
#define FIT_SHOULDER_PRESS_EXERCISE_NAME_SINGLE_ARM_STEP_UP_AND_PRESS ((FIT_SHOULDER_PRESS_EXERCISE_NAME)19)
|
|
#define FIT_SHOULDER_PRESS_EXERCISE_NAME_SMITH_MACHINE_OVERHEAD_PRESS ((FIT_SHOULDER_PRESS_EXERCISE_NAME)20)
|
|
#define FIT_SHOULDER_PRESS_EXERCISE_NAME_SPLIT_STANCE_HAMMER_CURL_TO_PRESS ((FIT_SHOULDER_PRESS_EXERCISE_NAME)21)
|
|
#define FIT_SHOULDER_PRESS_EXERCISE_NAME_SWISS_BALL_DUMBBELL_SHOULDER_PRESS ((FIT_SHOULDER_PRESS_EXERCISE_NAME)22)
|
|
#define FIT_SHOULDER_PRESS_EXERCISE_NAME_WEIGHT_PLATE_FRONT_RAISE ((FIT_SHOULDER_PRESS_EXERCISE_NAME)23)
|
|
#define FIT_SHOULDER_PRESS_EXERCISE_NAME_COUNT 24
|
|
|
|
typedef FIT_UINT16 FIT_SHOULDER_STABILITY_EXERCISE_NAME;
|
|
#define FIT_SHOULDER_STABILITY_EXERCISE_NAME_INVALID FIT_UINT16_INVALID
|
|
#define FIT_SHOULDER_STABILITY_EXERCISE_NAME_90_DEGREE_CABLE_EXTERNAL_ROTATION ((FIT_SHOULDER_STABILITY_EXERCISE_NAME)0)
|
|
#define FIT_SHOULDER_STABILITY_EXERCISE_NAME_BAND_EXTERNAL_ROTATION ((FIT_SHOULDER_STABILITY_EXERCISE_NAME)1)
|
|
#define FIT_SHOULDER_STABILITY_EXERCISE_NAME_BAND_INTERNAL_ROTATION ((FIT_SHOULDER_STABILITY_EXERCISE_NAME)2)
|
|
#define FIT_SHOULDER_STABILITY_EXERCISE_NAME_BENT_ARM_LATERAL_RAISE_AND_EXTERNAL_ROTATION ((FIT_SHOULDER_STABILITY_EXERCISE_NAME)3)
|
|
#define FIT_SHOULDER_STABILITY_EXERCISE_NAME_CABLE_EXTERNAL_ROTATION ((FIT_SHOULDER_STABILITY_EXERCISE_NAME)4)
|
|
#define FIT_SHOULDER_STABILITY_EXERCISE_NAME_DUMBBELL_FACE_PULL_WITH_EXTERNAL_ROTATION ((FIT_SHOULDER_STABILITY_EXERCISE_NAME)5)
|
|
#define FIT_SHOULDER_STABILITY_EXERCISE_NAME_FLOOR_I_RAISE ((FIT_SHOULDER_STABILITY_EXERCISE_NAME)6)
|
|
#define FIT_SHOULDER_STABILITY_EXERCISE_NAME_WEIGHTED_FLOOR_I_RAISE ((FIT_SHOULDER_STABILITY_EXERCISE_NAME)7)
|
|
#define FIT_SHOULDER_STABILITY_EXERCISE_NAME_FLOOR_T_RAISE ((FIT_SHOULDER_STABILITY_EXERCISE_NAME)8)
|
|
#define FIT_SHOULDER_STABILITY_EXERCISE_NAME_WEIGHTED_FLOOR_T_RAISE ((FIT_SHOULDER_STABILITY_EXERCISE_NAME)9)
|
|
#define FIT_SHOULDER_STABILITY_EXERCISE_NAME_FLOOR_Y_RAISE ((FIT_SHOULDER_STABILITY_EXERCISE_NAME)10)
|
|
#define FIT_SHOULDER_STABILITY_EXERCISE_NAME_WEIGHTED_FLOOR_Y_RAISE ((FIT_SHOULDER_STABILITY_EXERCISE_NAME)11)
|
|
#define FIT_SHOULDER_STABILITY_EXERCISE_NAME_INCLINE_I_RAISE ((FIT_SHOULDER_STABILITY_EXERCISE_NAME)12)
|
|
#define FIT_SHOULDER_STABILITY_EXERCISE_NAME_WEIGHTED_INCLINE_I_RAISE ((FIT_SHOULDER_STABILITY_EXERCISE_NAME)13)
|
|
#define FIT_SHOULDER_STABILITY_EXERCISE_NAME_INCLINE_L_RAISE ((FIT_SHOULDER_STABILITY_EXERCISE_NAME)14)
|
|
#define FIT_SHOULDER_STABILITY_EXERCISE_NAME_WEIGHTED_INCLINE_L_RAISE ((FIT_SHOULDER_STABILITY_EXERCISE_NAME)15)
|
|
#define FIT_SHOULDER_STABILITY_EXERCISE_NAME_INCLINE_T_RAISE ((FIT_SHOULDER_STABILITY_EXERCISE_NAME)16)
|
|
#define FIT_SHOULDER_STABILITY_EXERCISE_NAME_WEIGHTED_INCLINE_T_RAISE ((FIT_SHOULDER_STABILITY_EXERCISE_NAME)17)
|
|
#define FIT_SHOULDER_STABILITY_EXERCISE_NAME_INCLINE_W_RAISE ((FIT_SHOULDER_STABILITY_EXERCISE_NAME)18)
|
|
#define FIT_SHOULDER_STABILITY_EXERCISE_NAME_WEIGHTED_INCLINE_W_RAISE ((FIT_SHOULDER_STABILITY_EXERCISE_NAME)19)
|
|
#define FIT_SHOULDER_STABILITY_EXERCISE_NAME_INCLINE_Y_RAISE ((FIT_SHOULDER_STABILITY_EXERCISE_NAME)20)
|
|
#define FIT_SHOULDER_STABILITY_EXERCISE_NAME_WEIGHTED_INCLINE_Y_RAISE ((FIT_SHOULDER_STABILITY_EXERCISE_NAME)21)
|
|
#define FIT_SHOULDER_STABILITY_EXERCISE_NAME_LYING_EXTERNAL_ROTATION ((FIT_SHOULDER_STABILITY_EXERCISE_NAME)22)
|
|
#define FIT_SHOULDER_STABILITY_EXERCISE_NAME_SEATED_DUMBBELL_EXTERNAL_ROTATION ((FIT_SHOULDER_STABILITY_EXERCISE_NAME)23)
|
|
#define FIT_SHOULDER_STABILITY_EXERCISE_NAME_STANDING_L_RAISE ((FIT_SHOULDER_STABILITY_EXERCISE_NAME)24)
|
|
#define FIT_SHOULDER_STABILITY_EXERCISE_NAME_SWISS_BALL_I_RAISE ((FIT_SHOULDER_STABILITY_EXERCISE_NAME)25)
|
|
#define FIT_SHOULDER_STABILITY_EXERCISE_NAME_WEIGHTED_SWISS_BALL_I_RAISE ((FIT_SHOULDER_STABILITY_EXERCISE_NAME)26)
|
|
#define FIT_SHOULDER_STABILITY_EXERCISE_NAME_SWISS_BALL_T_RAISE ((FIT_SHOULDER_STABILITY_EXERCISE_NAME)27)
|
|
#define FIT_SHOULDER_STABILITY_EXERCISE_NAME_WEIGHTED_SWISS_BALL_T_RAISE ((FIT_SHOULDER_STABILITY_EXERCISE_NAME)28)
|
|
#define FIT_SHOULDER_STABILITY_EXERCISE_NAME_SWISS_BALL_W_RAISE ((FIT_SHOULDER_STABILITY_EXERCISE_NAME)29)
|
|
#define FIT_SHOULDER_STABILITY_EXERCISE_NAME_WEIGHTED_SWISS_BALL_W_RAISE ((FIT_SHOULDER_STABILITY_EXERCISE_NAME)30)
|
|
#define FIT_SHOULDER_STABILITY_EXERCISE_NAME_SWISS_BALL_Y_RAISE ((FIT_SHOULDER_STABILITY_EXERCISE_NAME)31)
|
|
#define FIT_SHOULDER_STABILITY_EXERCISE_NAME_WEIGHTED_SWISS_BALL_Y_RAISE ((FIT_SHOULDER_STABILITY_EXERCISE_NAME)32)
|
|
#define FIT_SHOULDER_STABILITY_EXERCISE_NAME_COUNT 33
|
|
|
|
typedef FIT_UINT16 FIT_SHRUG_EXERCISE_NAME;
|
|
#define FIT_SHRUG_EXERCISE_NAME_INVALID FIT_UINT16_INVALID
|
|
#define FIT_SHRUG_EXERCISE_NAME_BARBELL_JUMP_SHRUG ((FIT_SHRUG_EXERCISE_NAME)0)
|
|
#define FIT_SHRUG_EXERCISE_NAME_BARBELL_SHRUG ((FIT_SHRUG_EXERCISE_NAME)1)
|
|
#define FIT_SHRUG_EXERCISE_NAME_BARBELL_UPRIGHT_ROW ((FIT_SHRUG_EXERCISE_NAME)2)
|
|
#define FIT_SHRUG_EXERCISE_NAME_BEHIND_THE_BACK_SMITH_MACHINE_SHRUG ((FIT_SHRUG_EXERCISE_NAME)3)
|
|
#define FIT_SHRUG_EXERCISE_NAME_DUMBBELL_JUMP_SHRUG ((FIT_SHRUG_EXERCISE_NAME)4)
|
|
#define FIT_SHRUG_EXERCISE_NAME_DUMBBELL_SHRUG ((FIT_SHRUG_EXERCISE_NAME)5)
|
|
#define FIT_SHRUG_EXERCISE_NAME_DUMBBELL_UPRIGHT_ROW ((FIT_SHRUG_EXERCISE_NAME)6)
|
|
#define FIT_SHRUG_EXERCISE_NAME_INCLINE_DUMBBELL_SHRUG ((FIT_SHRUG_EXERCISE_NAME)7)
|
|
#define FIT_SHRUG_EXERCISE_NAME_OVERHEAD_BARBELL_SHRUG ((FIT_SHRUG_EXERCISE_NAME)8)
|
|
#define FIT_SHRUG_EXERCISE_NAME_OVERHEAD_DUMBBELL_SHRUG ((FIT_SHRUG_EXERCISE_NAME)9)
|
|
#define FIT_SHRUG_EXERCISE_NAME_SCAPTION_AND_SHRUG ((FIT_SHRUG_EXERCISE_NAME)10)
|
|
#define FIT_SHRUG_EXERCISE_NAME_SCAPULAR_RETRACTION ((FIT_SHRUG_EXERCISE_NAME)11)
|
|
#define FIT_SHRUG_EXERCISE_NAME_SERRATUS_CHAIR_SHRUG ((FIT_SHRUG_EXERCISE_NAME)12)
|
|
#define FIT_SHRUG_EXERCISE_NAME_WEIGHTED_SERRATUS_CHAIR_SHRUG ((FIT_SHRUG_EXERCISE_NAME)13)
|
|
#define FIT_SHRUG_EXERCISE_NAME_SERRATUS_SHRUG ((FIT_SHRUG_EXERCISE_NAME)14)
|
|
#define FIT_SHRUG_EXERCISE_NAME_WEIGHTED_SERRATUS_SHRUG ((FIT_SHRUG_EXERCISE_NAME)15)
|
|
#define FIT_SHRUG_EXERCISE_NAME_WIDE_GRIP_JUMP_SHRUG ((FIT_SHRUG_EXERCISE_NAME)16)
|
|
#define FIT_SHRUG_EXERCISE_NAME_COUNT 17
|
|
|
|
typedef FIT_UINT16 FIT_SIT_UP_EXERCISE_NAME;
|
|
#define FIT_SIT_UP_EXERCISE_NAME_INVALID FIT_UINT16_INVALID
|
|
#define FIT_SIT_UP_EXERCISE_NAME_ALTERNATING_SIT_UP ((FIT_SIT_UP_EXERCISE_NAME)0)
|
|
#define FIT_SIT_UP_EXERCISE_NAME_WEIGHTED_ALTERNATING_SIT_UP ((FIT_SIT_UP_EXERCISE_NAME)1)
|
|
#define FIT_SIT_UP_EXERCISE_NAME_BENT_KNEE_V_UP ((FIT_SIT_UP_EXERCISE_NAME)2)
|
|
#define FIT_SIT_UP_EXERCISE_NAME_WEIGHTED_BENT_KNEE_V_UP ((FIT_SIT_UP_EXERCISE_NAME)3)
|
|
#define FIT_SIT_UP_EXERCISE_NAME_BUTTERFLY_SIT_UP ((FIT_SIT_UP_EXERCISE_NAME)4)
|
|
#define FIT_SIT_UP_EXERCISE_NAME_WEIGHTED_BUTTERFLY_SITUP ((FIT_SIT_UP_EXERCISE_NAME)5)
|
|
#define FIT_SIT_UP_EXERCISE_NAME_CROSS_PUNCH_ROLL_UP ((FIT_SIT_UP_EXERCISE_NAME)6)
|
|
#define FIT_SIT_UP_EXERCISE_NAME_WEIGHTED_CROSS_PUNCH_ROLL_UP ((FIT_SIT_UP_EXERCISE_NAME)7)
|
|
#define FIT_SIT_UP_EXERCISE_NAME_CROSSED_ARMS_SIT_UP ((FIT_SIT_UP_EXERCISE_NAME)8)
|
|
#define FIT_SIT_UP_EXERCISE_NAME_WEIGHTED_CROSSED_ARMS_SIT_UP ((FIT_SIT_UP_EXERCISE_NAME)9)
|
|
#define FIT_SIT_UP_EXERCISE_NAME_GET_UP_SIT_UP ((FIT_SIT_UP_EXERCISE_NAME)10)
|
|
#define FIT_SIT_UP_EXERCISE_NAME_WEIGHTED_GET_UP_SIT_UP ((FIT_SIT_UP_EXERCISE_NAME)11)
|
|
#define FIT_SIT_UP_EXERCISE_NAME_HOVERING_SIT_UP ((FIT_SIT_UP_EXERCISE_NAME)12)
|
|
#define FIT_SIT_UP_EXERCISE_NAME_WEIGHTED_HOVERING_SIT_UP ((FIT_SIT_UP_EXERCISE_NAME)13)
|
|
#define FIT_SIT_UP_EXERCISE_NAME_KETTLEBELL_SIT_UP ((FIT_SIT_UP_EXERCISE_NAME)14)
|
|
#define FIT_SIT_UP_EXERCISE_NAME_MEDICINE_BALL_ALTERNATING_V_UP ((FIT_SIT_UP_EXERCISE_NAME)15)
|
|
#define FIT_SIT_UP_EXERCISE_NAME_MEDICINE_BALL_SIT_UP ((FIT_SIT_UP_EXERCISE_NAME)16)
|
|
#define FIT_SIT_UP_EXERCISE_NAME_MEDICINE_BALL_V_UP ((FIT_SIT_UP_EXERCISE_NAME)17)
|
|
#define FIT_SIT_UP_EXERCISE_NAME_MODIFIED_SIT_UP ((FIT_SIT_UP_EXERCISE_NAME)18)
|
|
#define FIT_SIT_UP_EXERCISE_NAME_NEGATIVE_SIT_UP ((FIT_SIT_UP_EXERCISE_NAME)19)
|
|
#define FIT_SIT_UP_EXERCISE_NAME_ONE_ARM_FULL_SIT_UP ((FIT_SIT_UP_EXERCISE_NAME)20)
|
|
#define FIT_SIT_UP_EXERCISE_NAME_RECLINING_CIRCLE ((FIT_SIT_UP_EXERCISE_NAME)21)
|
|
#define FIT_SIT_UP_EXERCISE_NAME_WEIGHTED_RECLINING_CIRCLE ((FIT_SIT_UP_EXERCISE_NAME)22)
|
|
#define FIT_SIT_UP_EXERCISE_NAME_REVERSE_CURL_UP ((FIT_SIT_UP_EXERCISE_NAME)23)
|
|
#define FIT_SIT_UP_EXERCISE_NAME_WEIGHTED_REVERSE_CURL_UP ((FIT_SIT_UP_EXERCISE_NAME)24)
|
|
#define FIT_SIT_UP_EXERCISE_NAME_SINGLE_LEG_SWISS_BALL_JACKKNIFE ((FIT_SIT_UP_EXERCISE_NAME)25)
|
|
#define FIT_SIT_UP_EXERCISE_NAME_WEIGHTED_SINGLE_LEG_SWISS_BALL_JACKKNIFE ((FIT_SIT_UP_EXERCISE_NAME)26)
|
|
#define FIT_SIT_UP_EXERCISE_NAME_THE_TEASER ((FIT_SIT_UP_EXERCISE_NAME)27)
|
|
#define FIT_SIT_UP_EXERCISE_NAME_THE_TEASER_WEIGHTED ((FIT_SIT_UP_EXERCISE_NAME)28)
|
|
#define FIT_SIT_UP_EXERCISE_NAME_THREE_PART_ROLL_DOWN ((FIT_SIT_UP_EXERCISE_NAME)29)
|
|
#define FIT_SIT_UP_EXERCISE_NAME_WEIGHTED_THREE_PART_ROLL_DOWN ((FIT_SIT_UP_EXERCISE_NAME)30)
|
|
#define FIT_SIT_UP_EXERCISE_NAME_V_UP ((FIT_SIT_UP_EXERCISE_NAME)31)
|
|
#define FIT_SIT_UP_EXERCISE_NAME_WEIGHTED_V_UP ((FIT_SIT_UP_EXERCISE_NAME)32)
|
|
#define FIT_SIT_UP_EXERCISE_NAME_WEIGHTED_RUSSIAN_TWIST_ON_SWISS_BALL ((FIT_SIT_UP_EXERCISE_NAME)33)
|
|
#define FIT_SIT_UP_EXERCISE_NAME_WEIGHTED_SIT_UP ((FIT_SIT_UP_EXERCISE_NAME)34)
|
|
#define FIT_SIT_UP_EXERCISE_NAME_X_ABS ((FIT_SIT_UP_EXERCISE_NAME)35)
|
|
#define FIT_SIT_UP_EXERCISE_NAME_WEIGHTED_X_ABS ((FIT_SIT_UP_EXERCISE_NAME)36)
|
|
#define FIT_SIT_UP_EXERCISE_NAME_SIT_UP ((FIT_SIT_UP_EXERCISE_NAME)37)
|
|
#define FIT_SIT_UP_EXERCISE_NAME_COUNT 38
|
|
|
|
typedef FIT_UINT16 FIT_SQUAT_EXERCISE_NAME;
|
|
#define FIT_SQUAT_EXERCISE_NAME_INVALID FIT_UINT16_INVALID
|
|
#define FIT_SQUAT_EXERCISE_NAME_LEG_PRESS ((FIT_SQUAT_EXERCISE_NAME)0)
|
|
#define FIT_SQUAT_EXERCISE_NAME_BACK_SQUAT_WITH_BODY_BAR ((FIT_SQUAT_EXERCISE_NAME)1)
|
|
#define FIT_SQUAT_EXERCISE_NAME_BACK_SQUATS ((FIT_SQUAT_EXERCISE_NAME)2)
|
|
#define FIT_SQUAT_EXERCISE_NAME_WEIGHTED_BACK_SQUATS ((FIT_SQUAT_EXERCISE_NAME)3)
|
|
#define FIT_SQUAT_EXERCISE_NAME_BALANCING_SQUAT ((FIT_SQUAT_EXERCISE_NAME)4)
|
|
#define FIT_SQUAT_EXERCISE_NAME_WEIGHTED_BALANCING_SQUAT ((FIT_SQUAT_EXERCISE_NAME)5)
|
|
#define FIT_SQUAT_EXERCISE_NAME_BARBELL_BACK_SQUAT ((FIT_SQUAT_EXERCISE_NAME)6)
|
|
#define FIT_SQUAT_EXERCISE_NAME_BARBELL_BOX_SQUAT ((FIT_SQUAT_EXERCISE_NAME)7)
|
|
#define FIT_SQUAT_EXERCISE_NAME_BARBELL_FRONT_SQUAT ((FIT_SQUAT_EXERCISE_NAME)8)
|
|
#define FIT_SQUAT_EXERCISE_NAME_BARBELL_HACK_SQUAT ((FIT_SQUAT_EXERCISE_NAME)9)
|
|
#define FIT_SQUAT_EXERCISE_NAME_BARBELL_HANG_SQUAT_SNATCH ((FIT_SQUAT_EXERCISE_NAME)10)
|
|
#define FIT_SQUAT_EXERCISE_NAME_BARBELL_LATERAL_STEP_UP ((FIT_SQUAT_EXERCISE_NAME)11)
|
|
#define FIT_SQUAT_EXERCISE_NAME_BARBELL_QUARTER_SQUAT ((FIT_SQUAT_EXERCISE_NAME)12)
|
|
#define FIT_SQUAT_EXERCISE_NAME_BARBELL_SIFF_SQUAT ((FIT_SQUAT_EXERCISE_NAME)13)
|
|
#define FIT_SQUAT_EXERCISE_NAME_BARBELL_SQUAT_SNATCH ((FIT_SQUAT_EXERCISE_NAME)14)
|
|
#define FIT_SQUAT_EXERCISE_NAME_BARBELL_SQUAT_WITH_HEELS_RAISED ((FIT_SQUAT_EXERCISE_NAME)15)
|
|
#define FIT_SQUAT_EXERCISE_NAME_BARBELL_STEPOVER ((FIT_SQUAT_EXERCISE_NAME)16)
|
|
#define FIT_SQUAT_EXERCISE_NAME_BARBELL_STEP_UP ((FIT_SQUAT_EXERCISE_NAME)17)
|
|
#define FIT_SQUAT_EXERCISE_NAME_BENCH_SQUAT_WITH_ROTATIONAL_CHOP ((FIT_SQUAT_EXERCISE_NAME)18)
|
|
#define FIT_SQUAT_EXERCISE_NAME_WEIGHTED_BENCH_SQUAT_WITH_ROTATIONAL_CHOP ((FIT_SQUAT_EXERCISE_NAME)19)
|
|
#define FIT_SQUAT_EXERCISE_NAME_BODY_WEIGHT_WALL_SQUAT ((FIT_SQUAT_EXERCISE_NAME)20)
|
|
#define FIT_SQUAT_EXERCISE_NAME_WEIGHTED_WALL_SQUAT ((FIT_SQUAT_EXERCISE_NAME)21)
|
|
#define FIT_SQUAT_EXERCISE_NAME_BOX_STEP_SQUAT ((FIT_SQUAT_EXERCISE_NAME)22)
|
|
#define FIT_SQUAT_EXERCISE_NAME_WEIGHTED_BOX_STEP_SQUAT ((FIT_SQUAT_EXERCISE_NAME)23)
|
|
#define FIT_SQUAT_EXERCISE_NAME_BRACED_SQUAT ((FIT_SQUAT_EXERCISE_NAME)24)
|
|
#define FIT_SQUAT_EXERCISE_NAME_CROSSED_ARM_BARBELL_FRONT_SQUAT ((FIT_SQUAT_EXERCISE_NAME)25)
|
|
#define FIT_SQUAT_EXERCISE_NAME_CROSSOVER_DUMBBELL_STEP_UP ((FIT_SQUAT_EXERCISE_NAME)26)
|
|
#define FIT_SQUAT_EXERCISE_NAME_DUMBBELL_FRONT_SQUAT ((FIT_SQUAT_EXERCISE_NAME)27)
|
|
#define FIT_SQUAT_EXERCISE_NAME_DUMBBELL_SPLIT_SQUAT ((FIT_SQUAT_EXERCISE_NAME)28)
|
|
#define FIT_SQUAT_EXERCISE_NAME_DUMBBELL_SQUAT ((FIT_SQUAT_EXERCISE_NAME)29)
|
|
#define FIT_SQUAT_EXERCISE_NAME_DUMBBELL_SQUAT_CLEAN ((FIT_SQUAT_EXERCISE_NAME)30)
|
|
#define FIT_SQUAT_EXERCISE_NAME_DUMBBELL_STEPOVER ((FIT_SQUAT_EXERCISE_NAME)31)
|
|
#define FIT_SQUAT_EXERCISE_NAME_DUMBBELL_STEP_UP ((FIT_SQUAT_EXERCISE_NAME)32)
|
|
#define FIT_SQUAT_EXERCISE_NAME_ELEVATED_SINGLE_LEG_SQUAT ((FIT_SQUAT_EXERCISE_NAME)33)
|
|
#define FIT_SQUAT_EXERCISE_NAME_WEIGHTED_ELEVATED_SINGLE_LEG_SQUAT ((FIT_SQUAT_EXERCISE_NAME)34)
|
|
#define FIT_SQUAT_EXERCISE_NAME_FIGURE_FOUR_SQUATS ((FIT_SQUAT_EXERCISE_NAME)35)
|
|
#define FIT_SQUAT_EXERCISE_NAME_WEIGHTED_FIGURE_FOUR_SQUATS ((FIT_SQUAT_EXERCISE_NAME)36)
|
|
#define FIT_SQUAT_EXERCISE_NAME_GOBLET_SQUAT ((FIT_SQUAT_EXERCISE_NAME)37)
|
|
#define FIT_SQUAT_EXERCISE_NAME_KETTLEBELL_SQUAT ((FIT_SQUAT_EXERCISE_NAME)38)
|
|
#define FIT_SQUAT_EXERCISE_NAME_KETTLEBELL_SWING_OVERHEAD ((FIT_SQUAT_EXERCISE_NAME)39)
|
|
#define FIT_SQUAT_EXERCISE_NAME_KETTLEBELL_SWING_WITH_FLIP_TO_SQUAT ((FIT_SQUAT_EXERCISE_NAME)40)
|
|
#define FIT_SQUAT_EXERCISE_NAME_LATERAL_DUMBBELL_STEP_UP ((FIT_SQUAT_EXERCISE_NAME)41)
|
|
#define FIT_SQUAT_EXERCISE_NAME_ONE_LEGGED_SQUAT ((FIT_SQUAT_EXERCISE_NAME)42)
|
|
#define FIT_SQUAT_EXERCISE_NAME_OVERHEAD_DUMBBELL_SQUAT ((FIT_SQUAT_EXERCISE_NAME)43)
|
|
#define FIT_SQUAT_EXERCISE_NAME_OVERHEAD_SQUAT ((FIT_SQUAT_EXERCISE_NAME)44)
|
|
#define FIT_SQUAT_EXERCISE_NAME_PARTIAL_SINGLE_LEG_SQUAT ((FIT_SQUAT_EXERCISE_NAME)45)
|
|
#define FIT_SQUAT_EXERCISE_NAME_WEIGHTED_PARTIAL_SINGLE_LEG_SQUAT ((FIT_SQUAT_EXERCISE_NAME)46)
|
|
#define FIT_SQUAT_EXERCISE_NAME_PISTOL_SQUAT ((FIT_SQUAT_EXERCISE_NAME)47)
|
|
#define FIT_SQUAT_EXERCISE_NAME_WEIGHTED_PISTOL_SQUAT ((FIT_SQUAT_EXERCISE_NAME)48)
|
|
#define FIT_SQUAT_EXERCISE_NAME_PLIE_SLIDES ((FIT_SQUAT_EXERCISE_NAME)49)
|
|
#define FIT_SQUAT_EXERCISE_NAME_WEIGHTED_PLIE_SLIDES ((FIT_SQUAT_EXERCISE_NAME)50)
|
|
#define FIT_SQUAT_EXERCISE_NAME_PLIE_SQUAT ((FIT_SQUAT_EXERCISE_NAME)51)
|
|
#define FIT_SQUAT_EXERCISE_NAME_WEIGHTED_PLIE_SQUAT ((FIT_SQUAT_EXERCISE_NAME)52)
|
|
#define FIT_SQUAT_EXERCISE_NAME_PRISONER_SQUAT ((FIT_SQUAT_EXERCISE_NAME)53)
|
|
#define FIT_SQUAT_EXERCISE_NAME_WEIGHTED_PRISONER_SQUAT ((FIT_SQUAT_EXERCISE_NAME)54)
|
|
#define FIT_SQUAT_EXERCISE_NAME_SINGLE_LEG_BENCH_GET_UP ((FIT_SQUAT_EXERCISE_NAME)55)
|
|
#define FIT_SQUAT_EXERCISE_NAME_WEIGHTED_SINGLE_LEG_BENCH_GET_UP ((FIT_SQUAT_EXERCISE_NAME)56)
|
|
#define FIT_SQUAT_EXERCISE_NAME_SINGLE_LEG_BENCH_SQUAT ((FIT_SQUAT_EXERCISE_NAME)57)
|
|
#define FIT_SQUAT_EXERCISE_NAME_WEIGHTED_SINGLE_LEG_BENCH_SQUAT ((FIT_SQUAT_EXERCISE_NAME)58)
|
|
#define FIT_SQUAT_EXERCISE_NAME_SINGLE_LEG_SQUAT_ON_SWISS_BALL ((FIT_SQUAT_EXERCISE_NAME)59)
|
|
#define FIT_SQUAT_EXERCISE_NAME_WEIGHTED_SINGLE_LEG_SQUAT_ON_SWISS_BALL ((FIT_SQUAT_EXERCISE_NAME)60)
|
|
#define FIT_SQUAT_EXERCISE_NAME_SQUAT ((FIT_SQUAT_EXERCISE_NAME)61)
|
|
#define FIT_SQUAT_EXERCISE_NAME_WEIGHTED_SQUAT ((FIT_SQUAT_EXERCISE_NAME)62)
|
|
#define FIT_SQUAT_EXERCISE_NAME_SQUATS_WITH_BAND ((FIT_SQUAT_EXERCISE_NAME)63)
|
|
#define FIT_SQUAT_EXERCISE_NAME_STAGGERED_SQUAT ((FIT_SQUAT_EXERCISE_NAME)64)
|
|
#define FIT_SQUAT_EXERCISE_NAME_WEIGHTED_STAGGERED_SQUAT ((FIT_SQUAT_EXERCISE_NAME)65)
|
|
#define FIT_SQUAT_EXERCISE_NAME_STEP_UP ((FIT_SQUAT_EXERCISE_NAME)66)
|
|
#define FIT_SQUAT_EXERCISE_NAME_WEIGHTED_STEP_UP ((FIT_SQUAT_EXERCISE_NAME)67)
|
|
#define FIT_SQUAT_EXERCISE_NAME_SUITCASE_SQUATS ((FIT_SQUAT_EXERCISE_NAME)68)
|
|
#define FIT_SQUAT_EXERCISE_NAME_SUMO_SQUAT ((FIT_SQUAT_EXERCISE_NAME)69)
|
|
#define FIT_SQUAT_EXERCISE_NAME_SUMO_SQUAT_SLIDE_IN ((FIT_SQUAT_EXERCISE_NAME)70)
|
|
#define FIT_SQUAT_EXERCISE_NAME_WEIGHTED_SUMO_SQUAT_SLIDE_IN ((FIT_SQUAT_EXERCISE_NAME)71)
|
|
#define FIT_SQUAT_EXERCISE_NAME_SUMO_SQUAT_TO_HIGH_PULL ((FIT_SQUAT_EXERCISE_NAME)72)
|
|
#define FIT_SQUAT_EXERCISE_NAME_SUMO_SQUAT_TO_STAND ((FIT_SQUAT_EXERCISE_NAME)73)
|
|
#define FIT_SQUAT_EXERCISE_NAME_WEIGHTED_SUMO_SQUAT_TO_STAND ((FIT_SQUAT_EXERCISE_NAME)74)
|
|
#define FIT_SQUAT_EXERCISE_NAME_SUMO_SQUAT_WITH_ROTATION ((FIT_SQUAT_EXERCISE_NAME)75)
|
|
#define FIT_SQUAT_EXERCISE_NAME_WEIGHTED_SUMO_SQUAT_WITH_ROTATION ((FIT_SQUAT_EXERCISE_NAME)76)
|
|
#define FIT_SQUAT_EXERCISE_NAME_SWISS_BALL_BODY_WEIGHT_WALL_SQUAT ((FIT_SQUAT_EXERCISE_NAME)77)
|
|
#define FIT_SQUAT_EXERCISE_NAME_WEIGHTED_SWISS_BALL_WALL_SQUAT ((FIT_SQUAT_EXERCISE_NAME)78)
|
|
#define FIT_SQUAT_EXERCISE_NAME_THRUSTERS ((FIT_SQUAT_EXERCISE_NAME)79)
|
|
#define FIT_SQUAT_EXERCISE_NAME_UNEVEN_SQUAT ((FIT_SQUAT_EXERCISE_NAME)80)
|
|
#define FIT_SQUAT_EXERCISE_NAME_WEIGHTED_UNEVEN_SQUAT ((FIT_SQUAT_EXERCISE_NAME)81)
|
|
#define FIT_SQUAT_EXERCISE_NAME_WAIST_SLIMMING_SQUAT ((FIT_SQUAT_EXERCISE_NAME)82)
|
|
#define FIT_SQUAT_EXERCISE_NAME_WALL_BALL ((FIT_SQUAT_EXERCISE_NAME)83)
|
|
#define FIT_SQUAT_EXERCISE_NAME_WIDE_STANCE_BARBELL_SQUAT ((FIT_SQUAT_EXERCISE_NAME)84)
|
|
#define FIT_SQUAT_EXERCISE_NAME_WIDE_STANCE_GOBLET_SQUAT ((FIT_SQUAT_EXERCISE_NAME)85)
|
|
#define FIT_SQUAT_EXERCISE_NAME_ZERCHER_SQUAT ((FIT_SQUAT_EXERCISE_NAME)86)
|
|
#define FIT_SQUAT_EXERCISE_NAME_KBS_OVERHEAD ((FIT_SQUAT_EXERCISE_NAME)87) // Deprecated do not use
|
|
#define FIT_SQUAT_EXERCISE_NAME_SQUAT_AND_SIDE_KICK ((FIT_SQUAT_EXERCISE_NAME)88)
|
|
#define FIT_SQUAT_EXERCISE_NAME_SQUAT_JUMPS_IN_N_OUT ((FIT_SQUAT_EXERCISE_NAME)89)
|
|
#define FIT_SQUAT_EXERCISE_NAME_PILATES_PLIE_SQUATS_PARALLEL_TURNED_OUT_FLAT_AND_HEELS ((FIT_SQUAT_EXERCISE_NAME)90)
|
|
#define FIT_SQUAT_EXERCISE_NAME_RELEVE_STRAIGHT_LEG_AND_KNEE_BENT_WITH_ONE_LEG_VARIATION ((FIT_SQUAT_EXERCISE_NAME)91)
|
|
#define FIT_SQUAT_EXERCISE_NAME_COUNT 92
|
|
|
|
typedef FIT_UINT16 FIT_TOTAL_BODY_EXERCISE_NAME;
|
|
#define FIT_TOTAL_BODY_EXERCISE_NAME_INVALID FIT_UINT16_INVALID
|
|
#define FIT_TOTAL_BODY_EXERCISE_NAME_BURPEE ((FIT_TOTAL_BODY_EXERCISE_NAME)0)
|
|
#define FIT_TOTAL_BODY_EXERCISE_NAME_WEIGHTED_BURPEE ((FIT_TOTAL_BODY_EXERCISE_NAME)1)
|
|
#define FIT_TOTAL_BODY_EXERCISE_NAME_BURPEE_BOX_JUMP ((FIT_TOTAL_BODY_EXERCISE_NAME)2)
|
|
#define FIT_TOTAL_BODY_EXERCISE_NAME_WEIGHTED_BURPEE_BOX_JUMP ((FIT_TOTAL_BODY_EXERCISE_NAME)3)
|
|
#define FIT_TOTAL_BODY_EXERCISE_NAME_HIGH_PULL_BURPEE ((FIT_TOTAL_BODY_EXERCISE_NAME)4)
|
|
#define FIT_TOTAL_BODY_EXERCISE_NAME_MAN_MAKERS ((FIT_TOTAL_BODY_EXERCISE_NAME)5)
|
|
#define FIT_TOTAL_BODY_EXERCISE_NAME_ONE_ARM_BURPEE ((FIT_TOTAL_BODY_EXERCISE_NAME)6)
|
|
#define FIT_TOTAL_BODY_EXERCISE_NAME_SQUAT_THRUSTS ((FIT_TOTAL_BODY_EXERCISE_NAME)7)
|
|
#define FIT_TOTAL_BODY_EXERCISE_NAME_WEIGHTED_SQUAT_THRUSTS ((FIT_TOTAL_BODY_EXERCISE_NAME)8)
|
|
#define FIT_TOTAL_BODY_EXERCISE_NAME_SQUAT_PLANK_PUSH_UP ((FIT_TOTAL_BODY_EXERCISE_NAME)9)
|
|
#define FIT_TOTAL_BODY_EXERCISE_NAME_WEIGHTED_SQUAT_PLANK_PUSH_UP ((FIT_TOTAL_BODY_EXERCISE_NAME)10)
|
|
#define FIT_TOTAL_BODY_EXERCISE_NAME_STANDING_T_ROTATION_BALANCE ((FIT_TOTAL_BODY_EXERCISE_NAME)11)
|
|
#define FIT_TOTAL_BODY_EXERCISE_NAME_WEIGHTED_STANDING_T_ROTATION_BALANCE ((FIT_TOTAL_BODY_EXERCISE_NAME)12)
|
|
#define FIT_TOTAL_BODY_EXERCISE_NAME_COUNT 13
|
|
|
|
typedef FIT_UINT16 FIT_TRICEPS_EXTENSION_EXERCISE_NAME;
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_INVALID FIT_UINT16_INVALID
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_BENCH_DIP ((FIT_TRICEPS_EXTENSION_EXERCISE_NAME)0)
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_WEIGHTED_BENCH_DIP ((FIT_TRICEPS_EXTENSION_EXERCISE_NAME)1)
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_BODY_WEIGHT_DIP ((FIT_TRICEPS_EXTENSION_EXERCISE_NAME)2)
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_CABLE_KICKBACK ((FIT_TRICEPS_EXTENSION_EXERCISE_NAME)3)
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_CABLE_LYING_TRICEPS_EXTENSION ((FIT_TRICEPS_EXTENSION_EXERCISE_NAME)4)
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_CABLE_OVERHEAD_TRICEPS_EXTENSION ((FIT_TRICEPS_EXTENSION_EXERCISE_NAME)5)
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_DUMBBELL_KICKBACK ((FIT_TRICEPS_EXTENSION_EXERCISE_NAME)6)
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_DUMBBELL_LYING_TRICEPS_EXTENSION ((FIT_TRICEPS_EXTENSION_EXERCISE_NAME)7)
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_EZ_BAR_OVERHEAD_TRICEPS_EXTENSION ((FIT_TRICEPS_EXTENSION_EXERCISE_NAME)8)
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_INCLINE_DIP ((FIT_TRICEPS_EXTENSION_EXERCISE_NAME)9)
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_WEIGHTED_INCLINE_DIP ((FIT_TRICEPS_EXTENSION_EXERCISE_NAME)10)
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_INCLINE_EZ_BAR_LYING_TRICEPS_EXTENSION ((FIT_TRICEPS_EXTENSION_EXERCISE_NAME)11)
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_LYING_DUMBBELL_PULLOVER_TO_EXTENSION ((FIT_TRICEPS_EXTENSION_EXERCISE_NAME)12)
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_LYING_EZ_BAR_TRICEPS_EXTENSION ((FIT_TRICEPS_EXTENSION_EXERCISE_NAME)13)
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_LYING_TRICEPS_EXTENSION_TO_CLOSE_GRIP_BENCH_PRESS ((FIT_TRICEPS_EXTENSION_EXERCISE_NAME)14)
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_OVERHEAD_DUMBBELL_TRICEPS_EXTENSION ((FIT_TRICEPS_EXTENSION_EXERCISE_NAME)15)
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_RECLINING_TRICEPS_PRESS ((FIT_TRICEPS_EXTENSION_EXERCISE_NAME)16)
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_REVERSE_GRIP_PRESSDOWN ((FIT_TRICEPS_EXTENSION_EXERCISE_NAME)17)
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_REVERSE_GRIP_TRICEPS_PRESSDOWN ((FIT_TRICEPS_EXTENSION_EXERCISE_NAME)18)
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_ROPE_PRESSDOWN ((FIT_TRICEPS_EXTENSION_EXERCISE_NAME)19)
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_SEATED_BARBELL_OVERHEAD_TRICEPS_EXTENSION ((FIT_TRICEPS_EXTENSION_EXERCISE_NAME)20)
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_SEATED_DUMBBELL_OVERHEAD_TRICEPS_EXTENSION ((FIT_TRICEPS_EXTENSION_EXERCISE_NAME)21)
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_SEATED_EZ_BAR_OVERHEAD_TRICEPS_EXTENSION ((FIT_TRICEPS_EXTENSION_EXERCISE_NAME)22)
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_SEATED_SINGLE_ARM_OVERHEAD_DUMBBELL_EXTENSION ((FIT_TRICEPS_EXTENSION_EXERCISE_NAME)23)
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_SINGLE_ARM_DUMBBELL_OVERHEAD_TRICEPS_EXTENSION ((FIT_TRICEPS_EXTENSION_EXERCISE_NAME)24)
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_SINGLE_DUMBBELL_SEATED_OVERHEAD_TRICEPS_EXTENSION ((FIT_TRICEPS_EXTENSION_EXERCISE_NAME)25)
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_SINGLE_LEG_BENCH_DIP_AND_KICK ((FIT_TRICEPS_EXTENSION_EXERCISE_NAME)26)
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_WEIGHTED_SINGLE_LEG_BENCH_DIP_AND_KICK ((FIT_TRICEPS_EXTENSION_EXERCISE_NAME)27)
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_SINGLE_LEG_DIP ((FIT_TRICEPS_EXTENSION_EXERCISE_NAME)28)
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_WEIGHTED_SINGLE_LEG_DIP ((FIT_TRICEPS_EXTENSION_EXERCISE_NAME)29)
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_STATIC_LYING_TRICEPS_EXTENSION ((FIT_TRICEPS_EXTENSION_EXERCISE_NAME)30)
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_SUSPENDED_DIP ((FIT_TRICEPS_EXTENSION_EXERCISE_NAME)31)
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_WEIGHTED_SUSPENDED_DIP ((FIT_TRICEPS_EXTENSION_EXERCISE_NAME)32)
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_SWISS_BALL_DUMBBELL_LYING_TRICEPS_EXTENSION ((FIT_TRICEPS_EXTENSION_EXERCISE_NAME)33)
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_SWISS_BALL_EZ_BAR_LYING_TRICEPS_EXTENSION ((FIT_TRICEPS_EXTENSION_EXERCISE_NAME)34)
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_SWISS_BALL_EZ_BAR_OVERHEAD_TRICEPS_EXTENSION ((FIT_TRICEPS_EXTENSION_EXERCISE_NAME)35)
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_TABLETOP_DIP ((FIT_TRICEPS_EXTENSION_EXERCISE_NAME)36)
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_WEIGHTED_TABLETOP_DIP ((FIT_TRICEPS_EXTENSION_EXERCISE_NAME)37)
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_TRICEPS_EXTENSION_ON_FLOOR ((FIT_TRICEPS_EXTENSION_EXERCISE_NAME)38)
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_TRICEPS_PRESSDOWN ((FIT_TRICEPS_EXTENSION_EXERCISE_NAME)39)
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_WEIGHTED_DIP ((FIT_TRICEPS_EXTENSION_EXERCISE_NAME)40)
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_COUNT 41
|
|
|
|
typedef FIT_UINT16 FIT_WARM_UP_EXERCISE_NAME;
|
|
#define FIT_WARM_UP_EXERCISE_NAME_INVALID FIT_UINT16_INVALID
|
|
#define FIT_WARM_UP_EXERCISE_NAME_QUADRUPED_ROCKING ((FIT_WARM_UP_EXERCISE_NAME)0)
|
|
#define FIT_WARM_UP_EXERCISE_NAME_NECK_TILTS ((FIT_WARM_UP_EXERCISE_NAME)1)
|
|
#define FIT_WARM_UP_EXERCISE_NAME_ANKLE_CIRCLES ((FIT_WARM_UP_EXERCISE_NAME)2)
|
|
#define FIT_WARM_UP_EXERCISE_NAME_ANKLE_DORSIFLEXION_WITH_BAND ((FIT_WARM_UP_EXERCISE_NAME)3)
|
|
#define FIT_WARM_UP_EXERCISE_NAME_ANKLE_INTERNAL_ROTATION ((FIT_WARM_UP_EXERCISE_NAME)4)
|
|
#define FIT_WARM_UP_EXERCISE_NAME_ARM_CIRCLES ((FIT_WARM_UP_EXERCISE_NAME)5)
|
|
#define FIT_WARM_UP_EXERCISE_NAME_BENT_OVER_REACH_TO_SKY ((FIT_WARM_UP_EXERCISE_NAME)6)
|
|
#define FIT_WARM_UP_EXERCISE_NAME_CAT_CAMEL ((FIT_WARM_UP_EXERCISE_NAME)7)
|
|
#define FIT_WARM_UP_EXERCISE_NAME_ELBOW_TO_FOOT_LUNGE ((FIT_WARM_UP_EXERCISE_NAME)8)
|
|
#define FIT_WARM_UP_EXERCISE_NAME_FORWARD_AND_BACKWARD_LEG_SWINGS ((FIT_WARM_UP_EXERCISE_NAME)9)
|
|
#define FIT_WARM_UP_EXERCISE_NAME_GROINERS ((FIT_WARM_UP_EXERCISE_NAME)10)
|
|
#define FIT_WARM_UP_EXERCISE_NAME_INVERTED_HAMSTRING_STRETCH ((FIT_WARM_UP_EXERCISE_NAME)11)
|
|
#define FIT_WARM_UP_EXERCISE_NAME_LATERAL_DUCK_UNDER ((FIT_WARM_UP_EXERCISE_NAME)12)
|
|
#define FIT_WARM_UP_EXERCISE_NAME_NECK_ROTATIONS ((FIT_WARM_UP_EXERCISE_NAME)13)
|
|
#define FIT_WARM_UP_EXERCISE_NAME_OPPOSITE_ARM_AND_LEG_BALANCE ((FIT_WARM_UP_EXERCISE_NAME)14)
|
|
#define FIT_WARM_UP_EXERCISE_NAME_REACH_ROLL_AND_LIFT ((FIT_WARM_UP_EXERCISE_NAME)15)
|
|
#define FIT_WARM_UP_EXERCISE_NAME_SCORPION ((FIT_WARM_UP_EXERCISE_NAME)16) // Deprecated do not use
|
|
#define FIT_WARM_UP_EXERCISE_NAME_SHOULDER_CIRCLES ((FIT_WARM_UP_EXERCISE_NAME)17)
|
|
#define FIT_WARM_UP_EXERCISE_NAME_SIDE_TO_SIDE_LEG_SWINGS ((FIT_WARM_UP_EXERCISE_NAME)18)
|
|
#define FIT_WARM_UP_EXERCISE_NAME_SLEEPER_STRETCH ((FIT_WARM_UP_EXERCISE_NAME)19)
|
|
#define FIT_WARM_UP_EXERCISE_NAME_SLIDE_OUT ((FIT_WARM_UP_EXERCISE_NAME)20)
|
|
#define FIT_WARM_UP_EXERCISE_NAME_SWISS_BALL_HIP_CROSSOVER ((FIT_WARM_UP_EXERCISE_NAME)21)
|
|
#define FIT_WARM_UP_EXERCISE_NAME_SWISS_BALL_REACH_ROLL_AND_LIFT ((FIT_WARM_UP_EXERCISE_NAME)22)
|
|
#define FIT_WARM_UP_EXERCISE_NAME_SWISS_BALL_WINDSHIELD_WIPERS ((FIT_WARM_UP_EXERCISE_NAME)23)
|
|
#define FIT_WARM_UP_EXERCISE_NAME_THORACIC_ROTATION ((FIT_WARM_UP_EXERCISE_NAME)24)
|
|
#define FIT_WARM_UP_EXERCISE_NAME_WALKING_HIGH_KICKS ((FIT_WARM_UP_EXERCISE_NAME)25)
|
|
#define FIT_WARM_UP_EXERCISE_NAME_WALKING_HIGH_KNEES ((FIT_WARM_UP_EXERCISE_NAME)26)
|
|
#define FIT_WARM_UP_EXERCISE_NAME_WALKING_KNEE_HUGS ((FIT_WARM_UP_EXERCISE_NAME)27)
|
|
#define FIT_WARM_UP_EXERCISE_NAME_WALKING_LEG_CRADLES ((FIT_WARM_UP_EXERCISE_NAME)28)
|
|
#define FIT_WARM_UP_EXERCISE_NAME_WALKOUT ((FIT_WARM_UP_EXERCISE_NAME)29)
|
|
#define FIT_WARM_UP_EXERCISE_NAME_WALKOUT_FROM_PUSH_UP_POSITION ((FIT_WARM_UP_EXERCISE_NAME)30)
|
|
#define FIT_WARM_UP_EXERCISE_NAME_COUNT 31
|
|
|
|
typedef FIT_UINT16 FIT_RUN_EXERCISE_NAME;
|
|
#define FIT_RUN_EXERCISE_NAME_INVALID FIT_UINT16_INVALID
|
|
#define FIT_RUN_EXERCISE_NAME_RUN ((FIT_RUN_EXERCISE_NAME)0)
|
|
#define FIT_RUN_EXERCISE_NAME_WALK ((FIT_RUN_EXERCISE_NAME)1)
|
|
#define FIT_RUN_EXERCISE_NAME_JOG ((FIT_RUN_EXERCISE_NAME)2)
|
|
#define FIT_RUN_EXERCISE_NAME_SPRINT ((FIT_RUN_EXERCISE_NAME)3)
|
|
#define FIT_RUN_EXERCISE_NAME_COUNT 4
|
|
|
|
typedef FIT_ENUM FIT_WATER_TYPE;
|
|
#define FIT_WATER_TYPE_INVALID FIT_ENUM_INVALID
|
|
#define FIT_WATER_TYPE_FRESH ((FIT_WATER_TYPE)0)
|
|
#define FIT_WATER_TYPE_SALT ((FIT_WATER_TYPE)1)
|
|
#define FIT_WATER_TYPE_EN13319 ((FIT_WATER_TYPE)2)
|
|
#define FIT_WATER_TYPE_CUSTOM ((FIT_WATER_TYPE)3)
|
|
#define FIT_WATER_TYPE_COUNT 4
|
|
|
|
typedef FIT_ENUM FIT_TISSUE_MODEL_TYPE;
|
|
#define FIT_TISSUE_MODEL_TYPE_INVALID FIT_ENUM_INVALID
|
|
#define FIT_TISSUE_MODEL_TYPE_ZHL_16C ((FIT_TISSUE_MODEL_TYPE)0) // Buhlmann's decompression algorithm, version C
|
|
#define FIT_TISSUE_MODEL_TYPE_COUNT 1
|
|
|
|
typedef FIT_ENUM FIT_DIVE_GAS_STATUS;
|
|
#define FIT_DIVE_GAS_STATUS_INVALID FIT_ENUM_INVALID
|
|
#define FIT_DIVE_GAS_STATUS_DISABLED ((FIT_DIVE_GAS_STATUS)0)
|
|
#define FIT_DIVE_GAS_STATUS_ENABLED ((FIT_DIVE_GAS_STATUS)1)
|
|
#define FIT_DIVE_GAS_STATUS_BACKUP_ONLY ((FIT_DIVE_GAS_STATUS)2)
|
|
#define FIT_DIVE_GAS_STATUS_COUNT 3
|
|
|
|
typedef FIT_ENUM FIT_DIVE_ALERT;
|
|
#define FIT_DIVE_ALERT_INVALID FIT_ENUM_INVALID
|
|
#define FIT_DIVE_ALERT_NDL_REACHED ((FIT_DIVE_ALERT)0)
|
|
#define FIT_DIVE_ALERT_GAS_SWITCH_PROMPTED ((FIT_DIVE_ALERT)1)
|
|
#define FIT_DIVE_ALERT_NEAR_SURFACE ((FIT_DIVE_ALERT)2)
|
|
#define FIT_DIVE_ALERT_APPROACHING_NDL ((FIT_DIVE_ALERT)3)
|
|
#define FIT_DIVE_ALERT_PO2_WARN ((FIT_DIVE_ALERT)4)
|
|
#define FIT_DIVE_ALERT_PO2_CRIT_HIGH ((FIT_DIVE_ALERT)5)
|
|
#define FIT_DIVE_ALERT_PO2_CRIT_LOW ((FIT_DIVE_ALERT)6)
|
|
#define FIT_DIVE_ALERT_TIME_ALERT ((FIT_DIVE_ALERT)7)
|
|
#define FIT_DIVE_ALERT_DEPTH_ALERT ((FIT_DIVE_ALERT)8)
|
|
#define FIT_DIVE_ALERT_DECO_CEILING_BROKEN ((FIT_DIVE_ALERT)9)
|
|
#define FIT_DIVE_ALERT_DECO_COMPLETE ((FIT_DIVE_ALERT)10)
|
|
#define FIT_DIVE_ALERT_SAFETY_STOP_BROKEN ((FIT_DIVE_ALERT)11)
|
|
#define FIT_DIVE_ALERT_SAFETY_STOP_COMPLETE ((FIT_DIVE_ALERT)12)
|
|
#define FIT_DIVE_ALERT_CNS_WARNING ((FIT_DIVE_ALERT)13)
|
|
#define FIT_DIVE_ALERT_CNS_CRITICAL ((FIT_DIVE_ALERT)14)
|
|
#define FIT_DIVE_ALERT_OTU_WARNING ((FIT_DIVE_ALERT)15)
|
|
#define FIT_DIVE_ALERT_OTU_CRITICAL ((FIT_DIVE_ALERT)16)
|
|
#define FIT_DIVE_ALERT_ASCENT_CRITICAL ((FIT_DIVE_ALERT)17)
|
|
#define FIT_DIVE_ALERT_ALERT_DISMISSED_BY_KEY ((FIT_DIVE_ALERT)18)
|
|
#define FIT_DIVE_ALERT_ALERT_DISMISSED_BY_TIMEOUT ((FIT_DIVE_ALERT)19)
|
|
#define FIT_DIVE_ALERT_BATTERY_LOW ((FIT_DIVE_ALERT)20)
|
|
#define FIT_DIVE_ALERT_BATTERY_CRITICAL ((FIT_DIVE_ALERT)21)
|
|
#define FIT_DIVE_ALERT_SAFETY_STOP_STARTED ((FIT_DIVE_ALERT)22)
|
|
#define FIT_DIVE_ALERT_APPROACHING_FIRST_DECO_STOP ((FIT_DIVE_ALERT)23)
|
|
#define FIT_DIVE_ALERT_SETPOINT_SWITCH_AUTO_LOW ((FIT_DIVE_ALERT)24)
|
|
#define FIT_DIVE_ALERT_SETPOINT_SWITCH_AUTO_HIGH ((FIT_DIVE_ALERT)25)
|
|
#define FIT_DIVE_ALERT_SETPOINT_SWITCH_MANUAL_LOW ((FIT_DIVE_ALERT)26)
|
|
#define FIT_DIVE_ALERT_SETPOINT_SWITCH_MANUAL_HIGH ((FIT_DIVE_ALERT)27)
|
|
#define FIT_DIVE_ALERT_AUTO_SETPOINT_SWITCH_IGNORED ((FIT_DIVE_ALERT)28)
|
|
#define FIT_DIVE_ALERT_SWITCHED_TO_OPEN_CIRCUIT ((FIT_DIVE_ALERT)29)
|
|
#define FIT_DIVE_ALERT_SWITCHED_TO_CLOSED_CIRCUIT ((FIT_DIVE_ALERT)30)
|
|
#define FIT_DIVE_ALERT_TANK_BATTERY_LOW ((FIT_DIVE_ALERT)32)
|
|
#define FIT_DIVE_ALERT_PO2_CCR_DIL_LOW ((FIT_DIVE_ALERT)33) // ccr diluent has low po2
|
|
#define FIT_DIVE_ALERT_DECO_STOP_CLEARED ((FIT_DIVE_ALERT)34) // a deco stop has been cleared
|
|
#define FIT_DIVE_ALERT_APNEA_NEUTRAL_BUOYANCY ((FIT_DIVE_ALERT)35) // Target Depth Apnea Alarm triggered
|
|
#define FIT_DIVE_ALERT_APNEA_TARGET_DEPTH ((FIT_DIVE_ALERT)36) // Neutral Buoyance Apnea Alarm triggered
|
|
#define FIT_DIVE_ALERT_APNEA_SURFACE ((FIT_DIVE_ALERT)37) // Surface Apnea Alarm triggered
|
|
#define FIT_DIVE_ALERT_APNEA_HIGH_SPEED ((FIT_DIVE_ALERT)38) // High Speed Apnea Alarm triggered
|
|
#define FIT_DIVE_ALERT_APNEA_LOW_SPEED ((FIT_DIVE_ALERT)39) // Low Speed Apnea Alarm triggered
|
|
#define FIT_DIVE_ALERT_COUNT 39
|
|
|
|
typedef FIT_ENUM FIT_DIVE_ALARM_TYPE;
|
|
#define FIT_DIVE_ALARM_TYPE_INVALID FIT_ENUM_INVALID
|
|
#define FIT_DIVE_ALARM_TYPE_DEPTH ((FIT_DIVE_ALARM_TYPE)0) // Alarm when a certain depth is crossed
|
|
#define FIT_DIVE_ALARM_TYPE_TIME ((FIT_DIVE_ALARM_TYPE)1) // Alarm when a certain time has transpired
|
|
#define FIT_DIVE_ALARM_TYPE_SPEED ((FIT_DIVE_ALARM_TYPE)2) // Alarm when a certain ascent or descent rate is exceeded
|
|
#define FIT_DIVE_ALARM_TYPE_COUNT 3
|
|
|
|
typedef FIT_ENUM FIT_DIVE_BACKLIGHT_MODE;
|
|
#define FIT_DIVE_BACKLIGHT_MODE_INVALID FIT_ENUM_INVALID
|
|
#define FIT_DIVE_BACKLIGHT_MODE_AT_DEPTH ((FIT_DIVE_BACKLIGHT_MODE)0)
|
|
#define FIT_DIVE_BACKLIGHT_MODE_ALWAYS_ON ((FIT_DIVE_BACKLIGHT_MODE)1)
|
|
#define FIT_DIVE_BACKLIGHT_MODE_COUNT 2
|
|
|
|
typedef FIT_ENUM FIT_SLEEP_LEVEL;
|
|
#define FIT_SLEEP_LEVEL_INVALID FIT_ENUM_INVALID
|
|
#define FIT_SLEEP_LEVEL_UNMEASURABLE ((FIT_SLEEP_LEVEL)0)
|
|
#define FIT_SLEEP_LEVEL_AWAKE ((FIT_SLEEP_LEVEL)1)
|
|
#define FIT_SLEEP_LEVEL_LIGHT ((FIT_SLEEP_LEVEL)2)
|
|
#define FIT_SLEEP_LEVEL_DEEP ((FIT_SLEEP_LEVEL)3)
|
|
#define FIT_SLEEP_LEVEL_REM ((FIT_SLEEP_LEVEL)4)
|
|
#define FIT_SLEEP_LEVEL_COUNT 5
|
|
|
|
typedef FIT_ENUM FIT_SPO2_MEASUREMENT_TYPE;
|
|
#define FIT_SPO2_MEASUREMENT_TYPE_INVALID FIT_ENUM_INVALID
|
|
#define FIT_SPO2_MEASUREMENT_TYPE_OFF_WRIST ((FIT_SPO2_MEASUREMENT_TYPE)0)
|
|
#define FIT_SPO2_MEASUREMENT_TYPE_SPOT_CHECK ((FIT_SPO2_MEASUREMENT_TYPE)1)
|
|
#define FIT_SPO2_MEASUREMENT_TYPE_CONTINUOUS_CHECK ((FIT_SPO2_MEASUREMENT_TYPE)2)
|
|
#define FIT_SPO2_MEASUREMENT_TYPE_PERIODIC ((FIT_SPO2_MEASUREMENT_TYPE)3)
|
|
#define FIT_SPO2_MEASUREMENT_TYPE_COUNT 4
|
|
|
|
typedef FIT_ENUM FIT_CCR_SETPOINT_SWITCH_MODE;
|
|
#define FIT_CCR_SETPOINT_SWITCH_MODE_INVALID FIT_ENUM_INVALID
|
|
#define FIT_CCR_SETPOINT_SWITCH_MODE_MANUAL ((FIT_CCR_SETPOINT_SWITCH_MODE)0) // User switches setpoints manually
|
|
#define FIT_CCR_SETPOINT_SWITCH_MODE_AUTOMATIC ((FIT_CCR_SETPOINT_SWITCH_MODE)1) // Switch automatically based on depth
|
|
#define FIT_CCR_SETPOINT_SWITCH_MODE_COUNT 2
|
|
|
|
typedef FIT_ENUM FIT_DIVE_GAS_MODE;
|
|
#define FIT_DIVE_GAS_MODE_INVALID FIT_ENUM_INVALID
|
|
#define FIT_DIVE_GAS_MODE_OPEN_CIRCUIT ((FIT_DIVE_GAS_MODE)0)
|
|
#define FIT_DIVE_GAS_MODE_CLOSED_CIRCUIT_DILUENT ((FIT_DIVE_GAS_MODE)1)
|
|
#define FIT_DIVE_GAS_MODE_COUNT 2
|
|
|
|
typedef FIT_ENUM FIT_PROJECTILE_TYPE;
|
|
#define FIT_PROJECTILE_TYPE_INVALID FIT_ENUM_INVALID
|
|
#define FIT_PROJECTILE_TYPE_ARROW ((FIT_PROJECTILE_TYPE)0) // Arrow projectile type
|
|
#define FIT_PROJECTILE_TYPE_RIFLE_CARTRIDGE ((FIT_PROJECTILE_TYPE)1) // Rifle cartridge projectile type
|
|
#define FIT_PROJECTILE_TYPE_PISTOL_CARTRIDGE ((FIT_PROJECTILE_TYPE)2) // Pistol cartridge projectile type
|
|
#define FIT_PROJECTILE_TYPE_SHOTSHELL ((FIT_PROJECTILE_TYPE)3) // Shotshell projectile type
|
|
#define FIT_PROJECTILE_TYPE_AIR_RIFLE_PELLET ((FIT_PROJECTILE_TYPE)4) // Air rifle pellet projectile type
|
|
#define FIT_PROJECTILE_TYPE_OTHER ((FIT_PROJECTILE_TYPE)5) // Other projectile type
|
|
#define FIT_PROJECTILE_TYPE_COUNT 6
|
|
|
|
typedef FIT_UINT16 FIT_FAVERO_PRODUCT;
|
|
#define FIT_FAVERO_PRODUCT_INVALID FIT_UINT16_INVALID
|
|
#define FIT_FAVERO_PRODUCT_ASSIOMA_UNO ((FIT_FAVERO_PRODUCT)10)
|
|
#define FIT_FAVERO_PRODUCT_ASSIOMA_DUO ((FIT_FAVERO_PRODUCT)12)
|
|
#define FIT_FAVERO_PRODUCT_COUNT 2
|
|
|
|
typedef FIT_ENUM FIT_SPLIT_TYPE;
|
|
#define FIT_SPLIT_TYPE_INVALID FIT_ENUM_INVALID
|
|
#define FIT_SPLIT_TYPE_ASCENT_SPLIT ((FIT_SPLIT_TYPE)1)
|
|
#define FIT_SPLIT_TYPE_DESCENT_SPLIT ((FIT_SPLIT_TYPE)2)
|
|
#define FIT_SPLIT_TYPE_INTERVAL_ACTIVE ((FIT_SPLIT_TYPE)3)
|
|
#define FIT_SPLIT_TYPE_INTERVAL_REST ((FIT_SPLIT_TYPE)4)
|
|
#define FIT_SPLIT_TYPE_INTERVAL_WARMUP ((FIT_SPLIT_TYPE)5)
|
|
#define FIT_SPLIT_TYPE_INTERVAL_COOLDOWN ((FIT_SPLIT_TYPE)6)
|
|
#define FIT_SPLIT_TYPE_INTERVAL_RECOVERY ((FIT_SPLIT_TYPE)7)
|
|
#define FIT_SPLIT_TYPE_INTERVAL_OTHER ((FIT_SPLIT_TYPE)8)
|
|
#define FIT_SPLIT_TYPE_CLIMB_ACTIVE ((FIT_SPLIT_TYPE)9)
|
|
#define FIT_SPLIT_TYPE_CLIMB_REST ((FIT_SPLIT_TYPE)10)
|
|
#define FIT_SPLIT_TYPE_SURF_ACTIVE ((FIT_SPLIT_TYPE)11)
|
|
#define FIT_SPLIT_TYPE_RUN_ACTIVE ((FIT_SPLIT_TYPE)12)
|
|
#define FIT_SPLIT_TYPE_RUN_REST ((FIT_SPLIT_TYPE)13)
|
|
#define FIT_SPLIT_TYPE_WORKOUT_ROUND ((FIT_SPLIT_TYPE)14)
|
|
#define FIT_SPLIT_TYPE_RWD_RUN ((FIT_SPLIT_TYPE)17) // run/walk detection running
|
|
#define FIT_SPLIT_TYPE_RWD_WALK ((FIT_SPLIT_TYPE)18) // run/walk detection walking
|
|
#define FIT_SPLIT_TYPE_WINDSURF_ACTIVE ((FIT_SPLIT_TYPE)21)
|
|
#define FIT_SPLIT_TYPE_RWD_STAND ((FIT_SPLIT_TYPE)22) // run/walk detection standing
|
|
#define FIT_SPLIT_TYPE_TRANSITION ((FIT_SPLIT_TYPE)23) // Marks the time going from ascent_split to descent_split/used in backcountry ski
|
|
#define FIT_SPLIT_TYPE_SKI_LIFT_SPLIT ((FIT_SPLIT_TYPE)28)
|
|
#define FIT_SPLIT_TYPE_SKI_RUN_SPLIT ((FIT_SPLIT_TYPE)29)
|
|
#define FIT_SPLIT_TYPE_COUNT 21
|
|
|
|
typedef FIT_ENUM FIT_CLIMB_PRO_EVENT;
|
|
#define FIT_CLIMB_PRO_EVENT_INVALID FIT_ENUM_INVALID
|
|
#define FIT_CLIMB_PRO_EVENT_APPROACH ((FIT_CLIMB_PRO_EVENT)0)
|
|
#define FIT_CLIMB_PRO_EVENT_START ((FIT_CLIMB_PRO_EVENT)1)
|
|
#define FIT_CLIMB_PRO_EVENT_COMPLETE ((FIT_CLIMB_PRO_EVENT)2)
|
|
#define FIT_CLIMB_PRO_EVENT_COUNT 3
|
|
|
|
typedef FIT_ENUM FIT_GAS_CONSUMPTION_RATE_TYPE;
|
|
#define FIT_GAS_CONSUMPTION_RATE_TYPE_INVALID FIT_ENUM_INVALID
|
|
#define FIT_GAS_CONSUMPTION_RATE_TYPE_PRESSURE_SAC ((FIT_GAS_CONSUMPTION_RATE_TYPE)0) // Pressure-based Surface Air Consumption
|
|
#define FIT_GAS_CONSUMPTION_RATE_TYPE_VOLUME_SAC ((FIT_GAS_CONSUMPTION_RATE_TYPE)1) // Volumetric Surface Air Consumption
|
|
#define FIT_GAS_CONSUMPTION_RATE_TYPE_RMV ((FIT_GAS_CONSUMPTION_RATE_TYPE)2) // Respiratory Minute Volume
|
|
#define FIT_GAS_CONSUMPTION_RATE_TYPE_COUNT 3
|
|
|
|
typedef FIT_ENUM FIT_TAP_SENSITIVITY;
|
|
#define FIT_TAP_SENSITIVITY_INVALID FIT_ENUM_INVALID
|
|
#define FIT_TAP_SENSITIVITY_HIGH ((FIT_TAP_SENSITIVITY)0)
|
|
#define FIT_TAP_SENSITIVITY_MEDIUM ((FIT_TAP_SENSITIVITY)1)
|
|
#define FIT_TAP_SENSITIVITY_LOW ((FIT_TAP_SENSITIVITY)2)
|
|
#define FIT_TAP_SENSITIVITY_COUNT 3
|
|
|
|
typedef FIT_ENUM FIT_RADAR_THREAT_LEVEL_TYPE;
|
|
#define FIT_RADAR_THREAT_LEVEL_TYPE_INVALID FIT_ENUM_INVALID
|
|
#define FIT_RADAR_THREAT_LEVEL_TYPE_THREAT_UNKNOWN ((FIT_RADAR_THREAT_LEVEL_TYPE)0)
|
|
#define FIT_RADAR_THREAT_LEVEL_TYPE_THREAT_NONE ((FIT_RADAR_THREAT_LEVEL_TYPE)1)
|
|
#define FIT_RADAR_THREAT_LEVEL_TYPE_THREAT_APPROACHING ((FIT_RADAR_THREAT_LEVEL_TYPE)2)
|
|
#define FIT_RADAR_THREAT_LEVEL_TYPE_THREAT_APPROACHING_FAST ((FIT_RADAR_THREAT_LEVEL_TYPE)3)
|
|
#define FIT_RADAR_THREAT_LEVEL_TYPE_COUNT 4
|
|
|
|
typedef FIT_ENUM FIT_MAX_MET_SPEED_SOURCE;
|
|
#define FIT_MAX_MET_SPEED_SOURCE_INVALID FIT_ENUM_INVALID
|
|
#define FIT_MAX_MET_SPEED_SOURCE_ONBOARD_GPS ((FIT_MAX_MET_SPEED_SOURCE)0)
|
|
#define FIT_MAX_MET_SPEED_SOURCE_CONNECTED_GPS ((FIT_MAX_MET_SPEED_SOURCE)1)
|
|
#define FIT_MAX_MET_SPEED_SOURCE_CADENCE ((FIT_MAX_MET_SPEED_SOURCE)2)
|
|
#define FIT_MAX_MET_SPEED_SOURCE_COUNT 3
|
|
|
|
typedef FIT_ENUM FIT_MAX_MET_HEART_RATE_SOURCE;
|
|
#define FIT_MAX_MET_HEART_RATE_SOURCE_INVALID FIT_ENUM_INVALID
|
|
#define FIT_MAX_MET_HEART_RATE_SOURCE_WHR ((FIT_MAX_MET_HEART_RATE_SOURCE)0) // Wrist Heart Rate Monitor
|
|
#define FIT_MAX_MET_HEART_RATE_SOURCE_HRM ((FIT_MAX_MET_HEART_RATE_SOURCE)1) // Chest Strap Heart Rate Monitor
|
|
#define FIT_MAX_MET_HEART_RATE_SOURCE_COUNT 2
|
|
|
|
typedef FIT_ENUM FIT_HRV_STATUS;
|
|
#define FIT_HRV_STATUS_INVALID FIT_ENUM_INVALID
|
|
#define FIT_HRV_STATUS_NONE ((FIT_HRV_STATUS)0)
|
|
#define FIT_HRV_STATUS_POOR ((FIT_HRV_STATUS)1)
|
|
#define FIT_HRV_STATUS_LOW ((FIT_HRV_STATUS)2)
|
|
#define FIT_HRV_STATUS_UNBALANCED ((FIT_HRV_STATUS)3)
|
|
#define FIT_HRV_STATUS_BALANCED ((FIT_HRV_STATUS)4)
|
|
#define FIT_HRV_STATUS_COUNT 5
|
|
|
|
typedef FIT_ENUM FIT_NO_FLY_TIME_MODE;
|
|
#define FIT_NO_FLY_TIME_MODE_INVALID FIT_ENUM_INVALID
|
|
#define FIT_NO_FLY_TIME_MODE_STANDARD ((FIT_NO_FLY_TIME_MODE)0) // Standard Diver Alert Network no-fly guidance
|
|
#define FIT_NO_FLY_TIME_MODE_FLAT_24_HOURS ((FIT_NO_FLY_TIME_MODE)1) // Flat 24 hour no-fly guidance
|
|
#define FIT_NO_FLY_TIME_MODE_COUNT 2
|
|
|
|
|
|
///////////////////////////////////////////////////////////////////////
|
|
// Message Conversion Structures
|
|
///////////////////////////////////////////////////////////////////////
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT8 base_type;
|
|
FIT_UINT16 offset_in;
|
|
FIT_UINT16 offset_local;
|
|
FIT_UINT8 size;
|
|
FIT_UINT8 num;
|
|
} FIT_FIELD_CONVERT;
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT8 reserved_1;
|
|
FIT_UINT8 arch;
|
|
FIT_MESG_NUM global_mesg_num;
|
|
FIT_UINT8 num_fields;
|
|
FIT_FIELD_CONVERT fields[95];
|
|
} FIT_MESG_CONVERT;
|
|
|
|
|
|
///////////////////////////////////////////////////////////////////////
|
|
// Messages
|
|
///////////////////////////////////////////////////////////////////////
|
|
|
|
#define FIT_MESG_SIZE 254
|
|
#define FIT_MESG_DEF_SIZE 290
|
|
|
|
// pad message
|
|
|
|
#define FIT_PAD_MESG_DEF_SIZE 5
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT8 reserved_1;
|
|
FIT_UINT8 arch;
|
|
FIT_MESG_NUM global_mesg_num;
|
|
FIT_UINT8 num_fields;
|
|
} FIT_PAD_MESG_DEF;
|
|
|
|
|
|
// file_id message
|
|
|
|
#define FIT_FILE_ID_MESG_SIZE 35
|
|
#define FIT_FILE_ID_MESG_DEF_SIZE 26
|
|
#define FIT_FILE_ID_MESG_PRODUCT_NAME_COUNT 20
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT32Z serial_number; //
|
|
FIT_DATE_TIME time_created; // Only set for files that are can be created/erased.
|
|
FIT_STRING product_name[FIT_FILE_ID_MESG_PRODUCT_NAME_COUNT]; // Optional free form string to indicate the devices name or model
|
|
FIT_MANUFACTURER manufacturer; //
|
|
FIT_UINT16 product; //
|
|
FIT_UINT16 number; // Only set for files that are not created/erased.
|
|
FIT_FILE type; //
|
|
} FIT_FILE_ID_MESG;
|
|
|
|
typedef FIT_UINT8 FIT_FILE_ID_FIELD_NUM;
|
|
|
|
#define FIT_FILE_ID_FIELD_NUM_SERIAL_NUMBER ((FIT_FILE_ID_FIELD_NUM)3)
|
|
#define FIT_FILE_ID_FIELD_NUM_TIME_CREATED ((FIT_FILE_ID_FIELD_NUM)4)
|
|
#define FIT_FILE_ID_FIELD_NUM_PRODUCT_NAME ((FIT_FILE_ID_FIELD_NUM)8)
|
|
#define FIT_FILE_ID_FIELD_NUM_MANUFACTURER ((FIT_FILE_ID_FIELD_NUM)1)
|
|
#define FIT_FILE_ID_FIELD_NUM_PRODUCT ((FIT_FILE_ID_FIELD_NUM)2)
|
|
#define FIT_FILE_ID_FIELD_NUM_NUMBER ((FIT_FILE_ID_FIELD_NUM)5)
|
|
#define FIT_FILE_ID_FIELD_NUM_TYPE ((FIT_FILE_ID_FIELD_NUM)0)
|
|
|
|
typedef enum
|
|
{
|
|
FIT_FILE_ID_MESG_SERIAL_NUMBER,
|
|
FIT_FILE_ID_MESG_TIME_CREATED,
|
|
FIT_FILE_ID_MESG_PRODUCT_NAME,
|
|
FIT_FILE_ID_MESG_MANUFACTURER,
|
|
FIT_FILE_ID_MESG_PRODUCT,
|
|
FIT_FILE_ID_MESG_NUMBER,
|
|
FIT_FILE_ID_MESG_TYPE,
|
|
FIT_FILE_ID_MESG_FIELDS
|
|
} FIT_FILE_ID_MESG_FIELD;
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT8 reserved_1;
|
|
FIT_UINT8 arch;
|
|
FIT_MESG_NUM global_mesg_num;
|
|
FIT_UINT8 num_fields;
|
|
FIT_UINT8 fields[FIT_FILE_ID_MESG_FIELDS * FIT_FIELD_DEF_SIZE];
|
|
} FIT_FILE_ID_MESG_DEF;
|
|
|
|
// file_creator message
|
|
|
|
#define FIT_FILE_CREATOR_MESG_SIZE 3
|
|
#define FIT_FILE_CREATOR_MESG_DEF_SIZE 11
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT16 software_version; //
|
|
FIT_UINT8 hardware_version; //
|
|
} FIT_FILE_CREATOR_MESG;
|
|
|
|
typedef FIT_UINT8 FIT_FILE_CREATOR_FIELD_NUM;
|
|
|
|
#define FIT_FILE_CREATOR_FIELD_NUM_SOFTWARE_VERSION ((FIT_FILE_CREATOR_FIELD_NUM)0)
|
|
#define FIT_FILE_CREATOR_FIELD_NUM_HARDWARE_VERSION ((FIT_FILE_CREATOR_FIELD_NUM)1)
|
|
|
|
typedef enum
|
|
{
|
|
FIT_FILE_CREATOR_MESG_SOFTWARE_VERSION,
|
|
FIT_FILE_CREATOR_MESG_HARDWARE_VERSION,
|
|
FIT_FILE_CREATOR_MESG_FIELDS
|
|
} FIT_FILE_CREATOR_MESG_FIELD;
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT8 reserved_1;
|
|
FIT_UINT8 arch;
|
|
FIT_MESG_NUM global_mesg_num;
|
|
FIT_UINT8 num_fields;
|
|
FIT_UINT8 fields[FIT_FILE_CREATOR_MESG_FIELDS * FIT_FIELD_DEF_SIZE];
|
|
} FIT_FILE_CREATOR_MESG_DEF;
|
|
|
|
// software message
|
|
|
|
#define FIT_SOFTWARE_MESG_SIZE 20
|
|
#define FIT_SOFTWARE_MESG_DEF_SIZE 14
|
|
#define FIT_SOFTWARE_MESG_PART_NUMBER_COUNT 16
|
|
|
|
typedef struct
|
|
{
|
|
FIT_STRING part_number[FIT_SOFTWARE_MESG_PART_NUMBER_COUNT]; //
|
|
FIT_MESSAGE_INDEX message_index; //
|
|
FIT_UINT16 version; //
|
|
} FIT_SOFTWARE_MESG;
|
|
|
|
typedef FIT_UINT8 FIT_SOFTWARE_FIELD_NUM;
|
|
|
|
#define FIT_SOFTWARE_FIELD_NUM_PART_NUMBER ((FIT_SOFTWARE_FIELD_NUM)5)
|
|
#define FIT_SOFTWARE_FIELD_NUM_MESSAGE_INDEX ((FIT_SOFTWARE_FIELD_NUM)254)
|
|
#define FIT_SOFTWARE_FIELD_NUM_VERSION ((FIT_SOFTWARE_FIELD_NUM)3)
|
|
|
|
typedef enum
|
|
{
|
|
FIT_SOFTWARE_MESG_PART_NUMBER,
|
|
FIT_SOFTWARE_MESG_MESSAGE_INDEX,
|
|
FIT_SOFTWARE_MESG_VERSION,
|
|
FIT_SOFTWARE_MESG_FIELDS
|
|
} FIT_SOFTWARE_MESG_FIELD;
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT8 reserved_1;
|
|
FIT_UINT8 arch;
|
|
FIT_MESG_NUM global_mesg_num;
|
|
FIT_UINT8 num_fields;
|
|
FIT_UINT8 fields[FIT_SOFTWARE_MESG_FIELDS * FIT_FIELD_DEF_SIZE];
|
|
} FIT_SOFTWARE_MESG_DEF;
|
|
|
|
// slave_device message
|
|
|
|
#define FIT_SLAVE_DEVICE_MESG_SIZE 4
|
|
#define FIT_SLAVE_DEVICE_MESG_DEF_SIZE 11
|
|
|
|
typedef struct
|
|
{
|
|
FIT_MANUFACTURER manufacturer; //
|
|
FIT_UINT16 product; //
|
|
} FIT_SLAVE_DEVICE_MESG;
|
|
|
|
typedef FIT_UINT8 FIT_SLAVE_DEVICE_FIELD_NUM;
|
|
|
|
#define FIT_SLAVE_DEVICE_FIELD_NUM_MANUFACTURER ((FIT_SLAVE_DEVICE_FIELD_NUM)0)
|
|
#define FIT_SLAVE_DEVICE_FIELD_NUM_PRODUCT ((FIT_SLAVE_DEVICE_FIELD_NUM)1)
|
|
|
|
typedef enum
|
|
{
|
|
FIT_SLAVE_DEVICE_MESG_MANUFACTURER,
|
|
FIT_SLAVE_DEVICE_MESG_PRODUCT,
|
|
FIT_SLAVE_DEVICE_MESG_FIELDS
|
|
} FIT_SLAVE_DEVICE_MESG_FIELD;
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT8 reserved_1;
|
|
FIT_UINT8 arch;
|
|
FIT_MESG_NUM global_mesg_num;
|
|
FIT_UINT8 num_fields;
|
|
FIT_UINT8 fields[FIT_SLAVE_DEVICE_MESG_FIELDS * FIT_FIELD_DEF_SIZE];
|
|
} FIT_SLAVE_DEVICE_MESG_DEF;
|
|
|
|
// capabilities message
|
|
|
|
#define FIT_CAPABILITIES_MESG_SIZE 13
|
|
#define FIT_CAPABILITIES_MESG_DEF_SIZE 17
|
|
#define FIT_CAPABILITIES_MESG_LANGUAGES_COUNT 4
|
|
#define FIT_CAPABILITIES_MESG_SPORTS_COUNT 1
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT8Z languages[FIT_CAPABILITIES_MESG_LANGUAGES_COUNT]; // Use language_bits_x types where x is index of array.
|
|
FIT_WORKOUT_CAPABILITIES workouts_supported; //
|
|
FIT_CONNECTIVITY_CAPABILITIES connectivity_supported; //
|
|
FIT_SPORT_BITS_0 sports[FIT_CAPABILITIES_MESG_SPORTS_COUNT]; // Use sport_bits_x types where x is index of array.
|
|
} FIT_CAPABILITIES_MESG;
|
|
|
|
typedef FIT_UINT8 FIT_CAPABILITIES_FIELD_NUM;
|
|
|
|
#define FIT_CAPABILITIES_FIELD_NUM_LANGUAGES ((FIT_CAPABILITIES_FIELD_NUM)0)
|
|
#define FIT_CAPABILITIES_FIELD_NUM_WORKOUTS_SUPPORTED ((FIT_CAPABILITIES_FIELD_NUM)21)
|
|
#define FIT_CAPABILITIES_FIELD_NUM_CONNECTIVITY_SUPPORTED ((FIT_CAPABILITIES_FIELD_NUM)23)
|
|
#define FIT_CAPABILITIES_FIELD_NUM_SPORTS ((FIT_CAPABILITIES_FIELD_NUM)1)
|
|
|
|
typedef enum
|
|
{
|
|
FIT_CAPABILITIES_MESG_LANGUAGES,
|
|
FIT_CAPABILITIES_MESG_WORKOUTS_SUPPORTED,
|
|
FIT_CAPABILITIES_MESG_CONNECTIVITY_SUPPORTED,
|
|
FIT_CAPABILITIES_MESG_SPORTS,
|
|
FIT_CAPABILITIES_MESG_FIELDS
|
|
} FIT_CAPABILITIES_MESG_FIELD;
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT8 reserved_1;
|
|
FIT_UINT8 arch;
|
|
FIT_MESG_NUM global_mesg_num;
|
|
FIT_UINT8 num_fields;
|
|
FIT_UINT8 fields[FIT_CAPABILITIES_MESG_FIELDS * FIT_FIELD_DEF_SIZE];
|
|
} FIT_CAPABILITIES_MESG_DEF;
|
|
|
|
// file_capabilities message
|
|
|
|
#define FIT_FILE_CAPABILITIES_MESG_SIZE 26
|
|
#define FIT_FILE_CAPABILITIES_MESG_DEF_SIZE 23
|
|
#define FIT_FILE_CAPABILITIES_MESG_DIRECTORY_COUNT 16
|
|
|
|
typedef struct
|
|
{
|
|
FIT_STRING directory[FIT_FILE_CAPABILITIES_MESG_DIRECTORY_COUNT]; //
|
|
FIT_UINT32 max_size; // 1 * bytes + 0,
|
|
FIT_MESSAGE_INDEX message_index; //
|
|
FIT_UINT16 max_count; //
|
|
FIT_FILE type; //
|
|
FIT_FILE_FLAGS flags; //
|
|
} FIT_FILE_CAPABILITIES_MESG;
|
|
|
|
typedef FIT_UINT8 FIT_FILE_CAPABILITIES_FIELD_NUM;
|
|
|
|
#define FIT_FILE_CAPABILITIES_FIELD_NUM_DIRECTORY ((FIT_FILE_CAPABILITIES_FIELD_NUM)2)
|
|
#define FIT_FILE_CAPABILITIES_FIELD_NUM_MAX_SIZE ((FIT_FILE_CAPABILITIES_FIELD_NUM)4)
|
|
#define FIT_FILE_CAPABILITIES_FIELD_NUM_MESSAGE_INDEX ((FIT_FILE_CAPABILITIES_FIELD_NUM)254)
|
|
#define FIT_FILE_CAPABILITIES_FIELD_NUM_MAX_COUNT ((FIT_FILE_CAPABILITIES_FIELD_NUM)3)
|
|
#define FIT_FILE_CAPABILITIES_FIELD_NUM_TYPE ((FIT_FILE_CAPABILITIES_FIELD_NUM)0)
|
|
#define FIT_FILE_CAPABILITIES_FIELD_NUM_FLAGS ((FIT_FILE_CAPABILITIES_FIELD_NUM)1)
|
|
|
|
typedef enum
|
|
{
|
|
FIT_FILE_CAPABILITIES_MESG_DIRECTORY,
|
|
FIT_FILE_CAPABILITIES_MESG_MAX_SIZE,
|
|
FIT_FILE_CAPABILITIES_MESG_MESSAGE_INDEX,
|
|
FIT_FILE_CAPABILITIES_MESG_MAX_COUNT,
|
|
FIT_FILE_CAPABILITIES_MESG_TYPE,
|
|
FIT_FILE_CAPABILITIES_MESG_FLAGS,
|
|
FIT_FILE_CAPABILITIES_MESG_FIELDS
|
|
} FIT_FILE_CAPABILITIES_MESG_FIELD;
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT8 reserved_1;
|
|
FIT_UINT8 arch;
|
|
FIT_MESG_NUM global_mesg_num;
|
|
FIT_UINT8 num_fields;
|
|
FIT_UINT8 fields[FIT_FILE_CAPABILITIES_MESG_FIELDS * FIT_FIELD_DEF_SIZE];
|
|
} FIT_FILE_CAPABILITIES_MESG_DEF;
|
|
|
|
// mesg_capabilities message
|
|
|
|
#define FIT_MESG_CAPABILITIES_MESG_SIZE 8
|
|
#define FIT_MESG_CAPABILITIES_MESG_DEF_SIZE 20
|
|
|
|
typedef struct
|
|
{
|
|
FIT_MESSAGE_INDEX message_index; //
|
|
FIT_MESG_NUM mesg_num; //
|
|
FIT_UINT16 count; //
|
|
FIT_FILE file; //
|
|
FIT_MESG_COUNT count_type; //
|
|
} FIT_MESG_CAPABILITIES_MESG;
|
|
|
|
typedef FIT_UINT8 FIT_MESG_CAPABILITIES_FIELD_NUM;
|
|
|
|
#define FIT_MESG_CAPABILITIES_FIELD_NUM_MESSAGE_INDEX ((FIT_MESG_CAPABILITIES_FIELD_NUM)254)
|
|
#define FIT_MESG_CAPABILITIES_FIELD_NUM_MESG_NUM ((FIT_MESG_CAPABILITIES_FIELD_NUM)1)
|
|
#define FIT_MESG_CAPABILITIES_FIELD_NUM_COUNT ((FIT_MESG_CAPABILITIES_FIELD_NUM)3)
|
|
#define FIT_MESG_CAPABILITIES_FIELD_NUM_FILE ((FIT_MESG_CAPABILITIES_FIELD_NUM)0)
|
|
#define FIT_MESG_CAPABILITIES_FIELD_NUM_COUNT_TYPE ((FIT_MESG_CAPABILITIES_FIELD_NUM)2)
|
|
|
|
typedef enum
|
|
{
|
|
FIT_MESG_CAPABILITIES_MESG_MESSAGE_INDEX,
|
|
FIT_MESG_CAPABILITIES_MESG_MESG_NUM,
|
|
FIT_MESG_CAPABILITIES_MESG_COUNT,
|
|
FIT_MESG_CAPABILITIES_MESG_FILE,
|
|
FIT_MESG_CAPABILITIES_MESG_COUNT_TYPE,
|
|
FIT_MESG_CAPABILITIES_MESG_FIELDS
|
|
} FIT_MESG_CAPABILITIES_MESG_FIELD;
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT8 reserved_1;
|
|
FIT_UINT8 arch;
|
|
FIT_MESG_NUM global_mesg_num;
|
|
FIT_UINT8 num_fields;
|
|
FIT_UINT8 fields[FIT_MESG_CAPABILITIES_MESG_FIELDS * FIT_FIELD_DEF_SIZE];
|
|
} FIT_MESG_CAPABILITIES_MESG_DEF;
|
|
|
|
// field_capabilities message
|
|
|
|
#define FIT_FIELD_CAPABILITIES_MESG_SIZE 8
|
|
#define FIT_FIELD_CAPABILITIES_MESG_DEF_SIZE 20
|
|
|
|
typedef struct
|
|
{
|
|
FIT_MESSAGE_INDEX message_index; //
|
|
FIT_MESG_NUM mesg_num; //
|
|
FIT_UINT16 count; //
|
|
FIT_FILE file; //
|
|
FIT_UINT8 field_num; //
|
|
} FIT_FIELD_CAPABILITIES_MESG;
|
|
|
|
typedef FIT_UINT8 FIT_FIELD_CAPABILITIES_FIELD_NUM;
|
|
|
|
#define FIT_FIELD_CAPABILITIES_FIELD_NUM_MESSAGE_INDEX ((FIT_FIELD_CAPABILITIES_FIELD_NUM)254)
|
|
#define FIT_FIELD_CAPABILITIES_FIELD_NUM_MESG_NUM ((FIT_FIELD_CAPABILITIES_FIELD_NUM)1)
|
|
#define FIT_FIELD_CAPABILITIES_FIELD_NUM_COUNT ((FIT_FIELD_CAPABILITIES_FIELD_NUM)3)
|
|
#define FIT_FIELD_CAPABILITIES_FIELD_NUM_FILE ((FIT_FIELD_CAPABILITIES_FIELD_NUM)0)
|
|
#define FIT_FIELD_CAPABILITIES_FIELD_NUM_FIELD_NUM ((FIT_FIELD_CAPABILITIES_FIELD_NUM)2)
|
|
|
|
typedef enum
|
|
{
|
|
FIT_FIELD_CAPABILITIES_MESG_MESSAGE_INDEX,
|
|
FIT_FIELD_CAPABILITIES_MESG_MESG_NUM,
|
|
FIT_FIELD_CAPABILITIES_MESG_COUNT,
|
|
FIT_FIELD_CAPABILITIES_MESG_FILE,
|
|
FIT_FIELD_CAPABILITIES_MESG_FIELD_NUM,
|
|
FIT_FIELD_CAPABILITIES_MESG_FIELDS
|
|
} FIT_FIELD_CAPABILITIES_MESG_FIELD;
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT8 reserved_1;
|
|
FIT_UINT8 arch;
|
|
FIT_MESG_NUM global_mesg_num;
|
|
FIT_UINT8 num_fields;
|
|
FIT_UINT8 fields[FIT_FIELD_CAPABILITIES_MESG_FIELDS * FIT_FIELD_DEF_SIZE];
|
|
} FIT_FIELD_CAPABILITIES_MESG_DEF;
|
|
|
|
// device_settings message
|
|
|
|
#define FIT_DEVICE_SETTINGS_MESG_SIZE 36
|
|
#define FIT_DEVICE_SETTINGS_MESG_DEF_SIZE 56
|
|
#define FIT_DEVICE_SETTINGS_MESG_TIME_OFFSET_COUNT 2
|
|
#define FIT_DEVICE_SETTINGS_MESG_PAGES_ENABLED_COUNT 1
|
|
#define FIT_DEVICE_SETTINGS_MESG_DEFAULT_PAGE_COUNT 1
|
|
#define FIT_DEVICE_SETTINGS_MESG_TIME_MODE_COUNT 2
|
|
#define FIT_DEVICE_SETTINGS_MESG_TIME_ZONE_OFFSET_COUNT 2
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT32 utc_offset; // Offset from system time. Required to convert timestamp from system time to UTC.
|
|
FIT_UINT32 time_offset[FIT_DEVICE_SETTINGS_MESG_TIME_OFFSET_COUNT]; // 1 * s + 0, Offset from system time.
|
|
FIT_DATE_TIME clock_time; // UTC timestamp used to set the devices clock and date
|
|
FIT_UINT16 pages_enabled[FIT_DEVICE_SETTINGS_MESG_PAGES_ENABLED_COUNT]; // Bitfield to configure enabled screens for each supported loop
|
|
FIT_UINT16 default_page[FIT_DEVICE_SETTINGS_MESG_DEFAULT_PAGE_COUNT]; // Bitfield to indicate one page as default for each supported loop
|
|
FIT_UINT16 autosync_min_steps; // 1 * steps + 0, Minimum steps before an autosync can occur
|
|
FIT_UINT16 autosync_min_time; // 1 * minutes + 0, Minimum minutes before an autosync can occur
|
|
FIT_UINT8 active_time_zone; // Index into time zone arrays.
|
|
FIT_TIME_MODE time_mode[FIT_DEVICE_SETTINGS_MESG_TIME_MODE_COUNT]; // Display mode for the time
|
|
FIT_SINT8 time_zone_offset[FIT_DEVICE_SETTINGS_MESG_TIME_ZONE_OFFSET_COUNT]; // 4 * hr + 0, timezone offset in 1/4 hour increments
|
|
FIT_BACKLIGHT_MODE backlight_mode; // Mode for backlight
|
|
FIT_BOOL activity_tracker_enabled; // Enabled state of the activity tracker functionality
|
|
FIT_BOOL move_alert_enabled; // Enabled state of the move alert
|
|
FIT_DATE_MODE date_mode; // Display mode for the date
|
|
FIT_DISPLAY_ORIENTATION display_orientation; //
|
|
FIT_SIDE mounting_side; //
|
|
FIT_TAP_SENSITIVITY tap_sensitivity; // Used to hold the tap threshold setting
|
|
} FIT_DEVICE_SETTINGS_MESG;
|
|
|
|
typedef FIT_UINT8 FIT_DEVICE_SETTINGS_FIELD_NUM;
|
|
|
|
#define FIT_DEVICE_SETTINGS_FIELD_NUM_UTC_OFFSET ((FIT_DEVICE_SETTINGS_FIELD_NUM)1)
|
|
#define FIT_DEVICE_SETTINGS_FIELD_NUM_TIME_OFFSET ((FIT_DEVICE_SETTINGS_FIELD_NUM)2)
|
|
#define FIT_DEVICE_SETTINGS_FIELD_NUM_CLOCK_TIME ((FIT_DEVICE_SETTINGS_FIELD_NUM)39)
|
|
#define FIT_DEVICE_SETTINGS_FIELD_NUM_PAGES_ENABLED ((FIT_DEVICE_SETTINGS_FIELD_NUM)40)
|
|
#define FIT_DEVICE_SETTINGS_FIELD_NUM_DEFAULT_PAGE ((FIT_DEVICE_SETTINGS_FIELD_NUM)57)
|
|
#define FIT_DEVICE_SETTINGS_FIELD_NUM_AUTOSYNC_MIN_STEPS ((FIT_DEVICE_SETTINGS_FIELD_NUM)58)
|
|
#define FIT_DEVICE_SETTINGS_FIELD_NUM_AUTOSYNC_MIN_TIME ((FIT_DEVICE_SETTINGS_FIELD_NUM)59)
|
|
#define FIT_DEVICE_SETTINGS_FIELD_NUM_ACTIVE_TIME_ZONE ((FIT_DEVICE_SETTINGS_FIELD_NUM)0)
|
|
#define FIT_DEVICE_SETTINGS_FIELD_NUM_TIME_MODE ((FIT_DEVICE_SETTINGS_FIELD_NUM)4)
|
|
#define FIT_DEVICE_SETTINGS_FIELD_NUM_TIME_ZONE_OFFSET ((FIT_DEVICE_SETTINGS_FIELD_NUM)5)
|
|
#define FIT_DEVICE_SETTINGS_FIELD_NUM_BACKLIGHT_MODE ((FIT_DEVICE_SETTINGS_FIELD_NUM)12)
|
|
#define FIT_DEVICE_SETTINGS_FIELD_NUM_ACTIVITY_TRACKER_ENABLED ((FIT_DEVICE_SETTINGS_FIELD_NUM)36)
|
|
#define FIT_DEVICE_SETTINGS_FIELD_NUM_MOVE_ALERT_ENABLED ((FIT_DEVICE_SETTINGS_FIELD_NUM)46)
|
|
#define FIT_DEVICE_SETTINGS_FIELD_NUM_DATE_MODE ((FIT_DEVICE_SETTINGS_FIELD_NUM)47)
|
|
#define FIT_DEVICE_SETTINGS_FIELD_NUM_DISPLAY_ORIENTATION ((FIT_DEVICE_SETTINGS_FIELD_NUM)55)
|
|
#define FIT_DEVICE_SETTINGS_FIELD_NUM_MOUNTING_SIDE ((FIT_DEVICE_SETTINGS_FIELD_NUM)56)
|
|
#define FIT_DEVICE_SETTINGS_FIELD_NUM_TAP_SENSITIVITY ((FIT_DEVICE_SETTINGS_FIELD_NUM)174)
|
|
|
|
typedef enum
|
|
{
|
|
FIT_DEVICE_SETTINGS_MESG_UTC_OFFSET,
|
|
FIT_DEVICE_SETTINGS_MESG_TIME_OFFSET,
|
|
FIT_DEVICE_SETTINGS_MESG_CLOCK_TIME,
|
|
FIT_DEVICE_SETTINGS_MESG_PAGES_ENABLED,
|
|
FIT_DEVICE_SETTINGS_MESG_DEFAULT_PAGE,
|
|
FIT_DEVICE_SETTINGS_MESG_AUTOSYNC_MIN_STEPS,
|
|
FIT_DEVICE_SETTINGS_MESG_AUTOSYNC_MIN_TIME,
|
|
FIT_DEVICE_SETTINGS_MESG_ACTIVE_TIME_ZONE,
|
|
FIT_DEVICE_SETTINGS_MESG_TIME_MODE,
|
|
FIT_DEVICE_SETTINGS_MESG_TIME_ZONE_OFFSET,
|
|
FIT_DEVICE_SETTINGS_MESG_BACKLIGHT_MODE,
|
|
FIT_DEVICE_SETTINGS_MESG_ACTIVITY_TRACKER_ENABLED,
|
|
FIT_DEVICE_SETTINGS_MESG_MOVE_ALERT_ENABLED,
|
|
FIT_DEVICE_SETTINGS_MESG_DATE_MODE,
|
|
FIT_DEVICE_SETTINGS_MESG_DISPLAY_ORIENTATION,
|
|
FIT_DEVICE_SETTINGS_MESG_MOUNTING_SIDE,
|
|
FIT_DEVICE_SETTINGS_MESG_TAP_SENSITIVITY,
|
|
FIT_DEVICE_SETTINGS_MESG_FIELDS
|
|
} FIT_DEVICE_SETTINGS_MESG_FIELD;
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT8 reserved_1;
|
|
FIT_UINT8 arch;
|
|
FIT_MESG_NUM global_mesg_num;
|
|
FIT_UINT8 num_fields;
|
|
FIT_UINT8 fields[FIT_DEVICE_SETTINGS_MESG_FIELDS * FIT_FIELD_DEF_SIZE];
|
|
} FIT_DEVICE_SETTINGS_MESG_DEF;
|
|
|
|
// user_profile message
|
|
|
|
#define FIT_USER_PROFILE_MESG_SIZE 50
|
|
#define FIT_USER_PROFILE_MESG_DEF_SIZE 80
|
|
#define FIT_USER_PROFILE_MESG_FRIENDLY_NAME_COUNT 16
|
|
#define FIT_USER_PROFILE_MESG_GLOBAL_ID_COUNT 6
|
|
|
|
typedef struct
|
|
{
|
|
FIT_STRING friendly_name[FIT_USER_PROFILE_MESG_FRIENDLY_NAME_COUNT]; // Used for Morning Report greeting
|
|
FIT_MESSAGE_INDEX message_index; //
|
|
FIT_UINT16 weight; // 10 * kg + 0,
|
|
FIT_USER_LOCAL_ID local_id; //
|
|
FIT_UINT16 user_running_step_length; // 1000 * m + 0, User defined running step length set to 0 for auto length
|
|
FIT_UINT16 user_walking_step_length; // 1000 * m + 0, User defined walking step length set to 0 for auto length
|
|
FIT_GENDER gender; //
|
|
FIT_UINT8 age; // 1 * years + 0,
|
|
FIT_UINT8 height; // 100 * m + 0,
|
|
FIT_LANGUAGE language; //
|
|
FIT_DISPLAY_MEASURE elev_setting; //
|
|
FIT_DISPLAY_MEASURE weight_setting; //
|
|
FIT_UINT8 resting_heart_rate; // 1 * bpm + 0,
|
|
FIT_UINT8 default_max_running_heart_rate; // 1 * bpm + 0,
|
|
FIT_UINT8 default_max_biking_heart_rate; // 1 * bpm + 0,
|
|
FIT_UINT8 default_max_heart_rate; // 1 * bpm + 0,
|
|
FIT_DISPLAY_HEART hr_setting; //
|
|
FIT_DISPLAY_MEASURE speed_setting; //
|
|
FIT_DISPLAY_MEASURE dist_setting; //
|
|
FIT_DISPLAY_POWER power_setting; //
|
|
FIT_ACTIVITY_CLASS activity_class; //
|
|
FIT_DISPLAY_POSITION position_setting; //
|
|
FIT_DISPLAY_MEASURE temperature_setting; //
|
|
FIT_BYTE global_id[FIT_USER_PROFILE_MESG_GLOBAL_ID_COUNT]; //
|
|
FIT_DISPLAY_MEASURE height_setting; //
|
|
} FIT_USER_PROFILE_MESG;
|
|
|
|
typedef FIT_UINT8 FIT_USER_PROFILE_FIELD_NUM;
|
|
|
|
#define FIT_USER_PROFILE_FIELD_NUM_FRIENDLY_NAME ((FIT_USER_PROFILE_FIELD_NUM)0)
|
|
#define FIT_USER_PROFILE_FIELD_NUM_MESSAGE_INDEX ((FIT_USER_PROFILE_FIELD_NUM)254)
|
|
#define FIT_USER_PROFILE_FIELD_NUM_WEIGHT ((FIT_USER_PROFILE_FIELD_NUM)4)
|
|
#define FIT_USER_PROFILE_FIELD_NUM_LOCAL_ID ((FIT_USER_PROFILE_FIELD_NUM)22)
|
|
#define FIT_USER_PROFILE_FIELD_NUM_USER_RUNNING_STEP_LENGTH ((FIT_USER_PROFILE_FIELD_NUM)31)
|
|
#define FIT_USER_PROFILE_FIELD_NUM_USER_WALKING_STEP_LENGTH ((FIT_USER_PROFILE_FIELD_NUM)32)
|
|
#define FIT_USER_PROFILE_FIELD_NUM_GENDER ((FIT_USER_PROFILE_FIELD_NUM)1)
|
|
#define FIT_USER_PROFILE_FIELD_NUM_AGE ((FIT_USER_PROFILE_FIELD_NUM)2)
|
|
#define FIT_USER_PROFILE_FIELD_NUM_HEIGHT ((FIT_USER_PROFILE_FIELD_NUM)3)
|
|
#define FIT_USER_PROFILE_FIELD_NUM_LANGUAGE ((FIT_USER_PROFILE_FIELD_NUM)5)
|
|
#define FIT_USER_PROFILE_FIELD_NUM_ELEV_SETTING ((FIT_USER_PROFILE_FIELD_NUM)6)
|
|
#define FIT_USER_PROFILE_FIELD_NUM_WEIGHT_SETTING ((FIT_USER_PROFILE_FIELD_NUM)7)
|
|
#define FIT_USER_PROFILE_FIELD_NUM_RESTING_HEART_RATE ((FIT_USER_PROFILE_FIELD_NUM)8)
|
|
#define FIT_USER_PROFILE_FIELD_NUM_DEFAULT_MAX_RUNNING_HEART_RATE ((FIT_USER_PROFILE_FIELD_NUM)9)
|
|
#define FIT_USER_PROFILE_FIELD_NUM_DEFAULT_MAX_BIKING_HEART_RATE ((FIT_USER_PROFILE_FIELD_NUM)10)
|
|
#define FIT_USER_PROFILE_FIELD_NUM_DEFAULT_MAX_HEART_RATE ((FIT_USER_PROFILE_FIELD_NUM)11)
|
|
#define FIT_USER_PROFILE_FIELD_NUM_HR_SETTING ((FIT_USER_PROFILE_FIELD_NUM)12)
|
|
#define FIT_USER_PROFILE_FIELD_NUM_SPEED_SETTING ((FIT_USER_PROFILE_FIELD_NUM)13)
|
|
#define FIT_USER_PROFILE_FIELD_NUM_DIST_SETTING ((FIT_USER_PROFILE_FIELD_NUM)14)
|
|
#define FIT_USER_PROFILE_FIELD_NUM_POWER_SETTING ((FIT_USER_PROFILE_FIELD_NUM)16)
|
|
#define FIT_USER_PROFILE_FIELD_NUM_ACTIVITY_CLASS ((FIT_USER_PROFILE_FIELD_NUM)17)
|
|
#define FIT_USER_PROFILE_FIELD_NUM_POSITION_SETTING ((FIT_USER_PROFILE_FIELD_NUM)18)
|
|
#define FIT_USER_PROFILE_FIELD_NUM_TEMPERATURE_SETTING ((FIT_USER_PROFILE_FIELD_NUM)21)
|
|
#define FIT_USER_PROFILE_FIELD_NUM_GLOBAL_ID ((FIT_USER_PROFILE_FIELD_NUM)23)
|
|
#define FIT_USER_PROFILE_FIELD_NUM_HEIGHT_SETTING ((FIT_USER_PROFILE_FIELD_NUM)30)
|
|
|
|
typedef enum
|
|
{
|
|
FIT_USER_PROFILE_MESG_FRIENDLY_NAME,
|
|
FIT_USER_PROFILE_MESG_MESSAGE_INDEX,
|
|
FIT_USER_PROFILE_MESG_WEIGHT,
|
|
FIT_USER_PROFILE_MESG_LOCAL_ID,
|
|
FIT_USER_PROFILE_MESG_USER_RUNNING_STEP_LENGTH,
|
|
FIT_USER_PROFILE_MESG_USER_WALKING_STEP_LENGTH,
|
|
FIT_USER_PROFILE_MESG_GENDER,
|
|
FIT_USER_PROFILE_MESG_AGE,
|
|
FIT_USER_PROFILE_MESG_HEIGHT,
|
|
FIT_USER_PROFILE_MESG_LANGUAGE,
|
|
FIT_USER_PROFILE_MESG_ELEV_SETTING,
|
|
FIT_USER_PROFILE_MESG_WEIGHT_SETTING,
|
|
FIT_USER_PROFILE_MESG_RESTING_HEART_RATE,
|
|
FIT_USER_PROFILE_MESG_DEFAULT_MAX_RUNNING_HEART_RATE,
|
|
FIT_USER_PROFILE_MESG_DEFAULT_MAX_BIKING_HEART_RATE,
|
|
FIT_USER_PROFILE_MESG_DEFAULT_MAX_HEART_RATE,
|
|
FIT_USER_PROFILE_MESG_HR_SETTING,
|
|
FIT_USER_PROFILE_MESG_SPEED_SETTING,
|
|
FIT_USER_PROFILE_MESG_DIST_SETTING,
|
|
FIT_USER_PROFILE_MESG_POWER_SETTING,
|
|
FIT_USER_PROFILE_MESG_ACTIVITY_CLASS,
|
|
FIT_USER_PROFILE_MESG_POSITION_SETTING,
|
|
FIT_USER_PROFILE_MESG_TEMPERATURE_SETTING,
|
|
FIT_USER_PROFILE_MESG_GLOBAL_ID,
|
|
FIT_USER_PROFILE_MESG_HEIGHT_SETTING,
|
|
FIT_USER_PROFILE_MESG_FIELDS
|
|
} FIT_USER_PROFILE_MESG_FIELD;
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT8 reserved_1;
|
|
FIT_UINT8 arch;
|
|
FIT_MESG_NUM global_mesg_num;
|
|
FIT_UINT8 num_fields;
|
|
FIT_UINT8 fields[FIT_USER_PROFILE_MESG_FIELDS * FIT_FIELD_DEF_SIZE];
|
|
} FIT_USER_PROFILE_MESG_DEF;
|
|
|
|
// hrm_profile message
|
|
|
|
#define FIT_HRM_PROFILE_MESG_SIZE 7
|
|
#define FIT_HRM_PROFILE_MESG_DEF_SIZE 20
|
|
|
|
typedef struct
|
|
{
|
|
FIT_MESSAGE_INDEX message_index; //
|
|
FIT_UINT16Z hrm_ant_id; //
|
|
FIT_BOOL enabled; //
|
|
FIT_BOOL log_hrv; //
|
|
FIT_UINT8Z hrm_ant_id_trans_type; //
|
|
} FIT_HRM_PROFILE_MESG;
|
|
|
|
typedef FIT_UINT8 FIT_HRM_PROFILE_FIELD_NUM;
|
|
|
|
#define FIT_HRM_PROFILE_FIELD_NUM_MESSAGE_INDEX ((FIT_HRM_PROFILE_FIELD_NUM)254)
|
|
#define FIT_HRM_PROFILE_FIELD_NUM_HRM_ANT_ID ((FIT_HRM_PROFILE_FIELD_NUM)1)
|
|
#define FIT_HRM_PROFILE_FIELD_NUM_ENABLED ((FIT_HRM_PROFILE_FIELD_NUM)0)
|
|
#define FIT_HRM_PROFILE_FIELD_NUM_LOG_HRV ((FIT_HRM_PROFILE_FIELD_NUM)2)
|
|
#define FIT_HRM_PROFILE_FIELD_NUM_HRM_ANT_ID_TRANS_TYPE ((FIT_HRM_PROFILE_FIELD_NUM)3)
|
|
|
|
typedef enum
|
|
{
|
|
FIT_HRM_PROFILE_MESG_MESSAGE_INDEX,
|
|
FIT_HRM_PROFILE_MESG_HRM_ANT_ID,
|
|
FIT_HRM_PROFILE_MESG_ENABLED,
|
|
FIT_HRM_PROFILE_MESG_LOG_HRV,
|
|
FIT_HRM_PROFILE_MESG_HRM_ANT_ID_TRANS_TYPE,
|
|
FIT_HRM_PROFILE_MESG_FIELDS
|
|
} FIT_HRM_PROFILE_MESG_FIELD;
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT8 reserved_1;
|
|
FIT_UINT8 arch;
|
|
FIT_MESG_NUM global_mesg_num;
|
|
FIT_UINT8 num_fields;
|
|
FIT_UINT8 fields[FIT_HRM_PROFILE_MESG_FIELDS * FIT_FIELD_DEF_SIZE];
|
|
} FIT_HRM_PROFILE_MESG_DEF;
|
|
|
|
// sdm_profile message
|
|
|
|
#define FIT_SDM_PROFILE_MESG_SIZE 14
|
|
#define FIT_SDM_PROFILE_MESG_DEF_SIZE 29
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT32 odometer; // 100 * m + 0,
|
|
FIT_MESSAGE_INDEX message_index; //
|
|
FIT_UINT16Z sdm_ant_id; //
|
|
FIT_UINT16 sdm_cal_factor; // 10 * % + 0,
|
|
FIT_BOOL enabled; //
|
|
FIT_BOOL speed_source; // Use footpod for speed source instead of GPS
|
|
FIT_UINT8Z sdm_ant_id_trans_type; //
|
|
FIT_UINT8 odometer_rollover; // Rollover counter that can be used to extend the odometer
|
|
} FIT_SDM_PROFILE_MESG;
|
|
|
|
typedef FIT_UINT8 FIT_SDM_PROFILE_FIELD_NUM;
|
|
|
|
#define FIT_SDM_PROFILE_FIELD_NUM_ODOMETER ((FIT_SDM_PROFILE_FIELD_NUM)3)
|
|
#define FIT_SDM_PROFILE_FIELD_NUM_MESSAGE_INDEX ((FIT_SDM_PROFILE_FIELD_NUM)254)
|
|
#define FIT_SDM_PROFILE_FIELD_NUM_SDM_ANT_ID ((FIT_SDM_PROFILE_FIELD_NUM)1)
|
|
#define FIT_SDM_PROFILE_FIELD_NUM_SDM_CAL_FACTOR ((FIT_SDM_PROFILE_FIELD_NUM)2)
|
|
#define FIT_SDM_PROFILE_FIELD_NUM_ENABLED ((FIT_SDM_PROFILE_FIELD_NUM)0)
|
|
#define FIT_SDM_PROFILE_FIELD_NUM_SPEED_SOURCE ((FIT_SDM_PROFILE_FIELD_NUM)4)
|
|
#define FIT_SDM_PROFILE_FIELD_NUM_SDM_ANT_ID_TRANS_TYPE ((FIT_SDM_PROFILE_FIELD_NUM)5)
|
|
#define FIT_SDM_PROFILE_FIELD_NUM_ODOMETER_ROLLOVER ((FIT_SDM_PROFILE_FIELD_NUM)7)
|
|
|
|
typedef enum
|
|
{
|
|
FIT_SDM_PROFILE_MESG_ODOMETER,
|
|
FIT_SDM_PROFILE_MESG_MESSAGE_INDEX,
|
|
FIT_SDM_PROFILE_MESG_SDM_ANT_ID,
|
|
FIT_SDM_PROFILE_MESG_SDM_CAL_FACTOR,
|
|
FIT_SDM_PROFILE_MESG_ENABLED,
|
|
FIT_SDM_PROFILE_MESG_SPEED_SOURCE,
|
|
FIT_SDM_PROFILE_MESG_SDM_ANT_ID_TRANS_TYPE,
|
|
FIT_SDM_PROFILE_MESG_ODOMETER_ROLLOVER,
|
|
FIT_SDM_PROFILE_MESG_FIELDS
|
|
} FIT_SDM_PROFILE_MESG_FIELD;
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT8 reserved_1;
|
|
FIT_UINT8 arch;
|
|
FIT_MESG_NUM global_mesg_num;
|
|
FIT_UINT8 num_fields;
|
|
FIT_UINT8 fields[FIT_SDM_PROFILE_MESG_FIELDS * FIT_FIELD_DEF_SIZE];
|
|
} FIT_SDM_PROFILE_MESG_DEF;
|
|
|
|
// bike_profile message
|
|
|
|
#define FIT_BIKE_PROFILE_MESG_SIZE 59
|
|
#define FIT_BIKE_PROFILE_MESG_DEF_SIZE 101
|
|
#define FIT_BIKE_PROFILE_MESG_NAME_COUNT 16
|
|
#define FIT_BIKE_PROFILE_MESG_FRONT_GEAR_COUNT 1
|
|
#define FIT_BIKE_PROFILE_MESG_REAR_GEAR_COUNT 1
|
|
|
|
typedef struct
|
|
{
|
|
FIT_STRING name[FIT_BIKE_PROFILE_MESG_NAME_COUNT]; //
|
|
FIT_UINT32 odometer; // 100 * m + 0,
|
|
FIT_MESSAGE_INDEX message_index; //
|
|
FIT_UINT16Z bike_spd_ant_id; //
|
|
FIT_UINT16Z bike_cad_ant_id; //
|
|
FIT_UINT16Z bike_spdcad_ant_id; //
|
|
FIT_UINT16Z bike_power_ant_id; //
|
|
FIT_UINT16 custom_wheelsize; // 1000 * m + 0,
|
|
FIT_UINT16 auto_wheelsize; // 1000 * m + 0,
|
|
FIT_UINT16 bike_weight; // 10 * kg + 0,
|
|
FIT_UINT16 power_cal_factor; // 10 * % + 0,
|
|
FIT_SPORT sport; //
|
|
FIT_SUB_SPORT sub_sport; //
|
|
FIT_BOOL auto_wheel_cal; //
|
|
FIT_BOOL auto_power_zero; //
|
|
FIT_UINT8 id; //
|
|
FIT_BOOL spd_enabled; //
|
|
FIT_BOOL cad_enabled; //
|
|
FIT_BOOL spdcad_enabled; //
|
|
FIT_BOOL power_enabled; //
|
|
FIT_UINT8 crank_length; // 2 * mm + -110,
|
|
FIT_BOOL enabled; //
|
|
FIT_UINT8Z bike_spd_ant_id_trans_type; //
|
|
FIT_UINT8Z bike_cad_ant_id_trans_type; //
|
|
FIT_UINT8Z bike_spdcad_ant_id_trans_type; //
|
|
FIT_UINT8Z bike_power_ant_id_trans_type; //
|
|
FIT_UINT8 odometer_rollover; // Rollover counter that can be used to extend the odometer
|
|
FIT_UINT8Z front_gear_num; // Number of front gears
|
|
FIT_UINT8Z front_gear[FIT_BIKE_PROFILE_MESG_FRONT_GEAR_COUNT]; // Number of teeth on each gear 0 is innermost
|
|
FIT_UINT8Z rear_gear_num; // Number of rear gears
|
|
FIT_UINT8Z rear_gear[FIT_BIKE_PROFILE_MESG_REAR_GEAR_COUNT]; // Number of teeth on each gear 0 is innermost
|
|
FIT_BOOL shimano_di2_enabled; //
|
|
} FIT_BIKE_PROFILE_MESG;
|
|
|
|
typedef FIT_UINT8 FIT_BIKE_PROFILE_FIELD_NUM;
|
|
|
|
#define FIT_BIKE_PROFILE_FIELD_NUM_NAME ((FIT_BIKE_PROFILE_FIELD_NUM)0)
|
|
#define FIT_BIKE_PROFILE_FIELD_NUM_ODOMETER ((FIT_BIKE_PROFILE_FIELD_NUM)3)
|
|
#define FIT_BIKE_PROFILE_FIELD_NUM_MESSAGE_INDEX ((FIT_BIKE_PROFILE_FIELD_NUM)254)
|
|
#define FIT_BIKE_PROFILE_FIELD_NUM_BIKE_SPD_ANT_ID ((FIT_BIKE_PROFILE_FIELD_NUM)4)
|
|
#define FIT_BIKE_PROFILE_FIELD_NUM_BIKE_CAD_ANT_ID ((FIT_BIKE_PROFILE_FIELD_NUM)5)
|
|
#define FIT_BIKE_PROFILE_FIELD_NUM_BIKE_SPDCAD_ANT_ID ((FIT_BIKE_PROFILE_FIELD_NUM)6)
|
|
#define FIT_BIKE_PROFILE_FIELD_NUM_BIKE_POWER_ANT_ID ((FIT_BIKE_PROFILE_FIELD_NUM)7)
|
|
#define FIT_BIKE_PROFILE_FIELD_NUM_CUSTOM_WHEELSIZE ((FIT_BIKE_PROFILE_FIELD_NUM)8)
|
|
#define FIT_BIKE_PROFILE_FIELD_NUM_AUTO_WHEELSIZE ((FIT_BIKE_PROFILE_FIELD_NUM)9)
|
|
#define FIT_BIKE_PROFILE_FIELD_NUM_BIKE_WEIGHT ((FIT_BIKE_PROFILE_FIELD_NUM)10)
|
|
#define FIT_BIKE_PROFILE_FIELD_NUM_POWER_CAL_FACTOR ((FIT_BIKE_PROFILE_FIELD_NUM)11)
|
|
#define FIT_BIKE_PROFILE_FIELD_NUM_SPORT ((FIT_BIKE_PROFILE_FIELD_NUM)1)
|
|
#define FIT_BIKE_PROFILE_FIELD_NUM_SUB_SPORT ((FIT_BIKE_PROFILE_FIELD_NUM)2)
|
|
#define FIT_BIKE_PROFILE_FIELD_NUM_AUTO_WHEEL_CAL ((FIT_BIKE_PROFILE_FIELD_NUM)12)
|
|
#define FIT_BIKE_PROFILE_FIELD_NUM_AUTO_POWER_ZERO ((FIT_BIKE_PROFILE_FIELD_NUM)13)
|
|
#define FIT_BIKE_PROFILE_FIELD_NUM_ID ((FIT_BIKE_PROFILE_FIELD_NUM)14)
|
|
#define FIT_BIKE_PROFILE_FIELD_NUM_SPD_ENABLED ((FIT_BIKE_PROFILE_FIELD_NUM)15)
|
|
#define FIT_BIKE_PROFILE_FIELD_NUM_CAD_ENABLED ((FIT_BIKE_PROFILE_FIELD_NUM)16)
|
|
#define FIT_BIKE_PROFILE_FIELD_NUM_SPDCAD_ENABLED ((FIT_BIKE_PROFILE_FIELD_NUM)17)
|
|
#define FIT_BIKE_PROFILE_FIELD_NUM_POWER_ENABLED ((FIT_BIKE_PROFILE_FIELD_NUM)18)
|
|
#define FIT_BIKE_PROFILE_FIELD_NUM_CRANK_LENGTH ((FIT_BIKE_PROFILE_FIELD_NUM)19)
|
|
#define FIT_BIKE_PROFILE_FIELD_NUM_ENABLED ((FIT_BIKE_PROFILE_FIELD_NUM)20)
|
|
#define FIT_BIKE_PROFILE_FIELD_NUM_BIKE_SPD_ANT_ID_TRANS_TYPE ((FIT_BIKE_PROFILE_FIELD_NUM)21)
|
|
#define FIT_BIKE_PROFILE_FIELD_NUM_BIKE_CAD_ANT_ID_TRANS_TYPE ((FIT_BIKE_PROFILE_FIELD_NUM)22)
|
|
#define FIT_BIKE_PROFILE_FIELD_NUM_BIKE_SPDCAD_ANT_ID_TRANS_TYPE ((FIT_BIKE_PROFILE_FIELD_NUM)23)
|
|
#define FIT_BIKE_PROFILE_FIELD_NUM_BIKE_POWER_ANT_ID_TRANS_TYPE ((FIT_BIKE_PROFILE_FIELD_NUM)24)
|
|
#define FIT_BIKE_PROFILE_FIELD_NUM_ODOMETER_ROLLOVER ((FIT_BIKE_PROFILE_FIELD_NUM)37)
|
|
#define FIT_BIKE_PROFILE_FIELD_NUM_FRONT_GEAR_NUM ((FIT_BIKE_PROFILE_FIELD_NUM)38)
|
|
#define FIT_BIKE_PROFILE_FIELD_NUM_FRONT_GEAR ((FIT_BIKE_PROFILE_FIELD_NUM)39)
|
|
#define FIT_BIKE_PROFILE_FIELD_NUM_REAR_GEAR_NUM ((FIT_BIKE_PROFILE_FIELD_NUM)40)
|
|
#define FIT_BIKE_PROFILE_FIELD_NUM_REAR_GEAR ((FIT_BIKE_PROFILE_FIELD_NUM)41)
|
|
#define FIT_BIKE_PROFILE_FIELD_NUM_SHIMANO_DI2_ENABLED ((FIT_BIKE_PROFILE_FIELD_NUM)44)
|
|
|
|
typedef enum
|
|
{
|
|
FIT_BIKE_PROFILE_MESG_NAME,
|
|
FIT_BIKE_PROFILE_MESG_ODOMETER,
|
|
FIT_BIKE_PROFILE_MESG_MESSAGE_INDEX,
|
|
FIT_BIKE_PROFILE_MESG_BIKE_SPD_ANT_ID,
|
|
FIT_BIKE_PROFILE_MESG_BIKE_CAD_ANT_ID,
|
|
FIT_BIKE_PROFILE_MESG_BIKE_SPDCAD_ANT_ID,
|
|
FIT_BIKE_PROFILE_MESG_BIKE_POWER_ANT_ID,
|
|
FIT_BIKE_PROFILE_MESG_CUSTOM_WHEELSIZE,
|
|
FIT_BIKE_PROFILE_MESG_AUTO_WHEELSIZE,
|
|
FIT_BIKE_PROFILE_MESG_BIKE_WEIGHT,
|
|
FIT_BIKE_PROFILE_MESG_POWER_CAL_FACTOR,
|
|
FIT_BIKE_PROFILE_MESG_SPORT,
|
|
FIT_BIKE_PROFILE_MESG_SUB_SPORT,
|
|
FIT_BIKE_PROFILE_MESG_AUTO_WHEEL_CAL,
|
|
FIT_BIKE_PROFILE_MESG_AUTO_POWER_ZERO,
|
|
FIT_BIKE_PROFILE_MESG_ID,
|
|
FIT_BIKE_PROFILE_MESG_SPD_ENABLED,
|
|
FIT_BIKE_PROFILE_MESG_CAD_ENABLED,
|
|
FIT_BIKE_PROFILE_MESG_SPDCAD_ENABLED,
|
|
FIT_BIKE_PROFILE_MESG_POWER_ENABLED,
|
|
FIT_BIKE_PROFILE_MESG_CRANK_LENGTH,
|
|
FIT_BIKE_PROFILE_MESG_ENABLED,
|
|
FIT_BIKE_PROFILE_MESG_BIKE_SPD_ANT_ID_TRANS_TYPE,
|
|
FIT_BIKE_PROFILE_MESG_BIKE_CAD_ANT_ID_TRANS_TYPE,
|
|
FIT_BIKE_PROFILE_MESG_BIKE_SPDCAD_ANT_ID_TRANS_TYPE,
|
|
FIT_BIKE_PROFILE_MESG_BIKE_POWER_ANT_ID_TRANS_TYPE,
|
|
FIT_BIKE_PROFILE_MESG_ODOMETER_ROLLOVER,
|
|
FIT_BIKE_PROFILE_MESG_FRONT_GEAR_NUM,
|
|
FIT_BIKE_PROFILE_MESG_FRONT_GEAR,
|
|
FIT_BIKE_PROFILE_MESG_REAR_GEAR_NUM,
|
|
FIT_BIKE_PROFILE_MESG_REAR_GEAR,
|
|
FIT_BIKE_PROFILE_MESG_SHIMANO_DI2_ENABLED,
|
|
FIT_BIKE_PROFILE_MESG_FIELDS
|
|
} FIT_BIKE_PROFILE_MESG_FIELD;
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT8 reserved_1;
|
|
FIT_UINT8 arch;
|
|
FIT_MESG_NUM global_mesg_num;
|
|
FIT_UINT8 num_fields;
|
|
FIT_UINT8 fields[FIT_BIKE_PROFILE_MESG_FIELDS * FIT_FIELD_DEF_SIZE];
|
|
} FIT_BIKE_PROFILE_MESG_DEF;
|
|
|
|
// connectivity message
|
|
|
|
#define FIT_CONNECTIVITY_MESG_SIZE 36
|
|
#define FIT_CONNECTIVITY_MESG_DEF_SIZE 44
|
|
#define FIT_CONNECTIVITY_MESG_NAME_COUNT 24
|
|
|
|
typedef struct
|
|
{
|
|
FIT_STRING name[FIT_CONNECTIVITY_MESG_NAME_COUNT]; //
|
|
FIT_BOOL bluetooth_enabled; // Use Bluetooth for connectivity features
|
|
FIT_BOOL bluetooth_le_enabled; // Use Bluetooth Low Energy for connectivity features
|
|
FIT_BOOL ant_enabled; // Use ANT for connectivity features
|
|
FIT_BOOL live_tracking_enabled; //
|
|
FIT_BOOL weather_conditions_enabled; //
|
|
FIT_BOOL weather_alerts_enabled; //
|
|
FIT_BOOL auto_activity_upload_enabled; //
|
|
FIT_BOOL course_download_enabled; //
|
|
FIT_BOOL workout_download_enabled; //
|
|
FIT_BOOL gps_ephemeris_download_enabled; //
|
|
FIT_BOOL incident_detection_enabled; //
|
|
FIT_BOOL grouptrack_enabled; //
|
|
} FIT_CONNECTIVITY_MESG;
|
|
|
|
typedef FIT_UINT8 FIT_CONNECTIVITY_FIELD_NUM;
|
|
|
|
#define FIT_CONNECTIVITY_FIELD_NUM_NAME ((FIT_CONNECTIVITY_FIELD_NUM)3)
|
|
#define FIT_CONNECTIVITY_FIELD_NUM_BLUETOOTH_ENABLED ((FIT_CONNECTIVITY_FIELD_NUM)0)
|
|
#define FIT_CONNECTIVITY_FIELD_NUM_BLUETOOTH_LE_ENABLED ((FIT_CONNECTIVITY_FIELD_NUM)1)
|
|
#define FIT_CONNECTIVITY_FIELD_NUM_ANT_ENABLED ((FIT_CONNECTIVITY_FIELD_NUM)2)
|
|
#define FIT_CONNECTIVITY_FIELD_NUM_LIVE_TRACKING_ENABLED ((FIT_CONNECTIVITY_FIELD_NUM)4)
|
|
#define FIT_CONNECTIVITY_FIELD_NUM_WEATHER_CONDITIONS_ENABLED ((FIT_CONNECTIVITY_FIELD_NUM)5)
|
|
#define FIT_CONNECTIVITY_FIELD_NUM_WEATHER_ALERTS_ENABLED ((FIT_CONNECTIVITY_FIELD_NUM)6)
|
|
#define FIT_CONNECTIVITY_FIELD_NUM_AUTO_ACTIVITY_UPLOAD_ENABLED ((FIT_CONNECTIVITY_FIELD_NUM)7)
|
|
#define FIT_CONNECTIVITY_FIELD_NUM_COURSE_DOWNLOAD_ENABLED ((FIT_CONNECTIVITY_FIELD_NUM)8)
|
|
#define FIT_CONNECTIVITY_FIELD_NUM_WORKOUT_DOWNLOAD_ENABLED ((FIT_CONNECTIVITY_FIELD_NUM)9)
|
|
#define FIT_CONNECTIVITY_FIELD_NUM_GPS_EPHEMERIS_DOWNLOAD_ENABLED ((FIT_CONNECTIVITY_FIELD_NUM)10)
|
|
#define FIT_CONNECTIVITY_FIELD_NUM_INCIDENT_DETECTION_ENABLED ((FIT_CONNECTIVITY_FIELD_NUM)11)
|
|
#define FIT_CONNECTIVITY_FIELD_NUM_GROUPTRACK_ENABLED ((FIT_CONNECTIVITY_FIELD_NUM)12)
|
|
|
|
typedef enum
|
|
{
|
|
FIT_CONNECTIVITY_MESG_NAME,
|
|
FIT_CONNECTIVITY_MESG_BLUETOOTH_ENABLED,
|
|
FIT_CONNECTIVITY_MESG_BLUETOOTH_LE_ENABLED,
|
|
FIT_CONNECTIVITY_MESG_ANT_ENABLED,
|
|
FIT_CONNECTIVITY_MESG_LIVE_TRACKING_ENABLED,
|
|
FIT_CONNECTIVITY_MESG_WEATHER_CONDITIONS_ENABLED,
|
|
FIT_CONNECTIVITY_MESG_WEATHER_ALERTS_ENABLED,
|
|
FIT_CONNECTIVITY_MESG_AUTO_ACTIVITY_UPLOAD_ENABLED,
|
|
FIT_CONNECTIVITY_MESG_COURSE_DOWNLOAD_ENABLED,
|
|
FIT_CONNECTIVITY_MESG_WORKOUT_DOWNLOAD_ENABLED,
|
|
FIT_CONNECTIVITY_MESG_GPS_EPHEMERIS_DOWNLOAD_ENABLED,
|
|
FIT_CONNECTIVITY_MESG_INCIDENT_DETECTION_ENABLED,
|
|
FIT_CONNECTIVITY_MESG_GROUPTRACK_ENABLED,
|
|
FIT_CONNECTIVITY_MESG_FIELDS
|
|
} FIT_CONNECTIVITY_MESG_FIELD;
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT8 reserved_1;
|
|
FIT_UINT8 arch;
|
|
FIT_MESG_NUM global_mesg_num;
|
|
FIT_UINT8 num_fields;
|
|
FIT_UINT8 fields[FIT_CONNECTIVITY_MESG_FIELDS * FIT_FIELD_DEF_SIZE];
|
|
} FIT_CONNECTIVITY_MESG_DEF;
|
|
|
|
// zones_target message
|
|
|
|
#define FIT_ZONES_TARGET_MESG_SIZE 6
|
|
#define FIT_ZONES_TARGET_MESG_DEF_SIZE 20
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT16 functional_threshold_power; //
|
|
FIT_UINT8 max_heart_rate; //
|
|
FIT_UINT8 threshold_heart_rate; //
|
|
FIT_HR_ZONE_CALC hr_calc_type; //
|
|
FIT_PWR_ZONE_CALC pwr_calc_type; //
|
|
} FIT_ZONES_TARGET_MESG;
|
|
|
|
typedef FIT_UINT8 FIT_ZONES_TARGET_FIELD_NUM;
|
|
|
|
#define FIT_ZONES_TARGET_FIELD_NUM_FUNCTIONAL_THRESHOLD_POWER ((FIT_ZONES_TARGET_FIELD_NUM)3)
|
|
#define FIT_ZONES_TARGET_FIELD_NUM_MAX_HEART_RATE ((FIT_ZONES_TARGET_FIELD_NUM)1)
|
|
#define FIT_ZONES_TARGET_FIELD_NUM_THRESHOLD_HEART_RATE ((FIT_ZONES_TARGET_FIELD_NUM)2)
|
|
#define FIT_ZONES_TARGET_FIELD_NUM_HR_CALC_TYPE ((FIT_ZONES_TARGET_FIELD_NUM)5)
|
|
#define FIT_ZONES_TARGET_FIELD_NUM_PWR_CALC_TYPE ((FIT_ZONES_TARGET_FIELD_NUM)7)
|
|
|
|
typedef enum
|
|
{
|
|
FIT_ZONES_TARGET_MESG_FUNCTIONAL_THRESHOLD_POWER,
|
|
FIT_ZONES_TARGET_MESG_MAX_HEART_RATE,
|
|
FIT_ZONES_TARGET_MESG_THRESHOLD_HEART_RATE,
|
|
FIT_ZONES_TARGET_MESG_HR_CALC_TYPE,
|
|
FIT_ZONES_TARGET_MESG_PWR_CALC_TYPE,
|
|
FIT_ZONES_TARGET_MESG_FIELDS
|
|
} FIT_ZONES_TARGET_MESG_FIELD;
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT8 reserved_1;
|
|
FIT_UINT8 arch;
|
|
FIT_MESG_NUM global_mesg_num;
|
|
FIT_UINT8 num_fields;
|
|
FIT_UINT8 fields[FIT_ZONES_TARGET_MESG_FIELDS * FIT_FIELD_DEF_SIZE];
|
|
} FIT_ZONES_TARGET_MESG_DEF;
|
|
|
|
// sport message
|
|
|
|
#define FIT_SPORT_MESG_SIZE 18
|
|
#define FIT_SPORT_MESG_DEF_SIZE 14
|
|
#define FIT_SPORT_MESG_NAME_COUNT 16
|
|
|
|
typedef struct
|
|
{
|
|
FIT_STRING name[FIT_SPORT_MESG_NAME_COUNT]; //
|
|
FIT_SPORT sport; //
|
|
FIT_SUB_SPORT sub_sport; //
|
|
} FIT_SPORT_MESG;
|
|
|
|
typedef FIT_UINT8 FIT_SPORT_FIELD_NUM;
|
|
|
|
#define FIT_SPORT_FIELD_NUM_NAME ((FIT_SPORT_FIELD_NUM)3)
|
|
#define FIT_SPORT_FIELD_NUM_SPORT ((FIT_SPORT_FIELD_NUM)0)
|
|
#define FIT_SPORT_FIELD_NUM_SUB_SPORT ((FIT_SPORT_FIELD_NUM)1)
|
|
|
|
typedef enum
|
|
{
|
|
FIT_SPORT_MESG_NAME,
|
|
FIT_SPORT_MESG_SPORT,
|
|
FIT_SPORT_MESG_SUB_SPORT,
|
|
FIT_SPORT_MESG_FIELDS
|
|
} FIT_SPORT_MESG_FIELD;
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT8 reserved_1;
|
|
FIT_UINT8 arch;
|
|
FIT_MESG_NUM global_mesg_num;
|
|
FIT_UINT8 num_fields;
|
|
FIT_UINT8 fields[FIT_SPORT_MESG_FIELDS * FIT_FIELD_DEF_SIZE];
|
|
} FIT_SPORT_MESG_DEF;
|
|
|
|
// hr_zone message
|
|
|
|
#define FIT_HR_ZONE_MESG_SIZE 19
|
|
#define FIT_HR_ZONE_MESG_DEF_SIZE 14
|
|
#define FIT_HR_ZONE_MESG_NAME_COUNT 16
|
|
|
|
typedef struct
|
|
{
|
|
FIT_STRING name[FIT_HR_ZONE_MESG_NAME_COUNT]; //
|
|
FIT_MESSAGE_INDEX message_index; //
|
|
FIT_UINT8 high_bpm; // 1 * bpm + 0,
|
|
} FIT_HR_ZONE_MESG;
|
|
|
|
typedef FIT_UINT8 FIT_HR_ZONE_FIELD_NUM;
|
|
|
|
#define FIT_HR_ZONE_FIELD_NUM_NAME ((FIT_HR_ZONE_FIELD_NUM)2)
|
|
#define FIT_HR_ZONE_FIELD_NUM_MESSAGE_INDEX ((FIT_HR_ZONE_FIELD_NUM)254)
|
|
#define FIT_HR_ZONE_FIELD_NUM_HIGH_BPM ((FIT_HR_ZONE_FIELD_NUM)1)
|
|
|
|
typedef enum
|
|
{
|
|
FIT_HR_ZONE_MESG_NAME,
|
|
FIT_HR_ZONE_MESG_MESSAGE_INDEX,
|
|
FIT_HR_ZONE_MESG_HIGH_BPM,
|
|
FIT_HR_ZONE_MESG_FIELDS
|
|
} FIT_HR_ZONE_MESG_FIELD;
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT8 reserved_1;
|
|
FIT_UINT8 arch;
|
|
FIT_MESG_NUM global_mesg_num;
|
|
FIT_UINT8 num_fields;
|
|
FIT_UINT8 fields[FIT_HR_ZONE_MESG_FIELDS * FIT_FIELD_DEF_SIZE];
|
|
} FIT_HR_ZONE_MESG_DEF;
|
|
|
|
// speed_zone message
|
|
|
|
#define FIT_SPEED_ZONE_MESG_SIZE 20
|
|
#define FIT_SPEED_ZONE_MESG_DEF_SIZE 14
|
|
#define FIT_SPEED_ZONE_MESG_NAME_COUNT 16
|
|
|
|
typedef struct
|
|
{
|
|
FIT_STRING name[FIT_SPEED_ZONE_MESG_NAME_COUNT]; //
|
|
FIT_MESSAGE_INDEX message_index; //
|
|
FIT_UINT16 high_value; // 1000 * m/s + 0,
|
|
} FIT_SPEED_ZONE_MESG;
|
|
|
|
typedef FIT_UINT8 FIT_SPEED_ZONE_FIELD_NUM;
|
|
|
|
#define FIT_SPEED_ZONE_FIELD_NUM_NAME ((FIT_SPEED_ZONE_FIELD_NUM)1)
|
|
#define FIT_SPEED_ZONE_FIELD_NUM_MESSAGE_INDEX ((FIT_SPEED_ZONE_FIELD_NUM)254)
|
|
#define FIT_SPEED_ZONE_FIELD_NUM_HIGH_VALUE ((FIT_SPEED_ZONE_FIELD_NUM)0)
|
|
|
|
typedef enum
|
|
{
|
|
FIT_SPEED_ZONE_MESG_NAME,
|
|
FIT_SPEED_ZONE_MESG_MESSAGE_INDEX,
|
|
FIT_SPEED_ZONE_MESG_HIGH_VALUE,
|
|
FIT_SPEED_ZONE_MESG_FIELDS
|
|
} FIT_SPEED_ZONE_MESG_FIELD;
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT8 reserved_1;
|
|
FIT_UINT8 arch;
|
|
FIT_MESG_NUM global_mesg_num;
|
|
FIT_UINT8 num_fields;
|
|
FIT_UINT8 fields[FIT_SPEED_ZONE_MESG_FIELDS * FIT_FIELD_DEF_SIZE];
|
|
} FIT_SPEED_ZONE_MESG_DEF;
|
|
|
|
// cadence_zone message
|
|
|
|
#define FIT_CADENCE_ZONE_MESG_SIZE 19
|
|
#define FIT_CADENCE_ZONE_MESG_DEF_SIZE 14
|
|
#define FIT_CADENCE_ZONE_MESG_NAME_COUNT 16
|
|
|
|
typedef struct
|
|
{
|
|
FIT_STRING name[FIT_CADENCE_ZONE_MESG_NAME_COUNT]; //
|
|
FIT_MESSAGE_INDEX message_index; //
|
|
FIT_UINT8 high_value; // 1 * rpm + 0,
|
|
} FIT_CADENCE_ZONE_MESG;
|
|
|
|
typedef FIT_UINT8 FIT_CADENCE_ZONE_FIELD_NUM;
|
|
|
|
#define FIT_CADENCE_ZONE_FIELD_NUM_NAME ((FIT_CADENCE_ZONE_FIELD_NUM)1)
|
|
#define FIT_CADENCE_ZONE_FIELD_NUM_MESSAGE_INDEX ((FIT_CADENCE_ZONE_FIELD_NUM)254)
|
|
#define FIT_CADENCE_ZONE_FIELD_NUM_HIGH_VALUE ((FIT_CADENCE_ZONE_FIELD_NUM)0)
|
|
|
|
typedef enum
|
|
{
|
|
FIT_CADENCE_ZONE_MESG_NAME,
|
|
FIT_CADENCE_ZONE_MESG_MESSAGE_INDEX,
|
|
FIT_CADENCE_ZONE_MESG_HIGH_VALUE,
|
|
FIT_CADENCE_ZONE_MESG_FIELDS
|
|
} FIT_CADENCE_ZONE_MESG_FIELD;
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT8 reserved_1;
|
|
FIT_UINT8 arch;
|
|
FIT_MESG_NUM global_mesg_num;
|
|
FIT_UINT8 num_fields;
|
|
FIT_UINT8 fields[FIT_CADENCE_ZONE_MESG_FIELDS * FIT_FIELD_DEF_SIZE];
|
|
} FIT_CADENCE_ZONE_MESG_DEF;
|
|
|
|
// power_zone message
|
|
|
|
#define FIT_POWER_ZONE_MESG_SIZE 20
|
|
#define FIT_POWER_ZONE_MESG_DEF_SIZE 14
|
|
#define FIT_POWER_ZONE_MESG_NAME_COUNT 16
|
|
|
|
typedef struct
|
|
{
|
|
FIT_STRING name[FIT_POWER_ZONE_MESG_NAME_COUNT]; //
|
|
FIT_MESSAGE_INDEX message_index; //
|
|
FIT_UINT16 high_value; // 1 * watts + 0,
|
|
} FIT_POWER_ZONE_MESG;
|
|
|
|
typedef FIT_UINT8 FIT_POWER_ZONE_FIELD_NUM;
|
|
|
|
#define FIT_POWER_ZONE_FIELD_NUM_NAME ((FIT_POWER_ZONE_FIELD_NUM)2)
|
|
#define FIT_POWER_ZONE_FIELD_NUM_MESSAGE_INDEX ((FIT_POWER_ZONE_FIELD_NUM)254)
|
|
#define FIT_POWER_ZONE_FIELD_NUM_HIGH_VALUE ((FIT_POWER_ZONE_FIELD_NUM)1)
|
|
|
|
typedef enum
|
|
{
|
|
FIT_POWER_ZONE_MESG_NAME,
|
|
FIT_POWER_ZONE_MESG_MESSAGE_INDEX,
|
|
FIT_POWER_ZONE_MESG_HIGH_VALUE,
|
|
FIT_POWER_ZONE_MESG_FIELDS
|
|
} FIT_POWER_ZONE_MESG_FIELD;
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT8 reserved_1;
|
|
FIT_UINT8 arch;
|
|
FIT_MESG_NUM global_mesg_num;
|
|
FIT_UINT8 num_fields;
|
|
FIT_UINT8 fields[FIT_POWER_ZONE_MESG_FIELDS * FIT_FIELD_DEF_SIZE];
|
|
} FIT_POWER_ZONE_MESG_DEF;
|
|
|
|
// met_zone message
|
|
|
|
#define FIT_MET_ZONE_MESG_SIZE 6
|
|
#define FIT_MET_ZONE_MESG_DEF_SIZE 17
|
|
|
|
typedef struct
|
|
{
|
|
FIT_MESSAGE_INDEX message_index; //
|
|
FIT_UINT16 calories; // 10 * kcal / min + 0,
|
|
FIT_UINT8 high_bpm; //
|
|
FIT_UINT8 fat_calories; // 10 * kcal / min + 0,
|
|
} FIT_MET_ZONE_MESG;
|
|
|
|
typedef FIT_UINT8 FIT_MET_ZONE_FIELD_NUM;
|
|
|
|
#define FIT_MET_ZONE_FIELD_NUM_MESSAGE_INDEX ((FIT_MET_ZONE_FIELD_NUM)254)
|
|
#define FIT_MET_ZONE_FIELD_NUM_CALORIES ((FIT_MET_ZONE_FIELD_NUM)2)
|
|
#define FIT_MET_ZONE_FIELD_NUM_HIGH_BPM ((FIT_MET_ZONE_FIELD_NUM)1)
|
|
#define FIT_MET_ZONE_FIELD_NUM_FAT_CALORIES ((FIT_MET_ZONE_FIELD_NUM)3)
|
|
|
|
typedef enum
|
|
{
|
|
FIT_MET_ZONE_MESG_MESSAGE_INDEX,
|
|
FIT_MET_ZONE_MESG_CALORIES,
|
|
FIT_MET_ZONE_MESG_HIGH_BPM,
|
|
FIT_MET_ZONE_MESG_FAT_CALORIES,
|
|
FIT_MET_ZONE_MESG_FIELDS
|
|
} FIT_MET_ZONE_MESG_FIELD;
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT8 reserved_1;
|
|
FIT_UINT8 arch;
|
|
FIT_MESG_NUM global_mesg_num;
|
|
FIT_UINT8 num_fields;
|
|
FIT_UINT8 fields[FIT_MET_ZONE_MESG_FIELDS * FIT_FIELD_DEF_SIZE];
|
|
} FIT_MET_ZONE_MESG_DEF;
|
|
|
|
// dive_settings message
|
|
|
|
#define FIT_DIVE_SETTINGS_MESG_SIZE 17
|
|
#define FIT_DIVE_SETTINGS_MESG_DEF_SIZE 11
|
|
#define FIT_DIVE_SETTINGS_MESG_NAME_COUNT 16
|
|
|
|
typedef struct
|
|
{
|
|
FIT_STRING name[FIT_DIVE_SETTINGS_MESG_NAME_COUNT]; //
|
|
FIT_UINT8 heart_rate_source; //
|
|
} FIT_DIVE_SETTINGS_MESG;
|
|
|
|
typedef FIT_UINT8 FIT_DIVE_SETTINGS_FIELD_NUM;
|
|
|
|
#define FIT_DIVE_SETTINGS_FIELD_NUM_NAME ((FIT_DIVE_SETTINGS_FIELD_NUM)0)
|
|
#define FIT_DIVE_SETTINGS_FIELD_NUM_HEART_RATE_SOURCE ((FIT_DIVE_SETTINGS_FIELD_NUM)20)
|
|
|
|
typedef enum
|
|
{
|
|
FIT_DIVE_SETTINGS_MESG_NAME,
|
|
FIT_DIVE_SETTINGS_MESG_HEART_RATE_SOURCE,
|
|
FIT_DIVE_SETTINGS_MESG_FIELDS
|
|
} FIT_DIVE_SETTINGS_MESG_FIELD;
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT8 reserved_1;
|
|
FIT_UINT8 arch;
|
|
FIT_MESG_NUM global_mesg_num;
|
|
FIT_UINT8 num_fields;
|
|
FIT_UINT8 fields[FIT_DIVE_SETTINGS_MESG_FIELDS * FIT_FIELD_DEF_SIZE];
|
|
} FIT_DIVE_SETTINGS_MESG_DEF;
|
|
|
|
// goal message
|
|
|
|
#define FIT_GOAL_MESG_SIZE 27
|
|
#define FIT_GOAL_MESG_DEF_SIZE 44
|
|
|
|
typedef struct
|
|
{
|
|
FIT_DATE_TIME start_date; //
|
|
FIT_DATE_TIME end_date; //
|
|
FIT_UINT32 value; //
|
|
FIT_UINT32 target_value; //
|
|
FIT_MESSAGE_INDEX message_index; //
|
|
FIT_UINT16 recurrence_value; //
|
|
FIT_SPORT sport; //
|
|
FIT_SUB_SPORT sub_sport; //
|
|
FIT_GOAL type; //
|
|
FIT_BOOL repeat; //
|
|
FIT_GOAL_RECURRENCE recurrence; //
|
|
FIT_BOOL enabled; //
|
|
FIT_GOAL_SOURCE source; //
|
|
} FIT_GOAL_MESG;
|
|
|
|
typedef FIT_UINT8 FIT_GOAL_FIELD_NUM;
|
|
|
|
#define FIT_GOAL_FIELD_NUM_START_DATE ((FIT_GOAL_FIELD_NUM)2)
|
|
#define FIT_GOAL_FIELD_NUM_END_DATE ((FIT_GOAL_FIELD_NUM)3)
|
|
#define FIT_GOAL_FIELD_NUM_VALUE ((FIT_GOAL_FIELD_NUM)5)
|
|
#define FIT_GOAL_FIELD_NUM_TARGET_VALUE ((FIT_GOAL_FIELD_NUM)7)
|
|
#define FIT_GOAL_FIELD_NUM_MESSAGE_INDEX ((FIT_GOAL_FIELD_NUM)254)
|
|
#define FIT_GOAL_FIELD_NUM_RECURRENCE_VALUE ((FIT_GOAL_FIELD_NUM)9)
|
|
#define FIT_GOAL_FIELD_NUM_SPORT ((FIT_GOAL_FIELD_NUM)0)
|
|
#define FIT_GOAL_FIELD_NUM_SUB_SPORT ((FIT_GOAL_FIELD_NUM)1)
|
|
#define FIT_GOAL_FIELD_NUM_TYPE ((FIT_GOAL_FIELD_NUM)4)
|
|
#define FIT_GOAL_FIELD_NUM_REPEAT ((FIT_GOAL_FIELD_NUM)6)
|
|
#define FIT_GOAL_FIELD_NUM_RECURRENCE ((FIT_GOAL_FIELD_NUM)8)
|
|
#define FIT_GOAL_FIELD_NUM_ENABLED ((FIT_GOAL_FIELD_NUM)10)
|
|
#define FIT_GOAL_FIELD_NUM_SOURCE ((FIT_GOAL_FIELD_NUM)11)
|
|
|
|
typedef enum
|
|
{
|
|
FIT_GOAL_MESG_START_DATE,
|
|
FIT_GOAL_MESG_END_DATE,
|
|
FIT_GOAL_MESG_VALUE,
|
|
FIT_GOAL_MESG_TARGET_VALUE,
|
|
FIT_GOAL_MESG_MESSAGE_INDEX,
|
|
FIT_GOAL_MESG_RECURRENCE_VALUE,
|
|
FIT_GOAL_MESG_SPORT,
|
|
FIT_GOAL_MESG_SUB_SPORT,
|
|
FIT_GOAL_MESG_TYPE,
|
|
FIT_GOAL_MESG_REPEAT,
|
|
FIT_GOAL_MESG_RECURRENCE,
|
|
FIT_GOAL_MESG_ENABLED,
|
|
FIT_GOAL_MESG_SOURCE,
|
|
FIT_GOAL_MESG_FIELDS
|
|
} FIT_GOAL_MESG_FIELD;
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT8 reserved_1;
|
|
FIT_UINT8 arch;
|
|
FIT_MESG_NUM global_mesg_num;
|
|
FIT_UINT8 num_fields;
|
|
FIT_UINT8 fields[FIT_GOAL_MESG_FIELDS * FIT_FIELD_DEF_SIZE];
|
|
} FIT_GOAL_MESG_DEF;
|
|
|
|
// activity message
|
|
|
|
#define FIT_ACTIVITY_MESG_SIZE 18
|
|
#define FIT_ACTIVITY_MESG_DEF_SIZE 29
|
|
|
|
typedef struct
|
|
{
|
|
FIT_DATE_TIME timestamp; //
|
|
FIT_UINT32 total_timer_time; // 1000 * s + 0, Exclude pauses
|
|
FIT_LOCAL_DATE_TIME local_timestamp; // timestamp epoch expressed in local time, used to convert activity timestamps to local time
|
|
FIT_UINT16 num_sessions; //
|
|
FIT_ACTIVITY type; //
|
|
FIT_EVENT event; //
|
|
FIT_EVENT_TYPE event_type; //
|
|
FIT_UINT8 event_group; //
|
|
} FIT_ACTIVITY_MESG;
|
|
|
|
typedef FIT_UINT8 FIT_ACTIVITY_FIELD_NUM;
|
|
|
|
#define FIT_ACTIVITY_FIELD_NUM_TIMESTAMP ((FIT_ACTIVITY_FIELD_NUM)253)
|
|
#define FIT_ACTIVITY_FIELD_NUM_TOTAL_TIMER_TIME ((FIT_ACTIVITY_FIELD_NUM)0)
|
|
#define FIT_ACTIVITY_FIELD_NUM_LOCAL_TIMESTAMP ((FIT_ACTIVITY_FIELD_NUM)5)
|
|
#define FIT_ACTIVITY_FIELD_NUM_NUM_SESSIONS ((FIT_ACTIVITY_FIELD_NUM)1)
|
|
#define FIT_ACTIVITY_FIELD_NUM_TYPE ((FIT_ACTIVITY_FIELD_NUM)2)
|
|
#define FIT_ACTIVITY_FIELD_NUM_EVENT ((FIT_ACTIVITY_FIELD_NUM)3)
|
|
#define FIT_ACTIVITY_FIELD_NUM_EVENT_TYPE ((FIT_ACTIVITY_FIELD_NUM)4)
|
|
#define FIT_ACTIVITY_FIELD_NUM_EVENT_GROUP ((FIT_ACTIVITY_FIELD_NUM)6)
|
|
|
|
typedef enum
|
|
{
|
|
FIT_ACTIVITY_MESG_TIMESTAMP,
|
|
FIT_ACTIVITY_MESG_TOTAL_TIMER_TIME,
|
|
FIT_ACTIVITY_MESG_LOCAL_TIMESTAMP,
|
|
FIT_ACTIVITY_MESG_NUM_SESSIONS,
|
|
FIT_ACTIVITY_MESG_TYPE,
|
|
FIT_ACTIVITY_MESG_EVENT,
|
|
FIT_ACTIVITY_MESG_EVENT_TYPE,
|
|
FIT_ACTIVITY_MESG_EVENT_GROUP,
|
|
FIT_ACTIVITY_MESG_FIELDS
|
|
} FIT_ACTIVITY_MESG_FIELD;
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT8 reserved_1;
|
|
FIT_UINT8 arch;
|
|
FIT_MESG_NUM global_mesg_num;
|
|
FIT_UINT8 num_fields;
|
|
FIT_UINT8 fields[FIT_ACTIVITY_MESG_FIELDS * FIT_FIELD_DEF_SIZE];
|
|
} FIT_ACTIVITY_MESG_DEF;
|
|
|
|
// session message
|
|
|
|
#define FIT_SESSION_MESG_SIZE 234
|
|
#define FIT_SESSION_MESG_DEF_SIZE 290
|
|
#define FIT_SESSION_MESG_TIME_IN_HR_ZONE_COUNT 1
|
|
#define FIT_SESSION_MESG_TIME_IN_SPEED_ZONE_COUNT 1
|
|
#define FIT_SESSION_MESG_TIME_IN_CADENCE_ZONE_COUNT 1
|
|
#define FIT_SESSION_MESG_TIME_IN_POWER_ZONE_COUNT 1
|
|
#define FIT_SESSION_MESG_SPORT_PROFILE_NAME_COUNT 16
|
|
#define FIT_SESSION_MESG_STROKE_COUNT_COUNT 1
|
|
#define FIT_SESSION_MESG_ZONE_COUNT_COUNT 1
|
|
#define FIT_SESSION_MESG_OPPONENT_NAME_COUNT 1
|
|
|
|
typedef struct
|
|
{
|
|
FIT_DATE_TIME timestamp; // 1 * s + 0, Sesson end time.
|
|
FIT_DATE_TIME start_time; //
|
|
FIT_SINT32 start_position_lat; // 1 * semicircles + 0,
|
|
FIT_SINT32 start_position_long; // 1 * semicircles + 0,
|
|
FIT_UINT32 total_elapsed_time; // 1000 * s + 0, Time (includes pauses)
|
|
FIT_UINT32 total_timer_time; // 1000 * s + 0, Timer Time (excludes pauses)
|
|
FIT_UINT32 total_distance; // 100 * m + 0,
|
|
FIT_UINT32 total_cycles; // 1 * cycles + 0,
|
|
FIT_SINT32 nec_lat; // 1 * semicircles + 0, North east corner latitude
|
|
FIT_SINT32 nec_long; // 1 * semicircles + 0, North east corner longitude
|
|
FIT_SINT32 swc_lat; // 1 * semicircles + 0, South west corner latitude
|
|
FIT_SINT32 swc_long; // 1 * semicircles + 0, South west corner longitude
|
|
FIT_SINT32 end_position_lat; // 1 * semicircles + 0,
|
|
FIT_SINT32 end_position_long; // 1 * semicircles + 0,
|
|
FIT_UINT32 avg_stroke_count; // 10 * strokes/lap + 0,
|
|
FIT_UINT32 total_work; // 1 * J + 0,
|
|
FIT_UINT32 total_moving_time; // 1000 * s + 0,
|
|
FIT_UINT32 time_in_hr_zone[FIT_SESSION_MESG_TIME_IN_HR_ZONE_COUNT]; // 1000 * s + 0,
|
|
FIT_UINT32 time_in_speed_zone[FIT_SESSION_MESG_TIME_IN_SPEED_ZONE_COUNT]; // 1000 * s + 0,
|
|
FIT_UINT32 time_in_cadence_zone[FIT_SESSION_MESG_TIME_IN_CADENCE_ZONE_COUNT]; // 1000 * s + 0,
|
|
FIT_UINT32 time_in_power_zone[FIT_SESSION_MESG_TIME_IN_POWER_ZONE_COUNT]; // 1000 * s + 0,
|
|
FIT_UINT32 avg_lap_time; // 1000 * s + 0,
|
|
FIT_STRING sport_profile_name[FIT_SESSION_MESG_SPORT_PROFILE_NAME_COUNT]; // Sport name from associated sport mesg
|
|
FIT_UINT32 enhanced_avg_speed; // 1000 * m/s + 0, total_distance / total_timer_time
|
|
FIT_UINT32 enhanced_max_speed; // 1000 * m/s + 0,
|
|
FIT_UINT32 enhanced_avg_altitude; // 5 * m + 500,
|
|
FIT_UINT32 enhanced_min_altitude; // 5 * m + 500,
|
|
FIT_UINT32 enhanced_max_altitude; // 5 * m + 500,
|
|
FIT_MESSAGE_INDEX message_index; // Selected bit is set for the current session.
|
|
FIT_UINT16 total_calories; // 1 * kcal + 0,
|
|
FIT_UINT16 total_fat_calories; // 1 * kcal + 0,
|
|
FIT_UINT16 avg_speed; // 1000 * m/s + 0, total_distance / total_timer_time
|
|
FIT_UINT16 max_speed; // 1000 * m/s + 0,
|
|
FIT_UINT16 avg_power; // 1 * watts + 0, total_power / total_timer_time if non_zero_avg_power otherwise total_power / total_elapsed_time
|
|
FIT_UINT16 max_power; // 1 * watts + 0,
|
|
FIT_UINT16 total_ascent; // 1 * m + 0,
|
|
FIT_UINT16 total_descent; // 1 * m + 0,
|
|
FIT_UINT16 first_lap_index; //
|
|
FIT_UINT16 num_laps; //
|
|
FIT_UINT16 num_lengths; // 1 * lengths + 0, # of lengths of swim pool
|
|
FIT_UINT16 normalized_power; // 1 * watts + 0,
|
|
FIT_UINT16 training_stress_score; // 10 * tss + 0,
|
|
FIT_UINT16 intensity_factor; // 1000 * if + 0,
|
|
FIT_LEFT_RIGHT_BALANCE_100 left_right_balance; //
|
|
FIT_UINT16 avg_stroke_distance; // 100 * m + 0,
|
|
FIT_UINT16 pool_length; // 100 * m + 0,
|
|
FIT_UINT16 threshold_power; // 1 * watts + 0,
|
|
FIT_UINT16 num_active_lengths; // 1 * lengths + 0, # of active lengths of swim pool
|
|
FIT_UINT16 avg_altitude; // 5 * m + 500,
|
|
FIT_UINT16 max_altitude; // 5 * m + 500,
|
|
FIT_SINT16 avg_grade; // 100 * % + 0,
|
|
FIT_SINT16 avg_pos_grade; // 100 * % + 0,
|
|
FIT_SINT16 avg_neg_grade; // 100 * % + 0,
|
|
FIT_SINT16 max_pos_grade; // 100 * % + 0,
|
|
FIT_SINT16 max_neg_grade; // 100 * % + 0,
|
|
FIT_SINT16 avg_pos_vertical_speed; // 1000 * m/s + 0,
|
|
FIT_SINT16 avg_neg_vertical_speed; // 1000 * m/s + 0,
|
|
FIT_SINT16 max_pos_vertical_speed; // 1000 * m/s + 0,
|
|
FIT_SINT16 max_neg_vertical_speed; // 1000 * m/s + 0,
|
|
FIT_UINT16 best_lap_index; //
|
|
FIT_UINT16 min_altitude; // 5 * m + 500,
|
|
FIT_UINT16 player_score; //
|
|
FIT_UINT16 opponent_score; //
|
|
FIT_UINT16 stroke_count[FIT_SESSION_MESG_STROKE_COUNT_COUNT]; // 1 * counts + 0, stroke_type enum used as the index
|
|
FIT_UINT16 zone_count[FIT_SESSION_MESG_ZONE_COUNT_COUNT]; // 1 * counts + 0, zone number used as the index
|
|
FIT_UINT16 max_ball_speed; // 100 * m/s + 0,
|
|
FIT_UINT16 avg_ball_speed; // 100 * m/s + 0,
|
|
FIT_UINT16 avg_vertical_oscillation; // 10 * mm + 0,
|
|
FIT_UINT16 avg_stance_time_percent; // 100 * percent + 0,
|
|
FIT_UINT16 avg_stance_time; // 10 * ms + 0,
|
|
FIT_UINT16 avg_vam; // 1000 * m/s + 0,
|
|
FIT_EVENT event; // session
|
|
FIT_EVENT_TYPE event_type; // stop
|
|
FIT_SPORT sport; //
|
|
FIT_SUB_SPORT sub_sport; //
|
|
FIT_UINT8 avg_heart_rate; // 1 * bpm + 0, average heart rate (excludes pause time)
|
|
FIT_UINT8 max_heart_rate; // 1 * bpm + 0,
|
|
FIT_UINT8 avg_cadence; // 1 * rpm + 0, total_cycles / total_timer_time if non_zero_avg_cadence otherwise total_cycles / total_elapsed_time
|
|
FIT_UINT8 max_cadence; // 1 * rpm + 0,
|
|
FIT_UINT8 total_training_effect; //
|
|
FIT_UINT8 event_group; //
|
|
FIT_SESSION_TRIGGER trigger; //
|
|
FIT_SWIM_STROKE swim_stroke; // 1 * swim_stroke + 0,
|
|
FIT_DISPLAY_MEASURE pool_length_unit; //
|
|
FIT_UINT8 gps_accuracy; // 1 * m + 0,
|
|
FIT_SINT8 avg_temperature; // 1 * C + 0,
|
|
FIT_SINT8 max_temperature; // 1 * C + 0,
|
|
FIT_UINT8 min_heart_rate; // 1 * bpm + 0,
|
|
FIT_STRING opponent_name[FIT_SESSION_MESG_OPPONENT_NAME_COUNT]; //
|
|
FIT_UINT8 avg_fractional_cadence; // 128 * rpm + 0, fractional part of the avg_cadence
|
|
FIT_UINT8 max_fractional_cadence; // 128 * rpm + 0, fractional part of the max_cadence
|
|
FIT_UINT8 total_fractional_cycles; // 128 * cycles + 0, fractional part of the total_cycles
|
|
FIT_UINT8 sport_index; //
|
|
FIT_UINT8 total_anaerobic_training_effect; //
|
|
FIT_SINT8 min_temperature; // 1 * C + 0,
|
|
} FIT_SESSION_MESG;
|
|
|
|
typedef FIT_UINT8 FIT_SESSION_FIELD_NUM;
|
|
|
|
#define FIT_SESSION_FIELD_NUM_TIMESTAMP ((FIT_SESSION_FIELD_NUM)253)
|
|
#define FIT_SESSION_FIELD_NUM_START_TIME ((FIT_SESSION_FIELD_NUM)2)
|
|
#define FIT_SESSION_FIELD_NUM_START_POSITION_LAT ((FIT_SESSION_FIELD_NUM)3)
|
|
#define FIT_SESSION_FIELD_NUM_START_POSITION_LONG ((FIT_SESSION_FIELD_NUM)4)
|
|
#define FIT_SESSION_FIELD_NUM_TOTAL_ELAPSED_TIME ((FIT_SESSION_FIELD_NUM)7)
|
|
#define FIT_SESSION_FIELD_NUM_TOTAL_TIMER_TIME ((FIT_SESSION_FIELD_NUM)8)
|
|
#define FIT_SESSION_FIELD_NUM_TOTAL_DISTANCE ((FIT_SESSION_FIELD_NUM)9)
|
|
#define FIT_SESSION_FIELD_NUM_TOTAL_CYCLES ((FIT_SESSION_FIELD_NUM)10)
|
|
#define FIT_SESSION_FIELD_NUM_NEC_LAT ((FIT_SESSION_FIELD_NUM)29)
|
|
#define FIT_SESSION_FIELD_NUM_NEC_LONG ((FIT_SESSION_FIELD_NUM)30)
|
|
#define FIT_SESSION_FIELD_NUM_SWC_LAT ((FIT_SESSION_FIELD_NUM)31)
|
|
#define FIT_SESSION_FIELD_NUM_SWC_LONG ((FIT_SESSION_FIELD_NUM)32)
|
|
#define FIT_SESSION_FIELD_NUM_END_POSITION_LAT ((FIT_SESSION_FIELD_NUM)38)
|
|
#define FIT_SESSION_FIELD_NUM_END_POSITION_LONG ((FIT_SESSION_FIELD_NUM)39)
|
|
#define FIT_SESSION_FIELD_NUM_AVG_STROKE_COUNT ((FIT_SESSION_FIELD_NUM)41)
|
|
#define FIT_SESSION_FIELD_NUM_TOTAL_WORK ((FIT_SESSION_FIELD_NUM)48)
|
|
#define FIT_SESSION_FIELD_NUM_TOTAL_MOVING_TIME ((FIT_SESSION_FIELD_NUM)59)
|
|
#define FIT_SESSION_FIELD_NUM_TIME_IN_HR_ZONE ((FIT_SESSION_FIELD_NUM)65)
|
|
#define FIT_SESSION_FIELD_NUM_TIME_IN_SPEED_ZONE ((FIT_SESSION_FIELD_NUM)66)
|
|
#define FIT_SESSION_FIELD_NUM_TIME_IN_CADENCE_ZONE ((FIT_SESSION_FIELD_NUM)67)
|
|
#define FIT_SESSION_FIELD_NUM_TIME_IN_POWER_ZONE ((FIT_SESSION_FIELD_NUM)68)
|
|
#define FIT_SESSION_FIELD_NUM_AVG_LAP_TIME ((FIT_SESSION_FIELD_NUM)69)
|
|
#define FIT_SESSION_FIELD_NUM_SPORT_PROFILE_NAME ((FIT_SESSION_FIELD_NUM)110)
|
|
#define FIT_SESSION_FIELD_NUM_ENHANCED_AVG_SPEED ((FIT_SESSION_FIELD_NUM)124)
|
|
#define FIT_SESSION_FIELD_NUM_ENHANCED_MAX_SPEED ((FIT_SESSION_FIELD_NUM)125)
|
|
#define FIT_SESSION_FIELD_NUM_ENHANCED_AVG_ALTITUDE ((FIT_SESSION_FIELD_NUM)126)
|
|
#define FIT_SESSION_FIELD_NUM_ENHANCED_MIN_ALTITUDE ((FIT_SESSION_FIELD_NUM)127)
|
|
#define FIT_SESSION_FIELD_NUM_ENHANCED_MAX_ALTITUDE ((FIT_SESSION_FIELD_NUM)128)
|
|
#define FIT_SESSION_FIELD_NUM_MESSAGE_INDEX ((FIT_SESSION_FIELD_NUM)254)
|
|
#define FIT_SESSION_FIELD_NUM_TOTAL_CALORIES ((FIT_SESSION_FIELD_NUM)11)
|
|
#define FIT_SESSION_FIELD_NUM_TOTAL_FAT_CALORIES ((FIT_SESSION_FIELD_NUM)13)
|
|
#define FIT_SESSION_FIELD_NUM_AVG_SPEED ((FIT_SESSION_FIELD_NUM)14)
|
|
#define FIT_SESSION_FIELD_NUM_MAX_SPEED ((FIT_SESSION_FIELD_NUM)15)
|
|
#define FIT_SESSION_FIELD_NUM_AVG_POWER ((FIT_SESSION_FIELD_NUM)20)
|
|
#define FIT_SESSION_FIELD_NUM_MAX_POWER ((FIT_SESSION_FIELD_NUM)21)
|
|
#define FIT_SESSION_FIELD_NUM_TOTAL_ASCENT ((FIT_SESSION_FIELD_NUM)22)
|
|
#define FIT_SESSION_FIELD_NUM_TOTAL_DESCENT ((FIT_SESSION_FIELD_NUM)23)
|
|
#define FIT_SESSION_FIELD_NUM_FIRST_LAP_INDEX ((FIT_SESSION_FIELD_NUM)25)
|
|
#define FIT_SESSION_FIELD_NUM_NUM_LAPS ((FIT_SESSION_FIELD_NUM)26)
|
|
#define FIT_SESSION_FIELD_NUM_NUM_LENGTHS ((FIT_SESSION_FIELD_NUM)33)
|
|
#define FIT_SESSION_FIELD_NUM_NORMALIZED_POWER ((FIT_SESSION_FIELD_NUM)34)
|
|
#define FIT_SESSION_FIELD_NUM_TRAINING_STRESS_SCORE ((FIT_SESSION_FIELD_NUM)35)
|
|
#define FIT_SESSION_FIELD_NUM_INTENSITY_FACTOR ((FIT_SESSION_FIELD_NUM)36)
|
|
#define FIT_SESSION_FIELD_NUM_LEFT_RIGHT_BALANCE ((FIT_SESSION_FIELD_NUM)37)
|
|
#define FIT_SESSION_FIELD_NUM_AVG_STROKE_DISTANCE ((FIT_SESSION_FIELD_NUM)42)
|
|
#define FIT_SESSION_FIELD_NUM_POOL_LENGTH ((FIT_SESSION_FIELD_NUM)44)
|
|
#define FIT_SESSION_FIELD_NUM_THRESHOLD_POWER ((FIT_SESSION_FIELD_NUM)45)
|
|
#define FIT_SESSION_FIELD_NUM_NUM_ACTIVE_LENGTHS ((FIT_SESSION_FIELD_NUM)47)
|
|
#define FIT_SESSION_FIELD_NUM_AVG_ALTITUDE ((FIT_SESSION_FIELD_NUM)49)
|
|
#define FIT_SESSION_FIELD_NUM_MAX_ALTITUDE ((FIT_SESSION_FIELD_NUM)50)
|
|
#define FIT_SESSION_FIELD_NUM_AVG_GRADE ((FIT_SESSION_FIELD_NUM)52)
|
|
#define FIT_SESSION_FIELD_NUM_AVG_POS_GRADE ((FIT_SESSION_FIELD_NUM)53)
|
|
#define FIT_SESSION_FIELD_NUM_AVG_NEG_GRADE ((FIT_SESSION_FIELD_NUM)54)
|
|
#define FIT_SESSION_FIELD_NUM_MAX_POS_GRADE ((FIT_SESSION_FIELD_NUM)55)
|
|
#define FIT_SESSION_FIELD_NUM_MAX_NEG_GRADE ((FIT_SESSION_FIELD_NUM)56)
|
|
#define FIT_SESSION_FIELD_NUM_AVG_POS_VERTICAL_SPEED ((FIT_SESSION_FIELD_NUM)60)
|
|
#define FIT_SESSION_FIELD_NUM_AVG_NEG_VERTICAL_SPEED ((FIT_SESSION_FIELD_NUM)61)
|
|
#define FIT_SESSION_FIELD_NUM_MAX_POS_VERTICAL_SPEED ((FIT_SESSION_FIELD_NUM)62)
|
|
#define FIT_SESSION_FIELD_NUM_MAX_NEG_VERTICAL_SPEED ((FIT_SESSION_FIELD_NUM)63)
|
|
#define FIT_SESSION_FIELD_NUM_BEST_LAP_INDEX ((FIT_SESSION_FIELD_NUM)70)
|
|
#define FIT_SESSION_FIELD_NUM_MIN_ALTITUDE ((FIT_SESSION_FIELD_NUM)71)
|
|
#define FIT_SESSION_FIELD_NUM_PLAYER_SCORE ((FIT_SESSION_FIELD_NUM)82)
|
|
#define FIT_SESSION_FIELD_NUM_OPPONENT_SCORE ((FIT_SESSION_FIELD_NUM)83)
|
|
#define FIT_SESSION_FIELD_NUM_STROKE_COUNT ((FIT_SESSION_FIELD_NUM)85)
|
|
#define FIT_SESSION_FIELD_NUM_ZONE_COUNT ((FIT_SESSION_FIELD_NUM)86)
|
|
#define FIT_SESSION_FIELD_NUM_MAX_BALL_SPEED ((FIT_SESSION_FIELD_NUM)87)
|
|
#define FIT_SESSION_FIELD_NUM_AVG_BALL_SPEED ((FIT_SESSION_FIELD_NUM)88)
|
|
#define FIT_SESSION_FIELD_NUM_AVG_VERTICAL_OSCILLATION ((FIT_SESSION_FIELD_NUM)89)
|
|
#define FIT_SESSION_FIELD_NUM_AVG_STANCE_TIME_PERCENT ((FIT_SESSION_FIELD_NUM)90)
|
|
#define FIT_SESSION_FIELD_NUM_AVG_STANCE_TIME ((FIT_SESSION_FIELD_NUM)91)
|
|
#define FIT_SESSION_FIELD_NUM_AVG_VAM ((FIT_SESSION_FIELD_NUM)139)
|
|
#define FIT_SESSION_FIELD_NUM_EVENT ((FIT_SESSION_FIELD_NUM)0)
|
|
#define FIT_SESSION_FIELD_NUM_EVENT_TYPE ((FIT_SESSION_FIELD_NUM)1)
|
|
#define FIT_SESSION_FIELD_NUM_SPORT ((FIT_SESSION_FIELD_NUM)5)
|
|
#define FIT_SESSION_FIELD_NUM_SUB_SPORT ((FIT_SESSION_FIELD_NUM)6)
|
|
#define FIT_SESSION_FIELD_NUM_AVG_HEART_RATE ((FIT_SESSION_FIELD_NUM)16)
|
|
#define FIT_SESSION_FIELD_NUM_MAX_HEART_RATE ((FIT_SESSION_FIELD_NUM)17)
|
|
#define FIT_SESSION_FIELD_NUM_AVG_CADENCE ((FIT_SESSION_FIELD_NUM)18)
|
|
#define FIT_SESSION_FIELD_NUM_MAX_CADENCE ((FIT_SESSION_FIELD_NUM)19)
|
|
#define FIT_SESSION_FIELD_NUM_TOTAL_TRAINING_EFFECT ((FIT_SESSION_FIELD_NUM)24)
|
|
#define FIT_SESSION_FIELD_NUM_EVENT_GROUP ((FIT_SESSION_FIELD_NUM)27)
|
|
#define FIT_SESSION_FIELD_NUM_TRIGGER ((FIT_SESSION_FIELD_NUM)28)
|
|
#define FIT_SESSION_FIELD_NUM_SWIM_STROKE ((FIT_SESSION_FIELD_NUM)43)
|
|
#define FIT_SESSION_FIELD_NUM_POOL_LENGTH_UNIT ((FIT_SESSION_FIELD_NUM)46)
|
|
#define FIT_SESSION_FIELD_NUM_GPS_ACCURACY ((FIT_SESSION_FIELD_NUM)51)
|
|
#define FIT_SESSION_FIELD_NUM_AVG_TEMPERATURE ((FIT_SESSION_FIELD_NUM)57)
|
|
#define FIT_SESSION_FIELD_NUM_MAX_TEMPERATURE ((FIT_SESSION_FIELD_NUM)58)
|
|
#define FIT_SESSION_FIELD_NUM_MIN_HEART_RATE ((FIT_SESSION_FIELD_NUM)64)
|
|
#define FIT_SESSION_FIELD_NUM_OPPONENT_NAME ((FIT_SESSION_FIELD_NUM)84)
|
|
#define FIT_SESSION_FIELD_NUM_AVG_FRACTIONAL_CADENCE ((FIT_SESSION_FIELD_NUM)92)
|
|
#define FIT_SESSION_FIELD_NUM_MAX_FRACTIONAL_CADENCE ((FIT_SESSION_FIELD_NUM)93)
|
|
#define FIT_SESSION_FIELD_NUM_TOTAL_FRACTIONAL_CYCLES ((FIT_SESSION_FIELD_NUM)94)
|
|
#define FIT_SESSION_FIELD_NUM_SPORT_INDEX ((FIT_SESSION_FIELD_NUM)111)
|
|
#define FIT_SESSION_FIELD_NUM_TOTAL_ANAEROBIC_TRAINING_EFFECT ((FIT_SESSION_FIELD_NUM)137)
|
|
#define FIT_SESSION_FIELD_NUM_MIN_TEMPERATURE ((FIT_SESSION_FIELD_NUM)150)
|
|
|
|
typedef enum
|
|
{
|
|
FIT_SESSION_MESG_TIMESTAMP,
|
|
FIT_SESSION_MESG_START_TIME,
|
|
FIT_SESSION_MESG_START_POSITION_LAT,
|
|
FIT_SESSION_MESG_START_POSITION_LONG,
|
|
FIT_SESSION_MESG_TOTAL_ELAPSED_TIME,
|
|
FIT_SESSION_MESG_TOTAL_TIMER_TIME,
|
|
FIT_SESSION_MESG_TOTAL_DISTANCE,
|
|
FIT_SESSION_MESG_TOTAL_CYCLES,
|
|
FIT_SESSION_MESG_NEC_LAT,
|
|
FIT_SESSION_MESG_NEC_LONG,
|
|
FIT_SESSION_MESG_SWC_LAT,
|
|
FIT_SESSION_MESG_SWC_LONG,
|
|
FIT_SESSION_MESG_END_POSITION_LAT,
|
|
FIT_SESSION_MESG_END_POSITION_LONG,
|
|
FIT_SESSION_MESG_AVG_STROKE_COUNT,
|
|
FIT_SESSION_MESG_TOTAL_WORK,
|
|
FIT_SESSION_MESG_TOTAL_MOVING_TIME,
|
|
FIT_SESSION_MESG_TIME_IN_HR_ZONE,
|
|
FIT_SESSION_MESG_TIME_IN_SPEED_ZONE,
|
|
FIT_SESSION_MESG_TIME_IN_CADENCE_ZONE,
|
|
FIT_SESSION_MESG_TIME_IN_POWER_ZONE,
|
|
FIT_SESSION_MESG_AVG_LAP_TIME,
|
|
FIT_SESSION_MESG_SPORT_PROFILE_NAME,
|
|
FIT_SESSION_MESG_ENHANCED_AVG_SPEED,
|
|
FIT_SESSION_MESG_ENHANCED_MAX_SPEED,
|
|
FIT_SESSION_MESG_ENHANCED_AVG_ALTITUDE,
|
|
FIT_SESSION_MESG_ENHANCED_MIN_ALTITUDE,
|
|
FIT_SESSION_MESG_ENHANCED_MAX_ALTITUDE,
|
|
FIT_SESSION_MESG_MESSAGE_INDEX,
|
|
FIT_SESSION_MESG_TOTAL_CALORIES,
|
|
FIT_SESSION_MESG_TOTAL_FAT_CALORIES,
|
|
FIT_SESSION_MESG_AVG_SPEED,
|
|
FIT_SESSION_MESG_MAX_SPEED,
|
|
FIT_SESSION_MESG_AVG_POWER,
|
|
FIT_SESSION_MESG_MAX_POWER,
|
|
FIT_SESSION_MESG_TOTAL_ASCENT,
|
|
FIT_SESSION_MESG_TOTAL_DESCENT,
|
|
FIT_SESSION_MESG_FIRST_LAP_INDEX,
|
|
FIT_SESSION_MESG_NUM_LAPS,
|
|
FIT_SESSION_MESG_NUM_LENGTHS,
|
|
FIT_SESSION_MESG_NORMALIZED_POWER,
|
|
FIT_SESSION_MESG_TRAINING_STRESS_SCORE,
|
|
FIT_SESSION_MESG_INTENSITY_FACTOR,
|
|
FIT_SESSION_MESG_LEFT_RIGHT_BALANCE,
|
|
FIT_SESSION_MESG_AVG_STROKE_DISTANCE,
|
|
FIT_SESSION_MESG_POOL_LENGTH,
|
|
FIT_SESSION_MESG_THRESHOLD_POWER,
|
|
FIT_SESSION_MESG_NUM_ACTIVE_LENGTHS,
|
|
FIT_SESSION_MESG_AVG_ALTITUDE,
|
|
FIT_SESSION_MESG_MAX_ALTITUDE,
|
|
FIT_SESSION_MESG_AVG_GRADE,
|
|
FIT_SESSION_MESG_AVG_POS_GRADE,
|
|
FIT_SESSION_MESG_AVG_NEG_GRADE,
|
|
FIT_SESSION_MESG_MAX_POS_GRADE,
|
|
FIT_SESSION_MESG_MAX_NEG_GRADE,
|
|
FIT_SESSION_MESG_AVG_POS_VERTICAL_SPEED,
|
|
FIT_SESSION_MESG_AVG_NEG_VERTICAL_SPEED,
|
|
FIT_SESSION_MESG_MAX_POS_VERTICAL_SPEED,
|
|
FIT_SESSION_MESG_MAX_NEG_VERTICAL_SPEED,
|
|
FIT_SESSION_MESG_BEST_LAP_INDEX,
|
|
FIT_SESSION_MESG_MIN_ALTITUDE,
|
|
FIT_SESSION_MESG_PLAYER_SCORE,
|
|
FIT_SESSION_MESG_OPPONENT_SCORE,
|
|
FIT_SESSION_MESG_STROKE_COUNT,
|
|
FIT_SESSION_MESG_ZONE_COUNT,
|
|
FIT_SESSION_MESG_MAX_BALL_SPEED,
|
|
FIT_SESSION_MESG_AVG_BALL_SPEED,
|
|
FIT_SESSION_MESG_AVG_VERTICAL_OSCILLATION,
|
|
FIT_SESSION_MESG_AVG_STANCE_TIME_PERCENT,
|
|
FIT_SESSION_MESG_AVG_STANCE_TIME,
|
|
FIT_SESSION_MESG_AVG_VAM,
|
|
FIT_SESSION_MESG_EVENT,
|
|
FIT_SESSION_MESG_EVENT_TYPE,
|
|
FIT_SESSION_MESG_SPORT,
|
|
FIT_SESSION_MESG_SUB_SPORT,
|
|
FIT_SESSION_MESG_AVG_HEART_RATE,
|
|
FIT_SESSION_MESG_MAX_HEART_RATE,
|
|
FIT_SESSION_MESG_AVG_CADENCE,
|
|
FIT_SESSION_MESG_MAX_CADENCE,
|
|
FIT_SESSION_MESG_TOTAL_TRAINING_EFFECT,
|
|
FIT_SESSION_MESG_EVENT_GROUP,
|
|
FIT_SESSION_MESG_TRIGGER,
|
|
FIT_SESSION_MESG_SWIM_STROKE,
|
|
FIT_SESSION_MESG_POOL_LENGTH_UNIT,
|
|
FIT_SESSION_MESG_GPS_ACCURACY,
|
|
FIT_SESSION_MESG_AVG_TEMPERATURE,
|
|
FIT_SESSION_MESG_MAX_TEMPERATURE,
|
|
FIT_SESSION_MESG_MIN_HEART_RATE,
|
|
FIT_SESSION_MESG_OPPONENT_NAME,
|
|
FIT_SESSION_MESG_AVG_FRACTIONAL_CADENCE,
|
|
FIT_SESSION_MESG_MAX_FRACTIONAL_CADENCE,
|
|
FIT_SESSION_MESG_TOTAL_FRACTIONAL_CYCLES,
|
|
FIT_SESSION_MESG_SPORT_INDEX,
|
|
FIT_SESSION_MESG_TOTAL_ANAEROBIC_TRAINING_EFFECT,
|
|
FIT_SESSION_MESG_MIN_TEMPERATURE,
|
|
FIT_SESSION_MESG_FIELDS
|
|
} FIT_SESSION_MESG_FIELD;
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT8 reserved_1;
|
|
FIT_UINT8 arch;
|
|
FIT_MESG_NUM global_mesg_num;
|
|
FIT_UINT8 num_fields;
|
|
FIT_UINT8 fields[FIT_SESSION_MESG_FIELDS * FIT_FIELD_DEF_SIZE];
|
|
} FIT_SESSION_MESG_DEF;
|
|
|
|
// lap message
|
|
|
|
#define FIT_LAP_MESG_SIZE 190
|
|
#define FIT_LAP_MESG_DEF_SIZE 257
|
|
#define FIT_LAP_MESG_TIME_IN_HR_ZONE_COUNT 1
|
|
#define FIT_LAP_MESG_TIME_IN_SPEED_ZONE_COUNT 1
|
|
#define FIT_LAP_MESG_TIME_IN_CADENCE_ZONE_COUNT 1
|
|
#define FIT_LAP_MESG_TIME_IN_POWER_ZONE_COUNT 1
|
|
#define FIT_LAP_MESG_STROKE_COUNT_COUNT 1
|
|
#define FIT_LAP_MESG_ZONE_COUNT_COUNT 1
|
|
#define FIT_LAP_MESG_AVG_TOTAL_HEMOGLOBIN_CONC_COUNT 1
|
|
#define FIT_LAP_MESG_MIN_TOTAL_HEMOGLOBIN_CONC_COUNT 1
|
|
#define FIT_LAP_MESG_MAX_TOTAL_HEMOGLOBIN_CONC_COUNT 1
|
|
#define FIT_LAP_MESG_AVG_SATURATED_HEMOGLOBIN_PERCENT_COUNT 1
|
|
#define FIT_LAP_MESG_MIN_SATURATED_HEMOGLOBIN_PERCENT_COUNT 1
|
|
#define FIT_LAP_MESG_MAX_SATURATED_HEMOGLOBIN_PERCENT_COUNT 1
|
|
|
|
typedef struct
|
|
{
|
|
FIT_DATE_TIME timestamp; // 1 * s + 0, Lap end time.
|
|
FIT_DATE_TIME start_time; //
|
|
FIT_SINT32 start_position_lat; // 1 * semicircles + 0,
|
|
FIT_SINT32 start_position_long; // 1 * semicircles + 0,
|
|
FIT_SINT32 end_position_lat; // 1 * semicircles + 0,
|
|
FIT_SINT32 end_position_long; // 1 * semicircles + 0,
|
|
FIT_UINT32 total_elapsed_time; // 1000 * s + 0, Time (includes pauses)
|
|
FIT_UINT32 total_timer_time; // 1000 * s + 0, Timer Time (excludes pauses)
|
|
FIT_UINT32 total_distance; // 100 * m + 0,
|
|
FIT_UINT32 total_cycles; // 1 * cycles + 0,
|
|
FIT_UINT32 total_work; // 1 * J + 0,
|
|
FIT_UINT32 total_moving_time; // 1000 * s + 0,
|
|
FIT_UINT32 time_in_hr_zone[FIT_LAP_MESG_TIME_IN_HR_ZONE_COUNT]; // 1000 * s + 0,
|
|
FIT_UINT32 time_in_speed_zone[FIT_LAP_MESG_TIME_IN_SPEED_ZONE_COUNT]; // 1000 * s + 0,
|
|
FIT_UINT32 time_in_cadence_zone[FIT_LAP_MESG_TIME_IN_CADENCE_ZONE_COUNT]; // 1000 * s + 0,
|
|
FIT_UINT32 time_in_power_zone[FIT_LAP_MESG_TIME_IN_POWER_ZONE_COUNT]; // 1000 * s + 0,
|
|
FIT_UINT32 enhanced_avg_speed; // 1000 * m/s + 0,
|
|
FIT_UINT32 enhanced_max_speed; // 1000 * m/s + 0,
|
|
FIT_UINT32 enhanced_avg_altitude; // 5 * m + 500,
|
|
FIT_UINT32 enhanced_min_altitude; // 5 * m + 500,
|
|
FIT_UINT32 enhanced_max_altitude; // 5 * m + 500,
|
|
FIT_MESSAGE_INDEX message_index; //
|
|
FIT_UINT16 total_calories; // 1 * kcal + 0,
|
|
FIT_UINT16 total_fat_calories; // 1 * kcal + 0, If New Leaf
|
|
FIT_UINT16 avg_speed; // 1000 * m/s + 0,
|
|
FIT_UINT16 max_speed; // 1000 * m/s + 0,
|
|
FIT_UINT16 avg_power; // 1 * watts + 0, total_power / total_timer_time if non_zero_avg_power otherwise total_power / total_elapsed_time
|
|
FIT_UINT16 max_power; // 1 * watts + 0,
|
|
FIT_UINT16 total_ascent; // 1 * m + 0,
|
|
FIT_UINT16 total_descent; // 1 * m + 0,
|
|
FIT_UINT16 num_lengths; // 1 * lengths + 0, # of lengths of swim pool
|
|
FIT_UINT16 normalized_power; // 1 * watts + 0,
|
|
FIT_LEFT_RIGHT_BALANCE_100 left_right_balance; //
|
|
FIT_UINT16 first_length_index; //
|
|
FIT_UINT16 avg_stroke_distance; // 100 * m + 0,
|
|
FIT_UINT16 num_active_lengths; // 1 * lengths + 0, # of active lengths of swim pool
|
|
FIT_UINT16 avg_altitude; // 5 * m + 500,
|
|
FIT_UINT16 max_altitude; // 5 * m + 500,
|
|
FIT_SINT16 avg_grade; // 100 * % + 0,
|
|
FIT_SINT16 avg_pos_grade; // 100 * % + 0,
|
|
FIT_SINT16 avg_neg_grade; // 100 * % + 0,
|
|
FIT_SINT16 max_pos_grade; // 100 * % + 0,
|
|
FIT_SINT16 max_neg_grade; // 100 * % + 0,
|
|
FIT_SINT16 avg_pos_vertical_speed; // 1000 * m/s + 0,
|
|
FIT_SINT16 avg_neg_vertical_speed; // 1000 * m/s + 0,
|
|
FIT_SINT16 max_pos_vertical_speed; // 1000 * m/s + 0,
|
|
FIT_SINT16 max_neg_vertical_speed; // 1000 * m/s + 0,
|
|
FIT_UINT16 repetition_num; //
|
|
FIT_UINT16 min_altitude; // 5 * m + 500,
|
|
FIT_MESSAGE_INDEX wkt_step_index; //
|
|
FIT_UINT16 opponent_score; //
|
|
FIT_UINT16 stroke_count[FIT_LAP_MESG_STROKE_COUNT_COUNT]; // 1 * counts + 0, stroke_type enum used as the index
|
|
FIT_UINT16 zone_count[FIT_LAP_MESG_ZONE_COUNT_COUNT]; // 1 * counts + 0, zone number used as the index
|
|
FIT_UINT16 avg_vertical_oscillation; // 10 * mm + 0,
|
|
FIT_UINT16 avg_stance_time_percent; // 100 * percent + 0,
|
|
FIT_UINT16 avg_stance_time; // 10 * ms + 0,
|
|
FIT_UINT16 player_score; //
|
|
FIT_UINT16 avg_total_hemoglobin_conc[FIT_LAP_MESG_AVG_TOTAL_HEMOGLOBIN_CONC_COUNT]; // 100 * g/dL + 0, Avg saturated and unsaturated hemoglobin
|
|
FIT_UINT16 min_total_hemoglobin_conc[FIT_LAP_MESG_MIN_TOTAL_HEMOGLOBIN_CONC_COUNT]; // 100 * g/dL + 0, Min saturated and unsaturated hemoglobin
|
|
FIT_UINT16 max_total_hemoglobin_conc[FIT_LAP_MESG_MAX_TOTAL_HEMOGLOBIN_CONC_COUNT]; // 100 * g/dL + 0, Max saturated and unsaturated hemoglobin
|
|
FIT_UINT16 avg_saturated_hemoglobin_percent[FIT_LAP_MESG_AVG_SATURATED_HEMOGLOBIN_PERCENT_COUNT]; // 10 * % + 0, Avg percentage of hemoglobin saturated with oxygen
|
|
FIT_UINT16 min_saturated_hemoglobin_percent[FIT_LAP_MESG_MIN_SATURATED_HEMOGLOBIN_PERCENT_COUNT]; // 10 * % + 0, Min percentage of hemoglobin saturated with oxygen
|
|
FIT_UINT16 max_saturated_hemoglobin_percent[FIT_LAP_MESG_MAX_SATURATED_HEMOGLOBIN_PERCENT_COUNT]; // 10 * % + 0, Max percentage of hemoglobin saturated with oxygen
|
|
FIT_UINT16 avg_vam; // 1000 * m/s + 0,
|
|
FIT_EVENT event; //
|
|
FIT_EVENT_TYPE event_type; //
|
|
FIT_UINT8 avg_heart_rate; // 1 * bpm + 0,
|
|
FIT_UINT8 max_heart_rate; // 1 * bpm + 0,
|
|
FIT_UINT8 avg_cadence; // 1 * rpm + 0, total_cycles / total_timer_time if non_zero_avg_cadence otherwise total_cycles / total_elapsed_time
|
|
FIT_UINT8 max_cadence; // 1 * rpm + 0,
|
|
FIT_INTENSITY intensity; //
|
|
FIT_LAP_TRIGGER lap_trigger; //
|
|
FIT_SPORT sport; //
|
|
FIT_UINT8 event_group; //
|
|
FIT_SWIM_STROKE swim_stroke; //
|
|
FIT_SUB_SPORT sub_sport; //
|
|
FIT_UINT8 gps_accuracy; // 1 * m + 0,
|
|
FIT_SINT8 avg_temperature; // 1 * C + 0,
|
|
FIT_SINT8 max_temperature; // 1 * C + 0,
|
|
FIT_UINT8 min_heart_rate; // 1 * bpm + 0,
|
|
FIT_UINT8 avg_fractional_cadence; // 128 * rpm + 0, fractional part of the avg_cadence
|
|
FIT_UINT8 max_fractional_cadence; // 128 * rpm + 0, fractional part of the max_cadence
|
|
FIT_UINT8 total_fractional_cycles; // 128 * cycles + 0, fractional part of the total_cycles
|
|
FIT_SINT8 min_temperature; // 1 * C + 0,
|
|
} FIT_LAP_MESG;
|
|
|
|
typedef FIT_UINT8 FIT_LAP_FIELD_NUM;
|
|
|
|
#define FIT_LAP_FIELD_NUM_TIMESTAMP ((FIT_LAP_FIELD_NUM)253)
|
|
#define FIT_LAP_FIELD_NUM_START_TIME ((FIT_LAP_FIELD_NUM)2)
|
|
#define FIT_LAP_FIELD_NUM_START_POSITION_LAT ((FIT_LAP_FIELD_NUM)3)
|
|
#define FIT_LAP_FIELD_NUM_START_POSITION_LONG ((FIT_LAP_FIELD_NUM)4)
|
|
#define FIT_LAP_FIELD_NUM_END_POSITION_LAT ((FIT_LAP_FIELD_NUM)5)
|
|
#define FIT_LAP_FIELD_NUM_END_POSITION_LONG ((FIT_LAP_FIELD_NUM)6)
|
|
#define FIT_LAP_FIELD_NUM_TOTAL_ELAPSED_TIME ((FIT_LAP_FIELD_NUM)7)
|
|
#define FIT_LAP_FIELD_NUM_TOTAL_TIMER_TIME ((FIT_LAP_FIELD_NUM)8)
|
|
#define FIT_LAP_FIELD_NUM_TOTAL_DISTANCE ((FIT_LAP_FIELD_NUM)9)
|
|
#define FIT_LAP_FIELD_NUM_TOTAL_CYCLES ((FIT_LAP_FIELD_NUM)10)
|
|
#define FIT_LAP_FIELD_NUM_TOTAL_WORK ((FIT_LAP_FIELD_NUM)41)
|
|
#define FIT_LAP_FIELD_NUM_TOTAL_MOVING_TIME ((FIT_LAP_FIELD_NUM)52)
|
|
#define FIT_LAP_FIELD_NUM_TIME_IN_HR_ZONE ((FIT_LAP_FIELD_NUM)57)
|
|
#define FIT_LAP_FIELD_NUM_TIME_IN_SPEED_ZONE ((FIT_LAP_FIELD_NUM)58)
|
|
#define FIT_LAP_FIELD_NUM_TIME_IN_CADENCE_ZONE ((FIT_LAP_FIELD_NUM)59)
|
|
#define FIT_LAP_FIELD_NUM_TIME_IN_POWER_ZONE ((FIT_LAP_FIELD_NUM)60)
|
|
#define FIT_LAP_FIELD_NUM_ENHANCED_AVG_SPEED ((FIT_LAP_FIELD_NUM)110)
|
|
#define FIT_LAP_FIELD_NUM_ENHANCED_MAX_SPEED ((FIT_LAP_FIELD_NUM)111)
|
|
#define FIT_LAP_FIELD_NUM_ENHANCED_AVG_ALTITUDE ((FIT_LAP_FIELD_NUM)112)
|
|
#define FIT_LAP_FIELD_NUM_ENHANCED_MIN_ALTITUDE ((FIT_LAP_FIELD_NUM)113)
|
|
#define FIT_LAP_FIELD_NUM_ENHANCED_MAX_ALTITUDE ((FIT_LAP_FIELD_NUM)114)
|
|
#define FIT_LAP_FIELD_NUM_MESSAGE_INDEX ((FIT_LAP_FIELD_NUM)254)
|
|
#define FIT_LAP_FIELD_NUM_TOTAL_CALORIES ((FIT_LAP_FIELD_NUM)11)
|
|
#define FIT_LAP_FIELD_NUM_TOTAL_FAT_CALORIES ((FIT_LAP_FIELD_NUM)12)
|
|
#define FIT_LAP_FIELD_NUM_AVG_SPEED ((FIT_LAP_FIELD_NUM)13)
|
|
#define FIT_LAP_FIELD_NUM_MAX_SPEED ((FIT_LAP_FIELD_NUM)14)
|
|
#define FIT_LAP_FIELD_NUM_AVG_POWER ((FIT_LAP_FIELD_NUM)19)
|
|
#define FIT_LAP_FIELD_NUM_MAX_POWER ((FIT_LAP_FIELD_NUM)20)
|
|
#define FIT_LAP_FIELD_NUM_TOTAL_ASCENT ((FIT_LAP_FIELD_NUM)21)
|
|
#define FIT_LAP_FIELD_NUM_TOTAL_DESCENT ((FIT_LAP_FIELD_NUM)22)
|
|
#define FIT_LAP_FIELD_NUM_NUM_LENGTHS ((FIT_LAP_FIELD_NUM)32)
|
|
#define FIT_LAP_FIELD_NUM_NORMALIZED_POWER ((FIT_LAP_FIELD_NUM)33)
|
|
#define FIT_LAP_FIELD_NUM_LEFT_RIGHT_BALANCE ((FIT_LAP_FIELD_NUM)34)
|
|
#define FIT_LAP_FIELD_NUM_FIRST_LENGTH_INDEX ((FIT_LAP_FIELD_NUM)35)
|
|
#define FIT_LAP_FIELD_NUM_AVG_STROKE_DISTANCE ((FIT_LAP_FIELD_NUM)37)
|
|
#define FIT_LAP_FIELD_NUM_NUM_ACTIVE_LENGTHS ((FIT_LAP_FIELD_NUM)40)
|
|
#define FIT_LAP_FIELD_NUM_AVG_ALTITUDE ((FIT_LAP_FIELD_NUM)42)
|
|
#define FIT_LAP_FIELD_NUM_MAX_ALTITUDE ((FIT_LAP_FIELD_NUM)43)
|
|
#define FIT_LAP_FIELD_NUM_AVG_GRADE ((FIT_LAP_FIELD_NUM)45)
|
|
#define FIT_LAP_FIELD_NUM_AVG_POS_GRADE ((FIT_LAP_FIELD_NUM)46)
|
|
#define FIT_LAP_FIELD_NUM_AVG_NEG_GRADE ((FIT_LAP_FIELD_NUM)47)
|
|
#define FIT_LAP_FIELD_NUM_MAX_POS_GRADE ((FIT_LAP_FIELD_NUM)48)
|
|
#define FIT_LAP_FIELD_NUM_MAX_NEG_GRADE ((FIT_LAP_FIELD_NUM)49)
|
|
#define FIT_LAP_FIELD_NUM_AVG_POS_VERTICAL_SPEED ((FIT_LAP_FIELD_NUM)53)
|
|
#define FIT_LAP_FIELD_NUM_AVG_NEG_VERTICAL_SPEED ((FIT_LAP_FIELD_NUM)54)
|
|
#define FIT_LAP_FIELD_NUM_MAX_POS_VERTICAL_SPEED ((FIT_LAP_FIELD_NUM)55)
|
|
#define FIT_LAP_FIELD_NUM_MAX_NEG_VERTICAL_SPEED ((FIT_LAP_FIELD_NUM)56)
|
|
#define FIT_LAP_FIELD_NUM_REPETITION_NUM ((FIT_LAP_FIELD_NUM)61)
|
|
#define FIT_LAP_FIELD_NUM_MIN_ALTITUDE ((FIT_LAP_FIELD_NUM)62)
|
|
#define FIT_LAP_FIELD_NUM_WKT_STEP_INDEX ((FIT_LAP_FIELD_NUM)71)
|
|
#define FIT_LAP_FIELD_NUM_OPPONENT_SCORE ((FIT_LAP_FIELD_NUM)74)
|
|
#define FIT_LAP_FIELD_NUM_STROKE_COUNT ((FIT_LAP_FIELD_NUM)75)
|
|
#define FIT_LAP_FIELD_NUM_ZONE_COUNT ((FIT_LAP_FIELD_NUM)76)
|
|
#define FIT_LAP_FIELD_NUM_AVG_VERTICAL_OSCILLATION ((FIT_LAP_FIELD_NUM)77)
|
|
#define FIT_LAP_FIELD_NUM_AVG_STANCE_TIME_PERCENT ((FIT_LAP_FIELD_NUM)78)
|
|
#define FIT_LAP_FIELD_NUM_AVG_STANCE_TIME ((FIT_LAP_FIELD_NUM)79)
|
|
#define FIT_LAP_FIELD_NUM_PLAYER_SCORE ((FIT_LAP_FIELD_NUM)83)
|
|
#define FIT_LAP_FIELD_NUM_AVG_TOTAL_HEMOGLOBIN_CONC ((FIT_LAP_FIELD_NUM)84)
|
|
#define FIT_LAP_FIELD_NUM_MIN_TOTAL_HEMOGLOBIN_CONC ((FIT_LAP_FIELD_NUM)85)
|
|
#define FIT_LAP_FIELD_NUM_MAX_TOTAL_HEMOGLOBIN_CONC ((FIT_LAP_FIELD_NUM)86)
|
|
#define FIT_LAP_FIELD_NUM_AVG_SATURATED_HEMOGLOBIN_PERCENT ((FIT_LAP_FIELD_NUM)87)
|
|
#define FIT_LAP_FIELD_NUM_MIN_SATURATED_HEMOGLOBIN_PERCENT ((FIT_LAP_FIELD_NUM)88)
|
|
#define FIT_LAP_FIELD_NUM_MAX_SATURATED_HEMOGLOBIN_PERCENT ((FIT_LAP_FIELD_NUM)89)
|
|
#define FIT_LAP_FIELD_NUM_AVG_VAM ((FIT_LAP_FIELD_NUM)121)
|
|
#define FIT_LAP_FIELD_NUM_EVENT ((FIT_LAP_FIELD_NUM)0)
|
|
#define FIT_LAP_FIELD_NUM_EVENT_TYPE ((FIT_LAP_FIELD_NUM)1)
|
|
#define FIT_LAP_FIELD_NUM_AVG_HEART_RATE ((FIT_LAP_FIELD_NUM)15)
|
|
#define FIT_LAP_FIELD_NUM_MAX_HEART_RATE ((FIT_LAP_FIELD_NUM)16)
|
|
#define FIT_LAP_FIELD_NUM_AVG_CADENCE ((FIT_LAP_FIELD_NUM)17)
|
|
#define FIT_LAP_FIELD_NUM_MAX_CADENCE ((FIT_LAP_FIELD_NUM)18)
|
|
#define FIT_LAP_FIELD_NUM_INTENSITY ((FIT_LAP_FIELD_NUM)23)
|
|
#define FIT_LAP_FIELD_NUM_LAP_TRIGGER ((FIT_LAP_FIELD_NUM)24)
|
|
#define FIT_LAP_FIELD_NUM_SPORT ((FIT_LAP_FIELD_NUM)25)
|
|
#define FIT_LAP_FIELD_NUM_EVENT_GROUP ((FIT_LAP_FIELD_NUM)26)
|
|
#define FIT_LAP_FIELD_NUM_SWIM_STROKE ((FIT_LAP_FIELD_NUM)38)
|
|
#define FIT_LAP_FIELD_NUM_SUB_SPORT ((FIT_LAP_FIELD_NUM)39)
|
|
#define FIT_LAP_FIELD_NUM_GPS_ACCURACY ((FIT_LAP_FIELD_NUM)44)
|
|
#define FIT_LAP_FIELD_NUM_AVG_TEMPERATURE ((FIT_LAP_FIELD_NUM)50)
|
|
#define FIT_LAP_FIELD_NUM_MAX_TEMPERATURE ((FIT_LAP_FIELD_NUM)51)
|
|
#define FIT_LAP_FIELD_NUM_MIN_HEART_RATE ((FIT_LAP_FIELD_NUM)63)
|
|
#define FIT_LAP_FIELD_NUM_AVG_FRACTIONAL_CADENCE ((FIT_LAP_FIELD_NUM)80)
|
|
#define FIT_LAP_FIELD_NUM_MAX_FRACTIONAL_CADENCE ((FIT_LAP_FIELD_NUM)81)
|
|
#define FIT_LAP_FIELD_NUM_TOTAL_FRACTIONAL_CYCLES ((FIT_LAP_FIELD_NUM)82)
|
|
#define FIT_LAP_FIELD_NUM_MIN_TEMPERATURE ((FIT_LAP_FIELD_NUM)124)
|
|
|
|
typedef enum
|
|
{
|
|
FIT_LAP_MESG_TIMESTAMP,
|
|
FIT_LAP_MESG_START_TIME,
|
|
FIT_LAP_MESG_START_POSITION_LAT,
|
|
FIT_LAP_MESG_START_POSITION_LONG,
|
|
FIT_LAP_MESG_END_POSITION_LAT,
|
|
FIT_LAP_MESG_END_POSITION_LONG,
|
|
FIT_LAP_MESG_TOTAL_ELAPSED_TIME,
|
|
FIT_LAP_MESG_TOTAL_TIMER_TIME,
|
|
FIT_LAP_MESG_TOTAL_DISTANCE,
|
|
FIT_LAP_MESG_TOTAL_CYCLES,
|
|
FIT_LAP_MESG_TOTAL_WORK,
|
|
FIT_LAP_MESG_TOTAL_MOVING_TIME,
|
|
FIT_LAP_MESG_TIME_IN_HR_ZONE,
|
|
FIT_LAP_MESG_TIME_IN_SPEED_ZONE,
|
|
FIT_LAP_MESG_TIME_IN_CADENCE_ZONE,
|
|
FIT_LAP_MESG_TIME_IN_POWER_ZONE,
|
|
FIT_LAP_MESG_ENHANCED_AVG_SPEED,
|
|
FIT_LAP_MESG_ENHANCED_MAX_SPEED,
|
|
FIT_LAP_MESG_ENHANCED_AVG_ALTITUDE,
|
|
FIT_LAP_MESG_ENHANCED_MIN_ALTITUDE,
|
|
FIT_LAP_MESG_ENHANCED_MAX_ALTITUDE,
|
|
FIT_LAP_MESG_MESSAGE_INDEX,
|
|
FIT_LAP_MESG_TOTAL_CALORIES,
|
|
FIT_LAP_MESG_TOTAL_FAT_CALORIES,
|
|
FIT_LAP_MESG_AVG_SPEED,
|
|
FIT_LAP_MESG_MAX_SPEED,
|
|
FIT_LAP_MESG_AVG_POWER,
|
|
FIT_LAP_MESG_MAX_POWER,
|
|
FIT_LAP_MESG_TOTAL_ASCENT,
|
|
FIT_LAP_MESG_TOTAL_DESCENT,
|
|
FIT_LAP_MESG_NUM_LENGTHS,
|
|
FIT_LAP_MESG_NORMALIZED_POWER,
|
|
FIT_LAP_MESG_LEFT_RIGHT_BALANCE,
|
|
FIT_LAP_MESG_FIRST_LENGTH_INDEX,
|
|
FIT_LAP_MESG_AVG_STROKE_DISTANCE,
|
|
FIT_LAP_MESG_NUM_ACTIVE_LENGTHS,
|
|
FIT_LAP_MESG_AVG_ALTITUDE,
|
|
FIT_LAP_MESG_MAX_ALTITUDE,
|
|
FIT_LAP_MESG_AVG_GRADE,
|
|
FIT_LAP_MESG_AVG_POS_GRADE,
|
|
FIT_LAP_MESG_AVG_NEG_GRADE,
|
|
FIT_LAP_MESG_MAX_POS_GRADE,
|
|
FIT_LAP_MESG_MAX_NEG_GRADE,
|
|
FIT_LAP_MESG_AVG_POS_VERTICAL_SPEED,
|
|
FIT_LAP_MESG_AVG_NEG_VERTICAL_SPEED,
|
|
FIT_LAP_MESG_MAX_POS_VERTICAL_SPEED,
|
|
FIT_LAP_MESG_MAX_NEG_VERTICAL_SPEED,
|
|
FIT_LAP_MESG_REPETITION_NUM,
|
|
FIT_LAP_MESG_MIN_ALTITUDE,
|
|
FIT_LAP_MESG_WKT_STEP_INDEX,
|
|
FIT_LAP_MESG_OPPONENT_SCORE,
|
|
FIT_LAP_MESG_STROKE_COUNT,
|
|
FIT_LAP_MESG_ZONE_COUNT,
|
|
FIT_LAP_MESG_AVG_VERTICAL_OSCILLATION,
|
|
FIT_LAP_MESG_AVG_STANCE_TIME_PERCENT,
|
|
FIT_LAP_MESG_AVG_STANCE_TIME,
|
|
FIT_LAP_MESG_PLAYER_SCORE,
|
|
FIT_LAP_MESG_AVG_TOTAL_HEMOGLOBIN_CONC,
|
|
FIT_LAP_MESG_MIN_TOTAL_HEMOGLOBIN_CONC,
|
|
FIT_LAP_MESG_MAX_TOTAL_HEMOGLOBIN_CONC,
|
|
FIT_LAP_MESG_AVG_SATURATED_HEMOGLOBIN_PERCENT,
|
|
FIT_LAP_MESG_MIN_SATURATED_HEMOGLOBIN_PERCENT,
|
|
FIT_LAP_MESG_MAX_SATURATED_HEMOGLOBIN_PERCENT,
|
|
FIT_LAP_MESG_AVG_VAM,
|
|
FIT_LAP_MESG_EVENT,
|
|
FIT_LAP_MESG_EVENT_TYPE,
|
|
FIT_LAP_MESG_AVG_HEART_RATE,
|
|
FIT_LAP_MESG_MAX_HEART_RATE,
|
|
FIT_LAP_MESG_AVG_CADENCE,
|
|
FIT_LAP_MESG_MAX_CADENCE,
|
|
FIT_LAP_MESG_INTENSITY,
|
|
FIT_LAP_MESG_LAP_TRIGGER,
|
|
FIT_LAP_MESG_SPORT,
|
|
FIT_LAP_MESG_EVENT_GROUP,
|
|
FIT_LAP_MESG_SWIM_STROKE,
|
|
FIT_LAP_MESG_SUB_SPORT,
|
|
FIT_LAP_MESG_GPS_ACCURACY,
|
|
FIT_LAP_MESG_AVG_TEMPERATURE,
|
|
FIT_LAP_MESG_MAX_TEMPERATURE,
|
|
FIT_LAP_MESG_MIN_HEART_RATE,
|
|
FIT_LAP_MESG_AVG_FRACTIONAL_CADENCE,
|
|
FIT_LAP_MESG_MAX_FRACTIONAL_CADENCE,
|
|
FIT_LAP_MESG_TOTAL_FRACTIONAL_CYCLES,
|
|
FIT_LAP_MESG_MIN_TEMPERATURE,
|
|
FIT_LAP_MESG_FIELDS
|
|
} FIT_LAP_MESG_FIELD;
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT8 reserved_1;
|
|
FIT_UINT8 arch;
|
|
FIT_MESG_NUM global_mesg_num;
|
|
FIT_UINT8 num_fields;
|
|
FIT_UINT8 fields[FIT_LAP_MESG_FIELDS * FIT_FIELD_DEF_SIZE];
|
|
} FIT_LAP_MESG_DEF;
|
|
|
|
// length message
|
|
|
|
#define FIT_LENGTH_MESG_SIZE 38
|
|
#define FIT_LENGTH_MESG_DEF_SIZE 59
|
|
#define FIT_LENGTH_MESG_STROKE_COUNT_COUNT 1
|
|
#define FIT_LENGTH_MESG_ZONE_COUNT_COUNT 1
|
|
|
|
typedef struct
|
|
{
|
|
FIT_DATE_TIME timestamp; //
|
|
FIT_DATE_TIME start_time; //
|
|
FIT_UINT32 total_elapsed_time; // 1000 * s + 0,
|
|
FIT_UINT32 total_timer_time; // 1000 * s + 0,
|
|
FIT_MESSAGE_INDEX message_index; //
|
|
FIT_UINT16 total_strokes; // 1 * strokes + 0,
|
|
FIT_UINT16 avg_speed; // 1000 * m/s + 0,
|
|
FIT_UINT16 total_calories; // 1 * kcal + 0,
|
|
FIT_UINT16 player_score; //
|
|
FIT_UINT16 opponent_score; //
|
|
FIT_UINT16 stroke_count[FIT_LENGTH_MESG_STROKE_COUNT_COUNT]; // 1 * counts + 0, stroke_type enum used as the index
|
|
FIT_UINT16 zone_count[FIT_LENGTH_MESG_ZONE_COUNT_COUNT]; // 1 * counts + 0, zone number used as the index
|
|
FIT_EVENT event; //
|
|
FIT_EVENT_TYPE event_type; //
|
|
FIT_SWIM_STROKE swim_stroke; // 1 * swim_stroke + 0,
|
|
FIT_UINT8 avg_swimming_cadence; // 1 * strokes/min + 0,
|
|
FIT_UINT8 event_group; //
|
|
FIT_LENGTH_TYPE length_type; //
|
|
} FIT_LENGTH_MESG;
|
|
|
|
typedef FIT_UINT8 FIT_LENGTH_FIELD_NUM;
|
|
|
|
#define FIT_LENGTH_FIELD_NUM_TIMESTAMP ((FIT_LENGTH_FIELD_NUM)253)
|
|
#define FIT_LENGTH_FIELD_NUM_START_TIME ((FIT_LENGTH_FIELD_NUM)2)
|
|
#define FIT_LENGTH_FIELD_NUM_TOTAL_ELAPSED_TIME ((FIT_LENGTH_FIELD_NUM)3)
|
|
#define FIT_LENGTH_FIELD_NUM_TOTAL_TIMER_TIME ((FIT_LENGTH_FIELD_NUM)4)
|
|
#define FIT_LENGTH_FIELD_NUM_MESSAGE_INDEX ((FIT_LENGTH_FIELD_NUM)254)
|
|
#define FIT_LENGTH_FIELD_NUM_TOTAL_STROKES ((FIT_LENGTH_FIELD_NUM)5)
|
|
#define FIT_LENGTH_FIELD_NUM_AVG_SPEED ((FIT_LENGTH_FIELD_NUM)6)
|
|
#define FIT_LENGTH_FIELD_NUM_TOTAL_CALORIES ((FIT_LENGTH_FIELD_NUM)11)
|
|
#define FIT_LENGTH_FIELD_NUM_PLAYER_SCORE ((FIT_LENGTH_FIELD_NUM)18)
|
|
#define FIT_LENGTH_FIELD_NUM_OPPONENT_SCORE ((FIT_LENGTH_FIELD_NUM)19)
|
|
#define FIT_LENGTH_FIELD_NUM_STROKE_COUNT ((FIT_LENGTH_FIELD_NUM)20)
|
|
#define FIT_LENGTH_FIELD_NUM_ZONE_COUNT ((FIT_LENGTH_FIELD_NUM)21)
|
|
#define FIT_LENGTH_FIELD_NUM_EVENT ((FIT_LENGTH_FIELD_NUM)0)
|
|
#define FIT_LENGTH_FIELD_NUM_EVENT_TYPE ((FIT_LENGTH_FIELD_NUM)1)
|
|
#define FIT_LENGTH_FIELD_NUM_SWIM_STROKE ((FIT_LENGTH_FIELD_NUM)7)
|
|
#define FIT_LENGTH_FIELD_NUM_AVG_SWIMMING_CADENCE ((FIT_LENGTH_FIELD_NUM)9)
|
|
#define FIT_LENGTH_FIELD_NUM_EVENT_GROUP ((FIT_LENGTH_FIELD_NUM)10)
|
|
#define FIT_LENGTH_FIELD_NUM_LENGTH_TYPE ((FIT_LENGTH_FIELD_NUM)12)
|
|
|
|
typedef enum
|
|
{
|
|
FIT_LENGTH_MESG_TIMESTAMP,
|
|
FIT_LENGTH_MESG_START_TIME,
|
|
FIT_LENGTH_MESG_TOTAL_ELAPSED_TIME,
|
|
FIT_LENGTH_MESG_TOTAL_TIMER_TIME,
|
|
FIT_LENGTH_MESG_MESSAGE_INDEX,
|
|
FIT_LENGTH_MESG_TOTAL_STROKES,
|
|
FIT_LENGTH_MESG_AVG_SPEED,
|
|
FIT_LENGTH_MESG_TOTAL_CALORIES,
|
|
FIT_LENGTH_MESG_PLAYER_SCORE,
|
|
FIT_LENGTH_MESG_OPPONENT_SCORE,
|
|
FIT_LENGTH_MESG_STROKE_COUNT,
|
|
FIT_LENGTH_MESG_ZONE_COUNT,
|
|
FIT_LENGTH_MESG_EVENT,
|
|
FIT_LENGTH_MESG_EVENT_TYPE,
|
|
FIT_LENGTH_MESG_SWIM_STROKE,
|
|
FIT_LENGTH_MESG_AVG_SWIMMING_CADENCE,
|
|
FIT_LENGTH_MESG_EVENT_GROUP,
|
|
FIT_LENGTH_MESG_LENGTH_TYPE,
|
|
FIT_LENGTH_MESG_FIELDS
|
|
} FIT_LENGTH_MESG_FIELD;
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT8 reserved_1;
|
|
FIT_UINT8 arch;
|
|
FIT_MESG_NUM global_mesg_num;
|
|
FIT_UINT8 num_fields;
|
|
FIT_UINT8 fields[FIT_LENGTH_MESG_FIELDS * FIT_FIELD_DEF_SIZE];
|
|
} FIT_LENGTH_MESG_DEF;
|
|
|
|
// record message
|
|
|
|
#define FIT_RECORD_MESG_SIZE 99
|
|
#define FIT_RECORD_MESG_DEF_SIZE 149
|
|
#define FIT_RECORD_MESG_COMPRESSED_SPEED_DISTANCE_COUNT 3
|
|
#define FIT_RECORD_MESG_SPEED_1S_COUNT 5
|
|
|
|
typedef struct
|
|
{
|
|
FIT_DATE_TIME timestamp; // 1 * s + 0,
|
|
FIT_SINT32 position_lat; // 1 * semicircles + 0,
|
|
FIT_SINT32 position_long; // 1 * semicircles + 0,
|
|
FIT_UINT32 distance; // 100 * m + 0,
|
|
FIT_SINT32 time_from_course; // 1000 * s + 0,
|
|
FIT_UINT32 total_cycles; // 1 * cycles + 0,
|
|
FIT_UINT32 accumulated_power; // 1 * watts + 0,
|
|
FIT_UINT32 enhanced_speed; // 1000 * m/s + 0,
|
|
FIT_UINT32 enhanced_altitude; // 5 * m + 500,
|
|
FIT_UINT16 altitude; // 5 * m + 500,
|
|
FIT_UINT16 speed; // 1000 * m/s + 0,
|
|
FIT_UINT16 power; // 1 * watts + 0,
|
|
FIT_SINT16 grade; // 100 * % + 0,
|
|
FIT_UINT16 compressed_accumulated_power; // 1 * watts + 0,
|
|
FIT_SINT16 vertical_speed; // 1000 * m/s + 0,
|
|
FIT_UINT16 calories; // 1 * kcal + 0,
|
|
FIT_UINT16 vertical_oscillation; // 10 * mm + 0,
|
|
FIT_UINT16 stance_time_percent; // 100 * percent + 0,
|
|
FIT_UINT16 stance_time; // 10 * ms + 0,
|
|
FIT_UINT16 ball_speed; // 100 * m/s + 0,
|
|
FIT_UINT16 cadence256; // 256 * rpm + 0, Log cadence and fractional cadence for backwards compatability
|
|
FIT_UINT16 total_hemoglobin_conc; // 100 * g/dL + 0, Total saturated and unsaturated hemoglobin
|
|
FIT_UINT16 total_hemoglobin_conc_min; // 100 * g/dL + 0, Min saturated and unsaturated hemoglobin
|
|
FIT_UINT16 total_hemoglobin_conc_max; // 100 * g/dL + 0, Max saturated and unsaturated hemoglobin
|
|
FIT_UINT16 saturated_hemoglobin_percent; // 10 * % + 0, Percentage of hemoglobin saturated with oxygen
|
|
FIT_UINT16 saturated_hemoglobin_percent_min; // 10 * % + 0, Min percentage of hemoglobin saturated with oxygen
|
|
FIT_UINT16 saturated_hemoglobin_percent_max; // 10 * % + 0, Max percentage of hemoglobin saturated with oxygen
|
|
FIT_UINT8 heart_rate; // 1 * bpm + 0,
|
|
FIT_UINT8 cadence; // 1 * rpm + 0,
|
|
FIT_BYTE compressed_speed_distance[FIT_RECORD_MESG_COMPRESSED_SPEED_DISTANCE_COUNT]; //
|
|
FIT_UINT8 resistance; // Relative. 0 is none 254 is Max.
|
|
FIT_UINT8 cycle_length; // 100 * m + 0,
|
|
FIT_SINT8 temperature; // 1 * C + 0,
|
|
FIT_UINT8 speed_1s[FIT_RECORD_MESG_SPEED_1S_COUNT]; // 16 * m/s + 0, Speed at 1s intervals. Timestamp field indicates time of last array element.
|
|
FIT_UINT8 cycles; // 1 * cycles + 0,
|
|
FIT_LEFT_RIGHT_BALANCE left_right_balance; //
|
|
FIT_UINT8 gps_accuracy; // 1 * m + 0,
|
|
FIT_ACTIVITY_TYPE activity_type; //
|
|
FIT_UINT8 left_torque_effectiveness; // 2 * percent + 0,
|
|
FIT_UINT8 right_torque_effectiveness; // 2 * percent + 0,
|
|
FIT_UINT8 left_pedal_smoothness; // 2 * percent + 0,
|
|
FIT_UINT8 right_pedal_smoothness; // 2 * percent + 0,
|
|
FIT_UINT8 combined_pedal_smoothness; // 2 * percent + 0,
|
|
FIT_UINT8 time128; // 128 * s + 0,
|
|
FIT_STROKE_TYPE stroke_type; //
|
|
FIT_UINT8 zone; //
|
|
FIT_UINT8 fractional_cadence; // 128 * rpm + 0,
|
|
FIT_DEVICE_INDEX device_index; //
|
|
} FIT_RECORD_MESG;
|
|
|
|
typedef FIT_UINT8 FIT_RECORD_FIELD_NUM;
|
|
|
|
#define FIT_RECORD_FIELD_NUM_TIMESTAMP ((FIT_RECORD_FIELD_NUM)253)
|
|
#define FIT_RECORD_FIELD_NUM_POSITION_LAT ((FIT_RECORD_FIELD_NUM)0)
|
|
#define FIT_RECORD_FIELD_NUM_POSITION_LONG ((FIT_RECORD_FIELD_NUM)1)
|
|
#define FIT_RECORD_FIELD_NUM_DISTANCE ((FIT_RECORD_FIELD_NUM)5)
|
|
#define FIT_RECORD_FIELD_NUM_TIME_FROM_COURSE ((FIT_RECORD_FIELD_NUM)11)
|
|
#define FIT_RECORD_FIELD_NUM_TOTAL_CYCLES ((FIT_RECORD_FIELD_NUM)19)
|
|
#define FIT_RECORD_FIELD_NUM_ACCUMULATED_POWER ((FIT_RECORD_FIELD_NUM)29)
|
|
#define FIT_RECORD_FIELD_NUM_ENHANCED_SPEED ((FIT_RECORD_FIELD_NUM)73)
|
|
#define FIT_RECORD_FIELD_NUM_ENHANCED_ALTITUDE ((FIT_RECORD_FIELD_NUM)78)
|
|
#define FIT_RECORD_FIELD_NUM_ALTITUDE ((FIT_RECORD_FIELD_NUM)2)
|
|
#define FIT_RECORD_FIELD_NUM_SPEED ((FIT_RECORD_FIELD_NUM)6)
|
|
#define FIT_RECORD_FIELD_NUM_POWER ((FIT_RECORD_FIELD_NUM)7)
|
|
#define FIT_RECORD_FIELD_NUM_GRADE ((FIT_RECORD_FIELD_NUM)9)
|
|
#define FIT_RECORD_FIELD_NUM_COMPRESSED_ACCUMULATED_POWER ((FIT_RECORD_FIELD_NUM)28)
|
|
#define FIT_RECORD_FIELD_NUM_VERTICAL_SPEED ((FIT_RECORD_FIELD_NUM)32)
|
|
#define FIT_RECORD_FIELD_NUM_CALORIES ((FIT_RECORD_FIELD_NUM)33)
|
|
#define FIT_RECORD_FIELD_NUM_VERTICAL_OSCILLATION ((FIT_RECORD_FIELD_NUM)39)
|
|
#define FIT_RECORD_FIELD_NUM_STANCE_TIME_PERCENT ((FIT_RECORD_FIELD_NUM)40)
|
|
#define FIT_RECORD_FIELD_NUM_STANCE_TIME ((FIT_RECORD_FIELD_NUM)41)
|
|
#define FIT_RECORD_FIELD_NUM_BALL_SPEED ((FIT_RECORD_FIELD_NUM)51)
|
|
#define FIT_RECORD_FIELD_NUM_CADENCE256 ((FIT_RECORD_FIELD_NUM)52)
|
|
#define FIT_RECORD_FIELD_NUM_TOTAL_HEMOGLOBIN_CONC ((FIT_RECORD_FIELD_NUM)54)
|
|
#define FIT_RECORD_FIELD_NUM_TOTAL_HEMOGLOBIN_CONC_MIN ((FIT_RECORD_FIELD_NUM)55)
|
|
#define FIT_RECORD_FIELD_NUM_TOTAL_HEMOGLOBIN_CONC_MAX ((FIT_RECORD_FIELD_NUM)56)
|
|
#define FIT_RECORD_FIELD_NUM_SATURATED_HEMOGLOBIN_PERCENT ((FIT_RECORD_FIELD_NUM)57)
|
|
#define FIT_RECORD_FIELD_NUM_SATURATED_HEMOGLOBIN_PERCENT_MIN ((FIT_RECORD_FIELD_NUM)58)
|
|
#define FIT_RECORD_FIELD_NUM_SATURATED_HEMOGLOBIN_PERCENT_MAX ((FIT_RECORD_FIELD_NUM)59)
|
|
#define FIT_RECORD_FIELD_NUM_HEART_RATE ((FIT_RECORD_FIELD_NUM)3)
|
|
#define FIT_RECORD_FIELD_NUM_CADENCE ((FIT_RECORD_FIELD_NUM)4)
|
|
#define FIT_RECORD_FIELD_NUM_COMPRESSED_SPEED_DISTANCE ((FIT_RECORD_FIELD_NUM)8)
|
|
#define FIT_RECORD_FIELD_NUM_RESISTANCE ((FIT_RECORD_FIELD_NUM)10)
|
|
#define FIT_RECORD_FIELD_NUM_CYCLE_LENGTH ((FIT_RECORD_FIELD_NUM)12)
|
|
#define FIT_RECORD_FIELD_NUM_TEMPERATURE ((FIT_RECORD_FIELD_NUM)13)
|
|
#define FIT_RECORD_FIELD_NUM_SPEED_1S ((FIT_RECORD_FIELD_NUM)17)
|
|
#define FIT_RECORD_FIELD_NUM_CYCLES ((FIT_RECORD_FIELD_NUM)18)
|
|
#define FIT_RECORD_FIELD_NUM_LEFT_RIGHT_BALANCE ((FIT_RECORD_FIELD_NUM)30)
|
|
#define FIT_RECORD_FIELD_NUM_GPS_ACCURACY ((FIT_RECORD_FIELD_NUM)31)
|
|
#define FIT_RECORD_FIELD_NUM_ACTIVITY_TYPE ((FIT_RECORD_FIELD_NUM)42)
|
|
#define FIT_RECORD_FIELD_NUM_LEFT_TORQUE_EFFECTIVENESS ((FIT_RECORD_FIELD_NUM)43)
|
|
#define FIT_RECORD_FIELD_NUM_RIGHT_TORQUE_EFFECTIVENESS ((FIT_RECORD_FIELD_NUM)44)
|
|
#define FIT_RECORD_FIELD_NUM_LEFT_PEDAL_SMOOTHNESS ((FIT_RECORD_FIELD_NUM)45)
|
|
#define FIT_RECORD_FIELD_NUM_RIGHT_PEDAL_SMOOTHNESS ((FIT_RECORD_FIELD_NUM)46)
|
|
#define FIT_RECORD_FIELD_NUM_COMBINED_PEDAL_SMOOTHNESS ((FIT_RECORD_FIELD_NUM)47)
|
|
#define FIT_RECORD_FIELD_NUM_TIME128 ((FIT_RECORD_FIELD_NUM)48)
|
|
#define FIT_RECORD_FIELD_NUM_STROKE_TYPE ((FIT_RECORD_FIELD_NUM)49)
|
|
#define FIT_RECORD_FIELD_NUM_ZONE ((FIT_RECORD_FIELD_NUM)50)
|
|
#define FIT_RECORD_FIELD_NUM_FRACTIONAL_CADENCE ((FIT_RECORD_FIELD_NUM)53)
|
|
#define FIT_RECORD_FIELD_NUM_DEVICE_INDEX ((FIT_RECORD_FIELD_NUM)62)
|
|
|
|
typedef enum
|
|
{
|
|
FIT_RECORD_MESG_TIMESTAMP,
|
|
FIT_RECORD_MESG_POSITION_LAT,
|
|
FIT_RECORD_MESG_POSITION_LONG,
|
|
FIT_RECORD_MESG_DISTANCE,
|
|
FIT_RECORD_MESG_TIME_FROM_COURSE,
|
|
FIT_RECORD_MESG_TOTAL_CYCLES,
|
|
FIT_RECORD_MESG_ACCUMULATED_POWER,
|
|
FIT_RECORD_MESG_ENHANCED_SPEED,
|
|
FIT_RECORD_MESG_ENHANCED_ALTITUDE,
|
|
FIT_RECORD_MESG_ALTITUDE,
|
|
FIT_RECORD_MESG_SPEED,
|
|
FIT_RECORD_MESG_POWER,
|
|
FIT_RECORD_MESG_GRADE,
|
|
FIT_RECORD_MESG_COMPRESSED_ACCUMULATED_POWER,
|
|
FIT_RECORD_MESG_VERTICAL_SPEED,
|
|
FIT_RECORD_MESG_CALORIES,
|
|
FIT_RECORD_MESG_VERTICAL_OSCILLATION,
|
|
FIT_RECORD_MESG_STANCE_TIME_PERCENT,
|
|
FIT_RECORD_MESG_STANCE_TIME,
|
|
FIT_RECORD_MESG_BALL_SPEED,
|
|
FIT_RECORD_MESG_CADENCE256,
|
|
FIT_RECORD_MESG_TOTAL_HEMOGLOBIN_CONC,
|
|
FIT_RECORD_MESG_TOTAL_HEMOGLOBIN_CONC_MIN,
|
|
FIT_RECORD_MESG_TOTAL_HEMOGLOBIN_CONC_MAX,
|
|
FIT_RECORD_MESG_SATURATED_HEMOGLOBIN_PERCENT,
|
|
FIT_RECORD_MESG_SATURATED_HEMOGLOBIN_PERCENT_MIN,
|
|
FIT_RECORD_MESG_SATURATED_HEMOGLOBIN_PERCENT_MAX,
|
|
FIT_RECORD_MESG_HEART_RATE,
|
|
FIT_RECORD_MESG_CADENCE,
|
|
FIT_RECORD_MESG_COMPRESSED_SPEED_DISTANCE,
|
|
FIT_RECORD_MESG_RESISTANCE,
|
|
FIT_RECORD_MESG_CYCLE_LENGTH,
|
|
FIT_RECORD_MESG_TEMPERATURE,
|
|
FIT_RECORD_MESG_SPEED_1S,
|
|
FIT_RECORD_MESG_CYCLES,
|
|
FIT_RECORD_MESG_LEFT_RIGHT_BALANCE,
|
|
FIT_RECORD_MESG_GPS_ACCURACY,
|
|
FIT_RECORD_MESG_ACTIVITY_TYPE,
|
|
FIT_RECORD_MESG_LEFT_TORQUE_EFFECTIVENESS,
|
|
FIT_RECORD_MESG_RIGHT_TORQUE_EFFECTIVENESS,
|
|
FIT_RECORD_MESG_LEFT_PEDAL_SMOOTHNESS,
|
|
FIT_RECORD_MESG_RIGHT_PEDAL_SMOOTHNESS,
|
|
FIT_RECORD_MESG_COMBINED_PEDAL_SMOOTHNESS,
|
|
FIT_RECORD_MESG_TIME128,
|
|
FIT_RECORD_MESG_STROKE_TYPE,
|
|
FIT_RECORD_MESG_ZONE,
|
|
FIT_RECORD_MESG_FRACTIONAL_CADENCE,
|
|
FIT_RECORD_MESG_DEVICE_INDEX,
|
|
FIT_RECORD_MESG_FIELDS
|
|
} FIT_RECORD_MESG_FIELD;
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT8 reserved_1;
|
|
FIT_UINT8 arch;
|
|
FIT_MESG_NUM global_mesg_num;
|
|
FIT_UINT8 num_fields;
|
|
FIT_UINT8 fields[FIT_RECORD_MESG_FIELDS * FIT_FIELD_DEF_SIZE];
|
|
} FIT_RECORD_MESG_DEF;
|
|
|
|
// event message
|
|
|
|
#define FIT_EVENT_MESG_SIZE 23
|
|
#define FIT_EVENT_MESG_DEF_SIZE 47
|
|
|
|
typedef struct
|
|
{
|
|
FIT_DATE_TIME timestamp; // 1 * s + 0,
|
|
FIT_UINT32 data; //
|
|
FIT_UINT16 data16; //
|
|
FIT_UINT16 score; // Do not populate directly. Autogenerated by decoder for sport_point subfield components
|
|
FIT_UINT16 opponent_score; // Do not populate directly. Autogenerated by decoder for sport_point subfield components
|
|
FIT_EVENT event; //
|
|
FIT_EVENT_TYPE event_type; //
|
|
FIT_UINT8 event_group; //
|
|
FIT_UINT8Z front_gear_num; // Do not populate directly. Autogenerated by decoder for gear_change subfield components. Front gear number. 1 is innermost.
|
|
FIT_UINT8Z front_gear; // Do not populate directly. Autogenerated by decoder for gear_change subfield components. Number of front teeth.
|
|
FIT_UINT8Z rear_gear_num; // Do not populate directly. Autogenerated by decoder for gear_change subfield components. Rear gear number. 1 is innermost.
|
|
FIT_UINT8Z rear_gear; // Do not populate directly. Autogenerated by decoder for gear_change subfield components. Number of rear teeth.
|
|
FIT_RADAR_THREAT_LEVEL_TYPE radar_threat_level_max; // Do not populate directly. Autogenerated by decoder for threat_alert subfield components.
|
|
FIT_UINT8 radar_threat_count; // Do not populate directly. Autogenerated by decoder for threat_alert subfield components.
|
|
} FIT_EVENT_MESG;
|
|
|
|
typedef FIT_UINT8 FIT_EVENT_FIELD_NUM;
|
|
|
|
#define FIT_EVENT_FIELD_NUM_TIMESTAMP ((FIT_EVENT_FIELD_NUM)253)
|
|
#define FIT_EVENT_FIELD_NUM_DATA ((FIT_EVENT_FIELD_NUM)3)
|
|
#define FIT_EVENT_FIELD_NUM_DATA16 ((FIT_EVENT_FIELD_NUM)2)
|
|
#define FIT_EVENT_FIELD_NUM_SCORE ((FIT_EVENT_FIELD_NUM)7)
|
|
#define FIT_EVENT_FIELD_NUM_OPPONENT_SCORE ((FIT_EVENT_FIELD_NUM)8)
|
|
#define FIT_EVENT_FIELD_NUM_EVENT ((FIT_EVENT_FIELD_NUM)0)
|
|
#define FIT_EVENT_FIELD_NUM_EVENT_TYPE ((FIT_EVENT_FIELD_NUM)1)
|
|
#define FIT_EVENT_FIELD_NUM_EVENT_GROUP ((FIT_EVENT_FIELD_NUM)4)
|
|
#define FIT_EVENT_FIELD_NUM_FRONT_GEAR_NUM ((FIT_EVENT_FIELD_NUM)9)
|
|
#define FIT_EVENT_FIELD_NUM_FRONT_GEAR ((FIT_EVENT_FIELD_NUM)10)
|
|
#define FIT_EVENT_FIELD_NUM_REAR_GEAR_NUM ((FIT_EVENT_FIELD_NUM)11)
|
|
#define FIT_EVENT_FIELD_NUM_REAR_GEAR ((FIT_EVENT_FIELD_NUM)12)
|
|
#define FIT_EVENT_FIELD_NUM_RADAR_THREAT_LEVEL_MAX ((FIT_EVENT_FIELD_NUM)21)
|
|
#define FIT_EVENT_FIELD_NUM_RADAR_THREAT_COUNT ((FIT_EVENT_FIELD_NUM)22)
|
|
|
|
typedef enum
|
|
{
|
|
FIT_EVENT_MESG_TIMESTAMP,
|
|
FIT_EVENT_MESG_DATA,
|
|
FIT_EVENT_MESG_DATA16,
|
|
FIT_EVENT_MESG_SCORE,
|
|
FIT_EVENT_MESG_OPPONENT_SCORE,
|
|
FIT_EVENT_MESG_EVENT,
|
|
FIT_EVENT_MESG_EVENT_TYPE,
|
|
FIT_EVENT_MESG_EVENT_GROUP,
|
|
FIT_EVENT_MESG_FRONT_GEAR_NUM,
|
|
FIT_EVENT_MESG_FRONT_GEAR,
|
|
FIT_EVENT_MESG_REAR_GEAR_NUM,
|
|
FIT_EVENT_MESG_REAR_GEAR,
|
|
FIT_EVENT_MESG_RADAR_THREAT_LEVEL_MAX,
|
|
FIT_EVENT_MESG_RADAR_THREAT_COUNT,
|
|
FIT_EVENT_MESG_FIELDS
|
|
} FIT_EVENT_MESG_FIELD;
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT8 reserved_1;
|
|
FIT_UINT8 arch;
|
|
FIT_MESG_NUM global_mesg_num;
|
|
FIT_UINT8 num_fields;
|
|
FIT_UINT8 fields[FIT_EVENT_MESG_FIELDS * FIT_FIELD_DEF_SIZE];
|
|
} FIT_EVENT_MESG_DEF;
|
|
|
|
// device_info message
|
|
|
|
#define FIT_DEVICE_INFO_MESG_SIZE 51
|
|
#define FIT_DEVICE_INFO_MESG_DEF_SIZE 59
|
|
#define FIT_DEVICE_INFO_MESG_PRODUCT_NAME_COUNT 20
|
|
#define FIT_DEVICE_INFO_MESG_DESCRIPTOR_COUNT 1
|
|
|
|
typedef struct
|
|
{
|
|
FIT_DATE_TIME timestamp; // 1 * s + 0,
|
|
FIT_UINT32Z serial_number; //
|
|
FIT_UINT32 cum_operating_time; // 1 * s + 0, Reset by new battery or charge.
|
|
FIT_STRING product_name[FIT_DEVICE_INFO_MESG_PRODUCT_NAME_COUNT]; // Optional free form string to indicate the devices name or model
|
|
FIT_MANUFACTURER manufacturer; //
|
|
FIT_UINT16 product; //
|
|
FIT_UINT16 software_version; //
|
|
FIT_UINT16 battery_voltage; // 256 * V + 0,
|
|
FIT_UINT16Z ant_device_number; //
|
|
FIT_DEVICE_INDEX device_index; //
|
|
FIT_UINT8 device_type; //
|
|
FIT_UINT8 hardware_version; //
|
|
FIT_BATTERY_STATUS battery_status; //
|
|
FIT_BODY_LOCATION sensor_position; // Indicates the location of the sensor
|
|
FIT_STRING descriptor[FIT_DEVICE_INFO_MESG_DESCRIPTOR_COUNT]; // Used to describe the sensor or location
|
|
FIT_UINT8Z ant_transmission_type; //
|
|
FIT_ANT_NETWORK ant_network; //
|
|
FIT_SOURCE_TYPE source_type; //
|
|
} FIT_DEVICE_INFO_MESG;
|
|
|
|
typedef FIT_UINT8 FIT_DEVICE_INFO_FIELD_NUM;
|
|
|
|
#define FIT_DEVICE_INFO_FIELD_NUM_TIMESTAMP ((FIT_DEVICE_INFO_FIELD_NUM)253)
|
|
#define FIT_DEVICE_INFO_FIELD_NUM_SERIAL_NUMBER ((FIT_DEVICE_INFO_FIELD_NUM)3)
|
|
#define FIT_DEVICE_INFO_FIELD_NUM_CUM_OPERATING_TIME ((FIT_DEVICE_INFO_FIELD_NUM)7)
|
|
#define FIT_DEVICE_INFO_FIELD_NUM_PRODUCT_NAME ((FIT_DEVICE_INFO_FIELD_NUM)27)
|
|
#define FIT_DEVICE_INFO_FIELD_NUM_MANUFACTURER ((FIT_DEVICE_INFO_FIELD_NUM)2)
|
|
#define FIT_DEVICE_INFO_FIELD_NUM_PRODUCT ((FIT_DEVICE_INFO_FIELD_NUM)4)
|
|
#define FIT_DEVICE_INFO_FIELD_NUM_SOFTWARE_VERSION ((FIT_DEVICE_INFO_FIELD_NUM)5)
|
|
#define FIT_DEVICE_INFO_FIELD_NUM_BATTERY_VOLTAGE ((FIT_DEVICE_INFO_FIELD_NUM)10)
|
|
#define FIT_DEVICE_INFO_FIELD_NUM_ANT_DEVICE_NUMBER ((FIT_DEVICE_INFO_FIELD_NUM)21)
|
|
#define FIT_DEVICE_INFO_FIELD_NUM_DEVICE_INDEX ((FIT_DEVICE_INFO_FIELD_NUM)0)
|
|
#define FIT_DEVICE_INFO_FIELD_NUM_DEVICE_TYPE ((FIT_DEVICE_INFO_FIELD_NUM)1)
|
|
#define FIT_DEVICE_INFO_FIELD_NUM_HARDWARE_VERSION ((FIT_DEVICE_INFO_FIELD_NUM)6)
|
|
#define FIT_DEVICE_INFO_FIELD_NUM_BATTERY_STATUS ((FIT_DEVICE_INFO_FIELD_NUM)11)
|
|
#define FIT_DEVICE_INFO_FIELD_NUM_SENSOR_POSITION ((FIT_DEVICE_INFO_FIELD_NUM)18)
|
|
#define FIT_DEVICE_INFO_FIELD_NUM_DESCRIPTOR ((FIT_DEVICE_INFO_FIELD_NUM)19)
|
|
#define FIT_DEVICE_INFO_FIELD_NUM_ANT_TRANSMISSION_TYPE ((FIT_DEVICE_INFO_FIELD_NUM)20)
|
|
#define FIT_DEVICE_INFO_FIELD_NUM_ANT_NETWORK ((FIT_DEVICE_INFO_FIELD_NUM)22)
|
|
#define FIT_DEVICE_INFO_FIELD_NUM_SOURCE_TYPE ((FIT_DEVICE_INFO_FIELD_NUM)25)
|
|
|
|
typedef enum
|
|
{
|
|
FIT_DEVICE_INFO_MESG_TIMESTAMP,
|
|
FIT_DEVICE_INFO_MESG_SERIAL_NUMBER,
|
|
FIT_DEVICE_INFO_MESG_CUM_OPERATING_TIME,
|
|
FIT_DEVICE_INFO_MESG_PRODUCT_NAME,
|
|
FIT_DEVICE_INFO_MESG_MANUFACTURER,
|
|
FIT_DEVICE_INFO_MESG_PRODUCT,
|
|
FIT_DEVICE_INFO_MESG_SOFTWARE_VERSION,
|
|
FIT_DEVICE_INFO_MESG_BATTERY_VOLTAGE,
|
|
FIT_DEVICE_INFO_MESG_ANT_DEVICE_NUMBER,
|
|
FIT_DEVICE_INFO_MESG_DEVICE_INDEX,
|
|
FIT_DEVICE_INFO_MESG_DEVICE_TYPE,
|
|
FIT_DEVICE_INFO_MESG_HARDWARE_VERSION,
|
|
FIT_DEVICE_INFO_MESG_BATTERY_STATUS,
|
|
FIT_DEVICE_INFO_MESG_SENSOR_POSITION,
|
|
FIT_DEVICE_INFO_MESG_DESCRIPTOR,
|
|
FIT_DEVICE_INFO_MESG_ANT_TRANSMISSION_TYPE,
|
|
FIT_DEVICE_INFO_MESG_ANT_NETWORK,
|
|
FIT_DEVICE_INFO_MESG_SOURCE_TYPE,
|
|
FIT_DEVICE_INFO_MESG_FIELDS
|
|
} FIT_DEVICE_INFO_MESG_FIELD;
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT8 reserved_1;
|
|
FIT_UINT8 arch;
|
|
FIT_MESG_NUM global_mesg_num;
|
|
FIT_UINT8 num_fields;
|
|
FIT_UINT8 fields[FIT_DEVICE_INFO_MESG_FIELDS * FIT_FIELD_DEF_SIZE];
|
|
} FIT_DEVICE_INFO_MESG_DEF;
|
|
|
|
// device_aux_battery_info message
|
|
|
|
#define FIT_DEVICE_AUX_BATTERY_INFO_MESG_SIZE 9
|
|
#define FIT_DEVICE_AUX_BATTERY_INFO_MESG_DEF_SIZE 20
|
|
|
|
typedef struct
|
|
{
|
|
FIT_DATE_TIME timestamp; //
|
|
FIT_UINT16 battery_voltage; // 256 * V + 0,
|
|
FIT_DEVICE_INDEX device_index; //
|
|
FIT_BATTERY_STATUS battery_status; //
|
|
FIT_UINT8 battery_identifier; //
|
|
} FIT_DEVICE_AUX_BATTERY_INFO_MESG;
|
|
|
|
typedef FIT_UINT8 FIT_DEVICE_AUX_BATTERY_INFO_FIELD_NUM;
|
|
|
|
#define FIT_DEVICE_AUX_BATTERY_INFO_FIELD_NUM_TIMESTAMP ((FIT_DEVICE_AUX_BATTERY_INFO_FIELD_NUM)253)
|
|
#define FIT_DEVICE_AUX_BATTERY_INFO_FIELD_NUM_BATTERY_VOLTAGE ((FIT_DEVICE_AUX_BATTERY_INFO_FIELD_NUM)1)
|
|
#define FIT_DEVICE_AUX_BATTERY_INFO_FIELD_NUM_DEVICE_INDEX ((FIT_DEVICE_AUX_BATTERY_INFO_FIELD_NUM)0)
|
|
#define FIT_DEVICE_AUX_BATTERY_INFO_FIELD_NUM_BATTERY_STATUS ((FIT_DEVICE_AUX_BATTERY_INFO_FIELD_NUM)2)
|
|
#define FIT_DEVICE_AUX_BATTERY_INFO_FIELD_NUM_BATTERY_IDENTIFIER ((FIT_DEVICE_AUX_BATTERY_INFO_FIELD_NUM)3)
|
|
|
|
typedef enum
|
|
{
|
|
FIT_DEVICE_AUX_BATTERY_INFO_MESG_TIMESTAMP,
|
|
FIT_DEVICE_AUX_BATTERY_INFO_MESG_BATTERY_VOLTAGE,
|
|
FIT_DEVICE_AUX_BATTERY_INFO_MESG_DEVICE_INDEX,
|
|
FIT_DEVICE_AUX_BATTERY_INFO_MESG_BATTERY_STATUS,
|
|
FIT_DEVICE_AUX_BATTERY_INFO_MESG_BATTERY_IDENTIFIER,
|
|
FIT_DEVICE_AUX_BATTERY_INFO_MESG_FIELDS
|
|
} FIT_DEVICE_AUX_BATTERY_INFO_MESG_FIELD;
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT8 reserved_1;
|
|
FIT_UINT8 arch;
|
|
FIT_MESG_NUM global_mesg_num;
|
|
FIT_UINT8 num_fields;
|
|
FIT_UINT8 fields[FIT_DEVICE_AUX_BATTERY_INFO_MESG_FIELDS * FIT_FIELD_DEF_SIZE];
|
|
} FIT_DEVICE_AUX_BATTERY_INFO_MESG_DEF;
|
|
|
|
// training_file message
|
|
|
|
#define FIT_TRAINING_FILE_MESG_SIZE 17
|
|
#define FIT_TRAINING_FILE_MESG_DEF_SIZE 23
|
|
|
|
typedef struct
|
|
{
|
|
FIT_DATE_TIME timestamp; //
|
|
FIT_UINT32Z serial_number; //
|
|
FIT_DATE_TIME time_created; //
|
|
FIT_MANUFACTURER manufacturer; //
|
|
FIT_UINT16 product; //
|
|
FIT_FILE type; //
|
|
} FIT_TRAINING_FILE_MESG;
|
|
|
|
typedef FIT_UINT8 FIT_TRAINING_FILE_FIELD_NUM;
|
|
|
|
#define FIT_TRAINING_FILE_FIELD_NUM_TIMESTAMP ((FIT_TRAINING_FILE_FIELD_NUM)253)
|
|
#define FIT_TRAINING_FILE_FIELD_NUM_SERIAL_NUMBER ((FIT_TRAINING_FILE_FIELD_NUM)3)
|
|
#define FIT_TRAINING_FILE_FIELD_NUM_TIME_CREATED ((FIT_TRAINING_FILE_FIELD_NUM)4)
|
|
#define FIT_TRAINING_FILE_FIELD_NUM_MANUFACTURER ((FIT_TRAINING_FILE_FIELD_NUM)1)
|
|
#define FIT_TRAINING_FILE_FIELD_NUM_PRODUCT ((FIT_TRAINING_FILE_FIELD_NUM)2)
|
|
#define FIT_TRAINING_FILE_FIELD_NUM_TYPE ((FIT_TRAINING_FILE_FIELD_NUM)0)
|
|
|
|
typedef enum
|
|
{
|
|
FIT_TRAINING_FILE_MESG_TIMESTAMP,
|
|
FIT_TRAINING_FILE_MESG_SERIAL_NUMBER,
|
|
FIT_TRAINING_FILE_MESG_TIME_CREATED,
|
|
FIT_TRAINING_FILE_MESG_MANUFACTURER,
|
|
FIT_TRAINING_FILE_MESG_PRODUCT,
|
|
FIT_TRAINING_FILE_MESG_TYPE,
|
|
FIT_TRAINING_FILE_MESG_FIELDS
|
|
} FIT_TRAINING_FILE_MESG_FIELD;
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT8 reserved_1;
|
|
FIT_UINT8 arch;
|
|
FIT_MESG_NUM global_mesg_num;
|
|
FIT_UINT8 num_fields;
|
|
FIT_UINT8 fields[FIT_TRAINING_FILE_MESG_FIELDS * FIT_FIELD_DEF_SIZE];
|
|
} FIT_TRAINING_FILE_MESG_DEF;
|
|
|
|
// weather_conditions message
|
|
|
|
#define FIT_WEATHER_CONDITIONS_MESG_SIZE 93
|
|
#define FIT_WEATHER_CONDITIONS_MESG_DEF_SIZE 53
|
|
#define FIT_WEATHER_CONDITIONS_MESG_LOCATION_COUNT 64
|
|
|
|
typedef struct
|
|
{
|
|
FIT_DATE_TIME timestamp; // time of update for current conditions, else forecast time
|
|
FIT_STRING location[FIT_WEATHER_CONDITIONS_MESG_LOCATION_COUNT]; // string corresponding to GCS response location string
|
|
FIT_DATE_TIME observed_at_time; //
|
|
FIT_SINT32 observed_location_lat; // 1 * semicircles + 0,
|
|
FIT_SINT32 observed_location_long; // 1 * semicircles + 0,
|
|
FIT_UINT16 wind_direction; // 1 * degrees + 0,
|
|
FIT_UINT16 wind_speed; // 1000 * m/s + 0,
|
|
FIT_WEATHER_REPORT weather_report; // Current or forecast
|
|
FIT_SINT8 temperature; // 1 * C + 0,
|
|
FIT_WEATHER_STATUS condition; // Corresponds to GSC Response weatherIcon field
|
|
FIT_UINT8 precipitation_probability; // range 0-100
|
|
FIT_SINT8 temperature_feels_like; // 1 * C + 0, Heat Index if GCS heatIdx above or equal to 90F or wind chill if GCS windChill below or equal to 32F
|
|
FIT_UINT8 relative_humidity; //
|
|
FIT_DAY_OF_WEEK day_of_week; //
|
|
FIT_SINT8 high_temperature; // 1 * C + 0,
|
|
FIT_SINT8 low_temperature; // 1 * C + 0,
|
|
} FIT_WEATHER_CONDITIONS_MESG;
|
|
|
|
typedef FIT_UINT8 FIT_WEATHER_CONDITIONS_FIELD_NUM;
|
|
|
|
#define FIT_WEATHER_CONDITIONS_FIELD_NUM_TIMESTAMP ((FIT_WEATHER_CONDITIONS_FIELD_NUM)253)
|
|
#define FIT_WEATHER_CONDITIONS_FIELD_NUM_LOCATION ((FIT_WEATHER_CONDITIONS_FIELD_NUM)8)
|
|
#define FIT_WEATHER_CONDITIONS_FIELD_NUM_OBSERVED_AT_TIME ((FIT_WEATHER_CONDITIONS_FIELD_NUM)9)
|
|
#define FIT_WEATHER_CONDITIONS_FIELD_NUM_OBSERVED_LOCATION_LAT ((FIT_WEATHER_CONDITIONS_FIELD_NUM)10)
|
|
#define FIT_WEATHER_CONDITIONS_FIELD_NUM_OBSERVED_LOCATION_LONG ((FIT_WEATHER_CONDITIONS_FIELD_NUM)11)
|
|
#define FIT_WEATHER_CONDITIONS_FIELD_NUM_WIND_DIRECTION ((FIT_WEATHER_CONDITIONS_FIELD_NUM)3)
|
|
#define FIT_WEATHER_CONDITIONS_FIELD_NUM_WIND_SPEED ((FIT_WEATHER_CONDITIONS_FIELD_NUM)4)
|
|
#define FIT_WEATHER_CONDITIONS_FIELD_NUM_WEATHER_REPORT ((FIT_WEATHER_CONDITIONS_FIELD_NUM)0)
|
|
#define FIT_WEATHER_CONDITIONS_FIELD_NUM_TEMPERATURE ((FIT_WEATHER_CONDITIONS_FIELD_NUM)1)
|
|
#define FIT_WEATHER_CONDITIONS_FIELD_NUM_CONDITION ((FIT_WEATHER_CONDITIONS_FIELD_NUM)2)
|
|
#define FIT_WEATHER_CONDITIONS_FIELD_NUM_PRECIPITATION_PROBABILITY ((FIT_WEATHER_CONDITIONS_FIELD_NUM)5)
|
|
#define FIT_WEATHER_CONDITIONS_FIELD_NUM_TEMPERATURE_FEELS_LIKE ((FIT_WEATHER_CONDITIONS_FIELD_NUM)6)
|
|
#define FIT_WEATHER_CONDITIONS_FIELD_NUM_RELATIVE_HUMIDITY ((FIT_WEATHER_CONDITIONS_FIELD_NUM)7)
|
|
#define FIT_WEATHER_CONDITIONS_FIELD_NUM_DAY_OF_WEEK ((FIT_WEATHER_CONDITIONS_FIELD_NUM)12)
|
|
#define FIT_WEATHER_CONDITIONS_FIELD_NUM_HIGH_TEMPERATURE ((FIT_WEATHER_CONDITIONS_FIELD_NUM)13)
|
|
#define FIT_WEATHER_CONDITIONS_FIELD_NUM_LOW_TEMPERATURE ((FIT_WEATHER_CONDITIONS_FIELD_NUM)14)
|
|
|
|
typedef enum
|
|
{
|
|
FIT_WEATHER_CONDITIONS_MESG_TIMESTAMP,
|
|
FIT_WEATHER_CONDITIONS_MESG_LOCATION,
|
|
FIT_WEATHER_CONDITIONS_MESG_OBSERVED_AT_TIME,
|
|
FIT_WEATHER_CONDITIONS_MESG_OBSERVED_LOCATION_LAT,
|
|
FIT_WEATHER_CONDITIONS_MESG_OBSERVED_LOCATION_LONG,
|
|
FIT_WEATHER_CONDITIONS_MESG_WIND_DIRECTION,
|
|
FIT_WEATHER_CONDITIONS_MESG_WIND_SPEED,
|
|
FIT_WEATHER_CONDITIONS_MESG_WEATHER_REPORT,
|
|
FIT_WEATHER_CONDITIONS_MESG_TEMPERATURE,
|
|
FIT_WEATHER_CONDITIONS_MESG_CONDITION,
|
|
FIT_WEATHER_CONDITIONS_MESG_PRECIPITATION_PROBABILITY,
|
|
FIT_WEATHER_CONDITIONS_MESG_TEMPERATURE_FEELS_LIKE,
|
|
FIT_WEATHER_CONDITIONS_MESG_RELATIVE_HUMIDITY,
|
|
FIT_WEATHER_CONDITIONS_MESG_DAY_OF_WEEK,
|
|
FIT_WEATHER_CONDITIONS_MESG_HIGH_TEMPERATURE,
|
|
FIT_WEATHER_CONDITIONS_MESG_LOW_TEMPERATURE,
|
|
FIT_WEATHER_CONDITIONS_MESG_FIELDS
|
|
} FIT_WEATHER_CONDITIONS_MESG_FIELD;
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT8 reserved_1;
|
|
FIT_UINT8 arch;
|
|
FIT_MESG_NUM global_mesg_num;
|
|
FIT_UINT8 num_fields;
|
|
FIT_UINT8 fields[FIT_WEATHER_CONDITIONS_MESG_FIELDS * FIT_FIELD_DEF_SIZE];
|
|
} FIT_WEATHER_CONDITIONS_MESG_DEF;
|
|
|
|
// weather_alert message
|
|
|
|
#define FIT_WEATHER_ALERT_MESG_SIZE 26
|
|
#define FIT_WEATHER_ALERT_MESG_DEF_SIZE 23
|
|
#define FIT_WEATHER_ALERT_MESG_REPORT_ID_COUNT 12
|
|
|
|
typedef struct
|
|
{
|
|
FIT_DATE_TIME timestamp; //
|
|
FIT_STRING report_id[FIT_WEATHER_ALERT_MESG_REPORT_ID_COUNT]; // Unique identifier from GCS report ID string, length is 12
|
|
FIT_DATE_TIME issue_time; // Time alert was issued
|
|
FIT_DATE_TIME expire_time; // Time alert expires
|
|
FIT_WEATHER_SEVERITY severity; // Warning, Watch, Advisory, Statement
|
|
FIT_WEATHER_SEVERE_TYPE type; // Tornado, Severe Thunderstorm, etc.
|
|
} FIT_WEATHER_ALERT_MESG;
|
|
|
|
typedef FIT_UINT8 FIT_WEATHER_ALERT_FIELD_NUM;
|
|
|
|
#define FIT_WEATHER_ALERT_FIELD_NUM_TIMESTAMP ((FIT_WEATHER_ALERT_FIELD_NUM)253)
|
|
#define FIT_WEATHER_ALERT_FIELD_NUM_REPORT_ID ((FIT_WEATHER_ALERT_FIELD_NUM)0)
|
|
#define FIT_WEATHER_ALERT_FIELD_NUM_ISSUE_TIME ((FIT_WEATHER_ALERT_FIELD_NUM)1)
|
|
#define FIT_WEATHER_ALERT_FIELD_NUM_EXPIRE_TIME ((FIT_WEATHER_ALERT_FIELD_NUM)2)
|
|
#define FIT_WEATHER_ALERT_FIELD_NUM_SEVERITY ((FIT_WEATHER_ALERT_FIELD_NUM)3)
|
|
#define FIT_WEATHER_ALERT_FIELD_NUM_TYPE ((FIT_WEATHER_ALERT_FIELD_NUM)4)
|
|
|
|
typedef enum
|
|
{
|
|
FIT_WEATHER_ALERT_MESG_TIMESTAMP,
|
|
FIT_WEATHER_ALERT_MESG_REPORT_ID,
|
|
FIT_WEATHER_ALERT_MESG_ISSUE_TIME,
|
|
FIT_WEATHER_ALERT_MESG_EXPIRE_TIME,
|
|
FIT_WEATHER_ALERT_MESG_SEVERITY,
|
|
FIT_WEATHER_ALERT_MESG_TYPE,
|
|
FIT_WEATHER_ALERT_MESG_FIELDS
|
|
} FIT_WEATHER_ALERT_MESG_FIELD;
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT8 reserved_1;
|
|
FIT_UINT8 arch;
|
|
FIT_MESG_NUM global_mesg_num;
|
|
FIT_UINT8 num_fields;
|
|
FIT_UINT8 fields[FIT_WEATHER_ALERT_MESG_FIELDS * FIT_FIELD_DEF_SIZE];
|
|
} FIT_WEATHER_ALERT_MESG_DEF;
|
|
|
|
// nmea_sentence message
|
|
|
|
#define FIT_NMEA_SENTENCE_MESG_SIZE 89
|
|
#define FIT_NMEA_SENTENCE_MESG_DEF_SIZE 14
|
|
#define FIT_NMEA_SENTENCE_MESG_SENTENCE_COUNT 83
|
|
|
|
typedef struct
|
|
{
|
|
FIT_DATE_TIME timestamp; // 1 * s + 0, Timestamp message was output
|
|
FIT_UINT16 timestamp_ms; // 1 * ms + 0, Fractional part of timestamp, added to timestamp
|
|
FIT_STRING sentence[FIT_NMEA_SENTENCE_MESG_SENTENCE_COUNT]; // NMEA sentence
|
|
} FIT_NMEA_SENTENCE_MESG;
|
|
|
|
typedef FIT_UINT8 FIT_NMEA_SENTENCE_FIELD_NUM;
|
|
|
|
#define FIT_NMEA_SENTENCE_FIELD_NUM_TIMESTAMP ((FIT_NMEA_SENTENCE_FIELD_NUM)253)
|
|
#define FIT_NMEA_SENTENCE_FIELD_NUM_TIMESTAMP_MS ((FIT_NMEA_SENTENCE_FIELD_NUM)0)
|
|
#define FIT_NMEA_SENTENCE_FIELD_NUM_SENTENCE ((FIT_NMEA_SENTENCE_FIELD_NUM)1)
|
|
|
|
typedef enum
|
|
{
|
|
FIT_NMEA_SENTENCE_MESG_TIMESTAMP,
|
|
FIT_NMEA_SENTENCE_MESG_TIMESTAMP_MS,
|
|
FIT_NMEA_SENTENCE_MESG_SENTENCE,
|
|
FIT_NMEA_SENTENCE_MESG_FIELDS
|
|
} FIT_NMEA_SENTENCE_MESG_FIELD;
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT8 reserved_1;
|
|
FIT_UINT8 arch;
|
|
FIT_MESG_NUM global_mesg_num;
|
|
FIT_UINT8 num_fields;
|
|
FIT_UINT8 fields[FIT_NMEA_SENTENCE_MESG_FIELDS * FIT_FIELD_DEF_SIZE];
|
|
} FIT_NMEA_SENTENCE_MESG_DEF;
|
|
|
|
// aviation_attitude message
|
|
|
|
#define FIT_AVIATION_ATTITUDE_MESG_SIZE 26
|
|
#define FIT_AVIATION_ATTITUDE_MESG_DEF_SIZE 41
|
|
#define FIT_AVIATION_ATTITUDE_MESG_SYSTEM_TIME_COUNT 1
|
|
#define FIT_AVIATION_ATTITUDE_MESG_PITCH_COUNT 1
|
|
#define FIT_AVIATION_ATTITUDE_MESG_ROLL_COUNT 1
|
|
#define FIT_AVIATION_ATTITUDE_MESG_ACCEL_LATERAL_COUNT 1
|
|
#define FIT_AVIATION_ATTITUDE_MESG_ACCEL_NORMAL_COUNT 1
|
|
#define FIT_AVIATION_ATTITUDE_MESG_TURN_RATE_COUNT 1
|
|
#define FIT_AVIATION_ATTITUDE_MESG_TRACK_COUNT 1
|
|
#define FIT_AVIATION_ATTITUDE_MESG_VALIDITY_COUNT 1
|
|
#define FIT_AVIATION_ATTITUDE_MESG_STAGE_COUNT 1
|
|
#define FIT_AVIATION_ATTITUDE_MESG_ATTITUDE_STAGE_COMPLETE_COUNT 1
|
|
|
|
typedef struct
|
|
{
|
|
FIT_DATE_TIME timestamp; // 1 * s + 0, Timestamp message was output
|
|
FIT_UINT32 system_time[FIT_AVIATION_ATTITUDE_MESG_SYSTEM_TIME_COUNT]; // 1 * ms + 0, System time associated with sample expressed in ms.
|
|
FIT_UINT16 timestamp_ms; // 1 * ms + 0, Fractional part of timestamp, added to timestamp
|
|
FIT_SINT16 pitch[FIT_AVIATION_ATTITUDE_MESG_PITCH_COUNT]; // 10430.38 * radians + 0, Range -PI/2 to +PI/2
|
|
FIT_SINT16 roll[FIT_AVIATION_ATTITUDE_MESG_ROLL_COUNT]; // 10430.38 * radians + 0, Range -PI to +PI
|
|
FIT_SINT16 accel_lateral[FIT_AVIATION_ATTITUDE_MESG_ACCEL_LATERAL_COUNT]; // 100 * m/s^2 + 0, Range -78.4 to +78.4 (-8 Gs to 8 Gs)
|
|
FIT_SINT16 accel_normal[FIT_AVIATION_ATTITUDE_MESG_ACCEL_NORMAL_COUNT]; // 100 * m/s^2 + 0, Range -78.4 to +78.4 (-8 Gs to 8 Gs)
|
|
FIT_SINT16 turn_rate[FIT_AVIATION_ATTITUDE_MESG_TURN_RATE_COUNT]; // 1024 * radians/second + 0, Range -8.727 to +8.727 (-500 degs/sec to +500 degs/sec)
|
|
FIT_UINT16 track[FIT_AVIATION_ATTITUDE_MESG_TRACK_COUNT]; // 10430.38 * radians + 0, Track Angle/Heading Range 0 - 2pi
|
|
FIT_ATTITUDE_VALIDITY validity[FIT_AVIATION_ATTITUDE_MESG_VALIDITY_COUNT]; //
|
|
FIT_ATTITUDE_STAGE stage[FIT_AVIATION_ATTITUDE_MESG_STAGE_COUNT]; //
|
|
FIT_UINT8 attitude_stage_complete[FIT_AVIATION_ATTITUDE_MESG_ATTITUDE_STAGE_COMPLETE_COUNT]; // 1 * % + 0, The percent complete of the current attitude stage. Set to 0 for attitude stages 0, 1 and 2 and to 100 for attitude stage 3 by AHRS modules that do not support it. Range - 100
|
|
} FIT_AVIATION_ATTITUDE_MESG;
|
|
|
|
typedef FIT_UINT8 FIT_AVIATION_ATTITUDE_FIELD_NUM;
|
|
|
|
#define FIT_AVIATION_ATTITUDE_FIELD_NUM_TIMESTAMP ((FIT_AVIATION_ATTITUDE_FIELD_NUM)253)
|
|
#define FIT_AVIATION_ATTITUDE_FIELD_NUM_SYSTEM_TIME ((FIT_AVIATION_ATTITUDE_FIELD_NUM)1)
|
|
#define FIT_AVIATION_ATTITUDE_FIELD_NUM_TIMESTAMP_MS ((FIT_AVIATION_ATTITUDE_FIELD_NUM)0)
|
|
#define FIT_AVIATION_ATTITUDE_FIELD_NUM_PITCH ((FIT_AVIATION_ATTITUDE_FIELD_NUM)2)
|
|
#define FIT_AVIATION_ATTITUDE_FIELD_NUM_ROLL ((FIT_AVIATION_ATTITUDE_FIELD_NUM)3)
|
|
#define FIT_AVIATION_ATTITUDE_FIELD_NUM_ACCEL_LATERAL ((FIT_AVIATION_ATTITUDE_FIELD_NUM)4)
|
|
#define FIT_AVIATION_ATTITUDE_FIELD_NUM_ACCEL_NORMAL ((FIT_AVIATION_ATTITUDE_FIELD_NUM)5)
|
|
#define FIT_AVIATION_ATTITUDE_FIELD_NUM_TURN_RATE ((FIT_AVIATION_ATTITUDE_FIELD_NUM)6)
|
|
#define FIT_AVIATION_ATTITUDE_FIELD_NUM_TRACK ((FIT_AVIATION_ATTITUDE_FIELD_NUM)9)
|
|
#define FIT_AVIATION_ATTITUDE_FIELD_NUM_VALIDITY ((FIT_AVIATION_ATTITUDE_FIELD_NUM)10)
|
|
#define FIT_AVIATION_ATTITUDE_FIELD_NUM_STAGE ((FIT_AVIATION_ATTITUDE_FIELD_NUM)7)
|
|
#define FIT_AVIATION_ATTITUDE_FIELD_NUM_ATTITUDE_STAGE_COMPLETE ((FIT_AVIATION_ATTITUDE_FIELD_NUM)8)
|
|
|
|
typedef enum
|
|
{
|
|
FIT_AVIATION_ATTITUDE_MESG_TIMESTAMP,
|
|
FIT_AVIATION_ATTITUDE_MESG_SYSTEM_TIME,
|
|
FIT_AVIATION_ATTITUDE_MESG_TIMESTAMP_MS,
|
|
FIT_AVIATION_ATTITUDE_MESG_PITCH,
|
|
FIT_AVIATION_ATTITUDE_MESG_ROLL,
|
|
FIT_AVIATION_ATTITUDE_MESG_ACCEL_LATERAL,
|
|
FIT_AVIATION_ATTITUDE_MESG_ACCEL_NORMAL,
|
|
FIT_AVIATION_ATTITUDE_MESG_TURN_RATE,
|
|
FIT_AVIATION_ATTITUDE_MESG_TRACK,
|
|
FIT_AVIATION_ATTITUDE_MESG_VALIDITY,
|
|
FIT_AVIATION_ATTITUDE_MESG_STAGE,
|
|
FIT_AVIATION_ATTITUDE_MESG_ATTITUDE_STAGE_COMPLETE,
|
|
FIT_AVIATION_ATTITUDE_MESG_FIELDS
|
|
} FIT_AVIATION_ATTITUDE_MESG_FIELD;
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT8 reserved_1;
|
|
FIT_UINT8 arch;
|
|
FIT_MESG_NUM global_mesg_num;
|
|
FIT_UINT8 num_fields;
|
|
FIT_UINT8 fields[FIT_AVIATION_ATTITUDE_MESG_FIELDS * FIT_FIELD_DEF_SIZE];
|
|
} FIT_AVIATION_ATTITUDE_MESG_DEF;
|
|
|
|
// video_title message
|
|
|
|
#define FIT_VIDEO_TITLE_MESG_SIZE 84
|
|
#define FIT_VIDEO_TITLE_MESG_DEF_SIZE 14
|
|
#define FIT_VIDEO_TITLE_MESG_TEXT_COUNT 80
|
|
|
|
typedef struct
|
|
{
|
|
FIT_STRING text[FIT_VIDEO_TITLE_MESG_TEXT_COUNT]; //
|
|
FIT_MESSAGE_INDEX message_index; // Long titles will be split into multiple parts
|
|
FIT_UINT16 message_count; // Total number of title parts
|
|
} FIT_VIDEO_TITLE_MESG;
|
|
|
|
typedef FIT_UINT8 FIT_VIDEO_TITLE_FIELD_NUM;
|
|
|
|
#define FIT_VIDEO_TITLE_FIELD_NUM_TEXT ((FIT_VIDEO_TITLE_FIELD_NUM)1)
|
|
#define FIT_VIDEO_TITLE_FIELD_NUM_MESSAGE_INDEX ((FIT_VIDEO_TITLE_FIELD_NUM)254)
|
|
#define FIT_VIDEO_TITLE_FIELD_NUM_MESSAGE_COUNT ((FIT_VIDEO_TITLE_FIELD_NUM)0)
|
|
|
|
typedef enum
|
|
{
|
|
FIT_VIDEO_TITLE_MESG_TEXT,
|
|
FIT_VIDEO_TITLE_MESG_MESSAGE_INDEX,
|
|
FIT_VIDEO_TITLE_MESG_MESSAGE_COUNT,
|
|
FIT_VIDEO_TITLE_MESG_FIELDS
|
|
} FIT_VIDEO_TITLE_MESG_FIELD;
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT8 reserved_1;
|
|
FIT_UINT8 arch;
|
|
FIT_MESG_NUM global_mesg_num;
|
|
FIT_UINT8 num_fields;
|
|
FIT_UINT8 fields[FIT_VIDEO_TITLE_MESG_FIELDS * FIT_FIELD_DEF_SIZE];
|
|
} FIT_VIDEO_TITLE_MESG_DEF;
|
|
|
|
// video_description message
|
|
|
|
#define FIT_VIDEO_DESCRIPTION_MESG_SIZE 254
|
|
#define FIT_VIDEO_DESCRIPTION_MESG_DEF_SIZE 14
|
|
#define FIT_VIDEO_DESCRIPTION_MESG_TEXT_COUNT 250
|
|
|
|
typedef struct
|
|
{
|
|
FIT_MESSAGE_INDEX message_index; // Long descriptions will be split into multiple parts
|
|
FIT_UINT16 message_count; // Total number of description parts
|
|
FIT_STRING text[FIT_VIDEO_DESCRIPTION_MESG_TEXT_COUNT]; //
|
|
} FIT_VIDEO_DESCRIPTION_MESG;
|
|
|
|
typedef FIT_UINT8 FIT_VIDEO_DESCRIPTION_FIELD_NUM;
|
|
|
|
#define FIT_VIDEO_DESCRIPTION_FIELD_NUM_MESSAGE_INDEX ((FIT_VIDEO_DESCRIPTION_FIELD_NUM)254)
|
|
#define FIT_VIDEO_DESCRIPTION_FIELD_NUM_MESSAGE_COUNT ((FIT_VIDEO_DESCRIPTION_FIELD_NUM)0)
|
|
#define FIT_VIDEO_DESCRIPTION_FIELD_NUM_TEXT ((FIT_VIDEO_DESCRIPTION_FIELD_NUM)1)
|
|
|
|
typedef enum
|
|
{
|
|
FIT_VIDEO_DESCRIPTION_MESG_MESSAGE_INDEX,
|
|
FIT_VIDEO_DESCRIPTION_MESG_MESSAGE_COUNT,
|
|
FIT_VIDEO_DESCRIPTION_MESG_TEXT,
|
|
FIT_VIDEO_DESCRIPTION_MESG_FIELDS
|
|
} FIT_VIDEO_DESCRIPTION_MESG_FIELD;
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT8 reserved_1;
|
|
FIT_UINT8 arch;
|
|
FIT_MESG_NUM global_mesg_num;
|
|
FIT_UINT8 num_fields;
|
|
FIT_UINT8 fields[FIT_VIDEO_DESCRIPTION_MESG_FIELDS * FIT_FIELD_DEF_SIZE];
|
|
} FIT_VIDEO_DESCRIPTION_MESG_DEF;
|
|
|
|
// set message
|
|
|
|
#define FIT_SET_MESG_SIZE 2
|
|
#define FIT_SET_MESG_DEF_SIZE 8
|
|
|
|
typedef struct
|
|
{
|
|
FIT_FIT_BASE_UNIT weight_display_unit; //
|
|
} FIT_SET_MESG;
|
|
|
|
typedef FIT_UINT8 FIT_SET_FIELD_NUM;
|
|
|
|
#define FIT_SET_FIELD_NUM_WEIGHT_DISPLAY_UNIT ((FIT_SET_FIELD_NUM)9)
|
|
|
|
typedef enum
|
|
{
|
|
FIT_SET_MESG_WEIGHT_DISPLAY_UNIT,
|
|
FIT_SET_MESG_FIELDS
|
|
} FIT_SET_MESG_FIELD;
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT8 reserved_1;
|
|
FIT_UINT8 arch;
|
|
FIT_MESG_NUM global_mesg_num;
|
|
FIT_UINT8 num_fields;
|
|
FIT_UINT8 fields[FIT_SET_MESG_FIELDS * FIT_FIELD_DEF_SIZE];
|
|
} FIT_SET_MESG_DEF;
|
|
|
|
// field_description message
|
|
|
|
#define FIT_FIELD_DESCRIPTION_MESG_SIZE 90
|
|
#define FIT_FIELD_DESCRIPTION_MESG_DEF_SIZE 35
|
|
#define FIT_FIELD_DESCRIPTION_MESG_FIELD_NAME_COUNT 64
|
|
#define FIT_FIELD_DESCRIPTION_MESG_UNITS_COUNT 16
|
|
|
|
typedef struct
|
|
{
|
|
FIT_STRING field_name[FIT_FIELD_DESCRIPTION_MESG_FIELD_NAME_COUNT]; //
|
|
FIT_STRING units[FIT_FIELD_DESCRIPTION_MESG_UNITS_COUNT]; //
|
|
FIT_FIT_BASE_UNIT fit_base_unit_id; //
|
|
FIT_MESG_NUM native_mesg_num; //
|
|
FIT_UINT8 developer_data_index; //
|
|
FIT_UINT8 field_definition_number; //
|
|
FIT_FIT_BASE_TYPE fit_base_type_id; //
|
|
FIT_UINT8 scale; //
|
|
FIT_SINT8 offset; //
|
|
FIT_UINT8 native_field_num; //
|
|
} FIT_FIELD_DESCRIPTION_MESG;
|
|
|
|
typedef FIT_UINT8 FIT_FIELD_DESCRIPTION_FIELD_NUM;
|
|
|
|
#define FIT_FIELD_DESCRIPTION_FIELD_NUM_FIELD_NAME ((FIT_FIELD_DESCRIPTION_FIELD_NUM)3)
|
|
#define FIT_FIELD_DESCRIPTION_FIELD_NUM_UNITS ((FIT_FIELD_DESCRIPTION_FIELD_NUM)8)
|
|
#define FIT_FIELD_DESCRIPTION_FIELD_NUM_FIT_BASE_UNIT_ID ((FIT_FIELD_DESCRIPTION_FIELD_NUM)13)
|
|
#define FIT_FIELD_DESCRIPTION_FIELD_NUM_NATIVE_MESG_NUM ((FIT_FIELD_DESCRIPTION_FIELD_NUM)14)
|
|
#define FIT_FIELD_DESCRIPTION_FIELD_NUM_DEVELOPER_DATA_INDEX ((FIT_FIELD_DESCRIPTION_FIELD_NUM)0)
|
|
#define FIT_FIELD_DESCRIPTION_FIELD_NUM_FIELD_DEFINITION_NUMBER ((FIT_FIELD_DESCRIPTION_FIELD_NUM)1)
|
|
#define FIT_FIELD_DESCRIPTION_FIELD_NUM_FIT_BASE_TYPE_ID ((FIT_FIELD_DESCRIPTION_FIELD_NUM)2)
|
|
#define FIT_FIELD_DESCRIPTION_FIELD_NUM_SCALE ((FIT_FIELD_DESCRIPTION_FIELD_NUM)6)
|
|
#define FIT_FIELD_DESCRIPTION_FIELD_NUM_OFFSET ((FIT_FIELD_DESCRIPTION_FIELD_NUM)7)
|
|
#define FIT_FIELD_DESCRIPTION_FIELD_NUM_NATIVE_FIELD_NUM ((FIT_FIELD_DESCRIPTION_FIELD_NUM)15)
|
|
|
|
typedef enum
|
|
{
|
|
FIT_FIELD_DESCRIPTION_MESG_FIELD_NAME,
|
|
FIT_FIELD_DESCRIPTION_MESG_UNITS,
|
|
FIT_FIELD_DESCRIPTION_MESG_FIT_BASE_UNIT_ID,
|
|
FIT_FIELD_DESCRIPTION_MESG_NATIVE_MESG_NUM,
|
|
FIT_FIELD_DESCRIPTION_MESG_DEVELOPER_DATA_INDEX,
|
|
FIT_FIELD_DESCRIPTION_MESG_FIELD_DEFINITION_NUMBER,
|
|
FIT_FIELD_DESCRIPTION_MESG_FIT_BASE_TYPE_ID,
|
|
FIT_FIELD_DESCRIPTION_MESG_SCALE,
|
|
FIT_FIELD_DESCRIPTION_MESG_OFFSET,
|
|
FIT_FIELD_DESCRIPTION_MESG_NATIVE_FIELD_NUM,
|
|
FIT_FIELD_DESCRIPTION_MESG_FIELDS
|
|
} FIT_FIELD_DESCRIPTION_MESG_FIELD;
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT8 reserved_1;
|
|
FIT_UINT8 arch;
|
|
FIT_MESG_NUM global_mesg_num;
|
|
FIT_UINT8 num_fields;
|
|
FIT_UINT8 fields[FIT_FIELD_DESCRIPTION_MESG_FIELDS * FIT_FIELD_DEF_SIZE];
|
|
} FIT_FIELD_DESCRIPTION_MESG_DEF;
|
|
|
|
// developer_data_id message
|
|
|
|
#define FIT_DEVELOPER_DATA_ID_MESG_SIZE 39
|
|
#define FIT_DEVELOPER_DATA_ID_MESG_DEF_SIZE 20
|
|
#define FIT_DEVELOPER_DATA_ID_MESG_DEVELOPER_ID_COUNT 16
|
|
#define FIT_DEVELOPER_DATA_ID_MESG_APPLICATION_ID_COUNT 16
|
|
|
|
typedef struct
|
|
{
|
|
FIT_BYTE developer_id[FIT_DEVELOPER_DATA_ID_MESG_DEVELOPER_ID_COUNT]; //
|
|
FIT_BYTE application_id[FIT_DEVELOPER_DATA_ID_MESG_APPLICATION_ID_COUNT]; //
|
|
FIT_UINT32 application_version; //
|
|
FIT_MANUFACTURER manufacturer_id; //
|
|
FIT_UINT8 developer_data_index; //
|
|
} FIT_DEVELOPER_DATA_ID_MESG;
|
|
|
|
typedef FIT_UINT8 FIT_DEVELOPER_DATA_ID_FIELD_NUM;
|
|
|
|
#define FIT_DEVELOPER_DATA_ID_FIELD_NUM_DEVELOPER_ID ((FIT_DEVELOPER_DATA_ID_FIELD_NUM)0)
|
|
#define FIT_DEVELOPER_DATA_ID_FIELD_NUM_APPLICATION_ID ((FIT_DEVELOPER_DATA_ID_FIELD_NUM)1)
|
|
#define FIT_DEVELOPER_DATA_ID_FIELD_NUM_APPLICATION_VERSION ((FIT_DEVELOPER_DATA_ID_FIELD_NUM)4)
|
|
#define FIT_DEVELOPER_DATA_ID_FIELD_NUM_MANUFACTURER_ID ((FIT_DEVELOPER_DATA_ID_FIELD_NUM)2)
|
|
#define FIT_DEVELOPER_DATA_ID_FIELD_NUM_DEVELOPER_DATA_INDEX ((FIT_DEVELOPER_DATA_ID_FIELD_NUM)3)
|
|
|
|
typedef enum
|
|
{
|
|
FIT_DEVELOPER_DATA_ID_MESG_DEVELOPER_ID,
|
|
FIT_DEVELOPER_DATA_ID_MESG_APPLICATION_ID,
|
|
FIT_DEVELOPER_DATA_ID_MESG_APPLICATION_VERSION,
|
|
FIT_DEVELOPER_DATA_ID_MESG_MANUFACTURER_ID,
|
|
FIT_DEVELOPER_DATA_ID_MESG_DEVELOPER_DATA_INDEX,
|
|
FIT_DEVELOPER_DATA_ID_MESG_FIELDS
|
|
} FIT_DEVELOPER_DATA_ID_MESG_FIELD;
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT8 reserved_1;
|
|
FIT_UINT8 arch;
|
|
FIT_MESG_NUM global_mesg_num;
|
|
FIT_UINT8 num_fields;
|
|
FIT_UINT8 fields[FIT_DEVELOPER_DATA_ID_MESG_FIELDS * FIT_FIELD_DEF_SIZE];
|
|
} FIT_DEVELOPER_DATA_ID_MESG_DEF;
|
|
|
|
// course message
|
|
|
|
#define FIT_COURSE_MESG_SIZE 22
|
|
#define FIT_COURSE_MESG_DEF_SIZE 17
|
|
#define FIT_COURSE_MESG_NAME_COUNT 16
|
|
|
|
typedef struct
|
|
{
|
|
FIT_STRING name[FIT_COURSE_MESG_NAME_COUNT]; //
|
|
FIT_COURSE_CAPABILITIES capabilities; //
|
|
FIT_SPORT sport; //
|
|
FIT_SUB_SPORT sub_sport; //
|
|
} FIT_COURSE_MESG;
|
|
|
|
typedef FIT_UINT8 FIT_COURSE_FIELD_NUM;
|
|
|
|
#define FIT_COURSE_FIELD_NUM_NAME ((FIT_COURSE_FIELD_NUM)5)
|
|
#define FIT_COURSE_FIELD_NUM_CAPABILITIES ((FIT_COURSE_FIELD_NUM)6)
|
|
#define FIT_COURSE_FIELD_NUM_SPORT ((FIT_COURSE_FIELD_NUM)4)
|
|
#define FIT_COURSE_FIELD_NUM_SUB_SPORT ((FIT_COURSE_FIELD_NUM)7)
|
|
|
|
typedef enum
|
|
{
|
|
FIT_COURSE_MESG_NAME,
|
|
FIT_COURSE_MESG_CAPABILITIES,
|
|
FIT_COURSE_MESG_SPORT,
|
|
FIT_COURSE_MESG_SUB_SPORT,
|
|
FIT_COURSE_MESG_FIELDS
|
|
} FIT_COURSE_MESG_FIELD;
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT8 reserved_1;
|
|
FIT_UINT8 arch;
|
|
FIT_MESG_NUM global_mesg_num;
|
|
FIT_UINT8 num_fields;
|
|
FIT_UINT8 fields[FIT_COURSE_MESG_FIELDS * FIT_FIELD_DEF_SIZE];
|
|
} FIT_COURSE_MESG_DEF;
|
|
|
|
// course_point message
|
|
|
|
#define FIT_COURSE_POINT_MESG_SIZE 36
|
|
#define FIT_COURSE_POINT_MESG_DEF_SIZE 29
|
|
#define FIT_COURSE_POINT_MESG_NAME_COUNT 16
|
|
|
|
typedef struct
|
|
{
|
|
FIT_DATE_TIME timestamp; //
|
|
FIT_SINT32 position_lat; // 1 * semicircles + 0,
|
|
FIT_SINT32 position_long; // 1 * semicircles + 0,
|
|
FIT_UINT32 distance; // 100 * m + 0,
|
|
FIT_STRING name[FIT_COURSE_POINT_MESG_NAME_COUNT]; //
|
|
FIT_MESSAGE_INDEX message_index; //
|
|
FIT_COURSE_POINT type; //
|
|
FIT_BOOL favorite; //
|
|
} FIT_COURSE_POINT_MESG;
|
|
|
|
typedef FIT_UINT8 FIT_COURSE_POINT_FIELD_NUM;
|
|
|
|
#define FIT_COURSE_POINT_FIELD_NUM_TIMESTAMP ((FIT_COURSE_POINT_FIELD_NUM)1)
|
|
#define FIT_COURSE_POINT_FIELD_NUM_POSITION_LAT ((FIT_COURSE_POINT_FIELD_NUM)2)
|
|
#define FIT_COURSE_POINT_FIELD_NUM_POSITION_LONG ((FIT_COURSE_POINT_FIELD_NUM)3)
|
|
#define FIT_COURSE_POINT_FIELD_NUM_DISTANCE ((FIT_COURSE_POINT_FIELD_NUM)4)
|
|
#define FIT_COURSE_POINT_FIELD_NUM_NAME ((FIT_COURSE_POINT_FIELD_NUM)6)
|
|
#define FIT_COURSE_POINT_FIELD_NUM_MESSAGE_INDEX ((FIT_COURSE_POINT_FIELD_NUM)254)
|
|
#define FIT_COURSE_POINT_FIELD_NUM_TYPE ((FIT_COURSE_POINT_FIELD_NUM)5)
|
|
#define FIT_COURSE_POINT_FIELD_NUM_FAVORITE ((FIT_COURSE_POINT_FIELD_NUM)8)
|
|
|
|
typedef enum
|
|
{
|
|
FIT_COURSE_POINT_MESG_TIMESTAMP,
|
|
FIT_COURSE_POINT_MESG_POSITION_LAT,
|
|
FIT_COURSE_POINT_MESG_POSITION_LONG,
|
|
FIT_COURSE_POINT_MESG_DISTANCE,
|
|
FIT_COURSE_POINT_MESG_NAME,
|
|
FIT_COURSE_POINT_MESG_MESSAGE_INDEX,
|
|
FIT_COURSE_POINT_MESG_TYPE,
|
|
FIT_COURSE_POINT_MESG_FAVORITE,
|
|
FIT_COURSE_POINT_MESG_FIELDS
|
|
} FIT_COURSE_POINT_MESG_FIELD;
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT8 reserved_1;
|
|
FIT_UINT8 arch;
|
|
FIT_MESG_NUM global_mesg_num;
|
|
FIT_UINT8 num_fields;
|
|
FIT_UINT8 fields[FIT_COURSE_POINT_MESG_FIELDS * FIT_FIELD_DEF_SIZE];
|
|
} FIT_COURSE_POINT_MESG_DEF;
|
|
|
|
// segment_id message
|
|
|
|
#define FIT_SEGMENT_ID_MESG_SIZE 15
|
|
#define FIT_SEGMENT_ID_MESG_DEF_SIZE 32
|
|
#define FIT_SEGMENT_ID_MESG_NAME_COUNT 1
|
|
#define FIT_SEGMENT_ID_MESG_UUID_COUNT 1
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT32 user_profile_primary_key; // Primary key of the user that created the segment
|
|
FIT_UINT32 device_id; // ID of the device that created the segment
|
|
FIT_STRING name[FIT_SEGMENT_ID_MESG_NAME_COUNT]; // Friendly name assigned to segment
|
|
FIT_STRING uuid[FIT_SEGMENT_ID_MESG_UUID_COUNT]; // UUID of the segment
|
|
FIT_SPORT sport; // Sport associated with the segment
|
|
FIT_BOOL enabled; // Segment enabled for evaluation
|
|
FIT_UINT8 default_race_leader; // Index for the Leader Board entry selected as the default race participant
|
|
FIT_SEGMENT_DELETE_STATUS delete_status; // Indicates if any segments should be deleted
|
|
FIT_SEGMENT_SELECTION_TYPE selection_type; // Indicates how the segment was selected to be sent to the device
|
|
} FIT_SEGMENT_ID_MESG;
|
|
|
|
typedef FIT_UINT8 FIT_SEGMENT_ID_FIELD_NUM;
|
|
|
|
#define FIT_SEGMENT_ID_FIELD_NUM_USER_PROFILE_PRIMARY_KEY ((FIT_SEGMENT_ID_FIELD_NUM)4)
|
|
#define FIT_SEGMENT_ID_FIELD_NUM_DEVICE_ID ((FIT_SEGMENT_ID_FIELD_NUM)5)
|
|
#define FIT_SEGMENT_ID_FIELD_NUM_NAME ((FIT_SEGMENT_ID_FIELD_NUM)0)
|
|
#define FIT_SEGMENT_ID_FIELD_NUM_UUID ((FIT_SEGMENT_ID_FIELD_NUM)1)
|
|
#define FIT_SEGMENT_ID_FIELD_NUM_SPORT ((FIT_SEGMENT_ID_FIELD_NUM)2)
|
|
#define FIT_SEGMENT_ID_FIELD_NUM_ENABLED ((FIT_SEGMENT_ID_FIELD_NUM)3)
|
|
#define FIT_SEGMENT_ID_FIELD_NUM_DEFAULT_RACE_LEADER ((FIT_SEGMENT_ID_FIELD_NUM)6)
|
|
#define FIT_SEGMENT_ID_FIELD_NUM_DELETE_STATUS ((FIT_SEGMENT_ID_FIELD_NUM)7)
|
|
#define FIT_SEGMENT_ID_FIELD_NUM_SELECTION_TYPE ((FIT_SEGMENT_ID_FIELD_NUM)8)
|
|
|
|
typedef enum
|
|
{
|
|
FIT_SEGMENT_ID_MESG_USER_PROFILE_PRIMARY_KEY,
|
|
FIT_SEGMENT_ID_MESG_DEVICE_ID,
|
|
FIT_SEGMENT_ID_MESG_NAME,
|
|
FIT_SEGMENT_ID_MESG_UUID,
|
|
FIT_SEGMENT_ID_MESG_SPORT,
|
|
FIT_SEGMENT_ID_MESG_ENABLED,
|
|
FIT_SEGMENT_ID_MESG_DEFAULT_RACE_LEADER,
|
|
FIT_SEGMENT_ID_MESG_DELETE_STATUS,
|
|
FIT_SEGMENT_ID_MESG_SELECTION_TYPE,
|
|
FIT_SEGMENT_ID_MESG_FIELDS
|
|
} FIT_SEGMENT_ID_MESG_FIELD;
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT8 reserved_1;
|
|
FIT_UINT8 arch;
|
|
FIT_MESG_NUM global_mesg_num;
|
|
FIT_UINT8 num_fields;
|
|
FIT_UINT8 fields[FIT_SEGMENT_ID_MESG_FIELDS * FIT_FIELD_DEF_SIZE];
|
|
} FIT_SEGMENT_ID_MESG_DEF;
|
|
|
|
// segment_leaderboard_entry message
|
|
|
|
#define FIT_SEGMENT_LEADERBOARD_ENTRY_MESG_SIZE 16
|
|
#define FIT_SEGMENT_LEADERBOARD_ENTRY_MESG_DEF_SIZE 23
|
|
#define FIT_SEGMENT_LEADERBOARD_ENTRY_MESG_NAME_COUNT 1
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT32 group_primary_key; // Primary user ID of this leader
|
|
FIT_UINT32 activity_id; // ID of the activity associated with this leader time
|
|
FIT_UINT32 segment_time; // 1000 * s + 0, Segment Time (includes pauses)
|
|
FIT_MESSAGE_INDEX message_index; //
|
|
FIT_STRING name[FIT_SEGMENT_LEADERBOARD_ENTRY_MESG_NAME_COUNT]; // Friendly name assigned to leader
|
|
FIT_SEGMENT_LEADERBOARD_TYPE type; // Leader classification
|
|
} FIT_SEGMENT_LEADERBOARD_ENTRY_MESG;
|
|
|
|
typedef FIT_UINT8 FIT_SEGMENT_LEADERBOARD_ENTRY_FIELD_NUM;
|
|
|
|
#define FIT_SEGMENT_LEADERBOARD_ENTRY_FIELD_NUM_GROUP_PRIMARY_KEY ((FIT_SEGMENT_LEADERBOARD_ENTRY_FIELD_NUM)2)
|
|
#define FIT_SEGMENT_LEADERBOARD_ENTRY_FIELD_NUM_ACTIVITY_ID ((FIT_SEGMENT_LEADERBOARD_ENTRY_FIELD_NUM)3)
|
|
#define FIT_SEGMENT_LEADERBOARD_ENTRY_FIELD_NUM_SEGMENT_TIME ((FIT_SEGMENT_LEADERBOARD_ENTRY_FIELD_NUM)4)
|
|
#define FIT_SEGMENT_LEADERBOARD_ENTRY_FIELD_NUM_MESSAGE_INDEX ((FIT_SEGMENT_LEADERBOARD_ENTRY_FIELD_NUM)254)
|
|
#define FIT_SEGMENT_LEADERBOARD_ENTRY_FIELD_NUM_NAME ((FIT_SEGMENT_LEADERBOARD_ENTRY_FIELD_NUM)0)
|
|
#define FIT_SEGMENT_LEADERBOARD_ENTRY_FIELD_NUM_TYPE ((FIT_SEGMENT_LEADERBOARD_ENTRY_FIELD_NUM)1)
|
|
|
|
typedef enum
|
|
{
|
|
FIT_SEGMENT_LEADERBOARD_ENTRY_MESG_GROUP_PRIMARY_KEY,
|
|
FIT_SEGMENT_LEADERBOARD_ENTRY_MESG_ACTIVITY_ID,
|
|
FIT_SEGMENT_LEADERBOARD_ENTRY_MESG_SEGMENT_TIME,
|
|
FIT_SEGMENT_LEADERBOARD_ENTRY_MESG_MESSAGE_INDEX,
|
|
FIT_SEGMENT_LEADERBOARD_ENTRY_MESG_NAME,
|
|
FIT_SEGMENT_LEADERBOARD_ENTRY_MESG_TYPE,
|
|
FIT_SEGMENT_LEADERBOARD_ENTRY_MESG_FIELDS
|
|
} FIT_SEGMENT_LEADERBOARD_ENTRY_MESG_FIELD;
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT8 reserved_1;
|
|
FIT_UINT8 arch;
|
|
FIT_MESG_NUM global_mesg_num;
|
|
FIT_UINT8 num_fields;
|
|
FIT_UINT8 fields[FIT_SEGMENT_LEADERBOARD_ENTRY_MESG_FIELDS * FIT_FIELD_DEF_SIZE];
|
|
} FIT_SEGMENT_LEADERBOARD_ENTRY_MESG_DEF;
|
|
|
|
// segment_point message
|
|
|
|
#define FIT_SEGMENT_POINT_MESG_SIZE 20
|
|
#define FIT_SEGMENT_POINT_MESG_DEF_SIZE 23
|
|
#define FIT_SEGMENT_POINT_MESG_LEADER_TIME_COUNT 1
|
|
|
|
typedef struct
|
|
{
|
|
FIT_SINT32 position_lat; // 1 * semicircles + 0,
|
|
FIT_SINT32 position_long; // 1 * semicircles + 0,
|
|
FIT_UINT32 distance; // 100 * m + 0, Accumulated distance along the segment at the described point
|
|
FIT_UINT32 leader_time[FIT_SEGMENT_POINT_MESG_LEADER_TIME_COUNT]; // 1000 * s + 0, Accumualted time each leader board member required to reach the described point. This value is zero for all leader board members at the starting point of the segment.
|
|
FIT_MESSAGE_INDEX message_index; //
|
|
FIT_UINT16 altitude; // 5 * m + 500, Accumulated altitude along the segment at the described point
|
|
} FIT_SEGMENT_POINT_MESG;
|
|
|
|
typedef FIT_UINT8 FIT_SEGMENT_POINT_FIELD_NUM;
|
|
|
|
#define FIT_SEGMENT_POINT_FIELD_NUM_POSITION_LAT ((FIT_SEGMENT_POINT_FIELD_NUM)1)
|
|
#define FIT_SEGMENT_POINT_FIELD_NUM_POSITION_LONG ((FIT_SEGMENT_POINT_FIELD_NUM)2)
|
|
#define FIT_SEGMENT_POINT_FIELD_NUM_DISTANCE ((FIT_SEGMENT_POINT_FIELD_NUM)3)
|
|
#define FIT_SEGMENT_POINT_FIELD_NUM_LEADER_TIME ((FIT_SEGMENT_POINT_FIELD_NUM)5)
|
|
#define FIT_SEGMENT_POINT_FIELD_NUM_MESSAGE_INDEX ((FIT_SEGMENT_POINT_FIELD_NUM)254)
|
|
#define FIT_SEGMENT_POINT_FIELD_NUM_ALTITUDE ((FIT_SEGMENT_POINT_FIELD_NUM)4)
|
|
|
|
typedef enum
|
|
{
|
|
FIT_SEGMENT_POINT_MESG_POSITION_LAT,
|
|
FIT_SEGMENT_POINT_MESG_POSITION_LONG,
|
|
FIT_SEGMENT_POINT_MESG_DISTANCE,
|
|
FIT_SEGMENT_POINT_MESG_LEADER_TIME,
|
|
FIT_SEGMENT_POINT_MESG_MESSAGE_INDEX,
|
|
FIT_SEGMENT_POINT_MESG_ALTITUDE,
|
|
FIT_SEGMENT_POINT_MESG_FIELDS
|
|
} FIT_SEGMENT_POINT_MESG_FIELD;
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT8 reserved_1;
|
|
FIT_UINT8 arch;
|
|
FIT_MESG_NUM global_mesg_num;
|
|
FIT_UINT8 num_fields;
|
|
FIT_UINT8 fields[FIT_SEGMENT_POINT_MESG_FIELDS * FIT_FIELD_DEF_SIZE];
|
|
} FIT_SEGMENT_POINT_MESG_DEF;
|
|
|
|
// segment_lap message
|
|
|
|
#define FIT_SEGMENT_LAP_MESG_SIZE 210
|
|
#define FIT_SEGMENT_LAP_MESG_DEF_SIZE 224
|
|
#define FIT_SEGMENT_LAP_MESG_NAME_COUNT 16
|
|
#define FIT_SEGMENT_LAP_MESG_TIME_IN_HR_ZONE_COUNT 1
|
|
#define FIT_SEGMENT_LAP_MESG_TIME_IN_SPEED_ZONE_COUNT 1
|
|
#define FIT_SEGMENT_LAP_MESG_TIME_IN_CADENCE_ZONE_COUNT 1
|
|
#define FIT_SEGMENT_LAP_MESG_TIME_IN_POWER_ZONE_COUNT 1
|
|
#define FIT_SEGMENT_LAP_MESG_UUID_COUNT 33
|
|
|
|
typedef struct
|
|
{
|
|
FIT_DATE_TIME timestamp; // 1 * s + 0, Lap end time.
|
|
FIT_DATE_TIME start_time; //
|
|
FIT_SINT32 start_position_lat; // 1 * semicircles + 0,
|
|
FIT_SINT32 start_position_long; // 1 * semicircles + 0,
|
|
FIT_SINT32 end_position_lat; // 1 * semicircles + 0,
|
|
FIT_SINT32 end_position_long; // 1 * semicircles + 0,
|
|
FIT_UINT32 total_elapsed_time; // 1000 * s + 0, Time (includes pauses)
|
|
FIT_UINT32 total_timer_time; // 1000 * s + 0, Timer Time (excludes pauses)
|
|
FIT_UINT32 total_distance; // 100 * m + 0,
|
|
FIT_UINT32 total_cycles; // 1 * cycles + 0,
|
|
FIT_SINT32 nec_lat; // 1 * semicircles + 0, North east corner latitude.
|
|
FIT_SINT32 nec_long; // 1 * semicircles + 0, North east corner longitude.
|
|
FIT_SINT32 swc_lat; // 1 * semicircles + 0, South west corner latitude.
|
|
FIT_SINT32 swc_long; // 1 * semicircles + 0, South west corner latitude.
|
|
FIT_STRING name[FIT_SEGMENT_LAP_MESG_NAME_COUNT]; //
|
|
FIT_UINT32 total_work; // 1 * J + 0,
|
|
FIT_UINT32 total_moving_time; // 1000 * s + 0,
|
|
FIT_UINT32 time_in_hr_zone[FIT_SEGMENT_LAP_MESG_TIME_IN_HR_ZONE_COUNT]; // 1000 * s + 0,
|
|
FIT_UINT32 time_in_speed_zone[FIT_SEGMENT_LAP_MESG_TIME_IN_SPEED_ZONE_COUNT]; // 1000 * s + 0,
|
|
FIT_UINT32 time_in_cadence_zone[FIT_SEGMENT_LAP_MESG_TIME_IN_CADENCE_ZONE_COUNT]; // 1000 * s + 0,
|
|
FIT_UINT32 time_in_power_zone[FIT_SEGMENT_LAP_MESG_TIME_IN_POWER_ZONE_COUNT]; // 1000 * s + 0,
|
|
FIT_UINT32 active_time; // 1000 * s + 0,
|
|
FIT_MESSAGE_INDEX message_index; //
|
|
FIT_UINT16 total_calories; // 1 * kcal + 0,
|
|
FIT_UINT16 total_fat_calories; // 1 * kcal + 0, If New Leaf
|
|
FIT_UINT16 avg_speed; // 1000 * m/s + 0,
|
|
FIT_UINT16 max_speed; // 1000 * m/s + 0,
|
|
FIT_UINT16 avg_power; // 1 * watts + 0, total_power / total_timer_time if non_zero_avg_power otherwise total_power / total_elapsed_time
|
|
FIT_UINT16 max_power; // 1 * watts + 0,
|
|
FIT_UINT16 total_ascent; // 1 * m + 0,
|
|
FIT_UINT16 total_descent; // 1 * m + 0,
|
|
FIT_UINT16 normalized_power; // 1 * watts + 0,
|
|
FIT_LEFT_RIGHT_BALANCE_100 left_right_balance; //
|
|
FIT_UINT16 avg_altitude; // 5 * m + 500,
|
|
FIT_UINT16 max_altitude; // 5 * m + 500,
|
|
FIT_SINT16 avg_grade; // 100 * % + 0,
|
|
FIT_SINT16 avg_pos_grade; // 100 * % + 0,
|
|
FIT_SINT16 avg_neg_grade; // 100 * % + 0,
|
|
FIT_SINT16 max_pos_grade; // 100 * % + 0,
|
|
FIT_SINT16 max_neg_grade; // 100 * % + 0,
|
|
FIT_SINT16 avg_pos_vertical_speed; // 1000 * m/s + 0,
|
|
FIT_SINT16 avg_neg_vertical_speed; // 1000 * m/s + 0,
|
|
FIT_SINT16 max_pos_vertical_speed; // 1000 * m/s + 0,
|
|
FIT_SINT16 max_neg_vertical_speed; // 1000 * m/s + 0,
|
|
FIT_UINT16 repetition_num; //
|
|
FIT_UINT16 min_altitude; // 5 * m + 500,
|
|
FIT_MESSAGE_INDEX wkt_step_index; //
|
|
FIT_UINT16 front_gear_shift_count; //
|
|
FIT_UINT16 rear_gear_shift_count; //
|
|
FIT_EVENT event; //
|
|
FIT_EVENT_TYPE event_type; //
|
|
FIT_UINT8 avg_heart_rate; // 1 * bpm + 0,
|
|
FIT_UINT8 max_heart_rate; // 1 * bpm + 0,
|
|
FIT_UINT8 avg_cadence; // 1 * rpm + 0, total_cycles / total_timer_time if non_zero_avg_cadence otherwise total_cycles / total_elapsed_time
|
|
FIT_UINT8 max_cadence; // 1 * rpm + 0,
|
|
FIT_SPORT sport; //
|
|
FIT_UINT8 event_group; //
|
|
FIT_SUB_SPORT sub_sport; //
|
|
FIT_UINT8 gps_accuracy; // 1 * m + 0,
|
|
FIT_SINT8 avg_temperature; // 1 * C + 0,
|
|
FIT_SINT8 max_temperature; // 1 * C + 0,
|
|
FIT_UINT8 min_heart_rate; // 1 * bpm + 0,
|
|
FIT_SPORT_EVENT sport_event; //
|
|
FIT_UINT8 avg_left_torque_effectiveness; // 2 * percent + 0,
|
|
FIT_UINT8 avg_right_torque_effectiveness; // 2 * percent + 0,
|
|
FIT_UINT8 avg_left_pedal_smoothness; // 2 * percent + 0,
|
|
FIT_UINT8 avg_right_pedal_smoothness; // 2 * percent + 0,
|
|
FIT_UINT8 avg_combined_pedal_smoothness; // 2 * percent + 0,
|
|
FIT_SEGMENT_LAP_STATUS status; //
|
|
FIT_STRING uuid[FIT_SEGMENT_LAP_MESG_UUID_COUNT]; //
|
|
FIT_UINT8 avg_fractional_cadence; // 128 * rpm + 0, fractional part of the avg_cadence
|
|
FIT_UINT8 max_fractional_cadence; // 128 * rpm + 0, fractional part of the max_cadence
|
|
FIT_UINT8 total_fractional_cycles; // 128 * cycles + 0, fractional part of the total_cycles
|
|
} FIT_SEGMENT_LAP_MESG;
|
|
|
|
typedef FIT_UINT8 FIT_SEGMENT_LAP_FIELD_NUM;
|
|
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_TIMESTAMP ((FIT_SEGMENT_LAP_FIELD_NUM)253)
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_START_TIME ((FIT_SEGMENT_LAP_FIELD_NUM)2)
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_START_POSITION_LAT ((FIT_SEGMENT_LAP_FIELD_NUM)3)
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_START_POSITION_LONG ((FIT_SEGMENT_LAP_FIELD_NUM)4)
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_END_POSITION_LAT ((FIT_SEGMENT_LAP_FIELD_NUM)5)
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_END_POSITION_LONG ((FIT_SEGMENT_LAP_FIELD_NUM)6)
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_TOTAL_ELAPSED_TIME ((FIT_SEGMENT_LAP_FIELD_NUM)7)
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_TOTAL_TIMER_TIME ((FIT_SEGMENT_LAP_FIELD_NUM)8)
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_TOTAL_DISTANCE ((FIT_SEGMENT_LAP_FIELD_NUM)9)
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_TOTAL_CYCLES ((FIT_SEGMENT_LAP_FIELD_NUM)10)
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_NEC_LAT ((FIT_SEGMENT_LAP_FIELD_NUM)25)
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_NEC_LONG ((FIT_SEGMENT_LAP_FIELD_NUM)26)
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_SWC_LAT ((FIT_SEGMENT_LAP_FIELD_NUM)27)
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_SWC_LONG ((FIT_SEGMENT_LAP_FIELD_NUM)28)
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_NAME ((FIT_SEGMENT_LAP_FIELD_NUM)29)
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_TOTAL_WORK ((FIT_SEGMENT_LAP_FIELD_NUM)33)
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_TOTAL_MOVING_TIME ((FIT_SEGMENT_LAP_FIELD_NUM)44)
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_TIME_IN_HR_ZONE ((FIT_SEGMENT_LAP_FIELD_NUM)49)
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_TIME_IN_SPEED_ZONE ((FIT_SEGMENT_LAP_FIELD_NUM)50)
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_TIME_IN_CADENCE_ZONE ((FIT_SEGMENT_LAP_FIELD_NUM)51)
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_TIME_IN_POWER_ZONE ((FIT_SEGMENT_LAP_FIELD_NUM)52)
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_ACTIVE_TIME ((FIT_SEGMENT_LAP_FIELD_NUM)56)
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_MESSAGE_INDEX ((FIT_SEGMENT_LAP_FIELD_NUM)254)
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_TOTAL_CALORIES ((FIT_SEGMENT_LAP_FIELD_NUM)11)
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_TOTAL_FAT_CALORIES ((FIT_SEGMENT_LAP_FIELD_NUM)12)
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_AVG_SPEED ((FIT_SEGMENT_LAP_FIELD_NUM)13)
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_MAX_SPEED ((FIT_SEGMENT_LAP_FIELD_NUM)14)
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_AVG_POWER ((FIT_SEGMENT_LAP_FIELD_NUM)19)
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_MAX_POWER ((FIT_SEGMENT_LAP_FIELD_NUM)20)
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_TOTAL_ASCENT ((FIT_SEGMENT_LAP_FIELD_NUM)21)
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_TOTAL_DESCENT ((FIT_SEGMENT_LAP_FIELD_NUM)22)
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_NORMALIZED_POWER ((FIT_SEGMENT_LAP_FIELD_NUM)30)
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_LEFT_RIGHT_BALANCE ((FIT_SEGMENT_LAP_FIELD_NUM)31)
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_AVG_ALTITUDE ((FIT_SEGMENT_LAP_FIELD_NUM)34)
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_MAX_ALTITUDE ((FIT_SEGMENT_LAP_FIELD_NUM)35)
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_AVG_GRADE ((FIT_SEGMENT_LAP_FIELD_NUM)37)
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_AVG_POS_GRADE ((FIT_SEGMENT_LAP_FIELD_NUM)38)
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_AVG_NEG_GRADE ((FIT_SEGMENT_LAP_FIELD_NUM)39)
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_MAX_POS_GRADE ((FIT_SEGMENT_LAP_FIELD_NUM)40)
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_MAX_NEG_GRADE ((FIT_SEGMENT_LAP_FIELD_NUM)41)
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_AVG_POS_VERTICAL_SPEED ((FIT_SEGMENT_LAP_FIELD_NUM)45)
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_AVG_NEG_VERTICAL_SPEED ((FIT_SEGMENT_LAP_FIELD_NUM)46)
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_MAX_POS_VERTICAL_SPEED ((FIT_SEGMENT_LAP_FIELD_NUM)47)
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_MAX_NEG_VERTICAL_SPEED ((FIT_SEGMENT_LAP_FIELD_NUM)48)
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_REPETITION_NUM ((FIT_SEGMENT_LAP_FIELD_NUM)53)
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_MIN_ALTITUDE ((FIT_SEGMENT_LAP_FIELD_NUM)54)
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_WKT_STEP_INDEX ((FIT_SEGMENT_LAP_FIELD_NUM)57)
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_FRONT_GEAR_SHIFT_COUNT ((FIT_SEGMENT_LAP_FIELD_NUM)69)
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_REAR_GEAR_SHIFT_COUNT ((FIT_SEGMENT_LAP_FIELD_NUM)70)
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_EVENT ((FIT_SEGMENT_LAP_FIELD_NUM)0)
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_EVENT_TYPE ((FIT_SEGMENT_LAP_FIELD_NUM)1)
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_AVG_HEART_RATE ((FIT_SEGMENT_LAP_FIELD_NUM)15)
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_MAX_HEART_RATE ((FIT_SEGMENT_LAP_FIELD_NUM)16)
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_AVG_CADENCE ((FIT_SEGMENT_LAP_FIELD_NUM)17)
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_MAX_CADENCE ((FIT_SEGMENT_LAP_FIELD_NUM)18)
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_SPORT ((FIT_SEGMENT_LAP_FIELD_NUM)23)
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_EVENT_GROUP ((FIT_SEGMENT_LAP_FIELD_NUM)24)
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_SUB_SPORT ((FIT_SEGMENT_LAP_FIELD_NUM)32)
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_GPS_ACCURACY ((FIT_SEGMENT_LAP_FIELD_NUM)36)
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_AVG_TEMPERATURE ((FIT_SEGMENT_LAP_FIELD_NUM)42)
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_MAX_TEMPERATURE ((FIT_SEGMENT_LAP_FIELD_NUM)43)
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_MIN_HEART_RATE ((FIT_SEGMENT_LAP_FIELD_NUM)55)
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_SPORT_EVENT ((FIT_SEGMENT_LAP_FIELD_NUM)58)
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_AVG_LEFT_TORQUE_EFFECTIVENESS ((FIT_SEGMENT_LAP_FIELD_NUM)59)
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_AVG_RIGHT_TORQUE_EFFECTIVENESS ((FIT_SEGMENT_LAP_FIELD_NUM)60)
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_AVG_LEFT_PEDAL_SMOOTHNESS ((FIT_SEGMENT_LAP_FIELD_NUM)61)
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_AVG_RIGHT_PEDAL_SMOOTHNESS ((FIT_SEGMENT_LAP_FIELD_NUM)62)
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_AVG_COMBINED_PEDAL_SMOOTHNESS ((FIT_SEGMENT_LAP_FIELD_NUM)63)
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_STATUS ((FIT_SEGMENT_LAP_FIELD_NUM)64)
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_UUID ((FIT_SEGMENT_LAP_FIELD_NUM)65)
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_AVG_FRACTIONAL_CADENCE ((FIT_SEGMENT_LAP_FIELD_NUM)66)
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_MAX_FRACTIONAL_CADENCE ((FIT_SEGMENT_LAP_FIELD_NUM)67)
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_TOTAL_FRACTIONAL_CYCLES ((FIT_SEGMENT_LAP_FIELD_NUM)68)
|
|
|
|
typedef enum
|
|
{
|
|
FIT_SEGMENT_LAP_MESG_TIMESTAMP,
|
|
FIT_SEGMENT_LAP_MESG_START_TIME,
|
|
FIT_SEGMENT_LAP_MESG_START_POSITION_LAT,
|
|
FIT_SEGMENT_LAP_MESG_START_POSITION_LONG,
|
|
FIT_SEGMENT_LAP_MESG_END_POSITION_LAT,
|
|
FIT_SEGMENT_LAP_MESG_END_POSITION_LONG,
|
|
FIT_SEGMENT_LAP_MESG_TOTAL_ELAPSED_TIME,
|
|
FIT_SEGMENT_LAP_MESG_TOTAL_TIMER_TIME,
|
|
FIT_SEGMENT_LAP_MESG_TOTAL_DISTANCE,
|
|
FIT_SEGMENT_LAP_MESG_TOTAL_CYCLES,
|
|
FIT_SEGMENT_LAP_MESG_NEC_LAT,
|
|
FIT_SEGMENT_LAP_MESG_NEC_LONG,
|
|
FIT_SEGMENT_LAP_MESG_SWC_LAT,
|
|
FIT_SEGMENT_LAP_MESG_SWC_LONG,
|
|
FIT_SEGMENT_LAP_MESG_NAME,
|
|
FIT_SEGMENT_LAP_MESG_TOTAL_WORK,
|
|
FIT_SEGMENT_LAP_MESG_TOTAL_MOVING_TIME,
|
|
FIT_SEGMENT_LAP_MESG_TIME_IN_HR_ZONE,
|
|
FIT_SEGMENT_LAP_MESG_TIME_IN_SPEED_ZONE,
|
|
FIT_SEGMENT_LAP_MESG_TIME_IN_CADENCE_ZONE,
|
|
FIT_SEGMENT_LAP_MESG_TIME_IN_POWER_ZONE,
|
|
FIT_SEGMENT_LAP_MESG_ACTIVE_TIME,
|
|
FIT_SEGMENT_LAP_MESG_MESSAGE_INDEX,
|
|
FIT_SEGMENT_LAP_MESG_TOTAL_CALORIES,
|
|
FIT_SEGMENT_LAP_MESG_TOTAL_FAT_CALORIES,
|
|
FIT_SEGMENT_LAP_MESG_AVG_SPEED,
|
|
FIT_SEGMENT_LAP_MESG_MAX_SPEED,
|
|
FIT_SEGMENT_LAP_MESG_AVG_POWER,
|
|
FIT_SEGMENT_LAP_MESG_MAX_POWER,
|
|
FIT_SEGMENT_LAP_MESG_TOTAL_ASCENT,
|
|
FIT_SEGMENT_LAP_MESG_TOTAL_DESCENT,
|
|
FIT_SEGMENT_LAP_MESG_NORMALIZED_POWER,
|
|
FIT_SEGMENT_LAP_MESG_LEFT_RIGHT_BALANCE,
|
|
FIT_SEGMENT_LAP_MESG_AVG_ALTITUDE,
|
|
FIT_SEGMENT_LAP_MESG_MAX_ALTITUDE,
|
|
FIT_SEGMENT_LAP_MESG_AVG_GRADE,
|
|
FIT_SEGMENT_LAP_MESG_AVG_POS_GRADE,
|
|
FIT_SEGMENT_LAP_MESG_AVG_NEG_GRADE,
|
|
FIT_SEGMENT_LAP_MESG_MAX_POS_GRADE,
|
|
FIT_SEGMENT_LAP_MESG_MAX_NEG_GRADE,
|
|
FIT_SEGMENT_LAP_MESG_AVG_POS_VERTICAL_SPEED,
|
|
FIT_SEGMENT_LAP_MESG_AVG_NEG_VERTICAL_SPEED,
|
|
FIT_SEGMENT_LAP_MESG_MAX_POS_VERTICAL_SPEED,
|
|
FIT_SEGMENT_LAP_MESG_MAX_NEG_VERTICAL_SPEED,
|
|
FIT_SEGMENT_LAP_MESG_REPETITION_NUM,
|
|
FIT_SEGMENT_LAP_MESG_MIN_ALTITUDE,
|
|
FIT_SEGMENT_LAP_MESG_WKT_STEP_INDEX,
|
|
FIT_SEGMENT_LAP_MESG_FRONT_GEAR_SHIFT_COUNT,
|
|
FIT_SEGMENT_LAP_MESG_REAR_GEAR_SHIFT_COUNT,
|
|
FIT_SEGMENT_LAP_MESG_EVENT,
|
|
FIT_SEGMENT_LAP_MESG_EVENT_TYPE,
|
|
FIT_SEGMENT_LAP_MESG_AVG_HEART_RATE,
|
|
FIT_SEGMENT_LAP_MESG_MAX_HEART_RATE,
|
|
FIT_SEGMENT_LAP_MESG_AVG_CADENCE,
|
|
FIT_SEGMENT_LAP_MESG_MAX_CADENCE,
|
|
FIT_SEGMENT_LAP_MESG_SPORT,
|
|
FIT_SEGMENT_LAP_MESG_EVENT_GROUP,
|
|
FIT_SEGMENT_LAP_MESG_SUB_SPORT,
|
|
FIT_SEGMENT_LAP_MESG_GPS_ACCURACY,
|
|
FIT_SEGMENT_LAP_MESG_AVG_TEMPERATURE,
|
|
FIT_SEGMENT_LAP_MESG_MAX_TEMPERATURE,
|
|
FIT_SEGMENT_LAP_MESG_MIN_HEART_RATE,
|
|
FIT_SEGMENT_LAP_MESG_SPORT_EVENT,
|
|
FIT_SEGMENT_LAP_MESG_AVG_LEFT_TORQUE_EFFECTIVENESS,
|
|
FIT_SEGMENT_LAP_MESG_AVG_RIGHT_TORQUE_EFFECTIVENESS,
|
|
FIT_SEGMENT_LAP_MESG_AVG_LEFT_PEDAL_SMOOTHNESS,
|
|
FIT_SEGMENT_LAP_MESG_AVG_RIGHT_PEDAL_SMOOTHNESS,
|
|
FIT_SEGMENT_LAP_MESG_AVG_COMBINED_PEDAL_SMOOTHNESS,
|
|
FIT_SEGMENT_LAP_MESG_STATUS,
|
|
FIT_SEGMENT_LAP_MESG_UUID,
|
|
FIT_SEGMENT_LAP_MESG_AVG_FRACTIONAL_CADENCE,
|
|
FIT_SEGMENT_LAP_MESG_MAX_FRACTIONAL_CADENCE,
|
|
FIT_SEGMENT_LAP_MESG_TOTAL_FRACTIONAL_CYCLES,
|
|
FIT_SEGMENT_LAP_MESG_FIELDS
|
|
} FIT_SEGMENT_LAP_MESG_FIELD;
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT8 reserved_1;
|
|
FIT_UINT8 arch;
|
|
FIT_MESG_NUM global_mesg_num;
|
|
FIT_UINT8 num_fields;
|
|
FIT_UINT8 fields[FIT_SEGMENT_LAP_MESG_FIELDS * FIT_FIELD_DEF_SIZE];
|
|
} FIT_SEGMENT_LAP_MESG_DEF;
|
|
|
|
// segment_file message
|
|
|
|
#define FIT_SEGMENT_FILE_MESG_SIZE 17
|
|
#define FIT_SEGMENT_FILE_MESG_DEF_SIZE 26
|
|
#define FIT_SEGMENT_FILE_MESG_LEADER_GROUP_PRIMARY_KEY_COUNT 1
|
|
#define FIT_SEGMENT_FILE_MESG_LEADER_ACTIVITY_ID_COUNT 1
|
|
#define FIT_SEGMENT_FILE_MESG_FILE_UUID_COUNT 1
|
|
#define FIT_SEGMENT_FILE_MESG_LEADER_TYPE_COUNT 1
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT32 user_profile_primary_key; // Primary key of the user that created the segment file
|
|
FIT_UINT32 leader_group_primary_key[FIT_SEGMENT_FILE_MESG_LEADER_GROUP_PRIMARY_KEY_COUNT]; // Group primary key of each leader in the segment file
|
|
FIT_UINT32 leader_activity_id[FIT_SEGMENT_FILE_MESG_LEADER_ACTIVITY_ID_COUNT]; // Activity ID of each leader in the segment file
|
|
FIT_MESSAGE_INDEX message_index; //
|
|
FIT_STRING file_uuid[FIT_SEGMENT_FILE_MESG_FILE_UUID_COUNT]; // UUID of the segment file
|
|
FIT_BOOL enabled; // Enabled state of the segment file
|
|
FIT_SEGMENT_LEADERBOARD_TYPE leader_type[FIT_SEGMENT_FILE_MESG_LEADER_TYPE_COUNT]; // Leader type of each leader in the segment file
|
|
} FIT_SEGMENT_FILE_MESG;
|
|
|
|
typedef FIT_UINT8 FIT_SEGMENT_FILE_FIELD_NUM;
|
|
|
|
#define FIT_SEGMENT_FILE_FIELD_NUM_USER_PROFILE_PRIMARY_KEY ((FIT_SEGMENT_FILE_FIELD_NUM)4)
|
|
#define FIT_SEGMENT_FILE_FIELD_NUM_LEADER_GROUP_PRIMARY_KEY ((FIT_SEGMENT_FILE_FIELD_NUM)8)
|
|
#define FIT_SEGMENT_FILE_FIELD_NUM_LEADER_ACTIVITY_ID ((FIT_SEGMENT_FILE_FIELD_NUM)9)
|
|
#define FIT_SEGMENT_FILE_FIELD_NUM_MESSAGE_INDEX ((FIT_SEGMENT_FILE_FIELD_NUM)254)
|
|
#define FIT_SEGMENT_FILE_FIELD_NUM_FILE_UUID ((FIT_SEGMENT_FILE_FIELD_NUM)1)
|
|
#define FIT_SEGMENT_FILE_FIELD_NUM_ENABLED ((FIT_SEGMENT_FILE_FIELD_NUM)3)
|
|
#define FIT_SEGMENT_FILE_FIELD_NUM_LEADER_TYPE ((FIT_SEGMENT_FILE_FIELD_NUM)7)
|
|
|
|
typedef enum
|
|
{
|
|
FIT_SEGMENT_FILE_MESG_USER_PROFILE_PRIMARY_KEY,
|
|
FIT_SEGMENT_FILE_MESG_LEADER_GROUP_PRIMARY_KEY,
|
|
FIT_SEGMENT_FILE_MESG_LEADER_ACTIVITY_ID,
|
|
FIT_SEGMENT_FILE_MESG_MESSAGE_INDEX,
|
|
FIT_SEGMENT_FILE_MESG_FILE_UUID,
|
|
FIT_SEGMENT_FILE_MESG_ENABLED,
|
|
FIT_SEGMENT_FILE_MESG_LEADER_TYPE,
|
|
FIT_SEGMENT_FILE_MESG_FIELDS
|
|
} FIT_SEGMENT_FILE_MESG_FIELD;
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT8 reserved_1;
|
|
FIT_UINT8 arch;
|
|
FIT_MESG_NUM global_mesg_num;
|
|
FIT_UINT8 num_fields;
|
|
FIT_UINT8 fields[FIT_SEGMENT_FILE_MESG_FIELDS * FIT_FIELD_DEF_SIZE];
|
|
} FIT_SEGMENT_FILE_MESG_DEF;
|
|
|
|
// workout message
|
|
|
|
#define FIT_WORKOUT_MESG_SIZE 29
|
|
#define FIT_WORKOUT_MESG_DEF_SIZE 29
|
|
#define FIT_WORKOUT_MESG_WKT_NAME_COUNT 16
|
|
|
|
typedef struct
|
|
{
|
|
FIT_WORKOUT_CAPABILITIES capabilities; //
|
|
FIT_STRING wkt_name[FIT_WORKOUT_MESG_WKT_NAME_COUNT]; //
|
|
FIT_MESSAGE_INDEX message_index; //
|
|
FIT_UINT16 num_valid_steps; // number of valid steps
|
|
FIT_UINT16 pool_length; // 100 * m + 0,
|
|
FIT_SPORT sport; //
|
|
FIT_SUB_SPORT sub_sport; //
|
|
FIT_DISPLAY_MEASURE pool_length_unit; //
|
|
} FIT_WORKOUT_MESG;
|
|
|
|
typedef FIT_UINT8 FIT_WORKOUT_FIELD_NUM;
|
|
|
|
#define FIT_WORKOUT_FIELD_NUM_CAPABILITIES ((FIT_WORKOUT_FIELD_NUM)5)
|
|
#define FIT_WORKOUT_FIELD_NUM_WKT_NAME ((FIT_WORKOUT_FIELD_NUM)8)
|
|
#define FIT_WORKOUT_FIELD_NUM_MESSAGE_INDEX ((FIT_WORKOUT_FIELD_NUM)254)
|
|
#define FIT_WORKOUT_FIELD_NUM_NUM_VALID_STEPS ((FIT_WORKOUT_FIELD_NUM)6)
|
|
#define FIT_WORKOUT_FIELD_NUM_POOL_LENGTH ((FIT_WORKOUT_FIELD_NUM)14)
|
|
#define FIT_WORKOUT_FIELD_NUM_SPORT ((FIT_WORKOUT_FIELD_NUM)4)
|
|
#define FIT_WORKOUT_FIELD_NUM_SUB_SPORT ((FIT_WORKOUT_FIELD_NUM)11)
|
|
#define FIT_WORKOUT_FIELD_NUM_POOL_LENGTH_UNIT ((FIT_WORKOUT_FIELD_NUM)15)
|
|
|
|
typedef enum
|
|
{
|
|
FIT_WORKOUT_MESG_CAPABILITIES,
|
|
FIT_WORKOUT_MESG_WKT_NAME,
|
|
FIT_WORKOUT_MESG_MESSAGE_INDEX,
|
|
FIT_WORKOUT_MESG_NUM_VALID_STEPS,
|
|
FIT_WORKOUT_MESG_POOL_LENGTH,
|
|
FIT_WORKOUT_MESG_SPORT,
|
|
FIT_WORKOUT_MESG_SUB_SPORT,
|
|
FIT_WORKOUT_MESG_POOL_LENGTH_UNIT,
|
|
FIT_WORKOUT_MESG_FIELDS
|
|
} FIT_WORKOUT_MESG_FIELD;
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT8 reserved_1;
|
|
FIT_UINT8 arch;
|
|
FIT_MESG_NUM global_mesg_num;
|
|
FIT_UINT8 num_fields;
|
|
FIT_UINT8 fields[FIT_WORKOUT_MESG_FIELDS * FIT_FIELD_DEF_SIZE];
|
|
} FIT_WORKOUT_MESG_DEF;
|
|
|
|
// workout_session message
|
|
|
|
#define FIT_WORKOUT_SESSION_MESG_SIZE 11
|
|
#define FIT_WORKOUT_SESSION_MESG_DEF_SIZE 26
|
|
|
|
typedef struct
|
|
{
|
|
FIT_MESSAGE_INDEX message_index; //
|
|
FIT_UINT16 num_valid_steps; //
|
|
FIT_UINT16 first_step_index; //
|
|
FIT_UINT16 pool_length; // 100 * m + 0,
|
|
FIT_SPORT sport; //
|
|
FIT_SUB_SPORT sub_sport; //
|
|
FIT_DISPLAY_MEASURE pool_length_unit; //
|
|
} FIT_WORKOUT_SESSION_MESG;
|
|
|
|
typedef FIT_UINT8 FIT_WORKOUT_SESSION_FIELD_NUM;
|
|
|
|
#define FIT_WORKOUT_SESSION_FIELD_NUM_MESSAGE_INDEX ((FIT_WORKOUT_SESSION_FIELD_NUM)254)
|
|
#define FIT_WORKOUT_SESSION_FIELD_NUM_NUM_VALID_STEPS ((FIT_WORKOUT_SESSION_FIELD_NUM)2)
|
|
#define FIT_WORKOUT_SESSION_FIELD_NUM_FIRST_STEP_INDEX ((FIT_WORKOUT_SESSION_FIELD_NUM)3)
|
|
#define FIT_WORKOUT_SESSION_FIELD_NUM_POOL_LENGTH ((FIT_WORKOUT_SESSION_FIELD_NUM)4)
|
|
#define FIT_WORKOUT_SESSION_FIELD_NUM_SPORT ((FIT_WORKOUT_SESSION_FIELD_NUM)0)
|
|
#define FIT_WORKOUT_SESSION_FIELD_NUM_SUB_SPORT ((FIT_WORKOUT_SESSION_FIELD_NUM)1)
|
|
#define FIT_WORKOUT_SESSION_FIELD_NUM_POOL_LENGTH_UNIT ((FIT_WORKOUT_SESSION_FIELD_NUM)5)
|
|
|
|
typedef enum
|
|
{
|
|
FIT_WORKOUT_SESSION_MESG_MESSAGE_INDEX,
|
|
FIT_WORKOUT_SESSION_MESG_NUM_VALID_STEPS,
|
|
FIT_WORKOUT_SESSION_MESG_FIRST_STEP_INDEX,
|
|
FIT_WORKOUT_SESSION_MESG_POOL_LENGTH,
|
|
FIT_WORKOUT_SESSION_MESG_SPORT,
|
|
FIT_WORKOUT_SESSION_MESG_SUB_SPORT,
|
|
FIT_WORKOUT_SESSION_MESG_POOL_LENGTH_UNIT,
|
|
FIT_WORKOUT_SESSION_MESG_FIELDS
|
|
} FIT_WORKOUT_SESSION_MESG_FIELD;
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT8 reserved_1;
|
|
FIT_UINT8 arch;
|
|
FIT_MESG_NUM global_mesg_num;
|
|
FIT_UINT8 num_fields;
|
|
FIT_UINT8 fields[FIT_WORKOUT_SESSION_MESG_FIELDS * FIT_FIELD_DEF_SIZE];
|
|
} FIT_WORKOUT_SESSION_MESG_DEF;
|
|
|
|
// workout_step message
|
|
|
|
#define FIT_WORKOUT_STEP_MESG_SIZE 103
|
|
#define FIT_WORKOUT_STEP_MESG_DEF_SIZE 53
|
|
#define FIT_WORKOUT_STEP_MESG_WKT_STEP_NAME_COUNT 16
|
|
#define FIT_WORKOUT_STEP_MESG_NOTES_COUNT 50
|
|
|
|
typedef struct
|
|
{
|
|
FIT_STRING wkt_step_name[FIT_WORKOUT_STEP_MESG_WKT_STEP_NAME_COUNT]; //
|
|
FIT_UINT32 duration_value; //
|
|
FIT_UINT32 target_value; //
|
|
FIT_UINT32 custom_target_value_low; //
|
|
FIT_UINT32 custom_target_value_high; //
|
|
FIT_UINT32 secondary_target_value; //
|
|
FIT_UINT32 secondary_custom_target_value_low; //
|
|
FIT_UINT32 secondary_custom_target_value_high; //
|
|
FIT_MESSAGE_INDEX message_index; //
|
|
FIT_EXERCISE_CATEGORY exercise_category; //
|
|
FIT_WKT_STEP_DURATION duration_type; //
|
|
FIT_WKT_STEP_TARGET target_type; //
|
|
FIT_INTENSITY intensity; //
|
|
FIT_STRING notes[FIT_WORKOUT_STEP_MESG_NOTES_COUNT]; //
|
|
FIT_WORKOUT_EQUIPMENT equipment; //
|
|
FIT_WKT_STEP_TARGET secondary_target_type; //
|
|
} FIT_WORKOUT_STEP_MESG;
|
|
|
|
typedef FIT_UINT8 FIT_WORKOUT_STEP_FIELD_NUM;
|
|
|
|
#define FIT_WORKOUT_STEP_FIELD_NUM_WKT_STEP_NAME ((FIT_WORKOUT_STEP_FIELD_NUM)0)
|
|
#define FIT_WORKOUT_STEP_FIELD_NUM_DURATION_VALUE ((FIT_WORKOUT_STEP_FIELD_NUM)2)
|
|
#define FIT_WORKOUT_STEP_FIELD_NUM_TARGET_VALUE ((FIT_WORKOUT_STEP_FIELD_NUM)4)
|
|
#define FIT_WORKOUT_STEP_FIELD_NUM_CUSTOM_TARGET_VALUE_LOW ((FIT_WORKOUT_STEP_FIELD_NUM)5)
|
|
#define FIT_WORKOUT_STEP_FIELD_NUM_CUSTOM_TARGET_VALUE_HIGH ((FIT_WORKOUT_STEP_FIELD_NUM)6)
|
|
#define FIT_WORKOUT_STEP_FIELD_NUM_SECONDARY_TARGET_VALUE ((FIT_WORKOUT_STEP_FIELD_NUM)20)
|
|
#define FIT_WORKOUT_STEP_FIELD_NUM_SECONDARY_CUSTOM_TARGET_VALUE_LOW ((FIT_WORKOUT_STEP_FIELD_NUM)21)
|
|
#define FIT_WORKOUT_STEP_FIELD_NUM_SECONDARY_CUSTOM_TARGET_VALUE_HIGH ((FIT_WORKOUT_STEP_FIELD_NUM)22)
|
|
#define FIT_WORKOUT_STEP_FIELD_NUM_MESSAGE_INDEX ((FIT_WORKOUT_STEP_FIELD_NUM)254)
|
|
#define FIT_WORKOUT_STEP_FIELD_NUM_EXERCISE_CATEGORY ((FIT_WORKOUT_STEP_FIELD_NUM)10)
|
|
#define FIT_WORKOUT_STEP_FIELD_NUM_DURATION_TYPE ((FIT_WORKOUT_STEP_FIELD_NUM)1)
|
|
#define FIT_WORKOUT_STEP_FIELD_NUM_TARGET_TYPE ((FIT_WORKOUT_STEP_FIELD_NUM)3)
|
|
#define FIT_WORKOUT_STEP_FIELD_NUM_INTENSITY ((FIT_WORKOUT_STEP_FIELD_NUM)7)
|
|
#define FIT_WORKOUT_STEP_FIELD_NUM_NOTES ((FIT_WORKOUT_STEP_FIELD_NUM)8)
|
|
#define FIT_WORKOUT_STEP_FIELD_NUM_EQUIPMENT ((FIT_WORKOUT_STEP_FIELD_NUM)9)
|
|
#define FIT_WORKOUT_STEP_FIELD_NUM_SECONDARY_TARGET_TYPE ((FIT_WORKOUT_STEP_FIELD_NUM)19)
|
|
|
|
typedef enum
|
|
{
|
|
FIT_WORKOUT_STEP_MESG_WKT_STEP_NAME,
|
|
FIT_WORKOUT_STEP_MESG_DURATION_VALUE,
|
|
FIT_WORKOUT_STEP_MESG_TARGET_VALUE,
|
|
FIT_WORKOUT_STEP_MESG_CUSTOM_TARGET_VALUE_LOW,
|
|
FIT_WORKOUT_STEP_MESG_CUSTOM_TARGET_VALUE_HIGH,
|
|
FIT_WORKOUT_STEP_MESG_SECONDARY_TARGET_VALUE,
|
|
FIT_WORKOUT_STEP_MESG_SECONDARY_CUSTOM_TARGET_VALUE_LOW,
|
|
FIT_WORKOUT_STEP_MESG_SECONDARY_CUSTOM_TARGET_VALUE_HIGH,
|
|
FIT_WORKOUT_STEP_MESG_MESSAGE_INDEX,
|
|
FIT_WORKOUT_STEP_MESG_EXERCISE_CATEGORY,
|
|
FIT_WORKOUT_STEP_MESG_DURATION_TYPE,
|
|
FIT_WORKOUT_STEP_MESG_TARGET_TYPE,
|
|
FIT_WORKOUT_STEP_MESG_INTENSITY,
|
|
FIT_WORKOUT_STEP_MESG_NOTES,
|
|
FIT_WORKOUT_STEP_MESG_EQUIPMENT,
|
|
FIT_WORKOUT_STEP_MESG_SECONDARY_TARGET_TYPE,
|
|
FIT_WORKOUT_STEP_MESG_FIELDS
|
|
} FIT_WORKOUT_STEP_MESG_FIELD;
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT8 reserved_1;
|
|
FIT_UINT8 arch;
|
|
FIT_MESG_NUM global_mesg_num;
|
|
FIT_UINT8 num_fields;
|
|
FIT_UINT8 fields[FIT_WORKOUT_STEP_MESG_FIELDS * FIT_FIELD_DEF_SIZE];
|
|
} FIT_WORKOUT_STEP_MESG_DEF;
|
|
|
|
// exercise_title message
|
|
|
|
#define FIT_EXERCISE_TITLE_MESG_SIZE 206
|
|
#define FIT_EXERCISE_TITLE_MESG_DEF_SIZE 17
|
|
#define FIT_EXERCISE_TITLE_MESG_WKT_STEP_NAME_COUNT 200
|
|
|
|
typedef struct
|
|
{
|
|
FIT_STRING wkt_step_name[FIT_EXERCISE_TITLE_MESG_WKT_STEP_NAME_COUNT]; //
|
|
FIT_MESSAGE_INDEX message_index; //
|
|
FIT_EXERCISE_CATEGORY exercise_category; //
|
|
FIT_UINT16 exercise_name; //
|
|
} FIT_EXERCISE_TITLE_MESG;
|
|
|
|
typedef FIT_UINT8 FIT_EXERCISE_TITLE_FIELD_NUM;
|
|
|
|
#define FIT_EXERCISE_TITLE_FIELD_NUM_WKT_STEP_NAME ((FIT_EXERCISE_TITLE_FIELD_NUM)2)
|
|
#define FIT_EXERCISE_TITLE_FIELD_NUM_MESSAGE_INDEX ((FIT_EXERCISE_TITLE_FIELD_NUM)254)
|
|
#define FIT_EXERCISE_TITLE_FIELD_NUM_EXERCISE_CATEGORY ((FIT_EXERCISE_TITLE_FIELD_NUM)0)
|
|
#define FIT_EXERCISE_TITLE_FIELD_NUM_EXERCISE_NAME ((FIT_EXERCISE_TITLE_FIELD_NUM)1)
|
|
|
|
typedef enum
|
|
{
|
|
FIT_EXERCISE_TITLE_MESG_WKT_STEP_NAME,
|
|
FIT_EXERCISE_TITLE_MESG_MESSAGE_INDEX,
|
|
FIT_EXERCISE_TITLE_MESG_EXERCISE_CATEGORY,
|
|
FIT_EXERCISE_TITLE_MESG_EXERCISE_NAME,
|
|
FIT_EXERCISE_TITLE_MESG_FIELDS
|
|
} FIT_EXERCISE_TITLE_MESG_FIELD;
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT8 reserved_1;
|
|
FIT_UINT8 arch;
|
|
FIT_MESG_NUM global_mesg_num;
|
|
FIT_UINT8 num_fields;
|
|
FIT_UINT8 fields[FIT_EXERCISE_TITLE_MESG_FIELDS * FIT_FIELD_DEF_SIZE];
|
|
} FIT_EXERCISE_TITLE_MESG_DEF;
|
|
|
|
// schedule message
|
|
|
|
#define FIT_SCHEDULE_MESG_SIZE 18
|
|
#define FIT_SCHEDULE_MESG_DEF_SIZE 26
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT32Z serial_number; // Corresponds to file_id of scheduled workout / course.
|
|
FIT_DATE_TIME time_created; // Corresponds to file_id of scheduled workout / course.
|
|
FIT_LOCAL_DATE_TIME scheduled_time; //
|
|
FIT_MANUFACTURER manufacturer; // Corresponds to file_id of scheduled workout / course.
|
|
FIT_UINT16 product; // Corresponds to file_id of scheduled workout / course.
|
|
FIT_BOOL completed; // TRUE if this activity has been started
|
|
FIT_SCHEDULE type; //
|
|
} FIT_SCHEDULE_MESG;
|
|
|
|
typedef FIT_UINT8 FIT_SCHEDULE_FIELD_NUM;
|
|
|
|
#define FIT_SCHEDULE_FIELD_NUM_SERIAL_NUMBER ((FIT_SCHEDULE_FIELD_NUM)2)
|
|
#define FIT_SCHEDULE_FIELD_NUM_TIME_CREATED ((FIT_SCHEDULE_FIELD_NUM)3)
|
|
#define FIT_SCHEDULE_FIELD_NUM_SCHEDULED_TIME ((FIT_SCHEDULE_FIELD_NUM)6)
|
|
#define FIT_SCHEDULE_FIELD_NUM_MANUFACTURER ((FIT_SCHEDULE_FIELD_NUM)0)
|
|
#define FIT_SCHEDULE_FIELD_NUM_PRODUCT ((FIT_SCHEDULE_FIELD_NUM)1)
|
|
#define FIT_SCHEDULE_FIELD_NUM_COMPLETED ((FIT_SCHEDULE_FIELD_NUM)4)
|
|
#define FIT_SCHEDULE_FIELD_NUM_TYPE ((FIT_SCHEDULE_FIELD_NUM)5)
|
|
|
|
typedef enum
|
|
{
|
|
FIT_SCHEDULE_MESG_SERIAL_NUMBER,
|
|
FIT_SCHEDULE_MESG_TIME_CREATED,
|
|
FIT_SCHEDULE_MESG_SCHEDULED_TIME,
|
|
FIT_SCHEDULE_MESG_MANUFACTURER,
|
|
FIT_SCHEDULE_MESG_PRODUCT,
|
|
FIT_SCHEDULE_MESG_COMPLETED,
|
|
FIT_SCHEDULE_MESG_TYPE,
|
|
FIT_SCHEDULE_MESG_FIELDS
|
|
} FIT_SCHEDULE_MESG_FIELD;
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT8 reserved_1;
|
|
FIT_UINT8 arch;
|
|
FIT_MESG_NUM global_mesg_num;
|
|
FIT_UINT8 num_fields;
|
|
FIT_UINT8 fields[FIT_SCHEDULE_MESG_FIELDS * FIT_FIELD_DEF_SIZE];
|
|
} FIT_SCHEDULE_MESG_DEF;
|
|
|
|
// totals message
|
|
|
|
#define FIT_TOTALS_MESG_SIZE 29
|
|
#define FIT_TOTALS_MESG_DEF_SIZE 32
|
|
|
|
typedef struct
|
|
{
|
|
FIT_DATE_TIME timestamp; // 1 * s + 0,
|
|
FIT_UINT32 timer_time; // 1 * s + 0, Excludes pauses
|
|
FIT_UINT32 distance; // 1 * m + 0,
|
|
FIT_UINT32 calories; // 1 * kcal + 0,
|
|
FIT_UINT32 elapsed_time; // 1 * s + 0, Includes pauses
|
|
FIT_UINT32 active_time; // 1 * s + 0,
|
|
FIT_MESSAGE_INDEX message_index; //
|
|
FIT_UINT16 sessions; //
|
|
FIT_SPORT sport; //
|
|
} FIT_TOTALS_MESG;
|
|
|
|
typedef FIT_UINT8 FIT_TOTALS_FIELD_NUM;
|
|
|
|
#define FIT_TOTALS_FIELD_NUM_TIMESTAMP ((FIT_TOTALS_FIELD_NUM)253)
|
|
#define FIT_TOTALS_FIELD_NUM_TIMER_TIME ((FIT_TOTALS_FIELD_NUM)0)
|
|
#define FIT_TOTALS_FIELD_NUM_DISTANCE ((FIT_TOTALS_FIELD_NUM)1)
|
|
#define FIT_TOTALS_FIELD_NUM_CALORIES ((FIT_TOTALS_FIELD_NUM)2)
|
|
#define FIT_TOTALS_FIELD_NUM_ELAPSED_TIME ((FIT_TOTALS_FIELD_NUM)4)
|
|
#define FIT_TOTALS_FIELD_NUM_ACTIVE_TIME ((FIT_TOTALS_FIELD_NUM)6)
|
|
#define FIT_TOTALS_FIELD_NUM_MESSAGE_INDEX ((FIT_TOTALS_FIELD_NUM)254)
|
|
#define FIT_TOTALS_FIELD_NUM_SESSIONS ((FIT_TOTALS_FIELD_NUM)5)
|
|
#define FIT_TOTALS_FIELD_NUM_SPORT ((FIT_TOTALS_FIELD_NUM)3)
|
|
|
|
typedef enum
|
|
{
|
|
FIT_TOTALS_MESG_TIMESTAMP,
|
|
FIT_TOTALS_MESG_TIMER_TIME,
|
|
FIT_TOTALS_MESG_DISTANCE,
|
|
FIT_TOTALS_MESG_CALORIES,
|
|
FIT_TOTALS_MESG_ELAPSED_TIME,
|
|
FIT_TOTALS_MESG_ACTIVE_TIME,
|
|
FIT_TOTALS_MESG_MESSAGE_INDEX,
|
|
FIT_TOTALS_MESG_SESSIONS,
|
|
FIT_TOTALS_MESG_SPORT,
|
|
FIT_TOTALS_MESG_FIELDS
|
|
} FIT_TOTALS_MESG_FIELD;
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT8 reserved_1;
|
|
FIT_UINT8 arch;
|
|
FIT_MESG_NUM global_mesg_num;
|
|
FIT_UINT8 num_fields;
|
|
FIT_UINT8 fields[FIT_TOTALS_MESG_FIELDS * FIT_FIELD_DEF_SIZE];
|
|
} FIT_TOTALS_MESG_DEF;
|
|
|
|
// weight_scale message
|
|
|
|
#define FIT_WEIGHT_SCALE_MESG_SIZE 27
|
|
#define FIT_WEIGHT_SCALE_MESG_DEF_SIZE 47
|
|
|
|
typedef struct
|
|
{
|
|
FIT_DATE_TIME timestamp; // 1 * s + 0,
|
|
FIT_WEIGHT weight; // 100 * kg + 0,
|
|
FIT_UINT16 percent_fat; // 100 * % + 0,
|
|
FIT_UINT16 percent_hydration; // 100 * % + 0,
|
|
FIT_UINT16 visceral_fat_mass; // 100 * kg + 0,
|
|
FIT_UINT16 bone_mass; // 100 * kg + 0,
|
|
FIT_UINT16 muscle_mass; // 100 * kg + 0,
|
|
FIT_UINT16 basal_met; // 4 * kcal/day + 0,
|
|
FIT_UINT16 active_met; // 4 * kcal/day + 0, ~4kJ per kcal, 0.25 allows max 16384 kcal
|
|
FIT_MESSAGE_INDEX user_profile_index; // Associates this weight scale message to a user. This corresponds to the index of the user profile message in the weight scale file.
|
|
FIT_UINT16 bmi; // 10 * kg/m^2 + 0,
|
|
FIT_UINT8 physique_rating; //
|
|
FIT_UINT8 metabolic_age; // 1 * years + 0,
|
|
FIT_UINT8 visceral_fat_rating; //
|
|
} FIT_WEIGHT_SCALE_MESG;
|
|
|
|
typedef FIT_UINT8 FIT_WEIGHT_SCALE_FIELD_NUM;
|
|
|
|
#define FIT_WEIGHT_SCALE_FIELD_NUM_TIMESTAMP ((FIT_WEIGHT_SCALE_FIELD_NUM)253)
|
|
#define FIT_WEIGHT_SCALE_FIELD_NUM_WEIGHT ((FIT_WEIGHT_SCALE_FIELD_NUM)0)
|
|
#define FIT_WEIGHT_SCALE_FIELD_NUM_PERCENT_FAT ((FIT_WEIGHT_SCALE_FIELD_NUM)1)
|
|
#define FIT_WEIGHT_SCALE_FIELD_NUM_PERCENT_HYDRATION ((FIT_WEIGHT_SCALE_FIELD_NUM)2)
|
|
#define FIT_WEIGHT_SCALE_FIELD_NUM_VISCERAL_FAT_MASS ((FIT_WEIGHT_SCALE_FIELD_NUM)3)
|
|
#define FIT_WEIGHT_SCALE_FIELD_NUM_BONE_MASS ((FIT_WEIGHT_SCALE_FIELD_NUM)4)
|
|
#define FIT_WEIGHT_SCALE_FIELD_NUM_MUSCLE_MASS ((FIT_WEIGHT_SCALE_FIELD_NUM)5)
|
|
#define FIT_WEIGHT_SCALE_FIELD_NUM_BASAL_MET ((FIT_WEIGHT_SCALE_FIELD_NUM)7)
|
|
#define FIT_WEIGHT_SCALE_FIELD_NUM_ACTIVE_MET ((FIT_WEIGHT_SCALE_FIELD_NUM)9)
|
|
#define FIT_WEIGHT_SCALE_FIELD_NUM_USER_PROFILE_INDEX ((FIT_WEIGHT_SCALE_FIELD_NUM)12)
|
|
#define FIT_WEIGHT_SCALE_FIELD_NUM_BMI ((FIT_WEIGHT_SCALE_FIELD_NUM)13)
|
|
#define FIT_WEIGHT_SCALE_FIELD_NUM_PHYSIQUE_RATING ((FIT_WEIGHT_SCALE_FIELD_NUM)8)
|
|
#define FIT_WEIGHT_SCALE_FIELD_NUM_METABOLIC_AGE ((FIT_WEIGHT_SCALE_FIELD_NUM)10)
|
|
#define FIT_WEIGHT_SCALE_FIELD_NUM_VISCERAL_FAT_RATING ((FIT_WEIGHT_SCALE_FIELD_NUM)11)
|
|
|
|
typedef enum
|
|
{
|
|
FIT_WEIGHT_SCALE_MESG_TIMESTAMP,
|
|
FIT_WEIGHT_SCALE_MESG_WEIGHT,
|
|
FIT_WEIGHT_SCALE_MESG_PERCENT_FAT,
|
|
FIT_WEIGHT_SCALE_MESG_PERCENT_HYDRATION,
|
|
FIT_WEIGHT_SCALE_MESG_VISCERAL_FAT_MASS,
|
|
FIT_WEIGHT_SCALE_MESG_BONE_MASS,
|
|
FIT_WEIGHT_SCALE_MESG_MUSCLE_MASS,
|
|
FIT_WEIGHT_SCALE_MESG_BASAL_MET,
|
|
FIT_WEIGHT_SCALE_MESG_ACTIVE_MET,
|
|
FIT_WEIGHT_SCALE_MESG_USER_PROFILE_INDEX,
|
|
FIT_WEIGHT_SCALE_MESG_BMI,
|
|
FIT_WEIGHT_SCALE_MESG_PHYSIQUE_RATING,
|
|
FIT_WEIGHT_SCALE_MESG_METABOLIC_AGE,
|
|
FIT_WEIGHT_SCALE_MESG_VISCERAL_FAT_RATING,
|
|
FIT_WEIGHT_SCALE_MESG_FIELDS
|
|
} FIT_WEIGHT_SCALE_MESG_FIELD;
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT8 reserved_1;
|
|
FIT_UINT8 arch;
|
|
FIT_MESG_NUM global_mesg_num;
|
|
FIT_UINT8 num_fields;
|
|
FIT_UINT8 fields[FIT_WEIGHT_SCALE_MESG_FIELDS * FIT_FIELD_DEF_SIZE];
|
|
} FIT_WEIGHT_SCALE_MESG_DEF;
|
|
|
|
// blood_pressure message
|
|
|
|
#define FIT_BLOOD_PRESSURE_MESG_SIZE 21
|
|
#define FIT_BLOOD_PRESSURE_MESG_DEF_SIZE 38
|
|
|
|
typedef struct
|
|
{
|
|
FIT_DATE_TIME timestamp; // 1 * s + 0,
|
|
FIT_UINT16 systolic_pressure; // 1 * mmHg + 0,
|
|
FIT_UINT16 diastolic_pressure; // 1 * mmHg + 0,
|
|
FIT_UINT16 mean_arterial_pressure; // 1 * mmHg + 0,
|
|
FIT_UINT16 map_3_sample_mean; // 1 * mmHg + 0,
|
|
FIT_UINT16 map_morning_values; // 1 * mmHg + 0,
|
|
FIT_UINT16 map_evening_values; // 1 * mmHg + 0,
|
|
FIT_MESSAGE_INDEX user_profile_index; // Associates this blood pressure message to a user. This corresponds to the index of the user profile message in the blood pressure file.
|
|
FIT_UINT8 heart_rate; // 1 * bpm + 0,
|
|
FIT_HR_TYPE heart_rate_type; //
|
|
FIT_BP_STATUS status; //
|
|
} FIT_BLOOD_PRESSURE_MESG;
|
|
|
|
typedef FIT_UINT8 FIT_BLOOD_PRESSURE_FIELD_NUM;
|
|
|
|
#define FIT_BLOOD_PRESSURE_FIELD_NUM_TIMESTAMP ((FIT_BLOOD_PRESSURE_FIELD_NUM)253)
|
|
#define FIT_BLOOD_PRESSURE_FIELD_NUM_SYSTOLIC_PRESSURE ((FIT_BLOOD_PRESSURE_FIELD_NUM)0)
|
|
#define FIT_BLOOD_PRESSURE_FIELD_NUM_DIASTOLIC_PRESSURE ((FIT_BLOOD_PRESSURE_FIELD_NUM)1)
|
|
#define FIT_BLOOD_PRESSURE_FIELD_NUM_MEAN_ARTERIAL_PRESSURE ((FIT_BLOOD_PRESSURE_FIELD_NUM)2)
|
|
#define FIT_BLOOD_PRESSURE_FIELD_NUM_MAP_3_SAMPLE_MEAN ((FIT_BLOOD_PRESSURE_FIELD_NUM)3)
|
|
#define FIT_BLOOD_PRESSURE_FIELD_NUM_MAP_MORNING_VALUES ((FIT_BLOOD_PRESSURE_FIELD_NUM)4)
|
|
#define FIT_BLOOD_PRESSURE_FIELD_NUM_MAP_EVENING_VALUES ((FIT_BLOOD_PRESSURE_FIELD_NUM)5)
|
|
#define FIT_BLOOD_PRESSURE_FIELD_NUM_USER_PROFILE_INDEX ((FIT_BLOOD_PRESSURE_FIELD_NUM)9)
|
|
#define FIT_BLOOD_PRESSURE_FIELD_NUM_HEART_RATE ((FIT_BLOOD_PRESSURE_FIELD_NUM)6)
|
|
#define FIT_BLOOD_PRESSURE_FIELD_NUM_HEART_RATE_TYPE ((FIT_BLOOD_PRESSURE_FIELD_NUM)7)
|
|
#define FIT_BLOOD_PRESSURE_FIELD_NUM_STATUS ((FIT_BLOOD_PRESSURE_FIELD_NUM)8)
|
|
|
|
typedef enum
|
|
{
|
|
FIT_BLOOD_PRESSURE_MESG_TIMESTAMP,
|
|
FIT_BLOOD_PRESSURE_MESG_SYSTOLIC_PRESSURE,
|
|
FIT_BLOOD_PRESSURE_MESG_DIASTOLIC_PRESSURE,
|
|
FIT_BLOOD_PRESSURE_MESG_MEAN_ARTERIAL_PRESSURE,
|
|
FIT_BLOOD_PRESSURE_MESG_MAP_3_SAMPLE_MEAN,
|
|
FIT_BLOOD_PRESSURE_MESG_MAP_MORNING_VALUES,
|
|
FIT_BLOOD_PRESSURE_MESG_MAP_EVENING_VALUES,
|
|
FIT_BLOOD_PRESSURE_MESG_USER_PROFILE_INDEX,
|
|
FIT_BLOOD_PRESSURE_MESG_HEART_RATE,
|
|
FIT_BLOOD_PRESSURE_MESG_HEART_RATE_TYPE,
|
|
FIT_BLOOD_PRESSURE_MESG_STATUS,
|
|
FIT_BLOOD_PRESSURE_MESG_FIELDS
|
|
} FIT_BLOOD_PRESSURE_MESG_FIELD;
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT8 reserved_1;
|
|
FIT_UINT8 arch;
|
|
FIT_MESG_NUM global_mesg_num;
|
|
FIT_UINT8 num_fields;
|
|
FIT_UINT8 fields[FIT_BLOOD_PRESSURE_MESG_FIELDS * FIT_FIELD_DEF_SIZE];
|
|
} FIT_BLOOD_PRESSURE_MESG_DEF;
|
|
|
|
// monitoring_info message
|
|
|
|
#define FIT_MONITORING_INFO_MESG_SIZE 8
|
|
#define FIT_MONITORING_INFO_MESG_DEF_SIZE 11
|
|
|
|
typedef struct
|
|
{
|
|
FIT_DATE_TIME timestamp; // 1 * s + 0,
|
|
FIT_LOCAL_DATE_TIME local_timestamp; // 1 * s + 0, Use to convert activity timestamps to local time if device does not support time zone and daylight savings time correction.
|
|
} FIT_MONITORING_INFO_MESG;
|
|
|
|
typedef FIT_UINT8 FIT_MONITORING_INFO_FIELD_NUM;
|
|
|
|
#define FIT_MONITORING_INFO_FIELD_NUM_TIMESTAMP ((FIT_MONITORING_INFO_FIELD_NUM)253)
|
|
#define FIT_MONITORING_INFO_FIELD_NUM_LOCAL_TIMESTAMP ((FIT_MONITORING_INFO_FIELD_NUM)0)
|
|
|
|
typedef enum
|
|
{
|
|
FIT_MONITORING_INFO_MESG_TIMESTAMP,
|
|
FIT_MONITORING_INFO_MESG_LOCAL_TIMESTAMP,
|
|
FIT_MONITORING_INFO_MESG_FIELDS
|
|
} FIT_MONITORING_INFO_MESG_FIELD;
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT8 reserved_1;
|
|
FIT_UINT8 arch;
|
|
FIT_MESG_NUM global_mesg_num;
|
|
FIT_UINT8 num_fields;
|
|
FIT_UINT8 fields[FIT_MONITORING_INFO_MESG_FIELDS * FIT_FIELD_DEF_SIZE];
|
|
} FIT_MONITORING_INFO_MESG_DEF;
|
|
|
|
// monitoring message
|
|
|
|
#define FIT_MONITORING_MESG_SIZE 31
|
|
#define FIT_MONITORING_MESG_DEF_SIZE 41
|
|
|
|
typedef struct
|
|
{
|
|
FIT_DATE_TIME timestamp; // 1 * s + 0, Must align to logging interval, for example, time must be 00:00:00 for daily log.
|
|
FIT_UINT32 distance; // 100 * m + 0, Accumulated distance. Maintained by MonitoringReader for each activity_type. See SDK documentation.
|
|
FIT_UINT32 cycles; // 2 * cycles + 0, Accumulated cycles. Maintained by MonitoringReader for each activity_type. See SDK documentation.
|
|
FIT_UINT32 active_time; // 1000 * s + 0,
|
|
FIT_LOCAL_DATE_TIME local_timestamp; // Must align to logging interval, for example, time must be 00:00:00 for daily log.
|
|
FIT_UINT16 calories; // 1 * kcal + 0, Accumulated total calories. Maintained by MonitoringReader for each activity_type. See SDK documentation
|
|
FIT_UINT16 distance_16; // 1 * 100 * m + 0,
|
|
FIT_UINT16 cycles_16; // 1 * 2 * cycles (steps) + 0,
|
|
FIT_UINT16 active_time_16; // 1 * s + 0,
|
|
FIT_DEVICE_INDEX device_index; // Associates this data to device_info message. Not required for file with single device (sensor).
|
|
FIT_ACTIVITY_TYPE activity_type; //
|
|
FIT_ACTIVITY_SUBTYPE activity_subtype; //
|
|
} FIT_MONITORING_MESG;
|
|
|
|
typedef FIT_UINT8 FIT_MONITORING_FIELD_NUM;
|
|
|
|
#define FIT_MONITORING_FIELD_NUM_TIMESTAMP ((FIT_MONITORING_FIELD_NUM)253)
|
|
#define FIT_MONITORING_FIELD_NUM_DISTANCE ((FIT_MONITORING_FIELD_NUM)2)
|
|
#define FIT_MONITORING_FIELD_NUM_CYCLES ((FIT_MONITORING_FIELD_NUM)3)
|
|
#define FIT_MONITORING_FIELD_NUM_ACTIVE_TIME ((FIT_MONITORING_FIELD_NUM)4)
|
|
#define FIT_MONITORING_FIELD_NUM_LOCAL_TIMESTAMP ((FIT_MONITORING_FIELD_NUM)11)
|
|
#define FIT_MONITORING_FIELD_NUM_CALORIES ((FIT_MONITORING_FIELD_NUM)1)
|
|
#define FIT_MONITORING_FIELD_NUM_DISTANCE_16 ((FIT_MONITORING_FIELD_NUM)8)
|
|
#define FIT_MONITORING_FIELD_NUM_CYCLES_16 ((FIT_MONITORING_FIELD_NUM)9)
|
|
#define FIT_MONITORING_FIELD_NUM_ACTIVE_TIME_16 ((FIT_MONITORING_FIELD_NUM)10)
|
|
#define FIT_MONITORING_FIELD_NUM_DEVICE_INDEX ((FIT_MONITORING_FIELD_NUM)0)
|
|
#define FIT_MONITORING_FIELD_NUM_ACTIVITY_TYPE ((FIT_MONITORING_FIELD_NUM)5)
|
|
#define FIT_MONITORING_FIELD_NUM_ACTIVITY_SUBTYPE ((FIT_MONITORING_FIELD_NUM)6)
|
|
|
|
typedef enum
|
|
{
|
|
FIT_MONITORING_MESG_TIMESTAMP,
|
|
FIT_MONITORING_MESG_DISTANCE,
|
|
FIT_MONITORING_MESG_CYCLES,
|
|
FIT_MONITORING_MESG_ACTIVE_TIME,
|
|
FIT_MONITORING_MESG_LOCAL_TIMESTAMP,
|
|
FIT_MONITORING_MESG_CALORIES,
|
|
FIT_MONITORING_MESG_DISTANCE_16,
|
|
FIT_MONITORING_MESG_CYCLES_16,
|
|
FIT_MONITORING_MESG_ACTIVE_TIME_16,
|
|
FIT_MONITORING_MESG_DEVICE_INDEX,
|
|
FIT_MONITORING_MESG_ACTIVITY_TYPE,
|
|
FIT_MONITORING_MESG_ACTIVITY_SUBTYPE,
|
|
FIT_MONITORING_MESG_FIELDS
|
|
} FIT_MONITORING_MESG_FIELD;
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT8 reserved_1;
|
|
FIT_UINT8 arch;
|
|
FIT_MESG_NUM global_mesg_num;
|
|
FIT_UINT8 num_fields;
|
|
FIT_UINT8 fields[FIT_MONITORING_MESG_FIELDS * FIT_FIELD_DEF_SIZE];
|
|
} FIT_MONITORING_MESG_DEF;
|
|
|
|
// monitoring_hr_data message
|
|
|
|
#define FIT_MONITORING_HR_DATA_MESG_SIZE 6
|
|
#define FIT_MONITORING_HR_DATA_MESG_DEF_SIZE 14
|
|
|
|
typedef struct
|
|
{
|
|
FIT_DATE_TIME timestamp; // 1 * s + 0, Must align to logging interval, for example, time must be 00:00:00 for daily log.
|
|
FIT_UINT8 resting_heart_rate; // 1 * bpm + 0, 7-day rolling average
|
|
FIT_UINT8 current_day_resting_heart_rate; // 1 * bpm + 0, RHR for today only. (Feeds into 7-day average)
|
|
} FIT_MONITORING_HR_DATA_MESG;
|
|
|
|
typedef FIT_UINT8 FIT_MONITORING_HR_DATA_FIELD_NUM;
|
|
|
|
#define FIT_MONITORING_HR_DATA_FIELD_NUM_TIMESTAMP ((FIT_MONITORING_HR_DATA_FIELD_NUM)253)
|
|
#define FIT_MONITORING_HR_DATA_FIELD_NUM_RESTING_HEART_RATE ((FIT_MONITORING_HR_DATA_FIELD_NUM)0)
|
|
#define FIT_MONITORING_HR_DATA_FIELD_NUM_CURRENT_DAY_RESTING_HEART_RATE ((FIT_MONITORING_HR_DATA_FIELD_NUM)1)
|
|
|
|
typedef enum
|
|
{
|
|
FIT_MONITORING_HR_DATA_MESG_TIMESTAMP,
|
|
FIT_MONITORING_HR_DATA_MESG_RESTING_HEART_RATE,
|
|
FIT_MONITORING_HR_DATA_MESG_CURRENT_DAY_RESTING_HEART_RATE,
|
|
FIT_MONITORING_HR_DATA_MESG_FIELDS
|
|
} FIT_MONITORING_HR_DATA_MESG_FIELD;
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT8 reserved_1;
|
|
FIT_UINT8 arch;
|
|
FIT_MESG_NUM global_mesg_num;
|
|
FIT_UINT8 num_fields;
|
|
FIT_UINT8 fields[FIT_MONITORING_HR_DATA_MESG_FIELDS * FIT_FIELD_DEF_SIZE];
|
|
} FIT_MONITORING_HR_DATA_MESG_DEF;
|
|
|
|
// hr message
|
|
|
|
#define FIT_HR_MESG_SIZE 13
|
|
#define FIT_HR_MESG_DEF_SIZE 23
|
|
#define FIT_HR_MESG_EVENT_TIMESTAMP_COUNT 1
|
|
#define FIT_HR_MESG_FILTERED_BPM_COUNT 1
|
|
#define FIT_HR_MESG_EVENT_TIMESTAMP_12_COUNT 1
|
|
|
|
typedef struct
|
|
{
|
|
FIT_DATE_TIME timestamp; //
|
|
FIT_UINT32 event_timestamp[FIT_HR_MESG_EVENT_TIMESTAMP_COUNT]; // 1024 * s + 0,
|
|
FIT_UINT16 fractional_timestamp; // 32768 * s + 0,
|
|
FIT_UINT8 time256; // 256 * s + 0,
|
|
FIT_UINT8 filtered_bpm[FIT_HR_MESG_FILTERED_BPM_COUNT]; // 1 * bpm + 0,
|
|
FIT_BYTE event_timestamp_12[FIT_HR_MESG_EVENT_TIMESTAMP_12_COUNT]; //
|
|
} FIT_HR_MESG;
|
|
|
|
typedef FIT_UINT8 FIT_HR_FIELD_NUM;
|
|
|
|
#define FIT_HR_FIELD_NUM_TIMESTAMP ((FIT_HR_FIELD_NUM)253)
|
|
#define FIT_HR_FIELD_NUM_EVENT_TIMESTAMP ((FIT_HR_FIELD_NUM)9)
|
|
#define FIT_HR_FIELD_NUM_FRACTIONAL_TIMESTAMP ((FIT_HR_FIELD_NUM)0)
|
|
#define FIT_HR_FIELD_NUM_TIME256 ((FIT_HR_FIELD_NUM)1)
|
|
#define FIT_HR_FIELD_NUM_FILTERED_BPM ((FIT_HR_FIELD_NUM)6)
|
|
#define FIT_HR_FIELD_NUM_EVENT_TIMESTAMP_12 ((FIT_HR_FIELD_NUM)10)
|
|
|
|
typedef enum
|
|
{
|
|
FIT_HR_MESG_TIMESTAMP,
|
|
FIT_HR_MESG_EVENT_TIMESTAMP,
|
|
FIT_HR_MESG_FRACTIONAL_TIMESTAMP,
|
|
FIT_HR_MESG_TIME256,
|
|
FIT_HR_MESG_FILTERED_BPM,
|
|
FIT_HR_MESG_EVENT_TIMESTAMP_12,
|
|
FIT_HR_MESG_FIELDS
|
|
} FIT_HR_MESG_FIELD;
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT8 reserved_1;
|
|
FIT_UINT8 arch;
|
|
FIT_MESG_NUM global_mesg_num;
|
|
FIT_UINT8 num_fields;
|
|
FIT_UINT8 fields[FIT_HR_MESG_FIELDS * FIT_FIELD_DEF_SIZE];
|
|
} FIT_HR_MESG_DEF;
|
|
|
|
// ant_rx message
|
|
|
|
#define FIT_ANT_RX_MESG_SIZE 25
|
|
#define FIT_ANT_RX_MESG_DEF_SIZE 23
|
|
#define FIT_ANT_RX_MESG_DATA_COUNT 8
|
|
#define FIT_ANT_RX_MESG_MESG_DATA_COUNT 9
|
|
|
|
typedef struct
|
|
{
|
|
FIT_DATE_TIME timestamp; // 1 * s + 0,
|
|
FIT_BYTE data[FIT_ANT_RX_MESG_DATA_COUNT]; //
|
|
FIT_UINT16 fractional_timestamp; // 32768 * s + 0,
|
|
FIT_BYTE mesg_id; //
|
|
FIT_BYTE mesg_data[FIT_ANT_RX_MESG_MESG_DATA_COUNT]; //
|
|
FIT_UINT8 channel_number; //
|
|
} FIT_ANT_RX_MESG;
|
|
|
|
typedef FIT_UINT8 FIT_ANT_RX_FIELD_NUM;
|
|
|
|
#define FIT_ANT_RX_FIELD_NUM_TIMESTAMP ((FIT_ANT_RX_FIELD_NUM)253)
|
|
#define FIT_ANT_RX_FIELD_NUM_DATA ((FIT_ANT_RX_FIELD_NUM)4)
|
|
#define FIT_ANT_RX_FIELD_NUM_FRACTIONAL_TIMESTAMP ((FIT_ANT_RX_FIELD_NUM)0)
|
|
#define FIT_ANT_RX_FIELD_NUM_MESG_ID ((FIT_ANT_RX_FIELD_NUM)1)
|
|
#define FIT_ANT_RX_FIELD_NUM_MESG_DATA ((FIT_ANT_RX_FIELD_NUM)2)
|
|
#define FIT_ANT_RX_FIELD_NUM_CHANNEL_NUMBER ((FIT_ANT_RX_FIELD_NUM)3)
|
|
|
|
typedef enum
|
|
{
|
|
FIT_ANT_RX_MESG_TIMESTAMP,
|
|
FIT_ANT_RX_MESG_DATA,
|
|
FIT_ANT_RX_MESG_FRACTIONAL_TIMESTAMP,
|
|
FIT_ANT_RX_MESG_MESG_ID,
|
|
FIT_ANT_RX_MESG_MESG_DATA,
|
|
FIT_ANT_RX_MESG_CHANNEL_NUMBER,
|
|
FIT_ANT_RX_MESG_FIELDS
|
|
} FIT_ANT_RX_MESG_FIELD;
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT8 reserved_1;
|
|
FIT_UINT8 arch;
|
|
FIT_MESG_NUM global_mesg_num;
|
|
FIT_UINT8 num_fields;
|
|
FIT_UINT8 fields[FIT_ANT_RX_MESG_FIELDS * FIT_FIELD_DEF_SIZE];
|
|
} FIT_ANT_RX_MESG_DEF;
|
|
|
|
// ant_tx message
|
|
|
|
#define FIT_ANT_TX_MESG_SIZE 25
|
|
#define FIT_ANT_TX_MESG_DEF_SIZE 23
|
|
#define FIT_ANT_TX_MESG_DATA_COUNT 8
|
|
#define FIT_ANT_TX_MESG_MESG_DATA_COUNT 9
|
|
|
|
typedef struct
|
|
{
|
|
FIT_DATE_TIME timestamp; // 1 * s + 0,
|
|
FIT_BYTE data[FIT_ANT_TX_MESG_DATA_COUNT]; //
|
|
FIT_UINT16 fractional_timestamp; // 32768 * s + 0,
|
|
FIT_BYTE mesg_id; //
|
|
FIT_BYTE mesg_data[FIT_ANT_TX_MESG_MESG_DATA_COUNT]; //
|
|
FIT_UINT8 channel_number; //
|
|
} FIT_ANT_TX_MESG;
|
|
|
|
typedef FIT_UINT8 FIT_ANT_TX_FIELD_NUM;
|
|
|
|
#define FIT_ANT_TX_FIELD_NUM_TIMESTAMP ((FIT_ANT_TX_FIELD_NUM)253)
|
|
#define FIT_ANT_TX_FIELD_NUM_DATA ((FIT_ANT_TX_FIELD_NUM)4)
|
|
#define FIT_ANT_TX_FIELD_NUM_FRACTIONAL_TIMESTAMP ((FIT_ANT_TX_FIELD_NUM)0)
|
|
#define FIT_ANT_TX_FIELD_NUM_MESG_ID ((FIT_ANT_TX_FIELD_NUM)1)
|
|
#define FIT_ANT_TX_FIELD_NUM_MESG_DATA ((FIT_ANT_TX_FIELD_NUM)2)
|
|
#define FIT_ANT_TX_FIELD_NUM_CHANNEL_NUMBER ((FIT_ANT_TX_FIELD_NUM)3)
|
|
|
|
typedef enum
|
|
{
|
|
FIT_ANT_TX_MESG_TIMESTAMP,
|
|
FIT_ANT_TX_MESG_DATA,
|
|
FIT_ANT_TX_MESG_FRACTIONAL_TIMESTAMP,
|
|
FIT_ANT_TX_MESG_MESG_ID,
|
|
FIT_ANT_TX_MESG_MESG_DATA,
|
|
FIT_ANT_TX_MESG_CHANNEL_NUMBER,
|
|
FIT_ANT_TX_MESG_FIELDS
|
|
} FIT_ANT_TX_MESG_FIELD;
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT8 reserved_1;
|
|
FIT_UINT8 arch;
|
|
FIT_MESG_NUM global_mesg_num;
|
|
FIT_UINT8 num_fields;
|
|
FIT_UINT8 fields[FIT_ANT_TX_MESG_FIELDS * FIT_FIELD_DEF_SIZE];
|
|
} FIT_ANT_TX_MESG_DEF;
|
|
|
|
// exd_screen_configuration message
|
|
|
|
#define FIT_EXD_SCREEN_CONFIGURATION_MESG_SIZE 4
|
|
#define FIT_EXD_SCREEN_CONFIGURATION_MESG_DEF_SIZE 17
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT8 screen_index; //
|
|
FIT_UINT8 field_count; // number of fields in screen
|
|
FIT_EXD_LAYOUT layout; //
|
|
FIT_BOOL screen_enabled; //
|
|
} FIT_EXD_SCREEN_CONFIGURATION_MESG;
|
|
|
|
typedef FIT_UINT8 FIT_EXD_SCREEN_CONFIGURATION_FIELD_NUM;
|
|
|
|
#define FIT_EXD_SCREEN_CONFIGURATION_FIELD_NUM_SCREEN_INDEX ((FIT_EXD_SCREEN_CONFIGURATION_FIELD_NUM)0)
|
|
#define FIT_EXD_SCREEN_CONFIGURATION_FIELD_NUM_FIELD_COUNT ((FIT_EXD_SCREEN_CONFIGURATION_FIELD_NUM)1)
|
|
#define FIT_EXD_SCREEN_CONFIGURATION_FIELD_NUM_LAYOUT ((FIT_EXD_SCREEN_CONFIGURATION_FIELD_NUM)2)
|
|
#define FIT_EXD_SCREEN_CONFIGURATION_FIELD_NUM_SCREEN_ENABLED ((FIT_EXD_SCREEN_CONFIGURATION_FIELD_NUM)3)
|
|
|
|
typedef enum
|
|
{
|
|
FIT_EXD_SCREEN_CONFIGURATION_MESG_SCREEN_INDEX,
|
|
FIT_EXD_SCREEN_CONFIGURATION_MESG_FIELD_COUNT,
|
|
FIT_EXD_SCREEN_CONFIGURATION_MESG_LAYOUT,
|
|
FIT_EXD_SCREEN_CONFIGURATION_MESG_SCREEN_ENABLED,
|
|
FIT_EXD_SCREEN_CONFIGURATION_MESG_FIELDS
|
|
} FIT_EXD_SCREEN_CONFIGURATION_MESG_FIELD;
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT8 reserved_1;
|
|
FIT_UINT8 arch;
|
|
FIT_MESG_NUM global_mesg_num;
|
|
FIT_UINT8 num_fields;
|
|
FIT_UINT8 fields[FIT_EXD_SCREEN_CONFIGURATION_MESG_FIELDS * FIT_FIELD_DEF_SIZE];
|
|
} FIT_EXD_SCREEN_CONFIGURATION_MESG_DEF;
|
|
|
|
// exd_data_field_configuration message
|
|
|
|
#define FIT_EXD_DATA_FIELD_CONFIGURATION_MESG_SIZE 6
|
|
#define FIT_EXD_DATA_FIELD_CONFIGURATION_MESG_DEF_SIZE 23
|
|
#define FIT_EXD_DATA_FIELD_CONFIGURATION_MESG_TITLE_COUNT 1
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT8 screen_index; //
|
|
FIT_BYTE concept_field; //
|
|
FIT_UINT8 field_id; //
|
|
FIT_UINT8 concept_count; //
|
|
FIT_EXD_DISPLAY_TYPE display_type; //
|
|
FIT_STRING title[FIT_EXD_DATA_FIELD_CONFIGURATION_MESG_TITLE_COUNT]; //
|
|
} FIT_EXD_DATA_FIELD_CONFIGURATION_MESG;
|
|
|
|
typedef FIT_UINT8 FIT_EXD_DATA_FIELD_CONFIGURATION_FIELD_NUM;
|
|
|
|
#define FIT_EXD_DATA_FIELD_CONFIGURATION_FIELD_NUM_SCREEN_INDEX ((FIT_EXD_DATA_FIELD_CONFIGURATION_FIELD_NUM)0)
|
|
#define FIT_EXD_DATA_FIELD_CONFIGURATION_FIELD_NUM_CONCEPT_FIELD ((FIT_EXD_DATA_FIELD_CONFIGURATION_FIELD_NUM)1)
|
|
#define FIT_EXD_DATA_FIELD_CONFIGURATION_FIELD_NUM_FIELD_ID ((FIT_EXD_DATA_FIELD_CONFIGURATION_FIELD_NUM)2)
|
|
#define FIT_EXD_DATA_FIELD_CONFIGURATION_FIELD_NUM_CONCEPT_COUNT ((FIT_EXD_DATA_FIELD_CONFIGURATION_FIELD_NUM)3)
|
|
#define FIT_EXD_DATA_FIELD_CONFIGURATION_FIELD_NUM_DISPLAY_TYPE ((FIT_EXD_DATA_FIELD_CONFIGURATION_FIELD_NUM)4)
|
|
#define FIT_EXD_DATA_FIELD_CONFIGURATION_FIELD_NUM_TITLE ((FIT_EXD_DATA_FIELD_CONFIGURATION_FIELD_NUM)5)
|
|
|
|
typedef enum
|
|
{
|
|
FIT_EXD_DATA_FIELD_CONFIGURATION_MESG_SCREEN_INDEX,
|
|
FIT_EXD_DATA_FIELD_CONFIGURATION_MESG_CONCEPT_FIELD,
|
|
FIT_EXD_DATA_FIELD_CONFIGURATION_MESG_FIELD_ID,
|
|
FIT_EXD_DATA_FIELD_CONFIGURATION_MESG_CONCEPT_COUNT,
|
|
FIT_EXD_DATA_FIELD_CONFIGURATION_MESG_DISPLAY_TYPE,
|
|
FIT_EXD_DATA_FIELD_CONFIGURATION_MESG_TITLE,
|
|
FIT_EXD_DATA_FIELD_CONFIGURATION_MESG_FIELDS
|
|
} FIT_EXD_DATA_FIELD_CONFIGURATION_MESG_FIELD;
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT8 reserved_1;
|
|
FIT_UINT8 arch;
|
|
FIT_MESG_NUM global_mesg_num;
|
|
FIT_UINT8 num_fields;
|
|
FIT_UINT8 fields[FIT_EXD_DATA_FIELD_CONFIGURATION_MESG_FIELDS * FIT_FIELD_DEF_SIZE];
|
|
} FIT_EXD_DATA_FIELD_CONFIGURATION_MESG_DEF;
|
|
|
|
// exd_data_concept_configuration message
|
|
|
|
#define FIT_EXD_DATA_CONCEPT_CONFIGURATION_MESG_SIZE 11
|
|
#define FIT_EXD_DATA_CONCEPT_CONFIGURATION_MESG_DEF_SIZE 38
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT8 screen_index; //
|
|
FIT_BYTE concept_field; //
|
|
FIT_UINT8 field_id; //
|
|
FIT_UINT8 concept_index; //
|
|
FIT_UINT8 data_page; //
|
|
FIT_UINT8 concept_key; //
|
|
FIT_UINT8 scaling; //
|
|
FIT_EXD_DATA_UNITS data_units; //
|
|
FIT_EXD_QUALIFIERS qualifier; //
|
|
FIT_EXD_DESCRIPTORS descriptor; //
|
|
FIT_BOOL is_signed; //
|
|
} FIT_EXD_DATA_CONCEPT_CONFIGURATION_MESG;
|
|
|
|
typedef FIT_UINT8 FIT_EXD_DATA_CONCEPT_CONFIGURATION_FIELD_NUM;
|
|
|
|
#define FIT_EXD_DATA_CONCEPT_CONFIGURATION_FIELD_NUM_SCREEN_INDEX ((FIT_EXD_DATA_CONCEPT_CONFIGURATION_FIELD_NUM)0)
|
|
#define FIT_EXD_DATA_CONCEPT_CONFIGURATION_FIELD_NUM_CONCEPT_FIELD ((FIT_EXD_DATA_CONCEPT_CONFIGURATION_FIELD_NUM)1)
|
|
#define FIT_EXD_DATA_CONCEPT_CONFIGURATION_FIELD_NUM_FIELD_ID ((FIT_EXD_DATA_CONCEPT_CONFIGURATION_FIELD_NUM)2)
|
|
#define FIT_EXD_DATA_CONCEPT_CONFIGURATION_FIELD_NUM_CONCEPT_INDEX ((FIT_EXD_DATA_CONCEPT_CONFIGURATION_FIELD_NUM)3)
|
|
#define FIT_EXD_DATA_CONCEPT_CONFIGURATION_FIELD_NUM_DATA_PAGE ((FIT_EXD_DATA_CONCEPT_CONFIGURATION_FIELD_NUM)4)
|
|
#define FIT_EXD_DATA_CONCEPT_CONFIGURATION_FIELD_NUM_CONCEPT_KEY ((FIT_EXD_DATA_CONCEPT_CONFIGURATION_FIELD_NUM)5)
|
|
#define FIT_EXD_DATA_CONCEPT_CONFIGURATION_FIELD_NUM_SCALING ((FIT_EXD_DATA_CONCEPT_CONFIGURATION_FIELD_NUM)6)
|
|
#define FIT_EXD_DATA_CONCEPT_CONFIGURATION_FIELD_NUM_DATA_UNITS ((FIT_EXD_DATA_CONCEPT_CONFIGURATION_FIELD_NUM)8)
|
|
#define FIT_EXD_DATA_CONCEPT_CONFIGURATION_FIELD_NUM_QUALIFIER ((FIT_EXD_DATA_CONCEPT_CONFIGURATION_FIELD_NUM)9)
|
|
#define FIT_EXD_DATA_CONCEPT_CONFIGURATION_FIELD_NUM_DESCRIPTOR ((FIT_EXD_DATA_CONCEPT_CONFIGURATION_FIELD_NUM)10)
|
|
#define FIT_EXD_DATA_CONCEPT_CONFIGURATION_FIELD_NUM_IS_SIGNED ((FIT_EXD_DATA_CONCEPT_CONFIGURATION_FIELD_NUM)11)
|
|
|
|
typedef enum
|
|
{
|
|
FIT_EXD_DATA_CONCEPT_CONFIGURATION_MESG_SCREEN_INDEX,
|
|
FIT_EXD_DATA_CONCEPT_CONFIGURATION_MESG_CONCEPT_FIELD,
|
|
FIT_EXD_DATA_CONCEPT_CONFIGURATION_MESG_FIELD_ID,
|
|
FIT_EXD_DATA_CONCEPT_CONFIGURATION_MESG_CONCEPT_INDEX,
|
|
FIT_EXD_DATA_CONCEPT_CONFIGURATION_MESG_DATA_PAGE,
|
|
FIT_EXD_DATA_CONCEPT_CONFIGURATION_MESG_CONCEPT_KEY,
|
|
FIT_EXD_DATA_CONCEPT_CONFIGURATION_MESG_SCALING,
|
|
FIT_EXD_DATA_CONCEPT_CONFIGURATION_MESG_DATA_UNITS,
|
|
FIT_EXD_DATA_CONCEPT_CONFIGURATION_MESG_QUALIFIER,
|
|
FIT_EXD_DATA_CONCEPT_CONFIGURATION_MESG_DESCRIPTOR,
|
|
FIT_EXD_DATA_CONCEPT_CONFIGURATION_MESG_IS_SIGNED,
|
|
FIT_EXD_DATA_CONCEPT_CONFIGURATION_MESG_FIELDS
|
|
} FIT_EXD_DATA_CONCEPT_CONFIGURATION_MESG_FIELD;
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT8 reserved_1;
|
|
FIT_UINT8 arch;
|
|
FIT_MESG_NUM global_mesg_num;
|
|
FIT_UINT8 num_fields;
|
|
FIT_UINT8 fields[FIT_EXD_DATA_CONCEPT_CONFIGURATION_MESG_FIELDS * FIT_FIELD_DEF_SIZE];
|
|
} FIT_EXD_DATA_CONCEPT_CONFIGURATION_MESG_DEF;
|
|
|
|
// hrv message
|
|
|
|
#define FIT_HRV_MESG_SIZE 2
|
|
#define FIT_HRV_MESG_DEF_SIZE 8
|
|
#define FIT_HRV_MESG_TIME_COUNT 1
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT16 time[FIT_HRV_MESG_TIME_COUNT]; // 1000 * s + 0, Time between beats
|
|
} FIT_HRV_MESG;
|
|
|
|
typedef FIT_UINT8 FIT_HRV_FIELD_NUM;
|
|
|
|
#define FIT_HRV_FIELD_NUM_TIME ((FIT_HRV_FIELD_NUM)0)
|
|
|
|
typedef enum
|
|
{
|
|
FIT_HRV_MESG_TIME,
|
|
FIT_HRV_MESG_FIELDS
|
|
} FIT_HRV_MESG_FIELD;
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT8 reserved_1;
|
|
FIT_UINT8 arch;
|
|
FIT_MESG_NUM global_mesg_num;
|
|
FIT_UINT8 num_fields;
|
|
FIT_UINT8 fields[FIT_HRV_MESG_FIELDS * FIT_FIELD_DEF_SIZE];
|
|
} FIT_HRV_MESG_DEF;
|
|
|
|
typedef enum {
|
|
FIT_MESG_PAD,
|
|
FIT_MESG_FILE_ID,
|
|
FIT_MESG_FILE_CREATOR,
|
|
FIT_MESG_SOFTWARE,
|
|
FIT_MESG_SLAVE_DEVICE,
|
|
FIT_MESG_CAPABILITIES,
|
|
FIT_MESG_FILE_CAPABILITIES,
|
|
FIT_MESG_MESG_CAPABILITIES,
|
|
FIT_MESG_FIELD_CAPABILITIES,
|
|
FIT_MESG_DEVICE_SETTINGS,
|
|
FIT_MESG_USER_PROFILE,
|
|
FIT_MESG_HRM_PROFILE,
|
|
FIT_MESG_SDM_PROFILE,
|
|
FIT_MESG_BIKE_PROFILE,
|
|
FIT_MESG_CONNECTIVITY,
|
|
FIT_MESG_ZONES_TARGET,
|
|
FIT_MESG_SPORT,
|
|
FIT_MESG_HR_ZONE,
|
|
FIT_MESG_SPEED_ZONE,
|
|
FIT_MESG_CADENCE_ZONE,
|
|
FIT_MESG_POWER_ZONE,
|
|
FIT_MESG_MET_ZONE,
|
|
FIT_MESG_DIVE_SETTINGS,
|
|
FIT_MESG_GOAL,
|
|
FIT_MESG_ACTIVITY,
|
|
FIT_MESG_SESSION,
|
|
FIT_MESG_LAP,
|
|
FIT_MESG_LENGTH,
|
|
FIT_MESG_RECORD,
|
|
FIT_MESG_EVENT,
|
|
FIT_MESG_DEVICE_INFO,
|
|
FIT_MESG_DEVICE_AUX_BATTERY_INFO,
|
|
FIT_MESG_TRAINING_FILE,
|
|
FIT_MESG_WEATHER_CONDITIONS,
|
|
FIT_MESG_WEATHER_ALERT,
|
|
FIT_MESG_NMEA_SENTENCE,
|
|
FIT_MESG_AVIATION_ATTITUDE,
|
|
FIT_MESG_VIDEO_TITLE,
|
|
FIT_MESG_VIDEO_DESCRIPTION,
|
|
FIT_MESG_SET,
|
|
FIT_MESG_FIELD_DESCRIPTION,
|
|
FIT_MESG_DEVELOPER_DATA_ID,
|
|
FIT_MESG_COURSE,
|
|
FIT_MESG_COURSE_POINT,
|
|
FIT_MESG_SEGMENT_ID,
|
|
FIT_MESG_SEGMENT_LEADERBOARD_ENTRY,
|
|
FIT_MESG_SEGMENT_POINT,
|
|
FIT_MESG_SEGMENT_LAP,
|
|
FIT_MESG_SEGMENT_FILE,
|
|
FIT_MESG_WORKOUT,
|
|
FIT_MESG_WORKOUT_SESSION,
|
|
FIT_MESG_WORKOUT_STEP,
|
|
FIT_MESG_EXERCISE_TITLE,
|
|
FIT_MESG_SCHEDULE,
|
|
FIT_MESG_TOTALS,
|
|
FIT_MESG_WEIGHT_SCALE,
|
|
FIT_MESG_BLOOD_PRESSURE,
|
|
FIT_MESG_MONITORING_INFO,
|
|
FIT_MESG_MONITORING,
|
|
FIT_MESG_MONITORING_HR_DATA,
|
|
FIT_MESG_HR,
|
|
FIT_MESG_ANT_RX,
|
|
FIT_MESG_ANT_TX,
|
|
FIT_MESG_EXD_SCREEN_CONFIGURATION,
|
|
FIT_MESG_EXD_DATA_FIELD_CONFIGURATION,
|
|
FIT_MESG_EXD_DATA_CONCEPT_CONFIGURATION,
|
|
FIT_MESG_HRV,
|
|
FIT_MESGS
|
|
} FIT_MESG;
|
|
|
|
typedef const FIT_MESG_DEF * FIT_CONST_MESG_DEF_PTR;
|
|
extern const FIT_CONST_MESG_DEF_PTR fit_mesg_defs[FIT_MESGS];
|
|
|
|
|
|
|
|
|
|
///////////////////////////////////////////////////////////////////////
|
|
// Files
|
|
// Use FIT_MESG_OFFSET macro get byte offset of messages in a file.
|
|
///////////////////////////////////////////////////////////////////////
|
|
|
|
#define FIT_FILE_DATA_SIZE ((FIT_UINT32)63)
|
|
#define FIT_FILE_SIZE (FIT_FILE_HDR_SIZE + FIT_FILE_DATA_SIZE + sizeof(FIT_UINT16))
|
|
#define FIT_FILE_MESG_COUNT 1
|
|
|
|
typedef enum {
|
|
FIT_FILE_DEF_DEVICE,
|
|
FIT_FILE_DEFS
|
|
} FIT_FILE_DEF_ENUM;
|
|
|
|
typedef enum {
|
|
FIT_FILE_INDEX_DEVICE_0,
|
|
FIT_FILE_INDEX_COUNT
|
|
} FIT_FILE_INDEX;
|
|
|
|
#define FIT_FILE_INDEX_DEVICE FIT_FILE_INDEX_DEVICE_0
|
|
|
|
#define FIT_DEVICE_FILE_FILE_ID_MESGS 1
|
|
#define FIT_DEVICE_FILE_DATA_SIZE ((FIT_UINT32)63)
|
|
#define FIT_DEVICE_FILE_SIZE (FIT_FILE_HDR_SIZE + FIT_DEVICE_FILE_DATA_SIZE + sizeof(FIT_UINT16))
|
|
#define FIT_DEVICE_FILE_MESG_COUNT 1
|
|
#define FIT_DEVICE_FILE_COUNT 1
|
|
|
|
|
|
|
|
#define FIT_DEVICE_FILE_CRC_PAD_SIZE ((FIT_ALIGNMENT - FIT_FILE_CRC_SIZE) % FIT_ALIGNMENT)
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT8 hdr[FIT_FILE_HDR_SIZE];
|
|
FIT_UINT8 file_id_mesg_def[FIT_HDR_SIZE + FIT_FILE_ID_MESG_DEF_SIZE];
|
|
FIT_UINT8 file_id_mesg[FIT_DEVICE_FILE_FILE_ID_MESGS][FIT_HDR_SIZE + FIT_FILE_ID_MESG_SIZE];
|
|
FIT_UINT8 crc[2];
|
|
} FIT_DEVICE_FILE;
|
|
|
|
extern const FIT_DEVICE_FILE fit_device_file;
|
|
|
|
|
|
extern const FIT_FILE_DEF fit_file_defs[FIT_FILE_DEFS];
|
|
|
|
|
|
|
|
|
|
|
|
#if defined(__cplusplus)
|
|
}
|
|
#endif
|
|
|
|
#endif // !defined(FIT_EXAMPLE_H)
|
|
|