1/* 2 * Copyright (C) 2025 The Android Open Source Project 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 */ 16 17syntax = "proto3"; 18 19package android.hardware.automotive.vehicle.proto; 20 21/* Must be in sync with HasSupportedValueInfo.aidl. */ 22message HasSupportedValueInfo { 23 /** 24 * Whether [propId, areaId] has min supported value specified. 25 * 26 * If this is {@code true}, the hardware specifies a min supported value. 27 * If {@code MinMaxSupportedValueResult}'s {@code status} is 28 * {@code StatusCode.OK}, its {@code minSupportedValue} must not be 29 * {@code null}. 30 * 31 * If this is {@code false}, {@code minSupportedValue} must be {@code null}. 32 * 33 * Unless otherwise specified, this field is set to {@code false} for any 34 * properties whose type is not int32, int64 or float. 35 * 36 * For certain properties, e.g. {@code EV_BRAKE_REGENERATION_LEVEL}, this 37 * must always be {@code true}. Check {@code VehicleProperty} 38 * documentation. 39 */ 40 bool has_min_supported_value = 1; 41 42 /** 43 * Whether [propId, areaId] has max supported value specified. 44 * 45 * If this is {@code true}, the hardware specifies a max supported value. 46 * If {@code MinMaxSupportedValueResult}'s {@code status} is 47 * {@code StatusCode.OK}, its {@code maxSupportedValue} must not be 48 * {@code null}. 49 * 50 * If this is {@code false}, {@code maxSupportedValue} must be {@code null}. 51 * 52 * Unless otherwise specified, this field is set to {@code false} for any 53 * properties whose type is not int32, int64 or float. 54 * 55 * For certain properties, e.g. {@code EV_BRAKE_REGENERATION_LEVEL}, this 56 * must always be {@code true}. Check {@code VehicleProperty} 57 * documentation. 58 */ 59 bool has_max_supported_value = 2; 60 61 /** 62 * Whether [propId, areaId] has supported values list specified. 63 * 64 * If this is {@code true}, it means the hardware specifies supported 65 * values for this property. 66 * If {@code SupportedValueListResult}'s {@code status} is 67 * {@code StatusCode.OK}, its {@code supportedValuesList} must not be 68 * {@code null}. 69 * 70 * If this is {@code false}, {@code supportedValuesList} must always be 71 * {@code null}. 72 * 73 * The supported value is the superset for both the input value for writable 74 * property and the output value for readable property. 75 * 76 * For certain properties, e.g. {@code GEAR_SELECTION}, this must always be 77 * {@code true}. Check {@code VehicleProperty} documentation. 78 */ 79 bool has_supported_values_list = 3; 80}; 81