summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--SmartDeviceLink-iOS.podspec7
-rw-r--r--SmartDeviceLink-iOS.xcodeproj/project.pbxproj242
-rw-r--r--SmartDeviceLink.podspec7
-rw-r--r--SmartDeviceLink/SDLAppHMIType.h4
-rw-r--r--SmartDeviceLink/SDLAppHMIType.m1
-rw-r--r--SmartDeviceLink/SDLButtonName.h109
-rw-r--r--SmartDeviceLink/SDLButtonName.m18
-rw-r--r--SmartDeviceLink/SDLButtonPress.h35
-rw-r--r--SmartDeviceLink/SDLButtonPress.m46
-rw-r--r--SmartDeviceLink/SDLButtonPressResponse.h13
-rw-r--r--SmartDeviceLink/SDLButtonPressResponse.m20
-rw-r--r--SmartDeviceLink/SDLClimateControlCapabilities.h113
-rw-r--r--SmartDeviceLink/SDLClimateControlCapabilities.m121
-rw-r--r--SmartDeviceLink/SDLClimateControlData.h88
-rw-r--r--SmartDeviceLink/SDLClimateControlData.m96
-rw-r--r--SmartDeviceLink/SDLDefrostZone.h33
-rw-r--r--SmartDeviceLink/SDLDefrostZone.m10
-rw-r--r--SmartDeviceLink/SDLFunctionID.m8
-rw-r--r--SmartDeviceLink/SDLGetInteriorVehicleData.h29
-rw-r--r--SmartDeviceLink/SDLGetInteriorVehicleData.m44
-rw-r--r--SmartDeviceLink/SDLGetInteriorVehicleDataResponse.h26
-rw-r--r--SmartDeviceLink/SDLGetInteriorVehicleDataResponse.m40
-rw-r--r--SmartDeviceLink/SDLModuleData.h27
-rw-r--r--SmartDeviceLink/SDLModuleData.m40
-rw-r--r--SmartDeviceLink/SDLModuleType.h18
-rw-r--r--SmartDeviceLink/SDLModuleType.m8
-rw-r--r--SmartDeviceLink/SDLNames.h66
-rw-r--r--SmartDeviceLink/SDLNames.m68
-rw-r--r--SmartDeviceLink/SDLNotificationConstants.h12
-rw-r--r--SmartDeviceLink/SDLNotificationConstants.m7
-rw-r--r--SmartDeviceLink/SDLNotificationDispatcher.m20
-rw-r--r--SmartDeviceLink/SDLOnInteriorVehicleData.h16
-rw-r--r--SmartDeviceLink/SDLOnInteriorVehicleData.m31
-rw-r--r--SmartDeviceLink/SDLProxyListener.h8
-rw-r--r--SmartDeviceLink/SDLRadioBand.h26
-rw-r--r--SmartDeviceLink/SDLRadioBand.m9
-rw-r--r--SmartDeviceLink/SDLRadioControlCapabilities.h96
-rw-r--r--SmartDeviceLink/SDLRadioControlCapabilities.m103
-rw-r--r--SmartDeviceLink/SDLRadioControlData.h77
-rw-r--r--SmartDeviceLink/SDLRadioControlData.m96
-rw-r--r--SmartDeviceLink/SDLRadioState.h32
-rw-r--r--SmartDeviceLink/SDLRadioState.m10
-rw-r--r--SmartDeviceLink/SDLRemoteControlCapabilities.h39
-rw-r--r--SmartDeviceLink/SDLRemoteControlCapabilities.m44
-rw-r--r--SmartDeviceLink/SDLResult.h10
-rw-r--r--SmartDeviceLink/SDLResult.m3
-rw-r--r--SmartDeviceLink/SDLSetInteriorVehicleData.h20
-rw-r--r--SmartDeviceLink/SDLSetInteriorVehicleData.m30
-rw-r--r--SmartDeviceLink/SDLSetInteriorVehicleDataResponse.h20
-rw-r--r--SmartDeviceLink/SDLSetInteriorVehicleDataResponse.m30
-rw-r--r--SmartDeviceLink/SDLSystemCapability.h6
-rw-r--r--SmartDeviceLink/SDLSystemCapability.m28
-rw-r--r--SmartDeviceLink/SDLSystemCapabilityType.h12
-rw-r--r--SmartDeviceLink/SDLSystemCapabilityType.m2
-rw-r--r--SmartDeviceLink/SDLTemperature.h27
-rw-r--r--SmartDeviceLink/SDLTemperature.m31
-rw-r--r--SmartDeviceLink/SDLTemperatureUnit.h19
-rw-r--r--SmartDeviceLink/SDLTemperatureUnit.m8
-rw-r--r--SmartDeviceLink/SDLVentilationMode.h28
-rw-r--r--SmartDeviceLink/SDLVentilationMode.m11
-rw-r--r--SmartDeviceLink/SmartDeviceLink.h21
-rw-r--r--SmartDeviceLinkTests/DevAPISpecs/SDLNotificationDispatcherSpec.m3
-rw-r--r--SmartDeviceLinkTests/RPCSpecs/EnumSpecs/SDLAppHMITypeSpec.m1
-rw-r--r--SmartDeviceLinkTests/RPCSpecs/EnumSpecs/SDLButtonNameSpec.m18
-rw-r--r--SmartDeviceLinkTests/RPCSpecs/EnumSpecs/SDLRadioBandSpec.m22
-rw-r--r--SmartDeviceLinkTests/RPCSpecs/EnumSpecs/SDLRadioStateSpec.m24
-rw-r--r--SmartDeviceLinkTests/RPCSpecs/EnumSpecs/SDLResultSpec.m3
-rw-r--r--SmartDeviceLinkTests/RPCSpecs/EnumSpecs/SDLSystemCapabilityTypeSpec.m2
-rw-r--r--SmartDeviceLinkTests/RPCSpecs/EnumSpecs/SDLTemperatureUnitSpec.m22
-rw-r--r--SmartDeviceLinkTests/RPCSpecs/EnumSpecs/SDLVentilationModeSpec.m24
-rw-r--r--SmartDeviceLinkTests/RPCSpecs/NotificationSpecs/SDLOnInteriorVehicleDataSpec.m44
-rw-r--r--SmartDeviceLinkTests/RPCSpecs/RequestSpecs/SDLButtonPressSpec.m56
-rw-r--r--SmartDeviceLinkTests/RPCSpecs/RequestSpecs/SDLGetInteriorVehicleDataSpec.m47
-rw-r--r--SmartDeviceLinkTests/RPCSpecs/RequestSpecs/SDLSetInteriorVehicleDataSpec.m45
-rw-r--r--SmartDeviceLinkTests/RPCSpecs/ResponseSpecs/SDLButtonPressResponseSpec.m16
-rw-r--r--SmartDeviceLinkTests/RPCSpecs/ResponseSpecs/SDLGetInteriorVehicleDataResponseSpec.m51
-rw-r--r--SmartDeviceLinkTests/RPCSpecs/ResponseSpecs/SDLSetInteriorVehicleDataResponseSpec.m46
-rw-r--r--SmartDeviceLinkTests/RPCSpecs/StructSpecs/SDLClimateControlCapabilitiesSpec.m98
-rw-r--r--SmartDeviceLinkTests/RPCSpecs/StructSpecs/SDLClimateControlDataSpec.m93
-rw-r--r--SmartDeviceLinkTests/RPCSpecs/StructSpecs/SDLModuleDataSpec.m55
-rw-r--r--SmartDeviceLinkTests/RPCSpecs/StructSpecs/SDLRadioControlCapabilitiesSpec.m86
-rw-r--r--SmartDeviceLinkTests/RPCSpecs/StructSpecs/SDLRadioControlDataSpec.m89
-rw-r--r--SmartDeviceLinkTests/RPCSpecs/StructSpecs/SDLRdsDataSpec.m77
-rw-r--r--SmartDeviceLinkTests/RPCSpecs/StructSpecs/SDLRemoteControlCapabilitiesSpec.m58
-rw-r--r--SmartDeviceLinkTests/RPCSpecs/StructSpecs/SDLSystemCapabilitySpec.m80
-rw-r--r--SmartDeviceLinkTests/RPCSpecs/StructSpecs/SDLTemperatureSpec.m47
86 files changed, 3283 insertions, 93 deletions
diff --git a/SmartDeviceLink-iOS.podspec b/SmartDeviceLink-iOS.podspec
index 326f9e33b..4cec70585 100644
--- a/SmartDeviceLink-iOS.podspec
+++ b/SmartDeviceLink-iOS.podspec
@@ -47,6 +47,7 @@ ss.public_header_files = [
'SmartDeviceLink/SDLAddSubMenu.h',
'SmartDeviceLink/SDLAlert.h',
'SmartDeviceLink/SDLAlertManeuver.h',
+'SmartDeviceLink/SDLButtonPress.h',
'SmartDeviceLink/SDLChangeRegistration.h',
'SmartDeviceLink/SDLCreateInteractionChoiceSet.h',
'SmartDeviceLink/SDLDeleteCommand.h',
@@ -58,6 +59,7 @@ ss.public_header_files = [
'SmartDeviceLink/SDLEncodedSyncPData.h',
'SmartDeviceLink/SDLEndAudioPassThru.h',
'SmartDeviceLink/SDLGetDTCs.h',
+'SmartDeviceLink/SDLGetInteriorVehicleData.h',
'SmartDeviceLink/SDLGetSystemCapability.h',
'SmartDeviceLink/SDLGetVehicleData.h',
'SmartDeviceLink/SDLGetWaypoints.h',
@@ -74,6 +76,7 @@ ss.public_header_files = [
'SmartDeviceLink/SDLSetAppIcon.h',
'SmartDeviceLink/SDLSetDisplayLayout.h',
'SmartDeviceLink/SDLSetGlobalProperties.h',
+'SmartDeviceLink/SDLSetInteriorVehicleData.h',
'SmartDeviceLink/SDLSetMediaClockTimer.h',
'SmartDeviceLink/SDLShow.h',
'SmartDeviceLink/SDLShowConstantTBT.h',
@@ -92,6 +95,7 @@ ss.public_header_files = [
'SmartDeviceLink/SDLAddSubMenuResponse.h',
'SmartDeviceLink/SDLAlertManeuverResponse.h',
'SmartDeviceLink/SDLAlertResponse.h',
+'SmartDeviceLink/SDLButtonPressResponse.h',
'SmartDeviceLink/SDLChangeRegistrationResponse.h',
'SmartDeviceLink/SDLCreateInteractionChoiceSetResponse.h',
'SmartDeviceLink/SDLDeleteCommandResponse.h',
@@ -104,6 +108,7 @@ ss.public_header_files = [
'SmartDeviceLink/SDLEndAudioPassThruResponse.h',
'SmartDeviceLink/SDLGenericResponse.h',
'SmartDeviceLink/SDLGetDTCsResponse.h',
+'SmartDeviceLink/SDLGetInteriorVehicleDataResponse.h',
'SmartDeviceLink/SDLGetSystemCapabilityResponse.h',
'SmartDeviceLink/SDLGetVehicleDataResponse.h',
'SmartDeviceLink/SDLGetWaypointsResponse.h',
@@ -119,6 +124,7 @@ ss.public_header_files = [
'SmartDeviceLink/SDLSetAppIconResponse.h',
'SmartDeviceLink/SDLSetDisplayLayoutResponse.h',
'SmartDeviceLink/SDLSetGlobalPropertiesResponse.h',
+'SmartDeviceLink/SDLSetInteriorVehicleDataResponse.h',
'SmartDeviceLink/SDLSetMediaClockTimerResponse.h',
'SmartDeviceLink/SDLShowConstantTBTResponse.h',
'SmartDeviceLink/SDLShowResponse.h',
@@ -142,6 +148,7 @@ ss.public_header_files = [
'SmartDeviceLink/SDLOnEncodedSyncPData.h',
'SmartDeviceLink/SDLOnHMIStatus.h',
'SmartDeviceLink/SDLOnHashChange.h',
+'SmartDeviceLink/SDLOnInteriorVehicleData',
'SmartDeviceLink/SDLOnKeyboardInput.h',
'SmartDeviceLink/SDLOnLanguageChange.h',
'SmartDeviceLink/SDLOnLockScreenStatus.h',
diff --git a/SmartDeviceLink-iOS.xcodeproj/project.pbxproj b/SmartDeviceLink-iOS.xcodeproj/project.pbxproj
index 4cf5baba1..b61e8b4b1 100644
--- a/SmartDeviceLink-iOS.xcodeproj/project.pbxproj
+++ b/SmartDeviceLink-iOS.xcodeproj/project.pbxproj
@@ -231,6 +231,65 @@
1680B11C1A9CD7AD00DBD79E /* SDLProtocolMessageAssemblerSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = 1680B1101A9CD7AD00DBD79E /* SDLProtocolMessageAssemblerSpec.m */; };
1680B11D1A9CD7AD00DBD79E /* SDLProtocolMessageDisassemblerSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = 1680B1111A9CD7AD00DBD79E /* SDLProtocolMessageDisassemblerSpec.m */; };
1680B11E1A9CD7AD00DBD79E /* SDLProtocolReceivedMessageRouterSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = 1680B1121A9CD7AD00DBD79E /* SDLProtocolReceivedMessageRouterSpec.m */; };
+ 1A189EBF1F41C99F00508957 /* SDLButtonPress.h in Headers */ = {isa = PBXBuildFile; fileRef = 1A189EBD1F41C99F00508957 /* SDLButtonPress.h */; };
+ 1A189EC01F41C99F00508957 /* SDLButtonPress.m in Sources */ = {isa = PBXBuildFile; fileRef = 1A189EBE1F41C99F00508957 /* SDLButtonPress.m */; };
+ 1A189EC31F41CB9800508957 /* SDLButtonPressResponse.h in Headers */ = {isa = PBXBuildFile; fileRef = 1A189EC11F41CB9800508957 /* SDLButtonPressResponse.h */; };
+ 1A189EC41F41CB9800508957 /* SDLButtonPressResponse.m in Sources */ = {isa = PBXBuildFile; fileRef = 1A189EC21F41CB9800508957 /* SDLButtonPressResponse.m */; };
+ 1A189EC71F41CDD200508957 /* SDLClimateControlCapabilities.h in Headers */ = {isa = PBXBuildFile; fileRef = 1A189EC51F41CDD200508957 /* SDLClimateControlCapabilities.h */; };
+ 1A189EC81F41CDD200508957 /* SDLClimateControlCapabilities.m in Sources */ = {isa = PBXBuildFile; fileRef = 1A189EC61F41CDD200508957 /* SDLClimateControlCapabilities.m */; };
+ 1A189ECB1F41CEF300508957 /* SDLClimateControlData.h in Headers */ = {isa = PBXBuildFile; fileRef = 1A189EC91F41CEF300508957 /* SDLClimateControlData.h */; };
+ 1A189ECC1F41CEF300508957 /* SDLClimateControlData.m in Sources */ = {isa = PBXBuildFile; fileRef = 1A189ECA1F41CEF300508957 /* SDLClimateControlData.m */; };
+ 1A189ECF1F41D10000508957 /* SDLDefrostZone.h in Headers */ = {isa = PBXBuildFile; fileRef = 1A189ECD1F41D10000508957 /* SDLDefrostZone.h */; };
+ 1A189ED01F41D10000508957 /* SDLDefrostZone.m in Sources */ = {isa = PBXBuildFile; fileRef = 1A189ECE1F41D10000508957 /* SDLDefrostZone.m */; };
+ 1A189ED31F41D3F000508957 /* SDLGetInteriorVehicleData.h in Headers */ = {isa = PBXBuildFile; fileRef = 1A189ED11F41D3F000508957 /* SDLGetInteriorVehicleData.h */; };
+ 1A189ED41F41D3F000508957 /* SDLGetInteriorVehicleData.m in Sources */ = {isa = PBXBuildFile; fileRef = 1A189ED21F41D3F000508957 /* SDLGetInteriorVehicleData.m */; };
+ 1A189ED71F41D8CA00508957 /* SDLGetInteriorVehicleDataResponse.h in Headers */ = {isa = PBXBuildFile; fileRef = 1A189ED51F41D8CA00508957 /* SDLGetInteriorVehicleDataResponse.h */; };
+ 1A189ED81F41D8CA00508957 /* SDLGetInteriorVehicleDataResponse.m in Sources */ = {isa = PBXBuildFile; fileRef = 1A189ED61F41D8CA00508957 /* SDLGetInteriorVehicleDataResponse.m */; };
+ 1A189EDB1F41D92400508957 /* SDLModuleData.h in Headers */ = {isa = PBXBuildFile; fileRef = 1A189ED91F41D92400508957 /* SDLModuleData.h */; };
+ 1A189EDC1F41D92400508957 /* SDLModuleData.m in Sources */ = {isa = PBXBuildFile; fileRef = 1A189EDA1F41D92400508957 /* SDLModuleData.m */; };
+ 1A189EE21F41F39800508957 /* SDLModuleType.h in Headers */ = {isa = PBXBuildFile; fileRef = 1A189EE01F41F39800508957 /* SDLModuleType.h */; };
+ 1A189EE31F41F39800508957 /* SDLModuleType.m in Sources */ = {isa = PBXBuildFile; fileRef = 1A189EE11F41F39800508957 /* SDLModuleType.m */; };
+ 1A189EE61F41F43A00508957 /* SDLOnInteriorVehicleData.h in Headers */ = {isa = PBXBuildFile; fileRef = 1A189EE41F41F43A00508957 /* SDLOnInteriorVehicleData.h */; };
+ 1A189EE71F41F43A00508957 /* SDLOnInteriorVehicleData.m in Sources */ = {isa = PBXBuildFile; fileRef = 1A189EE51F41F43A00508957 /* SDLOnInteriorVehicleData.m */; };
+ 1A189EEA1F41F83800508957 /* SDLRadioBand.h in Headers */ = {isa = PBXBuildFile; fileRef = 1A189EE81F41F83800508957 /* SDLRadioBand.h */; };
+ 1A189EEB1F41F83800508957 /* SDLRadioBand.m in Sources */ = {isa = PBXBuildFile; fileRef = 1A189EE91F41F83800508957 /* SDLRadioBand.m */; };
+ 1A189EEE1F41F87500508957 /* SDLRadioControlCapabilities.h in Headers */ = {isa = PBXBuildFile; fileRef = 1A189EEC1F41F87500508957 /* SDLRadioControlCapabilities.h */; };
+ 1A189EEF1F41F87500508957 /* SDLRadioControlCapabilities.m in Sources */ = {isa = PBXBuildFile; fileRef = 1A189EED1F41F87500508957 /* SDLRadioControlCapabilities.m */; };
+ 1A189EF21F41F8AA00508957 /* SDLRadioControlData.h in Headers */ = {isa = PBXBuildFile; fileRef = 1A189EF01F41F8AA00508957 /* SDLRadioControlData.h */; };
+ 1A189EF31F41F8AA00508957 /* SDLRadioControlData.m in Sources */ = {isa = PBXBuildFile; fileRef = 1A189EF11F41F8AA00508957 /* SDLRadioControlData.m */; };
+ 1A189EF61F41F8E600508957 /* SDLRadioState.h in Headers */ = {isa = PBXBuildFile; fileRef = 1A189EF41F41F8E600508957 /* SDLRadioState.h */; };
+ 1A189EF71F41F8E600508957 /* SDLRadioState.m in Sources */ = {isa = PBXBuildFile; fileRef = 1A189EF51F41F8E600508957 /* SDLRadioState.m */; };
+ 1A189EFA1F42041900508957 /* SDLRemoteControlCapabilities.h in Headers */ = {isa = PBXBuildFile; fileRef = 1A189EF81F42041900508957 /* SDLRemoteControlCapabilities.h */; };
+ 1A189EFB1F42041900508957 /* SDLRemoteControlCapabilities.m in Sources */ = {isa = PBXBuildFile; fileRef = 1A189EF91F42041900508957 /* SDLRemoteControlCapabilities.m */; };
+ 1A189EFE1F4204B100508957 /* SDLSetInteriorVehicleData.h in Headers */ = {isa = PBXBuildFile; fileRef = 1A189EFC1F4204B100508957 /* SDLSetInteriorVehicleData.h */; };
+ 1A189EFF1F4204B100508957 /* SDLSetInteriorVehicleData.m in Sources */ = {isa = PBXBuildFile; fileRef = 1A189EFD1F4204B100508957 /* SDLSetInteriorVehicleData.m */; };
+ 1A189F021F42050600508957 /* SDLSetInteriorVehicleDataResponse.h in Headers */ = {isa = PBXBuildFile; fileRef = 1A189F001F42050600508957 /* SDLSetInteriorVehicleDataResponse.h */; };
+ 1A189F031F42050600508957 /* SDLSetInteriorVehicleDataResponse.m in Sources */ = {isa = PBXBuildFile; fileRef = 1A189F011F42050600508957 /* SDLSetInteriorVehicleDataResponse.m */; };
+ 1A189F061F42057000508957 /* SDLTemperature.h in Headers */ = {isa = PBXBuildFile; fileRef = 1A189F041F42057000508957 /* SDLTemperature.h */; };
+ 1A189F071F42057000508957 /* SDLTemperature.m in Sources */ = {isa = PBXBuildFile; fileRef = 1A189F051F42057000508957 /* SDLTemperature.m */; };
+ 1A189F0A1F4205A300508957 /* SDLTemperatureUnit.h in Headers */ = {isa = PBXBuildFile; fileRef = 1A189F081F4205A300508957 /* SDLTemperatureUnit.h */; };
+ 1A189F0B1F4205A300508957 /* SDLTemperatureUnit.m in Sources */ = {isa = PBXBuildFile; fileRef = 1A189F091F4205A300508957 /* SDLTemperatureUnit.m */; };
+ 1A189F0E1F4205D700508957 /* SDLVentilationMode.h in Headers */ = {isa = PBXBuildFile; fileRef = 1A189F0C1F4205D700508957 /* SDLVentilationMode.h */; };
+ 1A189F0F1F4205D700508957 /* SDLVentilationMode.m in Sources */ = {isa = PBXBuildFile; fileRef = 1A189F0D1F4205D700508957 /* SDLVentilationMode.m */; };
+ 1A189F121F4206C400508957 /* SDLRadioBandSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = 1A189F111F4206C400508957 /* SDLRadioBandSpec.m */; };
+ 1A189F141F42088700508957 /* SDLRadioStateSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = 1A189F131F42088700508957 /* SDLRadioStateSpec.m */; };
+ 1A189F161F4208C800508957 /* SDLTemperatureUnitSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = 1A189F151F4208C800508957 /* SDLTemperatureUnitSpec.m */; };
+ 1A189F181F4208E100508957 /* SDLVentilationModeSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = 1A189F171F4208E100508957 /* SDLVentilationModeSpec.m */; };
+ 1A189F1A1F42092600508957 /* SDLClimateControlCapabilitiesSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = 1A189F191F42092600508957 /* SDLClimateControlCapabilitiesSpec.m */; };
+ 1A189F1C1F42093600508957 /* SDLClimateControlDataSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = 1A189F1B1F42093600508957 /* SDLClimateControlDataSpec.m */; };
+ 1A189F1E1F420A7C00508957 /* SDLModuleDataSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = 1A189F1D1F420A7C00508957 /* SDLModuleDataSpec.m */; };
+ 1A189F201F420AB000508957 /* SDLRadioControlCapabilitiesSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = 1A189F1F1F420AB000508957 /* SDLRadioControlCapabilitiesSpec.m */; };
+ 1A189F221F420ACC00508957 /* SDLRadioControlDataSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = 1A189F211F420ACC00508957 /* SDLRadioControlDataSpec.m */; };
+ 1A189F241F420AE800508957 /* SDLRdsDataSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = 1A189F231F420AE800508957 /* SDLRdsDataSpec.m */; };
+ 1A189F261F420B0100508957 /* SDLRemoteControlCapabilitiesSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = 1A189F251F420B0100508957 /* SDLRemoteControlCapabilitiesSpec.m */; };
+ 1A189F281F420B7500508957 /* SDLTemperatureSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = 1A189F271F420B7500508957 /* SDLTemperatureSpec.m */; };
+ 1A189F2A1F420BA700508957 /* SDLOnInteriorVehicleDataSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = 1A189F291F420BA700508957 /* SDLOnInteriorVehicleDataSpec.m */; };
+ 1A189F2C1F420BC200508957 /* SDLButtonPressSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = 1A189F2B1F420BC200508957 /* SDLButtonPressSpec.m */; };
+ 1A189F2E1F420BDE00508957 /* SDLGetInteriorVehicleDataSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = 1A189F2D1F420BDE00508957 /* SDLGetInteriorVehicleDataSpec.m */; };
+ 1A189F301F420C0100508957 /* SDLSetInteriorVehicleDataSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = 1A189F2F1F420C0100508957 /* SDLSetInteriorVehicleDataSpec.m */; };
+ 1A189F321F420C2900508957 /* SDLButtonPressResponseSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = 1A189F311F420C2900508957 /* SDLButtonPressResponseSpec.m */; };
+ 1A189F341F420C4300508957 /* SDLGetInteriorVehicleDataResponseSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = 1A189F331F420C4300508957 /* SDLGetInteriorVehicleDataResponseSpec.m */; };
+ 1A189F361F420C6100508957 /* SDLSetInteriorVehicleDataResponseSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = 1A189F351F420C6100508957 /* SDLSetInteriorVehicleDataResponseSpec.m */; };
332A914F1CED9CC60043824C /* SDLAppInfo.m in Sources */ = {isa = PBXBuildFile; fileRef = 332A913D1CED87F80043824C /* SDLAppInfo.m */; };
332A91501CED9CF10043824C /* SDLAppInfo.h in Headers */ = {isa = PBXBuildFile; fileRef = 332A913C1CED87F80043824C /* SDLAppInfo.h */; settings = {ATTRIBUTES = (Public, ); }; };
5D00AC671F140F0A004000D9 /* SDLSystemCapabilityType.h in Headers */ = {isa = PBXBuildFile; fileRef = 5D00AC651F140F0A004000D9 /* SDLSystemCapabilityType.h */; settings = {ATTRIBUTES = (Public, ); }; };
@@ -1273,6 +1332,65 @@
1680B1101A9CD7AD00DBD79E /* SDLProtocolMessageAssemblerSpec.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SDLProtocolMessageAssemblerSpec.m; sourceTree = "<group>"; };
1680B1111A9CD7AD00DBD79E /* SDLProtocolMessageDisassemblerSpec.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SDLProtocolMessageDisassemblerSpec.m; sourceTree = "<group>"; };
1680B1121A9CD7AD00DBD79E /* SDLProtocolReceivedMessageRouterSpec.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SDLProtocolReceivedMessageRouterSpec.m; sourceTree = "<group>"; };
+ 1A189EBD1F41C99F00508957 /* SDLButtonPress.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDLButtonPress.h; sourceTree = "<group>"; };
+ 1A189EBE1F41C99F00508957 /* SDLButtonPress.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SDLButtonPress.m; sourceTree = "<group>"; };
+ 1A189EC11F41CB9800508957 /* SDLButtonPressResponse.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDLButtonPressResponse.h; sourceTree = "<group>"; };
+ 1A189EC21F41CB9800508957 /* SDLButtonPressResponse.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SDLButtonPressResponse.m; sourceTree = "<group>"; };
+ 1A189EC51F41CDD200508957 /* SDLClimateControlCapabilities.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDLClimateControlCapabilities.h; sourceTree = "<group>"; };
+ 1A189EC61F41CDD200508957 /* SDLClimateControlCapabilities.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SDLClimateControlCapabilities.m; sourceTree = "<group>"; };
+ 1A189EC91F41CEF300508957 /* SDLClimateControlData.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDLClimateControlData.h; sourceTree = "<group>"; };
+ 1A189ECA1F41CEF300508957 /* SDLClimateControlData.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SDLClimateControlData.m; sourceTree = "<group>"; };
+ 1A189ECD1F41D10000508957 /* SDLDefrostZone.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDLDefrostZone.h; sourceTree = "<group>"; };
+ 1A189ECE1F41D10000508957 /* SDLDefrostZone.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SDLDefrostZone.m; sourceTree = "<group>"; };
+ 1A189ED11F41D3F000508957 /* SDLGetInteriorVehicleData.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDLGetInteriorVehicleData.h; sourceTree = "<group>"; };
+ 1A189ED21F41D3F000508957 /* SDLGetInteriorVehicleData.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SDLGetInteriorVehicleData.m; sourceTree = "<group>"; };
+ 1A189ED51F41D8CA00508957 /* SDLGetInteriorVehicleDataResponse.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDLGetInteriorVehicleDataResponse.h; sourceTree = "<group>"; };
+ 1A189ED61F41D8CA00508957 /* SDLGetInteriorVehicleDataResponse.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SDLGetInteriorVehicleDataResponse.m; sourceTree = "<group>"; };
+ 1A189ED91F41D92400508957 /* SDLModuleData.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDLModuleData.h; sourceTree = "<group>"; };
+ 1A189EDA1F41D92400508957 /* SDLModuleData.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SDLModuleData.m; sourceTree = "<group>"; };
+ 1A189EE01F41F39800508957 /* SDLModuleType.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDLModuleType.h; sourceTree = "<group>"; };
+ 1A189EE11F41F39800508957 /* SDLModuleType.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SDLModuleType.m; sourceTree = "<group>"; };
+ 1A189EE41F41F43A00508957 /* SDLOnInteriorVehicleData.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDLOnInteriorVehicleData.h; sourceTree = "<group>"; };
+ 1A189EE51F41F43A00508957 /* SDLOnInteriorVehicleData.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SDLOnInteriorVehicleData.m; sourceTree = "<group>"; };
+ 1A189EE81F41F83800508957 /* SDLRadioBand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDLRadioBand.h; sourceTree = "<group>"; };
+ 1A189EE91F41F83800508957 /* SDLRadioBand.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SDLRadioBand.m; sourceTree = "<group>"; };
+ 1A189EEC1F41F87500508957 /* SDLRadioControlCapabilities.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDLRadioControlCapabilities.h; sourceTree = "<group>"; };
+ 1A189EED1F41F87500508957 /* SDLRadioControlCapabilities.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SDLRadioControlCapabilities.m; sourceTree = "<group>"; };
+ 1A189EF01F41F8AA00508957 /* SDLRadioControlData.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDLRadioControlData.h; sourceTree = "<group>"; };
+ 1A189EF11F41F8AA00508957 /* SDLRadioControlData.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SDLRadioControlData.m; sourceTree = "<group>"; };
+ 1A189EF41F41F8E600508957 /* SDLRadioState.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDLRadioState.h; sourceTree = "<group>"; };
+ 1A189EF51F41F8E600508957 /* SDLRadioState.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SDLRadioState.m; sourceTree = "<group>"; };
+ 1A189EF81F42041900508957 /* SDLRemoteControlCapabilities.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDLRemoteControlCapabilities.h; sourceTree = "<group>"; };
+ 1A189EF91F42041900508957 /* SDLRemoteControlCapabilities.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SDLRemoteControlCapabilities.m; sourceTree = "<group>"; };
+ 1A189EFC1F4204B100508957 /* SDLSetInteriorVehicleData.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDLSetInteriorVehicleData.h; sourceTree = "<group>"; };
+ 1A189EFD1F4204B100508957 /* SDLSetInteriorVehicleData.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SDLSetInteriorVehicleData.m; sourceTree = "<group>"; };
+ 1A189F001F42050600508957 /* SDLSetInteriorVehicleDataResponse.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDLSetInteriorVehicleDataResponse.h; sourceTree = "<group>"; };
+ 1A189F011F42050600508957 /* SDLSetInteriorVehicleDataResponse.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SDLSetInteriorVehicleDataResponse.m; sourceTree = "<group>"; };
+ 1A189F041F42057000508957 /* SDLTemperature.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDLTemperature.h; sourceTree = "<group>"; };
+ 1A189F051F42057000508957 /* SDLTemperature.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SDLTemperature.m; sourceTree = "<group>"; };
+ 1A189F081F4205A300508957 /* SDLTemperatureUnit.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDLTemperatureUnit.h; sourceTree = "<group>"; };
+ 1A189F091F4205A300508957 /* SDLTemperatureUnit.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SDLTemperatureUnit.m; sourceTree = "<group>"; };
+ 1A189F0C1F4205D700508957 /* SDLVentilationMode.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDLVentilationMode.h; sourceTree = "<group>"; };
+ 1A189F0D1F4205D700508957 /* SDLVentilationMode.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SDLVentilationMode.m; sourceTree = "<group>"; };
+ 1A189F111F4206C400508957 /* SDLRadioBandSpec.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SDLRadioBandSpec.m; sourceTree = "<group>"; };
+ 1A189F131F42088700508957 /* SDLRadioStateSpec.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SDLRadioStateSpec.m; sourceTree = "<group>"; };
+ 1A189F151F4208C800508957 /* SDLTemperatureUnitSpec.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SDLTemperatureUnitSpec.m; sourceTree = "<group>"; };
+ 1A189F171F4208E100508957 /* SDLVentilationModeSpec.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SDLVentilationModeSpec.m; sourceTree = "<group>"; };
+ 1A189F191F42092600508957 /* SDLClimateControlCapabilitiesSpec.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SDLClimateControlCapabilitiesSpec.m; sourceTree = "<group>"; };
+ 1A189F1B1F42093600508957 /* SDLClimateControlDataSpec.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SDLClimateControlDataSpec.m; sourceTree = "<group>"; };
+ 1A189F1D1F420A7C00508957 /* SDLModuleDataSpec.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SDLModuleDataSpec.m; sourceTree = "<group>"; };
+ 1A189F1F1F420AB000508957 /* SDLRadioControlCapabilitiesSpec.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SDLRadioControlCapabilitiesSpec.m; sourceTree = "<group>"; };
+ 1A189F211F420ACC00508957 /* SDLRadioControlDataSpec.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SDLRadioControlDataSpec.m; sourceTree = "<group>"; };
+ 1A189F231F420AE800508957 /* SDLRdsDataSpec.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SDLRdsDataSpec.m; sourceTree = "<group>"; };
+ 1A189F251F420B0100508957 /* SDLRemoteControlCapabilitiesSpec.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SDLRemoteControlCapabilitiesSpec.m; sourceTree = "<group>"; };
+ 1A189F271F420B7500508957 /* SDLTemperatureSpec.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SDLTemperatureSpec.m; sourceTree = "<group>"; };
+ 1A189F291F420BA700508957 /* SDLOnInteriorVehicleDataSpec.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SDLOnInteriorVehicleDataSpec.m; sourceTree = "<group>"; };
+ 1A189F2B1F420BC200508957 /* SDLButtonPressSpec.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SDLButtonPressSpec.m; sourceTree = "<group>"; };
+ 1A189F2D1F420BDE00508957 /* SDLGetInteriorVehicleDataSpec.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SDLGetInteriorVehicleDataSpec.m; sourceTree = "<group>"; };
+ 1A189F2F1F420C0100508957 /* SDLSetInteriorVehicleDataSpec.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SDLSetInteriorVehicleDataSpec.m; sourceTree = "<group>"; };
+ 1A189F311F420C2900508957 /* SDLButtonPressResponseSpec.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SDLButtonPressResponseSpec.m; sourceTree = "<group>"; };
+ 1A189F331F420C4300508957 /* SDLGetInteriorVehicleDataResponseSpec.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SDLGetInteriorVehicleDataResponseSpec.m; sourceTree = "<group>"; };
+ 1A189F351F420C6100508957 /* SDLSetInteriorVehicleDataResponseSpec.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SDLSetInteriorVehicleDataResponseSpec.m; sourceTree = "<group>"; };
332A913C1CED87F80043824C /* SDLAppInfo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDLAppInfo.h; sourceTree = "<group>"; };
332A913D1CED87F80043824C /* SDLAppInfo.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SDLAppInfo.m; sourceTree = "<group>"; };
5D00AC651F140F0A004000D9 /* SDLSystemCapabilityType.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDLSystemCapabilityType.h; sourceTree = "<group>"; };
@@ -2158,6 +2276,8 @@
162E820B1A9BDE8A00906325 /* SDLPrerecordedSpeechSpec.m */,
162E820C1A9BDE8A00906325 /* SDLPrimaryAudioSource.m */,
162E820D1A9BDE8A00906325 /* SDLPRNDLSpec.m */,
+ 1A189F111F4206C400508957 /* SDLRadioBandSpec.m */,
+ 1A189F131F42088700508957 /* SDLRadioStateSpec.m */,
162E820E1A9BDE8A00906325 /* SDLRequestTypeSpec.m */,
162E820F1A9BDE8A00906325 /* SDLResultSpec.m */,
162E82111A9BDE8A00906325 /* SDLSamplingRateSpec.m */,
@@ -2167,6 +2287,7 @@
5D0A9F901F15550400CC80DD /* SDLSystemCapabilityTypeSpec.m */,
162E82151A9BDE8A00906325 /* SDLSystemContextSpec.m */,
162E82161A9BDE8A00906325 /* SDLTBTStateSpec.m */,
+ 1A189F151F4208C800508957 /* SDLTemperatureUnitSpec.m */,
162E82171A9BDE8A00906325 /* SDLTextAlignmentSpec.m */,
162E82181A9BDE8A00906325 /* SDLTextFieldNameSpec.m */,
162E82191A9BDE8A00906325 /* SDLTimerModeSpec.m */,
@@ -2183,6 +2304,7 @@
162E82241A9BDE8A00906325 /* SDLWarningLightStatusSpec.m */,
DA9F7E9D1DCC05B900ACAE48 /* SDLWaypointTypeSpec.m */,
162E82251A9BDE8A00906325 /* SDLWiperStatusSpec.m */,
+ 1A189F171F4208E100508957 /* SDLVentilationModeSpec.m */,
8B7B31A81F2FB8BC00BDC38D /* SDLVideoStreamingProtocolSpec.m */,
8B7B31AA1F2FB93500BDC38D /* SDLVideoStreamingCodecSpec.m */,
);
@@ -2201,6 +2323,7 @@
162E822F1A9BDE8A00906325 /* SDLOnEncodedSyncPDataSpec.m */,
162E82301A9BDE8A00906325 /* SDLOnHashChangeSpec.m */,
162E82311A9BDE8A00906325 /* SDLOnHMIStatusSpec.m */,
+ 1A189F291F420BA700508957 /* SDLOnInteriorVehicleDataSpec.m */,
162E82321A9BDE8A00906325 /* SDLOnKeyboardInputSpec.m */,
162E82331A9BDE8A00906325 /* SDLOnLanguageChangeSpec.m */,
162E82341A9BDE8A00906325 /* SDLOnLockScreenStatusSpec.m */,
@@ -2230,6 +2353,7 @@
162E823F1A9BDE8A00906325 /* SDLAddSubMenuSpec.m */,
162E82401A9BDE8A00906325 /* SDLAlertManeuverSpec.m */,
162E82411A9BDE8A00906325 /* SDLAlertSpec.m */,
+ 1A189F2B1F420BC200508957 /* SDLButtonPressSpec.m */,
162E82421A9BDE8A00906325 /* SDLChangeRegistrationSpec.m */,
162E82431A9BDE8A00906325 /* SDLCreateInteractionChoiceSetSpec.m */,
162E82441A9BDE8A00906325 /* SDLDeleteCommandSpec.m */,
@@ -2241,6 +2365,7 @@
162E82491A9BDE8A00906325 /* SDLEncodedSyncPDataSpec.m */,
162E824A1A9BDE8A00906325 /* SDLEndAudioPassThruSpec.m */,
162E824B1A9BDE8A00906325 /* SDLGetDTCsSpec.m */,
+ 1A189F2D1F420BDE00508957 /* SDLGetInteriorVehicleDataSpec.m */,
5D0A9F991F15636800CC80DD /* SDLGetSystemCapabilitiesSpec.m */,
162E824C1A9BDE8A00906325 /* SDLGetVehicleDataSpec.m */,
DA9F7EA11DCC05E100ACAE48 /* SDLGetWaypointsSpec.m */,
@@ -2256,6 +2381,7 @@
162E82551A9BDE8A00906325 /* SDLSetAppIconSpec.m */,
162E82561A9BDE8A00906325 /* SDLSetDisplayLayoutSpec.m */,
162E82571A9BDE8A00906325 /* SDLSetGlobalPropertiesSpec.m */,
+ 1A189F2F1F420C0100508957 /* SDLSetInteriorVehicleDataSpec.m */,
162E82581A9BDE8A00906325 /* SDLSetMediaClockTimerSpec.m */,
162E82591A9BDE8A00906325 /* SDLShowConstantTBTSpec.m */,
162E825A1A9BDE8A00906325 /* SDLShowSpec.m */,
@@ -2282,6 +2408,7 @@
162E82671A9BDE8A00906325 /* SDLAddSubMenuResponseSpec.m */,
162E82681A9BDE8A00906325 /* SDLAlertManeuverResponseSpec.m */,
162E82691A9BDE8A00906325 /* SDLAlertResponseSpec.m */,
+ 1A189F311F420C2900508957 /* SDLButtonPressResponseSpec.m */,
162E826A1A9BDE8A00906325 /* SDLChangeRegistrationResponseSpec.m */,
162E826B1A9BDE8A00906325 /* SDLCreateInteractionChoiceSetResponseSpec.m */,
162E826C1A9BDE8A00906325 /* SDLDeleteCommandResponseSpec.m */,
@@ -2294,6 +2421,7 @@
162E82721A9BDE8A00906325 /* SDLEndAudioPassThruResponseSpec.m */,
162E82731A9BDE8A00906325 /* SDLGenericResponseSpec.m */,
162E82741A9BDE8A00906325 /* SDLGetDTCsResponseSpec.m */,
+ 1A189F331F420C4300508957 /* SDLGetInteriorVehicleDataResponseSpec.m */,
5D0A9F9B1F1565EB00CC80DD /* SDLGetSystemCapabilitiesResponseSpec.m */,
162E82751A9BDE8A00906325 /* SDLGetVehicleDataResponseSpec.m */,
DA9F7EA71DCC060B00ACAE48 /* SDLGetWaypointsResponseSpec.m */,
@@ -2309,6 +2437,7 @@
162E827E1A9BDE8A00906325 /* SDLSetAppIconResponseSpec.m */,
162E827F1A9BDE8A00906325 /* SDLSetDisplayLayoutResponseSpec.m */,
162E82801A9BDE8A00906325 /* SDLSetGlobalPropertiesResponseSpec.m */,
+ 1A189F351F420C6100508957 /* SDLSetInteriorVehicleDataResponseSpec.m */,
162E82811A9BDE8A00906325 /* SDLSetMediaClockTimerResponseSpec.m */,
162E82821A9BDE8A00906325 /* SDLShowConstantTBTResponseSpec.m */,
162E82831A9BDE8A00906325 /* SDLShowResponseSpec.m */,
@@ -2338,7 +2467,9 @@
162E82921A9BDE8A00906325 /* SDLBodyInformationSpec.m */,
162E82931A9BDE8A00906325 /* SDLButtonCapabilitiesSpec.m */,
162E82941A9BDE8A00906325 /* SDLChoiceSpec.m */,
+ 1A189F191F42092600508957 /* SDLClimateControlCapabilitiesSpec.m */,
162E82951A9BDE8A00906325 /* SDLClusterModeStatusSpec.m */,
+ 1A189F1B1F42093600508957 /* SDLClimateControlDataSpec.m */,
DA9F7EB31DCC086400ACAE48 /* SDLDateTimeSpec.m */,
162E82961A9BDE8A00906325 /* SDLDeviceInfoSpec.m */,
162E82971A9BDE8A00906325 /* SDLDeviceStatusSpec.m */,
@@ -2356,6 +2487,7 @@
DA9F7EAD1DCC063400ACAE48 /* SDLLocationCoordinateSpec.m */,
DA9F7EAE1DCC063400ACAE48 /* SDLLocationDetailsSpec.m */,
162E82A21A9BDE8A00906325 /* SDLMenuParamsSpec.m */,
+ 1A189F1D1F420A7C00508957 /* SDLModuleDataSpec.m */,
162E82A31A9BDE8A00906325 /* SDLMyKeySpec.m */,
5D0A9F921F15560B00CC80DD /* SDLNavigationCapabilitySpec.m */,
DA9F7EB51DCC086A00ACAE48 /* SDLOasisAddressSpec.m */,
@@ -2363,6 +2495,10 @@
162E82A51A9BDE8A00906325 /* SDLPermissionItemSpec.m */,
5D0A9F941F15585B00CC80DD /* SDLPhoneCapabilitySpec.m */,
162E82A61A9BDE8A00906325 /* SDLPresetBankCapabilitiesSpec.m */,
+ 1A189F1F1F420AB000508957 /* SDLRadioControlCapabilitiesSpec.m */,
+ 1A189F211F420ACC00508957 /* SDLRadioControlDataSpec.m */,
+ 1A189F231F420AE800508957 /* SDLRdsDataSpec.m */,
+ 1A189F251F420B0100508957 /* SDLRemoteControlCapabilitiesSpec.m */,
162E82A71A9BDE8A00906325 /* SDLScreenParamsSpec.m */,
162E82A81A9BDE8A00906325 /* SDLSingleTireStatusSpec.m */,
162E82A91A9BDE8A00906325 /* SDLSoftButtonCapabilitiesSpec.m */,
@@ -2370,6 +2506,7 @@
162E82AB1A9BDE8A00906325 /* SDLStartTimeSpec.m */,
162E82AC1A9BDE8A00906325 /* SDLSyncMsgVersionSpec.m */,
5D0A9F961F1559EC00CC80DD /* SDLSystemCapabilitySpec.m */,
+ 1A189F271F420B7500508957 /* SDLTemperatureSpec.m */,
162E82AD1A9BDE8A00906325 /* SDLTextFieldSpec.m */,
162E82AE1A9BDE8A00906325 /* SDLTireStatusSpec.m */,
162E82AF1A9BDE8A00906325 /* SDLTouchCoordSpec.m */,
@@ -2729,6 +2866,8 @@
5D61FA4B1A84238A00846EE7 /* SDLAlert.m */,
5D61FA4C1A84238A00846EE7 /* SDLAlertManeuver.h */,
5D61FA4D1A84238A00846EE7 /* SDLAlertManeuver.m */,
+ 1A189EBD1F41C99F00508957 /* SDLButtonPress.h */,
+ 1A189EBE1F41C99F00508957 /* SDLButtonPress.m */,
5D61FA6E1A84238A00846EE7 /* SDLChangeRegistration.h */,
5D61FA6F1A84238A00846EE7 /* SDLChangeRegistration.m */,
5D61FA7E1A84238A00846EE7 /* SDLCreateInteractionChoiceSet.h */,
@@ -2751,6 +2890,8 @@
5D61FAB71A84238A00846EE7 /* SDLEndAudioPassThru.m */,
5D61FAC41A84238A00846EE7 /* SDLGetDTCs.h */,
5D61FAC51A84238A00846EE7 /* SDLGetDTCs.m */,
+ 1A189ED11F41D3F000508957 /* SDLGetInteriorVehicleData.h */,
+ 1A189ED21F41D3F000508957 /* SDLGetInteriorVehicleData.m */,
5D00AC6D1F1511B9004000D9 /* SDLGetSystemCapability.h */,
5D00AC6E1F1511B9004000D9 /* SDLGetSystemCapability.m */,
5D61FAC81A84238A00846EE7 /* SDLGetVehicleData.h */,
@@ -2781,6 +2922,8 @@
5D61FB971A84238B00846EE7 /* SDLSetDisplayLayout.m */,
5D61FB9A1A84238B00846EE7 /* SDLSetGlobalProperties.h */,
5D61FB9B1A84238B00846EE7 /* SDLSetGlobalProperties.m */,
+ 1A189EFC1F4204B100508957 /* SDLSetInteriorVehicleData.h */,
+ 1A189EFD1F4204B100508957 /* SDLSetInteriorVehicleData.m */,
5D61FB9E1A84238B00846EE7 /* SDLSetMediaClockTimer.h */,
5D61FB9F1A84238B00846EE7 /* SDLSetMediaClockTimer.m */,
5D61FBA21A84238B00846EE7 /* SDLShow.h */,
@@ -2826,6 +2969,8 @@
5D61FA4F1A84238A00846EE7 /* SDLAlertManeuverResponse.m */,
5D61FA501A84238A00846EE7 /* SDLAlertResponse.h */,
5D61FA511A84238A00846EE7 /* SDLAlertResponse.m */,
+ 1A189EC11F41CB9800508957 /* SDLButtonPressResponse.h */,
+ 1A189EC21F41CB9800508957 /* SDLButtonPressResponse.m */,
5D61FA701A84238A00846EE7 /* SDLChangeRegistrationResponse.h */,
5D61FA711A84238A00846EE7 /* SDLChangeRegistrationResponse.m */,
5D61FA801A84238A00846EE7 /* SDLCreateInteractionChoiceSetResponse.h */,
@@ -2850,6 +2995,8 @@
5D61FAC31A84238A00846EE7 /* SDLGenericResponse.m */,
5D61FAC61A84238A00846EE7 /* SDLGetDTCsResponse.h */,
5D61FAC71A84238A00846EE7 /* SDLGetDTCsResponse.m */,
+ 1A189ED51F41D8CA00508957 /* SDLGetInteriorVehicleDataResponse.h */,
+ 1A189ED61F41D8CA00508957 /* SDLGetInteriorVehicleDataResponse.m */,
5D00AC711F151CFE004000D9 /* SDLGetSystemCapabilityResponse.h */,
5D00AC721F151CFE004000D9 /* SDLGetSystemCapabilityResponse.m */,
5D61FACA1A84238A00846EE7 /* SDLGetVehicleDataResponse.h */,
@@ -2882,6 +3029,8 @@
5D61FB9D1A84238B00846EE7 /* SDLSetGlobalPropertiesResponse.m */,
5D61FBA01A84238B00846EE7 /* SDLSetMediaClockTimerResponse.h */,
5D61FBA11A84238B00846EE7 /* SDLSetMediaClockTimerResponse.m */,
+ 1A189F001F42050600508957 /* SDLSetInteriorVehicleDataResponse.h */,
+ 1A189F011F42050600508957 /* SDLSetInteriorVehicleDataResponse.m */,
5D61FBA61A84238B00846EE7 /* SDLShowConstantTBTResponse.h */,
5D61FBA71A84238B00846EE7 /* SDLShowConstantTBTResponse.m */,
5D61FBA81A84238B00846EE7 /* SDLShowResponse.h */,
@@ -2931,6 +3080,10 @@
5D61FA651A84238A00846EE7 /* SDLButtonCapabilities.m */,
5D61FA741A84238A00846EE7 /* SDLChoice.h */,
5D61FA751A84238A00846EE7 /* SDLChoice.m */,
+ 1A189EC51F41CDD200508957 /* SDLClimateControlCapabilities.h */,
+ 1A189EC61F41CDD200508957 /* SDLClimateControlCapabilities.m */,
+ 1A189EC91F41CEF300508957 /* SDLClimateControlData.h */,
+ 1A189ECA1F41CEF300508957 /* SDLClimateControlData.m */,
5D61FA761A84238A00846EE7 /* SDLClusterModeStatus.h */,
5D61FA771A84238A00846EE7 /* SDLClusterModeStatus.m */,
DA9F7E611DCBFAC800ACAE48 /* SDLDateTime.h */,
@@ -2969,6 +3122,8 @@
DA9F7E981DCC052C00ACAE48 /* SDLLocationDetails.m */,
5D61FB0B1A84238A00846EE7 /* SDLMenuParams.h */,
5D61FB0C1A84238A00846EE7 /* SDLMenuParams.m */,
+ 1A189ED91F41D92400508957 /* SDLModuleData.h */,
+ 1A189EDA1F41D92400508957 /* SDLModuleData.m */,
5D61FB0D1A84238A00846EE7 /* SDLMyKey.h */,
5D61FB0E1A84238A00846EE7 /* SDLMyKey.m */,
5D00AC751F15283E004000D9 /* SDLNavigationCapability.h */,
@@ -2983,6 +3138,12 @@
5D00AC7A1F15287E004000D9 /* SDLPhoneCapability.m */,
5D61FB4E1A84238B00846EE7 /* SDLPresetBankCapabilities.h */,
5D61FB4F1A84238B00846EE7 /* SDLPresetBankCapabilities.m */,
+ 1A189EEC1F41F87500508957 /* SDLRadioControlCapabilities.h */,
+ 1A189EED1F41F87500508957 /* SDLRadioControlCapabilities.m */,
+ 1A189EF01F41F8AA00508957 /* SDLRadioControlData.h */,
+ 1A189EF11F41F8AA00508957 /* SDLRadioControlData.m */,
+ 1A189EF81F42041900508957 /* SDLRemoteControlCapabilities.h */,
+ 1A189EF91F42041900508957 /* SDLRemoteControlCapabilities.m */,
5D61FB8C1A84238B00846EE7 /* SDLScreenParams.h */,
5D61FB8D1A84238B00846EE7 /* SDLScreenParams.m */,
5D61FBAA1A84238B00846EE7 /* SDLSingleTireStatus.h */,
@@ -2997,6 +3158,8 @@
5D61FBC91A84238B00846EE7 /* SDLSyncMsgVersion.m */,
5D00AC691F141339004000D9 /* SDLSystemCapability.h */,
5D00AC6A1F141339004000D9 /* SDLSystemCapability.m */,
+ 1A189F041F42057000508957 /* SDLTemperature.h */,
+ 1A189F051F42057000508957 /* SDLTemperature.m */,
5D61FBDC1A84238C00846EE7 /* SDLTextField.h */,
5D61FBDD1A84238C00846EE7 /* SDLTextField.m */,
5D61FBE21A84238C00846EE7 /* SDLTireStatus.h */,
@@ -3054,6 +3217,8 @@
5D61FA791A84238A00846EE7 /* SDLCompassDirection.m */,
5D61FA7A1A84238A00846EE7 /* SDLComponentVolumeStatus.h */,
5D61FA7B1A84238A00846EE7 /* SDLComponentVolumeStatus.m */,
+ 1A189ECD1F41D10000508957 /* SDLDefrostZone.h */,
+ 1A189ECE1F41D10000508957 /* SDLDefrostZone.m */,
DA9F7E691DCBFB0700ACAE48 /* SDLDeliveryMode.h */,
DA9F7E6A1DCBFB0700ACAE48 /* SDLDeliveryMode.m */,
5D61FA971A84238A00846EE7 /* SDLDeviceLevelStatus.h */,
@@ -3104,6 +3269,8 @@
5D61FB081A84238A00846EE7 /* SDLMaintenanceModeStatus.m */,
5D61FB091A84238A00846EE7 /* SDLMediaClockFormat.h */,
5D61FB0A1A84238A00846EE7 /* SDLMediaClockFormat.m */,
+ 1A189EE01F41F39800508957 /* SDLModuleType.h */,
+ 1A189EE11F41F39800508957 /* SDLModuleType.m */,
5D61FB421A84238B00846EE7 /* SDLPermissionStatus.h */,
5D61FB431A84238B00846EE7 /* SDLPermissionStatus.m */,
5D61FB461A84238B00846EE7 /* SDLPowerModeQualificationStatus.h */,
@@ -3118,6 +3285,10 @@
5D61FB511A84238B00846EE7 /* SDLPrimaryAudioSource.m */,
5D61FB541A84238B00846EE7 /* SDLPRNDL.h */,
5D61FB551A84238B00846EE7 /* SDLPRNDL.m */,
+ 1A189EE81F41F83800508957 /* SDLRadioBand.h */,
+ 1A189EE91F41F83800508957 /* SDLRadioBand.m */,
+ 1A189EF41F41F8E600508957 /* SDLRadioState.h */,
+ 1A189EF51F41F8E600508957 /* SDLRadioState.m */,
5D61FB741A84238B00846EE7 /* SDLRequestType.h */,
5D61FB751A84238B00846EE7 /* SDLRequestType.m */,
5D61FB7A1A84238B00846EE7 /* SDLResult.h */,
@@ -3137,6 +3308,8 @@
5D61FBD11A84238B00846EE7 /* SDLSystemContext.m */,
5D61FBD61A84238B00846EE7 /* SDLTBTState.h */,
5D61FBD71A84238B00846EE7 /* SDLTBTState.m */,
+ 1A189F081F4205A300508957 /* SDLTemperatureUnit.h */,
+ 1A189F091F4205A300508957 /* SDLTemperatureUnit.m */,
5D61FBDA1A84238B00846EE7 /* SDLTextAlignment.h */,
5D61FBDB1A84238C00846EE7 /* SDLTextAlignment.m */,
5D61FBDE1A84238C00846EE7 /* SDLTextFieldName.h */,
@@ -3161,6 +3334,8 @@
5D61FC1B1A84238C00846EE7 /* SDLVehicleDataStatus.m */,
5D61FC1C1A84238C00846EE7 /* SDLVehicleDataType.h */,
5D61FC1D1A84238C00846EE7 /* SDLVehicleDataType.m */,
+ 1A189F0C1F4205D700508957 /* SDLVentilationMode.h */,
+ 1A189F0D1F4205D700508957 /* SDLVentilationMode.m */,
5D61FC201A84238C00846EE7 /* SDLVrCapabilities.h */,
5D61FC211A84238C00846EE7 /* SDLVrCapabilities.m */,
5D61FC241A84238C00846EE7 /* SDLWarningLightStatus.h */,
@@ -3238,6 +3413,8 @@
5D61FB211A84238B00846EE7 /* SDLOnHashChange.m */,
5D61FB221A84238B00846EE7 /* SDLOnHMIStatus.h */,
5D61FB231A84238B00846EE7 /* SDLOnHMIStatus.m */,
+ 1A189EE41F41F43A00508957 /* SDLOnInteriorVehicleData.h */,
+ 1A189EE51F41F43A00508957 /* SDLOnInteriorVehicleData.m */,
5D61FB241A84238B00846EE7 /* SDLOnKeyboardInput.h */,
5D61FB251A84238B00846EE7 /* SDLOnKeyboardInput.m */,
5D61FB261A84238B00846EE7 /* SDLOnLanguageChange.h */,
@@ -3961,7 +4138,9 @@
5D61FDCB1A84238C00846EE7 /* SDLTextFieldName.h in Headers */,
5D61FD8B1A84238C00846EE7 /* SDLSetMediaClockTimer.h in Headers */,
5D61FD031A84238C00846EE7 /* SDLOnButtonEvent.h in Headers */,
+ 1A189EBF1F41C99F00508957 /* SDLButtonPress.h in Headers */,
5D61FDAF1A84238C00846EE7 /* SDLSubscribeButtonResponse.h in Headers */,
+ 1A189EFE1F4204B100508957 /* SDLSetInteriorVehicleData.h in Headers */,
5D61FCB51A84238C00846EE7 /* SDLGetVehicleData.h in Headers */,
5D61FDEB1A84238C00846EE7 /* SDLUnsubscribeVehicleData.h in Headers */,
5DA3F3541BC448060026F2D0 /* NSMapTable+Subscripting.h in Headers */,
@@ -3972,6 +4151,8 @@
5D61FDCF1A84238C00846EE7 /* SDLTireStatus.h in Headers */,
5D61FDFD1A84238C00846EE7 /* SDLVehicleDataActiveStatus.h in Headers */,
5D61FD811A84238C00846EE7 /* SDLSetAppIconResponse.h in Headers */,
+ 1A189EDB1F41D92400508957 /* SDLModuleData.h in Headers */,
+ 1A189ECB1F41CEF300508957 /* SDLClimateControlData.h in Headers */,
5D61FC551A84238C00846EE7 /* SDLButtonName.h in Headers */,
5D616B531D59044400553F6B /* SDLErrorConstants.h in Headers */,
5D61FD9F1A84238C00846EE7 /* SDLSoftButton.h in Headers */,
@@ -4015,6 +4196,7 @@
5D61FDDA1A84238C00846EE7 /* SDLTransportDelegate.h in Headers */,
5D61FC411A84238C00846EE7 /* SDLAppHMIType.h in Headers */,
5D61FCEE1A84238C00846EE7 /* SDLListFilesResponse.h in Headers */,
+ 1A189ED31F41D3F000508957 /* SDLGetInteriorVehicleData.h in Headers */,
5D61FC491A84238C00846EE7 /* SDLAudioType.h in Headers */,
5D61FC761A84238C00846EE7 /* SDLDeleteFile.h in Headers */,
5D61FD211A84238C00846EE7 /* SDLOnVehicleData.h in Headers */,
@@ -4039,6 +4221,7 @@
5D61FD891A84238C00846EE7 /* SDLSetGlobalPropertiesResponse.h in Headers */,
5D61FD8D1A84238C00846EE7 /* SDLSetMediaClockTimerResponse.h in Headers */,
5D61FD3B1A84238C00846EE7 /* SDLPresetBankCapabilities.h in Headers */,
+ 1A189EEE1F41F87500508957 /* SDLRadioControlCapabilities.h in Headers */,
5D8204311BD001C700D0A41B /* SDLArtwork.h in Headers */,
5D53C46D1B7A99B9003526EA /* SDLStreamingMediaManager.h in Headers */,
5D61FD0F1A84238C00846EE7 /* SDLOnHMIStatus.h in Headers */,
@@ -4050,11 +4233,13 @@
5D61FC9E1A84238C00846EE7 /* SDLEncodedSyncPData.h in Headers */,
5D61FC291A84238C00846EE7 /* SDLAbstractProtocol.h in Headers */,
5D61FDE11A84238C00846EE7 /* SDLTurn.h in Headers */,
+ 1A189F021F42050600508957 /* SDLSetInteriorVehicleDataResponse.h in Headers */,
5D61FC801A84238C00846EE7 /* SDLDeleteSubMenuResponse.h in Headers */,
5D00AC731F151CFE004000D9 /* SDLGetSystemCapabilityResponse.h in Headers */,
5D61FDBD1A84238C00846EE7 /* SDLSystemContext.h in Headers */,
5D61FC511A84238C00846EE7 /* SDLButtonCapabilities.h in Headers */,
5D61FDE91A84238C00846EE7 /* SDLUnsubscribeButtonResponse.h in Headers */,
+ 1A189EC31F41CB9800508957 /* SDLButtonPressResponse.h in Headers */,
5D61FCD51A84238C00846EE7 /* SDLImageType.h in Headers */,
5D61FC2F1A84238C00846EE7 /* SDLAddCommandResponse.h in Headers */,
5D61FD631A84238C00846EE7 /* SDLResetGlobalProperties.h in Headers */,
@@ -4078,6 +4263,7 @@
5D61FC4D1A84238C00846EE7 /* SDLBitsPerSample.h in Headers */,
5D61FD9B1A84238C00846EE7 /* SDLSlider.h in Headers */,
5D61FD111A84238C00846EE7 /* SDLOnKeyboardInput.h in Headers */,
+ 1A189F061F42057000508957 /* SDLTemperature.h in Headers */,
5D76E3211D39742300647CFA /* SDLViewControllerPresentable.h in Headers */,
5DFFB9151BD7C89700DB3F04 /* SDLConnectionManagerType.h in Headers */,
5D61FC941A84238C00846EE7 /* SDLDriverDistractionState.h in Headers */,
@@ -4093,10 +4279,12 @@
5D2F58081D0717D5001085CE /* SDLManagerDelegate.h in Headers */,
5D61FC881A84238C00846EE7 /* SDLDiagnosticMessage.h in Headers */,
5D61FDB31A84238C00846EE7 /* SDLSubscribeVehicleDataResponse.h in Headers */,
+ 1A189ECF1F41D10000508957 /* SDLDefrostZone.h in Headers */,
5D61FC961A84238C00846EE7 /* SDLECallConfirmationStatus.h in Headers */,
5D4D67AC1D2ED37A00468B4A /* SDLNotificationDispatcher.h in Headers */,
5D61FDA51A84238C00846EE7 /* SDLSpeak.h in Headers */,
5D82042D1BCEC32F00D0A41B /* SDLFile.h in Headers */,
+ 1A189ED71F41D8CA00508957 /* SDLGetInteriorVehicleDataResponse.h in Headers */,
5D61FD1B1A84238C00846EE7 /* SDLOnSystemRequest.h in Headers */,
5D61FD2F1A84238C00846EE7 /* SDLPermissionStatus.h in Headers */,
5D3E487F1D6F88A30000BFEF /* SDLRPCNotificationNotification.h in Headers */,
@@ -4115,6 +4303,7 @@
5D61FCF41A84238C00846EE7 /* SDLMaintenanceModeStatus.h in Headers */,
5D61FC571A84238C00846EE7 /* SDLButtonPressMode.h in Headers */,
5D3E487B1D6F888E0000BFEF /* SDLRPCResponseNotification.h in Headers */,
+ 1A189EF61F41F8E600508957 /* SDLRadioState.h in Headers */,
5D61FC471A84238C00846EE7 /* SDLAudioStreamingState.h in Headers */,
5D61FE071A84238C00846EE7 /* SDLVehicleDataStatus.h in Headers */,
5D61FD2D1A84238C00846EE7 /* SDLPermissionItem.h in Headers */,
@@ -4131,9 +4320,12 @@
5DD67CB81E661C4A009CD394 /* SDLLogTargetFile.h in Headers */,
5D61FD591A84238C00846EE7 /* SDLReadDID.h in Headers */,
5D82041A1BCD80BA00D0A41B /* SDLLockScreenConfiguration.h in Headers */,
+ 1A189EEA1F41F83800508957 /* SDLRadioBand.h in Headers */,
5D61FC611A84238C00846EE7 /* SDLChoice.h in Headers */,
5D7F87F31CE3C29E002DD7C4 /* SDLFileWrapper.h in Headers */,
+ 1A189EFA1F42041900508957 /* SDLRemoteControlCapabilities.h in Headers */,
5D61FC7C1A84238C00846EE7 /* SDLDeleteInteractionChoiceSetResponse.h in Headers */,
+ 1A189EE61F41F43A00508957 /* SDLOnInteriorVehicleData.h in Headers */,
5D61FDB91A84238C00846EE7 /* SDLSyncPDataResponse.h in Headers */,
DAC572631D10C5020004288B /* SDLPinchGesture.h in Headers */,
5D61FC311A84238C00846EE7 /* SDLAddSubMenu.h in Headers */,
@@ -4174,6 +4366,7 @@
5D61FC3F1A84238C00846EE7 /* SDLAmbientLightStatus.h in Headers */,
5DE372A11ACB2ED300849FAA /* SDLHMICapabilities.h in Headers */,
E9C32B9C1AB20C5900F283AF /* EAAccessory+SDLProtocols.h in Headers */,
+ 1A189EE21F41F39800508957 /* SDLModuleType.h in Headers */,
5D61FE0B1A84238C00846EE7 /* SDLVehicleType.h in Headers */,
5D61FCC31A84238C00846EE7 /* SDLHMIPermissions.h in Headers */,
5D61FE131A84238C00846EE7 /* SDLWiperStatus.h in Headers */,
@@ -4183,6 +4376,7 @@
5D61FD951A84238C00846EE7 /* SDLShowResponse.h in Headers */,
5D61FCA31A84238C00846EE7 /* SDLEndAudioPassThru.h in Headers */,
5D61FCB11A84238C00846EE7 /* SDLGetDTCs.h in Headers */,
+ 1A189EF21F41F8AA00508957 /* SDLRadioControlData.h in Headers */,
5D61FDFF1A84238C00846EE7 /* SDLVehicleDataEventStatus.h in Headers */,
5D61FC5B1A84238C00846EE7 /* SDLChangeRegistration.h in Headers */,
5D61FD5B1A84238C00846EE7 /* SDLReadDIDResponse.h in Headers */,
@@ -4193,6 +4387,7 @@
5D61FC371A84238C00846EE7 /* SDLAlert.h in Headers */,
5D61FCC11A84238C00846EE7 /* SDLHMILevel.h in Headers */,
5D61FD471A84238C00846EE7 /* SDLProtocolListener.h in Headers */,
+ 1A189F0E1F4205D700508957 /* SDLVentilationMode.h in Headers */,
5D61FCA01A84238C00846EE7 /* SDLEncodedSyncPDataResponse.h in Headers */,
5D61FD271A84238C00846EE7 /* SDLPerformAudioPassThruResponse.h in Headers */,
5D61FD251A84238C00846EE7 /* SDLPerformAudioPassThru.h in Headers */,
@@ -4200,6 +4395,7 @@
5D61FDA71A84238C00846EE7 /* SDLSpeakResponse.h in Headers */,
5D1665CB1CF8CA6700CC4CA1 /* NSNumber+NumberType.h in Headers */,
5D61FD771A84238C00846EE7 /* SDLSamplingRate.h in Headers */,
+ 1A189EC71F41CDD200508957 /* SDLClimateControlCapabilities.h in Headers */,
5D61FCBB1A84238C00846EE7 /* SDLGPSData.h in Headers */,
5D61FDA31A84238C00846EE7 /* SDLSoftButtonType.h in Headers */,
5D61FC431A84238C00846EE7 /* SDLAppInterfaceUnregisteredReason.h in Headers */,
@@ -4217,6 +4413,7 @@
DAC572671D10C5640004288B /* CGPoint_Util.h in Headers */,
5D61FDF91A84238C00846EE7 /* SDLV2ProtocolHeader.h in Headers */,
5DBF06231E64A83F00A5CF03 /* SDLLogManager.h in Headers */,
+ 1A189F0A1F4205A300508957 /* SDLTemperatureUnit.h in Headers */,
5D82041E1BCD8E6100D0A41B /* SDLConfiguration.h in Headers */,
5D61FD4A1A84238C00846EE7 /* SDLProtocolMessageAssembler.h in Headers */,
5D61FD4C1A84238C00846EE7 /* SDLProtocolMessageDisassembler.h in Headers */,
@@ -4331,7 +4528,7 @@
TargetAttributes = {
5D4019AE1A76EC350006B0C2 = {
CreatedOnToolsVersion = 6.1.1;
- DevelopmentTeam = NCVC2MHU7M;
+ DevelopmentTeam = DPQM8253BA;
SystemCapabilities = {
com.apple.BackgroundModes = {
enabled = 1;
@@ -4472,8 +4669,10 @@
5D61FE0A1A84238C00846EE7 /* SDLVehicleDataType.m in Sources */,
5D61FD1A1A84238C00846EE7 /* SDLOnSyncPData.m in Sources */,
8B7B319F1F2F7CF700BDC38D /* SDLVideoStreamingProtocol.m in Sources */,
+ 1A189EF71F41F8E600508957 /* SDLRadioState.m in Sources */,
5D61FC461A84238C00846EE7 /* SDLAudioPassThruCapabilities.m in Sources */,
5D61FD301A84238C00846EE7 /* SDLPermissionStatus.m in Sources */,
+ 1A189F0F1F4205D700508957 /* SDLVentilationMode.m in Sources */,
5D61FDEE1A84238C00846EE7 /* SDLUnsubscribeVehicleDataResponse.m in Sources */,
8B7B319B1F2F7B5700BDC38D /* SDLVideoStreamingCodec.m in Sources */,
5D535DC61B72473800CF7760 /* SDLGlobals.m in Sources */,
@@ -4482,6 +4681,7 @@
5D61FC421A84238C00846EE7 /* SDLAppHMIType.m in Sources */,
5D61FD421A84238C00846EE7 /* SDLPRNDL.m in Sources */,
E9C32B921AB20BA200F283AF /* SDLIAPSession.m in Sources */,
+ 1A189F031F42050600508957 /* SDLSetInteriorVehicleDataResponse.m in Sources */,
5D61FD0C1A84238C00846EE7 /* SDLOnEncodedSyncPData.m in Sources */,
5D61FD0A1A84238C00846EE7 /* SDLOnDriverDistraction.m in Sources */,
5D61FCED1A84238C00846EE7 /* SDLListFiles.m in Sources */,
@@ -4512,6 +4712,8 @@
5D82042E1BCEC32F00D0A41B /* SDLFile.m in Sources */,
5DA3F3601BC448590026F2D0 /* SDLNotificationConstants.m in Sources */,
5D61FD5A1A84238C00846EE7 /* SDLReadDID.m in Sources */,
+ 1A189F071F42057000508957 /* SDLTemperature.m in Sources */,
+ 1A189EDC1F41D92400508957 /* SDLModuleData.m in Sources */,
5D61FC8F1A84238C00846EE7 /* SDLDimension.m in Sources */,
5D61FC9B1A84238C00846EE7 /* SDLEmergencyEvent.m in Sources */,
5D61FDFE1A84238C00846EE7 /* SDLVehicleDataActiveStatus.m in Sources */,
@@ -4533,6 +4735,7 @@
5D61FC681A84238C00846EE7 /* SDLComponentVolumeStatus.m in Sources */,
5D61FDB61A84238C00846EE7 /* SDLSyncMsgVersion.m in Sources */,
5D61FC501A84238C00846EE7 /* SDLBodyInformation.m in Sources */,
+ 1A189EE31F41F39800508957 /* SDLModuleType.m in Sources */,
5D79A03C1CE36F030035797B /* SDLUploadFileOperation.m in Sources */,
5D61FD901A84238C00846EE7 /* SDLShow.m in Sources */,
5D8204271BCEA8A600D0A41B /* SDLPermissionManager.m in Sources */,
@@ -4546,6 +4749,7 @@
5D61FD681A84238C00846EE7 /* SDLResult.m in Sources */,
5D61FDE21A84238C00846EE7 /* SDLTurn.m in Sources */,
5D61FC5A1A84238C00846EE7 /* SDLCarModeStatus.m in Sources */,
+ 1A189F0B1F4205A300508957 /* SDLTemperatureUnit.m in Sources */,
5D82041B1BCD80BA00D0A41B /* SDLLockScreenConfiguration.m in Sources */,
5D3E48CC1D7722FE0000BFEF /* NSBundle+SDLBundle.m in Sources */,
5D61FCBC1A84238C00846EE7 /* SDLGPSData.m in Sources */,
@@ -4571,13 +4775,16 @@
5D61FD7C1A84238C00846EE7 /* SDLScrollableMessage.m in Sources */,
5D4D67B11D2FE2F900468B4A /* SDLResponseDispatcher.m in Sources */,
5D61FD801A84238C00846EE7 /* SDLSetAppIcon.m in Sources */,
+ 1A189EFF1F4204B100508957 /* SDLSetInteriorVehicleData.m in Sources */,
5D61FD3C1A84238C00846EE7 /* SDLPresetBankCapabilities.m in Sources */,
+ 1A189EC81F41CDD200508957 /* SDLClimateControlCapabilities.m in Sources */,
5D61FDB81A84238C00846EE7 /* SDLSyncPData.m in Sources */,
5D61FD221A84238C00846EE7 /* SDLOnVehicleData.m in Sources */,
5D61FCD41A84238C00846EE7 /* SDLImageResolution.m in Sources */,
5D61FDF41A84238C00846EE7 /* SDLUpdateTurnListResponse.m in Sources */,
5D61FCF31A84238C00846EE7 /* SDLLockScreenStatus.m in Sources */,
5D61FC731A84238C00846EE7 /* SDLDeleteCommand.m in Sources */,
+ 1A189EFB1F42041900508957 /* SDLRemoteControlCapabilities.m in Sources */,
5D61FD2A1A84238C00846EE7 /* SDLPerformInteraction.m in Sources */,
5D61FC541A84238C00846EE7 /* SDLButtonEventMode.m in Sources */,
5D61FC8D1A84238C00846EE7 /* SDLDIDResult.m in Sources */,
@@ -4588,6 +4795,7 @@
5D61FC4E1A84238C00846EE7 /* SDLBitsPerSample.m in Sources */,
5D00AC701F1511B9004000D9 /* SDLGetSystemCapability.m in Sources */,
5D61FDEA1A84238C00846EE7 /* SDLUnsubscribeButtonResponse.m in Sources */,
+ 1A189EC01F41C99F00508957 /* SDLButtonPress.m in Sources */,
5D61FCA61A84238C00846EE7 /* SDLEndAudioPassThruResponse.m in Sources */,
5D61FD281A84238C00846EE7 /* SDLPerformAudioPassThruResponse.m in Sources */,
5D61FDCE1A84238C00846EE7 /* SDLTimerMode.m in Sources */,
@@ -4614,6 +4822,7 @@
5D61FC3A1A84238C00846EE7 /* SDLAlertManeuver.m in Sources */,
5D61FC5E1A84238C00846EE7 /* SDLChangeRegistrationResponse.m in Sources */,
5D8204231BCEA89A00D0A41B /* SDLFileManager.m in Sources */,
+ 1A189EF31F41F8AA00508957 /* SDLRadioControlData.m in Sources */,
5D61FC7D1A84238C00846EE7 /* SDLDeleteInteractionChoiceSetResponse.m in Sources */,
DAC572661D10C5640004288B /* CGPoint_Util.m in Sources */,
5D00AC681F140F0A004000D9 /* SDLSystemCapabilityType.m in Sources */,
@@ -4630,6 +4839,7 @@
5D61FC771A84238C00846EE7 /* SDLDeleteFile.m in Sources */,
5D61FC811A84238C00846EE7 /* SDLDeleteSubMenuResponse.m in Sources */,
DA9F7E681DCBFAD400ACAE48 /* SDLOasisAddress.m in Sources */,
+ 1A189EEF1F41F87500508957 /* SDLRadioControlCapabilities.m in Sources */,
5D61FC7B1A84238C00846EE7 /* SDLDeleteInteractionChoiceSet.m in Sources */,
5D61FDC01A84238C00846EE7 /* SDLSystemRequest.m in Sources */,
5D61FD021A84238C00846EE7 /* SDLOnAudioPassThru.m in Sources */,
@@ -4644,6 +4854,7 @@
5D61FD121A84238C00846EE7 /* SDLOnKeyboardInput.m in Sources */,
DA9F7E9A1DCC052C00ACAE48 /* SDLLocationCoordinate.m in Sources */,
5D61FCCA1A84238C00846EE7 /* SDLIgnitionStableStatus.m in Sources */,
+ 1A189ED01F41D10000508957 /* SDLDefrostZone.m in Sources */,
5D61FCFB1A84238C00846EE7 /* SDLMyKey.m in Sources */,
5D61FCAA1A84238C00846EE7 /* SDLFileType.m in Sources */,
DA9F7E901DCC04C000ACAE48 /* SDLUnsubscribeWaypointsResponse.m in Sources */,
@@ -4710,6 +4921,7 @@
5D61FE081A84238C00846EE7 /* SDLVehicleDataStatus.m in Sources */,
E9C32B9F1AB20C5900F283AF /* EAAccessoryManager+SDLProtocols.m in Sources */,
5D61FDA81A84238C00846EE7 /* SDLSpeakResponse.m in Sources */,
+ 1A189ED41F41D3F000508957 /* SDLGetInteriorVehicleData.m in Sources */,
5DB92D331AC9C8BA00C15BB0 /* SDLRPCStruct.m in Sources */,
8B7B31A31F2F7FEA00BDC38D /* SDLVideoStreamingFormat.m in Sources */,
DA0C46AD1DCD35080001F2A8 /* SDLNames.m in Sources */,
@@ -4719,6 +4931,7 @@
DA9F7E9C1DCC052C00ACAE48 /* SDLLocationDetails.m in Sources */,
5D61FD7A1A84238C00846EE7 /* SDLScreenParams.m in Sources */,
5D61FC831A84238C00846EE7 /* SDLDeviceInfo.m in Sources */,
+ 1A189ECC1F41CEF300508957 /* SDLClimateControlData.m in Sources */,
DA318C201DD0F06C00C035AC /* NSMutableDictionary+Store.m in Sources */,
5D7F87EC1CE3C1A1002DD7C4 /* SDLDeleteFileOperation.m in Sources */,
97E26DED1E807AD70074A3C7 /* SDLMutableDataQueue.m in Sources */,
@@ -4732,6 +4945,7 @@
5D3E487C1D6F888E0000BFEF /* SDLRPCResponseNotification.m in Sources */,
5D61FD0E1A84238C00846EE7 /* SDLOnHashChange.m in Sources */,
5D4D67B51D30161600468B4A /* SDLLockScreenManager.m in Sources */,
+ 1A189EEB1F41F83800508957 /* SDLRadioBand.m in Sources */,
5D61FDE41A84238C00846EE7 /* SDLUnregisterAppInterface.m in Sources */,
5D61FC361A84238C00846EE7 /* SDLAirbagStatus.m in Sources */,
5D61FD7E1A84238C00846EE7 /* SDLScrollableMessageResponse.m in Sources */,
@@ -4750,6 +4964,7 @@
5D61FD6A1A84238C00846EE7 /* SDLRPCMessage.m in Sources */,
5D61FDA21A84238C00846EE7 /* SDLSoftButtonCapabilities.m in Sources */,
5D8204321BD001C700D0A41B /* SDLArtwork.m in Sources */,
+ 1A189ED81F41D8CA00508957 /* SDLGetInteriorVehicleDataResponse.m in Sources */,
5D61FC2C1A84238C00846EE7 /* SDLAbstractTransport.m in Sources */,
5D61FD8E1A84238C00846EE7 /* SDLSetMediaClockTimerResponse.m in Sources */,
5D61FD721A84238C00846EE7 /* SDLRPCRequest.m in Sources */,
@@ -4758,6 +4973,7 @@
5D61FCE31A84238C00846EE7 /* SDLKeyboardLayout.m in Sources */,
5D61FE0C1A84238C00846EE7 /* SDLVehicleType.m in Sources */,
DA9F7E941DCC04E400ACAE48 /* SDLUnsubscribeWaypoints.m in Sources */,
+ 1A189EC41F41CB9800508957 /* SDLButtonPressResponse.m in Sources */,
5D61FDCC1A84238C00846EE7 /* SDLTextFieldName.m in Sources */,
5D61FC751A84238C00846EE7 /* SDLDeleteCommandResponse.m in Sources */,
5DA3F3711BC4489A0026F2D0 /* SDLManager.m in Sources */,
@@ -4768,6 +4984,7 @@
5D61FD621A84238C00846EE7 /* SDLRequestType.m in Sources */,
5D61FCBA1A84238C00846EE7 /* SDLGlobalProperty.m in Sources */,
5D61FD4F1A84238C00846EE7 /* SDLProtocolReceivedMessageRouter.m in Sources */,
+ 1A189EE71F41F43A00508957 /* SDLOnInteriorVehicleData.m in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -4816,6 +5033,7 @@
5DB92D2D1AC4A34F00C15BB0 /* SDLPrioritizedObjectCollectionSpec.m in Sources */,
5D43466D1E6F522000B639C6 /* SDLLogModelSpec.m in Sources */,
1680B11C1A9CD7AD00DBD79E /* SDLProtocolMessageAssemblerSpec.m in Sources */,
+ 1A189F361F420C6100508957 /* SDLSetInteriorVehicleDataResponseSpec.m in Sources */,
162E83181A9BDE8B00906325 /* SDLOnKeyboardInputSpec.m in Sources */,
162E83701A9BDE8B00906325 /* SDLUpdateTurnListResponseSpec.m in Sources */,
162E833B1A9BDE8B00906325 /* SDLSetGlobalPropertiesSpec.m in Sources */,
@@ -4843,6 +5061,7 @@
162E83061A9BDE8B00906325 /* SDLVehicleDataEventStatusSpec.m in Sources */,
162E83911A9BDE8B00906325 /* SDLTouchCoordSpec.m in Sources */,
162E832B1A9BDE8B00906325 /* SDLDeleteSubMenuSpec.m in Sources */,
+ 1A189F1E1F420A7C00508957 /* SDLModuleDataSpec.m in Sources */,
162E83411A9BDE8B00906325 /* SDLSubscribeButtonSpec.m in Sources */,
5D59DD471B14FDEE00BE744D /* SDLLockScreenStatusManagerSpec.m in Sources */,
5D0A9F9A1F15636800CC80DD /* SDLGetSystemCapabilitiesSpec.m in Sources */,
@@ -4853,6 +5072,7 @@
162E832A1A9BDE8B00906325 /* SDLDeleteInteractionChoiceSetSpec.m in Sources */,
162E839D1A9BDE8B00906325 /* SDLRPCResponseSpec.m in Sources */,
5DB1BCDF1D243DD3002FFC37 /* SDLLockScreenConfigurationSpec.m in Sources */,
+ 1A189F321F420C2900508957 /* SDLButtonPressResponseSpec.m in Sources */,
162E82E51A9BDE8B00906325 /* SDLImageTypeSpec.m in Sources */,
162E83421A9BDE8B00906325 /* SDLSubscribeVehicleDataSpec.m in Sources */,
162E83811A9BDE8B00906325 /* SDLImageFieldSpec.m in Sources */,
@@ -4868,6 +5088,7 @@
162E82DC1A9BDE8B00906325 /* SDLEmergencyEventTypeSpec.m in Sources */,
162E82CE1A9BDE8A00906325 /* SDLAudioTypeSpec.m in Sources */,
162E831C1A9BDE8B00906325 /* SDLOnSyncPDataSpec.m in Sources */,
+ 1A189F2E1F420BDE00508957 /* SDLGetInteriorVehicleDataSpec.m in Sources */,
5D9F50871BED412E00FEF399 /* TestConnectionManager.m in Sources */,
162E83341A9BDE8B00906325 /* SDLPutFileSpec.m in Sources */,
162E837A1A9BDE8B00906325 /* SDLDIDResult.m in Sources */,
@@ -4884,11 +5105,14 @@
162E82D11A9BDE8A00906325 /* SDLButtonNameSpec.m in Sources */,
162E839E1A9BDE8B00906325 /* SDLRPCStructSpec.m in Sources */,
DA4353DF1D271FD10099B8C4 /* CGPointUtilSpec.m in Sources */,
+ 1A189F201F420AB000508957 /* SDLRadioControlCapabilitiesSpec.m in Sources */,
+ 1A189F121F4206C400508957 /* SDLRadioBandSpec.m in Sources */,
162E83291A9BDE8B00906325 /* SDLDeleteFileSpec.m in Sources */,
1680B11D1A9CD7AD00DBD79E /* SDLProtocolMessageDisassemblerSpec.m in Sources */,
DA9F7E9E1DCC05B900ACAE48 /* SDLWaypointTypeSpec.m in Sources */,
162E838E1A9BDE8B00906325 /* SDLSyncMsgVersionSpec.m in Sources */,
5D76E31C1D3805FF00647CFA /* SDLLockScreenManagerSpec.m in Sources */,
+ 1A189F161F4208C800508957 /* SDLTemperatureUnitSpec.m in Sources */,
162E82DA1A9BDE8B00906325 /* SDLDriverDistractionStateSpec.m in Sources */,
162E83631A9BDE8B00906325 /* SDLSetGlobalPropertiesResponseSpec.m in Sources */,
162E837B1A9BDE8B00906325 /* SDLDisplayCapabilitiesSpec.m in Sources */,
@@ -4907,14 +5131,17 @@
5DB1BCE11D243DDE002FFC37 /* SDLConfigurationSpec.m in Sources */,
162E83071A9BDE8B00906325 /* SDLVehicleDataNotificationStatusSpec.m in Sources */,
5D9F50811BE7E6E300FEF399 /* SDLPermissionsManagerSpec.m in Sources */,
+ 1A189F281F420B7500508957 /* SDLTemperatureSpec.m in Sources */,
162E83361A9BDE8B00906325 /* SDLRegisterAppInterfaceSpec.m in Sources */,
8B7B31AB1F2FB93500BDC38D /* SDLVideoStreamingCodecSpec.m in Sources */,
+ 1A189F2C1F420BC200508957 /* SDLButtonPressSpec.m in Sources */,
162E82DD1A9BDE8B00906325 /* SDLFileTypeSpec.m in Sources */,
162E836A1A9BDE8B00906325 /* SDLSubscribeVehicleDataResponseSpec.m in Sources */,
5D43465B1E6F154400B639C6 /* SDLLogConfigurationSpec.m in Sources */,
162E83761A9BDE8B00906325 /* SDLChoiceSpec.m in Sources */,
162E83571A9BDE8B00906325 /* SDLGetDTCsResponseSpec.m in Sources */,
5D4346471E6F0BDA00B639C6 /* SDLLogFileModuleSpec.m in Sources */,
+ 1A189F221F420ACC00508957 /* SDLRadioControlDataSpec.m in Sources */,
162E83201A9BDE8B00906325 /* SDLOnVehicleDataSpec.m in Sources */,
162E83141A9BDE8B00906325 /* SDLOnDriverDistractionSpec.m in Sources */,
162E83371A9BDE8B00906325 /* SDLResetGlobalPropertiesSpec.m in Sources */,
@@ -4939,6 +5166,7 @@
162E83241A9BDE8B00906325 /* SDLAlertManeuverSpec.m in Sources */,
5D43466F1E6F55BD00B639C6 /* SDLLogManagerSpec.m in Sources */,
162E83451A9BDE8B00906325 /* SDLUnregisterAppInterfaceSpec.m in Sources */,
+ 1A189F141F42088700508957 /* SDLRadioStateSpec.m in Sources */,
162E82EF1A9BDE8B00906325 /* SDLPermissionStatusSpec.m in Sources */,
DA9F7EA61DCC05F500ACAE48 /* SDLUnsubscribeWaypointsSpec.m in Sources */,
162E82F01A9BDE8B00906325 /* SDLPowerModeQualificationStatusSpec.m in Sources */,
@@ -4946,6 +5174,7 @@
162E831A1A9BDE8B00906325 /* SDLOnLockScreenStatusSpec.m in Sources */,
162E83431A9BDE8B00906325 /* SDLSyncPDataSpec.m in Sources */,
167ED9461A9BCE5D00797BE5 /* SwiftSpec.swift in Sources */,
+ 1A189F1C1F42093600508957 /* SDLClimateControlDataSpec.m in Sources */,
162E838B1A9BDE8B00906325 /* SDLSoftButtonCapabilitiesSpec.m in Sources */,
162E834C1A9BDE8B00906325 /* SDLAlertResponseSpec.m in Sources */,
1680B11B1A9CD7AD00DBD79E /* SDLFunctionIDSpec.m in Sources */,
@@ -4971,6 +5200,8 @@
DA9F7EAA1DCC061A00ACAE48 /* SDLSubscribeWaypointsResponseSpec.m in Sources */,
162E835F1A9BDE8B00906325 /* SDLResetGlobalPropertiesResponseSpec.m in Sources */,
162E835E1A9BDE8B00906325 /* SDLRegisterAppInterfaceResponseSpec.m in Sources */,
+ 1A189F181F4208E100508957 /* SDLVentilationModeSpec.m in Sources */,
+ 1A189F341F420C4300508957 /* SDLGetInteriorVehicleDataResponseSpec.m in Sources */,
162E835A1A9BDE8B00906325 /* SDLPerformAudioPassThruResponseSpec.m in Sources */,
162E83501A9BDE8B00906325 /* SDLDeleteFileResponseSpec.m in Sources */,
162E83601A9BDE8B00906325 /* SDLScrollableMessageResponseSpec.m in Sources */,
@@ -4979,10 +5210,12 @@
162E834A1A9BDE8B00906325 /* SDLAddSubMenuResponseSpec.m in Sources */,
162E830C1A9BDE8B00906325 /* SDLWarningLightStatusSpec.m in Sources */,
162E82E71A9BDE8B00906325 /* SDLKeyboardEventSpec.m in Sources */,
+ 1A189F1A1F42092600508957 /* SDLClimateControlCapabilitiesSpec.m in Sources */,
162E834E1A9BDE8B00906325 /* SDLCreateInteractionChoiceSetResponseSpec.m in Sources */,
DA9F7EB61DCC086A00ACAE48 /* SDLOasisAddressSpec.m in Sources */,
162E83301A9BDE8B00906325 /* SDLGetVehicleDataSpec.m in Sources */,
162E833F1A9BDE8B00906325 /* SDLSliderSpec.m in Sources */,
+ 1A189F301F420C0100508957 /* SDLSetInteriorVehicleDataSpec.m in Sources */,
162E838C1A9BDE8B00906325 /* SDLSoftButtonSpec.m in Sources */,
162E83191A9BDE8B00906325 /* SDLOnLanguageChangeSpec.m in Sources */,
5DB1BCDD1D243DC3002FFC37 /* SDLLifecycleConfigurationSpec.m in Sources */,
@@ -4991,6 +5224,7 @@
162E839A1A9BDE8B00906325 /* SDLRPCMessageSpec.m in Sources */,
5D0A9F911F15550400CC80DD /* SDLSystemCapabilityTypeSpec.m in Sources */,
162E83311A9BDE8B00906325 /* SDLListFilesSpec.m in Sources */,
+ 1A189F241F420AE800508957 /* SDLRdsDataSpec.m in Sources */,
DA9F7EB01DCC063400ACAE48 /* SDLLocationDetailsSpec.m in Sources */,
5DC978261B7A38640012C2F1 /* SDLGlobalsSpec.m in Sources */,
162E82FF1A9BDE8B00906325 /* SDLTextAlignmentSpec.m in Sources */,
@@ -5034,6 +5268,7 @@
1680B1171A9CD7AD00DBD79E /* SDLProtocolSpec.m in Sources */,
162E836D1A9BDE8B00906325 /* SDLUnregisterAppInterfaceResponseSpec.m in Sources */,
162E837C1A9BDE8B00906325 /* SDLECallInfoSpec.m in Sources */,
+ 1A189F2A1F420BA700508957 /* SDLOnInteriorVehicleDataSpec.m in Sources */,
5DB1BCD51D243A8E002FFC37 /* SDLUploadFileOperationSpec.m in Sources */,
162E83401A9BDE8B00906325 /* SDLSpeakSpec.m in Sources */,
5DCF76FC1ACDDB4200BB647B /* SDLSendLocationSpec.m in Sources */,
@@ -5043,6 +5278,7 @@
162E83861A9BDE8B00906325 /* SDLParameterPermissionsSpec.m in Sources */,
162E831B1A9BDE8B00906325 /* SDLOnPermissionsChangeSpec.m in Sources */,
162E83711A9BDE8B00906325 /* SDLAirbagStatusSpec.m in Sources */,
+ 1A189F261F420B0100508957 /* SDLRemoteControlCapabilitiesSpec.m in Sources */,
162E82CF1A9BDE8A00906325 /* SDLBitsPerSampleSpec.m in Sources */,
162E831E1A9BDE8B00906325 /* SDLOnTBTClientStateSpec.m in Sources */,
162E83351A9BDE8B00906325 /* SDLReadDIDSpec.m in Sources */,
@@ -5237,7 +5473,7 @@
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
CODE_SIGN_IDENTITY = "iPhone Developer";
- DEVELOPMENT_TEAM = NCVC2MHU7M;
+ DEVELOPMENT_TEAM = DPQM8253BA;
INFOPLIST_FILE = "$(SRCROOT)/SmartDeviceLink_Example/Info.plist";
IPHONEOS_DEPLOYMENT_TARGET = 8.0;
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
@@ -5252,7 +5488,7 @@
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
CODE_SIGN_IDENTITY = "iPhone Developer";
- DEVELOPMENT_TEAM = NCVC2MHU7M;
+ DEVELOPMENT_TEAM = DPQM8253BA;
INFOPLIST_FILE = "$(SRCROOT)/SmartDeviceLink_Example/Info.plist";
IPHONEOS_DEPLOYMENT_TARGET = 8.0;
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
diff --git a/SmartDeviceLink.podspec b/SmartDeviceLink.podspec
index 39855a2fe..ede25b769 100644
--- a/SmartDeviceLink.podspec
+++ b/SmartDeviceLink.podspec
@@ -47,6 +47,7 @@ s.public_header_files = [
'SmartDeviceLink/SDLAddSubMenu.h',
'SmartDeviceLink/SDLAlert.h',
'SmartDeviceLink/SDLAlertManeuver.h',
+'SmartDeviceLink/SDLButtonPress.h',
'SmartDeviceLink/SDLChangeRegistration.h',
'SmartDeviceLink/SDLCreateInteractionChoiceSet.h',
'SmartDeviceLink/SDLDeleteCommand.h',
@@ -58,6 +59,7 @@ s.public_header_files = [
'SmartDeviceLink/SDLEncodedSyncPData.h',
'SmartDeviceLink/SDLEndAudioPassThru.h',
'SmartDeviceLink/SDLGetDTCs.h',
+'SmartDeviceLink/SDLGetInteriorVehicleData.h',
'SmartDeviceLink/SDLGetSystemCapability.h',
'SmartDeviceLink/SDLGetVehicleData.h',
'SmartDeviceLink/SDLGetWaypoints.h',
@@ -73,6 +75,7 @@ s.public_header_files = [
'SmartDeviceLink/SDLSetAppIcon.h',
'SmartDeviceLink/SDLSetDisplayLayout.h',
'SmartDeviceLink/SDLSetGlobalProperties.h',
+'SmartDeviceLink/SDLSetInteriorVehicleData.h',
'SmartDeviceLink/SDLSetMediaClockTimer.h',
'SmartDeviceLink/SDLShow.h',
'SmartDeviceLink/SDLShowConstantTBT.h',
@@ -91,6 +94,7 @@ s.public_header_files = [
'SmartDeviceLink/SDLAddSubMenuResponse.h',
'SmartDeviceLink/SDLAlertManeuverResponse.h',
'SmartDeviceLink/SDLAlertResponse.h',
+'SmartDeviceLink/SDLButtonPressResponse.h',
'SmartDeviceLink/SDLChangeRegistrationResponse.h',
'SmartDeviceLink/SDLCreateInteractionChoiceSetResponse.h',
'SmartDeviceLink/SDLDeleteCommandResponse.h',
@@ -103,6 +107,7 @@ s.public_header_files = [
'SmartDeviceLink/SDLEndAudioPassThruResponse.h',
'SmartDeviceLink/SDLGenericResponse.h',
'SmartDeviceLink/SDLGetDTCsResponse.h',
+'SmartDeviceLink/SDLGetInteriorVehicleDataResponse.h',
'SmartDeviceLink/SDLGetSystemCapabilityResponse.h',
'SmartDeviceLink/SDLGetVehicleDataResponse.h',
'SmartDeviceLink/SDLGetWaypointsResponse.h',
@@ -118,6 +123,7 @@ s.public_header_files = [
'SmartDeviceLink/SDLSetAppIconResponse.h',
'SmartDeviceLink/SDLSetDisplayLayoutResponse.h',
'SmartDeviceLink/SDLSetGlobalPropertiesResponse.h',
+'SmartDeviceLink/SDLSetInteriorVehicleDataResponse.h',
'SmartDeviceLink/SDLSetMediaClockTimerResponse.h',
'SmartDeviceLink/SDLShowConstantTBTResponse.h',
'SmartDeviceLink/SDLShowResponse.h',
@@ -141,6 +147,7 @@ s.public_header_files = [
'SmartDeviceLink/SDLOnEncodedSyncPData.h',
'SmartDeviceLink/SDLOnHMIStatus.h',
'SmartDeviceLink/SDLOnHashChange.h',
+'SmartDeviceLink/SDLOnInteriorVehicleData.h',
'SmartDeviceLink/SDLOnKeyboardInput.h',
'SmartDeviceLink/SDLOnLanguageChange.h',
'SmartDeviceLink/SDLOnLockScreenStatus.h',
diff --git a/SmartDeviceLink/SDLAppHMIType.h b/SmartDeviceLink/SDLAppHMIType.h
index 2c02fe498..021f324e3 100644
--- a/SmartDeviceLink/SDLAppHMIType.h
+++ b/SmartDeviceLink/SDLAppHMIType.h
@@ -62,3 +62,7 @@ extern SDLAppHMIType const SDLAppHMITypeTesting;
* @abstract System App
*/
extern SDLAppHMIType const SDLAppHMITypeSystem;
+
+/**
+ * @abstract Remote control */
+extern SDLAppHMIType const SDLAppHMITypeRemoteControl;
diff --git a/SmartDeviceLink/SDLAppHMIType.m b/SmartDeviceLink/SDLAppHMIType.m
index 5ce899cf5..070ad089b 100644
--- a/SmartDeviceLink/SDLAppHMIType.m
+++ b/SmartDeviceLink/SDLAppHMIType.m
@@ -15,3 +15,4 @@ SDLAppHMIType const SDLAppHMITypeProjection = @"PROJECTION";
SDLAppHMIType const SDLAppHMITypeBackgroundProcess = @"BACKGROUND_PROCESS";
SDLAppHMIType const SDLAppHMITypeTesting = @"TESTING";
SDLAppHMIType const SDLAppHMITypeSystem = @"SYSTEM";
+SDLAppHMIType const SDLAppHMITypeRemoteControl = @"REMOTE_CONTROL";
diff --git a/SmartDeviceLink/SDLButtonName.h b/SmartDeviceLink/SDLButtonName.h
index c86bd4dba..8746c9444 100644
--- a/SmartDeviceLink/SDLButtonName.h
+++ b/SmartDeviceLink/SDLButtonName.h
@@ -100,4 +100,113 @@ extern SDLButtonName const SDLButtonNamePreset9;
extern SDLButtonName const SDLButtonNameCustomButton;
+/**
+ * @abstract Represents the SEARCH button.
+ *
+ */
extern SDLButtonName const SDLButtonNameSearch;
+
+
+#pragma mark - Climate Buttons
+
+/**
+ * @abstract Represents AC max button *
+ */
+extern SDLButtonName const SDLButtonNameAcMax;
+
+
+/**
+ * @abstract Represents AC button *
+ */
+extern SDLButtonName const SDLButtonNameAc;
+
+
+/**
+ * @abstract Represents a Recirculate button
+ */
+extern SDLButtonName const SDLButtonNameRecirculate;
+
+/**
+ * @abstract Represents a Fan up button
+ */
+extern SDLButtonName const SDLButtonNameFanUp;
+
+/**
+ * @abstract Represents a fan down button
+ */
+extern SDLButtonName const SDLButtonNameFanDown;
+
+/**
+ * @abstract Represents a temperature up button
+ */
+extern SDLButtonName const SDLButtonNameTempUp;
+
+/**
+ * @abstract Represents a temperature down button
+ */
+extern SDLButtonName const SDLButtonNameTempDown;
+
+/**
+ * @abstract Represents a Defrost max button.
+ *
+ */
+extern SDLButtonName const SDLButtonNameDefrostMax;
+
+/**
+ * @abstract Represents a Defrost button.
+ *
+ */
+extern SDLButtonName const SDLButtonNameDefrost;
+
+/**
+ * @abstract Represents a Defrost rear button.
+ *
+ */
+extern SDLButtonName const SDLButtonNameDefrostRear;
+
+/**
+ * @abstract Represents a Upper Vent button.
+ *
+ */
+extern SDLButtonName const SDLButtonNameUpperVent;
+
+/**
+ * @abstract Represents a Lower vent button.
+ *
+ */
+extern SDLButtonName const SDLButtonNameLowerVent;
+
+#pragma mark - Radio Buttons
+/**
+ * @abstract Represents a volume up button.
+ */
+extern SDLButtonName const SDLButtonNameVolumeUp;
+
+/**
+ * @abstract Represents a volume down button.
+ *
+ */
+extern SDLButtonName const SDLButtonNameVolumeDown;
+
+/**
+ * @abstract Represents a Eject Button.
+ *
+ */
+extern SDLButtonName const SDLButtonNameEject;
+
+/**
+ * @abstract Represents a Source button.
+ *
+ */
+extern SDLButtonName const SDLButtonNameSource;
+
+/**
+ * @abstract Represents a SHUFFLE button.
+ *
+ */
+extern SDLButtonName const SDLButtonNameShuffle;
+
+/**
+ * @abstract Represents a Repeat button *
+ */
+extern SDLButtonName const SDLButtonNameRepeat;
diff --git a/SmartDeviceLink/SDLButtonName.m b/SmartDeviceLink/SDLButtonName.m
index 23ac32eb9..d89400fc2 100644
--- a/SmartDeviceLink/SDLButtonName.m
+++ b/SmartDeviceLink/SDLButtonName.m
@@ -21,3 +21,21 @@ SDLButtonName const SDLButtonNamePreset8 = @"PRESET_8";
SDLButtonName const SDLButtonNamePreset9 = @"PRESET_9";
SDLButtonName const SDLButtonNameCustomButton = @"CUSTOM_BUTTON";
SDLButtonName const SDLButtonNameSearch = @"SEARCH";
+SDLButtonName const SDLButtonNameAcMax = @"AC_MAX";
+SDLButtonName const SDLButtonNameAc = @"AC";
+SDLButtonName const SDLButtonNameRecirculate = @"RECIRCULATE";
+SDLButtonName const SDLButtonNameFanUp = @"FAN_UP";
+SDLButtonName const SDLButtonNameFanDown = @"FAN_DOWN";
+SDLButtonName const SDLButtonNameTempUp = @"TEMP_UP";
+SDLButtonName const SDLButtonNameTempDown = @"TEMP_DOWN";
+SDLButtonName const SDLButtonNameDefrostMax = @"DEFROST_MAX";
+SDLButtonName const SDLButtonNameDefrostRear = @"DEFROST_REAR";
+SDLButtonName const SDLButtonNameDefrost = @"DEFROST";
+SDLButtonName const SDLButtonNameUpperVent = @"UPPER_VENT";
+SDLButtonName const SDLButtonNameLowerVent = @"LOWER_VENT";
+SDLButtonName const SDLButtonNameVolumeUp = @"VOLUME_UP";
+SDLButtonName const SDLButtonNameVolumeDown = @"VOLUME_DOWN";
+SDLButtonName const SDLButtonNameEject = @"EJECT";
+SDLButtonName const SDLButtonNameSource = @"SOURCE";
+SDLButtonName const SDLButtonNameShuffle = @"SHUFFLE";
+SDLButtonName const SDLButtonNameRepeat = @"REPEAT";
diff --git a/SmartDeviceLink/SDLButtonPress.h b/SmartDeviceLink/SDLButtonPress.h
new file mode 100644
index 000000000..a1aeb714f
--- /dev/null
+++ b/SmartDeviceLink/SDLButtonPress.h
@@ -0,0 +1,35 @@
+//
+// SDLButtonPress.h
+//
+
+#import "SDLRPCRequest.h"
+#import "SDLModuleType.h"
+#import "SDLButtonName.h"
+#import "SDLButtonPressMode.h"
+
+NS_ASSUME_NONNULL_BEGIN
+
+
+@interface SDLButtonPress : SDLRPCRequest
+
+/**
+ * The module where the button should be pressed.
+ *
+ */
+@property (strong, nonatomic) SDLModuleType moduleType;
+
+/**
+ * The name of supported RC climate or radio button.
+ *
+ */
+@property (strong, nonatomic) SDLButtonName buttonName;
+
+/**
+ * Indicates whether this is a LONG or SHORT button press event.
+ *
+ */
+@property (strong, nonatomic) SDLButtonPressMode buttonPressMode;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff --git a/SmartDeviceLink/SDLButtonPress.m b/SmartDeviceLink/SDLButtonPress.m
new file mode 100644
index 000000000..21f89b6a8
--- /dev/null
+++ b/SmartDeviceLink/SDLButtonPress.m
@@ -0,0 +1,46 @@
+//
+// SDLButtonPress.m
+//
+
+#import "SDLButtonPress.h"
+#import "SDLNames.h"
+#import "SDLButtonName.h"
+#import "NSMutableDictionary+Store.h"
+
+NS_ASSUME_NONNULL_BEGIN
+
+@implementation SDLButtonPress
+
+- (instancetype)init {
+ if (self = [super initWithName:SDLNameButtonPress]) {
+ }
+ return self;
+}
+
+
+- (void)setModuleType:(SDLModuleType )moduleType {
+ [parameters sdl_setObject:moduleType forName:SDLNameModuleType];
+}
+
+- (SDLModuleType )moduleType {
+ return [parameters sdl_objectForName:SDLNameModuleType];
+}
+
+- (void)setButtonName:(SDLButtonName)buttonName {
+ [parameters sdl_setObject:buttonName forName:SDLNameButtonName];
+}
+
+- (SDLButtonName)buttonName {
+ return [parameters sdl_objectForName:SDLNameButtonName];
+}
+
+- (void)setButtonPressMode:(SDLButtonPressMode)buttonPressMode {
+ [parameters sdl_setObject:buttonPressMode forName:SDLNameButtonPressMode];
+}
+
+- (SDLButtonPressMode)buttonPressMode {
+ return [parameters sdl_objectForName:SDLNameButtonPressMode];
+}
+
+@end
+NS_ASSUME_NONNULL_END
diff --git a/SmartDeviceLink/SDLButtonPressResponse.h b/SmartDeviceLink/SDLButtonPressResponse.h
new file mode 100644
index 000000000..7a717d310
--- /dev/null
+++ b/SmartDeviceLink/SDLButtonPressResponse.h
@@ -0,0 +1,13 @@
+//
+// SDLButtonPressResponse.h
+//
+
+#import "SDLRPCResponse.h"
+
+NS_ASSUME_NONNULL_BEGIN
+
+@interface SDLButtonPressResponse : SDLRPCResponse
+
+@end
+
+NS_ASSUME_NONNULL_END
diff --git a/SmartDeviceLink/SDLButtonPressResponse.m b/SmartDeviceLink/SDLButtonPressResponse.m
new file mode 100644
index 000000000..3e768a872
--- /dev/null
+++ b/SmartDeviceLink/SDLButtonPressResponse.m
@@ -0,0 +1,20 @@
+//
+// SDLButtonPressResponse.m
+//
+
+#import "SDLButtonPressResponse.h"
+#import "SDLNames.h"
+
+NS_ASSUME_NONNULL_BEGIN
+
+@implementation SDLButtonPressResponse
+
+- (instancetype)init {
+ if (self = [super initWithName:SDLNameButtonPress]) {
+ }
+ return self;
+}
+
+@end
+
+NS_ASSUME_NONNULL_END
diff --git a/SmartDeviceLink/SDLClimateControlCapabilities.h b/SmartDeviceLink/SDLClimateControlCapabilities.h
new file mode 100644
index 000000000..3dc3aea3c
--- /dev/null
+++ b/SmartDeviceLink/SDLClimateControlCapabilities.h
@@ -0,0 +1,113 @@
+//
+// SDLClimateControlCapabilities.h
+//
+
+#import "SDLRPCMessage.h"
+#import "SDLDefrostZone.h"
+#import "SDLVentilationMode.h"
+
+NS_ASSUME_NONNULL_BEGIN
+
+/**
+ * Contains information about a climate control module's capabilities.
+ */
+@interface SDLClimateControlCapabilities : SDLRPCStruct
+
+/**
+ * @abstractThe short friendly name of the climate control module.
+ * It should not be used to identify a module by mobile application.
+ *
+ * Max string length 100 chars
+ */
+@property (strong, nonatomic) NSString *moduleName;
+
+/**
+ * @abstract Availability of the control of fan speed.
+ * True: Available, False: Not Available, Not present: Not Available.
+ *
+ * Optional, Boolean
+ */
+@property (nullable, strong, nonatomic) NSNumber<SDLBool> *fanSpeedAvailable;
+
+/**
+ * @abstract Availability of the control of desired temperature.
+ * True: Available, False: Not Available, Not present: Not Available.
+ *
+ * Optional, Boolean
+ */
+@property (nullable, strong, nonatomic) NSNumber<SDLBool> *desiredTemperatureAvailable;
+
+/**
+ * @abstract Availability of the control of turn on/off AC.
+ * True: Available, False: Not Available, Not present: Not Available.
+ *
+ * Optional, Boolean
+ */
+@property (nullable, strong, nonatomic) NSNumber<SDLBool> *acEnableAvailable;
+
+/**
+ * @abstract Availability of the control of enable/disable air conditioning is ON on the maximum level.
+ * True: Available, False: Not Available, Not present: Not Available.
+ *
+ * Optional, Boolean
+ */
+@property (nullable, strong, nonatomic) NSNumber<SDLBool> *acMaxEnableAvailable;
+
+/**
+ * @abstract Availability of the control of enable/disable circulate Air mode.
+ * True: Available, False: Not Available, Not present: Not Available.
+ *
+ * Optional, Boolean
+ */
+@property (nullable, strong, nonatomic) NSNumber<SDLBool> *circulateAirEnableAvailable;
+
+/**
+ * @abstract Availability of the control of enable/disable auto mode.
+ * True: Available, False: Not Available, Not present: Not Available.
+ *
+ * Optional, Boolean
+ */
+@property (nullable, strong, nonatomic) NSNumber<SDLBool> *autoModeEnableAvailable;
+
+/**
+ * @abstract Availability of the control of enable/disable dual mode.
+ * True: Available, False: Not Available, Not present: Not Available.
+ *
+ * Optional, Boolean
+ */
+@property (nullable, strong, nonatomic) NSNumber<SDLBool> *dualModeEnableAvailable;
+
+/**
+ * @abstract Availability of the control of defrost zones.
+ * True: Available, False: Not Available, Not present: Not Available.
+ *
+ * Optional, Boolean
+ */
+@property (nullable, strong, nonatomic) NSNumber<SDLBool> *defrostZoneAvailable;
+
+/**
+ * @abstract A set of all defrost zones that are controllable.
+ *
+ * Optional, NSArray of type SDLDefrostZone minsize="1" maxsize="100"
+ */
+@property (nullable, strong, nonatomic) NSArray<SDLDefrostZone > *defrostZone;
+
+/**
+ * @abstract Availability of the control of air ventilation mode.
+ * True: Available, False: Not Available, Not present: Not Available.
+ *
+ * Optional, Boolean
+ */
+@property (nullable, strong, nonatomic) NSNumber<SDLBool> *ventilationModeAvailable;
+
+/**
+ * @abstract A set of all ventilation modes that are controllable.
+ * True: Available, False: Not Available, Not present: Not Available.
+ *
+ * Optional, NSArray of type SDLVentilationMode minsize="1" maxsize="100"
+ */
+@property (nullable, strong, nonatomic) NSArray<SDLVentilationMode> *ventilationMode;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff --git a/SmartDeviceLink/SDLClimateControlCapabilities.m b/SmartDeviceLink/SDLClimateControlCapabilities.m
new file mode 100644
index 000000000..2f7b881ba
--- /dev/null
+++ b/SmartDeviceLink/SDLClimateControlCapabilities.m
@@ -0,0 +1,121 @@
+//
+// SDLClimateControlCapabilities.m
+//
+
+#import "SDLClimateControlCapabilities.h"
+#import "SDLNames.h"
+#import "NSMutableDictionary+Store.h"
+
+NS_ASSUME_NONNULL_BEGIN
+
+@implementation SDLClimateControlCapabilities
+
+- (void)setModuleName:(NSString *)moduleName {
+ [store sdl_setObject:moduleName forName:SDLNameModuleName];
+}
+
+- (NSString *)moduleName {
+ return [store sdl_objectForName:SDLNameModuleName];
+}
+
+- (void)setFanSpeedAvailable:(nullable NSNumber<SDLBool> *)fanSpeedAvailable {
+ [store sdl_setObject:fanSpeedAvailable forName:SDLNameFanSpeedAvailable];
+}
+
+- (nullable NSNumber<SDLBool> *)fanSpeedAvailable {
+ return [store sdl_objectForName:SDLNameFanSpeedAvailable];
+
+}
+
+- (void)setDesiredTemperatureAvailable:(nullable NSNumber<SDLBool> *)desiredTemperatureAvailable {
+ [store sdl_setObject:desiredTemperatureAvailable forName:SDLNameDesiredTemperatureAvailable];
+}
+
+- (nullable NSNumber<SDLBool> *)desiredTemperatureAvailable {
+ return [store sdl_objectForName:SDLNameDesiredTemperatureAvailable];
+
+}
+
+- (void)setAcEnableAvailable:(nullable NSNumber<SDLBool> *)acEnableAvailable {
+ [store sdl_setObject:acEnableAvailable forName:SDLNameAcEnableAvailable];
+}
+
+- (nullable NSNumber<SDLBool> *)acEnableAvailable {
+ return [store sdl_objectForName:SDLNameAcEnableAvailable];
+
+}
+
+- (void)setAcMaxEnableAvailable:(nullable NSNumber<SDLBool> *)acMaxEnableAvailable {
+ [store sdl_setObject:acMaxEnableAvailable forName:SDLNameAcMaxEnableAvailable];
+}
+
+- (nullable NSNumber<SDLBool> *)acMaxEnableAvailable {
+ return [store sdl_objectForName:SDLNameAcMaxEnableAvailable];
+
+}
+
+- (void)setCirculateAirEnableAvailable:(nullable NSNumber<SDLBool> *)circulateAirEnableAvailable {
+ [store sdl_setObject:circulateAirEnableAvailable forName:SDLNameCirculateAirEnableAvailable];
+}
+
+- (nullable NSNumber<SDLBool> *)circulateAirEnableAvailable {
+ return [store sdl_objectForName:SDLNameCirculateAirEnableAvailable];
+
+}
+
+- (void)setAutoModeEnableAvailable:(nullable NSNumber<SDLBool> *)autoModeEnableAvailable {
+ [store sdl_setObject:autoModeEnableAvailable forName:SDLNameAutoModeEnableAvailable];
+}
+
+- (nullable NSNumber<SDLBool> *)autoModeEnableAvailable {
+ return [store sdl_objectForName:SDLNameAutoModeEnableAvailable];
+
+}
+
+- (void)setDualModeEnableAvailable:(nullable NSNumber<SDLBool> *)dualModeEnableAvailable {
+ [store sdl_setObject:dualModeEnableAvailable forName:SDLNameDualModeEnableAvailable];
+}
+
+- (nullable NSNumber<SDLBool> *)dualModeEnableAvailable {
+ return [store sdl_objectForName:SDLNameDualModeEnableAvailable];
+
+}
+
+- (void)setDefrostZoneAvailable:(nullable NSNumber<SDLBool> *)defrostZoneAvailable {
+ [store sdl_setObject:defrostZoneAvailable forName:SDLNameDefrostZoneAvailable];
+}
+
+- (nullable NSNumber<SDLBool> *)defrostZoneAvailable {
+ return [store sdl_objectForName:SDLNameDefrostZoneAvailable];
+
+}
+
+- (void)setDefrostZone:(nullable NSArray <SDLDefrostZone>*)defrostZone {
+ [store sdl_setObject:defrostZone forName:SDLNameDefrostZone];
+}
+
+- (nullable NSArray<SDLDefrostZone> *)defrostZone {
+ return [store sdl_objectForName:SDLNameDefrostZone];
+
+}
+
+- (void)setVentilationModeAvailable:(nullable NSNumber<SDLBool> *)ventilationModeAvailable {
+ [store sdl_setObject:ventilationModeAvailable forName:SDLNameVentilationModeAvailable];
+}
+
+- (nullable NSNumber<SDLBool> *)ventilationModeAvailable {
+ return [store sdl_objectForName:SDLNameVentilationModeAvailable];
+}
+
+- (void)setVentilationMode:(nullable NSArray<SDLVentilationMode> *)ventilationMode {
+ [store sdl_setObject:ventilationMode forName:SDLNameVentilationMode];
+}
+
+- (nullable NSArray<SDLVentilationMode> *)ventilationMode {
+ return [store sdl_objectForName:SDLNameVentilationMode];
+}
+
+
+@end
+
+NS_ASSUME_NONNULL_END
diff --git a/SmartDeviceLink/SDLClimateControlData.h b/SmartDeviceLink/SDLClimateControlData.h
new file mode 100644
index 000000000..487b38277
--- /dev/null
+++ b/SmartDeviceLink/SDLClimateControlData.h
@@ -0,0 +1,88 @@
+//
+// SDLClimateControlData.h
+//
+
+#import "SDLRPCMessage.h"
+#import "SDLDefrostZone.h"
+#import "SDLVentilationMode.h"
+
+NS_ASSUME_NONNULL_BEGIN
+
+@class SDLTemperature;
+
+
+@interface SDLClimateControlData : SDLRPCStruct
+
+/**
+ * @abstract Speed of Fan in integer
+ *
+ * Optional, MinValue- 0 MaxValue= 100
+ */
+@property (nullable, strong, nonatomic) NSNumber<SDLInt> *fanSpeed;
+
+/**
+ * @abstractThe Current Temperature in SDLTemperature
+ *
+ * Optional
+ */
+@property (nullable, strong, nonatomic) SDLTemperature *currentTemperature;
+
+/**
+ * @abstract Desired Temperature in SDLTemperature
+ *
+ * Optional
+ */
+@property (nullable, strong, nonatomic) SDLTemperature *desiredTemperature;
+
+/**
+ * @abstract Represents if AC is enabled.
+ *
+ * Optional, Boolean
+ */
+@property (nullable, strong, nonatomic) NSNumber<SDLBool> *acEnable;
+
+/**
+ * @abstract Represents if circulation of air is enabled.
+ *
+ * Optional, Boolean
+ */
+@property (nullable, strong, nonatomic) NSNumber<SDLBool> *circulateAirEnable;
+
+/**
+ * @abstract Represents if auto mode is enabled.
+ *
+ * Optional, Boolean
+ */
+@property (nullable, strong, nonatomic) NSNumber<SDLBool> *autoModeEnable;
+
+/**
+ * @abstract Represents the kind of defrost zone
+ *
+ * Optional, SDLDefrostZone
+ */
+@property (nullable, strong, nonatomic) SDLDefrostZone defrostZone;
+
+/**
+ * @abstract Represents if dual mode is enabled.
+ *
+ * Optional, Boolean
+ */
+@property (nullable, strong, nonatomic) NSNumber<SDLBool> *dualModeEnable;
+
+/**
+ * @abstract Represents if ac max is enabled.
+ *
+ * Optional, Boolean
+ */
+@property (nullable, strong, nonatomic) NSNumber<SDLBool> *acMaxEnable;
+
+/**
+ * @abstract Represents the kind of Ventilation zone
+ *
+ * Optional, SDLVentilationMode
+ */
+@property (nullable, strong, nonatomic) SDLVentilationMode ventilationMode;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff --git a/SmartDeviceLink/SDLClimateControlData.m b/SmartDeviceLink/SDLClimateControlData.m
new file mode 100644
index 000000000..e093998ca
--- /dev/null
+++ b/SmartDeviceLink/SDLClimateControlData.m
@@ -0,0 +1,96 @@
+//
+// SDLClimateControlData.m
+//
+
+#import "SDLClimateControlData.h"
+#import "SDLNames.h"
+#import "SDLTemperature.h"
+#import "NSMutableDictionary+Store.h"
+
+NS_ASSUME_NONNULL_BEGIN
+
+@implementation SDLClimateControlData
+
+- (void)setFanSpeed:(nullable NSNumber<SDLInt> *)fanSpeed {
+ [store sdl_setObject:fanSpeed forName:SDLNameFanSpeed];
+}
+
+- (nullable NSNumber<SDLInt> *)fanSpeed {
+ return [store sdl_objectForName:SDLNameFanSpeed];
+}
+
+- (void)setCurrentTemperature:(nullable SDLTemperature *)currentTemperature {
+ [store sdl_setObject:currentTemperature forName:SDLNameCurrentTemperature];
+}
+
+- (nullable SDLTemperature *)currentTemperature {
+ return [store sdl_objectForName:SDLNameCurrentTemperature];
+}
+
+- (void)setDesiredTemperature:(nullable SDLTemperature *)desiredTemperature {
+ [store sdl_setObject:desiredTemperature forName:SDLNameDesiredTemperature];
+}
+
+- (nullable SDLTemperature *)desiredTemperature {
+ return [store sdl_objectForName:SDLNameDesiredTemperature];
+}
+
+- (void)setAcEnable:(nullable NSNumber<SDLBool> *)acEnable {
+ [store sdl_setObject:acEnable forName:SDLNameAcEnable];
+}
+
+- (nullable NSNumber<SDLBool> *)acEnable {
+ return [store sdl_objectForName:SDLNameAcEnable];
+}
+
+- (void)setCirculateAirEnable:(nullable NSNumber<SDLBool> *)circulateAirEnable {
+ [store sdl_setObject:circulateAirEnable forName:SDLNameCirculateAirEnable];
+}
+
+- (nullable NSNumber<SDLBool> *)circulateAirEnable {
+ return [store sdl_objectForName:SDLNameCirculateAirEnable];
+}
+
+- (void)setAutoModeEnable:(nullable NSNumber<SDLBool> *)autoModeEnable {
+ [store sdl_setObject:autoModeEnable forName:SDLNameAutoModeEnable];
+}
+
+- (nullable NSNumber<SDLBool> *)autoModeEnable {
+ return [store sdl_objectForName:SDLNameAutoModeEnable];
+}
+
+- (void)setDefrostZone:(nullable SDLDefrostZone)defrostZone {
+ [store sdl_setObject:defrostZone forName:SDLNameDefrostZone];
+}
+
+- (nullable SDLDefrostZone)defrostZone {
+ return [store sdl_objectForName:SDLNameDefrostZone];
+}
+
+- (void)setDualModeEnable:(nullable NSNumber<SDLBool> *)dualModeEnable {
+ [store sdl_setObject:dualModeEnable forName:SDLNameDualModeEnable];
+}
+
+- (nullable NSNumber<SDLBool> *)dualModeEnable {
+ return [store sdl_objectForName:SDLNameDualModeEnable];
+}
+
+- (void)setAcMaxEnable:(nullable NSNumber<SDLBool> *)acMaxEnable {
+ [store sdl_setObject:acMaxEnable forName:SDLNameAcMaxEnable];
+}
+
+- (nullable NSNumber<SDLBool> *)acMaxEnable {
+ return [store sdl_objectForName:SDLNameAcMaxEnable];
+}
+
+- (void)setVentilationMode:(nullable SDLVentilationMode)ventilationMode {
+ [store sdl_setObject:ventilationMode forName:SDLNameVentilationMode];
+}
+
+- (nullable SDLVentilationMode)ventilationMode {
+ return [store sdl_objectForName:SDLNameVentilationMode];
+}
+
+@end
+
+NS_ASSUME_NONNULL_END
diff --git a/SmartDeviceLink/SDLDefrostZone.h b/SmartDeviceLink/SDLDefrostZone.h
new file mode 100644
index 000000000..304ec1731
--- /dev/null
+++ b/SmartDeviceLink/SDLDefrostZone.h
@@ -0,0 +1,33 @@
+//
+// SDLDefrostZone.h
+//
+
+#import "SDLEnum.h"
+
+/**
+ * Enumeration listing possible defrost zones.
+ *
+ * @since SDL 2.0
+ */
+typedef SDLEnum SDLDefrostZone SDL_SWIFT_ENUM;
+
+/**
+ * @abstract A SDLDefrostZone with the value of *FRONT*
+ */
+extern SDLDefrostZone const SDLDefrostZoneFront;
+
+
+/**
+ * @abstract A SDLDefrostZone with the value of *REAR*
+ */
+extern SDLDefrostZone const SDLDefrostZoneRear;
+
+/**
+ * @abstract A SDLDefrostZone with the value of *All*
+ */
+extern SDLDefrostZone const SDLDefrostZoneALL;
+
+/**
+ * @abstract A SDLDefrostZone with the value of *None*
+ */
+extern SDLDefrostZone const SDLDefrostZoneNone;
diff --git a/SmartDeviceLink/SDLDefrostZone.m b/SmartDeviceLink/SDLDefrostZone.m
new file mode 100644
index 000000000..3240621f9
--- /dev/null
+++ b/SmartDeviceLink/SDLDefrostZone.m
@@ -0,0 +1,10 @@
+//
+// SDLDefrostZone.m
+//
+
+#import "SDLDefrostZone.h"
+
+SDLDefrostZone const SDLDefrostZoneFront = @"FRONT";
+SDLDefrostZone const SDLDefrostZoneRear = @"REAR";
+SDLDefrostZone const SDLDefrostZoneALL = @"ALL";
+SDLDefrostZone const SDLDefrostZoneNone = @"NONE";
diff --git a/SmartDeviceLink/SDLFunctionID.m b/SmartDeviceLink/SDLFunctionID.m
index 58ff9c479..831972c6a 100644
--- a/SmartDeviceLink/SDLFunctionID.m
+++ b/SmartDeviceLink/SDLFunctionID.m
@@ -28,7 +28,7 @@ NS_ASSUME_NONNULL_BEGIN
if (!self) {
return nil;
}
-
+
self.functionIds = @{
@0: SDLNameReserved,
@1: SDLNameRegisterAppInterface,
@@ -71,6 +71,9 @@ NS_ASSUME_NONNULL_BEGIN
@38: SDLNameSystemRequest,
@39: SDLNameSendLocation,
@40: SDLNameDialNumber,
+ @41: SDLNameButtonPress,
+ @43: SDLNameGetInteriorVehicleData,
+ @44: SDLNameSetInteriorVehicleData,
@45: SDLNameGetWaypoints,
@46: SDLNameSubscribeWaypoints,
@47: SDLNameUnsubscribeWaypoints,
@@ -90,13 +93,14 @@ NS_ASSUME_NONNULL_BEGIN
@32780: SDLNameOnTouchEvent,
@32781: SDLNameOnSystemRequest,
@32782: SDLNameOnHashChange,
+ @32783: SDLNameOnInteriorVehicleData,
@32784: SDLNameOnWaypointChange,
@65536: SDLNameEncodedSyncPData,
@65537: SDLNameSyncPData,
@98304: SDLNameOnEncodedSyncPData,
@98305: SDLNameOnSyncPData
};
-
+
return self;
}
diff --git a/SmartDeviceLink/SDLGetInteriorVehicleData.h b/SmartDeviceLink/SDLGetInteriorVehicleData.h
new file mode 100644
index 000000000..f87f5bf81
--- /dev/null
+++ b/SmartDeviceLink/SDLGetInteriorVehicleData.h
@@ -0,0 +1,29 @@
+//
+// SDLGetInteriorVehicleData.h
+//
+
+#import "SDLRPCRequest.h"
+#import "SDLModuleType.h"
+
+NS_ASSUME_NONNULL_BEGIN
+
+@interface SDLGetInteriorVehicleData : SDLRPCRequest
+
+/**
+ * The type of a RC module to retrieve module data from the vehicle.
+ * In the future, this should be the Identification of a module.
+ *
+ */
+@property (strong, nonatomic) SDLModuleType moduleType;
+
+/**
+ * If subscribe is true, the head unit will register onInteriorVehicleData notifications for the requested moduelType.
+ * If subscribe is false, the head unit will unregister onInteriorVehicleData notifications for the requested moduelType.
+ *
+ * optional, Boolean, default Value = false
+ */
+@property (strong, nonatomic) NSNumber<SDLBool> *subscribe;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff --git a/SmartDeviceLink/SDLGetInteriorVehicleData.m b/SmartDeviceLink/SDLGetInteriorVehicleData.m
new file mode 100644
index 000000000..70c85f869
--- /dev/null
+++ b/SmartDeviceLink/SDLGetInteriorVehicleData.m
@@ -0,0 +1,44 @@
+//
+// SDLGetInteriorVehicleData.m
+//
+
+#import "SDLGetInteriorVehicleData.h"
+#import "SDLNames.h"
+#import "NSMutableDictionary+Store.h"
+
+NS_ASSUME_NONNULL_BEGIN
+
+@implementation SDLGetInteriorVehicleData
+
+- (instancetype)init {
+ if (self = [super initWithName:SDLNameGetInteriorVehicleData]) {
+ }
+ return self;
+}
+
+- (instancetype)initWithDictionary:(NSMutableDictionary *)dict {
+ if (self = [super initWithDictionary:dict]) {
+ }
+ return self;
+}
+
+- (void)setModuleType:(SDLModuleType )moduleType {
+ [parameters sdl_setObject:moduleType forName:SDLNameModuleType];
+}
+
+- (SDLModuleType)moduleType {
+ return [parameters sdl_objectForName:SDLNameModuleType];
+}
+
+
+- (void)setSubscribe:(NSNumber<SDLBool> *)subscribe {
+ [parameters sdl_setObject:subscribe forName:SDLNameSubscribe];
+}
+
+- (NSNumber<SDLBool> *)subscribe {
+ return [parameters sdl_objectForName:SDLNameSubscribe];
+}
+
+@end
+
+NS_ASSUME_NONNULL_END
diff --git a/SmartDeviceLink/SDLGetInteriorVehicleDataResponse.h b/SmartDeviceLink/SDLGetInteriorVehicleDataResponse.h
new file mode 100644
index 000000000..daae3962b
--- /dev/null
+++ b/SmartDeviceLink/SDLGetInteriorVehicleDataResponse.h
@@ -0,0 +1,26 @@
+//
+// SDLGetInteriorVehicleDataResponse.h
+//
+
+#import "SDLRPCResponse.h"
+@class SDLModuleData;
+
+NS_ASSUME_NONNULL_BEGIN
+
+@interface SDLGetInteriorVehicleDataResponse : SDLRPCResponse
+
+@property (strong, nonatomic) SDLModuleData *moduleData;
+
+/**
+ * @abstract It is a conditional-mandatory parameter: must be returned in case "subscribe" parameter was present in the related request.
+ * if "true" - the "moduleType" from request is successfully subscribed and the head unit will send onInteriorVehicleData notifications for the moduleType.
+ * if "false" - the "moduleType" from request is either unsubscribed or failed to subscribe.
+ *
+ * Optional, Boolean
+ */
+
+@property (nullable, strong, nonatomic) NSNumber<SDLBool> *isSubscribed;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff --git a/SmartDeviceLink/SDLGetInteriorVehicleDataResponse.m b/SmartDeviceLink/SDLGetInteriorVehicleDataResponse.m
new file mode 100644
index 000000000..f2e4570e4
--- /dev/null
+++ b/SmartDeviceLink/SDLGetInteriorVehicleDataResponse.m
@@ -0,0 +1,40 @@
+//
+// SDLGetInteriorVehicleDataResponse.m
+//
+
+#import "SDLGetInteriorVehicleDataResponse.h"
+#import "SDLModuleData.h"
+#import "SDLNames.h"
+#import "NSMutableDictionary+Store.h"
+
+NS_ASSUME_NONNULL_BEGIN
+
+
+@implementation SDLGetInteriorVehicleDataResponse
+
+- (instancetype)init {
+ if (self = [super initWithName:SDLNameGetInteriorVehicleData]) {
+ }
+ return self;
+}
+
+- (void)setModuleData:(SDLModuleData *)moduleData {
+ [parameters sdl_setObject:moduleData forName:SDLNameModuleData];
+}
+
+- (SDLModuleData *)moduleData {
+ return [parameters sdl_objectForName:SDLNameModuleData];
+}
+
+- (void)setIsSubscribed:(nullable NSNumber<SDLBool> *)isSubscribed {
+ [parameters sdl_setObject:isSubscribed forName:SDLNameIsSubscribed];
+}
+
+- (nullable NSNumber<SDLBool> *)isSubscribed {
+ return [parameters sdl_objectForName:SDLNameIsSubscribed];
+}
+
+@end
+
+NS_ASSUME_NONNULL_END
+
diff --git a/SmartDeviceLink/SDLModuleData.h b/SmartDeviceLink/SDLModuleData.h
new file mode 100644
index 000000000..60a3be863
--- /dev/null
+++ b/SmartDeviceLink/SDLModuleData.h
@@ -0,0 +1,27 @@
+//
+// SDLModuleData.h
+//
+
+#import "SDLRPCMessage.h"
+#import "SDLModuleType.h"
+
+NS_ASSUME_NONNULL_BEGIN
+
+@class SDLRadioControlData;
+@class SDLClimateControlData;
+
+@interface SDLModuleData : SDLRPCStruct
+
+/**
+ * The moduleType indicates which type of data should be changed
+ * and identifies which data object exists in this struct.
+ * For example, if the moduleType is CLIMATE then a "climateControlData" should exist
+ */
+@property (strong) SDLModuleType moduleType;
+
+@property (nullable, strong, nonatomic) SDLRadioControlData *radioControlData;
+
+@property (nullable, strong, nonatomic) SDLClimateControlData *climateControlData;
+
+@end
+NS_ASSUME_NONNULL_END
diff --git a/SmartDeviceLink/SDLModuleData.m b/SmartDeviceLink/SDLModuleData.m
new file mode 100644
index 000000000..e8bc4ec9b
--- /dev/null
+++ b/SmartDeviceLink/SDLModuleData.m
@@ -0,0 +1,40 @@
+//
+// SDLModuleData.m
+//
+
+#import "SDLModuleData.h"
+#import "SDLNames.h"
+#import "SDLClimateControlData.h"
+#import "SDLRadioControlData.h"
+#import "NSMutableDictionary+Store.h"
+
+NS_ASSUME_NONNULL_BEGIN
+
+@implementation SDLModuleData
+
+- (void)setModuleType:(SDLModuleType)moduleType {
+ [store sdl_setObject:moduleType forName:SDLNameModuleType];
+}
+
+- (SDLModuleType)moduleType {
+ return [store sdl_objectForName:SDLNameModuleType];
+}
+
+- (void)setRadioControlData:(nullable SDLRadioControlData *)radioControlData {
+ [store sdl_setObject:radioControlData forName:SDLNameRadioControlData];
+}
+
+- (nullable SDLRadioControlData *)radioControlData {
+ return [store sdl_objectForName:SDLNameRadioControlData];
+}
+
+- (void)setClimateControlData:(nullable SDLClimateControlData *)climateControlData {
+ [store sdl_setObject:climateControlData forName:SDLNameClimateControlData];
+}
+
+- (nullable SDLClimateControlData *)climateControlData {
+ return [store sdl_objectForName:SDLNameClimateControlData];
+}
+@end
+
+NS_ASSUME_NONNULL_END
diff --git a/SmartDeviceLink/SDLModuleType.h b/SmartDeviceLink/SDLModuleType.h
new file mode 100644
index 000000000..e0c02a844
--- /dev/null
+++ b/SmartDeviceLink/SDLModuleType.h
@@ -0,0 +1,18 @@
+//
+// SDLModuleType.h
+//
+
+#import "SDLEnum.h"
+
+typedef SDLEnum SDLModuleType SDL_SWIFT_ENUM;
+
+
+/**
+ * @abstract A SDLModuleType with the value of *CLIMATE*
+ */
+extern SDLModuleType const SDLModuleTypeClimate;
+
+/**
+ * @abstract A SDLModuleType with the value of *RADIO*
+ */
+extern SDLModuleType const SDLModuleTypeRadio;
diff --git a/SmartDeviceLink/SDLModuleType.m b/SmartDeviceLink/SDLModuleType.m
new file mode 100644
index 000000000..30744e0c2
--- /dev/null
+++ b/SmartDeviceLink/SDLModuleType.m
@@ -0,0 +1,8 @@
+//
+// SDLModuleType.m
+//
+
+#import "SDLModuleType.h"
+
+SDLModuleType const SDLModuleTypeClimate = @"CLIMATE";
+SDLModuleType const SDLModuleTypeRadio = @"RADIO";
diff --git a/SmartDeviceLink/SDLNames.h b/SmartDeviceLink/SDLNames.h
index c1f69f9ce..aa4727337 100644
--- a/SmartDeviceLink/SDLNames.h
+++ b/SmartDeviceLink/SDLNames.h
@@ -8,6 +8,10 @@ NS_ASSUME_NONNULL_BEGIN
typedef NSString* SDLName SDL_SWIFT_ENUM;
+extern SDLName const SDLNameAcEnable;
+extern SDLName const SDLNameAcEnableAvailable;
+extern SDLName const SDLNameAcMaxEnable;
+extern SDLName const SDLNameAcMaxEnableAvailable;
extern SDLName const SDLNameAccelerationPedalPosition;
extern SDLName const SDLNameActual;
extern SDLName const SDLNameAddCommand;
@@ -39,7 +43,12 @@ extern SDLName const SDLNameAudioPassThruDisplayText2;
extern SDLName const SDLNameAudioStreamingState;
extern SDLName const SDLNameAudioType;
extern SDLName const SDLNameAutoCompleteText;
+extern SDLName const SDLNameAutoModeEnable;
+extern SDLName const SDLNameAutoModeEnableAvailable;
extern SDLName const SDLNameAuxECallNotificationStatus;
+extern SDLName const SDLNameAvailableHDs;
+extern SDLName const SDLNameAvailableHDsAvailable;
+extern SDLName const SDLNameBand;
extern SDLName const SDLNameBatteryLevelStatus;
extern SDLName const SDLNameBeltStatus;
extern SDLName const SDLNameBitsPerSample;
@@ -49,6 +58,7 @@ extern SDLName const SDLNameBulkData;
extern SDLName const SDLNameButtonCapabilities;
extern SDLName const SDLNameButtonEventMode;
extern SDLName const SDLNameButtonName;
+extern SDLName const SDLNameButtonPress;
extern SDLName const SDLNameButtonPressMode;
extern SDLName const SDLNameCoordinate;
extern SDLName const SDLNameCallActive;
@@ -58,6 +68,10 @@ extern SDLName const SDLNameChangeRegistration;
extern SDLName const SDLNameCharacterSet;
extern SDLName const SDLNameChoiceId;
extern SDLName const SDLNameChoiceSet;
+extern SDLName const SDLNameCirculateAirEnable;
+extern SDLName const SDLNameCirculateAirEnableAvailable;
+extern SDLName const SDLNameClimateControlData;
+extern SDLName const SDLNameClimateControlCapabilities;
extern SDLName const SDLNameClusterModes;
extern SDLName const SDLNameClusterModeStatus;
extern SDLName const SDLNameCommandIcon;
@@ -67,17 +81,23 @@ extern SDLName const SDLNameCorrelationId;
extern SDLName const SDLNameCountryCode;
extern SDLName const SDLNameCountryName;
extern SDLName const SDLNameCreateInteractionChoiceSet;
+extern SDLName const SDLNameCT;
+extern SDLName const SDLNameCurrentTemperature;
extern SDLName const SDLNameCustomButtonId;
extern SDLName const SDLNameCustomPresets;
extern SDLName const SDLNameData;
extern SDLName const SDLNameDataResult;
extern SDLName const SDLNameDataType;
extern SDLName const SDLNameDay;
+extern SDLName const SDLNameDefrostZone;
+extern SDLName const SDLNameDefrostZoneAvailable;
extern SDLName const SDLNameDeleteCommand;
extern SDLName const SDLNameDeleteFile;
extern SDLName const SDLNameDeleteInteractionChoiceSet;
extern SDLName const SDLNameDeleteSubMenu;
extern SDLName const SDLNameDeliveryMode;
+extern SDLName const SDLNameDesiredTemperature;
+extern SDLName const SDLNameDesiredTemperatureAvailable;
extern SDLName const SDLNameDeviceInfo;
extern SDLName const SDLNameDeviceStatus;
extern SDLName const SDLNameDiagnosticMessage;
@@ -104,6 +124,8 @@ extern SDLName const SDLNameDriverKneeAirbagDeployed;
extern SDLName const SDLNameDriverSideAirbagDeployed;
extern SDLName const SDLNameDTC;
extern SDLName const SDLNameDTCMask;
+extern SDLName const SDLNameDualModeEnable;
+extern SDLName const SDLNameDualModeEnableAvailable;
extern SDLName const SDLNameDuration;
extern SDLName const SDLNameE911Override;
extern SDLName const SDLNameECallConfirmationStatus;
@@ -121,16 +143,21 @@ extern SDLName const SDLNameEngineTorque;
extern SDLName const SDLNameETA;
extern SDLName const SDLNameEvent;
extern SDLName const SDLNameExternalTemperature;
+extern SDLName const SDLNameFanSpeed;
+extern SDLName const SDLNameFanSpeedAvailable;
extern SDLName const SDLNameFilename;
extern SDLName const SDLNameFilenames;
extern SDLName const SDLNameFileType;
extern SDLName const SDLNameFirmwareRevision;
+extern SDLName const SDLNameFrequencyInteger;
+extern SDLName const SDLNameFrequencyFraction;
extern SDLName const SDLNameFuelCutoffStatus;
extern SDLName const SDLNameFuelLevel;
extern SDLName const SDLNameFuelLevelState;
extern SDLName const SDLNameFuelMaintenanceMode;
extern SDLName const SDLNameGenericResponse;
extern SDLName const SDLNameGetDTCs;
+extern SDLName const SDLNameGetInteriorVehicleData;
extern SDLName const SDLNameGetSystemCapability;
extern SDLName const SDLNameGetVehicleData;
extern SDLName const SDLNameGetWaypoints;
@@ -141,6 +168,8 @@ extern SDLName const SDLNameGraphicSupported;
extern SDLName const SDLNameHardware;
extern SDLName const SDLNameHashId;
extern SDLName const SDLNameHDOP;
+extern SDLName const SDLNameHdChannel;
+extern SDLName const SDLNameHdChannelAvailable;
extern SDLName const SDLNameHeading;
extern SDLName const SDLNameHeadLampStatus;
extern SDLName const SDLNameHelpPrompt;
@@ -174,6 +203,7 @@ extern SDLName const SDLNameInteractionLayout;
extern SDLName const SDLNameInteractionMode;
extern SDLName const SDLNameIsHighlighted;
extern SDLName const SDLNameIsMediaApplication;
+extern SDLName const SDLNameIsSubscribed;
extern SDLName const SDLNameKeyboardLayout;
extern SDLName const SDLNameKeyboardProperties;
extern SDLName const SDLNameKeypressMode;
@@ -206,7 +236,6 @@ extern SDLName const SDLNameMajorVersion;
extern SDLName const SDLNameMake;
extern SDLName const SDLNameManeuverComplete;
extern SDLName const SDLNameManualTextEntry;
-extern SDLName const SDLNameMaxBitrate;
extern SDLName const SDLNameMaxDuration;
extern SDLName const SDLNameMaximumChangeVelocity;
extern SDLName const SDLNameMaxNumberRFCOMMPorts;
@@ -230,6 +259,9 @@ extern SDLName const SDLNameMinorVersion;
extern SDLName const SDLNameMinute;
extern SDLName const SDLNameMinutes;
extern SDLName const SDLNameModel;
+extern SDLName const SDLNameModuleData;
+extern SDLName const SDLNameModuleName;
+extern SDLName const SDLNameModuleType;
extern SDLName const SDLNameModelYear;
extern SDLName const SDLNameMonoAudioOutputMuted;
extern SDLName const SDLNameMonth;
@@ -260,6 +292,7 @@ extern SDLName const SDLNameOnDriverDistraction;
extern SDLName const SDLNameOnEncodedSyncPData;
extern SDLName const SDLNameOnHashChange;
extern SDLName const SDLNameOnHMIStatus;
+extern SDLName const SDLNameOnInteriorVehicleData;
extern SDLName const SDLNameOnKeyboardInput;
extern SDLName const SDLNameOnLanguageChange;
extern SDLName const SDLNameOnLockScreenStatus;
@@ -296,13 +329,13 @@ extern SDLName const SDLNamePhoneCall;
extern SDLName const SDLNamePhoneCapability;
extern SDLName const SDLNamePhoneNumber;
extern SDLName const SDLNamePhoneRoaming;
+extern SDLName const SDLNamePI;
extern SDLName const SDLNamePlayTone;
extern SDLName const SDLNamePosition;
extern SDLName const SDLNamePostalCode;
extern SDLName const SDLNamePowerModeActive;
extern SDLName const SDLNamePowerModeQualificationStatus;
extern SDLName const SDLNamePowerModeStatus;
-extern SDLName const SDLNamePreferredResolution;
extern SDLName const SDLNamePrerecordedSpeech;
extern SDLName const SDLNamePresetBankCapabilities;
extern SDLName const SDLNamePressAvailable;
@@ -312,12 +345,24 @@ extern SDLName const SDLNamePrimaryAudioSource;
extern SDLName const SDLNamePRNDL;
extern SDLName const SDLNameProgressIndicator;
extern SDLName const SDLNameProperties;
+extern SDLName const SDLNamePS;
+extern SDLName const SDLNamePTY;
extern SDLName const SDLNamePutFile;
+extern SDLName const SDLNameRadioBandAvailable;
+extern SDLName const SDLNameRadioControlCapabilities;
+extern SDLName const SDLNameRadioControlData;
+extern SDLName const SDLNameRadioEnable;
+extern SDLName const SDLNameRadioEnableAvailable;
+extern SDLName const SDLNameRadioFrequencyAvailable;
+extern SDLName const SDLNameRdsData;
+extern SDLName const SDLNameRdsDataAvailable;
extern SDLName const SDLNameReadDID;
extern SDLName const SDLNameRearLeftDoorAjar;
extern SDLName const SDLNameRearRightDoorAjar;
extern SDLName const SDLNameReason;
+extern SDLName const SDLNameREG;
extern SDLName const SDLNameRegisterAppInterface;
+extern SDLName const SDLNameRemoteControlCapability;
extern SDLName const SDLNameRequest;
extern SDLName const SDLNameRequestType;
extern SDLName const SDLNameReserved;
@@ -337,6 +382,7 @@ extern SDLName const SDLNameRolloverEvent;
extern SDLName const SDLNameRows;
extern SDLName const SDLNameRPCName;
extern SDLName const SDLNameRPM;
+extern SDLName const SDLNameRT;
extern SDLName const SDLNameSamplingRate;
extern SDLName const SDLNameSatellites;
extern SDLName const SDLNameScreenParams;
@@ -354,12 +400,17 @@ extern SDLName const SDLNameSendLocationEnabled;
extern SDLName const SDLNameSetAppIcon;
extern SDLName const SDLNameSetDisplayLayout;
extern SDLName const SDLNameSetGlobalProperties;
+extern SDLName const SDLNameSetInteriorVehicleData;
extern SDLName const SDLNameSetMediaClockTimer;
extern SDLName const SDLNameShortPress;
extern SDLName const SDLNameShortPressAvailable;
extern SDLName const SDLNameShow;
extern SDLName const SDLNameShowConstantTBT;
extern SDLName const SDLNameSignalLevelStatus;
+extern SDLName const SDLNameSignalChangeThreshold;
+extern SDLName const SDLNameSignalChangeThresholdAvailable;
+extern SDLName const SDLNameSignalStrength;
+extern SDLName const SDLNameSignalStrengthAvailable;
extern SDLName const SDLNameSlider;
extern SDLName const SDLNameSliderFooter;
extern SDLName const SDLNameSliderHeader;
@@ -373,6 +424,7 @@ extern SDLName const SDLNameSpeechCapabilities;
extern SDLName const SDLNameSpeed;
extern SDLName const SDLNameStartTime;
extern SDLName const SDLNameState;
+extern SDLName const SDLNameStateAvailable;
extern SDLName const SDLNameStateOfCharge;
extern SDLName const SDLNameStatus;
extern SDLName const SDLNameStatusBar;
@@ -387,7 +439,6 @@ extern SDLName const SDLNameSubscribeWaypoints;
extern SDLName const SDLNameSubThoroughfare;
extern SDLName const SDLNameSuccess;
extern SDLName const SDLNameSupportedDiagnosticModes;
-extern SDLName const SDLNameSupportedFormats;
extern SDLName const SDLNameSyncFileName;
extern SDLName const SDLNameSyncMessageVersion;
extern SDLName const SDLNameSyncPData;
@@ -398,6 +449,7 @@ extern SDLName const SDLNameSystemContext;
extern SDLName const SDLNameSystemFile;
extern SDLName const SDLNameSystemRequest;
extern SDLName const SDLNameSystemSoftwareVersion;
+extern SDLName const SDLNameTA;
extern SDLName const SDLNameTargetId;
extern SDLName const SDLNameTemplatesAvailable;
extern SDLName const SDLNameTertiaryText;
@@ -414,6 +466,7 @@ extern SDLName const SDLNameTimezoneMinuteOffset;
extern SDLName const SDLNameTirePressure;
extern SDLName const SDLNameTotalDistance;
extern SDLName const SDLNameTouchEventAvailable;
+extern SDLName const SDLNameTP;
extern SDLName const SDLNameTriggerSource;
extern SDLName const SDLNameTrim;
extern SDLName const SDLNameTryAgainTime;
@@ -423,6 +476,7 @@ extern SDLName const SDLNameTTSName;
extern SDLName const SDLNameTurnIcon;
extern SDLName const SDLNameTurnList;
extern SDLName const SDLNameType;
+extern SDLName const SDLNameUnit;
extern SDLName const SDLNameUnregisterAppInterface;
extern SDLName const SDLNameUnsubscribe;
extern SDLName const SDLNameUnsubscribeButton;
@@ -444,10 +498,8 @@ extern SDLName const SDLNameUTCYear;
extern SDLName const SDLNameValue;
extern SDLName const SDLNameVDOP;
extern SDLName const SDLNameVehicleType;
-extern SDLName const SDLNameVideoCodec;
-extern SDLName const SDLNameVideoProtocol;
-extern SDLName const SDLNameVideoStreaming;
-extern SDLName const SDLNameVideoStreamingCapability;
+extern SDLName const SDLNameVentilationMode;
+extern SDLName const SDLNameVentilationModeAvailable;
extern SDLName const SDLNameVIN;
extern SDLName const SDLNameVoiceRecognitionOn;
extern SDLName const SDLNameVRCapabilities;
diff --git a/SmartDeviceLink/SDLNames.m b/SmartDeviceLink/SDLNames.m
index 1962fd4d6..a92f524b2 100644
--- a/SmartDeviceLink/SDLNames.m
+++ b/SmartDeviceLink/SDLNames.m
@@ -6,6 +6,10 @@
NS_ASSUME_NONNULL_BEGIN
+SDLName const SDLNameAcEnable = @"acEnable";
+SDLName const SDLNameAcEnableAvailable = @"acEnableAvailable";
+SDLName const SDLNameAcMaxEnable = @"acMaxEnable";
+SDLName const SDLNameAcMaxEnableAvailable = @"acMaxEnableAvailable";
SDLName const SDLNameAccelerationPedalPosition = @"accPedalPosition";
SDLName const SDLNameActual = @"actual";
SDLName const SDLNameAddCommand = @"AddCommand";
@@ -37,7 +41,12 @@ SDLName const SDLNameAudioPassThruDisplayText2 = @"audioPassThruDisplayText2";
SDLName const SDLNameAudioStreamingState = @"audioStreamingState";
SDLName const SDLNameAudioType = @"audioType";
SDLName const SDLNameAutoCompleteText = @"autoCompleteText";
+SDLName const SDLNameAutoModeEnable = @"autoModeEnable";
+SDLName const SDLNameAutoModeEnableAvailable = @"autoModeEnableAvailable";
SDLName const SDLNameAuxECallNotificationStatus = @"auxECallNotificationStatus";
+SDLName const SDLNameAvailableHDs = @"availableHDs";
+SDLName const SDLNameAvailableHDsAvailable = @"availableHDsAvailable";
+SDLName const SDLNameBand = @"band";
SDLName const SDLNameBatteryLevelStatus = @"battLevelStatus";
SDLName const SDLNameBeltStatus = @"beltStatus";
SDLName const SDLNameBitsPerSample = @"bitsPerSample";
@@ -47,6 +56,7 @@ SDLName const SDLNameBulkData = @"bulkData";
SDLName const SDLNameButtonCapabilities = @"buttonCapabilities";
SDLName const SDLNameButtonEventMode = @"buttonEventMode";
SDLName const SDLNameButtonName = @"buttonName";
+SDLName const SDLNameButtonPress = @"buttonPress";
SDLName const SDLNameButtonPressMode = @"buttonPressMode";
SDLName const SDLNameCoordinate = @"c";
SDLName const SDLNameCallActive = @"callActive";
@@ -56,6 +66,10 @@ SDLName const SDLNameChangeRegistration = @"ChangeRegistration";
SDLName const SDLNameCharacterSet = @"characterSet";
SDLName const SDLNameChoiceId = @"choiceID";
SDLName const SDLNameChoiceSet = @"choiceSet";
+SDLName const SDLNameCirculateAirEnable = @"circulateAirEnableAvailable";
+SDLName const SDLNameCirculateAirEnableAvailable = @"circulateAirEnableAvailable";
+SDLName const SDLNameClimateControlData = @"climateControlData";
+SDLName const SDLNameClimateControlCapabilities = @"climateControlCapabilities";
SDLName const SDLNameClusterModes = @"clusterModes";
SDLName const SDLNameClusterModeStatus = @"clusterModeStatus";
SDLName const SDLNameCommandIcon = @"cmdIcon";
@@ -65,17 +79,23 @@ SDLName const SDLNameCorrelationId = @"correlationID";
SDLName const SDLNameCountryCode = @"countryCode";
SDLName const SDLNameCountryName = @"countryName";
SDLName const SDLNameCreateInteractionChoiceSet = @"CreateInteractionChoiceSet";
+SDLName const SDLNameCT = @"CT";
+SDLName const SDLNameCurrentTemperature = @"currentTemperature";
SDLName const SDLNameCustomButtonId = @"customButtonID";
SDLName const SDLNameCustomPresets = @"customPresets";
SDLName const SDLNameData = @"data";
SDLName const SDLNameDataResult = @"dataResult";
SDLName const SDLNameDataType = @"dataType";
SDLName const SDLNameDay = @"day";
+SDLName const SDLNameDefrostZone = @"defrostZone";
+SDLName const SDLNameDefrostZoneAvailable = @"defrostZoneAvailable";
SDLName const SDLNameDeleteCommand = @"DeleteCommand";
SDLName const SDLNameDeleteFile = @"DeleteFile";
SDLName const SDLNameDeleteInteractionChoiceSet = @"DeleteInteractionChoiceSet";
SDLName const SDLNameDeleteSubMenu = @"DeleteSubMenu";
SDLName const SDLNameDeliveryMode = @"deliveryMode";
+SDLName const SDLNameDesiredTemperature = @"desiredTemperature";
+SDLName const SDLNameDesiredTemperatureAvailable = @"desiredTemperatureAvailable";
SDLName const SDLNameDeviceInfo = @"deviceInfo";
SDLName const SDLNameDeviceStatus = @"deviceStatus";
SDLName const SDLNameDiagnosticMessage = @"DiagnosticMessage";
@@ -101,6 +121,8 @@ SDLName const SDLNameDriverKneeAirbagDeployed = @"driverKneeAirbagDeployed";
SDLName const SDLNameDriverSideAirbagDeployed = @"driverSideAirbagDeployed";
SDLName const SDLNameDTC = @"dtc";
SDLName const SDLNameDTCMask = @"dtcMask";
+SDLName const SDLNameDualModeEnable = @"dualModeEnable";
+SDLName const SDLNameDualModeEnableAvailable = @"dualModeEnableAvailable";
SDLName const SDLNameDuration = @"duration";
SDLName const SDLNameE911Override = @"e911Override";
SDLName const SDLNameECallConfirmationStatus = @"eCallConfirmationStatus";
@@ -118,16 +140,21 @@ SDLName const SDLNameEngineTorque = @"engineTorque";
SDLName const SDLNameETA = @"eta";
SDLName const SDLNameEvent = @"event";
SDLName const SDLNameExternalTemperature = @"externalTemperature";
+SDLName const SDLNameFanSpeed = @"fanSpeed";
+SDLName const SDLNameFanSpeedAvailable = @"fanSpeedAvailable";
SDLName const SDLNameFilename = @"fileName";
SDLName const SDLNameFilenames = @"filenames";
SDLName const SDLNameFileType = @"fileType";
SDLName const SDLNameFirmwareRevision = @"firmwareRev";
+SDLName const SDLNameFrequencyInteger = @"frequencyInteger";
+SDLName const SDLNameFrequencyFraction = @"frequencyFraction";
SDLName const SDLNameFuelCutoffStatus = @"fuelCutoffStatus";
SDLName const SDLNameFuelLevel = @"fuelLevel";
SDLName const SDLNameFuelLevelState = @"fuelLevel_State";
SDLName const SDLNameFuelMaintenanceMode = @"fuelMaintenanceMode";
SDLName const SDLNameGenericResponse = @"GenericResponse";
SDLName const SDLNameGetDTCs = @"GetDTCs";
+SDLName const SDLNameGetInteriorVehicleData = @"GetInteriorVehicleData";
SDLName const SDLNameGetSystemCapability = @"GetSystemCapability";
SDLName const SDLNameGetVehicleData = @"GetVehicleData";
SDLName const SDLNameGetWaypoints = @"GetWayPoints";
@@ -137,6 +164,8 @@ SDLName const SDLNameGraphic = @"graphic";
SDLName const SDLNameGraphicSupported = @"graphicSupported";
SDLName const SDLNameHardware = @"hardware";
SDLName const SDLNameHashId = @"hashID";
+SDLName const SDLNameHdChannel = @"hdChannel";
+SDLName const SDLNameHdChannelAvailable = @"hdChannelAvailable";
SDLName const SDLNameHDOP = @"hdop";
SDLName const SDLNameHeading = @"heading";
SDLName const SDLNameHeadLampStatus = @"headLampStatus";
@@ -172,6 +201,7 @@ SDLName const SDLNameInteractionLayout = @"interactionLayout";
SDLName const SDLNameInteractionMode = @"interactionMode";
SDLName const SDLNameIsHighlighted = @"isHighlighted";
SDLName const SDLNameIsMediaApplication = @"isMediaApplication";
+SDLName const SDLNameIsSubscribed = @"isSubscribed";
SDLName const SDLNameKeyboardLayout = @"keyboardLayout";
SDLName const SDLNameKeyboardProperties = @"keyboardProperties";
SDLName const SDLNameKeypressMode = @"keypressMode";
@@ -204,7 +234,6 @@ SDLName const SDLNameMajorVersion = @"majorVersion";
SDLName const SDLNameMake = @"make";
SDLName const SDLNameManeuverComplete = @"maneuverComplete";
SDLName const SDLNameManualTextEntry = @"manualTextEntry";
-SDLName const SDLNameMaxBitrate = @"maxBitrate";
SDLName const SDLNameMaxDuration = @"maxDuration";
SDLName const SDLNameMaximumChangeVelocity = @"maximumChangeVelocity";
SDLName const SDLNameMaxNumberRFCOMMPorts = @"maxNumberRFCOMMPorts";
@@ -231,6 +260,9 @@ SDLName const SDLNameModel = @"model";
SDLName const SDLNameModelYear = @"modelYear";
SDLName const SDLNameMonoAudioOutputMuted = @"monoAudioOutputMuted";
SDLName const SDLNameMonth = @"month";
+SDLName const SDLNameModuleData = @"moduleData";
+SDLName const SDLNameModuleName = @"moduleName";
+SDLName const SDLNameModuleType = @"moduleType";
SDLName const SDLNameMultipleEvents = @"multipleEvents";
SDLName const SDLNameMultiTouchAvailable = @"multiTouchAvailable";
SDLName const SDLNameMuteAudio = @"muteAudio";
@@ -258,6 +290,7 @@ SDLName const SDLNameOnDriverDistraction = @"OnDriverDistraction";
SDLName const SDLNameOnEncodedSyncPData = @"OnEncodedSyncPData";
SDLName const SDLNameOnHashChange = @"OnHashChange";
SDLName const SDLNameOnHMIStatus = @"OnHMIStatus";
+SDLName const SDLNameOnInteriorVehicleData = @"OnInteriorVehicleData";
SDLName const SDLNameOnKeyboardInput = @"OnKeyboardInput";
SDLName const SDLNameOnLanguageChange = @"OnLanguageChange";
SDLName const SDLNameOnLockScreenStatus = @"OnLockScreenStatus";
@@ -294,13 +327,13 @@ SDLName const SDLNamePhoneCall = @"phoneCall";
SDLName const SDLNamePhoneCapability = @"phoneCapability";
SDLName const SDLNamePhoneNumber = @"phoneNumber";
SDLName const SDLNamePhoneRoaming = @"phoneRoaming";
+SDLName const SDLNamePI = @"PI";
SDLName const SDLNamePlayTone = @"playTone";
SDLName const SDLNamePosition = @"position";
SDLName const SDLNamePostalCode = @"postalCode";
SDLName const SDLNamePowerModeActive = @"powerModeActive";
SDLName const SDLNamePowerModeQualificationStatus = @"powerModeQualificationStatus";
SDLName const SDLNamePowerModeStatus = @"powerModeStatus";
-SDLName const SDLNamePreferredResolution = @"preferredResolution";
SDLName const SDLNamePrerecordedSpeech = @"prerecordedSpeech";
SDLName const SDLNamePresetBankCapabilities = @"presetBankCapabilities";
SDLName const SDLNamePressAvailable = @"pressAvailable";
@@ -310,16 +343,29 @@ SDLName const SDLNamePrimaryAudioSource = @"primaryAudioSource";
SDLName const SDLNamePRNDL = @"prndl";
SDLName const SDLNameProgressIndicator = @"progressIndicator";
SDLName const SDLNameProperties = @"properties";
+SDLName const SDLNamePS = @"PS";
+SDLName const SDLNamePTY = @"PTY";
SDLName const SDLNamePutFile = @"PutFile";
+SDLName const SDLNameRadioBandAvailable = @"radioBandAvailable";
+SDLName const SDLNameRadioControlCapabilities = @"radioControlCapabilities";
+SDLName const SDLNameRadioFrequencyAvailable = @"radioFrequencyAvailable";
+SDLName const SDLNameRadioControlData = @"radioControlData";
+SDLName const SDLNameRadioEnable = @"radioEnable";
+SDLName const SDLNameRadioEnableAvailable = @"radioEnableAvailable";
+SDLName const SDLNameRdsData = @"rdsData";
+SDLName const SDLNameRdsDataAvailable = @"rdsDataAvailable";
SDLName const SDLNameReadDID = @"ReadDID";
SDLName const SDLNameRearLeftDoorAjar = @"rearLeftDoorAjar";
SDLName const SDLNameRearRightDoorAjar = @"rearRightDoorAjar";
SDLName const SDLNameReason = @"reason";
+SDLName const SDLNameREG = @"REG";
SDLName const SDLNameRegisterAppInterface = @"RegisterAppInterface";
+SDLName const SDLNameRemoteControlCapability = @"remoteControlCapability";
SDLName const SDLNameRequest = @"request";
SDLName const SDLNameRequestType = @"requestType";
SDLName const SDLNameReserved = @"reserved";
SDLName const SDLNameResetGlobalProperties = @"ResetGlobalProperties";
+SDLName const SDLNameSetInteriorVehicleData = @"SetInteriorVehicleData";
SDLName const SDLNameResolution = @"resolution";
SDLName const SDLNameResolutionHeight = @"resolutionHeight";
SDLName const SDLNameResolutionWidth = @"resolutionWidth";
@@ -335,6 +381,7 @@ SDLName const SDLNameRolloverEvent = @"rolloverEvent";
SDLName const SDLNameRows = @"rows";
SDLName const SDLNameRPCName = @"rpcName";
SDLName const SDLNameRPM = @"rpm";
+SDLName const SDLNameRT = @"RT";
SDLName const SDLNameSamplingRate = @"samplingRate";
SDLName const SDLNameSatellites = @"satellites";
SDLName const SDLNameScreenParams = @"screenParams";
@@ -358,6 +405,10 @@ SDLName const SDLNameShortPressAvailable = @"shortPressAvailable";
SDLName const SDLNameShow = @"Show";
SDLName const SDLNameShowConstantTBT = @"ShowConstantTBT";
SDLName const SDLNameSignalLevelStatus = @"signalLevelStatus";
+SDLName const SDLNameSignalChangeThreshold = @"signalChangeThreshold";
+SDLName const SDLNameSignalChangeThresholdAvailable = @"signalChangeThresholdAvailable";
+SDLName const SDLNameSignalStrength = @"signalStrength";
+SDLName const SDLNameSignalStrengthAvailable = @"signalStrengthAvailable";
SDLName const SDLNameSlider = @"Slider";
SDLName const SDLNameSliderFooter = @"sliderFooter";
SDLName const SDLNameSliderHeader = @"sliderHeader";
@@ -371,6 +422,7 @@ SDLName const SDLNameSpeechCapabilities = @"speechCapabilities";
SDLName const SDLNameSpeed = @"speed";
SDLName const SDLNameStartTime = @"startTime";
SDLName const SDLNameState = @"state";
+SDLName const SDLNameStateAvailable = @"stateAvailable";
SDLName const SDLNameStateOfCharge = @"stateOfCharge";
SDLName const SDLNameStatus = @"status";
SDLName const SDLNameStatusBar = @"statusBar";
@@ -378,14 +430,13 @@ SDLName const SDLNameSteeringWheelAngle = @"steeringWheelAngle";
SDLName const SDLNameStereoAudioOutputMuted = @"stereoAudioOutputMuted";
SDLName const SDLNameSubAdministrativeArea = @"subAdministrativeArea";
SDLName const SDLNameSubLocality = @"subLocality";
-SDLName const SDLNameSubscribe = @"Subscribe";
+SDLName const SDLNameSubscribe = @"subscribe";
SDLName const SDLNameSubscribeButton = @"SubscribeButton";
SDLName const SDLNameSubscribeVehicleData = @"SubscribeVehicleData";
SDLName const SDLNameSubscribeWaypoints = @"SubscribeWayPoints";
SDLName const SDLNameSubThoroughfare = @"subThoroughfare";
SDLName const SDLNameSuccess = @"success";
SDLName const SDLNameSupportedDiagnosticModes = @"supportedDiagModes";
-SDLName const SDLNameSupportedFormats = @"supportedFormats";
SDLName const SDLNameSyncFileName = @"syncFileName";
SDLName const SDLNameSyncMessageVersion = @"syncMsgVersion";
SDLName const SDLNameSyncPData = @"SyncPData";
@@ -397,6 +448,7 @@ SDLName const SDLNameSystemFile = @"systemFile";
SDLName const SDLNameSystemRequest = @"SystemRequest";
SDLName const SDLNameSystemSoftwareVersion = @"systemSoftwareVersion";
SDLName const SDLNameDialNumber = @"DialNumber";
+SDLName const SDLNameTA = @"TA";
SDLName const SDLNameTargetId = @"targetID";
SDLName const SDLNameTemplatesAvailable = @"templatesAvailable";
SDLName const SDLNameTertiaryText = @"tertiaryText";
@@ -413,6 +465,7 @@ SDLName const SDLNameTimezoneMinuteOffset = @"tz_minute";
SDLName const SDLNameTirePressure = @"tirePressure";
SDLName const SDLNameTotalDistance = @"totalDistance";
SDLName const SDLNameTouchEventAvailable = @"touchEventAvailable";
+SDLName const SDLNameTP = @"TP";
SDLName const SDLNameTriggerSource = @"triggerSource";
SDLName const SDLNameTrim = @"trim";
SDLName const SDLNameTryAgainTime = @"tryAgainTime";
@@ -422,6 +475,7 @@ SDLName const SDLNameTTSName = @"ttsName";
SDLName const SDLNameTurnIcon = @"turnIcon";
SDLName const SDLNameTurnList = @"turnList";
SDLName const SDLNameType = @"type";
+SDLName const SDLNameUnit = @"unit";
SDLName const SDLNameUnregisterAppInterface = @"UnregisterAppInterface";
SDLName const SDLNameUnsubscribe = @"Unsubscribe";
SDLName const SDLNameUnsubscribeButton = @"UnsubscribeButton";
@@ -443,10 +497,8 @@ SDLName const SDLNameUTCYear = @"utcYear";
SDLName const SDLNameValue = @"value";
SDLName const SDLNameVDOP = @"vdop";
SDLName const SDLNameVehicleType = @"vehicleType";
-SDLName const SDLNameVideoCodec = @"videoCodec";
-SDLName const SDLNameVideoProtocol = @"videoProtocol";
-SDLName const SDLNameVideoStreaming = @"videoStreaming";
-SDLName const SDLNameVideoStreamingCapability = @"videoStreamingCapability";
+SDLName const SDLNameVentilationMode = @"ventilationMode";
+SDLName const SDLNameVentilationModeAvailable = @"ventilationModeAvailable";
SDLName const SDLNameVIN = @"vin";
SDLName const SDLNameVoiceRecognitionOn = @"voiceRecOn";
SDLName const SDLNameVRCapabilities = @"vrCapabilities";
diff --git a/SmartDeviceLink/SDLNotificationConstants.h b/SmartDeviceLink/SDLNotificationConstants.h
index 9c9edca13..d0a789e9c 100644
--- a/SmartDeviceLink/SDLNotificationConstants.h
+++ b/SmartDeviceLink/SDLNotificationConstants.h
@@ -50,19 +50,19 @@ typedef void (^SDLResponseHandler)(__kindof SDLRPCRequest *__nullable request, _
/**
A handler that may optionally be run when an SDLSubscribeButton or SDLSoftButton has a corresponding notification occur.
-
+
@warning This only works if you send the RPC using SDLManager.
@warning Only one of the two parameters will be set for each block call.
-
+
@param buttonPress An SDLOnButtonPress object that corresponds to this particular button.
@param buttonEvent An SDLOnButtonEvent object that corresponds to this particular button.
*/
typedef void (^SDLRPCButtonNotificationHandler)(SDLOnButtonPress *_Nullable buttonPress, SDLOnButtonEvent *_Nullable buttonEvent);
/**
A handler that may optionally be run when an SDLAddCommand has a corresponding notification occur.
-
+
@warning This only works if you send the RPC using SDLManager.
-
+
@param command An SDLOnCommand object that corresponds to this particular SDLAddCommand.
*/
typedef void (^SDLRPCCommandNotificationHandler)(SDLOnCommand *command);
@@ -91,6 +91,7 @@ extern SDLNotificationName const SDLDidReceiveAddCommandResponse;
extern SDLNotificationName const SDLDidReceiveAddSubMenuResponse;
extern SDLNotificationName const SDLDidReceiveAlertResponse;
extern SDLNotificationName const SDLDidReceiveAlertManeuverResponse;
+extern SDLNotificationName const SDLDidReceiveButtonPressResponse;
extern SDLNotificationName const SDLDidReceiveChangeRegistrationResponse;
extern SDLNotificationName const SDLDidReceiveCreateInteractionChoiceSetResponse;
extern SDLNotificationName const SDLDidReceiveDeleteCommandResponse;
@@ -103,6 +104,7 @@ extern SDLNotificationName const SDLDidReceiveEncodedSyncPDataResponse;
extern SDLNotificationName const SDLDidReceiveEndAudioPassThruResponse;
extern SDLNotificationName const SDLDidReceiveGenericResponse;
extern SDLNotificationName const SDLDidReceiveGetDTCsResponse;
+extern SDLNotificationName const SDLDidReceiveGetInteriorVehicleDataResponse;
extern SDLNotificationName const SDLDidReceiveGetSystemCapabilitiesResponse;
extern SDLNotificationName const SDLDidReceiveGetVehicleDataResponse;
extern SDLNotificationName const SDLDidReceiveGetWaypointsResponse;
@@ -118,6 +120,7 @@ extern SDLNotificationName const SDLDidReceiveSendLocationResponse;
extern SDLNotificationName const SDLDidReceiveSetAppIconResponse;
extern SDLNotificationName const SDLDidReceiveSetDisplayLayoutResponse;
extern SDLNotificationName const SDLDidReceiveSetGlobalPropertiesResponse;
+extern SDLNotificationName const SDLDidReceiveSetInteriorVehicleDataResponse;
extern SDLNotificationName const SDLDidReceiveSetMediaClockTimerResponse;
extern SDLNotificationName const SDLDidReceiveShowConstantTBTResponse;
extern SDLNotificationName const SDLDidReceiveShowResponse;
@@ -145,6 +148,7 @@ extern SDLNotificationName const SDLDidReceiveButtonEventNotification;
extern SDLNotificationName const SDLDidReceiveButtonPressNotification;
extern SDLNotificationName const SDLDidReceiveCommandNotification;
extern SDLNotificationName const SDLDidReceiveEncodedDataNotification;
+extern SDLNotificationName const SDLDidReceiveInteriorVehicleDataNotification;
extern SDLNotificationName const SDLDidReceiveKeyboardInputNotification;
extern SDLNotificationName const SDLDidChangeLanguageNotification;
extern SDLNotificationName const SDLDidChangeLockScreenStatusNotification;
diff --git a/SmartDeviceLink/SDLNotificationConstants.m b/SmartDeviceLink/SDLNotificationConstants.m
index b444a8857..1fc57663f 100644
--- a/SmartDeviceLink/SDLNotificationConstants.m
+++ b/SmartDeviceLink/SDLNotificationConstants.m
@@ -24,6 +24,7 @@ SDLNotificationName const SDLDidReceiveAddCommandResponse = @"com.sdl.response.a
SDLNotificationName const SDLDidReceiveAddSubMenuResponse = @"com.sdl.response.addSubMenu";
SDLNotificationName const SDLDidReceiveAlertResponse = @"com.sdl.response.alert";
SDLNotificationName const SDLDidReceiveAlertManeuverResponse = @"com.sdl.response.alertManeuver";
+SDLNotificationName const SDLDidReceiveButtonPressResponse = @"com.sdl.response.buttonPress";
SDLNotificationName const SDLDidReceiveChangeRegistrationResponse = @"com.sdl.response.changeRegistration";
SDLNotificationName const SDLDidReceiveCreateInteractionChoiceSetResponse = @"com.sdl.response.createInteractionChoiceSet";
SDLNotificationName const SDLDidReceiveDeleteCommandResponse = @"com.sdl.response.deleteCommand";
@@ -36,6 +37,7 @@ SDLNotificationName const SDLDidReceiveEncodedSyncPDataResponse = @"com.sdl.resp
SDLNotificationName const SDLDidReceiveEndAudioPassThruResponse = @"com.sdl.response.endAudioPassThru";
SDLNotificationName const SDLDidReceiveGenericResponse = @"com.sdl.response.generic";
SDLNotificationName const SDLDidReceiveGetDTCsResponse = @"com.sdl.response.getDTCs";
+SDLNotificationName const SDLDidReceiveGetInteriorVehicleDataResponse = @"com.sdl.response.getInteriorVehicleData";
SDLNotificationName const SDLDidReceiveGetSystemCapabilitiesResponse = @"com.sdl.response.getSystemCapabilities";
SDLNotificationName const SDLDidReceiveGetVehicleDataResponse = @"com.sdl.response.getVehicleData";
SDLNotificationName const SDLDidReceiveGetWaypointsResponse = @"com.sdl.response.getWaypoints";
@@ -51,6 +53,7 @@ SDLNotificationName const SDLDidReceiveSendLocationResponse = @"com.sdl.response
SDLNotificationName const SDLDidReceiveSetAppIconResponse = @"com.sdl.response.setAppIcon";
SDLNotificationName const SDLDidReceiveSetDisplayLayoutResponse = @"com.sdl.response.setDisplayLayout";
SDLNotificationName const SDLDidReceiveSetGlobalPropertiesResponse = @"com.sdl.response.setGlobalProperties";
+SDLNotificationName const SDLDidReceiveSetInteriorVehicleDataResponse = @"com.sdl.response.setInteriorVehicleData";
SDLNotificationName const SDLDidReceiveSetMediaClockTimerResponse = @"com.sdl.response.setMediaClockTimer";
SDLNotificationName const SDLDidReceiveShowConstantTBTResponse = @"com.sdl.response.showConstantTBT";
SDLNotificationName const SDLDidReceiveShowResponse = @"com.sdl.response.show";
@@ -75,6 +78,7 @@ SDLNotificationName const SDLDidReceiveButtonEventNotification = @"com.sdl.notif
SDLNotificationName const SDLDidReceiveButtonPressNotification = @"com.sdl.notification.buttonPress";
SDLNotificationName const SDLDidReceiveCommandNotification = @"com.sdl.notification.command";
SDLNotificationName const SDLDidReceiveEncodedDataNotification = @"com.sdl.notification.encodedData";
+SDLNotificationName const SDLDidReceiveInteriorVehicleDataNotification = @"com.sdl.notification.interiorVehicleData";
SDLNotificationName const SDLDidReceiveKeyboardInputNotification = @"com.sdl.notification.keyboardInput";
SDLNotificationName const SDLDidChangeLanguageNotification = @"com.sdl.notification.changeLanguage";
SDLNotificationName const SDLDidChangeLockScreenStatusNotification = @"com.sdl.notification.lockScreenStatus";
@@ -94,6 +98,7 @@ SDLNotificationName const SDLDidReceiveWaypointNotification = @"com.sdl.notifica
SDLDidReceiveAddSubMenuResponse,
SDLDidReceiveAlertResponse,
SDLDidReceiveAlertManeuverResponse,
+ SDLDidReceiveButtonPressResponse,
SDLDidReceiveChangeRegistrationResponse,
SDLDidReceiveCreateInteractionChoiceSetResponse,
SDLDidReceiveDeleteCommandResponse,
@@ -106,6 +111,7 @@ SDLNotificationName const SDLDidReceiveWaypointNotification = @"com.sdl.notifica
SDLDidReceiveEndAudioPassThruResponse,
SDLDidReceiveGenericResponse,
SDLDidReceiveGetDTCsResponse,
+ SDLDidReceiveGetInteriorVehicleDataResponse,
SDLDidReceiveGetSystemCapabilitiesResponse,
SDLDidReceiveGetVehicleDataResponse,
SDLDidReceiveGetWaypointsResponse,
@@ -121,6 +127,7 @@ SDLNotificationName const SDLDidReceiveWaypointNotification = @"com.sdl.notifica
SDLDidReceiveSetAppIconResponse,
SDLDidReceiveSetDisplayLayoutResponse,
SDLDidReceiveSetGlobalPropertiesResponse,
+ SDLDidReceiveSetInteriorVehicleDataResponse,
SDLDidReceiveSetMediaClockTimerResponse,
SDLDidReceiveShowConstantTBTResponse,
SDLDidReceiveShowResponse,
diff --git a/SmartDeviceLink/SDLNotificationDispatcher.m b/SmartDeviceLink/SDLNotificationDispatcher.m
index 00ae1f962..77dc8ee87 100644
--- a/SmartDeviceLink/SDLNotificationDispatcher.m
+++ b/SmartDeviceLink/SDLNotificationDispatcher.m
@@ -24,7 +24,7 @@ NS_ASSUME_NONNULL_BEGIN
if (infoObject != nil) {
userInfo = @{SDLNotificationUserInfoObject: infoObject};
}
-
+
dispatch_async(dispatch_get_main_queue(), ^{
[[NSNotificationCenter defaultCenter] postNotificationName:name object:self userInfo:userInfo];
});
@@ -94,6 +94,10 @@ NS_ASSUME_NONNULL_BEGIN
[self postRPCResponseNotification:SDLDidReceiveAlertResponse response:response];
}
+- (void)onButtonPressResponse:(SDLButtonPressResponse *)response {
+ [self postRPCResponseNotification:SDLDidReceiveButtonPressResponse response:response];
+}
+
- (void)onChangeRegistrationResponse:(SDLChangeRegistrationResponse *)response {
[self postRPCResponseNotification:SDLDidReceiveChangeRegistrationResponse response:response];
}
@@ -142,6 +146,11 @@ NS_ASSUME_NONNULL_BEGIN
[self postRPCResponseNotification:SDLDidReceiveGetDTCsResponse response:response];
}
+
+- (void)onGetInteriorVehicleDataResponse:(SDLGetInteriorVehicleDataResponse *)response {
+ [self postRPCResponseNotification:SDLDidReceiveGetInteriorVehicleDataResponse response:response];
+}
+
- (void)onGetSystemCapabilityResponse:(SDLGetSystemCapabilityResponse *)response {
[self postRPCResponseNotification:SDLDidReceiveGetSystemCapabilitiesResponse response:response];
}
@@ -202,6 +211,11 @@ NS_ASSUME_NONNULL_BEGIN
[self postRPCResponseNotification:SDLDidReceiveSetGlobalPropertiesResponse response:response];
}
+
+- (void)onSetInteriorVehicleDataResponse:(SDLSetInteriorVehicleDataResponse *)response{
+ [self postRPCResponseNotification:SDLDidReceiveSetInteriorVehicleDataResponse response:response];
+}
+
- (void)onSetMediaClockTimerResponse:(SDLSetMediaClockTimerResponse *)response {
[self postRPCResponseNotification:SDLDidReceiveSetMediaClockTimerResponse response:response];
}
@@ -286,6 +300,10 @@ NS_ASSUME_NONNULL_BEGIN
[self postRPCNotificationNotification:SDLDidReceiveNewHashNotification notification:notification];
}
+- (void)onOnInteriorVehicleData:(SDLOnInteriorVehicleData *)notification {
+ [self postRPCNotificationNotification:SDLDidReceiveInteriorVehicleDataNotification notification:notification];
+}
+
- (void)onOnKeyboardInput:(SDLOnKeyboardInput *)notification {
[self postRPCNotificationNotification:SDLDidReceiveKeyboardInputNotification notification:notification];
}
diff --git a/SmartDeviceLink/SDLOnInteriorVehicleData.h b/SmartDeviceLink/SDLOnInteriorVehicleData.h
new file mode 100644
index 000000000..d7f05a972
--- /dev/null
+++ b/SmartDeviceLink/SDLOnInteriorVehicleData.h
@@ -0,0 +1,16 @@
+//
+// SDLOnInteriorVehicleData.h
+//
+
+#import "SDLRPCNotification.h"
+@class SDLModuleData;
+
+NS_ASSUME_NONNULL_BEGIN
+
+@interface SDLOnInteriorVehicleData : SDLRPCNotification
+
+@property (strong) SDLModuleData *moduleData;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff --git a/SmartDeviceLink/SDLOnInteriorVehicleData.m b/SmartDeviceLink/SDLOnInteriorVehicleData.m
new file mode 100644
index 000000000..544268eb2
--- /dev/null
+++ b/SmartDeviceLink/SDLOnInteriorVehicleData.m
@@ -0,0 +1,31 @@
+//
+// SDLOnInteriorVehicleData.m
+//
+
+#import "SDLOnInteriorVehicleData.h"
+#import "SDLNames.h"
+#import "SDLModuleData.h"
+#import "NSMutableDictionary+Store.h"
+
+NS_ASSUME_NONNULL_BEGIN
+
+@implementation SDLOnInteriorVehicleData
+
+
+- (instancetype)init {
+ if (self = [super initWithName:SDLNameOnInteriorVehicleData]) {
+ }
+ return self;
+}
+
+- (void)setModuleData:(SDLModuleData *)moduleData {
+ [parameters sdl_setObject:moduleData forName:SDLNameModuleData];
+}
+
+- (SDLModuleData *)moduleData {
+ return [parameters sdl_objectForName:SDLNameModuleData];
+}
+
+@end
+
+NS_ASSUME_NONNULL_END
diff --git a/SmartDeviceLink/SDLProxyListener.h b/SmartDeviceLink/SDLProxyListener.h
index b3d29825c..d28d699fa 100644
--- a/SmartDeviceLink/SDLProxyListener.h
+++ b/SmartDeviceLink/SDLProxyListener.h
@@ -7,6 +7,7 @@
@class SDLAddSubMenuResponse;
@class SDLAlertManeuverResponse;
@class SDLAlertResponse;
+@class SDLButtonPressResponse;
@class SDLChangeRegistrationResponse;
@class SDLCreateInteractionChoiceSetResponse;
@class SDLDeleteCommandResponse;
@@ -19,6 +20,7 @@
@class SDLEndAudioPassThruResponse;
@class SDLGenericResponse;
@class SDLGetDTCsResponse;
+@class SDLGetInteriorVehicleDataResponse;
@class SDLGetSystemCapabilityResponse;
@class SDLGetVehicleDataResponse;
@class SDLGetWaypointsResponse;
@@ -32,6 +34,7 @@
@class SDLOnEncodedSyncPData;
@class SDLOnHashChange;
@class SDLOnHMIStatus;
+@class SDLOnInteriorVehicleData;
@class SDLOnKeyboardInput;
@class SDLOnLanguageChange;
@class SDLOnLockScreenStatus;
@@ -54,6 +57,7 @@
@class SDLSetAppIconResponse;
@class SDLSetDisplayLayoutResponse;
@class SDLSetGlobalPropertiesResponse;
+@class SDLSetInteriorVehicleDataResponse;
@class SDLSetMediaClockTimerResponse;
@class SDLShowConstantTBTResponse;
@class SDLShowResponse;
@@ -84,6 +88,7 @@ NS_ASSUME_NONNULL_BEGIN
- (void)onAddSubMenuResponse:(SDLAddSubMenuResponse *)response;
- (void)onAlertManeuverResponse:(SDLAlertManeuverResponse *)response;
- (void)onAlertResponse:(SDLAlertResponse *)response;
+- (void)onButtonPressResponse:(SDLButtonPressResponse *)response;
- (void)onChangeRegistrationResponse:(SDLChangeRegistrationResponse *)response;
- (void)onCreateInteractionChoiceSetResponse:(SDLCreateInteractionChoiceSetResponse *)response;
- (void)onDeleteCommandResponse:(SDLDeleteCommandResponse *)response;
@@ -97,6 +102,7 @@ NS_ASSUME_NONNULL_BEGIN
- (void)onError:(NSException *)e;
- (void)onGenericResponse:(SDLGenericResponse *)response;
- (void)onGetDTCsResponse:(SDLGetDTCsResponse *)response;
+- (void)onGetInteriorVehicleDataResponse:(SDLGetInteriorVehicleDataResponse *)response;
- (void)onGetSystemCapabilityResponse:(SDLGetSystemCapabilityResponse *)response;
- (void)onGetVehicleDataResponse:(SDLGetVehicleDataResponse *)response;
- (void)onGetWayPointsResponse:(SDLGetWaypointsResponse *)response;
@@ -109,6 +115,7 @@ NS_ASSUME_NONNULL_BEGIN
- (void)onOnCommand:(SDLOnCommand *)notification;
- (void)onOnEncodedSyncPData:(SDLOnEncodedSyncPData *)notification;
- (void)onOnHashChange:(SDLOnHashChange *)notification;
+- (void)onOnInteriorVehicleData:(SDLOnInteriorVehicleData *)notification;
- (void)onOnKeyboardInput:(SDLOnKeyboardInput *)notification;
- (void)onOnLanguageChange:(SDLOnLanguageChange *)notification;
- (void)onOnLockScreenNotification:(SDLOnLockScreenStatus *)notification;
@@ -130,6 +137,7 @@ NS_ASSUME_NONNULL_BEGIN
- (void)onSetAppIconResponse:(SDLSetAppIconResponse *)response;
- (void)onSetDisplayLayoutResponse:(SDLSetDisplayLayoutResponse *)response;
- (void)onSetGlobalPropertiesResponse:(SDLSetGlobalPropertiesResponse *)response;
+- (void)onSetInteriorVehicleDataResponse:(SDLSetInteriorVehicleDataResponse *)response;
- (void)onSetMediaClockTimerResponse:(SDLSetMediaClockTimerResponse *)response;
- (void)onShowConstantTBTResponse:(SDLShowConstantTBTResponse *)response;
- (void)onShowResponse:(SDLShowResponse *)response;
diff --git a/SmartDeviceLink/SDLRadioBand.h b/SmartDeviceLink/SDLRadioBand.h
new file mode 100644
index 000000000..7005da795
--- /dev/null
+++ b/SmartDeviceLink/SDLRadioBand.h
@@ -0,0 +1,26 @@
+//
+// SDLRadioBand.h
+//
+
+#import "SDLEnum.h"
+
+
+typedef SDLEnum SDLRadioBand SDL_SWIFT_ENUM;
+
+/**
+ * @abstract Represents AM radio band
+ *
+ */
+extern SDLRadioBand const SDLRadioBandAM;
+
+/**
+ * @abstract Represents FM radio band
+ *
+ */
+extern SDLRadioBand const SDLRadioBandFM;
+
+/**
+ * @abstract Represents XM radio band
+ *
+ */
+extern SDLRadioBand const SDLRadioBandXM;
diff --git a/SmartDeviceLink/SDLRadioBand.m b/SmartDeviceLink/SDLRadioBand.m
new file mode 100644
index 000000000..1aa03e70f
--- /dev/null
+++ b/SmartDeviceLink/SDLRadioBand.m
@@ -0,0 +1,9 @@
+//
+// SDLRadioBand.m
+//
+
+#import "SDLRadioBand.h"
+
+SDLRadioBand const SDLRadioBandAM = @"AM";
+SDLRadioBand const SDLRadioBandFM = @"FM";
+SDLRadioBand const SDLRadioBandXM = @"XM";
diff --git a/SmartDeviceLink/SDLRadioControlCapabilities.h b/SmartDeviceLink/SDLRadioControlCapabilities.h
new file mode 100644
index 000000000..952d62a14
--- /dev/null
+++ b/SmartDeviceLink/SDLRadioControlCapabilities.h
@@ -0,0 +1,96 @@
+//
+// SDLRadioControlCapabilities.h
+//
+
+#import "SDLRPCMessage.h"
+
+NS_ASSUME_NONNULL_BEGIN
+
+/**
+ * Contains information about a radio control module's capabilities.
+ */
+@interface SDLRadioControlCapabilities : SDLRPCStruct
+
+/**
+ * @abstractThe short friendly name of the climate control module.
+ * It should not be used to identify a module by mobile application.
+ *
+ * Max string length 100 chars
+ */
+@property (strong, nonatomic) NSString *moduleName;
+
+/**
+ * @abstract Availability of the control of enable/disable radio.
+ * True: Available, False: Not Available, Not present: Not Available.
+ *
+ * Optional, Boolean
+ */
+@property (nullable, strong, nonatomic) NSNumber<SDLBool> *radioEnableAvailable;
+
+/**
+ * @abstract Availability of the control of radio band.
+ * True: Available, False: Not Available, Not present: Not Available.
+ *
+ * Optional, Boolean
+ */
+@property (nullable, strong, nonatomic) NSNumber<SDLBool> *radioBandAvailable;
+
+/**
+ * @abstract Availability of the control of radio frequency.
+ * True: Available, False: Not Available, Not present: Not Available.
+ *
+ * Optional, Boolean
+ */
+@property (nullable, strong, nonatomic) NSNumber<SDLBool> *radioFrequencyAvailable;
+
+/**
+ * @abstract Availability of the control of HD radio channel.
+ * True: Available, False: Not Available, Not present: Not Available.
+ *
+ * Optional, Boolean
+ */
+@property (nullable, strong, nonatomic) NSNumber<SDLBool> *hdChannelAvailable;
+
+/**
+ * @abstract Availability of the getting Radio Data System (RDS) data.
+ * True: Available, False: Not Available, Not present: Not Available.
+ *
+ * Optional, Boolean
+ */
+@property (nullable, strong, nonatomic) NSNumber<SDLBool> *rdsDataAvailable;
+
+/**
+ * @abstract Availability of the getting the number of available HD channels.
+ * True: Available, False: Not Available, Not present: Not Available.
+ *
+ * Optional, Boolean
+ */
+@property (nullable, strong, nonatomic) NSNumber<SDLBool> *availableHDsAvailable;
+
+/**
+ * @abstract Availability of the getting the Radio state.
+ * True: Available, False: Not Available, Not present: Not Available.
+ *
+ * Optional, Boolean
+ */
+@property (nullable, strong, nonatomic) NSNumber<SDLBool> *stateAvailable;
+
+/**
+ * @abstract Availability of the getting the signal strength.
+ * True: Available, False: Not Available, Not present: Not Available.
+ *
+ * Optional, Boolean
+ */
+@property (nullable, strong, nonatomic) NSNumber<SDLBool> *signalStrengthAvailable;
+
+/**
+ * @abstract Availability of the getting the signal Change Threshold
+ * True: Available, False: Not Available, Not present: Not Available.
+ *
+ * Optional, Boolean
+ */
+@property (nullable, strong, nonatomic) NSNumber<SDLBool> *signalChangeThresholdAvailable;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff --git a/SmartDeviceLink/SDLRadioControlCapabilities.m b/SmartDeviceLink/SDLRadioControlCapabilities.m
new file mode 100644
index 000000000..82570a9c4
--- /dev/null
+++ b/SmartDeviceLink/SDLRadioControlCapabilities.m
@@ -0,0 +1,103 @@
+//
+// SDLRadioControlCapabilities.m
+//
+
+#import "SDLRadioControlCapabilities.h"
+#import "SDLNames.h"
+#import "NSMutableDictionary+Store.h"
+
+NS_ASSUME_NONNULL_BEGIN
+
+@implementation SDLRadioControlCapabilities
+
+- (void)setModuleName:(NSString *)moduleName {
+ [store sdl_setObject:moduleName forName:SDLNameModuleName];
+}
+
+- (NSString *)moduleName {
+ return [store sdl_objectForName:SDLNameModuleName];
+}
+
+- (void)setRadioEnableAvailable:(nullable NSNumber<SDLBool> *)radioEnableAvailable {
+ [store sdl_setObject:radioEnableAvailable forName:SDLNameRadioEnableAvailable];
+
+}
+
+- (nullable NSNumber<SDLBool> *)radioEnableAvailable {
+ return [store sdl_objectForName:SDLNameRadioEnableAvailable];
+}
+
+- (void)setRadioBandAvailable:(nullable NSNumber<SDLBool> *)radioBandAvailable {
+ [store sdl_setObject:radioBandAvailable forName:SDLNameRadioBandAvailable];
+
+}
+
+- (nullable NSNumber<SDLBool> *)radioBandAvailable {
+ return [store sdl_objectForName:SDLNameRadioBandAvailable];
+}
+
+- (void)setRadioFrequencyAvailable:(nullable NSNumber<SDLBool> *)radioFrequencyAvailable {
+ [store sdl_setObject:radioFrequencyAvailable forName:SDLNameRadioFrequencyAvailable];
+}
+
+- (nullable NSNumber<SDLBool> *)radioFrequencyAvailable {
+ return [store sdl_objectForName:SDLNameRadioFrequencyAvailable];
+}
+
+- (void)setHdChannelAvailable:(nullable NSNumber<SDLBool> *)hdChannelAvailable {
+ [store sdl_setObject:hdChannelAvailable forName:SDLNameHdChannelAvailable];
+
+}
+
+- (nullable NSNumber<SDLBool> *)hdChannelAvailable {
+ return [store sdl_objectForName:SDLNameHdChannelAvailable];
+}
+
+- (void)setRdsDataAvailable:(nullable NSNumber<SDLBool> *)rdsDataAvailable {
+ [store sdl_setObject:rdsDataAvailable forName:SDLNameRdsDataAvailable];
+
+}
+
+- (nullable NSNumber<SDLBool> *)rdsDataAvailable {
+ return [store sdl_objectForName:SDLNameRdsDataAvailable];
+}
+
+- (void)setAvailableHDsAvailable:(nullable NSNumber<SDLBool> *)availableHDsAvailable {
+ [store sdl_setObject:availableHDsAvailable forName:SDLNameAvailableHDsAvailable];
+
+}
+
+- (nullable NSNumber<SDLBool> *)availableHDsAvailable {
+ return [store sdl_objectForName:SDLNameAvailableHDsAvailable];
+}
+
+- (void)setStateAvailable:(nullable NSNumber<SDLBool> *)stateAvailable {
+ [store sdl_setObject:stateAvailable forName:SDLNameStateAvailable];
+
+}
+
+- (nullable NSNumber<SDLBool> *)stateAvailable {
+ return [store sdl_objectForName:SDLNameStateAvailable];
+}
+
+- (void)setSignalStrengthAvailable:(nullable NSNumber<SDLBool> *)signalStrengthAvailable {
+ [store sdl_setObject:signalStrengthAvailable forName:SDLNameSignalStrengthAvailable];
+
+}
+
+- (nullable NSNumber<SDLBool> *)signalStrengthAvailable {
+ return [store sdl_objectForName:SDLNameSignalStrengthAvailable];
+}
+
+- (void)setSignalChangeThresholdAvailable:(nullable NSNumber<SDLBool> *)signalChangeThresholdAvailable {
+ [store sdl_setObject:signalChangeThresholdAvailable forName:SDLNameSignalChangeThresholdAvailable];
+
+}
+
+- (nullable NSNumber<SDLBool> *)signalChangeThresholdAvailable {
+ return [store sdl_objectForName:SDLNameSignalChangeThresholdAvailable];
+}
+
+@end
+
+NS_ASSUME_NONNULL_END
diff --git a/SmartDeviceLink/SDLRadioControlData.h b/SmartDeviceLink/SDLRadioControlData.h
new file mode 100644
index 000000000..11ffe5e4d
--- /dev/null
+++ b/SmartDeviceLink/SDLRadioControlData.h
@@ -0,0 +1,77 @@
+//
+// SDLRadioControlData.h
+//
+
+#import "SDLRPCMessage.h"
+#import "SDLRadioBand.h"
+#import "SDLRadioState.h"
+@class SDLRdsData;
+
+NS_ASSUME_NONNULL_BEGIN
+
+@interface SDLRadioControlData : SDLRPCStruct
+
+/**
+ * @abstract The integer part of the frequency ie for 101.7 this value should be 101
+ *
+ * Integer
+ */
+@property (nullable, strong, nonatomic) NSNumber<SDLInt> *frequencyInteger;
+
+/**
+ * @abstract The fractional part of the frequency for 101.7 is 7
+ *
+ * Integer
+ */
+@property (nullable, strong, nonatomic) NSNumber<SDLInt> *frequencyFraction;
+
+/**
+ * @abstract Radio band value
+ *
+ * SDLRadioBand
+ */
+@property (nullable, strong, nonatomic) SDLRadioBand band;
+
+@property (nullable, strong, nonatomic) SDLRdsData *rdsData;
+
+/**
+ * @abstract number of HD sub-channels if available
+ *
+ * Integer value Min Value - 1 Max Value -3
+ */
+@property (nullable, strong, nonatomic) NSNumber<SDLInt> *availableHDs;
+
+/**
+ * @abstract Current HD sub-channel if available
+ *
+ * Integer value Min Value - 1 Max Value -3
+ */
+@property (nullable, strong, nonatomic) NSNumber<SDLInt> *hdChannel;
+
+/**
+ * @abstract Signal Strength Value
+ *
+ * Integer value Min Value - 0 Max Value - 100
+ */
+@property (nullable, strong, nonatomic) NSNumber<SDLInt> *signalStrength;
+
+/**
+ * @abstract If the signal strength falls below the set value for this parameter, the radio will tune to an alternative frequency
+ *
+ * Integer value Min Value - 0 Max Value - 100
+ */
+@property (nullable, strong, nonatomic) NSNumber<SDLInt> *signalChangeThreshold;
+
+/**
+ * @abstract True if the radio is on, false is the radio is off
+ *
+ * Boolean value
+ */
+@property (nullable, strong, nonatomic) NSNumber<SDLBool> *radioEnable;
+
+
+@property (nullable, strong, nonatomic) SDLRadioState state;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff --git a/SmartDeviceLink/SDLRadioControlData.m b/SmartDeviceLink/SDLRadioControlData.m
new file mode 100644
index 000000000..f6f259480
--- /dev/null
+++ b/SmartDeviceLink/SDLRadioControlData.m
@@ -0,0 +1,96 @@
+//
+// SDLRadioControlData.m
+//
+
+#import "SDLRadioControlData.h"
+#import "SDLNames.h"
+#import "SDLRdsData.h"
+#import "NSMutableDictionary+Store.h"
+
+NS_ASSUME_NONNULL_BEGIN
+
+@implementation SDLRadioControlData
+
+- (void)setFrequencyInteger:(nullable NSNumber<SDLInt> *)frequencyInteger {
+ [store sdl_setObject:frequencyInteger forName:SDLNameFrequencyInteger];
+}
+
+- (nullable NSNumber<SDLInt> *)frequencyInteger {
+ return [store sdl_objectForName:SDLNameFrequencyInteger];
+}
+
+- (void)setFrequencyFraction:(nullable NSNumber<SDLInt> *)frequencyFraction {
+ [store sdl_setObject:frequencyFraction forName:SDLNameFrequencyFraction];
+}
+
+- (nullable NSNumber<SDLInt> *)frequencyFraction {
+ return [store sdl_objectForName:SDLNameFrequencyFraction];
+}
+
+- (void)setBand:(nullable SDLRadioBand)band {
+ [store sdl_setObject:band forName:SDLNameBand];
+}
+
+- (nullable SDLRadioBand)band{
+ return [store sdl_objectForName:SDLNameBand];
+}
+
+- (void)setRdsData:(nullable SDLRdsData *)rdsData {
+ [store sdl_setObject:rdsData forName:SDLNameRdsData];
+}
+
+- (nullable SDLRdsData *)rdsData {
+ return [store sdl_objectForName:SDLNameRdsData];
+}
+
+- (void)setAvailableHDs:(nullable NSNumber<SDLInt> *)availableHDs {
+ [store sdl_setObject:availableHDs forName:SDLNameAvailableHDs];
+}
+
+- (nullable NSNumber<SDLInt> *)availableHDs {
+ return [store sdl_objectForName:SDLNameAvailableHDs];
+}
+
+- (void)setHdChannel:(nullable NSNumber<SDLInt> *)hdChannel {
+ [store sdl_setObject:hdChannel forName:SDLNameHdChannel];
+}
+
+- (nullable NSNumber<SDLInt> *)hdChannel {
+ return [store sdl_objectForName:SDLNameHdChannel];
+}
+
+- (void)setSignalStrength:(nullable NSNumber<SDLInt> *)signalStrength {
+ [store sdl_setObject:signalStrength forName:SDLNameSignalStrength];
+}
+
+- (nullable NSNumber<SDLInt> *)signalStrength {
+ return [store sdl_objectForName:SDLNameSignalStrength];
+}
+
+- (void)setSignalChangeThreshold:(nullable NSNumber<SDLInt> *)signalChangeThreshold {
+ [store sdl_setObject:signalChangeThreshold forName:SDLNameSignalChangeThreshold];
+}
+
+- (nullable NSNumber<SDLInt> *)signalChangeThreshold {
+ return [store sdl_objectForName:SDLNameSignalChangeThreshold];
+}
+
+- (void)setRadioEnable:(nullable NSNumber<SDLBool> *)radioEnable {
+ [store sdl_setObject:radioEnable forName:SDLNameRadioEnable];
+}
+
+- (nullable NSNumber<SDLBool> *)radioEnable {
+ return [store sdl_objectForName:SDLNameRadioEnable];
+}
+
+- (void)setState:(nullable SDLRadioState)state {
+ [store sdl_setObject:state forName:SDLNameState];
+}
+
+- (nullable SDLRadioState)state {
+ return [store sdl_objectForName:SDLNameState];
+}
+
+@end
+
+NS_ASSUME_NONNULL_END
diff --git a/SmartDeviceLink/SDLRadioState.h b/SmartDeviceLink/SDLRadioState.h
new file mode 100644
index 000000000..b44c61e5c
--- /dev/null
+++ b/SmartDeviceLink/SDLRadioState.h
@@ -0,0 +1,32 @@
+//
+// SDLRadioState.h
+//
+
+#import "SDLEnum.h"
+
+typedef SDLEnum SDLRadioState SDL_SWIFT_ENUM;
+
+
+/**
+ * @abstract Represents Radio state as ACQUIRING
+ *
+ */
+extern SDLRadioState const SDLRadioBandAcquiring;
+
+/**
+ * @abstract Represents Radio state as ACQUIRED
+ *
+ */
+extern SDLRadioState const SDLRadioStateAcquired;
+
+/**
+ * @abstract Represents Radio state as MULTICAST
+ *
+ */
+extern SDLRadioState const SDLRadioStateMulticast;
+
+/**
+ * @abstract Represents Radio state as NOT_FOUND
+ *
+ */
+extern SDLRadioState const SDLRadioStateNotFound;
diff --git a/SmartDeviceLink/SDLRadioState.m b/SmartDeviceLink/SDLRadioState.m
new file mode 100644
index 000000000..43692f97f
--- /dev/null
+++ b/SmartDeviceLink/SDLRadioState.m
@@ -0,0 +1,10 @@
+//
+// SDLRadioState.m
+//
+
+#import "SDLRadioState.h"
+
+SDLRadioState const SDLRadioBandAcquiring = @"ACQUIRING";
+SDLRadioState const SDLRadioStateAcquired = @"ACQUIRED";
+SDLRadioState const SDLRadioStateMulticast = @"MULTICAST";
+SDLRadioState const SDLRadioStateNotFound = @"NOT_FOUND";
diff --git a/SmartDeviceLink/SDLRemoteControlCapabilities.h b/SmartDeviceLink/SDLRemoteControlCapabilities.h
new file mode 100644
index 000000000..5d6fb7bb3
--- /dev/null
+++ b/SmartDeviceLink/SDLRemoteControlCapabilities.h
@@ -0,0 +1,39 @@
+//
+// SDLRemoteControlCapabilities.h
+//
+
+#import "SDLRPCMessage.h"
+@class SDLClimateControlCapabilities;
+@class SDLRadioControlCapabilities;
+@class SDLButtonCapabilities;
+
+NS_ASSUME_NONNULL_BEGIN
+
+@interface SDLRemoteControlCapabilities : SDLRPCStruct
+
+/**
+ * @abstract If included, the platform supports RC climate controls.
+ * For this baseline version, maxsize=1. i.e. only one climate control module is supported.
+ *
+ * Optional, Array of SDLClimateControlCapabilities, Array length 1 - 100
+ */
+@property (nullable, strong, nonatomic) NSArray<SDLClimateControlCapabilities *> *climateControlCapabilities;
+
+/**
+ * @abstract If included, the platform supports RC radio controls.
+ * For this baseline version, maxsize=1. i.e. only one radio control module is supported.
+ *
+ * Optional, Array of SDLRadioControlCapabilities, Array length 1 - 100
+ */
+@property (nullable, strong, nonatomic) NSArray<SDLRadioControlCapabilities *> *radioControlCapabilities;
+
+/**
+ * @abstract If included, the platform supports RC button controls with the included button names.
+ *
+ * Optional, Array of SDLButtonCapabilities, Array length 1 - 100
+ */
+@property (nullable, strong, nonatomic) NSArray<SDLButtonCapabilities *> *buttonCapabilities;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff --git a/SmartDeviceLink/SDLRemoteControlCapabilities.m b/SmartDeviceLink/SDLRemoteControlCapabilities.m
new file mode 100644
index 000000000..ca7d8ad82
--- /dev/null
+++ b/SmartDeviceLink/SDLRemoteControlCapabilities.m
@@ -0,0 +1,44 @@
+//
+// SDLRemoteControlCapabilities.m
+//
+
+#import "SDLRemoteControlCapabilities.h"
+#import "SDLClimateControlCapabilities.h"
+#import "SDLRadioControlCapabilities.h"
+#import "SDLButtonCapabilities.h"
+#import "NSMutableDictionary+Store.h"
+#import "SDLNames.h"
+
+
+NS_ASSUME_NONNULL_BEGIN
+
+
+@implementation SDLRemoteControlCapabilities
+
+- (void)setClimateControlCapabilities:(nullable NSArray<SDLClimateControlCapabilities *> *)climateControlCapabilities {
+ [store sdl_setObject:climateControlCapabilities forName:SDLNameClimateControlCapabilities];
+}
+
+- (nullable NSArray<SDLClimateControlCapabilities *> *)climateControlCapabilities {
+ return [store sdl_objectForName:SDLNameClimateControlCapabilities];
+}
+
+-(void)setRadioControlCapabilities:(nullable NSArray<SDLRadioControlCapabilities *> *)radioControlCapabilities {
+ [store sdl_setObject:radioControlCapabilities forName:SDLNameRadioControlCapabilities ];
+}
+
+- (nullable NSArray<SDLRadioControlCapabilities *> *)radioControlCapabilities {
+ return store[SDLNameRadioControlCapabilities];
+}
+
+- (void)setButtonCapabilities:(nullable NSArray *)buttonCapabilities {
+ [store sdl_setObject:buttonCapabilities forName:SDLNameButtonCapabilities];
+}
+
+- (nullable NSArray *)buttonCapabilities {
+ return [store sdl_objectForName:SDLNameButtonCapabilities];
+}
+
+@end
+
+NS_ASSUME_NONNULL_END
diff --git a/SmartDeviceLink/SDLResult.h b/SmartDeviceLink/SDLResult.h
index ee9cd6df0..dadc0bec2 100644
--- a/SmartDeviceLink/SDLResult.h
+++ b/SmartDeviceLink/SDLResult.h
@@ -185,3 +185,13 @@ extern SDLResult const SDLResultExpiredCertificate;
* The provided hash ID does not match the hash of the current set of registered data or the core could not resume the previous data.
*/
extern SDLResult const SDLResultResumeFailed;
+
+/**
+ * The requested data is not available on this vehicle or is not published for the connected app.
+ */
+extern SDLResult const SDLResultDataNotAvailable;
+
+/**
+ * The requested data is read only thus cannot be change via remote control .
+ */
+extern SDLResult const SDLResultReadOnly;
diff --git a/SmartDeviceLink/SDLResult.m b/SmartDeviceLink/SDLResult.m
index 23b6cdd1c..77c8c5529 100644
--- a/SmartDeviceLink/SDLResult.m
+++ b/SmartDeviceLink/SDLResult.m
@@ -37,3 +37,6 @@ SDLResult const SDLResultSaved = @"SAVED";
SDLResult const SDLResultInvalidCertificate = @"INVALID_CERT";
SDLResult const SDLResultExpiredCertificate = @"EXPIRED_CERT";
SDLResult const SDLResultResumeFailed = @"RESUME_FAILED";
+SDLResult const SDLResultDataNotAvailable = @"DATA_NOT_AVAILABLE";
+SDLResult const SDLResultReadOnly = @"READ_ONLY";
+
diff --git a/SmartDeviceLink/SDLSetInteriorVehicleData.h b/SmartDeviceLink/SDLSetInteriorVehicleData.h
new file mode 100644
index 000000000..1107360c9
--- /dev/null
+++ b/SmartDeviceLink/SDLSetInteriorVehicleData.h
@@ -0,0 +1,20 @@
+//
+// SDLSetInteriorVehicleData.h
+//
+
+#import "SDLRPCRequest.h"
+@class SDLModuleData;
+
+NS_ASSUME_NONNULL_BEGIN
+
+@interface SDLSetInteriorVehicleData : SDLRPCRequest
+
+/**
+ * The module data to set for the requested RC module.
+ *
+ */
+@property (strong, nonatomic) SDLModuleData *moduleData;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff --git a/SmartDeviceLink/SDLSetInteriorVehicleData.m b/SmartDeviceLink/SDLSetInteriorVehicleData.m
new file mode 100644
index 000000000..a5d022af4
--- /dev/null
+++ b/SmartDeviceLink/SDLSetInteriorVehicleData.m
@@ -0,0 +1,30 @@
+//
+// SDLSetInteriorVehicleData.m
+//
+
+#import "SDLSetInteriorVehicleData.h"
+#import "SDLNames.h"
+#import "NSMutableDictionary+Store.h"
+#import "SDLModuleData.h"
+
+NS_ASSUME_NONNULL_BEGIN
+
+@implementation SDLSetInteriorVehicleData
+
+- (instancetype)init {
+ if (self = [super initWithName:SDLNameSetInteriorVehicleData]) {
+ }
+ return self;
+}
+
+- (void)setModuleData:(SDLModuleData *)moduleData {
+ [parameters sdl_setObject:moduleData forName:SDLNameModuleData];
+}
+
+- (SDLModuleData *)moduleData {
+ return [parameters sdl_objectForName:SDLNameModuleData];
+}
+
+@end
+
+NS_ASSUME_NONNULL_END
diff --git a/SmartDeviceLink/SDLSetInteriorVehicleDataResponse.h b/SmartDeviceLink/SDLSetInteriorVehicleDataResponse.h
new file mode 100644
index 000000000..cbd272801
--- /dev/null
+++ b/SmartDeviceLink/SDLSetInteriorVehicleDataResponse.h
@@ -0,0 +1,20 @@
+//
+// SDLSetInteriorVehicleDataResponse.h
+//
+
+#import "SDLRPCResponse.h"
+@class SDLModuleData;
+
+NS_ASSUME_NONNULL_BEGIN
+
+/**
+ * Used to set the values of one remote control module
+ *
+ */
+@interface SDLSetInteriorVehicleDataResponse : SDLRPCResponse
+
+@property (strong, nonatomic) SDLModuleData *moduleData;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff --git a/SmartDeviceLink/SDLSetInteriorVehicleDataResponse.m b/SmartDeviceLink/SDLSetInteriorVehicleDataResponse.m
new file mode 100644
index 000000000..fbc06ba94
--- /dev/null
+++ b/SmartDeviceLink/SDLSetInteriorVehicleDataResponse.m
@@ -0,0 +1,30 @@
+//
+// SDLSetInteriorVehicleDataResponse.m
+//
+
+#import "SDLSetInteriorVehicleDataResponse.h"
+#import "SDLNames.h"
+#import "SDLModuleData.h"
+#import "NSMutableDictionary+Store.h"
+
+NS_ASSUME_NONNULL_BEGIN
+
+@implementation SDLSetInteriorVehicleDataResponse
+
+- (instancetype)init {
+ if (self = [super initWithName:SDLNameSetInteriorVehicleData]) {
+ }
+ return self;
+}
+
+- (void)setModuleData:(SDLModuleData *)moduleData {
+ [parameters sdl_setObject:moduleData forName:SDLNameModuleData];
+}
+
+- (SDLModuleData *)moduleData {
+ return [parameters sdl_objectForName:SDLNameModuleData];
+}
+
+@end
+
+NS_ASSUME_NONNULL_END
diff --git a/SmartDeviceLink/SDLSystemCapability.h b/SmartDeviceLink/SDLSystemCapability.h
index 8d1f8483f..68e8bd7e9 100644
--- a/SmartDeviceLink/SDLSystemCapability.h
+++ b/SmartDeviceLink/SDLSystemCapability.h
@@ -13,7 +13,7 @@
@class SDLPhoneCapability;
@class SDLNavigationCapability;
-@class SDLVideoStreamingCapability;
+@class SDLRemoteControlCapabilities;
NS_ASSUME_NONNULL_BEGIN
@@ -27,7 +27,7 @@ NS_ASSUME_NONNULL_BEGIN
- (instancetype)initWithPhoneCapability:(SDLPhoneCapability *)capability;
-- (instancetype)initWithVideoStreamingCapability:(SDLVideoStreamingCapability *)capability;
+- (instancetype)initWithRemoteControlCapability:(SDLRemoteControlCapabilities *)capability;
@property (strong, nonatomic) SDLSystemCapabilityType systemCapabilityType;
@@ -35,7 +35,7 @@ NS_ASSUME_NONNULL_BEGIN
@property (nullable, strong, nonatomic) SDLPhoneCapability *phoneCapability;
-@property (nullable, strong, nonatomic) SDLVideoStreamingCapability *videoStreamingCapability;
+@property (nullable, strong, nonatomic) SDLRemoteControlCapabilities *remoteControlCapability;
@end
diff --git a/SmartDeviceLink/SDLSystemCapability.m b/SmartDeviceLink/SDLSystemCapability.m
index 25f638912..6c474ec5c 100644
--- a/SmartDeviceLink/SDLSystemCapability.m
+++ b/SmartDeviceLink/SDLSystemCapability.m
@@ -13,7 +13,7 @@
#import "SDLNavigationCapability.h"
#import "SDLPhoneCapability.h"
#import "SDLSystemCapabilityType.h"
-#import "SDLVideoStreamingCapability.h"
+#import "SDLRemoteControlCapabilities.h"
NS_ASSUME_NONNULL_BEGIN
@@ -24,10 +24,10 @@ NS_ASSUME_NONNULL_BEGIN
if (!self) {
return nil;
}
-
+
self.systemCapabilityType = SDLSystemCapabilityTypePhoneCall;
self.phoneCapability = capability;
-
+
return self;
}
@@ -36,22 +36,22 @@ NS_ASSUME_NONNULL_BEGIN
if (!self) {
return nil;
}
-
+
self.systemCapabilityType = SDLSystemCapabilityTypeNavigation;
self.navigationCapability = capability;
-
+
return self;
}
-- (instancetype)initWithVideoStreamingCapability:(SDLVideoStreamingCapability *)capability {
+- (instancetype)initWithRemoteControlCapability:(SDLRemoteControlCapabilities *)capability {
self = [self init];
if (!self) {
return nil;
}
-
- self.systemCapabilityType = SDLSystemCapabilityTypeVideoStreaming;
- self.videoStreamingCapability = capability;
-
+
+ self.systemCapabilityType = SDLSystemCapabilityTypeRemoteControl;
+ self.remoteControlCapability = capability;
+
return self;
}
@@ -81,12 +81,12 @@ NS_ASSUME_NONNULL_BEGIN
return [store sdl_objectForName:SDLNamePhoneCapability ofClass:SDLPhoneCapability.class];
}
-- (void)setVideoStreamingCapability:(nullable SDLVideoStreamingCapability *)videoStreamingCapability {
- [store sdl_setObject:videoStreamingCapability forName:SDLNameVideoStreamingCapability];
+- (void)setRemoteControlCapability:(nullable SDLRemoteControlCapabilities *)remoteControlCapability {
+ [store sdl_setObject:remoteControlCapability forName:SDLNameRemoteControlCapability];
}
-- (nullable SDLVideoStreamingCapability *)videoStreamingCapability {
- return [store sdl_objectForName:SDLNameVideoStreamingCapability ofClass:SDLVideoStreamingCapability.class];
+- (nullable SDLRemoteControlCapabilities *)remoteControlCapability {
+ return [store sdl_objectForName:SDLNameRemoteControlCapability];
}
@end
diff --git a/SmartDeviceLink/SDLSystemCapabilityType.h b/SmartDeviceLink/SDLSystemCapabilityType.h
index e8a177a41..0de977dc4 100644
--- a/SmartDeviceLink/SDLSystemCapabilityType.h
+++ b/SmartDeviceLink/SDLSystemCapabilityType.h
@@ -25,5 +25,17 @@ extern SDLSystemCapabilityType const SDLSystemCapabilityTypePhoneCall;
/**
@abstract VIDEO_STREAMING
+
*/
extern SDLSystemCapabilityType const SDLSystemCapabilityTypeVideoStreaming;
+
+/**
+ @abstract AUDIO_STREAMING
+ REMOTE_CONTROL
+ */
+extern SDLSystemCapabilityType const SDLSystemCapabilityTypeAudioStreaming;
+
+/**
+ @abstract REMOTE_CONTROL
+ */
+extern SDLSystemCapabilityType const SDLSystemCapabilityTypeRemoteControl;
diff --git a/SmartDeviceLink/SDLSystemCapabilityType.m b/SmartDeviceLink/SDLSystemCapabilityType.m
index 47a425c53..54c8181aa 100644
--- a/SmartDeviceLink/SDLSystemCapabilityType.m
+++ b/SmartDeviceLink/SDLSystemCapabilityType.m
@@ -12,3 +12,5 @@
SDLSystemCapabilityType const SDLSystemCapabilityTypeNavigation = @"NAVIGATION";
SDLSystemCapabilityType const SDLSystemCapabilityTypePhoneCall = @"PHONE_CALL";
SDLSystemCapabilityType const SDLSystemCapabilityTypeVideoStreaming = @"VIDEO_STREAMING";
+SDLSystemCapabilityType const SDLSystemCapabilityTypeAudioStreaming = @"AUDIO_STREAMING";
+SDLSystemCapabilityType const SDLSystemCapabilityTypeRemoteControl = @"REMOTE_CONTROL";
diff --git a/SmartDeviceLink/SDLTemperature.h b/SmartDeviceLink/SDLTemperature.h
new file mode 100644
index 000000000..514338883
--- /dev/null
+++ b/SmartDeviceLink/SDLTemperature.h
@@ -0,0 +1,27 @@
+//
+// SDLTemperature.h
+//
+
+#import "SDLRPCMessage.h"
+#import "SDLTemperatureUnit.h"
+
+NS_ASSUME_NONNULL_BEGIN
+
+@interface SDLTemperature : SDLRPCStruct
+
+/**
+ * @abstract Temperature Unit
+ *
+ */
+@property (strong, nonatomic) SDLTemperatureUnit unit;
+
+/**
+ * @abstract Temperature Value in TemperatureUnit specified unit. Range depends on OEM and is not checked by SDL
+ *
+ * FLoat value
+ */
+@property (strong, nonatomic) NSNumber<SDLFloat> *value;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff --git a/SmartDeviceLink/SDLTemperature.m b/SmartDeviceLink/SDLTemperature.m
new file mode 100644
index 000000000..ef300d613
--- /dev/null
+++ b/SmartDeviceLink/SDLTemperature.m
@@ -0,0 +1,31 @@
+//
+// SDLTemperature.m
+//
+
+#import "SDLTemperature.h"
+#import "SDLNames.h"
+#import "NSMutableDictionary+Store.h"
+
+NS_ASSUME_NONNULL_BEGIN
+
+@implementation SDLTemperature
+
+- (void)setUnit:(SDLTemperatureUnit)unit {
+ [store sdl_setObject:unit forName:SDLNameUnit];
+}
+
+- (SDLTemperatureUnit)unit {
+ return [store sdl_objectForName:SDLNameUnit];
+}
+
+- (void)setValue:(NSNumber<SDLFloat> *)value {
+ [store sdl_setObject:value forName:SDLNameValue];
+}
+
+- (NSNumber<SDLFloat> *)value {
+ return [store sdl_objectForName:SDLNameValue];
+}
+
+@end
+
+NS_ASSUME_NONNULL_END
diff --git a/SmartDeviceLink/SDLTemperatureUnit.h b/SmartDeviceLink/SDLTemperatureUnit.h
new file mode 100644
index 000000000..63c1a20d0
--- /dev/null
+++ b/SmartDeviceLink/SDLTemperatureUnit.h
@@ -0,0 +1,19 @@
+//
+// SDLTemperatureUnit.h
+//
+
+
+#import "SDLEnum.h"
+
+typedef SDLEnum SDLTemperatureUnit SDL_SWIFT_ENUM;
+
+/**
+ @abstract Reflects the current HMI setting for temperature unit in Celsius
+ **/
+extern SDLTemperatureUnit const SDLTemperatureUnitCelsius;
+
+
+/**
+ @abstract Reflects the current HMI setting for temperature unit in Fahrenheit
+ **/
+extern SDLTemperatureUnit const SDLTemperatureUnitFahrenheit;
diff --git a/SmartDeviceLink/SDLTemperatureUnit.m b/SmartDeviceLink/SDLTemperatureUnit.m
new file mode 100644
index 000000000..f54fcaaac
--- /dev/null
+++ b/SmartDeviceLink/SDLTemperatureUnit.m
@@ -0,0 +1,8 @@
+//
+// SDLTemperatureUnit.m
+//
+
+#import "SDLTemperatureUnit.h"
+
+SDLTemperatureUnit const SDLTemperatureUnitCelsius = @"CELSIUS";
+SDLTemperatureUnit const SDLTemperatureUnitFahrenheit = @"FAHRENHEIT";
diff --git a/SmartDeviceLink/SDLVentilationMode.h b/SmartDeviceLink/SDLVentilationMode.h
new file mode 100644
index 000000000..aaf645920
--- /dev/null
+++ b/SmartDeviceLink/SDLVentilationMode.h
@@ -0,0 +1,28 @@
+//
+// SDLVentilationMode.h
+//
+
+#import "SDLEnum.h"
+
+typedef SDLEnum SDLVentilationMode SDL_SWIFT_ENUM;
+
+/**
+ * @abstract A SDLDefrostZone with the value of *UPPER*
+ */
+extern SDLVentilationMode const SDLVentilationModeUpper;
+
+/**
+ * @abstract A SDLDefrostZone with the value of *LOWER*
+ */
+extern SDLVentilationMode const SDLVentilationModeLower;
+
+/**
+ * @abstract A SDLDefrostZone with the value of *BOTH*
+ */
+extern SDLVentilationMode const SDLVentilationModeBoth;
+
+/**
+ * @abstract A SDLDefrostZone with the value of *NORTH*
+ */
+extern SDLVentilationMode const SDLVentilationModeNorth;
+
diff --git a/SmartDeviceLink/SDLVentilationMode.m b/SmartDeviceLink/SDLVentilationMode.m
new file mode 100644
index 000000000..c23c99985
--- /dev/null
+++ b/SmartDeviceLink/SDLVentilationMode.m
@@ -0,0 +1,11 @@
+//
+// SDLVentilationMode.m
+//
+
+#import "SDLVentilationMode.h"
+
+
+SDLVentilationMode const SDLVentilationModeUpper = @"UPPER";
+SDLVentilationMode const SDLVentilationModeLower = @"LOWER";
+SDLVentilationMode const SDLVentilationModeBoth = @"BOTH";
+SDLVentilationMode const SDLVentilationModeNorth = @"NONE";
diff --git a/SmartDeviceLink/SmartDeviceLink.h b/SmartDeviceLink/SmartDeviceLink.h
index 5b69ab55f..c995a2892 100644
--- a/SmartDeviceLink/SmartDeviceLink.h
+++ b/SmartDeviceLink/SmartDeviceLink.h
@@ -50,6 +50,7 @@ FOUNDATION_EXPORT const unsigned char SmartDeviceLinkVersionString[];
#import "SDLAddSubMenu.h"
#import "SDLAlert.h"
#import "SDLAlertManeuver.h"
+#import "SDLButtonPress.h"
#import "SDLChangeRegistration.h"
#import "SDLCreateInteractionChoiceSet.h"
#import "SDLDeleteCommand.h"
@@ -61,6 +62,7 @@ FOUNDATION_EXPORT const unsigned char SmartDeviceLinkVersionString[];
#import "SDLEncodedSyncPData.h"
#import "SDLEndAudioPassThru.h"
#import "SDLGetDTCs.h"
+#import "SDLGetInteriorVehicleData.h"
#import "SDLGetSystemCapability.h"
#import "SDLGetVehicleData.h"
#import "SDLGetWaypoints.h"
@@ -76,6 +78,7 @@ FOUNDATION_EXPORT const unsigned char SmartDeviceLinkVersionString[];
#import "SDLSetAppIcon.h"
#import "SDLSetDisplayLayout.h"
#import "SDLSetGlobalProperties.h"
+#import "SDLSetInteriorVehicleData.h"
#import "SDLSetMediaClockTimer.h"
#import "SDLShow.h"
#import "SDLShowConstantTBT.h"
@@ -96,6 +99,7 @@ FOUNDATION_EXPORT const unsigned char SmartDeviceLinkVersionString[];
#import "SDLAddSubMenuResponse.h"
#import "SDLAlertManeuverResponse.h"
#import "SDLAlertResponse.h"
+#import "SDLButtonPressResponse.h"
#import "SDLChangeRegistrationResponse.h"
#import "SDLCreateInteractionChoiceSetResponse.h"
#import "SDLDeleteCommandResponse.h"
@@ -108,6 +112,7 @@ FOUNDATION_EXPORT const unsigned char SmartDeviceLinkVersionString[];
#import "SDLEndAudioPassThruResponse.h"
#import "SDLGenericResponse.h"
#import "SDLGetDTCsResponse.h"
+#import "SDLGetInteriorVehicleDataResponse.h"
#import "SDLGetSystemCapabilityResponse.h"
#import "SDLGetVehicleDataResponse.h"
#import "SDLGetWaypointsResponse.h"
@@ -123,6 +128,7 @@ FOUNDATION_EXPORT const unsigned char SmartDeviceLinkVersionString[];
#import "SDLSetAppIconResponse.h"
#import "SDLSetDisplayLayoutResponse.h"
#import "SDLSetGlobalPropertiesResponse.h"
+#import "SDLSetInteriorVehicleDataResponse.h"
#import "SDLSetMediaClockTimerResponse.h"
#import "SDLShowConstantTBTResponse.h"
#import "SDLShowResponse.h"
@@ -148,6 +154,7 @@ FOUNDATION_EXPORT const unsigned char SmartDeviceLinkVersionString[];
#import "SDLOnEncodedSyncPData.h"
#import "SDLOnHMIStatus.h"
#import "SDLOnHashChange.h"
+#import "SDLOnInteriorVehicleData.h"
#import "SDLOnKeyboardInput.h"
#import "SDLOnLanguageChange.h"
#import "SDLOnLockScreenStatus.h"
@@ -168,6 +175,8 @@ FOUNDATION_EXPORT const unsigned char SmartDeviceLinkVersionString[];
#import "SDLButtonCapabilities.h"
#import "SDLChoice.h"
#import "SDLClusterModeStatus.h"
+#import "SDLClimateControlCapabilities.h"
+#import "SDLClimateControlData.h"
#import "SDLDIDResult.h"
#import "SDLDateTime.h"
#import "SDLDeviceInfo.h"
@@ -186,12 +195,17 @@ FOUNDATION_EXPORT const unsigned char SmartDeviceLinkVersionString[];
#import "SDLLocationCoordinate.h"
#import "SDLLocationDetails.h"
#import "SDLMenuParams.h"
+#import "SDLModuleData.h"
#import "SDLMyKey.h"
#import "SDLNavigationCapability.h"
#import "SDLParameterPermissions.h"
#import "SDLPermissionItem.h"
#import "SDLPhoneCapability.h"
#import "SDLPresetBankCapabilities.h"
+#import "SDLRadioControlCapabilities.h"
+#import "SDLRadioControlData.h"
+#import "SDLRdsData.h"
+#import "SDLRemoteControlCapabilities.h"
#import "SDLScreenParams.h"
#import "SDLSingleTireStatus.h"
#import "SDLSoftButton.h"
@@ -200,6 +214,7 @@ FOUNDATION_EXPORT const unsigned char SmartDeviceLinkVersionString[];
#import "SDLSyncMsgVersion.h"
#import "SDLSystemCapability.h"
#import "SDLTTSChunk.h"
+#import "SDLTemperature.h"
#import "SDLTextField.h"
#import "SDLTireStatus.h"
#import "SDLTouchCoord.h"
@@ -224,6 +239,7 @@ FOUNDATION_EXPORT const unsigned char SmartDeviceLinkVersionString[];
#import "SDLCharacterSet.h"
#import "SDLCompassDirection.h"
#import "SDLComponentVolumeStatus.h"
+#import "SDLDefrostZone.h"
#import "SDLDeliveryMode.h"
#import "SDLDeviceLevelStatus.h"
#import "SDLDimension.h"
@@ -249,6 +265,7 @@ FOUNDATION_EXPORT const unsigned char SmartDeviceLinkVersionString[];
#import "SDLLockScreenStatus.h"
#import "SDLMaintenanceModeStatus.h"
#import "SDLMediaClockFormat.h"
+#import "SDLModuleType.h"
#import "SDLPRNDL.h"
#import "SDLPermissionStatus.h"
#import "SDLPowerModeQualificationStatus.h"
@@ -256,6 +273,8 @@ FOUNDATION_EXPORT const unsigned char SmartDeviceLinkVersionString[];
#import "SDLPredefinedLayout.h"
#import "SDLPrerecordedSpeech.h"
#import "SDLPrimaryAudioSource.h"
+#import "SDLRadioBand.h"
+#import "SDLRadioState.h"
#import "SDLRPCMessageType.h"
#import "SDLRequestType.h"
#import "SDLResult.h"
@@ -266,6 +285,7 @@ FOUNDATION_EXPORT const unsigned char SmartDeviceLinkVersionString[];
#import "SDLSystemCapabilityType.h"
#import "SDLSystemContext.h"
#import "SDLTBTState.h"
+#import "SDLTemperatureUnit.h"
#import "SDLTextAlignment.h"
#import "SDLTextFieldName.h"
#import "SDLTimerMode.h"
@@ -278,6 +298,7 @@ FOUNDATION_EXPORT const unsigned char SmartDeviceLinkVersionString[];
#import "SDLVehicleDataResultCode.h"
#import "SDLVehicleDataStatus.h"
#import "SDLVehicleDataType.h"
+#import "SDLVentilationMode.h"
#import "SDLVrCapabilities.h"
#import "SDLWarningLightStatus.h"
#import "SDLWaypointType.h"
diff --git a/SmartDeviceLinkTests/DevAPISpecs/SDLNotificationDispatcherSpec.m b/SmartDeviceLinkTests/DevAPISpecs/SDLNotificationDispatcherSpec.m
index 3dff5dc9e..154a27a9b 100644
--- a/SmartDeviceLinkTests/DevAPISpecs/SDLNotificationDispatcherSpec.m
+++ b/SmartDeviceLinkTests/DevAPISpecs/SDLNotificationDispatcherSpec.m
@@ -25,6 +25,7 @@ describe(@"a notification dispatcher", ^{
expect(@([testDispatcher respondsToSelector:@selector(onAddSubMenuResponse:)])).to(beTruthy());
expect(@([testDispatcher respondsToSelector:@selector(onAlertManeuverResponse:)])).to(beTruthy());
expect(@([testDispatcher respondsToSelector:@selector(onAlertResponse:)])).to(beTruthy());
+ expect(@([testDispatcher respondsToSelector:@selector(onButtonPressResponse:)])).to(beTruthy());
expect(@([testDispatcher respondsToSelector:@selector(onChangeRegistrationResponse:)])).to(beTruthy());
expect(@([testDispatcher respondsToSelector:@selector(onCreateInteractionChoiceSetResponse:)])).to(beTruthy());
expect(@([testDispatcher respondsToSelector:@selector(onDeleteCommandResponse:)])).to(beTruthy());
@@ -37,6 +38,7 @@ describe(@"a notification dispatcher", ^{
expect(@([testDispatcher respondsToSelector:@selector(onError:)])).to(beTruthy());
expect(@([testDispatcher respondsToSelector:@selector(onGenericResponse:)])).to(beTruthy());
expect(@([testDispatcher respondsToSelector:@selector(onGetDTCsResponse:)])).to(beTruthy());
+ expect(@([testDispatcher respondsToSelector:@selector(onGetInteriorVehicleDataResponse:)])).to(beTruthy());
expect(@([testDispatcher respondsToSelector:@selector(onGetSystemCapabilityResponse:)])).to(beTruthy());
expect(@([testDispatcher respondsToSelector:@selector(onGetVehicleDataResponse:)])).to(beTruthy());
expect(@([testDispatcher respondsToSelector:@selector(onGetWayPointsResponse:)])).to(beTruthy());
@@ -67,6 +69,7 @@ describe(@"a notification dispatcher", ^{
expect(@([testDispatcher respondsToSelector:@selector(onSetAppIconResponse:)])).to(beTruthy());
expect(@([testDispatcher respondsToSelector:@selector(onSetDisplayLayoutResponse:)])).to(beTruthy());
expect(@([testDispatcher respondsToSelector:@selector(onSetGlobalPropertiesResponse:)])).to(beTruthy());
+ expect(@([testDispatcher respondsToSelector:@selector(onSetInteriorVehicleDataResponse:)])).to(beTruthy());
expect(@([testDispatcher respondsToSelector:@selector(onSetMediaClockTimerResponse:)])).to(beTruthy());
expect(@([testDispatcher respondsToSelector:@selector(onShowConstantTBTResponse:)])).to(beTruthy());
expect(@([testDispatcher respondsToSelector:@selector(onShowResponse:)])).to(beTruthy());
diff --git a/SmartDeviceLinkTests/RPCSpecs/EnumSpecs/SDLAppHMITypeSpec.m b/SmartDeviceLinkTests/RPCSpecs/EnumSpecs/SDLAppHMITypeSpec.m
index 037c569be..f00bfa300 100644
--- a/SmartDeviceLinkTests/RPCSpecs/EnumSpecs/SDLAppHMITypeSpec.m
+++ b/SmartDeviceLinkTests/RPCSpecs/EnumSpecs/SDLAppHMITypeSpec.m
@@ -25,6 +25,7 @@ describe(@"Individual Enum Value Tests", ^ {
expect(SDLAppHMITypeBackgroundProcess).to(equal(@"BACKGROUND_PROCESS"));
expect(SDLAppHMITypeTesting).to(equal(@"TESTING"));
expect(SDLAppHMITypeSystem).to(equal(@"SYSTEM"));
+ expect(SDLAppHMITypeRemoteControl).to(equal(@"REMOTE_CONTROL"));
});
});
diff --git a/SmartDeviceLinkTests/RPCSpecs/EnumSpecs/SDLButtonNameSpec.m b/SmartDeviceLinkTests/RPCSpecs/EnumSpecs/SDLButtonNameSpec.m
index aa0d73a37..9a2813199 100644
--- a/SmartDeviceLinkTests/RPCSpecs/EnumSpecs/SDLButtonNameSpec.m
+++ b/SmartDeviceLinkTests/RPCSpecs/EnumSpecs/SDLButtonNameSpec.m
@@ -31,6 +31,24 @@ describe(@"Individual Enum Value Tests", ^ {
expect(SDLButtonNamePreset9).to(equal(@"PRESET_9"));
expect(SDLButtonNameCustomButton).to(equal(@"CUSTOM_BUTTON"));
expect(SDLButtonNameSearch).to(equal(@"SEARCH"));
+ expect(SDLButtonNameAcMax).to(equal(@"AC_MAX"));
+ expect(SDLButtonNameAc).to(equal(@"AC"));
+ expect(SDLButtonNameRecirculate).to(equal(@"RECIRCULATE"));
+ expect(SDLButtonNameFanUp).to(equal(@"FAN_UP"));
+ expect(SDLButtonNameFanDown).to(equal(@"FAN_DOWN"));
+ expect(SDLButtonNameTempUp).to(equal(@"TEMP_UP"));
+ expect(SDLButtonNameTempDown).to(equal(@"TEMP_DOWN"));
+ expect(SDLButtonNameDefrostMax).to(equal(@"DEFROST_MAX"));
+ expect(SDLButtonNameDefrostRear).to(equal(@"DEFROST_REAR"));
+ expect(SDLButtonNameDefrost).to(equal(@"DEFROST"));
+ expect(SDLButtonNameUpperVent).to(equal(@"UPPER_VENT"));
+ expect(SDLButtonNameLowerVent).to(equal(@"LOWER_VENT"));
+ expect(SDLButtonNameVolumeUp).to(equal(@"VOLUME_UP"));
+ expect(SDLButtonNameVolumeDown).to(equal(@"VOLUME_DOWN"));
+ expect(SDLButtonNameEject).to(equal(@"EJECT"));
+ expect(SDLButtonNameSource).to(equal(@"SOURCE"));
+ expect(SDLButtonNameShuffle).to(equal(@"SHUFFLE"));
+ expect(SDLButtonNameRepeat).to(equal(@"REPEAT"));
});
});
diff --git a/SmartDeviceLinkTests/RPCSpecs/EnumSpecs/SDLRadioBandSpec.m b/SmartDeviceLinkTests/RPCSpecs/EnumSpecs/SDLRadioBandSpec.m
new file mode 100644
index 000000000..76e591302
--- /dev/null
+++ b/SmartDeviceLinkTests/RPCSpecs/EnumSpecs/SDLRadioBandSpec.m
@@ -0,0 +1,22 @@
+//
+// SDLRadioBandSpec.m
+// SmartDeviceLink-iOS
+
+#import <Foundation/Foundation.h>
+
+#import <Quick/Quick.h>
+#import <Nimble/Nimble.h>
+
+#import "SDLRadioBand.h"
+
+QuickSpecBegin(SDLRadioBandSpec)
+
+describe(@"Individual Enum Value Tests", ^ {
+ it(@"Should match internal values", ^ {
+ expect(SDLRadioBandAM).to(equal(@"AM"));
+ expect(SDLRadioBandFM).to(equal(@"FM"));
+ expect(SDLRadioBandXM).to(equal(@"XM"));
+ });
+});
+
+QuickSpecEnd
diff --git a/SmartDeviceLinkTests/RPCSpecs/EnumSpecs/SDLRadioStateSpec.m b/SmartDeviceLinkTests/RPCSpecs/EnumSpecs/SDLRadioStateSpec.m
new file mode 100644
index 000000000..aa48a8c37
--- /dev/null
+++ b/SmartDeviceLinkTests/RPCSpecs/EnumSpecs/SDLRadioStateSpec.m
@@ -0,0 +1,24 @@
+//
+// SDLRadioStateSpec.m
+// SmartDeviceLink-iOS
+//
+
+#import <Foundation/Foundation.h>
+
+#import <Quick/Quick.h>
+#import <Nimble/Nimble.h>
+
+#import "SDLRadioState.h"
+
+QuickSpecBegin(SDLRadioStateSpec)
+
+describe(@"Individual Enum Value Tests", ^ {
+ it(@"Should match internal values", ^ {
+ expect(SDLRadioBandAcquiring).to(equal(@"ACQUIRING"));
+ expect(SDLRadioStateAcquired).to(equal(@"ACQUIRED"));
+ expect(SDLRadioStateMulticast).to(equal(@"MULTICAST"));
+ expect(SDLRadioStateNotFound).to(equal(@"NOT_FOUND"));
+ });
+});
+
+QuickSpecEnd
diff --git a/SmartDeviceLinkTests/RPCSpecs/EnumSpecs/SDLResultSpec.m b/SmartDeviceLinkTests/RPCSpecs/EnumSpecs/SDLResultSpec.m
index f2682b0b4..239140d19 100644
--- a/SmartDeviceLinkTests/RPCSpecs/EnumSpecs/SDLResultSpec.m
+++ b/SmartDeviceLinkTests/RPCSpecs/EnumSpecs/SDLResultSpec.m
@@ -47,6 +47,9 @@ describe(@"Individual Enum Value Tests", ^ {
expect(SDLResultInvalidCertificate).to(equal(@"INVALID_CERT"));
expect(SDLResultExpiredCertificate).to(equal(@"EXPIRED_CERT"));
expect(SDLResultResumeFailed).to(equal(@"RESUME_FAILED"));
+ expect(SDLResultDataNotAvailable).to(equal(@"DATA_NOT_AVAILABLE"));
+ expect(SDLResultReadOnly).to(equal(@"READ_ONLY"));
+
});
});
diff --git a/SmartDeviceLinkTests/RPCSpecs/EnumSpecs/SDLSystemCapabilityTypeSpec.m b/SmartDeviceLinkTests/RPCSpecs/EnumSpecs/SDLSystemCapabilityTypeSpec.m
index cfc5d85f4..0ca09feed 100644
--- a/SmartDeviceLinkTests/RPCSpecs/EnumSpecs/SDLSystemCapabilityTypeSpec.m
+++ b/SmartDeviceLinkTests/RPCSpecs/EnumSpecs/SDLSystemCapabilityTypeSpec.m
@@ -13,6 +13,8 @@ describe(@"Individual Enum Value Tests", ^ {
expect(SDLSystemCapabilityTypeNavigation).to(equal(@"NAVIGATION"));
expect(SDLSystemCapabilityTypePhoneCall).to(equal(@"PHONE_CALL"));
expect(SDLSystemCapabilityTypeVideoStreaming).to(equal(@"VIDEO_STREAMING"));
+ expect(SDLSystemCapabilityTypeAudioStreaming).to(equal(@"AUDIO_STREAMING"));
+ expect(SDLSystemCapabilityTypeRemoteControl).to(equal(@"REMOTE_CONTROL"));
});
});
diff --git a/SmartDeviceLinkTests/RPCSpecs/EnumSpecs/SDLTemperatureUnitSpec.m b/SmartDeviceLinkTests/RPCSpecs/EnumSpecs/SDLTemperatureUnitSpec.m
new file mode 100644
index 000000000..434b23414
--- /dev/null
+++ b/SmartDeviceLinkTests/RPCSpecs/EnumSpecs/SDLTemperatureUnitSpec.m
@@ -0,0 +1,22 @@
+//
+// SDLTemperatureUnitSpec.m
+// SmartDeviceLink-iOS
+//
+
+#import <Foundation/Foundation.h>
+
+#import <Quick/Quick.h>
+#import <Nimble/Nimble.h>
+
+#import "SDLTemperatureUnit.h"
+
+QuickSpecBegin(SDLTemperatureUnitSpec)
+
+describe(@"Individual Enum Value Tests", ^ {
+ it(@"Should match internal values", ^ {
+ expect(SDLTemperatureUnitCelsius).to(equal(@"CELSIUS"));
+ expect(SDLTemperatureUnitFahrenheit).to(equal(@"FAHRENHEIT"));
+ });
+});
+
+QuickSpecEnd
diff --git a/SmartDeviceLinkTests/RPCSpecs/EnumSpecs/SDLVentilationModeSpec.m b/SmartDeviceLinkTests/RPCSpecs/EnumSpecs/SDLVentilationModeSpec.m
new file mode 100644
index 000000000..c7012aabf
--- /dev/null
+++ b/SmartDeviceLinkTests/RPCSpecs/EnumSpecs/SDLVentilationModeSpec.m
@@ -0,0 +1,24 @@
+//
+// SDLVentilationModeSpec.m
+// SmartDeviceLink-iOS
+//
+
+#import <Foundation/Foundation.h>
+
+#import <Quick/Quick.h>
+#import <Nimble/Nimble.h>
+
+#import "SDLVentilationMode.h"
+
+QuickSpecBegin(SDLVentilationModeSpec)
+
+describe(@"Individual Enum Value Tests", ^ {
+ it(@"Should match internal values", ^ {
+ expect(SDLVentilationModeUpper).to(equal(@"UPPER"));
+ expect(SDLVentilationModeLower).to(equal(@"LOWER"));
+ expect(SDLVentilationModeBoth).to(equal(@"BOTH"));
+ expect(SDLVentilationModeNorth).to(equal(@"NONE"));
+ });
+});
+
+QuickSpecEnd
diff --git a/SmartDeviceLinkTests/RPCSpecs/NotificationSpecs/SDLOnInteriorVehicleDataSpec.m b/SmartDeviceLinkTests/RPCSpecs/NotificationSpecs/SDLOnInteriorVehicleDataSpec.m
new file mode 100644
index 000000000..5f846d988
--- /dev/null
+++ b/SmartDeviceLinkTests/RPCSpecs/NotificationSpecs/SDLOnInteriorVehicleDataSpec.m
@@ -0,0 +1,44 @@
+//
+// SDLOnInteriorVehicleDataSpec.m
+// SmartDeviceLink-iOS
+//
+
+#import <Foundation/Foundation.h>
+
+#import <Quick/Quick.h>
+#import <Nimble/Nimble.h>
+
+#import "SDLOnInteriorVehicleData.h"
+#import "SDLNames.h"
+#import "SDLModuleData.h"
+
+QuickSpecBegin(SDLOnInteriorVehicleDataSpec)
+SDLModuleData* someModuleData = [[SDLModuleData alloc] init];
+
+describe(@"Getter/Setter Tests", ^ {
+ it(@"Should set and get correctly", ^ {
+ SDLOnInteriorVehicleData* testNotification = [[SDLOnInteriorVehicleData alloc] init];
+
+ testNotification.moduleData = someModuleData;
+
+ expect(testNotification.moduleData).to(equal(someModuleData));
+ });
+
+ it(@"Should get correctly when initialized", ^ {
+ NSMutableDictionary<NSString *, id> *dict = [@{SDLNameNotification:
+ @{SDLNameParameters:
+ @{SDLNameModuleData:someModuleData},
+ SDLNameOperationName:SDLNameOnInteriorVehicleData}} mutableCopy];
+ SDLOnInteriorVehicleData* testNotification = [[SDLOnInteriorVehicleData alloc] initWithDictionary:dict];
+
+ expect(testNotification.moduleData).to(equal(someModuleData));
+ });
+
+ it(@"Should return nil if not set", ^ {
+ SDLOnInteriorVehicleData* testNotification = [[SDLOnInteriorVehicleData alloc] init];
+
+ expect(testNotification.moduleData).to(beNil());
+ });
+});
+
+QuickSpecEnd
diff --git a/SmartDeviceLinkTests/RPCSpecs/RequestSpecs/SDLButtonPressSpec.m b/SmartDeviceLinkTests/RPCSpecs/RequestSpecs/SDLButtonPressSpec.m
new file mode 100644
index 000000000..5ef805dff
--- /dev/null
+++ b/SmartDeviceLinkTests/RPCSpecs/RequestSpecs/SDLButtonPressSpec.m
@@ -0,0 +1,56 @@
+//
+// SDLButtonPressSpec.m
+// SmartDeviceLink-iOS
+//
+
+#import <Foundation/Foundation.h>
+
+#import <Quick/Quick.h>
+#import <Nimble/Nimble.h>
+
+#import "SDLNames.h"
+#import "SDLButtonPress.h"
+#import "SDLModuleType.h"
+#import "SDLButtonName.h"
+#import "SDLButtonPressMode.h"
+
+QuickSpecBegin(SDLButtonPressSpec)
+
+describe(@"Getter/Setter Tests", ^ {
+ it(@"Should set and get correctly", ^ {
+ SDLButtonPress* testRequest = [[SDLButtonPress alloc] init];
+
+ testRequest.moduleType = SDLModuleTypeClimate;
+ testRequest.buttonName = SDLButtonNameAc;
+ testRequest.buttonPressMode = SDLButtonPressModeShort;
+
+ expect(testRequest.moduleType).to(equal(SDLModuleTypeClimate));
+ expect(testRequest.buttonName).to(equal(SDLButtonNameAc));
+ expect(testRequest.buttonPressMode).to(equal(SDLButtonPressModeShort));
+
+ });
+
+ it(@"Should get correctly when initialized", ^ {
+ NSMutableDictionary<NSString *, id> *dict = [@{SDLNameRequest:
+ @{SDLNameParameters:
+ @{SDLNameModuleType : SDLModuleTypeClimate,
+ SDLNameButtonName : SDLButtonNameAc,
+ SDLNameButtonPressMode : SDLButtonPressModeShort},
+ SDLNameOperationName:SDLNameButtonPress}} mutableCopy];
+ SDLButtonPress* testRequest = [[SDLButtonPress alloc] initWithDictionary:dict];
+
+ expect(testRequest.moduleType).to(equal(SDLModuleTypeClimate));
+ expect(testRequest.buttonName).to(equal(SDLButtonNameAc));
+ expect(testRequest.buttonPressMode).to(equal(SDLButtonPressModeShort));
+ });
+
+ it(@"Should return nil if not set", ^ {
+ SDLButtonPress* testRequest = [[SDLButtonPress alloc] init];
+
+ expect(testRequest.moduleType).to(beNil());
+ expect(testRequest.buttonName).to(beNil());
+ expect(testRequest.buttonPressMode).to(beNil());
+ });
+});
+
+QuickSpecEnd
diff --git a/SmartDeviceLinkTests/RPCSpecs/RequestSpecs/SDLGetInteriorVehicleDataSpec.m b/SmartDeviceLinkTests/RPCSpecs/RequestSpecs/SDLGetInteriorVehicleDataSpec.m
new file mode 100644
index 000000000..32633802a
--- /dev/null
+++ b/SmartDeviceLinkTests/RPCSpecs/RequestSpecs/SDLGetInteriorVehicleDataSpec.m
@@ -0,0 +1,47 @@
+//
+// SDLGetInteriorVehicleDataSpec.m
+// SmartDeviceLink-iOS
+//
+
+#import <Foundation/Foundation.h>
+
+#import <Quick/Quick.h>
+#import <Nimble/Nimble.h>
+
+#import "SDLGetInteriorVehicleData.h"
+#import "SDLModuleType.h"
+#import "SDLNames.h"
+
+QuickSpecBegin(SDLGetInteriorVehicleDataSpec)
+
+describe(@"Getter/Setter Tests", ^ {
+ it(@"Should set and get correctly", ^ {
+ SDLGetInteriorVehicleData* testRequest = [[SDLGetInteriorVehicleData alloc] init];
+ testRequest.moduleType = SDLModuleTypeRadio;
+ testRequest.subscribe = @YES;
+
+ expect(testRequest.moduleType).to(equal(SDLModuleTypeRadio));
+ expect(testRequest.subscribe).to(equal(@YES));
+ });
+
+ it(@"Should get correctly when initialized", ^ {
+ NSMutableDictionary<NSString *, id> *dict = [@{SDLNameRequest:
+ @{SDLNameParameters:
+ @{SDLNameModuleType : SDLModuleTypeRadio,
+ SDLNameSubscribe : @YES},
+ SDLNameOperationName:SDLNameGetInteriorVehicleData}} mutableCopy];
+ SDLGetInteriorVehicleData* testRequest = [[SDLGetInteriorVehicleData alloc] initWithDictionary:dict];
+
+ expect(testRequest.moduleType).to(equal(SDLModuleTypeRadio));
+ expect(testRequest.subscribe).to(equal(@YES));
+ });
+
+ it(@"Should return nil if not set", ^ {
+ SDLGetInteriorVehicleData* testRequest = [[SDLGetInteriorVehicleData alloc] init];
+
+ expect(testRequest.moduleType).to(beNil());
+ expect(testRequest.subscribe).to(beNil());
+ });
+});
+
+QuickSpecEnd
diff --git a/SmartDeviceLinkTests/RPCSpecs/RequestSpecs/SDLSetInteriorVehicleDataSpec.m b/SmartDeviceLinkTests/RPCSpecs/RequestSpecs/SDLSetInteriorVehicleDataSpec.m
new file mode 100644
index 000000000..2c87a3855
--- /dev/null
+++ b/SmartDeviceLinkTests/RPCSpecs/RequestSpecs/SDLSetInteriorVehicleDataSpec.m
@@ -0,0 +1,45 @@
+//
+// SDLSetInteriorVehicleDataSpec.m
+// SmartDeviceLink-iOS
+//
+
+#import <Foundation/Foundation.h>
+
+#import <Quick/Quick.h>
+#import <Nimble/Nimble.h>
+
+#import "SDLSetInteriorVehicleData.h"
+#import "SDLNames.h"
+#import "SDLModuleData.h"
+
+
+QuickSpecBegin(SDLSetInteriorVehicleDataSpec)
+
+SDLModuleData *someModuleData = [[SDLModuleData alloc] init];
+
+describe(@"Getter/Setter Tests", ^ {
+ it(@"Should set and get correctly", ^ {
+ SDLSetInteriorVehicleData* testRequest = [[SDLSetInteriorVehicleData alloc] init];
+ testRequest.moduleData = someModuleData;
+
+ expect(testRequest.moduleData).to(equal(someModuleData));
+ });
+
+ it(@"Should get correctly when initialized", ^ {
+ NSMutableDictionary<NSString *, id> *dict = [@{SDLNameRequest:
+ @{SDLNameParameters:
+ @{SDLNameModuleData : someModuleData},
+ SDLNameOperationName:SDLNameSetInteriorVehicleData}} mutableCopy];
+ SDLSetInteriorVehicleData* testRequest = [[SDLSetInteriorVehicleData alloc] initWithDictionary:dict];
+
+ expect(testRequest.moduleData).to(equal(someModuleData));
+ });
+
+ it(@"Should return nil if not set", ^ {
+ SDLSetInteriorVehicleData* testRequest = [[SDLSetInteriorVehicleData alloc] init];
+
+ expect(testRequest.moduleData).to(beNil());
+ });
+});
+
+QuickSpecEnd
diff --git a/SmartDeviceLinkTests/RPCSpecs/ResponseSpecs/SDLButtonPressResponseSpec.m b/SmartDeviceLinkTests/RPCSpecs/ResponseSpecs/SDLButtonPressResponseSpec.m
new file mode 100644
index 000000000..d9fc72fc8
--- /dev/null
+++ b/SmartDeviceLinkTests/RPCSpecs/ResponseSpecs/SDLButtonPressResponseSpec.m
@@ -0,0 +1,16 @@
+//
+// SDLButtonPressResponseSpec.m
+// SmartDeviceLink-iOS
+//
+
+#import <Foundation/Foundation.h>
+
+#import <Quick/Quick.h>
+#import <Nimble/Nimble.h>
+
+#import "SDLButtonPressResponse.h"
+#import "SDLNames.h"
+
+QuickSpecBegin(SDLButtonPressResponseSpec)
+
+QuickSpecEnd
diff --git a/SmartDeviceLinkTests/RPCSpecs/ResponseSpecs/SDLGetInteriorVehicleDataResponseSpec.m b/SmartDeviceLinkTests/RPCSpecs/ResponseSpecs/SDLGetInteriorVehicleDataResponseSpec.m
new file mode 100644
index 000000000..6fea915fd
--- /dev/null
+++ b/SmartDeviceLinkTests/RPCSpecs/ResponseSpecs/SDLGetInteriorVehicleDataResponseSpec.m
@@ -0,0 +1,51 @@
+//
+// SDLGetInteriorVehicleDataResponseSpec.m
+// SmartDeviceLink-iOS
+//
+
+#import <Foundation/Foundation.h>
+
+#import <Quick/Quick.h>
+#import <Nimble/Nimble.h>
+
+#import "SDLGetInteriorVehicleDataResponse.h"
+#import "SDLModuleData.h"
+#import "SDLNames.h"
+
+QuickSpecBegin(SDLGetInteriorVehicleDataResponseSpec)
+SDLModuleData* someModuleData = [[SDLModuleData alloc] init];
+
+describe(@"Getter/Setter Tests", ^ {
+ it(@"Should set and get correctly", ^ {
+ SDLGetInteriorVehicleDataResponse* testResponse = [[SDLGetInteriorVehicleDataResponse alloc] init];
+
+ testResponse.moduleData = someModuleData;
+ testResponse.isSubscribed = @NO;
+
+ expect(testResponse.moduleData).to(equal(someModuleData));
+ expect(testResponse.isSubscribed).to(equal(@NO));
+ });
+
+
+
+ it(@"Should get correctly when initialized", ^ {
+ NSMutableDictionary<NSString *, id> *dict = [@{SDLNameResponse:
+ @{SDLNameParameters:
+ @{SDLNameModuleData:someModuleData,
+ SDLNameIsSubscribed:@NO},
+ SDLNameOperationName:SDLNameGetInteriorVehicleData}} mutableCopy];
+ SDLGetInteriorVehicleDataResponse* testResponse = [[SDLGetInteriorVehicleDataResponse alloc] initWithDictionary:dict];
+
+ expect(testResponse.moduleData).to(equal(someModuleData));
+ expect(testResponse.isSubscribed).to(equal(@NO));
+ });
+
+ it(@"Should return nil if not set", ^ {
+ SDLGetInteriorVehicleDataResponse* testResponse = [[SDLGetInteriorVehicleDataResponse alloc] init];
+
+ expect(testResponse.moduleData).to(beNil());
+ expect(testResponse.isSubscribed).to(beNil());
+ });
+});
+
+QuickSpecEnd
diff --git a/SmartDeviceLinkTests/RPCSpecs/ResponseSpecs/SDLSetInteriorVehicleDataResponseSpec.m b/SmartDeviceLinkTests/RPCSpecs/ResponseSpecs/SDLSetInteriorVehicleDataResponseSpec.m
new file mode 100644
index 000000000..a026bb5a9
--- /dev/null
+++ b/SmartDeviceLinkTests/RPCSpecs/ResponseSpecs/SDLSetInteriorVehicleDataResponseSpec.m
@@ -0,0 +1,46 @@
+//
+// SDLSetInteriorVehicleDataResponseSpec.m
+// SmartDeviceLink-iOS
+//
+
+#import <Foundation/Foundation.h>
+
+#import <Quick/Quick.h>
+#import <Nimble/Nimble.h>
+
+#import "SDLSetInteriorVehicleDataResponse.h"
+#import "SDLModuleData.h"
+#import "SDLNames.h"
+
+QuickSpecBegin(SDLSetInteriorVehicleDataResponseSpec)
+
+SDLModuleData *someModuleData = [[SDLModuleData alloc] init];
+
+describe(@"Getter/Setter Tests", ^ {
+ it(@"Should set and get correctly", ^ {
+ SDLSetInteriorVehicleDataResponse* testResponse = [[SDLSetInteriorVehicleDataResponse alloc] init];
+ testResponse.moduleData = someModuleData;
+
+ expect(testResponse.moduleData).to(equal(someModuleData));
+ });
+
+
+
+ it(@"Should get correctly when initialized", ^ {
+ NSMutableDictionary<NSString *, id> *dict = [@{SDLNameResponse:
+ @{SDLNameParameters:
+ @{SDLNameModuleData:someModuleData},
+ SDLNameOperationName:SDLNameSetInteriorVehicleData}} mutableCopy];
+ SDLSetInteriorVehicleDataResponse* testResponse = [[SDLSetInteriorVehicleDataResponse alloc] initWithDictionary:dict];
+
+ expect(testResponse.moduleData).to(equal(someModuleData));
+ });
+
+ it(@"Should return nil if not set", ^ {
+ SDLSetInteriorVehicleDataResponse* testResponse = [[SDLSetInteriorVehicleDataResponse alloc] init];
+
+ expect(testResponse.moduleData).to(beNil());
+ });
+});
+
+QuickSpecEnd
diff --git a/SmartDeviceLinkTests/RPCSpecs/StructSpecs/SDLClimateControlCapabilitiesSpec.m b/SmartDeviceLinkTests/RPCSpecs/StructSpecs/SDLClimateControlCapabilitiesSpec.m
new file mode 100644
index 000000000..dc8bef59f
--- /dev/null
+++ b/SmartDeviceLinkTests/RPCSpecs/StructSpecs/SDLClimateControlCapabilitiesSpec.m
@@ -0,0 +1,98 @@
+//
+// SDLClimateControlCapabilitiesSpec.m
+// SmartDeviceLink-iOS
+//
+
+#import <Foundation/Foundation.h>
+
+#import <Quick/Quick.h>
+#import <Nimble/Nimble.h>
+
+#import "SDLClimateControlCapabilities.h"
+#import "SDLDefrostZone.h"
+#import "SDLVentilationMode.h"
+#import "SDLNames.h"
+
+
+QuickSpecBegin(SDLClimateControlCapabilitiesSpec)
+
+describe(@"Getter/Setter Tests", ^ {
+ it(@"Should set and get correctly", ^ {
+
+ SDLClimateControlCapabilities* testStruct = [[SDLClimateControlCapabilities alloc] init];
+ testStruct.moduleName = @"Name";
+ testStruct.fanSpeedAvailable = @YES;
+ testStruct.desiredTemperatureAvailable = @NO;
+ testStruct.acEnableAvailable = @NO;
+ testStruct.acMaxEnableAvailable = @NO;
+ testStruct.circulateAirEnableAvailable = @YES;
+ testStruct.autoModeEnableAvailable = @NO;
+ testStruct.dualModeEnableAvailable = @NO;
+ testStruct.defrostZoneAvailable = @YES;
+ testStruct.defrostZone = [@[SDLDefrostZoneFront] copy];
+ testStruct.ventilationModeAvailable = @NO;
+ testStruct.ventilationMode = [@[SDLVentilationModeUpper] copy];
+
+ expect(testStruct.moduleName).to(equal(@"Name"));
+ expect(testStruct.fanSpeedAvailable).to(equal(@YES));
+ expect(testStruct.desiredTemperatureAvailable).to(equal(@NO));
+ expect(testStruct.acEnableAvailable).to(equal(@NO));
+ expect(testStruct.acMaxEnableAvailable).to(equal(@NO));
+ expect(testStruct.circulateAirEnableAvailable).to(equal(@YES));
+ expect(testStruct.autoModeEnableAvailable).to(equal(@NO));
+ expect(testStruct.dualModeEnableAvailable).to(equal(@NO));
+ expect(testStruct.defrostZoneAvailable).to(equal(@YES));
+ expect(testStruct.defrostZone).to(equal([@[SDLDefrostZoneFront] copy]));
+ expect(testStruct.ventilationModeAvailable).to(equal(@NO));
+ expect(testStruct.ventilationMode).to(equal([@[SDLVentilationModeUpper] copy]));
+ });
+
+ it(@"Should get correctly when initialized", ^ {
+ NSMutableDictionary<NSString *, id> *dict = [@{SDLNameModuleName:@"Name",
+ SDLNameFanSpeedAvailable:@YES,
+ SDLNameDesiredTemperatureAvailable:@NO,
+ SDLNameAcEnableAvailable:@NO,
+ SDLNameAcMaxEnableAvailable:@NO,
+ SDLNameCirculateAirEnableAvailable:@YES,
+ SDLNameAutoModeEnableAvailable:@NO,
+ SDLNameDualModeEnableAvailable:@NO,
+ SDLNameDefrostZoneAvailable:@YES,
+ SDLNameDefrostZone:[@[SDLDefrostZoneFront] copy],
+ SDLNameVentilationModeAvailable:@NO,
+ SDLNameVentilationMode:[@[SDLVentilationModeUpper] copy]} mutableCopy];
+ SDLClimateControlCapabilities* testStruct = [[SDLClimateControlCapabilities alloc] initWithDictionary:dict];
+
+ expect(testStruct.moduleName).to(equal(@"Name"));
+ expect(testStruct.fanSpeedAvailable).to(equal(@YES));
+ expect(testStruct.desiredTemperatureAvailable).to(equal(@NO));
+ expect(testStruct.acEnableAvailable).to(equal(@NO));
+ expect(testStruct.acMaxEnableAvailable).to(equal(@NO));
+ expect(testStruct.circulateAirEnableAvailable).to(equal(@YES));
+ expect(testStruct.autoModeEnableAvailable).to(equal(@NO));
+ expect(testStruct.dualModeEnableAvailable).to(equal(@NO));
+ expect(testStruct.defrostZoneAvailable).to(equal(@YES));
+ expect(testStruct.defrostZone).to(equal([@[SDLDefrostZoneFront] copy]));
+ expect(testStruct.ventilationModeAvailable).to(equal(@NO));
+ expect(testStruct.ventilationMode).to(equal([@[SDLVentilationModeUpper] copy]));
+ });
+
+ it(@"Should return nil if not set", ^ {
+ SDLClimateControlCapabilities* testStruct = [[SDLClimateControlCapabilities alloc] init];
+
+ expect(testStruct.moduleName).to(beNil());
+ expect(testStruct.fanSpeedAvailable).to(beNil());
+ expect(testStruct.desiredTemperatureAvailable).to(beNil());
+ expect(testStruct.acEnableAvailable).to(beNil());
+ expect(testStruct.acMaxEnableAvailable).to(beNil());
+ expect(testStruct.circulateAirEnableAvailable).to(beNil());
+ expect(testStruct.autoModeEnableAvailable).to(beNil());
+ expect(testStruct.dualModeEnableAvailable).to(beNil());
+ expect(testStruct.defrostZoneAvailable).to(beNil());
+ expect(testStruct.defrostZone).to(beNil());
+ expect(testStruct.ventilationModeAvailable).to(beNil());
+ expect(testStruct.ventilationMode).to(beNil());
+
+ });
+});
+
+QuickSpecEnd
diff --git a/SmartDeviceLinkTests/RPCSpecs/StructSpecs/SDLClimateControlDataSpec.m b/SmartDeviceLinkTests/RPCSpecs/StructSpecs/SDLClimateControlDataSpec.m
new file mode 100644
index 000000000..fe81fb440
--- /dev/null
+++ b/SmartDeviceLinkTests/RPCSpecs/StructSpecs/SDLClimateControlDataSpec.m
@@ -0,0 +1,93 @@
+//
+// SDLClimateControlDataSpec.m
+// SmartDeviceLink-iOS
+//
+
+#import <Foundation/Foundation.h>
+
+#import <Quick/Quick.h>
+#import <Nimble/Nimble.h>
+
+#import "SDLClimateControlData.h"
+#import "SDLTemperature.h"
+#import "SDLDefrostZone.h"
+#import "SDLVentilationMode.h"
+#import "SDLNames.h"
+
+QuickSpecBegin(SDLClimateControlDataSpec)
+__block SDLTemperature* currentTemp = [[SDLTemperature alloc] init];
+__block SDLTemperature* desiredTemp = [[SDLTemperature alloc] init];
+
+describe(@"Getter/Setter Tests", ^ {
+
+ it(@"Should set and get correctly", ^ {
+ SDLClimateControlData* testStruct = [[SDLClimateControlData alloc] init];
+
+ testStruct.fanSpeed = @43;
+ testStruct.currentTemperature = currentTemp;
+ testStruct.desiredTemperature = desiredTemp;
+ testStruct.acEnable = @YES;
+ testStruct.circulateAirEnable = @YES;
+ testStruct.autoModeEnable = @NO;
+ testStruct.defrostZone = SDLDefrostZoneFront;
+ testStruct.dualModeEnable = @NO;
+ testStruct.acMaxEnable = @YES;
+ testStruct.ventilationMode = SDLVentilationModeBoth;
+
+ expect(testStruct.fanSpeed).to(equal(@43));
+ expect(testStruct.currentTemperature).to(equal(currentTemp));
+ expect(testStruct.desiredTemperature).to(equal(desiredTemp));
+ expect(testStruct.acEnable).to(equal(YES));
+ expect(testStruct.circulateAirEnable).to(equal(YES));
+ expect(testStruct.autoModeEnable).to(equal(NO));
+ expect(testStruct.defrostZone).to(equal(SDLDefrostZoneFront));
+ expect(testStruct.dualModeEnable).to(equal(NO));
+ expect(testStruct.acMaxEnable).to(equal(YES));
+ expect(testStruct.ventilationMode).to(equal(SDLVentilationModeBoth));
+ });
+});
+
+describe(@"Initialization tests", ^{
+ it(@"Should get correctly when initialized with a dictionary", ^ {
+ NSMutableDictionary<NSString *, id> *dict = [@{SDLNameFanSpeed : @43,
+ SDLNameCurrentTemperature : currentTemp,
+ SDLNameDesiredTemperature : desiredTemp,
+ SDLNameAcEnable : @YES,
+ SDLNameCirculateAirEnable : @YES,
+ SDLNameAutoModeEnable : @NO,
+ SDLNameDefrostZone : SDLDefrostZoneFront,
+ SDLNameDualModeEnable : @NO,
+ SDLNameAcMaxEnable : @YES,
+ SDLNameVentilationMode :SDLVentilationModeBoth} mutableCopy];
+ SDLClimateControlData* testStruct = [[SDLClimateControlData alloc] initWithDictionary:dict];
+
+ expect(testStruct.fanSpeed).to(equal(@43));
+ expect(testStruct.currentTemperature).to(equal(currentTemp));
+ expect(testStruct.desiredTemperature).to(equal(desiredTemp));
+ expect(testStruct.acEnable).to(equal(YES));
+ expect(testStruct.circulateAirEnable).to(equal(YES));
+ expect(testStruct.autoModeEnable).to(equal(NO));
+ expect(testStruct.defrostZone).to(equal(SDLDefrostZoneFront));
+ expect(testStruct.dualModeEnable).to(equal(NO));
+ expect(testStruct.acMaxEnable).to(equal(YES));
+ expect(testStruct.ventilationMode).to(equal(SDLVentilationModeBoth));
+ });
+
+ it(@"Should return nil if not set", ^ {
+ SDLClimateControlData* testStruct = [[SDLClimateControlData alloc] init];
+
+ expect(testStruct.fanSpeed).to(beNil());
+ expect(testStruct.currentTemperature).to(beNil());
+ expect(testStruct.desiredTemperature).to(beNil());
+ expect(testStruct.acEnable).to(beNil());
+ expect(testStruct.circulateAirEnable).to(beNil());
+ expect(testStruct.autoModeEnable).to(beNil());
+ expect(testStruct.defrostZone).to(beNil());
+ expect(testStruct.dualModeEnable).to(beNil());
+ expect(testStruct.acMaxEnable).to(beNil());
+ expect(testStruct.ventilationMode).to(beNil());
+ });
+
+});
+
+QuickSpecEnd
diff --git a/SmartDeviceLinkTests/RPCSpecs/StructSpecs/SDLModuleDataSpec.m b/SmartDeviceLinkTests/RPCSpecs/StructSpecs/SDLModuleDataSpec.m
new file mode 100644
index 000000000..4b858829f
--- /dev/null
+++ b/SmartDeviceLinkTests/RPCSpecs/StructSpecs/SDLModuleDataSpec.m
@@ -0,0 +1,55 @@
+//
+// SDLModuleDataSpec.m
+// SmartDeviceLink-iOS
+//
+
+#import <Foundation/Foundation.h>
+
+#import <Quick/Quick.h>
+#import <Nimble/Nimble.h>
+
+#import "SDLModuleData.h"
+#import "SDLModuleType.h"
+#import "SDLClimateControlData.h"
+#import "SDLRadioControlData.h"
+#import "SDLNames.h"
+
+QuickSpecBegin(SDLModuleDataSpec)
+
+describe(@"Initialization tests", ^{
+ __block SDLRadioControlData* someRadioData = [[SDLRadioControlData alloc] init];
+ __block SDLClimateControlData* someClimateData = [[SDLClimateControlData alloc] init];
+
+ it(@"should properly initialize init", ^{
+ SDLModuleData* testStruct = [[SDLModuleData alloc] init];
+
+ expect(testStruct.moduleType).to(beNil());
+ expect(testStruct.radioControlData).to(beNil());
+ expect(testStruct.climateControlData).to(beNil());
+ });
+
+ it(@"should properly initialize initWithDictionary", ^{
+
+ NSMutableDictionary* dict = [@{SDLNameModuleType:SDLModuleTypeRadio,
+ SDLNameRadioControlData:someRadioData,
+ SDLNameClimateControlData:someClimateData} mutableCopy];
+ SDLModuleData* testStruct = [[SDLModuleData alloc] initWithDictionary:dict];
+
+ expect(testStruct.moduleType).to(equal(SDLModuleTypeRadio));
+ expect(testStruct.radioControlData).to(equal(someRadioData));
+ expect(testStruct.climateControlData).to(equal(someClimateData));
+ });
+
+ it(@"Should set and get correctly", ^{
+ SDLModuleData* testStruct = [[SDLModuleData alloc] init];
+ testStruct.moduleType = SDLModuleTypeRadio;
+ testStruct.radioControlData = someRadioData;
+ testStruct.climateControlData = someClimateData;
+
+ expect(testStruct.moduleType).to(equal(SDLModuleTypeRadio));
+ expect(testStruct.radioControlData).to(equal(someRadioData));
+ expect(testStruct.climateControlData).to(equal(someClimateData));
+ });
+});
+
+QuickSpecEnd
diff --git a/SmartDeviceLinkTests/RPCSpecs/StructSpecs/SDLRadioControlCapabilitiesSpec.m b/SmartDeviceLinkTests/RPCSpecs/StructSpecs/SDLRadioControlCapabilitiesSpec.m
new file mode 100644
index 000000000..90dfe9b38
--- /dev/null
+++ b/SmartDeviceLinkTests/RPCSpecs/StructSpecs/SDLRadioControlCapabilitiesSpec.m
@@ -0,0 +1,86 @@
+//
+// SDLRadioControlCapabilitiesSpec.m
+// SmartDeviceLink-iOS
+//
+
+#import <Foundation/Foundation.h>
+
+#import <Quick/Quick.h>
+#import <Nimble/Nimble.h>
+
+#import "SDLRadioControlCapabilities.h"
+#import "SDLNames.h"
+
+QuickSpecBegin(SDLRadioControlCapabilitiesSpec)
+
+describe(@"Initialization tests", ^{
+
+ it(@"should properly initialize init", ^{
+ SDLRadioControlCapabilities* testStruct = [[SDLRadioControlCapabilities alloc] init];
+
+ expect(testStruct.moduleName).to(beNil());
+ expect(testStruct.radioEnableAvailable).to(beNil());
+ expect(testStruct.radioBandAvailable).to(beNil());
+ expect(testStruct.radioFrequencyAvailable).to(beNil());
+ expect(testStruct.hdChannelAvailable).to(beNil());
+ expect(testStruct.rdsDataAvailable).to(beNil());
+ expect(testStruct.availableHDsAvailable).to(beNil());
+ expect(testStruct.stateAvailable).to(beNil());
+ expect(testStruct.signalStrengthAvailable).to(beNil());
+ expect(testStruct.signalChangeThresholdAvailable).to(beNil());
+ });
+
+ it(@"should properly initialize initWithDictionary", ^{
+
+ NSMutableDictionary* dict = [@{SDLNameModuleName : @"someName",
+ SDLNameRadioEnableAvailable : @YES,
+ SDLNameRadioBandAvailable : @YES,
+ SDLNameRadioFrequencyAvailable : @YES,
+ SDLNameHdChannelAvailable : @NO,
+ SDLNameRdsDataAvailable : @NO,
+ SDLNameAvailableHDsAvailable : @NO,
+ SDLNameStateAvailable : @YES,
+ SDLNameSignalStrengthAvailable : @YES,
+ SDLNameSignalChangeThresholdAvailable : @NO} mutableCopy];
+ SDLRadioControlCapabilities* testStruct = [[SDLRadioControlCapabilities alloc] initWithDictionary:dict];
+
+ expect(testStruct.moduleName).to(equal(@"someName"));
+ expect(testStruct.radioEnableAvailable).to(equal(@YES));
+ expect(testStruct.radioBandAvailable).to(equal(@YES));
+ expect(testStruct.radioFrequencyAvailable).to(equal(@YES));
+ expect(testStruct.hdChannelAvailable).to(equal(@NO));
+ expect(testStruct.rdsDataAvailable).to(equal(@NO));
+ expect(testStruct.availableHDsAvailable).to(equal(@NO));
+ expect(testStruct.stateAvailable).to(equal(@YES));
+ expect(testStruct.signalStrengthAvailable).to(equal(@YES));
+ expect(testStruct.signalChangeThresholdAvailable).to(equal(@NO));
+ });
+
+ it(@"Should set and get correctly", ^{
+ SDLRadioControlCapabilities* testStruct = [[SDLRadioControlCapabilities alloc] init];
+
+ testStruct.moduleName = @"someName";
+ testStruct.radioEnableAvailable = @YES;
+ testStruct.radioBandAvailable = @YES;
+ testStruct.radioFrequencyAvailable = @YES;
+ testStruct.hdChannelAvailable = @NO;
+ testStruct.rdsDataAvailable = @NO;
+ testStruct.availableHDsAvailable = @NO;
+ testStruct.stateAvailable = @YES;
+ testStruct.signalStrengthAvailable = @YES;
+ testStruct.signalChangeThresholdAvailable = @NO;
+
+ expect(testStruct.moduleName).to(equal(@"someName"));
+ expect(testStruct.radioEnableAvailable).to(equal(@YES));
+ expect(testStruct.radioBandAvailable).to(equal(@YES));
+ expect(testStruct.radioFrequencyAvailable).to(equal(@YES));
+ expect(testStruct.hdChannelAvailable).to(equal(@NO));
+ expect(testStruct.rdsDataAvailable).to(equal(@NO));
+ expect(testStruct.availableHDsAvailable).to(equal(@NO));
+ expect(testStruct.stateAvailable).to(equal(@YES));
+ expect(testStruct.signalStrengthAvailable).to(equal(@YES));
+ expect(testStruct.signalChangeThresholdAvailable).to(equal(@NO));
+ });
+});
+
+QuickSpecEnd
diff --git a/SmartDeviceLinkTests/RPCSpecs/StructSpecs/SDLRadioControlDataSpec.m b/SmartDeviceLinkTests/RPCSpecs/StructSpecs/SDLRadioControlDataSpec.m
new file mode 100644
index 000000000..df1cba09c
--- /dev/null
+++ b/SmartDeviceLinkTests/RPCSpecs/StructSpecs/SDLRadioControlDataSpec.m
@@ -0,0 +1,89 @@
+//
+// SDLRadioControlDataSpec.m
+// SmartDeviceLink-iOS
+//
+
+#import <Foundation/Foundation.h>
+
+#import <Quick/Quick.h>
+#import <Nimble/Nimble.h>
+
+#import "SDLRadioControlData.h"
+#import "SDLRadioBand.h"
+#import "SDLRadioState.h"
+#import "SDLRdsData.h"
+#import "SDLNames.h"
+
+QuickSpecBegin(SDLRadioControlDataSpec)
+__block SDLRdsData* someRdsData = [[SDLRdsData alloc] init];
+
+describe(@"Initialization tests", ^{
+
+ it(@"should properly initialize init", ^{
+ SDLRadioControlData* testStruct = [[SDLRadioControlData alloc] init];
+
+ expect(testStruct.frequencyInteger).to(beNil());
+ expect(testStruct.frequencyFraction).to(beNil());
+ expect(testStruct.band).to(beNil());
+ expect(testStruct.rdsData).to(beNil());
+ expect(testStruct.availableHDs).to(beNil());
+ expect(testStruct.hdChannel).to(beNil());
+ expect(testStruct.signalStrength).to(beNil());
+ expect(testStruct.signalChangeThreshold).to(beNil());
+ expect(testStruct.radioEnable).to(beNil());
+ expect(testStruct.state).to(beNil());
+ });
+
+ it(@"should properly initialize initWithDictionary", ^{
+
+ NSMutableDictionary* dict = [@{SDLNameFrequencyInteger : @101,
+ SDLNameFrequencyFraction : @7,
+ SDLNameBand : SDLRadioBandAM,
+ SDLNameRdsData : someRdsData,
+ SDLNameAvailableHDs : @2,
+ SDLNameHdChannel : @2,
+ SDLNameSignalStrength : @54,
+ SDLNameSignalChangeThreshold : @76,
+ SDLNameRadioEnable : @YES,
+ SDLNameState : SDLRadioStateNotFound} mutableCopy];
+ SDLRadioControlData* testStruct = [[SDLRadioControlData alloc] initWithDictionary:dict];
+
+ expect(testStruct.frequencyInteger).to(equal(@101));
+ expect(testStruct.frequencyFraction).to(equal(@7));
+ expect(testStruct.band).to(equal(SDLRadioBandAM));
+ expect(testStruct.rdsData).to(equal(someRdsData));
+ expect(testStruct.availableHDs).to(equal(@2));
+ expect(testStruct.hdChannel).to(equal(@2));
+ expect(testStruct.signalStrength).to(equal(@54));
+ expect(testStruct.signalChangeThreshold).to(equal(@76));
+ expect(testStruct.radioEnable).to(equal(@YES));
+ expect(testStruct.state).to(equal(SDLRadioStateNotFound));
+ });
+
+ it(@"Should set and get correctly", ^{
+ SDLRadioControlData* testStruct = [[SDLRadioControlData alloc] init];
+ testStruct.frequencyInteger = @101;
+ testStruct.frequencyFraction = @7;
+ testStruct.band = SDLRadioBandAM;
+ testStruct.rdsData = someRdsData;
+ testStruct.availableHDs = @2;
+ testStruct.hdChannel = @2;
+ testStruct.signalStrength = @54;
+ testStruct.signalChangeThreshold = @76;
+ testStruct.radioEnable = @YES;
+ testStruct.state = SDLRadioStateNotFound;
+
+ expect(testStruct.frequencyInteger).to(equal(@101));
+ expect(testStruct.frequencyFraction).to(equal(@7));
+ expect(testStruct.band).to(equal(SDLRadioBandAM));
+ expect(testStruct.rdsData).to(equal(someRdsData));
+ expect(testStruct.availableHDs).to(equal(@2));
+ expect(testStruct.hdChannel).to(equal(@2));
+ expect(testStruct.signalStrength).to(equal(@54));
+ expect(testStruct.signalChangeThreshold).to(equal(@76));
+ expect(testStruct.radioEnable).to(equal(@YES));
+ expect(testStruct.state).to(equal(SDLRadioStateNotFound));
+ });
+});
+
+QuickSpecEnd
diff --git a/SmartDeviceLinkTests/RPCSpecs/StructSpecs/SDLRdsDataSpec.m b/SmartDeviceLinkTests/RPCSpecs/StructSpecs/SDLRdsDataSpec.m
new file mode 100644
index 000000000..337d42a84
--- /dev/null
+++ b/SmartDeviceLinkTests/RPCSpecs/StructSpecs/SDLRdsDataSpec.m
@@ -0,0 +1,77 @@
+//
+// SDLRdsDataSpec.m
+// SmartDeviceLink-iOS
+//
+
+#import <Foundation/Foundation.h>
+
+#import <Quick/Quick.h>
+#import <Nimble/Nimble.h>
+
+#import "SDLRdsData.h"
+#import "SDLNames.h"
+
+QuickSpecBegin(SDLRdsDataSpec)
+
+describe(@"Initialization tests", ^{
+
+ it(@"should properly initialize init", ^{
+ SDLRdsData* testStruct = [[SDLRdsData alloc] init];
+
+
+ expect(testStruct.PS).to(beNil());
+ expect(testStruct.RT).to(beNil());
+ expect(testStruct.CT).to(beNil());
+ expect(testStruct.PI).to(beNil());
+ expect(testStruct.PTY).to(beNil());
+ expect(testStruct.TP).to(beNil());
+ expect(testStruct.TA).to(beNil());
+ expect(testStruct.REG).to(beNil());
+ });
+
+ it(@"should properly initialize initWithDictionary", ^{
+
+ NSMutableDictionary* dict = [@{SDLNamePS : @"ps",
+ SDLNameRT : @"rt",
+ SDLNameCT : @"2017-07-25T19:20:30-5:00",
+ SDLNamePI : @"pi",
+ SDLNamePTY : @5,
+ SDLNameTP : @NO,
+ SDLNameTA : @YES,
+ SDLNameREG : @"reg"} mutableCopy];
+ SDLRdsData* testStruct = [[SDLRdsData alloc] initWithDictionary:dict];
+
+ expect(testStruct.PS).to(equal(@"ps"));
+ expect(testStruct.RT).to(equal(@"rt"));
+ expect(testStruct.CT).to(equal(@"2017-07-25T19:20:30-5:00"));
+ expect(testStruct.PI).to(equal(@"pi"));
+ expect(testStruct.PTY).to(equal(@5));
+ expect(testStruct.TP).to(equal(@NO));
+ expect(testStruct.TA).to(equal(@YES));
+ expect(testStruct.REG).to(equal(@"reg"));
+ });
+
+ it(@"Should set and get correctly", ^{
+ SDLRdsData* testStruct = [[SDLRdsData alloc] init];
+
+ testStruct.PS = @"ps";
+ testStruct.RT = @"rt";
+ testStruct.CT = @"2017-07-25T19:20:30-5:00";
+ testStruct.PI = @"pi";
+ testStruct.PTY = @5;
+ testStruct.TP = @NO;
+ testStruct.TA = @YES;
+ testStruct.REG = @"reg";
+
+ expect(testStruct.PS).to(equal(@"ps"));
+ expect(testStruct.RT).to(equal(@"rt"));
+ expect(testStruct.CT).to(equal(@"2017-07-25T19:20:30-5:00"));
+ expect(testStruct.PI).to(equal(@"pi"));
+ expect(testStruct.PTY).to(equal(@5));
+ expect(testStruct.TP).to(equal(@NO));
+ expect(testStruct.TA).to(equal(@YES));
+ expect(testStruct.REG).to(equal(@"reg"));
+ });
+});
+
+QuickSpecEnd
diff --git a/SmartDeviceLinkTests/RPCSpecs/StructSpecs/SDLRemoteControlCapabilitiesSpec.m b/SmartDeviceLinkTests/RPCSpecs/StructSpecs/SDLRemoteControlCapabilitiesSpec.m
new file mode 100644
index 000000000..aae43af43
--- /dev/null
+++ b/SmartDeviceLinkTests/RPCSpecs/StructSpecs/SDLRemoteControlCapabilitiesSpec.m
@@ -0,0 +1,58 @@
+//
+// SDLRemoteControlCapabilitiesSpec.m
+// SmartDeviceLink-iOS
+//
+
+#import <Foundation/Foundation.h>
+
+#import <Quick/Quick.h>
+#import <Nimble/Nimble.h>
+
+#import "SDLRemoteControlCapabilities.h"
+#import "SDLClimateControlCapabilities.h"
+#import "SDLRadioControlCapabilities.h"
+#import "SDLButtonCapabilities.h"
+#import "SDLNames.h"
+
+QuickSpecBegin(SDLRemoteControlCapabilitiesSpec)
+
+__block SDLClimateControlCapabilities* someClimateControlCapabilities = [[SDLClimateControlCapabilities alloc] init];
+__block SDLRadioControlCapabilities* someRadioControlCapabilities = [[SDLRadioControlCapabilities alloc] init];
+__block SDLButtonCapabilities* someButtonControlCapabilities = [[SDLButtonCapabilities alloc] init];
+
+
+describe(@"Initialization tests", ^{
+ it(@"should properly initialize init", ^{
+ SDLRemoteControlCapabilities* testStruct = [[SDLRemoteControlCapabilities alloc] init];
+
+ expect(testStruct.climateControlCapabilities).to(beNil());
+ expect(testStruct.radioControlCapabilities).to(beNil());
+ expect(testStruct.buttonCapabilities).to(beNil());
+ });
+
+ it(@"should properly initialize initWithDictionary", ^{
+
+ NSMutableDictionary* dict = [@{SDLNameClimateControlCapabilities : [@[someClimateControlCapabilities] copy],
+ SDLNameRadioControlCapabilities :[@[someRadioControlCapabilities] copy],
+ SDLNameButtonCapabilities :[@[someButtonControlCapabilities] copy] } mutableCopy];
+ SDLRemoteControlCapabilities* testStruct = [[SDLRemoteControlCapabilities alloc] initWithDictionary:dict];
+
+ expect(testStruct.climateControlCapabilities).to(equal([@[someClimateControlCapabilities] copy]));
+ expect(testStruct.radioControlCapabilities).to(equal([@[someRadioControlCapabilities] copy]));
+ expect(testStruct.buttonCapabilities).to(equal([@[someButtonControlCapabilities] copy]));
+ });
+
+ it(@"Should set and get correctly", ^{
+ SDLRemoteControlCapabilities* testStruct = [[SDLRemoteControlCapabilities alloc] init];
+
+ testStruct.climateControlCapabilities = ([@[someClimateControlCapabilities] copy]);
+ testStruct.radioControlCapabilities = [@[someRadioControlCapabilities] copy];
+ testStruct.buttonCapabilities = [@[someButtonControlCapabilities] copy];
+
+ expect(testStruct.climateControlCapabilities).to(equal(([@[someClimateControlCapabilities] copy])));
+ expect(testStruct.radioControlCapabilities).to(equal([@[someRadioControlCapabilities] copy]));
+ expect(testStruct.buttonCapabilities).to(equal([@[someButtonControlCapabilities] copy]));
+ });
+});
+
+QuickSpecEnd
diff --git a/SmartDeviceLinkTests/RPCSpecs/StructSpecs/SDLSystemCapabilitySpec.m b/SmartDeviceLinkTests/RPCSpecs/StructSpecs/SDLSystemCapabilitySpec.m
index 7511fb7c2..7b8e2d5e5 100644
--- a/SmartDeviceLinkTests/RPCSpecs/StructSpecs/SDLSystemCapabilitySpec.m
+++ b/SmartDeviceLinkTests/RPCSpecs/StructSpecs/SDLSystemCapabilitySpec.m
@@ -5,34 +5,29 @@
#import "SDLSystemCapability.h"
-#import "SDLImageResolution.h"
#import "SDLNavigationCapability.h"
#import "SDLPhoneCapability.h"
#import "SDLSystemCapabilityType.h"
+#import "SDLRemoteControlCapabilities.h"
#import "SDLNames.h"
-#import "SDLVideoStreamingCapability.h"
-#import "SDLVideoStreamingCodec.h"
-#import "SDLVideoStreamingFormat.h"
-#import "SDLVideoStreamingProtocol.h"
QuickSpecBegin(SDLSystemCapabilitySpec)
-
+SDLRemoteControlCapabilities *someRemoteControlCapabilities = [[SDLRemoteControlCapabilities alloc] init];
describe(@"Getter/Setter Tests", ^ {
it(@"Should set and get correctly", ^ {
SDLSystemCapability *testStruct = [[SDLSystemCapability alloc] init];
-
+
testStruct.systemCapabilityType = SDLSystemCapabilityTypeNavigation;
testStruct.navigationCapability = [[SDLNavigationCapability alloc] initWithSendLocation:YES waypoints:NO];
testStruct.phoneCapability = [[SDLPhoneCapability alloc] initWithDialNumber:YES];
-
+ testStruct.remoteControlCapability = someRemoteControlCapabilities;
+
expect(testStruct.systemCapabilityType).to(equal(SDLSystemCapabilityTypeNavigation));
expect(testStruct.navigationCapability.sendLocationEnabled).to(equal(YES));
expect(testStruct.navigationCapability.getWayPointsEnabled).to(equal(NO));
expect(testStruct.phoneCapability.dialNumberEnabled).to(equal(YES));
-
- testStruct.systemCapabilityType = SDLSystemCapabilityTypeVideoStreaming;
-
- expect(testStruct.systemCapabilityType).to(equal(SDLSystemCapabilityTypeVideoStreaming));
+ expect(testStruct.remoteControlCapability).to(equal(someRemoteControlCapabilities));
+
});
});
@@ -40,74 +35,57 @@ describe(@"Initialization tests", ^{
it(@"Should get correctly when initialized with a dictionary", ^ {
NSMutableDictionary* dict = [@{SDLNameSystemCapabilityType: @"NAVIGATION",
SDLNameNavigationCapability: @{SDLNameGetWaypointsEnabled: @(NO),
- SDLNameSendLocationEnabled: @(YES)},
- SDLNamePhoneCapability: @{SDLNameDialNumberEnabled: @(YES)}} mutableCopy];
+ SDLNameSendLocationEnabled: @(YES)},
+ SDLNamePhoneCapability: @{SDLNameDialNumberEnabled: @(YES)},
+ SDLNameRemoteControlCapability: someRemoteControlCapabilities} mutableCopy];
SDLSystemCapability *testStruct = [[SDLSystemCapability alloc] initWithDictionary:dict];
-
+
expect(testStruct.systemCapabilityType).to(equal(SDLSystemCapabilityTypeNavigation));
expect(testStruct.navigationCapability.sendLocationEnabled).to(equal(YES));
expect(testStruct.navigationCapability.getWayPointsEnabled).to(equal(NO));
expect(testStruct.phoneCapability.dialNumberEnabled).to(equal(YES));
+ expect(testStruct.remoteControlCapability).to(equal(someRemoteControlCapabilities));
});
-
+
it(@"Should return nil if not set", ^ {
SDLSystemCapability *testStruct = [[SDLSystemCapability alloc] init];
-
+
expect(testStruct.systemCapabilityType).to(beNil());
expect(testStruct.navigationCapability).to(beNil());
expect(testStruct.phoneCapability).to(beNil());
- expect(testStruct.videoStreamingCapability).to(beNil());
+ expect(testStruct.remoteControlCapability).to(beNil());
+
});
-
+
it(@"should initialize correctly with initWithPhoneCapability:", ^{
SDLPhoneCapability *testPhoneStruct = [[SDLPhoneCapability alloc] initWithDialNumber:YES];
SDLSystemCapability *testStruct = [[SDLSystemCapability alloc] initWithPhoneCapability:testPhoneStruct];
-
+
expect(testStruct.systemCapabilityType).to(equal(SDLSystemCapabilityTypePhoneCall));
expect(testStruct.phoneCapability.dialNumberEnabled).to(equal(YES));
expect(testStruct.navigationCapability).to(beNil());
- expect(testStruct.videoStreamingCapability).to(beNil());
+ expect(testStruct.remoteControlCapability).to(beNil());
});
-
+
it(@"should initialize correctly with initWithNavigationCapability:", ^{
SDLNavigationCapability *testNavStruct = [[SDLNavigationCapability alloc] initWithSendLocation:YES waypoints:YES];
SDLSystemCapability *testStruct = [[SDLSystemCapability alloc] initWithNavigationCapability:testNavStruct];
-
+
expect(testStruct.systemCapabilityType).to(equal(SDLSystemCapabilityTypeNavigation));
expect(testStruct.navigationCapability.sendLocationEnabled).to(equal(YES));
expect(testStruct.navigationCapability.getWayPointsEnabled).to(equal(YES));
expect(testStruct.phoneCapability).to(beNil());
- expect(testStruct.videoStreamingCapability).to(beNil());
+ expect(testStruct.remoteControlCapability).to(beNil());
});
-
- it(@"should initialize correctly with initWithVideoStreamingCapability:", ^{
-
- SDLImageResolution* resolution = [[SDLImageResolution alloc] init];
- resolution.resolutionWidth = @600;
- resolution.resolutionHeight = @500;
-
- NSNumber *maxBitrate = @100;
-
- SDLVideoStreamingFormat *format1 = [[SDLVideoStreamingFormat alloc] init];
- format1.codec = SDLVideoStreamingCodecH264;
- format1.protocol = SDLVideoStreamingProtocolRAW;
-
- SDLVideoStreamingFormat *format2 = [[SDLVideoStreamingFormat alloc] init];
- format2.codec = SDLVideoStreamingCodecH265;
- format2.protocol = SDLVideoStreamingProtocolRTP;
-
- NSArray<SDLVideoStreamingFormat *> *formatArray = @[format1, format2];
-
- SDLVideoStreamingCapability *testVidStruct = [[SDLVideoStreamingCapability alloc] initWithVideoStreaming:resolution maxBitrate:maxBitrate supportedFormats:formatArray];
- SDLSystemCapability *testStruct = [[SDLSystemCapability alloc] initWithVideoStreamingCapability:testVidStruct];
-
- expect(testStruct.systemCapabilityType).to(equal(SDLSystemCapabilityTypeVideoStreaming));
- expect(testStruct.navigationCapability.sendLocationEnabled).to(beNil());
- expect(testStruct.navigationCapability.getWayPointsEnabled).to(beNil());
- expect(testStruct.phoneCapability).to(beNil());
+
+ it(@"should initialize correctly with initWithRemoteControlCapability:", ^{
+ SDLSystemCapability *testStruct = [[SDLSystemCapability alloc] initWithRemoteControlCapability:someRemoteControlCapabilities];
+ expect(testStruct.systemCapabilityType).to(equal(SDLSystemCapabilityTypeRemoteControl));
+ expect(testStruct.navigationCapability).to(beNil());
+ expect(testStruct.phoneCapability).to(beNil());
+ expect(testStruct.remoteControlCapability).to(equal(someRemoteControlCapabilities));
});
});
-
QuickSpecEnd
diff --git a/SmartDeviceLinkTests/RPCSpecs/StructSpecs/SDLTemperatureSpec.m b/SmartDeviceLinkTests/RPCSpecs/StructSpecs/SDLTemperatureSpec.m
new file mode 100644
index 000000000..059463672
--- /dev/null
+++ b/SmartDeviceLinkTests/RPCSpecs/StructSpecs/SDLTemperatureSpec.m
@@ -0,0 +1,47 @@
+//
+// SDLTemperatureSpec.m
+// SmartDeviceLink-iOS
+//
+
+#import <Foundation/Foundation.h>
+
+#import <Quick/Quick.h>
+#import <Nimble/Nimble.h>
+
+#import "SDLTemperature.h"
+#import "SDLTemperatureUnit.h"
+#import "SDLNames.h"
+
+QuickSpecBegin(SDLTemperatureSpec)
+
+describe(@"Initialization tests", ^{
+
+ it(@"should properly initialize init", ^{
+ SDLTemperature* testStruct = [[SDLTemperature alloc] init];
+
+ expect(testStruct.unit).to(beNil());
+ expect(testStruct.value).to(beNil());
+ });
+
+ it(@"should properly initialize initWithDictionary", ^{
+
+ NSMutableDictionary* dict = [@{SDLNameUnit : SDLTemperatureUnitCelsius ,
+ SDLNameValue:@30 } mutableCopy];
+ SDLTemperature* testStruct = [[SDLTemperature alloc] initWithDictionary:dict];
+
+ expect(testStruct.unit).to(equal(SDLTemperatureUnitCelsius));
+ expect(testStruct.value).to(equal(@30));
+ });
+
+ it(@"Should set and get correctly", ^{
+ SDLTemperature* testStruct = [[SDLTemperature alloc] init];
+
+ testStruct.unit = SDLTemperatureUnitCelsius;
+ testStruct.value = @30;
+
+ expect(testStruct.unit).to(equal(SDLTemperatureUnitCelsius));
+ expect(testStruct.value).to(equal(@30));
+ });
+});
+
+QuickSpecEnd