• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright (C) 2021-2022 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 CELLULAR_CALL_STUB_H
17 #define CELLULAR_CALL_STUB_H
18 
19 #include <map>
20 #include "cellular_call_data_struct.h"
21 #include "cellular_call_interface.h"
22 #include "telephony_log_wrapper.h"
23 #include "iremote_stub.h"
24 
25 namespace OHOS {
26 namespace Telephony {
27 class CellularCallStub : public IRemoteStub<CellularCallInterface> {
28 public:
29     /**
30      * CellularCallStub Constructors
31      */
32     CellularCallStub();
33 
34     /**
35      * ~CellularCallStub Destructor
36      */
37     virtual ~CellularCallStub();
38 
39     /**
40      * OnRemoteRequest
41      *
42      * @param code
43      * @param data
44      * @param reply
45      * @param option
46      * @return Returns TELEPHONY_SUCCESS on success, others on failure.
47      */
48     virtual int32_t OnRemoteRequest(
49         uint32_t code, MessageParcel &data, MessageParcel &reply, MessageOption &option) override;
50 
51 private:
52     /**
53      * On Dial Inner
54      *
55      * @param data send data
56      * @param reply Received data
57      * @return Returns TELEPHONY_SUCCESS on success, others on failure.
58      */
59     int32_t OnDialInner(MessageParcel &data, MessageParcel &reply);
60 
61     /**
62      * On HangUp Inner
63      *
64      * @param data send data
65      * @param reply Received data
66      * @return Returns TELEPHONY_SUCCESS on success, others on failure.
67      */
68     int32_t OnHangUpInner(MessageParcel &data, MessageParcel &reply);
69 
70     /**
71      * On Reject Inner
72      *
73      * @param data send data
74      * @param reply Received data
75      * @return Returns TELEPHONY_SUCCESS on success, others on failure.
76      */
77     int32_t OnRejectInner(MessageParcel &data, MessageParcel &reply);
78 
79     /**
80      * On Answer Inner
81      *
82      * @param data send data
83      * @param reply Received data
84      * @return Returns TELEPHONY_SUCCESS on success, others on failure.
85      */
86     int32_t OnAnswerInner(MessageParcel &data, MessageParcel &reply);
87 
88     /**
89      * On Is Emergency Call Inner
90      *
91      * @param data  send data
92      * @param reply Received data
93      * @return Returns TELEPHONY_SUCCESS on success, others on failure.
94      */
95     int32_t OnIsEmergencyPhoneNumberInner(MessageParcel &data, MessageParcel &reply);
96 
97     /**
98      * On HoldCall Inner
99      *
100      * @param data send data
101      * @param reply Received data
102      * @return Returns TELEPHONY_SUCCESS on success, others on failure.
103      */
104     int32_t OnHoldCallInner(MessageParcel &data, MessageParcel &reply);
105 
106     /**
107      * On UnHoldCall Inner
108      *
109      * @param data send data
110      * @param reply Received data
111      * @return Returns TELEPHONY_SUCCESS on success, others on failure.
112      */
113     int32_t OnUnHoldCallInner(MessageParcel &data, MessageParcel &reply);
114 
115     /**
116      * On SwitchCall Inner
117      *
118      * @param data send data
119      * @param reply Received data
120      * @return Returns TELEPHONY_SUCCESS on success, others on failure.
121      */
122     int32_t OnSwitchCallInner(MessageParcel &data, MessageParcel &reply);
123 
124     /**
125      * On CombineConference Inner
126      *
127      * @param data send data
128      * @param reply Received data
129      * @return Returns TELEPHONY_SUCCESS on success, others on failure.
130      */
131     int32_t OnCombineConferenceInner(MessageParcel &data, MessageParcel &reply);
132 
133     /**
134      * On SeparateConference Inner
135      *
136      * @param data send data
137      * @param reply Received data
138      * @return Returns TELEPHONY_SUCCESS on success, others on failure.
139      */
140     int32_t OnSeparateConferenceInner(MessageParcel &data, MessageParcel &reply);
141 
142     /**
143      * On InviteToConference Inner
144      *
145      * @param data send data
146      * @param reply Received data
147      * @return Returns TELEPHONY_SUCCESS on success, others on failure.
148      */
149     int32_t OnInviteToConferenceInner(MessageParcel &data, MessageParcel &reply);
150 
151     /**
152      * On KickOutFromConference Inner
153      *
154      * @param data send data
155      * @param reply Received data
156      * @return Returns TELEPHONY_SUCCESS on success, others on failure.
157      */
158     int32_t OnKickOutFromConferenceInner(MessageParcel &data, MessageParcel &reply);
159 
160     /**
161      * On HangUpAllConnection Inner
162      *
163      * @param data send data
164      * @param reply Received data
165      * @return Returns TELEPHONY_SUCCESS on success, others on failure.
166      */
167     int32_t OnHangUpAllConnectionInner(MessageParcel &data, MessageParcel &reply);
168 
169     /**
170      * On UpdateImsCallMode Inner
171      *
172      * @param data send data
173      * @param reply Received data
174      * @return Returns TELEPHONY_SUCCESS on success, others on failure.
175      */
176     int32_t OnUpdateCallMediaModeInner(MessageParcel &data, MessageParcel &reply);
177 
178     /**
179      * On Register Call Back Inner
180      *
181      * @param data send data
182      * @param reply Received data
183      * @return Returns TELEPHONY_SUCCESS on success, others on failure.
184      */
185     int32_t OnRegisterCallBackInner(MessageParcel &data, MessageParcel &reply);
186 
187     /**
188      * On UnRegister Call Back Inner
189      *
190      * @param data send data
191      * @param reply Received data
192      * @return Returns TELEPHONY_SUCCESS on success, others on failure.
193      */
194     int32_t OnUnRegisterCallBackInner(MessageParcel &data, MessageParcel &reply);
195 
196     /**
197      * On start Dtmf Inner
198      *
199      * @param data send data
200      * @param reply Received data
201      * @return Returns TELEPHONY_SUCCESS on success, others on failure.
202      */
203     int32_t OnStartDtmfInner(MessageParcel &data, MessageParcel &reply);
204 
205     /**
206      * On stop Dtmf Inner
207      *
208      * @param data send data
209      * @param reply Received data
210      * @return Returns TELEPHONY_SUCCESS on success, others on failure.
211      */
212     int32_t OnStopDtmfInner(MessageParcel &data, MessageParcel &reply);
213 
214     /**
215      * On send Dtmf Inner
216      *
217      * @param data send data
218      * @param reply Received data
219      * @return Returns TELEPHONY_SUCCESS on success, others on failure.
220      */
221     int32_t OnSendDtmfInner(MessageParcel &data, MessageParcel &reply);
222 
223     /**
224      * On start Rtt Inner
225      *
226      * @param data send data
227      * @param reply Received data
228      * @return Returns TELEPHONY_SUCCESS on success, others on failure.
229      */
230     int32_t OnStartRttInner(MessageParcel &data, MessageParcel &reply);
231 
232     /**
233      * On stop Rtt Inner
234      *
235      * @param data send data
236      * @param reply Received data
237      * @return Returns TELEPHONY_SUCCESS on success, others on failure.
238      */
239     int32_t OnStopRttInner(MessageParcel &data, MessageParcel &reply);
240 
241     /**
242      * On Set Call Transfer Inner
243      *
244      * @param data send data
245      * @param reply Received data
246      * @return Returns TELEPHONY_SUCCESS on success, others on failure.
247      */
248     int32_t OnSetCallTransferInner(MessageParcel &data, MessageParcel &reply);
249 
250     /**
251      * On Inquire Call Transfer Inner
252      *
253      * @param data send data
254      * @param reply Received data
255      * @return Returns TELEPHONY_SUCCESS on success, others on failure.
256      */
257     int32_t OnGetCallTransferInner(MessageParcel &data, MessageParcel &reply);
258 
259     /**
260      * On Set Call Waiting
261      *
262      * @param data  send data
263      * @param reply Received data
264      * @return Returns TELEPHONY_SUCCESS on success, others on failure.
265      */
266     int32_t OnSetCallWaitingInner(MessageParcel &data, MessageParcel &reply);
267 
268     /**
269      * On Inquire Call Waiting
270      *
271      * @param data  send data
272      * @param reply Received data
273      * @return Returns TELEPHONY_SUCCESS on success, others on failure.
274      */
275     int32_t OnGetCallWaitingInner(MessageParcel &data, MessageParcel &reply);
276 
277     /**
278      * On Set Call Restriction
279      *
280      * @param data send data
281      * @param reply Received data
282      * @return Returns TELEPHONY_SUCCESS on success, others on failure.
283      */
284     int32_t OnSetCallRestrictionInner(MessageParcel &data, MessageParcel &reply);
285 
286     /**
287      * On Get Call Restriction
288      *
289      * @param data send data
290      * @param reply Received data
291      * @return Returns TELEPHONY_SUCCESS on success, others on failure.
292      */
293     int32_t OnGetCallRestrictionInner(MessageParcel &data, MessageParcel &reply);
294 
295     /**
296      * On Set Domain Preference Mode
297      *
298      * @param data send data
299      * @param reply Received data
300      * @return Returns TELEPHONY_SUCCESS on success, others on failure.
301      */
302     int32_t OnSetDomainPreferenceModeInner(MessageParcel &data, MessageParcel &reply);
303 
304     /**
305      * On Get Domain Preference Mode
306      *
307      * @param data send data
308      * @param reply Received data
309      * @return Returns TELEPHONY_SUCCESS on success, others on failure.
310      */
311     int32_t OnGetDomainPreferenceModeInner(MessageParcel &data, MessageParcel &reply);
312 
313     /**
314      * On Set Ims Switch Status
315      *
316      * @param data send data
317      * @param reply Received data
318      * @return Returns TELEPHONY_SUCCESS on success, others on failure.
319      */
320     int32_t OnSetImsSwitchStatusInner(MessageParcel &data, MessageParcel &reply);
321 
322     /**
323      * On Get Ims Switch Status
324      *
325      * @param data send data
326      * @param reply Received data
327      * @return Returns TELEPHONY_SUCCESS on success, others on failure.
328      */
329     int32_t OnGetImsSwitchStatusInner(MessageParcel &data, MessageParcel &reply);
330 
331     /**
332      * On SetImsConfigStringInner
333      *
334      * @param data send data
335      * @param reply Received data
336      * @return Returns TELEPHONY_SUCCESS on success, others on failure.
337      */
338     int32_t OnSetImsConfigStringInner(MessageParcel &data, MessageParcel &reply);
339 
340     /**
341      * On SetImsConfigIntInner
342      *
343      * @param data send data
344      * @param reply Received data
345      * @return Returns TELEPHONY_SUCCESS on success, others on failure.
346      */
347     int32_t OnSetImsConfigIntInner(MessageParcel &data, MessageParcel &reply);
348 
349     /**
350      * On GetImsConfigInner
351      *
352      * @param data send data
353      * @param reply Received data
354      * @return Returns TELEPHONY_SUCCESS on success, others on failure.
355      */
356     int32_t OnGetImsConfigInner(MessageParcel &data, MessageParcel &reply);
357 
358     /**
359      * On SetImsFeatureValueInner
360      *
361      * @param data send data
362      * @param reply Received data
363      * @return Returns TELEPHONY_SUCCESS on success, others on failure.
364      */
365     int32_t OnSetImsFeatureValueInner(MessageParcel &data, MessageParcel &reply);
366 
367     /**
368      * On GetImsFeatureValueInner
369      *
370      * @param data send data
371      * @param reply Received data
372      * @return Returns TELEPHONY_SUCCESS on success, others on failure.
373      */
374     int32_t OnGetImsFeatureValueInner(MessageParcel &data, MessageParcel &reply);
375 
376     /**
377      * On Ctrl Camera Inner
378      *
379      * @param data send data
380      * @param reply Received data
381      * @return Returns TELEPHONY_SUCCESS on success, others on failure.
382      */
383     int32_t OnCtrlCameraInner(MessageParcel &data, MessageParcel &reply);
384 
385     /**
386      * On Set Preview Window Inner
387      *
388      * @param data send data
389      * @param reply Received data
390      * @return Returns TELEPHONY_SUCCESS on success, others on failure.
391      */
392     int32_t OnSetPreviewWindowInner(MessageParcel &data, MessageParcel &reply);
393 
394     /**
395      * On Set Display Window Inner
396      *
397      * @param data send data
398      * @param reply Received data
399      * @return Returns TELEPHONY_SUCCESS on success, others on failure.
400      */
401     int32_t OnSetDisplayWindowInner(MessageParcel &data, MessageParcel &reply);
402 
403     /**
404      * On Set Camera Zoom Inner
405      *
406      * @param data send data
407      * @param reply Received data
408      * @return Returns TELEPHONY_SUCCESS on success, others on failure.
409      */
410     int32_t OnSetCameraZoomInner(MessageParcel &data, MessageParcel &reply);
411 
412     /**
413      * On Set Pause Image Inner
414      *
415      * @param data send data
416      * @param reply Received data
417      * @return Returns TELEPHONY_SUCCESS on success, others on failure.
418      */
419     int32_t OnSetPauseImageInner(MessageParcel &data, MessageParcel &reply);
420 
421     /**
422      * On Set Device Direction Inner
423      *
424      * @param data send data
425      * @param reply Received data
426      * @return Returns TELEPHONY_SUCCESS on success, others on failure.
427      */
428     int32_t OnSetDeviceDirectionInner(MessageParcel &data, MessageParcel &reply);
429 
430     /**
431      * On Set Mute Inner
432      *
433      * @param data send data
434      * @param reply Received data
435      * @return Returns TELEPHONY_SUCCESS on success, others on failure.
436      */
437     int32_t OnSetMuteInner(MessageParcel &data, MessageParcel &reply);
438 
439     /**
440      * On Get Mute Inner
441      *
442      * @param data send data
443      * @param reply Received data
444      * @return Returns TELEPHONY_SUCCESS on success, others on failure.
445      */
446     int32_t OnGetMuteInner(MessageParcel &data, MessageParcel &reply);
447 
448     int32_t OnSetEmergencyCallList(MessageParcel &data, MessageParcel &reply);
449 
450 private:
451     using RequestFuncType = int32_t (CellularCallStub::*)(MessageParcel &data, MessageParcel &reply);
452     std::map<OperationType, RequestFuncType> requestFuncMap_;
453 };
454 } // namespace Telephony
455 } // namespace OHOS
456 
457 #endif // CELLULAR_CALL_STUB_H
458