1 /**
2  * Copyright 2021, 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.media.tv.tuner;
18 
19 import android.media.tv.tuner.ITunerLnbCallback;
20 
21 /**
22  * Tuner Lnb interface handles Lnb related operations.
23  *
24  * {@hide}
25  */
26 interface ITunerLnb {
27     /**
28      * Set the lnb callback.
29      */
setCallback(in ITunerLnbCallback tunerLnbCallback)30     void setCallback(in ITunerLnbCallback tunerLnbCallback);
31 
32     /**
33      * Set the lnb's power voltage.
34      */
setVoltage(in int voltage)35     void setVoltage(in int voltage);
36 
37     /**
38      * Set the lnb's tone mode.
39      */
setTone(in int tone)40     void setTone(in int tone);
41 
42     /**
43      * Select the lnb's position.
44      */
setSatellitePosition(in int position)45     void setSatellitePosition(in int position);
46 
47     /**
48      * Sends DiSEqC (Digital Satellite Equipment Control) message.
49      */
sendDiseqcMessage(in byte[] diseqcMessage)50     void sendDiseqcMessage(in byte[] diseqcMessage);
51 
52     /**
53      * Releases the LNB instance.
54      */
close()55     void close();
56 }
57