An extension of original API for working with GPS devices.
Diff: GPSProviderImplBase.h
- Revision:
- 8:47fa213225c3
- Parent:
- 3:47aaf0ebde35
--- a/GPSProviderImplBase.h Wed Nov 19 01:34:29 2014 +0000 +++ b/GPSProviderImplBase.h Tue Jun 13 15:19:49 2017 +0000 @@ -18,6 +18,7 @@ #define __GPS_PROVIDER_INSTANCE_BASE_H__ #include "GPSProvider.h" +#include "GPSGeofence.h" class GPSProviderImplBase { public: @@ -44,11 +45,23 @@ virtual void onLocationUpdate(GPSProvider::LocationUpdateCallback_t callback) { locationCallback = callback; } + // [ST-GNSS] - Geofencing API + virtual bool isGeofencingSupported(void) const { + return false; /* Requesting action from porters: override this API if this capability is supported. */ + } + // [ST-GNSS] - Geofencing API + virtual void onGeofencesTrigger(GPSProvider::GeofencesTriggerCallback_t callback) { + geofencesTriggerCallback = callback; + } protected: - GPSProvider::LocationUpdateParams_t lastLocation; - const char *deviceInfo; - GPSProvider::LocationUpdateCallback_t locationCallback; + GPSProvider::LocationUpdateParams_t lastLocation; + const char *deviceInfo; + GPSProvider::LocationUpdateCallback_t locationCallback; + // [ST-GNSS] - Geofencing API + GPSGeofence **geofences; + // [ST-GNSS] - Geofencing API + GPSProvider::GeofencesTriggerCallback_t geofencesTriggerCallback; }; #endif /* __GPS_PROVIDER_INSTANCE_BASE_H__ */