#![allow(non_upper_case_globals, dead_code)]
use crate::profile::{Component, FieldInfo, MesgInfo, SubField};
static SUBFIELDS_FILE_ID_2: &[SubField] = &[
SubField {
name: "favero_product",
type_name: "favero_product",
conditions: &[("manufacturer", "favero_electronics")],
components: &[],
scale: None,
offset: None,
units: None,
},
SubField {
name: "garmin_product",
type_name: "garmin_product",
conditions: &[
("manufacturer", "garmin"),
("manufacturer", "dynastream"),
("manufacturer", "dynastream_oem"),
("manufacturer", "tacx"),
],
components: &[],
scale: None,
offset: None,
units: None,
},
];
static FIELDS_FILE_ID: &[FieldInfo] = &[
FieldInfo {
field_def_num: 0,
name: "type",
type_name: "file",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "manufacturer",
type_name: "manufacturer",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "product",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: SUBFIELDS_FILE_ID_2,
accumulate: false,
},
FieldInfo {
field_def_num: 3,
name: "serial_number",
type_name: "uint32z",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 4,
name: "time_created",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 5,
name: "number",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 8,
name: "product_name",
type_name: "string",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_FILE_ID: MesgInfo = MesgInfo {
name: "file_id",
fields: FIELDS_FILE_ID,
};
static FIELDS_FILE_CREATOR: &[FieldInfo] = &[
FieldInfo {
field_def_num: 0,
name: "software_version",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "hardware_version",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_FILE_CREATOR: MesgInfo = MesgInfo {
name: "file_creator",
fields: FIELDS_FILE_CREATOR,
};
static FIELDS_TIMESTAMP_CORRELATION: &[FieldInfo] = &[
FieldInfo {
field_def_num: 253,
name: "timestamp",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "fractional_timestamp",
type_name: "uint16",
array: None,
scale: Some(32768_f64),
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "system_timestamp",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "fractional_system_timestamp",
type_name: "uint16",
array: None,
scale: Some(32768_f64),
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 3,
name: "local_timestamp",
type_name: "local_date_time",
array: None,
scale: None,
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 4,
name: "timestamp_ms",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("ms"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 5,
name: "system_timestamp_ms",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("ms"),
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_TIMESTAMP_CORRELATION: MesgInfo = MesgInfo {
name: "timestamp_correlation",
fields: FIELDS_TIMESTAMP_CORRELATION,
};
static FIELDS_SOFTWARE: &[FieldInfo] = &[
FieldInfo {
field_def_num: 254,
name: "message_index",
type_name: "message_index",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 3,
name: "version",
type_name: "uint16",
array: None,
scale: Some(100_f64),
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 5,
name: "part_number",
type_name: "string",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_SOFTWARE: MesgInfo = MesgInfo {
name: "software",
fields: FIELDS_SOFTWARE,
};
static SUBFIELDS_SLAVE_DEVICE_1: &[SubField] = &[
SubField {
name: "favero_product",
type_name: "favero_product",
conditions: &[("manufacturer", "favero_electronics")],
components: &[],
scale: None,
offset: None,
units: None,
},
SubField {
name: "garmin_product",
type_name: "garmin_product",
conditions: &[
("manufacturer", "garmin"),
("manufacturer", "dynastream"),
("manufacturer", "dynastream_oem"),
("manufacturer", "tacx"),
],
components: &[],
scale: None,
offset: None,
units: None,
},
];
static FIELDS_SLAVE_DEVICE: &[FieldInfo] = &[
FieldInfo {
field_def_num: 0,
name: "manufacturer",
type_name: "manufacturer",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "product",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: SUBFIELDS_SLAVE_DEVICE_1,
accumulate: false,
},
];
pub static MESG_SLAVE_DEVICE: MesgInfo = MesgInfo {
name: "slave_device",
fields: FIELDS_SLAVE_DEVICE,
};
static FIELDS_CAPABILITIES: &[FieldInfo] = &[
FieldInfo {
field_def_num: 0,
name: "languages",
type_name: "uint8z",
array: Some("[N]"),
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "sports",
type_name: "sport_bits_0",
array: Some("[N]"),
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 21,
name: "workouts_supported",
type_name: "workout_capabilities",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 23,
name: "connectivity_supported",
type_name: "connectivity_capabilities",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_CAPABILITIES: MesgInfo = MesgInfo {
name: "capabilities",
fields: FIELDS_CAPABILITIES,
};
static FIELDS_FILE_CAPABILITIES: &[FieldInfo] = &[
FieldInfo {
field_def_num: 254,
name: "message_index",
type_name: "message_index",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "type",
type_name: "file",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "flags",
type_name: "file_flags",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "directory",
type_name: "string",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 3,
name: "max_count",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 4,
name: "max_size",
type_name: "uint32",
array: None,
scale: None,
offset: None,
units: Some("bytes"),
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_FILE_CAPABILITIES: MesgInfo = MesgInfo {
name: "file_capabilities",
fields: FIELDS_FILE_CAPABILITIES,
};
static SUBFIELDS_MESG_CAPABILITIES_4: &[SubField] = &[
SubField {
name: "num_per_file",
type_name: "uint16",
conditions: &[("count_type", "num_per_file")],
components: &[],
scale: None,
offset: None,
units: None,
},
SubField {
name: "max_per_file",
type_name: "uint16",
conditions: &[("count_type", "max_per_file")],
components: &[],
scale: None,
offset: None,
units: None,
},
SubField {
name: "max_per_file_type",
type_name: "uint16",
conditions: &[("count_type", "max_per_file_type")],
components: &[],
scale: None,
offset: None,
units: None,
},
];
static FIELDS_MESG_CAPABILITIES: &[FieldInfo] = &[
FieldInfo {
field_def_num: 254,
name: "message_index",
type_name: "message_index",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "file",
type_name: "file",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "mesg_num",
type_name: "mesg_num",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "count_type",
type_name: "mesg_count",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 3,
name: "count",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: SUBFIELDS_MESG_CAPABILITIES_4,
accumulate: false,
},
];
pub static MESG_MESG_CAPABILITIES: MesgInfo = MesgInfo {
name: "mesg_capabilities",
fields: FIELDS_MESG_CAPABILITIES,
};
static FIELDS_FIELD_CAPABILITIES: &[FieldInfo] = &[
FieldInfo {
field_def_num: 254,
name: "message_index",
type_name: "message_index",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "file",
type_name: "file",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "mesg_num",
type_name: "mesg_num",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "field_num",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 3,
name: "count",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_FIELD_CAPABILITIES: MesgInfo = MesgInfo {
name: "field_capabilities",
fields: FIELDS_FIELD_CAPABILITIES,
};
static FIELDS_DEVICE_SETTINGS: &[FieldInfo] = &[
FieldInfo {
field_def_num: 0,
name: "active_time_zone",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "utc_offset",
type_name: "uint32",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "time_offset",
type_name: "uint32",
array: Some("[N]"),
scale: None,
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 4,
name: "time_mode",
type_name: "time_mode",
array: Some("[N]"),
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 5,
name: "time_zone_offset",
type_name: "sint8",
array: Some("[N]"),
scale: Some(4_f64),
offset: None,
units: Some("hr"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 12,
name: "backlight_mode",
type_name: "backlight_mode",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 36,
name: "activity_tracker_enabled",
type_name: "bool",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 39,
name: "clock_time",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 40,
name: "pages_enabled",
type_name: "uint16",
array: Some("[N]"),
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 46,
name: "move_alert_enabled",
type_name: "bool",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 47,
name: "date_mode",
type_name: "date_mode",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 55,
name: "display_orientation",
type_name: "display_orientation",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 56,
name: "mounting_side",
type_name: "side",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 57,
name: "default_page",
type_name: "uint16",
array: Some("[N]"),
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 58,
name: "autosync_min_steps",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("steps"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 59,
name: "autosync_min_time",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("minutes"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 80,
name: "lactate_threshold_autodetect_enabled",
type_name: "bool",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 86,
name: "ble_auto_upload_enabled",
type_name: "bool",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 89,
name: "auto_sync_frequency",
type_name: "auto_sync_frequency",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 90,
name: "auto_activity_detect",
type_name: "auto_activity_detect",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 94,
name: "number_of_screens",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 95,
name: "smart_notification_display_orientation",
type_name: "display_orientation",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 134,
name: "tap_interface",
type_name: "switch",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 174,
name: "tap_sensitivity",
type_name: "tap_sensitivity",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_DEVICE_SETTINGS: MesgInfo = MesgInfo {
name: "device_settings",
fields: FIELDS_DEVICE_SETTINGS,
};
static FIELDS_USER_PROFILE: &[FieldInfo] = &[
FieldInfo {
field_def_num: 254,
name: "message_index",
type_name: "message_index",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "friendly_name",
type_name: "string",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "gender",
type_name: "gender",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "age",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: Some("years"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 3,
name: "height",
type_name: "uint8",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("m"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 4,
name: "weight",
type_name: "uint16",
array: None,
scale: Some(10_f64),
offset: None,
units: Some("kg"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 5,
name: "language",
type_name: "language",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 6,
name: "elev_setting",
type_name: "display_measure",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 7,
name: "weight_setting",
type_name: "display_measure",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 8,
name: "resting_heart_rate",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: Some("bpm"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 9,
name: "default_max_running_heart_rate",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: Some("bpm"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 10,
name: "default_max_biking_heart_rate",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: Some("bpm"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 11,
name: "default_max_heart_rate",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: Some("bpm"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 12,
name: "hr_setting",
type_name: "display_heart",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 13,
name: "speed_setting",
type_name: "display_measure",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 14,
name: "dist_setting",
type_name: "display_measure",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 16,
name: "power_setting",
type_name: "display_power",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 17,
name: "activity_class",
type_name: "activity_class",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 18,
name: "position_setting",
type_name: "display_position",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 21,
name: "temperature_setting",
type_name: "display_measure",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 22,
name: "local_id",
type_name: "user_local_id",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 23,
name: "global_id",
type_name: "byte",
array: Some("[6]"),
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 28,
name: "wake_time",
type_name: "localtime_into_day",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 29,
name: "sleep_time",
type_name: "localtime_into_day",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 30,
name: "height_setting",
type_name: "display_measure",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 31,
name: "user_running_step_length",
type_name: "uint16",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("m"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 32,
name: "user_walking_step_length",
type_name: "uint16",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("m"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 47,
name: "depth_setting",
type_name: "display_measure",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 49,
name: "dive_count",
type_name: "uint32",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_USER_PROFILE: MesgInfo = MesgInfo {
name: "user_profile",
fields: FIELDS_USER_PROFILE,
};
static FIELDS_HRM_PROFILE: &[FieldInfo] = &[
FieldInfo {
field_def_num: 254,
name: "message_index",
type_name: "message_index",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "enabled",
type_name: "bool",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "hrm_ant_id",
type_name: "uint16z",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "log_hrv",
type_name: "bool",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 3,
name: "hrm_ant_id_trans_type",
type_name: "uint8z",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_HRM_PROFILE: MesgInfo = MesgInfo {
name: "hrm_profile",
fields: FIELDS_HRM_PROFILE,
};
static FIELDS_SDM_PROFILE: &[FieldInfo] = &[
FieldInfo {
field_def_num: 254,
name: "message_index",
type_name: "message_index",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "enabled",
type_name: "bool",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "sdm_ant_id",
type_name: "uint16z",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "sdm_cal_factor",
type_name: "uint16",
array: None,
scale: Some(10_f64),
offset: None,
units: Some("%"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 3,
name: "odometer",
type_name: "uint32",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("m"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 4,
name: "speed_source",
type_name: "bool",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 5,
name: "sdm_ant_id_trans_type",
type_name: "uint8z",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 7,
name: "odometer_rollover",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_SDM_PROFILE: MesgInfo = MesgInfo {
name: "sdm_profile",
fields: FIELDS_SDM_PROFILE,
};
static FIELDS_BIKE_PROFILE: &[FieldInfo] = &[
FieldInfo {
field_def_num: 254,
name: "message_index",
type_name: "message_index",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "name",
type_name: "string",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "sport",
type_name: "sport",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "sub_sport",
type_name: "sub_sport",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 3,
name: "odometer",
type_name: "uint32",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("m"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 4,
name: "bike_spd_ant_id",
type_name: "uint16z",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 5,
name: "bike_cad_ant_id",
type_name: "uint16z",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 6,
name: "bike_spdcad_ant_id",
type_name: "uint16z",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 7,
name: "bike_power_ant_id",
type_name: "uint16z",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 8,
name: "custom_wheelsize",
type_name: "uint16",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("m"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 9,
name: "auto_wheelsize",
type_name: "uint16",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("m"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 10,
name: "bike_weight",
type_name: "uint16",
array: None,
scale: Some(10_f64),
offset: None,
units: Some("kg"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 11,
name: "power_cal_factor",
type_name: "uint16",
array: None,
scale: Some(10_f64),
offset: None,
units: Some("%"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 12,
name: "auto_wheel_cal",
type_name: "bool",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 13,
name: "auto_power_zero",
type_name: "bool",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 14,
name: "id",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 15,
name: "spd_enabled",
type_name: "bool",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 16,
name: "cad_enabled",
type_name: "bool",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 17,
name: "spdcad_enabled",
type_name: "bool",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 18,
name: "power_enabled",
type_name: "bool",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 19,
name: "crank_length",
type_name: "uint8",
array: None,
scale: Some(2_f64),
offset: Some(-110_f64),
units: Some("mm"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 20,
name: "enabled",
type_name: "bool",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 21,
name: "bike_spd_ant_id_trans_type",
type_name: "uint8z",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 22,
name: "bike_cad_ant_id_trans_type",
type_name: "uint8z",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 23,
name: "bike_spdcad_ant_id_trans_type",
type_name: "uint8z",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 24,
name: "bike_power_ant_id_trans_type",
type_name: "uint8z",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 37,
name: "odometer_rollover",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 38,
name: "front_gear_num",
type_name: "uint8z",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 39,
name: "front_gear",
type_name: "uint8z",
array: Some("[N]"),
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 40,
name: "rear_gear_num",
type_name: "uint8z",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 41,
name: "rear_gear",
type_name: "uint8z",
array: Some("[N]"),
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 44,
name: "shimano_di2_enabled",
type_name: "bool",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_BIKE_PROFILE: MesgInfo = MesgInfo {
name: "bike_profile",
fields: FIELDS_BIKE_PROFILE,
};
static FIELDS_CONNECTIVITY: &[FieldInfo] = &[
FieldInfo {
field_def_num: 0,
name: "bluetooth_enabled",
type_name: "bool",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "bluetooth_le_enabled",
type_name: "bool",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "ant_enabled",
type_name: "bool",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 3,
name: "name",
type_name: "string",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 4,
name: "live_tracking_enabled",
type_name: "bool",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 5,
name: "weather_conditions_enabled",
type_name: "bool",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 6,
name: "weather_alerts_enabled",
type_name: "bool",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 7,
name: "auto_activity_upload_enabled",
type_name: "bool",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 8,
name: "course_download_enabled",
type_name: "bool",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 9,
name: "workout_download_enabled",
type_name: "bool",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 10,
name: "gps_ephemeris_download_enabled",
type_name: "bool",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 11,
name: "incident_detection_enabled",
type_name: "bool",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 12,
name: "grouptrack_enabled",
type_name: "bool",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_CONNECTIVITY: MesgInfo = MesgInfo {
name: "connectivity",
fields: FIELDS_CONNECTIVITY,
};
static SUBFIELDS_WATCHFACE_SETTINGS_2: &[SubField] = &[
SubField {
name: "digital_layout",
type_name: "digital_watchface_layout",
conditions: &[("mode", "digital")],
components: &[],
scale: None,
offset: None,
units: None,
},
SubField {
name: "analog_layout",
type_name: "analog_watchface_layout",
conditions: &[("mode", "analog")],
components: &[],
scale: None,
offset: None,
units: None,
},
];
static FIELDS_WATCHFACE_SETTINGS: &[FieldInfo] = &[
FieldInfo {
field_def_num: 254,
name: "message_index",
type_name: "message_index",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "mode",
type_name: "watchface_mode",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "layout",
type_name: "byte",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: SUBFIELDS_WATCHFACE_SETTINGS_2,
accumulate: false,
},
];
pub static MESG_WATCHFACE_SETTINGS: MesgInfo = MesgInfo {
name: "watchface_settings",
fields: FIELDS_WATCHFACE_SETTINGS,
};
static FIELDS_OHR_SETTINGS: &[FieldInfo] = &[
FieldInfo {
field_def_num: 253,
name: "timestamp",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "enabled",
type_name: "switch",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_OHR_SETTINGS: MesgInfo = MesgInfo {
name: "ohr_settings",
fields: FIELDS_OHR_SETTINGS,
};
static FIELDS_TIME_IN_ZONE: &[FieldInfo] = &[
FieldInfo {
field_def_num: 253,
name: "timestamp",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "reference_mesg",
type_name: "mesg_num",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "reference_index",
type_name: "message_index",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "time_in_hr_zone",
type_name: "uint32",
array: Some("[N]"),
scale: Some(1000_f64),
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 3,
name: "time_in_speed_zone",
type_name: "uint32",
array: Some("[N]"),
scale: Some(1000_f64),
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 4,
name: "time_in_cadence_zone",
type_name: "uint32",
array: Some("[N]"),
scale: Some(1000_f64),
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 5,
name: "time_in_power_zone",
type_name: "uint32",
array: Some("[N]"),
scale: Some(1000_f64),
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 6,
name: "hr_zone_high_boundary",
type_name: "uint8",
array: Some("[N]"),
scale: None,
offset: None,
units: Some("bpm"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 7,
name: "speed_zone_high_boundary",
type_name: "uint16",
array: Some("[N]"),
scale: Some(1000_f64),
offset: None,
units: Some("m/s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 8,
name: "cadence_zone_high_bondary",
type_name: "uint8",
array: Some("[N]"),
scale: None,
offset: None,
units: Some("rpm"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 9,
name: "power_zone_high_boundary",
type_name: "uint16",
array: Some("[N]"),
scale: None,
offset: None,
units: Some("watts"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 10,
name: "hr_calc_type",
type_name: "hr_zone_calc",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 11,
name: "max_heart_rate",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 12,
name: "resting_heart_rate",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 13,
name: "threshold_heart_rate",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 14,
name: "pwr_calc_type",
type_name: "pwr_zone_calc",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 15,
name: "functional_threshold_power",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_TIME_IN_ZONE: MesgInfo = MesgInfo {
name: "time_in_zone",
fields: FIELDS_TIME_IN_ZONE,
};
static FIELDS_ZONES_TARGET: &[FieldInfo] = &[
FieldInfo {
field_def_num: 1,
name: "max_heart_rate",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "threshold_heart_rate",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 3,
name: "functional_threshold_power",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 5,
name: "hr_calc_type",
type_name: "hr_zone_calc",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 7,
name: "pwr_calc_type",
type_name: "pwr_zone_calc",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_ZONES_TARGET: MesgInfo = MesgInfo {
name: "zones_target",
fields: FIELDS_ZONES_TARGET,
};
static FIELDS_SPORT: &[FieldInfo] = &[
FieldInfo {
field_def_num: 0,
name: "sport",
type_name: "sport",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "sub_sport",
type_name: "sub_sport",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 3,
name: "name",
type_name: "string",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_SPORT: MesgInfo = MesgInfo {
name: "sport",
fields: FIELDS_SPORT,
};
static FIELDS_HR_ZONE: &[FieldInfo] = &[
FieldInfo {
field_def_num: 254,
name: "message_index",
type_name: "message_index",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "high_bpm",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: Some("bpm"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "name",
type_name: "string",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_HR_ZONE: MesgInfo = MesgInfo {
name: "hr_zone",
fields: FIELDS_HR_ZONE,
};
static FIELDS_SPEED_ZONE: &[FieldInfo] = &[
FieldInfo {
field_def_num: 254,
name: "message_index",
type_name: "message_index",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "high_value",
type_name: "uint16",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("m/s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "name",
type_name: "string",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_SPEED_ZONE: MesgInfo = MesgInfo {
name: "speed_zone",
fields: FIELDS_SPEED_ZONE,
};
static FIELDS_CADENCE_ZONE: &[FieldInfo] = &[
FieldInfo {
field_def_num: 254,
name: "message_index",
type_name: "message_index",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "high_value",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: Some("rpm"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "name",
type_name: "string",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_CADENCE_ZONE: MesgInfo = MesgInfo {
name: "cadence_zone",
fields: FIELDS_CADENCE_ZONE,
};
static FIELDS_POWER_ZONE: &[FieldInfo] = &[
FieldInfo {
field_def_num: 254,
name: "message_index",
type_name: "message_index",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "high_value",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("watts"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "name",
type_name: "string",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_POWER_ZONE: MesgInfo = MesgInfo {
name: "power_zone",
fields: FIELDS_POWER_ZONE,
};
static FIELDS_MET_ZONE: &[FieldInfo] = &[
FieldInfo {
field_def_num: 254,
name: "message_index",
type_name: "message_index",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "high_bpm",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "calories",
type_name: "uint16",
array: None,
scale: Some(10_f64),
offset: None,
units: Some("kcal / min"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 3,
name: "fat_calories",
type_name: "uint8",
array: None,
scale: Some(10_f64),
offset: None,
units: Some("kcal / min"),
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_MET_ZONE: MesgInfo = MesgInfo {
name: "met_zone",
fields: FIELDS_MET_ZONE,
};
static FIELDS_TRAINING_SETTINGS: &[FieldInfo] = &[
FieldInfo {
field_def_num: 31,
name: "target_distance",
type_name: "uint32",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("m"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 32,
name: "target_speed",
type_name: "uint16",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("m/s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 33,
name: "target_time",
type_name: "uint32",
array: None,
scale: None,
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 153,
name: "precise_target_speed",
type_name: "uint32",
array: None,
scale: Some(1000000_f64),
offset: None,
units: Some("m/s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_TRAINING_SETTINGS: MesgInfo = MesgInfo {
name: "training_settings",
fields: FIELDS_TRAINING_SETTINGS,
};
static SUBFIELDS_DIVE_SETTINGS_22: &[SubField] = &[
SubField {
name: "heart_rate_antplus_device_type",
type_name: "antplus_device_type",
conditions: &[("heart_rate_source_type", "antplus")],
components: &[],
scale: None,
offset: None,
units: None,
},
SubField {
name: "heart_rate_local_device_type",
type_name: "local_device_type",
conditions: &[("heart_rate_source_type", "local")],
components: &[],
scale: None,
offset: None,
units: None,
},
];
static FIELDS_DIVE_SETTINGS: &[FieldInfo] = &[
FieldInfo {
field_def_num: 253,
name: "timestamp",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 254,
name: "message_index",
type_name: "message_index",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "name",
type_name: "string",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "model",
type_name: "tissue_model_type",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "gf_low",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: Some("percent"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 3,
name: "gf_high",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: Some("percent"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 4,
name: "water_type",
type_name: "water_type",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 5,
name: "water_density",
type_name: "float32",
array: None,
scale: None,
offset: None,
units: Some("kg/m^3"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 6,
name: "po2_warn",
type_name: "uint8",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("percent"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 7,
name: "po2_critical",
type_name: "uint8",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("percent"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 8,
name: "po2_deco",
type_name: "uint8",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("percent"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 9,
name: "safety_stop_enabled",
type_name: "bool",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 10,
name: "bottom_depth",
type_name: "float32",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 11,
name: "bottom_time",
type_name: "uint32",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 12,
name: "apnea_countdown_enabled",
type_name: "bool",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 13,
name: "apnea_countdown_time",
type_name: "uint32",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 14,
name: "backlight_mode",
type_name: "dive_backlight_mode",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 15,
name: "backlight_brightness",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 16,
name: "backlight_timeout",
type_name: "backlight_timeout",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 17,
name: "repeat_dive_interval",
type_name: "uint16",
array: None,
scale: Some(1_f64),
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 18,
name: "safety_stop_time",
type_name: "uint16",
array: None,
scale: Some(1_f64),
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 19,
name: "heart_rate_source_type",
type_name: "source_type",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 20,
name: "heart_rate_source",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: SUBFIELDS_DIVE_SETTINGS_22,
accumulate: false,
},
FieldInfo {
field_def_num: 21,
name: "travel_gas",
type_name: "message_index",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 22,
name: "ccr_low_setpoint_switch_mode",
type_name: "ccr_setpoint_switch_mode",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 23,
name: "ccr_low_setpoint",
type_name: "uint8",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("percent"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 24,
name: "ccr_low_setpoint_depth",
type_name: "uint32",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("m"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 25,
name: "ccr_high_setpoint_switch_mode",
type_name: "ccr_setpoint_switch_mode",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 26,
name: "ccr_high_setpoint",
type_name: "uint8",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("percent"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 27,
name: "ccr_high_setpoint_depth",
type_name: "uint32",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("m"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 29,
name: "gas_consumption_display",
type_name: "gas_consumption_rate_type",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 30,
name: "up_key_enabled",
type_name: "bool",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 35,
name: "dive_sounds",
type_name: "tone",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 36,
name: "last_stop_multiple",
type_name: "uint8",
array: None,
scale: Some(10_f64),
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 37,
name: "no_fly_time_mode",
type_name: "no_fly_time_mode",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_DIVE_SETTINGS: MesgInfo = MesgInfo {
name: "dive_settings",
fields: FIELDS_DIVE_SETTINGS,
};
static FIELDS_DIVE_ALARM: &[FieldInfo] = &[
FieldInfo {
field_def_num: 254,
name: "message_index",
type_name: "message_index",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "depth",
type_name: "uint32",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("m"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "time",
type_name: "sint32",
array: None,
scale: Some(1_f64),
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "enabled",
type_name: "bool",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 3,
name: "alarm_type",
type_name: "dive_alarm_type",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 4,
name: "sound",
type_name: "tone",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 5,
name: "dive_types",
type_name: "sub_sport",
array: Some("[N]"),
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 6,
name: "id",
type_name: "uint32",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 7,
name: "popup_enabled",
type_name: "bool",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 8,
name: "trigger_on_descent",
type_name: "bool",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 9,
name: "trigger_on_ascent",
type_name: "bool",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 10,
name: "repeating",
type_name: "bool",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 11,
name: "speed",
type_name: "sint32",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("mps"),
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_DIVE_ALARM: MesgInfo = MesgInfo {
name: "dive_alarm",
fields: FIELDS_DIVE_ALARM,
};
static FIELDS_DIVE_APNEA_ALARM: &[FieldInfo] = &[
FieldInfo {
field_def_num: 254,
name: "message_index",
type_name: "message_index",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "depth",
type_name: "uint32",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("m"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "time",
type_name: "sint32",
array: None,
scale: Some(1_f64),
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "enabled",
type_name: "bool",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 3,
name: "alarm_type",
type_name: "dive_alarm_type",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 4,
name: "sound",
type_name: "tone",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 5,
name: "dive_types",
type_name: "sub_sport",
array: Some("[N]"),
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 6,
name: "id",
type_name: "uint32",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 7,
name: "popup_enabled",
type_name: "bool",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 8,
name: "trigger_on_descent",
type_name: "bool",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 9,
name: "trigger_on_ascent",
type_name: "bool",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 10,
name: "repeating",
type_name: "bool",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 11,
name: "speed",
type_name: "sint32",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("mps"),
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_DIVE_APNEA_ALARM: MesgInfo = MesgInfo {
name: "dive_apnea_alarm",
fields: FIELDS_DIVE_APNEA_ALARM,
};
static FIELDS_DIVE_GAS: &[FieldInfo] = &[
FieldInfo {
field_def_num: 254,
name: "message_index",
type_name: "message_index",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "helium_content",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: Some("percent"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "oxygen_content",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: Some("percent"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "status",
type_name: "dive_gas_status",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 3,
name: "mode",
type_name: "dive_gas_mode",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_DIVE_GAS: MesgInfo = MesgInfo {
name: "dive_gas",
fields: FIELDS_DIVE_GAS,
};
static FIELDS_GOAL: &[FieldInfo] = &[
FieldInfo {
field_def_num: 254,
name: "message_index",
type_name: "message_index",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "sport",
type_name: "sport",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "sub_sport",
type_name: "sub_sport",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "start_date",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 3,
name: "end_date",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 4,
name: "type",
type_name: "goal",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 5,
name: "value",
type_name: "uint32",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 6,
name: "repeat",
type_name: "bool",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 7,
name: "target_value",
type_name: "uint32",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 8,
name: "recurrence",
type_name: "goal_recurrence",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 9,
name: "recurrence_value",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 10,
name: "enabled",
type_name: "bool",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 11,
name: "source",
type_name: "goal_source",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_GOAL: MesgInfo = MesgInfo {
name: "goal",
fields: FIELDS_GOAL,
};
static FIELDS_ACTIVITY: &[FieldInfo] = &[
FieldInfo {
field_def_num: 253,
name: "timestamp",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "total_timer_time",
type_name: "uint32",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "num_sessions",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "type",
type_name: "activity",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 3,
name: "event",
type_name: "event",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 4,
name: "event_type",
type_name: "event_type",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 5,
name: "local_timestamp",
type_name: "local_date_time",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 6,
name: "event_group",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_ACTIVITY: MesgInfo = MesgInfo {
name: "activity",
fields: FIELDS_ACTIVITY,
};
static SUBFIELDS_SESSION_12: &[SubField] = &[
SubField {
name: "total_strides",
type_name: "uint32",
conditions: &[("sport", "running"), ("sport", "walking")],
components: &[],
scale: None,
offset: None,
units: Some("strides"),
},
SubField {
name: "total_strokes",
type_name: "uint32",
conditions: &[
("sport", "cycling"),
("sport", "swimming"),
("sport", "rowing"),
("sport", "stand_up_paddleboarding"),
],
components: &[],
scale: None,
offset: None,
units: Some("strokes"),
},
];
static COMPONENTS_SESSION_15: &[Component] = &[Component {
name: "enhanced_avg_speed",
bits: 16,
scale: None,
offset: None,
units: None,
accumulate: false,
}];
static COMPONENTS_SESSION_16: &[Component] = &[Component {
name: "enhanced_max_speed",
bits: 16,
scale: None,
offset: None,
units: None,
accumulate: false,
}];
static SUBFIELDS_SESSION_19: &[SubField] = &[SubField {
name: "avg_running_cadence",
type_name: "uint8",
conditions: &[("sport", "running")],
components: &[],
scale: None,
offset: None,
units: Some("strides/min"),
}];
static SUBFIELDS_SESSION_20: &[SubField] = &[SubField {
name: "max_running_cadence",
type_name: "uint8",
conditions: &[("sport", "running")],
components: &[],
scale: None,
offset: None,
units: Some("strides/min"),
}];
static COMPONENTS_SESSION_49: &[Component] = &[Component {
name: "enhanced_avg_altitude",
bits: 16,
scale: None,
offset: None,
units: None,
accumulate: false,
}];
static COMPONENTS_SESSION_50: &[Component] = &[Component {
name: "enhanced_max_altitude",
bits: 16,
scale: None,
offset: None,
units: None,
accumulate: false,
}];
static COMPONENTS_SESSION_71: &[Component] = &[Component {
name: "enhanced_min_altitude",
bits: 16,
scale: None,
offset: None,
units: None,
accumulate: false,
}];
static COMPONENTS_SESSION_130: &[Component] = &[Component {
name: "enhanced_avg_respiration_rate",
bits: 8,
scale: None,
offset: None,
units: None,
accumulate: false,
}];
static COMPONENTS_SESSION_131: &[Component] = &[Component {
name: "enhanced_max_respiration_rate",
bits: 8,
scale: None,
offset: None,
units: None,
accumulate: false,
}];
static COMPONENTS_SESSION_132: &[Component] = &[Component {
name: "enhanced_min_respiration_rate",
bits: 8,
scale: None,
offset: None,
units: None,
accumulate: false,
}];
static FIELDS_SESSION: &[FieldInfo] = &[
FieldInfo {
field_def_num: 254,
name: "message_index",
type_name: "message_index",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 253,
name: "timestamp",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "event",
type_name: "event",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "event_type",
type_name: "event_type",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "start_time",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 3,
name: "start_position_lat",
type_name: "sint32",
array: None,
scale: None,
offset: None,
units: Some("semicircles"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 4,
name: "start_position_long",
type_name: "sint32",
array: None,
scale: None,
offset: None,
units: Some("semicircles"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 5,
name: "sport",
type_name: "sport",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 6,
name: "sub_sport",
type_name: "sub_sport",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 7,
name: "total_elapsed_time",
type_name: "uint32",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 8,
name: "total_timer_time",
type_name: "uint32",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 9,
name: "total_distance",
type_name: "uint32",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("m"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 10,
name: "total_cycles",
type_name: "uint32",
array: None,
scale: None,
offset: None,
units: Some("cycles"),
components: &[],
sub_fields: SUBFIELDS_SESSION_12,
accumulate: false,
},
FieldInfo {
field_def_num: 11,
name: "total_calories",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("kcal"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 13,
name: "total_fat_calories",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("kcal"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 14,
name: "avg_speed",
type_name: "uint16",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("m/s"),
components: COMPONENTS_SESSION_15,
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 15,
name: "max_speed",
type_name: "uint16",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("m/s"),
components: COMPONENTS_SESSION_16,
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 16,
name: "avg_heart_rate",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: Some("bpm"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 17,
name: "max_heart_rate",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: Some("bpm"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 18,
name: "avg_cadence",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: Some("rpm"),
components: &[],
sub_fields: SUBFIELDS_SESSION_19,
accumulate: false,
},
FieldInfo {
field_def_num: 19,
name: "max_cadence",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: Some("rpm"),
components: &[],
sub_fields: SUBFIELDS_SESSION_20,
accumulate: false,
},
FieldInfo {
field_def_num: 20,
name: "avg_power",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("watts"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 21,
name: "max_power",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("watts"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 22,
name: "total_ascent",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("m"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 23,
name: "total_descent",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("m"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 24,
name: "total_training_effect",
type_name: "uint8",
array: None,
scale: Some(10_f64),
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 25,
name: "first_lap_index",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 26,
name: "num_laps",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 27,
name: "event_group",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 28,
name: "trigger",
type_name: "session_trigger",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 29,
name: "nec_lat",
type_name: "sint32",
array: None,
scale: None,
offset: None,
units: Some("semicircles"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 30,
name: "nec_long",
type_name: "sint32",
array: None,
scale: None,
offset: None,
units: Some("semicircles"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 31,
name: "swc_lat",
type_name: "sint32",
array: None,
scale: None,
offset: None,
units: Some("semicircles"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 32,
name: "swc_long",
type_name: "sint32",
array: None,
scale: None,
offset: None,
units: Some("semicircles"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 33,
name: "num_lengths",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("lengths"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 34,
name: "normalized_power",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("watts"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 35,
name: "training_stress_score",
type_name: "uint16",
array: None,
scale: Some(10_f64),
offset: None,
units: Some("tss"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 36,
name: "intensity_factor",
type_name: "uint16",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("if"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 37,
name: "left_right_balance",
type_name: "left_right_balance_100",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 38,
name: "end_position_lat",
type_name: "sint32",
array: None,
scale: None,
offset: None,
units: Some("semicircles"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 39,
name: "end_position_long",
type_name: "sint32",
array: None,
scale: None,
offset: None,
units: Some("semicircles"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 41,
name: "avg_stroke_count",
type_name: "uint32",
array: None,
scale: Some(10_f64),
offset: None,
units: Some("strokes/lap"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 42,
name: "avg_stroke_distance",
type_name: "uint16",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("m"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 43,
name: "swim_stroke",
type_name: "swim_stroke",
array: None,
scale: None,
offset: None,
units: Some("swim_stroke"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 44,
name: "pool_length",
type_name: "uint16",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("m"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 45,
name: "threshold_power",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("watts"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 46,
name: "pool_length_unit",
type_name: "display_measure",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 47,
name: "num_active_lengths",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("lengths"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 48,
name: "total_work",
type_name: "uint32",
array: None,
scale: None,
offset: None,
units: Some("J"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 49,
name: "avg_altitude",
type_name: "uint16",
array: None,
scale: Some(5_f64),
offset: Some(500_f64),
units: Some("m"),
components: COMPONENTS_SESSION_49,
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 50,
name: "max_altitude",
type_name: "uint16",
array: None,
scale: Some(5_f64),
offset: Some(500_f64),
units: Some("m"),
components: COMPONENTS_SESSION_50,
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 51,
name: "gps_accuracy",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: Some("m"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 52,
name: "avg_grade",
type_name: "sint16",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("%"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 53,
name: "avg_pos_grade",
type_name: "sint16",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("%"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 54,
name: "avg_neg_grade",
type_name: "sint16",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("%"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 55,
name: "max_pos_grade",
type_name: "sint16",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("%"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 56,
name: "max_neg_grade",
type_name: "sint16",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("%"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 57,
name: "avg_temperature",
type_name: "sint8",
array: None,
scale: None,
offset: None,
units: Some("C"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 58,
name: "max_temperature",
type_name: "sint8",
array: None,
scale: None,
offset: None,
units: Some("C"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 59,
name: "total_moving_time",
type_name: "uint32",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 60,
name: "avg_pos_vertical_speed",
type_name: "sint16",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("m/s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 61,
name: "avg_neg_vertical_speed",
type_name: "sint16",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("m/s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 62,
name: "max_pos_vertical_speed",
type_name: "sint16",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("m/s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 63,
name: "max_neg_vertical_speed",
type_name: "sint16",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("m/s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 64,
name: "min_heart_rate",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: Some("bpm"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 65,
name: "time_in_hr_zone",
type_name: "uint32",
array: Some("[N]"),
scale: Some(1000_f64),
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 66,
name: "time_in_speed_zone",
type_name: "uint32",
array: Some("[N]"),
scale: Some(1000_f64),
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 67,
name: "time_in_cadence_zone",
type_name: "uint32",
array: Some("[N]"),
scale: Some(1000_f64),
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 68,
name: "time_in_power_zone",
type_name: "uint32",
array: Some("[N]"),
scale: Some(1000_f64),
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 69,
name: "avg_lap_time",
type_name: "uint32",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 70,
name: "best_lap_index",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 71,
name: "min_altitude",
type_name: "uint16",
array: None,
scale: Some(5_f64),
offset: Some(500_f64),
units: Some("m"),
components: COMPONENTS_SESSION_71,
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 82,
name: "player_score",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 83,
name: "opponent_score",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 84,
name: "opponent_name",
type_name: "string",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 85,
name: "stroke_count",
type_name: "uint16",
array: Some("[N]"),
scale: None,
offset: None,
units: Some("counts"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 86,
name: "zone_count",
type_name: "uint16",
array: Some("[N]"),
scale: None,
offset: None,
units: Some("counts"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 87,
name: "max_ball_speed",
type_name: "uint16",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("m/s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 88,
name: "avg_ball_speed",
type_name: "uint16",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("m/s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 89,
name: "avg_vertical_oscillation",
type_name: "uint16",
array: None,
scale: Some(10_f64),
offset: None,
units: Some("mm"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 90,
name: "avg_stance_time_percent",
type_name: "uint16",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("percent"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 91,
name: "avg_stance_time",
type_name: "uint16",
array: None,
scale: Some(10_f64),
offset: None,
units: Some("ms"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 92,
name: "avg_fractional_cadence",
type_name: "uint8",
array: None,
scale: Some(128_f64),
offset: None,
units: Some("rpm"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 93,
name: "max_fractional_cadence",
type_name: "uint8",
array: None,
scale: Some(128_f64),
offset: None,
units: Some("rpm"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 94,
name: "total_fractional_cycles",
type_name: "uint8",
array: None,
scale: Some(128_f64),
offset: None,
units: Some("cycles"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 95,
name: "avg_total_hemoglobin_conc",
type_name: "uint16",
array: Some("[N]"),
scale: Some(100_f64),
offset: None,
units: Some("g/dL"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 96,
name: "min_total_hemoglobin_conc",
type_name: "uint16",
array: Some("[N]"),
scale: Some(100_f64),
offset: None,
units: Some("g/dL"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 97,
name: "max_total_hemoglobin_conc",
type_name: "uint16",
array: Some("[N]"),
scale: Some(100_f64),
offset: None,
units: Some("g/dL"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 98,
name: "avg_saturated_hemoglobin_percent",
type_name: "uint16",
array: Some("[N]"),
scale: Some(10_f64),
offset: None,
units: Some("%"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 99,
name: "min_saturated_hemoglobin_percent",
type_name: "uint16",
array: Some("[N]"),
scale: Some(10_f64),
offset: None,
units: Some("%"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 100,
name: "max_saturated_hemoglobin_percent",
type_name: "uint16",
array: Some("[N]"),
scale: Some(10_f64),
offset: None,
units: Some("%"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 101,
name: "avg_left_torque_effectiveness",
type_name: "uint8",
array: None,
scale: Some(2_f64),
offset: None,
units: Some("percent"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 102,
name: "avg_right_torque_effectiveness",
type_name: "uint8",
array: None,
scale: Some(2_f64),
offset: None,
units: Some("percent"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 103,
name: "avg_left_pedal_smoothness",
type_name: "uint8",
array: None,
scale: Some(2_f64),
offset: None,
units: Some("percent"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 104,
name: "avg_right_pedal_smoothness",
type_name: "uint8",
array: None,
scale: Some(2_f64),
offset: None,
units: Some("percent"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 105,
name: "avg_combined_pedal_smoothness",
type_name: "uint8",
array: None,
scale: Some(2_f64),
offset: None,
units: Some("percent"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 110,
name: "sport_profile_name",
type_name: "string",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 111,
name: "sport_index",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 112,
name: "time_standing",
type_name: "uint32",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 113,
name: "stand_count",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 114,
name: "avg_left_pco",
type_name: "sint8",
array: None,
scale: None,
offset: None,
units: Some("mm"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 115,
name: "avg_right_pco",
type_name: "sint8",
array: None,
scale: None,
offset: None,
units: Some("mm"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 116,
name: "avg_left_power_phase",
type_name: "uint8",
array: Some("[N]"),
scale: Some(0.7111111_f64),
offset: None,
units: Some("degrees"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 117,
name: "avg_left_power_phase_peak",
type_name: "uint8",
array: Some("[N]"),
scale: Some(0.7111111_f64),
offset: None,
units: Some("degrees"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 118,
name: "avg_right_power_phase",
type_name: "uint8",
array: Some("[N]"),
scale: Some(0.7111111_f64),
offset: None,
units: Some("degrees"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 119,
name: "avg_right_power_phase_peak",
type_name: "uint8",
array: Some("[N]"),
scale: Some(0.7111111_f64),
offset: None,
units: Some("degrees"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 120,
name: "avg_power_position",
type_name: "uint16",
array: Some("[N]"),
scale: None,
offset: None,
units: Some("watts"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 121,
name: "max_power_position",
type_name: "uint16",
array: Some("[N]"),
scale: None,
offset: None,
units: Some("watts"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 122,
name: "avg_cadence_position",
type_name: "uint8",
array: Some("[N]"),
scale: None,
offset: None,
units: Some("rpm"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 123,
name: "max_cadence_position",
type_name: "uint8",
array: Some("[N]"),
scale: None,
offset: None,
units: Some("rpm"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 124,
name: "enhanced_avg_speed",
type_name: "uint32",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("m/s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 125,
name: "enhanced_max_speed",
type_name: "uint32",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("m/s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 126,
name: "enhanced_avg_altitude",
type_name: "uint32",
array: None,
scale: Some(5_f64),
offset: Some(500_f64),
units: Some("m"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 127,
name: "enhanced_min_altitude",
type_name: "uint32",
array: None,
scale: Some(5_f64),
offset: Some(500_f64),
units: Some("m"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 128,
name: "enhanced_max_altitude",
type_name: "uint32",
array: None,
scale: Some(5_f64),
offset: Some(500_f64),
units: Some("m"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 129,
name: "avg_lev_motor_power",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("watts"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 130,
name: "max_lev_motor_power",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("watts"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 131,
name: "lev_battery_consumption",
type_name: "uint8",
array: None,
scale: Some(2_f64),
offset: None,
units: Some("percent"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 132,
name: "avg_vertical_ratio",
type_name: "uint16",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("percent"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 133,
name: "avg_stance_time_balance",
type_name: "uint16",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("percent"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 134,
name: "avg_step_length",
type_name: "uint16",
array: None,
scale: Some(10_f64),
offset: None,
units: Some("mm"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 137,
name: "total_anaerobic_training_effect",
type_name: "uint8",
array: None,
scale: Some(10_f64),
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 139,
name: "avg_vam",
type_name: "uint16",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("m/s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 140,
name: "avg_depth",
type_name: "uint32",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("m"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 141,
name: "max_depth",
type_name: "uint32",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("m"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 142,
name: "surface_interval",
type_name: "uint32",
array: None,
scale: Some(1_f64),
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 143,
name: "start_cns",
type_name: "uint8",
array: None,
scale: Some(1_f64),
offset: None,
units: Some("percent"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 144,
name: "end_cns",
type_name: "uint8",
array: None,
scale: Some(1_f64),
offset: None,
units: Some("percent"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 145,
name: "start_n2",
type_name: "uint16",
array: None,
scale: Some(1_f64),
offset: None,
units: Some("percent"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 146,
name: "end_n2",
type_name: "uint16",
array: None,
scale: Some(1_f64),
offset: None,
units: Some("percent"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 147,
name: "avg_respiration_rate",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: COMPONENTS_SESSION_130,
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 148,
name: "max_respiration_rate",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: COMPONENTS_SESSION_131,
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 149,
name: "min_respiration_rate",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: COMPONENTS_SESSION_132,
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 150,
name: "min_temperature",
type_name: "sint8",
array: None,
scale: None,
offset: None,
units: Some("C"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 155,
name: "o2_toxicity",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("OTUs"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 156,
name: "dive_number",
type_name: "uint32",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 168,
name: "training_load_peak",
type_name: "sint32",
array: None,
scale: Some(65536_f64),
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 169,
name: "enhanced_avg_respiration_rate",
type_name: "uint16",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("Breaths/min"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 170,
name: "enhanced_max_respiration_rate",
type_name: "uint16",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("Breaths/min"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 180,
name: "enhanced_min_respiration_rate",
type_name: "uint16",
array: None,
scale: Some(100_f64),
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 181,
name: "total_grit",
type_name: "float32",
array: None,
scale: None,
offset: None,
units: Some("kGrit"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 182,
name: "total_flow",
type_name: "float32",
array: None,
scale: None,
offset: None,
units: Some("Flow"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 183,
name: "jump_count",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 186,
name: "avg_grit",
type_name: "float32",
array: None,
scale: None,
offset: None,
units: Some("kGrit"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 187,
name: "avg_flow",
type_name: "float32",
array: None,
scale: None,
offset: None,
units: Some("Flow"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 192,
name: "workout_feel",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 193,
name: "workout_rpe",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 194,
name: "avg_spo2",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: Some("percent"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 195,
name: "avg_stress",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: Some("percent"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 196,
name: "metabolic_calories",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("kcal"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 197,
name: "sdrr_hrv",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: Some("mS"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 198,
name: "rmssd_hrv",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: Some("mS"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 199,
name: "total_fractional_ascent",
type_name: "uint8",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("m"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 200,
name: "total_fractional_descent",
type_name: "uint8",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("m"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 208,
name: "avg_core_temperature",
type_name: "uint16",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("C"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 209,
name: "min_core_temperature",
type_name: "uint16",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("C"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 210,
name: "max_core_temperature",
type_name: "uint16",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("C"),
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_SESSION: MesgInfo = MesgInfo {
name: "session",
fields: FIELDS_SESSION,
};
static SUBFIELDS_LAP_12: &[SubField] = &[
SubField {
name: "total_strides",
type_name: "uint32",
conditions: &[("sport", "running"), ("sport", "walking")],
components: &[],
scale: None,
offset: None,
units: Some("strides"),
},
SubField {
name: "total_strokes",
type_name: "uint32",
conditions: &[
("sport", "cycling"),
("sport", "swimming"),
("sport", "rowing"),
("sport", "stand_up_paddleboarding"),
],
components: &[],
scale: None,
offset: None,
units: Some("strokes"),
},
];
static COMPONENTS_LAP_15: &[Component] = &[Component {
name: "enhanced_avg_speed",
bits: 16,
scale: None,
offset: None,
units: None,
accumulate: false,
}];
static COMPONENTS_LAP_16: &[Component] = &[Component {
name: "enhanced_max_speed",
bits: 16,
scale: None,
offset: None,
units: None,
accumulate: false,
}];
static SUBFIELDS_LAP_19: &[SubField] = &[SubField {
name: "avg_running_cadence",
type_name: "uint8",
conditions: &[("sport", "running")],
components: &[],
scale: None,
offset: None,
units: Some("strides/min"),
}];
static SUBFIELDS_LAP_20: &[SubField] = &[SubField {
name: "max_running_cadence",
type_name: "uint8",
conditions: &[("sport", "running")],
components: &[],
scale: None,
offset: None,
units: Some("strides/min"),
}];
static COMPONENTS_LAP_38: &[Component] = &[Component {
name: "enhanced_avg_altitude",
bits: 16,
scale: None,
offset: None,
units: None,
accumulate: false,
}];
static COMPONENTS_LAP_39: &[Component] = &[Component {
name: "enhanced_max_altitude",
bits: 16,
scale: None,
offset: None,
units: None,
accumulate: false,
}];
static COMPONENTS_LAP_58: &[Component] = &[Component {
name: "enhanced_min_altitude",
bits: 16,
scale: None,
offset: None,
units: None,
accumulate: false,
}];
static COMPONENTS_LAP_111: &[Component] = &[Component {
name: "enhanced_avg_respiration_rate",
bits: 8,
scale: None,
offset: None,
units: None,
accumulate: false,
}];
static COMPONENTS_LAP_112: &[Component] = &[Component {
name: "enhanced_max_respiration_rate",
bits: 8,
scale: None,
offset: None,
units: None,
accumulate: false,
}];
static FIELDS_LAP: &[FieldInfo] = &[
FieldInfo {
field_def_num: 254,
name: "message_index",
type_name: "message_index",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 253,
name: "timestamp",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "event",
type_name: "event",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "event_type",
type_name: "event_type",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "start_time",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 3,
name: "start_position_lat",
type_name: "sint32",
array: None,
scale: None,
offset: None,
units: Some("semicircles"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 4,
name: "start_position_long",
type_name: "sint32",
array: None,
scale: None,
offset: None,
units: Some("semicircles"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 5,
name: "end_position_lat",
type_name: "sint32",
array: None,
scale: None,
offset: None,
units: Some("semicircles"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 6,
name: "end_position_long",
type_name: "sint32",
array: None,
scale: None,
offset: None,
units: Some("semicircles"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 7,
name: "total_elapsed_time",
type_name: "uint32",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 8,
name: "total_timer_time",
type_name: "uint32",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 9,
name: "total_distance",
type_name: "uint32",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("m"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 10,
name: "total_cycles",
type_name: "uint32",
array: None,
scale: None,
offset: None,
units: Some("cycles"),
components: &[],
sub_fields: SUBFIELDS_LAP_12,
accumulate: false,
},
FieldInfo {
field_def_num: 11,
name: "total_calories",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("kcal"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 12,
name: "total_fat_calories",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("kcal"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 13,
name: "avg_speed",
type_name: "uint16",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("m/s"),
components: COMPONENTS_LAP_15,
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 14,
name: "max_speed",
type_name: "uint16",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("m/s"),
components: COMPONENTS_LAP_16,
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 15,
name: "avg_heart_rate",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: Some("bpm"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 16,
name: "max_heart_rate",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: Some("bpm"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 17,
name: "avg_cadence",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: Some("rpm"),
components: &[],
sub_fields: SUBFIELDS_LAP_19,
accumulate: false,
},
FieldInfo {
field_def_num: 18,
name: "max_cadence",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: Some("rpm"),
components: &[],
sub_fields: SUBFIELDS_LAP_20,
accumulate: false,
},
FieldInfo {
field_def_num: 19,
name: "avg_power",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("watts"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 20,
name: "max_power",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("watts"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 21,
name: "total_ascent",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("m"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 22,
name: "total_descent",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("m"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 23,
name: "intensity",
type_name: "intensity",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 24,
name: "lap_trigger",
type_name: "lap_trigger",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 25,
name: "sport",
type_name: "sport",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 26,
name: "event_group",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 32,
name: "num_lengths",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("lengths"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 33,
name: "normalized_power",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("watts"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 34,
name: "left_right_balance",
type_name: "left_right_balance_100",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 35,
name: "first_length_index",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 37,
name: "avg_stroke_distance",
type_name: "uint16",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("m"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 38,
name: "swim_stroke",
type_name: "swim_stroke",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 39,
name: "sub_sport",
type_name: "sub_sport",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 40,
name: "num_active_lengths",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("lengths"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 41,
name: "total_work",
type_name: "uint32",
array: None,
scale: None,
offset: None,
units: Some("J"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 42,
name: "avg_altitude",
type_name: "uint16",
array: None,
scale: Some(5_f64),
offset: Some(500_f64),
units: Some("m"),
components: COMPONENTS_LAP_38,
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 43,
name: "max_altitude",
type_name: "uint16",
array: None,
scale: Some(5_f64),
offset: Some(500_f64),
units: Some("m"),
components: COMPONENTS_LAP_39,
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 44,
name: "gps_accuracy",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: Some("m"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 45,
name: "avg_grade",
type_name: "sint16",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("%"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 46,
name: "avg_pos_grade",
type_name: "sint16",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("%"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 47,
name: "avg_neg_grade",
type_name: "sint16",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("%"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 48,
name: "max_pos_grade",
type_name: "sint16",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("%"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 49,
name: "max_neg_grade",
type_name: "sint16",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("%"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 50,
name: "avg_temperature",
type_name: "sint8",
array: None,
scale: None,
offset: None,
units: Some("C"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 51,
name: "max_temperature",
type_name: "sint8",
array: None,
scale: None,
offset: None,
units: Some("C"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 52,
name: "total_moving_time",
type_name: "uint32",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 53,
name: "avg_pos_vertical_speed",
type_name: "sint16",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("m/s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 54,
name: "avg_neg_vertical_speed",
type_name: "sint16",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("m/s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 55,
name: "max_pos_vertical_speed",
type_name: "sint16",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("m/s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 56,
name: "max_neg_vertical_speed",
type_name: "sint16",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("m/s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 57,
name: "time_in_hr_zone",
type_name: "uint32",
array: Some("[N]"),
scale: Some(1000_f64),
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 58,
name: "time_in_speed_zone",
type_name: "uint32",
array: Some("[N]"),
scale: Some(1000_f64),
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 59,
name: "time_in_cadence_zone",
type_name: "uint32",
array: Some("[N]"),
scale: Some(1000_f64),
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 60,
name: "time_in_power_zone",
type_name: "uint32",
array: Some("[N]"),
scale: Some(1000_f64),
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 61,
name: "repetition_num",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 62,
name: "min_altitude",
type_name: "uint16",
array: None,
scale: Some(5_f64),
offset: Some(500_f64),
units: Some("m"),
components: COMPONENTS_LAP_58,
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 63,
name: "min_heart_rate",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: Some("bpm"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 71,
name: "wkt_step_index",
type_name: "message_index",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 74,
name: "opponent_score",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 75,
name: "stroke_count",
type_name: "uint16",
array: Some("[N]"),
scale: None,
offset: None,
units: Some("counts"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 76,
name: "zone_count",
type_name: "uint16",
array: Some("[N]"),
scale: None,
offset: None,
units: Some("counts"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 77,
name: "avg_vertical_oscillation",
type_name: "uint16",
array: None,
scale: Some(10_f64),
offset: None,
units: Some("mm"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 78,
name: "avg_stance_time_percent",
type_name: "uint16",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("percent"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 79,
name: "avg_stance_time",
type_name: "uint16",
array: None,
scale: Some(10_f64),
offset: None,
units: Some("ms"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 80,
name: "avg_fractional_cadence",
type_name: "uint8",
array: None,
scale: Some(128_f64),
offset: None,
units: Some("rpm"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 81,
name: "max_fractional_cadence",
type_name: "uint8",
array: None,
scale: Some(128_f64),
offset: None,
units: Some("rpm"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 82,
name: "total_fractional_cycles",
type_name: "uint8",
array: None,
scale: Some(128_f64),
offset: None,
units: Some("cycles"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 83,
name: "player_score",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 84,
name: "avg_total_hemoglobin_conc",
type_name: "uint16",
array: Some("[N]"),
scale: Some(100_f64),
offset: None,
units: Some("g/dL"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 85,
name: "min_total_hemoglobin_conc",
type_name: "uint16",
array: Some("[N]"),
scale: Some(100_f64),
offset: None,
units: Some("g/dL"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 86,
name: "max_total_hemoglobin_conc",
type_name: "uint16",
array: Some("[N]"),
scale: Some(100_f64),
offset: None,
units: Some("g/dL"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 87,
name: "avg_saturated_hemoglobin_percent",
type_name: "uint16",
array: Some("[N]"),
scale: Some(10_f64),
offset: None,
units: Some("%"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 88,
name: "min_saturated_hemoglobin_percent",
type_name: "uint16",
array: Some("[N]"),
scale: Some(10_f64),
offset: None,
units: Some("%"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 89,
name: "max_saturated_hemoglobin_percent",
type_name: "uint16",
array: Some("[N]"),
scale: Some(10_f64),
offset: None,
units: Some("%"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 91,
name: "avg_left_torque_effectiveness",
type_name: "uint8",
array: None,
scale: Some(2_f64),
offset: None,
units: Some("percent"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 92,
name: "avg_right_torque_effectiveness",
type_name: "uint8",
array: None,
scale: Some(2_f64),
offset: None,
units: Some("percent"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 93,
name: "avg_left_pedal_smoothness",
type_name: "uint8",
array: None,
scale: Some(2_f64),
offset: None,
units: Some("percent"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 94,
name: "avg_right_pedal_smoothness",
type_name: "uint8",
array: None,
scale: Some(2_f64),
offset: None,
units: Some("percent"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 95,
name: "avg_combined_pedal_smoothness",
type_name: "uint8",
array: None,
scale: Some(2_f64),
offset: None,
units: Some("percent"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 98,
name: "time_standing",
type_name: "uint32",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 99,
name: "stand_count",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 100,
name: "avg_left_pco",
type_name: "sint8",
array: None,
scale: None,
offset: None,
units: Some("mm"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 101,
name: "avg_right_pco",
type_name: "sint8",
array: None,
scale: None,
offset: None,
units: Some("mm"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 102,
name: "avg_left_power_phase",
type_name: "uint8",
array: Some("[N]"),
scale: Some(0.7111111_f64),
offset: None,
units: Some("degrees"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 103,
name: "avg_left_power_phase_peak",
type_name: "uint8",
array: Some("[N]"),
scale: Some(0.7111111_f64),
offset: None,
units: Some("degrees"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 104,
name: "avg_right_power_phase",
type_name: "uint8",
array: Some("[N]"),
scale: Some(0.7111111_f64),
offset: None,
units: Some("degrees"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 105,
name: "avg_right_power_phase_peak",
type_name: "uint8",
array: Some("[N]"),
scale: Some(0.7111111_f64),
offset: None,
units: Some("degrees"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 106,
name: "avg_power_position",
type_name: "uint16",
array: Some("[N]"),
scale: None,
offset: None,
units: Some("watts"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 107,
name: "max_power_position",
type_name: "uint16",
array: Some("[N]"),
scale: None,
offset: None,
units: Some("watts"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 108,
name: "avg_cadence_position",
type_name: "uint8",
array: Some("[N]"),
scale: None,
offset: None,
units: Some("rpm"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 109,
name: "max_cadence_position",
type_name: "uint8",
array: Some("[N]"),
scale: None,
offset: None,
units: Some("rpm"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 110,
name: "enhanced_avg_speed",
type_name: "uint32",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("m/s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 111,
name: "enhanced_max_speed",
type_name: "uint32",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("m/s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 112,
name: "enhanced_avg_altitude",
type_name: "uint32",
array: None,
scale: Some(5_f64),
offset: Some(500_f64),
units: Some("m"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 113,
name: "enhanced_min_altitude",
type_name: "uint32",
array: None,
scale: Some(5_f64),
offset: Some(500_f64),
units: Some("m"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 114,
name: "enhanced_max_altitude",
type_name: "uint32",
array: None,
scale: Some(5_f64),
offset: Some(500_f64),
units: Some("m"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 115,
name: "avg_lev_motor_power",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("watts"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 116,
name: "max_lev_motor_power",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("watts"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 117,
name: "lev_battery_consumption",
type_name: "uint8",
array: None,
scale: Some(2_f64),
offset: None,
units: Some("percent"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 118,
name: "avg_vertical_ratio",
type_name: "uint16",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("percent"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 119,
name: "avg_stance_time_balance",
type_name: "uint16",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("percent"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 120,
name: "avg_step_length",
type_name: "uint16",
array: None,
scale: Some(10_f64),
offset: None,
units: Some("mm"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 121,
name: "avg_vam",
type_name: "uint16",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("m/s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 122,
name: "avg_depth",
type_name: "uint32",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("m"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 123,
name: "max_depth",
type_name: "uint32",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("m"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 124,
name: "min_temperature",
type_name: "sint8",
array: None,
scale: None,
offset: None,
units: Some("C"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 136,
name: "enhanced_avg_respiration_rate",
type_name: "uint16",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("Breaths/min"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 137,
name: "enhanced_max_respiration_rate",
type_name: "uint16",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("Breaths/min"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 147,
name: "avg_respiration_rate",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: COMPONENTS_LAP_111,
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 148,
name: "max_respiration_rate",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: COMPONENTS_LAP_112,
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 149,
name: "total_grit",
type_name: "float32",
array: None,
scale: None,
offset: None,
units: Some("kGrit"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 150,
name: "total_flow",
type_name: "float32",
array: None,
scale: None,
offset: None,
units: Some("Flow"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 151,
name: "jump_count",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 153,
name: "avg_grit",
type_name: "float32",
array: None,
scale: None,
offset: None,
units: Some("kGrit"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 154,
name: "avg_flow",
type_name: "float32",
array: None,
scale: None,
offset: None,
units: Some("Flow"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 156,
name: "total_fractional_ascent",
type_name: "uint8",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("m"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 157,
name: "total_fractional_descent",
type_name: "uint8",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("m"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 158,
name: "avg_core_temperature",
type_name: "uint16",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("C"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 159,
name: "min_core_temperature",
type_name: "uint16",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("C"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 160,
name: "max_core_temperature",
type_name: "uint16",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("C"),
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_LAP: MesgInfo = MesgInfo {
name: "lap",
fields: FIELDS_LAP,
};
static COMPONENTS_LENGTH_20: &[Component] = &[Component {
name: "enhanced_avg_respiration_rate",
bits: 8,
scale: None,
offset: None,
units: None,
accumulate: false,
}];
static COMPONENTS_LENGTH_21: &[Component] = &[Component {
name: "enhanced_max_respiration_rate",
bits: 8,
scale: None,
offset: None,
units: None,
accumulate: false,
}];
static FIELDS_LENGTH: &[FieldInfo] = &[
FieldInfo {
field_def_num: 254,
name: "message_index",
type_name: "message_index",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 253,
name: "timestamp",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "event",
type_name: "event",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "event_type",
type_name: "event_type",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "start_time",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 3,
name: "total_elapsed_time",
type_name: "uint32",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 4,
name: "total_timer_time",
type_name: "uint32",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 5,
name: "total_strokes",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("strokes"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 6,
name: "avg_speed",
type_name: "uint16",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("m/s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 7,
name: "swim_stroke",
type_name: "swim_stroke",
array: None,
scale: None,
offset: None,
units: Some("swim_stroke"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 9,
name: "avg_swimming_cadence",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: Some("strokes/min"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 10,
name: "event_group",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 11,
name: "total_calories",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("kcal"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 12,
name: "length_type",
type_name: "length_type",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 18,
name: "player_score",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 19,
name: "opponent_score",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 20,
name: "stroke_count",
type_name: "uint16",
array: Some("[N]"),
scale: None,
offset: None,
units: Some("counts"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 21,
name: "zone_count",
type_name: "uint16",
array: Some("[N]"),
scale: None,
offset: None,
units: Some("counts"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 22,
name: "enhanced_avg_respiration_rate",
type_name: "uint16",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("Breaths/min"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 23,
name: "enhanced_max_respiration_rate",
type_name: "uint16",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("Breaths/min"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 24,
name: "avg_respiration_rate",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: COMPONENTS_LENGTH_20,
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 25,
name: "max_respiration_rate",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: COMPONENTS_LENGTH_21,
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_LENGTH: MesgInfo = MesgInfo {
name: "length",
fields: FIELDS_LENGTH,
};
static COMPONENTS_RECORD_3: &[Component] = &[Component {
name: "enhanced_altitude",
bits: 16,
scale: None,
offset: None,
units: None,
accumulate: false,
}];
static COMPONENTS_RECORD_7: &[Component] = &[Component {
name: "enhanced_speed",
bits: 16,
scale: None,
offset: None,
units: None,
accumulate: false,
}];
static COMPONENTS_RECORD_9: &[Component] = &[
Component {
name: "speed",
bits: 12,
scale: None,
offset: None,
units: None,
accumulate: false,
},
Component {
name: "distance",
bits: 12,
scale: None,
offset: None,
units: None,
accumulate: true,
},
];
static COMPONENTS_RECORD_16: &[Component] = &[Component {
name: "total_cycles",
bits: 8,
scale: None,
offset: None,
units: None,
accumulate: true,
}];
static COMPONENTS_RECORD_18: &[Component] = &[Component {
name: "accumulated_power",
bits: 16,
scale: None,
offset: None,
units: None,
accumulate: true,
}];
static COMPONENTS_RECORD_68: &[Component] = &[Component {
name: "enhanced_respiration_rate",
bits: 8,
scale: None,
offset: None,
units: None,
accumulate: false,
}];
static FIELDS_RECORD: &[FieldInfo] = &[
FieldInfo {
field_def_num: 253,
name: "timestamp",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "position_lat",
type_name: "sint32",
array: None,
scale: None,
offset: None,
units: Some("semicircles"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "position_long",
type_name: "sint32",
array: None,
scale: None,
offset: None,
units: Some("semicircles"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "altitude",
type_name: "uint16",
array: None,
scale: Some(5_f64),
offset: Some(500_f64),
units: Some("m"),
components: COMPONENTS_RECORD_3,
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 3,
name: "heart_rate",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: Some("bpm"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 4,
name: "cadence",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: Some("rpm"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 5,
name: "distance",
type_name: "uint32",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("m"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 6,
name: "speed",
type_name: "uint16",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("m/s"),
components: COMPONENTS_RECORD_7,
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 7,
name: "power",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("watts"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 8,
name: "compressed_speed_distance",
type_name: "byte",
array: Some("[3]"),
scale: Some(100_f64),
offset: None,
units: Some("m/s,m"),
components: COMPONENTS_RECORD_9,
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 9,
name: "grade",
type_name: "sint16",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("%"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 10,
name: "resistance",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 11,
name: "time_from_course",
type_name: "sint32",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 12,
name: "cycle_length",
type_name: "uint8",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("m"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 13,
name: "temperature",
type_name: "sint8",
array: None,
scale: None,
offset: None,
units: Some("C"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 17,
name: "speed_1s",
type_name: "uint8",
array: Some("[N]"),
scale: Some(16_f64),
offset: None,
units: Some("m/s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 18,
name: "cycles",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: Some("cycles"),
components: COMPONENTS_RECORD_16,
sub_fields: &[],
accumulate: true,
},
FieldInfo {
field_def_num: 19,
name: "total_cycles",
type_name: "uint32",
array: None,
scale: None,
offset: None,
units: Some("cycles"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 28,
name: "compressed_accumulated_power",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("watts"),
components: COMPONENTS_RECORD_18,
sub_fields: &[],
accumulate: true,
},
FieldInfo {
field_def_num: 29,
name: "accumulated_power",
type_name: "uint32",
array: None,
scale: None,
offset: None,
units: Some("watts"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 30,
name: "left_right_balance",
type_name: "left_right_balance",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 31,
name: "gps_accuracy",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: Some("m"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 32,
name: "vertical_speed",
type_name: "sint16",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("m/s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 33,
name: "calories",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("kcal"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 39,
name: "vertical_oscillation",
type_name: "uint16",
array: None,
scale: Some(10_f64),
offset: None,
units: Some("mm"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 40,
name: "stance_time_percent",
type_name: "uint16",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("percent"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 41,
name: "stance_time",
type_name: "uint16",
array: None,
scale: Some(10_f64),
offset: None,
units: Some("ms"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 42,
name: "activity_type",
type_name: "activity_type",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 43,
name: "left_torque_effectiveness",
type_name: "uint8",
array: None,
scale: Some(2_f64),
offset: None,
units: Some("percent"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 44,
name: "right_torque_effectiveness",
type_name: "uint8",
array: None,
scale: Some(2_f64),
offset: None,
units: Some("percent"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 45,
name: "left_pedal_smoothness",
type_name: "uint8",
array: None,
scale: Some(2_f64),
offset: None,
units: Some("percent"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 46,
name: "right_pedal_smoothness",
type_name: "uint8",
array: None,
scale: Some(2_f64),
offset: None,
units: Some("percent"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 47,
name: "combined_pedal_smoothness",
type_name: "uint8",
array: None,
scale: Some(2_f64),
offset: None,
units: Some("percent"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 48,
name: "time128",
type_name: "uint8",
array: None,
scale: Some(128_f64),
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 49,
name: "stroke_type",
type_name: "stroke_type",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 50,
name: "zone",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 51,
name: "ball_speed",
type_name: "uint16",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("m/s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 52,
name: "cadence256",
type_name: "uint16",
array: None,
scale: Some(256_f64),
offset: None,
units: Some("rpm"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 53,
name: "fractional_cadence",
type_name: "uint8",
array: None,
scale: Some(128_f64),
offset: None,
units: Some("rpm"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 54,
name: "total_hemoglobin_conc",
type_name: "uint16",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("g/dL"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 55,
name: "total_hemoglobin_conc_min",
type_name: "uint16",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("g/dL"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 56,
name: "total_hemoglobin_conc_max",
type_name: "uint16",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("g/dL"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 57,
name: "saturated_hemoglobin_percent",
type_name: "uint16",
array: None,
scale: Some(10_f64),
offset: None,
units: Some("%"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 58,
name: "saturated_hemoglobin_percent_min",
type_name: "uint16",
array: None,
scale: Some(10_f64),
offset: None,
units: Some("%"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 59,
name: "saturated_hemoglobin_percent_max",
type_name: "uint16",
array: None,
scale: Some(10_f64),
offset: None,
units: Some("%"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 62,
name: "device_index",
type_name: "device_index",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 67,
name: "left_pco",
type_name: "sint8",
array: None,
scale: None,
offset: None,
units: Some("mm"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 68,
name: "right_pco",
type_name: "sint8",
array: None,
scale: None,
offset: None,
units: Some("mm"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 69,
name: "left_power_phase",
type_name: "uint8",
array: Some("[N]"),
scale: Some(0.7111111_f64),
offset: None,
units: Some("degrees"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 70,
name: "left_power_phase_peak",
type_name: "uint8",
array: Some("[N]"),
scale: Some(0.7111111_f64),
offset: None,
units: Some("degrees"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 71,
name: "right_power_phase",
type_name: "uint8",
array: Some("[N]"),
scale: Some(0.7111111_f64),
offset: None,
units: Some("degrees"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 72,
name: "right_power_phase_peak",
type_name: "uint8",
array: Some("[N]"),
scale: Some(0.7111111_f64),
offset: None,
units: Some("degrees"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 73,
name: "enhanced_speed",
type_name: "uint32",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("m/s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 78,
name: "enhanced_altitude",
type_name: "uint32",
array: None,
scale: Some(5_f64),
offset: Some(500_f64),
units: Some("m"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 81,
name: "battery_soc",
type_name: "uint8",
array: None,
scale: Some(2_f64),
offset: None,
units: Some("percent"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 82,
name: "motor_power",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("watts"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 83,
name: "vertical_ratio",
type_name: "uint16",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("percent"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 84,
name: "stance_time_balance",
type_name: "uint16",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("percent"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 85,
name: "step_length",
type_name: "uint16",
array: None,
scale: Some(10_f64),
offset: None,
units: Some("mm"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 87,
name: "cycle_length16",
type_name: "uint16",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("m"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 91,
name: "absolute_pressure",
type_name: "uint32",
array: None,
scale: None,
offset: None,
units: Some("Pa"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 92,
name: "depth",
type_name: "uint32",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("m"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 93,
name: "next_stop_depth",
type_name: "uint32",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("m"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 94,
name: "next_stop_time",
type_name: "uint32",
array: None,
scale: Some(1_f64),
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 95,
name: "time_to_surface",
type_name: "uint32",
array: None,
scale: Some(1_f64),
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 96,
name: "ndl_time",
type_name: "uint32",
array: None,
scale: Some(1_f64),
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 97,
name: "cns_load",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: Some("percent"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 98,
name: "n2_load",
type_name: "uint16",
array: None,
scale: Some(1_f64),
offset: None,
units: Some("percent"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 99,
name: "respiration_rate",
type_name: "uint8",
array: None,
scale: Some(1_f64),
offset: None,
units: Some("s"),
components: COMPONENTS_RECORD_68,
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 108,
name: "enhanced_respiration_rate",
type_name: "uint16",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("Breaths/min"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 114,
name: "grit",
type_name: "float32",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 115,
name: "flow",
type_name: "float32",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 116,
name: "current_stress",
type_name: "uint16",
array: None,
scale: Some(100_f64),
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 117,
name: "ebike_travel_range",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("km"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 118,
name: "ebike_battery_level",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: Some("percent"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 119,
name: "ebike_assist_mode",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: Some("depends on sensor"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 120,
name: "ebike_assist_level_percent",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: Some("percent"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 123,
name: "air_time_remaining",
type_name: "uint32",
array: None,
scale: None,
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 124,
name: "pressure_sac",
type_name: "uint16",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("bar/min"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 125,
name: "volume_sac",
type_name: "uint16",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("L/min"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 126,
name: "rmv",
type_name: "uint16",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("L/min"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 127,
name: "ascent_rate",
type_name: "sint32",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("m/s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 129,
name: "po2",
type_name: "uint8",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("percent"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 139,
name: "core_temperature",
type_name: "uint16",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("C"),
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_RECORD: MesgInfo = MesgInfo {
name: "record",
fields: FIELDS_RECORD,
};
static COMPONENTS_EVENT_3: &[Component] = &[Component {
name: "data",
bits: 16,
scale: None,
offset: None,
units: None,
accumulate: false,
}];
static SUBFIELD_COMPONENTS_EVENT_4_16: &[Component] = &[
Component {
name: "score",
bits: 16,
scale: None,
offset: None,
units: None,
accumulate: false,
},
Component {
name: "opponent_score",
bits: 16,
scale: None,
offset: None,
units: None,
accumulate: false,
},
];
static SUBFIELD_COMPONENTS_EVENT_4_17: &[Component] = &[
Component {
name: "rear_gear_num",
bits: 8,
scale: None,
offset: None,
units: None,
accumulate: false,
},
Component {
name: "rear_gear",
bits: 8,
scale: None,
offset: None,
units: None,
accumulate: false,
},
Component {
name: "front_gear_num",
bits: 8,
scale: None,
offset: None,
units: None,
accumulate: false,
},
Component {
name: "front_gear",
bits: 8,
scale: None,
offset: None,
units: None,
accumulate: false,
},
];
static SUBFIELD_COMPONENTS_EVENT_4_22: &[Component] = &[
Component {
name: "radar_threat_level_max",
bits: 8,
scale: None,
offset: None,
units: None,
accumulate: false,
},
Component {
name: "radar_threat_count",
bits: 8,
scale: None,
offset: None,
units: None,
accumulate: false,
},
Component {
name: "radar_threat_avg_approach_speed",
bits: 8,
scale: None,
offset: None,
units: None,
accumulate: false,
},
Component {
name: "radar_threat_max_approach_speed",
bits: 8,
scale: None,
offset: None,
units: None,
accumulate: false,
},
];
static SUBFIELDS_EVENT_4: &[SubField] = &[
SubField {
name: "timer_trigger",
type_name: "timer_trigger",
conditions: &[("event", "timer")],
components: &[],
scale: None,
offset: None,
units: None,
},
SubField {
name: "course_point_index",
type_name: "message_index",
conditions: &[("event", "course_point")],
components: &[],
scale: None,
offset: None,
units: None,
},
SubField {
name: "battery_level",
type_name: "uint16",
conditions: &[("event", "battery")],
components: &[],
scale: Some(1000_f64),
offset: None,
units: Some("V"),
},
SubField {
name: "virtual_partner_speed",
type_name: "uint16",
conditions: &[("event", "virtual_partner_pace")],
components: &[],
scale: Some(1000_f64),
offset: None,
units: Some("m/s"),
},
SubField {
name: "hr_high_alert",
type_name: "uint8",
conditions: &[("event", "hr_high_alert")],
components: &[],
scale: None,
offset: None,
units: Some("bpm"),
},
SubField {
name: "hr_low_alert",
type_name: "uint8",
conditions: &[("event", "hr_low_alert")],
components: &[],
scale: None,
offset: None,
units: Some("bpm"),
},
SubField {
name: "speed_high_alert",
type_name: "uint32",
conditions: &[("event", "speed_high_alert")],
components: &[],
scale: Some(1000_f64),
offset: None,
units: Some("m/s"),
},
SubField {
name: "speed_low_alert",
type_name: "uint32",
conditions: &[("event", "speed_low_alert")],
components: &[],
scale: Some(1000_f64),
offset: None,
units: Some("m/s"),
},
SubField {
name: "cad_high_alert",
type_name: "uint16",
conditions: &[("event", "cad_high_alert")],
components: &[],
scale: None,
offset: None,
units: Some("rpm"),
},
SubField {
name: "cad_low_alert",
type_name: "uint16",
conditions: &[("event", "cad_low_alert")],
components: &[],
scale: None,
offset: None,
units: Some("rpm"),
},
SubField {
name: "power_high_alert",
type_name: "uint16",
conditions: &[("event", "power_high_alert")],
components: &[],
scale: None,
offset: None,
units: Some("watts"),
},
SubField {
name: "power_low_alert",
type_name: "uint16",
conditions: &[("event", "power_low_alert")],
components: &[],
scale: None,
offset: None,
units: Some("watts"),
},
SubField {
name: "time_duration_alert",
type_name: "uint32",
conditions: &[("event", "time_duration_alert")],
components: &[],
scale: Some(1000_f64),
offset: None,
units: Some("s"),
},
SubField {
name: "distance_duration_alert",
type_name: "uint32",
conditions: &[("event", "distance_duration_alert")],
components: &[],
scale: Some(100_f64),
offset: None,
units: Some("m"),
},
SubField {
name: "calorie_duration_alert",
type_name: "uint32",
conditions: &[("event", "calorie_duration_alert")],
components: &[],
scale: None,
offset: None,
units: Some("calories"),
},
SubField {
name: "fitness_equipment_state",
type_name: "fitness_equipment_state",
conditions: &[("event", "fitness_equipment")],
components: &[],
scale: None,
offset: None,
units: None,
},
SubField {
name: "sport_point",
type_name: "uint32",
conditions: &[("event", "sport_point")],
components: SUBFIELD_COMPONENTS_EVENT_4_16,
scale: Some(1_f64),
offset: None,
units: None,
},
SubField {
name: "gear_change_data",
type_name: "uint32",
conditions: &[
("event", "front_gear_change"),
("event", "rear_gear_change"),
],
components: SUBFIELD_COMPONENTS_EVENT_4_17,
scale: Some(1_f64),
offset: None,
units: None,
},
SubField {
name: "rider_position",
type_name: "rider_position_type",
conditions: &[("event", "rider_position_change")],
components: &[],
scale: None,
offset: None,
units: None,
},
SubField {
name: "comm_timeout",
type_name: "comm_timeout_type",
conditions: &[("event", "comm_timeout")],
components: &[],
scale: None,
offset: None,
units: None,
},
SubField {
name: "dive_alert",
type_name: "dive_alert",
conditions: &[("event", "dive_alert")],
components: &[],
scale: None,
offset: None,
units: None,
},
SubField {
name: "auto_activity_detect_duration",
type_name: "uint16",
conditions: &[("event", "auto_activity_detect")],
components: &[],
scale: None,
offset: None,
units: Some("min"),
},
SubField {
name: "radar_threat_alert",
type_name: "uint32",
conditions: &[("event", "radar_threat_alert")],
components: SUBFIELD_COMPONENTS_EVENT_4_22,
scale: Some(1_f64),
offset: None,
units: None,
},
];
static SUBFIELDS_EVENT_14: &[SubField] = &[SubField {
name: "auto_activity_detect_start_timestamp",
type_name: "date_time",
conditions: &[("event", "auto_activity_detect")],
components: &[],
scale: None,
offset: None,
units: Some("s"),
}];
static FIELDS_EVENT: &[FieldInfo] = &[
FieldInfo {
field_def_num: 253,
name: "timestamp",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "event",
type_name: "event",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "event_type",
type_name: "event_type",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "data16",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: None,
components: COMPONENTS_EVENT_3,
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 3,
name: "data",
type_name: "uint32",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: SUBFIELDS_EVENT_4,
accumulate: false,
},
FieldInfo {
field_def_num: 4,
name: "event_group",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 7,
name: "score",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 8,
name: "opponent_score",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 9,
name: "front_gear_num",
type_name: "uint8z",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 10,
name: "front_gear",
type_name: "uint8z",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 11,
name: "rear_gear_num",
type_name: "uint8z",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 12,
name: "rear_gear",
type_name: "uint8z",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 13,
name: "device_index",
type_name: "device_index",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 14,
name: "activity_type",
type_name: "activity_type",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 15,
name: "start_timestamp",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: Some("s"),
components: &[],
sub_fields: SUBFIELDS_EVENT_14,
accumulate: false,
},
FieldInfo {
field_def_num: 21,
name: "radar_threat_level_max",
type_name: "radar_threat_level_type",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 22,
name: "radar_threat_count",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 23,
name: "radar_threat_avg_approach_speed",
type_name: "uint8",
array: None,
scale: Some(10_f64),
offset: None,
units: Some("m/s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 24,
name: "radar_threat_max_approach_speed",
type_name: "uint8",
array: None,
scale: Some(10_f64),
offset: None,
units: Some("m/s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_EVENT: MesgInfo = MesgInfo {
name: "event",
fields: FIELDS_EVENT,
};
static SUBFIELDS_DEVICE_INFO_2: &[SubField] = &[
SubField {
name: "ble_device_type",
type_name: "ble_device_type",
conditions: &[("source_type", "bluetooth_low_energy")],
components: &[],
scale: None,
offset: None,
units: None,
},
SubField {
name: "antplus_device_type",
type_name: "antplus_device_type",
conditions: &[("source_type", "antplus")],
components: &[],
scale: None,
offset: None,
units: None,
},
SubField {
name: "ant_device_type",
type_name: "uint8",
conditions: &[("source_type", "ant")],
components: &[],
scale: None,
offset: None,
units: None,
},
SubField {
name: "local_device_type",
type_name: "local_device_type",
conditions: &[("source_type", "local")],
components: &[],
scale: None,
offset: None,
units: None,
},
];
static SUBFIELDS_DEVICE_INFO_5: &[SubField] = &[
SubField {
name: "favero_product",
type_name: "favero_product",
conditions: &[("manufacturer", "favero_electronics")],
components: &[],
scale: None,
offset: None,
units: None,
},
SubField {
name: "garmin_product",
type_name: "garmin_product",
conditions: &[
("manufacturer", "garmin"),
("manufacturer", "dynastream"),
("manufacturer", "dynastream_oem"),
("manufacturer", "tacx"),
],
components: &[],
scale: None,
offset: None,
units: None,
},
];
static FIELDS_DEVICE_INFO: &[FieldInfo] = &[
FieldInfo {
field_def_num: 253,
name: "timestamp",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "device_index",
type_name: "device_index",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "device_type",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: SUBFIELDS_DEVICE_INFO_2,
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "manufacturer",
type_name: "manufacturer",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 3,
name: "serial_number",
type_name: "uint32z",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 4,
name: "product",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: SUBFIELDS_DEVICE_INFO_5,
accumulate: false,
},
FieldInfo {
field_def_num: 5,
name: "software_version",
type_name: "uint16",
array: None,
scale: Some(100_f64),
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 6,
name: "hardware_version",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 7,
name: "cum_operating_time",
type_name: "uint32",
array: None,
scale: None,
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 10,
name: "battery_voltage",
type_name: "uint16",
array: None,
scale: Some(256_f64),
offset: None,
units: Some("V"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 11,
name: "battery_status",
type_name: "battery_status",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 18,
name: "sensor_position",
type_name: "body_location",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 19,
name: "descriptor",
type_name: "string",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 20,
name: "ant_transmission_type",
type_name: "uint8z",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 21,
name: "ant_device_number",
type_name: "uint16z",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 22,
name: "ant_network",
type_name: "ant_network",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 25,
name: "source_type",
type_name: "source_type",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 27,
name: "product_name",
type_name: "string",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 32,
name: "battery_level",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: Some("%"),
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_DEVICE_INFO: MesgInfo = MesgInfo {
name: "device_info",
fields: FIELDS_DEVICE_INFO,
};
static FIELDS_DEVICE_AUX_BATTERY_INFO: &[FieldInfo] = &[
FieldInfo {
field_def_num: 253,
name: "timestamp",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "device_index",
type_name: "device_index",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "battery_voltage",
type_name: "uint16",
array: None,
scale: Some(256_f64),
offset: None,
units: Some("V"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "battery_status",
type_name: "battery_status",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 3,
name: "battery_identifier",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_DEVICE_AUX_BATTERY_INFO: MesgInfo = MesgInfo {
name: "device_aux_battery_info",
fields: FIELDS_DEVICE_AUX_BATTERY_INFO,
};
static SUBFIELDS_TRAINING_FILE_3: &[SubField] = &[
SubField {
name: "favero_product",
type_name: "favero_product",
conditions: &[("manufacturer", "favero_electronics")],
components: &[],
scale: None,
offset: None,
units: None,
},
SubField {
name: "garmin_product",
type_name: "garmin_product",
conditions: &[
("manufacturer", "garmin"),
("manufacturer", "dynastream"),
("manufacturer", "dynastream_oem"),
("manufacturer", "tacx"),
],
components: &[],
scale: None,
offset: None,
units: None,
},
];
static FIELDS_TRAINING_FILE: &[FieldInfo] = &[
FieldInfo {
field_def_num: 253,
name: "timestamp",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "type",
type_name: "file",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "manufacturer",
type_name: "manufacturer",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "product",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: SUBFIELDS_TRAINING_FILE_3,
accumulate: false,
},
FieldInfo {
field_def_num: 3,
name: "serial_number",
type_name: "uint32z",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 4,
name: "time_created",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_TRAINING_FILE: MesgInfo = MesgInfo {
name: "training_file",
fields: FIELDS_TRAINING_FILE,
};
static FIELDS_WEATHER_CONDITIONS: &[FieldInfo] = &[
FieldInfo {
field_def_num: 253,
name: "timestamp",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "weather_report",
type_name: "weather_report",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "temperature",
type_name: "sint8",
array: None,
scale: None,
offset: None,
units: Some("C"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "condition",
type_name: "weather_status",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 3,
name: "wind_direction",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("degrees"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 4,
name: "wind_speed",
type_name: "uint16",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("m/s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 5,
name: "precipitation_probability",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 6,
name: "temperature_feels_like",
type_name: "sint8",
array: None,
scale: None,
offset: None,
units: Some("C"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 7,
name: "relative_humidity",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 8,
name: "location",
type_name: "string",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 9,
name: "observed_at_time",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 10,
name: "observed_location_lat",
type_name: "sint32",
array: None,
scale: None,
offset: None,
units: Some("semicircles"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 11,
name: "observed_location_long",
type_name: "sint32",
array: None,
scale: None,
offset: None,
units: Some("semicircles"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 12,
name: "day_of_week",
type_name: "day_of_week",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 13,
name: "high_temperature",
type_name: "sint8",
array: None,
scale: None,
offset: None,
units: Some("C"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 14,
name: "low_temperature",
type_name: "sint8",
array: None,
scale: None,
offset: None,
units: Some("C"),
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_WEATHER_CONDITIONS: MesgInfo = MesgInfo {
name: "weather_conditions",
fields: FIELDS_WEATHER_CONDITIONS,
};
static FIELDS_WEATHER_ALERT: &[FieldInfo] = &[
FieldInfo {
field_def_num: 253,
name: "timestamp",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "report_id",
type_name: "string",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "issue_time",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "expire_time",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 3,
name: "severity",
type_name: "weather_severity",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 4,
name: "type",
type_name: "weather_severe_type",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_WEATHER_ALERT: MesgInfo = MesgInfo {
name: "weather_alert",
fields: FIELDS_WEATHER_ALERT,
};
static FIELDS_GPS_METADATA: &[FieldInfo] = &[
FieldInfo {
field_def_num: 253,
name: "timestamp",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "timestamp_ms",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("ms"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "position_lat",
type_name: "sint32",
array: None,
scale: None,
offset: None,
units: Some("semicircles"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "position_long",
type_name: "sint32",
array: None,
scale: None,
offset: None,
units: Some("semicircles"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 3,
name: "enhanced_altitude",
type_name: "uint32",
array: None,
scale: Some(5_f64),
offset: Some(500_f64),
units: Some("m"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 4,
name: "enhanced_speed",
type_name: "uint32",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("m/s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 5,
name: "heading",
type_name: "uint16",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("degrees"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 6,
name: "utc_timestamp",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 7,
name: "velocity",
type_name: "sint16",
array: Some("[3]"),
scale: Some(100_f64),
offset: None,
units: Some("m/s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_GPS_METADATA: MesgInfo = MesgInfo {
name: "gps_metadata",
fields: FIELDS_GPS_METADATA,
};
static FIELDS_CAMERA_EVENT: &[FieldInfo] = &[
FieldInfo {
field_def_num: 253,
name: "timestamp",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "timestamp_ms",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("ms"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "camera_event_type",
type_name: "camera_event_type",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "camera_file_uuid",
type_name: "string",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 3,
name: "camera_orientation",
type_name: "camera_orientation_type",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_CAMERA_EVENT: MesgInfo = MesgInfo {
name: "camera_event",
fields: FIELDS_CAMERA_EVENT,
};
static FIELDS_GYROSCOPE_DATA: &[FieldInfo] = &[
FieldInfo {
field_def_num: 253,
name: "timestamp",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "timestamp_ms",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("ms"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "sample_time_offset",
type_name: "uint16",
array: Some("[N]"),
scale: None,
offset: None,
units: Some("ms"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "gyro_x",
type_name: "uint16",
array: Some("[N]"),
scale: None,
offset: None,
units: Some("counts"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 3,
name: "gyro_y",
type_name: "uint16",
array: Some("[N]"),
scale: None,
offset: None,
units: Some("counts"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 4,
name: "gyro_z",
type_name: "uint16",
array: Some("[N]"),
scale: None,
offset: None,
units: Some("counts"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 5,
name: "calibrated_gyro_x",
type_name: "float32",
array: Some("[N]"),
scale: None,
offset: None,
units: Some("deg/s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 6,
name: "calibrated_gyro_y",
type_name: "float32",
array: Some("[N]"),
scale: None,
offset: None,
units: Some("deg/s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 7,
name: "calibrated_gyro_z",
type_name: "float32",
array: Some("[N]"),
scale: None,
offset: None,
units: Some("deg/s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_GYROSCOPE_DATA: MesgInfo = MesgInfo {
name: "gyroscope_data",
fields: FIELDS_GYROSCOPE_DATA,
};
static FIELDS_ACCELEROMETER_DATA: &[FieldInfo] = &[
FieldInfo {
field_def_num: 253,
name: "timestamp",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "timestamp_ms",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("ms"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "sample_time_offset",
type_name: "uint16",
array: Some("[N]"),
scale: None,
offset: None,
units: Some("ms"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "accel_x",
type_name: "uint16",
array: Some("[N]"),
scale: None,
offset: None,
units: Some("counts"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 3,
name: "accel_y",
type_name: "uint16",
array: Some("[N]"),
scale: None,
offset: None,
units: Some("counts"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 4,
name: "accel_z",
type_name: "uint16",
array: Some("[N]"),
scale: None,
offset: None,
units: Some("counts"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 5,
name: "calibrated_accel_x",
type_name: "float32",
array: Some("[N]"),
scale: None,
offset: None,
units: Some("g"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 6,
name: "calibrated_accel_y",
type_name: "float32",
array: Some("[N]"),
scale: None,
offset: None,
units: Some("g"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 7,
name: "calibrated_accel_z",
type_name: "float32",
array: Some("[N]"),
scale: None,
offset: None,
units: Some("g"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 8,
name: "compressed_calibrated_accel_x",
type_name: "sint16",
array: Some("[N]"),
scale: None,
offset: None,
units: Some("mG"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 9,
name: "compressed_calibrated_accel_y",
type_name: "sint16",
array: Some("[N]"),
scale: None,
offset: None,
units: Some("mG"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 10,
name: "compressed_calibrated_accel_z",
type_name: "sint16",
array: Some("[N]"),
scale: None,
offset: None,
units: Some("mG"),
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_ACCELEROMETER_DATA: MesgInfo = MesgInfo {
name: "accelerometer_data",
fields: FIELDS_ACCELEROMETER_DATA,
};
static FIELDS_MAGNETOMETER_DATA: &[FieldInfo] = &[
FieldInfo {
field_def_num: 253,
name: "timestamp",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "timestamp_ms",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("ms"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "sample_time_offset",
type_name: "uint16",
array: Some("[N]"),
scale: None,
offset: None,
units: Some("ms"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "mag_x",
type_name: "uint16",
array: Some("[N]"),
scale: None,
offset: None,
units: Some("counts"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 3,
name: "mag_y",
type_name: "uint16",
array: Some("[N]"),
scale: None,
offset: None,
units: Some("counts"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 4,
name: "mag_z",
type_name: "uint16",
array: Some("[N]"),
scale: None,
offset: None,
units: Some("counts"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 5,
name: "calibrated_mag_x",
type_name: "float32",
array: Some("[N]"),
scale: None,
offset: None,
units: Some("G"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 6,
name: "calibrated_mag_y",
type_name: "float32",
array: Some("[N]"),
scale: None,
offset: None,
units: Some("G"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 7,
name: "calibrated_mag_z",
type_name: "float32",
array: Some("[N]"),
scale: None,
offset: None,
units: Some("G"),
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_MAGNETOMETER_DATA: MesgInfo = MesgInfo {
name: "magnetometer_data",
fields: FIELDS_MAGNETOMETER_DATA,
};
static FIELDS_BAROMETER_DATA: &[FieldInfo] = &[
FieldInfo {
field_def_num: 253,
name: "timestamp",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "timestamp_ms",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("ms"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "sample_time_offset",
type_name: "uint16",
array: Some("[N]"),
scale: None,
offset: None,
units: Some("ms"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "baro_pres",
type_name: "uint32",
array: Some("[N]"),
scale: None,
offset: None,
units: Some("Pa"),
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_BAROMETER_DATA: MesgInfo = MesgInfo {
name: "barometer_data",
fields: FIELDS_BAROMETER_DATA,
};
static SUBFIELDS_THREE_D_SENSOR_CALIBRATION_2: &[SubField] = &[
SubField {
name: "accel_cal_factor",
type_name: "uint32",
conditions: &[("sensor_type", "accelerometer")],
components: &[],
scale: None,
offset: None,
units: Some("g"),
},
SubField {
name: "gyro_cal_factor",
type_name: "uint32",
conditions: &[("sensor_type", "gyroscope")],
components: &[],
scale: None,
offset: None,
units: Some("deg/s"),
},
];
static FIELDS_THREE_D_SENSOR_CALIBRATION: &[FieldInfo] = &[
FieldInfo {
field_def_num: 253,
name: "timestamp",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "sensor_type",
type_name: "sensor_type",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "calibration_factor",
type_name: "uint32",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: SUBFIELDS_THREE_D_SENSOR_CALIBRATION_2,
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "calibration_divisor",
type_name: "uint32",
array: None,
scale: None,
offset: None,
units: Some("counts"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 3,
name: "level_shift",
type_name: "uint32",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 4,
name: "offset_cal",
type_name: "sint32",
array: Some("[3]"),
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 5,
name: "orientation_matrix",
type_name: "sint32",
array: Some("[9]"),
scale: Some(65535_f64),
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_THREE_D_SENSOR_CALIBRATION: MesgInfo = MesgInfo {
name: "three_d_sensor_calibration",
fields: FIELDS_THREE_D_SENSOR_CALIBRATION,
};
static SUBFIELDS_ONE_D_SENSOR_CALIBRATION_2: &[SubField] = &[SubField {
name: "baro_cal_factor",
type_name: "uint32",
conditions: &[("sensor_type", "barometer")],
components: &[],
scale: None,
offset: None,
units: Some("Pa"),
}];
static FIELDS_ONE_D_SENSOR_CALIBRATION: &[FieldInfo] = &[
FieldInfo {
field_def_num: 253,
name: "timestamp",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "sensor_type",
type_name: "sensor_type",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "calibration_factor",
type_name: "uint32",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: SUBFIELDS_ONE_D_SENSOR_CALIBRATION_2,
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "calibration_divisor",
type_name: "uint32",
array: None,
scale: None,
offset: None,
units: Some("counts"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 3,
name: "level_shift",
type_name: "uint32",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 4,
name: "offset_cal",
type_name: "sint32",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_ONE_D_SENSOR_CALIBRATION: MesgInfo = MesgInfo {
name: "one_d_sensor_calibration",
fields: FIELDS_ONE_D_SENSOR_CALIBRATION,
};
static FIELDS_VIDEO_FRAME: &[FieldInfo] = &[
FieldInfo {
field_def_num: 253,
name: "timestamp",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "timestamp_ms",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("ms"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "frame_number",
type_name: "uint32",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_VIDEO_FRAME: MesgInfo = MesgInfo {
name: "video_frame",
fields: FIELDS_VIDEO_FRAME,
};
static FIELDS_OBDII_DATA: &[FieldInfo] = &[
FieldInfo {
field_def_num: 253,
name: "timestamp",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "timestamp_ms",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("ms"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "time_offset",
type_name: "uint16",
array: Some("[N]"),
scale: None,
offset: None,
units: Some("ms"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "pid",
type_name: "byte",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 3,
name: "raw_data",
type_name: "byte",
array: Some("[N]"),
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 4,
name: "pid_data_size",
type_name: "uint8",
array: Some("[N]"),
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 5,
name: "system_time",
type_name: "uint32",
array: Some("[N]"),
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 6,
name: "start_timestamp",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 7,
name: "start_timestamp_ms",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("ms"),
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_OBDII_DATA: MesgInfo = MesgInfo {
name: "obdii_data",
fields: FIELDS_OBDII_DATA,
};
static FIELDS_NMEA_SENTENCE: &[FieldInfo] = &[
FieldInfo {
field_def_num: 253,
name: "timestamp",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "timestamp_ms",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("ms"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "sentence",
type_name: "string",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_NMEA_SENTENCE: MesgInfo = MesgInfo {
name: "nmea_sentence",
fields: FIELDS_NMEA_SENTENCE,
};
static FIELDS_AVIATION_ATTITUDE: &[FieldInfo] = &[
FieldInfo {
field_def_num: 253,
name: "timestamp",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "timestamp_ms",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("ms"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "system_time",
type_name: "uint32",
array: Some("[N]"),
scale: None,
offset: None,
units: Some("ms"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "pitch",
type_name: "sint16",
array: Some("[N]"),
scale: Some(10430.38_f64),
offset: None,
units: Some("radians"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 3,
name: "roll",
type_name: "sint16",
array: Some("[N]"),
scale: Some(10430.38_f64),
offset: None,
units: Some("radians"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 4,
name: "accel_lateral",
type_name: "sint16",
array: Some("[N]"),
scale: Some(100_f64),
offset: None,
units: Some("m/s^2"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 5,
name: "accel_normal",
type_name: "sint16",
array: Some("[N]"),
scale: Some(100_f64),
offset: None,
units: Some("m/s^2"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 6,
name: "turn_rate",
type_name: "sint16",
array: Some("[N]"),
scale: Some(1024_f64),
offset: None,
units: Some("radians/second"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 7,
name: "stage",
type_name: "attitude_stage",
array: Some("[N]"),
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 8,
name: "attitude_stage_complete",
type_name: "uint8",
array: Some("[N]"),
scale: None,
offset: None,
units: Some("%"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 9,
name: "track",
type_name: "uint16",
array: Some("[N]"),
scale: Some(10430.38_f64),
offset: None,
units: Some("radians"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 10,
name: "validity",
type_name: "attitude_validity",
array: Some("[N]"),
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_AVIATION_ATTITUDE: MesgInfo = MesgInfo {
name: "aviation_attitude",
fields: FIELDS_AVIATION_ATTITUDE,
};
static FIELDS_VIDEO: &[FieldInfo] = &[
FieldInfo {
field_def_num: 0,
name: "url",
type_name: "string",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "hosting_provider",
type_name: "string",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "duration",
type_name: "uint32",
array: None,
scale: None,
offset: None,
units: Some("ms"),
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_VIDEO: MesgInfo = MesgInfo {
name: "video",
fields: FIELDS_VIDEO,
};
static FIELDS_VIDEO_TITLE: &[FieldInfo] = &[
FieldInfo {
field_def_num: 254,
name: "message_index",
type_name: "message_index",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "message_count",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "text",
type_name: "string",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_VIDEO_TITLE: MesgInfo = MesgInfo {
name: "video_title",
fields: FIELDS_VIDEO_TITLE,
};
static FIELDS_VIDEO_DESCRIPTION: &[FieldInfo] = &[
FieldInfo {
field_def_num: 254,
name: "message_index",
type_name: "message_index",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "message_count",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "text",
type_name: "string",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_VIDEO_DESCRIPTION: MesgInfo = MesgInfo {
name: "video_description",
fields: FIELDS_VIDEO_DESCRIPTION,
};
static FIELDS_VIDEO_CLIP: &[FieldInfo] = &[
FieldInfo {
field_def_num: 0,
name: "clip_number",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "start_timestamp",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "start_timestamp_ms",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 3,
name: "end_timestamp",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 4,
name: "end_timestamp_ms",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 6,
name: "clip_start",
type_name: "uint32",
array: None,
scale: None,
offset: None,
units: Some("ms"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 7,
name: "clip_end",
type_name: "uint32",
array: None,
scale: None,
offset: None,
units: Some("ms"),
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_VIDEO_CLIP: MesgInfo = MesgInfo {
name: "video_clip",
fields: FIELDS_VIDEO_CLIP,
};
static FIELDS_SET: &[FieldInfo] = &[
FieldInfo {
field_def_num: 254,
name: "timestamp",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "duration",
type_name: "uint32",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 3,
name: "repetitions",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 4,
name: "weight",
type_name: "uint16",
array: None,
scale: Some(16_f64),
offset: None,
units: Some("kg"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 5,
name: "set_type",
type_name: "set_type",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 6,
name: "start_time",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 7,
name: "category",
type_name: "exercise_category",
array: Some("[N]"),
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 8,
name: "category_subtype",
type_name: "uint16",
array: Some("[N]"),
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 9,
name: "weight_display_unit",
type_name: "fit_base_unit",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 10,
name: "message_index",
type_name: "message_index",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 11,
name: "wkt_step_index",
type_name: "message_index",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_SET: MesgInfo = MesgInfo {
name: "set",
fields: FIELDS_SET,
};
static COMPONENTS_JUMP_8: &[Component] = &[Component {
name: "enhanced_speed",
bits: 16,
scale: None,
offset: None,
units: None,
accumulate: false,
}];
static FIELDS_JUMP: &[FieldInfo] = &[
FieldInfo {
field_def_num: 253,
name: "timestamp",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "distance",
type_name: "float32",
array: None,
scale: None,
offset: None,
units: Some("m"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "height",
type_name: "float32",
array: None,
scale: None,
offset: None,
units: Some("m"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "rotations",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 3,
name: "hang_time",
type_name: "float32",
array: None,
scale: None,
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 4,
name: "score",
type_name: "float32",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 5,
name: "position_lat",
type_name: "sint32",
array: None,
scale: None,
offset: None,
units: Some("semicircles"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 6,
name: "position_long",
type_name: "sint32",
array: None,
scale: None,
offset: None,
units: Some("semicircles"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 7,
name: "speed",
type_name: "uint16",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("m/s"),
components: COMPONENTS_JUMP_8,
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 8,
name: "enhanced_speed",
type_name: "uint32",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("m/s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_JUMP: MesgInfo = MesgInfo {
name: "jump",
fields: FIELDS_JUMP,
};
static FIELDS_SPLIT: &[FieldInfo] = &[
FieldInfo {
field_def_num: 254,
name: "message_index",
type_name: "message_index",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "split_type",
type_name: "split_type",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "total_elapsed_time",
type_name: "uint32",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "total_timer_time",
type_name: "uint32",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 3,
name: "total_distance",
type_name: "uint32",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("m"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 4,
name: "avg_speed",
type_name: "uint32",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("m/s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 9,
name: "start_time",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 13,
name: "total_ascent",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("m"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 14,
name: "total_descent",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("m"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 21,
name: "start_position_lat",
type_name: "sint32",
array: None,
scale: None,
offset: None,
units: Some("semicircles"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 22,
name: "start_position_long",
type_name: "sint32",
array: None,
scale: None,
offset: None,
units: Some("semicircles"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 23,
name: "end_position_lat",
type_name: "sint32",
array: None,
scale: None,
offset: None,
units: Some("semicircles"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 24,
name: "end_position_long",
type_name: "sint32",
array: None,
scale: None,
offset: None,
units: Some("semicircles"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 25,
name: "max_speed",
type_name: "uint32",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("m/s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 26,
name: "avg_vert_speed",
type_name: "sint32",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("m/s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 27,
name: "end_time",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 28,
name: "total_calories",
type_name: "uint32",
array: None,
scale: None,
offset: None,
units: Some("kcal"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 74,
name: "start_elevation",
type_name: "uint32",
array: None,
scale: Some(5_f64),
offset: Some(500_f64),
units: Some("m"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 110,
name: "total_moving_time",
type_name: "uint32",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_SPLIT: MesgInfo = MesgInfo {
name: "split",
fields: FIELDS_SPLIT,
};
static FIELDS_SPLIT_SUMMARY: &[FieldInfo] = &[
FieldInfo {
field_def_num: 254,
name: "message_index",
type_name: "message_index",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "split_type",
type_name: "split_type",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 3,
name: "num_splits",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 4,
name: "total_timer_time",
type_name: "uint32",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 5,
name: "total_distance",
type_name: "uint32",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("m"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 6,
name: "avg_speed",
type_name: "uint32",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("m/s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 7,
name: "max_speed",
type_name: "uint32",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("m/s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 8,
name: "total_ascent",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("m"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 9,
name: "total_descent",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("m"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 10,
name: "avg_heart_rate",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: Some("bpm"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 11,
name: "max_heart_rate",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: Some("bpm"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 12,
name: "avg_vert_speed",
type_name: "sint32",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("m/s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 13,
name: "total_calories",
type_name: "uint32",
array: None,
scale: None,
offset: None,
units: Some("kcal"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 77,
name: "total_moving_time",
type_name: "uint32",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_SPLIT_SUMMARY: MesgInfo = MesgInfo {
name: "split_summary",
fields: FIELDS_SPLIT_SUMMARY,
};
static FIELDS_CLIMB_PRO: &[FieldInfo] = &[
FieldInfo {
field_def_num: 253,
name: "timestamp",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "position_lat",
type_name: "sint32",
array: None,
scale: None,
offset: None,
units: Some("semicircles"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "position_long",
type_name: "sint32",
array: None,
scale: None,
offset: None,
units: Some("semicircles"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "climb_pro_event",
type_name: "climb_pro_event",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 3,
name: "climb_number",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 4,
name: "climb_category",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 5,
name: "current_dist",
type_name: "float32",
array: None,
scale: None,
offset: None,
units: Some("m"),
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_CLIMB_PRO: MesgInfo = MesgInfo {
name: "climb_pro",
fields: FIELDS_CLIMB_PRO,
};
static FIELDS_FIELD_DESCRIPTION: &[FieldInfo] = &[
FieldInfo {
field_def_num: 0,
name: "developer_data_index",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "field_definition_number",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "fit_base_type_id",
type_name: "fit_base_type",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 3,
name: "field_name",
type_name: "string",
array: Some("[N]"),
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 4,
name: "array",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 5,
name: "components",
type_name: "string",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 6,
name: "scale",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 7,
name: "offset",
type_name: "sint8",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 8,
name: "units",
type_name: "string",
array: Some("[N]"),
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 9,
name: "bits",
type_name: "string",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 10,
name: "accumulate",
type_name: "string",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 13,
name: "fit_base_unit_id",
type_name: "fit_base_unit",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 14,
name: "native_mesg_num",
type_name: "mesg_num",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 15,
name: "native_field_num",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_FIELD_DESCRIPTION: MesgInfo = MesgInfo {
name: "field_description",
fields: FIELDS_FIELD_DESCRIPTION,
};
static FIELDS_DEVELOPER_DATA_ID: &[FieldInfo] = &[
FieldInfo {
field_def_num: 0,
name: "developer_id",
type_name: "byte",
array: Some("[N]"),
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "application_id",
type_name: "byte",
array: Some("[N]"),
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "manufacturer_id",
type_name: "manufacturer",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 3,
name: "developer_data_index",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 4,
name: "application_version",
type_name: "uint32",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_DEVELOPER_DATA_ID: MesgInfo = MesgInfo {
name: "developer_data_id",
fields: FIELDS_DEVELOPER_DATA_ID,
};
static FIELDS_COURSE: &[FieldInfo] = &[
FieldInfo {
field_def_num: 4,
name: "sport",
type_name: "sport",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 5,
name: "name",
type_name: "string",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 6,
name: "capabilities",
type_name: "course_capabilities",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 7,
name: "sub_sport",
type_name: "sub_sport",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_COURSE: MesgInfo = MesgInfo {
name: "course",
fields: FIELDS_COURSE,
};
static FIELDS_COURSE_POINT: &[FieldInfo] = &[
FieldInfo {
field_def_num: 254,
name: "message_index",
type_name: "message_index",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "timestamp",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "position_lat",
type_name: "sint32",
array: None,
scale: None,
offset: None,
units: Some("semicircles"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 3,
name: "position_long",
type_name: "sint32",
array: None,
scale: None,
offset: None,
units: Some("semicircles"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 4,
name: "distance",
type_name: "uint32",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("m"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 5,
name: "type",
type_name: "course_point",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 6,
name: "name",
type_name: "string",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 8,
name: "favorite",
type_name: "bool",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_COURSE_POINT: MesgInfo = MesgInfo {
name: "course_point",
fields: FIELDS_COURSE_POINT,
};
static FIELDS_SEGMENT_ID: &[FieldInfo] = &[
FieldInfo {
field_def_num: 0,
name: "name",
type_name: "string",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "uuid",
type_name: "string",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "sport",
type_name: "sport",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 3,
name: "enabled",
type_name: "bool",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 4,
name: "user_profile_primary_key",
type_name: "uint32",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 5,
name: "device_id",
type_name: "uint32",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 6,
name: "default_race_leader",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 7,
name: "delete_status",
type_name: "segment_delete_status",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 8,
name: "selection_type",
type_name: "segment_selection_type",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_SEGMENT_ID: MesgInfo = MesgInfo {
name: "segment_id",
fields: FIELDS_SEGMENT_ID,
};
static FIELDS_SEGMENT_LEADERBOARD_ENTRY: &[FieldInfo] = &[
FieldInfo {
field_def_num: 254,
name: "message_index",
type_name: "message_index",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "name",
type_name: "string",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "type",
type_name: "segment_leaderboard_type",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "group_primary_key",
type_name: "uint32",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 3,
name: "activity_id",
type_name: "uint32",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 4,
name: "segment_time",
type_name: "uint32",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 5,
name: "activity_id_string",
type_name: "string",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_SEGMENT_LEADERBOARD_ENTRY: MesgInfo = MesgInfo {
name: "segment_leaderboard_entry",
fields: FIELDS_SEGMENT_LEADERBOARD_ENTRY,
};
static COMPONENTS_SEGMENT_POINT_4: &[Component] = &[Component {
name: "enhanced_altitude",
bits: 16,
scale: None,
offset: None,
units: None,
accumulate: false,
}];
static FIELDS_SEGMENT_POINT: &[FieldInfo] = &[
FieldInfo {
field_def_num: 254,
name: "message_index",
type_name: "message_index",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "position_lat",
type_name: "sint32",
array: None,
scale: None,
offset: None,
units: Some("semicircles"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "position_long",
type_name: "sint32",
array: None,
scale: None,
offset: None,
units: Some("semicircles"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 3,
name: "distance",
type_name: "uint32",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("m"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 4,
name: "altitude",
type_name: "uint16",
array: None,
scale: Some(5_f64),
offset: Some(500_f64),
units: Some("m"),
components: COMPONENTS_SEGMENT_POINT_4,
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 5,
name: "leader_time",
type_name: "uint32",
array: Some("[N]"),
scale: Some(1000_f64),
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 6,
name: "enhanced_altitude",
type_name: "uint32",
array: None,
scale: Some(5_f64),
offset: Some(500_f64),
units: Some("m"),
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_SEGMENT_POINT: MesgInfo = MesgInfo {
name: "segment_point",
fields: FIELDS_SEGMENT_POINT,
};
static SUBFIELDS_SEGMENT_LAP_12: &[SubField] = &[SubField {
name: "total_strokes",
type_name: "uint32",
conditions: &[("sport", "cycling")],
components: &[],
scale: None,
offset: None,
units: Some("strokes"),
}];
static COMPONENTS_SEGMENT_LAP_36: &[Component] = &[Component {
name: "enhanced_avg_altitude",
bits: 16,
scale: None,
offset: None,
units: None,
accumulate: false,
}];
static COMPONENTS_SEGMENT_LAP_37: &[Component] = &[Component {
name: "enhanced_max_altitude",
bits: 16,
scale: None,
offset: None,
units: None,
accumulate: false,
}];
static COMPONENTS_SEGMENT_LAP_56: &[Component] = &[Component {
name: "enhanced_min_altitude",
bits: 16,
scale: None,
offset: None,
units: None,
accumulate: false,
}];
static FIELDS_SEGMENT_LAP: &[FieldInfo] = &[
FieldInfo {
field_def_num: 254,
name: "message_index",
type_name: "message_index",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 253,
name: "timestamp",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "event",
type_name: "event",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "event_type",
type_name: "event_type",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "start_time",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 3,
name: "start_position_lat",
type_name: "sint32",
array: None,
scale: None,
offset: None,
units: Some("semicircles"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 4,
name: "start_position_long",
type_name: "sint32",
array: None,
scale: None,
offset: None,
units: Some("semicircles"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 5,
name: "end_position_lat",
type_name: "sint32",
array: None,
scale: None,
offset: None,
units: Some("semicircles"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 6,
name: "end_position_long",
type_name: "sint32",
array: None,
scale: None,
offset: None,
units: Some("semicircles"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 7,
name: "total_elapsed_time",
type_name: "uint32",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 8,
name: "total_timer_time",
type_name: "uint32",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 9,
name: "total_distance",
type_name: "uint32",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("m"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 10,
name: "total_cycles",
type_name: "uint32",
array: None,
scale: None,
offset: None,
units: Some("cycles"),
components: &[],
sub_fields: SUBFIELDS_SEGMENT_LAP_12,
accumulate: false,
},
FieldInfo {
field_def_num: 11,
name: "total_calories",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("kcal"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 12,
name: "total_fat_calories",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("kcal"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 13,
name: "avg_speed",
type_name: "uint16",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("m/s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 14,
name: "max_speed",
type_name: "uint16",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("m/s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 15,
name: "avg_heart_rate",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: Some("bpm"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 16,
name: "max_heart_rate",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: Some("bpm"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 17,
name: "avg_cadence",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: Some("rpm"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 18,
name: "max_cadence",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: Some("rpm"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 19,
name: "avg_power",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("watts"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 20,
name: "max_power",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("watts"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 21,
name: "total_ascent",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("m"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 22,
name: "total_descent",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("m"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 23,
name: "sport",
type_name: "sport",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 24,
name: "event_group",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 25,
name: "nec_lat",
type_name: "sint32",
array: None,
scale: None,
offset: None,
units: Some("semicircles"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 26,
name: "nec_long",
type_name: "sint32",
array: None,
scale: None,
offset: None,
units: Some("semicircles"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 27,
name: "swc_lat",
type_name: "sint32",
array: None,
scale: None,
offset: None,
units: Some("semicircles"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 28,
name: "swc_long",
type_name: "sint32",
array: None,
scale: None,
offset: None,
units: Some("semicircles"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 29,
name: "name",
type_name: "string",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 30,
name: "normalized_power",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("watts"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 31,
name: "left_right_balance",
type_name: "left_right_balance_100",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 32,
name: "sub_sport",
type_name: "sub_sport",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 33,
name: "total_work",
type_name: "uint32",
array: None,
scale: None,
offset: None,
units: Some("J"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 34,
name: "avg_altitude",
type_name: "uint16",
array: None,
scale: Some(5_f64),
offset: Some(500_f64),
units: Some("m"),
components: COMPONENTS_SEGMENT_LAP_36,
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 35,
name: "max_altitude",
type_name: "uint16",
array: None,
scale: Some(5_f64),
offset: Some(500_f64),
units: Some("m"),
components: COMPONENTS_SEGMENT_LAP_37,
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 36,
name: "gps_accuracy",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: Some("m"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 37,
name: "avg_grade",
type_name: "sint16",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("%"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 38,
name: "avg_pos_grade",
type_name: "sint16",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("%"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 39,
name: "avg_neg_grade",
type_name: "sint16",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("%"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 40,
name: "max_pos_grade",
type_name: "sint16",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("%"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 41,
name: "max_neg_grade",
type_name: "sint16",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("%"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 42,
name: "avg_temperature",
type_name: "sint8",
array: None,
scale: None,
offset: None,
units: Some("C"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 43,
name: "max_temperature",
type_name: "sint8",
array: None,
scale: None,
offset: None,
units: Some("C"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 44,
name: "total_moving_time",
type_name: "uint32",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 45,
name: "avg_pos_vertical_speed",
type_name: "sint16",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("m/s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 46,
name: "avg_neg_vertical_speed",
type_name: "sint16",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("m/s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 47,
name: "max_pos_vertical_speed",
type_name: "sint16",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("m/s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 48,
name: "max_neg_vertical_speed",
type_name: "sint16",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("m/s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 49,
name: "time_in_hr_zone",
type_name: "uint32",
array: Some("[N]"),
scale: Some(1000_f64),
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 50,
name: "time_in_speed_zone",
type_name: "uint32",
array: Some("[N]"),
scale: Some(1000_f64),
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 51,
name: "time_in_cadence_zone",
type_name: "uint32",
array: Some("[N]"),
scale: Some(1000_f64),
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 52,
name: "time_in_power_zone",
type_name: "uint32",
array: Some("[N]"),
scale: Some(1000_f64),
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 53,
name: "repetition_num",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 54,
name: "min_altitude",
type_name: "uint16",
array: None,
scale: Some(5_f64),
offset: Some(500_f64),
units: Some("m"),
components: COMPONENTS_SEGMENT_LAP_56,
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 55,
name: "min_heart_rate",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: Some("bpm"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 56,
name: "active_time",
type_name: "uint32",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 57,
name: "wkt_step_index",
type_name: "message_index",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 58,
name: "sport_event",
type_name: "sport_event",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 59,
name: "avg_left_torque_effectiveness",
type_name: "uint8",
array: None,
scale: Some(2_f64),
offset: None,
units: Some("percent"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 60,
name: "avg_right_torque_effectiveness",
type_name: "uint8",
array: None,
scale: Some(2_f64),
offset: None,
units: Some("percent"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 61,
name: "avg_left_pedal_smoothness",
type_name: "uint8",
array: None,
scale: Some(2_f64),
offset: None,
units: Some("percent"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 62,
name: "avg_right_pedal_smoothness",
type_name: "uint8",
array: None,
scale: Some(2_f64),
offset: None,
units: Some("percent"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 63,
name: "avg_combined_pedal_smoothness",
type_name: "uint8",
array: None,
scale: Some(2_f64),
offset: None,
units: Some("percent"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 64,
name: "status",
type_name: "segment_lap_status",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 65,
name: "uuid",
type_name: "string",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 66,
name: "avg_fractional_cadence",
type_name: "uint8",
array: None,
scale: Some(128_f64),
offset: None,
units: Some("rpm"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 67,
name: "max_fractional_cadence",
type_name: "uint8",
array: None,
scale: Some(128_f64),
offset: None,
units: Some("rpm"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 68,
name: "total_fractional_cycles",
type_name: "uint8",
array: None,
scale: Some(128_f64),
offset: None,
units: Some("cycles"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 69,
name: "front_gear_shift_count",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 70,
name: "rear_gear_shift_count",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 71,
name: "time_standing",
type_name: "uint32",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 72,
name: "stand_count",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 73,
name: "avg_left_pco",
type_name: "sint8",
array: None,
scale: None,
offset: None,
units: Some("mm"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 74,
name: "avg_right_pco",
type_name: "sint8",
array: None,
scale: None,
offset: None,
units: Some("mm"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 75,
name: "avg_left_power_phase",
type_name: "uint8",
array: Some("[N]"),
scale: Some(0.7111111_f64),
offset: None,
units: Some("degrees"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 76,
name: "avg_left_power_phase_peak",
type_name: "uint8",
array: Some("[N]"),
scale: Some(0.7111111_f64),
offset: None,
units: Some("degrees"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 77,
name: "avg_right_power_phase",
type_name: "uint8",
array: Some("[N]"),
scale: Some(0.7111111_f64),
offset: None,
units: Some("degrees"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 78,
name: "avg_right_power_phase_peak",
type_name: "uint8",
array: Some("[N]"),
scale: Some(0.7111111_f64),
offset: None,
units: Some("degrees"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 79,
name: "avg_power_position",
type_name: "uint16",
array: Some("[N]"),
scale: None,
offset: None,
units: Some("watts"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 80,
name: "max_power_position",
type_name: "uint16",
array: Some("[N]"),
scale: None,
offset: None,
units: Some("watts"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 81,
name: "avg_cadence_position",
type_name: "uint8",
array: Some("[N]"),
scale: None,
offset: None,
units: Some("rpm"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 82,
name: "max_cadence_position",
type_name: "uint8",
array: Some("[N]"),
scale: None,
offset: None,
units: Some("rpm"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 83,
name: "manufacturer",
type_name: "manufacturer",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 84,
name: "total_grit",
type_name: "float32",
array: None,
scale: None,
offset: None,
units: Some("kGrit"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 85,
name: "total_flow",
type_name: "float32",
array: None,
scale: None,
offset: None,
units: Some("Flow"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 86,
name: "avg_grit",
type_name: "float32",
array: None,
scale: None,
offset: None,
units: Some("kGrit"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 87,
name: "avg_flow",
type_name: "float32",
array: None,
scale: None,
offset: None,
units: Some("Flow"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 89,
name: "total_fractional_ascent",
type_name: "uint8",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("m"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 90,
name: "total_fractional_descent",
type_name: "uint8",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("m"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 91,
name: "enhanced_avg_altitude",
type_name: "uint32",
array: None,
scale: Some(5_f64),
offset: Some(500_f64),
units: Some("m"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 92,
name: "enhanced_max_altitude",
type_name: "uint32",
array: None,
scale: Some(5_f64),
offset: Some(500_f64),
units: Some("m"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 93,
name: "enhanced_min_altitude",
type_name: "uint32",
array: None,
scale: Some(5_f64),
offset: Some(500_f64),
units: Some("m"),
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_SEGMENT_LAP: MesgInfo = MesgInfo {
name: "segment_lap",
fields: FIELDS_SEGMENT_LAP,
};
static FIELDS_SEGMENT_FILE: &[FieldInfo] = &[
FieldInfo {
field_def_num: 254,
name: "message_index",
type_name: "message_index",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "file_uuid",
type_name: "string",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 3,
name: "enabled",
type_name: "bool",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 4,
name: "user_profile_primary_key",
type_name: "uint32",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 7,
name: "leader_type",
type_name: "segment_leaderboard_type",
array: Some("[N]"),
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 8,
name: "leader_group_primary_key",
type_name: "uint32",
array: Some("[N]"),
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 9,
name: "leader_activity_id",
type_name: "uint32",
array: Some("[N]"),
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 10,
name: "leader_activity_id_string",
type_name: "string",
array: Some("[N]"),
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 11,
name: "default_race_leader",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_SEGMENT_FILE: MesgInfo = MesgInfo {
name: "segment_file",
fields: FIELDS_SEGMENT_FILE,
};
static FIELDS_WORKOUT: &[FieldInfo] = &[
FieldInfo {
field_def_num: 254,
name: "message_index",
type_name: "message_index",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 4,
name: "sport",
type_name: "sport",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 5,
name: "capabilities",
type_name: "workout_capabilities",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 6,
name: "num_valid_steps",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 8,
name: "wkt_name",
type_name: "string",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 11,
name: "sub_sport",
type_name: "sub_sport",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 14,
name: "pool_length",
type_name: "uint16",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("m"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 15,
name: "pool_length_unit",
type_name: "display_measure",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 17,
name: "wkt_description",
type_name: "string",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_WORKOUT: MesgInfo = MesgInfo {
name: "workout",
fields: FIELDS_WORKOUT,
};
static FIELDS_WORKOUT_SESSION: &[FieldInfo] = &[
FieldInfo {
field_def_num: 254,
name: "message_index",
type_name: "message_index",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "sport",
type_name: "sport",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "sub_sport",
type_name: "sub_sport",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "num_valid_steps",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 3,
name: "first_step_index",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 4,
name: "pool_length",
type_name: "uint16",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("m"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 5,
name: "pool_length_unit",
type_name: "display_measure",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_WORKOUT_SESSION: MesgInfo = MesgInfo {
name: "workout_session",
fields: FIELDS_WORKOUT_SESSION,
};
static SUBFIELDS_WORKOUT_STEP_3: &[SubField] = &[
SubField {
name: "duration_time",
type_name: "uint32",
conditions: &[
("duration_type", "time"),
("duration_type", "repetition_time"),
],
components: &[],
scale: Some(1000_f64),
offset: None,
units: Some("s"),
},
SubField {
name: "duration_distance",
type_name: "uint32",
conditions: &[("duration_type", "distance")],
components: &[],
scale: Some(100_f64),
offset: None,
units: Some("m"),
},
SubField {
name: "duration_hr",
type_name: "workout_hr",
conditions: &[
("duration_type", "hr_less_than"),
("duration_type", "hr_greater_than"),
],
components: &[],
scale: None,
offset: None,
units: Some("% or bpm"),
},
SubField {
name: "duration_calories",
type_name: "uint32",
conditions: &[("duration_type", "calories")],
components: &[],
scale: None,
offset: None,
units: Some("calories"),
},
SubField {
name: "duration_step",
type_name: "uint32",
conditions: &[
("duration_type", "repeat_until_steps_cmplt"),
("duration_type", "repeat_until_time"),
("duration_type", "repeat_until_distance"),
("duration_type", "repeat_until_calories"),
("duration_type", "repeat_until_hr_less_than"),
("duration_type", "repeat_until_hr_greater_than"),
("duration_type", "repeat_until_power_less_than"),
("duration_type", "repeat_until_power_greater_than"),
],
components: &[],
scale: None,
offset: None,
units: None,
},
SubField {
name: "duration_power",
type_name: "workout_power",
conditions: &[
("duration_type", "power_less_than"),
("duration_type", "power_greater_than"),
],
components: &[],
scale: None,
offset: None,
units: Some("% or watts"),
},
SubField {
name: "duration_reps",
type_name: "uint32",
conditions: &[("duration_type", "reps")],
components: &[],
scale: None,
offset: None,
units: None,
},
];
static SUBFIELDS_WORKOUT_STEP_5: &[SubField] = &[
SubField {
name: "target_speed_zone",
type_name: "uint32",
conditions: &[("target_type", "speed")],
components: &[],
scale: None,
offset: None,
units: None,
},
SubField {
name: "target_hr_zone",
type_name: "uint32",
conditions: &[("target_type", "heart_rate")],
components: &[],
scale: None,
offset: None,
units: None,
},
SubField {
name: "target_cadence_zone",
type_name: "uint32",
conditions: &[("target_type", "cadence")],
components: &[],
scale: None,
offset: None,
units: None,
},
SubField {
name: "target_power_zone",
type_name: "uint32",
conditions: &[("target_type", "power")],
components: &[],
scale: None,
offset: None,
units: None,
},
SubField {
name: "repeat_steps",
type_name: "uint32",
conditions: &[("duration_type", "repeat_until_steps_cmplt")],
components: &[],
scale: None,
offset: None,
units: None,
},
SubField {
name: "repeat_time",
type_name: "uint32",
conditions: &[("duration_type", "repeat_until_time")],
components: &[],
scale: Some(1000_f64),
offset: None,
units: Some("s"),
},
SubField {
name: "repeat_distance",
type_name: "uint32",
conditions: &[("duration_type", "repeat_until_distance")],
components: &[],
scale: Some(100_f64),
offset: None,
units: Some("m"),
},
SubField {
name: "repeat_calories",
type_name: "uint32",
conditions: &[("duration_type", "repeat_until_calories")],
components: &[],
scale: None,
offset: None,
units: Some("calories"),
},
SubField {
name: "repeat_hr",
type_name: "workout_hr",
conditions: &[
("duration_type", "repeat_until_hr_less_than"),
("duration_type", "repeat_until_hr_greater_than"),
],
components: &[],
scale: None,
offset: None,
units: Some("% or bpm"),
},
SubField {
name: "repeat_power",
type_name: "workout_power",
conditions: &[
("duration_type", "repeat_until_power_less_than"),
("duration_type", "repeat_until_power_greater_than"),
],
components: &[],
scale: None,
offset: None,
units: Some("% or watts"),
},
SubField {
name: "target_stroke_type",
type_name: "swim_stroke",
conditions: &[("target_type", "swim_stroke")],
components: &[],
scale: None,
offset: None,
units: None,
},
];
static SUBFIELDS_WORKOUT_STEP_6: &[SubField] = &[
SubField {
name: "custom_target_speed_low",
type_name: "uint32",
conditions: &[("target_type", "speed")],
components: &[],
scale: Some(1000_f64),
offset: None,
units: Some("m/s"),
},
SubField {
name: "custom_target_heart_rate_low",
type_name: "workout_hr",
conditions: &[("target_type", "heart_rate")],
components: &[],
scale: None,
offset: None,
units: Some("% or bpm"),
},
SubField {
name: "custom_target_cadence_low",
type_name: "uint32",
conditions: &[("target_type", "cadence")],
components: &[],
scale: None,
offset: None,
units: Some("rpm"),
},
SubField {
name: "custom_target_power_low",
type_name: "workout_power",
conditions: &[("target_type", "power")],
components: &[],
scale: None,
offset: None,
units: Some("% or watts"),
},
];
static SUBFIELDS_WORKOUT_STEP_7: &[SubField] = &[
SubField {
name: "custom_target_speed_high",
type_name: "uint32",
conditions: &[("target_type", "speed")],
components: &[],
scale: Some(1000_f64),
offset: None,
units: Some("m/s"),
},
SubField {
name: "custom_target_heart_rate_high",
type_name: "workout_hr",
conditions: &[("target_type", "heart_rate")],
components: &[],
scale: None,
offset: None,
units: Some("% or bpm"),
},
SubField {
name: "custom_target_cadence_high",
type_name: "uint32",
conditions: &[("target_type", "cadence")],
components: &[],
scale: None,
offset: None,
units: Some("rpm"),
},
SubField {
name: "custom_target_power_high",
type_name: "workout_power",
conditions: &[("target_type", "power")],
components: &[],
scale: None,
offset: None,
units: Some("% or watts"),
},
];
static SUBFIELDS_WORKOUT_STEP_16: &[SubField] = &[
SubField {
name: "secondary_target_speed_zone",
type_name: "uint32",
conditions: &[("secondary_target_type", "speed")],
components: &[],
scale: None,
offset: None,
units: None,
},
SubField {
name: "secondary_target_hr_zone",
type_name: "uint32",
conditions: &[("secondary_target_type", "heart_rate")],
components: &[],
scale: None,
offset: None,
units: None,
},
SubField {
name: "secondary_target_cadence_zone",
type_name: "uint32",
conditions: &[("secondary_target_type", "cadence")],
components: &[],
scale: None,
offset: None,
units: None,
},
SubField {
name: "secondary_target_power_zone",
type_name: "uint32",
conditions: &[("secondary_target_type", "power")],
components: &[],
scale: None,
offset: None,
units: None,
},
SubField {
name: "secondary_target_stroke_type",
type_name: "swim_stroke",
conditions: &[("secondary_target_type", "swim_stroke")],
components: &[],
scale: None,
offset: None,
units: None,
},
];
static SUBFIELDS_WORKOUT_STEP_17: &[SubField] = &[
SubField {
name: "secondary_custom_target_speed_low",
type_name: "uint32",
conditions: &[("secondary_target_type", "speed")],
components: &[],
scale: Some(1000_f64),
offset: None,
units: Some("m/s"),
},
SubField {
name: "secondary_custom_target_heart_rate_low",
type_name: "workout_hr",
conditions: &[("secondary_target_type", "heart_rate")],
components: &[],
scale: None,
offset: None,
units: Some("% or bpm"),
},
SubField {
name: "secondary_custom_target_cadence_low",
type_name: "uint32",
conditions: &[("secondary_target_type", "cadence")],
components: &[],
scale: None,
offset: None,
units: Some("rpm"),
},
SubField {
name: "secondary_custom_target_power_low",
type_name: "workout_power",
conditions: &[("secondary_target_type", "power")],
components: &[],
scale: None,
offset: None,
units: Some("% or watts"),
},
];
static SUBFIELDS_WORKOUT_STEP_18: &[SubField] = &[
SubField {
name: "secondary_custom_target_speed_high",
type_name: "uint32",
conditions: &[("secondary_target_type", "speed")],
components: &[],
scale: Some(1000_f64),
offset: None,
units: Some("m/s"),
},
SubField {
name: "secondary_custom_target_heart_rate_high",
type_name: "workout_hr",
conditions: &[("secondary_target_type", "heart_rate")],
components: &[],
scale: None,
offset: None,
units: Some("% or bpm"),
},
SubField {
name: "secondary_custom_target_cadence_high",
type_name: "uint32",
conditions: &[("secondary_target_type", "cadence")],
components: &[],
scale: None,
offset: None,
units: Some("rpm"),
},
SubField {
name: "secondary_custom_target_power_high",
type_name: "workout_power",
conditions: &[("secondary_target_type", "power")],
components: &[],
scale: None,
offset: None,
units: Some("% or watts"),
},
];
static FIELDS_WORKOUT_STEP: &[FieldInfo] = &[
FieldInfo {
field_def_num: 254,
name: "message_index",
type_name: "message_index",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "wkt_step_name",
type_name: "string",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "duration_type",
type_name: "wkt_step_duration",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "duration_value",
type_name: "uint32",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: SUBFIELDS_WORKOUT_STEP_3,
accumulate: false,
},
FieldInfo {
field_def_num: 3,
name: "target_type",
type_name: "wkt_step_target",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 4,
name: "target_value",
type_name: "uint32",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: SUBFIELDS_WORKOUT_STEP_5,
accumulate: false,
},
FieldInfo {
field_def_num: 5,
name: "custom_target_value_low",
type_name: "uint32",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: SUBFIELDS_WORKOUT_STEP_6,
accumulate: false,
},
FieldInfo {
field_def_num: 6,
name: "custom_target_value_high",
type_name: "uint32",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: SUBFIELDS_WORKOUT_STEP_7,
accumulate: false,
},
FieldInfo {
field_def_num: 7,
name: "intensity",
type_name: "intensity",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 8,
name: "notes",
type_name: "string",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 9,
name: "equipment",
type_name: "workout_equipment",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 10,
name: "exercise_category",
type_name: "exercise_category",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 11,
name: "exercise_name",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 12,
name: "exercise_weight",
type_name: "uint16",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("kg"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 13,
name: "weight_display_unit",
type_name: "fit_base_unit",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 19,
name: "secondary_target_type",
type_name: "wkt_step_target",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 20,
name: "secondary_target_value",
type_name: "uint32",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: SUBFIELDS_WORKOUT_STEP_16,
accumulate: false,
},
FieldInfo {
field_def_num: 21,
name: "secondary_custom_target_value_low",
type_name: "uint32",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: SUBFIELDS_WORKOUT_STEP_17,
accumulate: false,
},
FieldInfo {
field_def_num: 22,
name: "secondary_custom_target_value_high",
type_name: "uint32",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: SUBFIELDS_WORKOUT_STEP_18,
accumulate: false,
},
];
pub static MESG_WORKOUT_STEP: MesgInfo = MesgInfo {
name: "workout_step",
fields: FIELDS_WORKOUT_STEP,
};
static FIELDS_EXERCISE_TITLE: &[FieldInfo] = &[
FieldInfo {
field_def_num: 254,
name: "message_index",
type_name: "message_index",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "exercise_category",
type_name: "exercise_category",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "exercise_name",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "wkt_step_name",
type_name: "string",
array: Some("[N]"),
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_EXERCISE_TITLE: MesgInfo = MesgInfo {
name: "exercise_title",
fields: FIELDS_EXERCISE_TITLE,
};
static SUBFIELDS_SCHEDULE_1: &[SubField] = &[
SubField {
name: "favero_product",
type_name: "favero_product",
conditions: &[("manufacturer", "favero_electronics")],
components: &[],
scale: None,
offset: None,
units: None,
},
SubField {
name: "garmin_product",
type_name: "garmin_product",
conditions: &[
("manufacturer", "garmin"),
("manufacturer", "dynastream"),
("manufacturer", "dynastream_oem"),
("manufacturer", "tacx"),
],
components: &[],
scale: None,
offset: None,
units: None,
},
];
static FIELDS_SCHEDULE: &[FieldInfo] = &[
FieldInfo {
field_def_num: 0,
name: "manufacturer",
type_name: "manufacturer",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "product",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: SUBFIELDS_SCHEDULE_1,
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "serial_number",
type_name: "uint32z",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 3,
name: "time_created",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 4,
name: "completed",
type_name: "bool",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 5,
name: "type",
type_name: "schedule",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 6,
name: "scheduled_time",
type_name: "local_date_time",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_SCHEDULE: MesgInfo = MesgInfo {
name: "schedule",
fields: FIELDS_SCHEDULE,
};
static FIELDS_TOTALS: &[FieldInfo] = &[
FieldInfo {
field_def_num: 254,
name: "message_index",
type_name: "message_index",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 253,
name: "timestamp",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "timer_time",
type_name: "uint32",
array: None,
scale: None,
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "distance",
type_name: "uint32",
array: None,
scale: None,
offset: None,
units: Some("m"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "calories",
type_name: "uint32",
array: None,
scale: None,
offset: None,
units: Some("kcal"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 3,
name: "sport",
type_name: "sport",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 4,
name: "elapsed_time",
type_name: "uint32",
array: None,
scale: None,
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 5,
name: "sessions",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 6,
name: "active_time",
type_name: "uint32",
array: None,
scale: None,
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 9,
name: "sport_index",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_TOTALS: MesgInfo = MesgInfo {
name: "totals",
fields: FIELDS_TOTALS,
};
static FIELDS_WEIGHT_SCALE: &[FieldInfo] = &[
FieldInfo {
field_def_num: 253,
name: "timestamp",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "weight",
type_name: "weight",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("kg"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "percent_fat",
type_name: "uint16",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("%"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "percent_hydration",
type_name: "uint16",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("%"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 3,
name: "visceral_fat_mass",
type_name: "uint16",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("kg"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 4,
name: "bone_mass",
type_name: "uint16",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("kg"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 5,
name: "muscle_mass",
type_name: "uint16",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("kg"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 7,
name: "basal_met",
type_name: "uint16",
array: None,
scale: Some(4_f64),
offset: None,
units: Some("kcal/day"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 8,
name: "physique_rating",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 9,
name: "active_met",
type_name: "uint16",
array: None,
scale: Some(4_f64),
offset: None,
units: Some("kcal/day"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 10,
name: "metabolic_age",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: Some("years"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 11,
name: "visceral_fat_rating",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 12,
name: "user_profile_index",
type_name: "message_index",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 13,
name: "bmi",
type_name: "uint16",
array: None,
scale: Some(10_f64),
offset: None,
units: Some("kg/m^2"),
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_WEIGHT_SCALE: MesgInfo = MesgInfo {
name: "weight_scale",
fields: FIELDS_WEIGHT_SCALE,
};
static FIELDS_BLOOD_PRESSURE: &[FieldInfo] = &[
FieldInfo {
field_def_num: 253,
name: "timestamp",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "systolic_pressure",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("mmHg"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "diastolic_pressure",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("mmHg"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "mean_arterial_pressure",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("mmHg"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 3,
name: "map_3_sample_mean",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("mmHg"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 4,
name: "map_morning_values",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("mmHg"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 5,
name: "map_evening_values",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("mmHg"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 6,
name: "heart_rate",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: Some("bpm"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 7,
name: "heart_rate_type",
type_name: "hr_type",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 8,
name: "status",
type_name: "bp_status",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 9,
name: "user_profile_index",
type_name: "message_index",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_BLOOD_PRESSURE: MesgInfo = MesgInfo {
name: "blood_pressure",
fields: FIELDS_BLOOD_PRESSURE,
};
static FIELDS_MONITORING_INFO: &[FieldInfo] = &[
FieldInfo {
field_def_num: 253,
name: "timestamp",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "local_timestamp",
type_name: "local_date_time",
array: None,
scale: None,
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "activity_type",
type_name: "activity_type",
array: Some("[N]"),
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 3,
name: "cycles_to_distance",
type_name: "uint16",
array: Some("[N]"),
scale: Some(5000_f64),
offset: None,
units: Some("m/cycle"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 4,
name: "cycles_to_calories",
type_name: "uint16",
array: Some("[N]"),
scale: Some(5000_f64),
offset: None,
units: Some("kcal/cycle"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 5,
name: "resting_metabolic_rate",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("kcal / day"),
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_MONITORING_INFO: MesgInfo = MesgInfo {
name: "monitoring_info",
fields: FIELDS_MONITORING_INFO,
};
static SUBFIELDS_MONITORING_4: &[SubField] = &[
SubField {
name: "steps",
type_name: "uint32",
conditions: &[("activity_type", "walking"), ("activity_type", "running")],
components: &[],
scale: Some(1_f64),
offset: None,
units: Some("steps"),
},
SubField {
name: "strokes",
type_name: "uint32",
conditions: &[("activity_type", "cycling"), ("activity_type", "swimming")],
components: &[],
scale: Some(2_f64),
offset: None,
units: Some("strokes"),
},
];
static COMPONENTS_MONITORING_18: &[Component] = &[
Component {
name: "activity_type",
bits: 5,
scale: None,
offset: None,
units: None,
accumulate: false,
},
Component {
name: "intensity",
bits: 3,
scale: None,
offset: None,
units: None,
accumulate: false,
},
];
static FIELDS_MONITORING: &[FieldInfo] = &[
FieldInfo {
field_def_num: 253,
name: "timestamp",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "device_index",
type_name: "device_index",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "calories",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("kcal"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "distance",
type_name: "uint32",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("m"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 3,
name: "cycles",
type_name: "uint32",
array: None,
scale: Some(2_f64),
offset: None,
units: Some("cycles"),
components: &[],
sub_fields: SUBFIELDS_MONITORING_4,
accumulate: false,
},
FieldInfo {
field_def_num: 4,
name: "active_time",
type_name: "uint32",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 5,
name: "activity_type",
type_name: "activity_type",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 6,
name: "activity_subtype",
type_name: "activity_subtype",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 7,
name: "activity_level",
type_name: "activity_level",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 8,
name: "distance_16",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("100 * m"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 9,
name: "cycles_16",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("2 * cycles (steps)"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 10,
name: "active_time_16",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 11,
name: "local_timestamp",
type_name: "local_date_time",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 12,
name: "temperature",
type_name: "sint16",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("C"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 14,
name: "temperature_min",
type_name: "sint16",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("C"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 15,
name: "temperature_max",
type_name: "sint16",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("C"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 16,
name: "activity_time",
type_name: "uint16",
array: Some("[8]"),
scale: None,
offset: None,
units: Some("minutes"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 19,
name: "active_calories",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("kcal"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 24,
name: "current_activity_type_intensity",
type_name: "byte",
array: None,
scale: None,
offset: None,
units: None,
components: COMPONENTS_MONITORING_18,
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 25,
name: "timestamp_min_8",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: Some("min"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 26,
name: "timestamp_16",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 27,
name: "heart_rate",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: Some("bpm"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 28,
name: "intensity",
type_name: "uint8",
array: None,
scale: Some(10_f64),
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 29,
name: "duration_min",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("min"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 30,
name: "duration",
type_name: "uint32",
array: None,
scale: None,
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 31,
name: "ascent",
type_name: "uint32",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("m"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 32,
name: "descent",
type_name: "uint32",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("m"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 33,
name: "moderate_activity_minutes",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("minutes"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 34,
name: "vigorous_activity_minutes",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("minutes"),
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_MONITORING: MesgInfo = MesgInfo {
name: "monitoring",
fields: FIELDS_MONITORING,
};
static FIELDS_MONITORING_HR_DATA: &[FieldInfo] = &[
FieldInfo {
field_def_num: 253,
name: "timestamp",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "resting_heart_rate",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: Some("bpm"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "current_day_resting_heart_rate",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: Some("bpm"),
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_MONITORING_HR_DATA: MesgInfo = MesgInfo {
name: "monitoring_hr_data",
fields: FIELDS_MONITORING_HR_DATA,
};
static FIELDS_SPO2_DATA: &[FieldInfo] = &[
FieldInfo {
field_def_num: 253,
name: "timestamp",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "reading_spo2",
type_name: "uint8",
array: None,
scale: Some(1_f64),
offset: None,
units: Some("percent"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "reading_confidence",
type_name: "uint8",
array: None,
scale: Some(1_f64),
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "mode",
type_name: "spo2_measurement_type",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_SPO2_DATA: MesgInfo = MesgInfo {
name: "spo2_data",
fields: FIELDS_SPO2_DATA,
};
static COMPONENTS_HR_2: &[Component] = &[Component {
name: "fractional_timestamp",
bits: 8,
scale: None,
offset: None,
units: None,
accumulate: false,
}];
static COMPONENTS_HR_5: &[Component] = &[
Component {
name: "event_timestamp",
bits: 12,
scale: None,
offset: None,
units: None,
accumulate: true,
},
Component {
name: "event_timestamp",
bits: 12,
scale: None,
offset: None,
units: None,
accumulate: true,
},
Component {
name: "event_timestamp",
bits: 12,
scale: None,
offset: None,
units: None,
accumulate: true,
},
Component {
name: "event_timestamp",
bits: 12,
scale: None,
offset: None,
units: None,
accumulate: true,
},
Component {
name: "event_timestamp",
bits: 12,
scale: None,
offset: None,
units: None,
accumulate: true,
},
Component {
name: "event_timestamp",
bits: 12,
scale: None,
offset: None,
units: None,
accumulate: true,
},
Component {
name: "event_timestamp",
bits: 12,
scale: None,
offset: None,
units: None,
accumulate: true,
},
Component {
name: "event_timestamp",
bits: 12,
scale: None,
offset: None,
units: None,
accumulate: true,
},
Component {
name: "event_timestamp",
bits: 12,
scale: None,
offset: None,
units: None,
accumulate: true,
},
Component {
name: "event_timestamp",
bits: 12,
scale: None,
offset: None,
units: None,
accumulate: true,
},
];
static FIELDS_HR: &[FieldInfo] = &[
FieldInfo {
field_def_num: 253,
name: "timestamp",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "fractional_timestamp",
type_name: "uint16",
array: None,
scale: Some(32768_f64),
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "time256",
type_name: "uint8",
array: None,
scale: Some(256_f64),
offset: None,
units: Some("s"),
components: COMPONENTS_HR_2,
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 6,
name: "filtered_bpm",
type_name: "uint8",
array: Some("[N]"),
scale: None,
offset: None,
units: Some("bpm"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 9,
name: "event_timestamp",
type_name: "uint32",
array: Some("[N]"),
scale: Some(1024_f64),
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 10,
name: "event_timestamp_12",
type_name: "byte",
array: Some("[N]"),
scale: Some(1024_f64),
offset: None,
units: Some("s"),
components: COMPONENTS_HR_5,
sub_fields: &[],
accumulate: true,
},
];
pub static MESG_HR: MesgInfo = MesgInfo {
name: "hr",
fields: FIELDS_HR,
};
static FIELDS_STRESS_LEVEL: &[FieldInfo] = &[
FieldInfo {
field_def_num: 0,
name: "stress_level_value",
type_name: "sint16",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "stress_level_time",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_STRESS_LEVEL: MesgInfo = MesgInfo {
name: "stress_level",
fields: FIELDS_STRESS_LEVEL,
};
static FIELDS_MAX_MET_DATA: &[FieldInfo] = &[
FieldInfo {
field_def_num: 0,
name: "update_time",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "vo2_max",
type_name: "uint16",
array: None,
scale: Some(10_f64),
offset: None,
units: Some("mL/kg/min"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 5,
name: "sport",
type_name: "sport",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 6,
name: "sub_sport",
type_name: "sub_sport",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 8,
name: "max_met_category",
type_name: "max_met_category",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 9,
name: "calibrated_data",
type_name: "bool",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 12,
name: "hr_source",
type_name: "max_met_heart_rate_source",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 13,
name: "speed_source",
type_name: "max_met_speed_source",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_MAX_MET_DATA: MesgInfo = MesgInfo {
name: "max_met_data",
fields: FIELDS_MAX_MET_DATA,
};
static FIELDS_HSA_BODY_BATTERY_DATA: &[FieldInfo] = &[
FieldInfo {
field_def_num: 253,
name: "timestamp",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "processing_interval",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "level",
type_name: "sint8",
array: Some("[N]"),
scale: None,
offset: None,
units: Some("percent"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "charged",
type_name: "sint16",
array: Some("[N]"),
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 3,
name: "uncharged",
type_name: "sint16",
array: Some("[N]"),
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_HSA_BODY_BATTERY_DATA: MesgInfo = MesgInfo {
name: "hsa_body_battery_data",
fields: FIELDS_HSA_BODY_BATTERY_DATA,
};
static FIELDS_HSA_EVENT: &[FieldInfo] = &[
FieldInfo {
field_def_num: 253,
name: "timestamp",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "event_id",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_HSA_EVENT: MesgInfo = MesgInfo {
name: "hsa_event",
fields: FIELDS_HSA_EVENT,
};
static FIELDS_HSA_ACCELEROMETER_DATA: &[FieldInfo] = &[
FieldInfo {
field_def_num: 253,
name: "timestamp",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "timestamp_ms",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("ms"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "sampling_interval",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("ms"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "accel_x",
type_name: "sint16",
array: Some("[N]"),
scale: Some(1.024_f64),
offset: None,
units: Some("mG"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 3,
name: "accel_y",
type_name: "sint16",
array: Some("[N]"),
scale: Some(1.024_f64),
offset: None,
units: Some("mG"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 4,
name: "accel_z",
type_name: "sint16",
array: Some("[N]"),
scale: Some(1.024_f64),
offset: None,
units: Some("mG"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 5,
name: "timestamp_32k",
type_name: "uint32",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_HSA_ACCELEROMETER_DATA: MesgInfo = MesgInfo {
name: "hsa_accelerometer_data",
fields: FIELDS_HSA_ACCELEROMETER_DATA,
};
static FIELDS_HSA_GYROSCOPE_DATA: &[FieldInfo] = &[
FieldInfo {
field_def_num: 253,
name: "timestamp",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "timestamp_ms",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("ms"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "sampling_interval",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("1/32768 s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "gyro_x",
type_name: "sint16",
array: Some("[N]"),
scale: Some(28.57143_f64),
offset: None,
units: Some("deg/s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 3,
name: "gyro_y",
type_name: "sint16",
array: Some("[N]"),
scale: Some(28.57143_f64),
offset: None,
units: Some("deg/s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 4,
name: "gyro_z",
type_name: "sint16",
array: Some("[N]"),
scale: Some(28.57143_f64),
offset: None,
units: Some("deg/s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 5,
name: "timestamp_32k",
type_name: "uint32",
array: None,
scale: None,
offset: None,
units: Some("1/32768 s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_HSA_GYROSCOPE_DATA: MesgInfo = MesgInfo {
name: "hsa_gyroscope_data",
fields: FIELDS_HSA_GYROSCOPE_DATA,
};
static FIELDS_HSA_STEP_DATA: &[FieldInfo] = &[
FieldInfo {
field_def_num: 253,
name: "timestamp",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "processing_interval",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "steps",
type_name: "uint32",
array: Some("[N]"),
scale: Some(1_f64),
offset: None,
units: Some("steps"),
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_HSA_STEP_DATA: MesgInfo = MesgInfo {
name: "hsa_step_data",
fields: FIELDS_HSA_STEP_DATA,
};
static FIELDS_HSA_SPO2_DATA: &[FieldInfo] = &[
FieldInfo {
field_def_num: 253,
name: "timestamp",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "processing_interval",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "reading_spo2",
type_name: "uint8",
array: Some("[N]"),
scale: None,
offset: None,
units: Some("percent"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "confidence",
type_name: "uint8",
array: Some("[N]"),
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_HSA_SPO2_DATA: MesgInfo = MesgInfo {
name: "hsa_spo2_data",
fields: FIELDS_HSA_SPO2_DATA,
};
static FIELDS_HSA_STRESS_DATA: &[FieldInfo] = &[
FieldInfo {
field_def_num: 253,
name: "timestamp",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "processing_interval",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "stress_level",
type_name: "sint8",
array: Some("[N]"),
scale: Some(1_f64),
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_HSA_STRESS_DATA: MesgInfo = MesgInfo {
name: "hsa_stress_data",
fields: FIELDS_HSA_STRESS_DATA,
};
static FIELDS_HSA_RESPIRATION_DATA: &[FieldInfo] = &[
FieldInfo {
field_def_num: 253,
name: "timestamp",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "processing_interval",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "respiration_rate",
type_name: "sint16",
array: Some("[N]"),
scale: Some(100_f64),
offset: None,
units: Some("breaths/min"),
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_HSA_RESPIRATION_DATA: MesgInfo = MesgInfo {
name: "hsa_respiration_data",
fields: FIELDS_HSA_RESPIRATION_DATA,
};
static FIELDS_HSA_HEART_RATE_DATA: &[FieldInfo] = &[
FieldInfo {
field_def_num: 253,
name: "timestamp",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "processing_interval",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "status",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "heart_rate",
type_name: "uint8",
array: Some("[N]"),
scale: Some(1_f64),
offset: None,
units: Some("bpm"),
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_HSA_HEART_RATE_DATA: MesgInfo = MesgInfo {
name: "hsa_heart_rate_data",
fields: FIELDS_HSA_HEART_RATE_DATA,
};
static FIELDS_HSA_CONFIGURATION_DATA: &[FieldInfo] = &[
FieldInfo {
field_def_num: 253,
name: "timestamp",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "data",
type_name: "byte",
array: Some("[N]"),
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "data_size",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_HSA_CONFIGURATION_DATA: MesgInfo = MesgInfo {
name: "hsa_configuration_data",
fields: FIELDS_HSA_CONFIGURATION_DATA,
};
static FIELDS_HSA_WRIST_TEMPERATURE_DATA: &[FieldInfo] = &[
FieldInfo {
field_def_num: 253,
name: "timestamp",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "processing_interval",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "value",
type_name: "uint16",
array: Some("[N]"),
scale: Some(1000_f64),
offset: None,
units: Some("degC"),
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_HSA_WRIST_TEMPERATURE_DATA: MesgInfo = MesgInfo {
name: "hsa_wrist_temperature_data",
fields: FIELDS_HSA_WRIST_TEMPERATURE_DATA,
};
static FIELDS_MEMO_GLOB: &[FieldInfo] = &[
FieldInfo {
field_def_num: 250,
name: "part_index",
type_name: "uint32",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "memo",
type_name: "byte",
array: Some("[N]"),
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "mesg_num",
type_name: "mesg_num",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "parent_index",
type_name: "message_index",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 3,
name: "field_num",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 4,
name: "data",
type_name: "uint8z",
array: Some("[N]"),
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_MEMO_GLOB: MesgInfo = MesgInfo {
name: "memo_glob",
fields: FIELDS_MEMO_GLOB,
};
static FIELDS_SLEEP_LEVEL: &[FieldInfo] = &[
FieldInfo {
field_def_num: 253,
name: "timestamp",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "sleep_level",
type_name: "sleep_level",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_SLEEP_LEVEL: MesgInfo = MesgInfo {
name: "sleep_level",
fields: FIELDS_SLEEP_LEVEL,
};
static FIELDS_ANT_CHANNEL_ID: &[FieldInfo] = &[
FieldInfo {
field_def_num: 0,
name: "channel_number",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "device_type",
type_name: "uint8z",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "device_number",
type_name: "uint16z",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 3,
name: "transmission_type",
type_name: "uint8z",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 4,
name: "device_index",
type_name: "device_index",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_ANT_CHANNEL_ID: MesgInfo = MesgInfo {
name: "ant_channel_id",
fields: FIELDS_ANT_CHANNEL_ID,
};
static COMPONENTS_ANT_RX_3: &[Component] = &[
Component {
name: "channel_number",
bits: 8,
scale: None,
offset: None,
units: None,
accumulate: false,
},
Component {
name: "data",
bits: 8,
scale: None,
offset: None,
units: None,
accumulate: false,
},
Component {
name: "data",
bits: 8,
scale: None,
offset: None,
units: None,
accumulate: false,
},
Component {
name: "data",
bits: 8,
scale: None,
offset: None,
units: None,
accumulate: false,
},
Component {
name: "data",
bits: 8,
scale: None,
offset: None,
units: None,
accumulate: false,
},
Component {
name: "data",
bits: 8,
scale: None,
offset: None,
units: None,
accumulate: false,
},
Component {
name: "data",
bits: 8,
scale: None,
offset: None,
units: None,
accumulate: false,
},
Component {
name: "data",
bits: 8,
scale: None,
offset: None,
units: None,
accumulate: false,
},
Component {
name: "data",
bits: 8,
scale: None,
offset: None,
units: None,
accumulate: false,
},
];
static FIELDS_ANT_RX: &[FieldInfo] = &[
FieldInfo {
field_def_num: 253,
name: "timestamp",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "fractional_timestamp",
type_name: "uint16",
array: None,
scale: Some(32768_f64),
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "mesg_id",
type_name: "byte",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "mesg_data",
type_name: "byte",
array: Some("[N]"),
scale: None,
offset: None,
units: None,
components: COMPONENTS_ANT_RX_3,
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 3,
name: "channel_number",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 4,
name: "data",
type_name: "byte",
array: Some("[N]"),
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_ANT_RX: MesgInfo = MesgInfo {
name: "ant_rx",
fields: FIELDS_ANT_RX,
};
static COMPONENTS_ANT_TX_3: &[Component] = &[
Component {
name: "channel_number",
bits: 8,
scale: None,
offset: None,
units: None,
accumulate: false,
},
Component {
name: "data",
bits: 8,
scale: None,
offset: None,
units: None,
accumulate: false,
},
Component {
name: "data",
bits: 8,
scale: None,
offset: None,
units: None,
accumulate: false,
},
Component {
name: "data",
bits: 8,
scale: None,
offset: None,
units: None,
accumulate: false,
},
Component {
name: "data",
bits: 8,
scale: None,
offset: None,
units: None,
accumulate: false,
},
Component {
name: "data",
bits: 8,
scale: None,
offset: None,
units: None,
accumulate: false,
},
Component {
name: "data",
bits: 8,
scale: None,
offset: None,
units: None,
accumulate: false,
},
Component {
name: "data",
bits: 8,
scale: None,
offset: None,
units: None,
accumulate: false,
},
Component {
name: "data",
bits: 8,
scale: None,
offset: None,
units: None,
accumulate: false,
},
];
static FIELDS_ANT_TX: &[FieldInfo] = &[
FieldInfo {
field_def_num: 253,
name: "timestamp",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "fractional_timestamp",
type_name: "uint16",
array: None,
scale: Some(32768_f64),
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "mesg_id",
type_name: "byte",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "mesg_data",
type_name: "byte",
array: Some("[N]"),
scale: None,
offset: None,
units: None,
components: COMPONENTS_ANT_TX_3,
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 3,
name: "channel_number",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 4,
name: "data",
type_name: "byte",
array: Some("[N]"),
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_ANT_TX: MesgInfo = MesgInfo {
name: "ant_tx",
fields: FIELDS_ANT_TX,
};
static FIELDS_EXD_SCREEN_CONFIGURATION: &[FieldInfo] = &[
FieldInfo {
field_def_num: 0,
name: "screen_index",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "field_count",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "layout",
type_name: "exd_layout",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 3,
name: "screen_enabled",
type_name: "bool",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_EXD_SCREEN_CONFIGURATION: MesgInfo = MesgInfo {
name: "exd_screen_configuration",
fields: FIELDS_EXD_SCREEN_CONFIGURATION,
};
static COMPONENTS_EXD_DATA_FIELD_CONFIGURATION_1: &[Component] = &[
Component {
name: "field_id",
bits: 4,
scale: None,
offset: None,
units: None,
accumulate: false,
},
Component {
name: "concept_count",
bits: 4,
scale: None,
offset: None,
units: None,
accumulate: false,
},
];
static FIELDS_EXD_DATA_FIELD_CONFIGURATION: &[FieldInfo] = &[
FieldInfo {
field_def_num: 0,
name: "screen_index",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "concept_field",
type_name: "byte",
array: None,
scale: None,
offset: None,
units: None,
components: COMPONENTS_EXD_DATA_FIELD_CONFIGURATION_1,
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "field_id",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 3,
name: "concept_count",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 4,
name: "display_type",
type_name: "exd_display_type",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 5,
name: "title",
type_name: "string",
array: Some("[32]"),
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_EXD_DATA_FIELD_CONFIGURATION: MesgInfo = MesgInfo {
name: "exd_data_field_configuration",
fields: FIELDS_EXD_DATA_FIELD_CONFIGURATION,
};
static COMPONENTS_EXD_DATA_CONCEPT_CONFIGURATION_1: &[Component] = &[
Component {
name: "field_id",
bits: 4,
scale: None,
offset: None,
units: None,
accumulate: false,
},
Component {
name: "concept_index",
bits: 4,
scale: None,
offset: None,
units: None,
accumulate: false,
},
];
static FIELDS_EXD_DATA_CONCEPT_CONFIGURATION: &[FieldInfo] = &[
FieldInfo {
field_def_num: 0,
name: "screen_index",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "concept_field",
type_name: "byte",
array: None,
scale: None,
offset: None,
units: None,
components: COMPONENTS_EXD_DATA_CONCEPT_CONFIGURATION_1,
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "field_id",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 3,
name: "concept_index",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 4,
name: "data_page",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 5,
name: "concept_key",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 6,
name: "scaling",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 8,
name: "data_units",
type_name: "exd_data_units",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 9,
name: "qualifier",
type_name: "exd_qualifiers",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 10,
name: "descriptor",
type_name: "exd_descriptors",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 11,
name: "is_signed",
type_name: "bool",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_EXD_DATA_CONCEPT_CONFIGURATION: MesgInfo = MesgInfo {
name: "exd_data_concept_configuration",
fields: FIELDS_EXD_DATA_CONCEPT_CONFIGURATION,
};
static FIELDS_DIVE_SUMMARY: &[FieldInfo] = &[
FieldInfo {
field_def_num: 253,
name: "timestamp",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "reference_mesg",
type_name: "mesg_num",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "reference_index",
type_name: "message_index",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "avg_depth",
type_name: "uint32",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("m"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 3,
name: "max_depth",
type_name: "uint32",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("m"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 4,
name: "surface_interval",
type_name: "uint32",
array: None,
scale: Some(1_f64),
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 5,
name: "start_cns",
type_name: "uint8",
array: None,
scale: Some(1_f64),
offset: None,
units: Some("percent"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 6,
name: "end_cns",
type_name: "uint8",
array: None,
scale: Some(1_f64),
offset: None,
units: Some("percent"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 7,
name: "start_n2",
type_name: "uint16",
array: None,
scale: Some(1_f64),
offset: None,
units: Some("percent"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 8,
name: "end_n2",
type_name: "uint16",
array: None,
scale: Some(1_f64),
offset: None,
units: Some("percent"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 9,
name: "o2_toxicity",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("OTUs"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 10,
name: "dive_number",
type_name: "uint32",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 11,
name: "bottom_time",
type_name: "uint32",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 12,
name: "avg_pressure_sac",
type_name: "uint16",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("bar/min"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 13,
name: "avg_volume_sac",
type_name: "uint16",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("L/min"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 14,
name: "avg_rmv",
type_name: "uint16",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("L/min"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 15,
name: "descent_time",
type_name: "uint32",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 16,
name: "ascent_time",
type_name: "uint32",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 17,
name: "avg_ascent_rate",
type_name: "sint32",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("m/s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 22,
name: "avg_descent_rate",
type_name: "uint32",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("m/s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 23,
name: "max_ascent_rate",
type_name: "uint32",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("m/s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 24,
name: "max_descent_rate",
type_name: "uint32",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("m/s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 25,
name: "hang_time",
type_name: "uint32",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_DIVE_SUMMARY: MesgInfo = MesgInfo {
name: "dive_summary",
fields: FIELDS_DIVE_SUMMARY,
};
static FIELDS_AAD_ACCEL_FEATURES: &[FieldInfo] = &[
FieldInfo {
field_def_num: 253,
name: "timestamp",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "time",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "energy_total",
type_name: "uint32",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "zero_cross_cnt",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 3,
name: "instance",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 4,
name: "time_above_threshold",
type_name: "uint16",
array: None,
scale: Some(25_f64),
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_AAD_ACCEL_FEATURES: MesgInfo = MesgInfo {
name: "aad_accel_features",
fields: FIELDS_AAD_ACCEL_FEATURES,
};
static FIELDS_HRV: &[FieldInfo] = &[FieldInfo {
field_def_num: 0,
name: "time",
type_name: "uint16",
array: Some("[N]"),
scale: Some(1000_f64),
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
}];
pub static MESG_HRV: MesgInfo = MesgInfo {
name: "hrv",
fields: FIELDS_HRV,
};
static FIELDS_BEAT_INTERVALS: &[FieldInfo] = &[
FieldInfo {
field_def_num: 253,
name: "timestamp",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "timestamp_ms",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("ms"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "time",
type_name: "uint16",
array: Some("[N]"),
scale: None,
offset: None,
units: Some("ms"),
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_BEAT_INTERVALS: MesgInfo = MesgInfo {
name: "beat_intervals",
fields: FIELDS_BEAT_INTERVALS,
};
static FIELDS_HRV_STATUS_SUMMARY: &[FieldInfo] = &[
FieldInfo {
field_def_num: 253,
name: "timestamp",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "weekly_average",
type_name: "uint16",
array: None,
scale: Some(128_f64),
offset: None,
units: Some("ms"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "last_night_average",
type_name: "uint16",
array: None,
scale: Some(128_f64),
offset: None,
units: Some("ms"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "last_night_5_min_high",
type_name: "uint16",
array: None,
scale: Some(128_f64),
offset: None,
units: Some("ms"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 3,
name: "baseline_low_upper",
type_name: "uint16",
array: None,
scale: Some(128_f64),
offset: None,
units: Some("ms"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 4,
name: "baseline_balanced_lower",
type_name: "uint16",
array: None,
scale: Some(128_f64),
offset: None,
units: Some("ms"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 5,
name: "baseline_balanced_upper",
type_name: "uint16",
array: None,
scale: Some(128_f64),
offset: None,
units: Some("ms"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 6,
name: "status",
type_name: "hrv_status",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_HRV_STATUS_SUMMARY: MesgInfo = MesgInfo {
name: "hrv_status_summary",
fields: FIELDS_HRV_STATUS_SUMMARY,
};
static FIELDS_HRV_VALUE: &[FieldInfo] = &[
FieldInfo {
field_def_num: 253,
name: "timestamp",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "value",
type_name: "uint16",
array: None,
scale: Some(128_f64),
offset: None,
units: Some("ms"),
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_HRV_VALUE: MesgInfo = MesgInfo {
name: "hrv_value",
fields: FIELDS_HRV_VALUE,
};
static COMPONENTS_RAW_BBI_2: &[Component] = &[
Component {
name: "time",
bits: 14,
scale: None,
offset: None,
units: None,
accumulate: false,
},
Component {
name: "quality",
bits: 1,
scale: None,
offset: None,
units: None,
accumulate: false,
},
Component {
name: "gap",
bits: 1,
scale: None,
offset: None,
units: None,
accumulate: false,
},
Component {
name: "time",
bits: 14,
scale: None,
offset: None,
units: None,
accumulate: false,
},
Component {
name: "quality",
bits: 1,
scale: None,
offset: None,
units: None,
accumulate: false,
},
Component {
name: "gap",
bits: 1,
scale: None,
offset: None,
units: None,
accumulate: false,
},
Component {
name: "time",
bits: 14,
scale: None,
offset: None,
units: None,
accumulate: false,
},
Component {
name: "quality",
bits: 1,
scale: None,
offset: None,
units: None,
accumulate: false,
},
Component {
name: "gap",
bits: 1,
scale: None,
offset: None,
units: None,
accumulate: false,
},
Component {
name: "time",
bits: 14,
scale: None,
offset: None,
units: None,
accumulate: false,
},
Component {
name: "quality",
bits: 1,
scale: None,
offset: None,
units: None,
accumulate: false,
},
Component {
name: "gap",
bits: 1,
scale: None,
offset: None,
units: None,
accumulate: false,
},
Component {
name: "time",
bits: 14,
scale: None,
offset: None,
units: None,
accumulate: false,
},
Component {
name: "quality",
bits: 1,
scale: None,
offset: None,
units: None,
accumulate: false,
},
Component {
name: "gap",
bits: 1,
scale: None,
offset: None,
units: None,
accumulate: false,
},
Component {
name: "time",
bits: 14,
scale: None,
offset: None,
units: None,
accumulate: false,
},
Component {
name: "quality",
bits: 1,
scale: None,
offset: None,
units: None,
accumulate: false,
},
Component {
name: "gap",
bits: 1,
scale: None,
offset: None,
units: None,
accumulate: false,
},
Component {
name: "time",
bits: 14,
scale: None,
offset: None,
units: None,
accumulate: false,
},
Component {
name: "quality",
bits: 1,
scale: None,
offset: None,
units: None,
accumulate: false,
},
Component {
name: "gap",
bits: 1,
scale: None,
offset: None,
units: None,
accumulate: false,
},
Component {
name: "time",
bits: 14,
scale: None,
offset: None,
units: None,
accumulate: false,
},
Component {
name: "quality",
bits: 1,
scale: None,
offset: None,
units: None,
accumulate: false,
},
Component {
name: "gap",
bits: 1,
scale: None,
offset: None,
units: None,
accumulate: false,
},
Component {
name: "time",
bits: 14,
scale: None,
offset: None,
units: None,
accumulate: false,
},
Component {
name: "quality",
bits: 1,
scale: None,
offset: None,
units: None,
accumulate: false,
},
Component {
name: "gap",
bits: 1,
scale: None,
offset: None,
units: None,
accumulate: false,
},
Component {
name: "time",
bits: 14,
scale: None,
offset: None,
units: None,
accumulate: false,
},
Component {
name: "quality",
bits: 1,
scale: None,
offset: None,
units: None,
accumulate: false,
},
Component {
name: "gap",
bits: 1,
scale: None,
offset: None,
units: None,
accumulate: false,
},
Component {
name: "time",
bits: 14,
scale: None,
offset: None,
units: None,
accumulate: false,
},
Component {
name: "quality",
bits: 1,
scale: None,
offset: None,
units: None,
accumulate: false,
},
Component {
name: "gap",
bits: 1,
scale: None,
offset: None,
units: None,
accumulate: false,
},
Component {
name: "time",
bits: 14,
scale: None,
offset: None,
units: None,
accumulate: false,
},
Component {
name: "quality",
bits: 1,
scale: None,
offset: None,
units: None,
accumulate: false,
},
Component {
name: "gap",
bits: 1,
scale: None,
offset: None,
units: None,
accumulate: false,
},
Component {
name: "time",
bits: 14,
scale: None,
offset: None,
units: None,
accumulate: false,
},
Component {
name: "quality",
bits: 1,
scale: None,
offset: None,
units: None,
accumulate: false,
},
Component {
name: "gap",
bits: 1,
scale: None,
offset: None,
units: None,
accumulate: false,
},
Component {
name: "time",
bits: 14,
scale: None,
offset: None,
units: None,
accumulate: false,
},
Component {
name: "quality",
bits: 1,
scale: None,
offset: None,
units: None,
accumulate: false,
},
Component {
name: "gap",
bits: 1,
scale: None,
offset: None,
units: None,
accumulate: false,
},
Component {
name: "time",
bits: 14,
scale: None,
offset: None,
units: None,
accumulate: false,
},
Component {
name: "quality",
bits: 1,
scale: None,
offset: None,
units: None,
accumulate: false,
},
Component {
name: "gap",
bits: 1,
scale: None,
offset: None,
units: None,
accumulate: false,
},
];
static FIELDS_RAW_BBI: &[FieldInfo] = &[
FieldInfo {
field_def_num: 253,
name: "timestamp",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "timestamp_ms",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: Some("ms"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "data",
type_name: "uint16",
array: Some("[N]"),
scale: None,
offset: None,
units: None,
components: COMPONENTS_RAW_BBI_2,
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "time",
type_name: "uint16",
array: Some("[N]"),
scale: None,
offset: None,
units: Some("ms"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 3,
name: "quality",
type_name: "uint8",
array: Some("[N]"),
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 4,
name: "gap",
type_name: "uint8",
array: Some("[N]"),
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_RAW_BBI: MesgInfo = MesgInfo {
name: "raw_bbi",
fields: FIELDS_RAW_BBI,
};
static FIELDS_RESPIRATION_RATE: &[FieldInfo] = &[
FieldInfo {
field_def_num: 253,
name: "timestamp",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "respiration_rate",
type_name: "sint16",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("breaths/min"),
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_RESPIRATION_RATE: MesgInfo = MesgInfo {
name: "respiration_rate",
fields: FIELDS_RESPIRATION_RATE,
};
static FIELDS_CHRONO_SHOT_SESSION: &[FieldInfo] = &[
FieldInfo {
field_def_num: 253,
name: "timestamp",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "min_speed",
type_name: "uint32",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("m/s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "max_speed",
type_name: "uint32",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("m/s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "avg_speed",
type_name: "uint32",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("m/s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 3,
name: "shot_count",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 4,
name: "projectile_type",
type_name: "projectile_type",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 5,
name: "grain_weight",
type_name: "uint32",
array: None,
scale: Some(10_f64),
offset: None,
units: Some("gr"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 6,
name: "standard_deviation",
type_name: "uint32",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("m/s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_CHRONO_SHOT_SESSION: MesgInfo = MesgInfo {
name: "chrono_shot_session",
fields: FIELDS_CHRONO_SHOT_SESSION,
};
static FIELDS_CHRONO_SHOT_DATA: &[FieldInfo] = &[
FieldInfo {
field_def_num: 253,
name: "timestamp",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "shot_speed",
type_name: "uint32",
array: None,
scale: Some(1000_f64),
offset: None,
units: Some("m/s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "shot_num",
type_name: "uint16",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_CHRONO_SHOT_DATA: MesgInfo = MesgInfo {
name: "chrono_shot_data",
fields: FIELDS_CHRONO_SHOT_DATA,
};
static FIELDS_TANK_UPDATE: &[FieldInfo] = &[
FieldInfo {
field_def_num: 253,
name: "timestamp",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "sensor",
type_name: "ant_channel_id",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "pressure",
type_name: "uint16",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("bar"),
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_TANK_UPDATE: MesgInfo = MesgInfo {
name: "tank_update",
fields: FIELDS_TANK_UPDATE,
};
static FIELDS_TANK_SUMMARY: &[FieldInfo] = &[
FieldInfo {
field_def_num: 253,
name: "timestamp",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: Some("s"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "sensor",
type_name: "ant_channel_id",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "start_pressure",
type_name: "uint16",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("bar"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "end_pressure",
type_name: "uint16",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("bar"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 3,
name: "volume_used",
type_name: "uint32",
array: None,
scale: Some(100_f64),
offset: None,
units: Some("L"),
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_TANK_SUMMARY: MesgInfo = MesgInfo {
name: "tank_summary",
fields: FIELDS_TANK_SUMMARY,
};
static FIELDS_SLEEP_ASSESSMENT: &[FieldInfo] = &[
FieldInfo {
field_def_num: 0,
name: "combined_awake_score",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "awake_time_score",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "awakenings_count_score",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 3,
name: "deep_sleep_score",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 4,
name: "sleep_duration_score",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 5,
name: "light_sleep_score",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 6,
name: "overall_sleep_score",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 7,
name: "sleep_quality_score",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 8,
name: "sleep_recovery_score",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 9,
name: "rem_sleep_score",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 10,
name: "sleep_restlessness_score",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 11,
name: "awakenings_count",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 14,
name: "interruptions_score",
type_name: "uint8",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 15,
name: "average_stress_during_sleep",
type_name: "uint16",
array: None,
scale: Some(100_f64),
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_SLEEP_ASSESSMENT: MesgInfo = MesgInfo {
name: "sleep_assessment",
fields: FIELDS_SLEEP_ASSESSMENT,
};
static FIELDS_SLEEP_DISRUPTION_SEVERITY_PERIOD: &[FieldInfo] = &[
FieldInfo {
field_def_num: 254,
name: "message_index",
type_name: "message_index",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 253,
name: "timestamp",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "severity",
type_name: "sleep_disruption_severity",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_SLEEP_DISRUPTION_SEVERITY_PERIOD: MesgInfo = MesgInfo {
name: "sleep_disruption_severity_period",
fields: FIELDS_SLEEP_DISRUPTION_SEVERITY_PERIOD,
};
static FIELDS_SLEEP_DISRUPTION_OVERNIGHT_SEVERITY: &[FieldInfo] = &[
FieldInfo {
field_def_num: 253,
name: "timestamp",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "severity",
type_name: "sleep_disruption_severity",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_SLEEP_DISRUPTION_OVERNIGHT_SEVERITY: MesgInfo = MesgInfo {
name: "sleep_disruption_overnight_severity",
fields: FIELDS_SLEEP_DISRUPTION_OVERNIGHT_SEVERITY,
};
static FIELDS_NAP_EVENT: &[FieldInfo] = &[
FieldInfo {
field_def_num: 254,
name: "message_index",
type_name: "message_index",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 253,
name: "timestamp",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "start_time",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: Some("seconds"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "start_timezone_offset",
type_name: "sint16",
array: None,
scale: None,
offset: None,
units: Some("minutes"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "end_time",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: Some("seconds"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 3,
name: "end_timezone_offset",
type_name: "sint16",
array: None,
scale: None,
offset: None,
units: Some("minutes"),
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 4,
name: "feedback",
type_name: "nap_period_feedback",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 5,
name: "is_deleted",
type_name: "bool",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 6,
name: "source",
type_name: "nap_source",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 7,
name: "update_timestamp",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_NAP_EVENT: MesgInfo = MesgInfo {
name: "nap_event",
fields: FIELDS_NAP_EVENT,
};
static FIELDS_SKIN_TEMP_OVERNIGHT: &[FieldInfo] = &[
FieldInfo {
field_def_num: 253,
name: "timestamp",
type_name: "date_time",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 0,
name: "local_timestamp",
type_name: "local_date_time",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 1,
name: "average_deviation",
type_name: "float32",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 2,
name: "average_7_day_deviation",
type_name: "float32",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
FieldInfo {
field_def_num: 4,
name: "nightly_value",
type_name: "float32",
array: None,
scale: None,
offset: None,
units: None,
components: &[],
sub_fields: &[],
accumulate: false,
},
];
pub static MESG_SKIN_TEMP_OVERNIGHT: MesgInfo = MesgInfo {
name: "skin_temp_overnight",
fields: FIELDS_SKIN_TEMP_OVERNIGHT,
};
pub static ALL_MESSAGES: &[&MesgInfo] = &[
&MESG_FILE_ID,
&MESG_FILE_CREATOR,
&MESG_TIMESTAMP_CORRELATION,
&MESG_SOFTWARE,
&MESG_SLAVE_DEVICE,
&MESG_CAPABILITIES,
&MESG_FILE_CAPABILITIES,
&MESG_MESG_CAPABILITIES,
&MESG_FIELD_CAPABILITIES,
&MESG_DEVICE_SETTINGS,
&MESG_USER_PROFILE,
&MESG_HRM_PROFILE,
&MESG_SDM_PROFILE,
&MESG_BIKE_PROFILE,
&MESG_CONNECTIVITY,
&MESG_WATCHFACE_SETTINGS,
&MESG_OHR_SETTINGS,
&MESG_TIME_IN_ZONE,
&MESG_ZONES_TARGET,
&MESG_SPORT,
&MESG_HR_ZONE,
&MESG_SPEED_ZONE,
&MESG_CADENCE_ZONE,
&MESG_POWER_ZONE,
&MESG_MET_ZONE,
&MESG_TRAINING_SETTINGS,
&MESG_DIVE_SETTINGS,
&MESG_DIVE_ALARM,
&MESG_DIVE_APNEA_ALARM,
&MESG_DIVE_GAS,
&MESG_GOAL,
&MESG_ACTIVITY,
&MESG_SESSION,
&MESG_LAP,
&MESG_LENGTH,
&MESG_RECORD,
&MESG_EVENT,
&MESG_DEVICE_INFO,
&MESG_DEVICE_AUX_BATTERY_INFO,
&MESG_TRAINING_FILE,
&MESG_WEATHER_CONDITIONS,
&MESG_WEATHER_ALERT,
&MESG_GPS_METADATA,
&MESG_CAMERA_EVENT,
&MESG_GYROSCOPE_DATA,
&MESG_ACCELEROMETER_DATA,
&MESG_MAGNETOMETER_DATA,
&MESG_BAROMETER_DATA,
&MESG_THREE_D_SENSOR_CALIBRATION,
&MESG_ONE_D_SENSOR_CALIBRATION,
&MESG_VIDEO_FRAME,
&MESG_OBDII_DATA,
&MESG_NMEA_SENTENCE,
&MESG_AVIATION_ATTITUDE,
&MESG_VIDEO,
&MESG_VIDEO_TITLE,
&MESG_VIDEO_DESCRIPTION,
&MESG_VIDEO_CLIP,
&MESG_SET,
&MESG_JUMP,
&MESG_SPLIT,
&MESG_SPLIT_SUMMARY,
&MESG_CLIMB_PRO,
&MESG_FIELD_DESCRIPTION,
&MESG_DEVELOPER_DATA_ID,
&MESG_COURSE,
&MESG_COURSE_POINT,
&MESG_SEGMENT_ID,
&MESG_SEGMENT_LEADERBOARD_ENTRY,
&MESG_SEGMENT_POINT,
&MESG_SEGMENT_LAP,
&MESG_SEGMENT_FILE,
&MESG_WORKOUT,
&MESG_WORKOUT_SESSION,
&MESG_WORKOUT_STEP,
&MESG_EXERCISE_TITLE,
&MESG_SCHEDULE,
&MESG_TOTALS,
&MESG_WEIGHT_SCALE,
&MESG_BLOOD_PRESSURE,
&MESG_MONITORING_INFO,
&MESG_MONITORING,
&MESG_MONITORING_HR_DATA,
&MESG_SPO2_DATA,
&MESG_HR,
&MESG_STRESS_LEVEL,
&MESG_MAX_MET_DATA,
&MESG_HSA_BODY_BATTERY_DATA,
&MESG_HSA_EVENT,
&MESG_HSA_ACCELEROMETER_DATA,
&MESG_HSA_GYROSCOPE_DATA,
&MESG_HSA_STEP_DATA,
&MESG_HSA_SPO2_DATA,
&MESG_HSA_STRESS_DATA,
&MESG_HSA_RESPIRATION_DATA,
&MESG_HSA_HEART_RATE_DATA,
&MESG_HSA_CONFIGURATION_DATA,
&MESG_HSA_WRIST_TEMPERATURE_DATA,
&MESG_MEMO_GLOB,
&MESG_SLEEP_LEVEL,
&MESG_ANT_CHANNEL_ID,
&MESG_ANT_RX,
&MESG_ANT_TX,
&MESG_EXD_SCREEN_CONFIGURATION,
&MESG_EXD_DATA_FIELD_CONFIGURATION,
&MESG_EXD_DATA_CONCEPT_CONFIGURATION,
&MESG_DIVE_SUMMARY,
&MESG_AAD_ACCEL_FEATURES,
&MESG_HRV,
&MESG_BEAT_INTERVALS,
&MESG_HRV_STATUS_SUMMARY,
&MESG_HRV_VALUE,
&MESG_RAW_BBI,
&MESG_RESPIRATION_RATE,
&MESG_CHRONO_SHOT_SESSION,
&MESG_CHRONO_SHOT_DATA,
&MESG_TANK_UPDATE,
&MESG_TANK_SUMMARY,
&MESG_SLEEP_ASSESSMENT,
&MESG_SLEEP_DISRUPTION_SEVERITY_PERIOD,
&MESG_SLEEP_DISRUPTION_OVERNIGHT_SEVERITY,
&MESG_NAP_EVENT,
&MESG_SKIN_TEMP_OVERNIGHT,
];
pub fn mesg_info_by_num(global_mesg_num: u16) -> Option<&'static MesgInfo> {
Some(match global_mesg_num {
0 => &MESG_FILE_ID,
1 => &MESG_CAPABILITIES,
2 => &MESG_DEVICE_SETTINGS,
3 => &MESG_USER_PROFILE,
4 => &MESG_HRM_PROFILE,
5 => &MESG_SDM_PROFILE,
6 => &MESG_BIKE_PROFILE,
7 => &MESG_ZONES_TARGET,
8 => &MESG_HR_ZONE,
9 => &MESG_POWER_ZONE,
10 => &MESG_MET_ZONE,
12 => &MESG_SPORT,
13 => &MESG_TRAINING_SETTINGS,
15 => &MESG_GOAL,
18 => &MESG_SESSION,
19 => &MESG_LAP,
20 => &MESG_RECORD,
21 => &MESG_EVENT,
23 => &MESG_DEVICE_INFO,
26 => &MESG_WORKOUT,
27 => &MESG_WORKOUT_STEP,
28 => &MESG_SCHEDULE,
30 => &MESG_WEIGHT_SCALE,
31 => &MESG_COURSE,
32 => &MESG_COURSE_POINT,
33 => &MESG_TOTALS,
34 => &MESG_ACTIVITY,
35 => &MESG_SOFTWARE,
37 => &MESG_FILE_CAPABILITIES,
38 => &MESG_MESG_CAPABILITIES,
39 => &MESG_FIELD_CAPABILITIES,
49 => &MESG_FILE_CREATOR,
51 => &MESG_BLOOD_PRESSURE,
53 => &MESG_SPEED_ZONE,
55 => &MESG_MONITORING,
72 => &MESG_TRAINING_FILE,
78 => &MESG_HRV,
80 => &MESG_ANT_RX,
81 => &MESG_ANT_TX,
82 => &MESG_ANT_CHANNEL_ID,
101 => &MESG_LENGTH,
103 => &MESG_MONITORING_INFO,
106 => &MESG_SLAVE_DEVICE,
127 => &MESG_CONNECTIVITY,
128 => &MESG_WEATHER_CONDITIONS,
129 => &MESG_WEATHER_ALERT,
131 => &MESG_CADENCE_ZONE,
132 => &MESG_HR,
142 => &MESG_SEGMENT_LAP,
145 => &MESG_MEMO_GLOB,
148 => &MESG_SEGMENT_ID,
149 => &MESG_SEGMENT_LEADERBOARD_ENTRY,
150 => &MESG_SEGMENT_POINT,
151 => &MESG_SEGMENT_FILE,
158 => &MESG_WORKOUT_SESSION,
159 => &MESG_WATCHFACE_SETTINGS,
160 => &MESG_GPS_METADATA,
161 => &MESG_CAMERA_EVENT,
162 => &MESG_TIMESTAMP_CORRELATION,
164 => &MESG_GYROSCOPE_DATA,
165 => &MESG_ACCELEROMETER_DATA,
167 => &MESG_THREE_D_SENSOR_CALIBRATION,
169 => &MESG_VIDEO_FRAME,
174 => &MESG_OBDII_DATA,
177 => &MESG_NMEA_SENTENCE,
178 => &MESG_AVIATION_ATTITUDE,
184 => &MESG_VIDEO,
185 => &MESG_VIDEO_TITLE,
186 => &MESG_VIDEO_DESCRIPTION,
187 => &MESG_VIDEO_CLIP,
188 => &MESG_OHR_SETTINGS,
200 => &MESG_EXD_SCREEN_CONFIGURATION,
201 => &MESG_EXD_DATA_FIELD_CONFIGURATION,
202 => &MESG_EXD_DATA_CONCEPT_CONFIGURATION,
206 => &MESG_FIELD_DESCRIPTION,
207 => &MESG_DEVELOPER_DATA_ID,
208 => &MESG_MAGNETOMETER_DATA,
209 => &MESG_BAROMETER_DATA,
210 => &MESG_ONE_D_SENSOR_CALIBRATION,
211 => &MESG_MONITORING_HR_DATA,
216 => &MESG_TIME_IN_ZONE,
225 => &MESG_SET,
227 => &MESG_STRESS_LEVEL,
229 => &MESG_MAX_MET_DATA,
258 => &MESG_DIVE_SETTINGS,
259 => &MESG_DIVE_GAS,
262 => &MESG_DIVE_ALARM,
264 => &MESG_EXERCISE_TITLE,
268 => &MESG_DIVE_SUMMARY,
269 => &MESG_SPO2_DATA,
275 => &MESG_SLEEP_LEVEL,
285 => &MESG_JUMP,
289 => &MESG_AAD_ACCEL_FEATURES,
290 => &MESG_BEAT_INTERVALS,
297 => &MESG_RESPIRATION_RATE,
302 => &MESG_HSA_ACCELEROMETER_DATA,
304 => &MESG_HSA_STEP_DATA,
305 => &MESG_HSA_SPO2_DATA,
306 => &MESG_HSA_STRESS_DATA,
307 => &MESG_HSA_RESPIRATION_DATA,
308 => &MESG_HSA_HEART_RATE_DATA,
312 => &MESG_SPLIT,
313 => &MESG_SPLIT_SUMMARY,
314 => &MESG_HSA_BODY_BATTERY_DATA,
315 => &MESG_HSA_EVENT,
317 => &MESG_CLIMB_PRO,
319 => &MESG_TANK_UPDATE,
323 => &MESG_TANK_SUMMARY,
346 => &MESG_SLEEP_ASSESSMENT,
370 => &MESG_HRV_STATUS_SUMMARY,
371 => &MESG_HRV_VALUE,
372 => &MESG_RAW_BBI,
375 => &MESG_DEVICE_AUX_BATTERY_INFO,
376 => &MESG_HSA_GYROSCOPE_DATA,
387 => &MESG_CHRONO_SHOT_SESSION,
388 => &MESG_CHRONO_SHOT_DATA,
389 => &MESG_HSA_CONFIGURATION_DATA,
393 => &MESG_DIVE_APNEA_ALARM,
398 => &MESG_SKIN_TEMP_OVERNIGHT,
409 => &MESG_HSA_WRIST_TEMPERATURE_DATA,
412 => &MESG_NAP_EVENT,
470 => &MESG_SLEEP_DISRUPTION_SEVERITY_PERIOD,
471 => &MESG_SLEEP_DISRUPTION_OVERNIGHT_SEVERITY,
_ => return None,
})
}