blob: b71bf6c236779a5850dc22932923b81af28373eb [file] [log] [blame]
Chao Yanf2c109c2018-05-11 12:16:14 -07001/*
2 * Copyright (C) 2018 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 */
16package com.android.car.vehiclehal.test;
17
18import android.hardware.automotive.vehicle.V2_0.VehicleArea;
19import android.hardware.automotive.vehicle.V2_0.VehiclePropertyGroup;
20import android.hardware.automotive.vehicle.V2_0.VehiclePropertyType;
21import android.os.RemoteException;
22
23interface VhalEventGenerator {
24
25 /**
26 * The following property controls VHAL to start/stop linear fake data generation process.
27 * It must match kGenerateFakeDataControllingProperty that is defined in default VHAL
28 * implementation:
29 *
30 * hardware/interfaces/automotive/vehicle/2.0/default/impl/vhal_v2_0/DefaultConfig.h
31 */
32 int GENERATE_FAKE_DATA_CONTROLLING_PROPERTY = 0x0666
33 | VehiclePropertyGroup.VENDOR
34 | VehicleArea.GLOBAL
35 | VehiclePropertyType.MIXED;
36
37 // Command bits sent via GENERATE_FAKE_DATA_CONTROLLING_PROPERTY to control fake data generation
38 int CMD_START_LINEAR = 0; // Start linear fake data generation
39 int CMD_STOP_LINEAR = 1; // Stop linear fake data generation
40 int CMD_START_JSON = 2; // Start JSON-based fake data generation
41 int CMD_STOP_JSON = 3; // Stop JSON-based fake data generation
42
43 /**
44 * Asynchronous call to tell VHAL to start fake event generation. VHAL will start generating
45 * data after this call
46 *
47 * @throws RemoteException
48 */
49 void start() throws RemoteException;
50
51 /**
52 * Synchronous call to tell VHAL to stop fake event generation. VHAL should always stopped
53 * generating data after this call.
54 *
55 * @throws RemoteException
56 */
57 void stop() throws RemoteException;
58}