• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright (C) 2023 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.telephony.satellite.stub;
18 
19 import android.telephony.satellite.stub.NtnSignalStrength;
20 import android.telephony.satellite.stub.NTRadioTechnology;
21 import android.telephony.satellite.stub.PointingInfo;
22 import android.telephony.satellite.stub.SatelliteCapabilities;
23 import android.telephony.satellite.stub.SatelliteDatagram;
24 import android.telephony.satellite.stub.SatelliteModemState;
25 
26 /**
27  * {@hide}
28  */
29 oneway interface ISatelliteListener {
30     /**
31      * Indicates that new datagrams have been received on the device.
32      *
33      * @param datagram New datagram that was received.
34      * @param pendingCount Number of additional datagrams yet to be received.
35      */
onSatelliteDatagramReceived(in SatelliteDatagram datagram, in int pendingCount)36     void onSatelliteDatagramReceived(in SatelliteDatagram datagram, in int pendingCount);
37 
38     /**
39      * Indicates that the satellite has pending datagrams for the device to be pulled.
40      */
onPendingDatagrams()41     void onPendingDatagrams();
42 
43     /**
44      * Indicates that the satellite pointing input has changed.
45      *
46      * @param pointingInfo The current pointing info.
47      */
onSatellitePositionChanged(in PointingInfo pointingInfo)48     void onSatellitePositionChanged(in PointingInfo pointingInfo);
49 
50     /**
51      * Indicates that the satellite modem state has changed.
52      *
53      * @param state The current satellite modem state.
54      */
onSatelliteModemStateChanged(in SatelliteModemState state)55     void onSatelliteModemStateChanged(in SatelliteModemState state);
56 
57     /**
58      * Called when NTN signal strength changes.
59      *
60      * @param ntnSignalStrength The new NTN signal strength.
61      */
onNtnSignalStrengthChanged(in NtnSignalStrength ntnSignalStrength)62     void onNtnSignalStrengthChanged(in NtnSignalStrength ntnSignalStrength);
63 
64     /**
65      * Called when satellite capabilities of the satellite service have changed.
66      *
67      * @param SatelliteCapabilities The current satellite capabilities.
68      */
onSatelliteCapabilitiesChanged(in SatelliteCapabilities capabilities)69     void onSatelliteCapabilitiesChanged(in SatelliteCapabilities capabilities);
70 
71     /**
72      * Called when supported state of satellite has changed
73      *
74      * @param supported True means satellite service is supported and false means it is not.
75      */
onSatelliteSupportedStateChanged(in boolean supported)76     void onSatelliteSupportedStateChanged(in boolean supported);
77 
78     /**
79      * Indicates that the satellite registration failed with following failure code
80      *
81      * @param causeCode the primary failure cause code of the procedure.
82      *        For LTE (EMM), cause codes are TS 24.301 Sec 9.9.3.9
83      */
onRegistrationFailure(in int causeCode)84     void onRegistrationFailure(in int causeCode);
85 
86     /**
87      * Modem can send the callback with available for either in service or limited service.
88      *
89      * @param isAvailable True means there's terrestrial network and false means there's not.
90      */
onTerrestrialNetworkAvailableChanged(in boolean isAvailable)91     void onTerrestrialNetworkAvailableChanged(in boolean isAvailable);
92 }
93