m2mb API docs  30.00.007
m2mb API sets documentation
m2mb_gnss.h File Reference

m2m base api for gnss functionalities More...

Go to the source code of this file.

Data Structures

struct  M2MB_GNSS_POS_REP_VELOCITY_T
 
struct  M2MB_GNSS_POS_REP_SPEED_T
 
struct  M2MB_GNSS_POSITION_REPORT_INFO_T
 

Typedefs

typedef struct M2MB_GNSS_HANDLE_TAG * M2MB_GNSS_HANDLE
 
typedef void(* m2mb_gnss_callback) (M2MB_GNSS_HANDLE handle, M2MB_GNSS_IND_E event, UINT16 resp_size, void *resp, void *userdata)
 

Enumerations

enum  M2MB_GNSS_IND_E { M2MB_GNSS_INDICATION_POSITION_REPORT, M2MB_GNSS_INDICATION_NMEA_REPORT }
 
enum  M2MB_GNSS_SERVICE_E { M2MB_GNSS_SERVICE_POSITION_REPORT, M2MB_GNSS_SERVICE_NMEA_REPORT }
 

Functions

M2MB_RESULT_E m2mb_gnss_init (M2MB_GNSS_HANDLE *pHandle, m2mb_gnss_callback callback, void *userdata)
 Initializes gnss functionalities. More...
 
M2MB_RESULT_E m2mb_gnss_deinit (M2MB_GNSS_HANDLE handle)
 Deinitializes gnss functionalities. More...
 
M2MB_RESULT_E m2mb_gnss_enable (M2MB_GNSS_HANDLE handle, M2MB_GNSS_SERVICE_E service)
 Enables a gnss service. More...
 
M2MB_RESULT_E m2mb_gnss_disable (M2MB_GNSS_HANDLE handle, M2MB_GNSS_SERVICE_E service)
 Disables a gnss service. More...
 
M2MB_RESULT_E m2mb_gnss_start (M2MB_GNSS_HANDLE handle)
 Starts a service. More...
 
M2MB_RESULT_E m2mb_gnss_stop (M2MB_GNSS_HANDLE handle)
 Stops a service. More...
 

Detailed Description

m2m base api for gnss functionalities

m2m/m2m_common/m2mb_inc/m2mb_gnss.h

m2m base gnss api prototype

@notes Dependencies: math.h, m2mb_types.h

Author
Davide Cubeddu
Date
07/03/2017

Function Documentation

◆ m2mb_gnss_deinit()

M2MB_RESULT_E m2mb_gnss_deinit ( M2MB_GNSS_HANDLE  handle)

Deinitializes gnss functionalities.

Deinitializes gnss functionalities for current client.

Parameters
[in]handlehandle for the gnss functionalities (M2MB_GNSS_HANDLE).
Returns
M2MB_RESULT_E: it returns M2MB_RESULT_SUCCESS on success, a different value on error.

m2mb_gnss_deinit( handle );

◆ m2mb_gnss_disable()

M2MB_RESULT_E m2mb_gnss_disable ( M2MB_GNSS_HANDLE  handle,
M2MB_GNSS_SERVICE_E  service 
)

Disables a gnss service.

m2mb_gnss_disable, for each service to deactivate, configures the system in order to don't manage the specified service.

Parameters
[in]handlehandle for the gnss functionalities (M2MB_GNSS_HANDLE)
[in]serviceservice to deactivate (M2MB_GNSS_SERVICE_E)
Returns
M2MB_RESULT_E: it returns M2MB_RESULT_SUCCESS on success, a different value on error.

m2mb_gnss_disable( handle, M2MB_GNSS_SERVICE_POSITION_REPORT );

◆ m2mb_gnss_enable()

M2MB_RESULT_E m2mb_gnss_enable ( M2MB_GNSS_HANDLE  handle,
M2MB_GNSS_SERVICE_E  service 
)

Enables a gnss service.

m2mb_gnss_enable, for each service to activate, configures the system in order to manage the specified service.

Parameters
[in]handlehandle for the gnss functionalities (M2MB_GNSS_HANDLE)
[in]serviceservice to activate (M2MB_GNSS_SERVICE_E)
Returns
M2MB_RESULT_E: it returns M2MB_RESULT_SUCCESS on success, a different value on error.

m2mb_gnss_enable( handle, M2MB_GNSS_SERVICE_POSITION_REPORT );

◆ m2mb_gnss_init()

M2MB_RESULT_E m2mb_gnss_init ( M2MB_GNSS_HANDLE *  pHandle,
m2mb_gnss_callback  callback,
void *  userdata 
)

Initializes gnss functionalities.

m2mb_gnss_init initializes gnss service for current client returning the handle that must be passed as first parameter for all gnss actions. Calling the m2mb_gnss_init is mandatory before using the gnss service.

Parameters
[in]pHandlepointer to the handle for the gnss functionalities (M2MB_GNSS_HANDLE *). Memory pointed by the pointer must be allocated by the user.
[in]callbackcallback for the gnss indications (m2mb_gnss_callback)
[in]userdatauser data to be returned by callback function (void *)
Returns
M2MB_RESULT_E: it returns M2MB_RESULT_SUCCESS on success, a different value on error.

m2mb_gnss_init( &handle, callback, userdata );

void gnssCallback( M2MB_GNSS_HANDLE handle, M2MB_GNSS_IND_E event, UINT16 resp_size, void *resp, void *userdata )
{
if(event == M2MB_GNSS_INDICATION_POSITION_REPORT)
{
// Success => you can use gnss data arrived.
}
else
{
// Fail
}
}
void M2MB_main( int argc, char **argv )
{
M2MB_GNSS_HANDLE handle;
void *userdata;
userdata = ( void * )m2mb_os_malloc( sizeof( UINT8 ) );
memset( userdata, 12, sizeof( UINT8 ) ); // Test value: 12
if( M2MB_RESULT_SUCCESS != m2mb_gnss_init( &handle, gnssCallback, userdata ) )
{
PRINT("m2mb_gnss_init Fail");
return;
}
PRINT("m2mb_gnss_init Success");
...
}

◆ m2mb_gnss_start()

M2MB_RESULT_E m2mb_gnss_start ( M2MB_GNSS_HANDLE  handle)

Starts a service.

m2mb_gnss_start starts all the services, previously enabled through the m2mb_gnss_enable function, with the proper configuration.

Parameters
[in]handlehandle for the gnss functionalities (M2MB_GNSS_HANDLE)
Returns
M2MB_RESULT_E: it returns M2MB_RESULT_SUCCESS on success, a different value on error.

m2mb_gnss_start( handle );

◆ m2mb_gnss_stop()

M2MB_RESULT_E m2mb_gnss_stop ( M2MB_GNSS_HANDLE  handle)

Stops a service.

m2mb_gnss_stop stops all the services previously enabled through the m2mb_gnss_enable function.

Parameters
[in]handlehandle for the gnss functionalities (M2MB_GNSS_HANDLE)
Returns
M2MB_RESULT_E: it returns M2MB_RESULT_SUCCESS on success, a different value on error.

m2mb_gnss_stop( handle );

m2mb_gnss_init
M2MB_RESULT_E m2mb_gnss_init(M2MB_GNSS_HANDLE *pHandle, m2mb_gnss_callback callback, void *userdata)
Initializes gnss functionalities.
m2mb_os_malloc
void * m2mb_os_malloc(UINT32 size)
Allocates bytes of memory.