SMSStruct.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.  *  SMSStruct.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.  *------------------------------------------------------------------------------
  71.  * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!! 
  72.  *==============================================================================
  73.  *******************************************************************************/
  74. #ifndef _MMI_SMSSTRUCT_H
  75. #define _MMI_SMSSTRUCT_H
  76. typedef enum
  77. {
  78.     MMI_FRM_SMS_INDEX,
  79.     MMI_FRM_SMS_FILE,
  80.     MMI_FRM_SMS_EMSDATA,
  81.     MMI_FRM_SMS_STRING
  82. } mmi_frm_sms_datatype_enum;
  83. typedef enum
  84. {
  85.     MMI_FRM_SMS_NOBOX = 0x00,
  86.     MMI_FRM_SMS_UNREAD = 0x01,
  87.     MMI_FRM_SMS_INBOX = 0x02,
  88.     MMI_FRM_SMS_OUTBOX = 0x04,
  89.     MMI_FRM_SMS_DRAFTS = 0x08,
  90.     MMI_FRM_SMS_AWAITS = 0x10,
  91.     MMI_FRM_SMS_DATA = 0x20,
  92. #ifdef __MMI_UNIFIED_MESSAGE__
  93.     MMI_FRM_SMS_UNSENT = 0x40,
  94. #endif 
  95.     MMI_FRM_SMS_MSGBOX_END
  96. } mmi_frm_sms_msgbox_enum;
  97. typedef struct
  98. {
  99.     module_type mod_src;
  100.     /* pointer to index, file path, EMS data or string
  101.        the action shall know the type itself and cast to the proper structure */
  102.     void *data;
  103.     /* the function to be excuted */
  104.     PsFuncPtr action;
  105.     /* callback for action */
  106.     PsFuncPtrU16 callback;
  107. } mmi_frm_sms_action_struct;
  108. typedef struct
  109. {
  110.     /* the function to be excuted */
  111.     PsExtPeerIntFuncPtr action;
  112.     /* callback for action, return TRUE for update SMS list */
  113.     PsFuncPtrFuncPtr callback;
  114. } mmi_frm_sms_msg_check_struct;
  115. typedef struct
  116. {
  117.     module_type module;
  118.     U16 desport;
  119.     U16 serial;
  120.     BOOL withdata;
  121.     PsFuncPtrU16 callback;
  122. } mmi_frm_sms_data_check_struct;
  123. typedef struct
  124. {
  125.     /* TRUE: success, FALSE: fail */
  126.     U8 result;
  127.     /* contain return data */
  128.     void *data;
  129. } mmi_frm_sms_result_struct;
  130. typedef struct
  131. {
  132.     U16 msgid;
  133.     /* indication destination module */
  134.     U16 molude;
  135.     /* indication check function */
  136.     /* callback for action */
  137.     PsFuncPtrU16 callback;
  138. } mmi_frm_sms_register_struct;
  139. typedef struct
  140. {
  141.     U8 segment;
  142.     U8 nextindex;
  143.     U16 msglen;
  144.     void *data;
  145. } mmi_frm_sms_content_struct;
  146. typedef struct
  147. {
  148.     U16 ref;        /* concat. message reference */
  149.     U8 total_seg;   /* total segments */
  150.     U8 seg;         /* indicate which segment */
  151. } mmi_frm_sms_concat_struct;
  152. typedef struct
  153. {
  154.     U8 startup_seq_num;
  155.     U8 mti;
  156.     U8 status;
  157.     U8 fo;
  158.     U16 index;
  159.     U8 scts[7];
  160.     l4c_number_struct addr_number;
  161.     U8 pid;
  162.     U8 dcs;
  163.     U8 ori_dcs;
  164.     U8 vp;
  165.     U8 mr;
  166.     U8 dt[7];
  167.     U8 st;
  168.     U32 concat_info;
  169.     U16 no_msg_data;
  170.     U8 msg_data[1];
  171. } mmi_frm_sms_startup_read_struct;
  172. typedef struct
  173. {
  174.     U8 fo;
  175.     U8 scts[7];
  176.     l4c_number_struct sca_number;
  177.     l4c_number_struct addr_number;
  178.     U8 pid;
  179.     U8 dcs;
  180.     U8 ori_dcs;
  181.     U16 index;      /* for awaited message, this is the start index */
  182.     U16 dest_port;
  183.     U16 src_port;
  184.     U8 mti;
  185.     U8 display_type;
  186. #ifdef __MMI_MESSAGES_COPY__
  187.     U8 storageType;
  188. #endif 
  189.     U32 concat_info;
  190.     U16 no_msg_data;
  191.     U8 msg_data[1]; /* for awaited message, this is the first segment data */
  192. } mmi_frm_sms_deliver_msg_struct;
  193. typedef struct
  194. {
  195.     U16 dest_mod_id;
  196.     U16 dest_port;
  197.     U16 src_port;
  198.     U8 dcs;
  199.     U8 mti;
  200.     U16 message_len;
  201.     U32 concat_info;
  202.     l4c_number_struct oa;
  203.     U8 scts[7];
  204.     U8 data[1];
  205. } mmi_frm_sms_deliver_data_struct;
  206. typedef struct
  207. {
  208.     LOCAL_PARA_HDR U16 port_number;
  209.     U8 serial;
  210.     smsal_dcs_enum dcs;
  211.     U8 *data;
  212. } mmi_frm_sms_data_ind_struct;
  213. typedef struct
  214. {
  215.     U8 mmi_frm_sms_ready;
  216.     U8 mmi_frm_sms_number[(MAX_DIGITS_SMS + 1) *ENCODING_LENGTH];
  217.     U16 mmi_frm_sms_msg_box_size;
  218.     U16 mmi_frm_sms_msg_seg_size;
  219. #ifdef __MMI_MESSAGES_SINGLE_DELIVERY_REPORT__
  220.     BOOL mmi_frm_sms_delivery_report_setting;       /* If deliver report turn on or off */
  221.     BOOL mmi_frm_sms_delivery_report_temp_setting;  /* If deliver report turn on or off */
  222. #endif /* __MMI_MESSAGES_SINGLE_DELIVERY_REPORT__ */ 
  223.     BOOL is_aborting;
  224. } mmi_frm_sms_context_struct;
  225. typedef struct
  226. {
  227.     U16 serial;
  228.     U8 *message;
  229.     U16 dest_port;
  230.     U16 src_port;
  231.     U16 message_len;
  232.     module_type mod_dest;
  233.     mmi_frm_sms_concat_struct concat_info;
  234.     l4_addr_bcd_struct oa;
  235.     U8 scts[7];
  236.     U8 used;
  237.     U8 dcs;
  238.     BOOL is_checked;
  239. } mmi_frm_sms_pool_struct;
  240. typedef struct
  241. {
  242.     U8 *pMailBoxName[2];
  243.     U8 *pMailBoxNumber[2];
  244.     U8 mailboxNameDcs[2];
  245.     U8 mailboxNameLength;
  246.     U8 mailboxNumber;
  247. } mmi_frm_sms_mailbox_struct;
  248. #ifdef __MMI_MESSAGES_COPY__
  249. typedef struct
  250. {
  251.     U16 total_msg_number;   /* inbox/outbox list size OR 1 */
  252.     U16 handled_msg_number; /* number of handled message */
  253.     U16 copy_msg_number;    /* number of copied message */
  254.     U8 msg_list_type;       /* inbox or outbox */
  255.     U16 present_msg_index;  /* inbox/outbox list index */
  256.     U16 present_L4_index;   /* L4 index */
  257.     U8 dst_storage;         /* destination storage */
  258.     U8 action;              /* smsal_copy_action_enum */
  259.     U16 dst_msg_index;  /* new message box index */
  260.     BOOL is_aborted;        /* true if user request to abort */
  261.     BOOL is_memory_full;    /* true if any msg cannot be copied due to lack of storage */
  262. } mmi_frm_sms_copy_info_struct;
  263. typedef struct
  264. {
  265.     U16 msg_number; /* number of message successfully copied/moved */
  266.     U8 cause;       /* error cause */
  267. } mmi_frm_sms_copy_result_struct;
  268. #endif /* __MMI_MESSAGES_COPY__ */ 
  269. #ifdef __MMI_MESSAGES_SINGLE_DELIVERY_REPORT__
  270. typedef struct
  271. {
  272.     U8 mr;          /* message reference (segment id) */
  273.     U8 check_bit;   /* if delivery report of this segment received */
  274. } mmi_frm_sms_delivery_report_box_struct;
  275. typedef struct
  276. {
  277.     U8 result;      /* smsal_st_enum */
  278.     U16 ref;        /* reference number */
  279.     U8 box_number;  /* number of mmi_frm_sms_delivery_report_box */
  280.     mmi_frm_sms_delivery_report_box_struct *ptr;
  281. } mmi_frm_sms_delivery_report_list_struct;
  282. #endif /* __MMI_MESSAGES_SINGLE_DELIVERY_REPORT__ */ 
  283. extern mmi_frm_sms_context_struct g_frm_sms_cntx;
  284. #ifdef __MMI_MESSAGES_COPY__
  285. extern mmi_frm_sms_copy_info_struct g_frm_sms_copy_info;
  286. #endif 
  287. #define MMI_FRM_SMS_FDN_CHECK_REQ_STRUCT  mmi_phb_sms_fdn_check_req_struct
  288. #define MMI_FRM_SMS_FDN_CHECK_RSP_STRUCT  mmi_phb_sms_fdn_check_rsp_struct
  289. #define MMI_FRM_SMS_GET_PROFILE_NUM_RSP_STRUCT     mmi_sms_get_profile_num_rsp_struct
  290. #define MMI_FRM_SMS_SET_PROFILE_PARAMS_REQ_STRUCT  mmi_sms_set_profile_params_req_struct
  291. #define MMI_FRM_SMS_SET_PROFILE_PARAMS_RSP_STRUCT  mmi_sms_set_profile_params_rsp_struct
  292. #define MMI_FRM_SMS_GET_PROFILE_PARAMS_REQ_STRUCT  mmi_sms_get_profile_params_req_struct
  293. #define MMI_FRM_SMS_GET_PROFILE_PARAMS_RSP_STRUCT  mmi_sms_get_profile_params_rsp_struct
  294. #define MMI_FRM_SMS_SET_COMMON_PARAMS_REQ_STRUCT   mmi_sms_set_common_params_req_struct
  295. #define MMI_FRM_SMS_SET_COMMON_PARAMS_RSP_STRUCT   mmi_sms_set_common_params_rsp_struct
  296. #define MMI_FRM_SMS_GET_COMMON_PARAMS_RSP_STRUCT   mmi_sms_get_common_params_rsp_struct
  297. #define MMI_FRM_SMS_GET_MSG_NUM_RSP_STRUCT         mmi_sms_get_msg_num_rsp_struct
  298. #define MMI_FRM_SMS_SET_PREFERRED_STORAGE_REQ_STRUCT  mmi_sms_set_preferred_storage_req_struct
  299. #define MMI_FRM_SMS_SET_PREFERRED_STORAGE_RSP_STRUCT  mmi_sms_set_preferred_storage_rsp_struct
  300. #define MMI_FRM_SMS_GET_PREFERRED_STORAGE_RSP_STRUCT  mmi_sms_get_preferred_storage_rsp_struct
  301. #define MMI_FRM_SMS_SET_MAILBOX_ADDRESS_REQ_STRUCT mmi_sms_set_mailbox_address_req_struct
  302. #define MMI_FRM_SMS_SET_MAILBOX_ADDRESS_RSP_STRUCT mmi_sms_set_mailbox_address_rsp_struct
  303. #define MMI_FRM_SMS_GET_MAILBOX_ADDRESS_RSP_STRUCT mmi_sms_get_mailbox_address_rsp_struct
  304. #define MMI_FRM_SMS_DEL_MSG_REQ_STRUCT mmi_sms_del_msg_req_struct
  305. #define MMI_FRM_SMS_DEL_MSG_RSP_STRUCT mmi_sms_del_msg_rsp_struct
  306. #define MMI_FRM_SMS_GET_MSG_REQ_STRUCT mmi_sms_get_msg_req_struct
  307. #define MMI_FRM_SMS_GET_MSG_RSP_STRUCT mmi_sms_get_msg_rsp_struct
  308. #define MMI_FRM_SMS_SET_MSG_REQ_STRUCT mmi_sms_set_msg_req_struct
  309. #define MMI_FRM_SMS_SET_MSG_RSP_STRUCT mmi_sms_set_msg_rsp_struct
  310. #define MMI_FRM_SMS_SEND_MSG_REQ_STRUCT   mmi_sms_send_msg_req_struct
  311. #define MMI_FRM_SMS_SEND_MSG_RSP_STRUCT   mmi_sms_send_msg_rsp_struct
  312. #define MMI_FRM_SMS_ABORT_RSP_STRUCT   mmi_sms_abort_rsp_struct
  313. #define MMI_FRM_SMS_SEND_ABORT_FINISH_IND_STRUCT   mmi_sms_send_abort_finish_ind_struct
  314. #ifdef __MMI_MESSAGES_COPY__
  315. #define MMI_FRM_SMS_COPY_MSG_REQ_STRUCT   mmi_sms_copy_msg_req_struct
  316. #define MMI_FRM_SMS_COPY_MSG_RSP_STRUCT   mmi_sms_copy_msg_rsp_struct
  317. #endif /* __MMI_MESSAGES_COPY__ */ 
  318. #define MMI_FRM_SMS_STARTUP_READ_NEXT_RSP_STRUCT   mmi_sms_startup_read_next_rsp_struct
  319. #define MMI_FRM_SMS_STARTUP_READ_MSG_IND_STRUCT mmi_sms_startup_read_msg_ind_struct
  320. #define MMI_FRM_SMS_READY_IND_STRUCT      mmi_sms_ready_ind_struct
  321. #define MMI_FRM_SMS_SYNC_MSG_IND_STRUCT      mmi_sms_sync_msg_ind_struct
  322. #define MMI_FRM_SMS_REG_PORT_NUM_REQ_STRUCT  mmi_sms_reg_port_num_req_struct
  323. #define MMI_FRM_SMS_REG_PORT_NUM_RSP_STRUCT  mmi_sms_reg_port_num_rsp_struct
  324. #define MMI_FRM_SMS_DELIVER_MSG_IND_STRUCT      mmi_sms_deliver_msg_ind_struct
  325. #define MMI_FRM_SMS_STATUS_REPORT_IND_STRUCT mmi_sms_status_report_ind_struct
  326. #define MMI_FRM_SMS_MEM_FULL_IND_STRUCT            mmi_sms_mem_full_ind_struct
  327. #define  MMI_FRM_SMS_MEM_EXCEED_IND_STRUCT         mmi_sms_mem_exceed_ind_struct
  328. #define  MMI_FRM_SMS_MEM_AVAILABLE_IND_STRUCT      mmi_sms_mem_available_ind_struct
  329. #define MMI_FRM_SMS_APP_DATA_IND_STRUCT      mmi_sms_app_data_ind_struct
  330. #define MMI_FRM_SMS_MSG_WAITING_IND_STRUCT   mmi_sms_msg_waiting_ind_struct
  331. #define MMI_FRM_CB_MSG_IND_STRUCT   mmi_cb_msg_ind_struct
  332. #define MMI_FRM_CB_SUBSCRIBE_REQ_STRUCT   mmi_cb_subscribe_req_struct
  333. #define MMI_FRM_CB_SUBSCRIBE_RSP_STRUCT   mmi_cb_subscribe_rsp_struct
  334. #define MMI_FRM_CB_SET_CB_MODE_REQ_STRUCT mmi_sms_set_cb_mode_req_struct
  335. #define MMI_FRM_CB_SET_CB_MODE_RSP_STRUCT mmi_sms_set_cb_mode_rsp_struct
  336. #define MMI_FRM_CB_GET_CB_MODE_RSP_STRUCT mmi_sms_get_cb_mode_rsp_struct
  337. #ifdef __MMI_MESSAGES_USE_URL__
  338. #define MMI_FRM_SMS_WAP_BROWSER_STARTUP_REQ  wap_browser_startup_req_struct
  339. #endif 
  340. #endif /* _MMI_SMSSTRUCT_H */