CallStructureManagementProt.h
上传用户:lqx1163
上传日期:2014-08-13
资源大小:9183k
文件大小:13k
源码类别:

MTK

开发平台:

C/C++

  1. /*****************************************************************************
  2. *  Copyright Statement:
  3. *  --------------------
  4. *  This software is protected by Copyright and the information contained
  5. *  herein is confidential. The software may not be copied and the information
  6. *  contained herein may not be used or disclosed except with the written
  7. *  permission of MediaTek Inc. (C) 2005
  8. *
  9. *  BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
  10. *  THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
  11. *  RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
  12. *  AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
  13. *  EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
  14. *  MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
  15. *  NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
  16. *  SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
  17. *  SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
  18. *  THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
  19. *  NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
  20. *  SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
  21. *
  22. *  BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
  23. *  LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
  24. *  AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
  25. *  OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
  26. *  MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE. 
  27. *
  28. *  THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
  29. *  WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
  30. *  LAWS PRINCIPLES.  ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
  31. *  RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
  32. *  THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
  33. *
  34. *****************************************************************************/
  35. /*******************************************************************************
  36.  * Filename:
  37.  * ---------
  38.  *  CallStructureManagementProt.h
  39.  *
  40.  * Project:
  41.  * --------
  42.  *  MAUI
  43.  *
  44.  * Description:
  45.  * ------------
  46.  *  
  47.  *
  48.  * Author:
  49.  * -------
  50.  *  
  51.  *
  52.  *==============================================================================
  53.  *             HISTORY
  54.  * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!! 
  55.  *------------------------------------------------------------------------------
  56.  * removed!
  57.  *
  58.  * removed!
  59.  * removed!
  60.  * removed!
  61.  *
  62.  * removed!
  63.  * removed!
  64.  * removed!
  65.  *
  66.  * removed!
  67.  * removed!
  68.  * removed!
  69.  *
  70.  * removed!
  71.  * removed!
  72.  * removed!
  73.  *
  74.  * removed!
  75.  * removed!
  76.  * removed!
  77.  *
  78.  * removed!
  79.  * removed!
  80.  * removed!
  81.  *
  82.  * removed!
  83.  * removed!
  84.  * removed!
  85.  *
  86.  * removed!
  87.  * removed!
  88.  * removed!
  89.  *
  90.  * removed!
  91.  * removed!
  92.  * removed!
  93.  *
  94.  * removed!
  95.  * removed!
  96.  * removed!
  97.  *
  98.  * removed!
  99.  * removed!
  100.  * removed!
  101.  *
  102.  * removed!
  103.  * removed!
  104.  * removed!
  105.  *
  106.  * removed!
  107.  * removed!
  108.  * removed!
  109.  *
  110.  * removed!
  111.  * removed!
  112.  * removed!
  113.  *
  114.  * removed!
  115.  * removed!
  116.  * removed!
  117.  *
  118.  * removed!
  119.  * removed!
  120.  * removed!
  121.  *
  122.  * removed!
  123.  * removed!
  124.  * removed!
  125.  *
  126.  *------------------------------------------------------------------------------
  127.  * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!! 
  128.  *==============================================================================
  129.  *******************************************************************************/
  130. /**
  131.  * Copyright Notice
  132.  * ?2002 - 2003, Pixtel Communications, Inc., 1489 43rd Ave. W.,
  133.  * Vancouver, B.C. V6M 4K8 Canada. All Rights Reserved.
  134.  *  (It is illegal to remove this copyright notice from this software or any
  135.  *  portion of it)
  136.  */
  137. /**************************************************************
  138.    FILENAME : CallStructureManagementProt.h
  139.    PURPOSE     : Call Strucutre Management API
  140.    REMARKS     : nil
  141.    AUTHOR      : Ashish
  142.    DATE     : Nov 8,02
  143. **************************************************************/
  144. #ifndef CALLSTRUCTUREMANAGEMENT_PROT_H
  145. #define CALLSTRUCTUREMANAGEMENT_PROT_H
  146. typedef struct
  147. {
  148.     CALL_INFO AllCalls[MAX_CALLS];
  149.     CALL_INFO CallStructureForCallLog;
  150.     CALL_STATE CurrentState;
  151.     CALL_STATE PrevState;
  152.     U8 NumofActivecalls;
  153.     U8 NumofHeldcalls;
  154.     U8 TotalCallCount;
  155.     U8 OldestCallIndex;
  156. } cm_state_struct;
  157. extern void ReinitalizeCallManagement(void);
  158. extern void ResetGlobalValues(void);
  159. extern void InitCallInfo(void);
  160. extern void ResetCallInfo(CM_CALL_HANDLE nCallHandle, pBOOL bIsHandle);
  161. extern void PurgeOutgoingCallsStructure(void);
  162. extern void PurgeIncomingCallStructure(void);
  163. extern void PurgeAllCalls(void);
  164. extern void AddNewCallInfo(
  165.                 PU8 Number,
  166.                 CALL_STATE currentstate,
  167.                 CALL_STATE prevstate,
  168.                 CALL_DIR MOflag,
  169.                 CM_CALL_HANDLE currentCallHandle,
  170.                 U8 callType);
  171. extern void SetIncomingCallStateActive(void);
  172. extern void SetCallState(CM_CALL_HANDLE nCallHandle, CALL_STATE state, pBOOL bIsHandle);
  173. /* Start by Julia: Drop call refinement */
  174. extern void SetAllCallState(CALL_STATE state);
  175. extern void SetAllExceptWaitingCallState(CALL_STATE state);
  176. extern void SetAllActiveCallState(CALL_STATE state);
  177. extern void SetAllHeldCallState(CALL_STATE state);
  178. /* End by Julia */
  179. extern CALL_STATE GetCallState(CM_CALL_HANDLE handle);
  180. extern void RestoreCallState(void);
  181. extern void PsCbackSyncCallList(void *MsgStruct);
  182. extern void UpdateStateMachine(void);
  183. extern void SetHoldFlag(void);
  184. extern void ResetHoldFlag(void);
  185. extern void SetRetrieveFlag(void);
  186. extern void ResetRetrieveFlag(void);
  187. extern void SetSwapFlag(void);
  188. extern void ResetSwapFlag(void);
  189. extern void SetConfFlag(void);
  190. extern void ResetConfFlag(void);
  191. extern void ResetSplitFlag(void);
  192. extern void ResetEctFlag(void);
  193. extern void SetAllHangupFlag(void);
  194. extern void SetAllCallsHangupFlag(void);
  195. extern void SetAllActHangupFlag(void);
  196. extern void SetAllHldHangupFlag(void);
  197. extern void ResetAllHangupFlag(void);
  198. extern BOOL CheckAllCallflag(void);
  199. extern U8 GetAllCallFlags(void);
  200. extern CHLD_REQ_ACTION GetChldReqSent(void);
  201. extern void SetChldReqSent(CHLD_REQ_ACTION action);
  202. extern void MakeHold(void);
  203. extern void MakeRetrieve(void);
  204. extern void MakeSwap(void);
  205. extern void MakeConf(void);
  206. extern void MakeAllActHangup(void);
  207. extern void MakeSplitSucess(void);
  208. extern pBOOL AllowMoreCalls(void);
  209. extern CALL_STATE GetPreviousState(void);
  210. extern void SetCurrentState(CALL_STATE state);
  211. extern void SetPreviousState(CALL_STATE state);
  212. extern void SetCallflag(CM_CALL_HANDLE nCallHandle, U8 flag, pBOOL bIsHandle);
  213. extern U8 GetCallflag(CM_CALL_HANDLE nCallHandle, pBOOL bIsHandle);
  214. extern void ResetCallflag(CM_CALL_HANDLE nCallHandle, U8 flag, pBOOL bIsHandle);
  215. extern U16 GetCallDirFlag(CM_CALL_HANDLE handle);
  216. extern CM_CALL_HANDLE MapItemId2CallHandle(U16 idx);
  217. extern S16 GetMMIStructIndexof(CM_CALL_HANDLE nCallIndex);
  218. extern S16 GetFirstFreeIndex(void);
  219. /* Start by Julia: Drop call refinement */
  220. extern CM_CALL_HANDLE GetDisconnectingCallHandle(void);
  221. /* End by Julia */
  222. extern CM_CALL_HANDLE GetIncomingCallHandle(void);
  223. extern void SetOutgoingCallHandle(CM_CALL_HANDLE handle);
  224. extern CM_CALL_HANDLE GetOutgoingCallHandle(void);
  225. extern CALL_DIR GetOutgoingCallOrigin(void);
  226. extern CM_CALL_HANDLE GetCallHandle(PU8 Dispname);
  227. extern CM_CALL_HANDLE GetHungUpHandle(void);
  228. extern S16 GetOutgoingCallIndex(void);
  229. extern U8 GetAllDispNameorNum(PU8 *Dispnames, U16 *DispStrids, U16 *Iconids, S16 *HighlightIndex);
  230. extern U8 GetAllActDispNameorNum(PU8 *Dispnames);
  231. extern U16 GetImgIdofState(CALL_STATE tmpState);
  232. extern void SetCalledNumber(S16 index, U8 *msg);
  233. extern void SetCalledNumWithTypeAux(S16 index, void *msg);
  234. extern void SetCalledNumWithType(S16 index, void *msg);
  235. extern void SetOutgoingNamefromPhonebook(void);
  236. extern PU8 GetOutgoingNumber(void);
  237. extern PU8 GetOutgoingName(void);
  238. extern U8 GetOutgoingCallType(void);
  239. extern U8 GetIncomingCallType(void);
  240. extern S16 GetActiveCallIndex(void);
  241. extern PU8 GetCallName(CM_CALL_HANDLE handle);
  242. extern PU8 GetCallNumber(CM_CALL_HANDLE handle);
  243. extern U8 GetCallType(CM_CALL_HANDLE handle);
  244. extern MYTIME * GetCallStartTime (CM_CALL_HANDLE handle);
  245. extern U16 GetCallImgId(CM_CALL_HANDLE handle);
  246. #ifdef __MMI_PHB_CALL_SHOW_PICTURE_FROM_FILE__
  247. extern S8 *GetCallImgPath(CM_CALL_HANDLE handle);
  248. #endif 
  249. #ifdef __MMI_INCOMING_CALL_VIDEO__
  250. extern S8 *GetCallVideoPath(CM_CALL_HANDLE handle);
  251. #endif 
  252. extern U8 GetActiveCallType(void);
  253. extern PU8 GetDispNameorNum(void);
  254. #ifdef __MMI_CM_BLACK_LIST__
  255. extern pBOOL BlockedHandle(CM_CALL_HANDLE handle);
  256. extern void SetBlackIncomingFlag(pBOOL value);
  257. extern pBOOL GetBlackIncomingFlag(void);
  258. #endif /* __MMI_CM_BLACK_LIST__ */
  259. extern void SetClearKeyFlag(pBOOL value);
  260. extern pBOOL GetClearKeyFlag(void);
  261. extern void SetCCFlag(pBOOL value);
  262. extern pBOOL GetCCFlag(void);
  263. extern void SetTransitionToActiveFlag(pBOOL flag);
  264. extern void SetAnswerMode(void *mode);
  265. extern void *GetAnswerMode(void);
  266. extern void SetAutoAnswerFlag(pBOOL flag);
  267. extern pBOOL GetAutoAnswerFlag(void);
  268. /* Start by Julia: Drop call refinement */
  269. extern void SetAutoReleaseFlag(pBOOL flag);
  270. extern pBOOL GetAutoReleaseFlag(void);
  271. /* End by Julia */
  272. extern void SetAbortCallRequestedFlag(pBOOL flag);
  273. extern pBOOL GetAbortCallRequestedFlag(void);
  274. extern void SetCallAbortReqSentFlag(pBOOL flag);
  275. extern pBOOL GetCallAbortReqSentFlag(void);
  276. extern void SetDropRequestFlag(pBOOL flag);
  277. extern pBOOL GetDropRequestFlag(void);
  278. extern void SetIncomingCallDroppedFlag(pBOOL flag);
  279. extern pBOOL GetIncomingCallDroppedFlag(void);
  280. extern void SetCallWaitFlag(pBOOL flag);
  281. extern pBOOL GetCallWaitFlag(void);
  282. extern void SetNoTwiceRingFlag(pBOOL flag);
  283. extern pBOOL GetNoTwiceRingFlag(void);
  284. extern void SetWait2RingCallFlag(pBOOL flag);
  285. extern pBOOL GetWait2RingCallFlag(void);
  286. extern void SetCallEndedBeforeConnFlag(pBOOL flag);
  287. extern pBOOL GetCallEndedBeforeConnFlag(void);
  288. extern void SetErrorToneFlag(U8 flag);
  289. extern U8 GetErrorToneFlag(void);
  290. extern void SetShowAOC(pBOOL flag);
  291. extern pBOOL GetShowAOC(void);
  292. extern void SetDTMFKeyUpFlag(pBOOL flag);
  293. extern pBOOL GetDTMFKeyUpFlag(void);
  294. extern void SetCMScrnFlag(pBOOL flag);
  295. extern pBOOL GetCMScrnFlag(void);
  296. extern void UpdateActiveCallScrnIfPresent(void);
  297. extern pBOOL EmergencyCallPresent(void);
  298. extern void SetWapCallPresent(pBOOL flag);
  299. extern void SetPreviousCallWAP(pBOOL flag);
  300. extern pBOOL GetPreviousCallWAP(void);
  301. extern U16 CMAllowInterrupt(void);
  302. extern void SetCallEndCause(U16 cause);
  303. extern U16 GetCallEndCause(void);
  304. extern void SetTempUseIPNumber(pBOOL flag);
  305. extern pBOOL GetTempUseIPNumber(void);
  306. extern void SetCMPhoneBookStruct(PHB_CM_INTERFACE *pNumberStruct);
  307. extern PHB_CM_INTERFACE *GetCMPhoneBookStruct(void);
  308. extern void SetCallDeflectFlag(pBOOL flag);
  309. extern pBOOL GetCallDeflectFlag(void);
  310. extern void SetActivatedCcbsFlag(pBOOL ccbsFlag);
  311. extern pBOOL GetActivatedCcbsFlag(void);
  312. extern void SetCCBSFlag(pBOOL ccbsFlag);
  313. extern pBOOL GetCCBSFlag(void);
  314. extern void CCBSUpdateCallInfo(void);
  315. extern void LogCall(void);
  316. extern void LogCallWithStartTime(CALL_INFO *log);
  317. extern void LogCallInfoForCallHistory(CM_CALL_HANDLE handle);
  318. extern void UpdateCallStartTimeAndLogCall(CM_CALL_HANDLE handle, MYTIME *t);
  319. extern void SetCallHandleForStartTimeUpdate(CM_CALL_HANDLE handle);
  320. extern CM_CALL_HANDLE GetCallHandleForStartTimeUpdate(void);
  321. extern void GetEndTimeAndNotifyCallAborted(void);
  322. extern void GetDateTimeAndNotifyCallAbortedCBack(MYTIME *t);
  323. extern void GetEndTimeAndNotifyCallMissed(void);
  324. extern void GetDateTimeAndNotifyCallMissedCBack(MYTIME *t);
  325. extern void GetEndTimeAndLogUnconnectedMOCall(void);
  326. extern void GetDateTimeAndLogUnconnectedMOCallCBack(MYTIME *t);
  327. extern void GetEndTimeAndNotifyEndCallDuration(CM_CALL_HANDLE handle);
  328. extern void GetDateTimeAndNotifyEndCallDurationCBack(MYTIME *t);
  329. extern void UpdateCallStartTimeforWapCall(MYTIME *t);
  330. extern void InitializeTimeStructure(TIMEANDINDEX *time, MYTIME *t);
  331. extern MYTIME *GetStartCallTime(void);
  332. extern void SetPriorityCall(pBOOL priority);
  333. extern pBOOL GetPriorityCall(void);
  334. extern void SetDialedDigitCalledFlag(pBOOL flag);
  335. extern pBOOL GetDialedDigitCalledFlag(void);
  336. extern void SetSATScrnSavedFlag(pBOOL flag);
  337. extern pBOOL GetSATScrnSavedFlag(void);
  338. #endif /* CALLSTRUCTUREMANAGEMENT_PROT_H */