Chaque propriété compatible est spécifiée par une configuration de propriété définie via la structure VehiclePropConfig
et comporte les champs suivants.
Champ | Description |
---|---|
prop |
ID de la propriété. Il doit s'agir de l'une des propriétés système définies dans la section Propriétés système compatibles ou d'une propriété du fournisseur. L'ID de propriété est construit à l'aide de l'opérateur OR de bits des champs suivants (de droite à gauche):
Exemple : |
access |
Mode d'accès de la propriété. Doit être défini sur READ , WRITE ou READ_WRITE . Cette valeur doit être égale au mode d'accès défini dans la section Propriétés système compatibles. |
changeMode |
|
configArray |
Tableau facultatif contenant une configuration spécifique à la propriété. Ce champ peut être vide. |
configString |
Chaîne facultative contenant la configuration spécifique à la propriété. Ce champ peut être vide. |
minSampleRate et maxSampleRate
Fréquence d'échantillonnage minimale et maximale compatible pour la propriété continue. Non utilisé si la propriété n'est pas continue. |
Types de propriétés
Définis comme énumérations dans VehiclePropertyType.aidl
. Les types de propriétés compatibles sont répertoriés dans le tableau suivant.
Type de propriété | Valeur | Description |
---|---|---|
Chaîne | 0x00100000 | Propriété de chaîne, utilise le champ stringValue dans la valeur de la propriété du véhicule. |
BOOLEAN | 0x00200000 | Propriété booléenne, utilise le premier élément du champ int32Values dans la valeur de la propriété du véhicule.
0 signifie false , None 0 signifie true . |
INT32 | 0x00400000 | Propriété entière, utilise le premier élément du champ int32Values dans la valeur de la propriété du véhicule. |
INT32_VEC | 0x00410000 | La propriété Integer[] utilise les éléments du champ int32Values dans la valeur de la propriété du véhicule. |
INT64 | 0x00500000 | Propriété Long, utilise le premier élément du champ int64Values dans la valeur de la propriété du véhicule. |
INT64_VEC | 0x00510000 | La propriété Long[] utilise les éléments du champ int64Values dans la valeur de la propriété du véhicule. |
FLOAT | 0x00600000 | Propriété flottante, qui utilise le premier élément du champ floatValues dans la valeur de la propriété de véhicule. |
FLOAT_VEC | 0x00610000 | La propriété Float[] utilise les éléments du champ floatValues dans la valeur de la propriété du véhicule. |
BYTES | 0x00700000 | La propriété byte[] utilise les éléments du champ byteValues dans la valeur de la propriété du véhicule. |
MIXTE | 0x00e00000 | Propriété de type mixte. Toute combinaison de types scalaires ou vectoriels. Le format exact doit être fourni dans le tableau de configuration de la propriété.
Pour les propriétés de type MIXED du fournisseur, configArray doit être formaté selon la structure suivante:
Par exemple, |
Configuration de l'ID de zone
Chaque configuration de propriété peut également contenir une liste de configurations d'ID de zone. Cette liste est facultative pour les propriétés globales et obligatoire pour les propriétés zonées (propriétés avec plusieurs zones compatibles). Chaque configuration d'identifiant de zone comporte les champs suivants.
Champ | Description |
---|---|
areaId |
ID de cette zone. Consultez la section ID de zone. |
minInt32Value et maxInt32Value |
|
minInt64Value et maxInt64Value |
|
minFloatValue et maxFloatValue |
|
(Nouveauté d'Android 14)supportedEnumValues |
|
Types de zones
Définis comme énumérations dans VehicleArea.aidl
. Les types de zones pris en charge sont listés ci-dessous.
Type de zone | Valeur | Description |
---|---|---|
GÉNÉRAL | 0x01000000 | Cet établissement est un site international et ne comporte pas plusieurs zones. |
WINDOW | 0x03000000 | Zone basée sur les fenêtres, utilise l'énumération VehicleAreaWindow . |
MIRROR | 0x04000000 | Aire basée sur des miroirs, utilise l'énumération VehicleAreaMirror . |
SEAT | 0x05000000 | Zone basée sur le nombre de sièges, utilise l'énumération VehicleAreaSeat . |
DOOR | 0x06000000 | Zone basée sur les portes, utilise l'énumération VehicleAreaDoor . |
ROUE | 0x07000000 | Zone basée sur les roues, utilise l'énumération VehicleAreaWheel . |
Chaque propriété zonée doit utiliser un type d'espace prédéfini. Chaque type d'aire possède un ensemble d'indicateurs définis dans une énumération pour le type d'aire. Par exemple, la zone SEAT définit les énumérations VehicleAreaSeat
:
ROW_1_LEFT = 0x0001
ROW_1_CENTER = 0x0002
ROW_1_RIGHT = 0x0004
ROW_2_LEFT = 0x0010
ROW_2_CENTER = 0x0020
ROW_2_RIGHT = 0x0040
ROW_3_LEFT = 0x0100
...
ID de zone
Les propriétés zonées sont adressées à l'aide d'ID de zone. Chaque propriété zonée peut prendre en charge un ou plusieurs ID de zone. Un ID de zone se compose d'un ou de plusieurs indicateurs de son énumération respective. Par exemple, une propriété utilisant VehicleAreaSeat
peut utiliser les ID de zone suivants:
Article | Description |
---|---|
ROW_1_LEFT | ROW_1_RIGHT |
L'ID de zone s'applique aux deux sièges avant. |
ROW_2_LEFT |
S'applique uniquement au siège arrière gauche. |
ROW_2_RIGHT |
S'applique uniquement au siège arrière droit. |
Pour en savoir plus, consultez CVC.