comparison src/ui3/mfw/mfw_cmi.h @ 420:e8ddbb0837ed

src/ui3: initial import of TCS3/LoCosto BMI & MFW code
author Mychaela Falconia <falcon@freecalypso.org>
date Sun, 21 Jan 2018 03:09:00 +0000
parents
children
comparison
equal deleted inserted replaced
419:59143cd42ec7 420:e8ddbb0837ed
1 /*
2 +--------------------------------------------------------------------+
3 | PROJECT: MMI-Framework (8417) $Workfile:: mfw_cmi.h $|
4 | $Author:: Vo $Revision:: 1 $|
5 | CREATED: 3.11.98 $Modtime:: 14.03.00 10:03 $|
6 | STATE : code |
7 +--------------------------------------------------------------------+
8
9 MODULE : MFW_CMI
10
11 PURPOSE : Internal definitions for call management of MMI framework
12
13
14 $History:: mfw_cmi.h $
15 *
16 * ***************** Version 33 *****************
17 * User: Vo Date: 15.03.00 Time: 18:17
18 * Updated in $/GSM/Condat/MS/SRC/MFW
19 * New: Remote call control and Abort CM command
20 *
21 * ***************** Version 32 *****************
22 * User: Vo Date: 17.02.00 Time: 19:07
23 * Updated in $/GSM/Condat/MS/SRC/MFW
24 *
25 * ***************** Version 31 *****************
26 * User: Vo Date: 20.01.00 Time: 12:34
27 * Updated in $/GSM/Condat/MS/SRC/MFW
28 *
29 * ***************** Version 30 *****************
30 * User: Vo Date: 22.12.99 Time: 15:48
31 * Updated in $/GSM/Condat/MS/SRC/MFW
32 * change prototypes
33 *
34 * ***************** Version 29 *****************
35 * User: Le Date: 13.12.99 Time: 8:50
36 * Updated in $/GSM/Condat/MS/SRC/MFW
37 *
38 * ***************** Version 28 *****************
39 * User: Vo Date: 11.11.99 Time: 14:23
40 * Updated in $/GSM/Condat/MS/SRC/MFW
41 * New prototypes define
42 *
43 * ***************** Version 27 *****************
44 * User: Le Date: 11.10.99 Time: 16:27
45 * Updated in $/GSM/Condat/MS/SRC/MFW
46 *
47 * ***************** Version 26 *****************
48 * User: Vo Date: 30.08.99 Time: 13:30
49 * Updated in $/GSM/DEV/MS/SRC/MFW
50 * new prototypes
51 *
52 * ***************** Version 25 *****************
53 * User: Vo Date: 26.07.99 Time: 14:28
54 * Updated in $/GSM/DEV/MS/SRC/MFW
55 * delete unused definitions
56 *
57 * ***************** Version 24 *****************
58 * User: Vo Date: 21.07.99 Time: 14:40
59 * Updated in $/GSM/DEV/MS/SRC/MFW
60 *
61 * ***************** Version 23 *****************
62 * User: Vo Date: 16.07.99 Time: 10:33
63 * Updated in $/GSM/DEV/MS/SRC/MFW
64
65 */
66
67 #ifndef DEF_MFW_CMI_HEADER
68 #define DEF_MFW_CMI_HEADER
69
70 #define MAX_REDIAL_ATTEMPT 10
71 #define MAX_BLACKLIST_NUM 10
72
73 /* definition of commands for call related supplementary service */
74 #define CM_RELEASE 255
75
76 typedef enum /* Call type definition */
77 {
78 MFW_CALL_FREE = 0,
79 MFW_NORMAL_CALL, /* normal voice call */
80 MFW_ECC_CALL /* emergency call */
81 } T_MFW_CM_TYPE;
82
83 /* Flag for phone call status */
84 #define INCOMING_CALL 1
85 #define OUTGOING_CALL 2
86 #define REDIALING_CALL 3
87
88 #define MFW_CM_NO_FLAG 0
89 #define MFW_CM_MT_REJECT 1 /* mobile rejects a MT call */
90 #define MFW_CM_TERMINATED 2 /* mobile terminates a call */
91 #define MFW_CM_MPTY_TERMINATED 3 /* mobile terminates a call */
92 #define MFW_CM_MT_ACCEPT 4 /* mobile accepts a MT call */
93 #define MFW_CM_1_SEND 5
94 #define MFW_CM_HOLD_AND_DIAL 6 /* active to hold and dial */
95 /* Marcus: CCBS: 14/11/2002: Start */
96 #define MFW_CM_CCBS_REGISTER 7 /* CCBS registration */
97 #define MFW_CM_CCBS_RECALL 8 /* CCBS recall */
98 /* Marcus: CCBS: 14/11/2002: END */
99
100 #define MFW_CM_DISCONNECT_ALL 9
101
102 /*
103 * CM Control Block
104 */
105 typedef struct
106 {
107 T_MFW_EVENT emask; /* events of interest */
108 T_MFW_EVENT event; /* current event */
109 T_MFW_CB handler;
110 T_MFW_CM_PARA para;
111 } T_MFW_CM;
112
113 typedef struct
114 {
115 UBYTE count;
116 UBYTE number[MAX_BLACKLIST_NUM][MFW_NUM_LEN];
117 } T_MFW_CM_BLACKLIST_LIST;
118
119
120 /* Current call info */
121 typedef struct
122 {
123 SHORT call_number;
124 UBYTE number[MFW_NUM_LEN];
125 #ifdef NO_ASCIIZ /* RM 8.9.2000 */
126 T_MFW_PHB_TEXT name; /* alpha identfier */
127 #else
128 UBYTE name[MFW_TAG_LEN]; /* alpha identfier */
129 #endif
130 UBYTE subaddr[MFW_SUBADR_LEN];
131 UBYTE type; /* call type: OUTGOING_CALL ... */
132 UBYTE ton;
133 UBYTE prefix[MAX_LEN];
134 T_MFW_CM_CALL_TYPE mode; /* call mode */
135 } T_MFW_CM_CC_STAT;
136
137 T_MFW_HND cm_install (T_MFW_HDR * w,
138 T_MFW_HDR * h,
139 T_MFW_CM * cm);
140 T_MFW_RES cm_remove (T_MFW_HDR * h);
141 BOOL cm_sign_exec (T_MFW_HDR * hdr,
142 T_MFW_EVENT event,
143 T_MFW_CM_PARA * para);
144 void cm_error_connect (SHORT call_number);
145 void cm_rmt_error_connect (SHORT call_number);
146 void cm_ok_connect (void);
147 void cm_ok_aoc (T_ACI_AT_CMD cmdId);
148 void cm_error_aoc (T_ACI_AT_CMD cmdId, T_ACI_CME_ERR reason);
149 void cm_rmt_ok_connect (void);
150 void cm_ok_disconnect (T_ACI_CMD_SRC src, SHORT call_id);
151 void cm_error_disconnect (void);
152 void cm_stop_redialTim (void);
153 void cm_result_cmd (T_ACI_CMD_SRC src, UBYTE result);
154 void cm_notify (T_ACI_CSSU_CODE code,
155 SHORT index,
156 UBYTE *number);
157 T_MFW cm_search_callStat (SHORT call_number, T_MFW_CM_CALL_STAT *stat,
158 UBYTE *ton, UBYTE *mode);
159 void cm_AT_D (T_ACI_CLOG *cmd);
160 void cm_AT_CHLD (T_ACI_CLOG *cmd);
161 int cm_search_callId (T_ACI_CAL_STAT type, SHORT *id);
162 UBYTE cm_error_code (T_ACI_AT_CMD cmd);
163 void cm_ok_dtmf (void);
164 void cm_error_dtmf (void);
165 T_MFW_CM_CALL_TYPE cm_cvt_call_mode( T_ACI_CAL_MODE type );
166 void cm_set_call_mode (T_MFW_CM_CALL_TYPE mode);
167 /*a0393213 warnings removal - parameters of cm_bc_parameter() and cm_build_callType() changed because of ACI enum change*/
168 void cm_bc_parameter (T_ACI_CRING_SERV_TYP type);
169 void cm_build_callType (T_ACI_CRING_SERV_TYP type1, T_ACI_CRING_SERV_TYP type2);
170 T_ACI_CAL_MODE cm_search_callMode (SHORT id);
171 void cm_error_dial (T_ACI_CME_ERR err);
172 void cm_data_connect (SHORT callId);
173 void cm_wap_data_connected (void);
174
175 #endif