diff options
Diffstat (limited to 'platform/location_service.hpp')
-rw-r--r-- | platform/location_service.hpp | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/platform/location_service.hpp b/platform/location_service.hpp new file mode 100644 index 0000000000..ae66d3d5d3 --- /dev/null +++ b/platform/location_service.hpp @@ -0,0 +1,30 @@ +#pragma once + +#include "location.hpp" + +namespace location +{ + +class LocationObserver +{ +public: + virtual void OnLocationStatusChanged(TLocationStatus newStatus) = 0; + virtual void OnGpsUpdated(GpsInfo const & info) = 0; +}; + +class LocationService +{ +protected: + LocationObserver & m_observer; + +public: + LocationService(LocationObserver & observer) : m_observer(observer) {} + virtual ~LocationService() {} + + virtual void Start() = 0; + virtual void Stop() = 0; +}; + +} // namespace location + +extern "C" location::LocationService * CreateDesktopLocationService(location::LocationObserver & observer); |