Setiap properti yang didukung ditentukan oleh konfigurasi properti yang ditentukan melalui struktur VehiclePropConfig
dan memiliki bidang berikut.
Bidang | Keterangan |
---|---|
prop | ID properti. Ini harus berupa salah satu properti sistem yang ditentukan dari Properti Sistem yang Didukung atau properti vendor. ID properti dibuat menggunakan bit-atau bidang berikut (kanan ke kiri):
Misalnya, |
access | Mode akses untuk properti. Harus berupa salah satu dari READ , WRITE , atau READ_WRITE . Ini harus sama dengan mode akses yang ditentukan dalam Properti Sistem yang Didukung . |
changeMode |
|
configArray | Array opsional untuk memuat konfigurasi spesifik properti. Bisa kosong. |
configString | String opsional untuk memuat konfigurasi spesifik properti. Bisa kosong. |
minSampleRate dan maxSampleRate Tingkat sampel minimum dan maksimum yang didukung untuk properti berkelanjutan. Tidak digunakan jika properti tidak kontinu. |
Jenis properti
Didefinisikan sebagai enum di VehiclePropertyType.aidl
. Tipe properti yang didukung tercantum dalam tabel berikut.
Jenis properti | Nilai | Keterangan |
---|---|---|
RANGKAIAN | 0x00100000 | Properti string, menggunakan bidang stringValue di Nilai Properti Kendaraan. |
BOOLEAN | 0x00200000 | Properti Boolean, menggunakan elemen pertama di bidang int32Values di nilai properti Kendaraan . 0 berarti false , None 0 berarti true . |
INT32 | 0x00400000 | Properti bilangan bulat, menggunakan elemen pertama di bidang int32Values di nilai properti Kendaraan . |
INT32_VEC | 0x00410000 | Properti Integer[], menggunakan elemen di bidang int32Values di nilai properti Kendaraan . |
INT64 | 0x00500000 | Properti panjang, menggunakan elemen pertama di bidang int64Values di nilai properti Kendaraan . |
INT64_VEC | 0x00510000 | Properti Long[] , menggunakan elemen di bidang int64Values di nilai properti Kendaraan . |
MENGAMBANG | 0x00600000 | Properti float, menggunakan elemen pertama di bidang floatValues di nilai properti Kendaraan . |
FLOAT_VEC | 0x00610000 | Properti Float[], menggunakan elemen di bidang floatValues di nilai properti Kendaraan . |
BYTE | 0x00700000 | properti byte[], menggunakan elemen dalam bidang byteValues di nilai properti Kendaraan . |
CAMPURAN | 0x00e00000 | Properti tipe campuran. Kombinasi tipe skalar atau vektor apa pun. Format persisnya harus disediakan dalam array config di konfigurasi properti. Untuk properti tipe vendor MIXED, configArray perlu diformat dalam struktur ini:
Misalnya, |
Konfigurasi ID Area
Setiap konfigurasi properti juga dapat berisi daftar konfigurasi ID area. Daftar ini bersifat opsional untuk properti global dan diperlukan untuk properti yang dikategorikan (properti dengan beberapa area yang didukung). Setiap konfigurasi ID area memiliki bidang berikut.
Bidang | Keterangan |
---|---|
areaId | ID untuk area ini. Lihat ID Area . |
minInt32Value dan maxInt32Value |
|
minInt64Value dan maxInt64Value |
|
minFloatValue dan maxFloatValue |
|
( Baru di Android 14 )supportedEnumValues |
|
Tipe wilayah
Didefinisikan sebagai enum di VehicleArea.aidl
. Jenis area yang didukung tercantum di bawah ini.
Tipe wilayah | Nilai | Keterangan |
---|---|---|
GLOBAL | 0x01000000 | Properti ini adalah properti global dan tidak memiliki banyak area. |
JENDELA | 0x03000000 | Area berdasarkan windows, menggunakan enum VehicleAreaWindow . |
CERMIN | 0x04000000 | Area berdasarkan cermin, menggunakan enum VehicleAreaMirror . |
KURSI | 0x05000000 | Area berdasarkan tempat duduk, menggunakan enum VehicleAreaSeat . |
PINTU | 0x06000000 | Area berdasarkan pintu, menggunakan enum VehicleAreaDoor . |
RODA | 0x07000000 | Area berdasarkan roda, menggunakan enum VehicleAreaWheel . |
Setiap properti yang dikategorikan harus menggunakan tipe area yang telah ditentukan sebelumnya. Setiap tipe area memiliki sekumpulan bendera bit yang ditentukan dalam enum untuk tipe area tersebut. Misalnya, area SEAT mendefinisikan enum 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 Wilayah
Properti yang dikategorikan ditangani melalui ID Area. Setiap properti yang dikategorikan dapat mendukung satu atau lebih ID Area. ID Area terdiri dari satu atau lebih bendera dari enumnya masing-masing. Misalnya, properti yang menggunakan VehicleAreaSeat
mungkin menggunakan ID Area berikut:
Barang | Keterangan |
---|---|
ROW_1_LEFT | ROW_1_RIGHT | ID Area berlaku untuk kedua kursi depan. |
ROW_2_LEFT | Hanya berlaku untuk jok kiri belakang. | ROW_2_RIGHT | Hanya berlaku untuk jok kanan belakang. |
Untuk mempelajari lebih lanjut, lihat HVAC .