syntax = "proto2";
package data;
import "types.proto";
import "exercise_rr_samples.proto";
message PbPowerMeasurements {
required int32 current_power = 1 ;
optional uint32 cumulative_crank_revolutions = 2 ;
optional uint32 cumulative_timestamp = 3 ;
optional sint32 force_magnitude_min = 4 ;
optional int32 force_magnitude_max = 5 ;
optional uint32 force_magnitude_min_angle = 6 ;
optional uint32 force_magnitude_max_angle = 7 ;
optional uint32 bottom_dead_spot_angle = 8 ;
optional uint32 top_dead_spot_angle = 9 ;
}
message PbCalibrationValue {
required uint32 start_index = 1 ;
required float value = 2 ;
required types.PbOperationType operation = 3 ;
optional types.PbMovingType cause = 4 ;
}
message PbExerciseSamples {
required types.PbDuration recording_interval = 1 ;
repeated uint32 heart_rate_samples = 2 [packed=true];
repeated types.PbSensorOffline heart_rate_offline = 3 ;
repeated uint32 cadence_samples = 4 [packed=true];
repeated types.PbSensorOffline cadence_offline = 5 ;
repeated float altitude_samples = 6 [packed=true];
repeated types.PbSensorOffline altitude_offline = 18 ;
repeated data.PbCalibrationValue altitude_calibration = 7 ;
repeated float temperature_samples = 8 [packed=true];
repeated types.PbSensorOffline temperature_offline = 19 ;
repeated float speed_samples = 9 [packed=true];
repeated types.PbSensorOffline speed_offline = 10 ;
repeated float distance_samples = 11 [packed=true];
repeated types.PbSensorOffline distance_offline = 12 ;
repeated uint32 stride_length_samples = 13 ;
repeated types.PbSensorOffline stride_length_offline = 14 ;
repeated data.PbCalibrationValue stride_calibration = 15 ;
repeated float forward_acceleration = 16 ;
repeated types.PbSensorOffline forward_acceleration_offline = 20 ;
repeated types.PbMovingType moving_type_samples = 17 ;
repeated types.PbSensorOffline moving_type_offline = 21 ;
repeated data.PbPowerMeasurements left_pedal_power_samples = 22 ;
repeated types.PbSensorOffline left_pedal_power_offline = 23 ;
repeated data.PbPowerMeasurements right_pedal_power_samples = 24 ;
repeated types.PbSensorOffline right_pedal_power_offline = 25 ;
repeated data.PbCalibrationValue left_power_calibration = 26 ;
repeated data.PbCalibrationValue right_power_calibration = 27 ;
optional data.PbExerciseRRIntervals rr_samples = 28 ;
}