OSDN Git Service

release-request-ca4ad653-1655-436a-b65c-2527b02ae5f2-for-git_oc-mr1-release-4241196...
[android-x86/hardware-interfaces.git] / broadcastradio / 1.0 / ITunerCallback.hal
1 /*
2  * Copyright (C) 2016 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
17 package android.hardware.broadcastradio@1.0;
18
19
20 interface ITunerCallback {
21
22     /**
23      * Method called by the HAL when a HW failure occurs.
24      * The framework MUST close the ITuner interface and open a new one.
25      */
26     oneway hardwareFailure();
27
28     /**
29      * Method called by the HAL when a new configuration is applied
30      * in response to IDevice.openTuner() or ITuner.setConfiguration().
31      * @param result OK if the configuration has been applied,
32      *               INVALID_ARGUMENTS if not or TIMEOUT in case of time out.
33      * @param config A BandConfig structure describing the new configuration
34      *               applied.
35      */
36     oneway configChange(Result result, BandConfig config);
37
38     /**
39      * Method called by the HAL when a tuning operation completes
40      * following a step(), scan() or tune() command.
41      * @param result OK if tune succeeded or TIMEOUT in case of time out.
42      * @param info A ProgramInfo structure describing the tuned station.
43      */
44     oneway tuneComplete(Result result, ProgramInfo info);
45
46     /**
47      * Method called by the HAL when a frequency switch occurs.
48      * @param info A ProgramInfo structure describing the new tuned station.
49      */
50     oneway afSwitch(ProgramInfo info);
51
52     /**
53      * Method called by the HAL when the antenna connection state changes.
54      * @param connected True if the antenna is connected, false otherwise.
55      */
56     oneway antennaStateChange(bool connected);
57
58     /**
59      * Method called by the HAL when a traffic announcement starts or
60      * stops.
61      * @param active True if the announcement starts, false if it stops.
62      */
63     oneway trafficAnnouncement(bool active);
64
65     /**
66      * Method called by the HAL when an emergency announcement starts
67      * or stops.
68      * @param active True if the announcement starts, false if it stops.
69      */
70     oneway emergencyAnnouncement(bool active);
71
72     /**
73      * Method called by the HAL when metadata for current station
74      * are updated.
75      * @param channel The channel the metadata is associated with.
76      * @param subChannel The sub channel the metadata is associated with.
77      * @param metadata A list of all updated metada.
78      */
79     oneway newMetadata(uint32_t channel, uint32_t subChannel, vec<MetaData>  metadata);
80 };