diff --git a/aasdk_proto/AVChannelData.proto b/aasdk_proto/AVChannelData.proto index cddb12ec..cb8b8e6c 100644 --- a/aasdk_proto/AVChannelData.proto +++ b/aasdk_proto/AVChannelData.proto @@ -16,7 +16,7 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; import "AVStreamTypeEnum.proto"; import "AudioTypeEnum.proto"; @@ -27,9 +27,9 @@ package f1x.aasdk.proto.data; message AVChannel { - enums.AVStreamType.Enum stream_type = 1; - enums.AudioType.Enum audio_type = 2; + required enums.AVStreamType.Enum stream_type = 1; + optional enums.AudioType.Enum audio_type = 2; repeated AudioConfig audio_configs = 3; repeated VideoConfig video_configs = 4; - bool available_while_in_call = 5; + optional bool available_while_in_call = 5; } diff --git a/aasdk_proto/AVChannelMessageIdsEnum.proto b/aasdk_proto/AVChannelMessageIdsEnum.proto index c3baaa0c..67f0c067 100644 --- a/aasdk_proto/AVChannelMessageIdsEnum.proto +++ b/aasdk_proto/AVChannelMessageIdsEnum.proto @@ -16,7 +16,7 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; package f1x.aasdk.proto.ids; diff --git a/aasdk_proto/AVChannelSetupRequestMessage.proto b/aasdk_proto/AVChannelSetupRequestMessage.proto index 34cb5852..fae2192b 100644 --- a/aasdk_proto/AVChannelSetupRequestMessage.proto +++ b/aasdk_proto/AVChannelSetupRequestMessage.proto @@ -16,11 +16,11 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; package f1x.aasdk.proto.messages; message AVChannelSetupRequest { - uint32 config_index = 1; + required uint32 config_index = 1; } diff --git a/aasdk_proto/AVChannelSetupStatusEnum.proto b/aasdk_proto/AVChannelSetupStatusEnum.proto index 3c56fddb..68b4ee90 100644 --- a/aasdk_proto/AVChannelSetupStatusEnum.proto +++ b/aasdk_proto/AVChannelSetupStatusEnum.proto @@ -16,7 +16,7 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; package f1x.aasdk.proto.enums; diff --git a/aasdk_proto/AVChannelStartIndicationMessage.proto b/aasdk_proto/AVChannelStartIndicationMessage.proto index 424759d5..30ded146 100644 --- a/aasdk_proto/AVChannelStartIndicationMessage.proto +++ b/aasdk_proto/AVChannelStartIndicationMessage.proto @@ -16,12 +16,12 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; package f1x.aasdk.proto.messages; message AVChannelStartIndication { - int32 session = 1; - uint32 config = 2; + required int32 session = 1; + required uint32 config = 2; } diff --git a/aasdk_proto/AVChannelStopIndicationMessage.proto b/aasdk_proto/AVChannelStopIndicationMessage.proto index 4d8a3b64..1ff7b7d2 100644 --- a/aasdk_proto/AVChannelStopIndicationMessage.proto +++ b/aasdk_proto/AVChannelStopIndicationMessage.proto @@ -16,7 +16,7 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; package f1x.aasdk.proto.messages; diff --git a/aasdk_proto/AVInputChannelData.proto b/aasdk_proto/AVInputChannelData.proto index 5d854329..8165107c 100644 --- a/aasdk_proto/AVInputChannelData.proto +++ b/aasdk_proto/AVInputChannelData.proto @@ -16,7 +16,7 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; import "AVStreamTypeEnum.proto"; import "AudioConfigData.proto"; @@ -25,7 +25,7 @@ package f1x.aasdk.proto.data; message AVInputChannel { - enums.AVStreamType.Enum stream_type = 1; - AudioConfig audio_config = 2; - bool available_while_in_call = 3; + required enums.AVStreamType.Enum stream_type = 1; + required AudioConfig audio_config = 2; + optional bool available_while_in_call = 3; } diff --git a/aasdk_proto/AVInputOpenRequestMessage.proto b/aasdk_proto/AVInputOpenRequestMessage.proto index 4d9de268..496ee4be 100644 --- a/aasdk_proto/AVInputOpenRequestMessage.proto +++ b/aasdk_proto/AVInputOpenRequestMessage.proto @@ -16,14 +16,14 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; package f1x.aasdk.proto.messages; message AVInputOpenRequest { - bool open = 1; - bool anc = 2; - bool ec = 3; - int32 max_unacked = 4; + required bool open = 1; + optional bool anc = 2; + optional bool ec = 3; + optional int32 max_unacked = 4; } diff --git a/aasdk_proto/AVStreamTypeEnum.proto b/aasdk_proto/AVStreamTypeEnum.proto index a52fa84c..3a1ffd17 100644 --- a/aasdk_proto/AVStreamTypeEnum.proto +++ b/aasdk_proto/AVStreamTypeEnum.proto @@ -16,7 +16,7 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; package f1x.aasdk.proto.enums; diff --git a/aasdk_proto/AbsoluteInputEventData.proto b/aasdk_proto/AbsoluteInputEventData.proto index 1287938b..afcdde99 100644 --- a/aasdk_proto/AbsoluteInputEventData.proto +++ b/aasdk_proto/AbsoluteInputEventData.proto @@ -16,12 +16,12 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; package f1x.aasdk.proto.data; message AbsoluteInputEvent { - uint32 scan_code = 1; - int32 value = 2; + required uint32 scan_code = 1; + required int32 value = 2; } diff --git a/aasdk_proto/AbsoluteInputEventsData.proto b/aasdk_proto/AbsoluteInputEventsData.proto index 0576bd47..29f61f43 100644 --- a/aasdk_proto/AbsoluteInputEventsData.proto +++ b/aasdk_proto/AbsoluteInputEventsData.proto @@ -16,7 +16,7 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; import "AbsoluteInputEventData.proto"; diff --git a/aasdk_proto/AccelData.proto b/aasdk_proto/AccelData.proto index 61fa1cf6..f873ed7e 100644 --- a/aasdk_proto/AccelData.proto +++ b/aasdk_proto/AccelData.proto @@ -16,13 +16,13 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; package f1x.aasdk.proto.data; message Accel { - int32 acceleration_x = 1; - int32 acceleration_y = 2; - int32 acceleration_z = 3; + required int32 acceleration_x = 1; + required int32 acceleration_y = 2; + required int32 acceleration_z = 3; } diff --git a/aasdk_proto/AudioConfigData.proto b/aasdk_proto/AudioConfigData.proto index 20322853..8b4ba85d 100644 --- a/aasdk_proto/AudioConfigData.proto +++ b/aasdk_proto/AudioConfigData.proto @@ -16,13 +16,13 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; package f1x.aasdk.proto.data; message AudioConfig { - uint32 sample_rate = 1; - uint32 bit_depth = 2; - uint32 channel_count = 3; + required uint32 sample_rate = 1; + required uint32 bit_depth = 2; + required uint32 channel_count = 3; } diff --git a/aasdk_proto/AudioFocusRequestMessage.proto b/aasdk_proto/AudioFocusRequestMessage.proto index 0fb91ae6..1273cfc5 100644 --- a/aasdk_proto/AudioFocusRequestMessage.proto +++ b/aasdk_proto/AudioFocusRequestMessage.proto @@ -16,7 +16,7 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; import "AudioFocusTypeEnum.proto"; @@ -24,5 +24,5 @@ package f1x.aasdk.proto.messages; message AudioFocusRequest { - enums.AudioFocusType.Enum audio_focus_type = 1; + required enums.AudioFocusType.Enum audio_focus_type = 1; } diff --git a/aasdk_proto/AudioFocusResponseMessage.proto b/aasdk_proto/AudioFocusResponseMessage.proto index 634eb8ce..43e7cd71 100644 --- a/aasdk_proto/AudioFocusResponseMessage.proto +++ b/aasdk_proto/AudioFocusResponseMessage.proto @@ -16,7 +16,7 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; import "AudioFocusStateEnum.proto"; @@ -24,5 +24,5 @@ package f1x.aasdk.proto.messages; message AudioFocusResponse { - enums.AudioFocusState.Enum audio_focus_state = 1; + required enums.AudioFocusState.Enum audio_focus_state = 1; } diff --git a/aasdk_proto/AudioFocusStateEnum.proto b/aasdk_proto/AudioFocusStateEnum.proto index b334fffa..1200cdc9 100644 --- a/aasdk_proto/AudioFocusStateEnum.proto +++ b/aasdk_proto/AudioFocusStateEnum.proto @@ -16,7 +16,7 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; package f1x.aasdk.proto.enums; diff --git a/aasdk_proto/AudioFocusTypeEnum.proto b/aasdk_proto/AudioFocusTypeEnum.proto index 0e6677ae..73e78777 100644 --- a/aasdk_proto/AudioFocusTypeEnum.proto +++ b/aasdk_proto/AudioFocusTypeEnum.proto @@ -16,7 +16,7 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; package f1x.aasdk.proto.enums; diff --git a/aasdk_proto/AudioTypeEnum.proto b/aasdk_proto/AudioTypeEnum.proto index 44744f43..255bab91 100644 --- a/aasdk_proto/AudioTypeEnum.proto +++ b/aasdk_proto/AudioTypeEnum.proto @@ -16,7 +16,7 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; package f1x.aasdk.proto.enums; diff --git a/aasdk_proto/BindingRequestMessage.proto b/aasdk_proto/BindingRequestMessage.proto index b11c3d4f..a0b80fa0 100644 --- a/aasdk_proto/BindingRequestMessage.proto +++ b/aasdk_proto/BindingRequestMessage.proto @@ -16,7 +16,7 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; package f1x.aasdk.proto.messages; diff --git a/aasdk_proto/BluetoothChannelData.proto b/aasdk_proto/BluetoothChannelData.proto index 780ea44f..31fbdc4f 100644 --- a/aasdk_proto/BluetoothChannelData.proto +++ b/aasdk_proto/BluetoothChannelData.proto @@ -16,7 +16,7 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; import "BluetoothPairingMethodEnum.proto"; @@ -24,6 +24,6 @@ package f1x.aasdk.proto.data; message BluetoothChannel { - string adapter_address = 1; + required string adapter_address = 1; repeated enums.BluetoothPairingMethod.Enum supported_pairing_methods = 2; } diff --git a/aasdk_proto/BluetoothChannelMessageIdsEnum.proto b/aasdk_proto/BluetoothChannelMessageIdsEnum.proto index 30ac80ea..33ed3e68 100644 --- a/aasdk_proto/BluetoothChannelMessageIdsEnum.proto +++ b/aasdk_proto/BluetoothChannelMessageIdsEnum.proto @@ -16,7 +16,7 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; package f1x.aasdk.proto.ids; diff --git a/aasdk_proto/BluetoothPairingMethodEnum.proto b/aasdk_proto/BluetoothPairingMethodEnum.proto index 18591d65..a7b8b9ab 100644 --- a/aasdk_proto/BluetoothPairingMethodEnum.proto +++ b/aasdk_proto/BluetoothPairingMethodEnum.proto @@ -16,7 +16,7 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; package f1x.aasdk.proto.enums; diff --git a/aasdk_proto/BluetoothPairingRequestMessage.proto b/aasdk_proto/BluetoothPairingRequestMessage.proto index 91bbea7b..7daf8fef 100644 --- a/aasdk_proto/BluetoothPairingRequestMessage.proto +++ b/aasdk_proto/BluetoothPairingRequestMessage.proto @@ -16,7 +16,7 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; import "BluetoothPairingMethodEnum.proto"; @@ -24,6 +24,6 @@ package f1x.aasdk.proto.messages; message BluetoothPairingRequest { - string phone_address = 1; - enums.BluetoothPairingMethod.Enum pairing_method = 2; + required string phone_address = 1; + required enums.BluetoothPairingMethod.Enum pairing_method = 2; } diff --git a/aasdk_proto/BluetoothPairingResponseMessage.proto b/aasdk_proto/BluetoothPairingResponseMessage.proto index dd901690..6045a831 100644 --- a/aasdk_proto/BluetoothPairingResponseMessage.proto +++ b/aasdk_proto/BluetoothPairingResponseMessage.proto @@ -16,7 +16,7 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; import "BluetoothPairingStatusEnum.proto"; @@ -24,6 +24,6 @@ package f1x.aasdk.proto.messages; message BluetoothPairingResponse { - bool already_paired = 1; - enums.BluetoothPairingStatus.Enum status = 2; + required bool already_paired = 1; + required enums.BluetoothPairingStatus.Enum status = 2; } diff --git a/aasdk_proto/BluetoothPairingStatusEnum.proto b/aasdk_proto/BluetoothPairingStatusEnum.proto index 4d71a346..128de52a 100644 --- a/aasdk_proto/BluetoothPairingStatusEnum.proto +++ b/aasdk_proto/BluetoothPairingStatusEnum.proto @@ -16,7 +16,7 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; package f1x.aasdk.proto.enums; diff --git a/aasdk_proto/ButtonCodeEnum.proto b/aasdk_proto/ButtonCodeEnum.proto index 63e36bbb..7832e3e2 100644 --- a/aasdk_proto/ButtonCodeEnum.proto +++ b/aasdk_proto/ButtonCodeEnum.proto @@ -16,7 +16,7 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; package f1x.aasdk.proto.enums; diff --git a/aasdk_proto/ButtonEventData.proto b/aasdk_proto/ButtonEventData.proto index 88bc7182..6b9f0ddc 100644 --- a/aasdk_proto/ButtonEventData.proto +++ b/aasdk_proto/ButtonEventData.proto @@ -16,14 +16,14 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; package f1x.aasdk.proto.data; message ButtonEvent { - uint32 scan_code = 1; - bool is_pressed = 2; - uint32 meta = 3; - bool long_press = 4; + required uint32 scan_code = 1; + required bool is_pressed = 2; + optional uint32 meta = 3; + optional bool long_press = 4; } diff --git a/aasdk_proto/ButtonEventsData.proto b/aasdk_proto/ButtonEventsData.proto index ae26a129..0141c67f 100644 --- a/aasdk_proto/ButtonEventsData.proto +++ b/aasdk_proto/ButtonEventsData.proto @@ -16,7 +16,7 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; import "ButtonEventData.proto"; diff --git a/aasdk_proto/ChannelDescriptorData.proto b/aasdk_proto/ChannelDescriptorData.proto index c167c281..447ed58c 100644 --- a/aasdk_proto/ChannelDescriptorData.proto +++ b/aasdk_proto/ChannelDescriptorData.proto @@ -16,7 +16,9 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; + +option optimize_for=SPEED; import "SensorChannelData.proto"; import "AVChannelData.proto"; @@ -25,17 +27,21 @@ import "AVInputChannelData.proto"; import "BluetoothChannelData.proto"; import "NavigationChannelData.proto"; import "VendorExtensionChannelData.proto"; +import "MediaChannelData.proto"; +import "WifiChannelData.proto"; package f1x.aasdk.proto.data; message ChannelDescriptor { - uint32 channel_id = 1; - SensorChannel sensor_channel = 2; - AVChannel av_channel = 3; - InputChannel input_channel = 4; - AVInputChannel av_input_channel = 5; - BluetoothChannel bluetooth_channel = 6; - NavigationChannel navigation_channel = 8; - VendorExtensionChannel vendor_extension_channel = 12; + required uint32 channel_id = 1; + optional SensorChannel sensor_channel = 2; + optional AVChannel av_channel = 3; + optional InputChannel input_channel = 4; + optional AVInputChannel av_input_channel = 5; + optional BluetoothChannel bluetooth_channel = 6; + optional NavigationChannel navigation_channel = 8; + optional MediaInfoChannel media_infoChannel = 9; + optional VendorExtensionChannel vendor_extension_channel = 12; + optional WifiChannel wifi_channel=16; } diff --git a/aasdk_proto/ChannelOpenRequestMessage.proto b/aasdk_proto/ChannelOpenRequestMessage.proto index f7e8506a..18c42a3d 100644 --- a/aasdk_proto/ChannelOpenRequestMessage.proto +++ b/aasdk_proto/ChannelOpenRequestMessage.proto @@ -16,12 +16,12 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; package f1x.aasdk.proto.messages; message ChannelOpenRequest { - int32 priority = 1; - int32 channel_id = 2; + required int32 priority = 1; + required int32 channel_id = 2; } diff --git a/aasdk_proto/CompassData.proto b/aasdk_proto/CompassData.proto index 3e821dea..73af7fa4 100644 --- a/aasdk_proto/CompassData.proto +++ b/aasdk_proto/CompassData.proto @@ -16,13 +16,13 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; package f1x.aasdk.proto.data; message Compass { - int32 bearing =1; - int32 pitch = 2; - int32 roll = 3; + required int32 bearing =1; + required int32 pitch = 2; + required int32 roll = 3; } diff --git a/aasdk_proto/ControlMessageIdsEnum.proto b/aasdk_proto/ControlMessageIdsEnum.proto index 9d527cd0..76fe5385 100644 --- a/aasdk_proto/ControlMessageIdsEnum.proto +++ b/aasdk_proto/ControlMessageIdsEnum.proto @@ -16,7 +16,7 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; package f1x.aasdk.proto.ids; diff --git a/aasdk_proto/DiagnosticsData.proto b/aasdk_proto/DiagnosticsData.proto index cb7e51ce..5b7e3390 100644 --- a/aasdk_proto/DiagnosticsData.proto +++ b/aasdk_proto/DiagnosticsData.proto @@ -16,11 +16,11 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; package f1x.aasdk.proto.data; message Diagnostics { - bytes diagnostics = 1; + required bytes diagnostics = 1; } diff --git a/aasdk_proto/DoorData.proto b/aasdk_proto/DoorData.proto index e6f6eac5..3c138d5d 100644 --- a/aasdk_proto/DoorData.proto +++ b/aasdk_proto/DoorData.proto @@ -16,13 +16,13 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; package f1x.aasdk.proto.data; message Door { - bool hood_open = 1; - bool boot_open = 2; + required bool hood_open = 1; + required bool boot_open = 2; repeated bool door_open = 3; } diff --git a/aasdk_proto/DrivingStatusEnum.proto b/aasdk_proto/DrivingStatusEnum.proto index 5adf0371..4af8e3b0 100644 --- a/aasdk_proto/DrivingStatusEnum.proto +++ b/aasdk_proto/DrivingStatusEnum.proto @@ -16,7 +16,7 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; package f1x.aasdk.proto.enums; diff --git a/aasdk_proto/EnvironmentData.proto b/aasdk_proto/EnvironmentData.proto index b461121c..7c49d700 100644 --- a/aasdk_proto/EnvironmentData.proto +++ b/aasdk_proto/EnvironmentData.proto @@ -16,13 +16,13 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; package f1x.aasdk.proto.data; message Environment { - int32 temperature =1; - int32 pressure = 2; - int32 rain = 3; + required int32 temperature =1; + required int32 pressure = 2; + required int32 rain = 3; } diff --git a/aasdk_proto/FuelLevelData.proto b/aasdk_proto/FuelLevelData.proto index f0fe967b..0eb1269d 100644 --- a/aasdk_proto/FuelLevelData.proto +++ b/aasdk_proto/FuelLevelData.proto @@ -16,13 +16,13 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; package f1x.aasdk.proto.data; message FuelLevel { - int32 fuel_level = 1; - int32 range = 2; - bool low_fuel = 3; + required int32 fuel_level = 1; + required int32 range = 2; + required bool low_fuel = 3; } diff --git a/aasdk_proto/GPSLocationData.proto b/aasdk_proto/GPSLocationData.proto index 19607141..d1756d63 100644 --- a/aasdk_proto/GPSLocationData.proto +++ b/aasdk_proto/GPSLocationData.proto @@ -16,17 +16,17 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; package f1x.aasdk.proto.data; message GPSLocation { - uint64 timestamp = 1; - int32 latitude = 2; - int32 longitude = 3; - uint32 accuracy = 4; - int32 altitude = 5; - int32 speed = 6; - int32 bearing = 7; + required uint64 timestamp = 1; + required int32 latitude = 2; + required int32 longitude = 3; + required uint32 accuracy = 4; + optional int32 altitude = 5; + optional int32 speed = 6; + optional int32 bearing = 7; } diff --git a/aasdk_proto/GearData.proto b/aasdk_proto/GearData.proto index 4eb4ca9b..a98463c8 100644 --- a/aasdk_proto/GearData.proto +++ b/aasdk_proto/GearData.proto @@ -16,7 +16,7 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; import "GearEnum.proto"; @@ -24,5 +24,5 @@ package f1x.aasdk.proto.data; message Gear { - enums.Gear.Enum gear = 1; + required enums.Gear.Enum gear = 1; } diff --git a/aasdk_proto/GearEnum.proto b/aasdk_proto/GearEnum.proto index 3f723b6c..6e61149b 100644 --- a/aasdk_proto/GearEnum.proto +++ b/aasdk_proto/GearEnum.proto @@ -16,7 +16,7 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; package f1x.aasdk.proto.enums; diff --git a/aasdk_proto/GyroData.proto b/aasdk_proto/GyroData.proto index ec3835cd..eb82122d 100644 --- a/aasdk_proto/GyroData.proto +++ b/aasdk_proto/GyroData.proto @@ -16,13 +16,13 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; package f1x.aasdk.proto.data; message Gyro { - int32 rotation_speed_x = 1; - int32 rotation_speed_y = 2; - int32 rotation_speed_z = 3; + required int32 rotation_speed_x = 1; + required int32 rotation_speed_y = 2; + required int32 rotation_speed_z = 3; } diff --git a/aasdk_proto/HVACData.proto b/aasdk_proto/HVACData.proto index 6850a7cf..d8f73844 100644 --- a/aasdk_proto/HVACData.proto +++ b/aasdk_proto/HVACData.proto @@ -16,12 +16,12 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; package f1x.aasdk.proto.data; message HVAC { - int32 target_temperature = 1; - int32 current_temperature = 2; + required int32 target_temperature = 1; + required int32 current_temperature = 2; } diff --git a/aasdk_proto/HeadlightStatusEnum.proto b/aasdk_proto/HeadlightStatusEnum.proto index f930da30..7130293c 100644 --- a/aasdk_proto/HeadlightStatusEnum.proto +++ b/aasdk_proto/HeadlightStatusEnum.proto @@ -16,7 +16,7 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; package f1x.aasdk.proto.enums; diff --git a/aasdk_proto/IndicatorStatusEnum.proto b/aasdk_proto/IndicatorStatusEnum.proto index ab3e98de..14eb37ee 100644 --- a/aasdk_proto/IndicatorStatusEnum.proto +++ b/aasdk_proto/IndicatorStatusEnum.proto @@ -16,7 +16,7 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; package f1x.aasdk.proto.enums; diff --git a/aasdk_proto/InputChannelData.proto b/aasdk_proto/InputChannelData.proto index c1b3e596..e5888a58 100644 --- a/aasdk_proto/InputChannelData.proto +++ b/aasdk_proto/InputChannelData.proto @@ -16,7 +16,7 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; import "TouchConfigData.proto"; @@ -25,6 +25,6 @@ package f1x.aasdk.proto.data; message InputChannel { repeated uint32 supported_keycodes = 1; - TouchConfig touch_screen_config = 2; - TouchConfig touch_pad_config = 3; + optional TouchConfig touch_screen_config = 2; + optional TouchConfig touch_pad_config = 3; } diff --git a/aasdk_proto/InputChannelMessageIdsEnum.proto b/aasdk_proto/InputChannelMessageIdsEnum.proto index d4e3a1ec..c507f151 100644 --- a/aasdk_proto/InputChannelMessageIdsEnum.proto +++ b/aasdk_proto/InputChannelMessageIdsEnum.proto @@ -16,7 +16,7 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; package f1x.aasdk.proto.ids; diff --git a/aasdk_proto/InputEventIndicationMessage.proto b/aasdk_proto/InputEventIndicationMessage.proto index 2cf8cdc6..5bdbab0d 100644 --- a/aasdk_proto/InputEventIndicationMessage.proto +++ b/aasdk_proto/InputEventIndicationMessage.proto @@ -16,7 +16,7 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; import "TouchEventData.proto"; import "ButtonEventsData.proto"; @@ -27,10 +27,10 @@ package f1x.aasdk.proto.messages; message InputEventIndication { - uint64 timestamp = 1; - int32 disp_channel = 2; - data.TouchEvent touch_event = 3; - data.ButtonEvents button_event = 4; - data.AbsoluteInputEvents absolute_input_event = 5; - data.RelativeInputEvents relative_input_event = 6; + required uint64 timestamp = 1; + optional int32 disp_channel = 2; + optional data.TouchEvent touch_event = 3; + optional data.ButtonEvents button_event = 4; + optional data.AbsoluteInputEvents absolute_input_event = 5; + optional data.RelativeInputEvents relative_input_event = 6; } diff --git a/aasdk_proto/LightData.proto b/aasdk_proto/LightData.proto index 61d75ed5..def2e01f 100644 --- a/aasdk_proto/LightData.proto +++ b/aasdk_proto/LightData.proto @@ -16,7 +16,7 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; import "HeadlightStatusEnum.proto"; import "IndicatorStatusEnum.proto"; @@ -25,7 +25,7 @@ package f1x.aasdk.proto.data; message Light { - enums.HeadlightStatus.Enum headlight = 1; - enums.IndicatorStatus.Enum indicator = 2; - bool hazard_light_on = 3; + required enums.HeadlightStatus.Enum headlight = 1; + required enums.IndicatorStatus.Enum indicator = 2; + required bool hazard_light_on = 3; } diff --git a/aasdk_proto/MediaChannelData.proto b/aasdk_proto/MediaChannelData.proto new file mode 100644 index 00000000..a2b21b39 --- /dev/null +++ b/aasdk_proto/MediaChannelData.proto @@ -0,0 +1,26 @@ +/* +* This file is part of aasdk library project. +* Copyright (C) 2018 f1x.studio (Michal Szwaj) +* +* aasdk is free software: you can redistribute it and/or modify +* it under the terms of the GNU General Public License as published by +* the Free Software Foundation; either version 3 of the License, or +* (at your option) any later version. + +* aasdk is distributed in the hope that it will be useful, +* but WITHOUT ANY WARRANTY; without even the implied warranty of +* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +* GNU General Public License for more details. +* +* You should have received a copy of the GNU General Public License +* along with aasdk. If not, see . +*/ + +syntax="proto2"; + +package f1x.aasdk.proto.data; + +message MediaInfoChannel +{ + +} diff --git a/aasdk_proto/NavigationChannelData.proto b/aasdk_proto/NavigationChannelData.proto index 69a08da2..fb59f7d1 100644 --- a/aasdk_proto/NavigationChannelData.proto +++ b/aasdk_proto/NavigationChannelData.proto @@ -16,7 +16,7 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; import "NavigationImageOptionsData.proto"; @@ -24,7 +24,7 @@ package f1x.aasdk.proto.data; message NavigationChannel { - uint32 minimum_interval_ms = 1; - uint32 type = 2; - NavigationImageOptions image_options = 3; + required uint32 minimum_interval_ms = 1; + required uint32 type = 2; + required NavigationImageOptions image_options = 3; } diff --git a/aasdk_proto/NavigationFocusRequestMessage.proto b/aasdk_proto/NavigationFocusRequestMessage.proto index 6be2e124..f875af01 100644 --- a/aasdk_proto/NavigationFocusRequestMessage.proto +++ b/aasdk_proto/NavigationFocusRequestMessage.proto @@ -16,11 +16,11 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; package f1x.aasdk.proto.messages; message NavigationFocusRequest { - uint32 type = 1; + required uint32 type = 1; } diff --git a/aasdk_proto/NavigationFocusResponseMessage.proto b/aasdk_proto/NavigationFocusResponseMessage.proto index 3a810399..9a36eda8 100644 --- a/aasdk_proto/NavigationFocusResponseMessage.proto +++ b/aasdk_proto/NavigationFocusResponseMessage.proto @@ -16,11 +16,11 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; package f1x.aasdk.proto.messages; message NavigationFocusResponse { - uint32 type = 1; + required uint32 type = 1; } diff --git a/aasdk_proto/NavigationImageOptionsData.proto b/aasdk_proto/NavigationImageOptionsData.proto index 0ba4bbf7..eb902a6b 100644 --- a/aasdk_proto/NavigationImageOptionsData.proto +++ b/aasdk_proto/NavigationImageOptionsData.proto @@ -16,13 +16,13 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; package f1x.aasdk.proto.data; message NavigationImageOptions { - int32 width = 1; - int32 height = 2; - int32 colour_depth_bits = 3; + required int32 width = 1; + required int32 height = 2; + required int32 colour_depth_bits = 3; } diff --git a/aasdk_proto/OdometerData.proto b/aasdk_proto/OdometerData.proto index 9fd13ffd..286666d8 100644 --- a/aasdk_proto/OdometerData.proto +++ b/aasdk_proto/OdometerData.proto @@ -16,12 +16,12 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; package f1x.aasdk.proto.data; message Odometer { - int32 total_mileage = 1; - int32 trip_mileage = 2; + required int32 total_mileage = 1; + required int32 trip_mileage = 2; } diff --git a/aasdk_proto/ParkingBrakeData.proto b/aasdk_proto/ParkingBrakeData.proto index a3dfcb1c..f02f7ab5 100644 --- a/aasdk_proto/ParkingBrakeData.proto +++ b/aasdk_proto/ParkingBrakeData.proto @@ -16,11 +16,11 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; package f1x.aasdk.proto.data; message ParkingBrake { - bool parking_brake = 1; + required bool parking_brake = 1; } diff --git a/aasdk_proto/PassengerData.proto b/aasdk_proto/PassengerData.proto index a028c1f5..e53232b6 100644 --- a/aasdk_proto/PassengerData.proto +++ b/aasdk_proto/PassengerData.proto @@ -16,11 +16,11 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; package f1x.aasdk.proto.data; message Passenger { - bool passenger_present = 1; + required bool passenger_present = 1; } diff --git a/aasdk_proto/PingRequestMessage.proto b/aasdk_proto/PingRequestMessage.proto index d186fb63..5a9a0172 100644 --- a/aasdk_proto/PingRequestMessage.proto +++ b/aasdk_proto/PingRequestMessage.proto @@ -16,11 +16,11 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; package f1x.aasdk.proto.messages; message PingRequest { - int64 timestamp = 1; + required int64 timestamp = 1; } diff --git a/aasdk_proto/PingResponseMessage.proto b/aasdk_proto/PingResponseMessage.proto index ebb92292..c511c42a 100644 --- a/aasdk_proto/PingResponseMessage.proto +++ b/aasdk_proto/PingResponseMessage.proto @@ -16,11 +16,11 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; package f1x.aasdk.proto.messages; message PingResponse { - int64 timestamp = 1; + required int64 timestamp = 1; } diff --git a/aasdk_proto/RPMData.proto b/aasdk_proto/RPMData.proto index 3aacc40b..c8661806 100644 --- a/aasdk_proto/RPMData.proto +++ b/aasdk_proto/RPMData.proto @@ -16,11 +16,11 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; package f1x.aasdk.proto.data; message RPM { - int32 rpm = 1; + required int32 rpm = 1; } diff --git a/aasdk_proto/RelativeInputEventData.proto b/aasdk_proto/RelativeInputEventData.proto index c8efcd9b..92587b89 100644 --- a/aasdk_proto/RelativeInputEventData.proto +++ b/aasdk_proto/RelativeInputEventData.proto @@ -16,12 +16,12 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; package f1x.aasdk.proto.data; message RelativeInputEvent { - uint32 scan_code = 1; - int32 delta = 2; + required uint32 scan_code = 1; + required int32 delta = 2; } diff --git a/aasdk_proto/RelativeInputEventsData.proto b/aasdk_proto/RelativeInputEventsData.proto index b70fe5c4..298babb4 100644 --- a/aasdk_proto/RelativeInputEventsData.proto +++ b/aasdk_proto/RelativeInputEventsData.proto @@ -16,7 +16,7 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; import "RelativeInputEventData.proto"; diff --git a/aasdk_proto/SensorChannelData.proto b/aasdk_proto/SensorChannelData.proto index 976d0dc5..837738db 100644 --- a/aasdk_proto/SensorChannelData.proto +++ b/aasdk_proto/SensorChannelData.proto @@ -16,7 +16,7 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; import "SensorData.proto"; diff --git a/aasdk_proto/SensorChannelMessageIdsEnum.proto b/aasdk_proto/SensorChannelMessageIdsEnum.proto index f85d46e8..e68d10a8 100644 --- a/aasdk_proto/SensorChannelMessageIdsEnum.proto +++ b/aasdk_proto/SensorChannelMessageIdsEnum.proto @@ -16,7 +16,7 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; package f1x.aasdk.proto.ids; diff --git a/aasdk_proto/SensorData.proto b/aasdk_proto/SensorData.proto index b21e4851..f6ac56af 100644 --- a/aasdk_proto/SensorData.proto +++ b/aasdk_proto/SensorData.proto @@ -16,7 +16,7 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; import "SensorTypeEnum.proto"; @@ -24,5 +24,5 @@ package f1x.aasdk.proto.data; message Sensor { - enums.SensorType.Enum type = 1; + required enums.SensorType.Enum type = 1; } diff --git a/aasdk_proto/SensorEventIndicationMessage.proto b/aasdk_proto/SensorEventIndicationMessage.proto index 0b2cce88..00d46482 100644 --- a/aasdk_proto/SensorEventIndicationMessage.proto +++ b/aasdk_proto/SensorEventIndicationMessage.proto @@ -16,7 +16,7 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; import "GPSLocationData.proto"; import "CompassData.proto"; diff --git a/aasdk_proto/SensorStartRequestMessage.proto b/aasdk_proto/SensorStartRequestMessage.proto index f9abda1f..d4397cef 100644 --- a/aasdk_proto/SensorStartRequestMessage.proto +++ b/aasdk_proto/SensorStartRequestMessage.proto @@ -16,7 +16,7 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; import "SensorTypeEnum.proto"; @@ -24,6 +24,6 @@ package f1x.aasdk.proto.messages; message SensorStartRequestMessage { - enums.SensorType.Enum sensor_type = 1; - int64 refresh_interval = 2; + required enums.SensorType.Enum sensor_type = 1; + required int64 refresh_interval = 2; } diff --git a/aasdk_proto/SensorTypeEnum.proto b/aasdk_proto/SensorTypeEnum.proto index 9001bdf1..85a5e6e7 100644 --- a/aasdk_proto/SensorTypeEnum.proto +++ b/aasdk_proto/SensorTypeEnum.proto @@ -16,7 +16,7 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; package f1x.aasdk.proto.enums; diff --git a/aasdk_proto/ServiceDiscoveryRequestMessage.proto b/aasdk_proto/ServiceDiscoveryRequestMessage.proto index ee1e313c..05e61b9c 100644 --- a/aasdk_proto/ServiceDiscoveryRequestMessage.proto +++ b/aasdk_proto/ServiceDiscoveryRequestMessage.proto @@ -16,12 +16,12 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; package f1x.aasdk.proto.messages; message ServiceDiscoveryRequest { - string device_name = 4; - string device_brand = 5; + required string device_name = 4; + required string device_brand = 5; } diff --git a/aasdk_proto/ServiceDiscoveryResponseMessage.proto b/aasdk_proto/ServiceDiscoveryResponseMessage.proto index ea11d3ff..59e69443 100644 --- a/aasdk_proto/ServiceDiscoveryResponseMessage.proto +++ b/aasdk_proto/ServiceDiscoveryResponseMessage.proto @@ -16,7 +16,7 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; import "ChannelDescriptorData.proto"; @@ -25,15 +25,15 @@ package f1x.aasdk.proto.messages; message ServiceDiscoveryResponse { repeated data.ChannelDescriptor channels = 1; - string head_unit_name = 2; - string car_model = 3; - string car_year = 4; - string car_serial = 5; - bool left_hand_drive_vehicle = 6; - string headunit_manufacturer = 7; - string headunit_model = 8; - string sw_build = 9; - string sw_version = 10; - bool can_play_native_media_during_vr = 11; - bool hide_clock = 12; + required string head_unit_name = 2; + required string car_model = 3; + required string car_year = 4; + required string car_serial = 5; + required bool left_hand_drive_vehicle = 6; + required string headunit_manufacturer = 7; + required string headunit_model = 8; + required string sw_build = 9; + required string sw_version = 10; + required bool can_play_native_media_during_vr = 11; + optional bool hide_clock = 12; } diff --git a/aasdk_proto/ShutdownReasonEnum.proto b/aasdk_proto/ShutdownReasonEnum.proto index 451174bd..b7124fd5 100644 --- a/aasdk_proto/ShutdownReasonEnum.proto +++ b/aasdk_proto/ShutdownReasonEnum.proto @@ -16,7 +16,7 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; package f1x.aasdk.proto.enums; diff --git a/aasdk_proto/ShutdownRequestMessage.proto b/aasdk_proto/ShutdownRequestMessage.proto index ba7696f9..b6ee0cc0 100644 --- a/aasdk_proto/ShutdownRequestMessage.proto +++ b/aasdk_proto/ShutdownRequestMessage.proto @@ -16,7 +16,7 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; import "ShutdownReasonEnum.proto"; @@ -24,5 +24,5 @@ package f1x.aasdk.proto.messages; message ShutdownRequest { - enums.ShutdownReason.Enum reason = 1; + required enums.ShutdownReason.Enum reason = 1; } diff --git a/aasdk_proto/ShutdownResponseMessage.proto b/aasdk_proto/ShutdownResponseMessage.proto index 66c7325a..15275863 100644 --- a/aasdk_proto/ShutdownResponseMessage.proto +++ b/aasdk_proto/ShutdownResponseMessage.proto @@ -16,7 +16,7 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; package f1x.aasdk.proto.messages; diff --git a/aasdk_proto/SpeedData.proto b/aasdk_proto/SpeedData.proto index 304a01b4..007ee057 100644 --- a/aasdk_proto/SpeedData.proto +++ b/aasdk_proto/SpeedData.proto @@ -16,13 +16,13 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; package f1x.aasdk.proto.data; message Speed { - int32 speed = 1; - bool cruise_engaged = 2; - bool cruise_set_speed = 3; + required int32 speed = 1; + optional bool cruise_engaged = 2; + optional bool cruise_set_speed = 3; } diff --git a/aasdk_proto/StatusEnum.proto b/aasdk_proto/StatusEnum.proto index 9bf67abf..a19271a2 100644 --- a/aasdk_proto/StatusEnum.proto +++ b/aasdk_proto/StatusEnum.proto @@ -1,3 +1,4 @@ + /* * This file is part of aasdk library project. * Copyright (C) 2018 f1x.studio (Michal Szwaj) @@ -16,7 +17,7 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; package f1x.aasdk.proto.enums; diff --git a/aasdk_proto/SteeringWheelData.proto b/aasdk_proto/SteeringWheelData.proto index a3a13767..f5572f32 100644 --- a/aasdk_proto/SteeringWheelData.proto +++ b/aasdk_proto/SteeringWheelData.proto @@ -16,12 +16,12 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; package f1x.aasdk.proto.data; message SteeringWheel { - int32 steering_angel = 1; - int32 wheel_speed = 2; + required int32 steering_angle = 1; + required int32 wheel_speed = 2; } diff --git a/aasdk_proto/TouchActionEnum.proto b/aasdk_proto/TouchActionEnum.proto index 9a86f7f3..7d889e15 100644 --- a/aasdk_proto/TouchActionEnum.proto +++ b/aasdk_proto/TouchActionEnum.proto @@ -1,31 +1,33 @@ /* -* This file is part of aasdk library project. -* Copyright (C) 2018 f1x.studio (Michal Szwaj) -* -* aasdk is free software: you can redistribute it and/or modify -* it under the terms of the GNU General Public License as published by -* the Free Software Foundation; either version 3 of the License, or -* (at your option) any later version. - -* aasdk is distributed in the hope that it will be useful, -* but WITHOUT ANY WARRANTY; without even the implied warranty of -* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -* GNU General Public License for more details. -* -* You should have received a copy of the GNU General Public License -* along with aasdk. If not, see . -*/ - -syntax="proto3"; - -package f1x.aasdk.proto.enums; - -message TouchAction -{ - enum Enum - { - PRESS = 0; - RELEASE = 1; - DRAG = 2; - } -} +* This file is part of aasdk library project. +* Copyright (C) 2018 f1x.studio (Michal Szwaj) +* +* aasdk is free software: you can redistribute it and/or modify +* it under the terms of the GNU General Public License as published by +* the Free Software Foundation; either version 3 of the License, or +* (at your option) any later version. + +* aasdk is distributed in the hope that it will be useful, +* but WITHOUT ANY WARRANTY; without even the implied warranty of +* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +* GNU General Public License for more details. +* +* You should have received a copy of the GNU General Public License +* along with aasdk. If not, see . +*/ + +syntax="proto2"; + +package f1x.aasdk.proto.enums; + +message TouchAction +{ + enum Enum + { + PRESS = 0; + RELEASE = 1; + DRAG = 2; + POINTER_DOWN = 5; + POINTER_UP = 6; + } +} diff --git a/aasdk_proto/TouchConfigData.proto b/aasdk_proto/TouchConfigData.proto index 988f52e3..d0019410 100644 --- a/aasdk_proto/TouchConfigData.proto +++ b/aasdk_proto/TouchConfigData.proto @@ -16,12 +16,12 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; package f1x.aasdk.proto.data; message TouchConfig { - uint32 width = 1; - uint32 height = 2; + required uint32 width = 1; + required uint32 height = 2; } diff --git a/aasdk_proto/TouchEventData.proto b/aasdk_proto/TouchEventData.proto index dc3bfcd1..bfab6ba2 100644 --- a/aasdk_proto/TouchEventData.proto +++ b/aasdk_proto/TouchEventData.proto @@ -16,7 +16,7 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; import "TouchLocationData.proto"; import "TouchActionEnum.proto"; @@ -26,6 +26,6 @@ package f1x.aasdk.proto.data; message TouchEvent { repeated data.TouchLocation touch_location = 1; - uint32 action_index = 2; - enums.TouchAction.Enum touch_action = 3; + optional uint32 action_index = 2; + required enums.TouchAction.Enum touch_action = 3; } diff --git a/aasdk_proto/TouchLocationData.proto b/aasdk_proto/TouchLocationData.proto index 101ca393..c7c4c391 100644 --- a/aasdk_proto/TouchLocationData.proto +++ b/aasdk_proto/TouchLocationData.proto @@ -16,13 +16,13 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; package f1x.aasdk.proto.data; message TouchLocation { - uint32 x = 1; - uint32 y = 2; - uint32 pointer_id = 3; + required uint32 x = 1; + required uint32 y = 2; + required uint32 pointer_id = 3; } diff --git a/aasdk_proto/VendorExtensionChannelData.proto b/aasdk_proto/VendorExtensionChannelData.proto index 82a84851..db464820 100644 --- a/aasdk_proto/VendorExtensionChannelData.proto +++ b/aasdk_proto/VendorExtensionChannelData.proto @@ -16,13 +16,13 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; package f1x.aasdk.proto.data; message VendorExtensionChannel { - string name = 1; + required string name = 1; repeated string package_white_list = 2; - bytes data = 3; + optional bytes data = 3; } diff --git a/aasdk_proto/VersionResponseStatusEnum.proto b/aasdk_proto/VersionResponseStatusEnum.proto index efec2fa4..5ee8a438 100644 --- a/aasdk_proto/VersionResponseStatusEnum.proto +++ b/aasdk_proto/VersionResponseStatusEnum.proto @@ -16,7 +16,7 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; package f1x.aasdk.proto.enums; diff --git a/aasdk_proto/VideoConfigData.proto b/aasdk_proto/VideoConfigData.proto index 98fc3fba..ceb2bf21 100644 --- a/aasdk_proto/VideoConfigData.proto +++ b/aasdk_proto/VideoConfigData.proto @@ -16,7 +16,7 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; import "VideoResolutionEnum.proto"; import "VideoFPSEnum.proto"; @@ -25,10 +25,10 @@ package f1x.aasdk.proto.data; message VideoConfig { - enums.VideoResolution.Enum video_resolution = 1; - enums.VideoFPS.Enum video_fps = 2; - uint32 margin_width = 3; - uint32 margin_height = 4; - uint32 dpi = 5; - uint32 additional_depth = 6; + required enums.VideoResolution.Enum video_resolution = 1; + required enums.VideoFPS.Enum video_fps = 2; + required uint32 margin_width = 3; + required uint32 margin_height = 4; + required uint32 dpi = 5; + optional uint32 additional_depth = 6; } diff --git a/aasdk_proto/VideoFPSEnum.proto b/aasdk_proto/VideoFPSEnum.proto index 734bdf67..44b0d1d7 100644 --- a/aasdk_proto/VideoFPSEnum.proto +++ b/aasdk_proto/VideoFPSEnum.proto @@ -16,7 +16,7 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; package f1x.aasdk.proto.enums; diff --git a/aasdk_proto/VideoFocusIndicationMessage.proto b/aasdk_proto/VideoFocusIndicationMessage.proto index 91a8ee4c..d6f6c29b 100644 --- a/aasdk_proto/VideoFocusIndicationMessage.proto +++ b/aasdk_proto/VideoFocusIndicationMessage.proto @@ -16,7 +16,7 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; import "VideoFocusModeEnum.proto"; @@ -24,6 +24,6 @@ package f1x.aasdk.proto.messages; message VideoFocusIndication { - enums.VideoFocusMode.Enum focus_mode = 1; - bool unrequested = 2; + required enums.VideoFocusMode.Enum focus_mode = 1; + required bool unrequested = 2; } diff --git a/aasdk_proto/VideoFocusModeEnum.proto b/aasdk_proto/VideoFocusModeEnum.proto index e0f930ae..15c3682b 100644 --- a/aasdk_proto/VideoFocusModeEnum.proto +++ b/aasdk_proto/VideoFocusModeEnum.proto @@ -16,7 +16,7 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; package f1x.aasdk.proto.enums; diff --git a/aasdk_proto/VideoFocusReasonEnum.proto b/aasdk_proto/VideoFocusReasonEnum.proto index 0d20ae5a..1352729a 100644 --- a/aasdk_proto/VideoFocusReasonEnum.proto +++ b/aasdk_proto/VideoFocusReasonEnum.proto @@ -16,7 +16,7 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; package f1x.aasdk.proto.enums; diff --git a/aasdk_proto/VideoFocusRequestMessage.proto b/aasdk_proto/VideoFocusRequestMessage.proto index 37c3b8b8..a1c6b1ec 100644 --- a/aasdk_proto/VideoFocusRequestMessage.proto +++ b/aasdk_proto/VideoFocusRequestMessage.proto @@ -16,7 +16,7 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; import "VideoFocusModeEnum.proto"; import "VideoFocusReasonEnum.proto"; @@ -25,7 +25,7 @@ package f1x.aasdk.proto.messages; message VideoFocusRequest { - int32 disp_index = 1; - enums.VideoFocusMode.Enum focus_mode = 2; - enums.VideoFocusReason.Enum focus_reason = 3; + optional int32 disp_index = 1; + required enums.VideoFocusMode.Enum focus_mode = 2; + required enums.VideoFocusReason.Enum focus_reason = 3; } diff --git a/aasdk_proto/VideoResolutionEnum.proto b/aasdk_proto/VideoResolutionEnum.proto index 6e7b9d07..fde8f267 100644 --- a/aasdk_proto/VideoResolutionEnum.proto +++ b/aasdk_proto/VideoResolutionEnum.proto @@ -16,7 +16,7 @@ * along with aasdk. If not, see . */ -syntax="proto3"; +syntax="proto2"; package f1x.aasdk.proto.enums; diff --git a/aasdk_proto/WifiChannelData.proto b/aasdk_proto/WifiChannelData.proto new file mode 100644 index 00000000..b55b7303 --- /dev/null +++ b/aasdk_proto/WifiChannelData.proto @@ -0,0 +1,30 @@ +/* +* This file is part of aasdk library project. +* Copyright (C) 2018 f1x.studio (Michal Szwaj) +* +* aasdk is free software: you can redistribute it and/or modify +* it under the terms of the GNU General Public License as published by +* the Free Software Foundation; either version 3 of the License, or +* (at your option) any later version. + +* aasdk is distributed in the hope that it will be useful, +* but WITHOUT ANY WARRANTY; without even the implied warranty of +* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +* GNU General Public License for more details. +* +* You should have received a copy of the GNU General Public License +* along with aasdk. If not, see . +*/ + +syntax="proto2"; + +option optimize_for=SPEED; + + + +package f1x.aasdk.proto.data; + +message WifiChannel +{ + required string ssid = 1; +} diff --git a/include/f1x/aasdk/Channel/AV/IVideoServiceChannelEventHandler.hpp b/include/f1x/aasdk/Channel/AV/IVideoServiceChannelEventHandler.hpp index 72820ad3..45994632 100644 --- a/include/f1x/aasdk/Channel/AV/IVideoServiceChannelEventHandler.hpp +++ b/include/f1x/aasdk/Channel/AV/IVideoServiceChannelEventHandler.hpp @@ -22,6 +22,7 @@ #include #include #include +#include #include #include #include @@ -46,6 +47,7 @@ class IVideoServiceChannelEventHandler virtual void onChannelOpenRequest(const proto::messages::ChannelOpenRequest& request) = 0; virtual void onAVChannelSetupRequest(const proto::messages::AVChannelSetupRequest& request) = 0; virtual void onAVChannelStartIndication(const proto::messages::AVChannelStartIndication& indication) = 0; + virtual void onAVChannelStopIndication(const proto::messages::AVChannelStopIndication& indication) = 0; virtual void onAVMediaWithTimestampIndication(messenger::Timestamp::ValueType, const common::DataConstBuffer& buffer) = 0; virtual void onAVMediaIndication(const common::DataConstBuffer& buffer) = 0; virtual void onVideoFocusRequest(const proto::messages::VideoFocusRequest& request) = 0; diff --git a/include/f1x/aasdk/Channel/AV/VideoServiceChannel.hpp b/include/f1x/aasdk/Channel/AV/VideoServiceChannel.hpp index d1078a1a..7afdbbbf 100644 --- a/include/f1x/aasdk/Channel/AV/VideoServiceChannel.hpp +++ b/include/f1x/aasdk/Channel/AV/VideoServiceChannel.hpp @@ -47,6 +47,7 @@ class VideoServiceChannel: public IVideoServiceChannel, public ServiceChannel, p void messageHandler(messenger::Message::Pointer message, IVideoServiceChannelEventHandler::Pointer eventHandler); void handleAVChannelSetupRequest(const common::DataConstBuffer& payload, IVideoServiceChannelEventHandler::Pointer eventHandler); void handleStartIndication(const common::DataConstBuffer& payload, IVideoServiceChannelEventHandler::Pointer eventHandler); + void handleStopIndication(const common::DataConstBuffer& payload, IVideoServiceChannelEventHandler::Pointer eventHandler); void handleChannelOpenRequest(const common::DataConstBuffer& payload, IVideoServiceChannelEventHandler::Pointer eventHandler); void handleVideoFocusRequest(const common::DataConstBuffer& payload, IVideoServiceChannelEventHandler::Pointer eventHandler); void handleAVMediaWithTimestampIndication(const common::DataConstBuffer& payload, IVideoServiceChannelEventHandler::Pointer eventHandler); diff --git a/include/f1x/aasdk/Messenger/MessageInStream.hpp b/include/f1x/aasdk/Messenger/MessageInStream.hpp index 262c3f54..c8e24b07 100644 --- a/include/f1x/aasdk/Messenger/MessageInStream.hpp +++ b/include/f1x/aasdk/Messenger/MessageInStream.hpp @@ -23,7 +23,7 @@ #include #include #include - +#include namespace f1x { namespace aasdk @@ -51,6 +51,8 @@ class MessageInStream: public IMessageInStream, public std::enable_shared_from_t FrameType recentFrameType_; ReceivePromise::Pointer promise_; Message::Pointer message_; + + std::map channel_assembly_buffers; }; } diff --git a/src/Channel/AV/VideoServiceChannel.cpp b/src/Channel/AV/VideoServiceChannel.cpp index ea9997d1..3a64fe17 100644 --- a/src/Channel/AV/VideoServiceChannel.cpp +++ b/src/Channel/AV/VideoServiceChannel.cpp @@ -101,6 +101,9 @@ void VideoServiceChannel::messageHandler(messenger::Message::Pointer message, IV case proto::ids::AVChannelMessage::START_INDICATION: this->handleStartIndication(payload, std::move(eventHandler)); break; + case proto::ids::AVChannelMessage::STOP_INDICATION: + this->handleStopIndication(payload, std::move(eventHandler)); + break; case proto::ids::AVChannelMessage::AV_MEDIA_WITH_TIMESTAMP_INDICATION: this->handleAVMediaWithTimestampIndication(payload, std::move(eventHandler)); break; @@ -146,6 +149,19 @@ void VideoServiceChannel::handleStartIndication(const common::DataConstBuffer& p } } +void VideoServiceChannel::handleStopIndication(const common::DataConstBuffer& payload, IVideoServiceChannelEventHandler::Pointer eventHandler) +{ + proto::messages::AVChannelStopIndication indication; + if(indication.ParseFromArray(payload.cdata, payload.size)) + { + eventHandler->onAVChannelStopIndication(indication); + } + else + { + eventHandler->onChannelError(error::Error(error::ErrorCode::PARSE_PAYLOAD)); + } +} + void VideoServiceChannel::handleChannelOpenRequest(const common::DataConstBuffer& payload, IVideoServiceChannelEventHandler::Pointer eventHandler) { proto::messages::ChannelOpenRequest request; diff --git a/src/Messenger/MessageInStream.cpp b/src/Messenger/MessageInStream.cpp index 72a666fb..81084daa 100644 --- a/src/Messenger/MessageInStream.cpp +++ b/src/Messenger/MessageInStream.cpp @@ -18,7 +18,7 @@ #include #include - +#include namespace f1x { namespace aasdk @@ -63,19 +63,28 @@ void MessageInStream::startReceive(ReceivePromise::Pointer promise) void MessageInStream::receiveFrameHeaderHandler(const common::DataConstBuffer& buffer) { FrameHeader frameHeader(buffer); - - if(message_ == nullptr) + if(message_ != nullptr && message_->getChannelId() != frameHeader.getChannelId()) { - message_ = std::make_shared(frameHeader.getChannelId(), frameHeader.getEncryptionType(), frameHeader.getMessageType()); + // we have interleaved channels, stop working on the old one and store it for later; Switch to the new one + channel_assembly_buffers[message_->getChannelId()] = message_; + message_ = nullptr; + // message_.reset(); + // promise_->reject(error::Error(error::ErrorCode::MESSENGER_INTERTWINED_CHANNELS)); + // promise_.reset(); + // return; } - else if(message_->getChannelId() != frameHeader.getChannelId()) - { - message_.reset(); - promise_->reject(error::Error(error::ErrorCode::MESSENGER_INTERTWINED_CHANNELS)); - promise_.reset(); - return; + auto prevBuffer = channel_assembly_buffers.find(frameHeader.getChannelId()); + if(prevBuffer != channel_assembly_buffers.end()){ // is there previous data in our map? + if(frameHeader.getType()!=FrameType::FIRST) //only use the data if we're not on a new frame, otherwise disregard + message_ = prevBuffer->second; + else{ + message_ = std::make_shared(frameHeader.getChannelId(), frameHeader.getEncryptionType(), frameHeader.getMessageType()); + } + channel_assembly_buffers.erase(prevBuffer); // get rid of the previously stored data because it's now our working data. + } + else if(message_ == nullptr){ + message_ = std::make_shared(frameHeader.getChannelId(), frameHeader.getEncryptionType(), frameHeader.getMessageType()); } - recentFrameType_ = frameHeader.getType(); const size_t frameSize = FrameSize::getSizeOf(frameHeader.getType() == FrameType::FIRST ? FrameSizeType::EXTENDED : FrameSizeType::SHORT); diff --git a/src/TCP/TCPWrapper.cpp b/src/TCP/TCPWrapper.cpp index 70048cfe..139c27ba 100644 --- a/src/TCP/TCPWrapper.cpp +++ b/src/TCP/TCPWrapper.cpp @@ -51,6 +51,7 @@ void TCPWrapper::asyncConnect(boost::asio::ip::tcp::socket& socket, const std::s boost::system::error_code TCPWrapper::connect(boost::asio::ip::tcp::socket& socket, const std::string& hostname, uint16_t port) { boost::system::error_code ec; + socket.set_option(boost::asio::ip::tcp::no_delay(true), ec); socket.connect(boost::asio::ip::tcp::endpoint(boost::asio::ip::address::from_string(hostname), port), ec); return ec; } diff --git a/src/USB/USBEndpoint.cpp b/src/USB/USBEndpoint.cpp index 128d78c2..541dfef8 100644 --- a/src/USB/USBEndpoint.cpp +++ b/src/USB/USBEndpoint.cpp @@ -108,7 +108,7 @@ void USBEndpoint::transfer(libusb_transfer *transfer, Promise::Pointer promise) // guarantee that endpoint will live until all transfers are finished if(self_ == nullptr) { - self_ = self; + self_ = std::move(self); } transfers_.insert(std::make_pair(transfer, std::move(promise)));