The HIDL VHAL interface is defined at 
  IVehicle.hal
  and provides these methods.
  
| Method | Description | 
|---|---|
| getAllPropConfigs()generates(vec<VehiclePropConfig>propConfigs);Lists the configuration of all properties supported by the VHAL. CarService uses supported properties only. | |
| ongetPropConfigs(vecgenerates(StatusCode status,vec<VehiclePropConfig> propConfigs);Returns the configuration of selected properties. | |
| set(VehiclePropValue propValue)generates(StatusCodestatus);Writes a value to a property. The result of the write is defined per property. | |
| subscribe(IVehicleCallback callback, vecgenerates(StatusCode status);Starts monitoring a property value change. | |
| unsubscribe(IVehicleCallback callback, int32_t propId)generates(StatusCode status);Stops monitoring a property value change for a previous subscribed property. | 
The HIDL VHAL uses these callback interfaces:
| Callback | Description | 
|---|---|
| oneway | onPropertyEvent(vecNotifies vehicle property's value change. Apply only to subscribed properties. | 
| oneway | onPropertySetError(StatusCode errorCode,int32_t propId,int32_tareaId);Returns async property set errors that can not be associated with a specific set operation. | 
