diff options
author | vng <viktor.govako@gmail.com> | 2014-10-05 20:13:01 +0400 |
---|---|---|
committer | Alex Zolotarev <alex@maps.me> | 2015-09-23 02:29:30 +0300 |
commit | b09c040bab1042e47a1a499c42161241fb8f7688 (patch) | |
tree | 2eb9aa47b6a69612d260d7f60b494f4871901134 /map/location_state.hpp | |
parent | a69be8e1038a4c3bf48b78af1d89d4e3f0a313e6 (diff) |
Cross-platform logic of choosing bearing between GPS and Compass, according to the current use case.
Diffstat (limited to 'map/location_state.hpp')
-rw-r--r-- | map/location_state.hpp | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/map/location_state.hpp b/map/location_state.hpp index 772a85fd47..c57f75d653 100644 --- a/map/location_state.hpp +++ b/map/location_state.hpp @@ -4,6 +4,8 @@ #include "../geometry/point2d.hpp" +#include "../base/timer.hpp" + #include "../std/function.hpp" #include "../std/shared_ptr.hpp" #include "../std/unique_ptr.hpp" @@ -135,6 +137,10 @@ namespace location ScreenBase const & GetModelView() const; + void Assign(location::GpsInfo const & info); + bool Assign(location::CompassInfo const & info); + void SetDirection(double bearing); + private: // Mode bits // { @@ -151,6 +157,7 @@ namespace location double m_errorRadius; //< error radius in mercator m2::PointD m_position; //< position in mercator double m_drawDirection; + my::Timer m_lastGPSBearing; Mode m_afterPendingMode; typedef map<int, TStateModeListener> TModeListeners; |