1/*
2 * Copyright (c) 2023 Huawei Device Co., Ltd.
3 * Licensed under the Apache License, Version 2.0 (the "License");
4 * you may not use this file except in compliance with the License.
5 * You may obtain a copy of the License at
6 *
7 *     http://www.apache.org/licenses/LICENSE-2.0
8 *
9 * Unless required by applicable law or agreed to in writing, software
10 * distributed under the License is distributed on an "AS IS" BASIS,
11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 * See the License for the specific language governing permissions and
13 * limitations under the License.
14 */
15
16#ifndef OHOS_HDI_RIL_V1_1_IRIL_H
17#define OHOS_HDI_RIL_V1_1_IRIL_H
18
19#include <stdint.h>
20#include <string>
21#include <hdf_base.h>
22#include <hdi_base.h>
23#include "ril/v1_1/iril_callback.h"
24#include "ril/v1_1/types.h"
25
26#ifndef HDI_BUFF_MAX_SIZE
27#define HDI_BUFF_MAX_SIZE (1024 * 200)
28#endif
29
30#ifndef HDI_CHECK_VALUE_RETURN
31#define HDI_CHECK_VALUE_RETURN(lv, compare, rv, ret) do { \
32    if ((lv) compare (rv)) { \
33        return ret; \
34    } \
35} while (false)
36#endif
37
38#ifndef HDI_CHECK_VALUE_RET_GOTO
39#define HDI_CHECK_VALUE_RET_GOTO(lv, compare, rv, ret, value, table) do { \
40    if ((lv) compare (rv)) { \
41        ret = value; \
42        goto table; \
43    } \
44} while (false)
45#endif
46
47namespace OHOS {
48namespace HDI {
49namespace Ril {
50namespace V1_1 {
51using namespace OHOS;
52using namespace OHOS::HDI;
53
54enum {
55    CMD_RIL_GET_VERSION = 0,
56    CMD_RIL_SET_CALLBACK = 1,
57    CMD_RIL_SET_EMERGENCY_CALL_LIST = 2,
58    CMD_RIL_GET_EMERGENCY_CALL_LIST = 3,
59    CMD_RIL_GET_CALL_LIST = 4,
60    CMD_RIL_DIAL = 5,
61    CMD_RIL_REJECT = 6,
62    CMD_RIL_HANGUP = 7,
63    CMD_RIL_ANSWER = 8,
64    CMD_RIL_HOLD_CALL = 9,
65    CMD_RIL_UN_HOLD_CALL = 10,
66    CMD_RIL_SWITCH_CALL = 11,
67    CMD_RIL_COMBINE_CONFERENCE = 12,
68    CMD_RIL_SEPARATE_CONFERENCE = 13,
69    CMD_RIL_GET_CALL_WAITING = 14,
70    CMD_RIL_SET_CALL_WAITING = 15,
71    CMD_RIL_GET_CALL_TRANSFER_INFO = 16,
72    CMD_RIL_SET_CALL_TRANSFER_INFO = 17,
73    CMD_RIL_GET_CALL_RESTRICTION = 18,
74    CMD_RIL_SET_CALL_RESTRICTION = 19,
75    CMD_RIL_GET_CLIP = 20,
76    CMD_RIL_SET_CLIP = 21,
77    CMD_RIL_GET_CLIR = 22,
78    CMD_RIL_SET_CLIR = 23,
79    CMD_RIL_SET_CALL_PREFERENCE_MODE = 24,
80    CMD_RIL_GET_CALL_PREFERENCE_MODE = 25,
81    CMD_RIL_SET_USSD = 26,
82    CMD_RIL_CLOSE_UN_FINISHED_USSD = 27,
83    CMD_RIL_GET_USSD = 28,
84    CMD_RIL_SET_MUTE = 29,
85    CMD_RIL_GET_MUTE = 30,
86    CMD_RIL_GET_CALL_FAIL_REASON = 31,
87    CMD_RIL_CALL_SUPPLEMENT = 32,
88    CMD_RIL_SEND_DTMF = 33,
89    CMD_RIL_START_DTMF = 34,
90    CMD_RIL_STOP_DTMF = 35,
91    CMD_RIL_SET_BARRING_PASSWORD = 36,
92    CMD_RIL_SET_VONR_SWITCH = 37,
93    CMD_RIL_ACTIVATE_PDP_CONTEXT = 38,
94    CMD_RIL_DEACTIVATE_PDP_CONTEXT = 39,
95    CMD_RIL_GET_PDP_CONTEXT_LIST = 40,
96    CMD_RIL_SET_INIT_APN_INFO = 41,
97    CMD_RIL_GET_LINK_BANDWIDTH_INFO = 42,
98    CMD_RIL_GET_LINK_CAPABILITY = 43,
99    CMD_RIL_SET_LINK_BANDWIDTH_REPORTING_RULE = 44,
100    CMD_RIL_SET_DATA_PERMITTED = 45,
101    CMD_RIL_SET_DATA_PROFILE_INFO = 46,
102    CMD_RIL_SEND_DATA_PERFORMANCE_MODE = 47,
103    CMD_RIL_SEND_DATA_SLEEP_MODE = 48,
104    CMD_RIL_SET_RADIO_STATE = 49,
105    CMD_RIL_GET_RADIO_STATE = 50,
106    CMD_RIL_GET_IMEI = 51,
107    CMD_RIL_GET_MEID = 52,
108    CMD_RIL_GET_VOICE_RADIO_TECHNOLOGY = 53,
109    CMD_RIL_GET_BASEBAND_VERSION = 54,
110    CMD_RIL_SHUT_DOWN = 55,
111    CMD_RIL_GET_SIM_I_O = 56,
112    CMD_RIL_GET_SIM_STATUS = 57,
113    CMD_RIL_GET_IMSI = 58,
114    CMD_RIL_GET_SIM_LOCK_STATUS = 59,
115    CMD_RIL_SET_SIM_LOCK = 60,
116    CMD_RIL_CHANGE_SIM_PASSWORD = 61,
117    CMD_RIL_UNLOCK_PIN = 62,
118    CMD_RIL_UNLOCK_PUK = 63,
119    CMD_RIL_UNLOCK_PIN2 = 64,
120    CMD_RIL_UNLOCK_PUK2 = 65,
121    CMD_RIL_SET_ACTIVE_SIM = 66,
122    CMD_RIL_SIM_STK_SEND_TERMINAL_RESPONSE = 67,
123    CMD_RIL_SIM_STK_SEND_ENVELOPE = 68,
124    CMD_RIL_SIM_STK_SEND_CALL_SETUP_REQUEST_RESULT = 69,
125    CMD_RIL_SIM_STK_IS_READY = 70,
126    CMD_RIL_GET_RADIO_PROTOCOL = 71,
127    CMD_RIL_SET_RADIO_PROTOCOL = 72,
128    CMD_RIL_SIM_OPEN_LOGICAL_CHANNEL = 73,
129    CMD_RIL_SIM_CLOSE_LOGICAL_CHANNEL = 74,
130    CMD_RIL_SIM_TRANSMIT_APDU_LOGICAL_CHANNEL = 75,
131    CMD_RIL_SIM_TRANSMIT_APDU_BASIC_CHANNEL = 76,
132    CMD_RIL_SIM_AUTHENTICATION = 77,
133    CMD_RIL_UNLOCK_SIM_LOCK = 78,
134    CMD_RIL_GET_SIGNAL_STRENGTH = 79,
135    CMD_RIL_GET_CS_REG_STATUS = 80,
136    CMD_RIL_GET_PS_REG_STATUS = 81,
137    CMD_RIL_GET_OPERATOR_INFO = 82,
138    CMD_RIL_GET_NETWORK_SEARCH_INFORMATION = 83,
139    CMD_RIL_GET_NETWORK_SELECTION_MODE = 84,
140    CMD_RIL_SET_NETWORK_SELECTION_MODE = 85,
141    CMD_RIL_GET_NEIGHBORING_CELL_INFO_LIST = 86,
142    CMD_RIL_GET_CURRENT_CELL_INFO = 87,
143    CMD_RIL_SET_PREFERRED_NETWORK = 88,
144    CMD_RIL_GET_PREFERRED_NETWORK = 89,
145    CMD_RIL_GET_PHYSICAL_CHANNEL_CONFIG = 90,
146    CMD_RIL_SET_LOCATE_UPDATES = 91,
147    CMD_RIL_SET_NOTIFICATION_FILTER = 92,
148    CMD_RIL_SET_DEVICE_STATE = 93,
149    CMD_RIL_SEND_GSM_SMS = 94,
150    CMD_RIL_SEND_CDMA_SMS = 95,
151    CMD_RIL_ADD_SIM_MESSAGE = 96,
152    CMD_RIL_DEL_SIM_MESSAGE = 97,
153    CMD_RIL_UPDATE_SIM_MESSAGE = 98,
154    CMD_RIL_ADD_CDMA_SIM_MESSAGE = 99,
155    CMD_RIL_DEL_CDMA_SIM_MESSAGE = 100,
156    CMD_RIL_UPDATE_CDMA_SIM_MESSAGE = 101,
157    CMD_RIL_SET_SMSC_ADDR = 102,
158    CMD_RIL_GET_SMSC_ADDR = 103,
159    CMD_RIL_SET_C_B_CONFIG = 104,
160    CMD_RIL_GET_C_B_CONFIG = 105,
161    CMD_RIL_SET_CDMA_C_B_CONFIG = 106,
162    CMD_RIL_GET_CDMA_C_B_CONFIG = 107,
163    CMD_RIL_SEND_SMS_MORE_MODE = 108,
164    CMD_RIL_SEND_SMS_ACK = 109,
165    CMD_RIL_SEND_RIL_ACK = 110,
166    CMD_RIL_GET_RRC_CONNECTION_STATE = 111,
167    CMD_RIL_SET_NR_OPTION_MODE = 112,
168    CMD_RIL_GET_NR_OPTION_MODE = 113,
169};
170
171class IRil : public HdiBase {
172public:
173    DECLARE_HDI_DESCRIPTOR(u"ohos.hdi.ril.v1_1.IRil");
174
175    virtual ~IRil() = default;
176
177    static sptr<OHOS::HDI::Ril::V1_1::IRil> Get(bool isStub = false);
178    static sptr<OHOS::HDI::Ril::V1_1::IRil> Get(const std::string &serviceName, bool isStub = false);
179
180    virtual int32_t SetCallback(const sptr<OHOS::HDI::Ril::V1_1::IRilCallback>& rilCallback) = 0;
181
182    virtual int32_t SetEmergencyCallList(int32_t slotId, int32_t serialId,
183         const OHOS::HDI::Ril::V1_1::EmergencyInfoList& emergencyInfoList) = 0;
184
185    virtual int32_t GetEmergencyCallList(int32_t slotId, int32_t serialId) = 0;
186
187    virtual int32_t GetCallList(int32_t slotId, int32_t serialId) = 0;
188
189    virtual int32_t Dial(int32_t slotId, int32_t serialId, const OHOS::HDI::Ril::V1_1::DialInfo& dialInfo) = 0;
190
191    virtual int32_t Reject(int32_t slotId, int32_t serialId) = 0;
192
193    virtual int32_t Hangup(int32_t slotId, int32_t serialId, int32_t callId) = 0;
194
195    virtual int32_t Answer(int32_t slotId, int32_t serialId) = 0;
196
197    virtual int32_t HoldCall(int32_t slotId, int32_t serialId) = 0;
198
199    virtual int32_t UnHoldCall(int32_t slotId, int32_t serialId) = 0;
200
201    virtual int32_t SwitchCall(int32_t slotId, int32_t serialId) = 0;
202
203    virtual int32_t CombineConference(int32_t slotId, int32_t serialId, int32_t callType) = 0;
204
205    virtual int32_t SeparateConference(int32_t slotId, int32_t serialId, int32_t callId, int32_t callType) = 0;
206
207    virtual int32_t GetCallWaiting(int32_t slotId, int32_t serialId) = 0;
208
209    virtual int32_t SetCallWaiting(int32_t slotId, int32_t serialId, int32_t activate) = 0;
210
211    virtual int32_t GetCallTransferInfo(int32_t slotId, int32_t serialId, int32_t reason) = 0;
212
213    virtual int32_t SetCallTransferInfo(int32_t slotId, int32_t serialId,
214         const OHOS::HDI::Ril::V1_1::CallForwardSetInfo& callForwardSetInfo) = 0;
215
216    virtual int32_t GetCallRestriction(int32_t slotId, int32_t serialId, const std::string& fac) = 0;
217
218    virtual int32_t SetCallRestriction(int32_t slotId, int32_t serialId,
219         const OHOS::HDI::Ril::V1_1::CallRestrictionInfo& callRestrictionInfo) = 0;
220
221    virtual int32_t GetClip(int32_t slotId, int32_t serialId) = 0;
222
223    virtual int32_t SetClip(int32_t slotId, int32_t serialId, int32_t action) = 0;
224
225    virtual int32_t GetClir(int32_t slotId, int32_t serialId) = 0;
226
227    virtual int32_t SetClir(int32_t slotId, int32_t serialId, int32_t action) = 0;
228
229    virtual int32_t SetCallPreferenceMode(int32_t slotId, int32_t serialId, int32_t mode) = 0;
230
231    virtual int32_t GetCallPreferenceMode(int32_t slotId, int32_t serialId) = 0;
232
233    virtual int32_t SetUssd(int32_t slotId, int32_t serialId, const std::string& str) = 0;
234
235    virtual int32_t CloseUnFinishedUssd(int32_t slotId, int32_t serialId) = 0;
236
237    virtual int32_t GetUssd(int32_t slotId, int32_t serialId) = 0;
238
239    virtual int32_t SetMute(int32_t slotId, int32_t serialId, int32_t mute) = 0;
240
241    virtual int32_t GetMute(int32_t slotId, int32_t serialId) = 0;
242
243    virtual int32_t GetCallFailReason(int32_t slotId, int32_t serialId) = 0;
244
245    virtual int32_t CallSupplement(int32_t slotId, int32_t serialId, int32_t type) = 0;
246
247    virtual int32_t SendDtmf(int32_t slotId, int32_t serialId, const OHOS::HDI::Ril::V1_1::DtmfInfo& dtmfInfo) = 0;
248
249    virtual int32_t StartDtmf(int32_t slotId, int32_t serialId, const OHOS::HDI::Ril::V1_1::DtmfInfo& dtmfInfo) = 0;
250
251    virtual int32_t StopDtmf(int32_t slotId, int32_t serialId, const OHOS::HDI::Ril::V1_1::DtmfInfo& dtmfInfo) = 0;
252
253    virtual int32_t SetBarringPassword(int32_t slotId, int32_t serialId,
254         const OHOS::HDI::Ril::V1_1::SetBarringInfo& setBarringInfo) = 0;
255
256    virtual int32_t SetVonrSwitch(int32_t slotId, int32_t serialId, int32_t status) = 0;
257
258    virtual int32_t ActivatePdpContext(int32_t slotId, int32_t serialId,
259         const OHOS::HDI::Ril::V1_1::DataCallInfo& dataCallInfo) = 0;
260
261    virtual int32_t DeactivatePdpContext(int32_t slotId, int32_t serialId,
262         const OHOS::HDI::Ril::V1_1::UniInfo& uniInfo) = 0;
263
264    virtual int32_t GetPdpContextList(int32_t slotId, int32_t serialId,
265         const OHOS::HDI::Ril::V1_1::UniInfo& uniInfo) = 0;
266
267    virtual int32_t SetInitApnInfo(int32_t slotId, int32_t serialId,
268         const OHOS::HDI::Ril::V1_1::DataProfileDataInfo& dataProfileDataInfo) = 0;
269
270    virtual int32_t GetLinkBandwidthInfo(int32_t slotId, int32_t serialId, int32_t cid) = 0;
271
272    virtual int32_t GetLinkCapability(int32_t slotId, int32_t serialId) = 0;
273
274    virtual int32_t SetLinkBandwidthReportingRule(int32_t slotId, int32_t serialId,
275         const OHOS::HDI::Ril::V1_1::DataLinkBandwidthReportingRule& dataLinkBandwidthReportingRule) = 0;
276
277    virtual int32_t SetDataPermitted(int32_t slotId, int32_t serialId, int32_t dataPermitted) = 0;
278
279    virtual int32_t SetDataProfileInfo(int32_t slotId, int32_t serialId,
280         const OHOS::HDI::Ril::V1_1::DataProfilesInfo& dataProfilesInfo) = 0;
281
282    virtual int32_t SendDataPerformanceMode(int32_t slotId, int32_t serialId,
283         const OHOS::HDI::Ril::V1_1::DataPerformanceInfo& dataPerformanceInfo) = 0;
284
285    virtual int32_t SendDataSleepMode(int32_t slotId, int32_t serialId,
286         const OHOS::HDI::Ril::V1_1::DataSleepInfo& dataSleepInfo) = 0;
287
288    virtual int32_t SetRadioState(int32_t slotId, int32_t serialId, int32_t fun, int32_t rst) = 0;
289
290    virtual int32_t GetRadioState(int32_t slotId, int32_t serialId) = 0;
291
292    virtual int32_t GetImei(int32_t slotId, int32_t serialId) = 0;
293
294    virtual int32_t GetMeid(int32_t slotId, int32_t serialId) = 0;
295
296    virtual int32_t GetVoiceRadioTechnology(int32_t slotId, int32_t serialId) = 0;
297
298    virtual int32_t GetBasebandVersion(int32_t slotId, int32_t serialId) = 0;
299
300    virtual int32_t ShutDown(int32_t slotId, int32_t serialId) = 0;
301
302    virtual int32_t GetSimIO(int32_t slotId, int32_t serialId, const OHOS::HDI::Ril::V1_1::SimIoRequestInfo& simIO) = 0;
303
304    virtual int32_t GetSimStatus(int32_t slotId, int32_t serialId) = 0;
305
306    virtual int32_t GetImsi(int32_t slotId, int32_t serialId) = 0;
307
308    virtual int32_t GetSimLockStatus(int32_t slotId, int32_t serialId,
309         const OHOS::HDI::Ril::V1_1::SimLockInfo& simLockInfo) = 0;
310
311    virtual int32_t SetSimLock(int32_t slotId, int32_t serialId,
312         const OHOS::HDI::Ril::V1_1::SimLockInfo& simLockInfo) = 0;
313
314    virtual int32_t ChangeSimPassword(int32_t slotId, int32_t serialId,
315         const OHOS::HDI::Ril::V1_1::SimPasswordInfo& simPassword) = 0;
316
317    virtual int32_t UnlockPin(int32_t slotId, int32_t serialId, const std::string& pin) = 0;
318
319    virtual int32_t UnlockPuk(int32_t slotId, int32_t serialId, const std::string& puk, const std::string& pin) = 0;
320
321    virtual int32_t UnlockPin2(int32_t slotId, int32_t serialId, const std::string& pin2) = 0;
322
323    virtual int32_t UnlockPuk2(int32_t slotId, int32_t serialId, const std::string& puk2, const std::string& pin2) = 0;
324
325    virtual int32_t SetActiveSim(int32_t slotId, int32_t serialId, int32_t index, int32_t enable) = 0;
326
327    virtual int32_t SimStkSendTerminalResponse(int32_t slotId, int32_t serialId, const std::string& strCmd) = 0;
328
329    virtual int32_t SimStkSendEnvelope(int32_t slotId, int32_t serialId, const std::string& strCmd) = 0;
330
331    virtual int32_t SimStkSendCallSetupRequestResult(int32_t slotId, int32_t serialId, int32_t accept) = 0;
332
333    virtual int32_t SimStkIsReady(int32_t slotId, int32_t serialId) = 0;
334
335    virtual int32_t GetRadioProtocol(int32_t slotId, int32_t serialId) = 0;
336
337    virtual int32_t SetRadioProtocol(int32_t slotId, int32_t serialId,
338         const OHOS::HDI::Ril::V1_1::RadioProtocol& radioProtocol) = 0;
339
340    virtual int32_t SimOpenLogicalChannel(int32_t slotId, int32_t serialId, const std::string& appID, int32_t p2) = 0;
341
342    virtual int32_t SimCloseLogicalChannel(int32_t slotId, int32_t serialId, int32_t channelId) = 0;
343
344    virtual int32_t SimTransmitApduLogicalChannel(int32_t slotId, int32_t serialId,
345         const OHOS::HDI::Ril::V1_1::ApduSimIORequestInfo& apduSimIO) = 0;
346
347    virtual int32_t SimTransmitApduBasicChannel(int32_t slotId, int32_t serialId,
348         const OHOS::HDI::Ril::V1_1::ApduSimIORequestInfo& apduSimIO) = 0;
349
350    virtual int32_t SimAuthentication(int32_t slotId, int32_t serialId,
351         const OHOS::HDI::Ril::V1_1::SimAuthenticationRequestInfo& simAuthInfo) = 0;
352
353    virtual int32_t UnlockSimLock(int32_t slotId, int32_t serialId, int32_t lockType, const std::string& key) = 0;
354
355    virtual int32_t GetSignalStrength(int32_t slotId, int32_t serialId) = 0;
356
357    virtual int32_t GetCsRegStatus(int32_t slotId, int32_t serialId) = 0;
358
359    virtual int32_t GetPsRegStatus(int32_t slotId, int32_t serialId) = 0;
360
361    virtual int32_t GetOperatorInfo(int32_t slotId, int32_t serialId) = 0;
362
363    virtual int32_t GetNetworkSearchInformation(int32_t slotId, int32_t serialId) = 0;
364
365    virtual int32_t GetNetworkSelectionMode(int32_t slotId, int32_t serialId) = 0;
366
367    virtual int32_t SetNetworkSelectionMode(int32_t slotId, int32_t serialId,
368         const OHOS::HDI::Ril::V1_1::SetNetworkModeInfo& networkModeInfo) = 0;
369
370    virtual int32_t GetNeighboringCellInfoList(int32_t slotId, int32_t serialId) = 0;
371
372    virtual int32_t GetCurrentCellInfo(int32_t slotId, int32_t serialId) = 0;
373
374    virtual int32_t SetPreferredNetwork(int32_t slotId, int32_t serialId, int32_t preferredNetworkType) = 0;
375
376    virtual int32_t GetPreferredNetwork(int32_t slotId, int32_t serialId) = 0;
377
378    virtual int32_t GetPhysicalChannelConfig(int32_t slotId, int32_t serialId) = 0;
379
380    virtual int32_t SetLocateUpdates(int32_t slotId, int32_t serialId, OHOS::HDI::Ril::V1_1::RilRegNotifyMode mode) = 0;
381
382    virtual int32_t SetNotificationFilter(int32_t slotId, int32_t serialId, int32_t newFilter) = 0;
383
384    virtual int32_t SetDeviceState(int32_t slotId, int32_t serialId, int32_t deviceStateType,
385         int32_t deviceStateOn) = 0;
386
387    virtual int32_t SendGsmSms(int32_t slotId, int32_t serialId,
388         const OHOS::HDI::Ril::V1_1::GsmSmsMessageInfo& gsmSmsMessageInfo) = 0;
389
390    virtual int32_t SendCdmaSms(int32_t slotId, int32_t serialId,
391         const OHOS::HDI::Ril::V1_1::SendCdmaSmsMessageInfo& cdmaSmsMessageInfo) = 0;
392
393    virtual int32_t AddSimMessage(int32_t slotId, int32_t serialId,
394         const OHOS::HDI::Ril::V1_1::SmsMessageIOInfo& gsmSmsMessageInfo) = 0;
395
396    virtual int32_t DelSimMessage(int32_t slotId, int32_t serialId, int32_t index) = 0;
397
398    virtual int32_t UpdateSimMessage(int32_t slotId, int32_t serialId,
399         const OHOS::HDI::Ril::V1_1::SmsMessageIOInfo& gsmSmsMessageInfo) = 0;
400
401    virtual int32_t AddCdmaSimMessage(int32_t slotId, int32_t serialId,
402         const OHOS::HDI::Ril::V1_1::SmsMessageIOInfo& cdmaSmsMessageInfo) = 0;
403
404    virtual int32_t DelCdmaSimMessage(int32_t slotId, int32_t serialId, int32_t index) = 0;
405
406    virtual int32_t UpdateCdmaSimMessage(int32_t slotId, int32_t serialId,
407         const OHOS::HDI::Ril::V1_1::SmsMessageIOInfo& cdmaSmsMessageInfo) = 0;
408
409    virtual int32_t SetSmscAddr(int32_t slotId, int32_t serialId,
410         const OHOS::HDI::Ril::V1_1::ServiceCenterAddress& serviceCenterAddress) = 0;
411
412    virtual int32_t GetSmscAddr(int32_t slotId, int32_t serialId) = 0;
413
414    virtual int32_t SetCBConfig(int32_t slotId, int32_t serialId,
415         const OHOS::HDI::Ril::V1_1::CBConfigInfo& cellBroadcastInfo) = 0;
416
417    virtual int32_t GetCBConfig(int32_t slotId, int32_t serialId) = 0;
418
419    virtual int32_t SetCdmaCBConfig(int32_t slotId, int32_t serialId,
420         const OHOS::HDI::Ril::V1_1::CdmaCBConfigInfoList& cdmaCBConfigInfoList) = 0;
421
422    virtual int32_t GetCdmaCBConfig(int32_t slotId, int32_t serialId) = 0;
423
424    virtual int32_t SendSmsMoreMode(int32_t slotId, int32_t serialId,
425         const OHOS::HDI::Ril::V1_1::GsmSmsMessageInfo& gsmSmsMessageInfo) = 0;
426
427    virtual int32_t SendSmsAck(int32_t slotId, int32_t serialId, const OHOS::HDI::Ril::V1_1::ModeData& modeData) = 0;
428
429    virtual int32_t SendRilAck() = 0;
430
431    virtual int32_t GetRrcConnectionState(int32_t slotId, int32_t serialId) = 0;
432
433    virtual int32_t SetNrOptionMode(int32_t slotId, int32_t serialId, int32_t mode) = 0;
434
435    virtual int32_t GetNrOptionMode(int32_t slotId, int32_t serialId) = 0;
436
437    virtual int32_t GetVersion(uint32_t& majorVer, uint32_t& minorVer)
438    {
439        majorVer = 1;
440        minorVer = 1;
441        return HDF_SUCCESS;
442    }
443
444    virtual bool IsProxy()
445    {
446        return false;
447    }
448
449    virtual const std::u16string GetDesc()
450    {
451        return metaDescriptor_;
452    }
453};
454} // V1_1
455} // Ril
456} // HDI
457} // OHOS
458
459#endif // OHOS_HDI_RIL_V1_1_IRIL_H
460
461