components/modemServices/platformAdaptor/interfaces/inc/pa_sms.h
Go to the documentation of this file.
00001 
00044 #ifndef LEGATO_PASMS_INCLUDE_GUARD
00045 #define LEGATO_PASMS_INCLUDE_GUARD
00046 
00047 
00048 #include "legato.h"
00049 #include "le_mdm_defs.h"
00050 
00051 //--------------------------------------------------------------------------------------------------
00052 // Symbol and Enum definitions.
00053 //--------------------------------------------------------------------------------------------------
00054 
00055 
00056 //--------------------------------------------------------------------------------------------------
00062 //--------------------------------------------------------------------------------------------------
00063 typedef enum
00064 {
00065     PA_SMS_SMS_DELIVER       = 0, 
00066     PA_SMS_SMS_SUBMIT        = 1, 
00067     PA_SMS_SMS_STATUS_REPORT = 2, 
00068     PA_SMS_PDU               = 3  
00069 }
00070 pa_sms_MsgType_t;
00071 
00072 
00073 //--------------------------------------------------------------------------------------------------
00074 // APIs.
00075 //--------------------------------------------------------------------------------------------------
00076 
00077 //--------------------------------------------------------------------------------------------------
00082 //--------------------------------------------------------------------------------------------------
00083 typedef struct {
00084     le_sms_msg_Status_t status;                           
00085     char                oa[LE_SMS_TEL_NMBR_MAX_LEN];      
00086     char                scts[LE_SMS_TIMESTAMP_MAX_LEN];   
00087     le_sms_msg_Format_t format;                           
00088     uint8_t             data[LE_SMS_TEXT_MAX_LEN];        
00089     uint32_t            dataLen;                          
00090 }
00091 pa_sms_SmsDeliver_t;
00092 
00093 //--------------------------------------------------------------------------------------------------
00098 //--------------------------------------------------------------------------------------------------
00099 typedef struct {
00100     le_sms_msg_Status_t status;                           
00101     char                da[LE_SMS_TEL_NMBR_MAX_LEN];      
00102     uint8_t             data[LE_SMS_TEXT_MAX_LEN];        
00103     uint32_t            dataLen;                          
00104 }
00105 pa_sms_SmsSubmit_t;
00106 
00107 //--------------------------------------------------------------------------------------------------
00112 //--------------------------------------------------------------------------------------------------
00113 typedef struct {
00114     le_sms_msg_Status_t status;                           
00115     uint8_t             data[LE_SMS_PDU_MAX_LEN];         
00116     uint32_t            dataLen;                          
00117 }
00118 pa_sms_Pdu_t;
00119 
00120 //--------------------------------------------------------------------------------------------------
00125 //--------------------------------------------------------------------------------------------------
00126 typedef struct {
00127     pa_sms_MsgType_t  type;                       
00128     union {                                       
00129         pa_sms_SmsDeliver_t       smsDeliver;
00130         pa_sms_SmsSubmit_t        smsSubmit;
00131         pa_sms_Pdu_t              pdu;
00132     };
00133 }
00134 pa_sms_Message_t;
00135 
00136 //--------------------------------------------------------------------------------------------------
00142 //--------------------------------------------------------------------------------------------------
00143 typedef void (*pa_sms_NewMsgHdlrFunc_t)
00144 (
00145     uint32_t* msgRef
00146 );
00147 
00148 
00149 //--------------------------------------------------------------------------------------------------
00156 //--------------------------------------------------------------------------------------------------
00157 le_result_t pa_sms_SetNewMsgHandler
00158 (
00159     pa_sms_NewMsgHdlrFunc_t msgHandler   
00160 
00161 );
00162 
00163 //--------------------------------------------------------------------------------------------------
00170 //--------------------------------------------------------------------------------------------------
00171 le_result_t pa_sms_ClearNewMsgHandler
00172 (
00173     void
00174 );
00175 
00176 //--------------------------------------------------------------------------------------------------
00184 //--------------------------------------------------------------------------------------------------
00185 int32_t pa_sms_SendPduMsg
00186 (
00187     uint32_t       length, 
00188     const uint8_t* dataPtr 
00189 );
00190 
00191 //--------------------------------------------------------------------------------------------------
00200 //--------------------------------------------------------------------------------------------------
00201 le_result_t pa_sms_RdPDUMsgFromMem
00202 (
00203     uint32_t        index,        
00204     pa_sms_Pdu_t*   msgPtr        
00205 );
00206 
00207 //--------------------------------------------------------------------------------------------------
00217 //--------------------------------------------------------------------------------------------------
00218 le_result_t pa_sms_ListMsgFromMem
00219 (
00220     le_sms_msg_Status_t    status, 
00221     uint32_t*              numPtr, 
00222     uint32_t*              idxPtr  
00223 
00224 );
00225 
00226 //--------------------------------------------------------------------------------------------------
00235 //--------------------------------------------------------------------------------------------------
00236 le_result_t pa_sms_DelMsgFromMem
00237 (
00238     uint32_t  index   
00239 );
00240 
00241 //--------------------------------------------------------------------------------------------------
00249 //--------------------------------------------------------------------------------------------------
00250 le_result_t pa_sms_DelAllMsg
00251 (
00252     void
00253 );
00254 
00255 //--------------------------------------------------------------------------------------------------
00263 //--------------------------------------------------------------------------------------------------
00264 le_result_t pa_sms_ChangeMessageStatus
00265 (
00266     uint32_t             index, 
00267     le_sms_msg_Status_t  status 
00268 );
00269 
00270 #endif // LEGATO_PASMS_INCLUDE_GUARD
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Defines