WE310F5  39.00.000
m2mb_ping.h
Go to the documentation of this file.
1 /*===============================================================================================*/
2 /* >>> Copyright (C) Telit Communications S.p.A. Italy All Rights Reserved. <<< */
29 /* Global declarations ==========================================================================*/
30 #ifndef M2MB_PING_H
31 #define M2MB_PING_H
32 /* Failure return codes MUST be < 0 */
33 #include <stdint.h>
34 #include <string.h>
35 #include "m2mb_types.h"
36 
51 /*-----------------------------------------------------------------------------------------------*/
52 #define M2MB_PING_PACKET_SIZE_MAX_TX (1576)
53 #define M2MB_PING_PACKET_SIZE_MAX_RX (1556)
56 #define M2MB_NETWORK_PING_SUCCESS 0
57 #define M2MB_NETWORK_PING_INVALID_IP_ADDRESS M2MB_NET_ERR_INVALID_IPADDR
58 #define M2MB_NETWORK_PING_REQUEST_TIMED_OUT 2
60 /* Global typedefs -------------------------------------------------------- */
61 
70 typedef enum M2MB_PING_CFGID
71 {
81 
89 typedef enum M2MB_PING_EVENT
90 {
96 
105 typedef struct M2MB_PING_REQ_STATUS
106 {
116 
126 {
136 
168 typedef INT32 ( *M2MB_PING_CB_T)( void *user_ctx, M2MB_PING_EVENT_E ev, VOID* data );
177 typedef union M2MB_PING_CONF_PARAMS{
183 
191 typedef struct M2MB_PING_INIT_PARAMS
192 {
194  void *user_ctx;
196 
197 
198 /* Global functions =========================================================*/
199 
200 /*-----------------------------------------------------------------------------------------------*/
262 /*-----------------------------------------------------------------------------------------------*/
264 
265 /*---------------------------------------------------------------------------*/
330 /*---------------------------------------------------------------------------*/
332 
333 
334 /*---------------------------------------------------------------------------*/
437 /*---------------------------------------------------------------------------*/
438 INT32 m2mb_ping_start( HANDLE handle );
439 
440 /*---------------------------------------------------------------------------*/
554 /*---------------------------------------------------------------------------*/
555 INT32 m2mb_ping_stop( HANDLE handle );
556 
557 /*---------------------------------------------------------------------------*/
668 /*-----------------------------------------------------------------------------------------------*/
670 /*---------------------------------------------------------------------------*/
783 /*-----------------------------------------------------------------------------------------------*/
785 
787 #endif /* M2MB_PING_H */
M2MB_STATUS_T m2mb_ping_init(HANDLE *handle, M2MB_PING_INIT_PARAMS_T init_params)
m2mb_ping_init is called to initialize the PING user callback and continuous interval.
float FLOAT32
Definition: m2mb_types.h:77
enum M2MB_PING_CFGID M2MB_PING_CFGID_E
M2MB_PING_CFGID_E defines configuration IDs for ping.
unsigned char UINT8
Definition: m2mb_types.h:86
union M2MB_PING_CONF_PARAMS M2MB_PING_CONF_PARAMS_T
M2MB_PING_CONF_PARAMS_T defines configuration data structure for ping.
M2MB_PING_CB_T user_cb
Definition: m2mb_ping.h:193
INT32 M2MB_STATUS_T
Definition: m2mb_status.h:97
M2MB_STATUS_T m2mb_ping_deinit(HANDLE handle)
m2mb_ping_deinit is called to de-initialize PING module.
unsigned short UINT16
Definition: m2mb_types.h:87
enum M2MB_PING_EVENT M2MB_PING_EVENT_E
M2MB_PING_EVENT_E defines events passed in the ping callback.
M2MB_PING_CB_T appCb
Definition: m2mb_ping.h:181
M2MB_PING_EVENT
M2MB_PING_EVENT_E defines events passed in the ping callback.
Definition: m2mb_ping.h:89
M2MB_PING_COMPLETE_STATUS_T defines the data type of M2MB_PING_COMPLETE event.
Definition: m2mb_ping.h:125
struct M2MB_PING_REQ_STATUS M2MB_PING_REQ_STATUS_T
M2MB_PING_REQ_STATUS_T defines the data type of M2MB_PING_REQ_RESULT event.
void VOID
Definition: m2mb_types.h:74
INT32 m2mb_ping_get_cfg(HANDLE handle, M2MB_PING_CFGID_E cfgID, M2MB_PING_CONF_PARAMS_T *conf_params)
m2mb_ping_get_cfg is called to set the ping configuration.
INT32(* M2MB_PING_CB_T)(void *user_ctx, M2MB_PING_EVENT_E ev, VOID *data)
M2MB_PING_CB_T defines callback for ping request.
Definition: m2mb_ping.h:168
INT32 m2mb_ping_start(HANDLE handle)
m2mb_ping_start is called to initiate Ping.
PING initialization parameters.
Definition: m2mb_ping.h:191
M2MB_PING_REQ_STATUS_T defines the data type of M2MB_PING_REQ_RESULT event.
Definition: m2mb_ping.h:105
unsigned long int UINT32
Definition: m2mb_types.h:88
signed int INT32
Definition: m2mb_types.h:82
M2MB_PING_CONF_PARAMS_T defines configuration data structure for ping.
Definition: m2mb_ping.h:177
INT32 m2mb_ping_stop(HANDLE handle)
m2mb_ping_stop is called to stop ping procedure.
void * HANDLE
Definition: m2mb_types.h:98
M2MB_PING_CFGID
M2MB_PING_CFGID_E defines configuration IDs for ping.
Definition: m2mb_ping.h:70
M2M base types (ver. )
struct M2MB_PING_COMPLETE_STATUS M2MB_PING_COMPLETE_STATUS_T
M2MB_PING_COMPLETE_STATUS_T defines the data type of M2MB_PING_COMPLETE event.
INT32 m2mb_ping_set_cfg(HANDLE handle, M2MB_PING_CFGID_E cfgID, M2MB_PING_CONF_PARAMS_T *conf_params)
m2mb_ping_set_cfg is called to set the ping configuration.
struct M2MB_PING_INIT_PARAMS M2MB_PING_INIT_PARAMS_T
PING initialization parameters.