Merge "Generated EnumForVehicleProperty.java from VehicleProeprty.aidl" into main
This commit is contained in:
commit
ef2db817d2
6 changed files with 136 additions and 8 deletions
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright (C) 2022 The Android Open Source Project
|
||||
* Copyright (C) 2023 The Android Open Source Project
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright (C) 2022 The Android Open Source Project
|
||||
* Copyright (C) 2023 The Android Open Source Project
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright (C) 2022 The Android Open Source Project
|
||||
* Copyright (C) 2023 The Android Open Source Project
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright (C) 2022 The Android Open Source Project
|
||||
* Copyright (C) 2023 The Android Open Source Project
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
|
|
|
@ -0,0 +1,99 @@
|
|||
/*
|
||||
* Copyright (C) 2023 The Android Open Source Project
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
/**
|
||||
* DO NOT EDIT MANUALLY!!!
|
||||
*
|
||||
* Generated by tools/generate_annotation_enums.py.
|
||||
*/
|
||||
|
||||
// clang-format off
|
||||
|
||||
package android.hardware.automotive.vehicle;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
public final class EnumForVehicleProperty {
|
||||
|
||||
public static final Map<Integer, List<Class<?>>> values = Map.ofEntries(
|
||||
Map.entry(VehicleProperty.INFO_FUEL_TYPE, List.of(FuelType.class)),
|
||||
Map.entry(VehicleProperty.INFO_EV_CONNECTOR_TYPE, List.of(EvConnectorType.class)),
|
||||
Map.entry(VehicleProperty.INFO_FUEL_DOOR_LOCATION, List.of(PortLocationType.class)),
|
||||
Map.entry(VehicleProperty.INFO_EV_PORT_LOCATION, List.of(PortLocationType.class)),
|
||||
Map.entry(VehicleProperty.INFO_DRIVER_SEAT, List.of(VehicleAreaSeat.class)),
|
||||
Map.entry(VehicleProperty.INFO_MULTI_EV_PORT_LOCATIONS, List.of(PortLocationType.class)),
|
||||
Map.entry(VehicleProperty.ENGINE_OIL_LEVEL, List.of(VehicleOilLevel.class)),
|
||||
Map.entry(VehicleProperty.GEAR_SELECTION, List.of(VehicleGear.class)),
|
||||
Map.entry(VehicleProperty.CURRENT_GEAR, List.of(VehicleGear.class)),
|
||||
Map.entry(VehicleProperty.TURN_SIGNAL_STATE, List.of(VehicleTurnSignal.class)),
|
||||
Map.entry(VehicleProperty.IGNITION_STATE, List.of(VehicleIgnitionState.class)),
|
||||
Map.entry(VehicleProperty.EV_STOPPING_MODE, List.of(EvStoppingMode.class)),
|
||||
Map.entry(VehicleProperty.HVAC_FAN_DIRECTION, List.of(VehicleHvacFanDirection.class)),
|
||||
Map.entry(VehicleProperty.HVAC_TEMPERATURE_DISPLAY_UNITS, List.of(VehicleUnit.class)),
|
||||
Map.entry(VehicleProperty.HVAC_FAN_DIRECTION_AVAILABLE, List.of(VehicleHvacFanDirection.class)),
|
||||
Map.entry(VehicleProperty.DISTANCE_DISPLAY_UNITS, List.of(VehicleUnit.class)),
|
||||
Map.entry(VehicleProperty.FUEL_VOLUME_DISPLAY_UNITS, List.of(VehicleUnit.class)),
|
||||
Map.entry(VehicleProperty.TIRE_PRESSURE_DISPLAY_UNITS, List.of(VehicleUnit.class)),
|
||||
Map.entry(VehicleProperty.EV_BATTERY_DISPLAY_UNITS, List.of(VehicleUnit.class)),
|
||||
Map.entry(VehicleProperty.HW_ROTARY_INPUT, List.of(RotaryInputType.class)),
|
||||
Map.entry(VehicleProperty.HW_CUSTOM_INPUT, List.of(CustomInputType.class)),
|
||||
Map.entry(VehicleProperty.SEAT_FOOTWELL_LIGHTS_STATE, List.of(VehicleLightState.class)),
|
||||
Map.entry(VehicleProperty.SEAT_FOOTWELL_LIGHTS_SWITCH, List.of(VehicleLightSwitch.class)),
|
||||
Map.entry(VehicleProperty.SEAT_OCCUPANCY, List.of(VehicleSeatOccupancyState.class)),
|
||||
Map.entry(VehicleProperty.WINDSHIELD_WIPERS_STATE, List.of(WindshieldWipersState.class)),
|
||||
Map.entry(VehicleProperty.WINDSHIELD_WIPERS_SWITCH, List.of(WindshieldWipersSwitch.class)),
|
||||
Map.entry(VehicleProperty.HEADLIGHTS_STATE, List.of(VehicleLightState.class)),
|
||||
Map.entry(VehicleProperty.HIGH_BEAM_LIGHTS_STATE, List.of(VehicleLightState.class)),
|
||||
Map.entry(VehicleProperty.FOG_LIGHTS_STATE, List.of(VehicleLightState.class)),
|
||||
Map.entry(VehicleProperty.HAZARD_LIGHTS_STATE, List.of(VehicleLightState.class)),
|
||||
Map.entry(VehicleProperty.HEADLIGHTS_SWITCH, List.of(VehicleLightSwitch.class)),
|
||||
Map.entry(VehicleProperty.HIGH_BEAM_LIGHTS_SWITCH, List.of(VehicleLightSwitch.class)),
|
||||
Map.entry(VehicleProperty.FOG_LIGHTS_SWITCH, List.of(VehicleLightSwitch.class)),
|
||||
Map.entry(VehicleProperty.HAZARD_LIGHTS_SWITCH, List.of(VehicleLightSwitch.class)),
|
||||
Map.entry(VehicleProperty.CABIN_LIGHTS_STATE, List.of(VehicleLightState.class)),
|
||||
Map.entry(VehicleProperty.CABIN_LIGHTS_SWITCH, List.of(VehicleLightSwitch.class)),
|
||||
Map.entry(VehicleProperty.READING_LIGHTS_STATE, List.of(VehicleLightState.class)),
|
||||
Map.entry(VehicleProperty.READING_LIGHTS_SWITCH, List.of(VehicleLightSwitch.class)),
|
||||
Map.entry(VehicleProperty.STEERING_WHEEL_LIGHTS_STATE, List.of(VehicleLightState.class)),
|
||||
Map.entry(VehicleProperty.STEERING_WHEEL_LIGHTS_SWITCH, List.of(VehicleLightSwitch.class)),
|
||||
Map.entry(VehicleProperty.ELECTRONIC_TOLL_COLLECTION_CARD_TYPE, List.of(ElectronicTollCollectionCardType.class)),
|
||||
Map.entry(VehicleProperty.ELECTRONIC_TOLL_COLLECTION_CARD_STATUS, List.of(ElectronicTollCollectionCardStatus.class)),
|
||||
Map.entry(VehicleProperty.FRONT_FOG_LIGHTS_STATE, List.of(VehicleLightState.class)),
|
||||
Map.entry(VehicleProperty.FRONT_FOG_LIGHTS_SWITCH, List.of(VehicleLightSwitch.class)),
|
||||
Map.entry(VehicleProperty.REAR_FOG_LIGHTS_STATE, List.of(VehicleLightState.class)),
|
||||
Map.entry(VehicleProperty.REAR_FOG_LIGHTS_SWITCH, List.of(VehicleLightSwitch.class)),
|
||||
Map.entry(VehicleProperty.EV_CHARGE_STATE, List.of(EvChargeState.class)),
|
||||
Map.entry(VehicleProperty.EV_REGENERATIVE_BRAKING_STATE, List.of(EvRegenerativeBrakingState.class)),
|
||||
Map.entry(VehicleProperty.TRAILER_PRESENT, List.of(TrailerState.class)),
|
||||
Map.entry(VehicleProperty.GENERAL_SAFETY_REGULATION_COMPLIANCE_REQUIREMENT, List.of(GsrComplianceRequirementType.class)),
|
||||
Map.entry(VehicleProperty.SHUTDOWN_REQUEST, List.of(VehicleApPowerStateShutdownParam.class)),
|
||||
Map.entry(VehicleProperty.AUTOMATIC_EMERGENCY_BRAKING_STATE, List.of(AutomaticEmergencyBrakingState.class, ErrorState.class)),
|
||||
Map.entry(VehicleProperty.FORWARD_COLLISION_WARNING_STATE, List.of(ForwardCollisionWarningState.class, ErrorState.class)),
|
||||
Map.entry(VehicleProperty.BLIND_SPOT_WARNING_STATE, List.of(BlindSpotWarningState.class, ErrorState.class)),
|
||||
Map.entry(VehicleProperty.LANE_DEPARTURE_WARNING_STATE, List.of(LaneDepartureWarningState.class, ErrorState.class)),
|
||||
Map.entry(VehicleProperty.LANE_KEEP_ASSIST_STATE, List.of(LaneKeepAssistState.class, ErrorState.class)),
|
||||
Map.entry(VehicleProperty.LANE_CENTERING_ASSIST_COMMAND, List.of(LaneCenteringAssistCommand.class)),
|
||||
Map.entry(VehicleProperty.LANE_CENTERING_ASSIST_STATE, List.of(LaneCenteringAssistState.class, ErrorState.class)),
|
||||
Map.entry(VehicleProperty.EMERGENCY_LANE_KEEP_ASSIST_STATE, List.of(EmergencyLaneKeepAssistState.class, ErrorState.class)),
|
||||
Map.entry(VehicleProperty.CRUISE_CONTROL_TYPE, List.of(CruiseControlType.class, ErrorState.class)),
|
||||
Map.entry(VehicleProperty.CRUISE_CONTROL_STATE, List.of(CruiseControlState.class, ErrorState.class)),
|
||||
Map.entry(VehicleProperty.CRUISE_CONTROL_COMMAND, List.of(CruiseControlCommand.class)),
|
||||
Map.entry(VehicleProperty.HANDS_ON_DETECTION_DRIVER_STATE, List.of(HandsOnDetectionDriverState.class, ErrorState.class)),
|
||||
Map.entry(VehicleProperty.HANDS_ON_DETECTION_WARNING, List.of(HandsOnDetectionWarning.class, ErrorState.class))
|
||||
);
|
||||
|
||||
}
|
|
@ -18,7 +18,7 @@
|
|||
|
||||
Need ANDROID_BUILD_TOP environmental variable to be set. This script will update
|
||||
ChangeModeForVehicleProperty.h and AccessForVehicleProperty.h under generated_lib/cpp and
|
||||
ChangeModeForVehicleProperty.java and AccessForVehicleProperty.java under generated_lib/java.
|
||||
ChangeModeForVehicleProperty.java, AccessForVehicleProperty.java, EnumForVehicleProperty.java under generated_lib/java.
|
||||
|
||||
Usage:
|
||||
$ python generate_annotation_enums.py
|
||||
|
@ -40,6 +40,8 @@ CHANGE_MODE_JAVA_FILE_PATH = ('hardware/interfaces/automotive/vehicle/aidl/gener
|
|||
'ChangeModeForVehicleProperty.java')
|
||||
ACCESS_JAVA_FILE_PATH = ('hardware/interfaces/automotive/vehicle/aidl/generated_lib/java/' +
|
||||
'AccessForVehicleProperty.java')
|
||||
ENUM_JAVA_FILE_PATH = ('hardware/interfaces/automotive/vehicle/aidl/generated_lib/java/' +
|
||||
'EnumForVehicleProperty.java')
|
||||
SCRIPT_PATH = 'hardware/interfaces/automotive/vehicle/tools/generate_annotation_enums.py'
|
||||
|
||||
TAB = ' '
|
||||
|
@ -54,7 +56,7 @@ RE_UNIT = re.compile('\s*\* @unit (\S+)\s+')
|
|||
RE_VALUE = re.compile('\s*(\w+)\s*=(.*)')
|
||||
|
||||
LICENSE = """/*
|
||||
* Copyright (C) 2022 The Android Open Source Project
|
||||
* Copyright (C) 2023 The Android Open Source Project
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
|
@ -167,6 +169,22 @@ ACCESS_JAVA_FOOTER = """
|
|||
}
|
||||
"""
|
||||
|
||||
ENUM_JAVA_HEADER = """package android.hardware.automotive.vehicle;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
public final class EnumForVehicleProperty {
|
||||
|
||||
public static final Map<Integer, List<Class<?>>> values = Map.ofEntries(
|
||||
"""
|
||||
|
||||
ENUM_JAVA_FOOTER = """
|
||||
);
|
||||
|
||||
}
|
||||
"""
|
||||
|
||||
|
||||
class PropertyConfig:
|
||||
"""Represents one VHAL property definition in VehicleProperty.aidl."""
|
||||
|
@ -272,6 +290,11 @@ class FileParser:
|
|||
annotation = "VehiclePropertyAccess::" + config.access_modes[0]
|
||||
else:
|
||||
annotation = "VehiclePropertyAccess." + config.access_modes[0]
|
||||
elif field == 'enum_types':
|
||||
if len(config.enum_types) < 1:
|
||||
continue;
|
||||
if not cpp:
|
||||
annotation = "List.of(" + ', '.join([class_name + ".class" for class_name in config.enum_types]) + ")"
|
||||
else:
|
||||
raise Exception('Unknown field: ' + field)
|
||||
if counter != 0:
|
||||
|
@ -348,7 +371,7 @@ def main():
|
|||
else:
|
||||
android_top = os.environ['ANDROID_BUILD_TOP']
|
||||
if not android_top:
|
||||
print('ANDROID_BUILD_TOP is not in envorinmental variable, please run source and lunch ' +
|
||||
print('ANDROID_BUILD_TOP is not in environmental variable, please run source and lunch ' +
|
||||
'at the android root')
|
||||
|
||||
aidl_file = os.path.join(android_top, PROP_AIDL_FILE_PATH)
|
||||
|
@ -363,6 +386,7 @@ def main():
|
|||
access_cpp_file = os.path.join(android_top, ACCESS_CPP_FILE_PATH);
|
||||
change_mode_java_file = os.path.join(android_top, CHANGE_MODE_JAVA_FILE_PATH);
|
||||
access_java_file = os.path.join(android_top, ACCESS_JAVA_FILE_PATH);
|
||||
enum_java_file = os.path.join(android_top, ENUM_JAVA_FILE_PATH);
|
||||
temp_files = []
|
||||
|
||||
if not args.check_only:
|
||||
|
@ -370,6 +394,7 @@ def main():
|
|||
access_cpp_output = access_cpp_file
|
||||
change_mode_java_output = change_mode_java_file
|
||||
access_java_output = access_java_file
|
||||
enum_java_output = enum_java_file
|
||||
else:
|
||||
change_mode_cpp_output = createTempFile()
|
||||
temp_files.append(change_mode_cpp_output)
|
||||
|
@ -379,6 +404,8 @@ def main():
|
|||
temp_files.append(change_mode_java_output)
|
||||
access_java_output = createTempFile()
|
||||
temp_files.append(access_java_output)
|
||||
enum_java_output = createTempFile()
|
||||
temp_files.append(enum_java_output)
|
||||
|
||||
try:
|
||||
f.convert(change_mode_cpp_output, CHANGE_MODE_CPP_HEADER, CHANGE_MODE_CPP_FOOTER,
|
||||
|
@ -387,6 +414,7 @@ def main():
|
|||
CHANGE_MODE_JAVA_FOOTER, False, 'change_mode')
|
||||
f.convert(access_cpp_output, ACCESS_CPP_HEADER, ACCESS_CPP_FOOTER, True, 'access_mode')
|
||||
f.convert(access_java_output, ACCESS_JAVA_HEADER, ACCESS_JAVA_FOOTER, False, 'access_mode')
|
||||
f.convert(enum_java_output, ENUM_JAVA_HEADER, ENUM_JAVA_FOOTER, False, 'enum_types')
|
||||
|
||||
if not args.check_only:
|
||||
return
|
||||
|
@ -394,7 +422,8 @@ def main():
|
|||
if ((not filecmp.cmp(change_mode_cpp_output, change_mode_cpp_file)) or
|
||||
(not filecmp.cmp(change_mode_java_output, change_mode_java_file)) or
|
||||
(not filecmp.cmp(access_cpp_output, access_cpp_file)) or
|
||||
(not filecmp.cmp(access_java_output, access_java_file))):
|
||||
(not filecmp.cmp(access_java_output, access_java_file)) or
|
||||
(not filecmp.cmp(enum_java_output, enum_java_file))):
|
||||
print('The generated enum files for VehicleProperty.aidl requires update, ')
|
||||
print('Run \npython ' + android_top + '/' + SCRIPT_PATH)
|
||||
sys.exit(1)
|
||||
|
|
Loading…
Reference in a new issue