mirror of
https://github.com/GoldenCheetah/GoldenCheetah.git
synced 2026-02-13 16:18:42 +00:00
The presence of a \ in a string will produce an error in python 3.13 Using raw strings in all regexes avoids this.
9435 lines
754 KiB
C
9435 lines
754 KiB
C
/////////////////////////////////////////////////////////////////////////////////////////////
|
|
// Copyright 2025 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.188.0Release
|
|
// Tag = production/release/21.188.0-0-g55050f8
|
|
// 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_CAST(FIT_FILE, 1)) // Read only, single file. Must be in root directory.
|
|
#define FIT_FILE_SETTINGS (FIT_CAST(FIT_FILE, 2)) // Read/write, single file. Directory=Settings
|
|
#define FIT_FILE_SPORT (FIT_CAST(FIT_FILE, 3)) // Read/write, multiple files, file number = sport type. Directory=Sports
|
|
#define FIT_FILE_ACTIVITY (FIT_CAST(FIT_FILE, 4)) // Read/erase, multiple files. Directory=Activities
|
|
#define FIT_FILE_WORKOUT (FIT_CAST(FIT_FILE, 5)) // Read/write/erase, multiple files. Directory=Workouts
|
|
#define FIT_FILE_COURSE (FIT_CAST(FIT_FILE, 6)) // Read/write/erase, multiple files. Directory=Courses
|
|
#define FIT_FILE_SCHEDULES (FIT_CAST(FIT_FILE, 7)) // Read/write, single file. Directory=Schedules
|
|
#define FIT_FILE_WEIGHT (FIT_CAST(FIT_FILE, 9)) // Read only, single file. Circular buffer. All message definitions at start of file. Directory=Weight
|
|
#define FIT_FILE_TOTALS (FIT_CAST(FIT_FILE, 10)) // Read only, single file. Directory=Totals
|
|
#define FIT_FILE_GOALS (FIT_CAST(FIT_FILE, 11)) // Read/write, single file. Directory=Goals
|
|
#define FIT_FILE_BLOOD_PRESSURE (FIT_CAST(FIT_FILE, 14)) // Read only. Directory=Blood Pressure
|
|
#define FIT_FILE_MONITORING_A (FIT_CAST(FIT_FILE, 15)) // Read only. Directory=Monitoring. File number=sub type.
|
|
#define FIT_FILE_ACTIVITY_SUMMARY (FIT_CAST(FIT_FILE, 20)) // Read/erase, multiple files. Directory=Activities
|
|
#define FIT_FILE_MONITORING_DAILY (FIT_CAST(FIT_FILE, 28))
|
|
#define FIT_FILE_MONITORING_B (FIT_CAST(FIT_FILE, 32)) // Read only. Directory=Monitoring. File number=identifier
|
|
#define FIT_FILE_SEGMENT (FIT_CAST(FIT_FILE, 34)) // Read/write/erase. Multiple Files. Directory=Segments
|
|
#define FIT_FILE_SEGMENT_LIST (FIT_CAST(FIT_FILE, 35)) // Read/write/erase. Single File. Directory=Segments
|
|
#define FIT_FILE_EXD_CONFIGURATION (FIT_CAST(FIT_FILE, 40)) // Read/write/erase. Single File. Directory=Settings
|
|
#define FIT_FILE_MFG_RANGE_MIN (FIT_CAST(FIT_FILE, 0xF7)) // 0xF7 - 0xFE reserved for manufacturer specific file types
|
|
#define FIT_FILE_MFG_RANGE_MAX (FIT_CAST(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_CAST(FIT_MESG_NUM, 0))
|
|
#define FIT_MESG_NUM_CAPABILITIES (FIT_CAST(FIT_MESG_NUM, 1))
|
|
#define FIT_MESG_NUM_DEVICE_SETTINGS (FIT_CAST(FIT_MESG_NUM, 2))
|
|
#define FIT_MESG_NUM_USER_PROFILE (FIT_CAST(FIT_MESG_NUM, 3))
|
|
#define FIT_MESG_NUM_HRM_PROFILE (FIT_CAST(FIT_MESG_NUM, 4))
|
|
#define FIT_MESG_NUM_SDM_PROFILE (FIT_CAST(FIT_MESG_NUM, 5))
|
|
#define FIT_MESG_NUM_BIKE_PROFILE (FIT_CAST(FIT_MESG_NUM, 6))
|
|
#define FIT_MESG_NUM_ZONES_TARGET (FIT_CAST(FIT_MESG_NUM, 7))
|
|
#define FIT_MESG_NUM_HR_ZONE (FIT_CAST(FIT_MESG_NUM, 8))
|
|
#define FIT_MESG_NUM_POWER_ZONE (FIT_CAST(FIT_MESG_NUM, 9))
|
|
#define FIT_MESG_NUM_MET_ZONE (FIT_CAST(FIT_MESG_NUM, 10))
|
|
#define FIT_MESG_NUM_SPORT (FIT_CAST(FIT_MESG_NUM, 12))
|
|
#define FIT_MESG_NUM_TRAINING_SETTINGS (FIT_CAST(FIT_MESG_NUM, 13))
|
|
#define FIT_MESG_NUM_GOAL (FIT_CAST(FIT_MESG_NUM, 15))
|
|
#define FIT_MESG_NUM_SESSION (FIT_CAST(FIT_MESG_NUM, 18))
|
|
#define FIT_MESG_NUM_LAP (FIT_CAST(FIT_MESG_NUM, 19))
|
|
#define FIT_MESG_NUM_RECORD (FIT_CAST(FIT_MESG_NUM, 20))
|
|
#define FIT_MESG_NUM_EVENT (FIT_CAST(FIT_MESG_NUM, 21))
|
|
#define FIT_MESG_NUM_DEVICE_INFO (FIT_CAST(FIT_MESG_NUM, 23))
|
|
#define FIT_MESG_NUM_WORKOUT (FIT_CAST(FIT_MESG_NUM, 26))
|
|
#define FIT_MESG_NUM_WORKOUT_STEP (FIT_CAST(FIT_MESG_NUM, 27))
|
|
#define FIT_MESG_NUM_SCHEDULE (FIT_CAST(FIT_MESG_NUM, 28))
|
|
#define FIT_MESG_NUM_WEIGHT_SCALE (FIT_CAST(FIT_MESG_NUM, 30))
|
|
#define FIT_MESG_NUM_COURSE (FIT_CAST(FIT_MESG_NUM, 31))
|
|
#define FIT_MESG_NUM_COURSE_POINT (FIT_CAST(FIT_MESG_NUM, 32))
|
|
#define FIT_MESG_NUM_TOTALS (FIT_CAST(FIT_MESG_NUM, 33))
|
|
#define FIT_MESG_NUM_ACTIVITY (FIT_CAST(FIT_MESG_NUM, 34))
|
|
#define FIT_MESG_NUM_SOFTWARE (FIT_CAST(FIT_MESG_NUM, 35))
|
|
#define FIT_MESG_NUM_FILE_CAPABILITIES (FIT_CAST(FIT_MESG_NUM, 37))
|
|
#define FIT_MESG_NUM_MESG_CAPABILITIES (FIT_CAST(FIT_MESG_NUM, 38))
|
|
#define FIT_MESG_NUM_FIELD_CAPABILITIES (FIT_CAST(FIT_MESG_NUM, 39))
|
|
#define FIT_MESG_NUM_FILE_CREATOR (FIT_CAST(FIT_MESG_NUM, 49))
|
|
#define FIT_MESG_NUM_BLOOD_PRESSURE (FIT_CAST(FIT_MESG_NUM, 51))
|
|
#define FIT_MESG_NUM_SPEED_ZONE (FIT_CAST(FIT_MESG_NUM, 53))
|
|
#define FIT_MESG_NUM_MONITORING (FIT_CAST(FIT_MESG_NUM, 55))
|
|
#define FIT_MESG_NUM_TRAINING_FILE (FIT_CAST(FIT_MESG_NUM, 72))
|
|
#define FIT_MESG_NUM_HRV (FIT_CAST(FIT_MESG_NUM, 78))
|
|
#define FIT_MESG_NUM_ANT_RX (FIT_CAST(FIT_MESG_NUM, 80))
|
|
#define FIT_MESG_NUM_ANT_TX (FIT_CAST(FIT_MESG_NUM, 81))
|
|
#define FIT_MESG_NUM_ANT_CHANNEL_ID (FIT_CAST(FIT_MESG_NUM, 82))
|
|
#define FIT_MESG_NUM_LENGTH (FIT_CAST(FIT_MESG_NUM, 101))
|
|
#define FIT_MESG_NUM_MONITORING_INFO (FIT_CAST(FIT_MESG_NUM, 103))
|
|
#define FIT_MESG_NUM_PAD (FIT_CAST(FIT_MESG_NUM, 105))
|
|
#define FIT_MESG_NUM_SLAVE_DEVICE (FIT_CAST(FIT_MESG_NUM, 106))
|
|
#define FIT_MESG_NUM_CONNECTIVITY (FIT_CAST(FIT_MESG_NUM, 127))
|
|
#define FIT_MESG_NUM_WEATHER_CONDITIONS (FIT_CAST(FIT_MESG_NUM, 128))
|
|
#define FIT_MESG_NUM_WEATHER_ALERT (FIT_CAST(FIT_MESG_NUM, 129))
|
|
#define FIT_MESG_NUM_CADENCE_ZONE (FIT_CAST(FIT_MESG_NUM, 131))
|
|
#define FIT_MESG_NUM_HR (FIT_CAST(FIT_MESG_NUM, 132))
|
|
#define FIT_MESG_NUM_SEGMENT_LAP (FIT_CAST(FIT_MESG_NUM, 142))
|
|
#define FIT_MESG_NUM_MEMO_GLOB (FIT_CAST(FIT_MESG_NUM, 145))
|
|
#define FIT_MESG_NUM_SEGMENT_ID (FIT_CAST(FIT_MESG_NUM, 148))
|
|
#define FIT_MESG_NUM_SEGMENT_LEADERBOARD_ENTRY (FIT_CAST(FIT_MESG_NUM, 149))
|
|
#define FIT_MESG_NUM_SEGMENT_POINT (FIT_CAST(FIT_MESG_NUM, 150))
|
|
#define FIT_MESG_NUM_SEGMENT_FILE (FIT_CAST(FIT_MESG_NUM, 151))
|
|
#define FIT_MESG_NUM_WORKOUT_SESSION (FIT_CAST(FIT_MESG_NUM, 158))
|
|
#define FIT_MESG_NUM_WATCHFACE_SETTINGS (FIT_CAST(FIT_MESG_NUM, 159))
|
|
#define FIT_MESG_NUM_GPS_METADATA (FIT_CAST(FIT_MESG_NUM, 160))
|
|
#define FIT_MESG_NUM_CAMERA_EVENT (FIT_CAST(FIT_MESG_NUM, 161))
|
|
#define FIT_MESG_NUM_TIMESTAMP_CORRELATION (FIT_CAST(FIT_MESG_NUM, 162))
|
|
#define FIT_MESG_NUM_GYROSCOPE_DATA (FIT_CAST(FIT_MESG_NUM, 164))
|
|
#define FIT_MESG_NUM_ACCELEROMETER_DATA (FIT_CAST(FIT_MESG_NUM, 165))
|
|
#define FIT_MESG_NUM_THREE_D_SENSOR_CALIBRATION (FIT_CAST(FIT_MESG_NUM, 167))
|
|
#define FIT_MESG_NUM_VIDEO_FRAME (FIT_CAST(FIT_MESG_NUM, 169))
|
|
#define FIT_MESG_NUM_OBDII_DATA (FIT_CAST(FIT_MESG_NUM, 174))
|
|
#define FIT_MESG_NUM_NMEA_SENTENCE (FIT_CAST(FIT_MESG_NUM, 177))
|
|
#define FIT_MESG_NUM_AVIATION_ATTITUDE (FIT_CAST(FIT_MESG_NUM, 178))
|
|
#define FIT_MESG_NUM_VIDEO (FIT_CAST(FIT_MESG_NUM, 184))
|
|
#define FIT_MESG_NUM_VIDEO_TITLE (FIT_CAST(FIT_MESG_NUM, 185))
|
|
#define FIT_MESG_NUM_VIDEO_DESCRIPTION (FIT_CAST(FIT_MESG_NUM, 186))
|
|
#define FIT_MESG_NUM_VIDEO_CLIP (FIT_CAST(FIT_MESG_NUM, 187))
|
|
#define FIT_MESG_NUM_OHR_SETTINGS (FIT_CAST(FIT_MESG_NUM, 188))
|
|
#define FIT_MESG_NUM_EXD_SCREEN_CONFIGURATION (FIT_CAST(FIT_MESG_NUM, 200))
|
|
#define FIT_MESG_NUM_EXD_DATA_FIELD_CONFIGURATION (FIT_CAST(FIT_MESG_NUM, 201))
|
|
#define FIT_MESG_NUM_EXD_DATA_CONCEPT_CONFIGURATION (FIT_CAST(FIT_MESG_NUM, 202))
|
|
#define FIT_MESG_NUM_FIELD_DESCRIPTION (FIT_CAST(FIT_MESG_NUM, 206))
|
|
#define FIT_MESG_NUM_DEVELOPER_DATA_ID (FIT_CAST(FIT_MESG_NUM, 207))
|
|
#define FIT_MESG_NUM_MAGNETOMETER_DATA (FIT_CAST(FIT_MESG_NUM, 208))
|
|
#define FIT_MESG_NUM_BAROMETER_DATA (FIT_CAST(FIT_MESG_NUM, 209))
|
|
#define FIT_MESG_NUM_ONE_D_SENSOR_CALIBRATION (FIT_CAST(FIT_MESG_NUM, 210))
|
|
#define FIT_MESG_NUM_MONITORING_HR_DATA (FIT_CAST(FIT_MESG_NUM, 211))
|
|
#define FIT_MESG_NUM_TIME_IN_ZONE (FIT_CAST(FIT_MESG_NUM, 216))
|
|
#define FIT_MESG_NUM_SET (FIT_CAST(FIT_MESG_NUM, 225))
|
|
#define FIT_MESG_NUM_STRESS_LEVEL (FIT_CAST(FIT_MESG_NUM, 227))
|
|
#define FIT_MESG_NUM_MAX_MET_DATA (FIT_CAST(FIT_MESG_NUM, 229))
|
|
#define FIT_MESG_NUM_DIVE_SETTINGS (FIT_CAST(FIT_MESG_NUM, 258))
|
|
#define FIT_MESG_NUM_DIVE_GAS (FIT_CAST(FIT_MESG_NUM, 259))
|
|
#define FIT_MESG_NUM_DIVE_ALARM (FIT_CAST(FIT_MESG_NUM, 262))
|
|
#define FIT_MESG_NUM_EXERCISE_TITLE (FIT_CAST(FIT_MESG_NUM, 264))
|
|
#define FIT_MESG_NUM_DIVE_SUMMARY (FIT_CAST(FIT_MESG_NUM, 268))
|
|
#define FIT_MESG_NUM_SPO2_DATA (FIT_CAST(FIT_MESG_NUM, 269))
|
|
#define FIT_MESG_NUM_SLEEP_LEVEL (FIT_CAST(FIT_MESG_NUM, 275))
|
|
#define FIT_MESG_NUM_JUMP (FIT_CAST(FIT_MESG_NUM, 285))
|
|
#define FIT_MESG_NUM_AAD_ACCEL_FEATURES (FIT_CAST(FIT_MESG_NUM, 289))
|
|
#define FIT_MESG_NUM_BEAT_INTERVALS (FIT_CAST(FIT_MESG_NUM, 290))
|
|
#define FIT_MESG_NUM_RESPIRATION_RATE (FIT_CAST(FIT_MESG_NUM, 297))
|
|
#define FIT_MESG_NUM_HSA_ACCELEROMETER_DATA (FIT_CAST(FIT_MESG_NUM, 302))
|
|
#define FIT_MESG_NUM_HSA_STEP_DATA (FIT_CAST(FIT_MESG_NUM, 304))
|
|
#define FIT_MESG_NUM_HSA_SPO2_DATA (FIT_CAST(FIT_MESG_NUM, 305))
|
|
#define FIT_MESG_NUM_HSA_STRESS_DATA (FIT_CAST(FIT_MESG_NUM, 306))
|
|
#define FIT_MESG_NUM_HSA_RESPIRATION_DATA (FIT_CAST(FIT_MESG_NUM, 307))
|
|
#define FIT_MESG_NUM_HSA_HEART_RATE_DATA (FIT_CAST(FIT_MESG_NUM, 308))
|
|
#define FIT_MESG_NUM_SPLIT (FIT_CAST(FIT_MESG_NUM, 312))
|
|
#define FIT_MESG_NUM_SPLIT_SUMMARY (FIT_CAST(FIT_MESG_NUM, 313))
|
|
#define FIT_MESG_NUM_HSA_BODY_BATTERY_DATA (FIT_CAST(FIT_MESG_NUM, 314))
|
|
#define FIT_MESG_NUM_HSA_EVENT (FIT_CAST(FIT_MESG_NUM, 315))
|
|
#define FIT_MESG_NUM_CLIMB_PRO (FIT_CAST(FIT_MESG_NUM, 317))
|
|
#define FIT_MESG_NUM_TANK_UPDATE (FIT_CAST(FIT_MESG_NUM, 319))
|
|
#define FIT_MESG_NUM_TANK_SUMMARY (FIT_CAST(FIT_MESG_NUM, 323))
|
|
#define FIT_MESG_NUM_SLEEP_ASSESSMENT (FIT_CAST(FIT_MESG_NUM, 346))
|
|
#define FIT_MESG_NUM_HRV_STATUS_SUMMARY (FIT_CAST(FIT_MESG_NUM, 370))
|
|
#define FIT_MESG_NUM_HRV_VALUE (FIT_CAST(FIT_MESG_NUM, 371))
|
|
#define FIT_MESG_NUM_RAW_BBI (FIT_CAST(FIT_MESG_NUM, 372))
|
|
#define FIT_MESG_NUM_DEVICE_AUX_BATTERY_INFO (FIT_CAST(FIT_MESG_NUM, 375))
|
|
#define FIT_MESG_NUM_HSA_GYROSCOPE_DATA (FIT_CAST(FIT_MESG_NUM, 376))
|
|
#define FIT_MESG_NUM_CHRONO_SHOT_SESSION (FIT_CAST(FIT_MESG_NUM, 387))
|
|
#define FIT_MESG_NUM_CHRONO_SHOT_DATA (FIT_CAST(FIT_MESG_NUM, 388))
|
|
#define FIT_MESG_NUM_HSA_CONFIGURATION_DATA (FIT_CAST(FIT_MESG_NUM, 389))
|
|
#define FIT_MESG_NUM_DIVE_APNEA_ALARM (FIT_CAST(FIT_MESG_NUM, 393))
|
|
#define FIT_MESG_NUM_SKIN_TEMP_OVERNIGHT (FIT_CAST(FIT_MESG_NUM, 398))
|
|
#define FIT_MESG_NUM_HSA_WRIST_TEMPERATURE_DATA (FIT_CAST(FIT_MESG_NUM, 409)) // Message number for the HSA wrist temperature data message
|
|
#define FIT_MESG_NUM_SLEEP_DISRUPTION_SEVERITY_PERIOD (FIT_CAST(FIT_MESG_NUM, 470))
|
|
#define FIT_MESG_NUM_SLEEP_DISRUPTION_OVERNIGHT_SEVERITY (FIT_CAST(FIT_MESG_NUM, 471))
|
|
#define FIT_MESG_NUM_MFG_RANGE_MIN (FIT_CAST(FIT_MESG_NUM, 0xFF00)) // 0xFF00 - 0xFFFE reserved for manufacturer specific messages
|
|
#define FIT_MESG_NUM_MFG_RANGE_MAX (FIT_CAST(FIT_MESG_NUM, 0xFFFE)) // 0xFF00 - 0xFFFE reserved for manufacturer specific messages
|
|
#define FIT_MESG_NUM_COUNT 125
|
|
|
|
typedef FIT_UINT8 FIT_CHECKSUM;
|
|
#define FIT_CHECKSUM_INVALID FIT_UINT8_INVALID
|
|
#define FIT_CHECKSUM_CLEAR (FIT_CAST(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_CAST(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_CAST(FIT_FILE_FLAGS, 0x02))
|
|
#define FIT_FILE_FLAGS_WRITE (FIT_CAST(FIT_FILE_FLAGS, 0x04))
|
|
#define FIT_FILE_FLAGS_ERASE (FIT_CAST(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_CAST(FIT_MESG_COUNT, 0))
|
|
#define FIT_MESG_COUNT_MAX_PER_FILE (FIT_CAST(FIT_MESG_COUNT, 1))
|
|
#define FIT_MESG_COUNT_MAX_PER_FILE_TYPE (FIT_CAST(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_CAST(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_CAST(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_CAST(FIT_MESSAGE_INDEX, 0x8000)) // message is selected if set
|
|
#define FIT_MESSAGE_INDEX_RESERVED (FIT_CAST(FIT_MESSAGE_INDEX, 0x7000)) // reserved (default 0)
|
|
#define FIT_MESSAGE_INDEX_MASK (FIT_CAST(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_CAST(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_CAST(FIT_GENDER, 0))
|
|
#define FIT_GENDER_MALE (FIT_CAST(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_CAST(FIT_LANGUAGE, 0))
|
|
#define FIT_LANGUAGE_FRENCH (FIT_CAST(FIT_LANGUAGE, 1))
|
|
#define FIT_LANGUAGE_ITALIAN (FIT_CAST(FIT_LANGUAGE, 2))
|
|
#define FIT_LANGUAGE_GERMAN (FIT_CAST(FIT_LANGUAGE, 3))
|
|
#define FIT_LANGUAGE_SPANISH (FIT_CAST(FIT_LANGUAGE, 4))
|
|
#define FIT_LANGUAGE_CROATIAN (FIT_CAST(FIT_LANGUAGE, 5))
|
|
#define FIT_LANGUAGE_CZECH (FIT_CAST(FIT_LANGUAGE, 6))
|
|
#define FIT_LANGUAGE_DANISH (FIT_CAST(FIT_LANGUAGE, 7))
|
|
#define FIT_LANGUAGE_DUTCH (FIT_CAST(FIT_LANGUAGE, 8))
|
|
#define FIT_LANGUAGE_FINNISH (FIT_CAST(FIT_LANGUAGE, 9))
|
|
#define FIT_LANGUAGE_GREEK (FIT_CAST(FIT_LANGUAGE, 10))
|
|
#define FIT_LANGUAGE_HUNGARIAN (FIT_CAST(FIT_LANGUAGE, 11))
|
|
#define FIT_LANGUAGE_NORWEGIAN (FIT_CAST(FIT_LANGUAGE, 12))
|
|
#define FIT_LANGUAGE_POLISH (FIT_CAST(FIT_LANGUAGE, 13))
|
|
#define FIT_LANGUAGE_PORTUGUESE (FIT_CAST(FIT_LANGUAGE, 14))
|
|
#define FIT_LANGUAGE_SLOVAKIAN (FIT_CAST(FIT_LANGUAGE, 15))
|
|
#define FIT_LANGUAGE_SLOVENIAN (FIT_CAST(FIT_LANGUAGE, 16))
|
|
#define FIT_LANGUAGE_SWEDISH (FIT_CAST(FIT_LANGUAGE, 17))
|
|
#define FIT_LANGUAGE_RUSSIAN (FIT_CAST(FIT_LANGUAGE, 18))
|
|
#define FIT_LANGUAGE_TURKISH (FIT_CAST(FIT_LANGUAGE, 19))
|
|
#define FIT_LANGUAGE_LATVIAN (FIT_CAST(FIT_LANGUAGE, 20))
|
|
#define FIT_LANGUAGE_UKRAINIAN (FIT_CAST(FIT_LANGUAGE, 21))
|
|
#define FIT_LANGUAGE_ARABIC (FIT_CAST(FIT_LANGUAGE, 22))
|
|
#define FIT_LANGUAGE_FARSI (FIT_CAST(FIT_LANGUAGE, 23))
|
|
#define FIT_LANGUAGE_BULGARIAN (FIT_CAST(FIT_LANGUAGE, 24))
|
|
#define FIT_LANGUAGE_ROMANIAN (FIT_CAST(FIT_LANGUAGE, 25))
|
|
#define FIT_LANGUAGE_CHINESE (FIT_CAST(FIT_LANGUAGE, 26))
|
|
#define FIT_LANGUAGE_JAPANESE (FIT_CAST(FIT_LANGUAGE, 27))
|
|
#define FIT_LANGUAGE_KOREAN (FIT_CAST(FIT_LANGUAGE, 28))
|
|
#define FIT_LANGUAGE_TAIWANESE (FIT_CAST(FIT_LANGUAGE, 29))
|
|
#define FIT_LANGUAGE_THAI (FIT_CAST(FIT_LANGUAGE, 30))
|
|
#define FIT_LANGUAGE_HEBREW (FIT_CAST(FIT_LANGUAGE, 31))
|
|
#define FIT_LANGUAGE_BRAZILIAN_PORTUGUESE (FIT_CAST(FIT_LANGUAGE, 32))
|
|
#define FIT_LANGUAGE_INDONESIAN (FIT_CAST(FIT_LANGUAGE, 33))
|
|
#define FIT_LANGUAGE_MALAYSIAN (FIT_CAST(FIT_LANGUAGE, 34))
|
|
#define FIT_LANGUAGE_VIETNAMESE (FIT_CAST(FIT_LANGUAGE, 35))
|
|
#define FIT_LANGUAGE_BURMESE (FIT_CAST(FIT_LANGUAGE, 36))
|
|
#define FIT_LANGUAGE_MONGOLIAN (FIT_CAST(FIT_LANGUAGE, 37))
|
|
#define FIT_LANGUAGE_CUSTOM (FIT_CAST(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_CAST(FIT_LANGUAGE_BITS_0, 0x01))
|
|
#define FIT_LANGUAGE_BITS_0_FRENCH (FIT_CAST(FIT_LANGUAGE_BITS_0, 0x02))
|
|
#define FIT_LANGUAGE_BITS_0_ITALIAN (FIT_CAST(FIT_LANGUAGE_BITS_0, 0x04))
|
|
#define FIT_LANGUAGE_BITS_0_GERMAN (FIT_CAST(FIT_LANGUAGE_BITS_0, 0x08))
|
|
#define FIT_LANGUAGE_BITS_0_SPANISH (FIT_CAST(FIT_LANGUAGE_BITS_0, 0x10))
|
|
#define FIT_LANGUAGE_BITS_0_CROATIAN (FIT_CAST(FIT_LANGUAGE_BITS_0, 0x20))
|
|
#define FIT_LANGUAGE_BITS_0_CZECH (FIT_CAST(FIT_LANGUAGE_BITS_0, 0x40))
|
|
#define FIT_LANGUAGE_BITS_0_DANISH (FIT_CAST(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_CAST(FIT_LANGUAGE_BITS_1, 0x01))
|
|
#define FIT_LANGUAGE_BITS_1_FINNISH (FIT_CAST(FIT_LANGUAGE_BITS_1, 0x02))
|
|
#define FIT_LANGUAGE_BITS_1_GREEK (FIT_CAST(FIT_LANGUAGE_BITS_1, 0x04))
|
|
#define FIT_LANGUAGE_BITS_1_HUNGARIAN (FIT_CAST(FIT_LANGUAGE_BITS_1, 0x08))
|
|
#define FIT_LANGUAGE_BITS_1_NORWEGIAN (FIT_CAST(FIT_LANGUAGE_BITS_1, 0x10))
|
|
#define FIT_LANGUAGE_BITS_1_POLISH (FIT_CAST(FIT_LANGUAGE_BITS_1, 0x20))
|
|
#define FIT_LANGUAGE_BITS_1_PORTUGUESE (FIT_CAST(FIT_LANGUAGE_BITS_1, 0x40))
|
|
#define FIT_LANGUAGE_BITS_1_SLOVAKIAN (FIT_CAST(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_CAST(FIT_LANGUAGE_BITS_2, 0x01))
|
|
#define FIT_LANGUAGE_BITS_2_SWEDISH (FIT_CAST(FIT_LANGUAGE_BITS_2, 0x02))
|
|
#define FIT_LANGUAGE_BITS_2_RUSSIAN (FIT_CAST(FIT_LANGUAGE_BITS_2, 0x04))
|
|
#define FIT_LANGUAGE_BITS_2_TURKISH (FIT_CAST(FIT_LANGUAGE_BITS_2, 0x08))
|
|
#define FIT_LANGUAGE_BITS_2_LATVIAN (FIT_CAST(FIT_LANGUAGE_BITS_2, 0x10))
|
|
#define FIT_LANGUAGE_BITS_2_UKRAINIAN (FIT_CAST(FIT_LANGUAGE_BITS_2, 0x20))
|
|
#define FIT_LANGUAGE_BITS_2_ARABIC (FIT_CAST(FIT_LANGUAGE_BITS_2, 0x40))
|
|
#define FIT_LANGUAGE_BITS_2_FARSI (FIT_CAST(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_CAST(FIT_LANGUAGE_BITS_3, 0x01))
|
|
#define FIT_LANGUAGE_BITS_3_ROMANIAN (FIT_CAST(FIT_LANGUAGE_BITS_3, 0x02))
|
|
#define FIT_LANGUAGE_BITS_3_CHINESE (FIT_CAST(FIT_LANGUAGE_BITS_3, 0x04))
|
|
#define FIT_LANGUAGE_BITS_3_JAPANESE (FIT_CAST(FIT_LANGUAGE_BITS_3, 0x08))
|
|
#define FIT_LANGUAGE_BITS_3_KOREAN (FIT_CAST(FIT_LANGUAGE_BITS_3, 0x10))
|
|
#define FIT_LANGUAGE_BITS_3_TAIWANESE (FIT_CAST(FIT_LANGUAGE_BITS_3, 0x20))
|
|
#define FIT_LANGUAGE_BITS_3_THAI (FIT_CAST(FIT_LANGUAGE_BITS_3, 0x40))
|
|
#define FIT_LANGUAGE_BITS_3_HEBREW (FIT_CAST(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_CAST(FIT_LANGUAGE_BITS_4, 0x01))
|
|
#define FIT_LANGUAGE_BITS_4_INDONESIAN (FIT_CAST(FIT_LANGUAGE_BITS_4, 0x02))
|
|
#define FIT_LANGUAGE_BITS_4_MALAYSIAN (FIT_CAST(FIT_LANGUAGE_BITS_4, 0x04))
|
|
#define FIT_LANGUAGE_BITS_4_VIETNAMESE (FIT_CAST(FIT_LANGUAGE_BITS_4, 0x08))
|
|
#define FIT_LANGUAGE_BITS_4_BURMESE (FIT_CAST(FIT_LANGUAGE_BITS_4, 0x10))
|
|
#define FIT_LANGUAGE_BITS_4_MONGOLIAN (FIT_CAST(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_CAST(FIT_TIME_ZONE, 0))
|
|
#define FIT_TIME_ZONE_BANGKOK (FIT_CAST(FIT_TIME_ZONE, 1))
|
|
#define FIT_TIME_ZONE_BOMBAY (FIT_CAST(FIT_TIME_ZONE, 2))
|
|
#define FIT_TIME_ZONE_BRASILIA (FIT_CAST(FIT_TIME_ZONE, 3))
|
|
#define FIT_TIME_ZONE_CAIRO (FIT_CAST(FIT_TIME_ZONE, 4))
|
|
#define FIT_TIME_ZONE_CAPE_VERDE_IS (FIT_CAST(FIT_TIME_ZONE, 5))
|
|
#define FIT_TIME_ZONE_DARWIN (FIT_CAST(FIT_TIME_ZONE, 6))
|
|
#define FIT_TIME_ZONE_ENIWETOK (FIT_CAST(FIT_TIME_ZONE, 7))
|
|
#define FIT_TIME_ZONE_FIJI (FIT_CAST(FIT_TIME_ZONE, 8))
|
|
#define FIT_TIME_ZONE_HONG_KONG (FIT_CAST(FIT_TIME_ZONE, 9))
|
|
#define FIT_TIME_ZONE_ISLAMABAD (FIT_CAST(FIT_TIME_ZONE, 10))
|
|
#define FIT_TIME_ZONE_KABUL (FIT_CAST(FIT_TIME_ZONE, 11))
|
|
#define FIT_TIME_ZONE_MAGADAN (FIT_CAST(FIT_TIME_ZONE, 12))
|
|
#define FIT_TIME_ZONE_MID_ATLANTIC (FIT_CAST(FIT_TIME_ZONE, 13))
|
|
#define FIT_TIME_ZONE_MOSCOW (FIT_CAST(FIT_TIME_ZONE, 14))
|
|
#define FIT_TIME_ZONE_MUSCAT (FIT_CAST(FIT_TIME_ZONE, 15))
|
|
#define FIT_TIME_ZONE_NEWFOUNDLAND (FIT_CAST(FIT_TIME_ZONE, 16))
|
|
#define FIT_TIME_ZONE_SAMOA (FIT_CAST(FIT_TIME_ZONE, 17))
|
|
#define FIT_TIME_ZONE_SYDNEY (FIT_CAST(FIT_TIME_ZONE, 18))
|
|
#define FIT_TIME_ZONE_TEHRAN (FIT_CAST(FIT_TIME_ZONE, 19))
|
|
#define FIT_TIME_ZONE_TOKYO (FIT_CAST(FIT_TIME_ZONE, 20))
|
|
#define FIT_TIME_ZONE_US_ALASKA (FIT_CAST(FIT_TIME_ZONE, 21))
|
|
#define FIT_TIME_ZONE_US_ATLANTIC (FIT_CAST(FIT_TIME_ZONE, 22))
|
|
#define FIT_TIME_ZONE_US_CENTRAL (FIT_CAST(FIT_TIME_ZONE, 23))
|
|
#define FIT_TIME_ZONE_US_EASTERN (FIT_CAST(FIT_TIME_ZONE, 24))
|
|
#define FIT_TIME_ZONE_US_HAWAII (FIT_CAST(FIT_TIME_ZONE, 25))
|
|
#define FIT_TIME_ZONE_US_MOUNTAIN (FIT_CAST(FIT_TIME_ZONE, 26))
|
|
#define FIT_TIME_ZONE_US_PACIFIC (FIT_CAST(FIT_TIME_ZONE, 27))
|
|
#define FIT_TIME_ZONE_OTHER (FIT_CAST(FIT_TIME_ZONE, 28))
|
|
#define FIT_TIME_ZONE_AUCKLAND (FIT_CAST(FIT_TIME_ZONE, 29))
|
|
#define FIT_TIME_ZONE_KATHMANDU (FIT_CAST(FIT_TIME_ZONE, 30))
|
|
#define FIT_TIME_ZONE_EUROPE_WESTERN_WET (FIT_CAST(FIT_TIME_ZONE, 31))
|
|
#define FIT_TIME_ZONE_EUROPE_CENTRAL_CET (FIT_CAST(FIT_TIME_ZONE, 32))
|
|
#define FIT_TIME_ZONE_EUROPE_EASTERN_EET (FIT_CAST(FIT_TIME_ZONE, 33))
|
|
#define FIT_TIME_ZONE_JAKARTA (FIT_CAST(FIT_TIME_ZONE, 34))
|
|
#define FIT_TIME_ZONE_PERTH (FIT_CAST(FIT_TIME_ZONE, 35))
|
|
#define FIT_TIME_ZONE_ADELAIDE (FIT_CAST(FIT_TIME_ZONE, 36))
|
|
#define FIT_TIME_ZONE_BRISBANE (FIT_CAST(FIT_TIME_ZONE, 37))
|
|
#define FIT_TIME_ZONE_TASMANIA (FIT_CAST(FIT_TIME_ZONE, 38))
|
|
#define FIT_TIME_ZONE_ICELAND (FIT_CAST(FIT_TIME_ZONE, 39))
|
|
#define FIT_TIME_ZONE_AMSTERDAM (FIT_CAST(FIT_TIME_ZONE, 40))
|
|
#define FIT_TIME_ZONE_ATHENS (FIT_CAST(FIT_TIME_ZONE, 41))
|
|
#define FIT_TIME_ZONE_BARCELONA (FIT_CAST(FIT_TIME_ZONE, 42))
|
|
#define FIT_TIME_ZONE_BERLIN (FIT_CAST(FIT_TIME_ZONE, 43))
|
|
#define FIT_TIME_ZONE_BRUSSELS (FIT_CAST(FIT_TIME_ZONE, 44))
|
|
#define FIT_TIME_ZONE_BUDAPEST (FIT_CAST(FIT_TIME_ZONE, 45))
|
|
#define FIT_TIME_ZONE_COPENHAGEN (FIT_CAST(FIT_TIME_ZONE, 46))
|
|
#define FIT_TIME_ZONE_DUBLIN (FIT_CAST(FIT_TIME_ZONE, 47))
|
|
#define FIT_TIME_ZONE_HELSINKI (FIT_CAST(FIT_TIME_ZONE, 48))
|
|
#define FIT_TIME_ZONE_LISBON (FIT_CAST(FIT_TIME_ZONE, 49))
|
|
#define FIT_TIME_ZONE_LONDON (FIT_CAST(FIT_TIME_ZONE, 50))
|
|
#define FIT_TIME_ZONE_MADRID (FIT_CAST(FIT_TIME_ZONE, 51))
|
|
#define FIT_TIME_ZONE_MUNICH (FIT_CAST(FIT_TIME_ZONE, 52))
|
|
#define FIT_TIME_ZONE_OSLO (FIT_CAST(FIT_TIME_ZONE, 53))
|
|
#define FIT_TIME_ZONE_PARIS (FIT_CAST(FIT_TIME_ZONE, 54))
|
|
#define FIT_TIME_ZONE_PRAGUE (FIT_CAST(FIT_TIME_ZONE, 55))
|
|
#define FIT_TIME_ZONE_REYKJAVIK (FIT_CAST(FIT_TIME_ZONE, 56))
|
|
#define FIT_TIME_ZONE_ROME (FIT_CAST(FIT_TIME_ZONE, 57))
|
|
#define FIT_TIME_ZONE_STOCKHOLM (FIT_CAST(FIT_TIME_ZONE, 58))
|
|
#define FIT_TIME_ZONE_VIENNA (FIT_CAST(FIT_TIME_ZONE, 59))
|
|
#define FIT_TIME_ZONE_WARSAW (FIT_CAST(FIT_TIME_ZONE, 60))
|
|
#define FIT_TIME_ZONE_ZURICH (FIT_CAST(FIT_TIME_ZONE, 61))
|
|
#define FIT_TIME_ZONE_QUEBEC (FIT_CAST(FIT_TIME_ZONE, 62))
|
|
#define FIT_TIME_ZONE_ONTARIO (FIT_CAST(FIT_TIME_ZONE, 63))
|
|
#define FIT_TIME_ZONE_MANITOBA (FIT_CAST(FIT_TIME_ZONE, 64))
|
|
#define FIT_TIME_ZONE_SASKATCHEWAN (FIT_CAST(FIT_TIME_ZONE, 65))
|
|
#define FIT_TIME_ZONE_ALBERTA (FIT_CAST(FIT_TIME_ZONE, 66))
|
|
#define FIT_TIME_ZONE_BRITISH_COLUMBIA (FIT_CAST(FIT_TIME_ZONE, 67))
|
|
#define FIT_TIME_ZONE_BOISE (FIT_CAST(FIT_TIME_ZONE, 68))
|
|
#define FIT_TIME_ZONE_BOSTON (FIT_CAST(FIT_TIME_ZONE, 69))
|
|
#define FIT_TIME_ZONE_CHICAGO (FIT_CAST(FIT_TIME_ZONE, 70))
|
|
#define FIT_TIME_ZONE_DALLAS (FIT_CAST(FIT_TIME_ZONE, 71))
|
|
#define FIT_TIME_ZONE_DENVER (FIT_CAST(FIT_TIME_ZONE, 72))
|
|
#define FIT_TIME_ZONE_KANSAS_CITY (FIT_CAST(FIT_TIME_ZONE, 73))
|
|
#define FIT_TIME_ZONE_LAS_VEGAS (FIT_CAST(FIT_TIME_ZONE, 74))
|
|
#define FIT_TIME_ZONE_LOS_ANGELES (FIT_CAST(FIT_TIME_ZONE, 75))
|
|
#define FIT_TIME_ZONE_MIAMI (FIT_CAST(FIT_TIME_ZONE, 76))
|
|
#define FIT_TIME_ZONE_MINNEAPOLIS (FIT_CAST(FIT_TIME_ZONE, 77))
|
|
#define FIT_TIME_ZONE_NEW_YORK (FIT_CAST(FIT_TIME_ZONE, 78))
|
|
#define FIT_TIME_ZONE_NEW_ORLEANS (FIT_CAST(FIT_TIME_ZONE, 79))
|
|
#define FIT_TIME_ZONE_PHOENIX (FIT_CAST(FIT_TIME_ZONE, 80))
|
|
#define FIT_TIME_ZONE_SANTA_FE (FIT_CAST(FIT_TIME_ZONE, 81))
|
|
#define FIT_TIME_ZONE_SEATTLE (FIT_CAST(FIT_TIME_ZONE, 82))
|
|
#define FIT_TIME_ZONE_WASHINGTON_DC (FIT_CAST(FIT_TIME_ZONE, 83))
|
|
#define FIT_TIME_ZONE_US_ARIZONA (FIT_CAST(FIT_TIME_ZONE, 84))
|
|
#define FIT_TIME_ZONE_CHITA (FIT_CAST(FIT_TIME_ZONE, 85))
|
|
#define FIT_TIME_ZONE_EKATERINBURG (FIT_CAST(FIT_TIME_ZONE, 86))
|
|
#define FIT_TIME_ZONE_IRKUTSK (FIT_CAST(FIT_TIME_ZONE, 87))
|
|
#define FIT_TIME_ZONE_KALININGRAD (FIT_CAST(FIT_TIME_ZONE, 88))
|
|
#define FIT_TIME_ZONE_KRASNOYARSK (FIT_CAST(FIT_TIME_ZONE, 89))
|
|
#define FIT_TIME_ZONE_NOVOSIBIRSK (FIT_CAST(FIT_TIME_ZONE, 90))
|
|
#define FIT_TIME_ZONE_PETROPAVLOVSK_KAMCHATSKIY (FIT_CAST(FIT_TIME_ZONE, 91))
|
|
#define FIT_TIME_ZONE_SAMARA (FIT_CAST(FIT_TIME_ZONE, 92))
|
|
#define FIT_TIME_ZONE_VLADIVOSTOK (FIT_CAST(FIT_TIME_ZONE, 93))
|
|
#define FIT_TIME_ZONE_MEXICO_CENTRAL (FIT_CAST(FIT_TIME_ZONE, 94))
|
|
#define FIT_TIME_ZONE_MEXICO_MOUNTAIN (FIT_CAST(FIT_TIME_ZONE, 95))
|
|
#define FIT_TIME_ZONE_MEXICO_PACIFIC (FIT_CAST(FIT_TIME_ZONE, 96))
|
|
#define FIT_TIME_ZONE_CAPE_TOWN (FIT_CAST(FIT_TIME_ZONE, 97))
|
|
#define FIT_TIME_ZONE_WINKHOEK (FIT_CAST(FIT_TIME_ZONE, 98))
|
|
#define FIT_TIME_ZONE_LAGOS (FIT_CAST(FIT_TIME_ZONE, 99))
|
|
#define FIT_TIME_ZONE_RIYAHD (FIT_CAST(FIT_TIME_ZONE, 100))
|
|
#define FIT_TIME_ZONE_VENEZUELA (FIT_CAST(FIT_TIME_ZONE, 101))
|
|
#define FIT_TIME_ZONE_AUSTRALIA_LH (FIT_CAST(FIT_TIME_ZONE, 102))
|
|
#define FIT_TIME_ZONE_SANTIAGO (FIT_CAST(FIT_TIME_ZONE, 103))
|
|
#define FIT_TIME_ZONE_MANUAL (FIT_CAST(FIT_TIME_ZONE, 253))
|
|
#define FIT_TIME_ZONE_AUTOMATIC (FIT_CAST(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_CAST(FIT_DISPLAY_MEASURE, 0))
|
|
#define FIT_DISPLAY_MEASURE_STATUTE (FIT_CAST(FIT_DISPLAY_MEASURE, 1))
|
|
#define FIT_DISPLAY_MEASURE_NAUTICAL (FIT_CAST(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_CAST(FIT_DISPLAY_HEART, 0))
|
|
#define FIT_DISPLAY_HEART_MAX (FIT_CAST(FIT_DISPLAY_HEART, 1))
|
|
#define FIT_DISPLAY_HEART_RESERVE (FIT_CAST(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_CAST(FIT_DISPLAY_POWER, 0))
|
|
#define FIT_DISPLAY_POWER_PERCENT_FTP (FIT_CAST(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_CAST(FIT_DISPLAY_POSITION, 0)) // dd.dddddd
|
|
#define FIT_DISPLAY_POSITION_DEGREE_MINUTE (FIT_CAST(FIT_DISPLAY_POSITION, 1)) // dddmm.mmm
|
|
#define FIT_DISPLAY_POSITION_DEGREE_MINUTE_SECOND (FIT_CAST(FIT_DISPLAY_POSITION, 2)) // dddmmss
|
|
#define FIT_DISPLAY_POSITION_AUSTRIAN_GRID (FIT_CAST(FIT_DISPLAY_POSITION, 3)) // Austrian Grid (BMN)
|
|
#define FIT_DISPLAY_POSITION_BRITISH_GRID (FIT_CAST(FIT_DISPLAY_POSITION, 4)) // British National Grid
|
|
#define FIT_DISPLAY_POSITION_DUTCH_GRID (FIT_CAST(FIT_DISPLAY_POSITION, 5)) // Dutch grid system
|
|
#define FIT_DISPLAY_POSITION_HUNGARIAN_GRID (FIT_CAST(FIT_DISPLAY_POSITION, 6)) // Hungarian grid system
|
|
#define FIT_DISPLAY_POSITION_FINNISH_GRID (FIT_CAST(FIT_DISPLAY_POSITION, 7)) // Finnish grid system Zone3 KKJ27
|
|
#define FIT_DISPLAY_POSITION_GERMAN_GRID (FIT_CAST(FIT_DISPLAY_POSITION, 8)) // Gausss Krueger (German)
|
|
#define FIT_DISPLAY_POSITION_ICELANDIC_GRID (FIT_CAST(FIT_DISPLAY_POSITION, 9)) // Icelandic Grid
|
|
#define FIT_DISPLAY_POSITION_INDONESIAN_EQUATORIAL (FIT_CAST(FIT_DISPLAY_POSITION, 10)) // Indonesian Equatorial LCO
|
|
#define FIT_DISPLAY_POSITION_INDONESIAN_IRIAN (FIT_CAST(FIT_DISPLAY_POSITION, 11)) // Indonesian Irian LCO
|
|
#define FIT_DISPLAY_POSITION_INDONESIAN_SOUTHERN (FIT_CAST(FIT_DISPLAY_POSITION, 12)) // Indonesian Southern LCO
|
|
#define FIT_DISPLAY_POSITION_INDIA_ZONE_0 (FIT_CAST(FIT_DISPLAY_POSITION, 13)) // India zone 0
|
|
#define FIT_DISPLAY_POSITION_INDIA_ZONE_IA (FIT_CAST(FIT_DISPLAY_POSITION, 14)) // India zone IA
|
|
#define FIT_DISPLAY_POSITION_INDIA_ZONE_IB (FIT_CAST(FIT_DISPLAY_POSITION, 15)) // India zone IB
|
|
#define FIT_DISPLAY_POSITION_INDIA_ZONE_IIA (FIT_CAST(FIT_DISPLAY_POSITION, 16)) // India zone IIA
|
|
#define FIT_DISPLAY_POSITION_INDIA_ZONE_IIB (FIT_CAST(FIT_DISPLAY_POSITION, 17)) // India zone IIB
|
|
#define FIT_DISPLAY_POSITION_INDIA_ZONE_IIIA (FIT_CAST(FIT_DISPLAY_POSITION, 18)) // India zone IIIA
|
|
#define FIT_DISPLAY_POSITION_INDIA_ZONE_IIIB (FIT_CAST(FIT_DISPLAY_POSITION, 19)) // India zone IIIB
|
|
#define FIT_DISPLAY_POSITION_INDIA_ZONE_IVA (FIT_CAST(FIT_DISPLAY_POSITION, 20)) // India zone IVA
|
|
#define FIT_DISPLAY_POSITION_INDIA_ZONE_IVB (FIT_CAST(FIT_DISPLAY_POSITION, 21)) // India zone IVB
|
|
#define FIT_DISPLAY_POSITION_IRISH_TRANSVERSE (FIT_CAST(FIT_DISPLAY_POSITION, 22)) // Irish Transverse Mercator
|
|
#define FIT_DISPLAY_POSITION_IRISH_GRID (FIT_CAST(FIT_DISPLAY_POSITION, 23)) // Irish Grid
|
|
#define FIT_DISPLAY_POSITION_LORAN (FIT_CAST(FIT_DISPLAY_POSITION, 24)) // Loran TD
|
|
#define FIT_DISPLAY_POSITION_MAIDENHEAD_GRID (FIT_CAST(FIT_DISPLAY_POSITION, 25)) // Maidenhead grid system
|
|
#define FIT_DISPLAY_POSITION_MGRS_GRID (FIT_CAST(FIT_DISPLAY_POSITION, 26)) // MGRS grid system
|
|
#define FIT_DISPLAY_POSITION_NEW_ZEALAND_GRID (FIT_CAST(FIT_DISPLAY_POSITION, 27)) // New Zealand grid system
|
|
#define FIT_DISPLAY_POSITION_NEW_ZEALAND_TRANSVERSE (FIT_CAST(FIT_DISPLAY_POSITION, 28)) // New Zealand Transverse Mercator
|
|
#define FIT_DISPLAY_POSITION_QATAR_GRID (FIT_CAST(FIT_DISPLAY_POSITION, 29)) // Qatar National Grid
|
|
#define FIT_DISPLAY_POSITION_MODIFIED_SWEDISH_GRID (FIT_CAST(FIT_DISPLAY_POSITION, 30)) // Modified RT-90 (Sweden)
|
|
#define FIT_DISPLAY_POSITION_SWEDISH_GRID (FIT_CAST(FIT_DISPLAY_POSITION, 31)) // RT-90 (Sweden)
|
|
#define FIT_DISPLAY_POSITION_SOUTH_AFRICAN_GRID (FIT_CAST(FIT_DISPLAY_POSITION, 32)) // South African Grid
|
|
#define FIT_DISPLAY_POSITION_SWISS_GRID (FIT_CAST(FIT_DISPLAY_POSITION, 33)) // Swiss CH-1903 grid
|
|
#define FIT_DISPLAY_POSITION_TAIWAN_GRID (FIT_CAST(FIT_DISPLAY_POSITION, 34)) // Taiwan Grid
|
|
#define FIT_DISPLAY_POSITION_UNITED_STATES_GRID (FIT_CAST(FIT_DISPLAY_POSITION, 35)) // United States National Grid
|
|
#define FIT_DISPLAY_POSITION_UTM_UPS_GRID (FIT_CAST(FIT_DISPLAY_POSITION, 36)) // UTM/UPS grid system
|
|
#define FIT_DISPLAY_POSITION_WEST_MALAYAN (FIT_CAST(FIT_DISPLAY_POSITION, 37)) // West Malayan RSO
|
|
#define FIT_DISPLAY_POSITION_BORNEO_RSO (FIT_CAST(FIT_DISPLAY_POSITION, 38)) // Borneo RSO
|
|
#define FIT_DISPLAY_POSITION_ESTONIAN_GRID (FIT_CAST(FIT_DISPLAY_POSITION, 39)) // Estonian grid system
|
|
#define FIT_DISPLAY_POSITION_LATVIAN_GRID (FIT_CAST(FIT_DISPLAY_POSITION, 40)) // Latvian Transverse Mercator
|
|
#define FIT_DISPLAY_POSITION_SWEDISH_REF_99_GRID (FIT_CAST(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_CAST(FIT_SWITCH, 0))
|
|
#define FIT_SWITCH_ON (FIT_CAST(FIT_SWITCH, 1))
|
|
#define FIT_SWITCH_AUTO (FIT_CAST(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_CAST(FIT_SPORT, 0))
|
|
#define FIT_SPORT_RUNNING (FIT_CAST(FIT_SPORT, 1))
|
|
#define FIT_SPORT_CYCLING (FIT_CAST(FIT_SPORT, 2))
|
|
#define FIT_SPORT_TRANSITION (FIT_CAST(FIT_SPORT, 3)) // Mulitsport transition
|
|
#define FIT_SPORT_FITNESS_EQUIPMENT (FIT_CAST(FIT_SPORT, 4))
|
|
#define FIT_SPORT_SWIMMING (FIT_CAST(FIT_SPORT, 5))
|
|
#define FIT_SPORT_BASKETBALL (FIT_CAST(FIT_SPORT, 6))
|
|
#define FIT_SPORT_SOCCER (FIT_CAST(FIT_SPORT, 7))
|
|
#define FIT_SPORT_TENNIS (FIT_CAST(FIT_SPORT, 8))
|
|
#define FIT_SPORT_AMERICAN_FOOTBALL (FIT_CAST(FIT_SPORT, 9))
|
|
#define FIT_SPORT_TRAINING (FIT_CAST(FIT_SPORT, 10))
|
|
#define FIT_SPORT_WALKING (FIT_CAST(FIT_SPORT, 11))
|
|
#define FIT_SPORT_CROSS_COUNTRY_SKIING (FIT_CAST(FIT_SPORT, 12))
|
|
#define FIT_SPORT_ALPINE_SKIING (FIT_CAST(FIT_SPORT, 13))
|
|
#define FIT_SPORT_SNOWBOARDING (FIT_CAST(FIT_SPORT, 14))
|
|
#define FIT_SPORT_ROWING (FIT_CAST(FIT_SPORT, 15))
|
|
#define FIT_SPORT_MOUNTAINEERING (FIT_CAST(FIT_SPORT, 16))
|
|
#define FIT_SPORT_HIKING (FIT_CAST(FIT_SPORT, 17))
|
|
#define FIT_SPORT_MULTISPORT (FIT_CAST(FIT_SPORT, 18))
|
|
#define FIT_SPORT_PADDLING (FIT_CAST(FIT_SPORT, 19))
|
|
#define FIT_SPORT_FLYING (FIT_CAST(FIT_SPORT, 20))
|
|
#define FIT_SPORT_E_BIKING (FIT_CAST(FIT_SPORT, 21))
|
|
#define FIT_SPORT_MOTORCYCLING (FIT_CAST(FIT_SPORT, 22))
|
|
#define FIT_SPORT_BOATING (FIT_CAST(FIT_SPORT, 23))
|
|
#define FIT_SPORT_DRIVING (FIT_CAST(FIT_SPORT, 24))
|
|
#define FIT_SPORT_GOLF (FIT_CAST(FIT_SPORT, 25))
|
|
#define FIT_SPORT_HANG_GLIDING (FIT_CAST(FIT_SPORT, 26))
|
|
#define FIT_SPORT_HORSEBACK_RIDING (FIT_CAST(FIT_SPORT, 27))
|
|
#define FIT_SPORT_HUNTING (FIT_CAST(FIT_SPORT, 28))
|
|
#define FIT_SPORT_FISHING (FIT_CAST(FIT_SPORT, 29))
|
|
#define FIT_SPORT_INLINE_SKATING (FIT_CAST(FIT_SPORT, 30))
|
|
#define FIT_SPORT_ROCK_CLIMBING (FIT_CAST(FIT_SPORT, 31))
|
|
#define FIT_SPORT_SAILING (FIT_CAST(FIT_SPORT, 32))
|
|
#define FIT_SPORT_ICE_SKATING (FIT_CAST(FIT_SPORT, 33))
|
|
#define FIT_SPORT_SKY_DIVING (FIT_CAST(FIT_SPORT, 34))
|
|
#define FIT_SPORT_SNOWSHOEING (FIT_CAST(FIT_SPORT, 35))
|
|
#define FIT_SPORT_SNOWMOBILING (FIT_CAST(FIT_SPORT, 36))
|
|
#define FIT_SPORT_STAND_UP_PADDLEBOARDING (FIT_CAST(FIT_SPORT, 37))
|
|
#define FIT_SPORT_SURFING (FIT_CAST(FIT_SPORT, 38))
|
|
#define FIT_SPORT_WAKEBOARDING (FIT_CAST(FIT_SPORT, 39))
|
|
#define FIT_SPORT_WATER_SKIING (FIT_CAST(FIT_SPORT, 40))
|
|
#define FIT_SPORT_KAYAKING (FIT_CAST(FIT_SPORT, 41))
|
|
#define FIT_SPORT_RAFTING (FIT_CAST(FIT_SPORT, 42))
|
|
#define FIT_SPORT_WINDSURFING (FIT_CAST(FIT_SPORT, 43))
|
|
#define FIT_SPORT_KITESURFING (FIT_CAST(FIT_SPORT, 44))
|
|
#define FIT_SPORT_TACTICAL (FIT_CAST(FIT_SPORT, 45))
|
|
#define FIT_SPORT_JUMPMASTER (FIT_CAST(FIT_SPORT, 46))
|
|
#define FIT_SPORT_BOXING (FIT_CAST(FIT_SPORT, 47))
|
|
#define FIT_SPORT_FLOOR_CLIMBING (FIT_CAST(FIT_SPORT, 48))
|
|
#define FIT_SPORT_BASEBALL (FIT_CAST(FIT_SPORT, 49))
|
|
#define FIT_SPORT_DIVING (FIT_CAST(FIT_SPORT, 53))
|
|
#define FIT_SPORT_HIIT (FIT_CAST(FIT_SPORT, 62))
|
|
#define FIT_SPORT_RACKET (FIT_CAST(FIT_SPORT, 64))
|
|
#define FIT_SPORT_WHEELCHAIR_PUSH_WALK (FIT_CAST(FIT_SPORT, 65))
|
|
#define FIT_SPORT_WHEELCHAIR_PUSH_RUN (FIT_CAST(FIT_SPORT, 66))
|
|
#define FIT_SPORT_MEDITATION (FIT_CAST(FIT_SPORT, 67))
|
|
#define FIT_SPORT_DISC_GOLF (FIT_CAST(FIT_SPORT, 69))
|
|
#define FIT_SPORT_CRICKET (FIT_CAST(FIT_SPORT, 71))
|
|
#define FIT_SPORT_RUGBY (FIT_CAST(FIT_SPORT, 72))
|
|
#define FIT_SPORT_HOCKEY (FIT_CAST(FIT_SPORT, 73))
|
|
#define FIT_SPORT_LACROSSE (FIT_CAST(FIT_SPORT, 74))
|
|
#define FIT_SPORT_VOLLEYBALL (FIT_CAST(FIT_SPORT, 75))
|
|
#define FIT_SPORT_WATER_TUBING (FIT_CAST(FIT_SPORT, 76))
|
|
#define FIT_SPORT_WAKESURFING (FIT_CAST(FIT_SPORT, 77))
|
|
#define FIT_SPORT_MIXED_MARTIAL_ARTS (FIT_CAST(FIT_SPORT, 80))
|
|
#define FIT_SPORT_SNORKELING (FIT_CAST(FIT_SPORT, 82))
|
|
#define FIT_SPORT_DANCE (FIT_CAST(FIT_SPORT, 83))
|
|
#define FIT_SPORT_JUMP_ROPE (FIT_CAST(FIT_SPORT, 84))
|
|
#define FIT_SPORT_ALL (FIT_CAST(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_CAST(FIT_SPORT_BITS_0, 0x01))
|
|
#define FIT_SPORT_BITS_0_RUNNING (FIT_CAST(FIT_SPORT_BITS_0, 0x02))
|
|
#define FIT_SPORT_BITS_0_CYCLING (FIT_CAST(FIT_SPORT_BITS_0, 0x04))
|
|
#define FIT_SPORT_BITS_0_TRANSITION (FIT_CAST(FIT_SPORT_BITS_0, 0x08)) // Mulitsport transition
|
|
#define FIT_SPORT_BITS_0_FITNESS_EQUIPMENT (FIT_CAST(FIT_SPORT_BITS_0, 0x10))
|
|
#define FIT_SPORT_BITS_0_SWIMMING (FIT_CAST(FIT_SPORT_BITS_0, 0x20))
|
|
#define FIT_SPORT_BITS_0_BASKETBALL (FIT_CAST(FIT_SPORT_BITS_0, 0x40))
|
|
#define FIT_SPORT_BITS_0_SOCCER (FIT_CAST(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_CAST(FIT_SPORT_BITS_1, 0x01))
|
|
#define FIT_SPORT_BITS_1_AMERICAN_FOOTBALL (FIT_CAST(FIT_SPORT_BITS_1, 0x02))
|
|
#define FIT_SPORT_BITS_1_TRAINING (FIT_CAST(FIT_SPORT_BITS_1, 0x04))
|
|
#define FIT_SPORT_BITS_1_WALKING (FIT_CAST(FIT_SPORT_BITS_1, 0x08))
|
|
#define FIT_SPORT_BITS_1_CROSS_COUNTRY_SKIING (FIT_CAST(FIT_SPORT_BITS_1, 0x10))
|
|
#define FIT_SPORT_BITS_1_ALPINE_SKIING (FIT_CAST(FIT_SPORT_BITS_1, 0x20))
|
|
#define FIT_SPORT_BITS_1_SNOWBOARDING (FIT_CAST(FIT_SPORT_BITS_1, 0x40))
|
|
#define FIT_SPORT_BITS_1_ROWING (FIT_CAST(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_CAST(FIT_SPORT_BITS_2, 0x01))
|
|
#define FIT_SPORT_BITS_2_HIKING (FIT_CAST(FIT_SPORT_BITS_2, 0x02))
|
|
#define FIT_SPORT_BITS_2_MULTISPORT (FIT_CAST(FIT_SPORT_BITS_2, 0x04))
|
|
#define FIT_SPORT_BITS_2_PADDLING (FIT_CAST(FIT_SPORT_BITS_2, 0x08))
|
|
#define FIT_SPORT_BITS_2_FLYING (FIT_CAST(FIT_SPORT_BITS_2, 0x10))
|
|
#define FIT_SPORT_BITS_2_E_BIKING (FIT_CAST(FIT_SPORT_BITS_2, 0x20))
|
|
#define FIT_SPORT_BITS_2_MOTORCYCLING (FIT_CAST(FIT_SPORT_BITS_2, 0x40))
|
|
#define FIT_SPORT_BITS_2_BOATING (FIT_CAST(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_CAST(FIT_SPORT_BITS_3, 0x01))
|
|
#define FIT_SPORT_BITS_3_GOLF (FIT_CAST(FIT_SPORT_BITS_3, 0x02))
|
|
#define FIT_SPORT_BITS_3_HANG_GLIDING (FIT_CAST(FIT_SPORT_BITS_3, 0x04))
|
|
#define FIT_SPORT_BITS_3_HORSEBACK_RIDING (FIT_CAST(FIT_SPORT_BITS_3, 0x08))
|
|
#define FIT_SPORT_BITS_3_HUNTING (FIT_CAST(FIT_SPORT_BITS_3, 0x10))
|
|
#define FIT_SPORT_BITS_3_FISHING (FIT_CAST(FIT_SPORT_BITS_3, 0x20))
|
|
#define FIT_SPORT_BITS_3_INLINE_SKATING (FIT_CAST(FIT_SPORT_BITS_3, 0x40))
|
|
#define FIT_SPORT_BITS_3_ROCK_CLIMBING (FIT_CAST(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_CAST(FIT_SPORT_BITS_4, 0x01))
|
|
#define FIT_SPORT_BITS_4_ICE_SKATING (FIT_CAST(FIT_SPORT_BITS_4, 0x02))
|
|
#define FIT_SPORT_BITS_4_SKY_DIVING (FIT_CAST(FIT_SPORT_BITS_4, 0x04))
|
|
#define FIT_SPORT_BITS_4_SNOWSHOEING (FIT_CAST(FIT_SPORT_BITS_4, 0x08))
|
|
#define FIT_SPORT_BITS_4_SNOWMOBILING (FIT_CAST(FIT_SPORT_BITS_4, 0x10))
|
|
#define FIT_SPORT_BITS_4_STAND_UP_PADDLEBOARDING (FIT_CAST(FIT_SPORT_BITS_4, 0x20))
|
|
#define FIT_SPORT_BITS_4_SURFING (FIT_CAST(FIT_SPORT_BITS_4, 0x40))
|
|
#define FIT_SPORT_BITS_4_WAKEBOARDING (FIT_CAST(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_CAST(FIT_SPORT_BITS_5, 0x01))
|
|
#define FIT_SPORT_BITS_5_KAYAKING (FIT_CAST(FIT_SPORT_BITS_5, 0x02))
|
|
#define FIT_SPORT_BITS_5_RAFTING (FIT_CAST(FIT_SPORT_BITS_5, 0x04))
|
|
#define FIT_SPORT_BITS_5_WINDSURFING (FIT_CAST(FIT_SPORT_BITS_5, 0x08))
|
|
#define FIT_SPORT_BITS_5_KITESURFING (FIT_CAST(FIT_SPORT_BITS_5, 0x10))
|
|
#define FIT_SPORT_BITS_5_TACTICAL (FIT_CAST(FIT_SPORT_BITS_5, 0x20))
|
|
#define FIT_SPORT_BITS_5_JUMPMASTER (FIT_CAST(FIT_SPORT_BITS_5, 0x40))
|
|
#define FIT_SPORT_BITS_5_BOXING (FIT_CAST(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_CAST(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_CAST(FIT_SUB_SPORT, 0))
|
|
#define FIT_SUB_SPORT_TREADMILL (FIT_CAST(FIT_SUB_SPORT, 1)) // Run/Fitness Equipment
|
|
#define FIT_SUB_SPORT_STREET (FIT_CAST(FIT_SUB_SPORT, 2)) // Run
|
|
#define FIT_SUB_SPORT_TRAIL (FIT_CAST(FIT_SUB_SPORT, 3)) // Run
|
|
#define FIT_SUB_SPORT_TRACK (FIT_CAST(FIT_SUB_SPORT, 4)) // Run
|
|
#define FIT_SUB_SPORT_SPIN (FIT_CAST(FIT_SUB_SPORT, 5)) // Cycling
|
|
#define FIT_SUB_SPORT_INDOOR_CYCLING (FIT_CAST(FIT_SUB_SPORT, 6)) // Cycling/Fitness Equipment
|
|
#define FIT_SUB_SPORT_ROAD (FIT_CAST(FIT_SUB_SPORT, 7)) // Cycling
|
|
#define FIT_SUB_SPORT_MOUNTAIN (FIT_CAST(FIT_SUB_SPORT, 8)) // Cycling
|
|
#define FIT_SUB_SPORT_DOWNHILL (FIT_CAST(FIT_SUB_SPORT, 9)) // Cycling
|
|
#define FIT_SUB_SPORT_RECUMBENT (FIT_CAST(FIT_SUB_SPORT, 10)) // Cycling
|
|
#define FIT_SUB_SPORT_CYCLOCROSS (FIT_CAST(FIT_SUB_SPORT, 11)) // Cycling
|
|
#define FIT_SUB_SPORT_HAND_CYCLING (FIT_CAST(FIT_SUB_SPORT, 12)) // Cycling
|
|
#define FIT_SUB_SPORT_TRACK_CYCLING (FIT_CAST(FIT_SUB_SPORT, 13)) // Cycling
|
|
#define FIT_SUB_SPORT_INDOOR_ROWING (FIT_CAST(FIT_SUB_SPORT, 14)) // Fitness Equipment
|
|
#define FIT_SUB_SPORT_ELLIPTICAL (FIT_CAST(FIT_SUB_SPORT, 15)) // Fitness Equipment
|
|
#define FIT_SUB_SPORT_STAIR_CLIMBING (FIT_CAST(FIT_SUB_SPORT, 16)) // Fitness Equipment
|
|
#define FIT_SUB_SPORT_LAP_SWIMMING (FIT_CAST(FIT_SUB_SPORT, 17)) // Swimming
|
|
#define FIT_SUB_SPORT_OPEN_WATER (FIT_CAST(FIT_SUB_SPORT, 18)) // Swimming
|
|
#define FIT_SUB_SPORT_FLEXIBILITY_TRAINING (FIT_CAST(FIT_SUB_SPORT, 19)) // Training
|
|
#define FIT_SUB_SPORT_STRENGTH_TRAINING (FIT_CAST(FIT_SUB_SPORT, 20)) // Training
|
|
#define FIT_SUB_SPORT_WARM_UP (FIT_CAST(FIT_SUB_SPORT, 21)) // Tennis
|
|
#define FIT_SUB_SPORT_MATCH (FIT_CAST(FIT_SUB_SPORT, 22)) // Tennis
|
|
#define FIT_SUB_SPORT_EXERCISE (FIT_CAST(FIT_SUB_SPORT, 23)) // Tennis
|
|
#define FIT_SUB_SPORT_CHALLENGE (FIT_CAST(FIT_SUB_SPORT, 24))
|
|
#define FIT_SUB_SPORT_INDOOR_SKIING (FIT_CAST(FIT_SUB_SPORT, 25)) // Fitness Equipment
|
|
#define FIT_SUB_SPORT_CARDIO_TRAINING (FIT_CAST(FIT_SUB_SPORT, 26)) // Training
|
|
#define FIT_SUB_SPORT_INDOOR_WALKING (FIT_CAST(FIT_SUB_SPORT, 27)) // Walking/Fitness Equipment
|
|
#define FIT_SUB_SPORT_E_BIKE_FITNESS (FIT_CAST(FIT_SUB_SPORT, 28)) // E-Biking
|
|
#define FIT_SUB_SPORT_BMX (FIT_CAST(FIT_SUB_SPORT, 29)) // Cycling
|
|
#define FIT_SUB_SPORT_CASUAL_WALKING (FIT_CAST(FIT_SUB_SPORT, 30)) // Walking
|
|
#define FIT_SUB_SPORT_SPEED_WALKING (FIT_CAST(FIT_SUB_SPORT, 31)) // Walking
|
|
#define FIT_SUB_SPORT_BIKE_TO_RUN_TRANSITION (FIT_CAST(FIT_SUB_SPORT, 32)) // Transition
|
|
#define FIT_SUB_SPORT_RUN_TO_BIKE_TRANSITION (FIT_CAST(FIT_SUB_SPORT, 33)) // Transition
|
|
#define FIT_SUB_SPORT_SWIM_TO_BIKE_TRANSITION (FIT_CAST(FIT_SUB_SPORT, 34)) // Transition
|
|
#define FIT_SUB_SPORT_ATV (FIT_CAST(FIT_SUB_SPORT, 35)) // Motorcycling
|
|
#define FIT_SUB_SPORT_MOTOCROSS (FIT_CAST(FIT_SUB_SPORT, 36)) // Motorcycling
|
|
#define FIT_SUB_SPORT_BACKCOUNTRY (FIT_CAST(FIT_SUB_SPORT, 37)) // Alpine Skiing/Snowboarding
|
|
#define FIT_SUB_SPORT_RESORT (FIT_CAST(FIT_SUB_SPORT, 38)) // Alpine Skiing/Snowboarding
|
|
#define FIT_SUB_SPORT_RC_DRONE (FIT_CAST(FIT_SUB_SPORT, 39)) // Flying
|
|
#define FIT_SUB_SPORT_WINGSUIT (FIT_CAST(FIT_SUB_SPORT, 40)) // Flying
|
|
#define FIT_SUB_SPORT_WHITEWATER (FIT_CAST(FIT_SUB_SPORT, 41)) // Kayaking/Rafting
|
|
#define FIT_SUB_SPORT_SKATE_SKIING (FIT_CAST(FIT_SUB_SPORT, 42)) // Cross Country Skiing
|
|
#define FIT_SUB_SPORT_YOGA (FIT_CAST(FIT_SUB_SPORT, 43)) // Training
|
|
#define FIT_SUB_SPORT_PILATES (FIT_CAST(FIT_SUB_SPORT, 44)) // Fitness Equipment
|
|
#define FIT_SUB_SPORT_INDOOR_RUNNING (FIT_CAST(FIT_SUB_SPORT, 45)) // Run
|
|
#define FIT_SUB_SPORT_GRAVEL_CYCLING (FIT_CAST(FIT_SUB_SPORT, 46)) // Cycling
|
|
#define FIT_SUB_SPORT_E_BIKE_MOUNTAIN (FIT_CAST(FIT_SUB_SPORT, 47)) // Cycling
|
|
#define FIT_SUB_SPORT_COMMUTING (FIT_CAST(FIT_SUB_SPORT, 48)) // Cycling
|
|
#define FIT_SUB_SPORT_MIXED_SURFACE (FIT_CAST(FIT_SUB_SPORT, 49)) // Cycling
|
|
#define FIT_SUB_SPORT_NAVIGATE (FIT_CAST(FIT_SUB_SPORT, 50))
|
|
#define FIT_SUB_SPORT_TRACK_ME (FIT_CAST(FIT_SUB_SPORT, 51))
|
|
#define FIT_SUB_SPORT_MAP (FIT_CAST(FIT_SUB_SPORT, 52))
|
|
#define FIT_SUB_SPORT_SINGLE_GAS_DIVING (FIT_CAST(FIT_SUB_SPORT, 53)) // Diving
|
|
#define FIT_SUB_SPORT_MULTI_GAS_DIVING (FIT_CAST(FIT_SUB_SPORT, 54)) // Diving
|
|
#define FIT_SUB_SPORT_GAUGE_DIVING (FIT_CAST(FIT_SUB_SPORT, 55)) // Diving
|
|
#define FIT_SUB_SPORT_APNEA_DIVING (FIT_CAST(FIT_SUB_SPORT, 56)) // Diving
|
|
#define FIT_SUB_SPORT_APNEA_HUNTING (FIT_CAST(FIT_SUB_SPORT, 57)) // Diving
|
|
#define FIT_SUB_SPORT_VIRTUAL_ACTIVITY (FIT_CAST(FIT_SUB_SPORT, 58))
|
|
#define FIT_SUB_SPORT_OBSTACLE (FIT_CAST(FIT_SUB_SPORT, 59)) // Used for events where participants run, crawl through mud, climb over walls, etc.
|
|
#define FIT_SUB_SPORT_BREATHING (FIT_CAST(FIT_SUB_SPORT, 62))
|
|
#define FIT_SUB_SPORT_SAIL_RACE (FIT_CAST(FIT_SUB_SPORT, 65)) // Sailing
|
|
#define FIT_SUB_SPORT_ULTRA (FIT_CAST(FIT_SUB_SPORT, 67)) // Ultramarathon
|
|
#define FIT_SUB_SPORT_INDOOR_CLIMBING (FIT_CAST(FIT_SUB_SPORT, 68)) // Climbing
|
|
#define FIT_SUB_SPORT_BOULDERING (FIT_CAST(FIT_SUB_SPORT, 69)) // Climbing
|
|
#define FIT_SUB_SPORT_HIIT (FIT_CAST(FIT_SUB_SPORT, 70)) // High Intensity Interval Training
|
|
#define FIT_SUB_SPORT_AMRAP (FIT_CAST(FIT_SUB_SPORT, 73)) // HIIT
|
|
#define FIT_SUB_SPORT_EMOM (FIT_CAST(FIT_SUB_SPORT, 74)) // HIIT
|
|
#define FIT_SUB_SPORT_TABATA (FIT_CAST(FIT_SUB_SPORT, 75)) // HIIT
|
|
#define FIT_SUB_SPORT_PICKLEBALL (FIT_CAST(FIT_SUB_SPORT, 84)) // Racket
|
|
#define FIT_SUB_SPORT_PADEL (FIT_CAST(FIT_SUB_SPORT, 85)) // Racket
|
|
#define FIT_SUB_SPORT_INDOOR_WHEELCHAIR_WALK (FIT_CAST(FIT_SUB_SPORT, 86))
|
|
#define FIT_SUB_SPORT_INDOOR_WHEELCHAIR_RUN (FIT_CAST(FIT_SUB_SPORT, 87))
|
|
#define FIT_SUB_SPORT_INDOOR_HAND_CYCLING (FIT_CAST(FIT_SUB_SPORT, 88))
|
|
#define FIT_SUB_SPORT_SQUASH (FIT_CAST(FIT_SUB_SPORT, 94))
|
|
#define FIT_SUB_SPORT_BADMINTON (FIT_CAST(FIT_SUB_SPORT, 95))
|
|
#define FIT_SUB_SPORT_RACQUETBALL (FIT_CAST(FIT_SUB_SPORT, 96))
|
|
#define FIT_SUB_SPORT_TABLE_TENNIS (FIT_CAST(FIT_SUB_SPORT, 97))
|
|
#define FIT_SUB_SPORT_FLY_CANOPY (FIT_CAST(FIT_SUB_SPORT, 110)) // Flying
|
|
#define FIT_SUB_SPORT_FLY_PARAGLIDE (FIT_CAST(FIT_SUB_SPORT, 111)) // Flying
|
|
#define FIT_SUB_SPORT_FLY_PARAMOTOR (FIT_CAST(FIT_SUB_SPORT, 112)) // Flying
|
|
#define FIT_SUB_SPORT_FLY_PRESSURIZED (FIT_CAST(FIT_SUB_SPORT, 113)) // Flying
|
|
#define FIT_SUB_SPORT_FLY_NAVIGATE (FIT_CAST(FIT_SUB_SPORT, 114)) // Flying
|
|
#define FIT_SUB_SPORT_FLY_TIMER (FIT_CAST(FIT_SUB_SPORT, 115)) // Flying
|
|
#define FIT_SUB_SPORT_FLY_ALTIMETER (FIT_CAST(FIT_SUB_SPORT, 116)) // Flying
|
|
#define FIT_SUB_SPORT_FLY_WX (FIT_CAST(FIT_SUB_SPORT, 117)) // Flying
|
|
#define FIT_SUB_SPORT_FLY_VFR (FIT_CAST(FIT_SUB_SPORT, 118)) // Flying
|
|
#define FIT_SUB_SPORT_FLY_IFR (FIT_CAST(FIT_SUB_SPORT, 119)) // Flying
|
|
#define FIT_SUB_SPORT_ALL (FIT_CAST(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_CAST(FIT_SPORT_EVENT, 0))
|
|
#define FIT_SPORT_EVENT_GEOCACHING (FIT_CAST(FIT_SPORT_EVENT, 1))
|
|
#define FIT_SPORT_EVENT_FITNESS (FIT_CAST(FIT_SPORT_EVENT, 2))
|
|
#define FIT_SPORT_EVENT_RECREATION (FIT_CAST(FIT_SPORT_EVENT, 3))
|
|
#define FIT_SPORT_EVENT_RACE (FIT_CAST(FIT_SPORT_EVENT, 4))
|
|
#define FIT_SPORT_EVENT_SPECIAL_EVENT (FIT_CAST(FIT_SPORT_EVENT, 5))
|
|
#define FIT_SPORT_EVENT_TRAINING (FIT_CAST(FIT_SPORT_EVENT, 6))
|
|
#define FIT_SPORT_EVENT_TRANSPORTATION (FIT_CAST(FIT_SPORT_EVENT, 7))
|
|
#define FIT_SPORT_EVENT_TOURING (FIT_CAST(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_CAST(FIT_ACTIVITY, 0))
|
|
#define FIT_ACTIVITY_AUTO_MULTI_SPORT (FIT_CAST(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_CAST(FIT_INTENSITY, 0))
|
|
#define FIT_INTENSITY_REST (FIT_CAST(FIT_INTENSITY, 1))
|
|
#define FIT_INTENSITY_WARMUP (FIT_CAST(FIT_INTENSITY, 2))
|
|
#define FIT_INTENSITY_COOLDOWN (FIT_CAST(FIT_INTENSITY, 3))
|
|
#define FIT_INTENSITY_RECOVERY (FIT_CAST(FIT_INTENSITY, 4))
|
|
#define FIT_INTENSITY_INTERVAL (FIT_CAST(FIT_INTENSITY, 5))
|
|
#define FIT_INTENSITY_OTHER (FIT_CAST(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_CAST(FIT_SESSION_TRIGGER, 0))
|
|
#define FIT_SESSION_TRIGGER_MANUAL (FIT_CAST(FIT_SESSION_TRIGGER, 1)) // User changed sport.
|
|
#define FIT_SESSION_TRIGGER_AUTO_MULTI_SPORT (FIT_CAST(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_CAST(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_CAST(FIT_AUTOLAP_TRIGGER, 0))
|
|
#define FIT_AUTOLAP_TRIGGER_DISTANCE (FIT_CAST(FIT_AUTOLAP_TRIGGER, 1))
|
|
#define FIT_AUTOLAP_TRIGGER_POSITION_START (FIT_CAST(FIT_AUTOLAP_TRIGGER, 2))
|
|
#define FIT_AUTOLAP_TRIGGER_POSITION_LAP (FIT_CAST(FIT_AUTOLAP_TRIGGER, 3))
|
|
#define FIT_AUTOLAP_TRIGGER_POSITION_WAYPOINT (FIT_CAST(FIT_AUTOLAP_TRIGGER, 4))
|
|
#define FIT_AUTOLAP_TRIGGER_POSITION_MARKED (FIT_CAST(FIT_AUTOLAP_TRIGGER, 5))
|
|
#define FIT_AUTOLAP_TRIGGER_OFF (FIT_CAST(FIT_AUTOLAP_TRIGGER, 6))
|
|
#define FIT_AUTOLAP_TRIGGER_AUTO_SELECT (FIT_CAST(FIT_AUTOLAP_TRIGGER, 13))
|
|
#define FIT_AUTOLAP_TRIGGER_COUNT 8
|
|
|
|
typedef FIT_ENUM FIT_LAP_TRIGGER;
|
|
#define FIT_LAP_TRIGGER_INVALID FIT_ENUM_INVALID
|
|
#define FIT_LAP_TRIGGER_MANUAL (FIT_CAST(FIT_LAP_TRIGGER, 0))
|
|
#define FIT_LAP_TRIGGER_TIME (FIT_CAST(FIT_LAP_TRIGGER, 1))
|
|
#define FIT_LAP_TRIGGER_DISTANCE (FIT_CAST(FIT_LAP_TRIGGER, 2))
|
|
#define FIT_LAP_TRIGGER_POSITION_START (FIT_CAST(FIT_LAP_TRIGGER, 3))
|
|
#define FIT_LAP_TRIGGER_POSITION_LAP (FIT_CAST(FIT_LAP_TRIGGER, 4))
|
|
#define FIT_LAP_TRIGGER_POSITION_WAYPOINT (FIT_CAST(FIT_LAP_TRIGGER, 5))
|
|
#define FIT_LAP_TRIGGER_POSITION_MARKED (FIT_CAST(FIT_LAP_TRIGGER, 6))
|
|
#define FIT_LAP_TRIGGER_SESSION_END (FIT_CAST(FIT_LAP_TRIGGER, 7))
|
|
#define FIT_LAP_TRIGGER_FITNESS_EQUIPMENT (FIT_CAST(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_CAST(FIT_TIME_MODE, 0))
|
|
#define FIT_TIME_MODE_HOUR24 (FIT_CAST(FIT_TIME_MODE, 1)) // Does not use a leading zero and has a colon
|
|
#define FIT_TIME_MODE_MILITARY (FIT_CAST(FIT_TIME_MODE, 2)) // Uses a leading zero and does not have a colon
|
|
#define FIT_TIME_MODE_HOUR_12_WITH_SECONDS (FIT_CAST(FIT_TIME_MODE, 3))
|
|
#define FIT_TIME_MODE_HOUR_24_WITH_SECONDS (FIT_CAST(FIT_TIME_MODE, 4))
|
|
#define FIT_TIME_MODE_UTC (FIT_CAST(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_CAST(FIT_BACKLIGHT_MODE, 0))
|
|
#define FIT_BACKLIGHT_MODE_MANUAL (FIT_CAST(FIT_BACKLIGHT_MODE, 1))
|
|
#define FIT_BACKLIGHT_MODE_KEY_AND_MESSAGES (FIT_CAST(FIT_BACKLIGHT_MODE, 2))
|
|
#define FIT_BACKLIGHT_MODE_AUTO_BRIGHTNESS (FIT_CAST(FIT_BACKLIGHT_MODE, 3))
|
|
#define FIT_BACKLIGHT_MODE_SMART_NOTIFICATIONS (FIT_CAST(FIT_BACKLIGHT_MODE, 4))
|
|
#define FIT_BACKLIGHT_MODE_KEY_AND_MESSAGES_NIGHT (FIT_CAST(FIT_BACKLIGHT_MODE, 5))
|
|
#define FIT_BACKLIGHT_MODE_KEY_AND_MESSAGES_AND_SMART_NOTIFICATIONS (FIT_CAST(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_CAST(FIT_DATE_MODE, 0))
|
|
#define FIT_DATE_MODE_MONTH_DAY (FIT_CAST(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_CAST(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_CAST(FIT_EVENT, 0)) // Group 0. Start / stop_all
|
|
#define FIT_EVENT_WORKOUT (FIT_CAST(FIT_EVENT, 3)) // start / stop
|
|
#define FIT_EVENT_WORKOUT_STEP (FIT_CAST(FIT_EVENT, 4)) // Start at beginning of workout. Stop at end of each step.
|
|
#define FIT_EVENT_POWER_DOWN (FIT_CAST(FIT_EVENT, 5)) // stop_all group 0
|
|
#define FIT_EVENT_POWER_UP (FIT_CAST(FIT_EVENT, 6)) // stop_all group 0
|
|
#define FIT_EVENT_OFF_COURSE (FIT_CAST(FIT_EVENT, 7)) // start / stop group 0
|
|
#define FIT_EVENT_SESSION (FIT_CAST(FIT_EVENT, 8)) // Stop at end of each session.
|
|
#define FIT_EVENT_LAP (FIT_CAST(FIT_EVENT, 9)) // Stop at end of each lap.
|
|
#define FIT_EVENT_COURSE_POINT (FIT_CAST(FIT_EVENT, 10)) // marker
|
|
#define FIT_EVENT_BATTERY (FIT_CAST(FIT_EVENT, 11)) // marker
|
|
#define FIT_EVENT_VIRTUAL_PARTNER_PACE (FIT_CAST(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_CAST(FIT_EVENT, 13)) // Group 0. Start / stop when in alert condition.
|
|
#define FIT_EVENT_HR_LOW_ALERT (FIT_CAST(FIT_EVENT, 14)) // Group 0. Start / stop when in alert condition.
|
|
#define FIT_EVENT_SPEED_HIGH_ALERT (FIT_CAST(FIT_EVENT, 15)) // Group 0. Start / stop when in alert condition.
|
|
#define FIT_EVENT_SPEED_LOW_ALERT (FIT_CAST(FIT_EVENT, 16)) // Group 0. Start / stop when in alert condition.
|
|
#define FIT_EVENT_CAD_HIGH_ALERT (FIT_CAST(FIT_EVENT, 17)) // Group 0. Start / stop when in alert condition.
|
|
#define FIT_EVENT_CAD_LOW_ALERT (FIT_CAST(FIT_EVENT, 18)) // Group 0. Start / stop when in alert condition.
|
|
#define FIT_EVENT_POWER_HIGH_ALERT (FIT_CAST(FIT_EVENT, 19)) // Group 0. Start / stop when in alert condition.
|
|
#define FIT_EVENT_POWER_LOW_ALERT (FIT_CAST(FIT_EVENT, 20)) // Group 0. Start / stop when in alert condition.
|
|
#define FIT_EVENT_RECOVERY_HR (FIT_CAST(FIT_EVENT, 21)) // marker
|
|
#define FIT_EVENT_BATTERY_LOW (FIT_CAST(FIT_EVENT, 22)) // marker
|
|
#define FIT_EVENT_TIME_DURATION_ALERT (FIT_CAST(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_CAST(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_CAST(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_CAST(FIT_EVENT, 26)) // Group 1.. Stop at end of activity.
|
|
#define FIT_EVENT_FITNESS_EQUIPMENT (FIT_CAST(FIT_EVENT, 27)) // marker
|
|
#define FIT_EVENT_LENGTH (FIT_CAST(FIT_EVENT, 28)) // Stop at end of each length.
|
|
#define FIT_EVENT_USER_MARKER (FIT_CAST(FIT_EVENT, 32)) // marker
|
|
#define FIT_EVENT_SPORT_POINT (FIT_CAST(FIT_EVENT, 33)) // marker
|
|
#define FIT_EVENT_CALIBRATION (FIT_CAST(FIT_EVENT, 36)) // start/stop/marker
|
|
#define FIT_EVENT_FRONT_GEAR_CHANGE (FIT_CAST(FIT_EVENT, 42)) // marker
|
|
#define FIT_EVENT_REAR_GEAR_CHANGE (FIT_CAST(FIT_EVENT, 43)) // marker
|
|
#define FIT_EVENT_RIDER_POSITION_CHANGE (FIT_CAST(FIT_EVENT, 44)) // marker
|
|
#define FIT_EVENT_ELEV_HIGH_ALERT (FIT_CAST(FIT_EVENT, 45)) // Group 0. Start / stop when in alert condition.
|
|
#define FIT_EVENT_ELEV_LOW_ALERT (FIT_CAST(FIT_EVENT, 46)) // Group 0. Start / stop when in alert condition.
|
|
#define FIT_EVENT_COMM_TIMEOUT (FIT_CAST(FIT_EVENT, 47)) // marker
|
|
#define FIT_EVENT_AUTO_ACTIVITY_DETECT (FIT_CAST(FIT_EVENT, 54)) // marker
|
|
#define FIT_EVENT_DIVE_ALERT (FIT_CAST(FIT_EVENT, 56)) // marker
|
|
#define FIT_EVENT_DIVE_GAS_SWITCHED (FIT_CAST(FIT_EVENT, 57)) // marker
|
|
#define FIT_EVENT_TANK_PRESSURE_RESERVE (FIT_CAST(FIT_EVENT, 71)) // marker
|
|
#define FIT_EVENT_TANK_PRESSURE_CRITICAL (FIT_CAST(FIT_EVENT, 72)) // marker
|
|
#define FIT_EVENT_TANK_LOST (FIT_CAST(FIT_EVENT, 73)) // marker
|
|
#define FIT_EVENT_RADAR_THREAT_ALERT (FIT_CAST(FIT_EVENT, 75)) // start/stop/marker
|
|
#define FIT_EVENT_TANK_BATTERY_LOW (FIT_CAST(FIT_EVENT, 76)) // marker
|
|
#define FIT_EVENT_TANK_POD_CONNECTED (FIT_CAST(FIT_EVENT, 81)) // marker - tank pod has connected
|
|
#define FIT_EVENT_TANK_POD_DISCONNECTED (FIT_CAST(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_CAST(FIT_EVENT_TYPE, 0))
|
|
#define FIT_EVENT_TYPE_STOP (FIT_CAST(FIT_EVENT_TYPE, 1))
|
|
#define FIT_EVENT_TYPE_CONSECUTIVE_DEPRECIATED (FIT_CAST(FIT_EVENT_TYPE, 2))
|
|
#define FIT_EVENT_TYPE_MARKER (FIT_CAST(FIT_EVENT_TYPE, 3))
|
|
#define FIT_EVENT_TYPE_STOP_ALL (FIT_CAST(FIT_EVENT_TYPE, 4))
|
|
#define FIT_EVENT_TYPE_BEGIN_DEPRECIATED (FIT_CAST(FIT_EVENT_TYPE, 5))
|
|
#define FIT_EVENT_TYPE_END_DEPRECIATED (FIT_CAST(FIT_EVENT_TYPE, 6))
|
|
#define FIT_EVENT_TYPE_END_ALL_DEPRECIATED (FIT_CAST(FIT_EVENT_TYPE, 7))
|
|
#define FIT_EVENT_TYPE_STOP_DISABLE (FIT_CAST(FIT_EVENT_TYPE, 8))
|
|
#define FIT_EVENT_TYPE_STOP_DISABLE_ALL (FIT_CAST(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_CAST(FIT_TIMER_TRIGGER, 0))
|
|
#define FIT_TIMER_TRIGGER_AUTO (FIT_CAST(FIT_TIMER_TRIGGER, 1))
|
|
#define FIT_TIMER_TRIGGER_FITNESS_EQUIPMENT (FIT_CAST(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_CAST(FIT_FITNESS_EQUIPMENT_STATE, 0))
|
|
#define FIT_FITNESS_EQUIPMENT_STATE_IN_USE (FIT_CAST(FIT_FITNESS_EQUIPMENT_STATE, 1))
|
|
#define FIT_FITNESS_EQUIPMENT_STATE_PAUSED (FIT_CAST(FIT_FITNESS_EQUIPMENT_STATE, 2))
|
|
#define FIT_FITNESS_EQUIPMENT_STATE_UNKNOWN (FIT_CAST(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_CAST(FIT_TONE, 0))
|
|
#define FIT_TONE_TONE (FIT_CAST(FIT_TONE, 1))
|
|
#define FIT_TONE_VIBRATE (FIT_CAST(FIT_TONE, 2))
|
|
#define FIT_TONE_TONE_AND_VIBRATE (FIT_CAST(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_CAST(FIT_AUTOSCROLL, 0))
|
|
#define FIT_AUTOSCROLL_SLOW (FIT_CAST(FIT_AUTOSCROLL, 1))
|
|
#define FIT_AUTOSCROLL_MEDIUM (FIT_CAST(FIT_AUTOSCROLL, 2))
|
|
#define FIT_AUTOSCROLL_FAST (FIT_CAST(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_CAST(FIT_ACTIVITY_CLASS, 0x7F)) // 0 to 100
|
|
#define FIT_ACTIVITY_CLASS_LEVEL_MAX (FIT_CAST(FIT_ACTIVITY_CLASS, 100))
|
|
#define FIT_ACTIVITY_CLASS_ATHLETE (FIT_CAST(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_CAST(FIT_HR_ZONE_CALC, 0))
|
|
#define FIT_HR_ZONE_CALC_PERCENT_MAX_HR (FIT_CAST(FIT_HR_ZONE_CALC, 1))
|
|
#define FIT_HR_ZONE_CALC_PERCENT_HRR (FIT_CAST(FIT_HR_ZONE_CALC, 2))
|
|
#define FIT_HR_ZONE_CALC_PERCENT_LTHR (FIT_CAST(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_CAST(FIT_PWR_ZONE_CALC, 0))
|
|
#define FIT_PWR_ZONE_CALC_PERCENT_FTP (FIT_CAST(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_CAST(FIT_WKT_STEP_DURATION, 0))
|
|
#define FIT_WKT_STEP_DURATION_DISTANCE (FIT_CAST(FIT_WKT_STEP_DURATION, 1))
|
|
#define FIT_WKT_STEP_DURATION_HR_LESS_THAN (FIT_CAST(FIT_WKT_STEP_DURATION, 2))
|
|
#define FIT_WKT_STEP_DURATION_HR_GREATER_THAN (FIT_CAST(FIT_WKT_STEP_DURATION, 3))
|
|
#define FIT_WKT_STEP_DURATION_CALORIES (FIT_CAST(FIT_WKT_STEP_DURATION, 4))
|
|
#define FIT_WKT_STEP_DURATION_OPEN (FIT_CAST(FIT_WKT_STEP_DURATION, 5))
|
|
#define FIT_WKT_STEP_DURATION_REPEAT_UNTIL_STEPS_CMPLT (FIT_CAST(FIT_WKT_STEP_DURATION, 6))
|
|
#define FIT_WKT_STEP_DURATION_REPEAT_UNTIL_TIME (FIT_CAST(FIT_WKT_STEP_DURATION, 7))
|
|
#define FIT_WKT_STEP_DURATION_REPEAT_UNTIL_DISTANCE (FIT_CAST(FIT_WKT_STEP_DURATION, 8))
|
|
#define FIT_WKT_STEP_DURATION_REPEAT_UNTIL_CALORIES (FIT_CAST(FIT_WKT_STEP_DURATION, 9))
|
|
#define FIT_WKT_STEP_DURATION_REPEAT_UNTIL_HR_LESS_THAN (FIT_CAST(FIT_WKT_STEP_DURATION, 10))
|
|
#define FIT_WKT_STEP_DURATION_REPEAT_UNTIL_HR_GREATER_THAN (FIT_CAST(FIT_WKT_STEP_DURATION, 11))
|
|
#define FIT_WKT_STEP_DURATION_REPEAT_UNTIL_POWER_LESS_THAN (FIT_CAST(FIT_WKT_STEP_DURATION, 12))
|
|
#define FIT_WKT_STEP_DURATION_REPEAT_UNTIL_POWER_GREATER_THAN (FIT_CAST(FIT_WKT_STEP_DURATION, 13))
|
|
#define FIT_WKT_STEP_DURATION_POWER_LESS_THAN (FIT_CAST(FIT_WKT_STEP_DURATION, 14))
|
|
#define FIT_WKT_STEP_DURATION_POWER_GREATER_THAN (FIT_CAST(FIT_WKT_STEP_DURATION, 15))
|
|
#define FIT_WKT_STEP_DURATION_TRAINING_PEAKS_TSS (FIT_CAST(FIT_WKT_STEP_DURATION, 16))
|
|
#define FIT_WKT_STEP_DURATION_REPEAT_UNTIL_POWER_LAST_LAP_LESS_THAN (FIT_CAST(FIT_WKT_STEP_DURATION, 17))
|
|
#define FIT_WKT_STEP_DURATION_REPEAT_UNTIL_MAX_POWER_LAST_LAP_LESS_THAN (FIT_CAST(FIT_WKT_STEP_DURATION, 18))
|
|
#define FIT_WKT_STEP_DURATION_POWER_3S_LESS_THAN (FIT_CAST(FIT_WKT_STEP_DURATION, 19))
|
|
#define FIT_WKT_STEP_DURATION_POWER_10S_LESS_THAN (FIT_CAST(FIT_WKT_STEP_DURATION, 20))
|
|
#define FIT_WKT_STEP_DURATION_POWER_30S_LESS_THAN (FIT_CAST(FIT_WKT_STEP_DURATION, 21))
|
|
#define FIT_WKT_STEP_DURATION_POWER_3S_GREATER_THAN (FIT_CAST(FIT_WKT_STEP_DURATION, 22))
|
|
#define FIT_WKT_STEP_DURATION_POWER_10S_GREATER_THAN (FIT_CAST(FIT_WKT_STEP_DURATION, 23))
|
|
#define FIT_WKT_STEP_DURATION_POWER_30S_GREATER_THAN (FIT_CAST(FIT_WKT_STEP_DURATION, 24))
|
|
#define FIT_WKT_STEP_DURATION_POWER_LAP_LESS_THAN (FIT_CAST(FIT_WKT_STEP_DURATION, 25))
|
|
#define FIT_WKT_STEP_DURATION_POWER_LAP_GREATER_THAN (FIT_CAST(FIT_WKT_STEP_DURATION, 26))
|
|
#define FIT_WKT_STEP_DURATION_REPEAT_UNTIL_TRAINING_PEAKS_TSS (FIT_CAST(FIT_WKT_STEP_DURATION, 27))
|
|
#define FIT_WKT_STEP_DURATION_REPETITION_TIME (FIT_CAST(FIT_WKT_STEP_DURATION, 28))
|
|
#define FIT_WKT_STEP_DURATION_REPS (FIT_CAST(FIT_WKT_STEP_DURATION, 29))
|
|
#define FIT_WKT_STEP_DURATION_TIME_ONLY (FIT_CAST(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_CAST(FIT_WKT_STEP_TARGET, 0))
|
|
#define FIT_WKT_STEP_TARGET_HEART_RATE (FIT_CAST(FIT_WKT_STEP_TARGET, 1))
|
|
#define FIT_WKT_STEP_TARGET_OPEN (FIT_CAST(FIT_WKT_STEP_TARGET, 2))
|
|
#define FIT_WKT_STEP_TARGET_CADENCE (FIT_CAST(FIT_WKT_STEP_TARGET, 3))
|
|
#define FIT_WKT_STEP_TARGET_POWER (FIT_CAST(FIT_WKT_STEP_TARGET, 4))
|
|
#define FIT_WKT_STEP_TARGET_GRADE (FIT_CAST(FIT_WKT_STEP_TARGET, 5))
|
|
#define FIT_WKT_STEP_TARGET_RESISTANCE (FIT_CAST(FIT_WKT_STEP_TARGET, 6))
|
|
#define FIT_WKT_STEP_TARGET_POWER_3S (FIT_CAST(FIT_WKT_STEP_TARGET, 7))
|
|
#define FIT_WKT_STEP_TARGET_POWER_10S (FIT_CAST(FIT_WKT_STEP_TARGET, 8))
|
|
#define FIT_WKT_STEP_TARGET_POWER_30S (FIT_CAST(FIT_WKT_STEP_TARGET, 9))
|
|
#define FIT_WKT_STEP_TARGET_POWER_LAP (FIT_CAST(FIT_WKT_STEP_TARGET, 10))
|
|
#define FIT_WKT_STEP_TARGET_SWIM_STROKE (FIT_CAST(FIT_WKT_STEP_TARGET, 11))
|
|
#define FIT_WKT_STEP_TARGET_SPEED_LAP (FIT_CAST(FIT_WKT_STEP_TARGET, 12))
|
|
#define FIT_WKT_STEP_TARGET_HEART_RATE_LAP (FIT_CAST(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_CAST(FIT_GOAL, 0))
|
|
#define FIT_GOAL_DISTANCE (FIT_CAST(FIT_GOAL, 1))
|
|
#define FIT_GOAL_CALORIES (FIT_CAST(FIT_GOAL, 2))
|
|
#define FIT_GOAL_FREQUENCY (FIT_CAST(FIT_GOAL, 3))
|
|
#define FIT_GOAL_STEPS (FIT_CAST(FIT_GOAL, 4))
|
|
#define FIT_GOAL_ASCENT (FIT_CAST(FIT_GOAL, 5))
|
|
#define FIT_GOAL_ACTIVE_MINUTES (FIT_CAST(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_CAST(FIT_GOAL_RECURRENCE, 0))
|
|
#define FIT_GOAL_RECURRENCE_DAILY (FIT_CAST(FIT_GOAL_RECURRENCE, 1))
|
|
#define FIT_GOAL_RECURRENCE_WEEKLY (FIT_CAST(FIT_GOAL_RECURRENCE, 2))
|
|
#define FIT_GOAL_RECURRENCE_MONTHLY (FIT_CAST(FIT_GOAL_RECURRENCE, 3))
|
|
#define FIT_GOAL_RECURRENCE_YEARLY (FIT_CAST(FIT_GOAL_RECURRENCE, 4))
|
|
#define FIT_GOAL_RECURRENCE_CUSTOM (FIT_CAST(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_CAST(FIT_GOAL_SOURCE, 0)) // Device generated
|
|
#define FIT_GOAL_SOURCE_COMMUNITY (FIT_CAST(FIT_GOAL_SOURCE, 1)) // Social network sourced goal
|
|
#define FIT_GOAL_SOURCE_USER (FIT_CAST(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_CAST(FIT_SCHEDULE, 0))
|
|
#define FIT_SCHEDULE_COURSE (FIT_CAST(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_CAST(FIT_COURSE_POINT, 0))
|
|
#define FIT_COURSE_POINT_SUMMIT (FIT_CAST(FIT_COURSE_POINT, 1))
|
|
#define FIT_COURSE_POINT_VALLEY (FIT_CAST(FIT_COURSE_POINT, 2))
|
|
#define FIT_COURSE_POINT_WATER (FIT_CAST(FIT_COURSE_POINT, 3))
|
|
#define FIT_COURSE_POINT_FOOD (FIT_CAST(FIT_COURSE_POINT, 4))
|
|
#define FIT_COURSE_POINT_DANGER (FIT_CAST(FIT_COURSE_POINT, 5))
|
|
#define FIT_COURSE_POINT_LEFT (FIT_CAST(FIT_COURSE_POINT, 6))
|
|
#define FIT_COURSE_POINT_RIGHT (FIT_CAST(FIT_COURSE_POINT, 7))
|
|
#define FIT_COURSE_POINT_STRAIGHT (FIT_CAST(FIT_COURSE_POINT, 8))
|
|
#define FIT_COURSE_POINT_FIRST_AID (FIT_CAST(FIT_COURSE_POINT, 9))
|
|
#define FIT_COURSE_POINT_FOURTH_CATEGORY (FIT_CAST(FIT_COURSE_POINT, 10))
|
|
#define FIT_COURSE_POINT_THIRD_CATEGORY (FIT_CAST(FIT_COURSE_POINT, 11))
|
|
#define FIT_COURSE_POINT_SECOND_CATEGORY (FIT_CAST(FIT_COURSE_POINT, 12))
|
|
#define FIT_COURSE_POINT_FIRST_CATEGORY (FIT_CAST(FIT_COURSE_POINT, 13))
|
|
#define FIT_COURSE_POINT_HORS_CATEGORY (FIT_CAST(FIT_COURSE_POINT, 14))
|
|
#define FIT_COURSE_POINT_SPRINT (FIT_CAST(FIT_COURSE_POINT, 15))
|
|
#define FIT_COURSE_POINT_LEFT_FORK (FIT_CAST(FIT_COURSE_POINT, 16))
|
|
#define FIT_COURSE_POINT_RIGHT_FORK (FIT_CAST(FIT_COURSE_POINT, 17))
|
|
#define FIT_COURSE_POINT_MIDDLE_FORK (FIT_CAST(FIT_COURSE_POINT, 18))
|
|
#define FIT_COURSE_POINT_SLIGHT_LEFT (FIT_CAST(FIT_COURSE_POINT, 19))
|
|
#define FIT_COURSE_POINT_SHARP_LEFT (FIT_CAST(FIT_COURSE_POINT, 20))
|
|
#define FIT_COURSE_POINT_SLIGHT_RIGHT (FIT_CAST(FIT_COURSE_POINT, 21))
|
|
#define FIT_COURSE_POINT_SHARP_RIGHT (FIT_CAST(FIT_COURSE_POINT, 22))
|
|
#define FIT_COURSE_POINT_U_TURN (FIT_CAST(FIT_COURSE_POINT, 23))
|
|
#define FIT_COURSE_POINT_SEGMENT_START (FIT_CAST(FIT_COURSE_POINT, 24))
|
|
#define FIT_COURSE_POINT_SEGMENT_END (FIT_CAST(FIT_COURSE_POINT, 25))
|
|
#define FIT_COURSE_POINT_CAMPSITE (FIT_CAST(FIT_COURSE_POINT, 27))
|
|
#define FIT_COURSE_POINT_AID_STATION (FIT_CAST(FIT_COURSE_POINT, 28))
|
|
#define FIT_COURSE_POINT_REST_AREA (FIT_CAST(FIT_COURSE_POINT, 29))
|
|
#define FIT_COURSE_POINT_GENERAL_DISTANCE (FIT_CAST(FIT_COURSE_POINT, 30)) // Used with UpAhead
|
|
#define FIT_COURSE_POINT_SERVICE (FIT_CAST(FIT_COURSE_POINT, 31))
|
|
#define FIT_COURSE_POINT_ENERGY_GEL (FIT_CAST(FIT_COURSE_POINT, 32))
|
|
#define FIT_COURSE_POINT_SPORTS_DRINK (FIT_CAST(FIT_COURSE_POINT, 33))
|
|
#define FIT_COURSE_POINT_MILE_MARKER (FIT_CAST(FIT_COURSE_POINT, 34))
|
|
#define FIT_COURSE_POINT_CHECKPOINT (FIT_CAST(FIT_COURSE_POINT, 35))
|
|
#define FIT_COURSE_POINT_SHELTER (FIT_CAST(FIT_COURSE_POINT, 36))
|
|
#define FIT_COURSE_POINT_MEETING_SPOT (FIT_CAST(FIT_COURSE_POINT, 37))
|
|
#define FIT_COURSE_POINT_OVERLOOK (FIT_CAST(FIT_COURSE_POINT, 38))
|
|
#define FIT_COURSE_POINT_TOILET (FIT_CAST(FIT_COURSE_POINT, 39))
|
|
#define FIT_COURSE_POINT_SHOWER (FIT_CAST(FIT_COURSE_POINT, 40))
|
|
#define FIT_COURSE_POINT_GEAR (FIT_CAST(FIT_COURSE_POINT, 41))
|
|
#define FIT_COURSE_POINT_SHARP_CURVE (FIT_CAST(FIT_COURSE_POINT, 42))
|
|
#define FIT_COURSE_POINT_STEEP_INCLINE (FIT_CAST(FIT_COURSE_POINT, 43))
|
|
#define FIT_COURSE_POINT_TUNNEL (FIT_CAST(FIT_COURSE_POINT, 44))
|
|
#define FIT_COURSE_POINT_BRIDGE (FIT_CAST(FIT_COURSE_POINT, 45))
|
|
#define FIT_COURSE_POINT_OBSTACLE (FIT_CAST(FIT_COURSE_POINT, 46))
|
|
#define FIT_COURSE_POINT_CROSSING (FIT_CAST(FIT_COURSE_POINT, 47))
|
|
#define FIT_COURSE_POINT_STORE (FIT_CAST(FIT_COURSE_POINT, 48))
|
|
#define FIT_COURSE_POINT_TRANSITION (FIT_CAST(FIT_COURSE_POINT, 49))
|
|
#define FIT_COURSE_POINT_NAVAID (FIT_CAST(FIT_COURSE_POINT, 50))
|
|
#define FIT_COURSE_POINT_TRANSPORT (FIT_CAST(FIT_COURSE_POINT, 51))
|
|
#define FIT_COURSE_POINT_ALERT (FIT_CAST(FIT_COURSE_POINT, 52))
|
|
#define FIT_COURSE_POINT_INFO (FIT_CAST(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_CAST(FIT_MANUFACTURER, 1))
|
|
#define FIT_MANUFACTURER_GARMIN_FR405_ANTFS (FIT_CAST(FIT_MANUFACTURER, 2)) // Do not use. Used by FR405 for ANTFS man id.
|
|
#define FIT_MANUFACTURER_ZEPHYR (FIT_CAST(FIT_MANUFACTURER, 3))
|
|
#define FIT_MANUFACTURER_DAYTON (FIT_CAST(FIT_MANUFACTURER, 4))
|
|
#define FIT_MANUFACTURER_IDT (FIT_CAST(FIT_MANUFACTURER, 5))
|
|
#define FIT_MANUFACTURER_SRM (FIT_CAST(FIT_MANUFACTURER, 6))
|
|
#define FIT_MANUFACTURER_QUARQ (FIT_CAST(FIT_MANUFACTURER, 7))
|
|
#define FIT_MANUFACTURER_IBIKE (FIT_CAST(FIT_MANUFACTURER, 8))
|
|
#define FIT_MANUFACTURER_SARIS (FIT_CAST(FIT_MANUFACTURER, 9))
|
|
#define FIT_MANUFACTURER_SPARK_HK (FIT_CAST(FIT_MANUFACTURER, 10))
|
|
#define FIT_MANUFACTURER_TANITA (FIT_CAST(FIT_MANUFACTURER, 11))
|
|
#define FIT_MANUFACTURER_ECHOWELL (FIT_CAST(FIT_MANUFACTURER, 12))
|
|
#define FIT_MANUFACTURER_DYNASTREAM_OEM (FIT_CAST(FIT_MANUFACTURER, 13))
|
|
#define FIT_MANUFACTURER_NAUTILUS (FIT_CAST(FIT_MANUFACTURER, 14))
|
|
#define FIT_MANUFACTURER_DYNASTREAM (FIT_CAST(FIT_MANUFACTURER, 15))
|
|
#define FIT_MANUFACTURER_TIMEX (FIT_CAST(FIT_MANUFACTURER, 16))
|
|
#define FIT_MANUFACTURER_METRIGEAR (FIT_CAST(FIT_MANUFACTURER, 17))
|
|
#define FIT_MANUFACTURER_XELIC (FIT_CAST(FIT_MANUFACTURER, 18))
|
|
#define FIT_MANUFACTURER_BEURER (FIT_CAST(FIT_MANUFACTURER, 19))
|
|
#define FIT_MANUFACTURER_CARDIOSPORT (FIT_CAST(FIT_MANUFACTURER, 20))
|
|
#define FIT_MANUFACTURER_A_AND_D (FIT_CAST(FIT_MANUFACTURER, 21))
|
|
#define FIT_MANUFACTURER_HMM (FIT_CAST(FIT_MANUFACTURER, 22))
|
|
#define FIT_MANUFACTURER_SUUNTO (FIT_CAST(FIT_MANUFACTURER, 23))
|
|
#define FIT_MANUFACTURER_THITA_ELEKTRONIK (FIT_CAST(FIT_MANUFACTURER, 24))
|
|
#define FIT_MANUFACTURER_GPULSE (FIT_CAST(FIT_MANUFACTURER, 25))
|
|
#define FIT_MANUFACTURER_CLEAN_MOBILE (FIT_CAST(FIT_MANUFACTURER, 26))
|
|
#define FIT_MANUFACTURER_PEDAL_BRAIN (FIT_CAST(FIT_MANUFACTURER, 27))
|
|
#define FIT_MANUFACTURER_PEAKSWARE (FIT_CAST(FIT_MANUFACTURER, 28))
|
|
#define FIT_MANUFACTURER_SAXONAR (FIT_CAST(FIT_MANUFACTURER, 29))
|
|
#define FIT_MANUFACTURER_LEMOND_FITNESS (FIT_CAST(FIT_MANUFACTURER, 30))
|
|
#define FIT_MANUFACTURER_DEXCOM (FIT_CAST(FIT_MANUFACTURER, 31))
|
|
#define FIT_MANUFACTURER_WAHOO_FITNESS (FIT_CAST(FIT_MANUFACTURER, 32))
|
|
#define FIT_MANUFACTURER_OCTANE_FITNESS (FIT_CAST(FIT_MANUFACTURER, 33))
|
|
#define FIT_MANUFACTURER_ARCHINOETICS (FIT_CAST(FIT_MANUFACTURER, 34))
|
|
#define FIT_MANUFACTURER_THE_HURT_BOX (FIT_CAST(FIT_MANUFACTURER, 35))
|
|
#define FIT_MANUFACTURER_CITIZEN_SYSTEMS (FIT_CAST(FIT_MANUFACTURER, 36))
|
|
#define FIT_MANUFACTURER_MAGELLAN (FIT_CAST(FIT_MANUFACTURER, 37))
|
|
#define FIT_MANUFACTURER_OSYNCE (FIT_CAST(FIT_MANUFACTURER, 38))
|
|
#define FIT_MANUFACTURER_HOLUX (FIT_CAST(FIT_MANUFACTURER, 39))
|
|
#define FIT_MANUFACTURER_CONCEPT2 (FIT_CAST(FIT_MANUFACTURER, 40))
|
|
#define FIT_MANUFACTURER_SHIMANO (FIT_CAST(FIT_MANUFACTURER, 41))
|
|
#define FIT_MANUFACTURER_ONE_GIANT_LEAP (FIT_CAST(FIT_MANUFACTURER, 42))
|
|
#define FIT_MANUFACTURER_ACE_SENSOR (FIT_CAST(FIT_MANUFACTURER, 43))
|
|
#define FIT_MANUFACTURER_BRIM_BROTHERS (FIT_CAST(FIT_MANUFACTURER, 44))
|
|
#define FIT_MANUFACTURER_XPLOVA (FIT_CAST(FIT_MANUFACTURER, 45))
|
|
#define FIT_MANUFACTURER_PERCEPTION_DIGITAL (FIT_CAST(FIT_MANUFACTURER, 46))
|
|
#define FIT_MANUFACTURER_BF1SYSTEMS (FIT_CAST(FIT_MANUFACTURER, 47))
|
|
#define FIT_MANUFACTURER_PIONEER (FIT_CAST(FIT_MANUFACTURER, 48))
|
|
#define FIT_MANUFACTURER_SPANTEC (FIT_CAST(FIT_MANUFACTURER, 49))
|
|
#define FIT_MANUFACTURER_METALOGICS (FIT_CAST(FIT_MANUFACTURER, 50))
|
|
#define FIT_MANUFACTURER_4IIIIS (FIT_CAST(FIT_MANUFACTURER, 51))
|
|
#define FIT_MANUFACTURER_SEIKO_EPSON (FIT_CAST(FIT_MANUFACTURER, 52))
|
|
#define FIT_MANUFACTURER_SEIKO_EPSON_OEM (FIT_CAST(FIT_MANUFACTURER, 53))
|
|
#define FIT_MANUFACTURER_IFOR_POWELL (FIT_CAST(FIT_MANUFACTURER, 54))
|
|
#define FIT_MANUFACTURER_MAXWELL_GUIDER (FIT_CAST(FIT_MANUFACTURER, 55))
|
|
#define FIT_MANUFACTURER_STAR_TRAC (FIT_CAST(FIT_MANUFACTURER, 56))
|
|
#define FIT_MANUFACTURER_BREAKAWAY (FIT_CAST(FIT_MANUFACTURER, 57))
|
|
#define FIT_MANUFACTURER_ALATECH_TECHNOLOGY_LTD (FIT_CAST(FIT_MANUFACTURER, 58))
|
|
#define FIT_MANUFACTURER_MIO_TECHNOLOGY_EUROPE (FIT_CAST(FIT_MANUFACTURER, 59))
|
|
#define FIT_MANUFACTURER_ROTOR (FIT_CAST(FIT_MANUFACTURER, 60))
|
|
#define FIT_MANUFACTURER_GEONAUTE (FIT_CAST(FIT_MANUFACTURER, 61))
|
|
#define FIT_MANUFACTURER_ID_BIKE (FIT_CAST(FIT_MANUFACTURER, 62))
|
|
#define FIT_MANUFACTURER_SPECIALIZED (FIT_CAST(FIT_MANUFACTURER, 63))
|
|
#define FIT_MANUFACTURER_WTEK (FIT_CAST(FIT_MANUFACTURER, 64))
|
|
#define FIT_MANUFACTURER_PHYSICAL_ENTERPRISES (FIT_CAST(FIT_MANUFACTURER, 65))
|
|
#define FIT_MANUFACTURER_NORTH_POLE_ENGINEERING (FIT_CAST(FIT_MANUFACTURER, 66))
|
|
#define FIT_MANUFACTURER_BKOOL (FIT_CAST(FIT_MANUFACTURER, 67))
|
|
#define FIT_MANUFACTURER_CATEYE (FIT_CAST(FIT_MANUFACTURER, 68))
|
|
#define FIT_MANUFACTURER_STAGES_CYCLING (FIT_CAST(FIT_MANUFACTURER, 69))
|
|
#define FIT_MANUFACTURER_SIGMASPORT (FIT_CAST(FIT_MANUFACTURER, 70))
|
|
#define FIT_MANUFACTURER_TOMTOM (FIT_CAST(FIT_MANUFACTURER, 71))
|
|
#define FIT_MANUFACTURER_PERIPEDAL (FIT_CAST(FIT_MANUFACTURER, 72))
|
|
#define FIT_MANUFACTURER_WATTBIKE (FIT_CAST(FIT_MANUFACTURER, 73))
|
|
#define FIT_MANUFACTURER_MOXY (FIT_CAST(FIT_MANUFACTURER, 76))
|
|
#define FIT_MANUFACTURER_CICLOSPORT (FIT_CAST(FIT_MANUFACTURER, 77))
|
|
#define FIT_MANUFACTURER_POWERBAHN (FIT_CAST(FIT_MANUFACTURER, 78))
|
|
#define FIT_MANUFACTURER_ACORN_PROJECTS_APS (FIT_CAST(FIT_MANUFACTURER, 79))
|
|
#define FIT_MANUFACTURER_LIFEBEAM (FIT_CAST(FIT_MANUFACTURER, 80))
|
|
#define FIT_MANUFACTURER_BONTRAGER (FIT_CAST(FIT_MANUFACTURER, 81))
|
|
#define FIT_MANUFACTURER_WELLGO (FIT_CAST(FIT_MANUFACTURER, 82))
|
|
#define FIT_MANUFACTURER_SCOSCHE (FIT_CAST(FIT_MANUFACTURER, 83))
|
|
#define FIT_MANUFACTURER_MAGURA (FIT_CAST(FIT_MANUFACTURER, 84))
|
|
#define FIT_MANUFACTURER_WOODWAY (FIT_CAST(FIT_MANUFACTURER, 85))
|
|
#define FIT_MANUFACTURER_ELITE (FIT_CAST(FIT_MANUFACTURER, 86))
|
|
#define FIT_MANUFACTURER_NIELSEN_KELLERMAN (FIT_CAST(FIT_MANUFACTURER, 87))
|
|
#define FIT_MANUFACTURER_DK_CITY (FIT_CAST(FIT_MANUFACTURER, 88))
|
|
#define FIT_MANUFACTURER_TACX (FIT_CAST(FIT_MANUFACTURER, 89))
|
|
#define FIT_MANUFACTURER_DIRECTION_TECHNOLOGY (FIT_CAST(FIT_MANUFACTURER, 90))
|
|
#define FIT_MANUFACTURER_MAGTONIC (FIT_CAST(FIT_MANUFACTURER, 91))
|
|
#define FIT_MANUFACTURER_1PARTCARBON (FIT_CAST(FIT_MANUFACTURER, 92))
|
|
#define FIT_MANUFACTURER_INSIDE_RIDE_TECHNOLOGIES (FIT_CAST(FIT_MANUFACTURER, 93))
|
|
#define FIT_MANUFACTURER_SOUND_OF_MOTION (FIT_CAST(FIT_MANUFACTURER, 94))
|
|
#define FIT_MANUFACTURER_STRYD (FIT_CAST(FIT_MANUFACTURER, 95))
|
|
#define FIT_MANUFACTURER_ICG (FIT_CAST(FIT_MANUFACTURER, 96)) // Indoorcycling Group
|
|
#define FIT_MANUFACTURER_MIPULSE (FIT_CAST(FIT_MANUFACTURER, 97))
|
|
#define FIT_MANUFACTURER_BSX_ATHLETICS (FIT_CAST(FIT_MANUFACTURER, 98))
|
|
#define FIT_MANUFACTURER_LOOK (FIT_CAST(FIT_MANUFACTURER, 99))
|
|
#define FIT_MANUFACTURER_CAMPAGNOLO_SRL (FIT_CAST(FIT_MANUFACTURER, 100))
|
|
#define FIT_MANUFACTURER_BODY_BIKE_SMART (FIT_CAST(FIT_MANUFACTURER, 101))
|
|
#define FIT_MANUFACTURER_PRAXISWORKS (FIT_CAST(FIT_MANUFACTURER, 102))
|
|
#define FIT_MANUFACTURER_LIMITS_TECHNOLOGY (FIT_CAST(FIT_MANUFACTURER, 103)) // Limits Technology Ltd.
|
|
#define FIT_MANUFACTURER_TOPACTION_TECHNOLOGY (FIT_CAST(FIT_MANUFACTURER, 104)) // TopAction Technology Inc.
|
|
#define FIT_MANUFACTURER_COSINUSS (FIT_CAST(FIT_MANUFACTURER, 105))
|
|
#define FIT_MANUFACTURER_FITCARE (FIT_CAST(FIT_MANUFACTURER, 106))
|
|
#define FIT_MANUFACTURER_MAGENE (FIT_CAST(FIT_MANUFACTURER, 107))
|
|
#define FIT_MANUFACTURER_GIANT_MANUFACTURING_CO (FIT_CAST(FIT_MANUFACTURER, 108))
|
|
#define FIT_MANUFACTURER_TIGRASPORT (FIT_CAST(FIT_MANUFACTURER, 109)) // Tigrasport
|
|
#define FIT_MANUFACTURER_SALUTRON (FIT_CAST(FIT_MANUFACTURER, 110))
|
|
#define FIT_MANUFACTURER_TECHNOGYM (FIT_CAST(FIT_MANUFACTURER, 111))
|
|
#define FIT_MANUFACTURER_BRYTON_SENSORS (FIT_CAST(FIT_MANUFACTURER, 112))
|
|
#define FIT_MANUFACTURER_LATITUDE_LIMITED (FIT_CAST(FIT_MANUFACTURER, 113))
|
|
#define FIT_MANUFACTURER_SOARING_TECHNOLOGY (FIT_CAST(FIT_MANUFACTURER, 114))
|
|
#define FIT_MANUFACTURER_IGPSPORT (FIT_CAST(FIT_MANUFACTURER, 115))
|
|
#define FIT_MANUFACTURER_THINKRIDER (FIT_CAST(FIT_MANUFACTURER, 116))
|
|
#define FIT_MANUFACTURER_GOPHER_SPORT (FIT_CAST(FIT_MANUFACTURER, 117))
|
|
#define FIT_MANUFACTURER_WATERROWER (FIT_CAST(FIT_MANUFACTURER, 118))
|
|
#define FIT_MANUFACTURER_ORANGETHEORY (FIT_CAST(FIT_MANUFACTURER, 119))
|
|
#define FIT_MANUFACTURER_INPEAK (FIT_CAST(FIT_MANUFACTURER, 120))
|
|
#define FIT_MANUFACTURER_KINETIC (FIT_CAST(FIT_MANUFACTURER, 121))
|
|
#define FIT_MANUFACTURER_JOHNSON_HEALTH_TECH (FIT_CAST(FIT_MANUFACTURER, 122))
|
|
#define FIT_MANUFACTURER_POLAR_ELECTRO (FIT_CAST(FIT_MANUFACTURER, 123))
|
|
#define FIT_MANUFACTURER_SEESENSE (FIT_CAST(FIT_MANUFACTURER, 124))
|
|
#define FIT_MANUFACTURER_NCI_TECHNOLOGY (FIT_CAST(FIT_MANUFACTURER, 125))
|
|
#define FIT_MANUFACTURER_IQSQUARE (FIT_CAST(FIT_MANUFACTURER, 126))
|
|
#define FIT_MANUFACTURER_LEOMO (FIT_CAST(FIT_MANUFACTURER, 127))
|
|
#define FIT_MANUFACTURER_IFIT_COM (FIT_CAST(FIT_MANUFACTURER, 128))
|
|
#define FIT_MANUFACTURER_COROS_BYTE (FIT_CAST(FIT_MANUFACTURER, 129))
|
|
#define FIT_MANUFACTURER_VERSA_DESIGN (FIT_CAST(FIT_MANUFACTURER, 130))
|
|
#define FIT_MANUFACTURER_CHILEAF (FIT_CAST(FIT_MANUFACTURER, 131))
|
|
#define FIT_MANUFACTURER_CYCPLUS (FIT_CAST(FIT_MANUFACTURER, 132))
|
|
#define FIT_MANUFACTURER_GRAVAA_BYTE (FIT_CAST(FIT_MANUFACTURER, 133))
|
|
#define FIT_MANUFACTURER_SIGEYI (FIT_CAST(FIT_MANUFACTURER, 134))
|
|
#define FIT_MANUFACTURER_COOSPO (FIT_CAST(FIT_MANUFACTURER, 135))
|
|
#define FIT_MANUFACTURER_GEOID (FIT_CAST(FIT_MANUFACTURER, 136))
|
|
#define FIT_MANUFACTURER_BOSCH (FIT_CAST(FIT_MANUFACTURER, 137))
|
|
#define FIT_MANUFACTURER_KYTO (FIT_CAST(FIT_MANUFACTURER, 138))
|
|
#define FIT_MANUFACTURER_KINETIC_SPORTS (FIT_CAST(FIT_MANUFACTURER, 139))
|
|
#define FIT_MANUFACTURER_DECATHLON_BYTE (FIT_CAST(FIT_MANUFACTURER, 140))
|
|
#define FIT_MANUFACTURER_TQ_SYSTEMS (FIT_CAST(FIT_MANUFACTURER, 141))
|
|
#define FIT_MANUFACTURER_TAG_HEUER (FIT_CAST(FIT_MANUFACTURER, 142))
|
|
#define FIT_MANUFACTURER_KEISER_FITNESS (FIT_CAST(FIT_MANUFACTURER, 143))
|
|
#define FIT_MANUFACTURER_ZWIFT_BYTE (FIT_CAST(FIT_MANUFACTURER, 144))
|
|
#define FIT_MANUFACTURER_PORSCHE_EP (FIT_CAST(FIT_MANUFACTURER, 145))
|
|
#define FIT_MANUFACTURER_BLACKBIRD (FIT_CAST(FIT_MANUFACTURER, 146))
|
|
#define FIT_MANUFACTURER_MEILAN_BYTE (FIT_CAST(FIT_MANUFACTURER, 147))
|
|
#define FIT_MANUFACTURER_EZON (FIT_CAST(FIT_MANUFACTURER, 148))
|
|
#define FIT_MANUFACTURER_LAISI (FIT_CAST(FIT_MANUFACTURER, 149))
|
|
#define FIT_MANUFACTURER_MYZONE (FIT_CAST(FIT_MANUFACTURER, 150))
|
|
#define FIT_MANUFACTURER_ABAWO (FIT_CAST(FIT_MANUFACTURER, 151))
|
|
#define FIT_MANUFACTURER_BAFANG (FIT_CAST(FIT_MANUFACTURER, 152))
|
|
#define FIT_MANUFACTURER_LUHONG_TECHNOLOGY (FIT_CAST(FIT_MANUFACTURER, 153))
|
|
#define FIT_MANUFACTURER_DEVELOPMENT (FIT_CAST(FIT_MANUFACTURER, 255))
|
|
#define FIT_MANUFACTURER_HEALTHANDLIFE (FIT_CAST(FIT_MANUFACTURER, 257))
|
|
#define FIT_MANUFACTURER_LEZYNE (FIT_CAST(FIT_MANUFACTURER, 258))
|
|
#define FIT_MANUFACTURER_SCRIBE_LABS (FIT_CAST(FIT_MANUFACTURER, 259))
|
|
#define FIT_MANUFACTURER_ZWIFT (FIT_CAST(FIT_MANUFACTURER, 260))
|
|
#define FIT_MANUFACTURER_WATTEAM (FIT_CAST(FIT_MANUFACTURER, 261))
|
|
#define FIT_MANUFACTURER_RECON (FIT_CAST(FIT_MANUFACTURER, 262))
|
|
#define FIT_MANUFACTURER_FAVERO_ELECTRONICS (FIT_CAST(FIT_MANUFACTURER, 263))
|
|
#define FIT_MANUFACTURER_DYNOVELO (FIT_CAST(FIT_MANUFACTURER, 264))
|
|
#define FIT_MANUFACTURER_STRAVA (FIT_CAST(FIT_MANUFACTURER, 265))
|
|
#define FIT_MANUFACTURER_PRECOR (FIT_CAST(FIT_MANUFACTURER, 266)) // Amer Sports
|
|
#define FIT_MANUFACTURER_BRYTON (FIT_CAST(FIT_MANUFACTURER, 267))
|
|
#define FIT_MANUFACTURER_SRAM (FIT_CAST(FIT_MANUFACTURER, 268))
|
|
#define FIT_MANUFACTURER_NAVMAN (FIT_CAST(FIT_MANUFACTURER, 269)) // MiTAC Global Corporation (Mio Technology)
|
|
#define FIT_MANUFACTURER_COBI (FIT_CAST(FIT_MANUFACTURER, 270)) // COBI GmbH
|
|
#define FIT_MANUFACTURER_SPIVI (FIT_CAST(FIT_MANUFACTURER, 271))
|
|
#define FIT_MANUFACTURER_MIO_MAGELLAN (FIT_CAST(FIT_MANUFACTURER, 272))
|
|
#define FIT_MANUFACTURER_EVESPORTS (FIT_CAST(FIT_MANUFACTURER, 273))
|
|
#define FIT_MANUFACTURER_SENSITIVUS_GAUGE (FIT_CAST(FIT_MANUFACTURER, 274))
|
|
#define FIT_MANUFACTURER_PODOON (FIT_CAST(FIT_MANUFACTURER, 275))
|
|
#define FIT_MANUFACTURER_LIFE_TIME_FITNESS (FIT_CAST(FIT_MANUFACTURER, 276))
|
|
#define FIT_MANUFACTURER_FALCO_E_MOTORS (FIT_CAST(FIT_MANUFACTURER, 277)) // Falco eMotors Inc.
|
|
#define FIT_MANUFACTURER_MINOURA (FIT_CAST(FIT_MANUFACTURER, 278))
|
|
#define FIT_MANUFACTURER_CYCLIQ (FIT_CAST(FIT_MANUFACTURER, 279))
|
|
#define FIT_MANUFACTURER_LUXOTTICA (FIT_CAST(FIT_MANUFACTURER, 280))
|
|
#define FIT_MANUFACTURER_TRAINER_ROAD (FIT_CAST(FIT_MANUFACTURER, 281))
|
|
#define FIT_MANUFACTURER_THE_SUFFERFEST (FIT_CAST(FIT_MANUFACTURER, 282))
|
|
#define FIT_MANUFACTURER_FULLSPEEDAHEAD (FIT_CAST(FIT_MANUFACTURER, 283))
|
|
#define FIT_MANUFACTURER_VIRTUALTRAINING (FIT_CAST(FIT_MANUFACTURER, 284))
|
|
#define FIT_MANUFACTURER_FEEDBACKSPORTS (FIT_CAST(FIT_MANUFACTURER, 285))
|
|
#define FIT_MANUFACTURER_OMATA (FIT_CAST(FIT_MANUFACTURER, 286))
|
|
#define FIT_MANUFACTURER_VDO (FIT_CAST(FIT_MANUFACTURER, 287))
|
|
#define FIT_MANUFACTURER_MAGNETICDAYS (FIT_CAST(FIT_MANUFACTURER, 288))
|
|
#define FIT_MANUFACTURER_HAMMERHEAD (FIT_CAST(FIT_MANUFACTURER, 289))
|
|
#define FIT_MANUFACTURER_KINETIC_BY_KURT (FIT_CAST(FIT_MANUFACTURER, 290))
|
|
#define FIT_MANUFACTURER_SHAPELOG (FIT_CAST(FIT_MANUFACTURER, 291))
|
|
#define FIT_MANUFACTURER_DABUZIDUO (FIT_CAST(FIT_MANUFACTURER, 292))
|
|
#define FIT_MANUFACTURER_JETBLACK (FIT_CAST(FIT_MANUFACTURER, 293))
|
|
#define FIT_MANUFACTURER_COROS (FIT_CAST(FIT_MANUFACTURER, 294))
|
|
#define FIT_MANUFACTURER_VIRTUGO (FIT_CAST(FIT_MANUFACTURER, 295))
|
|
#define FIT_MANUFACTURER_VELOSENSE (FIT_CAST(FIT_MANUFACTURER, 296))
|
|
#define FIT_MANUFACTURER_CYCLIGENTINC (FIT_CAST(FIT_MANUFACTURER, 297))
|
|
#define FIT_MANUFACTURER_TRAILFORKS (FIT_CAST(FIT_MANUFACTURER, 298))
|
|
#define FIT_MANUFACTURER_MAHLE_EBIKEMOTION (FIT_CAST(FIT_MANUFACTURER, 299))
|
|
#define FIT_MANUFACTURER_NURVV (FIT_CAST(FIT_MANUFACTURER, 300))
|
|
#define FIT_MANUFACTURER_MICROPROGRAM (FIT_CAST(FIT_MANUFACTURER, 301))
|
|
#define FIT_MANUFACTURER_ZONE5CLOUD (FIT_CAST(FIT_MANUFACTURER, 302))
|
|
#define FIT_MANUFACTURER_GREENTEG (FIT_CAST(FIT_MANUFACTURER, 303))
|
|
#define FIT_MANUFACTURER_YAMAHA_MOTORS (FIT_CAST(FIT_MANUFACTURER, 304))
|
|
#define FIT_MANUFACTURER_WHOOP (FIT_CAST(FIT_MANUFACTURER, 305))
|
|
#define FIT_MANUFACTURER_GRAVAA (FIT_CAST(FIT_MANUFACTURER, 306))
|
|
#define FIT_MANUFACTURER_ONELAP (FIT_CAST(FIT_MANUFACTURER, 307))
|
|
#define FIT_MANUFACTURER_MONARK_EXERCISE (FIT_CAST(FIT_MANUFACTURER, 308))
|
|
#define FIT_MANUFACTURER_FORM (FIT_CAST(FIT_MANUFACTURER, 309))
|
|
#define FIT_MANUFACTURER_DECATHLON (FIT_CAST(FIT_MANUFACTURER, 310))
|
|
#define FIT_MANUFACTURER_SYNCROS (FIT_CAST(FIT_MANUFACTURER, 311))
|
|
#define FIT_MANUFACTURER_HEATUP (FIT_CAST(FIT_MANUFACTURER, 312))
|
|
#define FIT_MANUFACTURER_CANNONDALE (FIT_CAST(FIT_MANUFACTURER, 313))
|
|
#define FIT_MANUFACTURER_TRUE_FITNESS (FIT_CAST(FIT_MANUFACTURER, 314))
|
|
#define FIT_MANUFACTURER_RGT_CYCLING (FIT_CAST(FIT_MANUFACTURER, 315))
|
|
#define FIT_MANUFACTURER_VASA (FIT_CAST(FIT_MANUFACTURER, 316))
|
|
#define FIT_MANUFACTURER_RACE_REPUBLIC (FIT_CAST(FIT_MANUFACTURER, 317))
|
|
#define FIT_MANUFACTURER_FAZUA (FIT_CAST(FIT_MANUFACTURER, 318))
|
|
#define FIT_MANUFACTURER_OREKA_TRAINING (FIT_CAST(FIT_MANUFACTURER, 319))
|
|
#define FIT_MANUFACTURER_LSEC (FIT_CAST(FIT_MANUFACTURER, 320)) // Lishun Electric & Communication
|
|
#define FIT_MANUFACTURER_LULULEMON_STUDIO (FIT_CAST(FIT_MANUFACTURER, 321))
|
|
#define FIT_MANUFACTURER_SHANYUE (FIT_CAST(FIT_MANUFACTURER, 322))
|
|
#define FIT_MANUFACTURER_SPINNING_MDA (FIT_CAST(FIT_MANUFACTURER, 323))
|
|
#define FIT_MANUFACTURER_HILLDATING (FIT_CAST(FIT_MANUFACTURER, 324))
|
|
#define FIT_MANUFACTURER_AERO_SENSOR (FIT_CAST(FIT_MANUFACTURER, 325))
|
|
#define FIT_MANUFACTURER_NIKE (FIT_CAST(FIT_MANUFACTURER, 326))
|
|
#define FIT_MANUFACTURER_MAGICSHINE (FIT_CAST(FIT_MANUFACTURER, 327))
|
|
#define FIT_MANUFACTURER_ICTRAINER (FIT_CAST(FIT_MANUFACTURER, 328))
|
|
#define FIT_MANUFACTURER_ABSOLUTE_CYCLING (FIT_CAST(FIT_MANUFACTURER, 329))
|
|
#define FIT_MANUFACTURER_EO_SWIMBETTER (FIT_CAST(FIT_MANUFACTURER, 330))
|
|
#define FIT_MANUFACTURER_MYWHOOSH (FIT_CAST(FIT_MANUFACTURER, 331))
|
|
#define FIT_MANUFACTURER_RAVEMEN (FIT_CAST(FIT_MANUFACTURER, 332))
|
|
#define FIT_MANUFACTURER_TEKTRO_RACING_PRODUCTS (FIT_CAST(FIT_MANUFACTURER, 333))
|
|
#define FIT_MANUFACTURER_DARAD_INNOVATION_CORPORATION (FIT_CAST(FIT_MANUFACTURER, 334))
|
|
#define FIT_MANUFACTURER_CYCLOPTIM (FIT_CAST(FIT_MANUFACTURER, 335))
|
|
#define FIT_MANUFACTURER_RUNNA (FIT_CAST(FIT_MANUFACTURER, 337))
|
|
#define FIT_MANUFACTURER_ACTIGRAPHCORP (FIT_CAST(FIT_MANUFACTURER, 5759))
|
|
#define FIT_MANUFACTURER_COUNT 233
|
|
|
|
typedef FIT_UINT16 FIT_GARMIN_PRODUCT;
|
|
#define FIT_GARMIN_PRODUCT_INVALID FIT_UINT16_INVALID
|
|
#define FIT_GARMIN_PRODUCT_HRM1 (FIT_CAST(FIT_GARMIN_PRODUCT, 1))
|
|
#define FIT_GARMIN_PRODUCT_AXH01 (FIT_CAST(FIT_GARMIN_PRODUCT, 2)) // AXH01 HRM chipset
|
|
#define FIT_GARMIN_PRODUCT_AXB01 (FIT_CAST(FIT_GARMIN_PRODUCT, 3))
|
|
#define FIT_GARMIN_PRODUCT_AXB02 (FIT_CAST(FIT_GARMIN_PRODUCT, 4))
|
|
#define FIT_GARMIN_PRODUCT_HRM2SS (FIT_CAST(FIT_GARMIN_PRODUCT, 5))
|
|
#define FIT_GARMIN_PRODUCT_DSI_ALF02 (FIT_CAST(FIT_GARMIN_PRODUCT, 6))
|
|
#define FIT_GARMIN_PRODUCT_HRM3SS (FIT_CAST(FIT_GARMIN_PRODUCT, 7))
|
|
#define FIT_GARMIN_PRODUCT_HRM_RUN_SINGLE_BYTE_PRODUCT_ID (FIT_CAST(FIT_GARMIN_PRODUCT, 8)) // hrm_run model for HRM ANT+ messaging
|
|
#define FIT_GARMIN_PRODUCT_BSM (FIT_CAST(FIT_GARMIN_PRODUCT, 9)) // BSM model for ANT+ messaging
|
|
#define FIT_GARMIN_PRODUCT_BCM (FIT_CAST(FIT_GARMIN_PRODUCT, 10)) // BCM model for ANT+ messaging
|
|
#define FIT_GARMIN_PRODUCT_AXS01 (FIT_CAST(FIT_GARMIN_PRODUCT, 11)) // AXS01 HRM Bike Chipset model for ANT+ messaging
|
|
#define FIT_GARMIN_PRODUCT_HRM_TRI_SINGLE_BYTE_PRODUCT_ID (FIT_CAST(FIT_GARMIN_PRODUCT, 12)) // hrm_tri model for HRM ANT+ messaging
|
|
#define FIT_GARMIN_PRODUCT_HRM4_RUN_SINGLE_BYTE_PRODUCT_ID (FIT_CAST(FIT_GARMIN_PRODUCT, 13)) // hrm4 run model for HRM ANT+ messaging
|
|
#define FIT_GARMIN_PRODUCT_FR225_SINGLE_BYTE_PRODUCT_ID (FIT_CAST(FIT_GARMIN_PRODUCT, 14)) // fr225 model for HRM ANT+ messaging
|
|
#define FIT_GARMIN_PRODUCT_GEN3_BSM_SINGLE_BYTE_PRODUCT_ID (FIT_CAST(FIT_GARMIN_PRODUCT, 15)) // gen3_bsm model for Bike Speed ANT+ messaging
|
|
#define FIT_GARMIN_PRODUCT_GEN3_BCM_SINGLE_BYTE_PRODUCT_ID (FIT_CAST(FIT_GARMIN_PRODUCT, 16)) // gen3_bcm model for Bike Cadence ANT+ messaging
|
|
#define FIT_GARMIN_PRODUCT_HRM_FIT_SINGLE_BYTE_PRODUCT_ID (FIT_CAST(FIT_GARMIN_PRODUCT, 22))
|
|
#define FIT_GARMIN_PRODUCT_OHR (FIT_CAST(FIT_GARMIN_PRODUCT, 255)) // Garmin Wearable Optical Heart Rate Sensor for ANT+ HR Profile Broadcasting
|
|
#define FIT_GARMIN_PRODUCT_FR301_CHINA (FIT_CAST(FIT_GARMIN_PRODUCT, 473))
|
|
#define FIT_GARMIN_PRODUCT_FR301_JAPAN (FIT_CAST(FIT_GARMIN_PRODUCT, 474))
|
|
#define FIT_GARMIN_PRODUCT_FR301_KOREA (FIT_CAST(FIT_GARMIN_PRODUCT, 475))
|
|
#define FIT_GARMIN_PRODUCT_FR301_TAIWAN (FIT_CAST(FIT_GARMIN_PRODUCT, 494))
|
|
#define FIT_GARMIN_PRODUCT_FR405 (FIT_CAST(FIT_GARMIN_PRODUCT, 717)) // Forerunner 405
|
|
#define FIT_GARMIN_PRODUCT_FR50 (FIT_CAST(FIT_GARMIN_PRODUCT, 782)) // Forerunner 50
|
|
#define FIT_GARMIN_PRODUCT_FR405_JAPAN (FIT_CAST(FIT_GARMIN_PRODUCT, 987))
|
|
#define FIT_GARMIN_PRODUCT_FR60 (FIT_CAST(FIT_GARMIN_PRODUCT, 988)) // Forerunner 60
|
|
#define FIT_GARMIN_PRODUCT_DSI_ALF01 (FIT_CAST(FIT_GARMIN_PRODUCT, 1011))
|
|
#define FIT_GARMIN_PRODUCT_FR310XT (FIT_CAST(FIT_GARMIN_PRODUCT, 1018)) // Forerunner 310
|
|
#define FIT_GARMIN_PRODUCT_EDGE500 (FIT_CAST(FIT_GARMIN_PRODUCT, 1036))
|
|
#define FIT_GARMIN_PRODUCT_FR110 (FIT_CAST(FIT_GARMIN_PRODUCT, 1124)) // Forerunner 110
|
|
#define FIT_GARMIN_PRODUCT_EDGE800 (FIT_CAST(FIT_GARMIN_PRODUCT, 1169))
|
|
#define FIT_GARMIN_PRODUCT_EDGE500_TAIWAN (FIT_CAST(FIT_GARMIN_PRODUCT, 1199))
|
|
#define FIT_GARMIN_PRODUCT_EDGE500_JAPAN (FIT_CAST(FIT_GARMIN_PRODUCT, 1213))
|
|
#define FIT_GARMIN_PRODUCT_CHIRP (FIT_CAST(FIT_GARMIN_PRODUCT, 1253))
|
|
#define FIT_GARMIN_PRODUCT_FR110_JAPAN (FIT_CAST(FIT_GARMIN_PRODUCT, 1274))
|
|
#define FIT_GARMIN_PRODUCT_EDGE200 (FIT_CAST(FIT_GARMIN_PRODUCT, 1325))
|
|
#define FIT_GARMIN_PRODUCT_FR910XT (FIT_CAST(FIT_GARMIN_PRODUCT, 1328))
|
|
#define FIT_GARMIN_PRODUCT_EDGE800_TAIWAN (FIT_CAST(FIT_GARMIN_PRODUCT, 1333))
|
|
#define FIT_GARMIN_PRODUCT_EDGE800_JAPAN (FIT_CAST(FIT_GARMIN_PRODUCT, 1334))
|
|
#define FIT_GARMIN_PRODUCT_ALF04 (FIT_CAST(FIT_GARMIN_PRODUCT, 1341))
|
|
#define FIT_GARMIN_PRODUCT_FR610 (FIT_CAST(FIT_GARMIN_PRODUCT, 1345))
|
|
#define FIT_GARMIN_PRODUCT_FR210_JAPAN (FIT_CAST(FIT_GARMIN_PRODUCT, 1360))
|
|
#define FIT_GARMIN_PRODUCT_VECTOR_SS (FIT_CAST(FIT_GARMIN_PRODUCT, 1380))
|
|
#define FIT_GARMIN_PRODUCT_VECTOR_CP (FIT_CAST(FIT_GARMIN_PRODUCT, 1381))
|
|
#define FIT_GARMIN_PRODUCT_EDGE800_CHINA (FIT_CAST(FIT_GARMIN_PRODUCT, 1386))
|
|
#define FIT_GARMIN_PRODUCT_EDGE500_CHINA (FIT_CAST(FIT_GARMIN_PRODUCT, 1387))
|
|
#define FIT_GARMIN_PRODUCT_APPROACH_G10 (FIT_CAST(FIT_GARMIN_PRODUCT, 1405))
|
|
#define FIT_GARMIN_PRODUCT_FR610_JAPAN (FIT_CAST(FIT_GARMIN_PRODUCT, 1410))
|
|
#define FIT_GARMIN_PRODUCT_EDGE500_KOREA (FIT_CAST(FIT_GARMIN_PRODUCT, 1422))
|
|
#define FIT_GARMIN_PRODUCT_FR70 (FIT_CAST(FIT_GARMIN_PRODUCT, 1436))
|
|
#define FIT_GARMIN_PRODUCT_FR310XT_4T (FIT_CAST(FIT_GARMIN_PRODUCT, 1446))
|
|
#define FIT_GARMIN_PRODUCT_AMX (FIT_CAST(FIT_GARMIN_PRODUCT, 1461))
|
|
#define FIT_GARMIN_PRODUCT_FR10 (FIT_CAST(FIT_GARMIN_PRODUCT, 1482))
|
|
#define FIT_GARMIN_PRODUCT_EDGE800_KOREA (FIT_CAST(FIT_GARMIN_PRODUCT, 1497))
|
|
#define FIT_GARMIN_PRODUCT_SWIM (FIT_CAST(FIT_GARMIN_PRODUCT, 1499))
|
|
#define FIT_GARMIN_PRODUCT_FR910XT_CHINA (FIT_CAST(FIT_GARMIN_PRODUCT, 1537))
|
|
#define FIT_GARMIN_PRODUCT_FENIX (FIT_CAST(FIT_GARMIN_PRODUCT, 1551))
|
|
#define FIT_GARMIN_PRODUCT_EDGE200_TAIWAN (FIT_CAST(FIT_GARMIN_PRODUCT, 1555))
|
|
#define FIT_GARMIN_PRODUCT_EDGE510 (FIT_CAST(FIT_GARMIN_PRODUCT, 1561))
|
|
#define FIT_GARMIN_PRODUCT_EDGE810 (FIT_CAST(FIT_GARMIN_PRODUCT, 1567))
|
|
#define FIT_GARMIN_PRODUCT_TEMPE (FIT_CAST(FIT_GARMIN_PRODUCT, 1570))
|
|
#define FIT_GARMIN_PRODUCT_FR910XT_JAPAN (FIT_CAST(FIT_GARMIN_PRODUCT, 1600))
|
|
#define FIT_GARMIN_PRODUCT_FR620 (FIT_CAST(FIT_GARMIN_PRODUCT, 1623))
|
|
#define FIT_GARMIN_PRODUCT_FR220 (FIT_CAST(FIT_GARMIN_PRODUCT, 1632))
|
|
#define FIT_GARMIN_PRODUCT_FR910XT_KOREA (FIT_CAST(FIT_GARMIN_PRODUCT, 1664))
|
|
#define FIT_GARMIN_PRODUCT_FR10_JAPAN (FIT_CAST(FIT_GARMIN_PRODUCT, 1688))
|
|
#define FIT_GARMIN_PRODUCT_EDGE810_JAPAN (FIT_CAST(FIT_GARMIN_PRODUCT, 1721))
|
|
#define FIT_GARMIN_PRODUCT_VIRB_ELITE (FIT_CAST(FIT_GARMIN_PRODUCT, 1735))
|
|
#define FIT_GARMIN_PRODUCT_EDGE_TOURING (FIT_CAST(FIT_GARMIN_PRODUCT, 1736)) // Also Edge Touring Plus
|
|
#define FIT_GARMIN_PRODUCT_EDGE510_JAPAN (FIT_CAST(FIT_GARMIN_PRODUCT, 1742))
|
|
#define FIT_GARMIN_PRODUCT_HRM_TRI (FIT_CAST(FIT_GARMIN_PRODUCT, 1743)) // Also HRM-Swim
|
|
#define FIT_GARMIN_PRODUCT_HRM_RUN (FIT_CAST(FIT_GARMIN_PRODUCT, 1752))
|
|
#define FIT_GARMIN_PRODUCT_FR920XT (FIT_CAST(FIT_GARMIN_PRODUCT, 1765))
|
|
#define FIT_GARMIN_PRODUCT_EDGE510_ASIA (FIT_CAST(FIT_GARMIN_PRODUCT, 1821))
|
|
#define FIT_GARMIN_PRODUCT_EDGE810_CHINA (FIT_CAST(FIT_GARMIN_PRODUCT, 1822))
|
|
#define FIT_GARMIN_PRODUCT_EDGE810_TAIWAN (FIT_CAST(FIT_GARMIN_PRODUCT, 1823))
|
|
#define FIT_GARMIN_PRODUCT_EDGE1000 (FIT_CAST(FIT_GARMIN_PRODUCT, 1836))
|
|
#define FIT_GARMIN_PRODUCT_VIVO_FIT (FIT_CAST(FIT_GARMIN_PRODUCT, 1837))
|
|
#define FIT_GARMIN_PRODUCT_VIRB_REMOTE (FIT_CAST(FIT_GARMIN_PRODUCT, 1853))
|
|
#define FIT_GARMIN_PRODUCT_VIVO_KI (FIT_CAST(FIT_GARMIN_PRODUCT, 1885))
|
|
#define FIT_GARMIN_PRODUCT_FR15 (FIT_CAST(FIT_GARMIN_PRODUCT, 1903))
|
|
#define FIT_GARMIN_PRODUCT_VIVO_ACTIVE (FIT_CAST(FIT_GARMIN_PRODUCT, 1907))
|
|
#define FIT_GARMIN_PRODUCT_EDGE510_KOREA (FIT_CAST(FIT_GARMIN_PRODUCT, 1918))
|
|
#define FIT_GARMIN_PRODUCT_FR620_JAPAN (FIT_CAST(FIT_GARMIN_PRODUCT, 1928))
|
|
#define FIT_GARMIN_PRODUCT_FR620_CHINA (FIT_CAST(FIT_GARMIN_PRODUCT, 1929))
|
|
#define FIT_GARMIN_PRODUCT_FR220_JAPAN (FIT_CAST(FIT_GARMIN_PRODUCT, 1930))
|
|
#define FIT_GARMIN_PRODUCT_FR220_CHINA (FIT_CAST(FIT_GARMIN_PRODUCT, 1931))
|
|
#define FIT_GARMIN_PRODUCT_APPROACH_S6 (FIT_CAST(FIT_GARMIN_PRODUCT, 1936))
|
|
#define FIT_GARMIN_PRODUCT_VIVO_SMART (FIT_CAST(FIT_GARMIN_PRODUCT, 1956))
|
|
#define FIT_GARMIN_PRODUCT_FENIX2 (FIT_CAST(FIT_GARMIN_PRODUCT, 1967))
|
|
#define FIT_GARMIN_PRODUCT_EPIX (FIT_CAST(FIT_GARMIN_PRODUCT, 1988))
|
|
#define FIT_GARMIN_PRODUCT_FENIX3 (FIT_CAST(FIT_GARMIN_PRODUCT, 2050))
|
|
#define FIT_GARMIN_PRODUCT_EDGE1000_TAIWAN (FIT_CAST(FIT_GARMIN_PRODUCT, 2052))
|
|
#define FIT_GARMIN_PRODUCT_EDGE1000_JAPAN (FIT_CAST(FIT_GARMIN_PRODUCT, 2053))
|
|
#define FIT_GARMIN_PRODUCT_FR15_JAPAN (FIT_CAST(FIT_GARMIN_PRODUCT, 2061))
|
|
#define FIT_GARMIN_PRODUCT_EDGE520 (FIT_CAST(FIT_GARMIN_PRODUCT, 2067))
|
|
#define FIT_GARMIN_PRODUCT_EDGE1000_CHINA (FIT_CAST(FIT_GARMIN_PRODUCT, 2070))
|
|
#define FIT_GARMIN_PRODUCT_FR620_RUSSIA (FIT_CAST(FIT_GARMIN_PRODUCT, 2072))
|
|
#define FIT_GARMIN_PRODUCT_FR220_RUSSIA (FIT_CAST(FIT_GARMIN_PRODUCT, 2073))
|
|
#define FIT_GARMIN_PRODUCT_VECTOR_S (FIT_CAST(FIT_GARMIN_PRODUCT, 2079))
|
|
#define FIT_GARMIN_PRODUCT_EDGE1000_KOREA (FIT_CAST(FIT_GARMIN_PRODUCT, 2100))
|
|
#define FIT_GARMIN_PRODUCT_FR920XT_TAIWAN (FIT_CAST(FIT_GARMIN_PRODUCT, 2130))
|
|
#define FIT_GARMIN_PRODUCT_FR920XT_CHINA (FIT_CAST(FIT_GARMIN_PRODUCT, 2131))
|
|
#define FIT_GARMIN_PRODUCT_FR920XT_JAPAN (FIT_CAST(FIT_GARMIN_PRODUCT, 2132))
|
|
#define FIT_GARMIN_PRODUCT_VIRBX (FIT_CAST(FIT_GARMIN_PRODUCT, 2134))
|
|
#define FIT_GARMIN_PRODUCT_VIVO_SMART_APAC (FIT_CAST(FIT_GARMIN_PRODUCT, 2135))
|
|
#define FIT_GARMIN_PRODUCT_ETREX_TOUCH (FIT_CAST(FIT_GARMIN_PRODUCT, 2140))
|
|
#define FIT_GARMIN_PRODUCT_EDGE25 (FIT_CAST(FIT_GARMIN_PRODUCT, 2147))
|
|
#define FIT_GARMIN_PRODUCT_FR25 (FIT_CAST(FIT_GARMIN_PRODUCT, 2148))
|
|
#define FIT_GARMIN_PRODUCT_VIVO_FIT2 (FIT_CAST(FIT_GARMIN_PRODUCT, 2150))
|
|
#define FIT_GARMIN_PRODUCT_FR225 (FIT_CAST(FIT_GARMIN_PRODUCT, 2153))
|
|
#define FIT_GARMIN_PRODUCT_FR630 (FIT_CAST(FIT_GARMIN_PRODUCT, 2156))
|
|
#define FIT_GARMIN_PRODUCT_FR230 (FIT_CAST(FIT_GARMIN_PRODUCT, 2157))
|
|
#define FIT_GARMIN_PRODUCT_FR735XT (FIT_CAST(FIT_GARMIN_PRODUCT, 2158))
|
|
#define FIT_GARMIN_PRODUCT_VIVO_ACTIVE_APAC (FIT_CAST(FIT_GARMIN_PRODUCT, 2160))
|
|
#define FIT_GARMIN_PRODUCT_VECTOR_2 (FIT_CAST(FIT_GARMIN_PRODUCT, 2161))
|
|
#define FIT_GARMIN_PRODUCT_VECTOR_2S (FIT_CAST(FIT_GARMIN_PRODUCT, 2162))
|
|
#define FIT_GARMIN_PRODUCT_VIRBXE (FIT_CAST(FIT_GARMIN_PRODUCT, 2172))
|
|
#define FIT_GARMIN_PRODUCT_FR620_TAIWAN (FIT_CAST(FIT_GARMIN_PRODUCT, 2173))
|
|
#define FIT_GARMIN_PRODUCT_FR220_TAIWAN (FIT_CAST(FIT_GARMIN_PRODUCT, 2174))
|
|
#define FIT_GARMIN_PRODUCT_TRUSWING (FIT_CAST(FIT_GARMIN_PRODUCT, 2175))
|
|
#define FIT_GARMIN_PRODUCT_D2AIRVENU (FIT_CAST(FIT_GARMIN_PRODUCT, 2187))
|
|
#define FIT_GARMIN_PRODUCT_FENIX3_CHINA (FIT_CAST(FIT_GARMIN_PRODUCT, 2188))
|
|
#define FIT_GARMIN_PRODUCT_FENIX3_TWN (FIT_CAST(FIT_GARMIN_PRODUCT, 2189))
|
|
#define FIT_GARMIN_PRODUCT_VARIA_HEADLIGHT (FIT_CAST(FIT_GARMIN_PRODUCT, 2192))
|
|
#define FIT_GARMIN_PRODUCT_VARIA_TAILLIGHT_OLD (FIT_CAST(FIT_GARMIN_PRODUCT, 2193))
|
|
#define FIT_GARMIN_PRODUCT_EDGE_EXPLORE_1000 (FIT_CAST(FIT_GARMIN_PRODUCT, 2204))
|
|
#define FIT_GARMIN_PRODUCT_FR225_ASIA (FIT_CAST(FIT_GARMIN_PRODUCT, 2219))
|
|
#define FIT_GARMIN_PRODUCT_VARIA_RADAR_TAILLIGHT (FIT_CAST(FIT_GARMIN_PRODUCT, 2225))
|
|
#define FIT_GARMIN_PRODUCT_VARIA_RADAR_DISPLAY (FIT_CAST(FIT_GARMIN_PRODUCT, 2226))
|
|
#define FIT_GARMIN_PRODUCT_EDGE20 (FIT_CAST(FIT_GARMIN_PRODUCT, 2238))
|
|
#define FIT_GARMIN_PRODUCT_EDGE520_ASIA (FIT_CAST(FIT_GARMIN_PRODUCT, 2260))
|
|
#define FIT_GARMIN_PRODUCT_EDGE520_JAPAN (FIT_CAST(FIT_GARMIN_PRODUCT, 2261))
|
|
#define FIT_GARMIN_PRODUCT_D2_BRAVO (FIT_CAST(FIT_GARMIN_PRODUCT, 2262))
|
|
#define FIT_GARMIN_PRODUCT_APPROACH_S20 (FIT_CAST(FIT_GARMIN_PRODUCT, 2266))
|
|
#define FIT_GARMIN_PRODUCT_VIVO_SMART2 (FIT_CAST(FIT_GARMIN_PRODUCT, 2271))
|
|
#define FIT_GARMIN_PRODUCT_EDGE1000_THAI (FIT_CAST(FIT_GARMIN_PRODUCT, 2274))
|
|
#define FIT_GARMIN_PRODUCT_VARIA_REMOTE (FIT_CAST(FIT_GARMIN_PRODUCT, 2276))
|
|
#define FIT_GARMIN_PRODUCT_EDGE25_ASIA (FIT_CAST(FIT_GARMIN_PRODUCT, 2288))
|
|
#define FIT_GARMIN_PRODUCT_EDGE25_JPN (FIT_CAST(FIT_GARMIN_PRODUCT, 2289))
|
|
#define FIT_GARMIN_PRODUCT_EDGE20_ASIA (FIT_CAST(FIT_GARMIN_PRODUCT, 2290))
|
|
#define FIT_GARMIN_PRODUCT_APPROACH_X40 (FIT_CAST(FIT_GARMIN_PRODUCT, 2292))
|
|
#define FIT_GARMIN_PRODUCT_FENIX3_JAPAN (FIT_CAST(FIT_GARMIN_PRODUCT, 2293))
|
|
#define FIT_GARMIN_PRODUCT_VIVO_SMART_EMEA (FIT_CAST(FIT_GARMIN_PRODUCT, 2294))
|
|
#define FIT_GARMIN_PRODUCT_FR630_ASIA (FIT_CAST(FIT_GARMIN_PRODUCT, 2310))
|
|
#define FIT_GARMIN_PRODUCT_FR630_JPN (FIT_CAST(FIT_GARMIN_PRODUCT, 2311))
|
|
#define FIT_GARMIN_PRODUCT_FR230_JPN (FIT_CAST(FIT_GARMIN_PRODUCT, 2313))
|
|
#define FIT_GARMIN_PRODUCT_HRM4_RUN (FIT_CAST(FIT_GARMIN_PRODUCT, 2327))
|
|
#define FIT_GARMIN_PRODUCT_EPIX_JAPAN (FIT_CAST(FIT_GARMIN_PRODUCT, 2332))
|
|
#define FIT_GARMIN_PRODUCT_VIVO_ACTIVE_HR (FIT_CAST(FIT_GARMIN_PRODUCT, 2337))
|
|
#define FIT_GARMIN_PRODUCT_VIVO_SMART_GPS_HR (FIT_CAST(FIT_GARMIN_PRODUCT, 2347))
|
|
#define FIT_GARMIN_PRODUCT_VIVO_SMART_HR (FIT_CAST(FIT_GARMIN_PRODUCT, 2348))
|
|
#define FIT_GARMIN_PRODUCT_VIVO_SMART_HR_ASIA (FIT_CAST(FIT_GARMIN_PRODUCT, 2361))
|
|
#define FIT_GARMIN_PRODUCT_VIVO_SMART_GPS_HR_ASIA (FIT_CAST(FIT_GARMIN_PRODUCT, 2362))
|
|
#define FIT_GARMIN_PRODUCT_VIVO_MOVE (FIT_CAST(FIT_GARMIN_PRODUCT, 2368))
|
|
#define FIT_GARMIN_PRODUCT_VARIA_TAILLIGHT (FIT_CAST(FIT_GARMIN_PRODUCT, 2379))
|
|
#define FIT_GARMIN_PRODUCT_FR235_ASIA (FIT_CAST(FIT_GARMIN_PRODUCT, 2396))
|
|
#define FIT_GARMIN_PRODUCT_FR235_JAPAN (FIT_CAST(FIT_GARMIN_PRODUCT, 2397))
|
|
#define FIT_GARMIN_PRODUCT_VARIA_VISION (FIT_CAST(FIT_GARMIN_PRODUCT, 2398))
|
|
#define FIT_GARMIN_PRODUCT_VIVO_FIT3 (FIT_CAST(FIT_GARMIN_PRODUCT, 2406))
|
|
#define FIT_GARMIN_PRODUCT_FENIX3_KOREA (FIT_CAST(FIT_GARMIN_PRODUCT, 2407))
|
|
#define FIT_GARMIN_PRODUCT_FENIX3_SEA (FIT_CAST(FIT_GARMIN_PRODUCT, 2408))
|
|
#define FIT_GARMIN_PRODUCT_FENIX3_HR (FIT_CAST(FIT_GARMIN_PRODUCT, 2413))
|
|
#define FIT_GARMIN_PRODUCT_VIRB_ULTRA_30 (FIT_CAST(FIT_GARMIN_PRODUCT, 2417))
|
|
#define FIT_GARMIN_PRODUCT_INDEX_SMART_SCALE (FIT_CAST(FIT_GARMIN_PRODUCT, 2429))
|
|
#define FIT_GARMIN_PRODUCT_FR235 (FIT_CAST(FIT_GARMIN_PRODUCT, 2431))
|
|
#define FIT_GARMIN_PRODUCT_FENIX3_CHRONOS (FIT_CAST(FIT_GARMIN_PRODUCT, 2432))
|
|
#define FIT_GARMIN_PRODUCT_OREGON7XX (FIT_CAST(FIT_GARMIN_PRODUCT, 2441))
|
|
#define FIT_GARMIN_PRODUCT_RINO7XX (FIT_CAST(FIT_GARMIN_PRODUCT, 2444))
|
|
#define FIT_GARMIN_PRODUCT_EPIX_KOREA (FIT_CAST(FIT_GARMIN_PRODUCT, 2457))
|
|
#define FIT_GARMIN_PRODUCT_FENIX3_HR_CHN (FIT_CAST(FIT_GARMIN_PRODUCT, 2473))
|
|
#define FIT_GARMIN_PRODUCT_FENIX3_HR_TWN (FIT_CAST(FIT_GARMIN_PRODUCT, 2474))
|
|
#define FIT_GARMIN_PRODUCT_FENIX3_HR_JPN (FIT_CAST(FIT_GARMIN_PRODUCT, 2475))
|
|
#define FIT_GARMIN_PRODUCT_FENIX3_HR_SEA (FIT_CAST(FIT_GARMIN_PRODUCT, 2476))
|
|
#define FIT_GARMIN_PRODUCT_FENIX3_HR_KOR (FIT_CAST(FIT_GARMIN_PRODUCT, 2477))
|
|
#define FIT_GARMIN_PRODUCT_NAUTIX (FIT_CAST(FIT_GARMIN_PRODUCT, 2496))
|
|
#define FIT_GARMIN_PRODUCT_VIVO_ACTIVE_HR_APAC (FIT_CAST(FIT_GARMIN_PRODUCT, 2497))
|
|
#define FIT_GARMIN_PRODUCT_FR35 (FIT_CAST(FIT_GARMIN_PRODUCT, 2503))
|
|
#define FIT_GARMIN_PRODUCT_OREGON7XX_WW (FIT_CAST(FIT_GARMIN_PRODUCT, 2512))
|
|
#define FIT_GARMIN_PRODUCT_EDGE_820 (FIT_CAST(FIT_GARMIN_PRODUCT, 2530))
|
|
#define FIT_GARMIN_PRODUCT_EDGE_EXPLORE_820 (FIT_CAST(FIT_GARMIN_PRODUCT, 2531))
|
|
#define FIT_GARMIN_PRODUCT_FR735XT_APAC (FIT_CAST(FIT_GARMIN_PRODUCT, 2533))
|
|
#define FIT_GARMIN_PRODUCT_FR735XT_JAPAN (FIT_CAST(FIT_GARMIN_PRODUCT, 2534))
|
|
#define FIT_GARMIN_PRODUCT_FENIX5S (FIT_CAST(FIT_GARMIN_PRODUCT, 2544))
|
|
#define FIT_GARMIN_PRODUCT_D2_BRAVO_TITANIUM (FIT_CAST(FIT_GARMIN_PRODUCT, 2547))
|
|
#define FIT_GARMIN_PRODUCT_VARIA_UT800 (FIT_CAST(FIT_GARMIN_PRODUCT, 2567)) // Varia UT 800 SW
|
|
#define FIT_GARMIN_PRODUCT_RUNNING_DYNAMICS_POD (FIT_CAST(FIT_GARMIN_PRODUCT, 2593))
|
|
#define FIT_GARMIN_PRODUCT_EDGE_820_CHINA (FIT_CAST(FIT_GARMIN_PRODUCT, 2599))
|
|
#define FIT_GARMIN_PRODUCT_EDGE_820_JAPAN (FIT_CAST(FIT_GARMIN_PRODUCT, 2600))
|
|
#define FIT_GARMIN_PRODUCT_FENIX5X (FIT_CAST(FIT_GARMIN_PRODUCT, 2604))
|
|
#define FIT_GARMIN_PRODUCT_VIVO_FIT_JR (FIT_CAST(FIT_GARMIN_PRODUCT, 2606))
|
|
#define FIT_GARMIN_PRODUCT_VIVO_SMART3 (FIT_CAST(FIT_GARMIN_PRODUCT, 2622))
|
|
#define FIT_GARMIN_PRODUCT_VIVO_SPORT (FIT_CAST(FIT_GARMIN_PRODUCT, 2623))
|
|
#define FIT_GARMIN_PRODUCT_EDGE_820_TAIWAN (FIT_CAST(FIT_GARMIN_PRODUCT, 2628))
|
|
#define FIT_GARMIN_PRODUCT_EDGE_820_KOREA (FIT_CAST(FIT_GARMIN_PRODUCT, 2629))
|
|
#define FIT_GARMIN_PRODUCT_EDGE_820_SEA (FIT_CAST(FIT_GARMIN_PRODUCT, 2630))
|
|
#define FIT_GARMIN_PRODUCT_FR35_HEBREW (FIT_CAST(FIT_GARMIN_PRODUCT, 2650))
|
|
#define FIT_GARMIN_PRODUCT_APPROACH_S60 (FIT_CAST(FIT_GARMIN_PRODUCT, 2656))
|
|
#define FIT_GARMIN_PRODUCT_FR35_APAC (FIT_CAST(FIT_GARMIN_PRODUCT, 2667))
|
|
#define FIT_GARMIN_PRODUCT_FR35_JAPAN (FIT_CAST(FIT_GARMIN_PRODUCT, 2668))
|
|
#define FIT_GARMIN_PRODUCT_FENIX3_CHRONOS_ASIA (FIT_CAST(FIT_GARMIN_PRODUCT, 2675))
|
|
#define FIT_GARMIN_PRODUCT_VIRB_360 (FIT_CAST(FIT_GARMIN_PRODUCT, 2687))
|
|
#define FIT_GARMIN_PRODUCT_FR935 (FIT_CAST(FIT_GARMIN_PRODUCT, 2691))
|
|
#define FIT_GARMIN_PRODUCT_FENIX5 (FIT_CAST(FIT_GARMIN_PRODUCT, 2697))
|
|
#define FIT_GARMIN_PRODUCT_VIVOACTIVE3 (FIT_CAST(FIT_GARMIN_PRODUCT, 2700))
|
|
#define FIT_GARMIN_PRODUCT_FR235_CHINA_NFC (FIT_CAST(FIT_GARMIN_PRODUCT, 2733))
|
|
#define FIT_GARMIN_PRODUCT_FORETREX_601_701 (FIT_CAST(FIT_GARMIN_PRODUCT, 2769))
|
|
#define FIT_GARMIN_PRODUCT_VIVO_MOVE_HR (FIT_CAST(FIT_GARMIN_PRODUCT, 2772))
|
|
#define FIT_GARMIN_PRODUCT_EDGE_1030 (FIT_CAST(FIT_GARMIN_PRODUCT, 2713))
|
|
#define FIT_GARMIN_PRODUCT_FR35_SEA (FIT_CAST(FIT_GARMIN_PRODUCT, 2727))
|
|
#define FIT_GARMIN_PRODUCT_VECTOR_3 (FIT_CAST(FIT_GARMIN_PRODUCT, 2787))
|
|
#define FIT_GARMIN_PRODUCT_FENIX5_ASIA (FIT_CAST(FIT_GARMIN_PRODUCT, 2796))
|
|
#define FIT_GARMIN_PRODUCT_FENIX5S_ASIA (FIT_CAST(FIT_GARMIN_PRODUCT, 2797))
|
|
#define FIT_GARMIN_PRODUCT_FENIX5X_ASIA (FIT_CAST(FIT_GARMIN_PRODUCT, 2798))
|
|
#define FIT_GARMIN_PRODUCT_APPROACH_Z80 (FIT_CAST(FIT_GARMIN_PRODUCT, 2806))
|
|
#define FIT_GARMIN_PRODUCT_FR35_KOREA (FIT_CAST(FIT_GARMIN_PRODUCT, 2814))
|
|
#define FIT_GARMIN_PRODUCT_D2CHARLIE (FIT_CAST(FIT_GARMIN_PRODUCT, 2819))
|
|
#define FIT_GARMIN_PRODUCT_VIVO_SMART3_APAC (FIT_CAST(FIT_GARMIN_PRODUCT, 2831))
|
|
#define FIT_GARMIN_PRODUCT_VIVO_SPORT_APAC (FIT_CAST(FIT_GARMIN_PRODUCT, 2832))
|
|
#define FIT_GARMIN_PRODUCT_FR935_ASIA (FIT_CAST(FIT_GARMIN_PRODUCT, 2833))
|
|
#define FIT_GARMIN_PRODUCT_DESCENT (FIT_CAST(FIT_GARMIN_PRODUCT, 2859))
|
|
#define FIT_GARMIN_PRODUCT_VIVO_FIT4 (FIT_CAST(FIT_GARMIN_PRODUCT, 2878))
|
|
#define FIT_GARMIN_PRODUCT_FR645 (FIT_CAST(FIT_GARMIN_PRODUCT, 2886))
|
|
#define FIT_GARMIN_PRODUCT_FR645M (FIT_CAST(FIT_GARMIN_PRODUCT, 2888))
|
|
#define FIT_GARMIN_PRODUCT_FR30 (FIT_CAST(FIT_GARMIN_PRODUCT, 2891))
|
|
#define FIT_GARMIN_PRODUCT_FENIX5S_PLUS (FIT_CAST(FIT_GARMIN_PRODUCT, 2900))
|
|
#define FIT_GARMIN_PRODUCT_EDGE_130 (FIT_CAST(FIT_GARMIN_PRODUCT, 2909))
|
|
#define FIT_GARMIN_PRODUCT_EDGE_1030_ASIA (FIT_CAST(FIT_GARMIN_PRODUCT, 2924))
|
|
#define FIT_GARMIN_PRODUCT_VIVOSMART_4 (FIT_CAST(FIT_GARMIN_PRODUCT, 2927))
|
|
#define FIT_GARMIN_PRODUCT_VIVO_MOVE_HR_ASIA (FIT_CAST(FIT_GARMIN_PRODUCT, 2945))
|
|
#define FIT_GARMIN_PRODUCT_APPROACH_X10 (FIT_CAST(FIT_GARMIN_PRODUCT, 2962))
|
|
#define FIT_GARMIN_PRODUCT_FR30_ASIA (FIT_CAST(FIT_GARMIN_PRODUCT, 2977))
|
|
#define FIT_GARMIN_PRODUCT_VIVOACTIVE3M_W (FIT_CAST(FIT_GARMIN_PRODUCT, 2988))
|
|
#define FIT_GARMIN_PRODUCT_FR645_ASIA (FIT_CAST(FIT_GARMIN_PRODUCT, 3003))
|
|
#define FIT_GARMIN_PRODUCT_FR645M_ASIA (FIT_CAST(FIT_GARMIN_PRODUCT, 3004))
|
|
#define FIT_GARMIN_PRODUCT_EDGE_EXPLORE (FIT_CAST(FIT_GARMIN_PRODUCT, 3011))
|
|
#define FIT_GARMIN_PRODUCT_GPSMAP66 (FIT_CAST(FIT_GARMIN_PRODUCT, 3028))
|
|
#define FIT_GARMIN_PRODUCT_APPROACH_S10 (FIT_CAST(FIT_GARMIN_PRODUCT, 3049))
|
|
#define FIT_GARMIN_PRODUCT_VIVOACTIVE3M_L (FIT_CAST(FIT_GARMIN_PRODUCT, 3066))
|
|
#define FIT_GARMIN_PRODUCT_FR245 (FIT_CAST(FIT_GARMIN_PRODUCT, 3076))
|
|
#define FIT_GARMIN_PRODUCT_FR245_MUSIC (FIT_CAST(FIT_GARMIN_PRODUCT, 3077))
|
|
#define FIT_GARMIN_PRODUCT_APPROACH_G80 (FIT_CAST(FIT_GARMIN_PRODUCT, 3085))
|
|
#define FIT_GARMIN_PRODUCT_EDGE_130_ASIA (FIT_CAST(FIT_GARMIN_PRODUCT, 3092))
|
|
#define FIT_GARMIN_PRODUCT_EDGE_1030_BONTRAGER (FIT_CAST(FIT_GARMIN_PRODUCT, 3095))
|
|
#define FIT_GARMIN_PRODUCT_FENIX5_PLUS (FIT_CAST(FIT_GARMIN_PRODUCT, 3110))
|
|
#define FIT_GARMIN_PRODUCT_FENIX5X_PLUS (FIT_CAST(FIT_GARMIN_PRODUCT, 3111))
|
|
#define FIT_GARMIN_PRODUCT_EDGE_520_PLUS (FIT_CAST(FIT_GARMIN_PRODUCT, 3112))
|
|
#define FIT_GARMIN_PRODUCT_FR945 (FIT_CAST(FIT_GARMIN_PRODUCT, 3113))
|
|
#define FIT_GARMIN_PRODUCT_EDGE_530 (FIT_CAST(FIT_GARMIN_PRODUCT, 3121))
|
|
#define FIT_GARMIN_PRODUCT_EDGE_830 (FIT_CAST(FIT_GARMIN_PRODUCT, 3122))
|
|
#define FIT_GARMIN_PRODUCT_INSTINCT_ESPORTS (FIT_CAST(FIT_GARMIN_PRODUCT, 3126))
|
|
#define FIT_GARMIN_PRODUCT_FENIX5S_PLUS_APAC (FIT_CAST(FIT_GARMIN_PRODUCT, 3134))
|
|
#define FIT_GARMIN_PRODUCT_FENIX5X_PLUS_APAC (FIT_CAST(FIT_GARMIN_PRODUCT, 3135))
|
|
#define FIT_GARMIN_PRODUCT_EDGE_520_PLUS_APAC (FIT_CAST(FIT_GARMIN_PRODUCT, 3142))
|
|
#define FIT_GARMIN_PRODUCT_DESCENT_T1 (FIT_CAST(FIT_GARMIN_PRODUCT, 3143))
|
|
#define FIT_GARMIN_PRODUCT_FR235L_ASIA (FIT_CAST(FIT_GARMIN_PRODUCT, 3144))
|
|
#define FIT_GARMIN_PRODUCT_FR245_ASIA (FIT_CAST(FIT_GARMIN_PRODUCT, 3145))
|
|
#define FIT_GARMIN_PRODUCT_VIVO_ACTIVE3M_APAC (FIT_CAST(FIT_GARMIN_PRODUCT, 3163))
|
|
#define FIT_GARMIN_PRODUCT_GEN3_BSM (FIT_CAST(FIT_GARMIN_PRODUCT, 3192)) // gen3 bike speed sensor
|
|
#define FIT_GARMIN_PRODUCT_GEN3_BCM (FIT_CAST(FIT_GARMIN_PRODUCT, 3193)) // gen3 bike cadence sensor
|
|
#define FIT_GARMIN_PRODUCT_VIVO_SMART4_ASIA (FIT_CAST(FIT_GARMIN_PRODUCT, 3218))
|
|
#define FIT_GARMIN_PRODUCT_VIVOACTIVE4_SMALL (FIT_CAST(FIT_GARMIN_PRODUCT, 3224))
|
|
#define FIT_GARMIN_PRODUCT_VIVOACTIVE4_LARGE (FIT_CAST(FIT_GARMIN_PRODUCT, 3225))
|
|
#define FIT_GARMIN_PRODUCT_VENU (FIT_CAST(FIT_GARMIN_PRODUCT, 3226))
|
|
#define FIT_GARMIN_PRODUCT_MARQ_DRIVER (FIT_CAST(FIT_GARMIN_PRODUCT, 3246))
|
|
#define FIT_GARMIN_PRODUCT_MARQ_AVIATOR (FIT_CAST(FIT_GARMIN_PRODUCT, 3247))
|
|
#define FIT_GARMIN_PRODUCT_MARQ_CAPTAIN (FIT_CAST(FIT_GARMIN_PRODUCT, 3248))
|
|
#define FIT_GARMIN_PRODUCT_MARQ_COMMANDER (FIT_CAST(FIT_GARMIN_PRODUCT, 3249))
|
|
#define FIT_GARMIN_PRODUCT_MARQ_EXPEDITION (FIT_CAST(FIT_GARMIN_PRODUCT, 3250))
|
|
#define FIT_GARMIN_PRODUCT_MARQ_ATHLETE (FIT_CAST(FIT_GARMIN_PRODUCT, 3251))
|
|
#define FIT_GARMIN_PRODUCT_DESCENT_MK2 (FIT_CAST(FIT_GARMIN_PRODUCT, 3258))
|
|
#define FIT_GARMIN_PRODUCT_FR45 (FIT_CAST(FIT_GARMIN_PRODUCT, 3282))
|
|
#define FIT_GARMIN_PRODUCT_GPSMAP66I (FIT_CAST(FIT_GARMIN_PRODUCT, 3284))
|
|
#define FIT_GARMIN_PRODUCT_FENIX6S_SPORT (FIT_CAST(FIT_GARMIN_PRODUCT, 3287))
|
|
#define FIT_GARMIN_PRODUCT_FENIX6S (FIT_CAST(FIT_GARMIN_PRODUCT, 3288))
|
|
#define FIT_GARMIN_PRODUCT_FENIX6_SPORT (FIT_CAST(FIT_GARMIN_PRODUCT, 3289))
|
|
#define FIT_GARMIN_PRODUCT_FENIX6 (FIT_CAST(FIT_GARMIN_PRODUCT, 3290))
|
|
#define FIT_GARMIN_PRODUCT_FENIX6X (FIT_CAST(FIT_GARMIN_PRODUCT, 3291))
|
|
#define FIT_GARMIN_PRODUCT_HRM_DUAL (FIT_CAST(FIT_GARMIN_PRODUCT, 3299)) // HRM-Dual
|
|
#define FIT_GARMIN_PRODUCT_HRM_PRO (FIT_CAST(FIT_GARMIN_PRODUCT, 3300)) // HRM-Pro
|
|
#define FIT_GARMIN_PRODUCT_VIVO_MOVE3_PREMIUM (FIT_CAST(FIT_GARMIN_PRODUCT, 3308))
|
|
#define FIT_GARMIN_PRODUCT_APPROACH_S40 (FIT_CAST(FIT_GARMIN_PRODUCT, 3314))
|
|
#define FIT_GARMIN_PRODUCT_FR245M_ASIA (FIT_CAST(FIT_GARMIN_PRODUCT, 3321))
|
|
#define FIT_GARMIN_PRODUCT_EDGE_530_APAC (FIT_CAST(FIT_GARMIN_PRODUCT, 3349))
|
|
#define FIT_GARMIN_PRODUCT_EDGE_830_APAC (FIT_CAST(FIT_GARMIN_PRODUCT, 3350))
|
|
#define FIT_GARMIN_PRODUCT_VIVO_MOVE3 (FIT_CAST(FIT_GARMIN_PRODUCT, 3378))
|
|
#define FIT_GARMIN_PRODUCT_VIVO_ACTIVE4_SMALL_ASIA (FIT_CAST(FIT_GARMIN_PRODUCT, 3387))
|
|
#define FIT_GARMIN_PRODUCT_VIVO_ACTIVE4_LARGE_ASIA (FIT_CAST(FIT_GARMIN_PRODUCT, 3388))
|
|
#define FIT_GARMIN_PRODUCT_VIVO_ACTIVE4_OLED_ASIA (FIT_CAST(FIT_GARMIN_PRODUCT, 3389))
|
|
#define FIT_GARMIN_PRODUCT_SWIM2 (FIT_CAST(FIT_GARMIN_PRODUCT, 3405))
|
|
#define FIT_GARMIN_PRODUCT_MARQ_DRIVER_ASIA (FIT_CAST(FIT_GARMIN_PRODUCT, 3420))
|
|
#define FIT_GARMIN_PRODUCT_MARQ_AVIATOR_ASIA (FIT_CAST(FIT_GARMIN_PRODUCT, 3421))
|
|
#define FIT_GARMIN_PRODUCT_VIVO_MOVE3_ASIA (FIT_CAST(FIT_GARMIN_PRODUCT, 3422))
|
|
#define FIT_GARMIN_PRODUCT_FR945_ASIA (FIT_CAST(FIT_GARMIN_PRODUCT, 3441))
|
|
#define FIT_GARMIN_PRODUCT_VIVO_ACTIVE3T_CHN (FIT_CAST(FIT_GARMIN_PRODUCT, 3446))
|
|
#define FIT_GARMIN_PRODUCT_MARQ_CAPTAIN_ASIA (FIT_CAST(FIT_GARMIN_PRODUCT, 3448))
|
|
#define FIT_GARMIN_PRODUCT_MARQ_COMMANDER_ASIA (FIT_CAST(FIT_GARMIN_PRODUCT, 3449))
|
|
#define FIT_GARMIN_PRODUCT_MARQ_EXPEDITION_ASIA (FIT_CAST(FIT_GARMIN_PRODUCT, 3450))
|
|
#define FIT_GARMIN_PRODUCT_MARQ_ATHLETE_ASIA (FIT_CAST(FIT_GARMIN_PRODUCT, 3451))
|
|
#define FIT_GARMIN_PRODUCT_INDEX_SMART_SCALE_2 (FIT_CAST(FIT_GARMIN_PRODUCT, 3461))
|
|
#define FIT_GARMIN_PRODUCT_INSTINCT_SOLAR (FIT_CAST(FIT_GARMIN_PRODUCT, 3466))
|
|
#define FIT_GARMIN_PRODUCT_FR45_ASIA (FIT_CAST(FIT_GARMIN_PRODUCT, 3469))
|
|
#define FIT_GARMIN_PRODUCT_VIVOACTIVE3_DAIMLER (FIT_CAST(FIT_GARMIN_PRODUCT, 3473))
|
|
#define FIT_GARMIN_PRODUCT_LEGACY_REY (FIT_CAST(FIT_GARMIN_PRODUCT, 3498))
|
|
#define FIT_GARMIN_PRODUCT_LEGACY_DARTH_VADER (FIT_CAST(FIT_GARMIN_PRODUCT, 3499))
|
|
#define FIT_GARMIN_PRODUCT_LEGACY_CAPTAIN_MARVEL (FIT_CAST(FIT_GARMIN_PRODUCT, 3500))
|
|
#define FIT_GARMIN_PRODUCT_LEGACY_FIRST_AVENGER (FIT_CAST(FIT_GARMIN_PRODUCT, 3501))
|
|
#define FIT_GARMIN_PRODUCT_FENIX6S_SPORT_ASIA (FIT_CAST(FIT_GARMIN_PRODUCT, 3512))
|
|
#define FIT_GARMIN_PRODUCT_FENIX6S_ASIA (FIT_CAST(FIT_GARMIN_PRODUCT, 3513))
|
|
#define FIT_GARMIN_PRODUCT_FENIX6_SPORT_ASIA (FIT_CAST(FIT_GARMIN_PRODUCT, 3514))
|
|
#define FIT_GARMIN_PRODUCT_FENIX6_ASIA (FIT_CAST(FIT_GARMIN_PRODUCT, 3515))
|
|
#define FIT_GARMIN_PRODUCT_FENIX6X_ASIA (FIT_CAST(FIT_GARMIN_PRODUCT, 3516))
|
|
#define FIT_GARMIN_PRODUCT_LEGACY_CAPTAIN_MARVEL_ASIA (FIT_CAST(FIT_GARMIN_PRODUCT, 3535))
|
|
#define FIT_GARMIN_PRODUCT_LEGACY_FIRST_AVENGER_ASIA (FIT_CAST(FIT_GARMIN_PRODUCT, 3536))
|
|
#define FIT_GARMIN_PRODUCT_LEGACY_REY_ASIA (FIT_CAST(FIT_GARMIN_PRODUCT, 3537))
|
|
#define FIT_GARMIN_PRODUCT_LEGACY_DARTH_VADER_ASIA (FIT_CAST(FIT_GARMIN_PRODUCT, 3538))
|
|
#define FIT_GARMIN_PRODUCT_DESCENT_MK2S (FIT_CAST(FIT_GARMIN_PRODUCT, 3542))
|
|
#define FIT_GARMIN_PRODUCT_EDGE_130_PLUS (FIT_CAST(FIT_GARMIN_PRODUCT, 3558))
|
|
#define FIT_GARMIN_PRODUCT_EDGE_1030_PLUS (FIT_CAST(FIT_GARMIN_PRODUCT, 3570))
|
|
#define FIT_GARMIN_PRODUCT_RALLY_200 (FIT_CAST(FIT_GARMIN_PRODUCT, 3578)) // Rally 100/200 Power Meter Series
|
|
#define FIT_GARMIN_PRODUCT_FR745 (FIT_CAST(FIT_GARMIN_PRODUCT, 3589))
|
|
#define FIT_GARMIN_PRODUCT_VENUSQ_MUSIC (FIT_CAST(FIT_GARMIN_PRODUCT, 3596))
|
|
#define FIT_GARMIN_PRODUCT_VENUSQ_MUSIC_V2 (FIT_CAST(FIT_GARMIN_PRODUCT, 3599))
|
|
#define FIT_GARMIN_PRODUCT_VENUSQ (FIT_CAST(FIT_GARMIN_PRODUCT, 3600))
|
|
#define FIT_GARMIN_PRODUCT_LILY (FIT_CAST(FIT_GARMIN_PRODUCT, 3615))
|
|
#define FIT_GARMIN_PRODUCT_MARQ_ADVENTURER (FIT_CAST(FIT_GARMIN_PRODUCT, 3624))
|
|
#define FIT_GARMIN_PRODUCT_ENDURO (FIT_CAST(FIT_GARMIN_PRODUCT, 3638))
|
|
#define FIT_GARMIN_PRODUCT_SWIM2_APAC (FIT_CAST(FIT_GARMIN_PRODUCT, 3639))
|
|
#define FIT_GARMIN_PRODUCT_MARQ_ADVENTURER_ASIA (FIT_CAST(FIT_GARMIN_PRODUCT, 3648))
|
|
#define FIT_GARMIN_PRODUCT_FR945_LTE (FIT_CAST(FIT_GARMIN_PRODUCT, 3652))
|
|
#define FIT_GARMIN_PRODUCT_DESCENT_MK2_ASIA (FIT_CAST(FIT_GARMIN_PRODUCT, 3702)) // Mk2 and Mk2i
|
|
#define FIT_GARMIN_PRODUCT_VENU2 (FIT_CAST(FIT_GARMIN_PRODUCT, 3703))
|
|
#define FIT_GARMIN_PRODUCT_VENU2S (FIT_CAST(FIT_GARMIN_PRODUCT, 3704))
|
|
#define FIT_GARMIN_PRODUCT_VENU_DAIMLER_ASIA (FIT_CAST(FIT_GARMIN_PRODUCT, 3737))
|
|
#define FIT_GARMIN_PRODUCT_MARQ_GOLFER (FIT_CAST(FIT_GARMIN_PRODUCT, 3739))
|
|
#define FIT_GARMIN_PRODUCT_VENU_DAIMLER (FIT_CAST(FIT_GARMIN_PRODUCT, 3740))
|
|
#define FIT_GARMIN_PRODUCT_FR745_ASIA (FIT_CAST(FIT_GARMIN_PRODUCT, 3794))
|
|
#define FIT_GARMIN_PRODUCT_VARIA_RCT715 (FIT_CAST(FIT_GARMIN_PRODUCT, 3808))
|
|
#define FIT_GARMIN_PRODUCT_LILY_ASIA (FIT_CAST(FIT_GARMIN_PRODUCT, 3809))
|
|
#define FIT_GARMIN_PRODUCT_EDGE_1030_PLUS_ASIA (FIT_CAST(FIT_GARMIN_PRODUCT, 3812))
|
|
#define FIT_GARMIN_PRODUCT_EDGE_130_PLUS_ASIA (FIT_CAST(FIT_GARMIN_PRODUCT, 3813))
|
|
#define FIT_GARMIN_PRODUCT_APPROACH_S12 (FIT_CAST(FIT_GARMIN_PRODUCT, 3823))
|
|
#define FIT_GARMIN_PRODUCT_ENDURO_ASIA (FIT_CAST(FIT_GARMIN_PRODUCT, 3872))
|
|
#define FIT_GARMIN_PRODUCT_VENUSQ_ASIA (FIT_CAST(FIT_GARMIN_PRODUCT, 3837))
|
|
#define FIT_GARMIN_PRODUCT_EDGE_1040 (FIT_CAST(FIT_GARMIN_PRODUCT, 3843))
|
|
#define FIT_GARMIN_PRODUCT_MARQ_GOLFER_ASIA (FIT_CAST(FIT_GARMIN_PRODUCT, 3850))
|
|
#define FIT_GARMIN_PRODUCT_VENU2_PLUS (FIT_CAST(FIT_GARMIN_PRODUCT, 3851))
|
|
#define FIT_GARMIN_PRODUCT_GNSS (FIT_CAST(FIT_GARMIN_PRODUCT, 3865)) // Airoha AG3335M Family
|
|
#define FIT_GARMIN_PRODUCT_FR55 (FIT_CAST(FIT_GARMIN_PRODUCT, 3869))
|
|
#define FIT_GARMIN_PRODUCT_INSTINCT_2 (FIT_CAST(FIT_GARMIN_PRODUCT, 3888))
|
|
#define FIT_GARMIN_PRODUCT_INSTINCT_2S (FIT_CAST(FIT_GARMIN_PRODUCT, 3889))
|
|
#define FIT_GARMIN_PRODUCT_FENIX7S (FIT_CAST(FIT_GARMIN_PRODUCT, 3905))
|
|
#define FIT_GARMIN_PRODUCT_FENIX7 (FIT_CAST(FIT_GARMIN_PRODUCT, 3906))
|
|
#define FIT_GARMIN_PRODUCT_FENIX7X (FIT_CAST(FIT_GARMIN_PRODUCT, 3907))
|
|
#define FIT_GARMIN_PRODUCT_FENIX7S_APAC (FIT_CAST(FIT_GARMIN_PRODUCT, 3908))
|
|
#define FIT_GARMIN_PRODUCT_FENIX7_APAC (FIT_CAST(FIT_GARMIN_PRODUCT, 3909))
|
|
#define FIT_GARMIN_PRODUCT_FENIX7X_APAC (FIT_CAST(FIT_GARMIN_PRODUCT, 3910))
|
|
#define FIT_GARMIN_PRODUCT_APPROACH_G12 (FIT_CAST(FIT_GARMIN_PRODUCT, 3927))
|
|
#define FIT_GARMIN_PRODUCT_DESCENT_MK2S_ASIA (FIT_CAST(FIT_GARMIN_PRODUCT, 3930))
|
|
#define FIT_GARMIN_PRODUCT_APPROACH_S42 (FIT_CAST(FIT_GARMIN_PRODUCT, 3934))
|
|
#define FIT_GARMIN_PRODUCT_EPIX_GEN2 (FIT_CAST(FIT_GARMIN_PRODUCT, 3943))
|
|
#define FIT_GARMIN_PRODUCT_EPIX_GEN2_APAC (FIT_CAST(FIT_GARMIN_PRODUCT, 3944))
|
|
#define FIT_GARMIN_PRODUCT_VENU2S_ASIA (FIT_CAST(FIT_GARMIN_PRODUCT, 3949))
|
|
#define FIT_GARMIN_PRODUCT_VENU2_ASIA (FIT_CAST(FIT_GARMIN_PRODUCT, 3950))
|
|
#define FIT_GARMIN_PRODUCT_FR945_LTE_ASIA (FIT_CAST(FIT_GARMIN_PRODUCT, 3978))
|
|
#define FIT_GARMIN_PRODUCT_VIVO_MOVE_SPORT (FIT_CAST(FIT_GARMIN_PRODUCT, 3982))
|
|
#define FIT_GARMIN_PRODUCT_VIVOMOVE_TREND (FIT_CAST(FIT_GARMIN_PRODUCT, 3983))
|
|
#define FIT_GARMIN_PRODUCT_APPROACH_S12_ASIA (FIT_CAST(FIT_GARMIN_PRODUCT, 3986))
|
|
#define FIT_GARMIN_PRODUCT_FR255_MUSIC (FIT_CAST(FIT_GARMIN_PRODUCT, 3990))
|
|
#define FIT_GARMIN_PRODUCT_FR255_SMALL_MUSIC (FIT_CAST(FIT_GARMIN_PRODUCT, 3991))
|
|
#define FIT_GARMIN_PRODUCT_FR255 (FIT_CAST(FIT_GARMIN_PRODUCT, 3992))
|
|
#define FIT_GARMIN_PRODUCT_FR255_SMALL (FIT_CAST(FIT_GARMIN_PRODUCT, 3993))
|
|
#define FIT_GARMIN_PRODUCT_APPROACH_G12_ASIA (FIT_CAST(FIT_GARMIN_PRODUCT, 4001))
|
|
#define FIT_GARMIN_PRODUCT_APPROACH_S42_ASIA (FIT_CAST(FIT_GARMIN_PRODUCT, 4002))
|
|
#define FIT_GARMIN_PRODUCT_DESCENT_G1 (FIT_CAST(FIT_GARMIN_PRODUCT, 4005))
|
|
#define FIT_GARMIN_PRODUCT_VENU2_PLUS_ASIA (FIT_CAST(FIT_GARMIN_PRODUCT, 4017))
|
|
#define FIT_GARMIN_PRODUCT_FR955 (FIT_CAST(FIT_GARMIN_PRODUCT, 4024))
|
|
#define FIT_GARMIN_PRODUCT_FR55_ASIA (FIT_CAST(FIT_GARMIN_PRODUCT, 4033))
|
|
#define FIT_GARMIN_PRODUCT_EDGE_540 (FIT_CAST(FIT_GARMIN_PRODUCT, 4061))
|
|
#define FIT_GARMIN_PRODUCT_EDGE_840 (FIT_CAST(FIT_GARMIN_PRODUCT, 4062))
|
|
#define FIT_GARMIN_PRODUCT_VIVOSMART_5 (FIT_CAST(FIT_GARMIN_PRODUCT, 4063))
|
|
#define FIT_GARMIN_PRODUCT_INSTINCT_2_ASIA (FIT_CAST(FIT_GARMIN_PRODUCT, 4071))
|
|
#define FIT_GARMIN_PRODUCT_MARQ_GEN2 (FIT_CAST(FIT_GARMIN_PRODUCT, 4105)) // Adventurer, Athlete, Captain, Golfer
|
|
#define FIT_GARMIN_PRODUCT_VENUSQ2 (FIT_CAST(FIT_GARMIN_PRODUCT, 4115))
|
|
#define FIT_GARMIN_PRODUCT_VENUSQ2MUSIC (FIT_CAST(FIT_GARMIN_PRODUCT, 4116))
|
|
#define FIT_GARMIN_PRODUCT_MARQ_GEN2_AVIATOR (FIT_CAST(FIT_GARMIN_PRODUCT, 4124))
|
|
#define FIT_GARMIN_PRODUCT_D2_AIR_X10 (FIT_CAST(FIT_GARMIN_PRODUCT, 4125))
|
|
#define FIT_GARMIN_PRODUCT_HRM_PRO_PLUS (FIT_CAST(FIT_GARMIN_PRODUCT, 4130))
|
|
#define FIT_GARMIN_PRODUCT_DESCENT_G1_ASIA (FIT_CAST(FIT_GARMIN_PRODUCT, 4132))
|
|
#define FIT_GARMIN_PRODUCT_TACTIX7 (FIT_CAST(FIT_GARMIN_PRODUCT, 4135))
|
|
#define FIT_GARMIN_PRODUCT_INSTINCT_CROSSOVER (FIT_CAST(FIT_GARMIN_PRODUCT, 4155))
|
|
#define FIT_GARMIN_PRODUCT_EDGE_EXPLORE2 (FIT_CAST(FIT_GARMIN_PRODUCT, 4169))
|
|
#define FIT_GARMIN_PRODUCT_DESCENT_MK3 (FIT_CAST(FIT_GARMIN_PRODUCT, 4222))
|
|
#define FIT_GARMIN_PRODUCT_DESCENT_MK3I (FIT_CAST(FIT_GARMIN_PRODUCT, 4223))
|
|
#define FIT_GARMIN_PRODUCT_APPROACH_S70 (FIT_CAST(FIT_GARMIN_PRODUCT, 4233))
|
|
#define FIT_GARMIN_PRODUCT_FR265_LARGE (FIT_CAST(FIT_GARMIN_PRODUCT, 4257))
|
|
#define FIT_GARMIN_PRODUCT_FR265_SMALL (FIT_CAST(FIT_GARMIN_PRODUCT, 4258))
|
|
#define FIT_GARMIN_PRODUCT_VENU3 (FIT_CAST(FIT_GARMIN_PRODUCT, 4260))
|
|
#define FIT_GARMIN_PRODUCT_VENU3S (FIT_CAST(FIT_GARMIN_PRODUCT, 4261))
|
|
#define FIT_GARMIN_PRODUCT_TACX_NEO_SMART (FIT_CAST(FIT_GARMIN_PRODUCT, 4265)) // Neo Smart, Tacx
|
|
#define FIT_GARMIN_PRODUCT_TACX_NEO2_SMART (FIT_CAST(FIT_GARMIN_PRODUCT, 4266)) // Neo 2 Smart, Tacx
|
|
#define FIT_GARMIN_PRODUCT_TACX_NEO2_T_SMART (FIT_CAST(FIT_GARMIN_PRODUCT, 4267)) // Neo 2T Smart, Tacx
|
|
#define FIT_GARMIN_PRODUCT_TACX_NEO_SMART_BIKE (FIT_CAST(FIT_GARMIN_PRODUCT, 4268)) // Neo Smart Bike, Tacx
|
|
#define FIT_GARMIN_PRODUCT_TACX_SATORI_SMART (FIT_CAST(FIT_GARMIN_PRODUCT, 4269)) // Satori Smart, Tacx
|
|
#define FIT_GARMIN_PRODUCT_TACX_FLOW_SMART (FIT_CAST(FIT_GARMIN_PRODUCT, 4270)) // Flow Smart, Tacx
|
|
#define FIT_GARMIN_PRODUCT_TACX_VORTEX_SMART (FIT_CAST(FIT_GARMIN_PRODUCT, 4271)) // Vortex Smart, Tacx
|
|
#define FIT_GARMIN_PRODUCT_TACX_BUSHIDO_SMART (FIT_CAST(FIT_GARMIN_PRODUCT, 4272)) // Bushido Smart, Tacx
|
|
#define FIT_GARMIN_PRODUCT_TACX_GENIUS_SMART (FIT_CAST(FIT_GARMIN_PRODUCT, 4273)) // Genius Smart, Tacx
|
|
#define FIT_GARMIN_PRODUCT_TACX_FLUX_FLUX_S_SMART (FIT_CAST(FIT_GARMIN_PRODUCT, 4274)) // Flux/Flux S Smart, Tacx
|
|
#define FIT_GARMIN_PRODUCT_TACX_FLUX2_SMART (FIT_CAST(FIT_GARMIN_PRODUCT, 4275)) // Flux 2 Smart, Tacx
|
|
#define FIT_GARMIN_PRODUCT_TACX_MAGNUM (FIT_CAST(FIT_GARMIN_PRODUCT, 4276)) // Magnum, Tacx
|
|
#define FIT_GARMIN_PRODUCT_EDGE_1040_ASIA (FIT_CAST(FIT_GARMIN_PRODUCT, 4305))
|
|
#define FIT_GARMIN_PRODUCT_EPIX_GEN2_PRO_42 (FIT_CAST(FIT_GARMIN_PRODUCT, 4312))
|
|
#define FIT_GARMIN_PRODUCT_EPIX_GEN2_PRO_47 (FIT_CAST(FIT_GARMIN_PRODUCT, 4313))
|
|
#define FIT_GARMIN_PRODUCT_EPIX_GEN2_PRO_51 (FIT_CAST(FIT_GARMIN_PRODUCT, 4314))
|
|
#define FIT_GARMIN_PRODUCT_FR965 (FIT_CAST(FIT_GARMIN_PRODUCT, 4315))
|
|
#define FIT_GARMIN_PRODUCT_ENDURO2 (FIT_CAST(FIT_GARMIN_PRODUCT, 4341))
|
|
#define FIT_GARMIN_PRODUCT_FENIX7S_PRO_SOLAR (FIT_CAST(FIT_GARMIN_PRODUCT, 4374))
|
|
#define FIT_GARMIN_PRODUCT_FENIX7_PRO_SOLAR (FIT_CAST(FIT_GARMIN_PRODUCT, 4375))
|
|
#define FIT_GARMIN_PRODUCT_FENIX7X_PRO_SOLAR (FIT_CAST(FIT_GARMIN_PRODUCT, 4376))
|
|
#define FIT_GARMIN_PRODUCT_LILY2 (FIT_CAST(FIT_GARMIN_PRODUCT, 4380))
|
|
#define FIT_GARMIN_PRODUCT_INSTINCT_2X (FIT_CAST(FIT_GARMIN_PRODUCT, 4394))
|
|
#define FIT_GARMIN_PRODUCT_VIVOACTIVE5 (FIT_CAST(FIT_GARMIN_PRODUCT, 4426))
|
|
#define FIT_GARMIN_PRODUCT_FR165 (FIT_CAST(FIT_GARMIN_PRODUCT, 4432))
|
|
#define FIT_GARMIN_PRODUCT_FR165_MUSIC (FIT_CAST(FIT_GARMIN_PRODUCT, 4433))
|
|
#define FIT_GARMIN_PRODUCT_EDGE_1050 (FIT_CAST(FIT_GARMIN_PRODUCT, 4440))
|
|
#define FIT_GARMIN_PRODUCT_DESCENT_T2 (FIT_CAST(FIT_GARMIN_PRODUCT, 4442))
|
|
#define FIT_GARMIN_PRODUCT_HRM_FIT (FIT_CAST(FIT_GARMIN_PRODUCT, 4446))
|
|
#define FIT_GARMIN_PRODUCT_MARQ_GEN2_COMMANDER (FIT_CAST(FIT_GARMIN_PRODUCT, 4472))
|
|
#define FIT_GARMIN_PRODUCT_LILY_ATHLETE (FIT_CAST(FIT_GARMIN_PRODUCT, 4477)) // aka the Lily 2 Active
|
|
#define FIT_GARMIN_PRODUCT_RALLY_X10 (FIT_CAST(FIT_GARMIN_PRODUCT, 4525)) // Rally 110/210
|
|
#define FIT_GARMIN_PRODUCT_FENIX8_SOLAR (FIT_CAST(FIT_GARMIN_PRODUCT, 4532))
|
|
#define FIT_GARMIN_PRODUCT_FENIX8_SOLAR_LARGE (FIT_CAST(FIT_GARMIN_PRODUCT, 4533))
|
|
#define FIT_GARMIN_PRODUCT_FENIX8_SMALL (FIT_CAST(FIT_GARMIN_PRODUCT, 4534))
|
|
#define FIT_GARMIN_PRODUCT_FENIX8 (FIT_CAST(FIT_GARMIN_PRODUCT, 4536))
|
|
#define FIT_GARMIN_PRODUCT_D2_MACH1_PRO (FIT_CAST(FIT_GARMIN_PRODUCT, 4556))
|
|
#define FIT_GARMIN_PRODUCT_ENDURO3 (FIT_CAST(FIT_GARMIN_PRODUCT, 4575))
|
|
#define FIT_GARMIN_PRODUCT_INSTINCTE_40MM (FIT_CAST(FIT_GARMIN_PRODUCT, 4583))
|
|
#define FIT_GARMIN_PRODUCT_INSTINCTE_45MM (FIT_CAST(FIT_GARMIN_PRODUCT, 4584))
|
|
#define FIT_GARMIN_PRODUCT_INSTINCT3_SOLAR_45MM (FIT_CAST(FIT_GARMIN_PRODUCT, 4585))
|
|
#define FIT_GARMIN_PRODUCT_INSTINCT3_AMOLED_45MM (FIT_CAST(FIT_GARMIN_PRODUCT, 4586))
|
|
#define FIT_GARMIN_PRODUCT_INSTINCT3_AMOLED_50MM (FIT_CAST(FIT_GARMIN_PRODUCT, 4587))
|
|
#define FIT_GARMIN_PRODUCT_DESCENT_G2 (FIT_CAST(FIT_GARMIN_PRODUCT, 4588))
|
|
#define FIT_GARMIN_PRODUCT_VENU_X1 (FIT_CAST(FIT_GARMIN_PRODUCT, 4603))
|
|
#define FIT_GARMIN_PRODUCT_HRM_200 (FIT_CAST(FIT_GARMIN_PRODUCT, 4606))
|
|
#define FIT_GARMIN_PRODUCT_VIVOACTIVE6 (FIT_CAST(FIT_GARMIN_PRODUCT, 4625))
|
|
#define FIT_GARMIN_PRODUCT_FENIX8_PRO (FIT_CAST(FIT_GARMIN_PRODUCT, 4631))
|
|
#define FIT_GARMIN_PRODUCT_EDGE_550 (FIT_CAST(FIT_GARMIN_PRODUCT, 4633))
|
|
#define FIT_GARMIN_PRODUCT_EDGE_850 (FIT_CAST(FIT_GARMIN_PRODUCT, 4634))
|
|
#define FIT_GARMIN_PRODUCT_VENU4 (FIT_CAST(FIT_GARMIN_PRODUCT, 4643))
|
|
#define FIT_GARMIN_PRODUCT_VENU4S (FIT_CAST(FIT_GARMIN_PRODUCT, 4644))
|
|
#define FIT_GARMIN_PRODUCT_APPROACHS44 (FIT_CAST(FIT_GARMIN_PRODUCT, 4647))
|
|
#define FIT_GARMIN_PRODUCT_EDGE_MTB (FIT_CAST(FIT_GARMIN_PRODUCT, 4655))
|
|
#define FIT_GARMIN_PRODUCT_APPROACHS50 (FIT_CAST(FIT_GARMIN_PRODUCT, 4656))
|
|
#define FIT_GARMIN_PRODUCT_FENIX_E (FIT_CAST(FIT_GARMIN_PRODUCT, 4666))
|
|
#define FIT_GARMIN_PRODUCT_BOUNCE2 (FIT_CAST(FIT_GARMIN_PRODUCT, 4745))
|
|
#define FIT_GARMIN_PRODUCT_INSTINCT3_SOLAR_50MM (FIT_CAST(FIT_GARMIN_PRODUCT, 4759))
|
|
#define FIT_GARMIN_PRODUCT_TACTIX8_AMOLED (FIT_CAST(FIT_GARMIN_PRODUCT, 4775))
|
|
#define FIT_GARMIN_PRODUCT_TACTIX8_SOLAR (FIT_CAST(FIT_GARMIN_PRODUCT, 4776))
|
|
#define FIT_GARMIN_PRODUCT_D2_MACH2 (FIT_CAST(FIT_GARMIN_PRODUCT, 4879))
|
|
#define FIT_GARMIN_PRODUCT_INSTINCT_CROSSOVER_AMOLED (FIT_CAST(FIT_GARMIN_PRODUCT, 4678))
|
|
#define FIT_GARMIN_PRODUCT_D2_AIR_X15 (FIT_CAST(FIT_GARMIN_PRODUCT, 4944))
|
|
#define FIT_GARMIN_PRODUCT_SDM4 (FIT_CAST(FIT_GARMIN_PRODUCT, 10007)) // SDM4 footpod
|
|
#define FIT_GARMIN_PRODUCT_EDGE_REMOTE (FIT_CAST(FIT_GARMIN_PRODUCT, 10014))
|
|
#define FIT_GARMIN_PRODUCT_TACX_TRAINING_APP_WIN (FIT_CAST(FIT_GARMIN_PRODUCT, 20533))
|
|
#define FIT_GARMIN_PRODUCT_TACX_TRAINING_APP_MAC (FIT_CAST(FIT_GARMIN_PRODUCT, 20534))
|
|
#define FIT_GARMIN_PRODUCT_TACX_TRAINING_APP_MAC_CATALYST (FIT_CAST(FIT_GARMIN_PRODUCT, 20565))
|
|
#define FIT_GARMIN_PRODUCT_TRAINING_CENTER (FIT_CAST(FIT_GARMIN_PRODUCT, 20119))
|
|
#define FIT_GARMIN_PRODUCT_TACX_TRAINING_APP_ANDROID (FIT_CAST(FIT_GARMIN_PRODUCT, 30045))
|
|
#define FIT_GARMIN_PRODUCT_TACX_TRAINING_APP_IOS (FIT_CAST(FIT_GARMIN_PRODUCT, 30046))
|
|
#define FIT_GARMIN_PRODUCT_TACX_TRAINING_APP_LEGACY (FIT_CAST(FIT_GARMIN_PRODUCT, 30047))
|
|
#define FIT_GARMIN_PRODUCT_CONNECTIQ_SIMULATOR (FIT_CAST(FIT_GARMIN_PRODUCT, 65531))
|
|
#define FIT_GARMIN_PRODUCT_ANDROID_ANTPLUS_PLUGIN (FIT_CAST(FIT_GARMIN_PRODUCT, 65532))
|
|
#define FIT_GARMIN_PRODUCT_CONNECT (FIT_CAST(FIT_GARMIN_PRODUCT, 65534)) // Garmin Connect website
|
|
#define FIT_GARMIN_PRODUCT_COUNT 474
|
|
|
|
typedef FIT_UINT8 FIT_ANTPLUS_DEVICE_TYPE;
|
|
#define FIT_ANTPLUS_DEVICE_TYPE_INVALID FIT_UINT8_INVALID
|
|
#define FIT_ANTPLUS_DEVICE_TYPE_ANTFS (FIT_CAST(FIT_ANTPLUS_DEVICE_TYPE, 1))
|
|
#define FIT_ANTPLUS_DEVICE_TYPE_BIKE_POWER (FIT_CAST(FIT_ANTPLUS_DEVICE_TYPE, 11))
|
|
#define FIT_ANTPLUS_DEVICE_TYPE_ENVIRONMENT_SENSOR_LEGACY (FIT_CAST(FIT_ANTPLUS_DEVICE_TYPE, 12))
|
|
#define FIT_ANTPLUS_DEVICE_TYPE_MULTI_SPORT_SPEED_DISTANCE (FIT_CAST(FIT_ANTPLUS_DEVICE_TYPE, 15))
|
|
#define FIT_ANTPLUS_DEVICE_TYPE_CONTROL (FIT_CAST(FIT_ANTPLUS_DEVICE_TYPE, 16))
|
|
#define FIT_ANTPLUS_DEVICE_TYPE_FITNESS_EQUIPMENT (FIT_CAST(FIT_ANTPLUS_DEVICE_TYPE, 17))
|
|
#define FIT_ANTPLUS_DEVICE_TYPE_BLOOD_PRESSURE (FIT_CAST(FIT_ANTPLUS_DEVICE_TYPE, 18))
|
|
#define FIT_ANTPLUS_DEVICE_TYPE_GEOCACHE_NODE (FIT_CAST(FIT_ANTPLUS_DEVICE_TYPE, 19))
|
|
#define FIT_ANTPLUS_DEVICE_TYPE_LIGHT_ELECTRIC_VEHICLE (FIT_CAST(FIT_ANTPLUS_DEVICE_TYPE, 20))
|
|
#define FIT_ANTPLUS_DEVICE_TYPE_ENV_SENSOR (FIT_CAST(FIT_ANTPLUS_DEVICE_TYPE, 25))
|
|
#define FIT_ANTPLUS_DEVICE_TYPE_RACQUET (FIT_CAST(FIT_ANTPLUS_DEVICE_TYPE, 26))
|
|
#define FIT_ANTPLUS_DEVICE_TYPE_CONTROL_HUB (FIT_CAST(FIT_ANTPLUS_DEVICE_TYPE, 27))
|
|
#define FIT_ANTPLUS_DEVICE_TYPE_MUSCLE_OXYGEN (FIT_CAST(FIT_ANTPLUS_DEVICE_TYPE, 31))
|
|
#define FIT_ANTPLUS_DEVICE_TYPE_SHIFTING (FIT_CAST(FIT_ANTPLUS_DEVICE_TYPE, 34))
|
|
#define FIT_ANTPLUS_DEVICE_TYPE_BIKE_LIGHT_MAIN (FIT_CAST(FIT_ANTPLUS_DEVICE_TYPE, 35))
|
|
#define FIT_ANTPLUS_DEVICE_TYPE_BIKE_LIGHT_SHARED (FIT_CAST(FIT_ANTPLUS_DEVICE_TYPE, 36))
|
|
#define FIT_ANTPLUS_DEVICE_TYPE_EXD (FIT_CAST(FIT_ANTPLUS_DEVICE_TYPE, 38))
|
|
#define FIT_ANTPLUS_DEVICE_TYPE_BIKE_RADAR (FIT_CAST(FIT_ANTPLUS_DEVICE_TYPE, 40))
|
|
#define FIT_ANTPLUS_DEVICE_TYPE_BIKE_AERO (FIT_CAST(FIT_ANTPLUS_DEVICE_TYPE, 46))
|
|
#define FIT_ANTPLUS_DEVICE_TYPE_WEIGHT_SCALE (FIT_CAST(FIT_ANTPLUS_DEVICE_TYPE, 119))
|
|
#define FIT_ANTPLUS_DEVICE_TYPE_HEART_RATE (FIT_CAST(FIT_ANTPLUS_DEVICE_TYPE, 120))
|
|
#define FIT_ANTPLUS_DEVICE_TYPE_BIKE_SPEED_CADENCE (FIT_CAST(FIT_ANTPLUS_DEVICE_TYPE, 121))
|
|
#define FIT_ANTPLUS_DEVICE_TYPE_BIKE_CADENCE (FIT_CAST(FIT_ANTPLUS_DEVICE_TYPE, 122))
|
|
#define FIT_ANTPLUS_DEVICE_TYPE_BIKE_SPEED (FIT_CAST(FIT_ANTPLUS_DEVICE_TYPE, 123))
|
|
#define FIT_ANTPLUS_DEVICE_TYPE_STRIDE_SPEED_DISTANCE (FIT_CAST(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_CAST(FIT_ANT_NETWORK, 0))
|
|
#define FIT_ANT_NETWORK_ANTPLUS (FIT_CAST(FIT_ANT_NETWORK, 1))
|
|
#define FIT_ANT_NETWORK_ANTFS (FIT_CAST(FIT_ANT_NETWORK, 2))
|
|
#define FIT_ANT_NETWORK_PRIVATE (FIT_CAST(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_CAST(FIT_WORKOUT_CAPABILITIES, 0x00000001))
|
|
#define FIT_WORKOUT_CAPABILITIES_CUSTOM (FIT_CAST(FIT_WORKOUT_CAPABILITIES, 0x00000002))
|
|
#define FIT_WORKOUT_CAPABILITIES_FITNESS_EQUIPMENT (FIT_CAST(FIT_WORKOUT_CAPABILITIES, 0x00000004))
|
|
#define FIT_WORKOUT_CAPABILITIES_FIRSTBEAT (FIT_CAST(FIT_WORKOUT_CAPABILITIES, 0x00000008))
|
|
#define FIT_WORKOUT_CAPABILITIES_NEW_LEAF (FIT_CAST(FIT_WORKOUT_CAPABILITIES, 0x00000010))
|
|
#define FIT_WORKOUT_CAPABILITIES_TCX (FIT_CAST(FIT_WORKOUT_CAPABILITIES, 0x00000020)) // For backwards compatibility. Watch should add missing id fields then clear flag.
|
|
#define FIT_WORKOUT_CAPABILITIES_SPEED (FIT_CAST(FIT_WORKOUT_CAPABILITIES, 0x00000080)) // Speed source required for workout step.
|
|
#define FIT_WORKOUT_CAPABILITIES_HEART_RATE (FIT_CAST(FIT_WORKOUT_CAPABILITIES, 0x00000100)) // Heart rate source required for workout step.
|
|
#define FIT_WORKOUT_CAPABILITIES_DISTANCE (FIT_CAST(FIT_WORKOUT_CAPABILITIES, 0x00000200)) // Distance source required for workout step.
|
|
#define FIT_WORKOUT_CAPABILITIES_CADENCE (FIT_CAST(FIT_WORKOUT_CAPABILITIES, 0x00000400)) // Cadence source required for workout step.
|
|
#define FIT_WORKOUT_CAPABILITIES_POWER (FIT_CAST(FIT_WORKOUT_CAPABILITIES, 0x00000800)) // Power source required for workout step.
|
|
#define FIT_WORKOUT_CAPABILITIES_GRADE (FIT_CAST(FIT_WORKOUT_CAPABILITIES, 0x00001000)) // Grade source required for workout step.
|
|
#define FIT_WORKOUT_CAPABILITIES_RESISTANCE (FIT_CAST(FIT_WORKOUT_CAPABILITIES, 0x00002000)) // Resistance source required for workout step.
|
|
#define FIT_WORKOUT_CAPABILITIES_PROTECTED (FIT_CAST(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_CAST(FIT_BATTERY_STATUS, 1))
|
|
#define FIT_BATTERY_STATUS_GOOD (FIT_CAST(FIT_BATTERY_STATUS, 2))
|
|
#define FIT_BATTERY_STATUS_OK (FIT_CAST(FIT_BATTERY_STATUS, 3))
|
|
#define FIT_BATTERY_STATUS_LOW (FIT_CAST(FIT_BATTERY_STATUS, 4))
|
|
#define FIT_BATTERY_STATUS_CRITICAL (FIT_CAST(FIT_BATTERY_STATUS, 5))
|
|
#define FIT_BATTERY_STATUS_CHARGING (FIT_CAST(FIT_BATTERY_STATUS, 6))
|
|
#define FIT_BATTERY_STATUS_UNKNOWN (FIT_CAST(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_CAST(FIT_HR_TYPE, 0))
|
|
#define FIT_HR_TYPE_IRREGULAR (FIT_CAST(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_CAST(FIT_COURSE_CAPABILITIES, 0x00000001))
|
|
#define FIT_COURSE_CAPABILITIES_VALID (FIT_CAST(FIT_COURSE_CAPABILITIES, 0x00000002))
|
|
#define FIT_COURSE_CAPABILITIES_TIME (FIT_CAST(FIT_COURSE_CAPABILITIES, 0x00000004))
|
|
#define FIT_COURSE_CAPABILITIES_DISTANCE (FIT_CAST(FIT_COURSE_CAPABILITIES, 0x00000008))
|
|
#define FIT_COURSE_CAPABILITIES_POSITION (FIT_CAST(FIT_COURSE_CAPABILITIES, 0x00000010))
|
|
#define FIT_COURSE_CAPABILITIES_HEART_RATE (FIT_CAST(FIT_COURSE_CAPABILITIES, 0x00000020))
|
|
#define FIT_COURSE_CAPABILITIES_POWER (FIT_CAST(FIT_COURSE_CAPABILITIES, 0x00000040))
|
|
#define FIT_COURSE_CAPABILITIES_CADENCE (FIT_CAST(FIT_COURSE_CAPABILITIES, 0x00000080))
|
|
#define FIT_COURSE_CAPABILITIES_TRAINING (FIT_CAST(FIT_COURSE_CAPABILITIES, 0x00000100))
|
|
#define FIT_COURSE_CAPABILITIES_NAVIGATION (FIT_CAST(FIT_COURSE_CAPABILITIES, 0x00000200))
|
|
#define FIT_COURSE_CAPABILITIES_BIKEWAY (FIT_CAST(FIT_COURSE_CAPABILITIES, 0x00000400))
|
|
#define FIT_COURSE_CAPABILITIES_AVIATION (FIT_CAST(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_CAST(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_CAST(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_CAST(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_CAST(FIT_BP_STATUS, 0))
|
|
#define FIT_BP_STATUS_ERROR_INCOMPLETE_DATA (FIT_CAST(FIT_BP_STATUS, 1))
|
|
#define FIT_BP_STATUS_ERROR_NO_MEASUREMENT (FIT_CAST(FIT_BP_STATUS, 2))
|
|
#define FIT_BP_STATUS_ERROR_DATA_OUT_OF_RANGE (FIT_CAST(FIT_BP_STATUS, 3))
|
|
#define FIT_BP_STATUS_ERROR_IRREGULAR_HEART_RATE (FIT_CAST(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_CAST(FIT_USER_LOCAL_ID, 0x0000))
|
|
#define FIT_USER_LOCAL_ID_LOCAL_MAX (FIT_CAST(FIT_USER_LOCAL_ID, 0x000F))
|
|
#define FIT_USER_LOCAL_ID_STATIONARY_MIN (FIT_CAST(FIT_USER_LOCAL_ID, 0x0010))
|
|
#define FIT_USER_LOCAL_ID_STATIONARY_MAX (FIT_CAST(FIT_USER_LOCAL_ID, 0x00FF))
|
|
#define FIT_USER_LOCAL_ID_PORTABLE_MIN (FIT_CAST(FIT_USER_LOCAL_ID, 0x0100))
|
|
#define FIT_USER_LOCAL_ID_PORTABLE_MAX (FIT_CAST(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_CAST(FIT_SWIM_STROKE, 0))
|
|
#define FIT_SWIM_STROKE_BACKSTROKE (FIT_CAST(FIT_SWIM_STROKE, 1))
|
|
#define FIT_SWIM_STROKE_BREASTSTROKE (FIT_CAST(FIT_SWIM_STROKE, 2))
|
|
#define FIT_SWIM_STROKE_BUTTERFLY (FIT_CAST(FIT_SWIM_STROKE, 3))
|
|
#define FIT_SWIM_STROKE_DRILL (FIT_CAST(FIT_SWIM_STROKE, 4))
|
|
#define FIT_SWIM_STROKE_MIXED (FIT_CAST(FIT_SWIM_STROKE, 5))
|
|
#define FIT_SWIM_STROKE_IM (FIT_CAST(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_IM_BY_ROUND (FIT_CAST(FIT_SWIM_STROKE, 7)) // For repeated workout steps, a new individual medly stroke is used for each round.
|
|
#define FIT_SWIM_STROKE_RIMO (FIT_CAST(FIT_SWIM_STROKE, 8)) // Reverse IM Order
|
|
#define FIT_SWIM_STROKE_COUNT 9
|
|
|
|
typedef FIT_ENUM FIT_ACTIVITY_TYPE;
|
|
#define FIT_ACTIVITY_TYPE_INVALID FIT_ENUM_INVALID
|
|
#define FIT_ACTIVITY_TYPE_GENERIC (FIT_CAST(FIT_ACTIVITY_TYPE, 0))
|
|
#define FIT_ACTIVITY_TYPE_RUNNING (FIT_CAST(FIT_ACTIVITY_TYPE, 1))
|
|
#define FIT_ACTIVITY_TYPE_CYCLING (FIT_CAST(FIT_ACTIVITY_TYPE, 2))
|
|
#define FIT_ACTIVITY_TYPE_TRANSITION (FIT_CAST(FIT_ACTIVITY_TYPE, 3)) // Mulitsport transition
|
|
#define FIT_ACTIVITY_TYPE_FITNESS_EQUIPMENT (FIT_CAST(FIT_ACTIVITY_TYPE, 4))
|
|
#define FIT_ACTIVITY_TYPE_SWIMMING (FIT_CAST(FIT_ACTIVITY_TYPE, 5))
|
|
#define FIT_ACTIVITY_TYPE_WALKING (FIT_CAST(FIT_ACTIVITY_TYPE, 6))
|
|
#define FIT_ACTIVITY_TYPE_SEDENTARY (FIT_CAST(FIT_ACTIVITY_TYPE, 8))
|
|
#define FIT_ACTIVITY_TYPE_ALL (FIT_CAST(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_CAST(FIT_ACTIVITY_SUBTYPE, 0))
|
|
#define FIT_ACTIVITY_SUBTYPE_TREADMILL (FIT_CAST(FIT_ACTIVITY_SUBTYPE, 1)) // Run
|
|
#define FIT_ACTIVITY_SUBTYPE_STREET (FIT_CAST(FIT_ACTIVITY_SUBTYPE, 2)) // Run
|
|
#define FIT_ACTIVITY_SUBTYPE_TRAIL (FIT_CAST(FIT_ACTIVITY_SUBTYPE, 3)) // Run
|
|
#define FIT_ACTIVITY_SUBTYPE_TRACK (FIT_CAST(FIT_ACTIVITY_SUBTYPE, 4)) // Run
|
|
#define FIT_ACTIVITY_SUBTYPE_SPIN (FIT_CAST(FIT_ACTIVITY_SUBTYPE, 5)) // Cycling
|
|
#define FIT_ACTIVITY_SUBTYPE_INDOOR_CYCLING (FIT_CAST(FIT_ACTIVITY_SUBTYPE, 6)) // Cycling
|
|
#define FIT_ACTIVITY_SUBTYPE_ROAD (FIT_CAST(FIT_ACTIVITY_SUBTYPE, 7)) // Cycling
|
|
#define FIT_ACTIVITY_SUBTYPE_MOUNTAIN (FIT_CAST(FIT_ACTIVITY_SUBTYPE, 8)) // Cycling
|
|
#define FIT_ACTIVITY_SUBTYPE_DOWNHILL (FIT_CAST(FIT_ACTIVITY_SUBTYPE, 9)) // Cycling
|
|
#define FIT_ACTIVITY_SUBTYPE_RECUMBENT (FIT_CAST(FIT_ACTIVITY_SUBTYPE, 10)) // Cycling
|
|
#define FIT_ACTIVITY_SUBTYPE_CYCLOCROSS (FIT_CAST(FIT_ACTIVITY_SUBTYPE, 11)) // Cycling
|
|
#define FIT_ACTIVITY_SUBTYPE_HAND_CYCLING (FIT_CAST(FIT_ACTIVITY_SUBTYPE, 12)) // Cycling
|
|
#define FIT_ACTIVITY_SUBTYPE_TRACK_CYCLING (FIT_CAST(FIT_ACTIVITY_SUBTYPE, 13)) // Cycling
|
|
#define FIT_ACTIVITY_SUBTYPE_INDOOR_ROWING (FIT_CAST(FIT_ACTIVITY_SUBTYPE, 14)) // Fitness Equipment
|
|
#define FIT_ACTIVITY_SUBTYPE_ELLIPTICAL (FIT_CAST(FIT_ACTIVITY_SUBTYPE, 15)) // Fitness Equipment
|
|
#define FIT_ACTIVITY_SUBTYPE_STAIR_CLIMBING (FIT_CAST(FIT_ACTIVITY_SUBTYPE, 16)) // Fitness Equipment
|
|
#define FIT_ACTIVITY_SUBTYPE_LAP_SWIMMING (FIT_CAST(FIT_ACTIVITY_SUBTYPE, 17)) // Swimming
|
|
#define FIT_ACTIVITY_SUBTYPE_OPEN_WATER (FIT_CAST(FIT_ACTIVITY_SUBTYPE, 18)) // Swimming
|
|
#define FIT_ACTIVITY_SUBTYPE_ALL (FIT_CAST(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_CAST(FIT_ACTIVITY_LEVEL, 0))
|
|
#define FIT_ACTIVITY_LEVEL_MEDIUM (FIT_CAST(FIT_ACTIVITY_LEVEL, 1))
|
|
#define FIT_ACTIVITY_LEVEL_HIGH (FIT_CAST(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_CAST(FIT_SIDE, 0))
|
|
#define FIT_SIDE_LEFT (FIT_CAST(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_CAST(FIT_LEFT_RIGHT_BALANCE, 0x7F)) // % contribution
|
|
#define FIT_LEFT_RIGHT_BALANCE_RIGHT (FIT_CAST(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_CAST(FIT_LEFT_RIGHT_BALANCE_100, 0x3FFF)) // % contribution scaled by 100
|
|
#define FIT_LEFT_RIGHT_BALANCE_100_RIGHT (FIT_CAST(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_CAST(FIT_LENGTH_TYPE, 0)) // Rest period. Length with no strokes
|
|
#define FIT_LENGTH_TYPE_ACTIVE (FIT_CAST(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_CAST(FIT_DAY_OF_WEEK, 0))
|
|
#define FIT_DAY_OF_WEEK_MONDAY (FIT_CAST(FIT_DAY_OF_WEEK, 1))
|
|
#define FIT_DAY_OF_WEEK_TUESDAY (FIT_CAST(FIT_DAY_OF_WEEK, 2))
|
|
#define FIT_DAY_OF_WEEK_WEDNESDAY (FIT_CAST(FIT_DAY_OF_WEEK, 3))
|
|
#define FIT_DAY_OF_WEEK_THURSDAY (FIT_CAST(FIT_DAY_OF_WEEK, 4))
|
|
#define FIT_DAY_OF_WEEK_FRIDAY (FIT_CAST(FIT_DAY_OF_WEEK, 5))
|
|
#define FIT_DAY_OF_WEEK_SATURDAY (FIT_CAST(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_CAST(FIT_CONNECTIVITY_CAPABILITIES, 0x00000001))
|
|
#define FIT_CONNECTIVITY_CAPABILITIES_BLUETOOTH_LE (FIT_CAST(FIT_CONNECTIVITY_CAPABILITIES, 0x00000002))
|
|
#define FIT_CONNECTIVITY_CAPABILITIES_ANT (FIT_CAST(FIT_CONNECTIVITY_CAPABILITIES, 0x00000004))
|
|
#define FIT_CONNECTIVITY_CAPABILITIES_ACTIVITY_UPLOAD (FIT_CAST(FIT_CONNECTIVITY_CAPABILITIES, 0x00000008))
|
|
#define FIT_CONNECTIVITY_CAPABILITIES_COURSE_DOWNLOAD (FIT_CAST(FIT_CONNECTIVITY_CAPABILITIES, 0x00000010))
|
|
#define FIT_CONNECTIVITY_CAPABILITIES_WORKOUT_DOWNLOAD (FIT_CAST(FIT_CONNECTIVITY_CAPABILITIES, 0x00000020))
|
|
#define FIT_CONNECTIVITY_CAPABILITIES_LIVE_TRACK (FIT_CAST(FIT_CONNECTIVITY_CAPABILITIES, 0x00000040))
|
|
#define FIT_CONNECTIVITY_CAPABILITIES_WEATHER_CONDITIONS (FIT_CAST(FIT_CONNECTIVITY_CAPABILITIES, 0x00000080))
|
|
#define FIT_CONNECTIVITY_CAPABILITIES_WEATHER_ALERTS (FIT_CAST(FIT_CONNECTIVITY_CAPABILITIES, 0x00000100))
|
|
#define FIT_CONNECTIVITY_CAPABILITIES_GPS_EPHEMERIS_DOWNLOAD (FIT_CAST(FIT_CONNECTIVITY_CAPABILITIES, 0x00000200))
|
|
#define FIT_CONNECTIVITY_CAPABILITIES_EXPLICIT_ARCHIVE (FIT_CAST(FIT_CONNECTIVITY_CAPABILITIES, 0x00000400))
|
|
#define FIT_CONNECTIVITY_CAPABILITIES_SETUP_INCOMPLETE (FIT_CAST(FIT_CONNECTIVITY_CAPABILITIES, 0x00000800))
|
|
#define FIT_CONNECTIVITY_CAPABILITIES_CONTINUE_SYNC_AFTER_SOFTWARE_UPDATE (FIT_CAST(FIT_CONNECTIVITY_CAPABILITIES, 0x00001000))
|
|
#define FIT_CONNECTIVITY_CAPABILITIES_CONNECT_IQ_APP_DOWNLOAD (FIT_CAST(FIT_CONNECTIVITY_CAPABILITIES, 0x00002000))
|
|
#define FIT_CONNECTIVITY_CAPABILITIES_GOLF_COURSE_DOWNLOAD (FIT_CAST(FIT_CONNECTIVITY_CAPABILITIES, 0x00004000))
|
|
#define FIT_CONNECTIVITY_CAPABILITIES_DEVICE_INITIATES_SYNC (FIT_CAST(FIT_CONNECTIVITY_CAPABILITIES, 0x00008000)) // Indicates device is in control of initiating all syncs
|
|
#define FIT_CONNECTIVITY_CAPABILITIES_CONNECT_IQ_WATCH_APP_DOWNLOAD (FIT_CAST(FIT_CONNECTIVITY_CAPABILITIES, 0x00010000))
|
|
#define FIT_CONNECTIVITY_CAPABILITIES_CONNECT_IQ_WIDGET_DOWNLOAD (FIT_CAST(FIT_CONNECTIVITY_CAPABILITIES, 0x00020000))
|
|
#define FIT_CONNECTIVITY_CAPABILITIES_CONNECT_IQ_WATCH_FACE_DOWNLOAD (FIT_CAST(FIT_CONNECTIVITY_CAPABILITIES, 0x00040000))
|
|
#define FIT_CONNECTIVITY_CAPABILITIES_CONNECT_IQ_DATA_FIELD_DOWNLOAD (FIT_CAST(FIT_CONNECTIVITY_CAPABILITIES, 0x00080000))
|
|
#define FIT_CONNECTIVITY_CAPABILITIES_CONNECT_IQ_APP_MANAGMENT (FIT_CAST(FIT_CONNECTIVITY_CAPABILITIES, 0x00100000)) // Device supports delete and reorder of apps via GCM
|
|
#define FIT_CONNECTIVITY_CAPABILITIES_SWING_SENSOR (FIT_CAST(FIT_CONNECTIVITY_CAPABILITIES, 0x00200000))
|
|
#define FIT_CONNECTIVITY_CAPABILITIES_SWING_SENSOR_REMOTE (FIT_CAST(FIT_CONNECTIVITY_CAPABILITIES, 0x00400000))
|
|
#define FIT_CONNECTIVITY_CAPABILITIES_INCIDENT_DETECTION (FIT_CAST(FIT_CONNECTIVITY_CAPABILITIES, 0x00800000)) // Device supports incident detection
|
|
#define FIT_CONNECTIVITY_CAPABILITIES_AUDIO_PROMPTS (FIT_CAST(FIT_CONNECTIVITY_CAPABILITIES, 0x01000000))
|
|
#define FIT_CONNECTIVITY_CAPABILITIES_WIFI_VERIFICATION (FIT_CAST(FIT_CONNECTIVITY_CAPABILITIES, 0x02000000)) // Device supports reporting wifi verification via GCM
|
|
#define FIT_CONNECTIVITY_CAPABILITIES_TRUE_UP (FIT_CAST(FIT_CONNECTIVITY_CAPABILITIES, 0x04000000)) // Device supports True Up
|
|
#define FIT_CONNECTIVITY_CAPABILITIES_FIND_MY_WATCH (FIT_CAST(FIT_CONNECTIVITY_CAPABILITIES, 0x08000000)) // Device supports Find My Watch
|
|
#define FIT_CONNECTIVITY_CAPABILITIES_REMOTE_MANUAL_SYNC (FIT_CAST(FIT_CONNECTIVITY_CAPABILITIES, 0x10000000))
|
|
#define FIT_CONNECTIVITY_CAPABILITIES_LIVE_TRACK_AUTO_START (FIT_CAST(FIT_CONNECTIVITY_CAPABILITIES, 0x20000000)) // Device supports LiveTrack auto start
|
|
#define FIT_CONNECTIVITY_CAPABILITIES_LIVE_TRACK_MESSAGING (FIT_CAST(FIT_CONNECTIVITY_CAPABILITIES, 0x40000000)) // Device supports LiveTrack Messaging
|
|
#define FIT_CONNECTIVITY_CAPABILITIES_INSTANT_INPUT (FIT_CAST(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_CAST(FIT_WEATHER_REPORT, 0))
|
|
#define FIT_WEATHER_REPORT_FORECAST (FIT_CAST(FIT_WEATHER_REPORT, 1)) // Deprecated use hourly_forecast instead
|
|
#define FIT_WEATHER_REPORT_HOURLY_FORECAST (FIT_CAST(FIT_WEATHER_REPORT, 1))
|
|
#define FIT_WEATHER_REPORT_DAILY_FORECAST (FIT_CAST(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_CAST(FIT_WEATHER_STATUS, 0))
|
|
#define FIT_WEATHER_STATUS_PARTLY_CLOUDY (FIT_CAST(FIT_WEATHER_STATUS, 1))
|
|
#define FIT_WEATHER_STATUS_MOSTLY_CLOUDY (FIT_CAST(FIT_WEATHER_STATUS, 2))
|
|
#define FIT_WEATHER_STATUS_RAIN (FIT_CAST(FIT_WEATHER_STATUS, 3))
|
|
#define FIT_WEATHER_STATUS_SNOW (FIT_CAST(FIT_WEATHER_STATUS, 4))
|
|
#define FIT_WEATHER_STATUS_WINDY (FIT_CAST(FIT_WEATHER_STATUS, 5))
|
|
#define FIT_WEATHER_STATUS_THUNDERSTORMS (FIT_CAST(FIT_WEATHER_STATUS, 6))
|
|
#define FIT_WEATHER_STATUS_WINTRY_MIX (FIT_CAST(FIT_WEATHER_STATUS, 7))
|
|
#define FIT_WEATHER_STATUS_FOG (FIT_CAST(FIT_WEATHER_STATUS, 8))
|
|
#define FIT_WEATHER_STATUS_HAZY (FIT_CAST(FIT_WEATHER_STATUS, 11))
|
|
#define FIT_WEATHER_STATUS_HAIL (FIT_CAST(FIT_WEATHER_STATUS, 12))
|
|
#define FIT_WEATHER_STATUS_SCATTERED_SHOWERS (FIT_CAST(FIT_WEATHER_STATUS, 13))
|
|
#define FIT_WEATHER_STATUS_SCATTERED_THUNDERSTORMS (FIT_CAST(FIT_WEATHER_STATUS, 14))
|
|
#define FIT_WEATHER_STATUS_UNKNOWN_PRECIPITATION (FIT_CAST(FIT_WEATHER_STATUS, 15))
|
|
#define FIT_WEATHER_STATUS_LIGHT_RAIN (FIT_CAST(FIT_WEATHER_STATUS, 16))
|
|
#define FIT_WEATHER_STATUS_HEAVY_RAIN (FIT_CAST(FIT_WEATHER_STATUS, 17))
|
|
#define FIT_WEATHER_STATUS_LIGHT_SNOW (FIT_CAST(FIT_WEATHER_STATUS, 18))
|
|
#define FIT_WEATHER_STATUS_HEAVY_SNOW (FIT_CAST(FIT_WEATHER_STATUS, 19))
|
|
#define FIT_WEATHER_STATUS_LIGHT_RAIN_SNOW (FIT_CAST(FIT_WEATHER_STATUS, 20))
|
|
#define FIT_WEATHER_STATUS_HEAVY_RAIN_SNOW (FIT_CAST(FIT_WEATHER_STATUS, 21))
|
|
#define FIT_WEATHER_STATUS_CLOUDY (FIT_CAST(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_CAST(FIT_WEATHER_SEVERITY, 0))
|
|
#define FIT_WEATHER_SEVERITY_WARNING (FIT_CAST(FIT_WEATHER_SEVERITY, 1))
|
|
#define FIT_WEATHER_SEVERITY_WATCH (FIT_CAST(FIT_WEATHER_SEVERITY, 2))
|
|
#define FIT_WEATHER_SEVERITY_ADVISORY (FIT_CAST(FIT_WEATHER_SEVERITY, 3))
|
|
#define FIT_WEATHER_SEVERITY_STATEMENT (FIT_CAST(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_CAST(FIT_WEATHER_SEVERE_TYPE, 0))
|
|
#define FIT_WEATHER_SEVERE_TYPE_TORNADO (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 1))
|
|
#define FIT_WEATHER_SEVERE_TYPE_TSUNAMI (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 2))
|
|
#define FIT_WEATHER_SEVERE_TYPE_HURRICANE (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 3))
|
|
#define FIT_WEATHER_SEVERE_TYPE_EXTREME_WIND (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 4))
|
|
#define FIT_WEATHER_SEVERE_TYPE_TYPHOON (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 5))
|
|
#define FIT_WEATHER_SEVERE_TYPE_INLAND_HURRICANE (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 6))
|
|
#define FIT_WEATHER_SEVERE_TYPE_HURRICANE_FORCE_WIND (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 7))
|
|
#define FIT_WEATHER_SEVERE_TYPE_WATERSPOUT (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 8))
|
|
#define FIT_WEATHER_SEVERE_TYPE_SEVERE_THUNDERSTORM (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 9))
|
|
#define FIT_WEATHER_SEVERE_TYPE_WRECKHOUSE_WINDS (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 10))
|
|
#define FIT_WEATHER_SEVERE_TYPE_LES_SUETES_WIND (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 11))
|
|
#define FIT_WEATHER_SEVERE_TYPE_AVALANCHE (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 12))
|
|
#define FIT_WEATHER_SEVERE_TYPE_FLASH_FLOOD (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 13))
|
|
#define FIT_WEATHER_SEVERE_TYPE_TROPICAL_STORM (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 14))
|
|
#define FIT_WEATHER_SEVERE_TYPE_INLAND_TROPICAL_STORM (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 15))
|
|
#define FIT_WEATHER_SEVERE_TYPE_BLIZZARD (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 16))
|
|
#define FIT_WEATHER_SEVERE_TYPE_ICE_STORM (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 17))
|
|
#define FIT_WEATHER_SEVERE_TYPE_FREEZING_RAIN (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 18))
|
|
#define FIT_WEATHER_SEVERE_TYPE_DEBRIS_FLOW (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 19))
|
|
#define FIT_WEATHER_SEVERE_TYPE_FLASH_FREEZE (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 20))
|
|
#define FIT_WEATHER_SEVERE_TYPE_DUST_STORM (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 21))
|
|
#define FIT_WEATHER_SEVERE_TYPE_HIGH_WIND (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 22))
|
|
#define FIT_WEATHER_SEVERE_TYPE_WINTER_STORM (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 23))
|
|
#define FIT_WEATHER_SEVERE_TYPE_HEAVY_FREEZING_SPRAY (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 24))
|
|
#define FIT_WEATHER_SEVERE_TYPE_EXTREME_COLD (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 25))
|
|
#define FIT_WEATHER_SEVERE_TYPE_WIND_CHILL (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 26))
|
|
#define FIT_WEATHER_SEVERE_TYPE_COLD_WAVE (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 27))
|
|
#define FIT_WEATHER_SEVERE_TYPE_HEAVY_SNOW_ALERT (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 28))
|
|
#define FIT_WEATHER_SEVERE_TYPE_LAKE_EFFECT_BLOWING_SNOW (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 29))
|
|
#define FIT_WEATHER_SEVERE_TYPE_SNOW_SQUALL (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 30))
|
|
#define FIT_WEATHER_SEVERE_TYPE_LAKE_EFFECT_SNOW (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 31))
|
|
#define FIT_WEATHER_SEVERE_TYPE_WINTER_WEATHER (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 32))
|
|
#define FIT_WEATHER_SEVERE_TYPE_SLEET (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 33))
|
|
#define FIT_WEATHER_SEVERE_TYPE_SNOWFALL (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 34))
|
|
#define FIT_WEATHER_SEVERE_TYPE_SNOW_AND_BLOWING_SNOW (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 35))
|
|
#define FIT_WEATHER_SEVERE_TYPE_BLOWING_SNOW (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 36))
|
|
#define FIT_WEATHER_SEVERE_TYPE_SNOW_ALERT (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 37))
|
|
#define FIT_WEATHER_SEVERE_TYPE_ARCTIC_OUTFLOW (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 38))
|
|
#define FIT_WEATHER_SEVERE_TYPE_FREEZING_DRIZZLE (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 39))
|
|
#define FIT_WEATHER_SEVERE_TYPE_STORM (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 40))
|
|
#define FIT_WEATHER_SEVERE_TYPE_STORM_SURGE (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 41))
|
|
#define FIT_WEATHER_SEVERE_TYPE_RAINFALL (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 42))
|
|
#define FIT_WEATHER_SEVERE_TYPE_AREAL_FLOOD (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 43))
|
|
#define FIT_WEATHER_SEVERE_TYPE_COASTAL_FLOOD (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 44))
|
|
#define FIT_WEATHER_SEVERE_TYPE_LAKESHORE_FLOOD (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 45))
|
|
#define FIT_WEATHER_SEVERE_TYPE_EXCESSIVE_HEAT (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 46))
|
|
#define FIT_WEATHER_SEVERE_TYPE_HEAT (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 47))
|
|
#define FIT_WEATHER_SEVERE_TYPE_WEATHER (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 48))
|
|
#define FIT_WEATHER_SEVERE_TYPE_HIGH_HEAT_AND_HUMIDITY (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 49))
|
|
#define FIT_WEATHER_SEVERE_TYPE_HUMIDEX_AND_HEALTH (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 50))
|
|
#define FIT_WEATHER_SEVERE_TYPE_HUMIDEX (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 51))
|
|
#define FIT_WEATHER_SEVERE_TYPE_GALE (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 52))
|
|
#define FIT_WEATHER_SEVERE_TYPE_FREEZING_SPRAY (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 53))
|
|
#define FIT_WEATHER_SEVERE_TYPE_SPECIAL_MARINE (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 54))
|
|
#define FIT_WEATHER_SEVERE_TYPE_SQUALL (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 55))
|
|
#define FIT_WEATHER_SEVERE_TYPE_STRONG_WIND (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 56))
|
|
#define FIT_WEATHER_SEVERE_TYPE_LAKE_WIND (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 57))
|
|
#define FIT_WEATHER_SEVERE_TYPE_MARINE_WEATHER (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 58))
|
|
#define FIT_WEATHER_SEVERE_TYPE_WIND (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 59))
|
|
#define FIT_WEATHER_SEVERE_TYPE_SMALL_CRAFT_HAZARDOUS_SEAS (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 60))
|
|
#define FIT_WEATHER_SEVERE_TYPE_HAZARDOUS_SEAS (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 61))
|
|
#define FIT_WEATHER_SEVERE_TYPE_SMALL_CRAFT (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 62))
|
|
#define FIT_WEATHER_SEVERE_TYPE_SMALL_CRAFT_WINDS (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 63))
|
|
#define FIT_WEATHER_SEVERE_TYPE_SMALL_CRAFT_ROUGH_BAR (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 64))
|
|
#define FIT_WEATHER_SEVERE_TYPE_HIGH_WATER_LEVEL (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 65))
|
|
#define FIT_WEATHER_SEVERE_TYPE_ASHFALL (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 66))
|
|
#define FIT_WEATHER_SEVERE_TYPE_FREEZING_FOG (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 67))
|
|
#define FIT_WEATHER_SEVERE_TYPE_DENSE_FOG (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 68))
|
|
#define FIT_WEATHER_SEVERE_TYPE_DENSE_SMOKE (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 69))
|
|
#define FIT_WEATHER_SEVERE_TYPE_BLOWING_DUST (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 70))
|
|
#define FIT_WEATHER_SEVERE_TYPE_HARD_FREEZE (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 71))
|
|
#define FIT_WEATHER_SEVERE_TYPE_FREEZE (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 72))
|
|
#define FIT_WEATHER_SEVERE_TYPE_FROST (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 73))
|
|
#define FIT_WEATHER_SEVERE_TYPE_FIRE_WEATHER (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 74))
|
|
#define FIT_WEATHER_SEVERE_TYPE_FLOOD (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 75))
|
|
#define FIT_WEATHER_SEVERE_TYPE_RIP_TIDE (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 76))
|
|
#define FIT_WEATHER_SEVERE_TYPE_HIGH_SURF (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 77))
|
|
#define FIT_WEATHER_SEVERE_TYPE_SMOG (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 78))
|
|
#define FIT_WEATHER_SEVERE_TYPE_AIR_QUALITY (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 79))
|
|
#define FIT_WEATHER_SEVERE_TYPE_BRISK_WIND (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 80))
|
|
#define FIT_WEATHER_SEVERE_TYPE_AIR_STAGNATION (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 81))
|
|
#define FIT_WEATHER_SEVERE_TYPE_LOW_WATER (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 82))
|
|
#define FIT_WEATHER_SEVERE_TYPE_HYDROLOGICAL (FIT_CAST(FIT_WEATHER_SEVERE_TYPE, 83))
|
|
#define FIT_WEATHER_SEVERE_TYPE_SPECIAL_WEATHER (FIT_CAST(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_CAST(FIT_STROKE_TYPE, 0))
|
|
#define FIT_STROKE_TYPE_OTHER (FIT_CAST(FIT_STROKE_TYPE, 1)) // stroke was detected but cannot be identified
|
|
#define FIT_STROKE_TYPE_SERVE (FIT_CAST(FIT_STROKE_TYPE, 2))
|
|
#define FIT_STROKE_TYPE_FOREHAND (FIT_CAST(FIT_STROKE_TYPE, 3))
|
|
#define FIT_STROKE_TYPE_BACKHAND (FIT_CAST(FIT_STROKE_TYPE, 4))
|
|
#define FIT_STROKE_TYPE_SMASH (FIT_CAST(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_CAST(FIT_BODY_LOCATION, 0))
|
|
#define FIT_BODY_LOCATION_LEFT_CALF (FIT_CAST(FIT_BODY_LOCATION, 1))
|
|
#define FIT_BODY_LOCATION_LEFT_SHIN (FIT_CAST(FIT_BODY_LOCATION, 2))
|
|
#define FIT_BODY_LOCATION_LEFT_HAMSTRING (FIT_CAST(FIT_BODY_LOCATION, 3))
|
|
#define FIT_BODY_LOCATION_LEFT_QUAD (FIT_CAST(FIT_BODY_LOCATION, 4))
|
|
#define FIT_BODY_LOCATION_LEFT_GLUTE (FIT_CAST(FIT_BODY_LOCATION, 5))
|
|
#define FIT_BODY_LOCATION_RIGHT_LEG (FIT_CAST(FIT_BODY_LOCATION, 6))
|
|
#define FIT_BODY_LOCATION_RIGHT_CALF (FIT_CAST(FIT_BODY_LOCATION, 7))
|
|
#define FIT_BODY_LOCATION_RIGHT_SHIN (FIT_CAST(FIT_BODY_LOCATION, 8))
|
|
#define FIT_BODY_LOCATION_RIGHT_HAMSTRING (FIT_CAST(FIT_BODY_LOCATION, 9))
|
|
#define FIT_BODY_LOCATION_RIGHT_QUAD (FIT_CAST(FIT_BODY_LOCATION, 10))
|
|
#define FIT_BODY_LOCATION_RIGHT_GLUTE (FIT_CAST(FIT_BODY_LOCATION, 11))
|
|
#define FIT_BODY_LOCATION_TORSO_BACK (FIT_CAST(FIT_BODY_LOCATION, 12))
|
|
#define FIT_BODY_LOCATION_LEFT_LOWER_BACK (FIT_CAST(FIT_BODY_LOCATION, 13))
|
|
#define FIT_BODY_LOCATION_LEFT_UPPER_BACK (FIT_CAST(FIT_BODY_LOCATION, 14))
|
|
#define FIT_BODY_LOCATION_RIGHT_LOWER_BACK (FIT_CAST(FIT_BODY_LOCATION, 15))
|
|
#define FIT_BODY_LOCATION_RIGHT_UPPER_BACK (FIT_CAST(FIT_BODY_LOCATION, 16))
|
|
#define FIT_BODY_LOCATION_TORSO_FRONT (FIT_CAST(FIT_BODY_LOCATION, 17))
|
|
#define FIT_BODY_LOCATION_LEFT_ABDOMEN (FIT_CAST(FIT_BODY_LOCATION, 18))
|
|
#define FIT_BODY_LOCATION_LEFT_CHEST (FIT_CAST(FIT_BODY_LOCATION, 19))
|
|
#define FIT_BODY_LOCATION_RIGHT_ABDOMEN (FIT_CAST(FIT_BODY_LOCATION, 20))
|
|
#define FIT_BODY_LOCATION_RIGHT_CHEST (FIT_CAST(FIT_BODY_LOCATION, 21))
|
|
#define FIT_BODY_LOCATION_LEFT_ARM (FIT_CAST(FIT_BODY_LOCATION, 22))
|
|
#define FIT_BODY_LOCATION_LEFT_SHOULDER (FIT_CAST(FIT_BODY_LOCATION, 23))
|
|
#define FIT_BODY_LOCATION_LEFT_BICEP (FIT_CAST(FIT_BODY_LOCATION, 24))
|
|
#define FIT_BODY_LOCATION_LEFT_TRICEP (FIT_CAST(FIT_BODY_LOCATION, 25))
|
|
#define FIT_BODY_LOCATION_LEFT_BRACHIORADIALIS (FIT_CAST(FIT_BODY_LOCATION, 26)) // Left anterior forearm
|
|
#define FIT_BODY_LOCATION_LEFT_FOREARM_EXTENSORS (FIT_CAST(FIT_BODY_LOCATION, 27)) // Left posterior forearm
|
|
#define FIT_BODY_LOCATION_RIGHT_ARM (FIT_CAST(FIT_BODY_LOCATION, 28))
|
|
#define FIT_BODY_LOCATION_RIGHT_SHOULDER (FIT_CAST(FIT_BODY_LOCATION, 29))
|
|
#define FIT_BODY_LOCATION_RIGHT_BICEP (FIT_CAST(FIT_BODY_LOCATION, 30))
|
|
#define FIT_BODY_LOCATION_RIGHT_TRICEP (FIT_CAST(FIT_BODY_LOCATION, 31))
|
|
#define FIT_BODY_LOCATION_RIGHT_BRACHIORADIALIS (FIT_CAST(FIT_BODY_LOCATION, 32)) // Right anterior forearm
|
|
#define FIT_BODY_LOCATION_RIGHT_FOREARM_EXTENSORS (FIT_CAST(FIT_BODY_LOCATION, 33)) // Right posterior forearm
|
|
#define FIT_BODY_LOCATION_NECK (FIT_CAST(FIT_BODY_LOCATION, 34))
|
|
#define FIT_BODY_LOCATION_THROAT (FIT_CAST(FIT_BODY_LOCATION, 35))
|
|
#define FIT_BODY_LOCATION_WAIST_MID_BACK (FIT_CAST(FIT_BODY_LOCATION, 36))
|
|
#define FIT_BODY_LOCATION_WAIST_FRONT (FIT_CAST(FIT_BODY_LOCATION, 37))
|
|
#define FIT_BODY_LOCATION_WAIST_LEFT (FIT_CAST(FIT_BODY_LOCATION, 38))
|
|
#define FIT_BODY_LOCATION_WAIST_RIGHT (FIT_CAST(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_CAST(FIT_SEGMENT_LAP_STATUS, 0))
|
|
#define FIT_SEGMENT_LAP_STATUS_FAIL (FIT_CAST(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_CAST(FIT_SEGMENT_LEADERBOARD_TYPE, 0))
|
|
#define FIT_SEGMENT_LEADERBOARD_TYPE_PERSONAL_BEST (FIT_CAST(FIT_SEGMENT_LEADERBOARD_TYPE, 1))
|
|
#define FIT_SEGMENT_LEADERBOARD_TYPE_CONNECTIONS (FIT_CAST(FIT_SEGMENT_LEADERBOARD_TYPE, 2))
|
|
#define FIT_SEGMENT_LEADERBOARD_TYPE_GROUP (FIT_CAST(FIT_SEGMENT_LEADERBOARD_TYPE, 3))
|
|
#define FIT_SEGMENT_LEADERBOARD_TYPE_CHALLENGER (FIT_CAST(FIT_SEGMENT_LEADERBOARD_TYPE, 4))
|
|
#define FIT_SEGMENT_LEADERBOARD_TYPE_KOM (FIT_CAST(FIT_SEGMENT_LEADERBOARD_TYPE, 5))
|
|
#define FIT_SEGMENT_LEADERBOARD_TYPE_QOM (FIT_CAST(FIT_SEGMENT_LEADERBOARD_TYPE, 6))
|
|
#define FIT_SEGMENT_LEADERBOARD_TYPE_PR (FIT_CAST(FIT_SEGMENT_LEADERBOARD_TYPE, 7))
|
|
#define FIT_SEGMENT_LEADERBOARD_TYPE_GOAL (FIT_CAST(FIT_SEGMENT_LEADERBOARD_TYPE, 8))
|
|
#define FIT_SEGMENT_LEADERBOARD_TYPE_CARROT (FIT_CAST(FIT_SEGMENT_LEADERBOARD_TYPE, 9))
|
|
#define FIT_SEGMENT_LEADERBOARD_TYPE_CLUB_LEADER (FIT_CAST(FIT_SEGMENT_LEADERBOARD_TYPE, 10))
|
|
#define FIT_SEGMENT_LEADERBOARD_TYPE_RIVAL (FIT_CAST(FIT_SEGMENT_LEADERBOARD_TYPE, 11))
|
|
#define FIT_SEGMENT_LEADERBOARD_TYPE_LAST (FIT_CAST(FIT_SEGMENT_LEADERBOARD_TYPE, 12))
|
|
#define FIT_SEGMENT_LEADERBOARD_TYPE_RECENT_BEST (FIT_CAST(FIT_SEGMENT_LEADERBOARD_TYPE, 13))
|
|
#define FIT_SEGMENT_LEADERBOARD_TYPE_COURSE_RECORD (FIT_CAST(FIT_SEGMENT_LEADERBOARD_TYPE, 14))
|
|
#define FIT_SEGMENT_LEADERBOARD_TYPE_COUNT 15
|
|
|
|
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_CAST(FIT_SEGMENT_DELETE_STATUS, 0))
|
|
#define FIT_SEGMENT_DELETE_STATUS_DELETE_ONE (FIT_CAST(FIT_SEGMENT_DELETE_STATUS, 1))
|
|
#define FIT_SEGMENT_DELETE_STATUS_DELETE_ALL (FIT_CAST(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_CAST(FIT_SEGMENT_SELECTION_TYPE, 0))
|
|
#define FIT_SEGMENT_SELECTION_TYPE_SUGGESTED (FIT_CAST(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_CAST(FIT_SOURCE_TYPE, 0)) // External device connected with ANT
|
|
#define FIT_SOURCE_TYPE_ANTPLUS (FIT_CAST(FIT_SOURCE_TYPE, 1)) // External device connected with ANT+
|
|
#define FIT_SOURCE_TYPE_BLUETOOTH (FIT_CAST(FIT_SOURCE_TYPE, 2)) // External device connected with BT
|
|
#define FIT_SOURCE_TYPE_BLUETOOTH_LOW_ENERGY (FIT_CAST(FIT_SOURCE_TYPE, 3)) // External device connected with BLE
|
|
#define FIT_SOURCE_TYPE_WIFI (FIT_CAST(FIT_SOURCE_TYPE, 4)) // External device connected with Wifi
|
|
#define FIT_SOURCE_TYPE_LOCAL (FIT_CAST(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_CAST(FIT_LOCAL_DEVICE_TYPE, 0)) // Onboard gps receiver
|
|
#define FIT_LOCAL_DEVICE_TYPE_GLONASS (FIT_CAST(FIT_LOCAL_DEVICE_TYPE, 1)) // Onboard glonass receiver
|
|
#define FIT_LOCAL_DEVICE_TYPE_GPS_GLONASS (FIT_CAST(FIT_LOCAL_DEVICE_TYPE, 2)) // Onboard gps glonass receiver
|
|
#define FIT_LOCAL_DEVICE_TYPE_ACCELEROMETER (FIT_CAST(FIT_LOCAL_DEVICE_TYPE, 3)) // Onboard sensor
|
|
#define FIT_LOCAL_DEVICE_TYPE_BAROMETER (FIT_CAST(FIT_LOCAL_DEVICE_TYPE, 4)) // Onboard sensor
|
|
#define FIT_LOCAL_DEVICE_TYPE_TEMPERATURE (FIT_CAST(FIT_LOCAL_DEVICE_TYPE, 5)) // Onboard sensor
|
|
#define FIT_LOCAL_DEVICE_TYPE_WHR (FIT_CAST(FIT_LOCAL_DEVICE_TYPE, 10)) // Onboard wrist HR sensor
|
|
#define FIT_LOCAL_DEVICE_TYPE_SENSOR_HUB (FIT_CAST(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_CAST(FIT_BLE_DEVICE_TYPE, 0)) // GPS that is provided over a proprietary bluetooth service
|
|
#define FIT_BLE_DEVICE_TYPE_HEART_RATE (FIT_CAST(FIT_BLE_DEVICE_TYPE, 1))
|
|
#define FIT_BLE_DEVICE_TYPE_BIKE_POWER (FIT_CAST(FIT_BLE_DEVICE_TYPE, 2))
|
|
#define FIT_BLE_DEVICE_TYPE_BIKE_SPEED_CADENCE (FIT_CAST(FIT_BLE_DEVICE_TYPE, 3))
|
|
#define FIT_BLE_DEVICE_TYPE_BIKE_SPEED (FIT_CAST(FIT_BLE_DEVICE_TYPE, 4))
|
|
#define FIT_BLE_DEVICE_TYPE_BIKE_CADENCE (FIT_CAST(FIT_BLE_DEVICE_TYPE, 5))
|
|
#define FIT_BLE_DEVICE_TYPE_FOOTPOD (FIT_CAST(FIT_BLE_DEVICE_TYPE, 6))
|
|
#define FIT_BLE_DEVICE_TYPE_BIKE_TRAINER (FIT_CAST(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_CAST(FIT_ANT_CHANNEL_ID, 0xF0000000))
|
|
#define FIT_ANT_CHANNEL_ID_ANT_TRANSMISSION_TYPE_LOWER_NIBBLE (FIT_CAST(FIT_ANT_CHANNEL_ID, 0x0F000000))
|
|
#define FIT_ANT_CHANNEL_ID_ANT_DEVICE_TYPE (FIT_CAST(FIT_ANT_CHANNEL_ID, 0x00FF0000))
|
|
#define FIT_ANT_CHANNEL_ID_ANT_DEVICE_NUMBER (FIT_CAST(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_CAST(FIT_DISPLAY_ORIENTATION, 0)) // automatic if the device supports it
|
|
#define FIT_DISPLAY_ORIENTATION_PORTRAIT (FIT_CAST(FIT_DISPLAY_ORIENTATION, 1))
|
|
#define FIT_DISPLAY_ORIENTATION_LANDSCAPE (FIT_CAST(FIT_DISPLAY_ORIENTATION, 2))
|
|
#define FIT_DISPLAY_ORIENTATION_PORTRAIT_FLIPPED (FIT_CAST(FIT_DISPLAY_ORIENTATION, 3)) // portrait mode but rotated 180 degrees
|
|
#define FIT_DISPLAY_ORIENTATION_LANDSCAPE_FLIPPED (FIT_CAST(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_CAST(FIT_WORKOUT_EQUIPMENT, 0))
|
|
#define FIT_WORKOUT_EQUIPMENT_SWIM_FINS (FIT_CAST(FIT_WORKOUT_EQUIPMENT, 1))
|
|
#define FIT_WORKOUT_EQUIPMENT_SWIM_KICKBOARD (FIT_CAST(FIT_WORKOUT_EQUIPMENT, 2))
|
|
#define FIT_WORKOUT_EQUIPMENT_SWIM_PADDLES (FIT_CAST(FIT_WORKOUT_EQUIPMENT, 3))
|
|
#define FIT_WORKOUT_EQUIPMENT_SWIM_PULL_BUOY (FIT_CAST(FIT_WORKOUT_EQUIPMENT, 4))
|
|
#define FIT_WORKOUT_EQUIPMENT_SWIM_SNORKEL (FIT_CAST(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_CAST(FIT_WATCHFACE_MODE, 0))
|
|
#define FIT_WATCHFACE_MODE_ANALOG (FIT_CAST(FIT_WATCHFACE_MODE, 1))
|
|
#define FIT_WATCHFACE_MODE_CONNECT_IQ (FIT_CAST(FIT_WATCHFACE_MODE, 2))
|
|
#define FIT_WATCHFACE_MODE_DISABLED (FIT_CAST(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_CAST(FIT_DIGITAL_WATCHFACE_LAYOUT, 0))
|
|
#define FIT_DIGITAL_WATCHFACE_LAYOUT_MODERN (FIT_CAST(FIT_DIGITAL_WATCHFACE_LAYOUT, 1))
|
|
#define FIT_DIGITAL_WATCHFACE_LAYOUT_BOLD (FIT_CAST(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_CAST(FIT_ANALOG_WATCHFACE_LAYOUT, 0))
|
|
#define FIT_ANALOG_WATCHFACE_LAYOUT_TRADITIONAL (FIT_CAST(FIT_ANALOG_WATCHFACE_LAYOUT, 1))
|
|
#define FIT_ANALOG_WATCHFACE_LAYOUT_MODERN (FIT_CAST(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_CAST(FIT_RIDER_POSITION_TYPE, 0))
|
|
#define FIT_RIDER_POSITION_TYPE_STANDING (FIT_CAST(FIT_RIDER_POSITION_TYPE, 1))
|
|
#define FIT_RIDER_POSITION_TYPE_TRANSITION_TO_SEATED (FIT_CAST(FIT_RIDER_POSITION_TYPE, 2))
|
|
#define FIT_RIDER_POSITION_TYPE_TRANSITION_TO_STANDING (FIT_CAST(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_CAST(FIT_POWER_PHASE_TYPE, 0))
|
|
#define FIT_POWER_PHASE_TYPE_POWER_PHASE_END_ANGLE (FIT_CAST(FIT_POWER_PHASE_TYPE, 1))
|
|
#define FIT_POWER_PHASE_TYPE_POWER_PHASE_ARC_LENGTH (FIT_CAST(FIT_POWER_PHASE_TYPE, 2))
|
|
#define FIT_POWER_PHASE_TYPE_POWER_PHASE_CENTER (FIT_CAST(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_CAST(FIT_CAMERA_EVENT_TYPE, 0)) // Start of video recording
|
|
#define FIT_CAMERA_EVENT_TYPE_VIDEO_SPLIT (FIT_CAST(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_CAST(FIT_CAMERA_EVENT_TYPE, 2)) // End of video recording
|
|
#define FIT_CAMERA_EVENT_TYPE_PHOTO_TAKEN (FIT_CAST(FIT_CAMERA_EVENT_TYPE, 3)) // Still photo taken
|
|
#define FIT_CAMERA_EVENT_TYPE_VIDEO_SECOND_STREAM_START (FIT_CAST(FIT_CAMERA_EVENT_TYPE, 4))
|
|
#define FIT_CAMERA_EVENT_TYPE_VIDEO_SECOND_STREAM_SPLIT (FIT_CAST(FIT_CAMERA_EVENT_TYPE, 5))
|
|
#define FIT_CAMERA_EVENT_TYPE_VIDEO_SECOND_STREAM_END (FIT_CAST(FIT_CAMERA_EVENT_TYPE, 6))
|
|
#define FIT_CAMERA_EVENT_TYPE_VIDEO_SPLIT_START (FIT_CAST(FIT_CAMERA_EVENT_TYPE, 7)) // Mark of video file split start
|
|
#define FIT_CAMERA_EVENT_TYPE_VIDEO_SECOND_STREAM_SPLIT_START (FIT_CAST(FIT_CAMERA_EVENT_TYPE, 8))
|
|
#define FIT_CAMERA_EVENT_TYPE_VIDEO_PAUSE (FIT_CAST(FIT_CAMERA_EVENT_TYPE, 11)) // Mark when a video recording has been paused
|
|
#define FIT_CAMERA_EVENT_TYPE_VIDEO_SECOND_STREAM_PAUSE (FIT_CAST(FIT_CAMERA_EVENT_TYPE, 12))
|
|
#define FIT_CAMERA_EVENT_TYPE_VIDEO_RESUME (FIT_CAST(FIT_CAMERA_EVENT_TYPE, 13)) // Mark when a video recording has been resumed
|
|
#define FIT_CAMERA_EVENT_TYPE_VIDEO_SECOND_STREAM_RESUME (FIT_CAST(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_CAST(FIT_SENSOR_TYPE, 0))
|
|
#define FIT_SENSOR_TYPE_GYROSCOPE (FIT_CAST(FIT_SENSOR_TYPE, 1))
|
|
#define FIT_SENSOR_TYPE_COMPASS (FIT_CAST(FIT_SENSOR_TYPE, 2)) // Magnetometer
|
|
#define FIT_SENSOR_TYPE_BAROMETER (FIT_CAST(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_CAST(FIT_BIKE_LIGHT_NETWORK_CONFIG_TYPE, 0))
|
|
#define FIT_BIKE_LIGHT_NETWORK_CONFIG_TYPE_INDIVIDUAL (FIT_CAST(FIT_BIKE_LIGHT_NETWORK_CONFIG_TYPE, 4))
|
|
#define FIT_BIKE_LIGHT_NETWORK_CONFIG_TYPE_HIGH_VISIBILITY (FIT_CAST(FIT_BIKE_LIGHT_NETWORK_CONFIG_TYPE, 5))
|
|
#define FIT_BIKE_LIGHT_NETWORK_CONFIG_TYPE_TRAIL (FIT_CAST(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_CAST(FIT_COMM_TIMEOUT_TYPE, 0)) // Timeout pairing to any device
|
|
#define FIT_COMM_TIMEOUT_TYPE_PAIRING_TIMEOUT (FIT_CAST(FIT_COMM_TIMEOUT_TYPE, 1)) // Timeout pairing to previously paired device
|
|
#define FIT_COMM_TIMEOUT_TYPE_CONNECTION_LOST (FIT_CAST(FIT_COMM_TIMEOUT_TYPE, 2)) // Temporary loss of communications
|
|
#define FIT_COMM_TIMEOUT_TYPE_CONNECTION_TIMEOUT (FIT_CAST(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_CAST(FIT_CAMERA_ORIENTATION_TYPE, 0))
|
|
#define FIT_CAMERA_ORIENTATION_TYPE_CAMERA_ORIENTATION_90 (FIT_CAST(FIT_CAMERA_ORIENTATION_TYPE, 1))
|
|
#define FIT_CAMERA_ORIENTATION_TYPE_CAMERA_ORIENTATION_180 (FIT_CAST(FIT_CAMERA_ORIENTATION_TYPE, 2))
|
|
#define FIT_CAMERA_ORIENTATION_TYPE_CAMERA_ORIENTATION_270 (FIT_CAST(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_CAST(FIT_ATTITUDE_STAGE, 0))
|
|
#define FIT_ATTITUDE_STAGE_ALIGNING (FIT_CAST(FIT_ATTITUDE_STAGE, 1))
|
|
#define FIT_ATTITUDE_STAGE_DEGRADED (FIT_CAST(FIT_ATTITUDE_STAGE, 2))
|
|
#define FIT_ATTITUDE_STAGE_VALID (FIT_CAST(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_CAST(FIT_ATTITUDE_VALIDITY, 0x0001))
|
|
#define FIT_ATTITUDE_VALIDITY_PITCH_VALID (FIT_CAST(FIT_ATTITUDE_VALIDITY, 0x0002))
|
|
#define FIT_ATTITUDE_VALIDITY_ROLL_VALID (FIT_CAST(FIT_ATTITUDE_VALIDITY, 0x0004))
|
|
#define FIT_ATTITUDE_VALIDITY_LATERAL_BODY_ACCEL_VALID (FIT_CAST(FIT_ATTITUDE_VALIDITY, 0x0008))
|
|
#define FIT_ATTITUDE_VALIDITY_NORMAL_BODY_ACCEL_VALID (FIT_CAST(FIT_ATTITUDE_VALIDITY, 0x0010))
|
|
#define FIT_ATTITUDE_VALIDITY_TURN_RATE_VALID (FIT_CAST(FIT_ATTITUDE_VALIDITY, 0x0020))
|
|
#define FIT_ATTITUDE_VALIDITY_HW_FAIL (FIT_CAST(FIT_ATTITUDE_VALIDITY, 0x0040))
|
|
#define FIT_ATTITUDE_VALIDITY_MAG_INVALID (FIT_CAST(FIT_ATTITUDE_VALIDITY, 0x0080))
|
|
#define FIT_ATTITUDE_VALIDITY_NO_GPS (FIT_CAST(FIT_ATTITUDE_VALIDITY, 0x0100))
|
|
#define FIT_ATTITUDE_VALIDITY_GPS_INVALID (FIT_CAST(FIT_ATTITUDE_VALIDITY, 0x0200))
|
|
#define FIT_ATTITUDE_VALIDITY_SOLUTION_COASTING (FIT_CAST(FIT_ATTITUDE_VALIDITY, 0x0400))
|
|
#define FIT_ATTITUDE_VALIDITY_TRUE_TRACK_ANGLE (FIT_CAST(FIT_ATTITUDE_VALIDITY, 0x0800))
|
|
#define FIT_ATTITUDE_VALIDITY_MAGNETIC_HEADING (FIT_CAST(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_CAST(FIT_AUTO_SYNC_FREQUENCY, 0))
|
|
#define FIT_AUTO_SYNC_FREQUENCY_OCCASIONALLY (FIT_CAST(FIT_AUTO_SYNC_FREQUENCY, 1))
|
|
#define FIT_AUTO_SYNC_FREQUENCY_FREQUENT (FIT_CAST(FIT_AUTO_SYNC_FREQUENCY, 2))
|
|
#define FIT_AUTO_SYNC_FREQUENCY_ONCE_A_DAY (FIT_CAST(FIT_AUTO_SYNC_FREQUENCY, 3))
|
|
#define FIT_AUTO_SYNC_FREQUENCY_REMOTE (FIT_CAST(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_CAST(FIT_EXD_LAYOUT, 0))
|
|
#define FIT_EXD_LAYOUT_HALF_VERTICAL (FIT_CAST(FIT_EXD_LAYOUT, 1))
|
|
#define FIT_EXD_LAYOUT_HALF_HORIZONTAL (FIT_CAST(FIT_EXD_LAYOUT, 2))
|
|
#define FIT_EXD_LAYOUT_HALF_VERTICAL_RIGHT_SPLIT (FIT_CAST(FIT_EXD_LAYOUT, 3))
|
|
#define FIT_EXD_LAYOUT_HALF_HORIZONTAL_BOTTOM_SPLIT (FIT_CAST(FIT_EXD_LAYOUT, 4))
|
|
#define FIT_EXD_LAYOUT_FULL_QUARTER_SPLIT (FIT_CAST(FIT_EXD_LAYOUT, 5))
|
|
#define FIT_EXD_LAYOUT_HALF_VERTICAL_LEFT_SPLIT (FIT_CAST(FIT_EXD_LAYOUT, 6))
|
|
#define FIT_EXD_LAYOUT_HALF_HORIZONTAL_TOP_SPLIT (FIT_CAST(FIT_EXD_LAYOUT, 7))
|
|
#define FIT_EXD_LAYOUT_DYNAMIC (FIT_CAST(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_CAST(FIT_EXD_DISPLAY_TYPE, 0))
|
|
#define FIT_EXD_DISPLAY_TYPE_SIMPLE (FIT_CAST(FIT_EXD_DISPLAY_TYPE, 1))
|
|
#define FIT_EXD_DISPLAY_TYPE_GRAPH (FIT_CAST(FIT_EXD_DISPLAY_TYPE, 2))
|
|
#define FIT_EXD_DISPLAY_TYPE_BAR (FIT_CAST(FIT_EXD_DISPLAY_TYPE, 3))
|
|
#define FIT_EXD_DISPLAY_TYPE_CIRCLE_GRAPH (FIT_CAST(FIT_EXD_DISPLAY_TYPE, 4))
|
|
#define FIT_EXD_DISPLAY_TYPE_VIRTUAL_PARTNER (FIT_CAST(FIT_EXD_DISPLAY_TYPE, 5))
|
|
#define FIT_EXD_DISPLAY_TYPE_BALANCE (FIT_CAST(FIT_EXD_DISPLAY_TYPE, 6))
|
|
#define FIT_EXD_DISPLAY_TYPE_STRING_LIST (FIT_CAST(FIT_EXD_DISPLAY_TYPE, 7))
|
|
#define FIT_EXD_DISPLAY_TYPE_STRING (FIT_CAST(FIT_EXD_DISPLAY_TYPE, 8))
|
|
#define FIT_EXD_DISPLAY_TYPE_SIMPLE_DYNAMIC_ICON (FIT_CAST(FIT_EXD_DISPLAY_TYPE, 9))
|
|
#define FIT_EXD_DISPLAY_TYPE_GAUGE (FIT_CAST(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_CAST(FIT_EXD_DATA_UNITS, 0))
|
|
#define FIT_EXD_DATA_UNITS_LAPS (FIT_CAST(FIT_EXD_DATA_UNITS, 1))
|
|
#define FIT_EXD_DATA_UNITS_MILES_PER_HOUR (FIT_CAST(FIT_EXD_DATA_UNITS, 2))
|
|
#define FIT_EXD_DATA_UNITS_KILOMETERS_PER_HOUR (FIT_CAST(FIT_EXD_DATA_UNITS, 3))
|
|
#define FIT_EXD_DATA_UNITS_FEET_PER_HOUR (FIT_CAST(FIT_EXD_DATA_UNITS, 4))
|
|
#define FIT_EXD_DATA_UNITS_METERS_PER_HOUR (FIT_CAST(FIT_EXD_DATA_UNITS, 5))
|
|
#define FIT_EXD_DATA_UNITS_DEGREES_CELSIUS (FIT_CAST(FIT_EXD_DATA_UNITS, 6))
|
|
#define FIT_EXD_DATA_UNITS_DEGREES_FARENHEIT (FIT_CAST(FIT_EXD_DATA_UNITS, 7))
|
|
#define FIT_EXD_DATA_UNITS_ZONE (FIT_CAST(FIT_EXD_DATA_UNITS, 8))
|
|
#define FIT_EXD_DATA_UNITS_GEAR (FIT_CAST(FIT_EXD_DATA_UNITS, 9))
|
|
#define FIT_EXD_DATA_UNITS_RPM (FIT_CAST(FIT_EXD_DATA_UNITS, 10))
|
|
#define FIT_EXD_DATA_UNITS_BPM (FIT_CAST(FIT_EXD_DATA_UNITS, 11))
|
|
#define FIT_EXD_DATA_UNITS_DEGREES (FIT_CAST(FIT_EXD_DATA_UNITS, 12))
|
|
#define FIT_EXD_DATA_UNITS_MILLIMETERS (FIT_CAST(FIT_EXD_DATA_UNITS, 13))
|
|
#define FIT_EXD_DATA_UNITS_METERS (FIT_CAST(FIT_EXD_DATA_UNITS, 14))
|
|
#define FIT_EXD_DATA_UNITS_KILOMETERS (FIT_CAST(FIT_EXD_DATA_UNITS, 15))
|
|
#define FIT_EXD_DATA_UNITS_FEET (FIT_CAST(FIT_EXD_DATA_UNITS, 16))
|
|
#define FIT_EXD_DATA_UNITS_YARDS (FIT_CAST(FIT_EXD_DATA_UNITS, 17))
|
|
#define FIT_EXD_DATA_UNITS_KILOFEET (FIT_CAST(FIT_EXD_DATA_UNITS, 18))
|
|
#define FIT_EXD_DATA_UNITS_MILES (FIT_CAST(FIT_EXD_DATA_UNITS, 19))
|
|
#define FIT_EXD_DATA_UNITS_TIME (FIT_CAST(FIT_EXD_DATA_UNITS, 20))
|
|
#define FIT_EXD_DATA_UNITS_ENUM_TURN_TYPE (FIT_CAST(FIT_EXD_DATA_UNITS, 21))
|
|
#define FIT_EXD_DATA_UNITS_PERCENT (FIT_CAST(FIT_EXD_DATA_UNITS, 22))
|
|
#define FIT_EXD_DATA_UNITS_WATTS (FIT_CAST(FIT_EXD_DATA_UNITS, 23))
|
|
#define FIT_EXD_DATA_UNITS_WATTS_PER_KILOGRAM (FIT_CAST(FIT_EXD_DATA_UNITS, 24))
|
|
#define FIT_EXD_DATA_UNITS_ENUM_BATTERY_STATUS (FIT_CAST(FIT_EXD_DATA_UNITS, 25))
|
|
#define FIT_EXD_DATA_UNITS_ENUM_BIKE_LIGHT_BEAM_ANGLE_MODE (FIT_CAST(FIT_EXD_DATA_UNITS, 26))
|
|
#define FIT_EXD_DATA_UNITS_ENUM_BIKE_LIGHT_BATTERY_STATUS (FIT_CAST(FIT_EXD_DATA_UNITS, 27))
|
|
#define FIT_EXD_DATA_UNITS_ENUM_BIKE_LIGHT_NETWORK_CONFIG_TYPE (FIT_CAST(FIT_EXD_DATA_UNITS, 28))
|
|
#define FIT_EXD_DATA_UNITS_LIGHTS (FIT_CAST(FIT_EXD_DATA_UNITS, 29))
|
|
#define FIT_EXD_DATA_UNITS_SECONDS (FIT_CAST(FIT_EXD_DATA_UNITS, 30))
|
|
#define FIT_EXD_DATA_UNITS_MINUTES (FIT_CAST(FIT_EXD_DATA_UNITS, 31))
|
|
#define FIT_EXD_DATA_UNITS_HOURS (FIT_CAST(FIT_EXD_DATA_UNITS, 32))
|
|
#define FIT_EXD_DATA_UNITS_CALORIES (FIT_CAST(FIT_EXD_DATA_UNITS, 33))
|
|
#define FIT_EXD_DATA_UNITS_KILOJOULES (FIT_CAST(FIT_EXD_DATA_UNITS, 34))
|
|
#define FIT_EXD_DATA_UNITS_MILLISECONDS (FIT_CAST(FIT_EXD_DATA_UNITS, 35))
|
|
#define FIT_EXD_DATA_UNITS_SECOND_PER_MILE (FIT_CAST(FIT_EXD_DATA_UNITS, 36))
|
|
#define FIT_EXD_DATA_UNITS_SECOND_PER_KILOMETER (FIT_CAST(FIT_EXD_DATA_UNITS, 37))
|
|
#define FIT_EXD_DATA_UNITS_CENTIMETER (FIT_CAST(FIT_EXD_DATA_UNITS, 38))
|
|
#define FIT_EXD_DATA_UNITS_ENUM_COURSE_POINT (FIT_CAST(FIT_EXD_DATA_UNITS, 39))
|
|
#define FIT_EXD_DATA_UNITS_BRADIANS (FIT_CAST(FIT_EXD_DATA_UNITS, 40))
|
|
#define FIT_EXD_DATA_UNITS_ENUM_SPORT (FIT_CAST(FIT_EXD_DATA_UNITS, 41))
|
|
#define FIT_EXD_DATA_UNITS_INCHES_HG (FIT_CAST(FIT_EXD_DATA_UNITS, 42))
|
|
#define FIT_EXD_DATA_UNITS_MM_HG (FIT_CAST(FIT_EXD_DATA_UNITS, 43))
|
|
#define FIT_EXD_DATA_UNITS_MBARS (FIT_CAST(FIT_EXD_DATA_UNITS, 44))
|
|
#define FIT_EXD_DATA_UNITS_HECTO_PASCALS (FIT_CAST(FIT_EXD_DATA_UNITS, 45))
|
|
#define FIT_EXD_DATA_UNITS_FEET_PER_MIN (FIT_CAST(FIT_EXD_DATA_UNITS, 46))
|
|
#define FIT_EXD_DATA_UNITS_METERS_PER_MIN (FIT_CAST(FIT_EXD_DATA_UNITS, 47))
|
|
#define FIT_EXD_DATA_UNITS_METERS_PER_SEC (FIT_CAST(FIT_EXD_DATA_UNITS, 48))
|
|
#define FIT_EXD_DATA_UNITS_EIGHT_CARDINAL (FIT_CAST(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_CAST(FIT_EXD_QUALIFIERS, 0))
|
|
#define FIT_EXD_QUALIFIERS_INSTANTANEOUS (FIT_CAST(FIT_EXD_QUALIFIERS, 1))
|
|
#define FIT_EXD_QUALIFIERS_AVERAGE (FIT_CAST(FIT_EXD_QUALIFIERS, 2))
|
|
#define FIT_EXD_QUALIFIERS_LAP (FIT_CAST(FIT_EXD_QUALIFIERS, 3))
|
|
#define FIT_EXD_QUALIFIERS_MAXIMUM (FIT_CAST(FIT_EXD_QUALIFIERS, 4))
|
|
#define FIT_EXD_QUALIFIERS_MAXIMUM_AVERAGE (FIT_CAST(FIT_EXD_QUALIFIERS, 5))
|
|
#define FIT_EXD_QUALIFIERS_MAXIMUM_LAP (FIT_CAST(FIT_EXD_QUALIFIERS, 6))
|
|
#define FIT_EXD_QUALIFIERS_LAST_LAP (FIT_CAST(FIT_EXD_QUALIFIERS, 7))
|
|
#define FIT_EXD_QUALIFIERS_AVERAGE_LAP (FIT_CAST(FIT_EXD_QUALIFIERS, 8))
|
|
#define FIT_EXD_QUALIFIERS_TO_DESTINATION (FIT_CAST(FIT_EXD_QUALIFIERS, 9))
|
|
#define FIT_EXD_QUALIFIERS_TO_GO (FIT_CAST(FIT_EXD_QUALIFIERS, 10))
|
|
#define FIT_EXD_QUALIFIERS_TO_NEXT (FIT_CAST(FIT_EXD_QUALIFIERS, 11))
|
|
#define FIT_EXD_QUALIFIERS_NEXT_COURSE_POINT (FIT_CAST(FIT_EXD_QUALIFIERS, 12))
|
|
#define FIT_EXD_QUALIFIERS_TOTAL (FIT_CAST(FIT_EXD_QUALIFIERS, 13))
|
|
#define FIT_EXD_QUALIFIERS_THREE_SECOND_AVERAGE (FIT_CAST(FIT_EXD_QUALIFIERS, 14))
|
|
#define FIT_EXD_QUALIFIERS_TEN_SECOND_AVERAGE (FIT_CAST(FIT_EXD_QUALIFIERS, 15))
|
|
#define FIT_EXD_QUALIFIERS_THIRTY_SECOND_AVERAGE (FIT_CAST(FIT_EXD_QUALIFIERS, 16))
|
|
#define FIT_EXD_QUALIFIERS_PERCENT_MAXIMUM (FIT_CAST(FIT_EXD_QUALIFIERS, 17))
|
|
#define FIT_EXD_QUALIFIERS_PERCENT_MAXIMUM_AVERAGE (FIT_CAST(FIT_EXD_QUALIFIERS, 18))
|
|
#define FIT_EXD_QUALIFIERS_LAP_PERCENT_MAXIMUM (FIT_CAST(FIT_EXD_QUALIFIERS, 19))
|
|
#define FIT_EXD_QUALIFIERS_ELAPSED (FIT_CAST(FIT_EXD_QUALIFIERS, 20))
|
|
#define FIT_EXD_QUALIFIERS_SUNRISE (FIT_CAST(FIT_EXD_QUALIFIERS, 21))
|
|
#define FIT_EXD_QUALIFIERS_SUNSET (FIT_CAST(FIT_EXD_QUALIFIERS, 22))
|
|
#define FIT_EXD_QUALIFIERS_COMPARED_TO_VIRTUAL_PARTNER (FIT_CAST(FIT_EXD_QUALIFIERS, 23))
|
|
#define FIT_EXD_QUALIFIERS_MAXIMUM_24H (FIT_CAST(FIT_EXD_QUALIFIERS, 24))
|
|
#define FIT_EXD_QUALIFIERS_MINIMUM_24H (FIT_CAST(FIT_EXD_QUALIFIERS, 25))
|
|
#define FIT_EXD_QUALIFIERS_MINIMUM (FIT_CAST(FIT_EXD_QUALIFIERS, 26))
|
|
#define FIT_EXD_QUALIFIERS_FIRST (FIT_CAST(FIT_EXD_QUALIFIERS, 27))
|
|
#define FIT_EXD_QUALIFIERS_SECOND (FIT_CAST(FIT_EXD_QUALIFIERS, 28))
|
|
#define FIT_EXD_QUALIFIERS_THIRD (FIT_CAST(FIT_EXD_QUALIFIERS, 29))
|
|
#define FIT_EXD_QUALIFIERS_SHIFTER (FIT_CAST(FIT_EXD_QUALIFIERS, 30))
|
|
#define FIT_EXD_QUALIFIERS_LAST_SPORT (FIT_CAST(FIT_EXD_QUALIFIERS, 31))
|
|
#define FIT_EXD_QUALIFIERS_MOVING (FIT_CAST(FIT_EXD_QUALIFIERS, 32))
|
|
#define FIT_EXD_QUALIFIERS_STOPPED (FIT_CAST(FIT_EXD_QUALIFIERS, 33))
|
|
#define FIT_EXD_QUALIFIERS_ESTIMATED_TOTAL (FIT_CAST(FIT_EXD_QUALIFIERS, 34))
|
|
#define FIT_EXD_QUALIFIERS_ZONE_9 (FIT_CAST(FIT_EXD_QUALIFIERS, 242))
|
|
#define FIT_EXD_QUALIFIERS_ZONE_8 (FIT_CAST(FIT_EXD_QUALIFIERS, 243))
|
|
#define FIT_EXD_QUALIFIERS_ZONE_7 (FIT_CAST(FIT_EXD_QUALIFIERS, 244))
|
|
#define FIT_EXD_QUALIFIERS_ZONE_6 (FIT_CAST(FIT_EXD_QUALIFIERS, 245))
|
|
#define FIT_EXD_QUALIFIERS_ZONE_5 (FIT_CAST(FIT_EXD_QUALIFIERS, 246))
|
|
#define FIT_EXD_QUALIFIERS_ZONE_4 (FIT_CAST(FIT_EXD_QUALIFIERS, 247))
|
|
#define FIT_EXD_QUALIFIERS_ZONE_3 (FIT_CAST(FIT_EXD_QUALIFIERS, 248))
|
|
#define FIT_EXD_QUALIFIERS_ZONE_2 (FIT_CAST(FIT_EXD_QUALIFIERS, 249))
|
|
#define FIT_EXD_QUALIFIERS_ZONE_1 (FIT_CAST(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_CAST(FIT_EXD_DESCRIPTORS, 0))
|
|
#define FIT_EXD_DESCRIPTORS_BEAM_ANGLE_STATUS (FIT_CAST(FIT_EXD_DESCRIPTORS, 1))
|
|
#define FIT_EXD_DESCRIPTORS_BATERY_LEVEL (FIT_CAST(FIT_EXD_DESCRIPTORS, 2))
|
|
#define FIT_EXD_DESCRIPTORS_LIGHT_NETWORK_MODE (FIT_CAST(FIT_EXD_DESCRIPTORS, 3))
|
|
#define FIT_EXD_DESCRIPTORS_NUMBER_LIGHTS_CONNECTED (FIT_CAST(FIT_EXD_DESCRIPTORS, 4))
|
|
#define FIT_EXD_DESCRIPTORS_CADENCE (FIT_CAST(FIT_EXD_DESCRIPTORS, 5))
|
|
#define FIT_EXD_DESCRIPTORS_DISTANCE (FIT_CAST(FIT_EXD_DESCRIPTORS, 6))
|
|
#define FIT_EXD_DESCRIPTORS_ESTIMATED_TIME_OF_ARRIVAL (FIT_CAST(FIT_EXD_DESCRIPTORS, 7))
|
|
#define FIT_EXD_DESCRIPTORS_HEADING (FIT_CAST(FIT_EXD_DESCRIPTORS, 8))
|
|
#define FIT_EXD_DESCRIPTORS_TIME (FIT_CAST(FIT_EXD_DESCRIPTORS, 9))
|
|
#define FIT_EXD_DESCRIPTORS_BATTERY_LEVEL (FIT_CAST(FIT_EXD_DESCRIPTORS, 10))
|
|
#define FIT_EXD_DESCRIPTORS_TRAINER_RESISTANCE (FIT_CAST(FIT_EXD_DESCRIPTORS, 11))
|
|
#define FIT_EXD_DESCRIPTORS_TRAINER_TARGET_POWER (FIT_CAST(FIT_EXD_DESCRIPTORS, 12))
|
|
#define FIT_EXD_DESCRIPTORS_TIME_SEATED (FIT_CAST(FIT_EXD_DESCRIPTORS, 13))
|
|
#define FIT_EXD_DESCRIPTORS_TIME_STANDING (FIT_CAST(FIT_EXD_DESCRIPTORS, 14))
|
|
#define FIT_EXD_DESCRIPTORS_ELEVATION (FIT_CAST(FIT_EXD_DESCRIPTORS, 15))
|
|
#define FIT_EXD_DESCRIPTORS_GRADE (FIT_CAST(FIT_EXD_DESCRIPTORS, 16))
|
|
#define FIT_EXD_DESCRIPTORS_ASCENT (FIT_CAST(FIT_EXD_DESCRIPTORS, 17))
|
|
#define FIT_EXD_DESCRIPTORS_DESCENT (FIT_CAST(FIT_EXD_DESCRIPTORS, 18))
|
|
#define FIT_EXD_DESCRIPTORS_VERTICAL_SPEED (FIT_CAST(FIT_EXD_DESCRIPTORS, 19))
|
|
#define FIT_EXD_DESCRIPTORS_DI2_BATTERY_LEVEL (FIT_CAST(FIT_EXD_DESCRIPTORS, 20))
|
|
#define FIT_EXD_DESCRIPTORS_FRONT_GEAR (FIT_CAST(FIT_EXD_DESCRIPTORS, 21))
|
|
#define FIT_EXD_DESCRIPTORS_REAR_GEAR (FIT_CAST(FIT_EXD_DESCRIPTORS, 22))
|
|
#define FIT_EXD_DESCRIPTORS_GEAR_RATIO (FIT_CAST(FIT_EXD_DESCRIPTORS, 23))
|
|
#define FIT_EXD_DESCRIPTORS_HEART_RATE (FIT_CAST(FIT_EXD_DESCRIPTORS, 24))
|
|
#define FIT_EXD_DESCRIPTORS_HEART_RATE_ZONE (FIT_CAST(FIT_EXD_DESCRIPTORS, 25))
|
|
#define FIT_EXD_DESCRIPTORS_TIME_IN_HEART_RATE_ZONE (FIT_CAST(FIT_EXD_DESCRIPTORS, 26))
|
|
#define FIT_EXD_DESCRIPTORS_HEART_RATE_RESERVE (FIT_CAST(FIT_EXD_DESCRIPTORS, 27))
|
|
#define FIT_EXD_DESCRIPTORS_CALORIES (FIT_CAST(FIT_EXD_DESCRIPTORS, 28))
|
|
#define FIT_EXD_DESCRIPTORS_GPS_ACCURACY (FIT_CAST(FIT_EXD_DESCRIPTORS, 29))
|
|
#define FIT_EXD_DESCRIPTORS_GPS_SIGNAL_STRENGTH (FIT_CAST(FIT_EXD_DESCRIPTORS, 30))
|
|
#define FIT_EXD_DESCRIPTORS_TEMPERATURE (FIT_CAST(FIT_EXD_DESCRIPTORS, 31))
|
|
#define FIT_EXD_DESCRIPTORS_TIME_OF_DAY (FIT_CAST(FIT_EXD_DESCRIPTORS, 32))
|
|
#define FIT_EXD_DESCRIPTORS_BALANCE (FIT_CAST(FIT_EXD_DESCRIPTORS, 33))
|
|
#define FIT_EXD_DESCRIPTORS_PEDAL_SMOOTHNESS (FIT_CAST(FIT_EXD_DESCRIPTORS, 34))
|
|
#define FIT_EXD_DESCRIPTORS_POWER (FIT_CAST(FIT_EXD_DESCRIPTORS, 35))
|
|
#define FIT_EXD_DESCRIPTORS_FUNCTIONAL_THRESHOLD_POWER (FIT_CAST(FIT_EXD_DESCRIPTORS, 36))
|
|
#define FIT_EXD_DESCRIPTORS_INTENSITY_FACTOR (FIT_CAST(FIT_EXD_DESCRIPTORS, 37))
|
|
#define FIT_EXD_DESCRIPTORS_WORK (FIT_CAST(FIT_EXD_DESCRIPTORS, 38))
|
|
#define FIT_EXD_DESCRIPTORS_POWER_RATIO (FIT_CAST(FIT_EXD_DESCRIPTORS, 39))
|
|
#define FIT_EXD_DESCRIPTORS_NORMALIZED_POWER (FIT_CAST(FIT_EXD_DESCRIPTORS, 40))
|
|
#define FIT_EXD_DESCRIPTORS_TRAINING_STRESS_SCORE (FIT_CAST(FIT_EXD_DESCRIPTORS, 41))
|
|
#define FIT_EXD_DESCRIPTORS_TIME_ON_ZONE (FIT_CAST(FIT_EXD_DESCRIPTORS, 42))
|
|
#define FIT_EXD_DESCRIPTORS_SPEED (FIT_CAST(FIT_EXD_DESCRIPTORS, 43))
|
|
#define FIT_EXD_DESCRIPTORS_LAPS (FIT_CAST(FIT_EXD_DESCRIPTORS, 44))
|
|
#define FIT_EXD_DESCRIPTORS_REPS (FIT_CAST(FIT_EXD_DESCRIPTORS, 45))
|
|
#define FIT_EXD_DESCRIPTORS_WORKOUT_STEP (FIT_CAST(FIT_EXD_DESCRIPTORS, 46))
|
|
#define FIT_EXD_DESCRIPTORS_COURSE_DISTANCE (FIT_CAST(FIT_EXD_DESCRIPTORS, 47))
|
|
#define FIT_EXD_DESCRIPTORS_NAVIGATION_DISTANCE (FIT_CAST(FIT_EXD_DESCRIPTORS, 48))
|
|
#define FIT_EXD_DESCRIPTORS_COURSE_ESTIMATED_TIME_OF_ARRIVAL (FIT_CAST(FIT_EXD_DESCRIPTORS, 49))
|
|
#define FIT_EXD_DESCRIPTORS_NAVIGATION_ESTIMATED_TIME_OF_ARRIVAL (FIT_CAST(FIT_EXD_DESCRIPTORS, 50))
|
|
#define FIT_EXD_DESCRIPTORS_COURSE_TIME (FIT_CAST(FIT_EXD_DESCRIPTORS, 51))
|
|
#define FIT_EXD_DESCRIPTORS_NAVIGATION_TIME (FIT_CAST(FIT_EXD_DESCRIPTORS, 52))
|
|
#define FIT_EXD_DESCRIPTORS_COURSE_HEADING (FIT_CAST(FIT_EXD_DESCRIPTORS, 53))
|
|
#define FIT_EXD_DESCRIPTORS_NAVIGATION_HEADING (FIT_CAST(FIT_EXD_DESCRIPTORS, 54))
|
|
#define FIT_EXD_DESCRIPTORS_POWER_ZONE (FIT_CAST(FIT_EXD_DESCRIPTORS, 55))
|
|
#define FIT_EXD_DESCRIPTORS_TORQUE_EFFECTIVENESS (FIT_CAST(FIT_EXD_DESCRIPTORS, 56))
|
|
#define FIT_EXD_DESCRIPTORS_TIMER_TIME (FIT_CAST(FIT_EXD_DESCRIPTORS, 57))
|
|
#define FIT_EXD_DESCRIPTORS_POWER_WEIGHT_RATIO (FIT_CAST(FIT_EXD_DESCRIPTORS, 58))
|
|
#define FIT_EXD_DESCRIPTORS_LEFT_PLATFORM_CENTER_OFFSET (FIT_CAST(FIT_EXD_DESCRIPTORS, 59))
|
|
#define FIT_EXD_DESCRIPTORS_RIGHT_PLATFORM_CENTER_OFFSET (FIT_CAST(FIT_EXD_DESCRIPTORS, 60))
|
|
#define FIT_EXD_DESCRIPTORS_LEFT_POWER_PHASE_START_ANGLE (FIT_CAST(FIT_EXD_DESCRIPTORS, 61))
|
|
#define FIT_EXD_DESCRIPTORS_RIGHT_POWER_PHASE_START_ANGLE (FIT_CAST(FIT_EXD_DESCRIPTORS, 62))
|
|
#define FIT_EXD_DESCRIPTORS_LEFT_POWER_PHASE_FINISH_ANGLE (FIT_CAST(FIT_EXD_DESCRIPTORS, 63))
|
|
#define FIT_EXD_DESCRIPTORS_RIGHT_POWER_PHASE_FINISH_ANGLE (FIT_CAST(FIT_EXD_DESCRIPTORS, 64))
|
|
#define FIT_EXD_DESCRIPTORS_GEARS (FIT_CAST(FIT_EXD_DESCRIPTORS, 65)) // Combined gear information
|
|
#define FIT_EXD_DESCRIPTORS_PACE (FIT_CAST(FIT_EXD_DESCRIPTORS, 66))
|
|
#define FIT_EXD_DESCRIPTORS_TRAINING_EFFECT (FIT_CAST(FIT_EXD_DESCRIPTORS, 67))
|
|
#define FIT_EXD_DESCRIPTORS_VERTICAL_OSCILLATION (FIT_CAST(FIT_EXD_DESCRIPTORS, 68))
|
|
#define FIT_EXD_DESCRIPTORS_VERTICAL_RATIO (FIT_CAST(FIT_EXD_DESCRIPTORS, 69))
|
|
#define FIT_EXD_DESCRIPTORS_GROUND_CONTACT_TIME (FIT_CAST(FIT_EXD_DESCRIPTORS, 70))
|
|
#define FIT_EXD_DESCRIPTORS_LEFT_GROUND_CONTACT_TIME_BALANCE (FIT_CAST(FIT_EXD_DESCRIPTORS, 71))
|
|
#define FIT_EXD_DESCRIPTORS_RIGHT_GROUND_CONTACT_TIME_BALANCE (FIT_CAST(FIT_EXD_DESCRIPTORS, 72))
|
|
#define FIT_EXD_DESCRIPTORS_STRIDE_LENGTH (FIT_CAST(FIT_EXD_DESCRIPTORS, 73))
|
|
#define FIT_EXD_DESCRIPTORS_RUNNING_CADENCE (FIT_CAST(FIT_EXD_DESCRIPTORS, 74))
|
|
#define FIT_EXD_DESCRIPTORS_PERFORMANCE_CONDITION (FIT_CAST(FIT_EXD_DESCRIPTORS, 75))
|
|
#define FIT_EXD_DESCRIPTORS_COURSE_TYPE (FIT_CAST(FIT_EXD_DESCRIPTORS, 76))
|
|
#define FIT_EXD_DESCRIPTORS_TIME_IN_POWER_ZONE (FIT_CAST(FIT_EXD_DESCRIPTORS, 77))
|
|
#define FIT_EXD_DESCRIPTORS_NAVIGATION_TURN (FIT_CAST(FIT_EXD_DESCRIPTORS, 78))
|
|
#define FIT_EXD_DESCRIPTORS_COURSE_LOCATION (FIT_CAST(FIT_EXD_DESCRIPTORS, 79))
|
|
#define FIT_EXD_DESCRIPTORS_NAVIGATION_LOCATION (FIT_CAST(FIT_EXD_DESCRIPTORS, 80))
|
|
#define FIT_EXD_DESCRIPTORS_COMPASS (FIT_CAST(FIT_EXD_DESCRIPTORS, 81))
|
|
#define FIT_EXD_DESCRIPTORS_GEAR_COMBO (FIT_CAST(FIT_EXD_DESCRIPTORS, 82))
|
|
#define FIT_EXD_DESCRIPTORS_MUSCLE_OXYGEN (FIT_CAST(FIT_EXD_DESCRIPTORS, 83))
|
|
#define FIT_EXD_DESCRIPTORS_ICON (FIT_CAST(FIT_EXD_DESCRIPTORS, 84))
|
|
#define FIT_EXD_DESCRIPTORS_COMPASS_HEADING (FIT_CAST(FIT_EXD_DESCRIPTORS, 85))
|
|
#define FIT_EXD_DESCRIPTORS_GPS_HEADING (FIT_CAST(FIT_EXD_DESCRIPTORS, 86))
|
|
#define FIT_EXD_DESCRIPTORS_GPS_ELEVATION (FIT_CAST(FIT_EXD_DESCRIPTORS, 87))
|
|
#define FIT_EXD_DESCRIPTORS_ANAEROBIC_TRAINING_EFFECT (FIT_CAST(FIT_EXD_DESCRIPTORS, 88))
|
|
#define FIT_EXD_DESCRIPTORS_COURSE (FIT_CAST(FIT_EXD_DESCRIPTORS, 89))
|
|
#define FIT_EXD_DESCRIPTORS_OFF_COURSE (FIT_CAST(FIT_EXD_DESCRIPTORS, 90))
|
|
#define FIT_EXD_DESCRIPTORS_GLIDE_RATIO (FIT_CAST(FIT_EXD_DESCRIPTORS, 91))
|
|
#define FIT_EXD_DESCRIPTORS_VERTICAL_DISTANCE (FIT_CAST(FIT_EXD_DESCRIPTORS, 92))
|
|
#define FIT_EXD_DESCRIPTORS_VMG (FIT_CAST(FIT_EXD_DESCRIPTORS, 93))
|
|
#define FIT_EXD_DESCRIPTORS_AMBIENT_PRESSURE (FIT_CAST(FIT_EXD_DESCRIPTORS, 94))
|
|
#define FIT_EXD_DESCRIPTORS_PRESSURE (FIT_CAST(FIT_EXD_DESCRIPTORS, 95))
|
|
#define FIT_EXD_DESCRIPTORS_VAM (FIT_CAST(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_CAST(FIT_AUTO_ACTIVITY_DETECT, 0x00000000))
|
|
#define FIT_AUTO_ACTIVITY_DETECT_RUNNING (FIT_CAST(FIT_AUTO_ACTIVITY_DETECT, 0x00000001))
|
|
#define FIT_AUTO_ACTIVITY_DETECT_CYCLING (FIT_CAST(FIT_AUTO_ACTIVITY_DETECT, 0x00000002))
|
|
#define FIT_AUTO_ACTIVITY_DETECT_SWIMMING (FIT_CAST(FIT_AUTO_ACTIVITY_DETECT, 0x00000004))
|
|
#define FIT_AUTO_ACTIVITY_DETECT_WALKING (FIT_CAST(FIT_AUTO_ACTIVITY_DETECT, 0x00000008))
|
|
#define FIT_AUTO_ACTIVITY_DETECT_ELLIPTICAL (FIT_CAST(FIT_AUTO_ACTIVITY_DETECT, 0x00000020))
|
|
#define FIT_AUTO_ACTIVITY_DETECT_SEDENTARY (FIT_CAST(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_CAST(FIT_SUPPORTED_EXD_SCREEN_LAYOUTS, 0x00000001))
|
|
#define FIT_SUPPORTED_EXD_SCREEN_LAYOUTS_HALF_VERTICAL (FIT_CAST(FIT_SUPPORTED_EXD_SCREEN_LAYOUTS, 0x00000002))
|
|
#define FIT_SUPPORTED_EXD_SCREEN_LAYOUTS_HALF_HORIZONTAL (FIT_CAST(FIT_SUPPORTED_EXD_SCREEN_LAYOUTS, 0x00000004))
|
|
#define FIT_SUPPORTED_EXD_SCREEN_LAYOUTS_HALF_VERTICAL_RIGHT_SPLIT (FIT_CAST(FIT_SUPPORTED_EXD_SCREEN_LAYOUTS, 0x00000008))
|
|
#define FIT_SUPPORTED_EXD_SCREEN_LAYOUTS_HALF_HORIZONTAL_BOTTOM_SPLIT (FIT_CAST(FIT_SUPPORTED_EXD_SCREEN_LAYOUTS, 0x00000010))
|
|
#define FIT_SUPPORTED_EXD_SCREEN_LAYOUTS_FULL_QUARTER_SPLIT (FIT_CAST(FIT_SUPPORTED_EXD_SCREEN_LAYOUTS, 0x00000020))
|
|
#define FIT_SUPPORTED_EXD_SCREEN_LAYOUTS_HALF_VERTICAL_LEFT_SPLIT (FIT_CAST(FIT_SUPPORTED_EXD_SCREEN_LAYOUTS, 0x00000040))
|
|
#define FIT_SUPPORTED_EXD_SCREEN_LAYOUTS_HALF_HORIZONTAL_TOP_SPLIT (FIT_CAST(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_CAST(FIT_FIT_BASE_TYPE, 0))
|
|
#define FIT_FIT_BASE_TYPE_SINT8 (FIT_CAST(FIT_FIT_BASE_TYPE, 1))
|
|
#define FIT_FIT_BASE_TYPE_UINT8 (FIT_CAST(FIT_FIT_BASE_TYPE, 2))
|
|
#define FIT_FIT_BASE_TYPE_SINT16 (FIT_CAST(FIT_FIT_BASE_TYPE, 131))
|
|
#define FIT_FIT_BASE_TYPE_UINT16 (FIT_CAST(FIT_FIT_BASE_TYPE, 132))
|
|
#define FIT_FIT_BASE_TYPE_SINT32 (FIT_CAST(FIT_FIT_BASE_TYPE, 133))
|
|
#define FIT_FIT_BASE_TYPE_UINT32 (FIT_CAST(FIT_FIT_BASE_TYPE, 134))
|
|
#define FIT_FIT_BASE_TYPE_STRING (FIT_CAST(FIT_FIT_BASE_TYPE, 7))
|
|
#define FIT_FIT_BASE_TYPE_FLOAT32 (FIT_CAST(FIT_FIT_BASE_TYPE, 136))
|
|
#define FIT_FIT_BASE_TYPE_FLOAT64 (FIT_CAST(FIT_FIT_BASE_TYPE, 137))
|
|
#define FIT_FIT_BASE_TYPE_UINT8Z (FIT_CAST(FIT_FIT_BASE_TYPE, 10))
|
|
#define FIT_FIT_BASE_TYPE_UINT16Z (FIT_CAST(FIT_FIT_BASE_TYPE, 139))
|
|
#define FIT_FIT_BASE_TYPE_UINT32Z (FIT_CAST(FIT_FIT_BASE_TYPE, 140))
|
|
#define FIT_FIT_BASE_TYPE_BYTE (FIT_CAST(FIT_FIT_BASE_TYPE, 13))
|
|
#define FIT_FIT_BASE_TYPE_SINT64 (FIT_CAST(FIT_FIT_BASE_TYPE, 142))
|
|
#define FIT_FIT_BASE_TYPE_UINT64 (FIT_CAST(FIT_FIT_BASE_TYPE, 143))
|
|
#define FIT_FIT_BASE_TYPE_UINT64Z (FIT_CAST(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_CAST(FIT_TURN_TYPE, 0))
|
|
#define FIT_TURN_TYPE_ARRIVING_LEFT_IDX (FIT_CAST(FIT_TURN_TYPE, 1))
|
|
#define FIT_TURN_TYPE_ARRIVING_RIGHT_IDX (FIT_CAST(FIT_TURN_TYPE, 2))
|
|
#define FIT_TURN_TYPE_ARRIVING_VIA_IDX (FIT_CAST(FIT_TURN_TYPE, 3))
|
|
#define FIT_TURN_TYPE_ARRIVING_VIA_LEFT_IDX (FIT_CAST(FIT_TURN_TYPE, 4))
|
|
#define FIT_TURN_TYPE_ARRIVING_VIA_RIGHT_IDX (FIT_CAST(FIT_TURN_TYPE, 5))
|
|
#define FIT_TURN_TYPE_BEAR_KEEP_LEFT_IDX (FIT_CAST(FIT_TURN_TYPE, 6))
|
|
#define FIT_TURN_TYPE_BEAR_KEEP_RIGHT_IDX (FIT_CAST(FIT_TURN_TYPE, 7))
|
|
#define FIT_TURN_TYPE_CONTINUE_IDX (FIT_CAST(FIT_TURN_TYPE, 8))
|
|
#define FIT_TURN_TYPE_EXIT_LEFT_IDX (FIT_CAST(FIT_TURN_TYPE, 9))
|
|
#define FIT_TURN_TYPE_EXIT_RIGHT_IDX (FIT_CAST(FIT_TURN_TYPE, 10))
|
|
#define FIT_TURN_TYPE_FERRY_IDX (FIT_CAST(FIT_TURN_TYPE, 11))
|
|
#define FIT_TURN_TYPE_ROUNDABOUT_45_IDX (FIT_CAST(FIT_TURN_TYPE, 12))
|
|
#define FIT_TURN_TYPE_ROUNDABOUT_90_IDX (FIT_CAST(FIT_TURN_TYPE, 13))
|
|
#define FIT_TURN_TYPE_ROUNDABOUT_135_IDX (FIT_CAST(FIT_TURN_TYPE, 14))
|
|
#define FIT_TURN_TYPE_ROUNDABOUT_180_IDX (FIT_CAST(FIT_TURN_TYPE, 15))
|
|
#define FIT_TURN_TYPE_ROUNDABOUT_225_IDX (FIT_CAST(FIT_TURN_TYPE, 16))
|
|
#define FIT_TURN_TYPE_ROUNDABOUT_270_IDX (FIT_CAST(FIT_TURN_TYPE, 17))
|
|
#define FIT_TURN_TYPE_ROUNDABOUT_315_IDX (FIT_CAST(FIT_TURN_TYPE, 18))
|
|
#define FIT_TURN_TYPE_ROUNDABOUT_360_IDX (FIT_CAST(FIT_TURN_TYPE, 19))
|
|
#define FIT_TURN_TYPE_ROUNDABOUT_NEG_45_IDX (FIT_CAST(FIT_TURN_TYPE, 20))
|
|
#define FIT_TURN_TYPE_ROUNDABOUT_NEG_90_IDX (FIT_CAST(FIT_TURN_TYPE, 21))
|
|
#define FIT_TURN_TYPE_ROUNDABOUT_NEG_135_IDX (FIT_CAST(FIT_TURN_TYPE, 22))
|
|
#define FIT_TURN_TYPE_ROUNDABOUT_NEG_180_IDX (FIT_CAST(FIT_TURN_TYPE, 23))
|
|
#define FIT_TURN_TYPE_ROUNDABOUT_NEG_225_IDX (FIT_CAST(FIT_TURN_TYPE, 24))
|
|
#define FIT_TURN_TYPE_ROUNDABOUT_NEG_270_IDX (FIT_CAST(FIT_TURN_TYPE, 25))
|
|
#define FIT_TURN_TYPE_ROUNDABOUT_NEG_315_IDX (FIT_CAST(FIT_TURN_TYPE, 26))
|
|
#define FIT_TURN_TYPE_ROUNDABOUT_NEG_360_IDX (FIT_CAST(FIT_TURN_TYPE, 27))
|
|
#define FIT_TURN_TYPE_ROUNDABOUT_GENERIC_IDX (FIT_CAST(FIT_TURN_TYPE, 28))
|
|
#define FIT_TURN_TYPE_ROUNDABOUT_NEG_GENERIC_IDX (FIT_CAST(FIT_TURN_TYPE, 29))
|
|
#define FIT_TURN_TYPE_SHARP_TURN_LEFT_IDX (FIT_CAST(FIT_TURN_TYPE, 30))
|
|
#define FIT_TURN_TYPE_SHARP_TURN_RIGHT_IDX (FIT_CAST(FIT_TURN_TYPE, 31))
|
|
#define FIT_TURN_TYPE_TURN_LEFT_IDX (FIT_CAST(FIT_TURN_TYPE, 32))
|
|
#define FIT_TURN_TYPE_TURN_RIGHT_IDX (FIT_CAST(FIT_TURN_TYPE, 33))
|
|
#define FIT_TURN_TYPE_UTURN_LEFT_IDX (FIT_CAST(FIT_TURN_TYPE, 34))
|
|
#define FIT_TURN_TYPE_UTURN_RIGHT_IDX (FIT_CAST(FIT_TURN_TYPE, 35))
|
|
#define FIT_TURN_TYPE_ICON_INV_IDX (FIT_CAST(FIT_TURN_TYPE, 36))
|
|
#define FIT_TURN_TYPE_ICON_IDX_CNT (FIT_CAST(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_CAST(FIT_BIKE_LIGHT_BEAM_ANGLE_MODE, 0))
|
|
#define FIT_BIKE_LIGHT_BEAM_ANGLE_MODE_AUTO (FIT_CAST(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_CAST(FIT_FIT_BASE_UNIT, 0))
|
|
#define FIT_FIT_BASE_UNIT_KILOGRAM (FIT_CAST(FIT_FIT_BASE_UNIT, 1))
|
|
#define FIT_FIT_BASE_UNIT_POUND (FIT_CAST(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_CAST(FIT_SET_TYPE, 0))
|
|
#define FIT_SET_TYPE_ACTIVE (FIT_CAST(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_CAST(FIT_MAX_MET_CATEGORY, 0))
|
|
#define FIT_MAX_MET_CATEGORY_CYCLING (FIT_CAST(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_CAST(FIT_EXERCISE_CATEGORY, 0))
|
|
#define FIT_EXERCISE_CATEGORY_CALF_RAISE (FIT_CAST(FIT_EXERCISE_CATEGORY, 1))
|
|
#define FIT_EXERCISE_CATEGORY_CARDIO (FIT_CAST(FIT_EXERCISE_CATEGORY, 2))
|
|
#define FIT_EXERCISE_CATEGORY_CARRY (FIT_CAST(FIT_EXERCISE_CATEGORY, 3))
|
|
#define FIT_EXERCISE_CATEGORY_CHOP (FIT_CAST(FIT_EXERCISE_CATEGORY, 4))
|
|
#define FIT_EXERCISE_CATEGORY_CORE (FIT_CAST(FIT_EXERCISE_CATEGORY, 5))
|
|
#define FIT_EXERCISE_CATEGORY_CRUNCH (FIT_CAST(FIT_EXERCISE_CATEGORY, 6))
|
|
#define FIT_EXERCISE_CATEGORY_CURL (FIT_CAST(FIT_EXERCISE_CATEGORY, 7))
|
|
#define FIT_EXERCISE_CATEGORY_DEADLIFT (FIT_CAST(FIT_EXERCISE_CATEGORY, 8))
|
|
#define FIT_EXERCISE_CATEGORY_FLYE (FIT_CAST(FIT_EXERCISE_CATEGORY, 9))
|
|
#define FIT_EXERCISE_CATEGORY_HIP_RAISE (FIT_CAST(FIT_EXERCISE_CATEGORY, 10))
|
|
#define FIT_EXERCISE_CATEGORY_HIP_STABILITY (FIT_CAST(FIT_EXERCISE_CATEGORY, 11))
|
|
#define FIT_EXERCISE_CATEGORY_HIP_SWING (FIT_CAST(FIT_EXERCISE_CATEGORY, 12))
|
|
#define FIT_EXERCISE_CATEGORY_HYPEREXTENSION (FIT_CAST(FIT_EXERCISE_CATEGORY, 13))
|
|
#define FIT_EXERCISE_CATEGORY_LATERAL_RAISE (FIT_CAST(FIT_EXERCISE_CATEGORY, 14))
|
|
#define FIT_EXERCISE_CATEGORY_LEG_CURL (FIT_CAST(FIT_EXERCISE_CATEGORY, 15))
|
|
#define FIT_EXERCISE_CATEGORY_LEG_RAISE (FIT_CAST(FIT_EXERCISE_CATEGORY, 16))
|
|
#define FIT_EXERCISE_CATEGORY_LUNGE (FIT_CAST(FIT_EXERCISE_CATEGORY, 17))
|
|
#define FIT_EXERCISE_CATEGORY_OLYMPIC_LIFT (FIT_CAST(FIT_EXERCISE_CATEGORY, 18))
|
|
#define FIT_EXERCISE_CATEGORY_PLANK (FIT_CAST(FIT_EXERCISE_CATEGORY, 19))
|
|
#define FIT_EXERCISE_CATEGORY_PLYO (FIT_CAST(FIT_EXERCISE_CATEGORY, 20))
|
|
#define FIT_EXERCISE_CATEGORY_PULL_UP (FIT_CAST(FIT_EXERCISE_CATEGORY, 21))
|
|
#define FIT_EXERCISE_CATEGORY_PUSH_UP (FIT_CAST(FIT_EXERCISE_CATEGORY, 22))
|
|
#define FIT_EXERCISE_CATEGORY_ROW (FIT_CAST(FIT_EXERCISE_CATEGORY, 23))
|
|
#define FIT_EXERCISE_CATEGORY_SHOULDER_PRESS (FIT_CAST(FIT_EXERCISE_CATEGORY, 24))
|
|
#define FIT_EXERCISE_CATEGORY_SHOULDER_STABILITY (FIT_CAST(FIT_EXERCISE_CATEGORY, 25))
|
|
#define FIT_EXERCISE_CATEGORY_SHRUG (FIT_CAST(FIT_EXERCISE_CATEGORY, 26))
|
|
#define FIT_EXERCISE_CATEGORY_SIT_UP (FIT_CAST(FIT_EXERCISE_CATEGORY, 27))
|
|
#define FIT_EXERCISE_CATEGORY_SQUAT (FIT_CAST(FIT_EXERCISE_CATEGORY, 28))
|
|
#define FIT_EXERCISE_CATEGORY_TOTAL_BODY (FIT_CAST(FIT_EXERCISE_CATEGORY, 29))
|
|
#define FIT_EXERCISE_CATEGORY_TRICEPS_EXTENSION (FIT_CAST(FIT_EXERCISE_CATEGORY, 30))
|
|
#define FIT_EXERCISE_CATEGORY_WARM_UP (FIT_CAST(FIT_EXERCISE_CATEGORY, 31))
|
|
#define FIT_EXERCISE_CATEGORY_RUN (FIT_CAST(FIT_EXERCISE_CATEGORY, 32))
|
|
#define FIT_EXERCISE_CATEGORY_BIKE (FIT_CAST(FIT_EXERCISE_CATEGORY, 33))
|
|
#define FIT_EXERCISE_CATEGORY_CARDIO_SENSORS (FIT_CAST(FIT_EXERCISE_CATEGORY, 34)) // Exercises within workouts that use GPS/sensors rather than rep counting
|
|
#define FIT_EXERCISE_CATEGORY_MOVE (FIT_CAST(FIT_EXERCISE_CATEGORY, 35))
|
|
#define FIT_EXERCISE_CATEGORY_POSE (FIT_CAST(FIT_EXERCISE_CATEGORY, 36))
|
|
#define FIT_EXERCISE_CATEGORY_BANDED_EXERCISES (FIT_CAST(FIT_EXERCISE_CATEGORY, 37))
|
|
#define FIT_EXERCISE_CATEGORY_BATTLE_ROPE (FIT_CAST(FIT_EXERCISE_CATEGORY, 38))
|
|
#define FIT_EXERCISE_CATEGORY_ELLIPTICAL (FIT_CAST(FIT_EXERCISE_CATEGORY, 39))
|
|
#define FIT_EXERCISE_CATEGORY_FLOOR_CLIMB (FIT_CAST(FIT_EXERCISE_CATEGORY, 40))
|
|
#define FIT_EXERCISE_CATEGORY_INDOOR_BIKE (FIT_CAST(FIT_EXERCISE_CATEGORY, 41))
|
|
#define FIT_EXERCISE_CATEGORY_INDOOR_ROW (FIT_CAST(FIT_EXERCISE_CATEGORY, 42))
|
|
#define FIT_EXERCISE_CATEGORY_LADDER (FIT_CAST(FIT_EXERCISE_CATEGORY, 43))
|
|
#define FIT_EXERCISE_CATEGORY_SANDBAG (FIT_CAST(FIT_EXERCISE_CATEGORY, 44))
|
|
#define FIT_EXERCISE_CATEGORY_SLED (FIT_CAST(FIT_EXERCISE_CATEGORY, 45))
|
|
#define FIT_EXERCISE_CATEGORY_SLEDGE_HAMMER (FIT_CAST(FIT_EXERCISE_CATEGORY, 46))
|
|
#define FIT_EXERCISE_CATEGORY_STAIR_STEPPER (FIT_CAST(FIT_EXERCISE_CATEGORY, 47))
|
|
#define FIT_EXERCISE_CATEGORY_SUSPENSION (FIT_CAST(FIT_EXERCISE_CATEGORY, 49))
|
|
#define FIT_EXERCISE_CATEGORY_TIRE (FIT_CAST(FIT_EXERCISE_CATEGORY, 50))
|
|
#define FIT_EXERCISE_CATEGORY_RUN_INDOOR (FIT_CAST(FIT_EXERCISE_CATEGORY, 52))
|
|
#define FIT_EXERCISE_CATEGORY_BIKE_OUTDOOR (FIT_CAST(FIT_EXERCISE_CATEGORY, 53))
|
|
#define FIT_EXERCISE_CATEGORY_UNKNOWN (FIT_CAST(FIT_EXERCISE_CATEGORY, 65534))
|
|
#define FIT_EXERCISE_CATEGORY_COUNT 53
|
|
|
|
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_CAST(FIT_BENCH_PRESS_EXERCISE_NAME, 0))
|
|
#define FIT_BENCH_PRESS_EXERCISE_NAME_BARBELL_BENCH_PRESS (FIT_CAST(FIT_BENCH_PRESS_EXERCISE_NAME, 1))
|
|
#define FIT_BENCH_PRESS_EXERCISE_NAME_BARBELL_BOARD_BENCH_PRESS (FIT_CAST(FIT_BENCH_PRESS_EXERCISE_NAME, 2))
|
|
#define FIT_BENCH_PRESS_EXERCISE_NAME_BARBELL_FLOOR_PRESS (FIT_CAST(FIT_BENCH_PRESS_EXERCISE_NAME, 3))
|
|
#define FIT_BENCH_PRESS_EXERCISE_NAME_CLOSE_GRIP_BARBELL_BENCH_PRESS (FIT_CAST(FIT_BENCH_PRESS_EXERCISE_NAME, 4))
|
|
#define FIT_BENCH_PRESS_EXERCISE_NAME_DECLINE_DUMBBELL_BENCH_PRESS (FIT_CAST(FIT_BENCH_PRESS_EXERCISE_NAME, 5))
|
|
#define FIT_BENCH_PRESS_EXERCISE_NAME_DUMBBELL_BENCH_PRESS (FIT_CAST(FIT_BENCH_PRESS_EXERCISE_NAME, 6))
|
|
#define FIT_BENCH_PRESS_EXERCISE_NAME_DUMBBELL_FLOOR_PRESS (FIT_CAST(FIT_BENCH_PRESS_EXERCISE_NAME, 7))
|
|
#define FIT_BENCH_PRESS_EXERCISE_NAME_INCLINE_BARBELL_BENCH_PRESS (FIT_CAST(FIT_BENCH_PRESS_EXERCISE_NAME, 8))
|
|
#define FIT_BENCH_PRESS_EXERCISE_NAME_INCLINE_DUMBBELL_BENCH_PRESS (FIT_CAST(FIT_BENCH_PRESS_EXERCISE_NAME, 9))
|
|
#define FIT_BENCH_PRESS_EXERCISE_NAME_INCLINE_SMITH_MACHINE_BENCH_PRESS (FIT_CAST(FIT_BENCH_PRESS_EXERCISE_NAME, 10))
|
|
#define FIT_BENCH_PRESS_EXERCISE_NAME_ISOMETRIC_BARBELL_BENCH_PRESS (FIT_CAST(FIT_BENCH_PRESS_EXERCISE_NAME, 11))
|
|
#define FIT_BENCH_PRESS_EXERCISE_NAME_KETTLEBELL_CHEST_PRESS (FIT_CAST(FIT_BENCH_PRESS_EXERCISE_NAME, 12))
|
|
#define FIT_BENCH_PRESS_EXERCISE_NAME_NEUTRAL_GRIP_DUMBBELL_BENCH_PRESS (FIT_CAST(FIT_BENCH_PRESS_EXERCISE_NAME, 13))
|
|
#define FIT_BENCH_PRESS_EXERCISE_NAME_NEUTRAL_GRIP_DUMBBELL_INCLINE_BENCH_PRESS (FIT_CAST(FIT_BENCH_PRESS_EXERCISE_NAME, 14))
|
|
#define FIT_BENCH_PRESS_EXERCISE_NAME_ONE_ARM_FLOOR_PRESS (FIT_CAST(FIT_BENCH_PRESS_EXERCISE_NAME, 15))
|
|
#define FIT_BENCH_PRESS_EXERCISE_NAME_WEIGHTED_ONE_ARM_FLOOR_PRESS (FIT_CAST(FIT_BENCH_PRESS_EXERCISE_NAME, 16))
|
|
#define FIT_BENCH_PRESS_EXERCISE_NAME_PARTIAL_LOCKOUT (FIT_CAST(FIT_BENCH_PRESS_EXERCISE_NAME, 17))
|
|
#define FIT_BENCH_PRESS_EXERCISE_NAME_REVERSE_GRIP_BARBELL_BENCH_PRESS (FIT_CAST(FIT_BENCH_PRESS_EXERCISE_NAME, 18))
|
|
#define FIT_BENCH_PRESS_EXERCISE_NAME_REVERSE_GRIP_INCLINE_BENCH_PRESS (FIT_CAST(FIT_BENCH_PRESS_EXERCISE_NAME, 19))
|
|
#define FIT_BENCH_PRESS_EXERCISE_NAME_SINGLE_ARM_CABLE_CHEST_PRESS (FIT_CAST(FIT_BENCH_PRESS_EXERCISE_NAME, 20))
|
|
#define FIT_BENCH_PRESS_EXERCISE_NAME_SINGLE_ARM_DUMBBELL_BENCH_PRESS (FIT_CAST(FIT_BENCH_PRESS_EXERCISE_NAME, 21))
|
|
#define FIT_BENCH_PRESS_EXERCISE_NAME_SMITH_MACHINE_BENCH_PRESS (FIT_CAST(FIT_BENCH_PRESS_EXERCISE_NAME, 22))
|
|
#define FIT_BENCH_PRESS_EXERCISE_NAME_SWISS_BALL_DUMBBELL_CHEST_PRESS (FIT_CAST(FIT_BENCH_PRESS_EXERCISE_NAME, 23))
|
|
#define FIT_BENCH_PRESS_EXERCISE_NAME_TRIPLE_STOP_BARBELL_BENCH_PRESS (FIT_CAST(FIT_BENCH_PRESS_EXERCISE_NAME, 24))
|
|
#define FIT_BENCH_PRESS_EXERCISE_NAME_WIDE_GRIP_BARBELL_BENCH_PRESS (FIT_CAST(FIT_BENCH_PRESS_EXERCISE_NAME, 25))
|
|
#define FIT_BENCH_PRESS_EXERCISE_NAME_ALTERNATING_DUMBBELL_CHEST_PRESS (FIT_CAST(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_CAST(FIT_CALF_RAISE_EXERCISE_NAME, 0))
|
|
#define FIT_CALF_RAISE_EXERCISE_NAME_3_WAY_WEIGHTED_CALF_RAISE (FIT_CAST(FIT_CALF_RAISE_EXERCISE_NAME, 1))
|
|
#define FIT_CALF_RAISE_EXERCISE_NAME_3_WAY_SINGLE_LEG_CALF_RAISE (FIT_CAST(FIT_CALF_RAISE_EXERCISE_NAME, 2))
|
|
#define FIT_CALF_RAISE_EXERCISE_NAME_3_WAY_WEIGHTED_SINGLE_LEG_CALF_RAISE (FIT_CAST(FIT_CALF_RAISE_EXERCISE_NAME, 3))
|
|
#define FIT_CALF_RAISE_EXERCISE_NAME_DONKEY_CALF_RAISE (FIT_CAST(FIT_CALF_RAISE_EXERCISE_NAME, 4))
|
|
#define FIT_CALF_RAISE_EXERCISE_NAME_WEIGHTED_DONKEY_CALF_RAISE (FIT_CAST(FIT_CALF_RAISE_EXERCISE_NAME, 5))
|
|
#define FIT_CALF_RAISE_EXERCISE_NAME_SEATED_CALF_RAISE (FIT_CAST(FIT_CALF_RAISE_EXERCISE_NAME, 6))
|
|
#define FIT_CALF_RAISE_EXERCISE_NAME_WEIGHTED_SEATED_CALF_RAISE (FIT_CAST(FIT_CALF_RAISE_EXERCISE_NAME, 7))
|
|
#define FIT_CALF_RAISE_EXERCISE_NAME_SEATED_DUMBBELL_TOE_RAISE (FIT_CAST(FIT_CALF_RAISE_EXERCISE_NAME, 8))
|
|
#define FIT_CALF_RAISE_EXERCISE_NAME_SINGLE_LEG_BENT_KNEE_CALF_RAISE (FIT_CAST(FIT_CALF_RAISE_EXERCISE_NAME, 9))
|
|
#define FIT_CALF_RAISE_EXERCISE_NAME_WEIGHTED_SINGLE_LEG_BENT_KNEE_CALF_RAISE (FIT_CAST(FIT_CALF_RAISE_EXERCISE_NAME, 10))
|
|
#define FIT_CALF_RAISE_EXERCISE_NAME_SINGLE_LEG_DECLINE_PUSH_UP (FIT_CAST(FIT_CALF_RAISE_EXERCISE_NAME, 11))
|
|
#define FIT_CALF_RAISE_EXERCISE_NAME_SINGLE_LEG_DONKEY_CALF_RAISE (FIT_CAST(FIT_CALF_RAISE_EXERCISE_NAME, 12))
|
|
#define FIT_CALF_RAISE_EXERCISE_NAME_WEIGHTED_SINGLE_LEG_DONKEY_CALF_RAISE (FIT_CAST(FIT_CALF_RAISE_EXERCISE_NAME, 13))
|
|
#define FIT_CALF_RAISE_EXERCISE_NAME_SINGLE_LEG_HIP_RAISE_WITH_KNEE_HOLD (FIT_CAST(FIT_CALF_RAISE_EXERCISE_NAME, 14))
|
|
#define FIT_CALF_RAISE_EXERCISE_NAME_SINGLE_LEG_STANDING_CALF_RAISE (FIT_CAST(FIT_CALF_RAISE_EXERCISE_NAME, 15))
|
|
#define FIT_CALF_RAISE_EXERCISE_NAME_SINGLE_LEG_STANDING_DUMBBELL_CALF_RAISE (FIT_CAST(FIT_CALF_RAISE_EXERCISE_NAME, 16))
|
|
#define FIT_CALF_RAISE_EXERCISE_NAME_STANDING_BARBELL_CALF_RAISE (FIT_CAST(FIT_CALF_RAISE_EXERCISE_NAME, 17))
|
|
#define FIT_CALF_RAISE_EXERCISE_NAME_STANDING_CALF_RAISE (FIT_CAST(FIT_CALF_RAISE_EXERCISE_NAME, 18))
|
|
#define FIT_CALF_RAISE_EXERCISE_NAME_WEIGHTED_STANDING_CALF_RAISE (FIT_CAST(FIT_CALF_RAISE_EXERCISE_NAME, 19))
|
|
#define FIT_CALF_RAISE_EXERCISE_NAME_STANDING_DUMBBELL_CALF_RAISE (FIT_CAST(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_CAST(FIT_CARDIO_EXERCISE_NAME, 0))
|
|
#define FIT_CARDIO_EXERCISE_NAME_WEIGHTED_BOB_AND_WEAVE_CIRCLE (FIT_CAST(FIT_CARDIO_EXERCISE_NAME, 1))
|
|
#define FIT_CARDIO_EXERCISE_NAME_CARDIO_CORE_CRAWL (FIT_CAST(FIT_CARDIO_EXERCISE_NAME, 2))
|
|
#define FIT_CARDIO_EXERCISE_NAME_WEIGHTED_CARDIO_CORE_CRAWL (FIT_CAST(FIT_CARDIO_EXERCISE_NAME, 3))
|
|
#define FIT_CARDIO_EXERCISE_NAME_DOUBLE_UNDER (FIT_CAST(FIT_CARDIO_EXERCISE_NAME, 4))
|
|
#define FIT_CARDIO_EXERCISE_NAME_WEIGHTED_DOUBLE_UNDER (FIT_CAST(FIT_CARDIO_EXERCISE_NAME, 5))
|
|
#define FIT_CARDIO_EXERCISE_NAME_JUMP_ROPE (FIT_CAST(FIT_CARDIO_EXERCISE_NAME, 6))
|
|
#define FIT_CARDIO_EXERCISE_NAME_WEIGHTED_JUMP_ROPE (FIT_CAST(FIT_CARDIO_EXERCISE_NAME, 7))
|
|
#define FIT_CARDIO_EXERCISE_NAME_JUMP_ROPE_CROSSOVER (FIT_CAST(FIT_CARDIO_EXERCISE_NAME, 8))
|
|
#define FIT_CARDIO_EXERCISE_NAME_WEIGHTED_JUMP_ROPE_CROSSOVER (FIT_CAST(FIT_CARDIO_EXERCISE_NAME, 9))
|
|
#define FIT_CARDIO_EXERCISE_NAME_JUMP_ROPE_JOG (FIT_CAST(FIT_CARDIO_EXERCISE_NAME, 10))
|
|
#define FIT_CARDIO_EXERCISE_NAME_WEIGHTED_JUMP_ROPE_JOG (FIT_CAST(FIT_CARDIO_EXERCISE_NAME, 11))
|
|
#define FIT_CARDIO_EXERCISE_NAME_JUMPING_JACKS (FIT_CAST(FIT_CARDIO_EXERCISE_NAME, 12))
|
|
#define FIT_CARDIO_EXERCISE_NAME_WEIGHTED_JUMPING_JACKS (FIT_CAST(FIT_CARDIO_EXERCISE_NAME, 13))
|
|
#define FIT_CARDIO_EXERCISE_NAME_SKI_MOGULS (FIT_CAST(FIT_CARDIO_EXERCISE_NAME, 14))
|
|
#define FIT_CARDIO_EXERCISE_NAME_WEIGHTED_SKI_MOGULS (FIT_CAST(FIT_CARDIO_EXERCISE_NAME, 15))
|
|
#define FIT_CARDIO_EXERCISE_NAME_SPLIT_JACKS (FIT_CAST(FIT_CARDIO_EXERCISE_NAME, 16))
|
|
#define FIT_CARDIO_EXERCISE_NAME_WEIGHTED_SPLIT_JACKS (FIT_CAST(FIT_CARDIO_EXERCISE_NAME, 17))
|
|
#define FIT_CARDIO_EXERCISE_NAME_SQUAT_JACKS (FIT_CAST(FIT_CARDIO_EXERCISE_NAME, 18))
|
|
#define FIT_CARDIO_EXERCISE_NAME_WEIGHTED_SQUAT_JACKS (FIT_CAST(FIT_CARDIO_EXERCISE_NAME, 19))
|
|
#define FIT_CARDIO_EXERCISE_NAME_TRIPLE_UNDER (FIT_CAST(FIT_CARDIO_EXERCISE_NAME, 20))
|
|
#define FIT_CARDIO_EXERCISE_NAME_WEIGHTED_TRIPLE_UNDER (FIT_CAST(FIT_CARDIO_EXERCISE_NAME, 21))
|
|
#define FIT_CARDIO_EXERCISE_NAME_ELLIPTICAL (FIT_CAST(FIT_CARDIO_EXERCISE_NAME, 22))
|
|
#define FIT_CARDIO_EXERCISE_NAME_SPINNING (FIT_CAST(FIT_CARDIO_EXERCISE_NAME, 23))
|
|
#define FIT_CARDIO_EXERCISE_NAME_POLE_PADDLE_FORWARD_WHEELCHAIR (FIT_CAST(FIT_CARDIO_EXERCISE_NAME, 24))
|
|
#define FIT_CARDIO_EXERCISE_NAME_POLE_PADDLE_BACKWARD_WHEELCHAIR (FIT_CAST(FIT_CARDIO_EXERCISE_NAME, 25))
|
|
#define FIT_CARDIO_EXERCISE_NAME_POLE_HANDCYCLE_FORWARD_WHEELCHAIR (FIT_CAST(FIT_CARDIO_EXERCISE_NAME, 26))
|
|
#define FIT_CARDIO_EXERCISE_NAME_POLE_HANDCYCLE_BACKWARD_WHEELCHAIR (FIT_CAST(FIT_CARDIO_EXERCISE_NAME, 27))
|
|
#define FIT_CARDIO_EXERCISE_NAME_POLE_RAINBOW_WHEELCHAIR (FIT_CAST(FIT_CARDIO_EXERCISE_NAME, 28))
|
|
#define FIT_CARDIO_EXERCISE_NAME_DOUBLE_PUNCH_FORWARD_WHEELCHAIR (FIT_CAST(FIT_CARDIO_EXERCISE_NAME, 29))
|
|
#define FIT_CARDIO_EXERCISE_NAME_DOUBLE_PUNCH_DOWN_WHEELCHAIR (FIT_CAST(FIT_CARDIO_EXERCISE_NAME, 30))
|
|
#define FIT_CARDIO_EXERCISE_NAME_DOUBLE_PUNCH_SIDEWAYS_WHEELCHAIR (FIT_CAST(FIT_CARDIO_EXERCISE_NAME, 31))
|
|
#define FIT_CARDIO_EXERCISE_NAME_DOUBLE_PUNCH_UP_WHEELCHAIR (FIT_CAST(FIT_CARDIO_EXERCISE_NAME, 32))
|
|
#define FIT_CARDIO_EXERCISE_NAME_SIT_SKI_WHEELCHAIR (FIT_CAST(FIT_CARDIO_EXERCISE_NAME, 33))
|
|
#define FIT_CARDIO_EXERCISE_NAME_SITTING_JACKS_WHEELCHAIR (FIT_CAST(FIT_CARDIO_EXERCISE_NAME, 34))
|
|
#define FIT_CARDIO_EXERCISE_NAME_PUNCH_FORWARD_WHEELCHAIR (FIT_CAST(FIT_CARDIO_EXERCISE_NAME, 35))
|
|
#define FIT_CARDIO_EXERCISE_NAME_PUNCH_DOWN_WHEELCHAIR (FIT_CAST(FIT_CARDIO_EXERCISE_NAME, 36))
|
|
#define FIT_CARDIO_EXERCISE_NAME_PUNCH_SIDEWAYS_WHEELCHAIR (FIT_CAST(FIT_CARDIO_EXERCISE_NAME, 37))
|
|
#define FIT_CARDIO_EXERCISE_NAME_PUNCH_UP_WHEELCHAIR (FIT_CAST(FIT_CARDIO_EXERCISE_NAME, 38))
|
|
#define FIT_CARDIO_EXERCISE_NAME_PUNCH_BAG_WHEELCHAIR (FIT_CAST(FIT_CARDIO_EXERCISE_NAME, 39))
|
|
#define FIT_CARDIO_EXERCISE_NAME_POLE_DD_FF_UU_WHEELCHAIR (FIT_CAST(FIT_CARDIO_EXERCISE_NAME, 40))
|
|
#define FIT_CARDIO_EXERCISE_NAME_BUTTERFLY_ARMS_WHEELCHAIR (FIT_CAST(FIT_CARDIO_EXERCISE_NAME, 41))
|
|
#define FIT_CARDIO_EXERCISE_NAME_PUNCH (FIT_CAST(FIT_CARDIO_EXERCISE_NAME, 42))
|
|
#define FIT_CARDIO_EXERCISE_NAME_COUNT 43
|
|
|
|
typedef FIT_UINT16 FIT_CARRY_EXERCISE_NAME;
|
|
#define FIT_CARRY_EXERCISE_NAME_INVALID FIT_UINT16_INVALID
|
|
#define FIT_CARRY_EXERCISE_NAME_BAR_HOLDS (FIT_CAST(FIT_CARRY_EXERCISE_NAME, 0))
|
|
#define FIT_CARRY_EXERCISE_NAME_FARMERS_WALK (FIT_CAST(FIT_CARRY_EXERCISE_NAME, 1))
|
|
#define FIT_CARRY_EXERCISE_NAME_FARMERS_WALK_ON_TOES (FIT_CAST(FIT_CARRY_EXERCISE_NAME, 2))
|
|
#define FIT_CARRY_EXERCISE_NAME_HEX_DUMBBELL_HOLD (FIT_CAST(FIT_CARRY_EXERCISE_NAME, 3))
|
|
#define FIT_CARRY_EXERCISE_NAME_OVERHEAD_CARRY (FIT_CAST(FIT_CARRY_EXERCISE_NAME, 4))
|
|
#define FIT_CARRY_EXERCISE_NAME_DUMBBELL_WAITER_CARRY (FIT_CAST(FIT_CARRY_EXERCISE_NAME, 5))
|
|
#define FIT_CARRY_EXERCISE_NAME_FARMERS_CARRY_WALK_LUNGE (FIT_CAST(FIT_CARRY_EXERCISE_NAME, 6))
|
|
#define FIT_CARRY_EXERCISE_NAME_FARMERS_CARRY (FIT_CAST(FIT_CARRY_EXERCISE_NAME, 7))
|
|
#define FIT_CARRY_EXERCISE_NAME_FARMERS_CARRY_ON_TOES (FIT_CAST(FIT_CARRY_EXERCISE_NAME, 8))
|
|
#define FIT_CARRY_EXERCISE_NAME_COUNT 9
|
|
|
|
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_CAST(FIT_CHOP_EXERCISE_NAME, 0))
|
|
#define FIT_CHOP_EXERCISE_NAME_CABLE_ROTATIONAL_LIFT (FIT_CAST(FIT_CHOP_EXERCISE_NAME, 1))
|
|
#define FIT_CHOP_EXERCISE_NAME_CABLE_WOODCHOP (FIT_CAST(FIT_CHOP_EXERCISE_NAME, 2))
|
|
#define FIT_CHOP_EXERCISE_NAME_CROSS_CHOP_TO_KNEE (FIT_CAST(FIT_CHOP_EXERCISE_NAME, 3))
|
|
#define FIT_CHOP_EXERCISE_NAME_WEIGHTED_CROSS_CHOP_TO_KNEE (FIT_CAST(FIT_CHOP_EXERCISE_NAME, 4))
|
|
#define FIT_CHOP_EXERCISE_NAME_DUMBBELL_CHOP (FIT_CAST(FIT_CHOP_EXERCISE_NAME, 5))
|
|
#define FIT_CHOP_EXERCISE_NAME_HALF_KNEELING_ROTATION (FIT_CAST(FIT_CHOP_EXERCISE_NAME, 6))
|
|
#define FIT_CHOP_EXERCISE_NAME_WEIGHTED_HALF_KNEELING_ROTATION (FIT_CAST(FIT_CHOP_EXERCISE_NAME, 7))
|
|
#define FIT_CHOP_EXERCISE_NAME_HALF_KNEELING_ROTATIONAL_CHOP (FIT_CAST(FIT_CHOP_EXERCISE_NAME, 8))
|
|
#define FIT_CHOP_EXERCISE_NAME_HALF_KNEELING_ROTATIONAL_REVERSE_CHOP (FIT_CAST(FIT_CHOP_EXERCISE_NAME, 9))
|
|
#define FIT_CHOP_EXERCISE_NAME_HALF_KNEELING_STABILITY_CHOP (FIT_CAST(FIT_CHOP_EXERCISE_NAME, 10))
|
|
#define FIT_CHOP_EXERCISE_NAME_HALF_KNEELING_STABILITY_REVERSE_CHOP (FIT_CAST(FIT_CHOP_EXERCISE_NAME, 11))
|
|
#define FIT_CHOP_EXERCISE_NAME_KNEELING_ROTATIONAL_CHOP (FIT_CAST(FIT_CHOP_EXERCISE_NAME, 12))
|
|
#define FIT_CHOP_EXERCISE_NAME_KNEELING_ROTATIONAL_REVERSE_CHOP (FIT_CAST(FIT_CHOP_EXERCISE_NAME, 13))
|
|
#define FIT_CHOP_EXERCISE_NAME_KNEELING_STABILITY_CHOP (FIT_CAST(FIT_CHOP_EXERCISE_NAME, 14))
|
|
#define FIT_CHOP_EXERCISE_NAME_KNEELING_WOODCHOPPER (FIT_CAST(FIT_CHOP_EXERCISE_NAME, 15))
|
|
#define FIT_CHOP_EXERCISE_NAME_MEDICINE_BALL_WOOD_CHOPS (FIT_CAST(FIT_CHOP_EXERCISE_NAME, 16))
|
|
#define FIT_CHOP_EXERCISE_NAME_POWER_SQUAT_CHOPS (FIT_CAST(FIT_CHOP_EXERCISE_NAME, 17))
|
|
#define FIT_CHOP_EXERCISE_NAME_WEIGHTED_POWER_SQUAT_CHOPS (FIT_CAST(FIT_CHOP_EXERCISE_NAME, 18))
|
|
#define FIT_CHOP_EXERCISE_NAME_STANDING_ROTATIONAL_CHOP (FIT_CAST(FIT_CHOP_EXERCISE_NAME, 19))
|
|
#define FIT_CHOP_EXERCISE_NAME_STANDING_SPLIT_ROTATIONAL_CHOP (FIT_CAST(FIT_CHOP_EXERCISE_NAME, 20))
|
|
#define FIT_CHOP_EXERCISE_NAME_STANDING_SPLIT_ROTATIONAL_REVERSE_CHOP (FIT_CAST(FIT_CHOP_EXERCISE_NAME, 21))
|
|
#define FIT_CHOP_EXERCISE_NAME_STANDING_STABILITY_REVERSE_CHOP (FIT_CAST(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_CAST(FIT_CORE_EXERCISE_NAME, 0))
|
|
#define FIT_CORE_EXERCISE_NAME_WEIGHTED_ABS_JABS (FIT_CAST(FIT_CORE_EXERCISE_NAME, 1))
|
|
#define FIT_CORE_EXERCISE_NAME_ALTERNATING_PLATE_REACH (FIT_CAST(FIT_CORE_EXERCISE_NAME, 2))
|
|
#define FIT_CORE_EXERCISE_NAME_BARBELL_ROLLOUT (FIT_CAST(FIT_CORE_EXERCISE_NAME, 3))
|
|
#define FIT_CORE_EXERCISE_NAME_WEIGHTED_BARBELL_ROLLOUT (FIT_CAST(FIT_CORE_EXERCISE_NAME, 4))
|
|
#define FIT_CORE_EXERCISE_NAME_BODY_BAR_OBLIQUE_TWIST (FIT_CAST(FIT_CORE_EXERCISE_NAME, 5))
|
|
#define FIT_CORE_EXERCISE_NAME_CABLE_CORE_PRESS (FIT_CAST(FIT_CORE_EXERCISE_NAME, 6))
|
|
#define FIT_CORE_EXERCISE_NAME_CABLE_SIDE_BEND (FIT_CAST(FIT_CORE_EXERCISE_NAME, 7))
|
|
#define FIT_CORE_EXERCISE_NAME_SIDE_BEND (FIT_CAST(FIT_CORE_EXERCISE_NAME, 8))
|
|
#define FIT_CORE_EXERCISE_NAME_WEIGHTED_SIDE_BEND (FIT_CAST(FIT_CORE_EXERCISE_NAME, 9))
|
|
#define FIT_CORE_EXERCISE_NAME_CRESCENT_CIRCLE (FIT_CAST(FIT_CORE_EXERCISE_NAME, 10))
|
|
#define FIT_CORE_EXERCISE_NAME_WEIGHTED_CRESCENT_CIRCLE (FIT_CAST(FIT_CORE_EXERCISE_NAME, 11))
|
|
#define FIT_CORE_EXERCISE_NAME_CYCLING_RUSSIAN_TWIST (FIT_CAST(FIT_CORE_EXERCISE_NAME, 12))
|
|
#define FIT_CORE_EXERCISE_NAME_WEIGHTED_CYCLING_RUSSIAN_TWIST (FIT_CAST(FIT_CORE_EXERCISE_NAME, 13))
|
|
#define FIT_CORE_EXERCISE_NAME_ELEVATED_FEET_RUSSIAN_TWIST (FIT_CAST(FIT_CORE_EXERCISE_NAME, 14))
|
|
#define FIT_CORE_EXERCISE_NAME_WEIGHTED_ELEVATED_FEET_RUSSIAN_TWIST (FIT_CAST(FIT_CORE_EXERCISE_NAME, 15))
|
|
#define FIT_CORE_EXERCISE_NAME_HALF_TURKISH_GET_UP (FIT_CAST(FIT_CORE_EXERCISE_NAME, 16))
|
|
#define FIT_CORE_EXERCISE_NAME_KETTLEBELL_WINDMILL (FIT_CAST(FIT_CORE_EXERCISE_NAME, 17))
|
|
#define FIT_CORE_EXERCISE_NAME_KNEELING_AB_WHEEL (FIT_CAST(FIT_CORE_EXERCISE_NAME, 18))
|
|
#define FIT_CORE_EXERCISE_NAME_WEIGHTED_KNEELING_AB_WHEEL (FIT_CAST(FIT_CORE_EXERCISE_NAME, 19))
|
|
#define FIT_CORE_EXERCISE_NAME_MODIFIED_FRONT_LEVER (FIT_CAST(FIT_CORE_EXERCISE_NAME, 20))
|
|
#define FIT_CORE_EXERCISE_NAME_OPEN_KNEE_TUCKS (FIT_CAST(FIT_CORE_EXERCISE_NAME, 21))
|
|
#define FIT_CORE_EXERCISE_NAME_WEIGHTED_OPEN_KNEE_TUCKS (FIT_CAST(FIT_CORE_EXERCISE_NAME, 22))
|
|
#define FIT_CORE_EXERCISE_NAME_SIDE_ABS_LEG_LIFT (FIT_CAST(FIT_CORE_EXERCISE_NAME, 23))
|
|
#define FIT_CORE_EXERCISE_NAME_WEIGHTED_SIDE_ABS_LEG_LIFT (FIT_CAST(FIT_CORE_EXERCISE_NAME, 24))
|
|
#define FIT_CORE_EXERCISE_NAME_SWISS_BALL_JACKKNIFE (FIT_CAST(FIT_CORE_EXERCISE_NAME, 25))
|
|
#define FIT_CORE_EXERCISE_NAME_WEIGHTED_SWISS_BALL_JACKKNIFE (FIT_CAST(FIT_CORE_EXERCISE_NAME, 26))
|
|
#define FIT_CORE_EXERCISE_NAME_SWISS_BALL_PIKE (FIT_CAST(FIT_CORE_EXERCISE_NAME, 27))
|
|
#define FIT_CORE_EXERCISE_NAME_WEIGHTED_SWISS_BALL_PIKE (FIT_CAST(FIT_CORE_EXERCISE_NAME, 28))
|
|
#define FIT_CORE_EXERCISE_NAME_SWISS_BALL_ROLLOUT (FIT_CAST(FIT_CORE_EXERCISE_NAME, 29))
|
|
#define FIT_CORE_EXERCISE_NAME_WEIGHTED_SWISS_BALL_ROLLOUT (FIT_CAST(FIT_CORE_EXERCISE_NAME, 30))
|
|
#define FIT_CORE_EXERCISE_NAME_TRIANGLE_HIP_PRESS (FIT_CAST(FIT_CORE_EXERCISE_NAME, 31))
|
|
#define FIT_CORE_EXERCISE_NAME_WEIGHTED_TRIANGLE_HIP_PRESS (FIT_CAST(FIT_CORE_EXERCISE_NAME, 32))
|
|
#define FIT_CORE_EXERCISE_NAME_TRX_SUSPENDED_JACKKNIFE (FIT_CAST(FIT_CORE_EXERCISE_NAME, 33))
|
|
#define FIT_CORE_EXERCISE_NAME_WEIGHTED_TRX_SUSPENDED_JACKKNIFE (FIT_CAST(FIT_CORE_EXERCISE_NAME, 34))
|
|
#define FIT_CORE_EXERCISE_NAME_U_BOAT (FIT_CAST(FIT_CORE_EXERCISE_NAME, 35))
|
|
#define FIT_CORE_EXERCISE_NAME_WEIGHTED_U_BOAT (FIT_CAST(FIT_CORE_EXERCISE_NAME, 36))
|
|
#define FIT_CORE_EXERCISE_NAME_WINDMILL_SWITCHES (FIT_CAST(FIT_CORE_EXERCISE_NAME, 37))
|
|
#define FIT_CORE_EXERCISE_NAME_WEIGHTED_WINDMILL_SWITCHES (FIT_CAST(FIT_CORE_EXERCISE_NAME, 38))
|
|
#define FIT_CORE_EXERCISE_NAME_ALTERNATING_SLIDE_OUT (FIT_CAST(FIT_CORE_EXERCISE_NAME, 39))
|
|
#define FIT_CORE_EXERCISE_NAME_WEIGHTED_ALTERNATING_SLIDE_OUT (FIT_CAST(FIT_CORE_EXERCISE_NAME, 40))
|
|
#define FIT_CORE_EXERCISE_NAME_GHD_BACK_EXTENSIONS (FIT_CAST(FIT_CORE_EXERCISE_NAME, 41))
|
|
#define FIT_CORE_EXERCISE_NAME_WEIGHTED_GHD_BACK_EXTENSIONS (FIT_CAST(FIT_CORE_EXERCISE_NAME, 42))
|
|
#define FIT_CORE_EXERCISE_NAME_OVERHEAD_WALK (FIT_CAST(FIT_CORE_EXERCISE_NAME, 43))
|
|
#define FIT_CORE_EXERCISE_NAME_INCHWORM (FIT_CAST(FIT_CORE_EXERCISE_NAME, 44))
|
|
#define FIT_CORE_EXERCISE_NAME_WEIGHTED_MODIFIED_FRONT_LEVER (FIT_CAST(FIT_CORE_EXERCISE_NAME, 45))
|
|
#define FIT_CORE_EXERCISE_NAME_RUSSIAN_TWIST (FIT_CAST(FIT_CORE_EXERCISE_NAME, 46))
|
|
#define FIT_CORE_EXERCISE_NAME_ABDOMINAL_LEG_ROTATIONS (FIT_CAST(FIT_CORE_EXERCISE_NAME, 47)) // Deprecated do not use
|
|
#define FIT_CORE_EXERCISE_NAME_ARM_AND_LEG_EXTENSION_ON_KNEES (FIT_CAST(FIT_CORE_EXERCISE_NAME, 48))
|
|
#define FIT_CORE_EXERCISE_NAME_BICYCLE (FIT_CAST(FIT_CORE_EXERCISE_NAME, 49))
|
|
#define FIT_CORE_EXERCISE_NAME_BICEP_CURL_WITH_LEG_EXTENSION (FIT_CAST(FIT_CORE_EXERCISE_NAME, 50))
|
|
#define FIT_CORE_EXERCISE_NAME_CAT_COW (FIT_CAST(FIT_CORE_EXERCISE_NAME, 51))
|
|
#define FIT_CORE_EXERCISE_NAME_CORKSCREW (FIT_CAST(FIT_CORE_EXERCISE_NAME, 52))
|
|
#define FIT_CORE_EXERCISE_NAME_CRISS_CROSS (FIT_CAST(FIT_CORE_EXERCISE_NAME, 53))
|
|
#define FIT_CORE_EXERCISE_NAME_CRISS_CROSS_WITH_BALL (FIT_CAST(FIT_CORE_EXERCISE_NAME, 54)) // Deprecated do not use
|
|
#define FIT_CORE_EXERCISE_NAME_DOUBLE_LEG_STRETCH (FIT_CAST(FIT_CORE_EXERCISE_NAME, 55))
|
|
#define FIT_CORE_EXERCISE_NAME_KNEE_FOLDS (FIT_CAST(FIT_CORE_EXERCISE_NAME, 56))
|
|
#define FIT_CORE_EXERCISE_NAME_LOWER_LIFT (FIT_CAST(FIT_CORE_EXERCISE_NAME, 57))
|
|
#define FIT_CORE_EXERCISE_NAME_NECK_PULL (FIT_CAST(FIT_CORE_EXERCISE_NAME, 58))
|
|
#define FIT_CORE_EXERCISE_NAME_PELVIC_CLOCKS (FIT_CAST(FIT_CORE_EXERCISE_NAME, 59))
|
|
#define FIT_CORE_EXERCISE_NAME_ROLL_OVER (FIT_CAST(FIT_CORE_EXERCISE_NAME, 60))
|
|
#define FIT_CORE_EXERCISE_NAME_ROLL_UP (FIT_CAST(FIT_CORE_EXERCISE_NAME, 61))
|
|
#define FIT_CORE_EXERCISE_NAME_ROLLING (FIT_CAST(FIT_CORE_EXERCISE_NAME, 62))
|
|
#define FIT_CORE_EXERCISE_NAME_ROWING_1 (FIT_CAST(FIT_CORE_EXERCISE_NAME, 63))
|
|
#define FIT_CORE_EXERCISE_NAME_ROWING_2 (FIT_CAST(FIT_CORE_EXERCISE_NAME, 64))
|
|
#define FIT_CORE_EXERCISE_NAME_SCISSORS (FIT_CAST(FIT_CORE_EXERCISE_NAME, 65))
|
|
#define FIT_CORE_EXERCISE_NAME_SINGLE_LEG_CIRCLES (FIT_CAST(FIT_CORE_EXERCISE_NAME, 66))
|
|
#define FIT_CORE_EXERCISE_NAME_SINGLE_LEG_STRETCH (FIT_CAST(FIT_CORE_EXERCISE_NAME, 67))
|
|
#define FIT_CORE_EXERCISE_NAME_SNAKE_TWIST_1_AND_2 (FIT_CAST(FIT_CORE_EXERCISE_NAME, 68)) // Deprecated do not use
|
|
#define FIT_CORE_EXERCISE_NAME_SWAN (FIT_CAST(FIT_CORE_EXERCISE_NAME, 69))
|
|
#define FIT_CORE_EXERCISE_NAME_SWIMMING (FIT_CAST(FIT_CORE_EXERCISE_NAME, 70))
|
|
#define FIT_CORE_EXERCISE_NAME_TEASER (FIT_CAST(FIT_CORE_EXERCISE_NAME, 71))
|
|
#define FIT_CORE_EXERCISE_NAME_THE_HUNDRED (FIT_CAST(FIT_CORE_EXERCISE_NAME, 72))
|
|
#define FIT_CORE_EXERCISE_NAME_BICEP_CURL_WITH_LEG_EXTENSION_WITH_WEIGHTS (FIT_CAST(FIT_CORE_EXERCISE_NAME, 73))
|
|
#define FIT_CORE_EXERCISE_NAME_HANGING_L_SIT (FIT_CAST(FIT_CORE_EXERCISE_NAME, 75))
|
|
#define FIT_CORE_EXERCISE_NAME_LOWER_LIFT_WITH_WEIGHTS (FIT_CAST(FIT_CORE_EXERCISE_NAME, 77))
|
|
#define FIT_CORE_EXERCISE_NAME_RING_L_SIT (FIT_CAST(FIT_CORE_EXERCISE_NAME, 79))
|
|
#define FIT_CORE_EXERCISE_NAME_ROWING_1_WITH_WEIGHTS (FIT_CAST(FIT_CORE_EXERCISE_NAME, 80))
|
|
#define FIT_CORE_EXERCISE_NAME_ROWING_2_WITH_WEIGHTS (FIT_CAST(FIT_CORE_EXERCISE_NAME, 81))
|
|
#define FIT_CORE_EXERCISE_NAME_SCISSORS_WITH_WEIGHTS (FIT_CAST(FIT_CORE_EXERCISE_NAME, 82))
|
|
#define FIT_CORE_EXERCISE_NAME_SINGLE_LEG_STRETCH_WITH_WEIGHTS (FIT_CAST(FIT_CORE_EXERCISE_NAME, 83))
|
|
#define FIT_CORE_EXERCISE_NAME_TOES_TO_ELBOWS (FIT_CAST(FIT_CORE_EXERCISE_NAME, 84))
|
|
#define FIT_CORE_EXERCISE_NAME_WEIGHTED_CRISS_CROSS (FIT_CAST(FIT_CORE_EXERCISE_NAME, 85))
|
|
#define FIT_CORE_EXERCISE_NAME_WEIGHTED_DOUBLE_LEG_STRETCH (FIT_CAST(FIT_CORE_EXERCISE_NAME, 86))
|
|
#define FIT_CORE_EXERCISE_NAME_WEIGHTED_THE_HUNDRED (FIT_CAST(FIT_CORE_EXERCISE_NAME, 87))
|
|
#define FIT_CORE_EXERCISE_NAME_L_SIT (FIT_CAST(FIT_CORE_EXERCISE_NAME, 88))
|
|
#define FIT_CORE_EXERCISE_NAME_TURKISH_GET_UP (FIT_CAST(FIT_CORE_EXERCISE_NAME, 89))
|
|
#define FIT_CORE_EXERCISE_NAME_WEIGHTED_RING_L_SIT (FIT_CAST(FIT_CORE_EXERCISE_NAME, 90))
|
|
#define FIT_CORE_EXERCISE_NAME_WEIGHTED_HANGING_L_SIT (FIT_CAST(FIT_CORE_EXERCISE_NAME, 91))
|
|
#define FIT_CORE_EXERCISE_NAME_WEIGHTED_L_SIT (FIT_CAST(FIT_CORE_EXERCISE_NAME, 92))
|
|
#define FIT_CORE_EXERCISE_NAME_SIDE_BEND_LOW_WHEELCHAIR (FIT_CAST(FIT_CORE_EXERCISE_NAME, 93))
|
|
#define FIT_CORE_EXERCISE_NAME_SIDE_BEND_MID_WHEELCHAIR (FIT_CAST(FIT_CORE_EXERCISE_NAME, 94))
|
|
#define FIT_CORE_EXERCISE_NAME_SIDE_BEND_HIGH_WHEELCHAIR (FIT_CAST(FIT_CORE_EXERCISE_NAME, 95))
|
|
#define FIT_CORE_EXERCISE_NAME_SEATED_SIDE_BEND (FIT_CAST(FIT_CORE_EXERCISE_NAME, 96))
|
|
#define FIT_CORE_EXERCISE_NAME_COUNT 94
|
|
|
|
typedef FIT_UINT16 FIT_CRUNCH_EXERCISE_NAME;
|
|
#define FIT_CRUNCH_EXERCISE_NAME_INVALID FIT_UINT16_INVALID
|
|
#define FIT_CRUNCH_EXERCISE_NAME_BICYCLE_CRUNCH (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 0))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_CABLE_CRUNCH (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 1))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_CIRCULAR_ARM_CRUNCH (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 2))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_CROSSED_ARMS_CRUNCH (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 3))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_WEIGHTED_CROSSED_ARMS_CRUNCH (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 4))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_CROSS_LEG_REVERSE_CRUNCH (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 5))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_WEIGHTED_CROSS_LEG_REVERSE_CRUNCH (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 6))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_CRUNCH_CHOP (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 7))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_WEIGHTED_CRUNCH_CHOP (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 8))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_DOUBLE_CRUNCH (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 9))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_WEIGHTED_DOUBLE_CRUNCH (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 10))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_ELBOW_TO_KNEE_CRUNCH (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 11))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_WEIGHTED_ELBOW_TO_KNEE_CRUNCH (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 12))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_FLUTTER_KICKS (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 13))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_WEIGHTED_FLUTTER_KICKS (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 14))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_FOAM_ROLLER_REVERSE_CRUNCH_ON_BENCH (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 15))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_WEIGHTED_FOAM_ROLLER_REVERSE_CRUNCH_ON_BENCH (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 16))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_FOAM_ROLLER_REVERSE_CRUNCH_WITH_DUMBBELL (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 17))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_FOAM_ROLLER_REVERSE_CRUNCH_WITH_MEDICINE_BALL (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 18))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_FROG_PRESS (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 19))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_HANGING_KNEE_RAISE_OBLIQUE_CRUNCH (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 20))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_WEIGHTED_HANGING_KNEE_RAISE_OBLIQUE_CRUNCH (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 21))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_HIP_CROSSOVER (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 22))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_WEIGHTED_HIP_CROSSOVER (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 23))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_HOLLOW_ROCK (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 24))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_WEIGHTED_HOLLOW_ROCK (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 25))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_INCLINE_REVERSE_CRUNCH (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 26))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_WEIGHTED_INCLINE_REVERSE_CRUNCH (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 27))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_KNEELING_CABLE_CRUNCH (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 28))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_KNEELING_CROSS_CRUNCH (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 29))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_WEIGHTED_KNEELING_CROSS_CRUNCH (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 30))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_KNEELING_OBLIQUE_CABLE_CRUNCH (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 31))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_KNEES_TO_ELBOW (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 32))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_LEG_EXTENSIONS (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 33))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_WEIGHTED_LEG_EXTENSIONS (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 34))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_LEG_LEVERS (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 35))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_MCGILL_CURL_UP (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 36))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_WEIGHTED_MCGILL_CURL_UP (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 37))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_MODIFIED_PILATES_ROLL_UP_WITH_BALL (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 38))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_WEIGHTED_MODIFIED_PILATES_ROLL_UP_WITH_BALL (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 39))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_PILATES_CRUNCH (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 40))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_WEIGHTED_PILATES_CRUNCH (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 41))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_PILATES_ROLL_UP_WITH_BALL (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 42))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_WEIGHTED_PILATES_ROLL_UP_WITH_BALL (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 43))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_RAISED_LEGS_CRUNCH (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 44))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_WEIGHTED_RAISED_LEGS_CRUNCH (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 45))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_REVERSE_CRUNCH (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 46))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_WEIGHTED_REVERSE_CRUNCH (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 47))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_REVERSE_CRUNCH_ON_A_BENCH (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 48))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_WEIGHTED_REVERSE_CRUNCH_ON_A_BENCH (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 49))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_REVERSE_CURL_AND_LIFT (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 50))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_WEIGHTED_REVERSE_CURL_AND_LIFT (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 51))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_ROTATIONAL_LIFT (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 52))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_WEIGHTED_ROTATIONAL_LIFT (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 53))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_SEATED_ALTERNATING_REVERSE_CRUNCH (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 54))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_WEIGHTED_SEATED_ALTERNATING_REVERSE_CRUNCH (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 55))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_SEATED_LEG_U (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 56))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_WEIGHTED_SEATED_LEG_U (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 57))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_SIDE_TO_SIDE_CRUNCH_AND_WEAVE (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 58))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_WEIGHTED_SIDE_TO_SIDE_CRUNCH_AND_WEAVE (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 59))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_SINGLE_LEG_REVERSE_CRUNCH (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 60))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_WEIGHTED_SINGLE_LEG_REVERSE_CRUNCH (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 61))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_SKATER_CRUNCH_CROSS (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 62))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_WEIGHTED_SKATER_CRUNCH_CROSS (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 63))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_STANDING_CABLE_CRUNCH (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 64))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_STANDING_SIDE_CRUNCH (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 65))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_STEP_CLIMB (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 66))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_WEIGHTED_STEP_CLIMB (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 67))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_SWISS_BALL_CRUNCH (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 68))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_SWISS_BALL_REVERSE_CRUNCH (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 69))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_WEIGHTED_SWISS_BALL_REVERSE_CRUNCH (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 70))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_SWISS_BALL_RUSSIAN_TWIST (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 71))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_WEIGHTED_SWISS_BALL_RUSSIAN_TWIST (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 72))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_SWISS_BALL_SIDE_CRUNCH (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 73))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_WEIGHTED_SWISS_BALL_SIDE_CRUNCH (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 74))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_THORACIC_CRUNCHES_ON_FOAM_ROLLER (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 75))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_WEIGHTED_THORACIC_CRUNCHES_ON_FOAM_ROLLER (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 76))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_TRICEPS_CRUNCH (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 77))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_WEIGHTED_BICYCLE_CRUNCH (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 78))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_WEIGHTED_CRUNCH (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 79))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_WEIGHTED_SWISS_BALL_CRUNCH (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 80))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_TOES_TO_BAR (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 81))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_WEIGHTED_TOES_TO_BAR (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 82))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_CRUNCH (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 83))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_STRAIGHT_LEG_CRUNCH_WITH_BALL (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 84))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_LEG_CLIMB_CRUNCH (FIT_CAST(FIT_CRUNCH_EXERCISE_NAME, 86))
|
|
#define FIT_CRUNCH_EXERCISE_NAME_COUNT 86
|
|
|
|
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_CAST(FIT_CURL_EXERCISE_NAME, 0))
|
|
#define FIT_CURL_EXERCISE_NAME_ALTERNATING_DUMBBELL_BICEPS_CURL_ON_SWISS_BALL (FIT_CAST(FIT_CURL_EXERCISE_NAME, 1))
|
|
#define FIT_CURL_EXERCISE_NAME_ALTERNATING_INCLINE_DUMBBELL_BICEPS_CURL (FIT_CAST(FIT_CURL_EXERCISE_NAME, 2))
|
|
#define FIT_CURL_EXERCISE_NAME_BARBELL_BICEPS_CURL (FIT_CAST(FIT_CURL_EXERCISE_NAME, 3))
|
|
#define FIT_CURL_EXERCISE_NAME_BARBELL_REVERSE_WRIST_CURL (FIT_CAST(FIT_CURL_EXERCISE_NAME, 4))
|
|
#define FIT_CURL_EXERCISE_NAME_BARBELL_WRIST_CURL (FIT_CAST(FIT_CURL_EXERCISE_NAME, 5))
|
|
#define FIT_CURL_EXERCISE_NAME_BEHIND_THE_BACK_BARBELL_REVERSE_WRIST_CURL (FIT_CAST(FIT_CURL_EXERCISE_NAME, 6))
|
|
#define FIT_CURL_EXERCISE_NAME_BEHIND_THE_BACK_ONE_ARM_CABLE_CURL (FIT_CAST(FIT_CURL_EXERCISE_NAME, 7))
|
|
#define FIT_CURL_EXERCISE_NAME_CABLE_BICEPS_CURL (FIT_CAST(FIT_CURL_EXERCISE_NAME, 8))
|
|
#define FIT_CURL_EXERCISE_NAME_CABLE_HAMMER_CURL (FIT_CAST(FIT_CURL_EXERCISE_NAME, 9))
|
|
#define FIT_CURL_EXERCISE_NAME_CHEATING_BARBELL_BICEPS_CURL (FIT_CAST(FIT_CURL_EXERCISE_NAME, 10))
|
|
#define FIT_CURL_EXERCISE_NAME_CLOSE_GRIP_EZ_BAR_BICEPS_CURL (FIT_CAST(FIT_CURL_EXERCISE_NAME, 11))
|
|
#define FIT_CURL_EXERCISE_NAME_CROSS_BODY_DUMBBELL_HAMMER_CURL (FIT_CAST(FIT_CURL_EXERCISE_NAME, 12))
|
|
#define FIT_CURL_EXERCISE_NAME_DEAD_HANG_BICEPS_CURL (FIT_CAST(FIT_CURL_EXERCISE_NAME, 13))
|
|
#define FIT_CURL_EXERCISE_NAME_DECLINE_HAMMER_CURL (FIT_CAST(FIT_CURL_EXERCISE_NAME, 14))
|
|
#define FIT_CURL_EXERCISE_NAME_DUMBBELL_BICEPS_CURL_WITH_STATIC_HOLD (FIT_CAST(FIT_CURL_EXERCISE_NAME, 15))
|
|
#define FIT_CURL_EXERCISE_NAME_DUMBBELL_HAMMER_CURL (FIT_CAST(FIT_CURL_EXERCISE_NAME, 16))
|
|
#define FIT_CURL_EXERCISE_NAME_DUMBBELL_REVERSE_WRIST_CURL (FIT_CAST(FIT_CURL_EXERCISE_NAME, 17))
|
|
#define FIT_CURL_EXERCISE_NAME_DUMBBELL_WRIST_CURL (FIT_CAST(FIT_CURL_EXERCISE_NAME, 18))
|
|
#define FIT_CURL_EXERCISE_NAME_EZ_BAR_PREACHER_CURL (FIT_CAST(FIT_CURL_EXERCISE_NAME, 19))
|
|
#define FIT_CURL_EXERCISE_NAME_FORWARD_BEND_BICEPS_CURL (FIT_CAST(FIT_CURL_EXERCISE_NAME, 20))
|
|
#define FIT_CURL_EXERCISE_NAME_HAMMER_CURL_TO_PRESS (FIT_CAST(FIT_CURL_EXERCISE_NAME, 21))
|
|
#define FIT_CURL_EXERCISE_NAME_INCLINE_DUMBBELL_BICEPS_CURL (FIT_CAST(FIT_CURL_EXERCISE_NAME, 22))
|
|
#define FIT_CURL_EXERCISE_NAME_INCLINE_OFFSET_THUMB_DUMBBELL_CURL (FIT_CAST(FIT_CURL_EXERCISE_NAME, 23))
|
|
#define FIT_CURL_EXERCISE_NAME_KETTLEBELL_BICEPS_CURL (FIT_CAST(FIT_CURL_EXERCISE_NAME, 24))
|
|
#define FIT_CURL_EXERCISE_NAME_LYING_CONCENTRATION_CABLE_CURL (FIT_CAST(FIT_CURL_EXERCISE_NAME, 25))
|
|
#define FIT_CURL_EXERCISE_NAME_ONE_ARM_PREACHER_CURL (FIT_CAST(FIT_CURL_EXERCISE_NAME, 26))
|
|
#define FIT_CURL_EXERCISE_NAME_PLATE_PINCH_CURL (FIT_CAST(FIT_CURL_EXERCISE_NAME, 27))
|
|
#define FIT_CURL_EXERCISE_NAME_PREACHER_CURL_WITH_CABLE (FIT_CAST(FIT_CURL_EXERCISE_NAME, 28))
|
|
#define FIT_CURL_EXERCISE_NAME_REVERSE_EZ_BAR_CURL (FIT_CAST(FIT_CURL_EXERCISE_NAME, 29))
|
|
#define FIT_CURL_EXERCISE_NAME_REVERSE_GRIP_WRIST_CURL (FIT_CAST(FIT_CURL_EXERCISE_NAME, 30))
|
|
#define FIT_CURL_EXERCISE_NAME_REVERSE_GRIP_BARBELL_BICEPS_CURL (FIT_CAST(FIT_CURL_EXERCISE_NAME, 31))
|
|
#define FIT_CURL_EXERCISE_NAME_SEATED_ALTERNATING_DUMBBELL_BICEPS_CURL (FIT_CAST(FIT_CURL_EXERCISE_NAME, 32))
|
|
#define FIT_CURL_EXERCISE_NAME_SEATED_DUMBBELL_BICEPS_CURL (FIT_CAST(FIT_CURL_EXERCISE_NAME, 33))
|
|
#define FIT_CURL_EXERCISE_NAME_SEATED_REVERSE_DUMBBELL_CURL (FIT_CAST(FIT_CURL_EXERCISE_NAME, 34))
|
|
#define FIT_CURL_EXERCISE_NAME_SPLIT_STANCE_OFFSET_PINKY_DUMBBELL_CURL (FIT_CAST(FIT_CURL_EXERCISE_NAME, 35))
|
|
#define FIT_CURL_EXERCISE_NAME_STANDING_ALTERNATING_DUMBBELL_CURLS (FIT_CAST(FIT_CURL_EXERCISE_NAME, 36))
|
|
#define FIT_CURL_EXERCISE_NAME_STANDING_DUMBBELL_BICEPS_CURL (FIT_CAST(FIT_CURL_EXERCISE_NAME, 37))
|
|
#define FIT_CURL_EXERCISE_NAME_STANDING_EZ_BAR_BICEPS_CURL (FIT_CAST(FIT_CURL_EXERCISE_NAME, 38))
|
|
#define FIT_CURL_EXERCISE_NAME_STATIC_CURL (FIT_CAST(FIT_CURL_EXERCISE_NAME, 39))
|
|
#define FIT_CURL_EXERCISE_NAME_SWISS_BALL_DUMBBELL_OVERHEAD_TRICEPS_EXTENSION (FIT_CAST(FIT_CURL_EXERCISE_NAME, 40))
|
|
#define FIT_CURL_EXERCISE_NAME_SWISS_BALL_EZ_BAR_PREACHER_CURL (FIT_CAST(FIT_CURL_EXERCISE_NAME, 41))
|
|
#define FIT_CURL_EXERCISE_NAME_TWISTING_STANDING_DUMBBELL_BICEPS_CURL (FIT_CAST(FIT_CURL_EXERCISE_NAME, 42))
|
|
#define FIT_CURL_EXERCISE_NAME_WIDE_GRIP_EZ_BAR_BICEPS_CURL (FIT_CAST(FIT_CURL_EXERCISE_NAME, 43))
|
|
#define FIT_CURL_EXERCISE_NAME_ONE_ARM_CONCENTRATION_CURL (FIT_CAST(FIT_CURL_EXERCISE_NAME, 44))
|
|
#define FIT_CURL_EXERCISE_NAME_STANDING_ZOTTMAN_BICEPS_CURL (FIT_CAST(FIT_CURL_EXERCISE_NAME, 45))
|
|
#define FIT_CURL_EXERCISE_NAME_DUMBBELL_BICEPS_CURL (FIT_CAST(FIT_CURL_EXERCISE_NAME, 46))
|
|
#define FIT_CURL_EXERCISE_NAME_DRAG_CURL_WHEELCHAIR (FIT_CAST(FIT_CURL_EXERCISE_NAME, 47))
|
|
#define FIT_CURL_EXERCISE_NAME_DUMBBELL_BICEPS_CURL_WHEELCHAIR (FIT_CAST(FIT_CURL_EXERCISE_NAME, 48))
|
|
#define FIT_CURL_EXERCISE_NAME_BOTTLE_CURL (FIT_CAST(FIT_CURL_EXERCISE_NAME, 49))
|
|
#define FIT_CURL_EXERCISE_NAME_SEATED_BOTTLE_CURL (FIT_CAST(FIT_CURL_EXERCISE_NAME, 50))
|
|
#define FIT_CURL_EXERCISE_NAME_COUNT 51
|
|
|
|
typedef FIT_UINT16 FIT_DEADLIFT_EXERCISE_NAME;
|
|
#define FIT_DEADLIFT_EXERCISE_NAME_INVALID FIT_UINT16_INVALID
|
|
#define FIT_DEADLIFT_EXERCISE_NAME_BARBELL_DEADLIFT (FIT_CAST(FIT_DEADLIFT_EXERCISE_NAME, 0))
|
|
#define FIT_DEADLIFT_EXERCISE_NAME_BARBELL_STRAIGHT_LEG_DEADLIFT (FIT_CAST(FIT_DEADLIFT_EXERCISE_NAME, 1))
|
|
#define FIT_DEADLIFT_EXERCISE_NAME_DUMBBELL_DEADLIFT (FIT_CAST(FIT_DEADLIFT_EXERCISE_NAME, 2))
|
|
#define FIT_DEADLIFT_EXERCISE_NAME_DUMBBELL_SINGLE_LEG_DEADLIFT_TO_ROW (FIT_CAST(FIT_DEADLIFT_EXERCISE_NAME, 3))
|
|
#define FIT_DEADLIFT_EXERCISE_NAME_DUMBBELL_STRAIGHT_LEG_DEADLIFT (FIT_CAST(FIT_DEADLIFT_EXERCISE_NAME, 4))
|
|
#define FIT_DEADLIFT_EXERCISE_NAME_KETTLEBELL_FLOOR_TO_SHELF (FIT_CAST(FIT_DEADLIFT_EXERCISE_NAME, 5))
|
|
#define FIT_DEADLIFT_EXERCISE_NAME_ONE_ARM_ONE_LEG_DEADLIFT (FIT_CAST(FIT_DEADLIFT_EXERCISE_NAME, 6))
|
|
#define FIT_DEADLIFT_EXERCISE_NAME_RACK_PULL (FIT_CAST(FIT_DEADLIFT_EXERCISE_NAME, 7))
|
|
#define FIT_DEADLIFT_EXERCISE_NAME_ROTATIONAL_DUMBBELL_STRAIGHT_LEG_DEADLIFT (FIT_CAST(FIT_DEADLIFT_EXERCISE_NAME, 8))
|
|
#define FIT_DEADLIFT_EXERCISE_NAME_SINGLE_ARM_DEADLIFT (FIT_CAST(FIT_DEADLIFT_EXERCISE_NAME, 9))
|
|
#define FIT_DEADLIFT_EXERCISE_NAME_SINGLE_LEG_BARBELL_DEADLIFT (FIT_CAST(FIT_DEADLIFT_EXERCISE_NAME, 10))
|
|
#define FIT_DEADLIFT_EXERCISE_NAME_SINGLE_LEG_BARBELL_STRAIGHT_LEG_DEADLIFT (FIT_CAST(FIT_DEADLIFT_EXERCISE_NAME, 11))
|
|
#define FIT_DEADLIFT_EXERCISE_NAME_SINGLE_LEG_DEADLIFT_WITH_BARBELL (FIT_CAST(FIT_DEADLIFT_EXERCISE_NAME, 12))
|
|
#define FIT_DEADLIFT_EXERCISE_NAME_SINGLE_LEG_RDL_CIRCUIT (FIT_CAST(FIT_DEADLIFT_EXERCISE_NAME, 13))
|
|
#define FIT_DEADLIFT_EXERCISE_NAME_SINGLE_LEG_ROMANIAN_DEADLIFT_WITH_DUMBBELL (FIT_CAST(FIT_DEADLIFT_EXERCISE_NAME, 14))
|
|
#define FIT_DEADLIFT_EXERCISE_NAME_SUMO_DEADLIFT (FIT_CAST(FIT_DEADLIFT_EXERCISE_NAME, 15))
|
|
#define FIT_DEADLIFT_EXERCISE_NAME_SUMO_DEADLIFT_HIGH_PULL (FIT_CAST(FIT_DEADLIFT_EXERCISE_NAME, 16))
|
|
#define FIT_DEADLIFT_EXERCISE_NAME_TRAP_BAR_DEADLIFT (FIT_CAST(FIT_DEADLIFT_EXERCISE_NAME, 17))
|
|
#define FIT_DEADLIFT_EXERCISE_NAME_WIDE_GRIP_BARBELL_DEADLIFT (FIT_CAST(FIT_DEADLIFT_EXERCISE_NAME, 18))
|
|
#define FIT_DEADLIFT_EXERCISE_NAME_KETTLEBELL_DEADLIFT (FIT_CAST(FIT_DEADLIFT_EXERCISE_NAME, 20))
|
|
#define FIT_DEADLIFT_EXERCISE_NAME_KETTLEBELL_SUMO_DEADLIFT (FIT_CAST(FIT_DEADLIFT_EXERCISE_NAME, 21))
|
|
#define FIT_DEADLIFT_EXERCISE_NAME_ROMANIAN_DEADLIFT (FIT_CAST(FIT_DEADLIFT_EXERCISE_NAME, 23))
|
|
#define FIT_DEADLIFT_EXERCISE_NAME_SINGLE_LEG_ROMANIAN_DEADLIFT_CIRCUIT (FIT_CAST(FIT_DEADLIFT_EXERCISE_NAME, 24))
|
|
#define FIT_DEADLIFT_EXERCISE_NAME_STRAIGHT_LEG_DEADLIFT (FIT_CAST(FIT_DEADLIFT_EXERCISE_NAME, 25))
|
|
#define FIT_DEADLIFT_EXERCISE_NAME_COUNT 24
|
|
|
|
typedef FIT_UINT16 FIT_FLYE_EXERCISE_NAME;
|
|
#define FIT_FLYE_EXERCISE_NAME_INVALID FIT_UINT16_INVALID
|
|
#define FIT_FLYE_EXERCISE_NAME_CABLE_CROSSOVER (FIT_CAST(FIT_FLYE_EXERCISE_NAME, 0))
|
|
#define FIT_FLYE_EXERCISE_NAME_DECLINE_DUMBBELL_FLYE (FIT_CAST(FIT_FLYE_EXERCISE_NAME, 1))
|
|
#define FIT_FLYE_EXERCISE_NAME_DUMBBELL_FLYE (FIT_CAST(FIT_FLYE_EXERCISE_NAME, 2))
|
|
#define FIT_FLYE_EXERCISE_NAME_INCLINE_DUMBBELL_FLYE (FIT_CAST(FIT_FLYE_EXERCISE_NAME, 3))
|
|
#define FIT_FLYE_EXERCISE_NAME_KETTLEBELL_FLYE (FIT_CAST(FIT_FLYE_EXERCISE_NAME, 4))
|
|
#define FIT_FLYE_EXERCISE_NAME_KNEELING_REAR_FLYE (FIT_CAST(FIT_FLYE_EXERCISE_NAME, 5))
|
|
#define FIT_FLYE_EXERCISE_NAME_SINGLE_ARM_STANDING_CABLE_REVERSE_FLYE (FIT_CAST(FIT_FLYE_EXERCISE_NAME, 6))
|
|
#define FIT_FLYE_EXERCISE_NAME_SWISS_BALL_DUMBBELL_FLYE (FIT_CAST(FIT_FLYE_EXERCISE_NAME, 7))
|
|
#define FIT_FLYE_EXERCISE_NAME_ARM_ROTATIONS (FIT_CAST(FIT_FLYE_EXERCISE_NAME, 8))
|
|
#define FIT_FLYE_EXERCISE_NAME_HUG_A_TREE (FIT_CAST(FIT_FLYE_EXERCISE_NAME, 9))
|
|
#define FIT_FLYE_EXERCISE_NAME_FACE_DOWN_INCLINE_REVERSE_FLYE (FIT_CAST(FIT_FLYE_EXERCISE_NAME, 10))
|
|
#define FIT_FLYE_EXERCISE_NAME_INCLINE_REVERSE_FLYE (FIT_CAST(FIT_FLYE_EXERCISE_NAME, 11))
|
|
#define FIT_FLYE_EXERCISE_NAME_REAR_DELT_FLY_WHEELCHAIR (FIT_CAST(FIT_FLYE_EXERCISE_NAME, 12))
|
|
#define FIT_FLYE_EXERCISE_NAME_COUNT 13
|
|
|
|
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_CAST(FIT_HIP_RAISE_EXERCISE_NAME, 0))
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_BARBELL_HIP_THRUST_WITH_BENCH (FIT_CAST(FIT_HIP_RAISE_EXERCISE_NAME, 1))
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_BENT_KNEE_SWISS_BALL_REVERSE_HIP_RAISE (FIT_CAST(FIT_HIP_RAISE_EXERCISE_NAME, 2))
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_WEIGHTED_BENT_KNEE_SWISS_BALL_REVERSE_HIP_RAISE (FIT_CAST(FIT_HIP_RAISE_EXERCISE_NAME, 3))
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_BRIDGE_WITH_LEG_EXTENSION (FIT_CAST(FIT_HIP_RAISE_EXERCISE_NAME, 4))
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_WEIGHTED_BRIDGE_WITH_LEG_EXTENSION (FIT_CAST(FIT_HIP_RAISE_EXERCISE_NAME, 5))
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_CLAM_BRIDGE (FIT_CAST(FIT_HIP_RAISE_EXERCISE_NAME, 6))
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_FRONT_KICK_TABLETOP (FIT_CAST(FIT_HIP_RAISE_EXERCISE_NAME, 7))
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_WEIGHTED_FRONT_KICK_TABLETOP (FIT_CAST(FIT_HIP_RAISE_EXERCISE_NAME, 8))
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_HIP_EXTENSION_AND_CROSS (FIT_CAST(FIT_HIP_RAISE_EXERCISE_NAME, 9))
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_WEIGHTED_HIP_EXTENSION_AND_CROSS (FIT_CAST(FIT_HIP_RAISE_EXERCISE_NAME, 10))
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_HIP_RAISE (FIT_CAST(FIT_HIP_RAISE_EXERCISE_NAME, 11))
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_WEIGHTED_HIP_RAISE (FIT_CAST(FIT_HIP_RAISE_EXERCISE_NAME, 12))
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_HIP_RAISE_WITH_FEET_ON_SWISS_BALL (FIT_CAST(FIT_HIP_RAISE_EXERCISE_NAME, 13))
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_WEIGHTED_HIP_RAISE_WITH_FEET_ON_SWISS_BALL (FIT_CAST(FIT_HIP_RAISE_EXERCISE_NAME, 14))
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_HIP_RAISE_WITH_HEAD_ON_BOSU_BALL (FIT_CAST(FIT_HIP_RAISE_EXERCISE_NAME, 15))
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_WEIGHTED_HIP_RAISE_WITH_HEAD_ON_BOSU_BALL (FIT_CAST(FIT_HIP_RAISE_EXERCISE_NAME, 16))
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_HIP_RAISE_WITH_HEAD_ON_SWISS_BALL (FIT_CAST(FIT_HIP_RAISE_EXERCISE_NAME, 17))
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_WEIGHTED_HIP_RAISE_WITH_HEAD_ON_SWISS_BALL (FIT_CAST(FIT_HIP_RAISE_EXERCISE_NAME, 18))
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_HIP_RAISE_WITH_KNEE_SQUEEZE (FIT_CAST(FIT_HIP_RAISE_EXERCISE_NAME, 19))
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_WEIGHTED_HIP_RAISE_WITH_KNEE_SQUEEZE (FIT_CAST(FIT_HIP_RAISE_EXERCISE_NAME, 20))
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_INCLINE_REAR_LEG_EXTENSION (FIT_CAST(FIT_HIP_RAISE_EXERCISE_NAME, 21))
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_WEIGHTED_INCLINE_REAR_LEG_EXTENSION (FIT_CAST(FIT_HIP_RAISE_EXERCISE_NAME, 22))
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_KETTLEBELL_SWING (FIT_CAST(FIT_HIP_RAISE_EXERCISE_NAME, 23))
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_MARCHING_HIP_RAISE (FIT_CAST(FIT_HIP_RAISE_EXERCISE_NAME, 24))
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_WEIGHTED_MARCHING_HIP_RAISE (FIT_CAST(FIT_HIP_RAISE_EXERCISE_NAME, 25))
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_MARCHING_HIP_RAISE_WITH_FEET_ON_A_SWISS_BALL (FIT_CAST(FIT_HIP_RAISE_EXERCISE_NAME, 26))
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_WEIGHTED_MARCHING_HIP_RAISE_WITH_FEET_ON_A_SWISS_BALL (FIT_CAST(FIT_HIP_RAISE_EXERCISE_NAME, 27))
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_REVERSE_HIP_RAISE (FIT_CAST(FIT_HIP_RAISE_EXERCISE_NAME, 28))
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_WEIGHTED_REVERSE_HIP_RAISE (FIT_CAST(FIT_HIP_RAISE_EXERCISE_NAME, 29))
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_SINGLE_LEG_HIP_RAISE (FIT_CAST(FIT_HIP_RAISE_EXERCISE_NAME, 30))
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_WEIGHTED_SINGLE_LEG_HIP_RAISE (FIT_CAST(FIT_HIP_RAISE_EXERCISE_NAME, 31))
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_SINGLE_LEG_HIP_RAISE_WITH_FOOT_ON_BENCH (FIT_CAST(FIT_HIP_RAISE_EXERCISE_NAME, 32))
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_WEIGHTED_SINGLE_LEG_HIP_RAISE_WITH_FOOT_ON_BENCH (FIT_CAST(FIT_HIP_RAISE_EXERCISE_NAME, 33))
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_SINGLE_LEG_HIP_RAISE_WITH_FOOT_ON_BOSU_BALL (FIT_CAST(FIT_HIP_RAISE_EXERCISE_NAME, 34))
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_WEIGHTED_SINGLE_LEG_HIP_RAISE_WITH_FOOT_ON_BOSU_BALL (FIT_CAST(FIT_HIP_RAISE_EXERCISE_NAME, 35))
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_SINGLE_LEG_HIP_RAISE_WITH_FOOT_ON_FOAM_ROLLER (FIT_CAST(FIT_HIP_RAISE_EXERCISE_NAME, 36))
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_WEIGHTED_SINGLE_LEG_HIP_RAISE_WITH_FOOT_ON_FOAM_ROLLER (FIT_CAST(FIT_HIP_RAISE_EXERCISE_NAME, 37))
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_SINGLE_LEG_HIP_RAISE_WITH_FOOT_ON_MEDICINE_BALL (FIT_CAST(FIT_HIP_RAISE_EXERCISE_NAME, 38))
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_WEIGHTED_SINGLE_LEG_HIP_RAISE_WITH_FOOT_ON_MEDICINE_BALL (FIT_CAST(FIT_HIP_RAISE_EXERCISE_NAME, 39))
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_SINGLE_LEG_HIP_RAISE_WITH_HEAD_ON_BOSU_BALL (FIT_CAST(FIT_HIP_RAISE_EXERCISE_NAME, 40))
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_WEIGHTED_SINGLE_LEG_HIP_RAISE_WITH_HEAD_ON_BOSU_BALL (FIT_CAST(FIT_HIP_RAISE_EXERCISE_NAME, 41))
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_WEIGHTED_CLAM_BRIDGE (FIT_CAST(FIT_HIP_RAISE_EXERCISE_NAME, 42))
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_SINGLE_LEG_SWISS_BALL_HIP_RAISE_AND_LEG_CURL (FIT_CAST(FIT_HIP_RAISE_EXERCISE_NAME, 43))
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_CLAMS (FIT_CAST(FIT_HIP_RAISE_EXERCISE_NAME, 44))
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_INNER_THIGH_CIRCLES (FIT_CAST(FIT_HIP_RAISE_EXERCISE_NAME, 45)) // Deprecated do not use
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_INNER_THIGH_SIDE_LIFT (FIT_CAST(FIT_HIP_RAISE_EXERCISE_NAME, 46)) // Deprecated do not use
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_LEG_CIRCLES (FIT_CAST(FIT_HIP_RAISE_EXERCISE_NAME, 47))
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_LEG_LIFT (FIT_CAST(FIT_HIP_RAISE_EXERCISE_NAME, 48))
|
|
#define FIT_HIP_RAISE_EXERCISE_NAME_LEG_LIFT_IN_EXTERNAL_ROTATION (FIT_CAST(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_CAST(FIT_HIP_STABILITY_EXERCISE_NAME, 0))
|
|
#define FIT_HIP_STABILITY_EXERCISE_NAME_DEAD_BUG (FIT_CAST(FIT_HIP_STABILITY_EXERCISE_NAME, 1))
|
|
#define FIT_HIP_STABILITY_EXERCISE_NAME_WEIGHTED_DEAD_BUG (FIT_CAST(FIT_HIP_STABILITY_EXERCISE_NAME, 2))
|
|
#define FIT_HIP_STABILITY_EXERCISE_NAME_EXTERNAL_HIP_RAISE (FIT_CAST(FIT_HIP_STABILITY_EXERCISE_NAME, 3))
|
|
#define FIT_HIP_STABILITY_EXERCISE_NAME_WEIGHTED_EXTERNAL_HIP_RAISE (FIT_CAST(FIT_HIP_STABILITY_EXERCISE_NAME, 4))
|
|
#define FIT_HIP_STABILITY_EXERCISE_NAME_FIRE_HYDRANT_KICKS (FIT_CAST(FIT_HIP_STABILITY_EXERCISE_NAME, 5))
|
|
#define FIT_HIP_STABILITY_EXERCISE_NAME_WEIGHTED_FIRE_HYDRANT_KICKS (FIT_CAST(FIT_HIP_STABILITY_EXERCISE_NAME, 6))
|
|
#define FIT_HIP_STABILITY_EXERCISE_NAME_HIP_CIRCLES (FIT_CAST(FIT_HIP_STABILITY_EXERCISE_NAME, 7))
|
|
#define FIT_HIP_STABILITY_EXERCISE_NAME_WEIGHTED_HIP_CIRCLES (FIT_CAST(FIT_HIP_STABILITY_EXERCISE_NAME, 8))
|
|
#define FIT_HIP_STABILITY_EXERCISE_NAME_INNER_THIGH_LIFT (FIT_CAST(FIT_HIP_STABILITY_EXERCISE_NAME, 9))
|
|
#define FIT_HIP_STABILITY_EXERCISE_NAME_WEIGHTED_INNER_THIGH_LIFT (FIT_CAST(FIT_HIP_STABILITY_EXERCISE_NAME, 10))
|
|
#define FIT_HIP_STABILITY_EXERCISE_NAME_LATERAL_WALKS_WITH_BAND_AT_ANKLES (FIT_CAST(FIT_HIP_STABILITY_EXERCISE_NAME, 11))
|
|
#define FIT_HIP_STABILITY_EXERCISE_NAME_PRETZEL_SIDE_KICK (FIT_CAST(FIT_HIP_STABILITY_EXERCISE_NAME, 12))
|
|
#define FIT_HIP_STABILITY_EXERCISE_NAME_WEIGHTED_PRETZEL_SIDE_KICK (FIT_CAST(FIT_HIP_STABILITY_EXERCISE_NAME, 13))
|
|
#define FIT_HIP_STABILITY_EXERCISE_NAME_PRONE_HIP_INTERNAL_ROTATION (FIT_CAST(FIT_HIP_STABILITY_EXERCISE_NAME, 14))
|
|
#define FIT_HIP_STABILITY_EXERCISE_NAME_WEIGHTED_PRONE_HIP_INTERNAL_ROTATION (FIT_CAST(FIT_HIP_STABILITY_EXERCISE_NAME, 15))
|
|
#define FIT_HIP_STABILITY_EXERCISE_NAME_QUADRUPED (FIT_CAST(FIT_HIP_STABILITY_EXERCISE_NAME, 16))
|
|
#define FIT_HIP_STABILITY_EXERCISE_NAME_QUADRUPED_HIP_EXTENSION (FIT_CAST(FIT_HIP_STABILITY_EXERCISE_NAME, 17))
|
|
#define FIT_HIP_STABILITY_EXERCISE_NAME_WEIGHTED_QUADRUPED_HIP_EXTENSION (FIT_CAST(FIT_HIP_STABILITY_EXERCISE_NAME, 18))
|
|
#define FIT_HIP_STABILITY_EXERCISE_NAME_QUADRUPED_WITH_LEG_LIFT (FIT_CAST(FIT_HIP_STABILITY_EXERCISE_NAME, 19))
|
|
#define FIT_HIP_STABILITY_EXERCISE_NAME_WEIGHTED_QUADRUPED_WITH_LEG_LIFT (FIT_CAST(FIT_HIP_STABILITY_EXERCISE_NAME, 20))
|
|
#define FIT_HIP_STABILITY_EXERCISE_NAME_SIDE_LYING_LEG_RAISE (FIT_CAST(FIT_HIP_STABILITY_EXERCISE_NAME, 21))
|
|
#define FIT_HIP_STABILITY_EXERCISE_NAME_WEIGHTED_SIDE_LYING_LEG_RAISE (FIT_CAST(FIT_HIP_STABILITY_EXERCISE_NAME, 22))
|
|
#define FIT_HIP_STABILITY_EXERCISE_NAME_SLIDING_HIP_ADDUCTION (FIT_CAST(FIT_HIP_STABILITY_EXERCISE_NAME, 23))
|
|
#define FIT_HIP_STABILITY_EXERCISE_NAME_WEIGHTED_SLIDING_HIP_ADDUCTION (FIT_CAST(FIT_HIP_STABILITY_EXERCISE_NAME, 24))
|
|
#define FIT_HIP_STABILITY_EXERCISE_NAME_STANDING_ADDUCTION (FIT_CAST(FIT_HIP_STABILITY_EXERCISE_NAME, 25))
|
|
#define FIT_HIP_STABILITY_EXERCISE_NAME_WEIGHTED_STANDING_ADDUCTION (FIT_CAST(FIT_HIP_STABILITY_EXERCISE_NAME, 26))
|
|
#define FIT_HIP_STABILITY_EXERCISE_NAME_STANDING_CABLE_HIP_ABDUCTION (FIT_CAST(FIT_HIP_STABILITY_EXERCISE_NAME, 27))
|
|
#define FIT_HIP_STABILITY_EXERCISE_NAME_STANDING_HIP_ABDUCTION (FIT_CAST(FIT_HIP_STABILITY_EXERCISE_NAME, 28))
|
|
#define FIT_HIP_STABILITY_EXERCISE_NAME_WEIGHTED_STANDING_HIP_ABDUCTION (FIT_CAST(FIT_HIP_STABILITY_EXERCISE_NAME, 29))
|
|
#define FIT_HIP_STABILITY_EXERCISE_NAME_STANDING_REAR_LEG_RAISE (FIT_CAST(FIT_HIP_STABILITY_EXERCISE_NAME, 30))
|
|
#define FIT_HIP_STABILITY_EXERCISE_NAME_WEIGHTED_STANDING_REAR_LEG_RAISE (FIT_CAST(FIT_HIP_STABILITY_EXERCISE_NAME, 31))
|
|
#define FIT_HIP_STABILITY_EXERCISE_NAME_SUPINE_HIP_INTERNAL_ROTATION (FIT_CAST(FIT_HIP_STABILITY_EXERCISE_NAME, 32))
|
|
#define FIT_HIP_STABILITY_EXERCISE_NAME_WEIGHTED_SUPINE_HIP_INTERNAL_ROTATION (FIT_CAST(FIT_HIP_STABILITY_EXERCISE_NAME, 33))
|
|
#define FIT_HIP_STABILITY_EXERCISE_NAME_LYING_ABDUCTION_STRETCH (FIT_CAST(FIT_HIP_STABILITY_EXERCISE_NAME, 34))
|
|
#define FIT_HIP_STABILITY_EXERCISE_NAME_COUNT 35
|
|
|
|
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_CAST(FIT_HIP_SWING_EXERCISE_NAME, 0))
|
|
#define FIT_HIP_SWING_EXERCISE_NAME_SINGLE_ARM_DUMBBELL_SWING (FIT_CAST(FIT_HIP_SWING_EXERCISE_NAME, 1))
|
|
#define FIT_HIP_SWING_EXERCISE_NAME_STEP_OUT_SWING (FIT_CAST(FIT_HIP_SWING_EXERCISE_NAME, 2))
|
|
#define FIT_HIP_SWING_EXERCISE_NAME_ONE_ARM_SWING (FIT_CAST(FIT_HIP_SWING_EXERCISE_NAME, 3))
|
|
#define FIT_HIP_SWING_EXERCISE_NAME_COUNT 4
|
|
|
|
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_CAST(FIT_HYPEREXTENSION_EXERCISE_NAME, 0))
|
|
#define FIT_HYPEREXTENSION_EXERCISE_NAME_WEIGHTED_BACK_EXTENSION_WITH_OPPOSITE_ARM_AND_LEG_REACH (FIT_CAST(FIT_HYPEREXTENSION_EXERCISE_NAME, 1))
|
|
#define FIT_HYPEREXTENSION_EXERCISE_NAME_BASE_ROTATIONS (FIT_CAST(FIT_HYPEREXTENSION_EXERCISE_NAME, 2))
|
|
#define FIT_HYPEREXTENSION_EXERCISE_NAME_WEIGHTED_BASE_ROTATIONS (FIT_CAST(FIT_HYPEREXTENSION_EXERCISE_NAME, 3))
|
|
#define FIT_HYPEREXTENSION_EXERCISE_NAME_BENT_KNEE_REVERSE_HYPEREXTENSION (FIT_CAST(FIT_HYPEREXTENSION_EXERCISE_NAME, 4))
|
|
#define FIT_HYPEREXTENSION_EXERCISE_NAME_WEIGHTED_BENT_KNEE_REVERSE_HYPEREXTENSION (FIT_CAST(FIT_HYPEREXTENSION_EXERCISE_NAME, 5))
|
|
#define FIT_HYPEREXTENSION_EXERCISE_NAME_HOLLOW_HOLD_AND_ROLL (FIT_CAST(FIT_HYPEREXTENSION_EXERCISE_NAME, 6))
|
|
#define FIT_HYPEREXTENSION_EXERCISE_NAME_WEIGHTED_HOLLOW_HOLD_AND_ROLL (FIT_CAST(FIT_HYPEREXTENSION_EXERCISE_NAME, 7))
|
|
#define FIT_HYPEREXTENSION_EXERCISE_NAME_KICKS (FIT_CAST(FIT_HYPEREXTENSION_EXERCISE_NAME, 8))
|
|
#define FIT_HYPEREXTENSION_EXERCISE_NAME_WEIGHTED_KICKS (FIT_CAST(FIT_HYPEREXTENSION_EXERCISE_NAME, 9))
|
|
#define FIT_HYPEREXTENSION_EXERCISE_NAME_KNEE_RAISES (FIT_CAST(FIT_HYPEREXTENSION_EXERCISE_NAME, 10))
|
|
#define FIT_HYPEREXTENSION_EXERCISE_NAME_WEIGHTED_KNEE_RAISES (FIT_CAST(FIT_HYPEREXTENSION_EXERCISE_NAME, 11))
|
|
#define FIT_HYPEREXTENSION_EXERCISE_NAME_KNEELING_SUPERMAN (FIT_CAST(FIT_HYPEREXTENSION_EXERCISE_NAME, 12))
|
|
#define FIT_HYPEREXTENSION_EXERCISE_NAME_WEIGHTED_KNEELING_SUPERMAN (FIT_CAST(FIT_HYPEREXTENSION_EXERCISE_NAME, 13))
|
|
#define FIT_HYPEREXTENSION_EXERCISE_NAME_LAT_PULL_DOWN_WITH_ROW (FIT_CAST(FIT_HYPEREXTENSION_EXERCISE_NAME, 14))
|
|
#define FIT_HYPEREXTENSION_EXERCISE_NAME_MEDICINE_BALL_DEADLIFT_TO_REACH (FIT_CAST(FIT_HYPEREXTENSION_EXERCISE_NAME, 15))
|
|
#define FIT_HYPEREXTENSION_EXERCISE_NAME_ONE_ARM_ONE_LEG_ROW (FIT_CAST(FIT_HYPEREXTENSION_EXERCISE_NAME, 16))
|
|
#define FIT_HYPEREXTENSION_EXERCISE_NAME_ONE_ARM_ROW_WITH_BAND (FIT_CAST(FIT_HYPEREXTENSION_EXERCISE_NAME, 17))
|
|
#define FIT_HYPEREXTENSION_EXERCISE_NAME_OVERHEAD_LUNGE_WITH_MEDICINE_BALL (FIT_CAST(FIT_HYPEREXTENSION_EXERCISE_NAME, 18))
|
|
#define FIT_HYPEREXTENSION_EXERCISE_NAME_PLANK_KNEE_TUCKS (FIT_CAST(FIT_HYPEREXTENSION_EXERCISE_NAME, 19))
|
|
#define FIT_HYPEREXTENSION_EXERCISE_NAME_WEIGHTED_PLANK_KNEE_TUCKS (FIT_CAST(FIT_HYPEREXTENSION_EXERCISE_NAME, 20))
|
|
#define FIT_HYPEREXTENSION_EXERCISE_NAME_SIDE_STEP (FIT_CAST(FIT_HYPEREXTENSION_EXERCISE_NAME, 21))
|
|
#define FIT_HYPEREXTENSION_EXERCISE_NAME_WEIGHTED_SIDE_STEP (FIT_CAST(FIT_HYPEREXTENSION_EXERCISE_NAME, 22))
|
|
#define FIT_HYPEREXTENSION_EXERCISE_NAME_SINGLE_LEG_BACK_EXTENSION (FIT_CAST(FIT_HYPEREXTENSION_EXERCISE_NAME, 23))
|
|
#define FIT_HYPEREXTENSION_EXERCISE_NAME_WEIGHTED_SINGLE_LEG_BACK_EXTENSION (FIT_CAST(FIT_HYPEREXTENSION_EXERCISE_NAME, 24))
|
|
#define FIT_HYPEREXTENSION_EXERCISE_NAME_SPINE_EXTENSION (FIT_CAST(FIT_HYPEREXTENSION_EXERCISE_NAME, 25))
|
|
#define FIT_HYPEREXTENSION_EXERCISE_NAME_WEIGHTED_SPINE_EXTENSION (FIT_CAST(FIT_HYPEREXTENSION_EXERCISE_NAME, 26))
|
|
#define FIT_HYPEREXTENSION_EXERCISE_NAME_STATIC_BACK_EXTENSION (FIT_CAST(FIT_HYPEREXTENSION_EXERCISE_NAME, 27))
|
|
#define FIT_HYPEREXTENSION_EXERCISE_NAME_WEIGHTED_STATIC_BACK_EXTENSION (FIT_CAST(FIT_HYPEREXTENSION_EXERCISE_NAME, 28))
|
|
#define FIT_HYPEREXTENSION_EXERCISE_NAME_SUPERMAN_FROM_FLOOR (FIT_CAST(FIT_HYPEREXTENSION_EXERCISE_NAME, 29))
|
|
#define FIT_HYPEREXTENSION_EXERCISE_NAME_WEIGHTED_SUPERMAN_FROM_FLOOR (FIT_CAST(FIT_HYPEREXTENSION_EXERCISE_NAME, 30))
|
|
#define FIT_HYPEREXTENSION_EXERCISE_NAME_SWISS_BALL_BACK_EXTENSION (FIT_CAST(FIT_HYPEREXTENSION_EXERCISE_NAME, 31))
|
|
#define FIT_HYPEREXTENSION_EXERCISE_NAME_WEIGHTED_SWISS_BALL_BACK_EXTENSION (FIT_CAST(FIT_HYPEREXTENSION_EXERCISE_NAME, 32))
|
|
#define FIT_HYPEREXTENSION_EXERCISE_NAME_SWISS_BALL_HYPEREXTENSION (FIT_CAST(FIT_HYPEREXTENSION_EXERCISE_NAME, 33))
|
|
#define FIT_HYPEREXTENSION_EXERCISE_NAME_WEIGHTED_SWISS_BALL_HYPEREXTENSION (FIT_CAST(FIT_HYPEREXTENSION_EXERCISE_NAME, 34))
|
|
#define FIT_HYPEREXTENSION_EXERCISE_NAME_SWISS_BALL_OPPOSITE_ARM_AND_LEG_LIFT (FIT_CAST(FIT_HYPEREXTENSION_EXERCISE_NAME, 35))
|
|
#define FIT_HYPEREXTENSION_EXERCISE_NAME_WEIGHTED_SWISS_BALL_OPPOSITE_ARM_AND_LEG_LIFT (FIT_CAST(FIT_HYPEREXTENSION_EXERCISE_NAME, 36))
|
|
#define FIT_HYPEREXTENSION_EXERCISE_NAME_SUPERMAN_ON_SWISS_BALL (FIT_CAST(FIT_HYPEREXTENSION_EXERCISE_NAME, 37))
|
|
#define FIT_HYPEREXTENSION_EXERCISE_NAME_COBRA (FIT_CAST(FIT_HYPEREXTENSION_EXERCISE_NAME, 38))
|
|
#define FIT_HYPEREXTENSION_EXERCISE_NAME_SUPINE_FLOOR_BARRE (FIT_CAST(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_CAST(FIT_LATERAL_RAISE_EXERCISE_NAME, 0))
|
|
#define FIT_LATERAL_RAISE_EXERCISE_NAME_ALTERNATING_LATERAL_RAISE_WITH_STATIC_HOLD (FIT_CAST(FIT_LATERAL_RAISE_EXERCISE_NAME, 1))
|
|
#define FIT_LATERAL_RAISE_EXERCISE_NAME_BAR_MUSCLE_UP (FIT_CAST(FIT_LATERAL_RAISE_EXERCISE_NAME, 2))
|
|
#define FIT_LATERAL_RAISE_EXERCISE_NAME_BENT_OVER_LATERAL_RAISE (FIT_CAST(FIT_LATERAL_RAISE_EXERCISE_NAME, 3))
|
|
#define FIT_LATERAL_RAISE_EXERCISE_NAME_CABLE_DIAGONAL_RAISE (FIT_CAST(FIT_LATERAL_RAISE_EXERCISE_NAME, 4))
|
|
#define FIT_LATERAL_RAISE_EXERCISE_NAME_CABLE_FRONT_RAISE (FIT_CAST(FIT_LATERAL_RAISE_EXERCISE_NAME, 5))
|
|
#define FIT_LATERAL_RAISE_EXERCISE_NAME_CALORIE_ROW (FIT_CAST(FIT_LATERAL_RAISE_EXERCISE_NAME, 6))
|
|
#define FIT_LATERAL_RAISE_EXERCISE_NAME_COMBO_SHOULDER_RAISE (FIT_CAST(FIT_LATERAL_RAISE_EXERCISE_NAME, 7))
|
|
#define FIT_LATERAL_RAISE_EXERCISE_NAME_DUMBBELL_DIAGONAL_RAISE (FIT_CAST(FIT_LATERAL_RAISE_EXERCISE_NAME, 8))
|
|
#define FIT_LATERAL_RAISE_EXERCISE_NAME_DUMBBELL_V_RAISE (FIT_CAST(FIT_LATERAL_RAISE_EXERCISE_NAME, 9))
|
|
#define FIT_LATERAL_RAISE_EXERCISE_NAME_FRONT_RAISE (FIT_CAST(FIT_LATERAL_RAISE_EXERCISE_NAME, 10))
|
|
#define FIT_LATERAL_RAISE_EXERCISE_NAME_LEANING_DUMBBELL_LATERAL_RAISE (FIT_CAST(FIT_LATERAL_RAISE_EXERCISE_NAME, 11))
|
|
#define FIT_LATERAL_RAISE_EXERCISE_NAME_LYING_DUMBBELL_RAISE (FIT_CAST(FIT_LATERAL_RAISE_EXERCISE_NAME, 12))
|
|
#define FIT_LATERAL_RAISE_EXERCISE_NAME_MUSCLE_UP (FIT_CAST(FIT_LATERAL_RAISE_EXERCISE_NAME, 13))
|
|
#define FIT_LATERAL_RAISE_EXERCISE_NAME_ONE_ARM_CABLE_LATERAL_RAISE (FIT_CAST(FIT_LATERAL_RAISE_EXERCISE_NAME, 14))
|
|
#define FIT_LATERAL_RAISE_EXERCISE_NAME_OVERHAND_GRIP_REAR_LATERAL_RAISE (FIT_CAST(FIT_LATERAL_RAISE_EXERCISE_NAME, 15))
|
|
#define FIT_LATERAL_RAISE_EXERCISE_NAME_PLATE_RAISES (FIT_CAST(FIT_LATERAL_RAISE_EXERCISE_NAME, 16))
|
|
#define FIT_LATERAL_RAISE_EXERCISE_NAME_RING_DIP (FIT_CAST(FIT_LATERAL_RAISE_EXERCISE_NAME, 17))
|
|
#define FIT_LATERAL_RAISE_EXERCISE_NAME_WEIGHTED_RING_DIP (FIT_CAST(FIT_LATERAL_RAISE_EXERCISE_NAME, 18))
|
|
#define FIT_LATERAL_RAISE_EXERCISE_NAME_RING_MUSCLE_UP (FIT_CAST(FIT_LATERAL_RAISE_EXERCISE_NAME, 19))
|
|
#define FIT_LATERAL_RAISE_EXERCISE_NAME_WEIGHTED_RING_MUSCLE_UP (FIT_CAST(FIT_LATERAL_RAISE_EXERCISE_NAME, 20))
|
|
#define FIT_LATERAL_RAISE_EXERCISE_NAME_ROPE_CLIMB (FIT_CAST(FIT_LATERAL_RAISE_EXERCISE_NAME, 21))
|
|
#define FIT_LATERAL_RAISE_EXERCISE_NAME_WEIGHTED_ROPE_CLIMB (FIT_CAST(FIT_LATERAL_RAISE_EXERCISE_NAME, 22))
|
|
#define FIT_LATERAL_RAISE_EXERCISE_NAME_SCAPTION (FIT_CAST(FIT_LATERAL_RAISE_EXERCISE_NAME, 23))
|
|
#define FIT_LATERAL_RAISE_EXERCISE_NAME_SEATED_LATERAL_RAISE (FIT_CAST(FIT_LATERAL_RAISE_EXERCISE_NAME, 24))
|
|
#define FIT_LATERAL_RAISE_EXERCISE_NAME_SEATED_REAR_LATERAL_RAISE (FIT_CAST(FIT_LATERAL_RAISE_EXERCISE_NAME, 25))
|
|
#define FIT_LATERAL_RAISE_EXERCISE_NAME_SIDE_LYING_LATERAL_RAISE (FIT_CAST(FIT_LATERAL_RAISE_EXERCISE_NAME, 26))
|
|
#define FIT_LATERAL_RAISE_EXERCISE_NAME_STANDING_LIFT (FIT_CAST(FIT_LATERAL_RAISE_EXERCISE_NAME, 27))
|
|
#define FIT_LATERAL_RAISE_EXERCISE_NAME_SUSPENDED_ROW (FIT_CAST(FIT_LATERAL_RAISE_EXERCISE_NAME, 28))
|
|
#define FIT_LATERAL_RAISE_EXERCISE_NAME_UNDERHAND_GRIP_REAR_LATERAL_RAISE (FIT_CAST(FIT_LATERAL_RAISE_EXERCISE_NAME, 29))
|
|
#define FIT_LATERAL_RAISE_EXERCISE_NAME_WALL_SLIDE (FIT_CAST(FIT_LATERAL_RAISE_EXERCISE_NAME, 30))
|
|
#define FIT_LATERAL_RAISE_EXERCISE_NAME_WEIGHTED_WALL_SLIDE (FIT_CAST(FIT_LATERAL_RAISE_EXERCISE_NAME, 31))
|
|
#define FIT_LATERAL_RAISE_EXERCISE_NAME_ARM_CIRCLES (FIT_CAST(FIT_LATERAL_RAISE_EXERCISE_NAME, 32))
|
|
#define FIT_LATERAL_RAISE_EXERCISE_NAME_SHAVING_THE_HEAD (FIT_CAST(FIT_LATERAL_RAISE_EXERCISE_NAME, 33))
|
|
#define FIT_LATERAL_RAISE_EXERCISE_NAME_DUMBBELL_LATERAL_RAISE (FIT_CAST(FIT_LATERAL_RAISE_EXERCISE_NAME, 34))
|
|
#define FIT_LATERAL_RAISE_EXERCISE_NAME_RING_DIP_KIPPING (FIT_CAST(FIT_LATERAL_RAISE_EXERCISE_NAME, 36))
|
|
#define FIT_LATERAL_RAISE_EXERCISE_NAME_WALL_WALK (FIT_CAST(FIT_LATERAL_RAISE_EXERCISE_NAME, 37))
|
|
#define FIT_LATERAL_RAISE_EXERCISE_NAME_DUMBBELL_FRONT_RAISE_WHEELCHAIR (FIT_CAST(FIT_LATERAL_RAISE_EXERCISE_NAME, 38))
|
|
#define FIT_LATERAL_RAISE_EXERCISE_NAME_DUMBBELL_LATERAL_RAISE_WHEELCHAIR (FIT_CAST(FIT_LATERAL_RAISE_EXERCISE_NAME, 39))
|
|
#define FIT_LATERAL_RAISE_EXERCISE_NAME_POLE_DOUBLE_ARM_OVERHEAD_AND_FORWARD_WHEELCHAIR (FIT_CAST(FIT_LATERAL_RAISE_EXERCISE_NAME, 40))
|
|
#define FIT_LATERAL_RAISE_EXERCISE_NAME_POLE_STRAIGHT_ARM_OVERHEAD_WHEELCHAIR (FIT_CAST(FIT_LATERAL_RAISE_EXERCISE_NAME, 41))
|
|
#define FIT_LATERAL_RAISE_EXERCISE_NAME_COUNT 41
|
|
|
|
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_CAST(FIT_LEG_CURL_EXERCISE_NAME, 0))
|
|
#define FIT_LEG_CURL_EXERCISE_NAME_WEIGHTED_LEG_CURL (FIT_CAST(FIT_LEG_CURL_EXERCISE_NAME, 1))
|
|
#define FIT_LEG_CURL_EXERCISE_NAME_GOOD_MORNING (FIT_CAST(FIT_LEG_CURL_EXERCISE_NAME, 2))
|
|
#define FIT_LEG_CURL_EXERCISE_NAME_SEATED_BARBELL_GOOD_MORNING (FIT_CAST(FIT_LEG_CURL_EXERCISE_NAME, 3))
|
|
#define FIT_LEG_CURL_EXERCISE_NAME_SINGLE_LEG_BARBELL_GOOD_MORNING (FIT_CAST(FIT_LEG_CURL_EXERCISE_NAME, 4))
|
|
#define FIT_LEG_CURL_EXERCISE_NAME_SINGLE_LEG_SLIDING_LEG_CURL (FIT_CAST(FIT_LEG_CURL_EXERCISE_NAME, 5))
|
|
#define FIT_LEG_CURL_EXERCISE_NAME_SLIDING_LEG_CURL (FIT_CAST(FIT_LEG_CURL_EXERCISE_NAME, 6))
|
|
#define FIT_LEG_CURL_EXERCISE_NAME_SPLIT_BARBELL_GOOD_MORNING (FIT_CAST(FIT_LEG_CURL_EXERCISE_NAME, 7))
|
|
#define FIT_LEG_CURL_EXERCISE_NAME_SPLIT_STANCE_EXTENSION (FIT_CAST(FIT_LEG_CURL_EXERCISE_NAME, 8))
|
|
#define FIT_LEG_CURL_EXERCISE_NAME_STAGGERED_STANCE_GOOD_MORNING (FIT_CAST(FIT_LEG_CURL_EXERCISE_NAME, 9))
|
|
#define FIT_LEG_CURL_EXERCISE_NAME_SWISS_BALL_HIP_RAISE_AND_LEG_CURL (FIT_CAST(FIT_LEG_CURL_EXERCISE_NAME, 10))
|
|
#define FIT_LEG_CURL_EXERCISE_NAME_ZERCHER_GOOD_MORNING (FIT_CAST(FIT_LEG_CURL_EXERCISE_NAME, 11))
|
|
#define FIT_LEG_CURL_EXERCISE_NAME_BAND_GOOD_MORNING (FIT_CAST(FIT_LEG_CURL_EXERCISE_NAME, 12))
|
|
#define FIT_LEG_CURL_EXERCISE_NAME_BAR_GOOD_MORNING (FIT_CAST(FIT_LEG_CURL_EXERCISE_NAME, 13))
|
|
#define FIT_LEG_CURL_EXERCISE_NAME_COUNT 14
|
|
|
|
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_CAST(FIT_LEG_RAISE_EXERCISE_NAME, 0))
|
|
#define FIT_LEG_RAISE_EXERCISE_NAME_HANGING_LEG_RAISE (FIT_CAST(FIT_LEG_RAISE_EXERCISE_NAME, 1))
|
|
#define FIT_LEG_RAISE_EXERCISE_NAME_WEIGHTED_HANGING_LEG_RAISE (FIT_CAST(FIT_LEG_RAISE_EXERCISE_NAME, 2))
|
|
#define FIT_LEG_RAISE_EXERCISE_NAME_HANGING_SINGLE_LEG_RAISE (FIT_CAST(FIT_LEG_RAISE_EXERCISE_NAME, 3))
|
|
#define FIT_LEG_RAISE_EXERCISE_NAME_WEIGHTED_HANGING_SINGLE_LEG_RAISE (FIT_CAST(FIT_LEG_RAISE_EXERCISE_NAME, 4))
|
|
#define FIT_LEG_RAISE_EXERCISE_NAME_KETTLEBELL_LEG_RAISES (FIT_CAST(FIT_LEG_RAISE_EXERCISE_NAME, 5))
|
|
#define FIT_LEG_RAISE_EXERCISE_NAME_LEG_LOWERING_DRILL (FIT_CAST(FIT_LEG_RAISE_EXERCISE_NAME, 6))
|
|
#define FIT_LEG_RAISE_EXERCISE_NAME_WEIGHTED_LEG_LOWERING_DRILL (FIT_CAST(FIT_LEG_RAISE_EXERCISE_NAME, 7))
|
|
#define FIT_LEG_RAISE_EXERCISE_NAME_LYING_STRAIGHT_LEG_RAISE (FIT_CAST(FIT_LEG_RAISE_EXERCISE_NAME, 8))
|
|
#define FIT_LEG_RAISE_EXERCISE_NAME_WEIGHTED_LYING_STRAIGHT_LEG_RAISE (FIT_CAST(FIT_LEG_RAISE_EXERCISE_NAME, 9))
|
|
#define FIT_LEG_RAISE_EXERCISE_NAME_MEDICINE_BALL_LEG_DROPS (FIT_CAST(FIT_LEG_RAISE_EXERCISE_NAME, 10))
|
|
#define FIT_LEG_RAISE_EXERCISE_NAME_QUADRUPED_LEG_RAISE (FIT_CAST(FIT_LEG_RAISE_EXERCISE_NAME, 11))
|
|
#define FIT_LEG_RAISE_EXERCISE_NAME_WEIGHTED_QUADRUPED_LEG_RAISE (FIT_CAST(FIT_LEG_RAISE_EXERCISE_NAME, 12))
|
|
#define FIT_LEG_RAISE_EXERCISE_NAME_REVERSE_LEG_RAISE (FIT_CAST(FIT_LEG_RAISE_EXERCISE_NAME, 13))
|
|
#define FIT_LEG_RAISE_EXERCISE_NAME_WEIGHTED_REVERSE_LEG_RAISE (FIT_CAST(FIT_LEG_RAISE_EXERCISE_NAME, 14))
|
|
#define FIT_LEG_RAISE_EXERCISE_NAME_REVERSE_LEG_RAISE_ON_SWISS_BALL (FIT_CAST(FIT_LEG_RAISE_EXERCISE_NAME, 15))
|
|
#define FIT_LEG_RAISE_EXERCISE_NAME_WEIGHTED_REVERSE_LEG_RAISE_ON_SWISS_BALL (FIT_CAST(FIT_LEG_RAISE_EXERCISE_NAME, 16))
|
|
#define FIT_LEG_RAISE_EXERCISE_NAME_SINGLE_LEG_LOWERING_DRILL (FIT_CAST(FIT_LEG_RAISE_EXERCISE_NAME, 17))
|
|
#define FIT_LEG_RAISE_EXERCISE_NAME_WEIGHTED_SINGLE_LEG_LOWERING_DRILL (FIT_CAST(FIT_LEG_RAISE_EXERCISE_NAME, 18))
|
|
#define FIT_LEG_RAISE_EXERCISE_NAME_WEIGHTED_HANGING_KNEE_RAISE (FIT_CAST(FIT_LEG_RAISE_EXERCISE_NAME, 19))
|
|
#define FIT_LEG_RAISE_EXERCISE_NAME_LATERAL_STEPOVER (FIT_CAST(FIT_LEG_RAISE_EXERCISE_NAME, 20))
|
|
#define FIT_LEG_RAISE_EXERCISE_NAME_WEIGHTED_LATERAL_STEPOVER (FIT_CAST(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_CAST(FIT_LUNGE_EXERCISE_NAME, 0))
|
|
#define FIT_LUNGE_EXERCISE_NAME_LUNGE_MATRIX (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 1))
|
|
#define FIT_LUNGE_EXERCISE_NAME_WEIGHTED_LUNGE_MATRIX (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 2))
|
|
#define FIT_LUNGE_EXERCISE_NAME_ALTERNATING_BARBELL_FORWARD_LUNGE (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 3))
|
|
#define FIT_LUNGE_EXERCISE_NAME_ALTERNATING_DUMBBELL_LUNGE_WITH_REACH (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 4))
|
|
#define FIT_LUNGE_EXERCISE_NAME_BACK_FOOT_ELEVATED_DUMBBELL_SPLIT_SQUAT (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 5))
|
|
#define FIT_LUNGE_EXERCISE_NAME_BARBELL_BOX_LUNGE (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 6))
|
|
#define FIT_LUNGE_EXERCISE_NAME_BARBELL_BULGARIAN_SPLIT_SQUAT (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 7))
|
|
#define FIT_LUNGE_EXERCISE_NAME_BARBELL_CROSSOVER_LUNGE (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 8))
|
|
#define FIT_LUNGE_EXERCISE_NAME_BARBELL_FRONT_SPLIT_SQUAT (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 9))
|
|
#define FIT_LUNGE_EXERCISE_NAME_BARBELL_LUNGE (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 10))
|
|
#define FIT_LUNGE_EXERCISE_NAME_BARBELL_REVERSE_LUNGE (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 11))
|
|
#define FIT_LUNGE_EXERCISE_NAME_BARBELL_SIDE_LUNGE (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 12))
|
|
#define FIT_LUNGE_EXERCISE_NAME_BARBELL_SPLIT_SQUAT (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 13))
|
|
#define FIT_LUNGE_EXERCISE_NAME_CORE_CONTROL_REAR_LUNGE (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 14))
|
|
#define FIT_LUNGE_EXERCISE_NAME_DIAGONAL_LUNGE (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 15))
|
|
#define FIT_LUNGE_EXERCISE_NAME_DROP_LUNGE (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 16))
|
|
#define FIT_LUNGE_EXERCISE_NAME_DUMBBELL_BOX_LUNGE (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 17))
|
|
#define FIT_LUNGE_EXERCISE_NAME_DUMBBELL_BULGARIAN_SPLIT_SQUAT (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 18))
|
|
#define FIT_LUNGE_EXERCISE_NAME_DUMBBELL_CROSSOVER_LUNGE (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 19))
|
|
#define FIT_LUNGE_EXERCISE_NAME_DUMBBELL_DIAGONAL_LUNGE (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 20))
|
|
#define FIT_LUNGE_EXERCISE_NAME_DUMBBELL_LUNGE (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 21))
|
|
#define FIT_LUNGE_EXERCISE_NAME_DUMBBELL_LUNGE_AND_ROTATION (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 22))
|
|
#define FIT_LUNGE_EXERCISE_NAME_DUMBBELL_OVERHEAD_BULGARIAN_SPLIT_SQUAT (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 23))
|
|
#define FIT_LUNGE_EXERCISE_NAME_DUMBBELL_REVERSE_LUNGE_TO_HIGH_KNEE_AND_PRESS (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 24))
|
|
#define FIT_LUNGE_EXERCISE_NAME_DUMBBELL_SIDE_LUNGE (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 25))
|
|
#define FIT_LUNGE_EXERCISE_NAME_ELEVATED_FRONT_FOOT_BARBELL_SPLIT_SQUAT (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 26))
|
|
#define FIT_LUNGE_EXERCISE_NAME_FRONT_FOOT_ELEVATED_DUMBBELL_SPLIT_SQUAT (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 27))
|
|
#define FIT_LUNGE_EXERCISE_NAME_GUNSLINGER_LUNGE (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 28))
|
|
#define FIT_LUNGE_EXERCISE_NAME_LAWNMOWER_LUNGE (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 29))
|
|
#define FIT_LUNGE_EXERCISE_NAME_LOW_LUNGE_WITH_ISOMETRIC_ADDUCTION (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 30))
|
|
#define FIT_LUNGE_EXERCISE_NAME_LOW_SIDE_TO_SIDE_LUNGE (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 31))
|
|
#define FIT_LUNGE_EXERCISE_NAME_LUNGE (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 32))
|
|
#define FIT_LUNGE_EXERCISE_NAME_WEIGHTED_LUNGE (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 33))
|
|
#define FIT_LUNGE_EXERCISE_NAME_LUNGE_WITH_ARM_REACH (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 34))
|
|
#define FIT_LUNGE_EXERCISE_NAME_LUNGE_WITH_DIAGONAL_REACH (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 35))
|
|
#define FIT_LUNGE_EXERCISE_NAME_LUNGE_WITH_SIDE_BEND (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 36))
|
|
#define FIT_LUNGE_EXERCISE_NAME_OFFSET_DUMBBELL_LUNGE (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 37))
|
|
#define FIT_LUNGE_EXERCISE_NAME_OFFSET_DUMBBELL_REVERSE_LUNGE (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 38))
|
|
#define FIT_LUNGE_EXERCISE_NAME_OVERHEAD_BULGARIAN_SPLIT_SQUAT (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 39))
|
|
#define FIT_LUNGE_EXERCISE_NAME_OVERHEAD_DUMBBELL_REVERSE_LUNGE (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 40))
|
|
#define FIT_LUNGE_EXERCISE_NAME_OVERHEAD_DUMBBELL_SPLIT_SQUAT (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 41))
|
|
#define FIT_LUNGE_EXERCISE_NAME_OVERHEAD_LUNGE_WITH_ROTATION (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 42))
|
|
#define FIT_LUNGE_EXERCISE_NAME_REVERSE_BARBELL_BOX_LUNGE (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 43))
|
|
#define FIT_LUNGE_EXERCISE_NAME_REVERSE_BOX_LUNGE (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 44))
|
|
#define FIT_LUNGE_EXERCISE_NAME_REVERSE_DUMBBELL_BOX_LUNGE (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 45))
|
|
#define FIT_LUNGE_EXERCISE_NAME_REVERSE_DUMBBELL_CROSSOVER_LUNGE (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 46))
|
|
#define FIT_LUNGE_EXERCISE_NAME_REVERSE_DUMBBELL_DIAGONAL_LUNGE (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 47))
|
|
#define FIT_LUNGE_EXERCISE_NAME_REVERSE_LUNGE_WITH_REACH_BACK (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 48))
|
|
#define FIT_LUNGE_EXERCISE_NAME_WEIGHTED_REVERSE_LUNGE_WITH_REACH_BACK (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 49))
|
|
#define FIT_LUNGE_EXERCISE_NAME_REVERSE_LUNGE_WITH_TWIST_AND_OVERHEAD_REACH (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 50))
|
|
#define FIT_LUNGE_EXERCISE_NAME_WEIGHTED_REVERSE_LUNGE_WITH_TWIST_AND_OVERHEAD_REACH (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 51))
|
|
#define FIT_LUNGE_EXERCISE_NAME_REVERSE_SLIDING_BOX_LUNGE (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 52))
|
|
#define FIT_LUNGE_EXERCISE_NAME_WEIGHTED_REVERSE_SLIDING_BOX_LUNGE (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 53))
|
|
#define FIT_LUNGE_EXERCISE_NAME_REVERSE_SLIDING_LUNGE (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 54))
|
|
#define FIT_LUNGE_EXERCISE_NAME_WEIGHTED_REVERSE_SLIDING_LUNGE (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 55))
|
|
#define FIT_LUNGE_EXERCISE_NAME_RUNNERS_LUNGE_TO_BALANCE (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 56))
|
|
#define FIT_LUNGE_EXERCISE_NAME_WEIGHTED_RUNNERS_LUNGE_TO_BALANCE (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 57))
|
|
#define FIT_LUNGE_EXERCISE_NAME_SHIFTING_SIDE_LUNGE (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 58))
|
|
#define FIT_LUNGE_EXERCISE_NAME_SIDE_AND_CROSSOVER_LUNGE (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 59))
|
|
#define FIT_LUNGE_EXERCISE_NAME_WEIGHTED_SIDE_AND_CROSSOVER_LUNGE (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 60))
|
|
#define FIT_LUNGE_EXERCISE_NAME_SIDE_LUNGE (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 61))
|
|
#define FIT_LUNGE_EXERCISE_NAME_WEIGHTED_SIDE_LUNGE (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 62))
|
|
#define FIT_LUNGE_EXERCISE_NAME_SIDE_LUNGE_AND_PRESS (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 63))
|
|
#define FIT_LUNGE_EXERCISE_NAME_SIDE_LUNGE_JUMP_OFF (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 64))
|
|
#define FIT_LUNGE_EXERCISE_NAME_SIDE_LUNGE_SWEEP (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 65))
|
|
#define FIT_LUNGE_EXERCISE_NAME_WEIGHTED_SIDE_LUNGE_SWEEP (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 66))
|
|
#define FIT_LUNGE_EXERCISE_NAME_SIDE_LUNGE_TO_CROSSOVER_TAP (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 67))
|
|
#define FIT_LUNGE_EXERCISE_NAME_WEIGHTED_SIDE_LUNGE_TO_CROSSOVER_TAP (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 68))
|
|
#define FIT_LUNGE_EXERCISE_NAME_SIDE_TO_SIDE_LUNGE_CHOPS (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 69))
|
|
#define FIT_LUNGE_EXERCISE_NAME_WEIGHTED_SIDE_TO_SIDE_LUNGE_CHOPS (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 70))
|
|
#define FIT_LUNGE_EXERCISE_NAME_SIFF_JUMP_LUNGE (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 71))
|
|
#define FIT_LUNGE_EXERCISE_NAME_WEIGHTED_SIFF_JUMP_LUNGE (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 72))
|
|
#define FIT_LUNGE_EXERCISE_NAME_SINGLE_ARM_REVERSE_LUNGE_AND_PRESS (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 73))
|
|
#define FIT_LUNGE_EXERCISE_NAME_SLIDING_LATERAL_LUNGE (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 74))
|
|
#define FIT_LUNGE_EXERCISE_NAME_WEIGHTED_SLIDING_LATERAL_LUNGE (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 75))
|
|
#define FIT_LUNGE_EXERCISE_NAME_WALKING_BARBELL_LUNGE (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 76))
|
|
#define FIT_LUNGE_EXERCISE_NAME_WALKING_DUMBBELL_LUNGE (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 77))
|
|
#define FIT_LUNGE_EXERCISE_NAME_WALKING_LUNGE (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 78))
|
|
#define FIT_LUNGE_EXERCISE_NAME_WEIGHTED_WALKING_LUNGE (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 79))
|
|
#define FIT_LUNGE_EXERCISE_NAME_WIDE_GRIP_OVERHEAD_BARBELL_SPLIT_SQUAT (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 80))
|
|
#define FIT_LUNGE_EXERCISE_NAME_ALTERNATING_DUMBBELL_LUNGE (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 81))
|
|
#define FIT_LUNGE_EXERCISE_NAME_DUMBBELL_REVERSE_LUNGE (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 82))
|
|
#define FIT_LUNGE_EXERCISE_NAME_OVERHEAD_DUMBBELL_LUNGE (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 83))
|
|
#define FIT_LUNGE_EXERCISE_NAME_SCISSOR_POWER_SWITCH (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 84))
|
|
#define FIT_LUNGE_EXERCISE_NAME_DUMBBELL_OVERHEAD_WALKING_LUNGE (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 85))
|
|
#define FIT_LUNGE_EXERCISE_NAME_CURTSY_LUNGE (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 86))
|
|
#define FIT_LUNGE_EXERCISE_NAME_WEIGHTED_CURTSY_LUNGE (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 87))
|
|
#define FIT_LUNGE_EXERCISE_NAME_WEIGHTED_SHIFTING_SIDE_LUNGE (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 88))
|
|
#define FIT_LUNGE_EXERCISE_NAME_WEIGHTED_SIDE_LUNGE_AND_PRESS (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 89))
|
|
#define FIT_LUNGE_EXERCISE_NAME_WEIGHTED_SIDE_LUNGE_JUMP_OFF (FIT_CAST(FIT_LUNGE_EXERCISE_NAME, 90))
|
|
#define FIT_LUNGE_EXERCISE_NAME_COUNT 91
|
|
|
|
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_CAST(FIT_OLYMPIC_LIFT_EXERCISE_NAME, 0))
|
|
#define FIT_OLYMPIC_LIFT_EXERCISE_NAME_BARBELL_HANG_SQUAT_CLEAN (FIT_CAST(FIT_OLYMPIC_LIFT_EXERCISE_NAME, 1))
|
|
#define FIT_OLYMPIC_LIFT_EXERCISE_NAME_BARBELL_POWER_CLEAN (FIT_CAST(FIT_OLYMPIC_LIFT_EXERCISE_NAME, 2))
|
|
#define FIT_OLYMPIC_LIFT_EXERCISE_NAME_BARBELL_POWER_SNATCH (FIT_CAST(FIT_OLYMPIC_LIFT_EXERCISE_NAME, 3))
|
|
#define FIT_OLYMPIC_LIFT_EXERCISE_NAME_BARBELL_SQUAT_CLEAN (FIT_CAST(FIT_OLYMPIC_LIFT_EXERCISE_NAME, 4))
|
|
#define FIT_OLYMPIC_LIFT_EXERCISE_NAME_CLEAN_AND_JERK (FIT_CAST(FIT_OLYMPIC_LIFT_EXERCISE_NAME, 5))
|
|
#define FIT_OLYMPIC_LIFT_EXERCISE_NAME_BARBELL_HANG_POWER_SNATCH (FIT_CAST(FIT_OLYMPIC_LIFT_EXERCISE_NAME, 6))
|
|
#define FIT_OLYMPIC_LIFT_EXERCISE_NAME_BARBELL_HANG_PULL (FIT_CAST(FIT_OLYMPIC_LIFT_EXERCISE_NAME, 7))
|
|
#define FIT_OLYMPIC_LIFT_EXERCISE_NAME_BARBELL_HIGH_PULL (FIT_CAST(FIT_OLYMPIC_LIFT_EXERCISE_NAME, 8))
|
|
#define FIT_OLYMPIC_LIFT_EXERCISE_NAME_BARBELL_SNATCH (FIT_CAST(FIT_OLYMPIC_LIFT_EXERCISE_NAME, 9))
|
|
#define FIT_OLYMPIC_LIFT_EXERCISE_NAME_BARBELL_SPLIT_JERK (FIT_CAST(FIT_OLYMPIC_LIFT_EXERCISE_NAME, 10))
|
|
#define FIT_OLYMPIC_LIFT_EXERCISE_NAME_CLEAN (FIT_CAST(FIT_OLYMPIC_LIFT_EXERCISE_NAME, 11))
|
|
#define FIT_OLYMPIC_LIFT_EXERCISE_NAME_DUMBBELL_CLEAN (FIT_CAST(FIT_OLYMPIC_LIFT_EXERCISE_NAME, 12))
|
|
#define FIT_OLYMPIC_LIFT_EXERCISE_NAME_DUMBBELL_HANG_PULL (FIT_CAST(FIT_OLYMPIC_LIFT_EXERCISE_NAME, 13))
|
|
#define FIT_OLYMPIC_LIFT_EXERCISE_NAME_ONE_HAND_DUMBBELL_SPLIT_SNATCH (FIT_CAST(FIT_OLYMPIC_LIFT_EXERCISE_NAME, 14))
|
|
#define FIT_OLYMPIC_LIFT_EXERCISE_NAME_PUSH_JERK (FIT_CAST(FIT_OLYMPIC_LIFT_EXERCISE_NAME, 15))
|
|
#define FIT_OLYMPIC_LIFT_EXERCISE_NAME_SINGLE_ARM_DUMBBELL_SNATCH (FIT_CAST(FIT_OLYMPIC_LIFT_EXERCISE_NAME, 16))
|
|
#define FIT_OLYMPIC_LIFT_EXERCISE_NAME_SINGLE_ARM_HANG_SNATCH (FIT_CAST(FIT_OLYMPIC_LIFT_EXERCISE_NAME, 17))
|
|
#define FIT_OLYMPIC_LIFT_EXERCISE_NAME_SINGLE_ARM_KETTLEBELL_SNATCH (FIT_CAST(FIT_OLYMPIC_LIFT_EXERCISE_NAME, 18))
|
|
#define FIT_OLYMPIC_LIFT_EXERCISE_NAME_SPLIT_JERK (FIT_CAST(FIT_OLYMPIC_LIFT_EXERCISE_NAME, 19))
|
|
#define FIT_OLYMPIC_LIFT_EXERCISE_NAME_SQUAT_CLEAN_AND_JERK (FIT_CAST(FIT_OLYMPIC_LIFT_EXERCISE_NAME, 20))
|
|
#define FIT_OLYMPIC_LIFT_EXERCISE_NAME_DUMBBELL_HANG_SNATCH (FIT_CAST(FIT_OLYMPIC_LIFT_EXERCISE_NAME, 21))
|
|
#define FIT_OLYMPIC_LIFT_EXERCISE_NAME_DUMBBELL_POWER_CLEAN_AND_JERK (FIT_CAST(FIT_OLYMPIC_LIFT_EXERCISE_NAME, 22))
|
|
#define FIT_OLYMPIC_LIFT_EXERCISE_NAME_DUMBBELL_POWER_CLEAN_AND_PUSH_PRESS (FIT_CAST(FIT_OLYMPIC_LIFT_EXERCISE_NAME, 23))
|
|
#define FIT_OLYMPIC_LIFT_EXERCISE_NAME_DUMBBELL_POWER_CLEAN_AND_STRICT_PRESS (FIT_CAST(FIT_OLYMPIC_LIFT_EXERCISE_NAME, 24))
|
|
#define FIT_OLYMPIC_LIFT_EXERCISE_NAME_DUMBBELL_SNATCH (FIT_CAST(FIT_OLYMPIC_LIFT_EXERCISE_NAME, 25))
|
|
#define FIT_OLYMPIC_LIFT_EXERCISE_NAME_MEDICINE_BALL_CLEAN (FIT_CAST(FIT_OLYMPIC_LIFT_EXERCISE_NAME, 26))
|
|
#define FIT_OLYMPIC_LIFT_EXERCISE_NAME_CLEAN_AND_PRESS (FIT_CAST(FIT_OLYMPIC_LIFT_EXERCISE_NAME, 27))
|
|
#define FIT_OLYMPIC_LIFT_EXERCISE_NAME_SNATCH (FIT_CAST(FIT_OLYMPIC_LIFT_EXERCISE_NAME, 28))
|
|
#define FIT_OLYMPIC_LIFT_EXERCISE_NAME_COUNT 29
|
|
|
|
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_CAST(FIT_PLANK_EXERCISE_NAME, 0))
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_45_DEGREE_PLANK (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 1))
|
|
#define FIT_PLANK_EXERCISE_NAME_90_DEGREE_STATIC_HOLD (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 2))
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_90_DEGREE_STATIC_HOLD (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 3))
|
|
#define FIT_PLANK_EXERCISE_NAME_BEAR_CRAWL (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 4))
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_BEAR_CRAWL (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 5))
|
|
#define FIT_PLANK_EXERCISE_NAME_CROSS_BODY_MOUNTAIN_CLIMBER (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 6))
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_CROSS_BODY_MOUNTAIN_CLIMBER (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 7))
|
|
#define FIT_PLANK_EXERCISE_NAME_ELBOW_PLANK_PIKE_JACKS (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 8))
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_ELBOW_PLANK_PIKE_JACKS (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 9))
|
|
#define FIT_PLANK_EXERCISE_NAME_ELEVATED_FEET_PLANK (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 10))
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_ELEVATED_FEET_PLANK (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 11))
|
|
#define FIT_PLANK_EXERCISE_NAME_ELEVATOR_ABS (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 12))
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_ELEVATOR_ABS (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 13))
|
|
#define FIT_PLANK_EXERCISE_NAME_EXTENDED_PLANK (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 14))
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_EXTENDED_PLANK (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 15))
|
|
#define FIT_PLANK_EXERCISE_NAME_FULL_PLANK_PASSE_TWIST (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 16))
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_FULL_PLANK_PASSE_TWIST (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 17))
|
|
#define FIT_PLANK_EXERCISE_NAME_INCHING_ELBOW_PLANK (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 18))
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_INCHING_ELBOW_PLANK (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 19))
|
|
#define FIT_PLANK_EXERCISE_NAME_INCHWORM_TO_SIDE_PLANK (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 20))
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_INCHWORM_TO_SIDE_PLANK (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 21))
|
|
#define FIT_PLANK_EXERCISE_NAME_KNEELING_PLANK (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 22))
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_KNEELING_PLANK (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 23))
|
|
#define FIT_PLANK_EXERCISE_NAME_KNEELING_SIDE_PLANK_WITH_LEG_LIFT (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 24))
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_KNEELING_SIDE_PLANK_WITH_LEG_LIFT (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 25))
|
|
#define FIT_PLANK_EXERCISE_NAME_LATERAL_ROLL (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 26))
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_LATERAL_ROLL (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 27))
|
|
#define FIT_PLANK_EXERCISE_NAME_LYING_REVERSE_PLANK (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 28))
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_LYING_REVERSE_PLANK (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 29))
|
|
#define FIT_PLANK_EXERCISE_NAME_MEDICINE_BALL_MOUNTAIN_CLIMBER (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 30))
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_MEDICINE_BALL_MOUNTAIN_CLIMBER (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 31))
|
|
#define FIT_PLANK_EXERCISE_NAME_MODIFIED_MOUNTAIN_CLIMBER_AND_EXTENSION (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 32))
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_MODIFIED_MOUNTAIN_CLIMBER_AND_EXTENSION (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 33))
|
|
#define FIT_PLANK_EXERCISE_NAME_MOUNTAIN_CLIMBER (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 34))
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_MOUNTAIN_CLIMBER (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 35))
|
|
#define FIT_PLANK_EXERCISE_NAME_MOUNTAIN_CLIMBER_ON_SLIDING_DISCS (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 36))
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_MOUNTAIN_CLIMBER_ON_SLIDING_DISCS (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 37))
|
|
#define FIT_PLANK_EXERCISE_NAME_MOUNTAIN_CLIMBER_WITH_FEET_ON_BOSU_BALL (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 38))
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_MOUNTAIN_CLIMBER_WITH_FEET_ON_BOSU_BALL (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 39))
|
|
#define FIT_PLANK_EXERCISE_NAME_MOUNTAIN_CLIMBER_WITH_HANDS_ON_BENCH (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 40))
|
|
#define FIT_PLANK_EXERCISE_NAME_MOUNTAIN_CLIMBER_WITH_HANDS_ON_SWISS_BALL (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 41))
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_MOUNTAIN_CLIMBER_WITH_HANDS_ON_SWISS_BALL (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 42))
|
|
#define FIT_PLANK_EXERCISE_NAME_PLANK (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 43))
|
|
#define FIT_PLANK_EXERCISE_NAME_PLANK_JACKS_WITH_FEET_ON_SLIDING_DISCS (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 44))
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_PLANK_JACKS_WITH_FEET_ON_SLIDING_DISCS (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 45))
|
|
#define FIT_PLANK_EXERCISE_NAME_PLANK_KNEE_TWIST (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 46))
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_PLANK_KNEE_TWIST (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 47))
|
|
#define FIT_PLANK_EXERCISE_NAME_PLANK_PIKE_JUMPS (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 48))
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_PLANK_PIKE_JUMPS (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 49))
|
|
#define FIT_PLANK_EXERCISE_NAME_PLANK_PIKES (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 50))
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_PLANK_PIKES (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 51))
|
|
#define FIT_PLANK_EXERCISE_NAME_PLANK_TO_STAND_UP (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 52))
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_PLANK_TO_STAND_UP (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 53))
|
|
#define FIT_PLANK_EXERCISE_NAME_PLANK_WITH_ARM_RAISE (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 54))
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_PLANK_WITH_ARM_RAISE (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 55))
|
|
#define FIT_PLANK_EXERCISE_NAME_PLANK_WITH_KNEE_TO_ELBOW (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 56))
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_PLANK_WITH_KNEE_TO_ELBOW (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 57))
|
|
#define FIT_PLANK_EXERCISE_NAME_PLANK_WITH_OBLIQUE_CRUNCH (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 58))
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_PLANK_WITH_OBLIQUE_CRUNCH (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 59))
|
|
#define FIT_PLANK_EXERCISE_NAME_PLYOMETRIC_SIDE_PLANK (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 60))
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_PLYOMETRIC_SIDE_PLANK (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 61))
|
|
#define FIT_PLANK_EXERCISE_NAME_ROLLING_SIDE_PLANK (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 62))
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_ROLLING_SIDE_PLANK (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 63))
|
|
#define FIT_PLANK_EXERCISE_NAME_SIDE_KICK_PLANK (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 64))
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_SIDE_KICK_PLANK (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 65))
|
|
#define FIT_PLANK_EXERCISE_NAME_SIDE_PLANK (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 66))
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_SIDE_PLANK (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 67))
|
|
#define FIT_PLANK_EXERCISE_NAME_SIDE_PLANK_AND_ROW (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 68))
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_SIDE_PLANK_AND_ROW (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 69))
|
|
#define FIT_PLANK_EXERCISE_NAME_SIDE_PLANK_LIFT (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 70))
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_SIDE_PLANK_LIFT (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 71))
|
|
#define FIT_PLANK_EXERCISE_NAME_SIDE_PLANK_WITH_ELBOW_ON_BOSU_BALL (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 72))
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_SIDE_PLANK_WITH_ELBOW_ON_BOSU_BALL (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 73))
|
|
#define FIT_PLANK_EXERCISE_NAME_SIDE_PLANK_WITH_FEET_ON_BENCH (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 74))
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_SIDE_PLANK_WITH_FEET_ON_BENCH (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 75))
|
|
#define FIT_PLANK_EXERCISE_NAME_SIDE_PLANK_WITH_KNEE_CIRCLE (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 76))
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_SIDE_PLANK_WITH_KNEE_CIRCLE (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 77))
|
|
#define FIT_PLANK_EXERCISE_NAME_SIDE_PLANK_WITH_KNEE_TUCK (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 78))
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_SIDE_PLANK_WITH_KNEE_TUCK (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 79))
|
|
#define FIT_PLANK_EXERCISE_NAME_SIDE_PLANK_WITH_LEG_LIFT (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 80))
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_SIDE_PLANK_WITH_LEG_LIFT (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 81))
|
|
#define FIT_PLANK_EXERCISE_NAME_SIDE_PLANK_WITH_REACH_UNDER (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 82))
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_SIDE_PLANK_WITH_REACH_UNDER (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 83))
|
|
#define FIT_PLANK_EXERCISE_NAME_SINGLE_LEG_ELEVATED_FEET_PLANK (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 84))
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_SINGLE_LEG_ELEVATED_FEET_PLANK (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 85))
|
|
#define FIT_PLANK_EXERCISE_NAME_SINGLE_LEG_FLEX_AND_EXTEND (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 86))
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_SINGLE_LEG_FLEX_AND_EXTEND (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 87))
|
|
#define FIT_PLANK_EXERCISE_NAME_SINGLE_LEG_SIDE_PLANK (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 88))
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_SINGLE_LEG_SIDE_PLANK (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 89))
|
|
#define FIT_PLANK_EXERCISE_NAME_SPIDERMAN_PLANK (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 90))
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_SPIDERMAN_PLANK (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 91))
|
|
#define FIT_PLANK_EXERCISE_NAME_STRAIGHT_ARM_PLANK (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 92))
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_STRAIGHT_ARM_PLANK (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 93))
|
|
#define FIT_PLANK_EXERCISE_NAME_STRAIGHT_ARM_PLANK_WITH_SHOULDER_TOUCH (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 94))
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_STRAIGHT_ARM_PLANK_WITH_SHOULDER_TOUCH (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 95))
|
|
#define FIT_PLANK_EXERCISE_NAME_SWISS_BALL_PLANK (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 96))
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_SWISS_BALL_PLANK (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 97))
|
|
#define FIT_PLANK_EXERCISE_NAME_SWISS_BALL_PLANK_LEG_LIFT (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 98))
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_SWISS_BALL_PLANK_LEG_LIFT (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 99))
|
|
#define FIT_PLANK_EXERCISE_NAME_SWISS_BALL_PLANK_LEG_LIFT_AND_HOLD (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 100))
|
|
#define FIT_PLANK_EXERCISE_NAME_SWISS_BALL_PLANK_WITH_FEET_ON_BENCH (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 101))
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_SWISS_BALL_PLANK_WITH_FEET_ON_BENCH (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 102))
|
|
#define FIT_PLANK_EXERCISE_NAME_SWISS_BALL_PRONE_JACKKNIFE (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 103))
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_SWISS_BALL_PRONE_JACKKNIFE (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 104))
|
|
#define FIT_PLANK_EXERCISE_NAME_SWISS_BALL_SIDE_PLANK (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 105))
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_SWISS_BALL_SIDE_PLANK (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 106))
|
|
#define FIT_PLANK_EXERCISE_NAME_THREE_WAY_PLANK (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 107))
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_THREE_WAY_PLANK (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 108))
|
|
#define FIT_PLANK_EXERCISE_NAME_TOWEL_PLANK_AND_KNEE_IN (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 109))
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_TOWEL_PLANK_AND_KNEE_IN (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 110))
|
|
#define FIT_PLANK_EXERCISE_NAME_T_STABILIZATION (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 111))
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_T_STABILIZATION (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 112))
|
|
#define FIT_PLANK_EXERCISE_NAME_TURKISH_GET_UP_TO_SIDE_PLANK (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 113))
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_TURKISH_GET_UP_TO_SIDE_PLANK (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 114))
|
|
#define FIT_PLANK_EXERCISE_NAME_TWO_POINT_PLANK (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 115))
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_TWO_POINT_PLANK (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 116))
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_PLANK (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 117))
|
|
#define FIT_PLANK_EXERCISE_NAME_WIDE_STANCE_PLANK_WITH_DIAGONAL_ARM_LIFT (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 118))
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_WIDE_STANCE_PLANK_WITH_DIAGONAL_ARM_LIFT (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 119))
|
|
#define FIT_PLANK_EXERCISE_NAME_WIDE_STANCE_PLANK_WITH_DIAGONAL_LEG_LIFT (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 120))
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_WIDE_STANCE_PLANK_WITH_DIAGONAL_LEG_LIFT (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 121))
|
|
#define FIT_PLANK_EXERCISE_NAME_WIDE_STANCE_PLANK_WITH_LEG_LIFT (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 122))
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_WIDE_STANCE_PLANK_WITH_LEG_LIFT (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 123))
|
|
#define FIT_PLANK_EXERCISE_NAME_WIDE_STANCE_PLANK_WITH_OPPOSITE_ARM_AND_LEG_LIFT (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 124))
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_MOUNTAIN_CLIMBER_WITH_HANDS_ON_BENCH (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 125))
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_SWISS_BALL_PLANK_LEG_LIFT_AND_HOLD (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 126))
|
|
#define FIT_PLANK_EXERCISE_NAME_WEIGHTED_WIDE_STANCE_PLANK_WITH_OPPOSITE_ARM_AND_LEG_LIFT (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 127))
|
|
#define FIT_PLANK_EXERCISE_NAME_PLANK_WITH_FEET_ON_SWISS_BALL (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 128))
|
|
#define FIT_PLANK_EXERCISE_NAME_SIDE_PLANK_TO_PLANK_WITH_REACH_UNDER (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 129))
|
|
#define FIT_PLANK_EXERCISE_NAME_BRIDGE_WITH_GLUTE_LOWER_LIFT (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 130))
|
|
#define FIT_PLANK_EXERCISE_NAME_BRIDGE_ONE_LEG_BRIDGE (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 131))
|
|
#define FIT_PLANK_EXERCISE_NAME_PLANK_WITH_ARM_VARIATIONS (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 132))
|
|
#define FIT_PLANK_EXERCISE_NAME_PLANK_WITH_LEG_LIFT (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 133))
|
|
#define FIT_PLANK_EXERCISE_NAME_REVERSE_PLANK_WITH_LEG_PULL (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 134))
|
|
#define FIT_PLANK_EXERCISE_NAME_RING_PLANK_SPRAWLS (FIT_CAST(FIT_PLANK_EXERCISE_NAME, 135))
|
|
#define FIT_PLANK_EXERCISE_NAME_COUNT 136
|
|
|
|
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_CAST(FIT_PLYO_EXERCISE_NAME, 0))
|
|
#define FIT_PLYO_EXERCISE_NAME_WEIGHTED_ALTERNATING_JUMP_LUNGE (FIT_CAST(FIT_PLYO_EXERCISE_NAME, 1))
|
|
#define FIT_PLYO_EXERCISE_NAME_BARBELL_JUMP_SQUAT (FIT_CAST(FIT_PLYO_EXERCISE_NAME, 2))
|
|
#define FIT_PLYO_EXERCISE_NAME_BODY_WEIGHT_JUMP_SQUAT (FIT_CAST(FIT_PLYO_EXERCISE_NAME, 3))
|
|
#define FIT_PLYO_EXERCISE_NAME_WEIGHTED_JUMP_SQUAT (FIT_CAST(FIT_PLYO_EXERCISE_NAME, 4))
|
|
#define FIT_PLYO_EXERCISE_NAME_CROSS_KNEE_STRIKE (FIT_CAST(FIT_PLYO_EXERCISE_NAME, 5))
|
|
#define FIT_PLYO_EXERCISE_NAME_WEIGHTED_CROSS_KNEE_STRIKE (FIT_CAST(FIT_PLYO_EXERCISE_NAME, 6))
|
|
#define FIT_PLYO_EXERCISE_NAME_DEPTH_JUMP (FIT_CAST(FIT_PLYO_EXERCISE_NAME, 7))
|
|
#define FIT_PLYO_EXERCISE_NAME_WEIGHTED_DEPTH_JUMP (FIT_CAST(FIT_PLYO_EXERCISE_NAME, 8))
|
|
#define FIT_PLYO_EXERCISE_NAME_DUMBBELL_JUMP_SQUAT (FIT_CAST(FIT_PLYO_EXERCISE_NAME, 9))
|
|
#define FIT_PLYO_EXERCISE_NAME_DUMBBELL_SPLIT_JUMP (FIT_CAST(FIT_PLYO_EXERCISE_NAME, 10))
|
|
#define FIT_PLYO_EXERCISE_NAME_FRONT_KNEE_STRIKE (FIT_CAST(FIT_PLYO_EXERCISE_NAME, 11))
|
|
#define FIT_PLYO_EXERCISE_NAME_WEIGHTED_FRONT_KNEE_STRIKE (FIT_CAST(FIT_PLYO_EXERCISE_NAME, 12))
|
|
#define FIT_PLYO_EXERCISE_NAME_HIGH_BOX_JUMP (FIT_CAST(FIT_PLYO_EXERCISE_NAME, 13))
|
|
#define FIT_PLYO_EXERCISE_NAME_WEIGHTED_HIGH_BOX_JUMP (FIT_CAST(FIT_PLYO_EXERCISE_NAME, 14))
|
|
#define FIT_PLYO_EXERCISE_NAME_ISOMETRIC_EXPLOSIVE_BODY_WEIGHT_JUMP_SQUAT (FIT_CAST(FIT_PLYO_EXERCISE_NAME, 15))
|
|
#define FIT_PLYO_EXERCISE_NAME_WEIGHTED_ISOMETRIC_EXPLOSIVE_JUMP_SQUAT (FIT_CAST(FIT_PLYO_EXERCISE_NAME, 16))
|
|
#define FIT_PLYO_EXERCISE_NAME_LATERAL_LEAP_AND_HOP (FIT_CAST(FIT_PLYO_EXERCISE_NAME, 17))
|
|
#define FIT_PLYO_EXERCISE_NAME_WEIGHTED_LATERAL_LEAP_AND_HOP (FIT_CAST(FIT_PLYO_EXERCISE_NAME, 18))
|
|
#define FIT_PLYO_EXERCISE_NAME_LATERAL_PLYO_SQUATS (FIT_CAST(FIT_PLYO_EXERCISE_NAME, 19))
|
|
#define FIT_PLYO_EXERCISE_NAME_WEIGHTED_LATERAL_PLYO_SQUATS (FIT_CAST(FIT_PLYO_EXERCISE_NAME, 20))
|
|
#define FIT_PLYO_EXERCISE_NAME_LATERAL_SLIDE (FIT_CAST(FIT_PLYO_EXERCISE_NAME, 21))
|
|
#define FIT_PLYO_EXERCISE_NAME_WEIGHTED_LATERAL_SLIDE (FIT_CAST(FIT_PLYO_EXERCISE_NAME, 22))
|
|
#define FIT_PLYO_EXERCISE_NAME_MEDICINE_BALL_OVERHEAD_THROWS (FIT_CAST(FIT_PLYO_EXERCISE_NAME, 23))
|
|
#define FIT_PLYO_EXERCISE_NAME_MEDICINE_BALL_SIDE_THROW (FIT_CAST(FIT_PLYO_EXERCISE_NAME, 24))
|
|
#define FIT_PLYO_EXERCISE_NAME_MEDICINE_BALL_SLAM (FIT_CAST(FIT_PLYO_EXERCISE_NAME, 25))
|
|
#define FIT_PLYO_EXERCISE_NAME_SIDE_TO_SIDE_MEDICINE_BALL_THROWS (FIT_CAST(FIT_PLYO_EXERCISE_NAME, 26))
|
|
#define FIT_PLYO_EXERCISE_NAME_SIDE_TO_SIDE_SHUFFLE_JUMP (FIT_CAST(FIT_PLYO_EXERCISE_NAME, 27))
|
|
#define FIT_PLYO_EXERCISE_NAME_WEIGHTED_SIDE_TO_SIDE_SHUFFLE_JUMP (FIT_CAST(FIT_PLYO_EXERCISE_NAME, 28))
|
|
#define FIT_PLYO_EXERCISE_NAME_SQUAT_JUMP_ONTO_BOX (FIT_CAST(FIT_PLYO_EXERCISE_NAME, 29))
|
|
#define FIT_PLYO_EXERCISE_NAME_WEIGHTED_SQUAT_JUMP_ONTO_BOX (FIT_CAST(FIT_PLYO_EXERCISE_NAME, 30))
|
|
#define FIT_PLYO_EXERCISE_NAME_SQUAT_JUMPS_IN_AND_OUT (FIT_CAST(FIT_PLYO_EXERCISE_NAME, 31))
|
|
#define FIT_PLYO_EXERCISE_NAME_WEIGHTED_SQUAT_JUMPS_IN_AND_OUT (FIT_CAST(FIT_PLYO_EXERCISE_NAME, 32))
|
|
#define FIT_PLYO_EXERCISE_NAME_BOX_JUMP (FIT_CAST(FIT_PLYO_EXERCISE_NAME, 33))
|
|
#define FIT_PLYO_EXERCISE_NAME_BOX_JUMP_OVERS (FIT_CAST(FIT_PLYO_EXERCISE_NAME, 34))
|
|
#define FIT_PLYO_EXERCISE_NAME_BOX_JUMP_OVERS_OVER_THE_BOX (FIT_CAST(FIT_PLYO_EXERCISE_NAME, 35))
|
|
#define FIT_PLYO_EXERCISE_NAME_STAR_JUMP_SQUATS (FIT_CAST(FIT_PLYO_EXERCISE_NAME, 36))
|
|
#define FIT_PLYO_EXERCISE_NAME_JUMP_SQUAT (FIT_CAST(FIT_PLYO_EXERCISE_NAME, 37))
|
|
#define FIT_PLYO_EXERCISE_NAME_COUNT 38
|
|
|
|
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_CAST(FIT_PULL_UP_EXERCISE_NAME, 0))
|
|
#define FIT_PULL_UP_EXERCISE_NAME_30_DEGREE_LAT_PULLDOWN (FIT_CAST(FIT_PULL_UP_EXERCISE_NAME, 1))
|
|
#define FIT_PULL_UP_EXERCISE_NAME_BAND_ASSISTED_CHIN_UP (FIT_CAST(FIT_PULL_UP_EXERCISE_NAME, 2))
|
|
#define FIT_PULL_UP_EXERCISE_NAME_CLOSE_GRIP_CHIN_UP (FIT_CAST(FIT_PULL_UP_EXERCISE_NAME, 3))
|
|
#define FIT_PULL_UP_EXERCISE_NAME_WEIGHTED_CLOSE_GRIP_CHIN_UP (FIT_CAST(FIT_PULL_UP_EXERCISE_NAME, 4))
|
|
#define FIT_PULL_UP_EXERCISE_NAME_CLOSE_GRIP_LAT_PULLDOWN (FIT_CAST(FIT_PULL_UP_EXERCISE_NAME, 5))
|
|
#define FIT_PULL_UP_EXERCISE_NAME_CROSSOVER_CHIN_UP (FIT_CAST(FIT_PULL_UP_EXERCISE_NAME, 6))
|
|
#define FIT_PULL_UP_EXERCISE_NAME_WEIGHTED_CROSSOVER_CHIN_UP (FIT_CAST(FIT_PULL_UP_EXERCISE_NAME, 7))
|
|
#define FIT_PULL_UP_EXERCISE_NAME_EZ_BAR_PULLOVER (FIT_CAST(FIT_PULL_UP_EXERCISE_NAME, 8))
|
|
#define FIT_PULL_UP_EXERCISE_NAME_HANGING_HURDLE (FIT_CAST(FIT_PULL_UP_EXERCISE_NAME, 9))
|
|
#define FIT_PULL_UP_EXERCISE_NAME_WEIGHTED_HANGING_HURDLE (FIT_CAST(FIT_PULL_UP_EXERCISE_NAME, 10))
|
|
#define FIT_PULL_UP_EXERCISE_NAME_KNEELING_LAT_PULLDOWN (FIT_CAST(FIT_PULL_UP_EXERCISE_NAME, 11))
|
|
#define FIT_PULL_UP_EXERCISE_NAME_KNEELING_UNDERHAND_GRIP_LAT_PULLDOWN (FIT_CAST(FIT_PULL_UP_EXERCISE_NAME, 12))
|
|
#define FIT_PULL_UP_EXERCISE_NAME_LAT_PULLDOWN (FIT_CAST(FIT_PULL_UP_EXERCISE_NAME, 13))
|
|
#define FIT_PULL_UP_EXERCISE_NAME_MIXED_GRIP_CHIN_UP (FIT_CAST(FIT_PULL_UP_EXERCISE_NAME, 14))
|
|
#define FIT_PULL_UP_EXERCISE_NAME_WEIGHTED_MIXED_GRIP_CHIN_UP (FIT_CAST(FIT_PULL_UP_EXERCISE_NAME, 15))
|
|
#define FIT_PULL_UP_EXERCISE_NAME_MIXED_GRIP_PULL_UP (FIT_CAST(FIT_PULL_UP_EXERCISE_NAME, 16))
|
|
#define FIT_PULL_UP_EXERCISE_NAME_WEIGHTED_MIXED_GRIP_PULL_UP (FIT_CAST(FIT_PULL_UP_EXERCISE_NAME, 17))
|
|
#define FIT_PULL_UP_EXERCISE_NAME_REVERSE_GRIP_PULLDOWN (FIT_CAST(FIT_PULL_UP_EXERCISE_NAME, 18))
|
|
#define FIT_PULL_UP_EXERCISE_NAME_STANDING_CABLE_PULLOVER (FIT_CAST(FIT_PULL_UP_EXERCISE_NAME, 19))
|
|
#define FIT_PULL_UP_EXERCISE_NAME_STRAIGHT_ARM_PULLDOWN (FIT_CAST(FIT_PULL_UP_EXERCISE_NAME, 20))
|
|
#define FIT_PULL_UP_EXERCISE_NAME_SWISS_BALL_EZ_BAR_PULLOVER (FIT_CAST(FIT_PULL_UP_EXERCISE_NAME, 21))
|
|
#define FIT_PULL_UP_EXERCISE_NAME_TOWEL_PULL_UP (FIT_CAST(FIT_PULL_UP_EXERCISE_NAME, 22))
|
|
#define FIT_PULL_UP_EXERCISE_NAME_WEIGHTED_TOWEL_PULL_UP (FIT_CAST(FIT_PULL_UP_EXERCISE_NAME, 23))
|
|
#define FIT_PULL_UP_EXERCISE_NAME_WEIGHTED_PULL_UP (FIT_CAST(FIT_PULL_UP_EXERCISE_NAME, 24))
|
|
#define FIT_PULL_UP_EXERCISE_NAME_WIDE_GRIP_LAT_PULLDOWN (FIT_CAST(FIT_PULL_UP_EXERCISE_NAME, 25))
|
|
#define FIT_PULL_UP_EXERCISE_NAME_WIDE_GRIP_PULL_UP (FIT_CAST(FIT_PULL_UP_EXERCISE_NAME, 26))
|
|
#define FIT_PULL_UP_EXERCISE_NAME_WEIGHTED_WIDE_GRIP_PULL_UP (FIT_CAST(FIT_PULL_UP_EXERCISE_NAME, 27))
|
|
#define FIT_PULL_UP_EXERCISE_NAME_BURPEE_PULL_UP (FIT_CAST(FIT_PULL_UP_EXERCISE_NAME, 28))
|
|
#define FIT_PULL_UP_EXERCISE_NAME_WEIGHTED_BURPEE_PULL_UP (FIT_CAST(FIT_PULL_UP_EXERCISE_NAME, 29))
|
|
#define FIT_PULL_UP_EXERCISE_NAME_JUMPING_PULL_UPS (FIT_CAST(FIT_PULL_UP_EXERCISE_NAME, 30))
|
|
#define FIT_PULL_UP_EXERCISE_NAME_WEIGHTED_JUMPING_PULL_UPS (FIT_CAST(FIT_PULL_UP_EXERCISE_NAME, 31))
|
|
#define FIT_PULL_UP_EXERCISE_NAME_KIPPING_PULL_UP (FIT_CAST(FIT_PULL_UP_EXERCISE_NAME, 32))
|
|
#define FIT_PULL_UP_EXERCISE_NAME_WEIGHTED_KIPPING_PULL_UP (FIT_CAST(FIT_PULL_UP_EXERCISE_NAME, 33))
|
|
#define FIT_PULL_UP_EXERCISE_NAME_L_PULL_UP (FIT_CAST(FIT_PULL_UP_EXERCISE_NAME, 34))
|
|
#define FIT_PULL_UP_EXERCISE_NAME_WEIGHTED_L_PULL_UP (FIT_CAST(FIT_PULL_UP_EXERCISE_NAME, 35))
|
|
#define FIT_PULL_UP_EXERCISE_NAME_SUSPENDED_CHIN_UP (FIT_CAST(FIT_PULL_UP_EXERCISE_NAME, 36))
|
|
#define FIT_PULL_UP_EXERCISE_NAME_WEIGHTED_SUSPENDED_CHIN_UP (FIT_CAST(FIT_PULL_UP_EXERCISE_NAME, 37))
|
|
#define FIT_PULL_UP_EXERCISE_NAME_PULL_UP (FIT_CAST(FIT_PULL_UP_EXERCISE_NAME, 38))
|
|
#define FIT_PULL_UP_EXERCISE_NAME_CHIN_UP (FIT_CAST(FIT_PULL_UP_EXERCISE_NAME, 39))
|
|
#define FIT_PULL_UP_EXERCISE_NAME_NEUTRAL_GRIP_CHIN_UP (FIT_CAST(FIT_PULL_UP_EXERCISE_NAME, 40))
|
|
#define FIT_PULL_UP_EXERCISE_NAME_WEIGHTED_CHIN_UP (FIT_CAST(FIT_PULL_UP_EXERCISE_NAME, 41))
|
|
#define FIT_PULL_UP_EXERCISE_NAME_BAND_ASSISTED_PULL_UP (FIT_CAST(FIT_PULL_UP_EXERCISE_NAME, 42))
|
|
#define FIT_PULL_UP_EXERCISE_NAME_NEUTRAL_GRIP_PULL_UP (FIT_CAST(FIT_PULL_UP_EXERCISE_NAME, 43))
|
|
#define FIT_PULL_UP_EXERCISE_NAME_WEIGHTED_NEUTRAL_GRIP_CHIN_UP (FIT_CAST(FIT_PULL_UP_EXERCISE_NAME, 44))
|
|
#define FIT_PULL_UP_EXERCISE_NAME_WEIGHTED_NEUTRAL_GRIP_PULL_UP (FIT_CAST(FIT_PULL_UP_EXERCISE_NAME, 45))
|
|
#define FIT_PULL_UP_EXERCISE_NAME_COUNT 46
|
|
|
|
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_CAST(FIT_PUSH_UP_EXERCISE_NAME, 0))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_ALTERNATING_STAGGERED_PUSH_UP (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 1))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WEIGHTED_ALTERNATING_STAGGERED_PUSH_UP (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 2))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_ALTERNATING_HANDS_MEDICINE_BALL_PUSH_UP (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 3))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WEIGHTED_ALTERNATING_HANDS_MEDICINE_BALL_PUSH_UP (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 4))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_BOSU_BALL_PUSH_UP (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 5))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WEIGHTED_BOSU_BALL_PUSH_UP (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 6))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_CLAPPING_PUSH_UP (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 7))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WEIGHTED_CLAPPING_PUSH_UP (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 8))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_CLOSE_GRIP_MEDICINE_BALL_PUSH_UP (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 9))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WEIGHTED_CLOSE_GRIP_MEDICINE_BALL_PUSH_UP (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 10))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_CLOSE_HANDS_PUSH_UP (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 11))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WEIGHTED_CLOSE_HANDS_PUSH_UP (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 12))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_DECLINE_PUSH_UP (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 13))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WEIGHTED_DECLINE_PUSH_UP (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 14))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_DIAMOND_PUSH_UP (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 15))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WEIGHTED_DIAMOND_PUSH_UP (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 16))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_EXPLOSIVE_CROSSOVER_PUSH_UP (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 17))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WEIGHTED_EXPLOSIVE_CROSSOVER_PUSH_UP (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 18))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_EXPLOSIVE_PUSH_UP (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 19))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WEIGHTED_EXPLOSIVE_PUSH_UP (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 20))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_FEET_ELEVATED_SIDE_TO_SIDE_PUSH_UP (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 21))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WEIGHTED_FEET_ELEVATED_SIDE_TO_SIDE_PUSH_UP (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 22))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_HAND_RELEASE_PUSH_UP (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 23))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WEIGHTED_HAND_RELEASE_PUSH_UP (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 24))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_HANDSTAND_PUSH_UP (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 25))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WEIGHTED_HANDSTAND_PUSH_UP (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 26))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_INCLINE_PUSH_UP (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 27))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WEIGHTED_INCLINE_PUSH_UP (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 28))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_ISOMETRIC_EXPLOSIVE_PUSH_UP (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 29))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WEIGHTED_ISOMETRIC_EXPLOSIVE_PUSH_UP (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 30))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_JUDO_PUSH_UP (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 31))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WEIGHTED_JUDO_PUSH_UP (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 32))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_KNEELING_PUSH_UP (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 33))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WEIGHTED_KNEELING_PUSH_UP (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 34))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_MEDICINE_BALL_CHEST_PASS (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 35))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_MEDICINE_BALL_PUSH_UP (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 36))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WEIGHTED_MEDICINE_BALL_PUSH_UP (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 37))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_ONE_ARM_PUSH_UP (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 38))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WEIGHTED_ONE_ARM_PUSH_UP (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 39))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WEIGHTED_PUSH_UP (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 40))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_PUSH_UP_AND_ROW (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 41))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WEIGHTED_PUSH_UP_AND_ROW (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 42))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_PUSH_UP_PLUS (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 43))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WEIGHTED_PUSH_UP_PLUS (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 44))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_PUSH_UP_WITH_FEET_ON_SWISS_BALL (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 45))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WEIGHTED_PUSH_UP_WITH_FEET_ON_SWISS_BALL (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 46))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_PUSH_UP_WITH_ONE_HAND_ON_MEDICINE_BALL (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 47))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WEIGHTED_PUSH_UP_WITH_ONE_HAND_ON_MEDICINE_BALL (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 48))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_SHOULDER_PUSH_UP (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 49))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WEIGHTED_SHOULDER_PUSH_UP (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 50))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_SINGLE_ARM_MEDICINE_BALL_PUSH_UP (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 51))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WEIGHTED_SINGLE_ARM_MEDICINE_BALL_PUSH_UP (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 52))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_SPIDERMAN_PUSH_UP (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 53))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WEIGHTED_SPIDERMAN_PUSH_UP (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 54))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_STACKED_FEET_PUSH_UP (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 55))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WEIGHTED_STACKED_FEET_PUSH_UP (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 56))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_STAGGERED_HANDS_PUSH_UP (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 57))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WEIGHTED_STAGGERED_HANDS_PUSH_UP (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 58))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_SUSPENDED_PUSH_UP (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 59))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WEIGHTED_SUSPENDED_PUSH_UP (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 60))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_SWISS_BALL_PUSH_UP (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 61))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WEIGHTED_SWISS_BALL_PUSH_UP (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 62))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_SWISS_BALL_PUSH_UP_PLUS (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 63))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WEIGHTED_SWISS_BALL_PUSH_UP_PLUS (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 64))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_T_PUSH_UP (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 65))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WEIGHTED_T_PUSH_UP (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 66))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_TRIPLE_STOP_PUSH_UP (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 67))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WEIGHTED_TRIPLE_STOP_PUSH_UP (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 68))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WIDE_HANDS_PUSH_UP (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 69))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WEIGHTED_WIDE_HANDS_PUSH_UP (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 70))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_PARALLETTE_HANDSTAND_PUSH_UP (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 71))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WEIGHTED_PARALLETTE_HANDSTAND_PUSH_UP (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 72))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_RING_HANDSTAND_PUSH_UP (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 73))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WEIGHTED_RING_HANDSTAND_PUSH_UP (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 74))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_RING_PUSH_UP (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 75))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WEIGHTED_RING_PUSH_UP (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 76))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_PUSH_UP (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 77))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_PILATES_PUSHUP (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 78))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_DYNAMIC_PUSH_UP (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 79))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_KIPPING_HANDSTAND_PUSH_UP (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 80))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_SHOULDER_TAPPING_PUSH_UP (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 81))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_BICEPS_PUSH_UP (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 82))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_HINDU_PUSH_UP (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 83))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_PIKE_PUSH_UP (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 84))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WIDE_GRIP_PUSH_UP (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 85))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WEIGHTED_BICEPS_PUSH_UP (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 86))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WEIGHTED_HINDU_PUSH_UP (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 87))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WEIGHTED_PIKE_PUSH_UP (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 88))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_KIPPING_PARALLETTE_HANDSTAND_PUSH_UP (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 89))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_WALL_PUSH_UP (FIT_CAST(FIT_PUSH_UP_EXERCISE_NAME, 90))
|
|
#define FIT_PUSH_UP_EXERCISE_NAME_COUNT 91
|
|
|
|
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_CAST(FIT_ROW_EXERCISE_NAME, 0))
|
|
#define FIT_ROW_EXERCISE_NAME_CABLE_ROW_STANDING (FIT_CAST(FIT_ROW_EXERCISE_NAME, 1))
|
|
#define FIT_ROW_EXERCISE_NAME_DUMBBELL_ROW (FIT_CAST(FIT_ROW_EXERCISE_NAME, 2))
|
|
#define FIT_ROW_EXERCISE_NAME_ELEVATED_FEET_INVERTED_ROW (FIT_CAST(FIT_ROW_EXERCISE_NAME, 3))
|
|
#define FIT_ROW_EXERCISE_NAME_WEIGHTED_ELEVATED_FEET_INVERTED_ROW (FIT_CAST(FIT_ROW_EXERCISE_NAME, 4))
|
|
#define FIT_ROW_EXERCISE_NAME_FACE_PULL (FIT_CAST(FIT_ROW_EXERCISE_NAME, 5))
|
|
#define FIT_ROW_EXERCISE_NAME_FACE_PULL_WITH_EXTERNAL_ROTATION (FIT_CAST(FIT_ROW_EXERCISE_NAME, 6))
|
|
#define FIT_ROW_EXERCISE_NAME_INVERTED_ROW_WITH_FEET_ON_SWISS_BALL (FIT_CAST(FIT_ROW_EXERCISE_NAME, 7))
|
|
#define FIT_ROW_EXERCISE_NAME_WEIGHTED_INVERTED_ROW_WITH_FEET_ON_SWISS_BALL (FIT_CAST(FIT_ROW_EXERCISE_NAME, 8))
|
|
#define FIT_ROW_EXERCISE_NAME_KETTLEBELL_ROW (FIT_CAST(FIT_ROW_EXERCISE_NAME, 9))
|
|
#define FIT_ROW_EXERCISE_NAME_MODIFIED_INVERTED_ROW (FIT_CAST(FIT_ROW_EXERCISE_NAME, 10))
|
|
#define FIT_ROW_EXERCISE_NAME_WEIGHTED_MODIFIED_INVERTED_ROW (FIT_CAST(FIT_ROW_EXERCISE_NAME, 11))
|
|
#define FIT_ROW_EXERCISE_NAME_NEUTRAL_GRIP_ALTERNATING_DUMBBELL_ROW (FIT_CAST(FIT_ROW_EXERCISE_NAME, 12))
|
|
#define FIT_ROW_EXERCISE_NAME_ONE_ARM_BENT_OVER_ROW (FIT_CAST(FIT_ROW_EXERCISE_NAME, 13))
|
|
#define FIT_ROW_EXERCISE_NAME_ONE_LEGGED_DUMBBELL_ROW (FIT_CAST(FIT_ROW_EXERCISE_NAME, 14))
|
|
#define FIT_ROW_EXERCISE_NAME_RENEGADE_ROW (FIT_CAST(FIT_ROW_EXERCISE_NAME, 15))
|
|
#define FIT_ROW_EXERCISE_NAME_REVERSE_GRIP_BARBELL_ROW (FIT_CAST(FIT_ROW_EXERCISE_NAME, 16))
|
|
#define FIT_ROW_EXERCISE_NAME_ROPE_HANDLE_CABLE_ROW (FIT_CAST(FIT_ROW_EXERCISE_NAME, 17))
|
|
#define FIT_ROW_EXERCISE_NAME_SEATED_CABLE_ROW (FIT_CAST(FIT_ROW_EXERCISE_NAME, 18))
|
|
#define FIT_ROW_EXERCISE_NAME_SEATED_DUMBBELL_ROW (FIT_CAST(FIT_ROW_EXERCISE_NAME, 19))
|
|
#define FIT_ROW_EXERCISE_NAME_SINGLE_ARM_CABLE_ROW (FIT_CAST(FIT_ROW_EXERCISE_NAME, 20))
|
|
#define FIT_ROW_EXERCISE_NAME_SINGLE_ARM_CABLE_ROW_AND_ROTATION (FIT_CAST(FIT_ROW_EXERCISE_NAME, 21))
|
|
#define FIT_ROW_EXERCISE_NAME_SINGLE_ARM_INVERTED_ROW (FIT_CAST(FIT_ROW_EXERCISE_NAME, 22))
|
|
#define FIT_ROW_EXERCISE_NAME_WEIGHTED_SINGLE_ARM_INVERTED_ROW (FIT_CAST(FIT_ROW_EXERCISE_NAME, 23))
|
|
#define FIT_ROW_EXERCISE_NAME_SINGLE_ARM_NEUTRAL_GRIP_DUMBBELL_ROW (FIT_CAST(FIT_ROW_EXERCISE_NAME, 24))
|
|
#define FIT_ROW_EXERCISE_NAME_SINGLE_ARM_NEUTRAL_GRIP_DUMBBELL_ROW_AND_ROTATION (FIT_CAST(FIT_ROW_EXERCISE_NAME, 25))
|
|
#define FIT_ROW_EXERCISE_NAME_SUSPENDED_INVERTED_ROW (FIT_CAST(FIT_ROW_EXERCISE_NAME, 26))
|
|
#define FIT_ROW_EXERCISE_NAME_WEIGHTED_SUSPENDED_INVERTED_ROW (FIT_CAST(FIT_ROW_EXERCISE_NAME, 27))
|
|
#define FIT_ROW_EXERCISE_NAME_T_BAR_ROW (FIT_CAST(FIT_ROW_EXERCISE_NAME, 28))
|
|
#define FIT_ROW_EXERCISE_NAME_TOWEL_GRIP_INVERTED_ROW (FIT_CAST(FIT_ROW_EXERCISE_NAME, 29))
|
|
#define FIT_ROW_EXERCISE_NAME_WEIGHTED_TOWEL_GRIP_INVERTED_ROW (FIT_CAST(FIT_ROW_EXERCISE_NAME, 30))
|
|
#define FIT_ROW_EXERCISE_NAME_UNDERHAND_GRIP_CABLE_ROW (FIT_CAST(FIT_ROW_EXERCISE_NAME, 31))
|
|
#define FIT_ROW_EXERCISE_NAME_V_GRIP_CABLE_ROW (FIT_CAST(FIT_ROW_EXERCISE_NAME, 32))
|
|
#define FIT_ROW_EXERCISE_NAME_WIDE_GRIP_SEATED_CABLE_ROW (FIT_CAST(FIT_ROW_EXERCISE_NAME, 33))
|
|
#define FIT_ROW_EXERCISE_NAME_ALTERNATING_DUMBBELL_ROW (FIT_CAST(FIT_ROW_EXERCISE_NAME, 34))
|
|
#define FIT_ROW_EXERCISE_NAME_INVERTED_ROW (FIT_CAST(FIT_ROW_EXERCISE_NAME, 35))
|
|
#define FIT_ROW_EXERCISE_NAME_ROW (FIT_CAST(FIT_ROW_EXERCISE_NAME, 36))
|
|
#define FIT_ROW_EXERCISE_NAME_WEIGHTED_ROW (FIT_CAST(FIT_ROW_EXERCISE_NAME, 37))
|
|
#define FIT_ROW_EXERCISE_NAME_INDOOR_ROW (FIT_CAST(FIT_ROW_EXERCISE_NAME, 38))
|
|
#define FIT_ROW_EXERCISE_NAME_BANDED_FACE_PULLS (FIT_CAST(FIT_ROW_EXERCISE_NAME, 39))
|
|
#define FIT_ROW_EXERCISE_NAME_CHEST_SUPPORTED_DUMBBELL_ROW (FIT_CAST(FIT_ROW_EXERCISE_NAME, 40))
|
|
#define FIT_ROW_EXERCISE_NAME_DECLINE_RING_ROW (FIT_CAST(FIT_ROW_EXERCISE_NAME, 41))
|
|
#define FIT_ROW_EXERCISE_NAME_ELEVATED_RING_ROW (FIT_CAST(FIT_ROW_EXERCISE_NAME, 42))
|
|
#define FIT_ROW_EXERCISE_NAME_RDL_BENT_OVER_ROW_WITH_BARBELL_DUMBBELL (FIT_CAST(FIT_ROW_EXERCISE_NAME, 43))
|
|
#define FIT_ROW_EXERCISE_NAME_RING_ROW (FIT_CAST(FIT_ROW_EXERCISE_NAME, 44))
|
|
#define FIT_ROW_EXERCISE_NAME_BARBELL_ROW (FIT_CAST(FIT_ROW_EXERCISE_NAME, 45))
|
|
#define FIT_ROW_EXERCISE_NAME_BENT_OVER_ROW_WITH_BARBELL (FIT_CAST(FIT_ROW_EXERCISE_NAME, 46))
|
|
#define FIT_ROW_EXERCISE_NAME_BENT_OVER_ROW_WITH_DUMBELL (FIT_CAST(FIT_ROW_EXERCISE_NAME, 47))
|
|
#define FIT_ROW_EXERCISE_NAME_SEATED_UNDERHAND_GRIP_CABLE_ROW (FIT_CAST(FIT_ROW_EXERCISE_NAME, 48))
|
|
#define FIT_ROW_EXERCISE_NAME_TRX_INVERTED_ROW (FIT_CAST(FIT_ROW_EXERCISE_NAME, 49))
|
|
#define FIT_ROW_EXERCISE_NAME_WEIGHTED_INVERTED_ROW (FIT_CAST(FIT_ROW_EXERCISE_NAME, 50))
|
|
#define FIT_ROW_EXERCISE_NAME_WEIGHTED_TRX_INVERTED_ROW (FIT_CAST(FIT_ROW_EXERCISE_NAME, 51))
|
|
#define FIT_ROW_EXERCISE_NAME_DUMBBELL_ROW_WHEELCHAIR (FIT_CAST(FIT_ROW_EXERCISE_NAME, 52))
|
|
#define FIT_ROW_EXERCISE_NAME_COUNT 53
|
|
|
|
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_CAST(FIT_SHOULDER_PRESS_EXERCISE_NAME, 0))
|
|
#define FIT_SHOULDER_PRESS_EXERCISE_NAME_ARNOLD_PRESS (FIT_CAST(FIT_SHOULDER_PRESS_EXERCISE_NAME, 1))
|
|
#define FIT_SHOULDER_PRESS_EXERCISE_NAME_BARBELL_FRONT_SQUAT_TO_PUSH_PRESS (FIT_CAST(FIT_SHOULDER_PRESS_EXERCISE_NAME, 2))
|
|
#define FIT_SHOULDER_PRESS_EXERCISE_NAME_BARBELL_PUSH_PRESS (FIT_CAST(FIT_SHOULDER_PRESS_EXERCISE_NAME, 3))
|
|
#define FIT_SHOULDER_PRESS_EXERCISE_NAME_BARBELL_SHOULDER_PRESS (FIT_CAST(FIT_SHOULDER_PRESS_EXERCISE_NAME, 4))
|
|
#define FIT_SHOULDER_PRESS_EXERCISE_NAME_DEAD_CURL_PRESS (FIT_CAST(FIT_SHOULDER_PRESS_EXERCISE_NAME, 5))
|
|
#define FIT_SHOULDER_PRESS_EXERCISE_NAME_DUMBBELL_ALTERNATING_SHOULDER_PRESS_AND_TWIST (FIT_CAST(FIT_SHOULDER_PRESS_EXERCISE_NAME, 6))
|
|
#define FIT_SHOULDER_PRESS_EXERCISE_NAME_DUMBBELL_HAMMER_CURL_TO_LUNGE_TO_PRESS (FIT_CAST(FIT_SHOULDER_PRESS_EXERCISE_NAME, 7))
|
|
#define FIT_SHOULDER_PRESS_EXERCISE_NAME_DUMBBELL_PUSH_PRESS (FIT_CAST(FIT_SHOULDER_PRESS_EXERCISE_NAME, 8))
|
|
#define FIT_SHOULDER_PRESS_EXERCISE_NAME_FLOOR_INVERTED_SHOULDER_PRESS (FIT_CAST(FIT_SHOULDER_PRESS_EXERCISE_NAME, 9))
|
|
#define FIT_SHOULDER_PRESS_EXERCISE_NAME_WEIGHTED_FLOOR_INVERTED_SHOULDER_PRESS (FIT_CAST(FIT_SHOULDER_PRESS_EXERCISE_NAME, 10))
|
|
#define FIT_SHOULDER_PRESS_EXERCISE_NAME_INVERTED_SHOULDER_PRESS (FIT_CAST(FIT_SHOULDER_PRESS_EXERCISE_NAME, 11))
|
|
#define FIT_SHOULDER_PRESS_EXERCISE_NAME_WEIGHTED_INVERTED_SHOULDER_PRESS (FIT_CAST(FIT_SHOULDER_PRESS_EXERCISE_NAME, 12))
|
|
#define FIT_SHOULDER_PRESS_EXERCISE_NAME_ONE_ARM_PUSH_PRESS (FIT_CAST(FIT_SHOULDER_PRESS_EXERCISE_NAME, 13))
|
|
#define FIT_SHOULDER_PRESS_EXERCISE_NAME_OVERHEAD_BARBELL_PRESS (FIT_CAST(FIT_SHOULDER_PRESS_EXERCISE_NAME, 14))
|
|
#define FIT_SHOULDER_PRESS_EXERCISE_NAME_OVERHEAD_DUMBBELL_PRESS (FIT_CAST(FIT_SHOULDER_PRESS_EXERCISE_NAME, 15))
|
|
#define FIT_SHOULDER_PRESS_EXERCISE_NAME_SEATED_BARBELL_SHOULDER_PRESS (FIT_CAST(FIT_SHOULDER_PRESS_EXERCISE_NAME, 16))
|
|
#define FIT_SHOULDER_PRESS_EXERCISE_NAME_SEATED_DUMBBELL_SHOULDER_PRESS (FIT_CAST(FIT_SHOULDER_PRESS_EXERCISE_NAME, 17))
|
|
#define FIT_SHOULDER_PRESS_EXERCISE_NAME_SINGLE_ARM_DUMBBELL_SHOULDER_PRESS (FIT_CAST(FIT_SHOULDER_PRESS_EXERCISE_NAME, 18))
|
|
#define FIT_SHOULDER_PRESS_EXERCISE_NAME_SINGLE_ARM_STEP_UP_AND_PRESS (FIT_CAST(FIT_SHOULDER_PRESS_EXERCISE_NAME, 19))
|
|
#define FIT_SHOULDER_PRESS_EXERCISE_NAME_SMITH_MACHINE_OVERHEAD_PRESS (FIT_CAST(FIT_SHOULDER_PRESS_EXERCISE_NAME, 20))
|
|
#define FIT_SHOULDER_PRESS_EXERCISE_NAME_SPLIT_STANCE_HAMMER_CURL_TO_PRESS (FIT_CAST(FIT_SHOULDER_PRESS_EXERCISE_NAME, 21))
|
|
#define FIT_SHOULDER_PRESS_EXERCISE_NAME_SWISS_BALL_DUMBBELL_SHOULDER_PRESS (FIT_CAST(FIT_SHOULDER_PRESS_EXERCISE_NAME, 22))
|
|
#define FIT_SHOULDER_PRESS_EXERCISE_NAME_WEIGHT_PLATE_FRONT_RAISE (FIT_CAST(FIT_SHOULDER_PRESS_EXERCISE_NAME, 23))
|
|
#define FIT_SHOULDER_PRESS_EXERCISE_NAME_DUMBBELL_SHOULDER_PRESS (FIT_CAST(FIT_SHOULDER_PRESS_EXERCISE_NAME, 24))
|
|
#define FIT_SHOULDER_PRESS_EXERCISE_NAME_MILITARY_PRESS (FIT_CAST(FIT_SHOULDER_PRESS_EXERCISE_NAME, 25))
|
|
#define FIT_SHOULDER_PRESS_EXERCISE_NAME_STRICT_PRESS (FIT_CAST(FIT_SHOULDER_PRESS_EXERCISE_NAME, 27))
|
|
#define FIT_SHOULDER_PRESS_EXERCISE_NAME_DUMBBELL_FRONT_RAISE (FIT_CAST(FIT_SHOULDER_PRESS_EXERCISE_NAME, 28))
|
|
#define FIT_SHOULDER_PRESS_EXERCISE_NAME_DUMBBELL_CURL_TO_OVERHEAD_PRESS_WHEELCHAIR (FIT_CAST(FIT_SHOULDER_PRESS_EXERCISE_NAME, 29))
|
|
#define FIT_SHOULDER_PRESS_EXERCISE_NAME_ARNOLD_PRESS_WHEELCHAIR (FIT_CAST(FIT_SHOULDER_PRESS_EXERCISE_NAME, 30))
|
|
#define FIT_SHOULDER_PRESS_EXERCISE_NAME_OVERHEAD_DUMBBELL_PRESS_WHEELCHAIR (FIT_CAST(FIT_SHOULDER_PRESS_EXERCISE_NAME, 31))
|
|
#define FIT_SHOULDER_PRESS_EXERCISE_NAME_COUNT 31
|
|
|
|
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_CAST(FIT_SHOULDER_STABILITY_EXERCISE_NAME, 0))
|
|
#define FIT_SHOULDER_STABILITY_EXERCISE_NAME_BAND_EXTERNAL_ROTATION (FIT_CAST(FIT_SHOULDER_STABILITY_EXERCISE_NAME, 1))
|
|
#define FIT_SHOULDER_STABILITY_EXERCISE_NAME_BAND_INTERNAL_ROTATION (FIT_CAST(FIT_SHOULDER_STABILITY_EXERCISE_NAME, 2))
|
|
#define FIT_SHOULDER_STABILITY_EXERCISE_NAME_BENT_ARM_LATERAL_RAISE_AND_EXTERNAL_ROTATION (FIT_CAST(FIT_SHOULDER_STABILITY_EXERCISE_NAME, 3))
|
|
#define FIT_SHOULDER_STABILITY_EXERCISE_NAME_CABLE_EXTERNAL_ROTATION (FIT_CAST(FIT_SHOULDER_STABILITY_EXERCISE_NAME, 4))
|
|
#define FIT_SHOULDER_STABILITY_EXERCISE_NAME_DUMBBELL_FACE_PULL_WITH_EXTERNAL_ROTATION (FIT_CAST(FIT_SHOULDER_STABILITY_EXERCISE_NAME, 5))
|
|
#define FIT_SHOULDER_STABILITY_EXERCISE_NAME_FLOOR_I_RAISE (FIT_CAST(FIT_SHOULDER_STABILITY_EXERCISE_NAME, 6))
|
|
#define FIT_SHOULDER_STABILITY_EXERCISE_NAME_WEIGHTED_FLOOR_I_RAISE (FIT_CAST(FIT_SHOULDER_STABILITY_EXERCISE_NAME, 7))
|
|
#define FIT_SHOULDER_STABILITY_EXERCISE_NAME_FLOOR_T_RAISE (FIT_CAST(FIT_SHOULDER_STABILITY_EXERCISE_NAME, 8))
|
|
#define FIT_SHOULDER_STABILITY_EXERCISE_NAME_WEIGHTED_FLOOR_T_RAISE (FIT_CAST(FIT_SHOULDER_STABILITY_EXERCISE_NAME, 9))
|
|
#define FIT_SHOULDER_STABILITY_EXERCISE_NAME_FLOOR_Y_RAISE (FIT_CAST(FIT_SHOULDER_STABILITY_EXERCISE_NAME, 10))
|
|
#define FIT_SHOULDER_STABILITY_EXERCISE_NAME_WEIGHTED_FLOOR_Y_RAISE (FIT_CAST(FIT_SHOULDER_STABILITY_EXERCISE_NAME, 11))
|
|
#define FIT_SHOULDER_STABILITY_EXERCISE_NAME_INCLINE_I_RAISE (FIT_CAST(FIT_SHOULDER_STABILITY_EXERCISE_NAME, 12))
|
|
#define FIT_SHOULDER_STABILITY_EXERCISE_NAME_WEIGHTED_INCLINE_I_RAISE (FIT_CAST(FIT_SHOULDER_STABILITY_EXERCISE_NAME, 13))
|
|
#define FIT_SHOULDER_STABILITY_EXERCISE_NAME_INCLINE_L_RAISE (FIT_CAST(FIT_SHOULDER_STABILITY_EXERCISE_NAME, 14))
|
|
#define FIT_SHOULDER_STABILITY_EXERCISE_NAME_WEIGHTED_INCLINE_L_RAISE (FIT_CAST(FIT_SHOULDER_STABILITY_EXERCISE_NAME, 15))
|
|
#define FIT_SHOULDER_STABILITY_EXERCISE_NAME_INCLINE_T_RAISE (FIT_CAST(FIT_SHOULDER_STABILITY_EXERCISE_NAME, 16))
|
|
#define FIT_SHOULDER_STABILITY_EXERCISE_NAME_WEIGHTED_INCLINE_T_RAISE (FIT_CAST(FIT_SHOULDER_STABILITY_EXERCISE_NAME, 17))
|
|
#define FIT_SHOULDER_STABILITY_EXERCISE_NAME_INCLINE_W_RAISE (FIT_CAST(FIT_SHOULDER_STABILITY_EXERCISE_NAME, 18))
|
|
#define FIT_SHOULDER_STABILITY_EXERCISE_NAME_WEIGHTED_INCLINE_W_RAISE (FIT_CAST(FIT_SHOULDER_STABILITY_EXERCISE_NAME, 19))
|
|
#define FIT_SHOULDER_STABILITY_EXERCISE_NAME_INCLINE_Y_RAISE (FIT_CAST(FIT_SHOULDER_STABILITY_EXERCISE_NAME, 20))
|
|
#define FIT_SHOULDER_STABILITY_EXERCISE_NAME_WEIGHTED_INCLINE_Y_RAISE (FIT_CAST(FIT_SHOULDER_STABILITY_EXERCISE_NAME, 21))
|
|
#define FIT_SHOULDER_STABILITY_EXERCISE_NAME_LYING_EXTERNAL_ROTATION (FIT_CAST(FIT_SHOULDER_STABILITY_EXERCISE_NAME, 22))
|
|
#define FIT_SHOULDER_STABILITY_EXERCISE_NAME_SEATED_DUMBBELL_EXTERNAL_ROTATION (FIT_CAST(FIT_SHOULDER_STABILITY_EXERCISE_NAME, 23))
|
|
#define FIT_SHOULDER_STABILITY_EXERCISE_NAME_STANDING_L_RAISE (FIT_CAST(FIT_SHOULDER_STABILITY_EXERCISE_NAME, 24))
|
|
#define FIT_SHOULDER_STABILITY_EXERCISE_NAME_SWISS_BALL_I_RAISE (FIT_CAST(FIT_SHOULDER_STABILITY_EXERCISE_NAME, 25))
|
|
#define FIT_SHOULDER_STABILITY_EXERCISE_NAME_WEIGHTED_SWISS_BALL_I_RAISE (FIT_CAST(FIT_SHOULDER_STABILITY_EXERCISE_NAME, 26))
|
|
#define FIT_SHOULDER_STABILITY_EXERCISE_NAME_SWISS_BALL_T_RAISE (FIT_CAST(FIT_SHOULDER_STABILITY_EXERCISE_NAME, 27))
|
|
#define FIT_SHOULDER_STABILITY_EXERCISE_NAME_WEIGHTED_SWISS_BALL_T_RAISE (FIT_CAST(FIT_SHOULDER_STABILITY_EXERCISE_NAME, 28))
|
|
#define FIT_SHOULDER_STABILITY_EXERCISE_NAME_SWISS_BALL_W_RAISE (FIT_CAST(FIT_SHOULDER_STABILITY_EXERCISE_NAME, 29))
|
|
#define FIT_SHOULDER_STABILITY_EXERCISE_NAME_WEIGHTED_SWISS_BALL_W_RAISE (FIT_CAST(FIT_SHOULDER_STABILITY_EXERCISE_NAME, 30))
|
|
#define FIT_SHOULDER_STABILITY_EXERCISE_NAME_SWISS_BALL_Y_RAISE (FIT_CAST(FIT_SHOULDER_STABILITY_EXERCISE_NAME, 31))
|
|
#define FIT_SHOULDER_STABILITY_EXERCISE_NAME_WEIGHTED_SWISS_BALL_Y_RAISE (FIT_CAST(FIT_SHOULDER_STABILITY_EXERCISE_NAME, 32))
|
|
#define FIT_SHOULDER_STABILITY_EXERCISE_NAME_CABLE_INTERNAL_ROTATION (FIT_CAST(FIT_SHOULDER_STABILITY_EXERCISE_NAME, 33))
|
|
#define FIT_SHOULDER_STABILITY_EXERCISE_NAME_LYING_INTERNAL_ROTATION (FIT_CAST(FIT_SHOULDER_STABILITY_EXERCISE_NAME, 34))
|
|
#define FIT_SHOULDER_STABILITY_EXERCISE_NAME_SEATED_DUMBBELL_INTERNAL_ROTATION (FIT_CAST(FIT_SHOULDER_STABILITY_EXERCISE_NAME, 35))
|
|
#define FIT_SHOULDER_STABILITY_EXERCISE_NAME_COUNT 36
|
|
|
|
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_CAST(FIT_SHRUG_EXERCISE_NAME, 0))
|
|
#define FIT_SHRUG_EXERCISE_NAME_BARBELL_SHRUG (FIT_CAST(FIT_SHRUG_EXERCISE_NAME, 1))
|
|
#define FIT_SHRUG_EXERCISE_NAME_BARBELL_UPRIGHT_ROW (FIT_CAST(FIT_SHRUG_EXERCISE_NAME, 2))
|
|
#define FIT_SHRUG_EXERCISE_NAME_BEHIND_THE_BACK_SMITH_MACHINE_SHRUG (FIT_CAST(FIT_SHRUG_EXERCISE_NAME, 3))
|
|
#define FIT_SHRUG_EXERCISE_NAME_DUMBBELL_JUMP_SHRUG (FIT_CAST(FIT_SHRUG_EXERCISE_NAME, 4))
|
|
#define FIT_SHRUG_EXERCISE_NAME_DUMBBELL_SHRUG (FIT_CAST(FIT_SHRUG_EXERCISE_NAME, 5))
|
|
#define FIT_SHRUG_EXERCISE_NAME_DUMBBELL_UPRIGHT_ROW (FIT_CAST(FIT_SHRUG_EXERCISE_NAME, 6))
|
|
#define FIT_SHRUG_EXERCISE_NAME_INCLINE_DUMBBELL_SHRUG (FIT_CAST(FIT_SHRUG_EXERCISE_NAME, 7))
|
|
#define FIT_SHRUG_EXERCISE_NAME_OVERHEAD_BARBELL_SHRUG (FIT_CAST(FIT_SHRUG_EXERCISE_NAME, 8))
|
|
#define FIT_SHRUG_EXERCISE_NAME_OVERHEAD_DUMBBELL_SHRUG (FIT_CAST(FIT_SHRUG_EXERCISE_NAME, 9))
|
|
#define FIT_SHRUG_EXERCISE_NAME_SCAPTION_AND_SHRUG (FIT_CAST(FIT_SHRUG_EXERCISE_NAME, 10))
|
|
#define FIT_SHRUG_EXERCISE_NAME_SCAPULAR_RETRACTION (FIT_CAST(FIT_SHRUG_EXERCISE_NAME, 11))
|
|
#define FIT_SHRUG_EXERCISE_NAME_SERRATUS_CHAIR_SHRUG (FIT_CAST(FIT_SHRUG_EXERCISE_NAME, 12))
|
|
#define FIT_SHRUG_EXERCISE_NAME_WEIGHTED_SERRATUS_CHAIR_SHRUG (FIT_CAST(FIT_SHRUG_EXERCISE_NAME, 13))
|
|
#define FIT_SHRUG_EXERCISE_NAME_SERRATUS_SHRUG (FIT_CAST(FIT_SHRUG_EXERCISE_NAME, 14))
|
|
#define FIT_SHRUG_EXERCISE_NAME_WEIGHTED_SERRATUS_SHRUG (FIT_CAST(FIT_SHRUG_EXERCISE_NAME, 15))
|
|
#define FIT_SHRUG_EXERCISE_NAME_WIDE_GRIP_JUMP_SHRUG (FIT_CAST(FIT_SHRUG_EXERCISE_NAME, 16))
|
|
#define FIT_SHRUG_EXERCISE_NAME_WIDE_GRIP_BARBELL_SHRUG (FIT_CAST(FIT_SHRUG_EXERCISE_NAME, 17))
|
|
#define FIT_SHRUG_EXERCISE_NAME_BEHIND_THE_BACK_SHRUG (FIT_CAST(FIT_SHRUG_EXERCISE_NAME, 18))
|
|
#define FIT_SHRUG_EXERCISE_NAME_DUMBBELL_SHRUG_WHEELCHAIR (FIT_CAST(FIT_SHRUG_EXERCISE_NAME, 19))
|
|
#define FIT_SHRUG_EXERCISE_NAME_SHRUG_WHEELCHAIR (FIT_CAST(FIT_SHRUG_EXERCISE_NAME, 20))
|
|
#define FIT_SHRUG_EXERCISE_NAME_SHRUG_ARM_DOWN_WHEELCHAIR (FIT_CAST(FIT_SHRUG_EXERCISE_NAME, 21))
|
|
#define FIT_SHRUG_EXERCISE_NAME_SHRUG_ARM_MID_WHEELCHAIR (FIT_CAST(FIT_SHRUG_EXERCISE_NAME, 22))
|
|
#define FIT_SHRUG_EXERCISE_NAME_SHRUG_ARM_UP_WHEELCHAIR (FIT_CAST(FIT_SHRUG_EXERCISE_NAME, 23))
|
|
#define FIT_SHRUG_EXERCISE_NAME_UPRIGHT_ROW (FIT_CAST(FIT_SHRUG_EXERCISE_NAME, 24))
|
|
#define FIT_SHRUG_EXERCISE_NAME_COUNT 25
|
|
|
|
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_CAST(FIT_SIT_UP_EXERCISE_NAME, 0))
|
|
#define FIT_SIT_UP_EXERCISE_NAME_WEIGHTED_ALTERNATING_SIT_UP (FIT_CAST(FIT_SIT_UP_EXERCISE_NAME, 1))
|
|
#define FIT_SIT_UP_EXERCISE_NAME_BENT_KNEE_V_UP (FIT_CAST(FIT_SIT_UP_EXERCISE_NAME, 2))
|
|
#define FIT_SIT_UP_EXERCISE_NAME_WEIGHTED_BENT_KNEE_V_UP (FIT_CAST(FIT_SIT_UP_EXERCISE_NAME, 3))
|
|
#define FIT_SIT_UP_EXERCISE_NAME_BUTTERFLY_SIT_UP (FIT_CAST(FIT_SIT_UP_EXERCISE_NAME, 4))
|
|
#define FIT_SIT_UP_EXERCISE_NAME_WEIGHTED_BUTTERFLY_SITUP (FIT_CAST(FIT_SIT_UP_EXERCISE_NAME, 5))
|
|
#define FIT_SIT_UP_EXERCISE_NAME_CROSS_PUNCH_ROLL_UP (FIT_CAST(FIT_SIT_UP_EXERCISE_NAME, 6))
|
|
#define FIT_SIT_UP_EXERCISE_NAME_WEIGHTED_CROSS_PUNCH_ROLL_UP (FIT_CAST(FIT_SIT_UP_EXERCISE_NAME, 7))
|
|
#define FIT_SIT_UP_EXERCISE_NAME_CROSSED_ARMS_SIT_UP (FIT_CAST(FIT_SIT_UP_EXERCISE_NAME, 8))
|
|
#define FIT_SIT_UP_EXERCISE_NAME_WEIGHTED_CROSSED_ARMS_SIT_UP (FIT_CAST(FIT_SIT_UP_EXERCISE_NAME, 9))
|
|
#define FIT_SIT_UP_EXERCISE_NAME_GET_UP_SIT_UP (FIT_CAST(FIT_SIT_UP_EXERCISE_NAME, 10))
|
|
#define FIT_SIT_UP_EXERCISE_NAME_WEIGHTED_GET_UP_SIT_UP (FIT_CAST(FIT_SIT_UP_EXERCISE_NAME, 11))
|
|
#define FIT_SIT_UP_EXERCISE_NAME_HOVERING_SIT_UP (FIT_CAST(FIT_SIT_UP_EXERCISE_NAME, 12))
|
|
#define FIT_SIT_UP_EXERCISE_NAME_WEIGHTED_HOVERING_SIT_UP (FIT_CAST(FIT_SIT_UP_EXERCISE_NAME, 13))
|
|
#define FIT_SIT_UP_EXERCISE_NAME_KETTLEBELL_SIT_UP (FIT_CAST(FIT_SIT_UP_EXERCISE_NAME, 14))
|
|
#define FIT_SIT_UP_EXERCISE_NAME_MEDICINE_BALL_ALTERNATING_V_UP (FIT_CAST(FIT_SIT_UP_EXERCISE_NAME, 15))
|
|
#define FIT_SIT_UP_EXERCISE_NAME_MEDICINE_BALL_SIT_UP (FIT_CAST(FIT_SIT_UP_EXERCISE_NAME, 16))
|
|
#define FIT_SIT_UP_EXERCISE_NAME_MEDICINE_BALL_V_UP (FIT_CAST(FIT_SIT_UP_EXERCISE_NAME, 17))
|
|
#define FIT_SIT_UP_EXERCISE_NAME_MODIFIED_SIT_UP (FIT_CAST(FIT_SIT_UP_EXERCISE_NAME, 18))
|
|
#define FIT_SIT_UP_EXERCISE_NAME_NEGATIVE_SIT_UP (FIT_CAST(FIT_SIT_UP_EXERCISE_NAME, 19))
|
|
#define FIT_SIT_UP_EXERCISE_NAME_ONE_ARM_FULL_SIT_UP (FIT_CAST(FIT_SIT_UP_EXERCISE_NAME, 20))
|
|
#define FIT_SIT_UP_EXERCISE_NAME_RECLINING_CIRCLE (FIT_CAST(FIT_SIT_UP_EXERCISE_NAME, 21))
|
|
#define FIT_SIT_UP_EXERCISE_NAME_WEIGHTED_RECLINING_CIRCLE (FIT_CAST(FIT_SIT_UP_EXERCISE_NAME, 22))
|
|
#define FIT_SIT_UP_EXERCISE_NAME_REVERSE_CURL_UP (FIT_CAST(FIT_SIT_UP_EXERCISE_NAME, 23))
|
|
#define FIT_SIT_UP_EXERCISE_NAME_WEIGHTED_REVERSE_CURL_UP (FIT_CAST(FIT_SIT_UP_EXERCISE_NAME, 24))
|
|
#define FIT_SIT_UP_EXERCISE_NAME_SINGLE_LEG_SWISS_BALL_JACKKNIFE (FIT_CAST(FIT_SIT_UP_EXERCISE_NAME, 25))
|
|
#define FIT_SIT_UP_EXERCISE_NAME_WEIGHTED_SINGLE_LEG_SWISS_BALL_JACKKNIFE (FIT_CAST(FIT_SIT_UP_EXERCISE_NAME, 26))
|
|
#define FIT_SIT_UP_EXERCISE_NAME_THE_TEASER (FIT_CAST(FIT_SIT_UP_EXERCISE_NAME, 27))
|
|
#define FIT_SIT_UP_EXERCISE_NAME_THE_TEASER_WEIGHTED (FIT_CAST(FIT_SIT_UP_EXERCISE_NAME, 28))
|
|
#define FIT_SIT_UP_EXERCISE_NAME_THREE_PART_ROLL_DOWN (FIT_CAST(FIT_SIT_UP_EXERCISE_NAME, 29))
|
|
#define FIT_SIT_UP_EXERCISE_NAME_WEIGHTED_THREE_PART_ROLL_DOWN (FIT_CAST(FIT_SIT_UP_EXERCISE_NAME, 30))
|
|
#define FIT_SIT_UP_EXERCISE_NAME_V_UP (FIT_CAST(FIT_SIT_UP_EXERCISE_NAME, 31))
|
|
#define FIT_SIT_UP_EXERCISE_NAME_WEIGHTED_V_UP (FIT_CAST(FIT_SIT_UP_EXERCISE_NAME, 32))
|
|
#define FIT_SIT_UP_EXERCISE_NAME_WEIGHTED_RUSSIAN_TWIST_ON_SWISS_BALL (FIT_CAST(FIT_SIT_UP_EXERCISE_NAME, 33))
|
|
#define FIT_SIT_UP_EXERCISE_NAME_WEIGHTED_SIT_UP (FIT_CAST(FIT_SIT_UP_EXERCISE_NAME, 34))
|
|
#define FIT_SIT_UP_EXERCISE_NAME_X_ABS (FIT_CAST(FIT_SIT_UP_EXERCISE_NAME, 35))
|
|
#define FIT_SIT_UP_EXERCISE_NAME_WEIGHTED_X_ABS (FIT_CAST(FIT_SIT_UP_EXERCISE_NAME, 36))
|
|
#define FIT_SIT_UP_EXERCISE_NAME_SIT_UP (FIT_CAST(FIT_SIT_UP_EXERCISE_NAME, 37))
|
|
#define FIT_SIT_UP_EXERCISE_NAME_GHD_SIT_UPS (FIT_CAST(FIT_SIT_UP_EXERCISE_NAME, 38))
|
|
#define FIT_SIT_UP_EXERCISE_NAME_SIT_UP_TURKISH_GET_UP (FIT_CAST(FIT_SIT_UP_EXERCISE_NAME, 39))
|
|
#define FIT_SIT_UP_EXERCISE_NAME_RUSSIAN_TWIST_ON_SWISS_BALL (FIT_CAST(FIT_SIT_UP_EXERCISE_NAME, 40))
|
|
#define FIT_SIT_UP_EXERCISE_NAME_COUNT 41
|
|
|
|
typedef FIT_UINT16 FIT_SQUAT_EXERCISE_NAME;
|
|
#define FIT_SQUAT_EXERCISE_NAME_INVALID FIT_UINT16_INVALID
|
|
#define FIT_SQUAT_EXERCISE_NAME_LEG_PRESS (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 0))
|
|
#define FIT_SQUAT_EXERCISE_NAME_BACK_SQUAT_WITH_BODY_BAR (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 1))
|
|
#define FIT_SQUAT_EXERCISE_NAME_BACK_SQUATS (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 2))
|
|
#define FIT_SQUAT_EXERCISE_NAME_WEIGHTED_BACK_SQUATS (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 3))
|
|
#define FIT_SQUAT_EXERCISE_NAME_BALANCING_SQUAT (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 4))
|
|
#define FIT_SQUAT_EXERCISE_NAME_WEIGHTED_BALANCING_SQUAT (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 5))
|
|
#define FIT_SQUAT_EXERCISE_NAME_BARBELL_BACK_SQUAT (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 6))
|
|
#define FIT_SQUAT_EXERCISE_NAME_BARBELL_BOX_SQUAT (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 7))
|
|
#define FIT_SQUAT_EXERCISE_NAME_BARBELL_FRONT_SQUAT (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 8))
|
|
#define FIT_SQUAT_EXERCISE_NAME_BARBELL_HACK_SQUAT (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 9))
|
|
#define FIT_SQUAT_EXERCISE_NAME_BARBELL_HANG_SQUAT_SNATCH (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 10))
|
|
#define FIT_SQUAT_EXERCISE_NAME_BARBELL_LATERAL_STEP_UP (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 11))
|
|
#define FIT_SQUAT_EXERCISE_NAME_BARBELL_QUARTER_SQUAT (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 12))
|
|
#define FIT_SQUAT_EXERCISE_NAME_BARBELL_SIFF_SQUAT (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 13))
|
|
#define FIT_SQUAT_EXERCISE_NAME_BARBELL_SQUAT_SNATCH (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 14))
|
|
#define FIT_SQUAT_EXERCISE_NAME_BARBELL_SQUAT_WITH_HEELS_RAISED (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 15))
|
|
#define FIT_SQUAT_EXERCISE_NAME_BARBELL_STEPOVER (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 16))
|
|
#define FIT_SQUAT_EXERCISE_NAME_BARBELL_STEP_UP (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 17))
|
|
#define FIT_SQUAT_EXERCISE_NAME_BENCH_SQUAT_WITH_ROTATIONAL_CHOP (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 18))
|
|
#define FIT_SQUAT_EXERCISE_NAME_WEIGHTED_BENCH_SQUAT_WITH_ROTATIONAL_CHOP (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 19))
|
|
#define FIT_SQUAT_EXERCISE_NAME_BODY_WEIGHT_WALL_SQUAT (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 20))
|
|
#define FIT_SQUAT_EXERCISE_NAME_WEIGHTED_WALL_SQUAT (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 21))
|
|
#define FIT_SQUAT_EXERCISE_NAME_BOX_STEP_SQUAT (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 22))
|
|
#define FIT_SQUAT_EXERCISE_NAME_WEIGHTED_BOX_STEP_SQUAT (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 23))
|
|
#define FIT_SQUAT_EXERCISE_NAME_BRACED_SQUAT (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 24))
|
|
#define FIT_SQUAT_EXERCISE_NAME_CROSSED_ARM_BARBELL_FRONT_SQUAT (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 25))
|
|
#define FIT_SQUAT_EXERCISE_NAME_CROSSOVER_DUMBBELL_STEP_UP (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 26))
|
|
#define FIT_SQUAT_EXERCISE_NAME_DUMBBELL_FRONT_SQUAT (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 27))
|
|
#define FIT_SQUAT_EXERCISE_NAME_DUMBBELL_SPLIT_SQUAT (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 28))
|
|
#define FIT_SQUAT_EXERCISE_NAME_DUMBBELL_SQUAT (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 29))
|
|
#define FIT_SQUAT_EXERCISE_NAME_DUMBBELL_SQUAT_CLEAN (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 30))
|
|
#define FIT_SQUAT_EXERCISE_NAME_DUMBBELL_STEPOVER (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 31))
|
|
#define FIT_SQUAT_EXERCISE_NAME_DUMBBELL_STEP_UP (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 32))
|
|
#define FIT_SQUAT_EXERCISE_NAME_ELEVATED_SINGLE_LEG_SQUAT (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 33))
|
|
#define FIT_SQUAT_EXERCISE_NAME_WEIGHTED_ELEVATED_SINGLE_LEG_SQUAT (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 34))
|
|
#define FIT_SQUAT_EXERCISE_NAME_FIGURE_FOUR_SQUATS (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 35))
|
|
#define FIT_SQUAT_EXERCISE_NAME_WEIGHTED_FIGURE_FOUR_SQUATS (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 36))
|
|
#define FIT_SQUAT_EXERCISE_NAME_GOBLET_SQUAT (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 37))
|
|
#define FIT_SQUAT_EXERCISE_NAME_KETTLEBELL_SQUAT (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 38))
|
|
#define FIT_SQUAT_EXERCISE_NAME_KETTLEBELL_SWING_OVERHEAD (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 39))
|
|
#define FIT_SQUAT_EXERCISE_NAME_KETTLEBELL_SWING_WITH_FLIP_TO_SQUAT (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 40))
|
|
#define FIT_SQUAT_EXERCISE_NAME_LATERAL_DUMBBELL_STEP_UP (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 41))
|
|
#define FIT_SQUAT_EXERCISE_NAME_ONE_LEGGED_SQUAT (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 42))
|
|
#define FIT_SQUAT_EXERCISE_NAME_OVERHEAD_DUMBBELL_SQUAT (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 43))
|
|
#define FIT_SQUAT_EXERCISE_NAME_OVERHEAD_SQUAT (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 44))
|
|
#define FIT_SQUAT_EXERCISE_NAME_PARTIAL_SINGLE_LEG_SQUAT (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 45))
|
|
#define FIT_SQUAT_EXERCISE_NAME_WEIGHTED_PARTIAL_SINGLE_LEG_SQUAT (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 46))
|
|
#define FIT_SQUAT_EXERCISE_NAME_PISTOL_SQUAT (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 47))
|
|
#define FIT_SQUAT_EXERCISE_NAME_WEIGHTED_PISTOL_SQUAT (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 48))
|
|
#define FIT_SQUAT_EXERCISE_NAME_PLIE_SLIDES (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 49))
|
|
#define FIT_SQUAT_EXERCISE_NAME_WEIGHTED_PLIE_SLIDES (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 50))
|
|
#define FIT_SQUAT_EXERCISE_NAME_PLIE_SQUAT (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 51))
|
|
#define FIT_SQUAT_EXERCISE_NAME_WEIGHTED_PLIE_SQUAT (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 52))
|
|
#define FIT_SQUAT_EXERCISE_NAME_PRISONER_SQUAT (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 53))
|
|
#define FIT_SQUAT_EXERCISE_NAME_WEIGHTED_PRISONER_SQUAT (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 54))
|
|
#define FIT_SQUAT_EXERCISE_NAME_SINGLE_LEG_BENCH_GET_UP (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 55))
|
|
#define FIT_SQUAT_EXERCISE_NAME_WEIGHTED_SINGLE_LEG_BENCH_GET_UP (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 56))
|
|
#define FIT_SQUAT_EXERCISE_NAME_SINGLE_LEG_BENCH_SQUAT (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 57))
|
|
#define FIT_SQUAT_EXERCISE_NAME_WEIGHTED_SINGLE_LEG_BENCH_SQUAT (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 58))
|
|
#define FIT_SQUAT_EXERCISE_NAME_SINGLE_LEG_SQUAT_ON_SWISS_BALL (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 59))
|
|
#define FIT_SQUAT_EXERCISE_NAME_WEIGHTED_SINGLE_LEG_SQUAT_ON_SWISS_BALL (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 60))
|
|
#define FIT_SQUAT_EXERCISE_NAME_SQUAT (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 61))
|
|
#define FIT_SQUAT_EXERCISE_NAME_WEIGHTED_SQUAT (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 62))
|
|
#define FIT_SQUAT_EXERCISE_NAME_SQUATS_WITH_BAND (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 63))
|
|
#define FIT_SQUAT_EXERCISE_NAME_STAGGERED_SQUAT (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 64))
|
|
#define FIT_SQUAT_EXERCISE_NAME_WEIGHTED_STAGGERED_SQUAT (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 65))
|
|
#define FIT_SQUAT_EXERCISE_NAME_STEP_UP (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 66))
|
|
#define FIT_SQUAT_EXERCISE_NAME_WEIGHTED_STEP_UP (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 67))
|
|
#define FIT_SQUAT_EXERCISE_NAME_SUITCASE_SQUATS (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 68))
|
|
#define FIT_SQUAT_EXERCISE_NAME_SUMO_SQUAT (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 69))
|
|
#define FIT_SQUAT_EXERCISE_NAME_SUMO_SQUAT_SLIDE_IN (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 70))
|
|
#define FIT_SQUAT_EXERCISE_NAME_WEIGHTED_SUMO_SQUAT_SLIDE_IN (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 71))
|
|
#define FIT_SQUAT_EXERCISE_NAME_SUMO_SQUAT_TO_HIGH_PULL (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 72))
|
|
#define FIT_SQUAT_EXERCISE_NAME_SUMO_SQUAT_TO_STAND (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 73))
|
|
#define FIT_SQUAT_EXERCISE_NAME_WEIGHTED_SUMO_SQUAT_TO_STAND (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 74))
|
|
#define FIT_SQUAT_EXERCISE_NAME_SUMO_SQUAT_WITH_ROTATION (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 75))
|
|
#define FIT_SQUAT_EXERCISE_NAME_WEIGHTED_SUMO_SQUAT_WITH_ROTATION (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 76))
|
|
#define FIT_SQUAT_EXERCISE_NAME_SWISS_BALL_BODY_WEIGHT_WALL_SQUAT (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 77))
|
|
#define FIT_SQUAT_EXERCISE_NAME_WEIGHTED_SWISS_BALL_WALL_SQUAT (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 78))
|
|
#define FIT_SQUAT_EXERCISE_NAME_THRUSTERS (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 79))
|
|
#define FIT_SQUAT_EXERCISE_NAME_UNEVEN_SQUAT (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 80))
|
|
#define FIT_SQUAT_EXERCISE_NAME_WEIGHTED_UNEVEN_SQUAT (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 81))
|
|
#define FIT_SQUAT_EXERCISE_NAME_WAIST_SLIMMING_SQUAT (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 82))
|
|
#define FIT_SQUAT_EXERCISE_NAME_WALL_BALL (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 83))
|
|
#define FIT_SQUAT_EXERCISE_NAME_WIDE_STANCE_BARBELL_SQUAT (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 84))
|
|
#define FIT_SQUAT_EXERCISE_NAME_WIDE_STANCE_GOBLET_SQUAT (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 85))
|
|
#define FIT_SQUAT_EXERCISE_NAME_ZERCHER_SQUAT (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 86))
|
|
#define FIT_SQUAT_EXERCISE_NAME_KBS_OVERHEAD (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 87)) // Deprecated do not use
|
|
#define FIT_SQUAT_EXERCISE_NAME_SQUAT_AND_SIDE_KICK (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 88))
|
|
#define FIT_SQUAT_EXERCISE_NAME_SQUAT_JUMPS_IN_N_OUT (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 89))
|
|
#define FIT_SQUAT_EXERCISE_NAME_PILATES_PLIE_SQUATS_PARALLEL_TURNED_OUT_FLAT_AND_HEELS (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 90))
|
|
#define FIT_SQUAT_EXERCISE_NAME_RELEVE_STRAIGHT_LEG_AND_KNEE_BENT_WITH_ONE_LEG_VARIATION (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 91))
|
|
#define FIT_SQUAT_EXERCISE_NAME_ALTERNATING_BOX_DUMBBELL_STEP_UPS (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 92))
|
|
#define FIT_SQUAT_EXERCISE_NAME_DUMBBELL_OVERHEAD_SQUAT_SINGLE_ARM (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 93))
|
|
#define FIT_SQUAT_EXERCISE_NAME_DUMBBELL_SQUAT_SNATCH (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 94))
|
|
#define FIT_SQUAT_EXERCISE_NAME_MEDICINE_BALL_SQUAT (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 95))
|
|
#define FIT_SQUAT_EXERCISE_NAME_WALL_BALL_SQUAT_AND_PRESS (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 97))
|
|
#define FIT_SQUAT_EXERCISE_NAME_SQUAT_AMERICAN_SWING (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 98))
|
|
#define FIT_SQUAT_EXERCISE_NAME_AIR_SQUAT (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 100))
|
|
#define FIT_SQUAT_EXERCISE_NAME_DUMBBELL_THRUSTERS (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 101))
|
|
#define FIT_SQUAT_EXERCISE_NAME_OVERHEAD_BARBELL_SQUAT (FIT_CAST(FIT_SQUAT_EXERCISE_NAME, 102))
|
|
#define FIT_SQUAT_EXERCISE_NAME_COUNT 101
|
|
|
|
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_CAST(FIT_TOTAL_BODY_EXERCISE_NAME, 0))
|
|
#define FIT_TOTAL_BODY_EXERCISE_NAME_WEIGHTED_BURPEE (FIT_CAST(FIT_TOTAL_BODY_EXERCISE_NAME, 1))
|
|
#define FIT_TOTAL_BODY_EXERCISE_NAME_BURPEE_BOX_JUMP (FIT_CAST(FIT_TOTAL_BODY_EXERCISE_NAME, 2))
|
|
#define FIT_TOTAL_BODY_EXERCISE_NAME_WEIGHTED_BURPEE_BOX_JUMP (FIT_CAST(FIT_TOTAL_BODY_EXERCISE_NAME, 3))
|
|
#define FIT_TOTAL_BODY_EXERCISE_NAME_HIGH_PULL_BURPEE (FIT_CAST(FIT_TOTAL_BODY_EXERCISE_NAME, 4))
|
|
#define FIT_TOTAL_BODY_EXERCISE_NAME_MAN_MAKERS (FIT_CAST(FIT_TOTAL_BODY_EXERCISE_NAME, 5))
|
|
#define FIT_TOTAL_BODY_EXERCISE_NAME_ONE_ARM_BURPEE (FIT_CAST(FIT_TOTAL_BODY_EXERCISE_NAME, 6))
|
|
#define FIT_TOTAL_BODY_EXERCISE_NAME_SQUAT_THRUSTS (FIT_CAST(FIT_TOTAL_BODY_EXERCISE_NAME, 7))
|
|
#define FIT_TOTAL_BODY_EXERCISE_NAME_WEIGHTED_SQUAT_THRUSTS (FIT_CAST(FIT_TOTAL_BODY_EXERCISE_NAME, 8))
|
|
#define FIT_TOTAL_BODY_EXERCISE_NAME_SQUAT_PLANK_PUSH_UP (FIT_CAST(FIT_TOTAL_BODY_EXERCISE_NAME, 9))
|
|
#define FIT_TOTAL_BODY_EXERCISE_NAME_WEIGHTED_SQUAT_PLANK_PUSH_UP (FIT_CAST(FIT_TOTAL_BODY_EXERCISE_NAME, 10))
|
|
#define FIT_TOTAL_BODY_EXERCISE_NAME_STANDING_T_ROTATION_BALANCE (FIT_CAST(FIT_TOTAL_BODY_EXERCISE_NAME, 11))
|
|
#define FIT_TOTAL_BODY_EXERCISE_NAME_WEIGHTED_STANDING_T_ROTATION_BALANCE (FIT_CAST(FIT_TOTAL_BODY_EXERCISE_NAME, 12))
|
|
#define FIT_TOTAL_BODY_EXERCISE_NAME_BARBELL_BURPEE (FIT_CAST(FIT_TOTAL_BODY_EXERCISE_NAME, 13))
|
|
#define FIT_TOTAL_BODY_EXERCISE_NAME_BURPEE_BOX_JUMP_OVER_YES_LITERALLY_JUMPING_OVER_THE_BOX (FIT_CAST(FIT_TOTAL_BODY_EXERCISE_NAME, 15))
|
|
#define FIT_TOTAL_BODY_EXERCISE_NAME_BURPEE_BOX_JUMP_STEP_UP_OVER (FIT_CAST(FIT_TOTAL_BODY_EXERCISE_NAME, 16))
|
|
#define FIT_TOTAL_BODY_EXERCISE_NAME_LATERAL_BARBELL_BURPEE (FIT_CAST(FIT_TOTAL_BODY_EXERCISE_NAME, 17))
|
|
#define FIT_TOTAL_BODY_EXERCISE_NAME_TOTAL_BODY_BURPEE_OVER_BAR (FIT_CAST(FIT_TOTAL_BODY_EXERCISE_NAME, 18))
|
|
#define FIT_TOTAL_BODY_EXERCISE_NAME_BURPEE_BOX_JUMP_OVER (FIT_CAST(FIT_TOTAL_BODY_EXERCISE_NAME, 19))
|
|
#define FIT_TOTAL_BODY_EXERCISE_NAME_BURPEE_WHEELCHAIR (FIT_CAST(FIT_TOTAL_BODY_EXERCISE_NAME, 20))
|
|
#define FIT_TOTAL_BODY_EXERCISE_NAME_COUNT 20
|
|
|
|
typedef FIT_UINT16 FIT_MOVE_EXERCISE_NAME;
|
|
#define FIT_MOVE_EXERCISE_NAME_INVALID FIT_UINT16_INVALID
|
|
#define FIT_MOVE_EXERCISE_NAME_ARCH_AND_CURL (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 0))
|
|
#define FIT_MOVE_EXERCISE_NAME_ARM_CIRCLES_WITH_BALL_BAND_AND_WEIGHT (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 1))
|
|
#define FIT_MOVE_EXERCISE_NAME_ARM_STRETCH (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 2))
|
|
#define FIT_MOVE_EXERCISE_NAME_BACK_MASSAGE (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 3))
|
|
#define FIT_MOVE_EXERCISE_NAME_BELLY_BREATHING (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 4))
|
|
#define FIT_MOVE_EXERCISE_NAME_BRIDGE_WITH_BALL (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 5))
|
|
#define FIT_MOVE_EXERCISE_NAME_DIAMOND_LEG_CRUNCH (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 6))
|
|
#define FIT_MOVE_EXERCISE_NAME_DIAMOND_LEG_LIFT (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 7))
|
|
#define FIT_MOVE_EXERCISE_NAME_EIGHT_POINT_SHOULDER_OPENER (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 8))
|
|
#define FIT_MOVE_EXERCISE_NAME_FOOT_ROLLING (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 9))
|
|
#define FIT_MOVE_EXERCISE_NAME_FOOTWORK (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 10))
|
|
#define FIT_MOVE_EXERCISE_NAME_FOOTWORK_ON_DISC (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 11))
|
|
#define FIT_MOVE_EXERCISE_NAME_FORWARD_FOLD (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 12))
|
|
#define FIT_MOVE_EXERCISE_NAME_FROG_WITH_BAND (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 13))
|
|
#define FIT_MOVE_EXERCISE_NAME_HALF_ROLL_UP (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 14))
|
|
#define FIT_MOVE_EXERCISE_NAME_HAMSTRING_CURL (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 15))
|
|
#define FIT_MOVE_EXERCISE_NAME_HAMSTRING_STRETCH (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 16))
|
|
#define FIT_MOVE_EXERCISE_NAME_HIP_STRETCH (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 17))
|
|
#define FIT_MOVE_EXERCISE_NAME_HUG_A_TREE_WITH_BALL_BAND_AND_WEIGHT (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 18))
|
|
#define FIT_MOVE_EXERCISE_NAME_KNEE_CIRCLES (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 19))
|
|
#define FIT_MOVE_EXERCISE_NAME_KNEE_FOLDS_ON_DISC (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 20))
|
|
#define FIT_MOVE_EXERCISE_NAME_LATERAL_FLEXION (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 21))
|
|
#define FIT_MOVE_EXERCISE_NAME_LEG_STRETCH_WITH_BAND (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 22))
|
|
#define FIT_MOVE_EXERCISE_NAME_LEG_STRETCH_WITH_LEG_CIRCLES (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 23))
|
|
#define FIT_MOVE_EXERCISE_NAME_LOWER_LIFT_ON_DISC (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 24))
|
|
#define FIT_MOVE_EXERCISE_NAME_LUNGE_SQUAT (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 25))
|
|
#define FIT_MOVE_EXERCISE_NAME_LUNGES_WITH_KNEE_LIFT (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 26))
|
|
#define FIT_MOVE_EXERCISE_NAME_MERMAID_STRETCH (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 27))
|
|
#define FIT_MOVE_EXERCISE_NAME_NEUTRAL_PELVIC_POSITION (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 28))
|
|
#define FIT_MOVE_EXERCISE_NAME_PELVIC_CLOCKS_ON_DISC (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 29))
|
|
#define FIT_MOVE_EXERCISE_NAME_PILATES_PLIE_SQUATS_PARALLEL_TURNED_OUT_FLAT_AND_HEELS_WITH_CHAIR (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 30))
|
|
#define FIT_MOVE_EXERCISE_NAME_PIRIFORMIS_STRETCH (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 31))
|
|
#define FIT_MOVE_EXERCISE_NAME_PLANK_KNEE_CROSSES (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 32))
|
|
#define FIT_MOVE_EXERCISE_NAME_PLANK_KNEE_PULLS (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 33))
|
|
#define FIT_MOVE_EXERCISE_NAME_PLANK_UP_DOWNS (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 34))
|
|
#define FIT_MOVE_EXERCISE_NAME_PRAYER_MUDRA (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 35))
|
|
#define FIT_MOVE_EXERCISE_NAME_PSOAS_LUNGE_STRETCH (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 36))
|
|
#define FIT_MOVE_EXERCISE_NAME_RIBCAGE_BREATHING (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 37))
|
|
#define FIT_MOVE_EXERCISE_NAME_ROLL_DOWN (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 38))
|
|
#define FIT_MOVE_EXERCISE_NAME_ROLL_UP_WITH_WEIGHT_AND_BAND (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 39))
|
|
#define FIT_MOVE_EXERCISE_NAME_SAW (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 40))
|
|
#define FIT_MOVE_EXERCISE_NAME_SCAPULAR_STABILIZATION (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 41))
|
|
#define FIT_MOVE_EXERCISE_NAME_SCISSORS_ON_DISC (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 42))
|
|
#define FIT_MOVE_EXERCISE_NAME_SEATED_HIP_STRETCHUP (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 43))
|
|
#define FIT_MOVE_EXERCISE_NAME_SEATED_TWIST (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 44))
|
|
#define FIT_MOVE_EXERCISE_NAME_SHAVING_THE_HEAD_WITH_BALL_BAND_AND_WEIGHT (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 45))
|
|
#define FIT_MOVE_EXERCISE_NAME_SPINAL_TWIST (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 46))
|
|
#define FIT_MOVE_EXERCISE_NAME_SPINAL_TWIST_STRETCH (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 47))
|
|
#define FIT_MOVE_EXERCISE_NAME_SPINE_STRETCH_FORWARD (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 48))
|
|
#define FIT_MOVE_EXERCISE_NAME_SQUAT_OPEN_ARM_TWIST_POSE (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 49))
|
|
#define FIT_MOVE_EXERCISE_NAME_SQUATS_WITH_BALL (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 50))
|
|
#define FIT_MOVE_EXERCISE_NAME_STAND_AND_HANG (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 51))
|
|
#define FIT_MOVE_EXERCISE_NAME_STANDING_SIDE_STRETCH (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 52))
|
|
#define FIT_MOVE_EXERCISE_NAME_STANDING_SINGLE_LEG_FORWARD_BEND_WITH_IT_BAND_OPENER (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 53))
|
|
#define FIT_MOVE_EXERCISE_NAME_STRAIGHT_LEG_CRUNCH_WITH_LEG_LIFT (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 54))
|
|
#define FIT_MOVE_EXERCISE_NAME_STRAIGHT_LEG_CRUNCH_WITH_LEG_LIFT_WITH_BALL (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 55))
|
|
#define FIT_MOVE_EXERCISE_NAME_STRAIGHT_LEG_CRUNCH_WITH_LEGS_CROSSED (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 56))
|
|
#define FIT_MOVE_EXERCISE_NAME_STRAIGHT_LEG_CRUNCH_WITH_LEGS_CROSSED_WITH_BALL (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 57))
|
|
#define FIT_MOVE_EXERCISE_NAME_STRAIGHT_LEG_DIAGONAL_CRUNCH (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 58))
|
|
#define FIT_MOVE_EXERCISE_NAME_STRAIGHT_LEG_DIAGONAL_CRUNCH_WITH_BALL (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 59))
|
|
#define FIT_MOVE_EXERCISE_NAME_TAILBONE_CURL (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 60))
|
|
#define FIT_MOVE_EXERCISE_NAME_THROAT_LOCK (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 61))
|
|
#define FIT_MOVE_EXERCISE_NAME_TICK_TOCK_SIDE_ROLL (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 62))
|
|
#define FIT_MOVE_EXERCISE_NAME_TWIST (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 63))
|
|
#define FIT_MOVE_EXERCISE_NAME_V_LEG_CRUNCHES (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 64))
|
|
#define FIT_MOVE_EXERCISE_NAME_V_SIT (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 65))
|
|
#define FIT_MOVE_EXERCISE_NAME_FORWARD_FOLD_WHEELCHAIR (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 66))
|
|
#define FIT_MOVE_EXERCISE_NAME_FORWARD_FOLD_PLUS_WHEELCHAIR (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 67))
|
|
#define FIT_MOVE_EXERCISE_NAME_ARM_CIRCLES_LOW_FORWARD_WHEELCHAIR (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 68))
|
|
#define FIT_MOVE_EXERCISE_NAME_ARM_CIRCLES_MID_FORWARD_WHEELCHAIR (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 69))
|
|
#define FIT_MOVE_EXERCISE_NAME_ARM_CIRCLES_HIGH_FORWARD_WHEELCHAIR (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 70))
|
|
#define FIT_MOVE_EXERCISE_NAME_ARM_CIRCLES_LOW_BACKWARD_WHEELCHAIR (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 71))
|
|
#define FIT_MOVE_EXERCISE_NAME_ARM_CIRCLES_MID_BACKWARD_WHEELCHAIR (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 72))
|
|
#define FIT_MOVE_EXERCISE_NAME_ARM_CIRCLES_HIGH_BACKWARD_WHEELCHAIR (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 73))
|
|
#define FIT_MOVE_EXERCISE_NAME_CORE_TWISTS_WHEELCHAIR (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 74))
|
|
#define FIT_MOVE_EXERCISE_NAME_ARM_RAISE_WHEELCHAIR (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 75))
|
|
#define FIT_MOVE_EXERCISE_NAME_CHEST_EXPAND_WHEELCHAIR (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 76))
|
|
#define FIT_MOVE_EXERCISE_NAME_ARM_EXTEND_WHEELCHAIR (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 77))
|
|
#define FIT_MOVE_EXERCISE_NAME_FORWARD_BEND_WHEELCHAIR (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 78))
|
|
#define FIT_MOVE_EXERCISE_NAME_TOE_TOUCH_WHEELCHAIR (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 79))
|
|
#define FIT_MOVE_EXERCISE_NAME_EXTENDED_TOE_TOUCH_WHEELCHAIR (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 80))
|
|
#define FIT_MOVE_EXERCISE_NAME_SEATED_ARM_CIRCLES (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 81))
|
|
#define FIT_MOVE_EXERCISE_NAME_TRUNK_ROTATIONS (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 82))
|
|
#define FIT_MOVE_EXERCISE_NAME_SEATED_TRUNK_ROTATIONS (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 83))
|
|
#define FIT_MOVE_EXERCISE_NAME_TOE_TOUCH (FIT_CAST(FIT_MOVE_EXERCISE_NAME, 84))
|
|
#define FIT_MOVE_EXERCISE_NAME_COUNT 85
|
|
|
|
typedef FIT_UINT16 FIT_POSE_EXERCISE_NAME;
|
|
#define FIT_POSE_EXERCISE_NAME_INVALID FIT_UINT16_INVALID
|
|
#define FIT_POSE_EXERCISE_NAME_ALL_FOURS (FIT_CAST(FIT_POSE_EXERCISE_NAME, 0))
|
|
#define FIT_POSE_EXERCISE_NAME_ANKLE_TO_KNEE (FIT_CAST(FIT_POSE_EXERCISE_NAME, 1))
|
|
#define FIT_POSE_EXERCISE_NAME_BABY_COBRA (FIT_CAST(FIT_POSE_EXERCISE_NAME, 2))
|
|
#define FIT_POSE_EXERCISE_NAME_BOAT (FIT_CAST(FIT_POSE_EXERCISE_NAME, 3))
|
|
#define FIT_POSE_EXERCISE_NAME_BOUND_ANGLE (FIT_CAST(FIT_POSE_EXERCISE_NAME, 4))
|
|
#define FIT_POSE_EXERCISE_NAME_BOUND_SEATED_SINGLE_LEG_FORWARD_BEND (FIT_CAST(FIT_POSE_EXERCISE_NAME, 5))
|
|
#define FIT_POSE_EXERCISE_NAME_BOW (FIT_CAST(FIT_POSE_EXERCISE_NAME, 6))
|
|
#define FIT_POSE_EXERCISE_NAME_BOWED_HALF_MOON (FIT_CAST(FIT_POSE_EXERCISE_NAME, 7))
|
|
#define FIT_POSE_EXERCISE_NAME_BRIDGE (FIT_CAST(FIT_POSE_EXERCISE_NAME, 8))
|
|
#define FIT_POSE_EXERCISE_NAME_CAT (FIT_CAST(FIT_POSE_EXERCISE_NAME, 9))
|
|
#define FIT_POSE_EXERCISE_NAME_CHAIR (FIT_CAST(FIT_POSE_EXERCISE_NAME, 10))
|
|
#define FIT_POSE_EXERCISE_NAME_CHILDS (FIT_CAST(FIT_POSE_EXERCISE_NAME, 11))
|
|
#define FIT_POSE_EXERCISE_NAME_CORPSE (FIT_CAST(FIT_POSE_EXERCISE_NAME, 12))
|
|
#define FIT_POSE_EXERCISE_NAME_COW_FACE (FIT_CAST(FIT_POSE_EXERCISE_NAME, 13))
|
|
#define FIT_POSE_EXERCISE_NAME_COW (FIT_CAST(FIT_POSE_EXERCISE_NAME, 14))
|
|
#define FIT_POSE_EXERCISE_NAME_DEVOTIONAL_WARRIOR (FIT_CAST(FIT_POSE_EXERCISE_NAME, 15))
|
|
#define FIT_POSE_EXERCISE_NAME_DOLPHIN_PLANK (FIT_CAST(FIT_POSE_EXERCISE_NAME, 16))
|
|
#define FIT_POSE_EXERCISE_NAME_DOLPHIN (FIT_CAST(FIT_POSE_EXERCISE_NAME, 17))
|
|
#define FIT_POSE_EXERCISE_NAME_DOWN_DOG_KNEE_TO_NOSE (FIT_CAST(FIT_POSE_EXERCISE_NAME, 18))
|
|
#define FIT_POSE_EXERCISE_NAME_DOWN_DOG_SPLIT (FIT_CAST(FIT_POSE_EXERCISE_NAME, 19))
|
|
#define FIT_POSE_EXERCISE_NAME_DOWN_DOG_SPLIT_OPEN_HIP_BENT_KNEE (FIT_CAST(FIT_POSE_EXERCISE_NAME, 20))
|
|
#define FIT_POSE_EXERCISE_NAME_DOWNWARD_FACING_DOG (FIT_CAST(FIT_POSE_EXERCISE_NAME, 21))
|
|
#define FIT_POSE_EXERCISE_NAME_EAGLE (FIT_CAST(FIT_POSE_EXERCISE_NAME, 22))
|
|
#define FIT_POSE_EXERCISE_NAME_EASY_SEATED (FIT_CAST(FIT_POSE_EXERCISE_NAME, 23))
|
|
#define FIT_POSE_EXERCISE_NAME_EXTENDED_PUPPY (FIT_CAST(FIT_POSE_EXERCISE_NAME, 24))
|
|
#define FIT_POSE_EXERCISE_NAME_EXTENDED_SIDE_ANGLE (FIT_CAST(FIT_POSE_EXERCISE_NAME, 25))
|
|
#define FIT_POSE_EXERCISE_NAME_FISH (FIT_CAST(FIT_POSE_EXERCISE_NAME, 26))
|
|
#define FIT_POSE_EXERCISE_NAME_FOUR_LIMBED_STAFF (FIT_CAST(FIT_POSE_EXERCISE_NAME, 27))
|
|
#define FIT_POSE_EXERCISE_NAME_FULL_SPLIT (FIT_CAST(FIT_POSE_EXERCISE_NAME, 28))
|
|
#define FIT_POSE_EXERCISE_NAME_GATE (FIT_CAST(FIT_POSE_EXERCISE_NAME, 29))
|
|
#define FIT_POSE_EXERCISE_NAME_HALF_CHAIR_HALF_ANKLE_TO_KNEE (FIT_CAST(FIT_POSE_EXERCISE_NAME, 30))
|
|
#define FIT_POSE_EXERCISE_NAME_HALF_MOON (FIT_CAST(FIT_POSE_EXERCISE_NAME, 31))
|
|
#define FIT_POSE_EXERCISE_NAME_HEAD_TO_KNEE (FIT_CAST(FIT_POSE_EXERCISE_NAME, 32))
|
|
#define FIT_POSE_EXERCISE_NAME_HERON (FIT_CAST(FIT_POSE_EXERCISE_NAME, 33))
|
|
#define FIT_POSE_EXERCISE_NAME_HEROS (FIT_CAST(FIT_POSE_EXERCISE_NAME, 34))
|
|
#define FIT_POSE_EXERCISE_NAME_HIGH_LUNGE (FIT_CAST(FIT_POSE_EXERCISE_NAME, 35))
|
|
#define FIT_POSE_EXERCISE_NAME_KNEES_CHEST_CHIN (FIT_CAST(FIT_POSE_EXERCISE_NAME, 36))
|
|
#define FIT_POSE_EXERCISE_NAME_LIZARD (FIT_CAST(FIT_POSE_EXERCISE_NAME, 37))
|
|
#define FIT_POSE_EXERCISE_NAME_LOCUST (FIT_CAST(FIT_POSE_EXERCISE_NAME, 38))
|
|
#define FIT_POSE_EXERCISE_NAME_LOW_LUNGE (FIT_CAST(FIT_POSE_EXERCISE_NAME, 39))
|
|
#define FIT_POSE_EXERCISE_NAME_LOW_LUNGE_TWIST (FIT_CAST(FIT_POSE_EXERCISE_NAME, 40))
|
|
#define FIT_POSE_EXERCISE_NAME_LOW_LUNGE_WITH_KNEE_DOWN (FIT_CAST(FIT_POSE_EXERCISE_NAME, 41))
|
|
#define FIT_POSE_EXERCISE_NAME_MERMAID (FIT_CAST(FIT_POSE_EXERCISE_NAME, 42))
|
|
#define FIT_POSE_EXERCISE_NAME_MOUNTAIN (FIT_CAST(FIT_POSE_EXERCISE_NAME, 43))
|
|
#define FIT_POSE_EXERCISE_NAME_ONE_LEGGED_DOWNWARD_FACING_POSE_OPEN_HIP_BENT_KNEE (FIT_CAST(FIT_POSE_EXERCISE_NAME, 44))
|
|
#define FIT_POSE_EXERCISE_NAME_ONE_LEGGED_PIGEON (FIT_CAST(FIT_POSE_EXERCISE_NAME, 45))
|
|
#define FIT_POSE_EXERCISE_NAME_PEACEFUL_WARRIOR (FIT_CAST(FIT_POSE_EXERCISE_NAME, 46))
|
|
#define FIT_POSE_EXERCISE_NAME_PLANK (FIT_CAST(FIT_POSE_EXERCISE_NAME, 47))
|
|
#define FIT_POSE_EXERCISE_NAME_PLOW (FIT_CAST(FIT_POSE_EXERCISE_NAME, 48))
|
|
#define FIT_POSE_EXERCISE_NAME_RECLINED_HAND_TO_FOOT (FIT_CAST(FIT_POSE_EXERCISE_NAME, 49))
|
|
#define FIT_POSE_EXERCISE_NAME_REVOLVED_HALF_MOON (FIT_CAST(FIT_POSE_EXERCISE_NAME, 50))
|
|
#define FIT_POSE_EXERCISE_NAME_REVOLVED_HEAD_TO_KNEE (FIT_CAST(FIT_POSE_EXERCISE_NAME, 51))
|
|
#define FIT_POSE_EXERCISE_NAME_REVOLVED_TRIANGLE (FIT_CAST(FIT_POSE_EXERCISE_NAME, 52))
|
|
#define FIT_POSE_EXERCISE_NAME_RUNNERS_LUNGE (FIT_CAST(FIT_POSE_EXERCISE_NAME, 53))
|
|
#define FIT_POSE_EXERCISE_NAME_SEATED_EASY_SIDE_BEND (FIT_CAST(FIT_POSE_EXERCISE_NAME, 54))
|
|
#define FIT_POSE_EXERCISE_NAME_SEATED_EASY_TWIST (FIT_CAST(FIT_POSE_EXERCISE_NAME, 55))
|
|
#define FIT_POSE_EXERCISE_NAME_SEATED_LONG_LEG_FORWARD_BEND (FIT_CAST(FIT_POSE_EXERCISE_NAME, 56))
|
|
#define FIT_POSE_EXERCISE_NAME_SEATED_WIDE_LEG_FORWARD_BEND (FIT_CAST(FIT_POSE_EXERCISE_NAME, 57))
|
|
#define FIT_POSE_EXERCISE_NAME_SHOULDER_STAND (FIT_CAST(FIT_POSE_EXERCISE_NAME, 58))
|
|
#define FIT_POSE_EXERCISE_NAME_SIDE_BOAT (FIT_CAST(FIT_POSE_EXERCISE_NAME, 59))
|
|
#define FIT_POSE_EXERCISE_NAME_SIDE_PLANK (FIT_CAST(FIT_POSE_EXERCISE_NAME, 60))
|
|
#define FIT_POSE_EXERCISE_NAME_SPHINX (FIT_CAST(FIT_POSE_EXERCISE_NAME, 61))
|
|
#define FIT_POSE_EXERCISE_NAME_SQUAT_OPEN_ARM_TWIST (FIT_CAST(FIT_POSE_EXERCISE_NAME, 62))
|
|
#define FIT_POSE_EXERCISE_NAME_SQUAT_PALM_PRESS (FIT_CAST(FIT_POSE_EXERCISE_NAME, 63))
|
|
#define FIT_POSE_EXERCISE_NAME_STAFF (FIT_CAST(FIT_POSE_EXERCISE_NAME, 64))
|
|
#define FIT_POSE_EXERCISE_NAME_STANDING_ARMS_UP (FIT_CAST(FIT_POSE_EXERCISE_NAME, 65))
|
|
#define FIT_POSE_EXERCISE_NAME_STANDING_FORWARD_BEND_HALFWAY_UP (FIT_CAST(FIT_POSE_EXERCISE_NAME, 66))
|
|
#define FIT_POSE_EXERCISE_NAME_STANDING_FORWARD_BEND (FIT_CAST(FIT_POSE_EXERCISE_NAME, 67))
|
|
#define FIT_POSE_EXERCISE_NAME_STANDING_SIDE_OPENER (FIT_CAST(FIT_POSE_EXERCISE_NAME, 68))
|
|
#define FIT_POSE_EXERCISE_NAME_STANDING_SINGLE_LEG_FORWARD_BEND (FIT_CAST(FIT_POSE_EXERCISE_NAME, 69))
|
|
#define FIT_POSE_EXERCISE_NAME_STANDING_SPLIT (FIT_CAST(FIT_POSE_EXERCISE_NAME, 70))
|
|
#define FIT_POSE_EXERCISE_NAME_STANDING_WIDE_LEG_FORWARD_BEND (FIT_CAST(FIT_POSE_EXERCISE_NAME, 71))
|
|
#define FIT_POSE_EXERCISE_NAME_STANDING_WIDE_LEG_FORWARD_BEND_WITH_TWIST (FIT_CAST(FIT_POSE_EXERCISE_NAME, 72))
|
|
#define FIT_POSE_EXERCISE_NAME_SUPINE_SPINAL_TWIST (FIT_CAST(FIT_POSE_EXERCISE_NAME, 73))
|
|
#define FIT_POSE_EXERCISE_NAME_TABLE_TOP (FIT_CAST(FIT_POSE_EXERCISE_NAME, 74))
|
|
#define FIT_POSE_EXERCISE_NAME_THREAD_THE_NEEDLE (FIT_CAST(FIT_POSE_EXERCISE_NAME, 75))
|
|
#define FIT_POSE_EXERCISE_NAME_THUNDERBOLT (FIT_CAST(FIT_POSE_EXERCISE_NAME, 76))
|
|
#define FIT_POSE_EXERCISE_NAME_THUNDERBOLT_POSE_BOTH_SIDES_ARM_STRETCH (FIT_CAST(FIT_POSE_EXERCISE_NAME, 77))
|
|
#define FIT_POSE_EXERCISE_NAME_TREE (FIT_CAST(FIT_POSE_EXERCISE_NAME, 78))
|
|
#define FIT_POSE_EXERCISE_NAME_TRIANGLE (FIT_CAST(FIT_POSE_EXERCISE_NAME, 79))
|
|
#define FIT_POSE_EXERCISE_NAME_UP_DOG (FIT_CAST(FIT_POSE_EXERCISE_NAME, 80))
|
|
#define FIT_POSE_EXERCISE_NAME_UPWARD_FACING_PLANK (FIT_CAST(FIT_POSE_EXERCISE_NAME, 81))
|
|
#define FIT_POSE_EXERCISE_NAME_WARRIOR_ONE (FIT_CAST(FIT_POSE_EXERCISE_NAME, 82))
|
|
#define FIT_POSE_EXERCISE_NAME_WARRIOR_THREE (FIT_CAST(FIT_POSE_EXERCISE_NAME, 83))
|
|
#define FIT_POSE_EXERCISE_NAME_WARRIOR_TWO (FIT_CAST(FIT_POSE_EXERCISE_NAME, 84))
|
|
#define FIT_POSE_EXERCISE_NAME_WHEEL (FIT_CAST(FIT_POSE_EXERCISE_NAME, 85))
|
|
#define FIT_POSE_EXERCISE_NAME_WIDE_SIDE_LUNGE (FIT_CAST(FIT_POSE_EXERCISE_NAME, 86))
|
|
#define FIT_POSE_EXERCISE_NAME_DEEP_BREATHING_WHEELCHAIR (FIT_CAST(FIT_POSE_EXERCISE_NAME, 87))
|
|
#define FIT_POSE_EXERCISE_NAME_DEEP_BREATHING_LOW_WHEELCHAIR (FIT_CAST(FIT_POSE_EXERCISE_NAME, 88))
|
|
#define FIT_POSE_EXERCISE_NAME_DEEP_BREATHING_MID_WHEELCHAIR (FIT_CAST(FIT_POSE_EXERCISE_NAME, 89))
|
|
#define FIT_POSE_EXERCISE_NAME_DEEP_BREATHING_HIGH_WHEELCHAIR (FIT_CAST(FIT_POSE_EXERCISE_NAME, 90))
|
|
#define FIT_POSE_EXERCISE_NAME_PRAYER_WHEELCHAIR (FIT_CAST(FIT_POSE_EXERCISE_NAME, 91))
|
|
#define FIT_POSE_EXERCISE_NAME_OVERHEAD_PRAYER_WHEELCHAIR (FIT_CAST(FIT_POSE_EXERCISE_NAME, 92))
|
|
#define FIT_POSE_EXERCISE_NAME_CACTUS_WHEELCHAIR (FIT_CAST(FIT_POSE_EXERCISE_NAME, 93))
|
|
#define FIT_POSE_EXERCISE_NAME_BREATHING_PUNCHES_WHEELCHAIR (FIT_CAST(FIT_POSE_EXERCISE_NAME, 94))
|
|
#define FIT_POSE_EXERCISE_NAME_BREATHING_PUNCHES_EXTENDED_WHEELCHAIR (FIT_CAST(FIT_POSE_EXERCISE_NAME, 95))
|
|
#define FIT_POSE_EXERCISE_NAME_BREATHING_PUNCHES_OVERHEAD_WHEELCHAIR (FIT_CAST(FIT_POSE_EXERCISE_NAME, 96))
|
|
#define FIT_POSE_EXERCISE_NAME_BREATHING_PUNCHES_OVERHEAD_AND_DOWN_WHEELCHAIR (FIT_CAST(FIT_POSE_EXERCISE_NAME, 97))
|
|
#define FIT_POSE_EXERCISE_NAME_BREATHING_PUNCHES_SIDE_WHEELCHAIR (FIT_CAST(FIT_POSE_EXERCISE_NAME, 98))
|
|
#define FIT_POSE_EXERCISE_NAME_BREATHING_PUNCHES_EXTENDED_SIDE_WHEELCHAIR (FIT_CAST(FIT_POSE_EXERCISE_NAME, 99))
|
|
#define FIT_POSE_EXERCISE_NAME_BREATHING_PUNCHES_OVERHEAD_SIDE_WHEELCHAIR (FIT_CAST(FIT_POSE_EXERCISE_NAME, 100))
|
|
#define FIT_POSE_EXERCISE_NAME_BREATHING_PUNCHES_OVERHEAD_AND_DOWN_SIDE_WHEELCHAIR (FIT_CAST(FIT_POSE_EXERCISE_NAME, 101))
|
|
#define FIT_POSE_EXERCISE_NAME_LEFT_HAND_BACK_WHEELCHAIR (FIT_CAST(FIT_POSE_EXERCISE_NAME, 102))
|
|
#define FIT_POSE_EXERCISE_NAME_TRIANGLE_WHEELCHAIR (FIT_CAST(FIT_POSE_EXERCISE_NAME, 103))
|
|
#define FIT_POSE_EXERCISE_NAME_THREAD_THE_NEEDLE_WHEELCHAIR (FIT_CAST(FIT_POSE_EXERCISE_NAME, 104))
|
|
#define FIT_POSE_EXERCISE_NAME_NECK_FLEXION_AND_EXTENSION_WHEELCHAIR (FIT_CAST(FIT_POSE_EXERCISE_NAME, 105))
|
|
#define FIT_POSE_EXERCISE_NAME_NECK_LATERAL_FLEXION_WHEELCHAIR (FIT_CAST(FIT_POSE_EXERCISE_NAME, 106))
|
|
#define FIT_POSE_EXERCISE_NAME_SPINE_FLEXION_AND_EXTENSION_WHEELCHAIR (FIT_CAST(FIT_POSE_EXERCISE_NAME, 107))
|
|
#define FIT_POSE_EXERCISE_NAME_SPINE_ROTATION_WHEELCHAIR (FIT_CAST(FIT_POSE_EXERCISE_NAME, 108))
|
|
#define FIT_POSE_EXERCISE_NAME_SPINE_LATERAL_FLEXION_WHEELCHAIR (FIT_CAST(FIT_POSE_EXERCISE_NAME, 109))
|
|
#define FIT_POSE_EXERCISE_NAME_ALTERNATIVE_SKIING_WHEELCHAIR (FIT_CAST(FIT_POSE_EXERCISE_NAME, 110))
|
|
#define FIT_POSE_EXERCISE_NAME_REACH_FORWARD_WHEELCHAIR (FIT_CAST(FIT_POSE_EXERCISE_NAME, 111))
|
|
#define FIT_POSE_EXERCISE_NAME_WARRIOR_WHEELCHAIR (FIT_CAST(FIT_POSE_EXERCISE_NAME, 112))
|
|
#define FIT_POSE_EXERCISE_NAME_REVERSE_WARRIOR_WHEELCHAIR (FIT_CAST(FIT_POSE_EXERCISE_NAME, 113))
|
|
#define FIT_POSE_EXERCISE_NAME_DOWNWARD_FACING_DOG_TO_COBRA (FIT_CAST(FIT_POSE_EXERCISE_NAME, 114))
|
|
#define FIT_POSE_EXERCISE_NAME_SEATED_CAT_COW (FIT_CAST(FIT_POSE_EXERCISE_NAME, 115))
|
|
#define FIT_POSE_EXERCISE_NAME_COUNT 116
|
|
|
|
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_CAST(FIT_TRICEPS_EXTENSION_EXERCISE_NAME, 0))
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_WEIGHTED_BENCH_DIP (FIT_CAST(FIT_TRICEPS_EXTENSION_EXERCISE_NAME, 1))
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_BODY_WEIGHT_DIP (FIT_CAST(FIT_TRICEPS_EXTENSION_EXERCISE_NAME, 2))
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_CABLE_KICKBACK (FIT_CAST(FIT_TRICEPS_EXTENSION_EXERCISE_NAME, 3))
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_CABLE_LYING_TRICEPS_EXTENSION (FIT_CAST(FIT_TRICEPS_EXTENSION_EXERCISE_NAME, 4))
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_CABLE_OVERHEAD_TRICEPS_EXTENSION (FIT_CAST(FIT_TRICEPS_EXTENSION_EXERCISE_NAME, 5))
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_DUMBBELL_KICKBACK (FIT_CAST(FIT_TRICEPS_EXTENSION_EXERCISE_NAME, 6))
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_DUMBBELL_LYING_TRICEPS_EXTENSION (FIT_CAST(FIT_TRICEPS_EXTENSION_EXERCISE_NAME, 7))
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_EZ_BAR_OVERHEAD_TRICEPS_EXTENSION (FIT_CAST(FIT_TRICEPS_EXTENSION_EXERCISE_NAME, 8))
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_INCLINE_DIP (FIT_CAST(FIT_TRICEPS_EXTENSION_EXERCISE_NAME, 9))
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_WEIGHTED_INCLINE_DIP (FIT_CAST(FIT_TRICEPS_EXTENSION_EXERCISE_NAME, 10))
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_INCLINE_EZ_BAR_LYING_TRICEPS_EXTENSION (FIT_CAST(FIT_TRICEPS_EXTENSION_EXERCISE_NAME, 11))
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_LYING_DUMBBELL_PULLOVER_TO_EXTENSION (FIT_CAST(FIT_TRICEPS_EXTENSION_EXERCISE_NAME, 12))
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_LYING_EZ_BAR_TRICEPS_EXTENSION (FIT_CAST(FIT_TRICEPS_EXTENSION_EXERCISE_NAME, 13))
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_LYING_TRICEPS_EXTENSION_TO_CLOSE_GRIP_BENCH_PRESS (FIT_CAST(FIT_TRICEPS_EXTENSION_EXERCISE_NAME, 14))
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_OVERHEAD_DUMBBELL_TRICEPS_EXTENSION (FIT_CAST(FIT_TRICEPS_EXTENSION_EXERCISE_NAME, 15))
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_RECLINING_TRICEPS_PRESS (FIT_CAST(FIT_TRICEPS_EXTENSION_EXERCISE_NAME, 16))
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_REVERSE_GRIP_PRESSDOWN (FIT_CAST(FIT_TRICEPS_EXTENSION_EXERCISE_NAME, 17))
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_REVERSE_GRIP_TRICEPS_PRESSDOWN (FIT_CAST(FIT_TRICEPS_EXTENSION_EXERCISE_NAME, 18))
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_ROPE_PRESSDOWN (FIT_CAST(FIT_TRICEPS_EXTENSION_EXERCISE_NAME, 19))
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_SEATED_BARBELL_OVERHEAD_TRICEPS_EXTENSION (FIT_CAST(FIT_TRICEPS_EXTENSION_EXERCISE_NAME, 20))
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_SEATED_DUMBBELL_OVERHEAD_TRICEPS_EXTENSION (FIT_CAST(FIT_TRICEPS_EXTENSION_EXERCISE_NAME, 21))
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_SEATED_EZ_BAR_OVERHEAD_TRICEPS_EXTENSION (FIT_CAST(FIT_TRICEPS_EXTENSION_EXERCISE_NAME, 22))
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_SEATED_SINGLE_ARM_OVERHEAD_DUMBBELL_EXTENSION (FIT_CAST(FIT_TRICEPS_EXTENSION_EXERCISE_NAME, 23))
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_SINGLE_ARM_DUMBBELL_OVERHEAD_TRICEPS_EXTENSION (FIT_CAST(FIT_TRICEPS_EXTENSION_EXERCISE_NAME, 24))
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_SINGLE_DUMBBELL_SEATED_OVERHEAD_TRICEPS_EXTENSION (FIT_CAST(FIT_TRICEPS_EXTENSION_EXERCISE_NAME, 25))
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_SINGLE_LEG_BENCH_DIP_AND_KICK (FIT_CAST(FIT_TRICEPS_EXTENSION_EXERCISE_NAME, 26))
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_WEIGHTED_SINGLE_LEG_BENCH_DIP_AND_KICK (FIT_CAST(FIT_TRICEPS_EXTENSION_EXERCISE_NAME, 27))
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_SINGLE_LEG_DIP (FIT_CAST(FIT_TRICEPS_EXTENSION_EXERCISE_NAME, 28))
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_WEIGHTED_SINGLE_LEG_DIP (FIT_CAST(FIT_TRICEPS_EXTENSION_EXERCISE_NAME, 29))
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_STATIC_LYING_TRICEPS_EXTENSION (FIT_CAST(FIT_TRICEPS_EXTENSION_EXERCISE_NAME, 30))
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_SUSPENDED_DIP (FIT_CAST(FIT_TRICEPS_EXTENSION_EXERCISE_NAME, 31))
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_WEIGHTED_SUSPENDED_DIP (FIT_CAST(FIT_TRICEPS_EXTENSION_EXERCISE_NAME, 32))
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_SWISS_BALL_DUMBBELL_LYING_TRICEPS_EXTENSION (FIT_CAST(FIT_TRICEPS_EXTENSION_EXERCISE_NAME, 33))
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_SWISS_BALL_EZ_BAR_LYING_TRICEPS_EXTENSION (FIT_CAST(FIT_TRICEPS_EXTENSION_EXERCISE_NAME, 34))
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_SWISS_BALL_EZ_BAR_OVERHEAD_TRICEPS_EXTENSION (FIT_CAST(FIT_TRICEPS_EXTENSION_EXERCISE_NAME, 35))
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_TABLETOP_DIP (FIT_CAST(FIT_TRICEPS_EXTENSION_EXERCISE_NAME, 36))
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_WEIGHTED_TABLETOP_DIP (FIT_CAST(FIT_TRICEPS_EXTENSION_EXERCISE_NAME, 37))
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_TRICEPS_EXTENSION_ON_FLOOR (FIT_CAST(FIT_TRICEPS_EXTENSION_EXERCISE_NAME, 38))
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_TRICEPS_PRESSDOWN (FIT_CAST(FIT_TRICEPS_EXTENSION_EXERCISE_NAME, 39))
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_WEIGHTED_DIP (FIT_CAST(FIT_TRICEPS_EXTENSION_EXERCISE_NAME, 40))
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_ALTERNATING_DUMBBELL_LYING_TRICEPS_EXTENSION (FIT_CAST(FIT_TRICEPS_EXTENSION_EXERCISE_NAME, 41))
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_TRICEPS_PRESS (FIT_CAST(FIT_TRICEPS_EXTENSION_EXERCISE_NAME, 42))
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_DUMBBELL_KICKBACK_WHEELCHAIR (FIT_CAST(FIT_TRICEPS_EXTENSION_EXERCISE_NAME, 43))
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_OVERHEAD_DUMBBELL_TRICEPS_EXTENSION_WHEELCHAIR (FIT_CAST(FIT_TRICEPS_EXTENSION_EXERCISE_NAME, 44))
|
|
#define FIT_TRICEPS_EXTENSION_EXERCISE_NAME_COUNT 45
|
|
|
|
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_CAST(FIT_WARM_UP_EXERCISE_NAME, 0))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_NECK_TILTS (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 1))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_ANKLE_CIRCLES (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 2))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_ANKLE_DORSIFLEXION_WITH_BAND (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 3))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_ANKLE_INTERNAL_ROTATION (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 4))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_ARM_CIRCLES (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 5))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_BENT_OVER_REACH_TO_SKY (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 6))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_CAT_CAMEL (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 7))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_ELBOW_TO_FOOT_LUNGE (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 8))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_FORWARD_AND_BACKWARD_LEG_SWINGS (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 9))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_GROINERS (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 10))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_INVERTED_HAMSTRING_STRETCH (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 11))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_LATERAL_DUCK_UNDER (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 12))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_NECK_ROTATIONS (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 13))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_OPPOSITE_ARM_AND_LEG_BALANCE (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 14))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_REACH_ROLL_AND_LIFT (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 15))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_SCORPION (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 16)) // Deprecated do not use
|
|
#define FIT_WARM_UP_EXERCISE_NAME_SHOULDER_CIRCLES (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 17))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_SIDE_TO_SIDE_LEG_SWINGS (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 18))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_SLEEPER_STRETCH (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 19))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_SLIDE_OUT (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 20))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_SWISS_BALL_HIP_CROSSOVER (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 21))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_SWISS_BALL_REACH_ROLL_AND_LIFT (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 22))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_SWISS_BALL_WINDSHIELD_WIPERS (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 23))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_THORACIC_ROTATION (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 24))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_WALKING_HIGH_KICKS (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 25))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_WALKING_HIGH_KNEES (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 26))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_WALKING_KNEE_HUGS (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 27))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_WALKING_LEG_CRADLES (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 28))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_WALKOUT (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 29))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_WALKOUT_FROM_PUSH_UP_POSITION (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 30))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_BICEPS_STRETCH (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 31))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_GLUTES_STRETCH (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 32))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_STANDING_HAMSTRING_STRETCH (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 33))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_STRETCH_90_90 (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 34))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_STRETCH_ABS (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 35))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_STRETCH_BUTTERFLY (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 36))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_STRETCH_CALF (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 37))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_STRETCH_CAT_COW (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 38))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_STRETCH_CHILDS_POSE (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 39))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_STRETCH_COBRA (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 40))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_STRETCH_FOREARMS (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 41))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_STRETCH_FORWARD_GLUTES (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 42))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_STRETCH_FRONT_SPLIT (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 43))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_STRETCH_HAMSTRING (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 44))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_STRETCH_HIP_FLEXOR_AND_QUAD (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 45))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_STRETCH_LAT (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 46))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_STRETCH_LEVATOR_SCAPULAE (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 47))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_STRETCH_LUNGE_WITH_SPINAL_TWIST (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 48))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_STRETCH_LUNGING_HIP_FLEXOR (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 49))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_STRETCH_LYING_ABDUCTION (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 50))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_STRETCH_LYING_IT_BAND (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 51))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_STRETCH_LYING_KNEE_TO_CHEST (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 52))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_STRETCH_LYING_PIRIFORMIS (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 53))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_STRETCH_LYING_SPINAL_TWIST (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 54))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_STRETCH_NECK (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 55))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_STRETCH_OBLIQUES (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 56))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_STRETCH_OVER_UNDER_SHOULDER (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 57))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_STRETCH_PECTORAL (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 58))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_STRETCH_PIGEON_POSE (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 59))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_STRETCH_PIRIFORMIS (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 60))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_STRETCH_QUAD (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 61))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_STRETCH_SCORPION (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 62))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_STRETCH_SHOULDER (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 63))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_STRETCH_SIDE (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 64))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_STRETCH_SIDE_LUNGE (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 65))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_STRETCH_SIDE_SPLIT (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 66))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_STRETCH_STANDING_IT_BAND (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 67))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_STRETCH_STRADDLE (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 68))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_STRETCH_TRICEPS (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 69))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_STRETCH_WALL_CHEST_AND_SHOULDER (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 70))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_NECK_ROTATIONS_WHEELCHAIR (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 71))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_HALF_KNEELING_ARM_ROTATION (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 72))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_THREE_WAY_ANKLE_MOBILIZATION (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 73))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_NINETY_NINETY_HIP_SWITCH (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 74)) // 90_90_hip_switch
|
|
#define FIT_WARM_UP_EXERCISE_NAME_ACTIVE_FROG (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 75))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_SHOULDER_SWEEPS (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 76))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_ANKLE_LUNGES (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 77))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_BACK_ROLL_FOAM_ROLLER (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 78))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_BEAR_CRAWL (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 79))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_LATISSIMUS_DORSI_FOAM_ROLL (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 80))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_REVERSE_T_HIP_OPENER (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 81))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_SHOULDER_ROLLS (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 82))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_CHEST_OPENERS (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 83))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_TRICEPS_STRETCH (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 84))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_UPPER_BACK_STRETCH (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 85))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_HIP_CIRCLES (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 86))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_ANKLE_STRETCH (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 87))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_MARCHING_IN_PLACE (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 88))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_TRICEPS_STRETCH_WHEELCHAIR (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 89))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_UPPER_BACK_STRETCH_WHEELCHAIR (FIT_CAST(FIT_WARM_UP_EXERCISE_NAME, 90))
|
|
#define FIT_WARM_UP_EXERCISE_NAME_COUNT 91
|
|
|
|
typedef FIT_UINT16 FIT_RUN_EXERCISE_NAME;
|
|
#define FIT_RUN_EXERCISE_NAME_INVALID FIT_UINT16_INVALID
|
|
#define FIT_RUN_EXERCISE_NAME_RUN (FIT_CAST(FIT_RUN_EXERCISE_NAME, 0))
|
|
#define FIT_RUN_EXERCISE_NAME_WALK (FIT_CAST(FIT_RUN_EXERCISE_NAME, 1))
|
|
#define FIT_RUN_EXERCISE_NAME_JOG (FIT_CAST(FIT_RUN_EXERCISE_NAME, 2))
|
|
#define FIT_RUN_EXERCISE_NAME_SPRINT (FIT_CAST(FIT_RUN_EXERCISE_NAME, 3))
|
|
#define FIT_RUN_EXERCISE_NAME_RUN_OR_WALK (FIT_CAST(FIT_RUN_EXERCISE_NAME, 4))
|
|
#define FIT_RUN_EXERCISE_NAME_SPEED_WALK (FIT_CAST(FIT_RUN_EXERCISE_NAME, 5))
|
|
#define FIT_RUN_EXERCISE_NAME_WARM_UP (FIT_CAST(FIT_RUN_EXERCISE_NAME, 6))
|
|
#define FIT_RUN_EXERCISE_NAME_COUNT 7
|
|
|
|
typedef FIT_UINT16 FIT_BIKE_EXERCISE_NAME;
|
|
#define FIT_BIKE_EXERCISE_NAME_INVALID FIT_UINT16_INVALID
|
|
#define FIT_BIKE_EXERCISE_NAME_BIKE (FIT_CAST(FIT_BIKE_EXERCISE_NAME, 0))
|
|
#define FIT_BIKE_EXERCISE_NAME_RIDE (FIT_CAST(FIT_BIKE_EXERCISE_NAME, 1))
|
|
#define FIT_BIKE_EXERCISE_NAME_SPRINT (FIT_CAST(FIT_BIKE_EXERCISE_NAME, 2))
|
|
#define FIT_BIKE_EXERCISE_NAME_COUNT 3
|
|
|
|
typedef FIT_UINT16 FIT_BANDED_EXERCISES_EXERCISE_NAME;
|
|
#define FIT_BANDED_EXERCISES_EXERCISE_NAME_INVALID FIT_UINT16_INVALID
|
|
#define FIT_BANDED_EXERCISES_EXERCISE_NAME_AB_TWIST (FIT_CAST(FIT_BANDED_EXERCISES_EXERCISE_NAME, 1))
|
|
#define FIT_BANDED_EXERCISES_EXERCISE_NAME_BACK_EXTENSION (FIT_CAST(FIT_BANDED_EXERCISES_EXERCISE_NAME, 2))
|
|
#define FIT_BANDED_EXERCISES_EXERCISE_NAME_BICYCLE_CRUNCH (FIT_CAST(FIT_BANDED_EXERCISES_EXERCISE_NAME, 3))
|
|
#define FIT_BANDED_EXERCISES_EXERCISE_NAME_CALF_RAISES (FIT_CAST(FIT_BANDED_EXERCISES_EXERCISE_NAME, 4))
|
|
#define FIT_BANDED_EXERCISES_EXERCISE_NAME_CHEST_PRESS (FIT_CAST(FIT_BANDED_EXERCISES_EXERCISE_NAME, 5))
|
|
#define FIT_BANDED_EXERCISES_EXERCISE_NAME_CLAM_SHELLS (FIT_CAST(FIT_BANDED_EXERCISES_EXERCISE_NAME, 6))
|
|
#define FIT_BANDED_EXERCISES_EXERCISE_NAME_CURL (FIT_CAST(FIT_BANDED_EXERCISES_EXERCISE_NAME, 7))
|
|
#define FIT_BANDED_EXERCISES_EXERCISE_NAME_DEADBUG (FIT_CAST(FIT_BANDED_EXERCISES_EXERCISE_NAME, 8))
|
|
#define FIT_BANDED_EXERCISES_EXERCISE_NAME_DEADLIFT (FIT_CAST(FIT_BANDED_EXERCISES_EXERCISE_NAME, 9))
|
|
#define FIT_BANDED_EXERCISES_EXERCISE_NAME_DONKEY_KICK (FIT_CAST(FIT_BANDED_EXERCISES_EXERCISE_NAME, 10))
|
|
#define FIT_BANDED_EXERCISES_EXERCISE_NAME_EXTERNAL_ROTATION (FIT_CAST(FIT_BANDED_EXERCISES_EXERCISE_NAME, 11))
|
|
#define FIT_BANDED_EXERCISES_EXERCISE_NAME_EXTERNAL_ROTATION_AT_90_DEGREE_ABDUCTION (FIT_CAST(FIT_BANDED_EXERCISES_EXERCISE_NAME, 12))
|
|
#define FIT_BANDED_EXERCISES_EXERCISE_NAME_FACE_PULL (FIT_CAST(FIT_BANDED_EXERCISES_EXERCISE_NAME, 13))
|
|
#define FIT_BANDED_EXERCISES_EXERCISE_NAME_FIRE_HYDRANT (FIT_CAST(FIT_BANDED_EXERCISES_EXERCISE_NAME, 14))
|
|
#define FIT_BANDED_EXERCISES_EXERCISE_NAME_FLY (FIT_CAST(FIT_BANDED_EXERCISES_EXERCISE_NAME, 15))
|
|
#define FIT_BANDED_EXERCISES_EXERCISE_NAME_FRONT_RAISE (FIT_CAST(FIT_BANDED_EXERCISES_EXERCISE_NAME, 16))
|
|
#define FIT_BANDED_EXERCISES_EXERCISE_NAME_GLUTE_BRIDGE (FIT_CAST(FIT_BANDED_EXERCISES_EXERCISE_NAME, 17))
|
|
#define FIT_BANDED_EXERCISES_EXERCISE_NAME_HAMSTRING_CURLS (FIT_CAST(FIT_BANDED_EXERCISES_EXERCISE_NAME, 18))
|
|
#define FIT_BANDED_EXERCISES_EXERCISE_NAME_HIGH_PLANK_LEG_LIFTS (FIT_CAST(FIT_BANDED_EXERCISES_EXERCISE_NAME, 19))
|
|
#define FIT_BANDED_EXERCISES_EXERCISE_NAME_HIP_EXTENSION (FIT_CAST(FIT_BANDED_EXERCISES_EXERCISE_NAME, 20))
|
|
#define FIT_BANDED_EXERCISES_EXERCISE_NAME_INTERNAL_ROTATION (FIT_CAST(FIT_BANDED_EXERCISES_EXERCISE_NAME, 21))
|
|
#define FIT_BANDED_EXERCISES_EXERCISE_NAME_JUMPING_JACK (FIT_CAST(FIT_BANDED_EXERCISES_EXERCISE_NAME, 22))
|
|
#define FIT_BANDED_EXERCISES_EXERCISE_NAME_KNEELING_CRUNCH (FIT_CAST(FIT_BANDED_EXERCISES_EXERCISE_NAME, 23))
|
|
#define FIT_BANDED_EXERCISES_EXERCISE_NAME_LATERAL_BAND_WALKS (FIT_CAST(FIT_BANDED_EXERCISES_EXERCISE_NAME, 24))
|
|
#define FIT_BANDED_EXERCISES_EXERCISE_NAME_LATERAL_RAISE (FIT_CAST(FIT_BANDED_EXERCISES_EXERCISE_NAME, 25))
|
|
#define FIT_BANDED_EXERCISES_EXERCISE_NAME_LATPULL (FIT_CAST(FIT_BANDED_EXERCISES_EXERCISE_NAME, 26))
|
|
#define FIT_BANDED_EXERCISES_EXERCISE_NAME_LEG_ABDUCTION (FIT_CAST(FIT_BANDED_EXERCISES_EXERCISE_NAME, 27))
|
|
#define FIT_BANDED_EXERCISES_EXERCISE_NAME_LEG_ADDUCTION (FIT_CAST(FIT_BANDED_EXERCISES_EXERCISE_NAME, 28))
|
|
#define FIT_BANDED_EXERCISES_EXERCISE_NAME_LEG_EXTENSION (FIT_CAST(FIT_BANDED_EXERCISES_EXERCISE_NAME, 29))
|
|
#define FIT_BANDED_EXERCISES_EXERCISE_NAME_LUNGE (FIT_CAST(FIT_BANDED_EXERCISES_EXERCISE_NAME, 30))
|
|
#define FIT_BANDED_EXERCISES_EXERCISE_NAME_PLANK (FIT_CAST(FIT_BANDED_EXERCISES_EXERCISE_NAME, 31))
|
|
#define FIT_BANDED_EXERCISES_EXERCISE_NAME_PULL_APART (FIT_CAST(FIT_BANDED_EXERCISES_EXERCISE_NAME, 32))
|
|
#define FIT_BANDED_EXERCISES_EXERCISE_NAME_PUSH_UPS (FIT_CAST(FIT_BANDED_EXERCISES_EXERCISE_NAME, 33))
|
|
#define FIT_BANDED_EXERCISES_EXERCISE_NAME_REVERSE_CRUNCH (FIT_CAST(FIT_BANDED_EXERCISES_EXERCISE_NAME, 34))
|
|
#define FIT_BANDED_EXERCISES_EXERCISE_NAME_ROW (FIT_CAST(FIT_BANDED_EXERCISES_EXERCISE_NAME, 35))
|
|
#define FIT_BANDED_EXERCISES_EXERCISE_NAME_SHOULDER_ABDUCTION (FIT_CAST(FIT_BANDED_EXERCISES_EXERCISE_NAME, 36))
|
|
#define FIT_BANDED_EXERCISES_EXERCISE_NAME_SHOULDER_EXTENSION (FIT_CAST(FIT_BANDED_EXERCISES_EXERCISE_NAME, 37))
|
|
#define FIT_BANDED_EXERCISES_EXERCISE_NAME_SHOULDER_EXTERNAL_ROTATION (FIT_CAST(FIT_BANDED_EXERCISES_EXERCISE_NAME, 38))
|
|
#define FIT_BANDED_EXERCISES_EXERCISE_NAME_SHOULDER_FLEXION_TO_90_DEGREES (FIT_CAST(FIT_BANDED_EXERCISES_EXERCISE_NAME, 39))
|
|
#define FIT_BANDED_EXERCISES_EXERCISE_NAME_SIDE_PLANK_LEG_LIFTS (FIT_CAST(FIT_BANDED_EXERCISES_EXERCISE_NAME, 40))
|
|
#define FIT_BANDED_EXERCISES_EXERCISE_NAME_SIDE_RAISE (FIT_CAST(FIT_BANDED_EXERCISES_EXERCISE_NAME, 41))
|
|
#define FIT_BANDED_EXERCISES_EXERCISE_NAME_SQUAT (FIT_CAST(FIT_BANDED_EXERCISES_EXERCISE_NAME, 42))
|
|
#define FIT_BANDED_EXERCISES_EXERCISE_NAME_SQUAT_TO_PRESS (FIT_CAST(FIT_BANDED_EXERCISES_EXERCISE_NAME, 43))
|
|
#define FIT_BANDED_EXERCISES_EXERCISE_NAME_TRICEP_EXTENSION (FIT_CAST(FIT_BANDED_EXERCISES_EXERCISE_NAME, 44))
|
|
#define FIT_BANDED_EXERCISES_EXERCISE_NAME_TRICEP_KICKBACK (FIT_CAST(FIT_BANDED_EXERCISES_EXERCISE_NAME, 45))
|
|
#define FIT_BANDED_EXERCISES_EXERCISE_NAME_UPRIGHT_ROW (FIT_CAST(FIT_BANDED_EXERCISES_EXERCISE_NAME, 46))
|
|
#define FIT_BANDED_EXERCISES_EXERCISE_NAME_WALL_CRAWL_WITH_EXTERNAL_ROTATION (FIT_CAST(FIT_BANDED_EXERCISES_EXERCISE_NAME, 47))
|
|
#define FIT_BANDED_EXERCISES_EXERCISE_NAME_LATERAL_RAISE_WHEELCHAIR (FIT_CAST(FIT_BANDED_EXERCISES_EXERCISE_NAME, 49))
|
|
#define FIT_BANDED_EXERCISES_EXERCISE_NAME_TRICEPS_EXTENSION_WHEELCHAIR (FIT_CAST(FIT_BANDED_EXERCISES_EXERCISE_NAME, 50))
|
|
#define FIT_BANDED_EXERCISES_EXERCISE_NAME_CHEST_FLY_INCLINE_WHEELCHAIR (FIT_CAST(FIT_BANDED_EXERCISES_EXERCISE_NAME, 51))
|
|
#define FIT_BANDED_EXERCISES_EXERCISE_NAME_CHEST_FLY_DECLINE_WHEELCHAIR (FIT_CAST(FIT_BANDED_EXERCISES_EXERCISE_NAME, 52))
|
|
#define FIT_BANDED_EXERCISES_EXERCISE_NAME_PULL_DOWN_WHEELCHAIR (FIT_CAST(FIT_BANDED_EXERCISES_EXERCISE_NAME, 53))
|
|
#define FIT_BANDED_EXERCISES_EXERCISE_NAME_STRAIGHT_ARM_PULL_DOWN_WHEELCHAIR (FIT_CAST(FIT_BANDED_EXERCISES_EXERCISE_NAME, 54))
|
|
#define FIT_BANDED_EXERCISES_EXERCISE_NAME_CURL_WHEELCHAIR (FIT_CAST(FIT_BANDED_EXERCISES_EXERCISE_NAME, 55))
|
|
#define FIT_BANDED_EXERCISES_EXERCISE_NAME_OVERHEAD_CURL_WHEELCHAIR (FIT_CAST(FIT_BANDED_EXERCISES_EXERCISE_NAME, 56))
|
|
#define FIT_BANDED_EXERCISES_EXERCISE_NAME_FACE_PULL_WHEELCHAIR (FIT_CAST(FIT_BANDED_EXERCISES_EXERCISE_NAME, 57))
|
|
#define FIT_BANDED_EXERCISES_EXERCISE_NAME_AROUND_THE_WORLD_WHEELCHAIR (FIT_CAST(FIT_BANDED_EXERCISES_EXERCISE_NAME, 58))
|
|
#define FIT_BANDED_EXERCISES_EXERCISE_NAME_PULL_APART_WHEELCHAIR (FIT_CAST(FIT_BANDED_EXERCISES_EXERCISE_NAME, 59))
|
|
#define FIT_BANDED_EXERCISES_EXERCISE_NAME_SIDE_CURL_WHEELCHAIR (FIT_CAST(FIT_BANDED_EXERCISES_EXERCISE_NAME, 60))
|
|
#define FIT_BANDED_EXERCISES_EXERCISE_NAME_OVERHEAD_PRESS_WHEELCHAIR (FIT_CAST(FIT_BANDED_EXERCISES_EXERCISE_NAME, 61))
|
|
#define FIT_BANDED_EXERCISES_EXERCISE_NAME_COUNT 60
|
|
|
|
typedef FIT_UINT16 FIT_BATTLE_ROPE_EXERCISE_NAME;
|
|
#define FIT_BATTLE_ROPE_EXERCISE_NAME_INVALID FIT_UINT16_INVALID
|
|
#define FIT_BATTLE_ROPE_EXERCISE_NAME_ALTERNATING_FIGURE_EIGHT (FIT_CAST(FIT_BATTLE_ROPE_EXERCISE_NAME, 0))
|
|
#define FIT_BATTLE_ROPE_EXERCISE_NAME_ALTERNATING_JUMP_WAVE (FIT_CAST(FIT_BATTLE_ROPE_EXERCISE_NAME, 1))
|
|
#define FIT_BATTLE_ROPE_EXERCISE_NAME_ALTERNATING_KNEELING_TO_STANDING_WAVE (FIT_CAST(FIT_BATTLE_ROPE_EXERCISE_NAME, 2))
|
|
#define FIT_BATTLE_ROPE_EXERCISE_NAME_ALTERNATING_LUNGE_WAVE (FIT_CAST(FIT_BATTLE_ROPE_EXERCISE_NAME, 3))
|
|
#define FIT_BATTLE_ROPE_EXERCISE_NAME_ALTERNATING_SQUAT_WAVE (FIT_CAST(FIT_BATTLE_ROPE_EXERCISE_NAME, 4))
|
|
#define FIT_BATTLE_ROPE_EXERCISE_NAME_ALTERNATING_WAVE (FIT_CAST(FIT_BATTLE_ROPE_EXERCISE_NAME, 5))
|
|
#define FIT_BATTLE_ROPE_EXERCISE_NAME_ALTERNATING_WAVE_WITH_LATERAL_SHUFFLE (FIT_CAST(FIT_BATTLE_ROPE_EXERCISE_NAME, 6))
|
|
#define FIT_BATTLE_ROPE_EXERCISE_NAME_CLAP_WAVE (FIT_CAST(FIT_BATTLE_ROPE_EXERCISE_NAME, 7))
|
|
#define FIT_BATTLE_ROPE_EXERCISE_NAME_DOUBLE_ARM_FIGURE_EIGHT (FIT_CAST(FIT_BATTLE_ROPE_EXERCISE_NAME, 8))
|
|
#define FIT_BATTLE_ROPE_EXERCISE_NAME_DOUBLE_ARM_SIDE_TO_SIDE_SNAKE (FIT_CAST(FIT_BATTLE_ROPE_EXERCISE_NAME, 9))
|
|
#define FIT_BATTLE_ROPE_EXERCISE_NAME_DOUBLE_ARM_SIDE_WAVE (FIT_CAST(FIT_BATTLE_ROPE_EXERCISE_NAME, 10))
|
|
#define FIT_BATTLE_ROPE_EXERCISE_NAME_DOUBLE_ARM_SLAM (FIT_CAST(FIT_BATTLE_ROPE_EXERCISE_NAME, 11))
|
|
#define FIT_BATTLE_ROPE_EXERCISE_NAME_DOUBLE_ARM_WAVE (FIT_CAST(FIT_BATTLE_ROPE_EXERCISE_NAME, 12))
|
|
#define FIT_BATTLE_ROPE_EXERCISE_NAME_GRAPPLER_TOSS (FIT_CAST(FIT_BATTLE_ROPE_EXERCISE_NAME, 13))
|
|
#define FIT_BATTLE_ROPE_EXERCISE_NAME_HIP_TOSS (FIT_CAST(FIT_BATTLE_ROPE_EXERCISE_NAME, 14))
|
|
#define FIT_BATTLE_ROPE_EXERCISE_NAME_IN_AND_OUT_WAVE (FIT_CAST(FIT_BATTLE_ROPE_EXERCISE_NAME, 15))
|
|
#define FIT_BATTLE_ROPE_EXERCISE_NAME_INSIDE_CIRCLE (FIT_CAST(FIT_BATTLE_ROPE_EXERCISE_NAME, 16))
|
|
#define FIT_BATTLE_ROPE_EXERCISE_NAME_JUMPING_JACKS (FIT_CAST(FIT_BATTLE_ROPE_EXERCISE_NAME, 17))
|
|
#define FIT_BATTLE_ROPE_EXERCISE_NAME_OUTSIDE_CIRCLE (FIT_CAST(FIT_BATTLE_ROPE_EXERCISE_NAME, 18))
|
|
#define FIT_BATTLE_ROPE_EXERCISE_NAME_RAINBOW (FIT_CAST(FIT_BATTLE_ROPE_EXERCISE_NAME, 19))
|
|
#define FIT_BATTLE_ROPE_EXERCISE_NAME_SIDE_PLANK_WAVE (FIT_CAST(FIT_BATTLE_ROPE_EXERCISE_NAME, 20))
|
|
#define FIT_BATTLE_ROPE_EXERCISE_NAME_SIDEWINDER (FIT_CAST(FIT_BATTLE_ROPE_EXERCISE_NAME, 21))
|
|
#define FIT_BATTLE_ROPE_EXERCISE_NAME_SITTING_RUSSIAN_TWIST (FIT_CAST(FIT_BATTLE_ROPE_EXERCISE_NAME, 22))
|
|
#define FIT_BATTLE_ROPE_EXERCISE_NAME_SNAKE_WAVE (FIT_CAST(FIT_BATTLE_ROPE_EXERCISE_NAME, 23))
|
|
#define FIT_BATTLE_ROPE_EXERCISE_NAME_SPLIT_JACK (FIT_CAST(FIT_BATTLE_ROPE_EXERCISE_NAME, 24))
|
|
#define FIT_BATTLE_ROPE_EXERCISE_NAME_STAGE_COACH (FIT_CAST(FIT_BATTLE_ROPE_EXERCISE_NAME, 25))
|
|
#define FIT_BATTLE_ROPE_EXERCISE_NAME_ULTIMATE_WARRIOR (FIT_CAST(FIT_BATTLE_ROPE_EXERCISE_NAME, 26))
|
|
#define FIT_BATTLE_ROPE_EXERCISE_NAME_UPPER_CUTS (FIT_CAST(FIT_BATTLE_ROPE_EXERCISE_NAME, 27))
|
|
#define FIT_BATTLE_ROPE_EXERCISE_NAME_COUNT 28
|
|
|
|
typedef FIT_UINT16 FIT_ELLIPTICAL_EXERCISE_NAME;
|
|
#define FIT_ELLIPTICAL_EXERCISE_NAME_INVALID FIT_UINT16_INVALID
|
|
#define FIT_ELLIPTICAL_EXERCISE_NAME_ELLIPTICAL (FIT_CAST(FIT_ELLIPTICAL_EXERCISE_NAME, 0))
|
|
#define FIT_ELLIPTICAL_EXERCISE_NAME_COUNT 1
|
|
|
|
typedef FIT_UINT16 FIT_FLOOR_CLIMB_EXERCISE_NAME;
|
|
#define FIT_FLOOR_CLIMB_EXERCISE_NAME_INVALID FIT_UINT16_INVALID
|
|
#define FIT_FLOOR_CLIMB_EXERCISE_NAME_FLOOR_CLIMB (FIT_CAST(FIT_FLOOR_CLIMB_EXERCISE_NAME, 0))
|
|
#define FIT_FLOOR_CLIMB_EXERCISE_NAME_COUNT 1
|
|
|
|
typedef FIT_UINT16 FIT_INDOOR_BIKE_EXERCISE_NAME;
|
|
#define FIT_INDOOR_BIKE_EXERCISE_NAME_INVALID FIT_UINT16_INVALID
|
|
#define FIT_INDOOR_BIKE_EXERCISE_NAME_AIR_BIKE (FIT_CAST(FIT_INDOOR_BIKE_EXERCISE_NAME, 0))
|
|
#define FIT_INDOOR_BIKE_EXERCISE_NAME_ASSAULT_BIKE (FIT_CAST(FIT_INDOOR_BIKE_EXERCISE_NAME, 1))
|
|
#define FIT_INDOOR_BIKE_EXERCISE_NAME_STATIONARY_BIKE (FIT_CAST(FIT_INDOOR_BIKE_EXERCISE_NAME, 3))
|
|
#define FIT_INDOOR_BIKE_EXERCISE_NAME_COUNT 3
|
|
|
|
typedef FIT_UINT16 FIT_INDOOR_ROW_EXERCISE_NAME;
|
|
#define FIT_INDOOR_ROW_EXERCISE_NAME_INVALID FIT_UINT16_INVALID
|
|
#define FIT_INDOOR_ROW_EXERCISE_NAME_ROWING_MACHINE (FIT_CAST(FIT_INDOOR_ROW_EXERCISE_NAME, 0))
|
|
#define FIT_INDOOR_ROW_EXERCISE_NAME_COUNT 1
|
|
|
|
typedef FIT_UINT16 FIT_LADDER_EXERCISE_NAME;
|
|
#define FIT_LADDER_EXERCISE_NAME_INVALID FIT_UINT16_INVALID
|
|
#define FIT_LADDER_EXERCISE_NAME_AGILITY (FIT_CAST(FIT_LADDER_EXERCISE_NAME, 0))
|
|
#define FIT_LADDER_EXERCISE_NAME_SPEED (FIT_CAST(FIT_LADDER_EXERCISE_NAME, 1))
|
|
#define FIT_LADDER_EXERCISE_NAME_COUNT 2
|
|
|
|
typedef FIT_UINT16 FIT_SANDBAG_EXERCISE_NAME;
|
|
#define FIT_SANDBAG_EXERCISE_NAME_INVALID FIT_UINT16_INVALID
|
|
#define FIT_SANDBAG_EXERCISE_NAME_AROUND_THE_WORLD (FIT_CAST(FIT_SANDBAG_EXERCISE_NAME, 0))
|
|
#define FIT_SANDBAG_EXERCISE_NAME_BACK_SQUAT (FIT_CAST(FIT_SANDBAG_EXERCISE_NAME, 1))
|
|
#define FIT_SANDBAG_EXERCISE_NAME_BEAR_CRAWL_PULL_THROUGH (FIT_CAST(FIT_SANDBAG_EXERCISE_NAME, 2))
|
|
#define FIT_SANDBAG_EXERCISE_NAME_BEAR_HUG_SQUAT (FIT_CAST(FIT_SANDBAG_EXERCISE_NAME, 3))
|
|
#define FIT_SANDBAG_EXERCISE_NAME_CLEAN (FIT_CAST(FIT_SANDBAG_EXERCISE_NAME, 4))
|
|
#define FIT_SANDBAG_EXERCISE_NAME_CLEAN_AND_PRESS (FIT_CAST(FIT_SANDBAG_EXERCISE_NAME, 5))
|
|
#define FIT_SANDBAG_EXERCISE_NAME_CURL (FIT_CAST(FIT_SANDBAG_EXERCISE_NAME, 6))
|
|
#define FIT_SANDBAG_EXERCISE_NAME_FRONT_CARRY (FIT_CAST(FIT_SANDBAG_EXERCISE_NAME, 7))
|
|
#define FIT_SANDBAG_EXERCISE_NAME_FRONT_SQUAT (FIT_CAST(FIT_SANDBAG_EXERCISE_NAME, 8))
|
|
#define FIT_SANDBAG_EXERCISE_NAME_LUNGE (FIT_CAST(FIT_SANDBAG_EXERCISE_NAME, 9))
|
|
#define FIT_SANDBAG_EXERCISE_NAME_OVERHEAD_PRESS (FIT_CAST(FIT_SANDBAG_EXERCISE_NAME, 10))
|
|
#define FIT_SANDBAG_EXERCISE_NAME_PLANK_PULL_THROUGH (FIT_CAST(FIT_SANDBAG_EXERCISE_NAME, 11))
|
|
#define FIT_SANDBAG_EXERCISE_NAME_ROTATIONAL_LUNGE (FIT_CAST(FIT_SANDBAG_EXERCISE_NAME, 12))
|
|
#define FIT_SANDBAG_EXERCISE_NAME_ROW (FIT_CAST(FIT_SANDBAG_EXERCISE_NAME, 13))
|
|
#define FIT_SANDBAG_EXERCISE_NAME_RUSSIAN_TWIST (FIT_CAST(FIT_SANDBAG_EXERCISE_NAME, 14))
|
|
#define FIT_SANDBAG_EXERCISE_NAME_SHOULDERING (FIT_CAST(FIT_SANDBAG_EXERCISE_NAME, 15))
|
|
#define FIT_SANDBAG_EXERCISE_NAME_SHOVELING (FIT_CAST(FIT_SANDBAG_EXERCISE_NAME, 16))
|
|
#define FIT_SANDBAG_EXERCISE_NAME_SIDE_LUNGE (FIT_CAST(FIT_SANDBAG_EXERCISE_NAME, 17))
|
|
#define FIT_SANDBAG_EXERCISE_NAME_SPRINT (FIT_CAST(FIT_SANDBAG_EXERCISE_NAME, 18))
|
|
#define FIT_SANDBAG_EXERCISE_NAME_ZERCHER_SQUAT (FIT_CAST(FIT_SANDBAG_EXERCISE_NAME, 19))
|
|
#define FIT_SANDBAG_EXERCISE_NAME_COUNT 20
|
|
|
|
typedef FIT_UINT16 FIT_SLED_EXERCISE_NAME;
|
|
#define FIT_SLED_EXERCISE_NAME_INVALID FIT_UINT16_INVALID
|
|
#define FIT_SLED_EXERCISE_NAME_BACKWARD_DRAG (FIT_CAST(FIT_SLED_EXERCISE_NAME, 0))
|
|
#define FIT_SLED_EXERCISE_NAME_CHEST_PRESS (FIT_CAST(FIT_SLED_EXERCISE_NAME, 1))
|
|
#define FIT_SLED_EXERCISE_NAME_FORWARD_DRAG (FIT_CAST(FIT_SLED_EXERCISE_NAME, 2))
|
|
#define FIT_SLED_EXERCISE_NAME_LOW_PUSH (FIT_CAST(FIT_SLED_EXERCISE_NAME, 3))
|
|
#define FIT_SLED_EXERCISE_NAME_PUSH (FIT_CAST(FIT_SLED_EXERCISE_NAME, 4))
|
|
#define FIT_SLED_EXERCISE_NAME_ROW (FIT_CAST(FIT_SLED_EXERCISE_NAME, 5))
|
|
#define FIT_SLED_EXERCISE_NAME_COUNT 6
|
|
|
|
typedef FIT_UINT16 FIT_SLEDGE_HAMMER_EXERCISE_NAME;
|
|
#define FIT_SLEDGE_HAMMER_EXERCISE_NAME_INVALID FIT_UINT16_INVALID
|
|
#define FIT_SLEDGE_HAMMER_EXERCISE_NAME_LATERAL_SWING (FIT_CAST(FIT_SLEDGE_HAMMER_EXERCISE_NAME, 0))
|
|
#define FIT_SLEDGE_HAMMER_EXERCISE_NAME_HAMMER_SLAM (FIT_CAST(FIT_SLEDGE_HAMMER_EXERCISE_NAME, 1))
|
|
#define FIT_SLEDGE_HAMMER_EXERCISE_NAME_COUNT 2
|
|
|
|
typedef FIT_UINT16 FIT_STAIR_STEPPER_EXERCISE_NAME;
|
|
#define FIT_STAIR_STEPPER_EXERCISE_NAME_INVALID FIT_UINT16_INVALID
|
|
#define FIT_STAIR_STEPPER_EXERCISE_NAME_STAIR_STEPPER (FIT_CAST(FIT_STAIR_STEPPER_EXERCISE_NAME, 0))
|
|
#define FIT_STAIR_STEPPER_EXERCISE_NAME_COUNT 1
|
|
|
|
typedef FIT_UINT16 FIT_SUSPENSION_EXERCISE_NAME;
|
|
#define FIT_SUSPENSION_EXERCISE_NAME_INVALID FIT_UINT16_INVALID
|
|
#define FIT_SUSPENSION_EXERCISE_NAME_CHEST_FLY (FIT_CAST(FIT_SUSPENSION_EXERCISE_NAME, 0))
|
|
#define FIT_SUSPENSION_EXERCISE_NAME_CHEST_PRESS (FIT_CAST(FIT_SUSPENSION_EXERCISE_NAME, 1))
|
|
#define FIT_SUSPENSION_EXERCISE_NAME_CRUNCH (FIT_CAST(FIT_SUSPENSION_EXERCISE_NAME, 2))
|
|
#define FIT_SUSPENSION_EXERCISE_NAME_CURL (FIT_CAST(FIT_SUSPENSION_EXERCISE_NAME, 3))
|
|
#define FIT_SUSPENSION_EXERCISE_NAME_DIP (FIT_CAST(FIT_SUSPENSION_EXERCISE_NAME, 4))
|
|
#define FIT_SUSPENSION_EXERCISE_NAME_FACE_PULL (FIT_CAST(FIT_SUSPENSION_EXERCISE_NAME, 5))
|
|
#define FIT_SUSPENSION_EXERCISE_NAME_GLUTE_BRIDGE (FIT_CAST(FIT_SUSPENSION_EXERCISE_NAME, 6))
|
|
#define FIT_SUSPENSION_EXERCISE_NAME_HAMSTRING_CURL (FIT_CAST(FIT_SUSPENSION_EXERCISE_NAME, 7))
|
|
#define FIT_SUSPENSION_EXERCISE_NAME_HIP_DROP (FIT_CAST(FIT_SUSPENSION_EXERCISE_NAME, 8))
|
|
#define FIT_SUSPENSION_EXERCISE_NAME_INVERTED_ROW (FIT_CAST(FIT_SUSPENSION_EXERCISE_NAME, 9))
|
|
#define FIT_SUSPENSION_EXERCISE_NAME_KNEE_DRIVE_JUMP (FIT_CAST(FIT_SUSPENSION_EXERCISE_NAME, 10))
|
|
#define FIT_SUSPENSION_EXERCISE_NAME_KNEE_TO_CHEST (FIT_CAST(FIT_SUSPENSION_EXERCISE_NAME, 11))
|
|
#define FIT_SUSPENSION_EXERCISE_NAME_LAT_PULLOVER (FIT_CAST(FIT_SUSPENSION_EXERCISE_NAME, 12))
|
|
#define FIT_SUSPENSION_EXERCISE_NAME_LUNGE (FIT_CAST(FIT_SUSPENSION_EXERCISE_NAME, 13))
|
|
#define FIT_SUSPENSION_EXERCISE_NAME_MOUNTAIN_CLIMBER (FIT_CAST(FIT_SUSPENSION_EXERCISE_NAME, 14))
|
|
#define FIT_SUSPENSION_EXERCISE_NAME_PENDULUM (FIT_CAST(FIT_SUSPENSION_EXERCISE_NAME, 15))
|
|
#define FIT_SUSPENSION_EXERCISE_NAME_PIKE (FIT_CAST(FIT_SUSPENSION_EXERCISE_NAME, 16))
|
|
#define FIT_SUSPENSION_EXERCISE_NAME_PLANK (FIT_CAST(FIT_SUSPENSION_EXERCISE_NAME, 17))
|
|
#define FIT_SUSPENSION_EXERCISE_NAME_POWER_PULL (FIT_CAST(FIT_SUSPENSION_EXERCISE_NAME, 18))
|
|
#define FIT_SUSPENSION_EXERCISE_NAME_PULL_UP (FIT_CAST(FIT_SUSPENSION_EXERCISE_NAME, 19))
|
|
#define FIT_SUSPENSION_EXERCISE_NAME_PUSH_UP (FIT_CAST(FIT_SUSPENSION_EXERCISE_NAME, 20))
|
|
#define FIT_SUSPENSION_EXERCISE_NAME_REVERSE_MOUNTAIN_CLIMBER (FIT_CAST(FIT_SUSPENSION_EXERCISE_NAME, 21))
|
|
#define FIT_SUSPENSION_EXERCISE_NAME_REVERSE_PLANK (FIT_CAST(FIT_SUSPENSION_EXERCISE_NAME, 22))
|
|
#define FIT_SUSPENSION_EXERCISE_NAME_ROLLOUT (FIT_CAST(FIT_SUSPENSION_EXERCISE_NAME, 23))
|
|
#define FIT_SUSPENSION_EXERCISE_NAME_ROW (FIT_CAST(FIT_SUSPENSION_EXERCISE_NAME, 24))
|
|
#define FIT_SUSPENSION_EXERCISE_NAME_SIDE_LUNGE (FIT_CAST(FIT_SUSPENSION_EXERCISE_NAME, 25))
|
|
#define FIT_SUSPENSION_EXERCISE_NAME_SIDE_PLANK (FIT_CAST(FIT_SUSPENSION_EXERCISE_NAME, 26))
|
|
#define FIT_SUSPENSION_EXERCISE_NAME_SINGLE_LEG_DEADLIFT (FIT_CAST(FIT_SUSPENSION_EXERCISE_NAME, 27))
|
|
#define FIT_SUSPENSION_EXERCISE_NAME_SINGLE_LEG_SQUAT (FIT_CAST(FIT_SUSPENSION_EXERCISE_NAME, 28))
|
|
#define FIT_SUSPENSION_EXERCISE_NAME_SIT_UP (FIT_CAST(FIT_SUSPENSION_EXERCISE_NAME, 29))
|
|
#define FIT_SUSPENSION_EXERCISE_NAME_SPLIT (FIT_CAST(FIT_SUSPENSION_EXERCISE_NAME, 30))
|
|
#define FIT_SUSPENSION_EXERCISE_NAME_SQUAT (FIT_CAST(FIT_SUSPENSION_EXERCISE_NAME, 31))
|
|
#define FIT_SUSPENSION_EXERCISE_NAME_SQUAT_JUMP (FIT_CAST(FIT_SUSPENSION_EXERCISE_NAME, 32))
|
|
#define FIT_SUSPENSION_EXERCISE_NAME_TRICEP_PRESS (FIT_CAST(FIT_SUSPENSION_EXERCISE_NAME, 33))
|
|
#define FIT_SUSPENSION_EXERCISE_NAME_Y_FLY (FIT_CAST(FIT_SUSPENSION_EXERCISE_NAME, 34))
|
|
#define FIT_SUSPENSION_EXERCISE_NAME_COUNT 35
|
|
|
|
typedef FIT_UINT16 FIT_TIRE_EXERCISE_NAME;
|
|
#define FIT_TIRE_EXERCISE_NAME_INVALID FIT_UINT16_INVALID
|
|
#define FIT_TIRE_EXERCISE_NAME_FLIP (FIT_CAST(FIT_TIRE_EXERCISE_NAME, 0))
|
|
#define FIT_TIRE_EXERCISE_NAME_COUNT 1
|
|
|
|
typedef FIT_UINT16 FIT_BIKE_OUTDOOR_EXERCISE_NAME;
|
|
#define FIT_BIKE_OUTDOOR_EXERCISE_NAME_INVALID FIT_UINT16_INVALID
|
|
#define FIT_BIKE_OUTDOOR_EXERCISE_NAME_BIKE (FIT_CAST(FIT_BIKE_OUTDOOR_EXERCISE_NAME, 0))
|
|
#define FIT_BIKE_OUTDOOR_EXERCISE_NAME_COUNT 1
|
|
|
|
typedef FIT_UINT16 FIT_RUN_INDOOR_EXERCISE_NAME;
|
|
#define FIT_RUN_INDOOR_EXERCISE_NAME_INVALID FIT_UINT16_INVALID
|
|
#define FIT_RUN_INDOOR_EXERCISE_NAME_INDOOR_TRACK_RUN (FIT_CAST(FIT_RUN_INDOOR_EXERCISE_NAME, 0))
|
|
#define FIT_RUN_INDOOR_EXERCISE_NAME_TREADMILL (FIT_CAST(FIT_RUN_INDOOR_EXERCISE_NAME, 1))
|
|
#define FIT_RUN_INDOOR_EXERCISE_NAME_COUNT 2
|
|
|
|
typedef FIT_ENUM FIT_WATER_TYPE;
|
|
#define FIT_WATER_TYPE_INVALID FIT_ENUM_INVALID
|
|
#define FIT_WATER_TYPE_FRESH (FIT_CAST(FIT_WATER_TYPE, 0))
|
|
#define FIT_WATER_TYPE_SALT (FIT_CAST(FIT_WATER_TYPE, 1))
|
|
#define FIT_WATER_TYPE_EN13319 (FIT_CAST(FIT_WATER_TYPE, 2))
|
|
#define FIT_WATER_TYPE_CUSTOM (FIT_CAST(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_CAST(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_CAST(FIT_DIVE_GAS_STATUS, 0))
|
|
#define FIT_DIVE_GAS_STATUS_ENABLED (FIT_CAST(FIT_DIVE_GAS_STATUS, 1))
|
|
#define FIT_DIVE_GAS_STATUS_BACKUP_ONLY (FIT_CAST(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_CAST(FIT_DIVE_ALERT, 0))
|
|
#define FIT_DIVE_ALERT_GAS_SWITCH_PROMPTED (FIT_CAST(FIT_DIVE_ALERT, 1))
|
|
#define FIT_DIVE_ALERT_NEAR_SURFACE (FIT_CAST(FIT_DIVE_ALERT, 2))
|
|
#define FIT_DIVE_ALERT_APPROACHING_NDL (FIT_CAST(FIT_DIVE_ALERT, 3))
|
|
#define FIT_DIVE_ALERT_PO2_WARN (FIT_CAST(FIT_DIVE_ALERT, 4))
|
|
#define FIT_DIVE_ALERT_PO2_CRIT_HIGH (FIT_CAST(FIT_DIVE_ALERT, 5))
|
|
#define FIT_DIVE_ALERT_PO2_CRIT_LOW (FIT_CAST(FIT_DIVE_ALERT, 6))
|
|
#define FIT_DIVE_ALERT_TIME_ALERT (FIT_CAST(FIT_DIVE_ALERT, 7))
|
|
#define FIT_DIVE_ALERT_DEPTH_ALERT (FIT_CAST(FIT_DIVE_ALERT, 8))
|
|
#define FIT_DIVE_ALERT_DECO_CEILING_BROKEN (FIT_CAST(FIT_DIVE_ALERT, 9))
|
|
#define FIT_DIVE_ALERT_DECO_COMPLETE (FIT_CAST(FIT_DIVE_ALERT, 10))
|
|
#define FIT_DIVE_ALERT_SAFETY_STOP_BROKEN (FIT_CAST(FIT_DIVE_ALERT, 11))
|
|
#define FIT_DIVE_ALERT_SAFETY_STOP_COMPLETE (FIT_CAST(FIT_DIVE_ALERT, 12))
|
|
#define FIT_DIVE_ALERT_CNS_WARNING (FIT_CAST(FIT_DIVE_ALERT, 13))
|
|
#define FIT_DIVE_ALERT_CNS_CRITICAL (FIT_CAST(FIT_DIVE_ALERT, 14))
|
|
#define FIT_DIVE_ALERT_OTU_WARNING (FIT_CAST(FIT_DIVE_ALERT, 15))
|
|
#define FIT_DIVE_ALERT_OTU_CRITICAL (FIT_CAST(FIT_DIVE_ALERT, 16))
|
|
#define FIT_DIVE_ALERT_ASCENT_CRITICAL (FIT_CAST(FIT_DIVE_ALERT, 17))
|
|
#define FIT_DIVE_ALERT_ALERT_DISMISSED_BY_KEY (FIT_CAST(FIT_DIVE_ALERT, 18))
|
|
#define FIT_DIVE_ALERT_ALERT_DISMISSED_BY_TIMEOUT (FIT_CAST(FIT_DIVE_ALERT, 19))
|
|
#define FIT_DIVE_ALERT_BATTERY_LOW (FIT_CAST(FIT_DIVE_ALERT, 20))
|
|
#define FIT_DIVE_ALERT_BATTERY_CRITICAL (FIT_CAST(FIT_DIVE_ALERT, 21))
|
|
#define FIT_DIVE_ALERT_SAFETY_STOP_STARTED (FIT_CAST(FIT_DIVE_ALERT, 22))
|
|
#define FIT_DIVE_ALERT_APPROACHING_FIRST_DECO_STOP (FIT_CAST(FIT_DIVE_ALERT, 23))
|
|
#define FIT_DIVE_ALERT_SETPOINT_SWITCH_AUTO_LOW (FIT_CAST(FIT_DIVE_ALERT, 24))
|
|
#define FIT_DIVE_ALERT_SETPOINT_SWITCH_AUTO_HIGH (FIT_CAST(FIT_DIVE_ALERT, 25))
|
|
#define FIT_DIVE_ALERT_SETPOINT_SWITCH_MANUAL_LOW (FIT_CAST(FIT_DIVE_ALERT, 26))
|
|
#define FIT_DIVE_ALERT_SETPOINT_SWITCH_MANUAL_HIGH (FIT_CAST(FIT_DIVE_ALERT, 27))
|
|
#define FIT_DIVE_ALERT_AUTO_SETPOINT_SWITCH_IGNORED (FIT_CAST(FIT_DIVE_ALERT, 28))
|
|
#define FIT_DIVE_ALERT_SWITCHED_TO_OPEN_CIRCUIT (FIT_CAST(FIT_DIVE_ALERT, 29))
|
|
#define FIT_DIVE_ALERT_SWITCHED_TO_CLOSED_CIRCUIT (FIT_CAST(FIT_DIVE_ALERT, 30))
|
|
#define FIT_DIVE_ALERT_TANK_BATTERY_LOW (FIT_CAST(FIT_DIVE_ALERT, 32))
|
|
#define FIT_DIVE_ALERT_PO2_CCR_DIL_LOW (FIT_CAST(FIT_DIVE_ALERT, 33)) // ccr diluent has low po2
|
|
#define FIT_DIVE_ALERT_DECO_STOP_CLEARED (FIT_CAST(FIT_DIVE_ALERT, 34)) // a deco stop has been cleared
|
|
#define FIT_DIVE_ALERT_APNEA_NEUTRAL_BUOYANCY (FIT_CAST(FIT_DIVE_ALERT, 35)) // Target Depth Apnea Alarm triggered
|
|
#define FIT_DIVE_ALERT_APNEA_TARGET_DEPTH (FIT_CAST(FIT_DIVE_ALERT, 36)) // Neutral Buoyance Apnea Alarm triggered
|
|
#define FIT_DIVE_ALERT_APNEA_SURFACE (FIT_CAST(FIT_DIVE_ALERT, 37)) // Surface Apnea Alarm triggered
|
|
#define FIT_DIVE_ALERT_APNEA_HIGH_SPEED (FIT_CAST(FIT_DIVE_ALERT, 38)) // High Speed Apnea Alarm triggered
|
|
#define FIT_DIVE_ALERT_APNEA_LOW_SPEED (FIT_CAST(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_CAST(FIT_DIVE_ALARM_TYPE, 0)) // Alarm when a certain depth is crossed
|
|
#define FIT_DIVE_ALARM_TYPE_TIME (FIT_CAST(FIT_DIVE_ALARM_TYPE, 1)) // Alarm when a certain time has transpired
|
|
#define FIT_DIVE_ALARM_TYPE_SPEED (FIT_CAST(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_CAST(FIT_DIVE_BACKLIGHT_MODE, 0))
|
|
#define FIT_DIVE_BACKLIGHT_MODE_ALWAYS_ON (FIT_CAST(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_CAST(FIT_SLEEP_LEVEL, 0))
|
|
#define FIT_SLEEP_LEVEL_AWAKE (FIT_CAST(FIT_SLEEP_LEVEL, 1))
|
|
#define FIT_SLEEP_LEVEL_LIGHT (FIT_CAST(FIT_SLEEP_LEVEL, 2))
|
|
#define FIT_SLEEP_LEVEL_DEEP (FIT_CAST(FIT_SLEEP_LEVEL, 3))
|
|
#define FIT_SLEEP_LEVEL_REM (FIT_CAST(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_CAST(FIT_SPO2_MEASUREMENT_TYPE, 0))
|
|
#define FIT_SPO2_MEASUREMENT_TYPE_SPOT_CHECK (FIT_CAST(FIT_SPO2_MEASUREMENT_TYPE, 1))
|
|
#define FIT_SPO2_MEASUREMENT_TYPE_CONTINUOUS_CHECK (FIT_CAST(FIT_SPO2_MEASUREMENT_TYPE, 2))
|
|
#define FIT_SPO2_MEASUREMENT_TYPE_PERIODIC (FIT_CAST(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_CAST(FIT_CCR_SETPOINT_SWITCH_MODE, 0)) // User switches setpoints manually
|
|
#define FIT_CCR_SETPOINT_SWITCH_MODE_AUTOMATIC (FIT_CAST(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_CAST(FIT_DIVE_GAS_MODE, 0))
|
|
#define FIT_DIVE_GAS_MODE_CLOSED_CIRCUIT_DILUENT (FIT_CAST(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_CAST(FIT_PROJECTILE_TYPE, 0)) // Arrow projectile type
|
|
#define FIT_PROJECTILE_TYPE_RIFLE_CARTRIDGE (FIT_CAST(FIT_PROJECTILE_TYPE, 1)) // Rifle cartridge projectile type
|
|
#define FIT_PROJECTILE_TYPE_PISTOL_CARTRIDGE (FIT_CAST(FIT_PROJECTILE_TYPE, 2)) // Pistol cartridge projectile type
|
|
#define FIT_PROJECTILE_TYPE_SHOTSHELL (FIT_CAST(FIT_PROJECTILE_TYPE, 3)) // Shotshell projectile type
|
|
#define FIT_PROJECTILE_TYPE_AIR_RIFLE_PELLET (FIT_CAST(FIT_PROJECTILE_TYPE, 4)) // Air rifle pellet projectile type
|
|
#define FIT_PROJECTILE_TYPE_OTHER (FIT_CAST(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_CAST(FIT_FAVERO_PRODUCT, 10))
|
|
#define FIT_FAVERO_PRODUCT_ASSIOMA_DUO (FIT_CAST(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_CAST(FIT_SPLIT_TYPE, 1))
|
|
#define FIT_SPLIT_TYPE_DESCENT_SPLIT (FIT_CAST(FIT_SPLIT_TYPE, 2))
|
|
#define FIT_SPLIT_TYPE_INTERVAL_ACTIVE (FIT_CAST(FIT_SPLIT_TYPE, 3))
|
|
#define FIT_SPLIT_TYPE_INTERVAL_REST (FIT_CAST(FIT_SPLIT_TYPE, 4))
|
|
#define FIT_SPLIT_TYPE_INTERVAL_WARMUP (FIT_CAST(FIT_SPLIT_TYPE, 5))
|
|
#define FIT_SPLIT_TYPE_INTERVAL_COOLDOWN (FIT_CAST(FIT_SPLIT_TYPE, 6))
|
|
#define FIT_SPLIT_TYPE_INTERVAL_RECOVERY (FIT_CAST(FIT_SPLIT_TYPE, 7))
|
|
#define FIT_SPLIT_TYPE_INTERVAL_OTHER (FIT_CAST(FIT_SPLIT_TYPE, 8))
|
|
#define FIT_SPLIT_TYPE_CLIMB_ACTIVE (FIT_CAST(FIT_SPLIT_TYPE, 9))
|
|
#define FIT_SPLIT_TYPE_CLIMB_REST (FIT_CAST(FIT_SPLIT_TYPE, 10))
|
|
#define FIT_SPLIT_TYPE_SURF_ACTIVE (FIT_CAST(FIT_SPLIT_TYPE, 11))
|
|
#define FIT_SPLIT_TYPE_RUN_ACTIVE (FIT_CAST(FIT_SPLIT_TYPE, 12))
|
|
#define FIT_SPLIT_TYPE_RUN_REST (FIT_CAST(FIT_SPLIT_TYPE, 13))
|
|
#define FIT_SPLIT_TYPE_WORKOUT_ROUND (FIT_CAST(FIT_SPLIT_TYPE, 14))
|
|
#define FIT_SPLIT_TYPE_RWD_RUN (FIT_CAST(FIT_SPLIT_TYPE, 17)) // run/walk detection running
|
|
#define FIT_SPLIT_TYPE_RWD_WALK (FIT_CAST(FIT_SPLIT_TYPE, 18)) // run/walk detection walking
|
|
#define FIT_SPLIT_TYPE_WINDSURF_ACTIVE (FIT_CAST(FIT_SPLIT_TYPE, 21))
|
|
#define FIT_SPLIT_TYPE_RWD_STAND (FIT_CAST(FIT_SPLIT_TYPE, 22)) // run/walk detection standing
|
|
#define FIT_SPLIT_TYPE_TRANSITION (FIT_CAST(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_CAST(FIT_SPLIT_TYPE, 28))
|
|
#define FIT_SPLIT_TYPE_SKI_RUN_SPLIT (FIT_CAST(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_CAST(FIT_CLIMB_PRO_EVENT, 0))
|
|
#define FIT_CLIMB_PRO_EVENT_START (FIT_CAST(FIT_CLIMB_PRO_EVENT, 1))
|
|
#define FIT_CLIMB_PRO_EVENT_COMPLETE (FIT_CAST(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_CAST(FIT_GAS_CONSUMPTION_RATE_TYPE, 0)) // Pressure-based Surface Air Consumption
|
|
#define FIT_GAS_CONSUMPTION_RATE_TYPE_VOLUME_SAC (FIT_CAST(FIT_GAS_CONSUMPTION_RATE_TYPE, 1)) // Volumetric Surface Air Consumption
|
|
#define FIT_GAS_CONSUMPTION_RATE_TYPE_RMV (FIT_CAST(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_CAST(FIT_TAP_SENSITIVITY, 0))
|
|
#define FIT_TAP_SENSITIVITY_MEDIUM (FIT_CAST(FIT_TAP_SENSITIVITY, 1))
|
|
#define FIT_TAP_SENSITIVITY_LOW (FIT_CAST(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_CAST(FIT_RADAR_THREAT_LEVEL_TYPE, 0))
|
|
#define FIT_RADAR_THREAT_LEVEL_TYPE_THREAT_NONE (FIT_CAST(FIT_RADAR_THREAT_LEVEL_TYPE, 1))
|
|
#define FIT_RADAR_THREAT_LEVEL_TYPE_THREAT_APPROACHING (FIT_CAST(FIT_RADAR_THREAT_LEVEL_TYPE, 2))
|
|
#define FIT_RADAR_THREAT_LEVEL_TYPE_THREAT_APPROACHING_FAST (FIT_CAST(FIT_RADAR_THREAT_LEVEL_TYPE, 3))
|
|
#define FIT_RADAR_THREAT_LEVEL_TYPE_COUNT 4
|
|
|
|
typedef FIT_ENUM FIT_SLEEP_DISRUPTION_SEVERITY;
|
|
#define FIT_SLEEP_DISRUPTION_SEVERITY_INVALID FIT_ENUM_INVALID
|
|
#define FIT_SLEEP_DISRUPTION_SEVERITY_NONE (FIT_CAST(FIT_SLEEP_DISRUPTION_SEVERITY, 0))
|
|
#define FIT_SLEEP_DISRUPTION_SEVERITY_LOW (FIT_CAST(FIT_SLEEP_DISRUPTION_SEVERITY, 1))
|
|
#define FIT_SLEEP_DISRUPTION_SEVERITY_MEDIUM (FIT_CAST(FIT_SLEEP_DISRUPTION_SEVERITY, 2))
|
|
#define FIT_SLEEP_DISRUPTION_SEVERITY_HIGH (FIT_CAST(FIT_SLEEP_DISRUPTION_SEVERITY, 3))
|
|
#define FIT_SLEEP_DISRUPTION_SEVERITY_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_CAST(FIT_MAX_MET_SPEED_SOURCE, 0))
|
|
#define FIT_MAX_MET_SPEED_SOURCE_CONNECTED_GPS (FIT_CAST(FIT_MAX_MET_SPEED_SOURCE, 1))
|
|
#define FIT_MAX_MET_SPEED_SOURCE_CADENCE (FIT_CAST(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_CAST(FIT_MAX_MET_HEART_RATE_SOURCE, 0)) // Wrist Heart Rate Monitor
|
|
#define FIT_MAX_MET_HEART_RATE_SOURCE_HRM (FIT_CAST(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_CAST(FIT_HRV_STATUS, 0))
|
|
#define FIT_HRV_STATUS_POOR (FIT_CAST(FIT_HRV_STATUS, 1))
|
|
#define FIT_HRV_STATUS_LOW (FIT_CAST(FIT_HRV_STATUS, 2))
|
|
#define FIT_HRV_STATUS_UNBALANCED (FIT_CAST(FIT_HRV_STATUS, 3))
|
|
#define FIT_HRV_STATUS_BALANCED (FIT_CAST(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_CAST(FIT_NO_FLY_TIME_MODE, 0)) // Standard Diver Alert Network no-fly guidance
|
|
#define FIT_NO_FLY_TIME_MODE_FLAT_24_HOURS (FIT_CAST(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_CAST(FIT_FILE_ID_FIELD_NUM, 3))
|
|
#define FIT_FILE_ID_FIELD_NUM_TIME_CREATED (FIT_CAST(FIT_FILE_ID_FIELD_NUM, 4))
|
|
#define FIT_FILE_ID_FIELD_NUM_PRODUCT_NAME (FIT_CAST(FIT_FILE_ID_FIELD_NUM, 8))
|
|
#define FIT_FILE_ID_FIELD_NUM_MANUFACTURER (FIT_CAST(FIT_FILE_ID_FIELD_NUM, 1))
|
|
#define FIT_FILE_ID_FIELD_NUM_PRODUCT (FIT_CAST(FIT_FILE_ID_FIELD_NUM, 2))
|
|
#define FIT_FILE_ID_FIELD_NUM_NUMBER (FIT_CAST(FIT_FILE_ID_FIELD_NUM, 5))
|
|
#define FIT_FILE_ID_FIELD_NUM_TYPE (FIT_CAST(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_CAST(FIT_FILE_CREATOR_FIELD_NUM, 0))
|
|
#define FIT_FILE_CREATOR_FIELD_NUM_HARDWARE_VERSION (FIT_CAST(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_CAST(FIT_SOFTWARE_FIELD_NUM, 5))
|
|
#define FIT_SOFTWARE_FIELD_NUM_MESSAGE_INDEX (FIT_CAST(FIT_SOFTWARE_FIELD_NUM, 254))
|
|
#define FIT_SOFTWARE_FIELD_NUM_VERSION (FIT_CAST(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_CAST(FIT_SLAVE_DEVICE_FIELD_NUM, 0))
|
|
#define FIT_SLAVE_DEVICE_FIELD_NUM_PRODUCT (FIT_CAST(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_CAST(FIT_CAPABILITIES_FIELD_NUM, 0))
|
|
#define FIT_CAPABILITIES_FIELD_NUM_WORKOUTS_SUPPORTED (FIT_CAST(FIT_CAPABILITIES_FIELD_NUM, 21))
|
|
#define FIT_CAPABILITIES_FIELD_NUM_CONNECTIVITY_SUPPORTED (FIT_CAST(FIT_CAPABILITIES_FIELD_NUM, 23))
|
|
#define FIT_CAPABILITIES_FIELD_NUM_SPORTS (FIT_CAST(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_CAST(FIT_FILE_CAPABILITIES_FIELD_NUM, 2))
|
|
#define FIT_FILE_CAPABILITIES_FIELD_NUM_MAX_SIZE (FIT_CAST(FIT_FILE_CAPABILITIES_FIELD_NUM, 4))
|
|
#define FIT_FILE_CAPABILITIES_FIELD_NUM_MESSAGE_INDEX (FIT_CAST(FIT_FILE_CAPABILITIES_FIELD_NUM, 254))
|
|
#define FIT_FILE_CAPABILITIES_FIELD_NUM_MAX_COUNT (FIT_CAST(FIT_FILE_CAPABILITIES_FIELD_NUM, 3))
|
|
#define FIT_FILE_CAPABILITIES_FIELD_NUM_TYPE (FIT_CAST(FIT_FILE_CAPABILITIES_FIELD_NUM, 0))
|
|
#define FIT_FILE_CAPABILITIES_FIELD_NUM_FLAGS (FIT_CAST(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_CAST(FIT_MESG_CAPABILITIES_FIELD_NUM, 254))
|
|
#define FIT_MESG_CAPABILITIES_FIELD_NUM_MESG_NUM (FIT_CAST(FIT_MESG_CAPABILITIES_FIELD_NUM, 1))
|
|
#define FIT_MESG_CAPABILITIES_FIELD_NUM_COUNT (FIT_CAST(FIT_MESG_CAPABILITIES_FIELD_NUM, 3))
|
|
#define FIT_MESG_CAPABILITIES_FIELD_NUM_FILE (FIT_CAST(FIT_MESG_CAPABILITIES_FIELD_NUM, 0))
|
|
#define FIT_MESG_CAPABILITIES_FIELD_NUM_COUNT_TYPE (FIT_CAST(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_CAST(FIT_FIELD_CAPABILITIES_FIELD_NUM, 254))
|
|
#define FIT_FIELD_CAPABILITIES_FIELD_NUM_MESG_NUM (FIT_CAST(FIT_FIELD_CAPABILITIES_FIELD_NUM, 1))
|
|
#define FIT_FIELD_CAPABILITIES_FIELD_NUM_COUNT (FIT_CAST(FIT_FIELD_CAPABILITIES_FIELD_NUM, 3))
|
|
#define FIT_FIELD_CAPABILITIES_FIELD_NUM_FILE (FIT_CAST(FIT_FIELD_CAPABILITIES_FIELD_NUM, 0))
|
|
#define FIT_FIELD_CAPABILITIES_FIELD_NUM_FIELD_NUM (FIT_CAST(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_CAST(FIT_DEVICE_SETTINGS_FIELD_NUM, 1))
|
|
#define FIT_DEVICE_SETTINGS_FIELD_NUM_TIME_OFFSET (FIT_CAST(FIT_DEVICE_SETTINGS_FIELD_NUM, 2))
|
|
#define FIT_DEVICE_SETTINGS_FIELD_NUM_CLOCK_TIME (FIT_CAST(FIT_DEVICE_SETTINGS_FIELD_NUM, 39))
|
|
#define FIT_DEVICE_SETTINGS_FIELD_NUM_PAGES_ENABLED (FIT_CAST(FIT_DEVICE_SETTINGS_FIELD_NUM, 40))
|
|
#define FIT_DEVICE_SETTINGS_FIELD_NUM_DEFAULT_PAGE (FIT_CAST(FIT_DEVICE_SETTINGS_FIELD_NUM, 57))
|
|
#define FIT_DEVICE_SETTINGS_FIELD_NUM_AUTOSYNC_MIN_STEPS (FIT_CAST(FIT_DEVICE_SETTINGS_FIELD_NUM, 58))
|
|
#define FIT_DEVICE_SETTINGS_FIELD_NUM_AUTOSYNC_MIN_TIME (FIT_CAST(FIT_DEVICE_SETTINGS_FIELD_NUM, 59))
|
|
#define FIT_DEVICE_SETTINGS_FIELD_NUM_ACTIVE_TIME_ZONE (FIT_CAST(FIT_DEVICE_SETTINGS_FIELD_NUM, 0))
|
|
#define FIT_DEVICE_SETTINGS_FIELD_NUM_TIME_MODE (FIT_CAST(FIT_DEVICE_SETTINGS_FIELD_NUM, 4))
|
|
#define FIT_DEVICE_SETTINGS_FIELD_NUM_TIME_ZONE_OFFSET (FIT_CAST(FIT_DEVICE_SETTINGS_FIELD_NUM, 5))
|
|
#define FIT_DEVICE_SETTINGS_FIELD_NUM_BACKLIGHT_MODE (FIT_CAST(FIT_DEVICE_SETTINGS_FIELD_NUM, 12))
|
|
#define FIT_DEVICE_SETTINGS_FIELD_NUM_ACTIVITY_TRACKER_ENABLED (FIT_CAST(FIT_DEVICE_SETTINGS_FIELD_NUM, 36))
|
|
#define FIT_DEVICE_SETTINGS_FIELD_NUM_MOVE_ALERT_ENABLED (FIT_CAST(FIT_DEVICE_SETTINGS_FIELD_NUM, 46))
|
|
#define FIT_DEVICE_SETTINGS_FIELD_NUM_DATE_MODE (FIT_CAST(FIT_DEVICE_SETTINGS_FIELD_NUM, 47))
|
|
#define FIT_DEVICE_SETTINGS_FIELD_NUM_DISPLAY_ORIENTATION (FIT_CAST(FIT_DEVICE_SETTINGS_FIELD_NUM, 55))
|
|
#define FIT_DEVICE_SETTINGS_FIELD_NUM_MOUNTING_SIDE (FIT_CAST(FIT_DEVICE_SETTINGS_FIELD_NUM, 56))
|
|
#define FIT_DEVICE_SETTINGS_FIELD_NUM_TAP_SENSITIVITY (FIT_CAST(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_CAST(FIT_USER_PROFILE_FIELD_NUM, 0))
|
|
#define FIT_USER_PROFILE_FIELD_NUM_MESSAGE_INDEX (FIT_CAST(FIT_USER_PROFILE_FIELD_NUM, 254))
|
|
#define FIT_USER_PROFILE_FIELD_NUM_WEIGHT (FIT_CAST(FIT_USER_PROFILE_FIELD_NUM, 4))
|
|
#define FIT_USER_PROFILE_FIELD_NUM_LOCAL_ID (FIT_CAST(FIT_USER_PROFILE_FIELD_NUM, 22))
|
|
#define FIT_USER_PROFILE_FIELD_NUM_USER_RUNNING_STEP_LENGTH (FIT_CAST(FIT_USER_PROFILE_FIELD_NUM, 31))
|
|
#define FIT_USER_PROFILE_FIELD_NUM_USER_WALKING_STEP_LENGTH (FIT_CAST(FIT_USER_PROFILE_FIELD_NUM, 32))
|
|
#define FIT_USER_PROFILE_FIELD_NUM_GENDER (FIT_CAST(FIT_USER_PROFILE_FIELD_NUM, 1))
|
|
#define FIT_USER_PROFILE_FIELD_NUM_AGE (FIT_CAST(FIT_USER_PROFILE_FIELD_NUM, 2))
|
|
#define FIT_USER_PROFILE_FIELD_NUM_HEIGHT (FIT_CAST(FIT_USER_PROFILE_FIELD_NUM, 3))
|
|
#define FIT_USER_PROFILE_FIELD_NUM_LANGUAGE (FIT_CAST(FIT_USER_PROFILE_FIELD_NUM, 5))
|
|
#define FIT_USER_PROFILE_FIELD_NUM_ELEV_SETTING (FIT_CAST(FIT_USER_PROFILE_FIELD_NUM, 6))
|
|
#define FIT_USER_PROFILE_FIELD_NUM_WEIGHT_SETTING (FIT_CAST(FIT_USER_PROFILE_FIELD_NUM, 7))
|
|
#define FIT_USER_PROFILE_FIELD_NUM_RESTING_HEART_RATE (FIT_CAST(FIT_USER_PROFILE_FIELD_NUM, 8))
|
|
#define FIT_USER_PROFILE_FIELD_NUM_DEFAULT_MAX_RUNNING_HEART_RATE (FIT_CAST(FIT_USER_PROFILE_FIELD_NUM, 9))
|
|
#define FIT_USER_PROFILE_FIELD_NUM_DEFAULT_MAX_BIKING_HEART_RATE (FIT_CAST(FIT_USER_PROFILE_FIELD_NUM, 10))
|
|
#define FIT_USER_PROFILE_FIELD_NUM_DEFAULT_MAX_HEART_RATE (FIT_CAST(FIT_USER_PROFILE_FIELD_NUM, 11))
|
|
#define FIT_USER_PROFILE_FIELD_NUM_HR_SETTING (FIT_CAST(FIT_USER_PROFILE_FIELD_NUM, 12))
|
|
#define FIT_USER_PROFILE_FIELD_NUM_SPEED_SETTING (FIT_CAST(FIT_USER_PROFILE_FIELD_NUM, 13))
|
|
#define FIT_USER_PROFILE_FIELD_NUM_DIST_SETTING (FIT_CAST(FIT_USER_PROFILE_FIELD_NUM, 14))
|
|
#define FIT_USER_PROFILE_FIELD_NUM_POWER_SETTING (FIT_CAST(FIT_USER_PROFILE_FIELD_NUM, 16))
|
|
#define FIT_USER_PROFILE_FIELD_NUM_ACTIVITY_CLASS (FIT_CAST(FIT_USER_PROFILE_FIELD_NUM, 17))
|
|
#define FIT_USER_PROFILE_FIELD_NUM_POSITION_SETTING (FIT_CAST(FIT_USER_PROFILE_FIELD_NUM, 18))
|
|
#define FIT_USER_PROFILE_FIELD_NUM_TEMPERATURE_SETTING (FIT_CAST(FIT_USER_PROFILE_FIELD_NUM, 21))
|
|
#define FIT_USER_PROFILE_FIELD_NUM_GLOBAL_ID (FIT_CAST(FIT_USER_PROFILE_FIELD_NUM, 23))
|
|
#define FIT_USER_PROFILE_FIELD_NUM_HEIGHT_SETTING (FIT_CAST(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_CAST(FIT_HRM_PROFILE_FIELD_NUM, 254))
|
|
#define FIT_HRM_PROFILE_FIELD_NUM_HRM_ANT_ID (FIT_CAST(FIT_HRM_PROFILE_FIELD_NUM, 1))
|
|
#define FIT_HRM_PROFILE_FIELD_NUM_ENABLED (FIT_CAST(FIT_HRM_PROFILE_FIELD_NUM, 0))
|
|
#define FIT_HRM_PROFILE_FIELD_NUM_LOG_HRV (FIT_CAST(FIT_HRM_PROFILE_FIELD_NUM, 2))
|
|
#define FIT_HRM_PROFILE_FIELD_NUM_HRM_ANT_ID_TRANS_TYPE (FIT_CAST(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_CAST(FIT_SDM_PROFILE_FIELD_NUM, 3))
|
|
#define FIT_SDM_PROFILE_FIELD_NUM_MESSAGE_INDEX (FIT_CAST(FIT_SDM_PROFILE_FIELD_NUM, 254))
|
|
#define FIT_SDM_PROFILE_FIELD_NUM_SDM_ANT_ID (FIT_CAST(FIT_SDM_PROFILE_FIELD_NUM, 1))
|
|
#define FIT_SDM_PROFILE_FIELD_NUM_SDM_CAL_FACTOR (FIT_CAST(FIT_SDM_PROFILE_FIELD_NUM, 2))
|
|
#define FIT_SDM_PROFILE_FIELD_NUM_ENABLED (FIT_CAST(FIT_SDM_PROFILE_FIELD_NUM, 0))
|
|
#define FIT_SDM_PROFILE_FIELD_NUM_SPEED_SOURCE (FIT_CAST(FIT_SDM_PROFILE_FIELD_NUM, 4))
|
|
#define FIT_SDM_PROFILE_FIELD_NUM_SDM_ANT_ID_TRANS_TYPE (FIT_CAST(FIT_SDM_PROFILE_FIELD_NUM, 5))
|
|
#define FIT_SDM_PROFILE_FIELD_NUM_ODOMETER_ROLLOVER (FIT_CAST(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_CAST(FIT_BIKE_PROFILE_FIELD_NUM, 0))
|
|
#define FIT_BIKE_PROFILE_FIELD_NUM_ODOMETER (FIT_CAST(FIT_BIKE_PROFILE_FIELD_NUM, 3))
|
|
#define FIT_BIKE_PROFILE_FIELD_NUM_MESSAGE_INDEX (FIT_CAST(FIT_BIKE_PROFILE_FIELD_NUM, 254))
|
|
#define FIT_BIKE_PROFILE_FIELD_NUM_BIKE_SPD_ANT_ID (FIT_CAST(FIT_BIKE_PROFILE_FIELD_NUM, 4))
|
|
#define FIT_BIKE_PROFILE_FIELD_NUM_BIKE_CAD_ANT_ID (FIT_CAST(FIT_BIKE_PROFILE_FIELD_NUM, 5))
|
|
#define FIT_BIKE_PROFILE_FIELD_NUM_BIKE_SPDCAD_ANT_ID (FIT_CAST(FIT_BIKE_PROFILE_FIELD_NUM, 6))
|
|
#define FIT_BIKE_PROFILE_FIELD_NUM_BIKE_POWER_ANT_ID (FIT_CAST(FIT_BIKE_PROFILE_FIELD_NUM, 7))
|
|
#define FIT_BIKE_PROFILE_FIELD_NUM_CUSTOM_WHEELSIZE (FIT_CAST(FIT_BIKE_PROFILE_FIELD_NUM, 8))
|
|
#define FIT_BIKE_PROFILE_FIELD_NUM_AUTO_WHEELSIZE (FIT_CAST(FIT_BIKE_PROFILE_FIELD_NUM, 9))
|
|
#define FIT_BIKE_PROFILE_FIELD_NUM_BIKE_WEIGHT (FIT_CAST(FIT_BIKE_PROFILE_FIELD_NUM, 10))
|
|
#define FIT_BIKE_PROFILE_FIELD_NUM_POWER_CAL_FACTOR (FIT_CAST(FIT_BIKE_PROFILE_FIELD_NUM, 11))
|
|
#define FIT_BIKE_PROFILE_FIELD_NUM_SPORT (FIT_CAST(FIT_BIKE_PROFILE_FIELD_NUM, 1))
|
|
#define FIT_BIKE_PROFILE_FIELD_NUM_SUB_SPORT (FIT_CAST(FIT_BIKE_PROFILE_FIELD_NUM, 2))
|
|
#define FIT_BIKE_PROFILE_FIELD_NUM_AUTO_WHEEL_CAL (FIT_CAST(FIT_BIKE_PROFILE_FIELD_NUM, 12))
|
|
#define FIT_BIKE_PROFILE_FIELD_NUM_AUTO_POWER_ZERO (FIT_CAST(FIT_BIKE_PROFILE_FIELD_NUM, 13))
|
|
#define FIT_BIKE_PROFILE_FIELD_NUM_ID (FIT_CAST(FIT_BIKE_PROFILE_FIELD_NUM, 14))
|
|
#define FIT_BIKE_PROFILE_FIELD_NUM_SPD_ENABLED (FIT_CAST(FIT_BIKE_PROFILE_FIELD_NUM, 15))
|
|
#define FIT_BIKE_PROFILE_FIELD_NUM_CAD_ENABLED (FIT_CAST(FIT_BIKE_PROFILE_FIELD_NUM, 16))
|
|
#define FIT_BIKE_PROFILE_FIELD_NUM_SPDCAD_ENABLED (FIT_CAST(FIT_BIKE_PROFILE_FIELD_NUM, 17))
|
|
#define FIT_BIKE_PROFILE_FIELD_NUM_POWER_ENABLED (FIT_CAST(FIT_BIKE_PROFILE_FIELD_NUM, 18))
|
|
#define FIT_BIKE_PROFILE_FIELD_NUM_CRANK_LENGTH (FIT_CAST(FIT_BIKE_PROFILE_FIELD_NUM, 19))
|
|
#define FIT_BIKE_PROFILE_FIELD_NUM_ENABLED (FIT_CAST(FIT_BIKE_PROFILE_FIELD_NUM, 20))
|
|
#define FIT_BIKE_PROFILE_FIELD_NUM_BIKE_SPD_ANT_ID_TRANS_TYPE (FIT_CAST(FIT_BIKE_PROFILE_FIELD_NUM, 21))
|
|
#define FIT_BIKE_PROFILE_FIELD_NUM_BIKE_CAD_ANT_ID_TRANS_TYPE (FIT_CAST(FIT_BIKE_PROFILE_FIELD_NUM, 22))
|
|
#define FIT_BIKE_PROFILE_FIELD_NUM_BIKE_SPDCAD_ANT_ID_TRANS_TYPE (FIT_CAST(FIT_BIKE_PROFILE_FIELD_NUM, 23))
|
|
#define FIT_BIKE_PROFILE_FIELD_NUM_BIKE_POWER_ANT_ID_TRANS_TYPE (FIT_CAST(FIT_BIKE_PROFILE_FIELD_NUM, 24))
|
|
#define FIT_BIKE_PROFILE_FIELD_NUM_ODOMETER_ROLLOVER (FIT_CAST(FIT_BIKE_PROFILE_FIELD_NUM, 37))
|
|
#define FIT_BIKE_PROFILE_FIELD_NUM_FRONT_GEAR_NUM (FIT_CAST(FIT_BIKE_PROFILE_FIELD_NUM, 38))
|
|
#define FIT_BIKE_PROFILE_FIELD_NUM_FRONT_GEAR (FIT_CAST(FIT_BIKE_PROFILE_FIELD_NUM, 39))
|
|
#define FIT_BIKE_PROFILE_FIELD_NUM_REAR_GEAR_NUM (FIT_CAST(FIT_BIKE_PROFILE_FIELD_NUM, 40))
|
|
#define FIT_BIKE_PROFILE_FIELD_NUM_REAR_GEAR (FIT_CAST(FIT_BIKE_PROFILE_FIELD_NUM, 41))
|
|
#define FIT_BIKE_PROFILE_FIELD_NUM_SHIMANO_DI2_ENABLED (FIT_CAST(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_CAST(FIT_CONNECTIVITY_FIELD_NUM, 3))
|
|
#define FIT_CONNECTIVITY_FIELD_NUM_BLUETOOTH_ENABLED (FIT_CAST(FIT_CONNECTIVITY_FIELD_NUM, 0))
|
|
#define FIT_CONNECTIVITY_FIELD_NUM_BLUETOOTH_LE_ENABLED (FIT_CAST(FIT_CONNECTIVITY_FIELD_NUM, 1))
|
|
#define FIT_CONNECTIVITY_FIELD_NUM_ANT_ENABLED (FIT_CAST(FIT_CONNECTIVITY_FIELD_NUM, 2))
|
|
#define FIT_CONNECTIVITY_FIELD_NUM_LIVE_TRACKING_ENABLED (FIT_CAST(FIT_CONNECTIVITY_FIELD_NUM, 4))
|
|
#define FIT_CONNECTIVITY_FIELD_NUM_WEATHER_CONDITIONS_ENABLED (FIT_CAST(FIT_CONNECTIVITY_FIELD_NUM, 5))
|
|
#define FIT_CONNECTIVITY_FIELD_NUM_WEATHER_ALERTS_ENABLED (FIT_CAST(FIT_CONNECTIVITY_FIELD_NUM, 6))
|
|
#define FIT_CONNECTIVITY_FIELD_NUM_AUTO_ACTIVITY_UPLOAD_ENABLED (FIT_CAST(FIT_CONNECTIVITY_FIELD_NUM, 7))
|
|
#define FIT_CONNECTIVITY_FIELD_NUM_COURSE_DOWNLOAD_ENABLED (FIT_CAST(FIT_CONNECTIVITY_FIELD_NUM, 8))
|
|
#define FIT_CONNECTIVITY_FIELD_NUM_WORKOUT_DOWNLOAD_ENABLED (FIT_CAST(FIT_CONNECTIVITY_FIELD_NUM, 9))
|
|
#define FIT_CONNECTIVITY_FIELD_NUM_GPS_EPHEMERIS_DOWNLOAD_ENABLED (FIT_CAST(FIT_CONNECTIVITY_FIELD_NUM, 10))
|
|
#define FIT_CONNECTIVITY_FIELD_NUM_INCIDENT_DETECTION_ENABLED (FIT_CAST(FIT_CONNECTIVITY_FIELD_NUM, 11))
|
|
#define FIT_CONNECTIVITY_FIELD_NUM_GROUPTRACK_ENABLED (FIT_CAST(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_CAST(FIT_ZONES_TARGET_FIELD_NUM, 3))
|
|
#define FIT_ZONES_TARGET_FIELD_NUM_MAX_HEART_RATE (FIT_CAST(FIT_ZONES_TARGET_FIELD_NUM, 1))
|
|
#define FIT_ZONES_TARGET_FIELD_NUM_THRESHOLD_HEART_RATE (FIT_CAST(FIT_ZONES_TARGET_FIELD_NUM, 2))
|
|
#define FIT_ZONES_TARGET_FIELD_NUM_HR_CALC_TYPE (FIT_CAST(FIT_ZONES_TARGET_FIELD_NUM, 5))
|
|
#define FIT_ZONES_TARGET_FIELD_NUM_PWR_CALC_TYPE (FIT_CAST(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_CAST(FIT_SPORT_FIELD_NUM, 3))
|
|
#define FIT_SPORT_FIELD_NUM_SPORT (FIT_CAST(FIT_SPORT_FIELD_NUM, 0))
|
|
#define FIT_SPORT_FIELD_NUM_SUB_SPORT (FIT_CAST(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_CAST(FIT_HR_ZONE_FIELD_NUM, 2))
|
|
#define FIT_HR_ZONE_FIELD_NUM_MESSAGE_INDEX (FIT_CAST(FIT_HR_ZONE_FIELD_NUM, 254))
|
|
#define FIT_HR_ZONE_FIELD_NUM_HIGH_BPM (FIT_CAST(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_CAST(FIT_SPEED_ZONE_FIELD_NUM, 1))
|
|
#define FIT_SPEED_ZONE_FIELD_NUM_MESSAGE_INDEX (FIT_CAST(FIT_SPEED_ZONE_FIELD_NUM, 254))
|
|
#define FIT_SPEED_ZONE_FIELD_NUM_HIGH_VALUE (FIT_CAST(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_CAST(FIT_CADENCE_ZONE_FIELD_NUM, 1))
|
|
#define FIT_CADENCE_ZONE_FIELD_NUM_MESSAGE_INDEX (FIT_CAST(FIT_CADENCE_ZONE_FIELD_NUM, 254))
|
|
#define FIT_CADENCE_ZONE_FIELD_NUM_HIGH_VALUE (FIT_CAST(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_CAST(FIT_POWER_ZONE_FIELD_NUM, 2))
|
|
#define FIT_POWER_ZONE_FIELD_NUM_MESSAGE_INDEX (FIT_CAST(FIT_POWER_ZONE_FIELD_NUM, 254))
|
|
#define FIT_POWER_ZONE_FIELD_NUM_HIGH_VALUE (FIT_CAST(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_CAST(FIT_MET_ZONE_FIELD_NUM, 254))
|
|
#define FIT_MET_ZONE_FIELD_NUM_CALORIES (FIT_CAST(FIT_MET_ZONE_FIELD_NUM, 2))
|
|
#define FIT_MET_ZONE_FIELD_NUM_HIGH_BPM (FIT_CAST(FIT_MET_ZONE_FIELD_NUM, 1))
|
|
#define FIT_MET_ZONE_FIELD_NUM_FAT_CALORIES (FIT_CAST(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;
|
|
|
|
// training_settings message
|
|
#define FIT_TRAINING_SETTINGS_MESG_SIZE 10
|
|
#define FIT_TRAINING_SETTINGS_MESG_DEF_SIZE 14
|
|
|
|
typedef struct
|
|
{
|
|
FIT_UINT32 target_distance; // 100 * m + 0,
|
|
FIT_UINT32 target_time; // 1 * s + 0,
|
|
FIT_UINT16 target_speed; // 1000 * m/s + 0,
|
|
} FIT_TRAINING_SETTINGS_MESG;
|
|
|
|
typedef FIT_UINT8 FIT_TRAINING_SETTINGS_FIELD_NUM;
|
|
|
|
#define FIT_TRAINING_SETTINGS_FIELD_NUM_TARGET_DISTANCE (FIT_CAST(FIT_TRAINING_SETTINGS_FIELD_NUM, 31))
|
|
#define FIT_TRAINING_SETTINGS_FIELD_NUM_TARGET_TIME (FIT_CAST(FIT_TRAINING_SETTINGS_FIELD_NUM, 33))
|
|
#define FIT_TRAINING_SETTINGS_FIELD_NUM_TARGET_SPEED (FIT_CAST(FIT_TRAINING_SETTINGS_FIELD_NUM, 32))
|
|
|
|
typedef enum
|
|
{
|
|
FIT_TRAINING_SETTINGS_MESG_TARGET_DISTANCE,
|
|
FIT_TRAINING_SETTINGS_MESG_TARGET_TIME,
|
|
FIT_TRAINING_SETTINGS_MESG_TARGET_SPEED,
|
|
FIT_TRAINING_SETTINGS_MESG_FIELDS
|
|
} FIT_TRAINING_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_TRAINING_SETTINGS_MESG_FIELDS * FIT_FIELD_DEF_SIZE];
|
|
} FIT_TRAINING_SETTINGS_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_CAST(FIT_DIVE_SETTINGS_FIELD_NUM, 0))
|
|
#define FIT_DIVE_SETTINGS_FIELD_NUM_HEART_RATE_SOURCE (FIT_CAST(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_CAST(FIT_GOAL_FIELD_NUM, 2))
|
|
#define FIT_GOAL_FIELD_NUM_END_DATE (FIT_CAST(FIT_GOAL_FIELD_NUM, 3))
|
|
#define FIT_GOAL_FIELD_NUM_VALUE (FIT_CAST(FIT_GOAL_FIELD_NUM, 5))
|
|
#define FIT_GOAL_FIELD_NUM_TARGET_VALUE (FIT_CAST(FIT_GOAL_FIELD_NUM, 7))
|
|
#define FIT_GOAL_FIELD_NUM_MESSAGE_INDEX (FIT_CAST(FIT_GOAL_FIELD_NUM, 254))
|
|
#define FIT_GOAL_FIELD_NUM_RECURRENCE_VALUE (FIT_CAST(FIT_GOAL_FIELD_NUM, 9))
|
|
#define FIT_GOAL_FIELD_NUM_SPORT (FIT_CAST(FIT_GOAL_FIELD_NUM, 0))
|
|
#define FIT_GOAL_FIELD_NUM_SUB_SPORT (FIT_CAST(FIT_GOAL_FIELD_NUM, 1))
|
|
#define FIT_GOAL_FIELD_NUM_TYPE (FIT_CAST(FIT_GOAL_FIELD_NUM, 4))
|
|
#define FIT_GOAL_FIELD_NUM_REPEAT (FIT_CAST(FIT_GOAL_FIELD_NUM, 6))
|
|
#define FIT_GOAL_FIELD_NUM_RECURRENCE (FIT_CAST(FIT_GOAL_FIELD_NUM, 8))
|
|
#define FIT_GOAL_FIELD_NUM_ENABLED (FIT_CAST(FIT_GOAL_FIELD_NUM, 10))
|
|
#define FIT_GOAL_FIELD_NUM_SOURCE (FIT_CAST(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_CAST(FIT_ACTIVITY_FIELD_NUM, 253))
|
|
#define FIT_ACTIVITY_FIELD_NUM_TOTAL_TIMER_TIME (FIT_CAST(FIT_ACTIVITY_FIELD_NUM, 0))
|
|
#define FIT_ACTIVITY_FIELD_NUM_LOCAL_TIMESTAMP (FIT_CAST(FIT_ACTIVITY_FIELD_NUM, 5))
|
|
#define FIT_ACTIVITY_FIELD_NUM_NUM_SESSIONS (FIT_CAST(FIT_ACTIVITY_FIELD_NUM, 1))
|
|
#define FIT_ACTIVITY_FIELD_NUM_TYPE (FIT_CAST(FIT_ACTIVITY_FIELD_NUM, 2))
|
|
#define FIT_ACTIVITY_FIELD_NUM_EVENT (FIT_CAST(FIT_ACTIVITY_FIELD_NUM, 3))
|
|
#define FIT_ACTIVITY_FIELD_NUM_EVENT_TYPE (FIT_CAST(FIT_ACTIVITY_FIELD_NUM, 4))
|
|
#define FIT_ACTIVITY_FIELD_NUM_EVENT_GROUP (FIT_CAST(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,
|
|
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_CAST(FIT_SESSION_FIELD_NUM, 253))
|
|
#define FIT_SESSION_FIELD_NUM_START_TIME (FIT_CAST(FIT_SESSION_FIELD_NUM, 2))
|
|
#define FIT_SESSION_FIELD_NUM_START_POSITION_LAT (FIT_CAST(FIT_SESSION_FIELD_NUM, 3))
|
|
#define FIT_SESSION_FIELD_NUM_START_POSITION_LONG (FIT_CAST(FIT_SESSION_FIELD_NUM, 4))
|
|
#define FIT_SESSION_FIELD_NUM_TOTAL_ELAPSED_TIME (FIT_CAST(FIT_SESSION_FIELD_NUM, 7))
|
|
#define FIT_SESSION_FIELD_NUM_TOTAL_TIMER_TIME (FIT_CAST(FIT_SESSION_FIELD_NUM, 8))
|
|
#define FIT_SESSION_FIELD_NUM_TOTAL_DISTANCE (FIT_CAST(FIT_SESSION_FIELD_NUM, 9))
|
|
#define FIT_SESSION_FIELD_NUM_TOTAL_CYCLES (FIT_CAST(FIT_SESSION_FIELD_NUM, 10))
|
|
#define FIT_SESSION_FIELD_NUM_NEC_LAT (FIT_CAST(FIT_SESSION_FIELD_NUM, 29))
|
|
#define FIT_SESSION_FIELD_NUM_NEC_LONG (FIT_CAST(FIT_SESSION_FIELD_NUM, 30))
|
|
#define FIT_SESSION_FIELD_NUM_SWC_LAT (FIT_CAST(FIT_SESSION_FIELD_NUM, 31))
|
|
#define FIT_SESSION_FIELD_NUM_SWC_LONG (FIT_CAST(FIT_SESSION_FIELD_NUM, 32))
|
|
#define FIT_SESSION_FIELD_NUM_END_POSITION_LAT (FIT_CAST(FIT_SESSION_FIELD_NUM, 38))
|
|
#define FIT_SESSION_FIELD_NUM_END_POSITION_LONG (FIT_CAST(FIT_SESSION_FIELD_NUM, 39))
|
|
#define FIT_SESSION_FIELD_NUM_AVG_STROKE_COUNT (FIT_CAST(FIT_SESSION_FIELD_NUM, 41))
|
|
#define FIT_SESSION_FIELD_NUM_TOTAL_WORK (FIT_CAST(FIT_SESSION_FIELD_NUM, 48))
|
|
#define FIT_SESSION_FIELD_NUM_TOTAL_MOVING_TIME (FIT_CAST(FIT_SESSION_FIELD_NUM, 59))
|
|
#define FIT_SESSION_FIELD_NUM_TIME_IN_HR_ZONE (FIT_CAST(FIT_SESSION_FIELD_NUM, 65))
|
|
#define FIT_SESSION_FIELD_NUM_TIME_IN_SPEED_ZONE (FIT_CAST(FIT_SESSION_FIELD_NUM, 66))
|
|
#define FIT_SESSION_FIELD_NUM_TIME_IN_CADENCE_ZONE (FIT_CAST(FIT_SESSION_FIELD_NUM, 67))
|
|
#define FIT_SESSION_FIELD_NUM_TIME_IN_POWER_ZONE (FIT_CAST(FIT_SESSION_FIELD_NUM, 68))
|
|
#define FIT_SESSION_FIELD_NUM_AVG_LAP_TIME (FIT_CAST(FIT_SESSION_FIELD_NUM, 69))
|
|
#define FIT_SESSION_FIELD_NUM_SPORT_PROFILE_NAME (FIT_CAST(FIT_SESSION_FIELD_NUM, 110))
|
|
#define FIT_SESSION_FIELD_NUM_ENHANCED_AVG_SPEED (FIT_CAST(FIT_SESSION_FIELD_NUM, 124))
|
|
#define FIT_SESSION_FIELD_NUM_ENHANCED_MAX_SPEED (FIT_CAST(FIT_SESSION_FIELD_NUM, 125))
|
|
#define FIT_SESSION_FIELD_NUM_ENHANCED_AVG_ALTITUDE (FIT_CAST(FIT_SESSION_FIELD_NUM, 126))
|
|
#define FIT_SESSION_FIELD_NUM_ENHANCED_MIN_ALTITUDE (FIT_CAST(FIT_SESSION_FIELD_NUM, 127))
|
|
#define FIT_SESSION_FIELD_NUM_ENHANCED_MAX_ALTITUDE (FIT_CAST(FIT_SESSION_FIELD_NUM, 128))
|
|
#define FIT_SESSION_FIELD_NUM_MESSAGE_INDEX (FIT_CAST(FIT_SESSION_FIELD_NUM, 254))
|
|
#define FIT_SESSION_FIELD_NUM_TOTAL_CALORIES (FIT_CAST(FIT_SESSION_FIELD_NUM, 11))
|
|
#define FIT_SESSION_FIELD_NUM_TOTAL_FAT_CALORIES (FIT_CAST(FIT_SESSION_FIELD_NUM, 13))
|
|
#define FIT_SESSION_FIELD_NUM_AVG_SPEED (FIT_CAST(FIT_SESSION_FIELD_NUM, 14))
|
|
#define FIT_SESSION_FIELD_NUM_MAX_SPEED (FIT_CAST(FIT_SESSION_FIELD_NUM, 15))
|
|
#define FIT_SESSION_FIELD_NUM_AVG_POWER (FIT_CAST(FIT_SESSION_FIELD_NUM, 20))
|
|
#define FIT_SESSION_FIELD_NUM_MAX_POWER (FIT_CAST(FIT_SESSION_FIELD_NUM, 21))
|
|
#define FIT_SESSION_FIELD_NUM_TOTAL_ASCENT (FIT_CAST(FIT_SESSION_FIELD_NUM, 22))
|
|
#define FIT_SESSION_FIELD_NUM_TOTAL_DESCENT (FIT_CAST(FIT_SESSION_FIELD_NUM, 23))
|
|
#define FIT_SESSION_FIELD_NUM_FIRST_LAP_INDEX (FIT_CAST(FIT_SESSION_FIELD_NUM, 25))
|
|
#define FIT_SESSION_FIELD_NUM_NUM_LAPS (FIT_CAST(FIT_SESSION_FIELD_NUM, 26))
|
|
#define FIT_SESSION_FIELD_NUM_NUM_LENGTHS (FIT_CAST(FIT_SESSION_FIELD_NUM, 33))
|
|
#define FIT_SESSION_FIELD_NUM_NORMALIZED_POWER (FIT_CAST(FIT_SESSION_FIELD_NUM, 34))
|
|
#define FIT_SESSION_FIELD_NUM_TRAINING_STRESS_SCORE (FIT_CAST(FIT_SESSION_FIELD_NUM, 35))
|
|
#define FIT_SESSION_FIELD_NUM_INTENSITY_FACTOR (FIT_CAST(FIT_SESSION_FIELD_NUM, 36))
|
|
#define FIT_SESSION_FIELD_NUM_LEFT_RIGHT_BALANCE (FIT_CAST(FIT_SESSION_FIELD_NUM, 37))
|
|
#define FIT_SESSION_FIELD_NUM_AVG_STROKE_DISTANCE (FIT_CAST(FIT_SESSION_FIELD_NUM, 42))
|
|
#define FIT_SESSION_FIELD_NUM_POOL_LENGTH (FIT_CAST(FIT_SESSION_FIELD_NUM, 44))
|
|
#define FIT_SESSION_FIELD_NUM_THRESHOLD_POWER (FIT_CAST(FIT_SESSION_FIELD_NUM, 45))
|
|
#define FIT_SESSION_FIELD_NUM_NUM_ACTIVE_LENGTHS (FIT_CAST(FIT_SESSION_FIELD_NUM, 47))
|
|
#define FIT_SESSION_FIELD_NUM_AVG_ALTITUDE (FIT_CAST(FIT_SESSION_FIELD_NUM, 49))
|
|
#define FIT_SESSION_FIELD_NUM_MAX_ALTITUDE (FIT_CAST(FIT_SESSION_FIELD_NUM, 50))
|
|
#define FIT_SESSION_FIELD_NUM_AVG_GRADE (FIT_CAST(FIT_SESSION_FIELD_NUM, 52))
|
|
#define FIT_SESSION_FIELD_NUM_AVG_POS_GRADE (FIT_CAST(FIT_SESSION_FIELD_NUM, 53))
|
|
#define FIT_SESSION_FIELD_NUM_AVG_NEG_GRADE (FIT_CAST(FIT_SESSION_FIELD_NUM, 54))
|
|
#define FIT_SESSION_FIELD_NUM_MAX_POS_GRADE (FIT_CAST(FIT_SESSION_FIELD_NUM, 55))
|
|
#define FIT_SESSION_FIELD_NUM_MAX_NEG_GRADE (FIT_CAST(FIT_SESSION_FIELD_NUM, 56))
|
|
#define FIT_SESSION_FIELD_NUM_AVG_POS_VERTICAL_SPEED (FIT_CAST(FIT_SESSION_FIELD_NUM, 60))
|
|
#define FIT_SESSION_FIELD_NUM_AVG_NEG_VERTICAL_SPEED (FIT_CAST(FIT_SESSION_FIELD_NUM, 61))
|
|
#define FIT_SESSION_FIELD_NUM_MAX_POS_VERTICAL_SPEED (FIT_CAST(FIT_SESSION_FIELD_NUM, 62))
|
|
#define FIT_SESSION_FIELD_NUM_MAX_NEG_VERTICAL_SPEED (FIT_CAST(FIT_SESSION_FIELD_NUM, 63))
|
|
#define FIT_SESSION_FIELD_NUM_BEST_LAP_INDEX (FIT_CAST(FIT_SESSION_FIELD_NUM, 70))
|
|
#define FIT_SESSION_FIELD_NUM_MIN_ALTITUDE (FIT_CAST(FIT_SESSION_FIELD_NUM, 71))
|
|
#define FIT_SESSION_FIELD_NUM_PLAYER_SCORE (FIT_CAST(FIT_SESSION_FIELD_NUM, 82))
|
|
#define FIT_SESSION_FIELD_NUM_OPPONENT_SCORE (FIT_CAST(FIT_SESSION_FIELD_NUM, 83))
|
|
#define FIT_SESSION_FIELD_NUM_STROKE_COUNT (FIT_CAST(FIT_SESSION_FIELD_NUM, 85))
|
|
#define FIT_SESSION_FIELD_NUM_ZONE_COUNT (FIT_CAST(FIT_SESSION_FIELD_NUM, 86))
|
|
#define FIT_SESSION_FIELD_NUM_MAX_BALL_SPEED (FIT_CAST(FIT_SESSION_FIELD_NUM, 87))
|
|
#define FIT_SESSION_FIELD_NUM_AVG_BALL_SPEED (FIT_CAST(FIT_SESSION_FIELD_NUM, 88))
|
|
#define FIT_SESSION_FIELD_NUM_AVG_VERTICAL_OSCILLATION (FIT_CAST(FIT_SESSION_FIELD_NUM, 89))
|
|
#define FIT_SESSION_FIELD_NUM_AVG_STANCE_TIME_PERCENT (FIT_CAST(FIT_SESSION_FIELD_NUM, 90))
|
|
#define FIT_SESSION_FIELD_NUM_AVG_STANCE_TIME (FIT_CAST(FIT_SESSION_FIELD_NUM, 91))
|
|
#define FIT_SESSION_FIELD_NUM_AVG_VAM (FIT_CAST(FIT_SESSION_FIELD_NUM, 139))
|
|
#define FIT_SESSION_FIELD_NUM_EVENT (FIT_CAST(FIT_SESSION_FIELD_NUM, 0))
|
|
#define FIT_SESSION_FIELD_NUM_EVENT_TYPE (FIT_CAST(FIT_SESSION_FIELD_NUM, 1))
|
|
#define FIT_SESSION_FIELD_NUM_SPORT (FIT_CAST(FIT_SESSION_FIELD_NUM, 5))
|
|
#define FIT_SESSION_FIELD_NUM_SUB_SPORT (FIT_CAST(FIT_SESSION_FIELD_NUM, 6))
|
|
#define FIT_SESSION_FIELD_NUM_AVG_HEART_RATE (FIT_CAST(FIT_SESSION_FIELD_NUM, 16))
|
|
#define FIT_SESSION_FIELD_NUM_MAX_HEART_RATE (FIT_CAST(FIT_SESSION_FIELD_NUM, 17))
|
|
#define FIT_SESSION_FIELD_NUM_AVG_CADENCE (FIT_CAST(FIT_SESSION_FIELD_NUM, 18))
|
|
#define FIT_SESSION_FIELD_NUM_MAX_CADENCE (FIT_CAST(FIT_SESSION_FIELD_NUM, 19))
|
|
#define FIT_SESSION_FIELD_NUM_TOTAL_TRAINING_EFFECT (FIT_CAST(FIT_SESSION_FIELD_NUM, 24))
|
|
#define FIT_SESSION_FIELD_NUM_EVENT_GROUP (FIT_CAST(FIT_SESSION_FIELD_NUM, 27))
|
|
#define FIT_SESSION_FIELD_NUM_TRIGGER (FIT_CAST(FIT_SESSION_FIELD_NUM, 28))
|
|
#define FIT_SESSION_FIELD_NUM_SWIM_STROKE (FIT_CAST(FIT_SESSION_FIELD_NUM, 43))
|
|
#define FIT_SESSION_FIELD_NUM_POOL_LENGTH_UNIT (FIT_CAST(FIT_SESSION_FIELD_NUM, 46))
|
|
#define FIT_SESSION_FIELD_NUM_GPS_ACCURACY (FIT_CAST(FIT_SESSION_FIELD_NUM, 51))
|
|
#define FIT_SESSION_FIELD_NUM_AVG_TEMPERATURE (FIT_CAST(FIT_SESSION_FIELD_NUM, 57))
|
|
#define FIT_SESSION_FIELD_NUM_MAX_TEMPERATURE (FIT_CAST(FIT_SESSION_FIELD_NUM, 58))
|
|
#define FIT_SESSION_FIELD_NUM_MIN_HEART_RATE (FIT_CAST(FIT_SESSION_FIELD_NUM, 64))
|
|
#define FIT_SESSION_FIELD_NUM_OPPONENT_NAME (FIT_CAST(FIT_SESSION_FIELD_NUM, 84))
|
|
#define FIT_SESSION_FIELD_NUM_AVG_FRACTIONAL_CADENCE (FIT_CAST(FIT_SESSION_FIELD_NUM, 92))
|
|
#define FIT_SESSION_FIELD_NUM_MAX_FRACTIONAL_CADENCE (FIT_CAST(FIT_SESSION_FIELD_NUM, 93))
|
|
#define FIT_SESSION_FIELD_NUM_TOTAL_FRACTIONAL_CYCLES (FIT_CAST(FIT_SESSION_FIELD_NUM, 94))
|
|
#define FIT_SESSION_FIELD_NUM_SPORT_INDEX (FIT_CAST(FIT_SESSION_FIELD_NUM, 111))
|
|
#define FIT_SESSION_FIELD_NUM_TOTAL_ANAEROBIC_TRAINING_EFFECT (FIT_CAST(FIT_SESSION_FIELD_NUM, 137))
|
|
#define FIT_SESSION_FIELD_NUM_MIN_TEMPERATURE (FIT_CAST(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,
|
|
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_CAST(FIT_LAP_FIELD_NUM, 253))
|
|
#define FIT_LAP_FIELD_NUM_START_TIME (FIT_CAST(FIT_LAP_FIELD_NUM, 2))
|
|
#define FIT_LAP_FIELD_NUM_START_POSITION_LAT (FIT_CAST(FIT_LAP_FIELD_NUM, 3))
|
|
#define FIT_LAP_FIELD_NUM_START_POSITION_LONG (FIT_CAST(FIT_LAP_FIELD_NUM, 4))
|
|
#define FIT_LAP_FIELD_NUM_END_POSITION_LAT (FIT_CAST(FIT_LAP_FIELD_NUM, 5))
|
|
#define FIT_LAP_FIELD_NUM_END_POSITION_LONG (FIT_CAST(FIT_LAP_FIELD_NUM, 6))
|
|
#define FIT_LAP_FIELD_NUM_TOTAL_ELAPSED_TIME (FIT_CAST(FIT_LAP_FIELD_NUM, 7))
|
|
#define FIT_LAP_FIELD_NUM_TOTAL_TIMER_TIME (FIT_CAST(FIT_LAP_FIELD_NUM, 8))
|
|
#define FIT_LAP_FIELD_NUM_TOTAL_DISTANCE (FIT_CAST(FIT_LAP_FIELD_NUM, 9))
|
|
#define FIT_LAP_FIELD_NUM_TOTAL_CYCLES (FIT_CAST(FIT_LAP_FIELD_NUM, 10))
|
|
#define FIT_LAP_FIELD_NUM_TOTAL_WORK (FIT_CAST(FIT_LAP_FIELD_NUM, 41))
|
|
#define FIT_LAP_FIELD_NUM_TOTAL_MOVING_TIME (FIT_CAST(FIT_LAP_FIELD_NUM, 52))
|
|
#define FIT_LAP_FIELD_NUM_TIME_IN_HR_ZONE (FIT_CAST(FIT_LAP_FIELD_NUM, 57))
|
|
#define FIT_LAP_FIELD_NUM_TIME_IN_SPEED_ZONE (FIT_CAST(FIT_LAP_FIELD_NUM, 58))
|
|
#define FIT_LAP_FIELD_NUM_TIME_IN_CADENCE_ZONE (FIT_CAST(FIT_LAP_FIELD_NUM, 59))
|
|
#define FIT_LAP_FIELD_NUM_TIME_IN_POWER_ZONE (FIT_CAST(FIT_LAP_FIELD_NUM, 60))
|
|
#define FIT_LAP_FIELD_NUM_ENHANCED_AVG_SPEED (FIT_CAST(FIT_LAP_FIELD_NUM, 110))
|
|
#define FIT_LAP_FIELD_NUM_ENHANCED_MAX_SPEED (FIT_CAST(FIT_LAP_FIELD_NUM, 111))
|
|
#define FIT_LAP_FIELD_NUM_ENHANCED_AVG_ALTITUDE (FIT_CAST(FIT_LAP_FIELD_NUM, 112))
|
|
#define FIT_LAP_FIELD_NUM_ENHANCED_MIN_ALTITUDE (FIT_CAST(FIT_LAP_FIELD_NUM, 113))
|
|
#define FIT_LAP_FIELD_NUM_ENHANCED_MAX_ALTITUDE (FIT_CAST(FIT_LAP_FIELD_NUM, 114))
|
|
#define FIT_LAP_FIELD_NUM_MESSAGE_INDEX (FIT_CAST(FIT_LAP_FIELD_NUM, 254))
|
|
#define FIT_LAP_FIELD_NUM_TOTAL_CALORIES (FIT_CAST(FIT_LAP_FIELD_NUM, 11))
|
|
#define FIT_LAP_FIELD_NUM_TOTAL_FAT_CALORIES (FIT_CAST(FIT_LAP_FIELD_NUM, 12))
|
|
#define FIT_LAP_FIELD_NUM_AVG_SPEED (FIT_CAST(FIT_LAP_FIELD_NUM, 13))
|
|
#define FIT_LAP_FIELD_NUM_MAX_SPEED (FIT_CAST(FIT_LAP_FIELD_NUM, 14))
|
|
#define FIT_LAP_FIELD_NUM_AVG_POWER (FIT_CAST(FIT_LAP_FIELD_NUM, 19))
|
|
#define FIT_LAP_FIELD_NUM_MAX_POWER (FIT_CAST(FIT_LAP_FIELD_NUM, 20))
|
|
#define FIT_LAP_FIELD_NUM_TOTAL_ASCENT (FIT_CAST(FIT_LAP_FIELD_NUM, 21))
|
|
#define FIT_LAP_FIELD_NUM_TOTAL_DESCENT (FIT_CAST(FIT_LAP_FIELD_NUM, 22))
|
|
#define FIT_LAP_FIELD_NUM_NUM_LENGTHS (FIT_CAST(FIT_LAP_FIELD_NUM, 32))
|
|
#define FIT_LAP_FIELD_NUM_NORMALIZED_POWER (FIT_CAST(FIT_LAP_FIELD_NUM, 33))
|
|
#define FIT_LAP_FIELD_NUM_LEFT_RIGHT_BALANCE (FIT_CAST(FIT_LAP_FIELD_NUM, 34))
|
|
#define FIT_LAP_FIELD_NUM_FIRST_LENGTH_INDEX (FIT_CAST(FIT_LAP_FIELD_NUM, 35))
|
|
#define FIT_LAP_FIELD_NUM_AVG_STROKE_DISTANCE (FIT_CAST(FIT_LAP_FIELD_NUM, 37))
|
|
#define FIT_LAP_FIELD_NUM_NUM_ACTIVE_LENGTHS (FIT_CAST(FIT_LAP_FIELD_NUM, 40))
|
|
#define FIT_LAP_FIELD_NUM_AVG_ALTITUDE (FIT_CAST(FIT_LAP_FIELD_NUM, 42))
|
|
#define FIT_LAP_FIELD_NUM_MAX_ALTITUDE (FIT_CAST(FIT_LAP_FIELD_NUM, 43))
|
|
#define FIT_LAP_FIELD_NUM_AVG_GRADE (FIT_CAST(FIT_LAP_FIELD_NUM, 45))
|
|
#define FIT_LAP_FIELD_NUM_AVG_POS_GRADE (FIT_CAST(FIT_LAP_FIELD_NUM, 46))
|
|
#define FIT_LAP_FIELD_NUM_AVG_NEG_GRADE (FIT_CAST(FIT_LAP_FIELD_NUM, 47))
|
|
#define FIT_LAP_FIELD_NUM_MAX_POS_GRADE (FIT_CAST(FIT_LAP_FIELD_NUM, 48))
|
|
#define FIT_LAP_FIELD_NUM_MAX_NEG_GRADE (FIT_CAST(FIT_LAP_FIELD_NUM, 49))
|
|
#define FIT_LAP_FIELD_NUM_AVG_POS_VERTICAL_SPEED (FIT_CAST(FIT_LAP_FIELD_NUM, 53))
|
|
#define FIT_LAP_FIELD_NUM_AVG_NEG_VERTICAL_SPEED (FIT_CAST(FIT_LAP_FIELD_NUM, 54))
|
|
#define FIT_LAP_FIELD_NUM_MAX_POS_VERTICAL_SPEED (FIT_CAST(FIT_LAP_FIELD_NUM, 55))
|
|
#define FIT_LAP_FIELD_NUM_MAX_NEG_VERTICAL_SPEED (FIT_CAST(FIT_LAP_FIELD_NUM, 56))
|
|
#define FIT_LAP_FIELD_NUM_REPETITION_NUM (FIT_CAST(FIT_LAP_FIELD_NUM, 61))
|
|
#define FIT_LAP_FIELD_NUM_MIN_ALTITUDE (FIT_CAST(FIT_LAP_FIELD_NUM, 62))
|
|
#define FIT_LAP_FIELD_NUM_WKT_STEP_INDEX (FIT_CAST(FIT_LAP_FIELD_NUM, 71))
|
|
#define FIT_LAP_FIELD_NUM_OPPONENT_SCORE (FIT_CAST(FIT_LAP_FIELD_NUM, 74))
|
|
#define FIT_LAP_FIELD_NUM_STROKE_COUNT (FIT_CAST(FIT_LAP_FIELD_NUM, 75))
|
|
#define FIT_LAP_FIELD_NUM_ZONE_COUNT (FIT_CAST(FIT_LAP_FIELD_NUM, 76))
|
|
#define FIT_LAP_FIELD_NUM_AVG_VERTICAL_OSCILLATION (FIT_CAST(FIT_LAP_FIELD_NUM, 77))
|
|
#define FIT_LAP_FIELD_NUM_AVG_STANCE_TIME_PERCENT (FIT_CAST(FIT_LAP_FIELD_NUM, 78))
|
|
#define FIT_LAP_FIELD_NUM_AVG_STANCE_TIME (FIT_CAST(FIT_LAP_FIELD_NUM, 79))
|
|
#define FIT_LAP_FIELD_NUM_PLAYER_SCORE (FIT_CAST(FIT_LAP_FIELD_NUM, 83))
|
|
#define FIT_LAP_FIELD_NUM_AVG_TOTAL_HEMOGLOBIN_CONC (FIT_CAST(FIT_LAP_FIELD_NUM, 84))
|
|
#define FIT_LAP_FIELD_NUM_MIN_TOTAL_HEMOGLOBIN_CONC (FIT_CAST(FIT_LAP_FIELD_NUM, 85))
|
|
#define FIT_LAP_FIELD_NUM_MAX_TOTAL_HEMOGLOBIN_CONC (FIT_CAST(FIT_LAP_FIELD_NUM, 86))
|
|
#define FIT_LAP_FIELD_NUM_AVG_SATURATED_HEMOGLOBIN_PERCENT (FIT_CAST(FIT_LAP_FIELD_NUM, 87))
|
|
#define FIT_LAP_FIELD_NUM_MIN_SATURATED_HEMOGLOBIN_PERCENT (FIT_CAST(FIT_LAP_FIELD_NUM, 88))
|
|
#define FIT_LAP_FIELD_NUM_MAX_SATURATED_HEMOGLOBIN_PERCENT (FIT_CAST(FIT_LAP_FIELD_NUM, 89))
|
|
#define FIT_LAP_FIELD_NUM_AVG_VAM (FIT_CAST(FIT_LAP_FIELD_NUM, 121))
|
|
#define FIT_LAP_FIELD_NUM_EVENT (FIT_CAST(FIT_LAP_FIELD_NUM, 0))
|
|
#define FIT_LAP_FIELD_NUM_EVENT_TYPE (FIT_CAST(FIT_LAP_FIELD_NUM, 1))
|
|
#define FIT_LAP_FIELD_NUM_AVG_HEART_RATE (FIT_CAST(FIT_LAP_FIELD_NUM, 15))
|
|
#define FIT_LAP_FIELD_NUM_MAX_HEART_RATE (FIT_CAST(FIT_LAP_FIELD_NUM, 16))
|
|
#define FIT_LAP_FIELD_NUM_AVG_CADENCE (FIT_CAST(FIT_LAP_FIELD_NUM, 17))
|
|
#define FIT_LAP_FIELD_NUM_MAX_CADENCE (FIT_CAST(FIT_LAP_FIELD_NUM, 18))
|
|
#define FIT_LAP_FIELD_NUM_INTENSITY (FIT_CAST(FIT_LAP_FIELD_NUM, 23))
|
|
#define FIT_LAP_FIELD_NUM_LAP_TRIGGER (FIT_CAST(FIT_LAP_FIELD_NUM, 24))
|
|
#define FIT_LAP_FIELD_NUM_SPORT (FIT_CAST(FIT_LAP_FIELD_NUM, 25))
|
|
#define FIT_LAP_FIELD_NUM_EVENT_GROUP (FIT_CAST(FIT_LAP_FIELD_NUM, 26))
|
|
#define FIT_LAP_FIELD_NUM_SWIM_STROKE (FIT_CAST(FIT_LAP_FIELD_NUM, 38))
|
|
#define FIT_LAP_FIELD_NUM_SUB_SPORT (FIT_CAST(FIT_LAP_FIELD_NUM, 39))
|
|
#define FIT_LAP_FIELD_NUM_GPS_ACCURACY (FIT_CAST(FIT_LAP_FIELD_NUM, 44))
|
|
#define FIT_LAP_FIELD_NUM_AVG_TEMPERATURE (FIT_CAST(FIT_LAP_FIELD_NUM, 50))
|
|
#define FIT_LAP_FIELD_NUM_MAX_TEMPERATURE (FIT_CAST(FIT_LAP_FIELD_NUM, 51))
|
|
#define FIT_LAP_FIELD_NUM_MIN_HEART_RATE (FIT_CAST(FIT_LAP_FIELD_NUM, 63))
|
|
#define FIT_LAP_FIELD_NUM_AVG_FRACTIONAL_CADENCE (FIT_CAST(FIT_LAP_FIELD_NUM, 80))
|
|
#define FIT_LAP_FIELD_NUM_MAX_FRACTIONAL_CADENCE (FIT_CAST(FIT_LAP_FIELD_NUM, 81))
|
|
#define FIT_LAP_FIELD_NUM_TOTAL_FRACTIONAL_CYCLES (FIT_CAST(FIT_LAP_FIELD_NUM, 82))
|
|
#define FIT_LAP_FIELD_NUM_MIN_TEMPERATURE (FIT_CAST(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_CAST(FIT_LENGTH_FIELD_NUM, 253))
|
|
#define FIT_LENGTH_FIELD_NUM_START_TIME (FIT_CAST(FIT_LENGTH_FIELD_NUM, 2))
|
|
#define FIT_LENGTH_FIELD_NUM_TOTAL_ELAPSED_TIME (FIT_CAST(FIT_LENGTH_FIELD_NUM, 3))
|
|
#define FIT_LENGTH_FIELD_NUM_TOTAL_TIMER_TIME (FIT_CAST(FIT_LENGTH_FIELD_NUM, 4))
|
|
#define FIT_LENGTH_FIELD_NUM_MESSAGE_INDEX (FIT_CAST(FIT_LENGTH_FIELD_NUM, 254))
|
|
#define FIT_LENGTH_FIELD_NUM_TOTAL_STROKES (FIT_CAST(FIT_LENGTH_FIELD_NUM, 5))
|
|
#define FIT_LENGTH_FIELD_NUM_AVG_SPEED (FIT_CAST(FIT_LENGTH_FIELD_NUM, 6))
|
|
#define FIT_LENGTH_FIELD_NUM_TOTAL_CALORIES (FIT_CAST(FIT_LENGTH_FIELD_NUM, 11))
|
|
#define FIT_LENGTH_FIELD_NUM_PLAYER_SCORE (FIT_CAST(FIT_LENGTH_FIELD_NUM, 18))
|
|
#define FIT_LENGTH_FIELD_NUM_OPPONENT_SCORE (FIT_CAST(FIT_LENGTH_FIELD_NUM, 19))
|
|
#define FIT_LENGTH_FIELD_NUM_STROKE_COUNT (FIT_CAST(FIT_LENGTH_FIELD_NUM, 20))
|
|
#define FIT_LENGTH_FIELD_NUM_ZONE_COUNT (FIT_CAST(FIT_LENGTH_FIELD_NUM, 21))
|
|
#define FIT_LENGTH_FIELD_NUM_EVENT (FIT_CAST(FIT_LENGTH_FIELD_NUM, 0))
|
|
#define FIT_LENGTH_FIELD_NUM_EVENT_TYPE (FIT_CAST(FIT_LENGTH_FIELD_NUM, 1))
|
|
#define FIT_LENGTH_FIELD_NUM_SWIM_STROKE (FIT_CAST(FIT_LENGTH_FIELD_NUM, 7))
|
|
#define FIT_LENGTH_FIELD_NUM_AVG_SWIMMING_CADENCE (FIT_CAST(FIT_LENGTH_FIELD_NUM, 9))
|
|
#define FIT_LENGTH_FIELD_NUM_EVENT_GROUP (FIT_CAST(FIT_LENGTH_FIELD_NUM, 10))
|
|
#define FIT_LENGTH_FIELD_NUM_LENGTH_TYPE (FIT_CAST(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_CAST(FIT_RECORD_FIELD_NUM, 253))
|
|
#define FIT_RECORD_FIELD_NUM_POSITION_LAT (FIT_CAST(FIT_RECORD_FIELD_NUM, 0))
|
|
#define FIT_RECORD_FIELD_NUM_POSITION_LONG (FIT_CAST(FIT_RECORD_FIELD_NUM, 1))
|
|
#define FIT_RECORD_FIELD_NUM_DISTANCE (FIT_CAST(FIT_RECORD_FIELD_NUM, 5))
|
|
#define FIT_RECORD_FIELD_NUM_TIME_FROM_COURSE (FIT_CAST(FIT_RECORD_FIELD_NUM, 11))
|
|
#define FIT_RECORD_FIELD_NUM_TOTAL_CYCLES (FIT_CAST(FIT_RECORD_FIELD_NUM, 19))
|
|
#define FIT_RECORD_FIELD_NUM_ACCUMULATED_POWER (FIT_CAST(FIT_RECORD_FIELD_NUM, 29))
|
|
#define FIT_RECORD_FIELD_NUM_ENHANCED_SPEED (FIT_CAST(FIT_RECORD_FIELD_NUM, 73))
|
|
#define FIT_RECORD_FIELD_NUM_ENHANCED_ALTITUDE (FIT_CAST(FIT_RECORD_FIELD_NUM, 78))
|
|
#define FIT_RECORD_FIELD_NUM_ALTITUDE (FIT_CAST(FIT_RECORD_FIELD_NUM, 2))
|
|
#define FIT_RECORD_FIELD_NUM_SPEED (FIT_CAST(FIT_RECORD_FIELD_NUM, 6))
|
|
#define FIT_RECORD_FIELD_NUM_POWER (FIT_CAST(FIT_RECORD_FIELD_NUM, 7))
|
|
#define FIT_RECORD_FIELD_NUM_GRADE (FIT_CAST(FIT_RECORD_FIELD_NUM, 9))
|
|
#define FIT_RECORD_FIELD_NUM_COMPRESSED_ACCUMULATED_POWER (FIT_CAST(FIT_RECORD_FIELD_NUM, 28))
|
|
#define FIT_RECORD_FIELD_NUM_VERTICAL_SPEED (FIT_CAST(FIT_RECORD_FIELD_NUM, 32))
|
|
#define FIT_RECORD_FIELD_NUM_CALORIES (FIT_CAST(FIT_RECORD_FIELD_NUM, 33))
|
|
#define FIT_RECORD_FIELD_NUM_VERTICAL_OSCILLATION (FIT_CAST(FIT_RECORD_FIELD_NUM, 39))
|
|
#define FIT_RECORD_FIELD_NUM_STANCE_TIME_PERCENT (FIT_CAST(FIT_RECORD_FIELD_NUM, 40))
|
|
#define FIT_RECORD_FIELD_NUM_STANCE_TIME (FIT_CAST(FIT_RECORD_FIELD_NUM, 41))
|
|
#define FIT_RECORD_FIELD_NUM_BALL_SPEED (FIT_CAST(FIT_RECORD_FIELD_NUM, 51))
|
|
#define FIT_RECORD_FIELD_NUM_CADENCE256 (FIT_CAST(FIT_RECORD_FIELD_NUM, 52))
|
|
#define FIT_RECORD_FIELD_NUM_TOTAL_HEMOGLOBIN_CONC (FIT_CAST(FIT_RECORD_FIELD_NUM, 54))
|
|
#define FIT_RECORD_FIELD_NUM_TOTAL_HEMOGLOBIN_CONC_MIN (FIT_CAST(FIT_RECORD_FIELD_NUM, 55))
|
|
#define FIT_RECORD_FIELD_NUM_TOTAL_HEMOGLOBIN_CONC_MAX (FIT_CAST(FIT_RECORD_FIELD_NUM, 56))
|
|
#define FIT_RECORD_FIELD_NUM_SATURATED_HEMOGLOBIN_PERCENT (FIT_CAST(FIT_RECORD_FIELD_NUM, 57))
|
|
#define FIT_RECORD_FIELD_NUM_SATURATED_HEMOGLOBIN_PERCENT_MIN (FIT_CAST(FIT_RECORD_FIELD_NUM, 58))
|
|
#define FIT_RECORD_FIELD_NUM_SATURATED_HEMOGLOBIN_PERCENT_MAX (FIT_CAST(FIT_RECORD_FIELD_NUM, 59))
|
|
#define FIT_RECORD_FIELD_NUM_HEART_RATE (FIT_CAST(FIT_RECORD_FIELD_NUM, 3))
|
|
#define FIT_RECORD_FIELD_NUM_CADENCE (FIT_CAST(FIT_RECORD_FIELD_NUM, 4))
|
|
#define FIT_RECORD_FIELD_NUM_COMPRESSED_SPEED_DISTANCE (FIT_CAST(FIT_RECORD_FIELD_NUM, 8))
|
|
#define FIT_RECORD_FIELD_NUM_RESISTANCE (FIT_CAST(FIT_RECORD_FIELD_NUM, 10))
|
|
#define FIT_RECORD_FIELD_NUM_CYCLE_LENGTH (FIT_CAST(FIT_RECORD_FIELD_NUM, 12))
|
|
#define FIT_RECORD_FIELD_NUM_TEMPERATURE (FIT_CAST(FIT_RECORD_FIELD_NUM, 13))
|
|
#define FIT_RECORD_FIELD_NUM_SPEED_1S (FIT_CAST(FIT_RECORD_FIELD_NUM, 17))
|
|
#define FIT_RECORD_FIELD_NUM_CYCLES (FIT_CAST(FIT_RECORD_FIELD_NUM, 18))
|
|
#define FIT_RECORD_FIELD_NUM_LEFT_RIGHT_BALANCE (FIT_CAST(FIT_RECORD_FIELD_NUM, 30))
|
|
#define FIT_RECORD_FIELD_NUM_GPS_ACCURACY (FIT_CAST(FIT_RECORD_FIELD_NUM, 31))
|
|
#define FIT_RECORD_FIELD_NUM_ACTIVITY_TYPE (FIT_CAST(FIT_RECORD_FIELD_NUM, 42))
|
|
#define FIT_RECORD_FIELD_NUM_LEFT_TORQUE_EFFECTIVENESS (FIT_CAST(FIT_RECORD_FIELD_NUM, 43))
|
|
#define FIT_RECORD_FIELD_NUM_RIGHT_TORQUE_EFFECTIVENESS (FIT_CAST(FIT_RECORD_FIELD_NUM, 44))
|
|
#define FIT_RECORD_FIELD_NUM_LEFT_PEDAL_SMOOTHNESS (FIT_CAST(FIT_RECORD_FIELD_NUM, 45))
|
|
#define FIT_RECORD_FIELD_NUM_RIGHT_PEDAL_SMOOTHNESS (FIT_CAST(FIT_RECORD_FIELD_NUM, 46))
|
|
#define FIT_RECORD_FIELD_NUM_COMBINED_PEDAL_SMOOTHNESS (FIT_CAST(FIT_RECORD_FIELD_NUM, 47))
|
|
#define FIT_RECORD_FIELD_NUM_TIME128 (FIT_CAST(FIT_RECORD_FIELD_NUM, 48))
|
|
#define FIT_RECORD_FIELD_NUM_STROKE_TYPE (FIT_CAST(FIT_RECORD_FIELD_NUM, 49))
|
|
#define FIT_RECORD_FIELD_NUM_ZONE (FIT_CAST(FIT_RECORD_FIELD_NUM, 50))
|
|
#define FIT_RECORD_FIELD_NUM_FRACTIONAL_CADENCE (FIT_CAST(FIT_RECORD_FIELD_NUM, 53))
|
|
#define FIT_RECORD_FIELD_NUM_DEVICE_INDEX (FIT_CAST(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_CAST(FIT_EVENT_FIELD_NUM, 253))
|
|
#define FIT_EVENT_FIELD_NUM_DATA (FIT_CAST(FIT_EVENT_FIELD_NUM, 3))
|
|
#define FIT_EVENT_FIELD_NUM_DATA16 (FIT_CAST(FIT_EVENT_FIELD_NUM, 2))
|
|
#define FIT_EVENT_FIELD_NUM_SCORE (FIT_CAST(FIT_EVENT_FIELD_NUM, 7))
|
|
#define FIT_EVENT_FIELD_NUM_OPPONENT_SCORE (FIT_CAST(FIT_EVENT_FIELD_NUM, 8))
|
|
#define FIT_EVENT_FIELD_NUM_EVENT (FIT_CAST(FIT_EVENT_FIELD_NUM, 0))
|
|
#define FIT_EVENT_FIELD_NUM_EVENT_TYPE (FIT_CAST(FIT_EVENT_FIELD_NUM, 1))
|
|
#define FIT_EVENT_FIELD_NUM_EVENT_GROUP (FIT_CAST(FIT_EVENT_FIELD_NUM, 4))
|
|
#define FIT_EVENT_FIELD_NUM_FRONT_GEAR_NUM (FIT_CAST(FIT_EVENT_FIELD_NUM, 9))
|
|
#define FIT_EVENT_FIELD_NUM_FRONT_GEAR (FIT_CAST(FIT_EVENT_FIELD_NUM, 10))
|
|
#define FIT_EVENT_FIELD_NUM_REAR_GEAR_NUM (FIT_CAST(FIT_EVENT_FIELD_NUM, 11))
|
|
#define FIT_EVENT_FIELD_NUM_REAR_GEAR (FIT_CAST(FIT_EVENT_FIELD_NUM, 12))
|
|
#define FIT_EVENT_FIELD_NUM_RADAR_THREAT_LEVEL_MAX (FIT_CAST(FIT_EVENT_FIELD_NUM, 21))
|
|
#define FIT_EVENT_FIELD_NUM_RADAR_THREAT_COUNT (FIT_CAST(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_CAST(FIT_DEVICE_INFO_FIELD_NUM, 253))
|
|
#define FIT_DEVICE_INFO_FIELD_NUM_SERIAL_NUMBER (FIT_CAST(FIT_DEVICE_INFO_FIELD_NUM, 3))
|
|
#define FIT_DEVICE_INFO_FIELD_NUM_CUM_OPERATING_TIME (FIT_CAST(FIT_DEVICE_INFO_FIELD_NUM, 7))
|
|
#define FIT_DEVICE_INFO_FIELD_NUM_PRODUCT_NAME (FIT_CAST(FIT_DEVICE_INFO_FIELD_NUM, 27))
|
|
#define FIT_DEVICE_INFO_FIELD_NUM_MANUFACTURER (FIT_CAST(FIT_DEVICE_INFO_FIELD_NUM, 2))
|
|
#define FIT_DEVICE_INFO_FIELD_NUM_PRODUCT (FIT_CAST(FIT_DEVICE_INFO_FIELD_NUM, 4))
|
|
#define FIT_DEVICE_INFO_FIELD_NUM_SOFTWARE_VERSION (FIT_CAST(FIT_DEVICE_INFO_FIELD_NUM, 5))
|
|
#define FIT_DEVICE_INFO_FIELD_NUM_BATTERY_VOLTAGE (FIT_CAST(FIT_DEVICE_INFO_FIELD_NUM, 10))
|
|
#define FIT_DEVICE_INFO_FIELD_NUM_ANT_DEVICE_NUMBER (FIT_CAST(FIT_DEVICE_INFO_FIELD_NUM, 21))
|
|
#define FIT_DEVICE_INFO_FIELD_NUM_DEVICE_INDEX (FIT_CAST(FIT_DEVICE_INFO_FIELD_NUM, 0))
|
|
#define FIT_DEVICE_INFO_FIELD_NUM_DEVICE_TYPE (FIT_CAST(FIT_DEVICE_INFO_FIELD_NUM, 1))
|
|
#define FIT_DEVICE_INFO_FIELD_NUM_HARDWARE_VERSION (FIT_CAST(FIT_DEVICE_INFO_FIELD_NUM, 6))
|
|
#define FIT_DEVICE_INFO_FIELD_NUM_BATTERY_STATUS (FIT_CAST(FIT_DEVICE_INFO_FIELD_NUM, 11))
|
|
#define FIT_DEVICE_INFO_FIELD_NUM_SENSOR_POSITION (FIT_CAST(FIT_DEVICE_INFO_FIELD_NUM, 18))
|
|
#define FIT_DEVICE_INFO_FIELD_NUM_DESCRIPTOR (FIT_CAST(FIT_DEVICE_INFO_FIELD_NUM, 19))
|
|
#define FIT_DEVICE_INFO_FIELD_NUM_ANT_TRANSMISSION_TYPE (FIT_CAST(FIT_DEVICE_INFO_FIELD_NUM, 20))
|
|
#define FIT_DEVICE_INFO_FIELD_NUM_ANT_NETWORK (FIT_CAST(FIT_DEVICE_INFO_FIELD_NUM, 22))
|
|
#define FIT_DEVICE_INFO_FIELD_NUM_SOURCE_TYPE (FIT_CAST(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_CAST(FIT_DEVICE_AUX_BATTERY_INFO_FIELD_NUM, 253))
|
|
#define FIT_DEVICE_AUX_BATTERY_INFO_FIELD_NUM_BATTERY_VOLTAGE (FIT_CAST(FIT_DEVICE_AUX_BATTERY_INFO_FIELD_NUM, 1))
|
|
#define FIT_DEVICE_AUX_BATTERY_INFO_FIELD_NUM_DEVICE_INDEX (FIT_CAST(FIT_DEVICE_AUX_BATTERY_INFO_FIELD_NUM, 0))
|
|
#define FIT_DEVICE_AUX_BATTERY_INFO_FIELD_NUM_BATTERY_STATUS (FIT_CAST(FIT_DEVICE_AUX_BATTERY_INFO_FIELD_NUM, 2))
|
|
#define FIT_DEVICE_AUX_BATTERY_INFO_FIELD_NUM_BATTERY_IDENTIFIER (FIT_CAST(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_CAST(FIT_TRAINING_FILE_FIELD_NUM, 253))
|
|
#define FIT_TRAINING_FILE_FIELD_NUM_SERIAL_NUMBER (FIT_CAST(FIT_TRAINING_FILE_FIELD_NUM, 3))
|
|
#define FIT_TRAINING_FILE_FIELD_NUM_TIME_CREATED (FIT_CAST(FIT_TRAINING_FILE_FIELD_NUM, 4))
|
|
#define FIT_TRAINING_FILE_FIELD_NUM_MANUFACTURER (FIT_CAST(FIT_TRAINING_FILE_FIELD_NUM, 1))
|
|
#define FIT_TRAINING_FILE_FIELD_NUM_PRODUCT (FIT_CAST(FIT_TRAINING_FILE_FIELD_NUM, 2))
|
|
#define FIT_TRAINING_FILE_FIELD_NUM_TYPE (FIT_CAST(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_CAST(FIT_WEATHER_CONDITIONS_FIELD_NUM, 253))
|
|
#define FIT_WEATHER_CONDITIONS_FIELD_NUM_LOCATION (FIT_CAST(FIT_WEATHER_CONDITIONS_FIELD_NUM, 8))
|
|
#define FIT_WEATHER_CONDITIONS_FIELD_NUM_OBSERVED_AT_TIME (FIT_CAST(FIT_WEATHER_CONDITIONS_FIELD_NUM, 9))
|
|
#define FIT_WEATHER_CONDITIONS_FIELD_NUM_OBSERVED_LOCATION_LAT (FIT_CAST(FIT_WEATHER_CONDITIONS_FIELD_NUM, 10))
|
|
#define FIT_WEATHER_CONDITIONS_FIELD_NUM_OBSERVED_LOCATION_LONG (FIT_CAST(FIT_WEATHER_CONDITIONS_FIELD_NUM, 11))
|
|
#define FIT_WEATHER_CONDITIONS_FIELD_NUM_WIND_DIRECTION (FIT_CAST(FIT_WEATHER_CONDITIONS_FIELD_NUM, 3))
|
|
#define FIT_WEATHER_CONDITIONS_FIELD_NUM_WIND_SPEED (FIT_CAST(FIT_WEATHER_CONDITIONS_FIELD_NUM, 4))
|
|
#define FIT_WEATHER_CONDITIONS_FIELD_NUM_WEATHER_REPORT (FIT_CAST(FIT_WEATHER_CONDITIONS_FIELD_NUM, 0))
|
|
#define FIT_WEATHER_CONDITIONS_FIELD_NUM_TEMPERATURE (FIT_CAST(FIT_WEATHER_CONDITIONS_FIELD_NUM, 1))
|
|
#define FIT_WEATHER_CONDITIONS_FIELD_NUM_CONDITION (FIT_CAST(FIT_WEATHER_CONDITIONS_FIELD_NUM, 2))
|
|
#define FIT_WEATHER_CONDITIONS_FIELD_NUM_PRECIPITATION_PROBABILITY (FIT_CAST(FIT_WEATHER_CONDITIONS_FIELD_NUM, 5))
|
|
#define FIT_WEATHER_CONDITIONS_FIELD_NUM_TEMPERATURE_FEELS_LIKE (FIT_CAST(FIT_WEATHER_CONDITIONS_FIELD_NUM, 6))
|
|
#define FIT_WEATHER_CONDITIONS_FIELD_NUM_RELATIVE_HUMIDITY (FIT_CAST(FIT_WEATHER_CONDITIONS_FIELD_NUM, 7))
|
|
#define FIT_WEATHER_CONDITIONS_FIELD_NUM_DAY_OF_WEEK (FIT_CAST(FIT_WEATHER_CONDITIONS_FIELD_NUM, 12))
|
|
#define FIT_WEATHER_CONDITIONS_FIELD_NUM_HIGH_TEMPERATURE (FIT_CAST(FIT_WEATHER_CONDITIONS_FIELD_NUM, 13))
|
|
#define FIT_WEATHER_CONDITIONS_FIELD_NUM_LOW_TEMPERATURE (FIT_CAST(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_CAST(FIT_WEATHER_ALERT_FIELD_NUM, 253))
|
|
#define FIT_WEATHER_ALERT_FIELD_NUM_REPORT_ID (FIT_CAST(FIT_WEATHER_ALERT_FIELD_NUM, 0))
|
|
#define FIT_WEATHER_ALERT_FIELD_NUM_ISSUE_TIME (FIT_CAST(FIT_WEATHER_ALERT_FIELD_NUM, 1))
|
|
#define FIT_WEATHER_ALERT_FIELD_NUM_EXPIRE_TIME (FIT_CAST(FIT_WEATHER_ALERT_FIELD_NUM, 2))
|
|
#define FIT_WEATHER_ALERT_FIELD_NUM_SEVERITY (FIT_CAST(FIT_WEATHER_ALERT_FIELD_NUM, 3))
|
|
#define FIT_WEATHER_ALERT_FIELD_NUM_TYPE (FIT_CAST(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_CAST(FIT_NMEA_SENTENCE_FIELD_NUM, 253))
|
|
#define FIT_NMEA_SENTENCE_FIELD_NUM_TIMESTAMP_MS (FIT_CAST(FIT_NMEA_SENTENCE_FIELD_NUM, 0))
|
|
#define FIT_NMEA_SENTENCE_FIELD_NUM_SENTENCE (FIT_CAST(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_CAST(FIT_AVIATION_ATTITUDE_FIELD_NUM, 253))
|
|
#define FIT_AVIATION_ATTITUDE_FIELD_NUM_SYSTEM_TIME (FIT_CAST(FIT_AVIATION_ATTITUDE_FIELD_NUM, 1))
|
|
#define FIT_AVIATION_ATTITUDE_FIELD_NUM_TIMESTAMP_MS (FIT_CAST(FIT_AVIATION_ATTITUDE_FIELD_NUM, 0))
|
|
#define FIT_AVIATION_ATTITUDE_FIELD_NUM_PITCH (FIT_CAST(FIT_AVIATION_ATTITUDE_FIELD_NUM, 2))
|
|
#define FIT_AVIATION_ATTITUDE_FIELD_NUM_ROLL (FIT_CAST(FIT_AVIATION_ATTITUDE_FIELD_NUM, 3))
|
|
#define FIT_AVIATION_ATTITUDE_FIELD_NUM_ACCEL_LATERAL (FIT_CAST(FIT_AVIATION_ATTITUDE_FIELD_NUM, 4))
|
|
#define FIT_AVIATION_ATTITUDE_FIELD_NUM_ACCEL_NORMAL (FIT_CAST(FIT_AVIATION_ATTITUDE_FIELD_NUM, 5))
|
|
#define FIT_AVIATION_ATTITUDE_FIELD_NUM_TURN_RATE (FIT_CAST(FIT_AVIATION_ATTITUDE_FIELD_NUM, 6))
|
|
#define FIT_AVIATION_ATTITUDE_FIELD_NUM_TRACK (FIT_CAST(FIT_AVIATION_ATTITUDE_FIELD_NUM, 9))
|
|
#define FIT_AVIATION_ATTITUDE_FIELD_NUM_VALIDITY (FIT_CAST(FIT_AVIATION_ATTITUDE_FIELD_NUM, 10))
|
|
#define FIT_AVIATION_ATTITUDE_FIELD_NUM_STAGE (FIT_CAST(FIT_AVIATION_ATTITUDE_FIELD_NUM, 7))
|
|
#define FIT_AVIATION_ATTITUDE_FIELD_NUM_ATTITUDE_STAGE_COMPLETE (FIT_CAST(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_CAST(FIT_VIDEO_TITLE_FIELD_NUM, 1))
|
|
#define FIT_VIDEO_TITLE_FIELD_NUM_MESSAGE_INDEX (FIT_CAST(FIT_VIDEO_TITLE_FIELD_NUM, 254))
|
|
#define FIT_VIDEO_TITLE_FIELD_NUM_MESSAGE_COUNT (FIT_CAST(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_CAST(FIT_VIDEO_DESCRIPTION_FIELD_NUM, 254))
|
|
#define FIT_VIDEO_DESCRIPTION_FIELD_NUM_MESSAGE_COUNT (FIT_CAST(FIT_VIDEO_DESCRIPTION_FIELD_NUM, 0))
|
|
#define FIT_VIDEO_DESCRIPTION_FIELD_NUM_TEXT (FIT_CAST(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_CAST(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_CAST(FIT_FIELD_DESCRIPTION_FIELD_NUM, 3))
|
|
#define FIT_FIELD_DESCRIPTION_FIELD_NUM_UNITS (FIT_CAST(FIT_FIELD_DESCRIPTION_FIELD_NUM, 8))
|
|
#define FIT_FIELD_DESCRIPTION_FIELD_NUM_FIT_BASE_UNIT_ID (FIT_CAST(FIT_FIELD_DESCRIPTION_FIELD_NUM, 13))
|
|
#define FIT_FIELD_DESCRIPTION_FIELD_NUM_NATIVE_MESG_NUM (FIT_CAST(FIT_FIELD_DESCRIPTION_FIELD_NUM, 14))
|
|
#define FIT_FIELD_DESCRIPTION_FIELD_NUM_DEVELOPER_DATA_INDEX (FIT_CAST(FIT_FIELD_DESCRIPTION_FIELD_NUM, 0))
|
|
#define FIT_FIELD_DESCRIPTION_FIELD_NUM_FIELD_DEFINITION_NUMBER (FIT_CAST(FIT_FIELD_DESCRIPTION_FIELD_NUM, 1))
|
|
#define FIT_FIELD_DESCRIPTION_FIELD_NUM_FIT_BASE_TYPE_ID (FIT_CAST(FIT_FIELD_DESCRIPTION_FIELD_NUM, 2))
|
|
#define FIT_FIELD_DESCRIPTION_FIELD_NUM_SCALE (FIT_CAST(FIT_FIELD_DESCRIPTION_FIELD_NUM, 6))
|
|
#define FIT_FIELD_DESCRIPTION_FIELD_NUM_OFFSET (FIT_CAST(FIT_FIELD_DESCRIPTION_FIELD_NUM, 7))
|
|
#define FIT_FIELD_DESCRIPTION_FIELD_NUM_NATIVE_FIELD_NUM (FIT_CAST(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_CAST(FIT_DEVELOPER_DATA_ID_FIELD_NUM, 0))
|
|
#define FIT_DEVELOPER_DATA_ID_FIELD_NUM_APPLICATION_ID (FIT_CAST(FIT_DEVELOPER_DATA_ID_FIELD_NUM, 1))
|
|
#define FIT_DEVELOPER_DATA_ID_FIELD_NUM_APPLICATION_VERSION (FIT_CAST(FIT_DEVELOPER_DATA_ID_FIELD_NUM, 4))
|
|
#define FIT_DEVELOPER_DATA_ID_FIELD_NUM_MANUFACTURER_ID (FIT_CAST(FIT_DEVELOPER_DATA_ID_FIELD_NUM, 2))
|
|
#define FIT_DEVELOPER_DATA_ID_FIELD_NUM_DEVELOPER_DATA_INDEX (FIT_CAST(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_CAST(FIT_COURSE_FIELD_NUM, 5))
|
|
#define FIT_COURSE_FIELD_NUM_CAPABILITIES (FIT_CAST(FIT_COURSE_FIELD_NUM, 6))
|
|
#define FIT_COURSE_FIELD_NUM_SPORT (FIT_CAST(FIT_COURSE_FIELD_NUM, 4))
|
|
#define FIT_COURSE_FIELD_NUM_SUB_SPORT (FIT_CAST(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_CAST(FIT_COURSE_POINT_FIELD_NUM, 1))
|
|
#define FIT_COURSE_POINT_FIELD_NUM_POSITION_LAT (FIT_CAST(FIT_COURSE_POINT_FIELD_NUM, 2))
|
|
#define FIT_COURSE_POINT_FIELD_NUM_POSITION_LONG (FIT_CAST(FIT_COURSE_POINT_FIELD_NUM, 3))
|
|
#define FIT_COURSE_POINT_FIELD_NUM_DISTANCE (FIT_CAST(FIT_COURSE_POINT_FIELD_NUM, 4))
|
|
#define FIT_COURSE_POINT_FIELD_NUM_NAME (FIT_CAST(FIT_COURSE_POINT_FIELD_NUM, 6))
|
|
#define FIT_COURSE_POINT_FIELD_NUM_MESSAGE_INDEX (FIT_CAST(FIT_COURSE_POINT_FIELD_NUM, 254))
|
|
#define FIT_COURSE_POINT_FIELD_NUM_TYPE (FIT_CAST(FIT_COURSE_POINT_FIELD_NUM, 5))
|
|
#define FIT_COURSE_POINT_FIELD_NUM_FAVORITE (FIT_CAST(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_CAST(FIT_SEGMENT_ID_FIELD_NUM, 4))
|
|
#define FIT_SEGMENT_ID_FIELD_NUM_DEVICE_ID (FIT_CAST(FIT_SEGMENT_ID_FIELD_NUM, 5))
|
|
#define FIT_SEGMENT_ID_FIELD_NUM_NAME (FIT_CAST(FIT_SEGMENT_ID_FIELD_NUM, 0))
|
|
#define FIT_SEGMENT_ID_FIELD_NUM_UUID (FIT_CAST(FIT_SEGMENT_ID_FIELD_NUM, 1))
|
|
#define FIT_SEGMENT_ID_FIELD_NUM_SPORT (FIT_CAST(FIT_SEGMENT_ID_FIELD_NUM, 2))
|
|
#define FIT_SEGMENT_ID_FIELD_NUM_ENABLED (FIT_CAST(FIT_SEGMENT_ID_FIELD_NUM, 3))
|
|
#define FIT_SEGMENT_ID_FIELD_NUM_DEFAULT_RACE_LEADER (FIT_CAST(FIT_SEGMENT_ID_FIELD_NUM, 6))
|
|
#define FIT_SEGMENT_ID_FIELD_NUM_DELETE_STATUS (FIT_CAST(FIT_SEGMENT_ID_FIELD_NUM, 7))
|
|
#define FIT_SEGMENT_ID_FIELD_NUM_SELECTION_TYPE (FIT_CAST(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_CAST(FIT_SEGMENT_LEADERBOARD_ENTRY_FIELD_NUM, 2))
|
|
#define FIT_SEGMENT_LEADERBOARD_ENTRY_FIELD_NUM_ACTIVITY_ID (FIT_CAST(FIT_SEGMENT_LEADERBOARD_ENTRY_FIELD_NUM, 3))
|
|
#define FIT_SEGMENT_LEADERBOARD_ENTRY_FIELD_NUM_SEGMENT_TIME (FIT_CAST(FIT_SEGMENT_LEADERBOARD_ENTRY_FIELD_NUM, 4))
|
|
#define FIT_SEGMENT_LEADERBOARD_ENTRY_FIELD_NUM_MESSAGE_INDEX (FIT_CAST(FIT_SEGMENT_LEADERBOARD_ENTRY_FIELD_NUM, 254))
|
|
#define FIT_SEGMENT_LEADERBOARD_ENTRY_FIELD_NUM_NAME (FIT_CAST(FIT_SEGMENT_LEADERBOARD_ENTRY_FIELD_NUM, 0))
|
|
#define FIT_SEGMENT_LEADERBOARD_ENTRY_FIELD_NUM_TYPE (FIT_CAST(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_CAST(FIT_SEGMENT_POINT_FIELD_NUM, 1))
|
|
#define FIT_SEGMENT_POINT_FIELD_NUM_POSITION_LONG (FIT_CAST(FIT_SEGMENT_POINT_FIELD_NUM, 2))
|
|
#define FIT_SEGMENT_POINT_FIELD_NUM_DISTANCE (FIT_CAST(FIT_SEGMENT_POINT_FIELD_NUM, 3))
|
|
#define FIT_SEGMENT_POINT_FIELD_NUM_LEADER_TIME (FIT_CAST(FIT_SEGMENT_POINT_FIELD_NUM, 5))
|
|
#define FIT_SEGMENT_POINT_FIELD_NUM_MESSAGE_INDEX (FIT_CAST(FIT_SEGMENT_POINT_FIELD_NUM, 254))
|
|
#define FIT_SEGMENT_POINT_FIELD_NUM_ALTITUDE (FIT_CAST(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,
|
|
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_CAST(FIT_SEGMENT_LAP_FIELD_NUM, 253))
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_START_TIME (FIT_CAST(FIT_SEGMENT_LAP_FIELD_NUM, 2))
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_START_POSITION_LAT (FIT_CAST(FIT_SEGMENT_LAP_FIELD_NUM, 3))
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_START_POSITION_LONG (FIT_CAST(FIT_SEGMENT_LAP_FIELD_NUM, 4))
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_END_POSITION_LAT (FIT_CAST(FIT_SEGMENT_LAP_FIELD_NUM, 5))
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_END_POSITION_LONG (FIT_CAST(FIT_SEGMENT_LAP_FIELD_NUM, 6))
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_TOTAL_ELAPSED_TIME (FIT_CAST(FIT_SEGMENT_LAP_FIELD_NUM, 7))
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_TOTAL_TIMER_TIME (FIT_CAST(FIT_SEGMENT_LAP_FIELD_NUM, 8))
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_TOTAL_DISTANCE (FIT_CAST(FIT_SEGMENT_LAP_FIELD_NUM, 9))
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_TOTAL_CYCLES (FIT_CAST(FIT_SEGMENT_LAP_FIELD_NUM, 10))
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_NEC_LAT (FIT_CAST(FIT_SEGMENT_LAP_FIELD_NUM, 25))
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_NEC_LONG (FIT_CAST(FIT_SEGMENT_LAP_FIELD_NUM, 26))
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_SWC_LAT (FIT_CAST(FIT_SEGMENT_LAP_FIELD_NUM, 27))
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_SWC_LONG (FIT_CAST(FIT_SEGMENT_LAP_FIELD_NUM, 28))
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_NAME (FIT_CAST(FIT_SEGMENT_LAP_FIELD_NUM, 29))
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_TOTAL_WORK (FIT_CAST(FIT_SEGMENT_LAP_FIELD_NUM, 33))
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_TOTAL_MOVING_TIME (FIT_CAST(FIT_SEGMENT_LAP_FIELD_NUM, 44))
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_TIME_IN_HR_ZONE (FIT_CAST(FIT_SEGMENT_LAP_FIELD_NUM, 49))
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_TIME_IN_SPEED_ZONE (FIT_CAST(FIT_SEGMENT_LAP_FIELD_NUM, 50))
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_TIME_IN_CADENCE_ZONE (FIT_CAST(FIT_SEGMENT_LAP_FIELD_NUM, 51))
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_TIME_IN_POWER_ZONE (FIT_CAST(FIT_SEGMENT_LAP_FIELD_NUM, 52))
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_ACTIVE_TIME (FIT_CAST(FIT_SEGMENT_LAP_FIELD_NUM, 56))
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_MESSAGE_INDEX (FIT_CAST(FIT_SEGMENT_LAP_FIELD_NUM, 254))
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_TOTAL_CALORIES (FIT_CAST(FIT_SEGMENT_LAP_FIELD_NUM, 11))
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_TOTAL_FAT_CALORIES (FIT_CAST(FIT_SEGMENT_LAP_FIELD_NUM, 12))
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_AVG_SPEED (FIT_CAST(FIT_SEGMENT_LAP_FIELD_NUM, 13))
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_MAX_SPEED (FIT_CAST(FIT_SEGMENT_LAP_FIELD_NUM, 14))
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_AVG_POWER (FIT_CAST(FIT_SEGMENT_LAP_FIELD_NUM, 19))
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_MAX_POWER (FIT_CAST(FIT_SEGMENT_LAP_FIELD_NUM, 20))
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_TOTAL_ASCENT (FIT_CAST(FIT_SEGMENT_LAP_FIELD_NUM, 21))
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_TOTAL_DESCENT (FIT_CAST(FIT_SEGMENT_LAP_FIELD_NUM, 22))
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_NORMALIZED_POWER (FIT_CAST(FIT_SEGMENT_LAP_FIELD_NUM, 30))
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_LEFT_RIGHT_BALANCE (FIT_CAST(FIT_SEGMENT_LAP_FIELD_NUM, 31))
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_AVG_ALTITUDE (FIT_CAST(FIT_SEGMENT_LAP_FIELD_NUM, 34))
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_MAX_ALTITUDE (FIT_CAST(FIT_SEGMENT_LAP_FIELD_NUM, 35))
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_AVG_GRADE (FIT_CAST(FIT_SEGMENT_LAP_FIELD_NUM, 37))
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_AVG_POS_GRADE (FIT_CAST(FIT_SEGMENT_LAP_FIELD_NUM, 38))
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_AVG_NEG_GRADE (FIT_CAST(FIT_SEGMENT_LAP_FIELD_NUM, 39))
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_MAX_POS_GRADE (FIT_CAST(FIT_SEGMENT_LAP_FIELD_NUM, 40))
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_MAX_NEG_GRADE (FIT_CAST(FIT_SEGMENT_LAP_FIELD_NUM, 41))
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_AVG_POS_VERTICAL_SPEED (FIT_CAST(FIT_SEGMENT_LAP_FIELD_NUM, 45))
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_AVG_NEG_VERTICAL_SPEED (FIT_CAST(FIT_SEGMENT_LAP_FIELD_NUM, 46))
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_MAX_POS_VERTICAL_SPEED (FIT_CAST(FIT_SEGMENT_LAP_FIELD_NUM, 47))
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_MAX_NEG_VERTICAL_SPEED (FIT_CAST(FIT_SEGMENT_LAP_FIELD_NUM, 48))
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_REPETITION_NUM (FIT_CAST(FIT_SEGMENT_LAP_FIELD_NUM, 53))
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_MIN_ALTITUDE (FIT_CAST(FIT_SEGMENT_LAP_FIELD_NUM, 54))
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_WKT_STEP_INDEX (FIT_CAST(FIT_SEGMENT_LAP_FIELD_NUM, 57))
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_FRONT_GEAR_SHIFT_COUNT (FIT_CAST(FIT_SEGMENT_LAP_FIELD_NUM, 69))
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_REAR_GEAR_SHIFT_COUNT (FIT_CAST(FIT_SEGMENT_LAP_FIELD_NUM, 70))
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_EVENT (FIT_CAST(FIT_SEGMENT_LAP_FIELD_NUM, 0))
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_EVENT_TYPE (FIT_CAST(FIT_SEGMENT_LAP_FIELD_NUM, 1))
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_AVG_HEART_RATE (FIT_CAST(FIT_SEGMENT_LAP_FIELD_NUM, 15))
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_MAX_HEART_RATE (FIT_CAST(FIT_SEGMENT_LAP_FIELD_NUM, 16))
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_AVG_CADENCE (FIT_CAST(FIT_SEGMENT_LAP_FIELD_NUM, 17))
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_MAX_CADENCE (FIT_CAST(FIT_SEGMENT_LAP_FIELD_NUM, 18))
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_SPORT (FIT_CAST(FIT_SEGMENT_LAP_FIELD_NUM, 23))
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_EVENT_GROUP (FIT_CAST(FIT_SEGMENT_LAP_FIELD_NUM, 24))
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_SUB_SPORT (FIT_CAST(FIT_SEGMENT_LAP_FIELD_NUM, 32))
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_GPS_ACCURACY (FIT_CAST(FIT_SEGMENT_LAP_FIELD_NUM, 36))
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_AVG_TEMPERATURE (FIT_CAST(FIT_SEGMENT_LAP_FIELD_NUM, 42))
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_MAX_TEMPERATURE (FIT_CAST(FIT_SEGMENT_LAP_FIELD_NUM, 43))
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_MIN_HEART_RATE (FIT_CAST(FIT_SEGMENT_LAP_FIELD_NUM, 55))
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_SPORT_EVENT (FIT_CAST(FIT_SEGMENT_LAP_FIELD_NUM, 58))
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_AVG_LEFT_TORQUE_EFFECTIVENESS (FIT_CAST(FIT_SEGMENT_LAP_FIELD_NUM, 59))
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_AVG_RIGHT_TORQUE_EFFECTIVENESS (FIT_CAST(FIT_SEGMENT_LAP_FIELD_NUM, 60))
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_AVG_LEFT_PEDAL_SMOOTHNESS (FIT_CAST(FIT_SEGMENT_LAP_FIELD_NUM, 61))
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_AVG_RIGHT_PEDAL_SMOOTHNESS (FIT_CAST(FIT_SEGMENT_LAP_FIELD_NUM, 62))
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_AVG_COMBINED_PEDAL_SMOOTHNESS (FIT_CAST(FIT_SEGMENT_LAP_FIELD_NUM, 63))
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_STATUS (FIT_CAST(FIT_SEGMENT_LAP_FIELD_NUM, 64))
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_UUID (FIT_CAST(FIT_SEGMENT_LAP_FIELD_NUM, 65))
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_AVG_FRACTIONAL_CADENCE (FIT_CAST(FIT_SEGMENT_LAP_FIELD_NUM, 66))
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_MAX_FRACTIONAL_CADENCE (FIT_CAST(FIT_SEGMENT_LAP_FIELD_NUM, 67))
|
|
#define FIT_SEGMENT_LAP_FIELD_NUM_TOTAL_FRACTIONAL_CYCLES (FIT_CAST(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_CAST(FIT_SEGMENT_FILE_FIELD_NUM, 4))
|
|
#define FIT_SEGMENT_FILE_FIELD_NUM_LEADER_GROUP_PRIMARY_KEY (FIT_CAST(FIT_SEGMENT_FILE_FIELD_NUM, 8))
|
|
#define FIT_SEGMENT_FILE_FIELD_NUM_LEADER_ACTIVITY_ID (FIT_CAST(FIT_SEGMENT_FILE_FIELD_NUM, 9))
|
|
#define FIT_SEGMENT_FILE_FIELD_NUM_MESSAGE_INDEX (FIT_CAST(FIT_SEGMENT_FILE_FIELD_NUM, 254))
|
|
#define FIT_SEGMENT_FILE_FIELD_NUM_FILE_UUID (FIT_CAST(FIT_SEGMENT_FILE_FIELD_NUM, 1))
|
|
#define FIT_SEGMENT_FILE_FIELD_NUM_ENABLED (FIT_CAST(FIT_SEGMENT_FILE_FIELD_NUM, 3))
|
|
#define FIT_SEGMENT_FILE_FIELD_NUM_LEADER_TYPE (FIT_CAST(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_CAST(FIT_WORKOUT_FIELD_NUM, 5))
|
|
#define FIT_WORKOUT_FIELD_NUM_WKT_NAME (FIT_CAST(FIT_WORKOUT_FIELD_NUM, 8))
|
|
#define FIT_WORKOUT_FIELD_NUM_MESSAGE_INDEX (FIT_CAST(FIT_WORKOUT_FIELD_NUM, 254))
|
|
#define FIT_WORKOUT_FIELD_NUM_NUM_VALID_STEPS (FIT_CAST(FIT_WORKOUT_FIELD_NUM, 6))
|
|
#define FIT_WORKOUT_FIELD_NUM_POOL_LENGTH (FIT_CAST(FIT_WORKOUT_FIELD_NUM, 14))
|
|
#define FIT_WORKOUT_FIELD_NUM_SPORT (FIT_CAST(FIT_WORKOUT_FIELD_NUM, 4))
|
|
#define FIT_WORKOUT_FIELD_NUM_SUB_SPORT (FIT_CAST(FIT_WORKOUT_FIELD_NUM, 11))
|
|
#define FIT_WORKOUT_FIELD_NUM_POOL_LENGTH_UNIT (FIT_CAST(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_CAST(FIT_WORKOUT_SESSION_FIELD_NUM, 254))
|
|
#define FIT_WORKOUT_SESSION_FIELD_NUM_NUM_VALID_STEPS (FIT_CAST(FIT_WORKOUT_SESSION_FIELD_NUM, 2))
|
|
#define FIT_WORKOUT_SESSION_FIELD_NUM_FIRST_STEP_INDEX (FIT_CAST(FIT_WORKOUT_SESSION_FIELD_NUM, 3))
|
|
#define FIT_WORKOUT_SESSION_FIELD_NUM_POOL_LENGTH (FIT_CAST(FIT_WORKOUT_SESSION_FIELD_NUM, 4))
|
|
#define FIT_WORKOUT_SESSION_FIELD_NUM_SPORT (FIT_CAST(FIT_WORKOUT_SESSION_FIELD_NUM, 0))
|
|
#define FIT_WORKOUT_SESSION_FIELD_NUM_SUB_SPORT (FIT_CAST(FIT_WORKOUT_SESSION_FIELD_NUM, 1))
|
|
#define FIT_WORKOUT_SESSION_FIELD_NUM_POOL_LENGTH_UNIT (FIT_CAST(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_CAST(FIT_WORKOUT_STEP_FIELD_NUM, 0))
|
|
#define FIT_WORKOUT_STEP_FIELD_NUM_DURATION_VALUE (FIT_CAST(FIT_WORKOUT_STEP_FIELD_NUM, 2))
|
|
#define FIT_WORKOUT_STEP_FIELD_NUM_TARGET_VALUE (FIT_CAST(FIT_WORKOUT_STEP_FIELD_NUM, 4))
|
|
#define FIT_WORKOUT_STEP_FIELD_NUM_CUSTOM_TARGET_VALUE_LOW (FIT_CAST(FIT_WORKOUT_STEP_FIELD_NUM, 5))
|
|
#define FIT_WORKOUT_STEP_FIELD_NUM_CUSTOM_TARGET_VALUE_HIGH (FIT_CAST(FIT_WORKOUT_STEP_FIELD_NUM, 6))
|
|
#define FIT_WORKOUT_STEP_FIELD_NUM_SECONDARY_TARGET_VALUE (FIT_CAST(FIT_WORKOUT_STEP_FIELD_NUM, 20))
|
|
#define FIT_WORKOUT_STEP_FIELD_NUM_SECONDARY_CUSTOM_TARGET_VALUE_LOW (FIT_CAST(FIT_WORKOUT_STEP_FIELD_NUM, 21))
|
|
#define FIT_WORKOUT_STEP_FIELD_NUM_SECONDARY_CUSTOM_TARGET_VALUE_HIGH (FIT_CAST(FIT_WORKOUT_STEP_FIELD_NUM, 22))
|
|
#define FIT_WORKOUT_STEP_FIELD_NUM_MESSAGE_INDEX (FIT_CAST(FIT_WORKOUT_STEP_FIELD_NUM, 254))
|
|
#define FIT_WORKOUT_STEP_FIELD_NUM_EXERCISE_CATEGORY (FIT_CAST(FIT_WORKOUT_STEP_FIELD_NUM, 10))
|
|
#define FIT_WORKOUT_STEP_FIELD_NUM_DURATION_TYPE (FIT_CAST(FIT_WORKOUT_STEP_FIELD_NUM, 1))
|
|
#define FIT_WORKOUT_STEP_FIELD_NUM_TARGET_TYPE (FIT_CAST(FIT_WORKOUT_STEP_FIELD_NUM, 3))
|
|
#define FIT_WORKOUT_STEP_FIELD_NUM_INTENSITY (FIT_CAST(FIT_WORKOUT_STEP_FIELD_NUM, 7))
|
|
#define FIT_WORKOUT_STEP_FIELD_NUM_NOTES (FIT_CAST(FIT_WORKOUT_STEP_FIELD_NUM, 8))
|
|
#define FIT_WORKOUT_STEP_FIELD_NUM_EQUIPMENT (FIT_CAST(FIT_WORKOUT_STEP_FIELD_NUM, 9))
|
|
#define FIT_WORKOUT_STEP_FIELD_NUM_SECONDARY_TARGET_TYPE (FIT_CAST(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_CAST(FIT_EXERCISE_TITLE_FIELD_NUM, 2))
|
|
#define FIT_EXERCISE_TITLE_FIELD_NUM_MESSAGE_INDEX (FIT_CAST(FIT_EXERCISE_TITLE_FIELD_NUM, 254))
|
|
#define FIT_EXERCISE_TITLE_FIELD_NUM_EXERCISE_CATEGORY (FIT_CAST(FIT_EXERCISE_TITLE_FIELD_NUM, 0))
|
|
#define FIT_EXERCISE_TITLE_FIELD_NUM_EXERCISE_NAME (FIT_CAST(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_CAST(FIT_SCHEDULE_FIELD_NUM, 2))
|
|
#define FIT_SCHEDULE_FIELD_NUM_TIME_CREATED (FIT_CAST(FIT_SCHEDULE_FIELD_NUM, 3))
|
|
#define FIT_SCHEDULE_FIELD_NUM_SCHEDULED_TIME (FIT_CAST(FIT_SCHEDULE_FIELD_NUM, 6))
|
|
#define FIT_SCHEDULE_FIELD_NUM_MANUFACTURER (FIT_CAST(FIT_SCHEDULE_FIELD_NUM, 0))
|
|
#define FIT_SCHEDULE_FIELD_NUM_PRODUCT (FIT_CAST(FIT_SCHEDULE_FIELD_NUM, 1))
|
|
#define FIT_SCHEDULE_FIELD_NUM_COMPLETED (FIT_CAST(FIT_SCHEDULE_FIELD_NUM, 4))
|
|
#define FIT_SCHEDULE_FIELD_NUM_TYPE (FIT_CAST(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_CAST(FIT_TOTALS_FIELD_NUM, 253))
|
|
#define FIT_TOTALS_FIELD_NUM_TIMER_TIME (FIT_CAST(FIT_TOTALS_FIELD_NUM, 0))
|
|
#define FIT_TOTALS_FIELD_NUM_DISTANCE (FIT_CAST(FIT_TOTALS_FIELD_NUM, 1))
|
|
#define FIT_TOTALS_FIELD_NUM_CALORIES (FIT_CAST(FIT_TOTALS_FIELD_NUM, 2))
|
|
#define FIT_TOTALS_FIELD_NUM_ELAPSED_TIME (FIT_CAST(FIT_TOTALS_FIELD_NUM, 4))
|
|
#define FIT_TOTALS_FIELD_NUM_ACTIVE_TIME (FIT_CAST(FIT_TOTALS_FIELD_NUM, 6))
|
|
#define FIT_TOTALS_FIELD_NUM_MESSAGE_INDEX (FIT_CAST(FIT_TOTALS_FIELD_NUM, 254))
|
|
#define FIT_TOTALS_FIELD_NUM_SESSIONS (FIT_CAST(FIT_TOTALS_FIELD_NUM, 5))
|
|
#define FIT_TOTALS_FIELD_NUM_SPORT (FIT_CAST(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_CAST(FIT_WEIGHT_SCALE_FIELD_NUM, 253))
|
|
#define FIT_WEIGHT_SCALE_FIELD_NUM_WEIGHT (FIT_CAST(FIT_WEIGHT_SCALE_FIELD_NUM, 0))
|
|
#define FIT_WEIGHT_SCALE_FIELD_NUM_PERCENT_FAT (FIT_CAST(FIT_WEIGHT_SCALE_FIELD_NUM, 1))
|
|
#define FIT_WEIGHT_SCALE_FIELD_NUM_PERCENT_HYDRATION (FIT_CAST(FIT_WEIGHT_SCALE_FIELD_NUM, 2))
|
|
#define FIT_WEIGHT_SCALE_FIELD_NUM_VISCERAL_FAT_MASS (FIT_CAST(FIT_WEIGHT_SCALE_FIELD_NUM, 3))
|
|
#define FIT_WEIGHT_SCALE_FIELD_NUM_BONE_MASS (FIT_CAST(FIT_WEIGHT_SCALE_FIELD_NUM, 4))
|
|
#define FIT_WEIGHT_SCALE_FIELD_NUM_MUSCLE_MASS (FIT_CAST(FIT_WEIGHT_SCALE_FIELD_NUM, 5))
|
|
#define FIT_WEIGHT_SCALE_FIELD_NUM_BASAL_MET (FIT_CAST(FIT_WEIGHT_SCALE_FIELD_NUM, 7))
|
|
#define FIT_WEIGHT_SCALE_FIELD_NUM_ACTIVE_MET (FIT_CAST(FIT_WEIGHT_SCALE_FIELD_NUM, 9))
|
|
#define FIT_WEIGHT_SCALE_FIELD_NUM_USER_PROFILE_INDEX (FIT_CAST(FIT_WEIGHT_SCALE_FIELD_NUM, 12))
|
|
#define FIT_WEIGHT_SCALE_FIELD_NUM_BMI (FIT_CAST(FIT_WEIGHT_SCALE_FIELD_NUM, 13))
|
|
#define FIT_WEIGHT_SCALE_FIELD_NUM_PHYSIQUE_RATING (FIT_CAST(FIT_WEIGHT_SCALE_FIELD_NUM, 8))
|
|
#define FIT_WEIGHT_SCALE_FIELD_NUM_METABOLIC_AGE (FIT_CAST(FIT_WEIGHT_SCALE_FIELD_NUM, 10))
|
|
#define FIT_WEIGHT_SCALE_FIELD_NUM_VISCERAL_FAT_RATING (FIT_CAST(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_CAST(FIT_BLOOD_PRESSURE_FIELD_NUM, 253))
|
|
#define FIT_BLOOD_PRESSURE_FIELD_NUM_SYSTOLIC_PRESSURE (FIT_CAST(FIT_BLOOD_PRESSURE_FIELD_NUM, 0))
|
|
#define FIT_BLOOD_PRESSURE_FIELD_NUM_DIASTOLIC_PRESSURE (FIT_CAST(FIT_BLOOD_PRESSURE_FIELD_NUM, 1))
|
|
#define FIT_BLOOD_PRESSURE_FIELD_NUM_MEAN_ARTERIAL_PRESSURE (FIT_CAST(FIT_BLOOD_PRESSURE_FIELD_NUM, 2))
|
|
#define FIT_BLOOD_PRESSURE_FIELD_NUM_MAP_3_SAMPLE_MEAN (FIT_CAST(FIT_BLOOD_PRESSURE_FIELD_NUM, 3))
|
|
#define FIT_BLOOD_PRESSURE_FIELD_NUM_MAP_MORNING_VALUES (FIT_CAST(FIT_BLOOD_PRESSURE_FIELD_NUM, 4))
|
|
#define FIT_BLOOD_PRESSURE_FIELD_NUM_MAP_EVENING_VALUES (FIT_CAST(FIT_BLOOD_PRESSURE_FIELD_NUM, 5))
|
|
#define FIT_BLOOD_PRESSURE_FIELD_NUM_USER_PROFILE_INDEX (FIT_CAST(FIT_BLOOD_PRESSURE_FIELD_NUM, 9))
|
|
#define FIT_BLOOD_PRESSURE_FIELD_NUM_HEART_RATE (FIT_CAST(FIT_BLOOD_PRESSURE_FIELD_NUM, 6))
|
|
#define FIT_BLOOD_PRESSURE_FIELD_NUM_HEART_RATE_TYPE (FIT_CAST(FIT_BLOOD_PRESSURE_FIELD_NUM, 7))
|
|
#define FIT_BLOOD_PRESSURE_FIELD_NUM_STATUS (FIT_CAST(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_CAST(FIT_MONITORING_INFO_FIELD_NUM, 253))
|
|
#define FIT_MONITORING_INFO_FIELD_NUM_LOCAL_TIMESTAMP (FIT_CAST(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_CAST(FIT_MONITORING_FIELD_NUM, 253))
|
|
#define FIT_MONITORING_FIELD_NUM_DISTANCE (FIT_CAST(FIT_MONITORING_FIELD_NUM, 2))
|
|
#define FIT_MONITORING_FIELD_NUM_CYCLES (FIT_CAST(FIT_MONITORING_FIELD_NUM, 3))
|
|
#define FIT_MONITORING_FIELD_NUM_ACTIVE_TIME (FIT_CAST(FIT_MONITORING_FIELD_NUM, 4))
|
|
#define FIT_MONITORING_FIELD_NUM_LOCAL_TIMESTAMP (FIT_CAST(FIT_MONITORING_FIELD_NUM, 11))
|
|
#define FIT_MONITORING_FIELD_NUM_CALORIES (FIT_CAST(FIT_MONITORING_FIELD_NUM, 1))
|
|
#define FIT_MONITORING_FIELD_NUM_DISTANCE_16 (FIT_CAST(FIT_MONITORING_FIELD_NUM, 8))
|
|
#define FIT_MONITORING_FIELD_NUM_CYCLES_16 (FIT_CAST(FIT_MONITORING_FIELD_NUM, 9))
|
|
#define FIT_MONITORING_FIELD_NUM_ACTIVE_TIME_16 (FIT_CAST(FIT_MONITORING_FIELD_NUM, 10))
|
|
#define FIT_MONITORING_FIELD_NUM_DEVICE_INDEX (FIT_CAST(FIT_MONITORING_FIELD_NUM, 0))
|
|
#define FIT_MONITORING_FIELD_NUM_ACTIVITY_TYPE (FIT_CAST(FIT_MONITORING_FIELD_NUM, 5))
|
|
#define FIT_MONITORING_FIELD_NUM_ACTIVITY_SUBTYPE (FIT_CAST(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_CAST(FIT_MONITORING_HR_DATA_FIELD_NUM, 253))
|
|
#define FIT_MONITORING_HR_DATA_FIELD_NUM_RESTING_HEART_RATE (FIT_CAST(FIT_MONITORING_HR_DATA_FIELD_NUM, 0))
|
|
#define FIT_MONITORING_HR_DATA_FIELD_NUM_CURRENT_DAY_RESTING_HEART_RATE (FIT_CAST(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_CAST(FIT_HR_FIELD_NUM, 253))
|
|
#define FIT_HR_FIELD_NUM_EVENT_TIMESTAMP (FIT_CAST(FIT_HR_FIELD_NUM, 9))
|
|
#define FIT_HR_FIELD_NUM_FRACTIONAL_TIMESTAMP (FIT_CAST(FIT_HR_FIELD_NUM, 0))
|
|
#define FIT_HR_FIELD_NUM_TIME256 (FIT_CAST(FIT_HR_FIELD_NUM, 1))
|
|
#define FIT_HR_FIELD_NUM_FILTERED_BPM (FIT_CAST(FIT_HR_FIELD_NUM, 6))
|
|
#define FIT_HR_FIELD_NUM_EVENT_TIMESTAMP_12 (FIT_CAST(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_CAST(FIT_ANT_RX_FIELD_NUM, 253))
|
|
#define FIT_ANT_RX_FIELD_NUM_DATA (FIT_CAST(FIT_ANT_RX_FIELD_NUM, 4))
|
|
#define FIT_ANT_RX_FIELD_NUM_FRACTIONAL_TIMESTAMP (FIT_CAST(FIT_ANT_RX_FIELD_NUM, 0))
|
|
#define FIT_ANT_RX_FIELD_NUM_MESG_ID (FIT_CAST(FIT_ANT_RX_FIELD_NUM, 1))
|
|
#define FIT_ANT_RX_FIELD_NUM_MESG_DATA (FIT_CAST(FIT_ANT_RX_FIELD_NUM, 2))
|
|
#define FIT_ANT_RX_FIELD_NUM_CHANNEL_NUMBER (FIT_CAST(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_CAST(FIT_ANT_TX_FIELD_NUM, 253))
|
|
#define FIT_ANT_TX_FIELD_NUM_DATA (FIT_CAST(FIT_ANT_TX_FIELD_NUM, 4))
|
|
#define FIT_ANT_TX_FIELD_NUM_FRACTIONAL_TIMESTAMP (FIT_CAST(FIT_ANT_TX_FIELD_NUM, 0))
|
|
#define FIT_ANT_TX_FIELD_NUM_MESG_ID (FIT_CAST(FIT_ANT_TX_FIELD_NUM, 1))
|
|
#define FIT_ANT_TX_FIELD_NUM_MESG_DATA (FIT_CAST(FIT_ANT_TX_FIELD_NUM, 2))
|
|
#define FIT_ANT_TX_FIELD_NUM_CHANNEL_NUMBER (FIT_CAST(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_CAST(FIT_EXD_SCREEN_CONFIGURATION_FIELD_NUM, 0))
|
|
#define FIT_EXD_SCREEN_CONFIGURATION_FIELD_NUM_FIELD_COUNT (FIT_CAST(FIT_EXD_SCREEN_CONFIGURATION_FIELD_NUM, 1))
|
|
#define FIT_EXD_SCREEN_CONFIGURATION_FIELD_NUM_LAYOUT (FIT_CAST(FIT_EXD_SCREEN_CONFIGURATION_FIELD_NUM, 2))
|
|
#define FIT_EXD_SCREEN_CONFIGURATION_FIELD_NUM_SCREEN_ENABLED (FIT_CAST(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_CAST(FIT_EXD_DATA_FIELD_CONFIGURATION_FIELD_NUM, 0))
|
|
#define FIT_EXD_DATA_FIELD_CONFIGURATION_FIELD_NUM_CONCEPT_FIELD (FIT_CAST(FIT_EXD_DATA_FIELD_CONFIGURATION_FIELD_NUM, 1))
|
|
#define FIT_EXD_DATA_FIELD_CONFIGURATION_FIELD_NUM_FIELD_ID (FIT_CAST(FIT_EXD_DATA_FIELD_CONFIGURATION_FIELD_NUM, 2))
|
|
#define FIT_EXD_DATA_FIELD_CONFIGURATION_FIELD_NUM_CONCEPT_COUNT (FIT_CAST(FIT_EXD_DATA_FIELD_CONFIGURATION_FIELD_NUM, 3))
|
|
#define FIT_EXD_DATA_FIELD_CONFIGURATION_FIELD_NUM_DISPLAY_TYPE (FIT_CAST(FIT_EXD_DATA_FIELD_CONFIGURATION_FIELD_NUM, 4))
|
|
#define FIT_EXD_DATA_FIELD_CONFIGURATION_FIELD_NUM_TITLE (FIT_CAST(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_CAST(FIT_EXD_DATA_CONCEPT_CONFIGURATION_FIELD_NUM, 0))
|
|
#define FIT_EXD_DATA_CONCEPT_CONFIGURATION_FIELD_NUM_CONCEPT_FIELD (FIT_CAST(FIT_EXD_DATA_CONCEPT_CONFIGURATION_FIELD_NUM, 1))
|
|
#define FIT_EXD_DATA_CONCEPT_CONFIGURATION_FIELD_NUM_FIELD_ID (FIT_CAST(FIT_EXD_DATA_CONCEPT_CONFIGURATION_FIELD_NUM, 2))
|
|
#define FIT_EXD_DATA_CONCEPT_CONFIGURATION_FIELD_NUM_CONCEPT_INDEX (FIT_CAST(FIT_EXD_DATA_CONCEPT_CONFIGURATION_FIELD_NUM, 3))
|
|
#define FIT_EXD_DATA_CONCEPT_CONFIGURATION_FIELD_NUM_DATA_PAGE (FIT_CAST(FIT_EXD_DATA_CONCEPT_CONFIGURATION_FIELD_NUM, 4))
|
|
#define FIT_EXD_DATA_CONCEPT_CONFIGURATION_FIELD_NUM_CONCEPT_KEY (FIT_CAST(FIT_EXD_DATA_CONCEPT_CONFIGURATION_FIELD_NUM, 5))
|
|
#define FIT_EXD_DATA_CONCEPT_CONFIGURATION_FIELD_NUM_SCALING (FIT_CAST(FIT_EXD_DATA_CONCEPT_CONFIGURATION_FIELD_NUM, 6))
|
|
#define FIT_EXD_DATA_CONCEPT_CONFIGURATION_FIELD_NUM_DATA_UNITS (FIT_CAST(FIT_EXD_DATA_CONCEPT_CONFIGURATION_FIELD_NUM, 8))
|
|
#define FIT_EXD_DATA_CONCEPT_CONFIGURATION_FIELD_NUM_QUALIFIER (FIT_CAST(FIT_EXD_DATA_CONCEPT_CONFIGURATION_FIELD_NUM, 9))
|
|
#define FIT_EXD_DATA_CONCEPT_CONFIGURATION_FIELD_NUM_DESCRIPTOR (FIT_CAST(FIT_EXD_DATA_CONCEPT_CONFIGURATION_FIELD_NUM, 10))
|
|
#define FIT_EXD_DATA_CONCEPT_CONFIGURATION_FIELD_NUM_IS_SIGNED (FIT_CAST(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_CAST(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_TRAINING_SETTINGS,
|
|
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_CAST(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_CAST(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)
|
|
|