/* * Copyright (C) 2025 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 #pragma once #define addSupportedValues(EnumType) \ { \ constexpr auto values = ndk::internal::enum_values; \ for (size_t i = 0; i < values.size(); i++) { \ supportedValues.insert(static_cast(values[i])); \ } \ } #include #include #include namespace aidl::android::hardware::automotive::vehicle { std::unordered_set getSupportedEnumValuesForProperty(VehicleProperty propertyId) { std::unordered_set supportedValues; switch (propertyId) { case VehicleProperty::INFO_FUEL_TYPE: addSupportedValues(FuelType) break; case VehicleProperty::INFO_EV_CONNECTOR_TYPE: addSupportedValues(EvConnectorType) break; case VehicleProperty::INFO_FUEL_DOOR_LOCATION: addSupportedValues(PortLocationType) break; case VehicleProperty::INFO_EV_PORT_LOCATION: addSupportedValues(PortLocationType) break; case VehicleProperty::INFO_DRIVER_SEAT: addSupportedValues(VehicleAreaSeat) break; case VehicleProperty::INFO_MULTI_EV_PORT_LOCATIONS: addSupportedValues(PortLocationType) break; case VehicleProperty::INFO_VEHICLE_SIZE_CLASS: addSupportedValues(VehicleSizeClass) break; case VehicleProperty::ENGINE_OIL_LEVEL: addSupportedValues(VehicleOilLevel) break; case VehicleProperty::IMPACT_DETECTED: addSupportedValues(ImpactSensorLocation) break; case VehicleProperty::GEAR_SELECTION: addSupportedValues(VehicleGear) break; case VehicleProperty::CURRENT_GEAR: addSupportedValues(VehicleGear) break; case VehicleProperty::TURN_SIGNAL_STATE: addSupportedValues(VehicleTurnSignal) break; case VehicleProperty::IGNITION_STATE: addSupportedValues(VehicleIgnitionState) break; case VehicleProperty::EV_STOPPING_MODE: addSupportedValues(EvStoppingMode) break; case VehicleProperty::ELECTRONIC_STABILITY_CONTROL_STATE: addSupportedValues(ElectronicStabilityControlState) addSupportedValues(ErrorState) break; case VehicleProperty::TURN_SIGNAL_LIGHT_STATE: addSupportedValues(VehicleTurnSignal) break; case VehicleProperty::TURN_SIGNAL_SWITCH: addSupportedValues(VehicleTurnSignal) break; case VehicleProperty::HVAC_FAN_DIRECTION: addSupportedValues(VehicleHvacFanDirection) break; case VehicleProperty::HVAC_TEMPERATURE_DISPLAY_UNITS: addSupportedValues(VehicleUnit) break; case VehicleProperty::HVAC_FAN_DIRECTION_AVAILABLE: addSupportedValues(VehicleHvacFanDirection) break; case VehicleProperty::DISTANCE_DISPLAY_UNITS: addSupportedValues(VehicleUnit) break; case VehicleProperty::FUEL_VOLUME_DISPLAY_UNITS: addSupportedValues(VehicleUnit) break; case VehicleProperty::TIRE_PRESSURE_DISPLAY_UNITS: addSupportedValues(VehicleUnit) break; case VehicleProperty::EV_BATTERY_DISPLAY_UNITS: addSupportedValues(VehicleUnit) break; case VehicleProperty::VEHICLE_SPEED_DISPLAY_UNITS: addSupportedValues(VehicleUnit) break; case VehicleProperty::HW_ROTARY_INPUT: addSupportedValues(RotaryInputType) break; case VehicleProperty::HW_CUSTOM_INPUT: addSupportedValues(CustomInputType) break; case VehicleProperty::SEAT_FOOTWELL_LIGHTS_STATE: addSupportedValues(VehicleLightState) break; case VehicleProperty::SEAT_FOOTWELL_LIGHTS_SWITCH: addSupportedValues(VehicleLightSwitch) break; case VehicleProperty::SEAT_AIRBAGS_DEPLOYED: addSupportedValues(VehicleAirbagLocation) break; case VehicleProperty::SEAT_OCCUPANCY: addSupportedValues(VehicleSeatOccupancyState) break; case VehicleProperty::WINDSHIELD_WIPERS_STATE: addSupportedValues(WindshieldWipersState) break; case VehicleProperty::WINDSHIELD_WIPERS_SWITCH: addSupportedValues(WindshieldWipersSwitch) break; case VehicleProperty::HEADLIGHTS_STATE: addSupportedValues(VehicleLightState) break; case VehicleProperty::HIGH_BEAM_LIGHTS_STATE: addSupportedValues(VehicleLightState) break; case VehicleProperty::FOG_LIGHTS_STATE: addSupportedValues(VehicleLightState) break; case VehicleProperty::HAZARD_LIGHTS_STATE: addSupportedValues(VehicleLightState) break; case VehicleProperty::HEADLIGHTS_SWITCH: addSupportedValues(VehicleLightSwitch) break; case VehicleProperty::HIGH_BEAM_LIGHTS_SWITCH: addSupportedValues(VehicleLightSwitch) break; case VehicleProperty::FOG_LIGHTS_SWITCH: addSupportedValues(VehicleLightSwitch) break; case VehicleProperty::HAZARD_LIGHTS_SWITCH: addSupportedValues(VehicleLightSwitch) break; case VehicleProperty::CABIN_LIGHTS_STATE: addSupportedValues(VehicleLightState) break; case VehicleProperty::CABIN_LIGHTS_SWITCH: addSupportedValues(VehicleLightSwitch) break; case VehicleProperty::READING_LIGHTS_STATE: addSupportedValues(VehicleLightState) break; case VehicleProperty::READING_LIGHTS_SWITCH: addSupportedValues(VehicleLightSwitch) break; case VehicleProperty::STEERING_WHEEL_LIGHTS_STATE: addSupportedValues(VehicleLightState) break; case VehicleProperty::STEERING_WHEEL_LIGHTS_SWITCH: addSupportedValues(VehicleLightSwitch) break; case VehicleProperty::ELECTRONIC_TOLL_COLLECTION_CARD_TYPE: addSupportedValues(ElectronicTollCollectionCardType) break; case VehicleProperty::ELECTRONIC_TOLL_COLLECTION_CARD_STATUS: addSupportedValues(ElectronicTollCollectionCardStatus) break; case VehicleProperty::FRONT_FOG_LIGHTS_STATE: addSupportedValues(VehicleLightState) break; case VehicleProperty::FRONT_FOG_LIGHTS_SWITCH: addSupportedValues(VehicleLightSwitch) break; case VehicleProperty::REAR_FOG_LIGHTS_STATE: addSupportedValues(VehicleLightState) break; case VehicleProperty::REAR_FOG_LIGHTS_SWITCH: addSupportedValues(VehicleLightSwitch) break; case VehicleProperty::EV_CHARGE_STATE: addSupportedValues(EvChargeState) break; case VehicleProperty::EV_REGENERATIVE_BRAKING_STATE: addSupportedValues(EvRegenerativeBrakingState) break; case VehicleProperty::TRAILER_PRESENT: addSupportedValues(TrailerState) break; case VehicleProperty::GENERAL_SAFETY_REGULATION_COMPLIANCE_REQUIREMENT: addSupportedValues(GsrComplianceRequirementType) break; case VehicleProperty::SHUTDOWN_REQUEST: addSupportedValues(VehicleApPowerStateShutdownParam) break; case VehicleProperty::VEHICLE_DRIVING_AUTOMATION_CURRENT_LEVEL: addSupportedValues(VehicleAutonomousState) break; case VehicleProperty::VEHICLE_DRIVING_AUTOMATION_TARGET_LEVEL: addSupportedValues(VehicleAutonomousState) break; case VehicleProperty::CAMERA_SERVICE_CURRENT_STATE: addSupportedValues(CameraServiceState) break; case VehicleProperty::AUTOMATIC_EMERGENCY_BRAKING_STATE: addSupportedValues(AutomaticEmergencyBrakingState) addSupportedValues(ErrorState) break; case VehicleProperty::FORWARD_COLLISION_WARNING_STATE: addSupportedValues(ForwardCollisionWarningState) addSupportedValues(ErrorState) break; case VehicleProperty::BLIND_SPOT_WARNING_STATE: addSupportedValues(BlindSpotWarningState) addSupportedValues(ErrorState) break; case VehicleProperty::LANE_DEPARTURE_WARNING_STATE: addSupportedValues(LaneDepartureWarningState) addSupportedValues(ErrorState) break; case VehicleProperty::LANE_KEEP_ASSIST_STATE: addSupportedValues(LaneKeepAssistState) addSupportedValues(ErrorState) break; case VehicleProperty::LANE_CENTERING_ASSIST_COMMAND: addSupportedValues(LaneCenteringAssistCommand) break; case VehicleProperty::LANE_CENTERING_ASSIST_STATE: addSupportedValues(LaneCenteringAssistState) addSupportedValues(ErrorState) break; case VehicleProperty::EMERGENCY_LANE_KEEP_ASSIST_STATE: addSupportedValues(EmergencyLaneKeepAssistState) addSupportedValues(ErrorState) break; case VehicleProperty::CRUISE_CONTROL_TYPE: addSupportedValues(CruiseControlType) addSupportedValues(ErrorState) break; case VehicleProperty::CRUISE_CONTROL_STATE: addSupportedValues(CruiseControlState) addSupportedValues(ErrorState) break; case VehicleProperty::CRUISE_CONTROL_COMMAND: addSupportedValues(CruiseControlCommand) break; case VehicleProperty::HANDS_ON_DETECTION_DRIVER_STATE: addSupportedValues(HandsOnDetectionDriverState) addSupportedValues(ErrorState) break; case VehicleProperty::HANDS_ON_DETECTION_WARNING: addSupportedValues(HandsOnDetectionWarning) addSupportedValues(ErrorState) break; case VehicleProperty::DRIVER_DROWSINESS_ATTENTION_STATE: addSupportedValues(DriverDrowsinessAttentionState) addSupportedValues(ErrorState) break; case VehicleProperty::DRIVER_DROWSINESS_ATTENTION_WARNING: addSupportedValues(DriverDrowsinessAttentionWarning) addSupportedValues(ErrorState) break; case VehicleProperty::DRIVER_DISTRACTION_STATE: addSupportedValues(DriverDistractionState) addSupportedValues(ErrorState) break; case VehicleProperty::DRIVER_DISTRACTION_WARNING: addSupportedValues(DriverDistractionWarning) addSupportedValues(ErrorState) break; case VehicleProperty::LOW_SPEED_COLLISION_WARNING_STATE: addSupportedValues(LowSpeedCollisionWarningState) addSupportedValues(ErrorState) break; case VehicleProperty::CROSS_TRAFFIC_MONITORING_WARNING_STATE: addSupportedValues(CrossTrafficMonitoringWarningState) addSupportedValues(ErrorState) break; case VehicleProperty::LOW_SPEED_AUTOMATIC_EMERGENCY_BRAKING_STATE: addSupportedValues(LowSpeedAutomaticEmergencyBrakingState) addSupportedValues(ErrorState) break; default: // Do nothing. break; } return supportedValues; } } // aidl::android::hardware::automotive::vehicle