Merge "Wait for HAL service death signal before trying to" into main
diff --git a/audio/aidl/default/alsa/StreamAlsa.cpp b/audio/aidl/default/alsa/StreamAlsa.cpp
index 114c4c0..210c26b 100644
--- a/audio/aidl/default/alsa/StreamAlsa.cpp
+++ b/audio/aidl/default/alsa/StreamAlsa.cpp
@@ -280,13 +280,22 @@
const size_t bufferSize = mBufferSizeFrames * mFrameSizeBytes;
std::vector<char> buffer(bufferSize);
while (mIoThreadIsRunning) {
- ssize_t framesRead = mSources[idx]->read(&buffer[0], mBufferSizeFrames);
- if (framesRead > 0) {
+ ssize_t framesReadOrError = mSources[idx]->read(&buffer[0], mBufferSizeFrames);
+ if (framesReadOrError > 0) {
int ret = proxy_write_with_retries(mAlsaDeviceProxies[idx].get(), &buffer[0],
- framesRead * mFrameSizeBytes, mReadWriteRetries);
+ framesReadOrError * mFrameSizeBytes,
+ mReadWriteRetries);
// Errors when the stream is being stopped are expected.
LOG_IF(WARNING, ret != 0 && mIoThreadIsRunning)
<< __func__ << "[" << idx << "]: Error writing into ALSA: " << ret;
+ } else if (framesReadOrError == 0) {
+ // MonoPipeReader does not have a blocking read, while use of std::condition_variable
+ // requires use of a mutex. For now, just do a 1ms sleep. Consider using a different
+ // pipe / ring buffer mechanism.
+ if (mIoThreadIsRunning) usleep(1000);
+ } else {
+ LOG(WARNING) << __func__ << "[" << idx
+ << "]: Error while reading from the pipe: " << framesReadOrError;
}
}
}
diff --git a/automotive/vehicle/aidl/aidl_test/VehiclePropertyAnnotationCppTest.cpp b/automotive/vehicle/aidl/aidl_test/VehiclePropertyAnnotationCppTest.cpp
index 2aad2b6..dd82d1b 100644
--- a/automotive/vehicle/aidl/aidl_test/VehiclePropertyAnnotationCppTest.cpp
+++ b/automotive/vehicle/aidl/aidl_test/VehiclePropertyAnnotationCppTest.cpp
@@ -24,9 +24,10 @@
#include <unordered_set>
namespace aidl_vehicle = ::aidl::android::hardware::automotive::vehicle;
-using aidl_vehicle::AccessForVehicleProperty;
+using aidl_vehicle::AllowedAccessForVehicleProperty;
using aidl_vehicle::AnnotationsForVehicleProperty;
using aidl_vehicle::ChangeModeForVehicleProperty;
+using aidl_vehicle::DefaultAccessForVehicleProperty;
using aidl_vehicle::VehicleProperty;
using testing::IsEmpty;
@@ -53,8 +54,14 @@
<< "generate_annotation_enums.py to update.";
}
-TEST(VehiclePropertyAnnotationCppTest, testAccess) {
- ASSERT_TRUE(doesAnnotationMapContainsAllProps(AccessForVehicleProperty))
+TEST(VehiclePropertyAnnotationCppTest, testDefaultAccess) {
+ ASSERT_TRUE(doesAnnotationMapContainsAllProps(DefaultAccessForVehicleProperty))
+ << "Outdated annotation-generated AIDL files. Please run "
+ << "generate_annotation_enums.py to update.";
+}
+
+TEST(VehiclePropertyAnnotationCppTest, testAllowedAccess) {
+ ASSERT_TRUE(doesAnnotationMapContainsAllProps(AllowedAccessForVehicleProperty))
<< "Outdated annotation-generated AIDL files. Please run "
<< "generate_annotation_enums.py to update.";
}
diff --git a/automotive/vehicle/aidl/emu_metadata/android.hardware.automotive.vehicle-types-meta.json b/automotive/vehicle/aidl/emu_metadata/android.hardware.automotive.vehicle-types-meta.json
index 2867aa2..53e5e99 100644
--- a/automotive/vehicle/aidl/emu_metadata/android.hardware.automotive.vehicle-types-meta.json
+++ b/automotive/vehicle/aidl/emu_metadata/android.hardware.automotive.vehicle-types-meta.json
@@ -388,13 +388,13 @@
"description": "Fan speed setting\nThe maxInt32Value and minInt32Value in VehicleAreaConfig must be defined. All integers between minInt32Value and maxInt32Value must be supported.\nThe minInt32Value indicates the lowest fan speed.\nThe maxInt32Value indicates the highest fan speed.\nIf {@code HasSupportedValueInfo} for a specific area ID is not {@code null}: {@code HasSupportedValueInfo#hasMinSupportedValue} and {@code HasSupportedValueInfo#hasMaxSupportedValue} must be {@code true} for the specific area ID. {@code MinMaxSupportedValueResult#minSupportedValue} has the same meaning as minInt32Value. {@code MinMaxSupportedValueResult#maxSupportedValue} has the same meaning as maxInt32Value. All integers between minSupportedValue and maxSupportedValue must be supported. At boot, minInt32Value is equal to minSupportedValue, maxInt32Value is equal to maxSupportedValue.\nThis property is not in any particular unit but in a specified range of relative speeds.\nThis property is defined as VehiclePropertyAccess.READ_WRITE, but OEMs have the option to implement it as VehiclePropertyAccess.READ only."
},
{
- "name": "Fan direction setting",
+ "name": "HVAC_FAN_DIRECTION",
"value": 356517121,
"data_enums": [
"VehicleHvacFanDirection"
],
"data_enum": "VehicleHvacFanDirection",
- "description": "Fan direction setting\nThis property is defined as VehiclePropertyAccess.READ_WRITE, but OEMs have the option to implement it as VehiclePropertyAccess.READ only.\nThe supported hvac fan direction is exposed through {@code HVAC_FAN_DIRECTION_AVAILABLE} property. Caller should not call {@code getSupportedValuesList}, or use {@code VehicleAreaConfig#supportedEnumValues}."
+ "description": "The current HVAC fan direction setting\nThis property is defined as VehiclePropertyAccess.READ_WRITE, but OEMs have the option to implement it as VehiclePropertyAccess.READ only.\nThe supported hvac fan direction is exposed through {@code HVAC_FAN_DIRECTION_AVAILABLE} property. Caller should not call {@code getSupportedValuesList}, or use {@code VehicleAreaConfig#supportedEnumValues}.\nThis property must be supported if {@code HVAC_FAN_DIRECTION_AVAILABLE} is implemented on the vehicle, and vice versa."
},
{
"name": "HVAC current temperature.",
@@ -476,13 +476,13 @@
"description": "Represents global power state for HVAC. Setting this property to false MAY mark some properties that control individual HVAC features\/subsystems to UNAVAILABLE state. Setting this property to true MAY mark some properties that control individual HVAC features\/subsystems to AVAILABLE state (unless any\/all of them are UNAVAILABLE on their own individual merits).\n[Definition] HvacPower_DependentProperties: Properties that need HVAC to be powered on in order to enable their functionality. For example, in some cars, in order to turn on the AC, HVAC must be powered on first.\nHvacPower_DependentProperties list must be set in the VehiclePropConfig.configArray. HvacPower_DependentProperties must only contain properties that are associated with VehicleArea:SEAT. Properties that are not associated with VehicleArea:SEAT, for example, HVAC_DEFROSTER, must never depend on HVAC_POWER_ON property and must never be part of HvacPower_DependentProperties list.\nAreaID mapping for HVAC_POWER_ON property must contain all AreaIDs that HvacPower_DependentProperties are mapped to.\nExample 1: A car has two front seats (ROW_1_LEFT, ROW_1_RIGHT) and three back seats (ROW_2_LEFT, ROW_2_CENTER, ROW_2_RIGHT). If the HVAC features (AC, Temperature etc.) throughout the car are dependent on a single HVAC power controller then HVAC_POWER_ON must be mapped to [ROW_1_LEFT | ROW_1_RIGHT | ROW_2_LEFT | ROW_2_CENTER | ROW_2_RIGHT].\nExample 2: A car has two seats in the front row (ROW_1_LEFT, ROW_1_RIGHT) and three seats in the second (ROW_2_LEFT, ROW_2_CENTER, ROW_2_RIGHT) and third rows (ROW_3_LEFT, ROW_3_CENTER, ROW_3_RIGHT). If the car has temperature controllers in the front row which can operate entirely independently of temperature controllers in the back of the vehicle, then HVAC_POWER_ON must be mapped to a two element array: - ROW_1_LEFT | ROW_1_RIGHT - ROW_2_LEFT | ROW_2_CENTER | ROW_2_RIGHT | ROW_3_LEFT | ROW_3_CENTER | ROW_3_RIGHT\nThis property is defined as VehiclePropertyAccess.READ_WRITE, but OEMs have the option to implement it as VehiclePropertyAccess.READ only."
},
{
- "name": "Fan Positions Available",
+ "name": "HVAC_FAN_DIRECTION_AVAILABLE",
"value": 356582673,
"data_enums": [
"VehicleHvacFanDirection"
],
"data_enum": "VehicleHvacFanDirection",
- "description": "Fan Positions Available\nThis is a bit mask of fan positions available for the zone. Each available fan direction is denoted by a separate entry in the vector. A fan direction may have multiple bits from vehicle_hvac_fan_direction set. For instance, a typical car may have the following fan positions: - FAN_DIRECTION_FACE (0x1) - FAN_DIRECTION_FLOOR (0x2) - FAN_DIRECTION_FACE | FAN_DIRECTION_FLOOR (0x3) - FAN_DIRECTION_DEFROST (0x4) - FAN_DIRECTION_FLOOR | FAN_DIRECTION_DEFROST (0x6)"
+ "description": "List of supported fan directions in the vehicle.\nThis is a bit mask of the supported fan positions available each area ID. Each supported fan direction is denoted by a separate entry in the vector. A fan direction may have multiple bits from vehicle_hvac_fan_direction set. For instance, a typical car may have the following fan positions: - FAN_DIRECTION_FACE (0x1) - FAN_DIRECTION_FLOOR (0x2) - FAN_DIRECTION_FACE | FAN_DIRECTION_FLOOR (0x3) - FAN_DIRECTION_DEFROST (0x4) - FAN_DIRECTION_FLOOR | FAN_DIRECTION_DEFROST (0x6)\nThis property must be supported if {@code #HVAC_FAN_DIRECTION} is implemented on the vehicle, and vice versa."
},
{
"name": "Automatic recirculation on\/off",
diff --git a/automotive/vehicle/aidl/generated_lib/4/cpp/AccessForVehicleProperty.h b/automotive/vehicle/aidl/generated_lib/4/cpp/AccessForVehicleProperty.h
index 8441af3..eea1c5c 100644
--- a/automotive/vehicle/aidl/generated_lib/4/cpp/AccessForVehicleProperty.h
+++ b/automotive/vehicle/aidl/generated_lib/4/cpp/AccessForVehicleProperty.h
@@ -29,13 +29,9 @@
#include <unordered_map>
-namespace aidl {
-namespace android {
-namespace hardware {
-namespace automotive {
-namespace vehicle {
-
-std::unordered_map<VehicleProperty, VehiclePropertyAccess> AccessForVehicleProperty = {
+namespace aidl::android::hardware::automotive::vehicle {
+// This map represents the default access mode for each property.
+std::unordered_map<VehicleProperty, VehiclePropertyAccess> DefaultAccessForVehicleProperty = {
{VehicleProperty::INFO_VIN, VehiclePropertyAccess::READ},
{VehicleProperty::INFO_MAKE, VehiclePropertyAccess::READ},
{VehicleProperty::INFO_MODEL, VehiclePropertyAccess::READ},
@@ -318,8 +314,288 @@
{VehicleProperty::LOW_SPEED_AUTOMATIC_EMERGENCY_BRAKING_STATE, VehiclePropertyAccess::READ},
};
-} // namespace vehicle
-} // namespace automotive
-} // namespace hardware
-} // namespace android
-} // aidl
+// This map represents the allowed access modes for each property.
+std::unordered_map<VehicleProperty, std::vector<VehiclePropertyAccess>>
+ AllowedAccessForVehicleProperty = {
+ {VehicleProperty::INFO_VIN, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::INFO_MAKE, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::INFO_MODEL, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::INFO_MODEL_YEAR, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::INFO_FUEL_CAPACITY, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::INFO_FUEL_TYPE, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::INFO_EV_BATTERY_CAPACITY, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::INFO_EV_CONNECTOR_TYPE, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::INFO_FUEL_DOOR_LOCATION, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::INFO_EV_PORT_LOCATION, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::INFO_DRIVER_SEAT, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::INFO_EXTERIOR_DIMENSIONS, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::INFO_MULTI_EV_PORT_LOCATIONS, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::INFO_MODEL_TRIM, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::INFO_VEHICLE_SIZE_CLASS, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::PERF_ODOMETER, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::PERF_VEHICLE_SPEED, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::PERF_VEHICLE_SPEED_DISPLAY, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::PERF_STEERING_ANGLE, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::PERF_REAR_STEERING_ANGLE, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::INSTANTANEOUS_FUEL_ECONOMY, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::INSTANTANEOUS_EV_EFFICIENCY, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::ENGINE_COOLANT_TEMP, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::ENGINE_OIL_LEVEL, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::ENGINE_OIL_TEMP, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::ENGINE_RPM, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::WHEEL_TICK, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::FUEL_LEVEL, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::FUEL_DOOR_OPEN, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::EV_BATTERY_LEVEL, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::EV_CURRENT_BATTERY_CAPACITY, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::EV_CHARGE_PORT_OPEN, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::EV_CHARGE_PORT_CONNECTED, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::EV_BATTERY_INSTANTANEOUS_CHARGE_RATE, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::RANGE_REMAINING, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::EV_BATTERY_AVERAGE_TEMPERATURE, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::TIRE_PRESSURE, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::CRITICALLY_LOW_TIRE_PRESSURE, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::ACCELERATOR_PEDAL_COMPRESSION_PERCENTAGE, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::BRAKE_PEDAL_COMPRESSION_PERCENTAGE, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::BRAKE_PAD_WEAR_PERCENTAGE, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::BRAKE_FLUID_LEVEL_LOW, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::VEHICLE_PASSIVE_SUSPENSION_HEIGHT, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::ENGINE_IDLE_AUTO_STOP_ENABLED, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::IMPACT_DETECTED, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::VEHICLE_HORN_ENGAGED, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::GEAR_SELECTION, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::CURRENT_GEAR, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::PARKING_BRAKE_ON, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::PARKING_BRAKE_AUTO_APPLY, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::EV_BRAKE_REGENERATION_LEVEL, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::FUEL_LEVEL_LOW, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::NIGHT_MODE, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::TURN_SIGNAL_STATE, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::IGNITION_STATE, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::ABS_ACTIVE, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::TRACTION_CONTROL_ACTIVE, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::EV_STOPPING_MODE, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::ELECTRONIC_STABILITY_CONTROL_ENABLED, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::ELECTRONIC_STABILITY_CONTROL_STATE, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::TURN_SIGNAL_LIGHT_STATE, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::TURN_SIGNAL_SWITCH, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::HVAC_FAN_SPEED, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::HVAC_FAN_DIRECTION, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::HVAC_TEMPERATURE_CURRENT, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::HVAC_TEMPERATURE_SET, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::HVAC_DEFROSTER, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::HVAC_AC_ON, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::HVAC_MAX_AC_ON, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::HVAC_MAX_DEFROST_ON, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::HVAC_RECIRC_ON, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::HVAC_DUAL_ON, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::HVAC_AUTO_ON, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::HVAC_SEAT_TEMPERATURE, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::HVAC_SIDE_MIRROR_HEAT, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::HVAC_STEERING_WHEEL_HEAT, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::HVAC_TEMPERATURE_DISPLAY_UNITS, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::HVAC_ACTUAL_FAN_SPEED_RPM, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::HVAC_POWER_ON, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::HVAC_FAN_DIRECTION_AVAILABLE, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::HVAC_AUTO_RECIRC_ON, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::HVAC_SEAT_VENTILATION, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::HVAC_ELECTRIC_DEFROSTER_ON, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::HVAC_TEMPERATURE_VALUE_SUGGESTION, {VehiclePropertyAccess::READ_WRITE}},
+ {VehicleProperty::DISTANCE_DISPLAY_UNITS, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::FUEL_VOLUME_DISPLAY_UNITS, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::TIRE_PRESSURE_DISPLAY_UNITS, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::EV_BATTERY_DISPLAY_UNITS, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::FUEL_CONSUMPTION_UNITS_DISTANCE_OVER_VOLUME, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::VEHICLE_SPEED_DISPLAY_UNITS, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::EXTERNAL_CAR_TIME, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::ANDROID_EPOCH_TIME, {VehiclePropertyAccess::WRITE}},
+ {VehicleProperty::STORAGE_ENCRYPTION_BINDING_SEED, {VehiclePropertyAccess::READ_WRITE}},
+ {VehicleProperty::ENV_OUTSIDE_TEMPERATURE, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::AP_POWER_STATE_REQ, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::AP_POWER_STATE_REPORT, {VehiclePropertyAccess::READ_WRITE}},
+ {VehicleProperty::AP_POWER_BOOTUP_REASON, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::DISPLAY_BRIGHTNESS, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::PER_DISPLAY_BRIGHTNESS, {VehiclePropertyAccess::READ_WRITE}},
+ {VehicleProperty::VALET_MODE_ENABLED, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::HEAD_UP_DISPLAY_ENABLED, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::HW_KEY_INPUT, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::HW_KEY_INPUT_V2, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::HW_MOTION_INPUT, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::HW_ROTARY_INPUT, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::HW_CUSTOM_INPUT, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::DOOR_POS, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::DOOR_MOVE, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::DOOR_LOCK, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::DOOR_CHILD_LOCK_ENABLED, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::MIRROR_Z_POS, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::MIRROR_Z_MOVE, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::MIRROR_Y_POS, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::MIRROR_Y_MOVE, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::MIRROR_LOCK, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::MIRROR_FOLD, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::MIRROR_AUTO_FOLD_ENABLED, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::MIRROR_AUTO_TILT_ENABLED, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::SEAT_MEMORY_SELECT, {VehiclePropertyAccess::WRITE}},
+ {VehicleProperty::SEAT_MEMORY_SET, {VehiclePropertyAccess::WRITE}},
+ {VehicleProperty::SEAT_BELT_BUCKLED, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::SEAT_BELT_HEIGHT_POS, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::SEAT_BELT_HEIGHT_MOVE, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::SEAT_FORE_AFT_POS, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::SEAT_FORE_AFT_MOVE, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::SEAT_BACKREST_ANGLE_1_POS, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::SEAT_BACKREST_ANGLE_1_MOVE, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::SEAT_BACKREST_ANGLE_2_POS, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::SEAT_BACKREST_ANGLE_2_MOVE, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::SEAT_HEIGHT_POS, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::SEAT_HEIGHT_MOVE, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::SEAT_DEPTH_POS, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::SEAT_DEPTH_MOVE, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::SEAT_TILT_POS, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::SEAT_TILT_MOVE, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::SEAT_LUMBAR_FORE_AFT_POS, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::SEAT_LUMBAR_FORE_AFT_MOVE, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::SEAT_LUMBAR_SIDE_SUPPORT_POS, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::SEAT_LUMBAR_SIDE_SUPPORT_MOVE, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::SEAT_HEADREST_HEIGHT_POS, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::SEAT_HEADREST_HEIGHT_POS_V2, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::SEAT_HEADREST_HEIGHT_MOVE, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::SEAT_HEADREST_ANGLE_POS, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::SEAT_HEADREST_ANGLE_MOVE, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::SEAT_HEADREST_FORE_AFT_POS, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::SEAT_HEADREST_FORE_AFT_MOVE, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::SEAT_FOOTWELL_LIGHTS_STATE, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::SEAT_FOOTWELL_LIGHTS_SWITCH, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::SEAT_EASY_ACCESS_ENABLED, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::SEAT_AIRBAG_ENABLED, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::SEAT_AIRBAGS_DEPLOYED, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::SEAT_CUSHION_SIDE_SUPPORT_POS, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::SEAT_CUSHION_SIDE_SUPPORT_MOVE, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::SEAT_LUMBAR_VERTICAL_POS, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::SEAT_LUMBAR_VERTICAL_MOVE, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::SEAT_WALK_IN_POS, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::SEAT_BELT_PRETENSIONER_DEPLOYED, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::SEAT_OCCUPANCY, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::WINDOW_POS, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::WINDOW_MOVE, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::WINDOW_LOCK, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::WINDSHIELD_WIPERS_PERIOD, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::WINDSHIELD_WIPERS_STATE, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::WINDSHIELD_WIPERS_SWITCH, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::STEERING_WHEEL_DEPTH_POS, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::STEERING_WHEEL_DEPTH_MOVE, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::STEERING_WHEEL_HEIGHT_POS, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::STEERING_WHEEL_HEIGHT_MOVE, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::STEERING_WHEEL_THEFT_LOCK_ENABLED, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::STEERING_WHEEL_LOCKED, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::STEERING_WHEEL_EASY_ACCESS_ENABLED, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::GLOVE_BOX_DOOR_POS, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::GLOVE_BOX_LOCKED, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::VEHICLE_MAP_SERVICE, {VehiclePropertyAccess::READ_WRITE}},
+ {VehicleProperty::LOCATION_CHARACTERIZATION, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::ULTRASONICS_SENSOR_POSITION, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::ULTRASONICS_SENSOR_ORIENTATION, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::ULTRASONICS_SENSOR_FIELD_OF_VIEW, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::ULTRASONICS_SENSOR_DETECTION_RANGE, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::ULTRASONICS_SENSOR_SUPPORTED_RANGES, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::ULTRASONICS_SENSOR_MEASURED_DISTANCE, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::OBD2_LIVE_FRAME, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::OBD2_FREEZE_FRAME, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::OBD2_FREEZE_FRAME_INFO, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::OBD2_FREEZE_FRAME_CLEAR, {VehiclePropertyAccess::WRITE}},
+ {VehicleProperty::HEADLIGHTS_STATE, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::HIGH_BEAM_LIGHTS_STATE, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::FOG_LIGHTS_STATE, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::HAZARD_LIGHTS_STATE, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::HEADLIGHTS_SWITCH, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::HIGH_BEAM_LIGHTS_SWITCH, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::FOG_LIGHTS_SWITCH, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::HAZARD_LIGHTS_SWITCH, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::CABIN_LIGHTS_STATE, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::CABIN_LIGHTS_SWITCH, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::READING_LIGHTS_STATE, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::READING_LIGHTS_SWITCH, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::STEERING_WHEEL_LIGHTS_STATE, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::STEERING_WHEEL_LIGHTS_SWITCH, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::SUPPORT_CUSTOMIZE_VENDOR_PERMISSION, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::DISABLED_OPTIONAL_FEATURES, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::INITIAL_USER_INFO, {VehiclePropertyAccess::READ_WRITE}},
+ {VehicleProperty::SWITCH_USER, {VehiclePropertyAccess::READ_WRITE}},
+ {VehicleProperty::CREATE_USER, {VehiclePropertyAccess::READ_WRITE}},
+ {VehicleProperty::REMOVE_USER, {VehiclePropertyAccess::WRITE}},
+ {VehicleProperty::USER_IDENTIFICATION_ASSOCIATION, {VehiclePropertyAccess::READ_WRITE}},
+ {VehicleProperty::EVS_SERVICE_REQUEST, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::POWER_POLICY_REQ, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::POWER_POLICY_GROUP_REQ, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::CURRENT_POWER_POLICY, {VehiclePropertyAccess::READ_WRITE}},
+ {VehicleProperty::WATCHDOG_ALIVE, {VehiclePropertyAccess::WRITE}},
+ {VehicleProperty::WATCHDOG_TERMINATED_PROCESS, {VehiclePropertyAccess::WRITE}},
+ {VehicleProperty::VHAL_HEARTBEAT, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::CLUSTER_SWITCH_UI, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::CLUSTER_DISPLAY_STATE, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::CLUSTER_REPORT_STATE, {VehiclePropertyAccess::WRITE}},
+ {VehicleProperty::CLUSTER_REQUEST_DISPLAY, {VehiclePropertyAccess::WRITE}},
+ {VehicleProperty::CLUSTER_NAVIGATION_STATE, {VehiclePropertyAccess::WRITE}},
+ {VehicleProperty::ELECTRONIC_TOLL_COLLECTION_CARD_TYPE, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::ELECTRONIC_TOLL_COLLECTION_CARD_STATUS, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::FRONT_FOG_LIGHTS_STATE, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::FRONT_FOG_LIGHTS_SWITCH, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::REAR_FOG_LIGHTS_STATE, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::REAR_FOG_LIGHTS_SWITCH, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::EV_CHARGE_CURRENT_DRAW_LIMIT, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::EV_CHARGE_PERCENT_LIMIT, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::EV_CHARGE_STATE, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::EV_CHARGE_SWITCH, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::EV_CHARGE_TIME_REMAINING, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::EV_REGENERATIVE_BRAKING_STATE, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::TRAILER_PRESENT, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::VEHICLE_CURB_WEIGHT, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::GENERAL_SAFETY_REGULATION_COMPLIANCE_REQUIREMENT, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::SUPPORTED_PROPERTY_IDS, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::SHUTDOWN_REQUEST, {VehiclePropertyAccess::WRITE}},
+ {VehicleProperty::VEHICLE_IN_USE, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::CLUSTER_HEARTBEAT, {VehiclePropertyAccess::WRITE}},
+ {VehicleProperty::VEHICLE_DRIVING_AUTOMATION_CURRENT_LEVEL, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::VEHICLE_DRIVING_AUTOMATION_TARGET_LEVEL, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::CAMERA_SERVICE_CURRENT_STATE, {VehiclePropertyAccess::WRITE}},
+ {VehicleProperty::PER_DISPLAY_MAX_BRIGHTNESS, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::AUTOMATIC_EMERGENCY_BRAKING_ENABLED, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::AUTOMATIC_EMERGENCY_BRAKING_STATE, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::FORWARD_COLLISION_WARNING_ENABLED, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::FORWARD_COLLISION_WARNING_STATE, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::BLIND_SPOT_WARNING_ENABLED, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::BLIND_SPOT_WARNING_STATE, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::LANE_DEPARTURE_WARNING_ENABLED, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::LANE_DEPARTURE_WARNING_STATE, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::LANE_KEEP_ASSIST_ENABLED, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::LANE_KEEP_ASSIST_STATE, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::LANE_CENTERING_ASSIST_ENABLED, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::LANE_CENTERING_ASSIST_COMMAND, {VehiclePropertyAccess::WRITE}},
+ {VehicleProperty::LANE_CENTERING_ASSIST_STATE, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::EMERGENCY_LANE_KEEP_ASSIST_ENABLED, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::EMERGENCY_LANE_KEEP_ASSIST_STATE, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::CRUISE_CONTROL_ENABLED, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::CRUISE_CONTROL_TYPE, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::CRUISE_CONTROL_STATE, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::CRUISE_CONTROL_COMMAND, {VehiclePropertyAccess::WRITE}},
+ {VehicleProperty::CRUISE_CONTROL_TARGET_SPEED, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::ADAPTIVE_CRUISE_CONTROL_TARGET_TIME_GAP, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::ADAPTIVE_CRUISE_CONTROL_LEAD_VEHICLE_MEASURED_DISTANCE, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::HANDS_ON_DETECTION_ENABLED, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::HANDS_ON_DETECTION_DRIVER_STATE, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::HANDS_ON_DETECTION_WARNING, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::DRIVER_DROWSINESS_ATTENTION_SYSTEM_ENABLED, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::DRIVER_DROWSINESS_ATTENTION_STATE, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::DRIVER_DROWSINESS_ATTENTION_WARNING_ENABLED, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::DRIVER_DROWSINESS_ATTENTION_WARNING, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::DRIVER_DISTRACTION_SYSTEM_ENABLED, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::DRIVER_DISTRACTION_STATE, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::DRIVER_DISTRACTION_WARNING_ENABLED, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::DRIVER_DISTRACTION_WARNING, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::LOW_SPEED_COLLISION_WARNING_ENABLED, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::LOW_SPEED_COLLISION_WARNING_STATE, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::CROSS_TRAFFIC_MONITORING_ENABLED, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::CROSS_TRAFFIC_MONITORING_WARNING_STATE, {VehiclePropertyAccess::READ}},
+ {VehicleProperty::LOW_SPEED_AUTOMATIC_EMERGENCY_BRAKING_ENABLED, {VehiclePropertyAccess::READ_WRITE, VehiclePropertyAccess::READ}},
+ {VehicleProperty::LOW_SPEED_AUTOMATIC_EMERGENCY_BRAKING_STATE, {VehiclePropertyAccess::READ}},
+};
+} // aidl::android::hardware::automotive::vehicle
diff --git a/automotive/vehicle/aidl/generated_lib/4/cpp/AnnotationsForVehicleProperty.h b/automotive/vehicle/aidl/generated_lib/4/cpp/AnnotationsForVehicleProperty.h
index 8ff370a..27301a5 100644
--- a/automotive/vehicle/aidl/generated_lib/4/cpp/AnnotationsForVehicleProperty.h
+++ b/automotive/vehicle/aidl/generated_lib/4/cpp/AnnotationsForVehicleProperty.h
@@ -30,298 +30,288 @@
#include <unordered_map>
#include <unordered_set>
-namespace aidl {
-namespace android {
-namespace hardware {
-namespace automotive {
-namespace vehicle {
-
+namespace aidl::android::hardware::automotive::vehicle {
std::unordered_map<VehicleProperty, std::unordered_set<std::string>>
AnnotationsForVehicleProperty = {
- {VehicleProperty::INFO_VIN, {"change_mode", "access", "version"}},
- {VehicleProperty::INFO_MAKE, {"change_mode", "access", "version"}},
- {VehicleProperty::INFO_MODEL, {"change_mode", "access", "version"}},
- {VehicleProperty::INFO_MODEL_YEAR, {"change_mode", "access", "version", "unit"}},
- {VehicleProperty::INFO_FUEL_CAPACITY, {"change_mode", "access", "version", "unit"}},
- {VehicleProperty::INFO_FUEL_TYPE, {"change_mode", "access", "version", "data_enum"}},
- {VehicleProperty::INFO_EV_BATTERY_CAPACITY, {"change_mode", "access", "version", "unit"}},
- {VehicleProperty::INFO_EV_CONNECTOR_TYPE, {"change_mode", "access", "version", "data_enum"}},
- {VehicleProperty::INFO_FUEL_DOOR_LOCATION, {"change_mode", "access", "version", "data_enum"}},
- {VehicleProperty::INFO_EV_PORT_LOCATION, {"change_mode", "access", "version", "data_enum"}},
- {VehicleProperty::INFO_DRIVER_SEAT, {"change_mode", "access", "version", "data_enum"}},
- {VehicleProperty::INFO_EXTERIOR_DIMENSIONS, {"change_mode", "access", "version", "unit"}},
- {VehicleProperty::INFO_MULTI_EV_PORT_LOCATIONS, {"change_mode", "access", "version", "data_enum"}},
- {VehicleProperty::INFO_MODEL_TRIM, {"change_mode", "access", "version"}},
- {VehicleProperty::INFO_VEHICLE_SIZE_CLASS, {"change_mode", "access", "version", "data_enum"}},
- {VehicleProperty::PERF_ODOMETER, {"change_mode", "access", "version", "unit"}},
- {VehicleProperty::PERF_VEHICLE_SPEED, {"change_mode", "access", "version", "unit"}},
- {VehicleProperty::PERF_VEHICLE_SPEED_DISPLAY, {"change_mode", "access", "version", "unit"}},
- {VehicleProperty::PERF_STEERING_ANGLE, {"change_mode", "access", "version", "unit"}},
- {VehicleProperty::PERF_REAR_STEERING_ANGLE, {"change_mode", "access", "version", "unit"}},
- {VehicleProperty::INSTANTANEOUS_FUEL_ECONOMY, {"change_mode", "access", "version"}},
- {VehicleProperty::INSTANTANEOUS_EV_EFFICIENCY, {"change_mode", "access", "version"}},
- {VehicleProperty::ENGINE_COOLANT_TEMP, {"change_mode", "access", "version", "unit"}},
- {VehicleProperty::ENGINE_OIL_LEVEL, {"change_mode", "access", "require_supported_values_list", "version", "data_enum"}},
- {VehicleProperty::ENGINE_OIL_TEMP, {"change_mode", "access", "version", "unit"}},
- {VehicleProperty::ENGINE_RPM, {"change_mode", "access", "version", "unit"}},
- {VehicleProperty::WHEEL_TICK, {"change_mode", "access", "version"}},
- {VehicleProperty::FUEL_LEVEL, {"change_mode", "access", "version", "unit"}},
- {VehicleProperty::FUEL_DOOR_OPEN, {"change_mode", "access", "version"}},
- {VehicleProperty::EV_BATTERY_LEVEL, {"change_mode", "access", "version", "unit"}},
- {VehicleProperty::EV_CURRENT_BATTERY_CAPACITY, {"change_mode", "access", "version", "unit"}},
- {VehicleProperty::EV_CHARGE_PORT_OPEN, {"change_mode", "access", "version"}},
- {VehicleProperty::EV_CHARGE_PORT_CONNECTED, {"change_mode", "access", "version"}},
- {VehicleProperty::EV_BATTERY_INSTANTANEOUS_CHARGE_RATE, {"change_mode", "access", "version", "unit"}},
- {VehicleProperty::RANGE_REMAINING, {"change_mode", "access", "version", "unit"}},
- {VehicleProperty::EV_BATTERY_AVERAGE_TEMPERATURE, {"change_mode", "access", "version", "unit"}},
- {VehicleProperty::TIRE_PRESSURE, {"change_mode", "unit", "require_min_max_supported_value", "access", "version"}},
- {VehicleProperty::CRITICALLY_LOW_TIRE_PRESSURE, {"change_mode", "access", "version", "unit"}},
- {VehicleProperty::ACCELERATOR_PEDAL_COMPRESSION_PERCENTAGE, {"change_mode", "access", "version"}},
- {VehicleProperty::BRAKE_PEDAL_COMPRESSION_PERCENTAGE, {"change_mode", "access", "version"}},
- {VehicleProperty::BRAKE_PAD_WEAR_PERCENTAGE, {"change_mode", "access", "version"}},
- {VehicleProperty::BRAKE_FLUID_LEVEL_LOW, {"change_mode", "access", "version"}},
- {VehicleProperty::VEHICLE_PASSIVE_SUSPENSION_HEIGHT, {"change_mode", "require_min_max_supported_value", "access", "version"}},
- {VehicleProperty::ENGINE_IDLE_AUTO_STOP_ENABLED, {"change_mode", "access", "version"}},
- {VehicleProperty::IMPACT_DETECTED, {"change_mode", "access", "require_supported_values_list", "version", "data_enum", "data_enum_bit_flags"}},
- {VehicleProperty::VEHICLE_HORN_ENGAGED, {"change_mode", "access", "version"}},
- {VehicleProperty::GEAR_SELECTION, {"change_mode", "legacy_supported_values_in_config", "access", "require_supported_values_list", "version", "data_enum"}},
- {VehicleProperty::CURRENT_GEAR, {"change_mode", "legacy_supported_values_in_config", "access", "require_supported_values_list", "version", "data_enum"}},
- {VehicleProperty::PARKING_BRAKE_ON, {"change_mode", "access", "version"}},
- {VehicleProperty::PARKING_BRAKE_AUTO_APPLY, {"change_mode", "access", "version"}},
- {VehicleProperty::EV_BRAKE_REGENERATION_LEVEL, {"change_mode", "require_min_max_supported_value", "access", "version"}},
- {VehicleProperty::FUEL_LEVEL_LOW, {"change_mode", "access", "version"}},
- {VehicleProperty::NIGHT_MODE, {"change_mode", "access", "version"}},
- {VehicleProperty::TURN_SIGNAL_STATE, {"change_mode", "access", "version", "data_enum"}},
- {VehicleProperty::IGNITION_STATE, {"change_mode", "access", "require_supported_values_list", "version", "data_enum"}},
- {VehicleProperty::ABS_ACTIVE, {"change_mode", "access", "version"}},
- {VehicleProperty::TRACTION_CONTROL_ACTIVE, {"change_mode", "access", "version"}},
- {VehicleProperty::EV_STOPPING_MODE, {"change_mode", "access", "require_supported_values_list", "version", "data_enum"}},
- {VehicleProperty::ELECTRONIC_STABILITY_CONTROL_ENABLED, {"change_mode", "access", "version"}},
- {VehicleProperty::ELECTRONIC_STABILITY_CONTROL_STATE, {"change_mode", "access", "require_supported_values_list", "version", "data_enum"}},
- {VehicleProperty::TURN_SIGNAL_LIGHT_STATE, {"change_mode", "access", "require_supported_values_list", "version", "data_enum", "data_enum_bit_flags"}},
- {VehicleProperty::TURN_SIGNAL_SWITCH, {"change_mode", "access", "require_supported_values_list", "version", "data_enum"}},
- {VehicleProperty::HVAC_FAN_SPEED, {"change_mode", "require_min_max_supported_value", "access", "version"}},
- {VehicleProperty::HVAC_FAN_DIRECTION, {"change_mode", "access", "version", "data_enum"}},
- {VehicleProperty::HVAC_TEMPERATURE_CURRENT, {"change_mode", "access", "version", "unit"}},
- {VehicleProperty::HVAC_TEMPERATURE_SET, {"change_mode", "unit", "require_min_max_supported_value", "access", "version"}},
- {VehicleProperty::HVAC_DEFROSTER, {"change_mode", "access", "version"}},
- {VehicleProperty::HVAC_AC_ON, {"change_mode", "access", "version"}},
- {VehicleProperty::HVAC_MAX_AC_ON, {"change_mode", "access", "version"}},
- {VehicleProperty::HVAC_MAX_DEFROST_ON, {"change_mode", "access", "version"}},
- {VehicleProperty::HVAC_RECIRC_ON, {"change_mode", "access", "version"}},
- {VehicleProperty::HVAC_DUAL_ON, {"change_mode", "access", "version"}},
- {VehicleProperty::HVAC_AUTO_ON, {"change_mode", "access", "version"}},
- {VehicleProperty::HVAC_SEAT_TEMPERATURE, {"change_mode", "require_min_max_supported_value", "access", "version"}},
- {VehicleProperty::HVAC_SIDE_MIRROR_HEAT, {"change_mode", "require_min_max_supported_value", "access", "version"}},
- {VehicleProperty::HVAC_STEERING_WHEEL_HEAT, {"change_mode", "require_min_max_supported_value", "access", "version"}},
- {VehicleProperty::HVAC_TEMPERATURE_DISPLAY_UNITS, {"change_mode", "legacy_supported_values_in_config", "access", "require_supported_values_list", "version", "data_enum"}},
- {VehicleProperty::HVAC_ACTUAL_FAN_SPEED_RPM, {"change_mode", "access", "version"}},
- {VehicleProperty::HVAC_POWER_ON, {"change_mode", "access", "version"}},
- {VehicleProperty::HVAC_FAN_DIRECTION_AVAILABLE, {"change_mode", "access", "version", "data_enum", "data_enum_bit_flags"}},
- {VehicleProperty::HVAC_AUTO_RECIRC_ON, {"change_mode", "access", "version"}},
- {VehicleProperty::HVAC_SEAT_VENTILATION, {"change_mode", "require_min_max_supported_value", "access", "version"}},
- {VehicleProperty::HVAC_ELECTRIC_DEFROSTER_ON, {"change_mode", "access", "version"}},
- {VehicleProperty::HVAC_TEMPERATURE_VALUE_SUGGESTION, {"change_mode", "access", "version"}},
- {VehicleProperty::DISTANCE_DISPLAY_UNITS, {"change_mode", "legacy_supported_values_in_config", "access", "require_supported_values_list", "version", "data_enum"}},
- {VehicleProperty::FUEL_VOLUME_DISPLAY_UNITS, {"change_mode", "legacy_supported_values_in_config", "access", "require_supported_values_list", "version", "data_enum"}},
- {VehicleProperty::TIRE_PRESSURE_DISPLAY_UNITS, {"change_mode", "legacy_supported_values_in_config", "access", "require_supported_values_list", "version", "data_enum"}},
- {VehicleProperty::EV_BATTERY_DISPLAY_UNITS, {"change_mode", "legacy_supported_values_in_config", "access", "require_supported_values_list", "version", "data_enum"}},
- {VehicleProperty::FUEL_CONSUMPTION_UNITS_DISTANCE_OVER_VOLUME, {"change_mode", "access", "version"}},
- {VehicleProperty::VEHICLE_SPEED_DISPLAY_UNITS, {"change_mode", "legacy_supported_values_in_config", "access", "require_supported_values_list", "version", "data_enum"}},
- {VehicleProperty::EXTERNAL_CAR_TIME, {"change_mode", "access", "version", "unit"}},
- {VehicleProperty::ANDROID_EPOCH_TIME, {"change_mode", "access", "version", "unit"}},
- {VehicleProperty::STORAGE_ENCRYPTION_BINDING_SEED, {"change_mode", "access", "version"}},
- {VehicleProperty::ENV_OUTSIDE_TEMPERATURE, {"change_mode", "access", "version", "unit"}},
- {VehicleProperty::AP_POWER_STATE_REQ, {"change_mode", "access", "version"}},
- {VehicleProperty::AP_POWER_STATE_REPORT, {"change_mode", "access", "version"}},
- {VehicleProperty::AP_POWER_BOOTUP_REASON, {"change_mode", "access", "version"}},
- {VehicleProperty::DISPLAY_BRIGHTNESS, {"change_mode", "access", "version"}},
- {VehicleProperty::PER_DISPLAY_BRIGHTNESS, {"change_mode", "access", "version"}},
- {VehicleProperty::VALET_MODE_ENABLED, {"change_mode", "access", "version"}},
- {VehicleProperty::HEAD_UP_DISPLAY_ENABLED, {"change_mode", "access", "version"}},
- {VehicleProperty::HW_KEY_INPUT, {"change_mode", "access", "version"}},
- {VehicleProperty::HW_KEY_INPUT_V2, {"change_mode", "access", "version"}},
- {VehicleProperty::HW_MOTION_INPUT, {"change_mode", "access", "version"}},
- {VehicleProperty::HW_ROTARY_INPUT, {"change_mode", "access", "version", "data_enum"}},
- {VehicleProperty::HW_CUSTOM_INPUT, {"change_mode", "access", "version", "data_enum"}},
- {VehicleProperty::DOOR_POS, {"change_mode", "require_min_max_supported_value", "access", "version"}},
- {VehicleProperty::DOOR_MOVE, {"change_mode", "require_min_max_supported_value", "access", "version"}},
- {VehicleProperty::DOOR_LOCK, {"change_mode", "access", "version"}},
- {VehicleProperty::DOOR_CHILD_LOCK_ENABLED, {"change_mode", "access", "version"}},
- {VehicleProperty::MIRROR_Z_POS, {"change_mode", "require_min_max_supported_value", "access", "version"}},
- {VehicleProperty::MIRROR_Z_MOVE, {"change_mode", "require_min_max_supported_value", "access", "version"}},
- {VehicleProperty::MIRROR_Y_POS, {"change_mode", "require_min_max_supported_value", "access", "version"}},
- {VehicleProperty::MIRROR_Y_MOVE, {"change_mode", "require_min_max_supported_value", "access", "version"}},
- {VehicleProperty::MIRROR_LOCK, {"change_mode", "access", "version"}},
- {VehicleProperty::MIRROR_FOLD, {"change_mode", "access", "version"}},
- {VehicleProperty::MIRROR_AUTO_FOLD_ENABLED, {"change_mode", "access", "version"}},
- {VehicleProperty::MIRROR_AUTO_TILT_ENABLED, {"change_mode", "access", "version"}},
- {VehicleProperty::SEAT_MEMORY_SELECT, {"change_mode", "require_min_max_supported_value", "access", "version"}},
- {VehicleProperty::SEAT_MEMORY_SET, {"change_mode", "require_min_max_supported_value", "access", "version"}},
- {VehicleProperty::SEAT_BELT_BUCKLED, {"change_mode", "access", "version"}},
- {VehicleProperty::SEAT_BELT_HEIGHT_POS, {"change_mode", "require_min_max_supported_value", "access", "version"}},
- {VehicleProperty::SEAT_BELT_HEIGHT_MOVE, {"change_mode", "require_min_max_supported_value", "access", "version"}},
- {VehicleProperty::SEAT_FORE_AFT_POS, {"change_mode", "require_min_max_supported_value", "access", "version"}},
- {VehicleProperty::SEAT_FORE_AFT_MOVE, {"change_mode", "require_min_max_supported_value", "access", "version"}},
- {VehicleProperty::SEAT_BACKREST_ANGLE_1_POS, {"change_mode", "require_min_max_supported_value", "access", "version"}},
- {VehicleProperty::SEAT_BACKREST_ANGLE_1_MOVE, {"change_mode", "require_min_max_supported_value", "access", "version"}},
- {VehicleProperty::SEAT_BACKREST_ANGLE_2_POS, {"change_mode", "require_min_max_supported_value", "access", "version"}},
- {VehicleProperty::SEAT_BACKREST_ANGLE_2_MOVE, {"change_mode", "require_min_max_supported_value", "access", "version"}},
- {VehicleProperty::SEAT_HEIGHT_POS, {"change_mode", "require_min_max_supported_value", "access", "version"}},
- {VehicleProperty::SEAT_HEIGHT_MOVE, {"change_mode", "require_min_max_supported_value", "access", "version"}},
- {VehicleProperty::SEAT_DEPTH_POS, {"change_mode", "require_min_max_supported_value", "access", "version"}},
- {VehicleProperty::SEAT_DEPTH_MOVE, {"change_mode", "require_min_max_supported_value", "access", "version"}},
- {VehicleProperty::SEAT_TILT_POS, {"change_mode", "require_min_max_supported_value", "access", "version"}},
- {VehicleProperty::SEAT_TILT_MOVE, {"change_mode", "require_min_max_supported_value", "access", "version"}},
- {VehicleProperty::SEAT_LUMBAR_FORE_AFT_POS, {"change_mode", "require_min_max_supported_value", "access", "version"}},
- {VehicleProperty::SEAT_LUMBAR_FORE_AFT_MOVE, {"change_mode", "require_min_max_supported_value", "access", "version"}},
- {VehicleProperty::SEAT_LUMBAR_SIDE_SUPPORT_POS, {"change_mode", "require_min_max_supported_value", "access", "version"}},
- {VehicleProperty::SEAT_LUMBAR_SIDE_SUPPORT_MOVE, {"change_mode", "require_min_max_supported_value", "access", "version"}},
- {VehicleProperty::SEAT_HEADREST_HEIGHT_POS, {"change_mode", "access", "version"}},
- {VehicleProperty::SEAT_HEADREST_HEIGHT_POS_V2, {"change_mode", "require_min_max_supported_value", "access", "version"}},
- {VehicleProperty::SEAT_HEADREST_HEIGHT_MOVE, {"change_mode", "require_min_max_supported_value", "access", "version"}},
- {VehicleProperty::SEAT_HEADREST_ANGLE_POS, {"change_mode", "require_min_max_supported_value", "access", "version"}},
- {VehicleProperty::SEAT_HEADREST_ANGLE_MOVE, {"change_mode", "require_min_max_supported_value", "access", "version"}},
- {VehicleProperty::SEAT_HEADREST_FORE_AFT_POS, {"change_mode", "require_min_max_supported_value", "access", "version"}},
- {VehicleProperty::SEAT_HEADREST_FORE_AFT_MOVE, {"change_mode", "require_min_max_supported_value", "access", "version"}},
- {VehicleProperty::SEAT_FOOTWELL_LIGHTS_STATE, {"change_mode", "access", "require_supported_values_list", "version", "data_enum"}},
- {VehicleProperty::SEAT_FOOTWELL_LIGHTS_SWITCH, {"change_mode", "access", "require_supported_values_list", "version", "data_enum"}},
- {VehicleProperty::SEAT_EASY_ACCESS_ENABLED, {"change_mode", "access", "version"}},
- {VehicleProperty::SEAT_AIRBAG_ENABLED, {"change_mode", "access", "version"}},
- {VehicleProperty::SEAT_AIRBAGS_DEPLOYED, {"change_mode", "access", "require_supported_values_list", "version", "data_enum"}},
- {VehicleProperty::SEAT_CUSHION_SIDE_SUPPORT_POS, {"change_mode", "require_min_max_supported_value", "access", "version"}},
- {VehicleProperty::SEAT_CUSHION_SIDE_SUPPORT_MOVE, {"change_mode", "require_min_max_supported_value", "access", "version"}},
- {VehicleProperty::SEAT_LUMBAR_VERTICAL_POS, {"change_mode", "require_min_max_supported_value", "access", "version"}},
- {VehicleProperty::SEAT_LUMBAR_VERTICAL_MOVE, {"change_mode", "require_min_max_supported_value", "access", "version"}},
- {VehicleProperty::SEAT_WALK_IN_POS, {"change_mode", "require_min_max_supported_value", "access", "version"}},
- {VehicleProperty::SEAT_BELT_PRETENSIONER_DEPLOYED, {"change_mode", "access", "version"}},
- {VehicleProperty::SEAT_OCCUPANCY, {"change_mode", "access", "require_supported_values_list", "version", "data_enum"}},
- {VehicleProperty::WINDOW_POS, {"change_mode", "require_min_max_supported_value", "access", "version"}},
- {VehicleProperty::WINDOW_MOVE, {"change_mode", "require_min_max_supported_value", "access", "version"}},
- {VehicleProperty::WINDOW_LOCK, {"change_mode", "access", "version"}},
- {VehicleProperty::WINDSHIELD_WIPERS_PERIOD, {"change_mode", "unit", "require_min_max_supported_value", "access", "version"}},
- {VehicleProperty::WINDSHIELD_WIPERS_STATE, {"change_mode", "access", "require_supported_values_list", "version", "data_enum"}},
- {VehicleProperty::WINDSHIELD_WIPERS_SWITCH, {"change_mode", "access", "require_supported_values_list", "version", "data_enum"}},
- {VehicleProperty::STEERING_WHEEL_DEPTH_POS, {"change_mode", "require_min_max_supported_value", "access", "version"}},
- {VehicleProperty::STEERING_WHEEL_DEPTH_MOVE, {"change_mode", "require_min_max_supported_value", "access", "version"}},
- {VehicleProperty::STEERING_WHEEL_HEIGHT_POS, {"change_mode", "require_min_max_supported_value", "access", "version"}},
- {VehicleProperty::STEERING_WHEEL_HEIGHT_MOVE, {"change_mode", "require_min_max_supported_value", "access", "version"}},
- {VehicleProperty::STEERING_WHEEL_THEFT_LOCK_ENABLED, {"change_mode", "access", "version"}},
- {VehicleProperty::STEERING_WHEEL_LOCKED, {"change_mode", "access", "version"}},
- {VehicleProperty::STEERING_WHEEL_EASY_ACCESS_ENABLED, {"change_mode", "access", "version"}},
- {VehicleProperty::GLOVE_BOX_DOOR_POS, {"change_mode", "require_min_max_supported_value", "access", "version"}},
- {VehicleProperty::GLOVE_BOX_LOCKED, {"change_mode", "access", "version"}},
- {VehicleProperty::VEHICLE_MAP_SERVICE, {"change_mode", "access", "version"}},
- {VehicleProperty::LOCATION_CHARACTERIZATION, {"change_mode", "access", "version"}},
- {VehicleProperty::ULTRASONICS_SENSOR_POSITION, {"change_mode", "access", "version"}},
- {VehicleProperty::ULTRASONICS_SENSOR_ORIENTATION, {"change_mode", "access", "version"}},
- {VehicleProperty::ULTRASONICS_SENSOR_FIELD_OF_VIEW, {"change_mode", "access", "version"}},
- {VehicleProperty::ULTRASONICS_SENSOR_DETECTION_RANGE, {"change_mode", "access", "version"}},
- {VehicleProperty::ULTRASONICS_SENSOR_SUPPORTED_RANGES, {"change_mode", "access", "version"}},
- {VehicleProperty::ULTRASONICS_SENSOR_MEASURED_DISTANCE, {"change_mode", "access", "version"}},
- {VehicleProperty::OBD2_LIVE_FRAME, {"change_mode", "access", "version"}},
- {VehicleProperty::OBD2_FREEZE_FRAME, {"change_mode", "access", "version"}},
- {VehicleProperty::OBD2_FREEZE_FRAME_INFO, {"change_mode", "access", "version"}},
- {VehicleProperty::OBD2_FREEZE_FRAME_CLEAR, {"change_mode", "access", "version"}},
- {VehicleProperty::HEADLIGHTS_STATE, {"change_mode", "access", "require_supported_values_list", "version", "data_enum"}},
- {VehicleProperty::HIGH_BEAM_LIGHTS_STATE, {"change_mode", "access", "require_supported_values_list", "version", "data_enum"}},
- {VehicleProperty::FOG_LIGHTS_STATE, {"change_mode", "access", "require_supported_values_list", "version", "data_enum"}},
- {VehicleProperty::HAZARD_LIGHTS_STATE, {"change_mode", "access", "require_supported_values_list", "version", "data_enum"}},
- {VehicleProperty::HEADLIGHTS_SWITCH, {"change_mode", "access", "require_supported_values_list", "version", "data_enum"}},
- {VehicleProperty::HIGH_BEAM_LIGHTS_SWITCH, {"change_mode", "access", "require_supported_values_list", "version", "data_enum"}},
- {VehicleProperty::FOG_LIGHTS_SWITCH, {"change_mode", "access", "require_supported_values_list", "version", "data_enum"}},
- {VehicleProperty::HAZARD_LIGHTS_SWITCH, {"change_mode", "access", "require_supported_values_list", "version", "data_enum"}},
- {VehicleProperty::CABIN_LIGHTS_STATE, {"change_mode", "access", "require_supported_values_list", "version", "data_enum"}},
- {VehicleProperty::CABIN_LIGHTS_SWITCH, {"change_mode", "access", "require_supported_values_list", "version", "data_enum"}},
- {VehicleProperty::READING_LIGHTS_STATE, {"change_mode", "access", "require_supported_values_list", "version", "data_enum"}},
- {VehicleProperty::READING_LIGHTS_SWITCH, {"change_mode", "access", "require_supported_values_list", "version", "data_enum"}},
- {VehicleProperty::STEERING_WHEEL_LIGHTS_STATE, {"change_mode", "access", "require_supported_values_list", "version", "data_enum"}},
- {VehicleProperty::STEERING_WHEEL_LIGHTS_SWITCH, {"change_mode", "access", "require_supported_values_list", "version", "data_enum"}},
- {VehicleProperty::SUPPORT_CUSTOMIZE_VENDOR_PERMISSION, {"change_mode", "access", "version"}},
- {VehicleProperty::DISABLED_OPTIONAL_FEATURES, {"change_mode", "access", "version"}},
- {VehicleProperty::INITIAL_USER_INFO, {"change_mode", "access", "version"}},
- {VehicleProperty::SWITCH_USER, {"change_mode", "access", "version"}},
- {VehicleProperty::CREATE_USER, {"change_mode", "access", "version"}},
- {VehicleProperty::REMOVE_USER, {"change_mode", "access", "version"}},
- {VehicleProperty::USER_IDENTIFICATION_ASSOCIATION, {"change_mode", "access", "version"}},
- {VehicleProperty::EVS_SERVICE_REQUEST, {"change_mode", "access", "version"}},
- {VehicleProperty::POWER_POLICY_REQ, {"change_mode", "access", "version"}},
- {VehicleProperty::POWER_POLICY_GROUP_REQ, {"change_mode", "access", "version"}},
- {VehicleProperty::CURRENT_POWER_POLICY, {"change_mode", "access", "version"}},
- {VehicleProperty::WATCHDOG_ALIVE, {"change_mode", "access", "version"}},
- {VehicleProperty::WATCHDOG_TERMINATED_PROCESS, {"change_mode", "access", "version"}},
- {VehicleProperty::VHAL_HEARTBEAT, {"change_mode", "access", "version"}},
- {VehicleProperty::CLUSTER_SWITCH_UI, {"change_mode", "access", "version"}},
- {VehicleProperty::CLUSTER_DISPLAY_STATE, {"change_mode", "access", "version"}},
- {VehicleProperty::CLUSTER_REPORT_STATE, {"change_mode", "access", "version"}},
- {VehicleProperty::CLUSTER_REQUEST_DISPLAY, {"change_mode", "access", "version"}},
- {VehicleProperty::CLUSTER_NAVIGATION_STATE, {"change_mode", "access", "version"}},
- {VehicleProperty::ELECTRONIC_TOLL_COLLECTION_CARD_TYPE, {"change_mode", "access", "require_supported_values_list", "version", "data_enum"}},
- {VehicleProperty::ELECTRONIC_TOLL_COLLECTION_CARD_STATUS, {"change_mode", "access", "require_supported_values_list", "version", "data_enum"}},
- {VehicleProperty::FRONT_FOG_LIGHTS_STATE, {"change_mode", "access", "require_supported_values_list", "version", "data_enum"}},
- {VehicleProperty::FRONT_FOG_LIGHTS_SWITCH, {"change_mode", "access", "require_supported_values_list", "version", "data_enum"}},
- {VehicleProperty::REAR_FOG_LIGHTS_STATE, {"change_mode", "access", "require_supported_values_list", "version", "data_enum"}},
- {VehicleProperty::REAR_FOG_LIGHTS_SWITCH, {"change_mode", "access", "require_supported_values_list", "version", "data_enum"}},
- {VehicleProperty::EV_CHARGE_CURRENT_DRAW_LIMIT, {"change_mode", "access", "version", "unit"}},
- {VehicleProperty::EV_CHARGE_PERCENT_LIMIT, {"change_mode", "legacy_supported_values_in_config", "access", "require_supported_values_list", "version"}},
- {VehicleProperty::EV_CHARGE_STATE, {"change_mode", "access", "require_supported_values_list", "version", "data_enum"}},
- {VehicleProperty::EV_CHARGE_SWITCH, {"change_mode", "access", "version"}},
- {VehicleProperty::EV_CHARGE_TIME_REMAINING, {"change_mode", "access", "version", "unit"}},
- {VehicleProperty::EV_REGENERATIVE_BRAKING_STATE, {"change_mode", "access", "require_supported_values_list", "version", "data_enum"}},
- {VehicleProperty::TRAILER_PRESENT, {"change_mode", "access", "require_supported_values_list", "version", "data_enum"}},
- {VehicleProperty::VEHICLE_CURB_WEIGHT, {"change_mode", "access", "version"}},
- {VehicleProperty::GENERAL_SAFETY_REGULATION_COMPLIANCE_REQUIREMENT, {"change_mode", "access", "version", "data_enum"}},
- {VehicleProperty::SUPPORTED_PROPERTY_IDS, {"change_mode", "access", "version"}},
- {VehicleProperty::SHUTDOWN_REQUEST, {"change_mode", "access", "version", "data_enum"}},
- {VehicleProperty::VEHICLE_IN_USE, {"change_mode", "access", "version"}},
- {VehicleProperty::CLUSTER_HEARTBEAT, {"change_mode", "access", "version"}},
- {VehicleProperty::VEHICLE_DRIVING_AUTOMATION_CURRENT_LEVEL, {"change_mode", "access", "require_supported_values_list", "version", "data_enum"}},
- {VehicleProperty::VEHICLE_DRIVING_AUTOMATION_TARGET_LEVEL, {"change_mode", "access", "require_supported_values_list", "version", "data_enum"}},
- {VehicleProperty::CAMERA_SERVICE_CURRENT_STATE, {"change_mode", "access", "version", "data_enum"}},
- {VehicleProperty::PER_DISPLAY_MAX_BRIGHTNESS, {"change_mode", "access", "version"}},
- {VehicleProperty::AUTOMATIC_EMERGENCY_BRAKING_ENABLED, {"change_mode", "access", "version"}},
- {VehicleProperty::AUTOMATIC_EMERGENCY_BRAKING_STATE, {"change_mode", "access", "require_supported_values_list", "version", "data_enum"}},
- {VehicleProperty::FORWARD_COLLISION_WARNING_ENABLED, {"change_mode", "access", "version"}},
- {VehicleProperty::FORWARD_COLLISION_WARNING_STATE, {"change_mode", "access", "require_supported_values_list", "version", "data_enum"}},
- {VehicleProperty::BLIND_SPOT_WARNING_ENABLED, {"change_mode", "access", "version"}},
- {VehicleProperty::BLIND_SPOT_WARNING_STATE, {"change_mode", "access", "require_supported_values_list", "version", "data_enum"}},
- {VehicleProperty::LANE_DEPARTURE_WARNING_ENABLED, {"change_mode", "access", "version"}},
- {VehicleProperty::LANE_DEPARTURE_WARNING_STATE, {"change_mode", "access", "require_supported_values_list", "version", "data_enum"}},
- {VehicleProperty::LANE_KEEP_ASSIST_ENABLED, {"change_mode", "access", "version"}},
- {VehicleProperty::LANE_KEEP_ASSIST_STATE, {"change_mode", "access", "require_supported_values_list", "version", "data_enum"}},
- {VehicleProperty::LANE_CENTERING_ASSIST_ENABLED, {"change_mode", "access", "version"}},
- {VehicleProperty::LANE_CENTERING_ASSIST_COMMAND, {"change_mode", "access", "require_supported_values_list", "version", "data_enum"}},
- {VehicleProperty::LANE_CENTERING_ASSIST_STATE, {"change_mode", "access", "require_supported_values_list", "version", "data_enum"}},
- {VehicleProperty::EMERGENCY_LANE_KEEP_ASSIST_ENABLED, {"change_mode", "access", "version"}},
- {VehicleProperty::EMERGENCY_LANE_KEEP_ASSIST_STATE, {"change_mode", "access", "require_supported_values_list", "version", "data_enum"}},
- {VehicleProperty::CRUISE_CONTROL_ENABLED, {"change_mode", "access", "version"}},
- {VehicleProperty::CRUISE_CONTROL_TYPE, {"change_mode", "access", "require_supported_values_list", "version", "data_enum"}},
- {VehicleProperty::CRUISE_CONTROL_STATE, {"change_mode", "access", "require_supported_values_list", "version", "data_enum"}},
- {VehicleProperty::CRUISE_CONTROL_COMMAND, {"change_mode", "access", "require_supported_values_list", "version", "data_enum"}},
- {VehicleProperty::CRUISE_CONTROL_TARGET_SPEED, {"change_mode", "unit", "require_min_max_supported_value", "access", "version"}},
- {VehicleProperty::ADAPTIVE_CRUISE_CONTROL_TARGET_TIME_GAP, {"change_mode", "unit", "legacy_supported_values_in_config", "access", "require_supported_values_list", "version"}},
- {VehicleProperty::ADAPTIVE_CRUISE_CONTROL_LEAD_VEHICLE_MEASURED_DISTANCE, {"change_mode", "unit", "require_min_max_supported_value", "access", "version"}},
- {VehicleProperty::HANDS_ON_DETECTION_ENABLED, {"change_mode", "access", "version"}},
- {VehicleProperty::HANDS_ON_DETECTION_DRIVER_STATE, {"change_mode", "access", "require_supported_values_list", "version", "data_enum"}},
- {VehicleProperty::HANDS_ON_DETECTION_WARNING, {"change_mode", "access", "require_supported_values_list", "version", "data_enum"}},
- {VehicleProperty::DRIVER_DROWSINESS_ATTENTION_SYSTEM_ENABLED, {"change_mode", "access", "version"}},
- {VehicleProperty::DRIVER_DROWSINESS_ATTENTION_STATE, {"change_mode", "access", "require_supported_values_list", "version", "data_enum"}},
- {VehicleProperty::DRIVER_DROWSINESS_ATTENTION_WARNING_ENABLED, {"change_mode", "access", "version"}},
- {VehicleProperty::DRIVER_DROWSINESS_ATTENTION_WARNING, {"change_mode", "access", "require_supported_values_list", "version", "data_enum"}},
- {VehicleProperty::DRIVER_DISTRACTION_SYSTEM_ENABLED, {"change_mode", "access", "version"}},
- {VehicleProperty::DRIVER_DISTRACTION_STATE, {"change_mode", "access", "require_supported_values_list", "version", "data_enum"}},
- {VehicleProperty::DRIVER_DISTRACTION_WARNING_ENABLED, {"change_mode", "access", "version"}},
- {VehicleProperty::DRIVER_DISTRACTION_WARNING, {"change_mode", "access", "require_supported_values_list", "version", "data_enum"}},
- {VehicleProperty::LOW_SPEED_COLLISION_WARNING_ENABLED, {"change_mode", "access", "version"}},
- {VehicleProperty::LOW_SPEED_COLLISION_WARNING_STATE, {"change_mode", "access", "require_supported_values_list", "version", "data_enum"}},
- {VehicleProperty::CROSS_TRAFFIC_MONITORING_ENABLED, {"change_mode", "access", "version"}},
- {VehicleProperty::CROSS_TRAFFIC_MONITORING_WARNING_STATE, {"change_mode", "access", "require_supported_values_list", "version", "data_enum"}},
- {VehicleProperty::LOW_SPEED_AUTOMATIC_EMERGENCY_BRAKING_ENABLED, {"change_mode", "access", "version"}},
- {VehicleProperty::LOW_SPEED_AUTOMATIC_EMERGENCY_BRAKING_STATE, {"change_mode", "access", "require_supported_values_list", "version", "data_enum"}},
+ {VehicleProperty::INFO_VIN, {"access", "change_mode", "version"}},
+ {VehicleProperty::INFO_MAKE, {"access", "change_mode", "version"}},
+ {VehicleProperty::INFO_MODEL, {"access", "change_mode", "version"}},
+ {VehicleProperty::INFO_MODEL_YEAR, {"access", "change_mode", "unit", "version"}},
+ {VehicleProperty::INFO_FUEL_CAPACITY, {"access", "change_mode", "unit", "version"}},
+ {VehicleProperty::INFO_FUEL_TYPE, {"access", "change_mode", "data_enum", "version"}},
+ {VehicleProperty::INFO_EV_BATTERY_CAPACITY, {"access", "change_mode", "unit", "version"}},
+ {VehicleProperty::INFO_EV_CONNECTOR_TYPE, {"access", "change_mode", "data_enum", "version"}},
+ {VehicleProperty::INFO_FUEL_DOOR_LOCATION, {"access", "change_mode", "data_enum", "version"}},
+ {VehicleProperty::INFO_EV_PORT_LOCATION, {"access", "change_mode", "data_enum", "version"}},
+ {VehicleProperty::INFO_DRIVER_SEAT, {"access", "change_mode", "data_enum", "version"}},
+ {VehicleProperty::INFO_EXTERIOR_DIMENSIONS, {"access", "change_mode", "unit", "version"}},
+ {VehicleProperty::INFO_MULTI_EV_PORT_LOCATIONS, {"access", "change_mode", "data_enum", "version"}},
+ {VehicleProperty::INFO_MODEL_TRIM, {"access", "change_mode", "version"}},
+ {VehicleProperty::INFO_VEHICLE_SIZE_CLASS, {"access", "change_mode", "data_enum", "version"}},
+ {VehicleProperty::PERF_ODOMETER, {"access", "change_mode", "unit", "version"}},
+ {VehicleProperty::PERF_VEHICLE_SPEED, {"access", "change_mode", "unit", "version"}},
+ {VehicleProperty::PERF_VEHICLE_SPEED_DISPLAY, {"access", "change_mode", "unit", "version"}},
+ {VehicleProperty::PERF_STEERING_ANGLE, {"access", "change_mode", "unit", "version"}},
+ {VehicleProperty::PERF_REAR_STEERING_ANGLE, {"access", "change_mode", "unit", "version"}},
+ {VehicleProperty::INSTANTANEOUS_FUEL_ECONOMY, {"access", "change_mode", "version"}},
+ {VehicleProperty::INSTANTANEOUS_EV_EFFICIENCY, {"access", "change_mode", "version"}},
+ {VehicleProperty::ENGINE_COOLANT_TEMP, {"access", "change_mode", "unit", "version"}},
+ {VehicleProperty::ENGINE_OIL_LEVEL, {"access", "change_mode", "data_enum", "require_supported_values_list", "version"}},
+ {VehicleProperty::ENGINE_OIL_TEMP, {"access", "change_mode", "unit", "version"}},
+ {VehicleProperty::ENGINE_RPM, {"access", "change_mode", "unit", "version"}},
+ {VehicleProperty::WHEEL_TICK, {"access", "change_mode", "version"}},
+ {VehicleProperty::FUEL_LEVEL, {"access", "change_mode", "unit", "version"}},
+ {VehicleProperty::FUEL_DOOR_OPEN, {"access", "change_mode", "version"}},
+ {VehicleProperty::EV_BATTERY_LEVEL, {"access", "change_mode", "unit", "version"}},
+ {VehicleProperty::EV_CURRENT_BATTERY_CAPACITY, {"access", "change_mode", "unit", "version"}},
+ {VehicleProperty::EV_CHARGE_PORT_OPEN, {"access", "change_mode", "version"}},
+ {VehicleProperty::EV_CHARGE_PORT_CONNECTED, {"access", "change_mode", "version"}},
+ {VehicleProperty::EV_BATTERY_INSTANTANEOUS_CHARGE_RATE, {"access", "change_mode", "unit", "version"}},
+ {VehicleProperty::RANGE_REMAINING, {"access", "change_mode", "unit", "version"}},
+ {VehicleProperty::EV_BATTERY_AVERAGE_TEMPERATURE, {"access", "change_mode", "unit", "version"}},
+ {VehicleProperty::TIRE_PRESSURE, {"access", "change_mode", "require_min_max_supported_value", "unit", "version"}},
+ {VehicleProperty::CRITICALLY_LOW_TIRE_PRESSURE, {"access", "change_mode", "unit", "version"}},
+ {VehicleProperty::ACCELERATOR_PEDAL_COMPRESSION_PERCENTAGE, {"access", "change_mode", "version"}},
+ {VehicleProperty::BRAKE_PEDAL_COMPRESSION_PERCENTAGE, {"access", "change_mode", "version"}},
+ {VehicleProperty::BRAKE_PAD_WEAR_PERCENTAGE, {"access", "change_mode", "version"}},
+ {VehicleProperty::BRAKE_FLUID_LEVEL_LOW, {"access", "change_mode", "version"}},
+ {VehicleProperty::VEHICLE_PASSIVE_SUSPENSION_HEIGHT, {"access", "change_mode", "require_min_max_supported_value", "version"}},
+ {VehicleProperty::ENGINE_IDLE_AUTO_STOP_ENABLED, {"access", "change_mode", "version"}},
+ {VehicleProperty::IMPACT_DETECTED, {"access", "change_mode", "data_enum", "data_enum_bit_flags", "require_supported_values_list", "version"}},
+ {VehicleProperty::VEHICLE_HORN_ENGAGED, {"access", "change_mode", "version"}},
+ {VehicleProperty::GEAR_SELECTION, {"access", "change_mode", "data_enum", "legacy_supported_values_in_config", "require_supported_values_list", "version"}},
+ {VehicleProperty::CURRENT_GEAR, {"access", "change_mode", "data_enum", "legacy_supported_values_in_config", "require_supported_values_list", "version"}},
+ {VehicleProperty::PARKING_BRAKE_ON, {"access", "change_mode", "version"}},
+ {VehicleProperty::PARKING_BRAKE_AUTO_APPLY, {"access", "change_mode", "version"}},
+ {VehicleProperty::EV_BRAKE_REGENERATION_LEVEL, {"access", "change_mode", "require_min_max_supported_value", "version"}},
+ {VehicleProperty::FUEL_LEVEL_LOW, {"access", "change_mode", "version"}},
+ {VehicleProperty::NIGHT_MODE, {"access", "change_mode", "version"}},
+ {VehicleProperty::TURN_SIGNAL_STATE, {"access", "change_mode", "data_enum", "version"}},
+ {VehicleProperty::IGNITION_STATE, {"access", "change_mode", "data_enum", "require_supported_values_list", "version"}},
+ {VehicleProperty::ABS_ACTIVE, {"access", "change_mode", "version"}},
+ {VehicleProperty::TRACTION_CONTROL_ACTIVE, {"access", "change_mode", "version"}},
+ {VehicleProperty::EV_STOPPING_MODE, {"access", "change_mode", "data_enum", "require_supported_values_list", "version"}},
+ {VehicleProperty::ELECTRONIC_STABILITY_CONTROL_ENABLED, {"access", "change_mode", "version"}},
+ {VehicleProperty::ELECTRONIC_STABILITY_CONTROL_STATE, {"access", "change_mode", "data_enum", "require_supported_values_list", "version"}},
+ {VehicleProperty::TURN_SIGNAL_LIGHT_STATE, {"access", "change_mode", "data_enum", "data_enum_bit_flags", "require_supported_values_list", "version"}},
+ {VehicleProperty::TURN_SIGNAL_SWITCH, {"access", "change_mode", "data_enum", "require_supported_values_list", "version"}},
+ {VehicleProperty::HVAC_FAN_SPEED, {"access", "change_mode", "require_min_max_supported_value", "version"}},
+ {VehicleProperty::HVAC_FAN_DIRECTION, {"access", "change_mode", "data_enum", "version"}},
+ {VehicleProperty::HVAC_TEMPERATURE_CURRENT, {"access", "change_mode", "unit", "version"}},
+ {VehicleProperty::HVAC_TEMPERATURE_SET, {"access", "change_mode", "require_min_max_supported_value", "unit", "version"}},
+ {VehicleProperty::HVAC_DEFROSTER, {"access", "change_mode", "version"}},
+ {VehicleProperty::HVAC_AC_ON, {"access", "change_mode", "version"}},
+ {VehicleProperty::HVAC_MAX_AC_ON, {"access", "change_mode", "version"}},
+ {VehicleProperty::HVAC_MAX_DEFROST_ON, {"access", "change_mode", "version"}},
+ {VehicleProperty::HVAC_RECIRC_ON, {"access", "change_mode", "version"}},
+ {VehicleProperty::HVAC_DUAL_ON, {"access", "change_mode", "version"}},
+ {VehicleProperty::HVAC_AUTO_ON, {"access", "change_mode", "version"}},
+ {VehicleProperty::HVAC_SEAT_TEMPERATURE, {"access", "change_mode", "require_min_max_supported_value", "version"}},
+ {VehicleProperty::HVAC_SIDE_MIRROR_HEAT, {"access", "change_mode", "require_min_max_supported_value", "version"}},
+ {VehicleProperty::HVAC_STEERING_WHEEL_HEAT, {"access", "change_mode", "require_min_max_supported_value", "version"}},
+ {VehicleProperty::HVAC_TEMPERATURE_DISPLAY_UNITS, {"access", "change_mode", "data_enum", "legacy_supported_values_in_config", "require_supported_values_list", "version"}},
+ {VehicleProperty::HVAC_ACTUAL_FAN_SPEED_RPM, {"access", "change_mode", "version"}},
+ {VehicleProperty::HVAC_POWER_ON, {"access", "change_mode", "version"}},
+ {VehicleProperty::HVAC_FAN_DIRECTION_AVAILABLE, {"access", "change_mode", "data_enum", "data_enum_bit_flags", "version"}},
+ {VehicleProperty::HVAC_AUTO_RECIRC_ON, {"access", "change_mode", "version"}},
+ {VehicleProperty::HVAC_SEAT_VENTILATION, {"access", "change_mode", "require_min_max_supported_value", "version"}},
+ {VehicleProperty::HVAC_ELECTRIC_DEFROSTER_ON, {"access", "change_mode", "version"}},
+ {VehicleProperty::HVAC_TEMPERATURE_VALUE_SUGGESTION, {"access", "change_mode", "version"}},
+ {VehicleProperty::DISTANCE_DISPLAY_UNITS, {"access", "change_mode", "data_enum", "legacy_supported_values_in_config", "require_supported_values_list", "version"}},
+ {VehicleProperty::FUEL_VOLUME_DISPLAY_UNITS, {"access", "change_mode", "data_enum", "legacy_supported_values_in_config", "require_supported_values_list", "version"}},
+ {VehicleProperty::TIRE_PRESSURE_DISPLAY_UNITS, {"access", "change_mode", "data_enum", "legacy_supported_values_in_config", "require_supported_values_list", "version"}},
+ {VehicleProperty::EV_BATTERY_DISPLAY_UNITS, {"access", "change_mode", "data_enum", "legacy_supported_values_in_config", "require_supported_values_list", "version"}},
+ {VehicleProperty::FUEL_CONSUMPTION_UNITS_DISTANCE_OVER_VOLUME, {"access", "change_mode", "version"}},
+ {VehicleProperty::VEHICLE_SPEED_DISPLAY_UNITS, {"access", "change_mode", "data_enum", "legacy_supported_values_in_config", "require_supported_values_list", "version"}},
+ {VehicleProperty::EXTERNAL_CAR_TIME, {"access", "change_mode", "unit", "version"}},
+ {VehicleProperty::ANDROID_EPOCH_TIME, {"access", "change_mode", "unit", "version"}},
+ {VehicleProperty::STORAGE_ENCRYPTION_BINDING_SEED, {"access", "change_mode", "version"}},
+ {VehicleProperty::ENV_OUTSIDE_TEMPERATURE, {"access", "change_mode", "unit", "version"}},
+ {VehicleProperty::AP_POWER_STATE_REQ, {"access", "change_mode", "version"}},
+ {VehicleProperty::AP_POWER_STATE_REPORT, {"access", "change_mode", "version"}},
+ {VehicleProperty::AP_POWER_BOOTUP_REASON, {"access", "change_mode", "version"}},
+ {VehicleProperty::DISPLAY_BRIGHTNESS, {"access", "change_mode", "version"}},
+ {VehicleProperty::PER_DISPLAY_BRIGHTNESS, {"access", "change_mode", "version"}},
+ {VehicleProperty::VALET_MODE_ENABLED, {"access", "change_mode", "version"}},
+ {VehicleProperty::HEAD_UP_DISPLAY_ENABLED, {"access", "change_mode", "version"}},
+ {VehicleProperty::HW_KEY_INPUT, {"access", "change_mode", "version"}},
+ {VehicleProperty::HW_KEY_INPUT_V2, {"access", "change_mode", "version"}},
+ {VehicleProperty::HW_MOTION_INPUT, {"access", "change_mode", "version"}},
+ {VehicleProperty::HW_ROTARY_INPUT, {"access", "change_mode", "data_enum", "version"}},
+ {VehicleProperty::HW_CUSTOM_INPUT, {"access", "change_mode", "data_enum", "version"}},
+ {VehicleProperty::DOOR_POS, {"access", "change_mode", "require_min_max_supported_value", "version"}},
+ {VehicleProperty::DOOR_MOVE, {"access", "change_mode", "require_min_max_supported_value", "version"}},
+ {VehicleProperty::DOOR_LOCK, {"access", "change_mode", "version"}},
+ {VehicleProperty::DOOR_CHILD_LOCK_ENABLED, {"access", "change_mode", "version"}},
+ {VehicleProperty::MIRROR_Z_POS, {"access", "change_mode", "require_min_max_supported_value", "version"}},
+ {VehicleProperty::MIRROR_Z_MOVE, {"access", "change_mode", "require_min_max_supported_value", "version"}},
+ {VehicleProperty::MIRROR_Y_POS, {"access", "change_mode", "require_min_max_supported_value", "version"}},
+ {VehicleProperty::MIRROR_Y_MOVE, {"access", "change_mode", "require_min_max_supported_value", "version"}},
+ {VehicleProperty::MIRROR_LOCK, {"access", "change_mode", "version"}},
+ {VehicleProperty::MIRROR_FOLD, {"access", "change_mode", "version"}},
+ {VehicleProperty::MIRROR_AUTO_FOLD_ENABLED, {"access", "change_mode", "version"}},
+ {VehicleProperty::MIRROR_AUTO_TILT_ENABLED, {"access", "change_mode", "version"}},
+ {VehicleProperty::SEAT_MEMORY_SELECT, {"access", "change_mode", "require_min_max_supported_value", "version"}},
+ {VehicleProperty::SEAT_MEMORY_SET, {"access", "change_mode", "require_min_max_supported_value", "version"}},
+ {VehicleProperty::SEAT_BELT_BUCKLED, {"access", "change_mode", "version"}},
+ {VehicleProperty::SEAT_BELT_HEIGHT_POS, {"access", "change_mode", "require_min_max_supported_value", "version"}},
+ {VehicleProperty::SEAT_BELT_HEIGHT_MOVE, {"access", "change_mode", "require_min_max_supported_value", "version"}},
+ {VehicleProperty::SEAT_FORE_AFT_POS, {"access", "change_mode", "require_min_max_supported_value", "version"}},
+ {VehicleProperty::SEAT_FORE_AFT_MOVE, {"access", "change_mode", "require_min_max_supported_value", "version"}},
+ {VehicleProperty::SEAT_BACKREST_ANGLE_1_POS, {"access", "change_mode", "require_min_max_supported_value", "version"}},
+ {VehicleProperty::SEAT_BACKREST_ANGLE_1_MOVE, {"access", "change_mode", "require_min_max_supported_value", "version"}},
+ {VehicleProperty::SEAT_BACKREST_ANGLE_2_POS, {"access", "change_mode", "require_min_max_supported_value", "version"}},
+ {VehicleProperty::SEAT_BACKREST_ANGLE_2_MOVE, {"access", "change_mode", "require_min_max_supported_value", "version"}},
+ {VehicleProperty::SEAT_HEIGHT_POS, {"access", "change_mode", "require_min_max_supported_value", "version"}},
+ {VehicleProperty::SEAT_HEIGHT_MOVE, {"access", "change_mode", "require_min_max_supported_value", "version"}},
+ {VehicleProperty::SEAT_DEPTH_POS, {"access", "change_mode", "require_min_max_supported_value", "version"}},
+ {VehicleProperty::SEAT_DEPTH_MOVE, {"access", "change_mode", "require_min_max_supported_value", "version"}},
+ {VehicleProperty::SEAT_TILT_POS, {"access", "change_mode", "require_min_max_supported_value", "version"}},
+ {VehicleProperty::SEAT_TILT_MOVE, {"access", "change_mode", "require_min_max_supported_value", "version"}},
+ {VehicleProperty::SEAT_LUMBAR_FORE_AFT_POS, {"access", "change_mode", "require_min_max_supported_value", "version"}},
+ {VehicleProperty::SEAT_LUMBAR_FORE_AFT_MOVE, {"access", "change_mode", "require_min_max_supported_value", "version"}},
+ {VehicleProperty::SEAT_LUMBAR_SIDE_SUPPORT_POS, {"access", "change_mode", "require_min_max_supported_value", "version"}},
+ {VehicleProperty::SEAT_LUMBAR_SIDE_SUPPORT_MOVE, {"access", "change_mode", "require_min_max_supported_value", "version"}},
+ {VehicleProperty::SEAT_HEADREST_HEIGHT_POS, {"access", "change_mode", "version"}},
+ {VehicleProperty::SEAT_HEADREST_HEIGHT_POS_V2, {"access", "change_mode", "require_min_max_supported_value", "version"}},
+ {VehicleProperty::SEAT_HEADREST_HEIGHT_MOVE, {"access", "change_mode", "require_min_max_supported_value", "version"}},
+ {VehicleProperty::SEAT_HEADREST_ANGLE_POS, {"access", "change_mode", "require_min_max_supported_value", "version"}},
+ {VehicleProperty::SEAT_HEADREST_ANGLE_MOVE, {"access", "change_mode", "require_min_max_supported_value", "version"}},
+ {VehicleProperty::SEAT_HEADREST_FORE_AFT_POS, {"access", "change_mode", "require_min_max_supported_value", "version"}},
+ {VehicleProperty::SEAT_HEADREST_FORE_AFT_MOVE, {"access", "change_mode", "require_min_max_supported_value", "version"}},
+ {VehicleProperty::SEAT_FOOTWELL_LIGHTS_STATE, {"access", "change_mode", "data_enum", "require_supported_values_list", "version"}},
+ {VehicleProperty::SEAT_FOOTWELL_LIGHTS_SWITCH, {"access", "change_mode", "data_enum", "require_supported_values_list", "version"}},
+ {VehicleProperty::SEAT_EASY_ACCESS_ENABLED, {"access", "change_mode", "version"}},
+ {VehicleProperty::SEAT_AIRBAG_ENABLED, {"access", "change_mode", "version"}},
+ {VehicleProperty::SEAT_AIRBAGS_DEPLOYED, {"access", "change_mode", "data_enum", "require_supported_values_list", "version"}},
+ {VehicleProperty::SEAT_CUSHION_SIDE_SUPPORT_POS, {"access", "change_mode", "require_min_max_supported_value", "version"}},
+ {VehicleProperty::SEAT_CUSHION_SIDE_SUPPORT_MOVE, {"access", "change_mode", "require_min_max_supported_value", "version"}},
+ {VehicleProperty::SEAT_LUMBAR_VERTICAL_POS, {"access", "change_mode", "require_min_max_supported_value", "version"}},
+ {VehicleProperty::SEAT_LUMBAR_VERTICAL_MOVE, {"access", "change_mode", "require_min_max_supported_value", "version"}},
+ {VehicleProperty::SEAT_WALK_IN_POS, {"access", "change_mode", "require_min_max_supported_value", "version"}},
+ {VehicleProperty::SEAT_BELT_PRETENSIONER_DEPLOYED, {"access", "change_mode", "version"}},
+ {VehicleProperty::SEAT_OCCUPANCY, {"access", "change_mode", "data_enum", "require_supported_values_list", "version"}},
+ {VehicleProperty::WINDOW_POS, {"access", "change_mode", "require_min_max_supported_value", "version"}},
+ {VehicleProperty::WINDOW_MOVE, {"access", "change_mode", "require_min_max_supported_value", "version"}},
+ {VehicleProperty::WINDOW_LOCK, {"access", "change_mode", "version"}},
+ {VehicleProperty::WINDSHIELD_WIPERS_PERIOD, {"access", "change_mode", "require_min_max_supported_value", "unit", "version"}},
+ {VehicleProperty::WINDSHIELD_WIPERS_STATE, {"access", "change_mode", "data_enum", "require_supported_values_list", "version"}},
+ {VehicleProperty::WINDSHIELD_WIPERS_SWITCH, {"access", "change_mode", "data_enum", "require_supported_values_list", "version"}},
+ {VehicleProperty::STEERING_WHEEL_DEPTH_POS, {"access", "change_mode", "require_min_max_supported_value", "version"}},
+ {VehicleProperty::STEERING_WHEEL_DEPTH_MOVE, {"access", "change_mode", "require_min_max_supported_value", "version"}},
+ {VehicleProperty::STEERING_WHEEL_HEIGHT_POS, {"access", "change_mode", "require_min_max_supported_value", "version"}},
+ {VehicleProperty::STEERING_WHEEL_HEIGHT_MOVE, {"access", "change_mode", "require_min_max_supported_value", "version"}},
+ {VehicleProperty::STEERING_WHEEL_THEFT_LOCK_ENABLED, {"access", "change_mode", "version"}},
+ {VehicleProperty::STEERING_WHEEL_LOCKED, {"access", "change_mode", "version"}},
+ {VehicleProperty::STEERING_WHEEL_EASY_ACCESS_ENABLED, {"access", "change_mode", "version"}},
+ {VehicleProperty::GLOVE_BOX_DOOR_POS, {"access", "change_mode", "require_min_max_supported_value", "version"}},
+ {VehicleProperty::GLOVE_BOX_LOCKED, {"access", "change_mode", "version"}},
+ {VehicleProperty::VEHICLE_MAP_SERVICE, {"access", "change_mode", "version"}},
+ {VehicleProperty::LOCATION_CHARACTERIZATION, {"access", "change_mode", "version"}},
+ {VehicleProperty::ULTRASONICS_SENSOR_POSITION, {"access", "change_mode", "version"}},
+ {VehicleProperty::ULTRASONICS_SENSOR_ORIENTATION, {"access", "change_mode", "version"}},
+ {VehicleProperty::ULTRASONICS_SENSOR_FIELD_OF_VIEW, {"access", "change_mode", "version"}},
+ {VehicleProperty::ULTRASONICS_SENSOR_DETECTION_RANGE, {"access", "change_mode", "version"}},
+ {VehicleProperty::ULTRASONICS_SENSOR_SUPPORTED_RANGES, {"access", "change_mode", "version"}},
+ {VehicleProperty::ULTRASONICS_SENSOR_MEASURED_DISTANCE, {"access", "change_mode", "version"}},
+ {VehicleProperty::OBD2_LIVE_FRAME, {"access", "change_mode", "version"}},
+ {VehicleProperty::OBD2_FREEZE_FRAME, {"access", "change_mode", "version"}},
+ {VehicleProperty::OBD2_FREEZE_FRAME_INFO, {"access", "change_mode", "version"}},
+ {VehicleProperty::OBD2_FREEZE_FRAME_CLEAR, {"access", "change_mode", "version"}},
+ {VehicleProperty::HEADLIGHTS_STATE, {"access", "change_mode", "data_enum", "require_supported_values_list", "version"}},
+ {VehicleProperty::HIGH_BEAM_LIGHTS_STATE, {"access", "change_mode", "data_enum", "require_supported_values_list", "version"}},
+ {VehicleProperty::FOG_LIGHTS_STATE, {"access", "change_mode", "data_enum", "require_supported_values_list", "version"}},
+ {VehicleProperty::HAZARD_LIGHTS_STATE, {"access", "change_mode", "data_enum", "require_supported_values_list", "version"}},
+ {VehicleProperty::HEADLIGHTS_SWITCH, {"access", "change_mode", "data_enum", "require_supported_values_list", "version"}},
+ {VehicleProperty::HIGH_BEAM_LIGHTS_SWITCH, {"access", "change_mode", "data_enum", "require_supported_values_list", "version"}},
+ {VehicleProperty::FOG_LIGHTS_SWITCH, {"access", "change_mode", "data_enum", "require_supported_values_list", "version"}},
+ {VehicleProperty::HAZARD_LIGHTS_SWITCH, {"access", "change_mode", "data_enum", "require_supported_values_list", "version"}},
+ {VehicleProperty::CABIN_LIGHTS_STATE, {"access", "change_mode", "data_enum", "require_supported_values_list", "version"}},
+ {VehicleProperty::CABIN_LIGHTS_SWITCH, {"access", "change_mode", "data_enum", "require_supported_values_list", "version"}},
+ {VehicleProperty::READING_LIGHTS_STATE, {"access", "change_mode", "data_enum", "require_supported_values_list", "version"}},
+ {VehicleProperty::READING_LIGHTS_SWITCH, {"access", "change_mode", "data_enum", "require_supported_values_list", "version"}},
+ {VehicleProperty::STEERING_WHEEL_LIGHTS_STATE, {"access", "change_mode", "data_enum", "require_supported_values_list", "version"}},
+ {VehicleProperty::STEERING_WHEEL_LIGHTS_SWITCH, {"access", "change_mode", "data_enum", "require_supported_values_list", "version"}},
+ {VehicleProperty::SUPPORT_CUSTOMIZE_VENDOR_PERMISSION, {"access", "change_mode", "version"}},
+ {VehicleProperty::DISABLED_OPTIONAL_FEATURES, {"access", "change_mode", "version"}},
+ {VehicleProperty::INITIAL_USER_INFO, {"access", "change_mode", "version"}},
+ {VehicleProperty::SWITCH_USER, {"access", "change_mode", "version"}},
+ {VehicleProperty::CREATE_USER, {"access", "change_mode", "version"}},
+ {VehicleProperty::REMOVE_USER, {"access", "change_mode", "version"}},
+ {VehicleProperty::USER_IDENTIFICATION_ASSOCIATION, {"access", "change_mode", "version"}},
+ {VehicleProperty::EVS_SERVICE_REQUEST, {"access", "change_mode", "version"}},
+ {VehicleProperty::POWER_POLICY_REQ, {"access", "change_mode", "version"}},
+ {VehicleProperty::POWER_POLICY_GROUP_REQ, {"access", "change_mode", "version"}},
+ {VehicleProperty::CURRENT_POWER_POLICY, {"access", "change_mode", "version"}},
+ {VehicleProperty::WATCHDOG_ALIVE, {"access", "change_mode", "version"}},
+ {VehicleProperty::WATCHDOG_TERMINATED_PROCESS, {"access", "change_mode", "version"}},
+ {VehicleProperty::VHAL_HEARTBEAT, {"access", "change_mode", "version"}},
+ {VehicleProperty::CLUSTER_SWITCH_UI, {"access", "change_mode", "version"}},
+ {VehicleProperty::CLUSTER_DISPLAY_STATE, {"access", "change_mode", "version"}},
+ {VehicleProperty::CLUSTER_REPORT_STATE, {"access", "change_mode", "version"}},
+ {VehicleProperty::CLUSTER_REQUEST_DISPLAY, {"access", "change_mode", "version"}},
+ {VehicleProperty::CLUSTER_NAVIGATION_STATE, {"access", "change_mode", "version"}},
+ {VehicleProperty::ELECTRONIC_TOLL_COLLECTION_CARD_TYPE, {"access", "change_mode", "data_enum", "require_supported_values_list", "version"}},
+ {VehicleProperty::ELECTRONIC_TOLL_COLLECTION_CARD_STATUS, {"access", "change_mode", "data_enum", "require_supported_values_list", "version"}},
+ {VehicleProperty::FRONT_FOG_LIGHTS_STATE, {"access", "change_mode", "data_enum", "require_supported_values_list", "version"}},
+ {VehicleProperty::FRONT_FOG_LIGHTS_SWITCH, {"access", "change_mode", "data_enum", "require_supported_values_list", "version"}},
+ {VehicleProperty::REAR_FOG_LIGHTS_STATE, {"access", "change_mode", "data_enum", "require_supported_values_list", "version"}},
+ {VehicleProperty::REAR_FOG_LIGHTS_SWITCH, {"access", "change_mode", "data_enum", "require_supported_values_list", "version"}},
+ {VehicleProperty::EV_CHARGE_CURRENT_DRAW_LIMIT, {"access", "change_mode", "unit", "version"}},
+ {VehicleProperty::EV_CHARGE_PERCENT_LIMIT, {"access", "change_mode", "legacy_supported_values_in_config", "require_supported_values_list", "version"}},
+ {VehicleProperty::EV_CHARGE_STATE, {"access", "change_mode", "data_enum", "require_supported_values_list", "version"}},
+ {VehicleProperty::EV_CHARGE_SWITCH, {"access", "change_mode", "version"}},
+ {VehicleProperty::EV_CHARGE_TIME_REMAINING, {"access", "change_mode", "unit", "version"}},
+ {VehicleProperty::EV_REGENERATIVE_BRAKING_STATE, {"access", "change_mode", "data_enum", "require_supported_values_list", "version"}},
+ {VehicleProperty::TRAILER_PRESENT, {"access", "change_mode", "data_enum", "require_supported_values_list", "version"}},
+ {VehicleProperty::VEHICLE_CURB_WEIGHT, {"access", "change_mode", "version"}},
+ {VehicleProperty::GENERAL_SAFETY_REGULATION_COMPLIANCE_REQUIREMENT, {"access", "change_mode", "data_enum", "version"}},
+ {VehicleProperty::SUPPORTED_PROPERTY_IDS, {"access", "change_mode", "version"}},
+ {VehicleProperty::SHUTDOWN_REQUEST, {"access", "change_mode", "data_enum", "version"}},
+ {VehicleProperty::VEHICLE_IN_USE, {"access", "change_mode", "version"}},
+ {VehicleProperty::CLUSTER_HEARTBEAT, {"access", "change_mode", "version"}},
+ {VehicleProperty::VEHICLE_DRIVING_AUTOMATION_CURRENT_LEVEL, {"access", "change_mode", "data_enum", "require_supported_values_list", "version"}},
+ {VehicleProperty::VEHICLE_DRIVING_AUTOMATION_TARGET_LEVEL, {"access", "change_mode", "data_enum", "require_supported_values_list", "version"}},
+ {VehicleProperty::CAMERA_SERVICE_CURRENT_STATE, {"access", "change_mode", "data_enum", "version"}},
+ {VehicleProperty::PER_DISPLAY_MAX_BRIGHTNESS, {"access", "change_mode", "version"}},
+ {VehicleProperty::AUTOMATIC_EMERGENCY_BRAKING_ENABLED, {"access", "change_mode", "version"}},
+ {VehicleProperty::AUTOMATIC_EMERGENCY_BRAKING_STATE, {"access", "change_mode", "data_enum", "require_supported_values_list", "version"}},
+ {VehicleProperty::FORWARD_COLLISION_WARNING_ENABLED, {"access", "change_mode", "version"}},
+ {VehicleProperty::FORWARD_COLLISION_WARNING_STATE, {"access", "change_mode", "data_enum", "require_supported_values_list", "version"}},
+ {VehicleProperty::BLIND_SPOT_WARNING_ENABLED, {"access", "change_mode", "version"}},
+ {VehicleProperty::BLIND_SPOT_WARNING_STATE, {"access", "change_mode", "data_enum", "require_supported_values_list", "version"}},
+ {VehicleProperty::LANE_DEPARTURE_WARNING_ENABLED, {"access", "change_mode", "version"}},
+ {VehicleProperty::LANE_DEPARTURE_WARNING_STATE, {"access", "change_mode", "data_enum", "require_supported_values_list", "version"}},
+ {VehicleProperty::LANE_KEEP_ASSIST_ENABLED, {"access", "change_mode", "version"}},
+ {VehicleProperty::LANE_KEEP_ASSIST_STATE, {"access", "change_mode", "data_enum", "require_supported_values_list", "version"}},
+ {VehicleProperty::LANE_CENTERING_ASSIST_ENABLED, {"access", "change_mode", "version"}},
+ {VehicleProperty::LANE_CENTERING_ASSIST_COMMAND, {"access", "change_mode", "data_enum", "require_supported_values_list", "version"}},
+ {VehicleProperty::LANE_CENTERING_ASSIST_STATE, {"access", "change_mode", "data_enum", "require_supported_values_list", "version"}},
+ {VehicleProperty::EMERGENCY_LANE_KEEP_ASSIST_ENABLED, {"access", "change_mode", "version"}},
+ {VehicleProperty::EMERGENCY_LANE_KEEP_ASSIST_STATE, {"access", "change_mode", "data_enum", "require_supported_values_list", "version"}},
+ {VehicleProperty::CRUISE_CONTROL_ENABLED, {"access", "change_mode", "version"}},
+ {VehicleProperty::CRUISE_CONTROL_TYPE, {"access", "change_mode", "data_enum", "require_supported_values_list", "version"}},
+ {VehicleProperty::CRUISE_CONTROL_STATE, {"access", "change_mode", "data_enum", "require_supported_values_list", "version"}},
+ {VehicleProperty::CRUISE_CONTROL_COMMAND, {"access", "change_mode", "data_enum", "require_supported_values_list", "version"}},
+ {VehicleProperty::CRUISE_CONTROL_TARGET_SPEED, {"access", "change_mode", "require_min_max_supported_value", "unit", "version"}},
+ {VehicleProperty::ADAPTIVE_CRUISE_CONTROL_TARGET_TIME_GAP, {"access", "change_mode", "legacy_supported_values_in_config", "require_supported_values_list", "unit", "version"}},
+ {VehicleProperty::ADAPTIVE_CRUISE_CONTROL_LEAD_VEHICLE_MEASURED_DISTANCE, {"access", "change_mode", "require_min_max_supported_value", "unit", "version"}},
+ {VehicleProperty::HANDS_ON_DETECTION_ENABLED, {"access", "change_mode", "version"}},
+ {VehicleProperty::HANDS_ON_DETECTION_DRIVER_STATE, {"access", "change_mode", "data_enum", "require_supported_values_list", "version"}},
+ {VehicleProperty::HANDS_ON_DETECTION_WARNING, {"access", "change_mode", "data_enum", "require_supported_values_list", "version"}},
+ {VehicleProperty::DRIVER_DROWSINESS_ATTENTION_SYSTEM_ENABLED, {"access", "change_mode", "version"}},
+ {VehicleProperty::DRIVER_DROWSINESS_ATTENTION_STATE, {"access", "change_mode", "data_enum", "require_supported_values_list", "version"}},
+ {VehicleProperty::DRIVER_DROWSINESS_ATTENTION_WARNING_ENABLED, {"access", "change_mode", "version"}},
+ {VehicleProperty::DRIVER_DROWSINESS_ATTENTION_WARNING, {"access", "change_mode", "data_enum", "require_supported_values_list", "version"}},
+ {VehicleProperty::DRIVER_DISTRACTION_SYSTEM_ENABLED, {"access", "change_mode", "version"}},
+ {VehicleProperty::DRIVER_DISTRACTION_STATE, {"access", "change_mode", "data_enum", "require_supported_values_list", "version"}},
+ {VehicleProperty::DRIVER_DISTRACTION_WARNING_ENABLED, {"access", "change_mode", "version"}},
+ {VehicleProperty::DRIVER_DISTRACTION_WARNING, {"access", "change_mode", "data_enum", "require_supported_values_list", "version"}},
+ {VehicleProperty::LOW_SPEED_COLLISION_WARNING_ENABLED, {"access", "change_mode", "version"}},
+ {VehicleProperty::LOW_SPEED_COLLISION_WARNING_STATE, {"access", "change_mode", "data_enum", "require_supported_values_list", "version"}},
+ {VehicleProperty::CROSS_TRAFFIC_MONITORING_ENABLED, {"access", "change_mode", "version"}},
+ {VehicleProperty::CROSS_TRAFFIC_MONITORING_WARNING_STATE, {"access", "change_mode", "data_enum", "require_supported_values_list", "version"}},
+ {VehicleProperty::LOW_SPEED_AUTOMATIC_EMERGENCY_BRAKING_ENABLED, {"access", "change_mode", "version"}},
+ {VehicleProperty::LOW_SPEED_AUTOMATIC_EMERGENCY_BRAKING_STATE, {"access", "change_mode", "data_enum", "require_supported_values_list", "version"}},
};
-
-} // namespace vehicle
-} // namespace automotive
-} // namespace hardware
-} // namespace android
-} // aidl
+} // aidl::android::hardware::automotive::vehicle
diff --git a/automotive/vehicle/aidl/generated_lib/4/cpp/ChangeModeForVehicleProperty.h b/automotive/vehicle/aidl/generated_lib/4/cpp/ChangeModeForVehicleProperty.h
index 3775f18..b353ab9 100644
--- a/automotive/vehicle/aidl/generated_lib/4/cpp/ChangeModeForVehicleProperty.h
+++ b/automotive/vehicle/aidl/generated_lib/4/cpp/ChangeModeForVehicleProperty.h
@@ -29,12 +29,7 @@
#include <unordered_map>
-namespace aidl {
-namespace android {
-namespace hardware {
-namespace automotive {
-namespace vehicle {
-
+namespace aidl::android::hardware::automotive::vehicle {
std::unordered_map<VehicleProperty, VehiclePropertyChangeMode> ChangeModeForVehicleProperty = {
{VehicleProperty::INFO_VIN, VehiclePropertyChangeMode::STATIC},
{VehicleProperty::INFO_MAKE, VehiclePropertyChangeMode::STATIC},
@@ -317,9 +312,4 @@
{VehicleProperty::LOW_SPEED_AUTOMATIC_EMERGENCY_BRAKING_ENABLED, VehiclePropertyChangeMode::ON_CHANGE},
{VehicleProperty::LOW_SPEED_AUTOMATIC_EMERGENCY_BRAKING_STATE, VehiclePropertyChangeMode::ON_CHANGE},
};
-
-} // namespace vehicle
-} // namespace automotive
-} // namespace hardware
-} // namespace android
-} // aidl
+} // aidl::android::hardware::automotive::vehicle
diff --git a/automotive/vehicle/aidl/generated_lib/4/cpp/VersionForVehicleProperty.h b/automotive/vehicle/aidl/generated_lib/4/cpp/VersionForVehicleProperty.h
index 0a28b68..5f6e047 100644
--- a/automotive/vehicle/aidl/generated_lib/4/cpp/VersionForVehicleProperty.h
+++ b/automotive/vehicle/aidl/generated_lib/4/cpp/VersionForVehicleProperty.h
@@ -28,12 +28,7 @@
#include <unordered_map>
-namespace aidl {
-namespace android {
-namespace hardware {
-namespace automotive {
-namespace vehicle {
-
+namespace aidl::android::hardware::automotive::vehicle {
std::unordered_map<VehicleProperty, int32_t> VersionForVehicleProperty = {
{VehicleProperty::INFO_VIN, 2},
{VehicleProperty::INFO_MAKE, 2},
@@ -316,9 +311,4 @@
{VehicleProperty::LOW_SPEED_AUTOMATIC_EMERGENCY_BRAKING_ENABLED, 3},
{VehicleProperty::LOW_SPEED_AUTOMATIC_EMERGENCY_BRAKING_STATE, 3},
};
-
-} // namespace vehicle
-} // namespace automotive
-} // namespace hardware
-} // namespace android
-} // aidl
+} // aidl::android::hardware::automotive::vehicle
diff --git a/automotive/vehicle/aidl/generated_lib/4/java/AnnotationsForVehicleProperty.java b/automotive/vehicle/aidl/generated_lib/4/java/AnnotationsForVehicleProperty.java
index 9ef5f04..1d79180 100644
--- a/automotive/vehicle/aidl/generated_lib/4/java/AnnotationsForVehicleProperty.java
+++ b/automotive/vehicle/aidl/generated_lib/4/java/AnnotationsForVehicleProperty.java
@@ -30,286 +30,286 @@
public final class AnnotationsForVehicleProperty {
public static final Map<Integer, Set<String>> values = Map.ofEntries(
- Map.entry(VehicleProperty.INFO_VIN, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.INFO_MAKE, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.INFO_MODEL, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.INFO_MODEL_YEAR, Set.of("change_mode", "access", "version", "unit")),
- Map.entry(VehicleProperty.INFO_FUEL_CAPACITY, Set.of("change_mode", "access", "version", "unit")),
- Map.entry(VehicleProperty.INFO_FUEL_TYPE, Set.of("change_mode", "access", "version", "data_enum")),
- Map.entry(VehicleProperty.INFO_EV_BATTERY_CAPACITY, Set.of("change_mode", "access", "version", "unit")),
- Map.entry(VehicleProperty.INFO_EV_CONNECTOR_TYPE, Set.of("change_mode", "access", "version", "data_enum")),
- Map.entry(VehicleProperty.INFO_FUEL_DOOR_LOCATION, Set.of("change_mode", "access", "version", "data_enum")),
- Map.entry(VehicleProperty.INFO_EV_PORT_LOCATION, Set.of("change_mode", "access", "version", "data_enum")),
- Map.entry(VehicleProperty.INFO_DRIVER_SEAT, Set.of("change_mode", "access", "version", "data_enum")),
- Map.entry(VehicleProperty.INFO_EXTERIOR_DIMENSIONS, Set.of("change_mode", "access", "version", "unit")),
- Map.entry(VehicleProperty.INFO_MULTI_EV_PORT_LOCATIONS, Set.of("change_mode", "access", "version", "data_enum")),
- Map.entry(VehicleProperty.INFO_MODEL_TRIM, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.INFO_VEHICLE_SIZE_CLASS, Set.of("change_mode", "access", "version", "data_enum")),
- Map.entry(VehicleProperty.PERF_ODOMETER, Set.of("change_mode", "access", "version", "unit")),
- Map.entry(VehicleProperty.PERF_VEHICLE_SPEED, Set.of("change_mode", "access", "version", "unit")),
- Map.entry(VehicleProperty.PERF_VEHICLE_SPEED_DISPLAY, Set.of("change_mode", "access", "version", "unit")),
- Map.entry(VehicleProperty.PERF_STEERING_ANGLE, Set.of("change_mode", "access", "version", "unit")),
- Map.entry(VehicleProperty.PERF_REAR_STEERING_ANGLE, Set.of("change_mode", "access", "version", "unit")),
- Map.entry(VehicleProperty.INSTANTANEOUS_FUEL_ECONOMY, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.INSTANTANEOUS_EV_EFFICIENCY, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.ENGINE_COOLANT_TEMP, Set.of("change_mode", "access", "version", "unit")),
- Map.entry(VehicleProperty.ENGINE_OIL_LEVEL, Set.of("change_mode", "access", "require_supported_values_list", "version", "data_enum")),
- Map.entry(VehicleProperty.ENGINE_OIL_TEMP, Set.of("change_mode", "access", "version", "unit")),
- Map.entry(VehicleProperty.ENGINE_RPM, Set.of("change_mode", "access", "version", "unit")),
- Map.entry(VehicleProperty.WHEEL_TICK, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.FUEL_LEVEL, Set.of("change_mode", "access", "version", "unit")),
- Map.entry(VehicleProperty.FUEL_DOOR_OPEN, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.EV_BATTERY_LEVEL, Set.of("change_mode", "access", "version", "unit")),
- Map.entry(VehicleProperty.EV_CURRENT_BATTERY_CAPACITY, Set.of("change_mode", "access", "version", "unit")),
- Map.entry(VehicleProperty.EV_CHARGE_PORT_OPEN, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.EV_CHARGE_PORT_CONNECTED, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.EV_BATTERY_INSTANTANEOUS_CHARGE_RATE, Set.of("change_mode", "access", "version", "unit")),
- Map.entry(VehicleProperty.RANGE_REMAINING, Set.of("change_mode", "access", "version", "unit")),
- Map.entry(VehicleProperty.EV_BATTERY_AVERAGE_TEMPERATURE, Set.of("change_mode", "access", "version", "unit")),
- Map.entry(VehicleProperty.TIRE_PRESSURE, Set.of("change_mode", "unit", "require_min_max_supported_value", "access", "version")),
- Map.entry(VehicleProperty.CRITICALLY_LOW_TIRE_PRESSURE, Set.of("change_mode", "access", "version", "unit")),
- Map.entry(VehicleProperty.ACCELERATOR_PEDAL_COMPRESSION_PERCENTAGE, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.BRAKE_PEDAL_COMPRESSION_PERCENTAGE, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.BRAKE_PAD_WEAR_PERCENTAGE, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.BRAKE_FLUID_LEVEL_LOW, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.VEHICLE_PASSIVE_SUSPENSION_HEIGHT, Set.of("change_mode", "require_min_max_supported_value", "access", "version")),
- Map.entry(VehicleProperty.ENGINE_IDLE_AUTO_STOP_ENABLED, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.IMPACT_DETECTED, Set.of("change_mode", "access", "require_supported_values_list", "version", "data_enum", "data_enum_bit_flags")),
- Map.entry(VehicleProperty.VEHICLE_HORN_ENGAGED, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.GEAR_SELECTION, Set.of("change_mode", "legacy_supported_values_in_config", "access", "require_supported_values_list", "version", "data_enum")),
- Map.entry(VehicleProperty.CURRENT_GEAR, Set.of("change_mode", "legacy_supported_values_in_config", "access", "require_supported_values_list", "version", "data_enum")),
- Map.entry(VehicleProperty.PARKING_BRAKE_ON, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.PARKING_BRAKE_AUTO_APPLY, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.EV_BRAKE_REGENERATION_LEVEL, Set.of("change_mode", "require_min_max_supported_value", "access", "version")),
- Map.entry(VehicleProperty.FUEL_LEVEL_LOW, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.NIGHT_MODE, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.TURN_SIGNAL_STATE, Set.of("change_mode", "access", "version", "data_enum")),
- Map.entry(VehicleProperty.IGNITION_STATE, Set.of("change_mode", "access", "require_supported_values_list", "version", "data_enum")),
- Map.entry(VehicleProperty.ABS_ACTIVE, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.TRACTION_CONTROL_ACTIVE, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.EV_STOPPING_MODE, Set.of("change_mode", "access", "require_supported_values_list", "version", "data_enum")),
- Map.entry(VehicleProperty.ELECTRONIC_STABILITY_CONTROL_ENABLED, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.ELECTRONIC_STABILITY_CONTROL_STATE, Set.of("change_mode", "access", "require_supported_values_list", "version", "data_enum")),
- Map.entry(VehicleProperty.TURN_SIGNAL_LIGHT_STATE, Set.of("change_mode", "access", "require_supported_values_list", "version", "data_enum", "data_enum_bit_flags")),
- Map.entry(VehicleProperty.TURN_SIGNAL_SWITCH, Set.of("change_mode", "access", "require_supported_values_list", "version", "data_enum")),
- Map.entry(VehicleProperty.HVAC_FAN_SPEED, Set.of("change_mode", "require_min_max_supported_value", "access", "version")),
- Map.entry(VehicleProperty.HVAC_FAN_DIRECTION, Set.of("change_mode", "access", "version", "data_enum")),
- Map.entry(VehicleProperty.HVAC_TEMPERATURE_CURRENT, Set.of("change_mode", "access", "version", "unit")),
- Map.entry(VehicleProperty.HVAC_TEMPERATURE_SET, Set.of("change_mode", "unit", "require_min_max_supported_value", "access", "version")),
- Map.entry(VehicleProperty.HVAC_DEFROSTER, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.HVAC_AC_ON, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.HVAC_MAX_AC_ON, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.HVAC_MAX_DEFROST_ON, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.HVAC_RECIRC_ON, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.HVAC_DUAL_ON, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.HVAC_AUTO_ON, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.HVAC_SEAT_TEMPERATURE, Set.of("change_mode", "require_min_max_supported_value", "access", "version")),
- Map.entry(VehicleProperty.HVAC_SIDE_MIRROR_HEAT, Set.of("change_mode", "require_min_max_supported_value", "access", "version")),
- Map.entry(VehicleProperty.HVAC_STEERING_WHEEL_HEAT, Set.of("change_mode", "require_min_max_supported_value", "access", "version")),
- Map.entry(VehicleProperty.HVAC_TEMPERATURE_DISPLAY_UNITS, Set.of("change_mode", "legacy_supported_values_in_config", "access", "require_supported_values_list", "version", "data_enum")),
- Map.entry(VehicleProperty.HVAC_ACTUAL_FAN_SPEED_RPM, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.HVAC_POWER_ON, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.HVAC_FAN_DIRECTION_AVAILABLE, Set.of("change_mode", "access", "version", "data_enum", "data_enum_bit_flags")),
- Map.entry(VehicleProperty.HVAC_AUTO_RECIRC_ON, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.HVAC_SEAT_VENTILATION, Set.of("change_mode", "require_min_max_supported_value", "access", "version")),
- Map.entry(VehicleProperty.HVAC_ELECTRIC_DEFROSTER_ON, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.HVAC_TEMPERATURE_VALUE_SUGGESTION, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.DISTANCE_DISPLAY_UNITS, Set.of("change_mode", "legacy_supported_values_in_config", "access", "require_supported_values_list", "version", "data_enum")),
- Map.entry(VehicleProperty.FUEL_VOLUME_DISPLAY_UNITS, Set.of("change_mode", "legacy_supported_values_in_config", "access", "require_supported_values_list", "version", "data_enum")),
- Map.entry(VehicleProperty.TIRE_PRESSURE_DISPLAY_UNITS, Set.of("change_mode", "legacy_supported_values_in_config", "access", "require_supported_values_list", "version", "data_enum")),
- Map.entry(VehicleProperty.EV_BATTERY_DISPLAY_UNITS, Set.of("change_mode", "legacy_supported_values_in_config", "access", "require_supported_values_list", "version", "data_enum")),
- Map.entry(VehicleProperty.FUEL_CONSUMPTION_UNITS_DISTANCE_OVER_VOLUME, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.VEHICLE_SPEED_DISPLAY_UNITS, Set.of("change_mode", "legacy_supported_values_in_config", "access", "require_supported_values_list", "version", "data_enum")),
- Map.entry(VehicleProperty.EXTERNAL_CAR_TIME, Set.of("change_mode", "access", "version", "unit")),
- Map.entry(VehicleProperty.ANDROID_EPOCH_TIME, Set.of("change_mode", "access", "version", "unit")),
- Map.entry(VehicleProperty.STORAGE_ENCRYPTION_BINDING_SEED, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.ENV_OUTSIDE_TEMPERATURE, Set.of("change_mode", "access", "version", "unit")),
- Map.entry(VehicleProperty.AP_POWER_STATE_REQ, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.AP_POWER_STATE_REPORT, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.AP_POWER_BOOTUP_REASON, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.DISPLAY_BRIGHTNESS, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.PER_DISPLAY_BRIGHTNESS, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.VALET_MODE_ENABLED, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.HEAD_UP_DISPLAY_ENABLED, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.HW_KEY_INPUT, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.HW_KEY_INPUT_V2, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.HW_MOTION_INPUT, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.HW_ROTARY_INPUT, Set.of("change_mode", "access", "version", "data_enum")),
- Map.entry(VehicleProperty.HW_CUSTOM_INPUT, Set.of("change_mode", "access", "version", "data_enum")),
- Map.entry(VehicleProperty.DOOR_POS, Set.of("change_mode", "require_min_max_supported_value", "access", "version")),
- Map.entry(VehicleProperty.DOOR_MOVE, Set.of("change_mode", "require_min_max_supported_value", "access", "version")),
- Map.entry(VehicleProperty.DOOR_LOCK, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.DOOR_CHILD_LOCK_ENABLED, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.MIRROR_Z_POS, Set.of("change_mode", "require_min_max_supported_value", "access", "version")),
- Map.entry(VehicleProperty.MIRROR_Z_MOVE, Set.of("change_mode", "require_min_max_supported_value", "access", "version")),
- Map.entry(VehicleProperty.MIRROR_Y_POS, Set.of("change_mode", "require_min_max_supported_value", "access", "version")),
- Map.entry(VehicleProperty.MIRROR_Y_MOVE, Set.of("change_mode", "require_min_max_supported_value", "access", "version")),
- Map.entry(VehicleProperty.MIRROR_LOCK, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.MIRROR_FOLD, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.MIRROR_AUTO_FOLD_ENABLED, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.MIRROR_AUTO_TILT_ENABLED, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.SEAT_MEMORY_SELECT, Set.of("change_mode", "require_min_max_supported_value", "access", "version")),
- Map.entry(VehicleProperty.SEAT_MEMORY_SET, Set.of("change_mode", "require_min_max_supported_value", "access", "version")),
- Map.entry(VehicleProperty.SEAT_BELT_BUCKLED, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.SEAT_BELT_HEIGHT_POS, Set.of("change_mode", "require_min_max_supported_value", "access", "version")),
- Map.entry(VehicleProperty.SEAT_BELT_HEIGHT_MOVE, Set.of("change_mode", "require_min_max_supported_value", "access", "version")),
- Map.entry(VehicleProperty.SEAT_FORE_AFT_POS, Set.of("change_mode", "require_min_max_supported_value", "access", "version")),
- Map.entry(VehicleProperty.SEAT_FORE_AFT_MOVE, Set.of("change_mode", "require_min_max_supported_value", "access", "version")),
- Map.entry(VehicleProperty.SEAT_BACKREST_ANGLE_1_POS, Set.of("change_mode", "require_min_max_supported_value", "access", "version")),
- Map.entry(VehicleProperty.SEAT_BACKREST_ANGLE_1_MOVE, Set.of("change_mode", "require_min_max_supported_value", "access", "version")),
- Map.entry(VehicleProperty.SEAT_BACKREST_ANGLE_2_POS, Set.of("change_mode", "require_min_max_supported_value", "access", "version")),
- Map.entry(VehicleProperty.SEAT_BACKREST_ANGLE_2_MOVE, Set.of("change_mode", "require_min_max_supported_value", "access", "version")),
- Map.entry(VehicleProperty.SEAT_HEIGHT_POS, Set.of("change_mode", "require_min_max_supported_value", "access", "version")),
- Map.entry(VehicleProperty.SEAT_HEIGHT_MOVE, Set.of("change_mode", "require_min_max_supported_value", "access", "version")),
- Map.entry(VehicleProperty.SEAT_DEPTH_POS, Set.of("change_mode", "require_min_max_supported_value", "access", "version")),
- Map.entry(VehicleProperty.SEAT_DEPTH_MOVE, Set.of("change_mode", "require_min_max_supported_value", "access", "version")),
- Map.entry(VehicleProperty.SEAT_TILT_POS, Set.of("change_mode", "require_min_max_supported_value", "access", "version")),
- Map.entry(VehicleProperty.SEAT_TILT_MOVE, Set.of("change_mode", "require_min_max_supported_value", "access", "version")),
- Map.entry(VehicleProperty.SEAT_LUMBAR_FORE_AFT_POS, Set.of("change_mode", "require_min_max_supported_value", "access", "version")),
- Map.entry(VehicleProperty.SEAT_LUMBAR_FORE_AFT_MOVE, Set.of("change_mode", "require_min_max_supported_value", "access", "version")),
- Map.entry(VehicleProperty.SEAT_LUMBAR_SIDE_SUPPORT_POS, Set.of("change_mode", "require_min_max_supported_value", "access", "version")),
- Map.entry(VehicleProperty.SEAT_LUMBAR_SIDE_SUPPORT_MOVE, Set.of("change_mode", "require_min_max_supported_value", "access", "version")),
- Map.entry(VehicleProperty.SEAT_HEADREST_HEIGHT_POS, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.SEAT_HEADREST_HEIGHT_POS_V2, Set.of("change_mode", "require_min_max_supported_value", "access", "version")),
- Map.entry(VehicleProperty.SEAT_HEADREST_HEIGHT_MOVE, Set.of("change_mode", "require_min_max_supported_value", "access", "version")),
- Map.entry(VehicleProperty.SEAT_HEADREST_ANGLE_POS, Set.of("change_mode", "require_min_max_supported_value", "access", "version")),
- Map.entry(VehicleProperty.SEAT_HEADREST_ANGLE_MOVE, Set.of("change_mode", "require_min_max_supported_value", "access", "version")),
- Map.entry(VehicleProperty.SEAT_HEADREST_FORE_AFT_POS, Set.of("change_mode", "require_min_max_supported_value", "access", "version")),
- Map.entry(VehicleProperty.SEAT_HEADREST_FORE_AFT_MOVE, Set.of("change_mode", "require_min_max_supported_value", "access", "version")),
- Map.entry(VehicleProperty.SEAT_FOOTWELL_LIGHTS_STATE, Set.of("change_mode", "access", "require_supported_values_list", "version", "data_enum")),
- Map.entry(VehicleProperty.SEAT_FOOTWELL_LIGHTS_SWITCH, Set.of("change_mode", "access", "require_supported_values_list", "version", "data_enum")),
- Map.entry(VehicleProperty.SEAT_EASY_ACCESS_ENABLED, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.SEAT_AIRBAG_ENABLED, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.SEAT_AIRBAGS_DEPLOYED, Set.of("change_mode", "access", "require_supported_values_list", "version", "data_enum")),
- Map.entry(VehicleProperty.SEAT_CUSHION_SIDE_SUPPORT_POS, Set.of("change_mode", "require_min_max_supported_value", "access", "version")),
- Map.entry(VehicleProperty.SEAT_CUSHION_SIDE_SUPPORT_MOVE, Set.of("change_mode", "require_min_max_supported_value", "access", "version")),
- Map.entry(VehicleProperty.SEAT_LUMBAR_VERTICAL_POS, Set.of("change_mode", "require_min_max_supported_value", "access", "version")),
- Map.entry(VehicleProperty.SEAT_LUMBAR_VERTICAL_MOVE, Set.of("change_mode", "require_min_max_supported_value", "access", "version")),
- Map.entry(VehicleProperty.SEAT_WALK_IN_POS, Set.of("change_mode", "require_min_max_supported_value", "access", "version")),
- Map.entry(VehicleProperty.SEAT_BELT_PRETENSIONER_DEPLOYED, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.SEAT_OCCUPANCY, Set.of("change_mode", "access", "require_supported_values_list", "version", "data_enum")),
- Map.entry(VehicleProperty.WINDOW_POS, Set.of("change_mode", "require_min_max_supported_value", "access", "version")),
- Map.entry(VehicleProperty.WINDOW_MOVE, Set.of("change_mode", "require_min_max_supported_value", "access", "version")),
- Map.entry(VehicleProperty.WINDOW_LOCK, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.WINDSHIELD_WIPERS_PERIOD, Set.of("change_mode", "unit", "require_min_max_supported_value", "access", "version")),
- Map.entry(VehicleProperty.WINDSHIELD_WIPERS_STATE, Set.of("change_mode", "access", "require_supported_values_list", "version", "data_enum")),
- Map.entry(VehicleProperty.WINDSHIELD_WIPERS_SWITCH, Set.of("change_mode", "access", "require_supported_values_list", "version", "data_enum")),
- Map.entry(VehicleProperty.STEERING_WHEEL_DEPTH_POS, Set.of("change_mode", "require_min_max_supported_value", "access", "version")),
- Map.entry(VehicleProperty.STEERING_WHEEL_DEPTH_MOVE, Set.of("change_mode", "require_min_max_supported_value", "access", "version")),
- Map.entry(VehicleProperty.STEERING_WHEEL_HEIGHT_POS, Set.of("change_mode", "require_min_max_supported_value", "access", "version")),
- Map.entry(VehicleProperty.STEERING_WHEEL_HEIGHT_MOVE, Set.of("change_mode", "require_min_max_supported_value", "access", "version")),
- Map.entry(VehicleProperty.STEERING_WHEEL_THEFT_LOCK_ENABLED, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.STEERING_WHEEL_LOCKED, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.STEERING_WHEEL_EASY_ACCESS_ENABLED, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.GLOVE_BOX_DOOR_POS, Set.of("change_mode", "require_min_max_supported_value", "access", "version")),
- Map.entry(VehicleProperty.GLOVE_BOX_LOCKED, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.VEHICLE_MAP_SERVICE, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.LOCATION_CHARACTERIZATION, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.ULTRASONICS_SENSOR_POSITION, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.ULTRASONICS_SENSOR_ORIENTATION, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.ULTRASONICS_SENSOR_FIELD_OF_VIEW, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.ULTRASONICS_SENSOR_DETECTION_RANGE, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.ULTRASONICS_SENSOR_SUPPORTED_RANGES, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.ULTRASONICS_SENSOR_MEASURED_DISTANCE, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.OBD2_LIVE_FRAME, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.OBD2_FREEZE_FRAME, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.OBD2_FREEZE_FRAME_INFO, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.OBD2_FREEZE_FRAME_CLEAR, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.HEADLIGHTS_STATE, Set.of("change_mode", "access", "require_supported_values_list", "version", "data_enum")),
- Map.entry(VehicleProperty.HIGH_BEAM_LIGHTS_STATE, Set.of("change_mode", "access", "require_supported_values_list", "version", "data_enum")),
- Map.entry(VehicleProperty.FOG_LIGHTS_STATE, Set.of("change_mode", "access", "require_supported_values_list", "version", "data_enum")),
- Map.entry(VehicleProperty.HAZARD_LIGHTS_STATE, Set.of("change_mode", "access", "require_supported_values_list", "version", "data_enum")),
- Map.entry(VehicleProperty.HEADLIGHTS_SWITCH, Set.of("change_mode", "access", "require_supported_values_list", "version", "data_enum")),
- Map.entry(VehicleProperty.HIGH_BEAM_LIGHTS_SWITCH, Set.of("change_mode", "access", "require_supported_values_list", "version", "data_enum")),
- Map.entry(VehicleProperty.FOG_LIGHTS_SWITCH, Set.of("change_mode", "access", "require_supported_values_list", "version", "data_enum")),
- Map.entry(VehicleProperty.HAZARD_LIGHTS_SWITCH, Set.of("change_mode", "access", "require_supported_values_list", "version", "data_enum")),
- Map.entry(VehicleProperty.CABIN_LIGHTS_STATE, Set.of("change_mode", "access", "require_supported_values_list", "version", "data_enum")),
- Map.entry(VehicleProperty.CABIN_LIGHTS_SWITCH, Set.of("change_mode", "access", "require_supported_values_list", "version", "data_enum")),
- Map.entry(VehicleProperty.READING_LIGHTS_STATE, Set.of("change_mode", "access", "require_supported_values_list", "version", "data_enum")),
- Map.entry(VehicleProperty.READING_LIGHTS_SWITCH, Set.of("change_mode", "access", "require_supported_values_list", "version", "data_enum")),
- Map.entry(VehicleProperty.STEERING_WHEEL_LIGHTS_STATE, Set.of("change_mode", "access", "require_supported_values_list", "version", "data_enum")),
- Map.entry(VehicleProperty.STEERING_WHEEL_LIGHTS_SWITCH, Set.of("change_mode", "access", "require_supported_values_list", "version", "data_enum")),
- Map.entry(VehicleProperty.SUPPORT_CUSTOMIZE_VENDOR_PERMISSION, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.DISABLED_OPTIONAL_FEATURES, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.INITIAL_USER_INFO, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.SWITCH_USER, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.CREATE_USER, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.REMOVE_USER, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.USER_IDENTIFICATION_ASSOCIATION, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.EVS_SERVICE_REQUEST, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.POWER_POLICY_REQ, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.POWER_POLICY_GROUP_REQ, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.CURRENT_POWER_POLICY, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.WATCHDOG_ALIVE, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.WATCHDOG_TERMINATED_PROCESS, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.VHAL_HEARTBEAT, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.CLUSTER_SWITCH_UI, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.CLUSTER_DISPLAY_STATE, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.CLUSTER_REPORT_STATE, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.CLUSTER_REQUEST_DISPLAY, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.CLUSTER_NAVIGATION_STATE, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.ELECTRONIC_TOLL_COLLECTION_CARD_TYPE, Set.of("change_mode", "access", "require_supported_values_list", "version", "data_enum")),
- Map.entry(VehicleProperty.ELECTRONIC_TOLL_COLLECTION_CARD_STATUS, Set.of("change_mode", "access", "require_supported_values_list", "version", "data_enum")),
- Map.entry(VehicleProperty.FRONT_FOG_LIGHTS_STATE, Set.of("change_mode", "access", "require_supported_values_list", "version", "data_enum")),
- Map.entry(VehicleProperty.FRONT_FOG_LIGHTS_SWITCH, Set.of("change_mode", "access", "require_supported_values_list", "version", "data_enum")),
- Map.entry(VehicleProperty.REAR_FOG_LIGHTS_STATE, Set.of("change_mode", "access", "require_supported_values_list", "version", "data_enum")),
- Map.entry(VehicleProperty.REAR_FOG_LIGHTS_SWITCH, Set.of("change_mode", "access", "require_supported_values_list", "version", "data_enum")),
- Map.entry(VehicleProperty.EV_CHARGE_CURRENT_DRAW_LIMIT, Set.of("change_mode", "access", "version", "unit")),
- Map.entry(VehicleProperty.EV_CHARGE_PERCENT_LIMIT, Set.of("change_mode", "legacy_supported_values_in_config", "access", "require_supported_values_list", "version")),
- Map.entry(VehicleProperty.EV_CHARGE_STATE, Set.of("change_mode", "access", "require_supported_values_list", "version", "data_enum")),
- Map.entry(VehicleProperty.EV_CHARGE_SWITCH, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.EV_CHARGE_TIME_REMAINING, Set.of("change_mode", "access", "version", "unit")),
- Map.entry(VehicleProperty.EV_REGENERATIVE_BRAKING_STATE, Set.of("change_mode", "access", "require_supported_values_list", "version", "data_enum")),
- Map.entry(VehicleProperty.TRAILER_PRESENT, Set.of("change_mode", "access", "require_supported_values_list", "version", "data_enum")),
- Map.entry(VehicleProperty.VEHICLE_CURB_WEIGHT, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.GENERAL_SAFETY_REGULATION_COMPLIANCE_REQUIREMENT, Set.of("change_mode", "access", "version", "data_enum")),
- Map.entry(VehicleProperty.SUPPORTED_PROPERTY_IDS, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.SHUTDOWN_REQUEST, Set.of("change_mode", "access", "version", "data_enum")),
- Map.entry(VehicleProperty.VEHICLE_IN_USE, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.CLUSTER_HEARTBEAT, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.VEHICLE_DRIVING_AUTOMATION_CURRENT_LEVEL, Set.of("change_mode", "access", "require_supported_values_list", "version", "data_enum")),
- Map.entry(VehicleProperty.VEHICLE_DRIVING_AUTOMATION_TARGET_LEVEL, Set.of("change_mode", "access", "require_supported_values_list", "version", "data_enum")),
- Map.entry(VehicleProperty.CAMERA_SERVICE_CURRENT_STATE, Set.of("change_mode", "access", "version", "data_enum")),
- Map.entry(VehicleProperty.PER_DISPLAY_MAX_BRIGHTNESS, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.AUTOMATIC_EMERGENCY_BRAKING_ENABLED, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.AUTOMATIC_EMERGENCY_BRAKING_STATE, Set.of("change_mode", "access", "require_supported_values_list", "version", "data_enum")),
- Map.entry(VehicleProperty.FORWARD_COLLISION_WARNING_ENABLED, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.FORWARD_COLLISION_WARNING_STATE, Set.of("change_mode", "access", "require_supported_values_list", "version", "data_enum")),
- Map.entry(VehicleProperty.BLIND_SPOT_WARNING_ENABLED, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.BLIND_SPOT_WARNING_STATE, Set.of("change_mode", "access", "require_supported_values_list", "version", "data_enum")),
- Map.entry(VehicleProperty.LANE_DEPARTURE_WARNING_ENABLED, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.LANE_DEPARTURE_WARNING_STATE, Set.of("change_mode", "access", "require_supported_values_list", "version", "data_enum")),
- Map.entry(VehicleProperty.LANE_KEEP_ASSIST_ENABLED, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.LANE_KEEP_ASSIST_STATE, Set.of("change_mode", "access", "require_supported_values_list", "version", "data_enum")),
- Map.entry(VehicleProperty.LANE_CENTERING_ASSIST_ENABLED, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.LANE_CENTERING_ASSIST_COMMAND, Set.of("change_mode", "access", "require_supported_values_list", "version", "data_enum")),
- Map.entry(VehicleProperty.LANE_CENTERING_ASSIST_STATE, Set.of("change_mode", "access", "require_supported_values_list", "version", "data_enum")),
- Map.entry(VehicleProperty.EMERGENCY_LANE_KEEP_ASSIST_ENABLED, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.EMERGENCY_LANE_KEEP_ASSIST_STATE, Set.of("change_mode", "access", "require_supported_values_list", "version", "data_enum")),
- Map.entry(VehicleProperty.CRUISE_CONTROL_ENABLED, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.CRUISE_CONTROL_TYPE, Set.of("change_mode", "access", "require_supported_values_list", "version", "data_enum")),
- Map.entry(VehicleProperty.CRUISE_CONTROL_STATE, Set.of("change_mode", "access", "require_supported_values_list", "version", "data_enum")),
- Map.entry(VehicleProperty.CRUISE_CONTROL_COMMAND, Set.of("change_mode", "access", "require_supported_values_list", "version", "data_enum")),
- Map.entry(VehicleProperty.CRUISE_CONTROL_TARGET_SPEED, Set.of("change_mode", "unit", "require_min_max_supported_value", "access", "version")),
- Map.entry(VehicleProperty.ADAPTIVE_CRUISE_CONTROL_TARGET_TIME_GAP, Set.of("change_mode", "unit", "legacy_supported_values_in_config", "access", "require_supported_values_list", "version")),
- Map.entry(VehicleProperty.ADAPTIVE_CRUISE_CONTROL_LEAD_VEHICLE_MEASURED_DISTANCE, Set.of("change_mode", "unit", "require_min_max_supported_value", "access", "version")),
- Map.entry(VehicleProperty.HANDS_ON_DETECTION_ENABLED, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.HANDS_ON_DETECTION_DRIVER_STATE, Set.of("change_mode", "access", "require_supported_values_list", "version", "data_enum")),
- Map.entry(VehicleProperty.HANDS_ON_DETECTION_WARNING, Set.of("change_mode", "access", "require_supported_values_list", "version", "data_enum")),
- Map.entry(VehicleProperty.DRIVER_DROWSINESS_ATTENTION_SYSTEM_ENABLED, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.DRIVER_DROWSINESS_ATTENTION_STATE, Set.of("change_mode", "access", "require_supported_values_list", "version", "data_enum")),
- Map.entry(VehicleProperty.DRIVER_DROWSINESS_ATTENTION_WARNING_ENABLED, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.DRIVER_DROWSINESS_ATTENTION_WARNING, Set.of("change_mode", "access", "require_supported_values_list", "version", "data_enum")),
- Map.entry(VehicleProperty.DRIVER_DISTRACTION_SYSTEM_ENABLED, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.DRIVER_DISTRACTION_STATE, Set.of("change_mode", "access", "require_supported_values_list", "version", "data_enum")),
- Map.entry(VehicleProperty.DRIVER_DISTRACTION_WARNING_ENABLED, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.DRIVER_DISTRACTION_WARNING, Set.of("change_mode", "access", "require_supported_values_list", "version", "data_enum")),
- Map.entry(VehicleProperty.LOW_SPEED_COLLISION_WARNING_ENABLED, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.LOW_SPEED_COLLISION_WARNING_STATE, Set.of("change_mode", "access", "require_supported_values_list", "version", "data_enum")),
- Map.entry(VehicleProperty.CROSS_TRAFFIC_MONITORING_ENABLED, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.CROSS_TRAFFIC_MONITORING_WARNING_STATE, Set.of("change_mode", "access", "require_supported_values_list", "version", "data_enum")),
- Map.entry(VehicleProperty.LOW_SPEED_AUTOMATIC_EMERGENCY_BRAKING_ENABLED, Set.of("change_mode", "access", "version")),
- Map.entry(VehicleProperty.LOW_SPEED_AUTOMATIC_EMERGENCY_BRAKING_STATE, Set.of("change_mode", "access", "require_supported_values_list", "version", "data_enum"))
+ Map.entry(VehicleProperty.INFO_VIN, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.INFO_MAKE, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.INFO_MODEL, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.INFO_MODEL_YEAR, Set.of("access", "change_mode", "unit", "version")),
+ Map.entry(VehicleProperty.INFO_FUEL_CAPACITY, Set.of("access", "change_mode", "unit", "version")),
+ Map.entry(VehicleProperty.INFO_FUEL_TYPE, Set.of("access", "change_mode", "data_enum", "version")),
+ Map.entry(VehicleProperty.INFO_EV_BATTERY_CAPACITY, Set.of("access", "change_mode", "unit", "version")),
+ Map.entry(VehicleProperty.INFO_EV_CONNECTOR_TYPE, Set.of("access", "change_mode", "data_enum", "version")),
+ Map.entry(VehicleProperty.INFO_FUEL_DOOR_LOCATION, Set.of("access", "change_mode", "data_enum", "version")),
+ Map.entry(VehicleProperty.INFO_EV_PORT_LOCATION, Set.of("access", "change_mode", "data_enum", "version")),
+ Map.entry(VehicleProperty.INFO_DRIVER_SEAT, Set.of("access", "change_mode", "data_enum", "version")),
+ Map.entry(VehicleProperty.INFO_EXTERIOR_DIMENSIONS, Set.of("access", "change_mode", "unit", "version")),
+ Map.entry(VehicleProperty.INFO_MULTI_EV_PORT_LOCATIONS, Set.of("access", "change_mode", "data_enum", "version")),
+ Map.entry(VehicleProperty.INFO_MODEL_TRIM, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.INFO_VEHICLE_SIZE_CLASS, Set.of("access", "change_mode", "data_enum", "version")),
+ Map.entry(VehicleProperty.PERF_ODOMETER, Set.of("access", "change_mode", "unit", "version")),
+ Map.entry(VehicleProperty.PERF_VEHICLE_SPEED, Set.of("access", "change_mode", "unit", "version")),
+ Map.entry(VehicleProperty.PERF_VEHICLE_SPEED_DISPLAY, Set.of("access", "change_mode", "unit", "version")),
+ Map.entry(VehicleProperty.PERF_STEERING_ANGLE, Set.of("access", "change_mode", "unit", "version")),
+ Map.entry(VehicleProperty.PERF_REAR_STEERING_ANGLE, Set.of("access", "change_mode", "unit", "version")),
+ Map.entry(VehicleProperty.INSTANTANEOUS_FUEL_ECONOMY, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.INSTANTANEOUS_EV_EFFICIENCY, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.ENGINE_COOLANT_TEMP, Set.of("access", "change_mode", "unit", "version")),
+ Map.entry(VehicleProperty.ENGINE_OIL_LEVEL, Set.of("access", "change_mode", "data_enum", "require_supported_values_list", "version")),
+ Map.entry(VehicleProperty.ENGINE_OIL_TEMP, Set.of("access", "change_mode", "unit", "version")),
+ Map.entry(VehicleProperty.ENGINE_RPM, Set.of("access", "change_mode", "unit", "version")),
+ Map.entry(VehicleProperty.WHEEL_TICK, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.FUEL_LEVEL, Set.of("access", "change_mode", "unit", "version")),
+ Map.entry(VehicleProperty.FUEL_DOOR_OPEN, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.EV_BATTERY_LEVEL, Set.of("access", "change_mode", "unit", "version")),
+ Map.entry(VehicleProperty.EV_CURRENT_BATTERY_CAPACITY, Set.of("access", "change_mode", "unit", "version")),
+ Map.entry(VehicleProperty.EV_CHARGE_PORT_OPEN, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.EV_CHARGE_PORT_CONNECTED, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.EV_BATTERY_INSTANTANEOUS_CHARGE_RATE, Set.of("access", "change_mode", "unit", "version")),
+ Map.entry(VehicleProperty.RANGE_REMAINING, Set.of("access", "change_mode", "unit", "version")),
+ Map.entry(VehicleProperty.EV_BATTERY_AVERAGE_TEMPERATURE, Set.of("access", "change_mode", "unit", "version")),
+ Map.entry(VehicleProperty.TIRE_PRESSURE, Set.of("access", "change_mode", "require_min_max_supported_value", "unit", "version")),
+ Map.entry(VehicleProperty.CRITICALLY_LOW_TIRE_PRESSURE, Set.of("access", "change_mode", "unit", "version")),
+ Map.entry(VehicleProperty.ACCELERATOR_PEDAL_COMPRESSION_PERCENTAGE, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.BRAKE_PEDAL_COMPRESSION_PERCENTAGE, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.BRAKE_PAD_WEAR_PERCENTAGE, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.BRAKE_FLUID_LEVEL_LOW, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.VEHICLE_PASSIVE_SUSPENSION_HEIGHT, Set.of("access", "change_mode", "require_min_max_supported_value", "version")),
+ Map.entry(VehicleProperty.ENGINE_IDLE_AUTO_STOP_ENABLED, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.IMPACT_DETECTED, Set.of("access", "change_mode", "data_enum", "data_enum_bit_flags", "require_supported_values_list", "version")),
+ Map.entry(VehicleProperty.VEHICLE_HORN_ENGAGED, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.GEAR_SELECTION, Set.of("access", "change_mode", "data_enum", "legacy_supported_values_in_config", "require_supported_values_list", "version")),
+ Map.entry(VehicleProperty.CURRENT_GEAR, Set.of("access", "change_mode", "data_enum", "legacy_supported_values_in_config", "require_supported_values_list", "version")),
+ Map.entry(VehicleProperty.PARKING_BRAKE_ON, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.PARKING_BRAKE_AUTO_APPLY, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.EV_BRAKE_REGENERATION_LEVEL, Set.of("access", "change_mode", "require_min_max_supported_value", "version")),
+ Map.entry(VehicleProperty.FUEL_LEVEL_LOW, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.NIGHT_MODE, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.TURN_SIGNAL_STATE, Set.of("access", "change_mode", "data_enum", "version")),
+ Map.entry(VehicleProperty.IGNITION_STATE, Set.of("access", "change_mode", "data_enum", "require_supported_values_list", "version")),
+ Map.entry(VehicleProperty.ABS_ACTIVE, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.TRACTION_CONTROL_ACTIVE, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.EV_STOPPING_MODE, Set.of("access", "change_mode", "data_enum", "require_supported_values_list", "version")),
+ Map.entry(VehicleProperty.ELECTRONIC_STABILITY_CONTROL_ENABLED, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.ELECTRONIC_STABILITY_CONTROL_STATE, Set.of("access", "change_mode", "data_enum", "require_supported_values_list", "version")),
+ Map.entry(VehicleProperty.TURN_SIGNAL_LIGHT_STATE, Set.of("access", "change_mode", "data_enum", "data_enum_bit_flags", "require_supported_values_list", "version")),
+ Map.entry(VehicleProperty.TURN_SIGNAL_SWITCH, Set.of("access", "change_mode", "data_enum", "require_supported_values_list", "version")),
+ Map.entry(VehicleProperty.HVAC_FAN_SPEED, Set.of("access", "change_mode", "require_min_max_supported_value", "version")),
+ Map.entry(VehicleProperty.HVAC_FAN_DIRECTION, Set.of("access", "change_mode", "data_enum", "version")),
+ Map.entry(VehicleProperty.HVAC_TEMPERATURE_CURRENT, Set.of("access", "change_mode", "unit", "version")),
+ Map.entry(VehicleProperty.HVAC_TEMPERATURE_SET, Set.of("access", "change_mode", "require_min_max_supported_value", "unit", "version")),
+ Map.entry(VehicleProperty.HVAC_DEFROSTER, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.HVAC_AC_ON, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.HVAC_MAX_AC_ON, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.HVAC_MAX_DEFROST_ON, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.HVAC_RECIRC_ON, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.HVAC_DUAL_ON, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.HVAC_AUTO_ON, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.HVAC_SEAT_TEMPERATURE, Set.of("access", "change_mode", "require_min_max_supported_value", "version")),
+ Map.entry(VehicleProperty.HVAC_SIDE_MIRROR_HEAT, Set.of("access", "change_mode", "require_min_max_supported_value", "version")),
+ Map.entry(VehicleProperty.HVAC_STEERING_WHEEL_HEAT, Set.of("access", "change_mode", "require_min_max_supported_value", "version")),
+ Map.entry(VehicleProperty.HVAC_TEMPERATURE_DISPLAY_UNITS, Set.of("access", "change_mode", "data_enum", "legacy_supported_values_in_config", "require_supported_values_list", "version")),
+ Map.entry(VehicleProperty.HVAC_ACTUAL_FAN_SPEED_RPM, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.HVAC_POWER_ON, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.HVAC_FAN_DIRECTION_AVAILABLE, Set.of("access", "change_mode", "data_enum", "data_enum_bit_flags", "version")),
+ Map.entry(VehicleProperty.HVAC_AUTO_RECIRC_ON, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.HVAC_SEAT_VENTILATION, Set.of("access", "change_mode", "require_min_max_supported_value", "version")),
+ Map.entry(VehicleProperty.HVAC_ELECTRIC_DEFROSTER_ON, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.HVAC_TEMPERATURE_VALUE_SUGGESTION, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.DISTANCE_DISPLAY_UNITS, Set.of("access", "change_mode", "data_enum", "legacy_supported_values_in_config", "require_supported_values_list", "version")),
+ Map.entry(VehicleProperty.FUEL_VOLUME_DISPLAY_UNITS, Set.of("access", "change_mode", "data_enum", "legacy_supported_values_in_config", "require_supported_values_list", "version")),
+ Map.entry(VehicleProperty.TIRE_PRESSURE_DISPLAY_UNITS, Set.of("access", "change_mode", "data_enum", "legacy_supported_values_in_config", "require_supported_values_list", "version")),
+ Map.entry(VehicleProperty.EV_BATTERY_DISPLAY_UNITS, Set.of("access", "change_mode", "data_enum", "legacy_supported_values_in_config", "require_supported_values_list", "version")),
+ Map.entry(VehicleProperty.FUEL_CONSUMPTION_UNITS_DISTANCE_OVER_VOLUME, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.VEHICLE_SPEED_DISPLAY_UNITS, Set.of("access", "change_mode", "data_enum", "legacy_supported_values_in_config", "require_supported_values_list", "version")),
+ Map.entry(VehicleProperty.EXTERNAL_CAR_TIME, Set.of("access", "change_mode", "unit", "version")),
+ Map.entry(VehicleProperty.ANDROID_EPOCH_TIME, Set.of("access", "change_mode", "unit", "version")),
+ Map.entry(VehicleProperty.STORAGE_ENCRYPTION_BINDING_SEED, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.ENV_OUTSIDE_TEMPERATURE, Set.of("access", "change_mode", "unit", "version")),
+ Map.entry(VehicleProperty.AP_POWER_STATE_REQ, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.AP_POWER_STATE_REPORT, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.AP_POWER_BOOTUP_REASON, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.DISPLAY_BRIGHTNESS, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.PER_DISPLAY_BRIGHTNESS, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.VALET_MODE_ENABLED, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.HEAD_UP_DISPLAY_ENABLED, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.HW_KEY_INPUT, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.HW_KEY_INPUT_V2, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.HW_MOTION_INPUT, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.HW_ROTARY_INPUT, Set.of("access", "change_mode", "data_enum", "version")),
+ Map.entry(VehicleProperty.HW_CUSTOM_INPUT, Set.of("access", "change_mode", "data_enum", "version")),
+ Map.entry(VehicleProperty.DOOR_POS, Set.of("access", "change_mode", "require_min_max_supported_value", "version")),
+ Map.entry(VehicleProperty.DOOR_MOVE, Set.of("access", "change_mode", "require_min_max_supported_value", "version")),
+ Map.entry(VehicleProperty.DOOR_LOCK, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.DOOR_CHILD_LOCK_ENABLED, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.MIRROR_Z_POS, Set.of("access", "change_mode", "require_min_max_supported_value", "version")),
+ Map.entry(VehicleProperty.MIRROR_Z_MOVE, Set.of("access", "change_mode", "require_min_max_supported_value", "version")),
+ Map.entry(VehicleProperty.MIRROR_Y_POS, Set.of("access", "change_mode", "require_min_max_supported_value", "version")),
+ Map.entry(VehicleProperty.MIRROR_Y_MOVE, Set.of("access", "change_mode", "require_min_max_supported_value", "version")),
+ Map.entry(VehicleProperty.MIRROR_LOCK, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.MIRROR_FOLD, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.MIRROR_AUTO_FOLD_ENABLED, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.MIRROR_AUTO_TILT_ENABLED, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.SEAT_MEMORY_SELECT, Set.of("access", "change_mode", "require_min_max_supported_value", "version")),
+ Map.entry(VehicleProperty.SEAT_MEMORY_SET, Set.of("access", "change_mode", "require_min_max_supported_value", "version")),
+ Map.entry(VehicleProperty.SEAT_BELT_BUCKLED, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.SEAT_BELT_HEIGHT_POS, Set.of("access", "change_mode", "require_min_max_supported_value", "version")),
+ Map.entry(VehicleProperty.SEAT_BELT_HEIGHT_MOVE, Set.of("access", "change_mode", "require_min_max_supported_value", "version")),
+ Map.entry(VehicleProperty.SEAT_FORE_AFT_POS, Set.of("access", "change_mode", "require_min_max_supported_value", "version")),
+ Map.entry(VehicleProperty.SEAT_FORE_AFT_MOVE, Set.of("access", "change_mode", "require_min_max_supported_value", "version")),
+ Map.entry(VehicleProperty.SEAT_BACKREST_ANGLE_1_POS, Set.of("access", "change_mode", "require_min_max_supported_value", "version")),
+ Map.entry(VehicleProperty.SEAT_BACKREST_ANGLE_1_MOVE, Set.of("access", "change_mode", "require_min_max_supported_value", "version")),
+ Map.entry(VehicleProperty.SEAT_BACKREST_ANGLE_2_POS, Set.of("access", "change_mode", "require_min_max_supported_value", "version")),
+ Map.entry(VehicleProperty.SEAT_BACKREST_ANGLE_2_MOVE, Set.of("access", "change_mode", "require_min_max_supported_value", "version")),
+ Map.entry(VehicleProperty.SEAT_HEIGHT_POS, Set.of("access", "change_mode", "require_min_max_supported_value", "version")),
+ Map.entry(VehicleProperty.SEAT_HEIGHT_MOVE, Set.of("access", "change_mode", "require_min_max_supported_value", "version")),
+ Map.entry(VehicleProperty.SEAT_DEPTH_POS, Set.of("access", "change_mode", "require_min_max_supported_value", "version")),
+ Map.entry(VehicleProperty.SEAT_DEPTH_MOVE, Set.of("access", "change_mode", "require_min_max_supported_value", "version")),
+ Map.entry(VehicleProperty.SEAT_TILT_POS, Set.of("access", "change_mode", "require_min_max_supported_value", "version")),
+ Map.entry(VehicleProperty.SEAT_TILT_MOVE, Set.of("access", "change_mode", "require_min_max_supported_value", "version")),
+ Map.entry(VehicleProperty.SEAT_LUMBAR_FORE_AFT_POS, Set.of("access", "change_mode", "require_min_max_supported_value", "version")),
+ Map.entry(VehicleProperty.SEAT_LUMBAR_FORE_AFT_MOVE, Set.of("access", "change_mode", "require_min_max_supported_value", "version")),
+ Map.entry(VehicleProperty.SEAT_LUMBAR_SIDE_SUPPORT_POS, Set.of("access", "change_mode", "require_min_max_supported_value", "version")),
+ Map.entry(VehicleProperty.SEAT_LUMBAR_SIDE_SUPPORT_MOVE, Set.of("access", "change_mode", "require_min_max_supported_value", "version")),
+ Map.entry(VehicleProperty.SEAT_HEADREST_HEIGHT_POS, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.SEAT_HEADREST_HEIGHT_POS_V2, Set.of("access", "change_mode", "require_min_max_supported_value", "version")),
+ Map.entry(VehicleProperty.SEAT_HEADREST_HEIGHT_MOVE, Set.of("access", "change_mode", "require_min_max_supported_value", "version")),
+ Map.entry(VehicleProperty.SEAT_HEADREST_ANGLE_POS, Set.of("access", "change_mode", "require_min_max_supported_value", "version")),
+ Map.entry(VehicleProperty.SEAT_HEADREST_ANGLE_MOVE, Set.of("access", "change_mode", "require_min_max_supported_value", "version")),
+ Map.entry(VehicleProperty.SEAT_HEADREST_FORE_AFT_POS, Set.of("access", "change_mode", "require_min_max_supported_value", "version")),
+ Map.entry(VehicleProperty.SEAT_HEADREST_FORE_AFT_MOVE, Set.of("access", "change_mode", "require_min_max_supported_value", "version")),
+ Map.entry(VehicleProperty.SEAT_FOOTWELL_LIGHTS_STATE, Set.of("access", "change_mode", "data_enum", "require_supported_values_list", "version")),
+ Map.entry(VehicleProperty.SEAT_FOOTWELL_LIGHTS_SWITCH, Set.of("access", "change_mode", "data_enum", "require_supported_values_list", "version")),
+ Map.entry(VehicleProperty.SEAT_EASY_ACCESS_ENABLED, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.SEAT_AIRBAG_ENABLED, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.SEAT_AIRBAGS_DEPLOYED, Set.of("access", "change_mode", "data_enum", "require_supported_values_list", "version")),
+ Map.entry(VehicleProperty.SEAT_CUSHION_SIDE_SUPPORT_POS, Set.of("access", "change_mode", "require_min_max_supported_value", "version")),
+ Map.entry(VehicleProperty.SEAT_CUSHION_SIDE_SUPPORT_MOVE, Set.of("access", "change_mode", "require_min_max_supported_value", "version")),
+ Map.entry(VehicleProperty.SEAT_LUMBAR_VERTICAL_POS, Set.of("access", "change_mode", "require_min_max_supported_value", "version")),
+ Map.entry(VehicleProperty.SEAT_LUMBAR_VERTICAL_MOVE, Set.of("access", "change_mode", "require_min_max_supported_value", "version")),
+ Map.entry(VehicleProperty.SEAT_WALK_IN_POS, Set.of("access", "change_mode", "require_min_max_supported_value", "version")),
+ Map.entry(VehicleProperty.SEAT_BELT_PRETENSIONER_DEPLOYED, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.SEAT_OCCUPANCY, Set.of("access", "change_mode", "data_enum", "require_supported_values_list", "version")),
+ Map.entry(VehicleProperty.WINDOW_POS, Set.of("access", "change_mode", "require_min_max_supported_value", "version")),
+ Map.entry(VehicleProperty.WINDOW_MOVE, Set.of("access", "change_mode", "require_min_max_supported_value", "version")),
+ Map.entry(VehicleProperty.WINDOW_LOCK, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.WINDSHIELD_WIPERS_PERIOD, Set.of("access", "change_mode", "require_min_max_supported_value", "unit", "version")),
+ Map.entry(VehicleProperty.WINDSHIELD_WIPERS_STATE, Set.of("access", "change_mode", "data_enum", "require_supported_values_list", "version")),
+ Map.entry(VehicleProperty.WINDSHIELD_WIPERS_SWITCH, Set.of("access", "change_mode", "data_enum", "require_supported_values_list", "version")),
+ Map.entry(VehicleProperty.STEERING_WHEEL_DEPTH_POS, Set.of("access", "change_mode", "require_min_max_supported_value", "version")),
+ Map.entry(VehicleProperty.STEERING_WHEEL_DEPTH_MOVE, Set.of("access", "change_mode", "require_min_max_supported_value", "version")),
+ Map.entry(VehicleProperty.STEERING_WHEEL_HEIGHT_POS, Set.of("access", "change_mode", "require_min_max_supported_value", "version")),
+ Map.entry(VehicleProperty.STEERING_WHEEL_HEIGHT_MOVE, Set.of("access", "change_mode", "require_min_max_supported_value", "version")),
+ Map.entry(VehicleProperty.STEERING_WHEEL_THEFT_LOCK_ENABLED, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.STEERING_WHEEL_LOCKED, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.STEERING_WHEEL_EASY_ACCESS_ENABLED, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.GLOVE_BOX_DOOR_POS, Set.of("access", "change_mode", "require_min_max_supported_value", "version")),
+ Map.entry(VehicleProperty.GLOVE_BOX_LOCKED, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.VEHICLE_MAP_SERVICE, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.LOCATION_CHARACTERIZATION, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.ULTRASONICS_SENSOR_POSITION, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.ULTRASONICS_SENSOR_ORIENTATION, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.ULTRASONICS_SENSOR_FIELD_OF_VIEW, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.ULTRASONICS_SENSOR_DETECTION_RANGE, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.ULTRASONICS_SENSOR_SUPPORTED_RANGES, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.ULTRASONICS_SENSOR_MEASURED_DISTANCE, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.OBD2_LIVE_FRAME, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.OBD2_FREEZE_FRAME, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.OBD2_FREEZE_FRAME_INFO, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.OBD2_FREEZE_FRAME_CLEAR, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.HEADLIGHTS_STATE, Set.of("access", "change_mode", "data_enum", "require_supported_values_list", "version")),
+ Map.entry(VehicleProperty.HIGH_BEAM_LIGHTS_STATE, Set.of("access", "change_mode", "data_enum", "require_supported_values_list", "version")),
+ Map.entry(VehicleProperty.FOG_LIGHTS_STATE, Set.of("access", "change_mode", "data_enum", "require_supported_values_list", "version")),
+ Map.entry(VehicleProperty.HAZARD_LIGHTS_STATE, Set.of("access", "change_mode", "data_enum", "require_supported_values_list", "version")),
+ Map.entry(VehicleProperty.HEADLIGHTS_SWITCH, Set.of("access", "change_mode", "data_enum", "require_supported_values_list", "version")),
+ Map.entry(VehicleProperty.HIGH_BEAM_LIGHTS_SWITCH, Set.of("access", "change_mode", "data_enum", "require_supported_values_list", "version")),
+ Map.entry(VehicleProperty.FOG_LIGHTS_SWITCH, Set.of("access", "change_mode", "data_enum", "require_supported_values_list", "version")),
+ Map.entry(VehicleProperty.HAZARD_LIGHTS_SWITCH, Set.of("access", "change_mode", "data_enum", "require_supported_values_list", "version")),
+ Map.entry(VehicleProperty.CABIN_LIGHTS_STATE, Set.of("access", "change_mode", "data_enum", "require_supported_values_list", "version")),
+ Map.entry(VehicleProperty.CABIN_LIGHTS_SWITCH, Set.of("access", "change_mode", "data_enum", "require_supported_values_list", "version")),
+ Map.entry(VehicleProperty.READING_LIGHTS_STATE, Set.of("access", "change_mode", "data_enum", "require_supported_values_list", "version")),
+ Map.entry(VehicleProperty.READING_LIGHTS_SWITCH, Set.of("access", "change_mode", "data_enum", "require_supported_values_list", "version")),
+ Map.entry(VehicleProperty.STEERING_WHEEL_LIGHTS_STATE, Set.of("access", "change_mode", "data_enum", "require_supported_values_list", "version")),
+ Map.entry(VehicleProperty.STEERING_WHEEL_LIGHTS_SWITCH, Set.of("access", "change_mode", "data_enum", "require_supported_values_list", "version")),
+ Map.entry(VehicleProperty.SUPPORT_CUSTOMIZE_VENDOR_PERMISSION, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.DISABLED_OPTIONAL_FEATURES, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.INITIAL_USER_INFO, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.SWITCH_USER, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.CREATE_USER, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.REMOVE_USER, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.USER_IDENTIFICATION_ASSOCIATION, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.EVS_SERVICE_REQUEST, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.POWER_POLICY_REQ, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.POWER_POLICY_GROUP_REQ, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.CURRENT_POWER_POLICY, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.WATCHDOG_ALIVE, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.WATCHDOG_TERMINATED_PROCESS, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.VHAL_HEARTBEAT, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.CLUSTER_SWITCH_UI, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.CLUSTER_DISPLAY_STATE, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.CLUSTER_REPORT_STATE, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.CLUSTER_REQUEST_DISPLAY, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.CLUSTER_NAVIGATION_STATE, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.ELECTRONIC_TOLL_COLLECTION_CARD_TYPE, Set.of("access", "change_mode", "data_enum", "require_supported_values_list", "version")),
+ Map.entry(VehicleProperty.ELECTRONIC_TOLL_COLLECTION_CARD_STATUS, Set.of("access", "change_mode", "data_enum", "require_supported_values_list", "version")),
+ Map.entry(VehicleProperty.FRONT_FOG_LIGHTS_STATE, Set.of("access", "change_mode", "data_enum", "require_supported_values_list", "version")),
+ Map.entry(VehicleProperty.FRONT_FOG_LIGHTS_SWITCH, Set.of("access", "change_mode", "data_enum", "require_supported_values_list", "version")),
+ Map.entry(VehicleProperty.REAR_FOG_LIGHTS_STATE, Set.of("access", "change_mode", "data_enum", "require_supported_values_list", "version")),
+ Map.entry(VehicleProperty.REAR_FOG_LIGHTS_SWITCH, Set.of("access", "change_mode", "data_enum", "require_supported_values_list", "version")),
+ Map.entry(VehicleProperty.EV_CHARGE_CURRENT_DRAW_LIMIT, Set.of("access", "change_mode", "unit", "version")),
+ Map.entry(VehicleProperty.EV_CHARGE_PERCENT_LIMIT, Set.of("access", "change_mode", "legacy_supported_values_in_config", "require_supported_values_list", "version")),
+ Map.entry(VehicleProperty.EV_CHARGE_STATE, Set.of("access", "change_mode", "data_enum", "require_supported_values_list", "version")),
+ Map.entry(VehicleProperty.EV_CHARGE_SWITCH, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.EV_CHARGE_TIME_REMAINING, Set.of("access", "change_mode", "unit", "version")),
+ Map.entry(VehicleProperty.EV_REGENERATIVE_BRAKING_STATE, Set.of("access", "change_mode", "data_enum", "require_supported_values_list", "version")),
+ Map.entry(VehicleProperty.TRAILER_PRESENT, Set.of("access", "change_mode", "data_enum", "require_supported_values_list", "version")),
+ Map.entry(VehicleProperty.VEHICLE_CURB_WEIGHT, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.GENERAL_SAFETY_REGULATION_COMPLIANCE_REQUIREMENT, Set.of("access", "change_mode", "data_enum", "version")),
+ Map.entry(VehicleProperty.SUPPORTED_PROPERTY_IDS, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.SHUTDOWN_REQUEST, Set.of("access", "change_mode", "data_enum", "version")),
+ Map.entry(VehicleProperty.VEHICLE_IN_USE, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.CLUSTER_HEARTBEAT, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.VEHICLE_DRIVING_AUTOMATION_CURRENT_LEVEL, Set.of("access", "change_mode", "data_enum", "require_supported_values_list", "version")),
+ Map.entry(VehicleProperty.VEHICLE_DRIVING_AUTOMATION_TARGET_LEVEL, Set.of("access", "change_mode", "data_enum", "require_supported_values_list", "version")),
+ Map.entry(VehicleProperty.CAMERA_SERVICE_CURRENT_STATE, Set.of("access", "change_mode", "data_enum", "version")),
+ Map.entry(VehicleProperty.PER_DISPLAY_MAX_BRIGHTNESS, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.AUTOMATIC_EMERGENCY_BRAKING_ENABLED, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.AUTOMATIC_EMERGENCY_BRAKING_STATE, Set.of("access", "change_mode", "data_enum", "require_supported_values_list", "version")),
+ Map.entry(VehicleProperty.FORWARD_COLLISION_WARNING_ENABLED, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.FORWARD_COLLISION_WARNING_STATE, Set.of("access", "change_mode", "data_enum", "require_supported_values_list", "version")),
+ Map.entry(VehicleProperty.BLIND_SPOT_WARNING_ENABLED, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.BLIND_SPOT_WARNING_STATE, Set.of("access", "change_mode", "data_enum", "require_supported_values_list", "version")),
+ Map.entry(VehicleProperty.LANE_DEPARTURE_WARNING_ENABLED, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.LANE_DEPARTURE_WARNING_STATE, Set.of("access", "change_mode", "data_enum", "require_supported_values_list", "version")),
+ Map.entry(VehicleProperty.LANE_KEEP_ASSIST_ENABLED, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.LANE_KEEP_ASSIST_STATE, Set.of("access", "change_mode", "data_enum", "require_supported_values_list", "version")),
+ Map.entry(VehicleProperty.LANE_CENTERING_ASSIST_ENABLED, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.LANE_CENTERING_ASSIST_COMMAND, Set.of("access", "change_mode", "data_enum", "require_supported_values_list", "version")),
+ Map.entry(VehicleProperty.LANE_CENTERING_ASSIST_STATE, Set.of("access", "change_mode", "data_enum", "require_supported_values_list", "version")),
+ Map.entry(VehicleProperty.EMERGENCY_LANE_KEEP_ASSIST_ENABLED, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.EMERGENCY_LANE_KEEP_ASSIST_STATE, Set.of("access", "change_mode", "data_enum", "require_supported_values_list", "version")),
+ Map.entry(VehicleProperty.CRUISE_CONTROL_ENABLED, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.CRUISE_CONTROL_TYPE, Set.of("access", "change_mode", "data_enum", "require_supported_values_list", "version")),
+ Map.entry(VehicleProperty.CRUISE_CONTROL_STATE, Set.of("access", "change_mode", "data_enum", "require_supported_values_list", "version")),
+ Map.entry(VehicleProperty.CRUISE_CONTROL_COMMAND, Set.of("access", "change_mode", "data_enum", "require_supported_values_list", "version")),
+ Map.entry(VehicleProperty.CRUISE_CONTROL_TARGET_SPEED, Set.of("access", "change_mode", "require_min_max_supported_value", "unit", "version")),
+ Map.entry(VehicleProperty.ADAPTIVE_CRUISE_CONTROL_TARGET_TIME_GAP, Set.of("access", "change_mode", "legacy_supported_values_in_config", "require_supported_values_list", "unit", "version")),
+ Map.entry(VehicleProperty.ADAPTIVE_CRUISE_CONTROL_LEAD_VEHICLE_MEASURED_DISTANCE, Set.of("access", "change_mode", "require_min_max_supported_value", "unit", "version")),
+ Map.entry(VehicleProperty.HANDS_ON_DETECTION_ENABLED, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.HANDS_ON_DETECTION_DRIVER_STATE, Set.of("access", "change_mode", "data_enum", "require_supported_values_list", "version")),
+ Map.entry(VehicleProperty.HANDS_ON_DETECTION_WARNING, Set.of("access", "change_mode", "data_enum", "require_supported_values_list", "version")),
+ Map.entry(VehicleProperty.DRIVER_DROWSINESS_ATTENTION_SYSTEM_ENABLED, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.DRIVER_DROWSINESS_ATTENTION_STATE, Set.of("access", "change_mode", "data_enum", "require_supported_values_list", "version")),
+ Map.entry(VehicleProperty.DRIVER_DROWSINESS_ATTENTION_WARNING_ENABLED, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.DRIVER_DROWSINESS_ATTENTION_WARNING, Set.of("access", "change_mode", "data_enum", "require_supported_values_list", "version")),
+ Map.entry(VehicleProperty.DRIVER_DISTRACTION_SYSTEM_ENABLED, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.DRIVER_DISTRACTION_STATE, Set.of("access", "change_mode", "data_enum", "require_supported_values_list", "version")),
+ Map.entry(VehicleProperty.DRIVER_DISTRACTION_WARNING_ENABLED, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.DRIVER_DISTRACTION_WARNING, Set.of("access", "change_mode", "data_enum", "require_supported_values_list", "version")),
+ Map.entry(VehicleProperty.LOW_SPEED_COLLISION_WARNING_ENABLED, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.LOW_SPEED_COLLISION_WARNING_STATE, Set.of("access", "change_mode", "data_enum", "require_supported_values_list", "version")),
+ Map.entry(VehicleProperty.CROSS_TRAFFIC_MONITORING_ENABLED, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.CROSS_TRAFFIC_MONITORING_WARNING_STATE, Set.of("access", "change_mode", "data_enum", "require_supported_values_list", "version")),
+ Map.entry(VehicleProperty.LOW_SPEED_AUTOMATIC_EMERGENCY_BRAKING_ENABLED, Set.of("access", "change_mode", "version")),
+ Map.entry(VehicleProperty.LOW_SPEED_AUTOMATIC_EMERGENCY_BRAKING_STATE, Set.of("access", "change_mode", "data_enum", "require_supported_values_list", "version"))
);
}
diff --git a/automotive/vehicle/aidl/impl/current/default_config/JsonConfigLoader/src/JsonConfigLoader.cpp b/automotive/vehicle/aidl/impl/current/default_config/JsonConfigLoader/src/JsonConfigLoader.cpp
index f910beb..5b945b2 100644
--- a/automotive/vehicle/aidl/impl/current/default_config/JsonConfigLoader/src/JsonConfigLoader.cpp
+++ b/automotive/vehicle/aidl/impl/current/default_config/JsonConfigLoader/src/JsonConfigLoader.cpp
@@ -34,7 +34,6 @@
namespace jsonconfigloader_impl {
-using ::aidl::android::hardware::automotive::vehicle::AccessForVehicleProperty;
using ::aidl::android::hardware::automotive::vehicle::AutomaticEmergencyBrakingState;
using ::aidl::android::hardware::automotive::vehicle::BlindSpotWarningState;
using ::aidl::android::hardware::automotive::vehicle::CameraServiceState;
@@ -43,6 +42,7 @@
using ::aidl::android::hardware::automotive::vehicle::CruiseControlCommand;
using ::aidl::android::hardware::automotive::vehicle::CruiseControlState;
using ::aidl::android::hardware::automotive::vehicle::CruiseControlType;
+using ::aidl::android::hardware::automotive::vehicle::DefaultAccessForVehicleProperty;
using ::aidl::android::hardware::automotive::vehicle::DriverDistractionState;
using ::aidl::android::hardware::automotive::vehicle::DriverDistractionWarning;
using ::aidl::android::hardware::automotive::vehicle::DriverDrowsinessAttentionState;
@@ -640,8 +640,8 @@
configDecl.config.prop = propId;
std::string propStr = propJsonValue["property"].toStyledString();
VehiclePropertyAccess* defaultAccessMode = NULL;
- auto itAccess = AccessForVehicleProperty.find(static_cast<VehicleProperty>(propId));
- if (itAccess != AccessForVehicleProperty.end()) {
+ auto itAccess = DefaultAccessForVehicleProperty.find(static_cast<VehicleProperty>(propId));
+ if (itAccess != DefaultAccessForVehicleProperty.end()) {
defaultAccessMode = &itAccess->second;
}
VehiclePropertyChangeMode* defaultChangeMode = NULL;
diff --git a/automotive/vehicle/aidl_property/android/hardware/automotive/vehicle/VehicleProperty.aidl b/automotive/vehicle/aidl_property/android/hardware/automotive/vehicle/VehicleProperty.aidl
index 200ba4c..a7ecb36 100644
--- a/automotive/vehicle/aidl_property/android/hardware/automotive/vehicle/VehicleProperty.aidl
+++ b/automotive/vehicle/aidl_property/android/hardware/automotive/vehicle/VehicleProperty.aidl
@@ -1317,7 +1317,7 @@
HVAC_FAN_SPEED = 0x0500 + 0x10000000 + 0x05000000
+ 0x00400000, // VehiclePropertyGroup:SYSTEM,VehicleArea:SEAT,VehiclePropertyType:INT32
/**
- * Fan direction setting
+ * The current HVAC fan direction setting
*
* This property is defined as VehiclePropertyAccess.READ_WRITE, but OEMs have the option to
* implement it as VehiclePropertyAccess.READ only.
@@ -1326,6 +1326,9 @@
* property. Caller should not call {@code getSupportedValuesList}, or use
* {@code VehicleAreaConfig#supportedEnumValues}.
*
+ * This property must be supported if {@code HVAC_FAN_DIRECTION_AVAILABLE} is implemented
+ * on the vehicle, and vice versa.
+ *
* @change_mode VehiclePropertyChangeMode.ON_CHANGE
* @access VehiclePropertyAccess.READ_WRITE
* @access VehiclePropertyAccess.READ
@@ -1770,10 +1773,10 @@
HVAC_POWER_ON = 0x0510 + 0x10000000 + 0x05000000
+ 0x00200000, // VehiclePropertyGroup:SYSTEM,VehicleArea:SEAT,VehiclePropertyType:BOOLEAN
/**
- * Fan Positions Available
+ * List of supported fan directions in the vehicle.
*
- * This is a bit mask of fan positions available for the zone. Each
- * available fan direction is denoted by a separate entry in the vector. A
+ * This is a bit mask of the supported fan positions available each area ID. Each
+ * supported fan direction is denoted by a separate entry in the vector. A
* fan direction may have multiple bits from vehicle_hvac_fan_direction set.
* For instance, a typical car may have the following fan positions:
* - FAN_DIRECTION_FACE (0x1)
@@ -1782,6 +1785,9 @@
* - FAN_DIRECTION_DEFROST (0x4)
* - FAN_DIRECTION_FLOOR | FAN_DIRECTION_DEFROST (0x6)
*
+ * This property must be supported if {@code #HVAC_FAN_DIRECTION} is implemented on the vehicle,
+ * and vice versa.
+ *
* @change_mode VehiclePropertyChangeMode.STATIC
* @access VehiclePropertyAccess.READ
* @data_enum VehicleHvacFanDirection
diff --git a/automotive/vehicle/tools/generate_annotation_enums.py b/automotive/vehicle/tools/generate_annotation_enums.py
index 4ed19d3..5367f3f 100755
--- a/automotive/vehicle/tools/generate_annotation_enums.py
+++ b/automotive/vehicle/tools/generate_annotation_enums.py
@@ -109,64 +109,55 @@
"""
-CHANGE_MODE_CPP_HEADER = """#pragma once
+CHANGE_MODE_CPP_FORMATTER = """#pragma once
#include <aidl/android/hardware/automotive/vehicle/VehicleProperty.h>
#include <aidl/android/hardware/automotive/vehicle/VehiclePropertyChangeMode.h>
#include <unordered_map>
-namespace aidl {
-namespace android {
-namespace hardware {
-namespace automotive {
-namespace vehicle {
-
-std::unordered_map<VehicleProperty, VehiclePropertyChangeMode> ChangeModeForVehicleProperty = {
+namespace aidl::android::hardware::automotive::vehicle {{
+std::unordered_map<VehicleProperty, VehiclePropertyChangeMode> ChangeModeForVehicleProperty = {{
+{0}
+}};
+}} // aidl::android::hardware::automotive::vehicle
"""
-CPP_FOOTER = """
-};
-
-} // namespace vehicle
-} // namespace automotive
-} // namespace hardware
-} // namespace android
-} // aidl
-"""
-
-ACCESS_CPP_HEADER = """#pragma once
+ACCESS_CPP_FORMATTER = """#pragma once
#include <aidl/android/hardware/automotive/vehicle/VehicleProperty.h>
#include <aidl/android/hardware/automotive/vehicle/VehiclePropertyAccess.h>
#include <unordered_map>
-namespace aidl {
-namespace android {
-namespace hardware {
-namespace automotive {
-namespace vehicle {
+namespace aidl::android::hardware::automotive::vehicle {{
+// This map represents the default access mode for each property.
+std::unordered_map<VehicleProperty, VehiclePropertyAccess> DefaultAccessForVehicleProperty = {{
+{0}
+}};
-std::unordered_map<VehicleProperty, VehiclePropertyAccess> AccessForVehicleProperty = {
+// This map represents the allowed access modes for each property.
+std::unordered_map<VehicleProperty, std::vector<VehiclePropertyAccess>>
+ AllowedAccessForVehicleProperty = {{
+{1}
+}};
+}} // aidl::android::hardware::automotive::vehicle
"""
-VERSION_CPP_HEADER = """#pragma once
+VERSION_CPP_FORMATTER = """#pragma once
#include <aidl/android/hardware/automotive/vehicle/VehicleProperty.h>
#include <unordered_map>
-namespace aidl {
-namespace android {
-namespace hardware {
-namespace automotive {
-namespace vehicle {
-
-std::unordered_map<VehicleProperty, int32_t> VersionForVehicleProperty = {
+namespace aidl::android::hardware::automotive::vehicle {{
+std::unordered_map<VehicleProperty, int32_t> VersionForVehicleProperty = {{
+{0}
+}};
+}} // aidl::android::hardware::automotive::vehicle
"""
-ANNOTATIONS_CPP_HEADER = """#pragma once
+ANNOTATIONS_CPP_FORMATTER = """#pragma once
#include <aidl/android/hardware/automotive/vehicle/VehicleProperty.h>
@@ -174,67 +165,79 @@
#include <unordered_map>
#include <unordered_set>
-namespace aidl {
-namespace android {
-namespace hardware {
-namespace automotive {
-namespace vehicle {
-
+namespace aidl::android::hardware::automotive::vehicle {{
std::unordered_map<VehicleProperty, std::unordered_set<std::string>>
- AnnotationsForVehicleProperty = {
+ AnnotationsForVehicleProperty = {{
+{0}
+}};
+}} // aidl::android::hardware::automotive::vehicle
"""
-CHANGE_MODE_JAVA_HEADER = """package android.hardware.automotive.vehicle;
+CHANGE_MODE_JAVA_FORMATTER = """package android.hardware.automotive.vehicle;
import java.util.Map;
-public final class ChangeModeForVehicleProperty {
+public final class ChangeModeForVehicleProperty {{
public static final Map<Integer, Integer> values = Map.ofEntries(
-"""
-
-JAVA_FOOTER = """
+{0}
);
-}
+}}
"""
-ACCESS_JAVA_HEADER = """package android.hardware.automotive.vehicle;
+ACCESS_JAVA_FORMATTER = """package android.hardware.automotive.vehicle;
import java.util.Map;
-public final class AccessForVehicleProperty {
+public final class AccessForVehicleProperty {{
public static final Map<Integer, Integer> values = Map.ofEntries(
+{0}
+ );
+
+}}
"""
-ENUM_JAVA_HEADER = """package android.hardware.automotive.vehicle;
+ENUM_JAVA_FORMATTER = """package android.hardware.automotive.vehicle;
import java.util.List;
import java.util.Map;
-public final class EnumForVehicleProperty {
+public final class EnumForVehicleProperty {{
public static final Map<Integer, List<Class<?>>> values = Map.ofEntries(
+{0}
+ );
+
+}}
"""
-UNITS_JAVA_HEADER = """package android.hardware.automotive.vehicle;
+UNITS_JAVA_FORMATTER = """package android.hardware.automotive.vehicle;
import java.util.Map;
-public final class UnitsForVehicleProperty {
+public final class UnitsForVehicleProperty {{
public static final Map<Integer, Integer> values = Map.ofEntries(
+{0}
+ );
+
+}}
"""
-ANNOTATIONS_JAVA_HEADER = """package android.hardware.automotive.vehicle;
+ANNOTATIONS_JAVA_FORMATTER = """package android.hardware.automotive.vehicle;
import java.util.Set;
import java.util.Map;
-public final class AnnotationsForVehicleProperty {
+public final class AnnotationsForVehicleProperty {{
public static final Map<Integer, Set<String>> values = Map.ofEntries(
+{0}
+ );
+
+}}
"""
@@ -382,10 +385,10 @@
# Treat empty line comment as a new line.
config.comment += '\n'
- def convert(self, output, header, footer, cpp, field):
+ def convert(self, output, formatter, cpp, field):
"""Converts the property config file to C++/Java output file."""
counter = 0
- content = LICENSE + header
+ content = ''
for config in self.configs:
if field == 'change_mode':
if cpp:
@@ -413,7 +416,7 @@
elif field == 'annotations':
if len(config.annotations) < 1:
continue
- joined_annotation_strings = ', '.join(['"' + annotation + '"' for annotation in config.annotations])
+ joined_annotation_strings = ', '.join(['"' + annotation + '"' for annotation in sorted(config.annotations)])
if cpp:
value = "{" + joined_annotation_strings + "}"
else:
@@ -434,7 +437,19 @@
if not cpp:
content = content[:-1]
- content += footer
+ if field != 'access_mode' or not cpp:
+ content = LICENSE + formatter.format(content)
+ else:
+ content2 = ''
+ counter = 0
+ for config in self.configs:
+ if counter != 0:
+ content2 += '\n'
+ value = ', '. join(['VehiclePropertyAccess::' + access_mode for access_mode in config.access_modes])
+ content2 += TAB + TAB + '{{VehicleProperty::{0}, {{{1}}}}},'.format(config.name, value)
+ counter += 1
+ content = LICENSE + formatter.format(content, content2)
+
with open(output, 'w') as f:
f.write(content)
@@ -480,10 +495,8 @@
self.type = type
self.cpp_file_path = None
self.java_file_path = None
- self.cpp_header = None
- self.java_header = None
- self.cpp_footer = None
- self.java_footer = None
+ self.cpp_formatter = None
+ self.java_formatter = None
self.cpp_output_file = None
self.java_output_file = None
@@ -493,27 +506,21 @@
def setJavaFilePath(self, java_file_path):
self.java_file_path = java_file_path
- def setCppHeader(self, cpp_header):
- self.cpp_header = cpp_header
+ def setCppFormatter(self, cpp_formatter):
+ self.cpp_formatter = cpp_formatter
- def setCppFooter(self, cpp_footer):
- self.cpp_footer = cpp_footer
-
- def setJavaHeader(self, java_header):
- self.java_header = java_header
-
- def setJavaFooter(self, java_footer):
- self.java_footer = java_footer
+ def setJavaFormatter(self, java_formatter):
+ self.java_formatter = java_formatter
def convert(self, file_parser, check_only, temp_files):
if self.cpp_file_path:
output_file = GeneratedFile._getOutputFile(self.cpp_file_path, check_only, temp_files)
- file_parser.convert(output_file, self.cpp_header, self.cpp_footer, True, self.type)
+ file_parser.convert(output_file, self.cpp_formatter, True, self.type)
self.cpp_output_file = output_file
if self.java_file_path:
output_file = GeneratedFile._getOutputFile(self.java_file_path, check_only, temp_files)
- file_parser.convert(output_file, self.java_header, self.java_footer, False, self.type)
+ file_parser.convert(output_file, self.java_formatter, False, self.type)
self.java_output_file = output_file
def cmp(self):
@@ -577,46 +584,37 @@
change_mode = GeneratedFile('change_mode')
change_mode.setCppFilePath(os.path.join(android_top, CHANGE_MODE_CPP_FILE_PATH))
change_mode.setJavaFilePath(os.path.join(android_top, CHANGE_MODE_JAVA_FILE_PATH))
- change_mode.setCppHeader(CHANGE_MODE_CPP_HEADER)
- change_mode.setCppFooter(CPP_FOOTER)
- change_mode.setJavaHeader(CHANGE_MODE_JAVA_HEADER)
- change_mode.setJavaFooter(JAVA_FOOTER)
+ change_mode.setCppFormatter(CHANGE_MODE_CPP_FORMATTER)
+ change_mode.setJavaFormatter(CHANGE_MODE_JAVA_FORMATTER)
generated_files.append(change_mode)
access_mode = GeneratedFile('access_mode')
access_mode.setCppFilePath(os.path.join(android_top, ACCESS_CPP_FILE_PATH))
access_mode.setJavaFilePath(os.path.join(android_top, ACCESS_JAVA_FILE_PATH))
- access_mode.setCppHeader(ACCESS_CPP_HEADER)
- access_mode.setCppFooter(CPP_FOOTER)
- access_mode.setJavaHeader(ACCESS_JAVA_HEADER)
- access_mode.setJavaFooter(JAVA_FOOTER)
+ access_mode.setCppFormatter(ACCESS_CPP_FORMATTER)
+ access_mode.setJavaFormatter(ACCESS_JAVA_FORMATTER)
generated_files.append(access_mode)
enum_types = GeneratedFile('enum_types')
enum_types.setJavaFilePath(os.path.join(android_top, ENUM_JAVA_FILE_PATH))
- enum_types.setJavaHeader(ENUM_JAVA_HEADER)
- enum_types.setJavaFooter(JAVA_FOOTER)
+ enum_types.setJavaFormatter(ENUM_JAVA_FORMATTER)
generated_files.append(enum_types)
unit_type = GeneratedFile('unit_type')
unit_type.setJavaFilePath(os.path.join(android_top, UNITS_JAVA_FILE_PATH))
- unit_type.setJavaHeader(UNITS_JAVA_HEADER)
- unit_type.setJavaFooter(JAVA_FOOTER)
+ unit_type.setJavaFormatter(UNITS_JAVA_FORMATTER)
generated_files.append(unit_type)
version = GeneratedFile('version')
version.setCppFilePath(os.path.join(android_top, VERSION_CPP_FILE_PATH))
- version.setCppHeader(VERSION_CPP_HEADER)
- version.setCppFooter(CPP_FOOTER)
+ version.setCppFormatter(VERSION_CPP_FORMATTER)
generated_files.append(version)
annotations = GeneratedFile('annotations')
annotations.setCppFilePath(os.path.join(android_top, ANNOTATIONS_CPP_FILE_PATH))
annotations.setJavaFilePath(os.path.join(android_top, ANNOTATIONS_JAVA_FILE_PATH))
- annotations.setCppHeader(ANNOTATIONS_CPP_HEADER)
- annotations.setCppFooter(CPP_FOOTER)
- annotations.setJavaHeader(ANNOTATIONS_JAVA_HEADER)
- annotations.setJavaFooter(JAVA_FOOTER)
+ annotations.setCppFormatter(ANNOTATIONS_CPP_FORMATTER)
+ annotations.setJavaFormatter(ANNOTATIONS_JAVA_FORMATTER)
generated_files.append(annotations)
temp_files = []
diff --git a/sensors/aidl/default/Sensors.cpp b/sensors/aidl/default/Sensors.cpp
index 65dd304..9e6bea5 100644
--- a/sensors/aidl/default/Sensors.cpp
+++ b/sensors/aidl/default/Sensors.cpp
@@ -82,6 +82,7 @@
const MQDescriptor<int32_t, SynchronizedReadWrite>& in_wakeLockDescriptor,
const std::shared_ptr<::aidl::android::hardware::sensors::ISensorsCallback>&
in_sensorsCallback) {
+ ALOGI("Sensors initializing");
ScopedAStatus result = ScopedAStatus::ok();
mEventQueue = std::make_unique<AidlMessageQueue<Event, SynchronizedReadWrite>>(
@@ -101,22 +102,27 @@
// Save a reference to the callback
mCallback = in_sensorsCallback;
- // Ensure that any existing EventFlag is properly deleted
- deleteEventFlag();
+ {
+ // Hold the lock to ensure that re-creation of event flag is atomic
+ std::lock_guard<std::mutex> lock(mWriteLock);
- // Create the EventFlag that is used to signal to the framework that sensor events have been
- // written to the Event FMQ
- if (EventFlag::createEventFlag(mEventQueue->getEventFlagWord(), &mEventQueueFlag) != OK) {
- result = ScopedAStatus::fromExceptionCode(EX_ILLEGAL_ARGUMENT);
- }
+ // Ensure that any existing EventFlag is properly deleted
+ deleteEventFlagLocked();
- // Create the Wake Lock FMQ that is used by the framework to communicate whenever WAKE_UP
- // events have been successfully read and handled by the framework.
- mWakeLockQueue = std::make_unique<AidlMessageQueue<int32_t, SynchronizedReadWrite>>(
- in_wakeLockDescriptor, true /* resetPointers */);
+ // Create the EventFlag that is used to signal to the framework that sensor events have been
+ // written to the Event FMQ
+ if (EventFlag::createEventFlag(mEventQueue->getEventFlagWord(), &mEventQueueFlag) != OK) {
+ result = ScopedAStatus::fromExceptionCode(EX_ILLEGAL_ARGUMENT);
+ }
- if (!mCallback || !mEventQueue || !mWakeLockQueue || mEventQueueFlag == nullptr) {
- result = ScopedAStatus::fromExceptionCode(EX_ILLEGAL_ARGUMENT);
+ // Create the Wake Lock FMQ that is used by the framework to communicate whenever WAKE_UP
+ // events have been successfully read and handled by the framework.
+ mWakeLockQueue = std::make_unique<AidlMessageQueue<int32_t, SynchronizedReadWrite>>(
+ in_wakeLockDescriptor, true /* resetPointers */);
+
+ if (!mCallback || !mEventQueue || !mWakeLockQueue || mEventQueueFlag == nullptr) {
+ result = ScopedAStatus::fromExceptionCode(EX_ILLEGAL_ARGUMENT);
+ }
}
// Start the thread to read events from the Wake Lock FMQ
diff --git a/sensors/aidl/default/include/sensors-impl/Sensors.h b/sensors/aidl/default/include/sensors-impl/Sensors.h
index c90db69..8336429 100644
--- a/sensors/aidl/default/include/sensors-impl/Sensors.h
+++ b/sensors/aidl/default/include/sensors-impl/Sensors.h
@@ -23,6 +23,8 @@
#include <map>
#include "Sensor.h"
+#include <android-base/thread_annotations.h>
+
namespace aidl {
namespace android {
namespace hardware {
@@ -125,6 +127,11 @@
void deleteEventFlag() {
// Hold the lock to ensure we don't delete the flag while it's being used in postEvents()
std::lock_guard<std::mutex> lock(mWriteLock);
+ deleteEventFlagLocked();
+ }
+
+ // Expects mWriteLock to be locked prior to invocation
+ void deleteEventFlagLocked() {
if (mEventQueueFlag != nullptr) {
status_t status = EventFlag::deleteEventFlag(&mEventQueueFlag);
if (status != OK) {
@@ -193,7 +200,7 @@
// The Wake Lock FMQ that is read to determine when the framework has handled WAKE_UP events
std::unique_ptr<AidlMessageQueue<int32_t, SynchronizedReadWrite>> mWakeLockQueue;
// Event Flag to signal to the framework when sensor events are available to be read
- EventFlag* mEventQueueFlag;
+ EventFlag* mEventQueueFlag GUARDED_BY(mWriteLock);
// Callback for asynchronous events, such as dynamic sensor connections.
std::shared_ptr<::aidl::android::hardware::sensors::ISensorsCallback> mCallback;
// A map of the available sensors.
diff --git a/wifi/aidl/vts/functional/wifi_chip_aidl_test.cpp b/wifi/aidl/vts/functional/wifi_chip_aidl_test.cpp
index 56b8bb1..de8f382 100644
--- a/wifi/aidl/vts/functional/wifi_chip_aidl_test.cpp
+++ b/wifi/aidl/vts/functional/wifi_chip_aidl_test.cpp
@@ -1034,6 +1034,54 @@
EXPECT_TRUE(status.isOk());
}
+/*
+ * EnableDebugErrorAlerts
+ */
+TEST_P(WifiChipAidlTest, EnableDebugErrorAlerts) {
+ // STA iface needs to be configured for this test
+ auto iface = configureChipForStaAndGetIface();
+ ASSERT_NE(iface, nullptr);
+
+ auto status = wifi_chip_->enableDebugErrorAlerts(true);
+ if (checkStatusCode(&status, WifiStatusCode::ERROR_NOT_SUPPORTED)) {
+ GTEST_SKIP() << "EnableDebugErrorAlerts is not supported by vendor";
+ }
+ EXPECT_TRUE(status.isOk());
+ EXPECT_TRUE(wifi_chip_->enableDebugErrorAlerts(false).isOk());
+}
+
+/*
+ * TriggerSubsystemRestart
+ */
+TEST_P(WifiChipAidlTest, TriggerSubsystemRestart) {
+ // STA iface needs to be configured for this test
+ auto iface = configureChipForStaAndGetIface();
+ ASSERT_NE(iface, nullptr);
+
+ auto status = wifi_chip_->triggerSubsystemRestart();
+ if (checkStatusCode(&status, WifiStatusCode::ERROR_NOT_SUPPORTED)) {
+ GTEST_SKIP() << "TriggerSubsystemRestart is not supported by vendor";
+ }
+ EXPECT_TRUE(status.isOk());
+}
+
+/*
+ * EnableStaChannelForPeerNetwork
+ */
+TEST_P(WifiChipAidlTest, EnableStaChannelForPeerNetwork) {
+ // STA iface needs to be configured for this test
+ auto iface = configureChipForStaAndGetIface();
+ ASSERT_NE(iface, nullptr);
+
+ int categoryMask = (int)IWifiChip::ChannelCategoryMask::INDOOR_CHANNEL |
+ (int)IWifiChip::ChannelCategoryMask::DFS_CHANNEL;
+ auto status = wifi_chip_->enableStaChannelForPeerNetwork(categoryMask);
+ if (checkStatusCode(&status, WifiStatusCode::ERROR_NOT_SUPPORTED)) {
+ GTEST_SKIP() << "EnableStaChannelForPeerNetwork is not supported by vendor";
+ }
+ EXPECT_TRUE(status.isOk());
+}
+
GTEST_ALLOW_UNINSTANTIATED_PARAMETERIZED_TEST(WifiChipAidlTest);
INSTANTIATE_TEST_SUITE_P(WifiTest, WifiChipAidlTest,
testing::ValuesIn(android::getAidlHalInstanceNames(IWifi::descriptor)),