|
Maps SDK for C++ 1.0.0
|
Mock position. More...


Public Types | |
| enum class | EProvider { Unknown , GPS , Network , SensorFusion , MapMatching , Simulation } |
| Values that represent the type of position provider. More... | |
| enum class | EFixQuality { Invalid , Inertial , Low , High } |
| Values that represent position data quality. More... | |
Public Member Functions | |
| LargeInteger | getAcquisitionTimestamp () const override |
| LargeInteger | getSatelliteTime () const override |
| Satellite timestamp, milliseconds since 1970. | |
| EProvider | getProvider () const override |
| Provider type: GPS, Network, Unknown. | |
| double | getLatitude () const override |
| Geographical latitude. | |
| double | getLongitude () const override |
| Geographical longitude. | |
| double | getAltitude () const override |
| Altitude above main sea level. | |
| double | getSpeed () const override |
| Travel speed. | |
| double | getSpeedAccuracy () const override |
| Travel speed accuracy. | |
| double | getCourse () const override |
| The course of the movement. | |
| double | getCourseAccuracy () const override |
| Course accuracy. | |
| double | getHorizontalAccuracy () const override |
| Horizontal accuracy of position. | |
| double | getVerticalAccuracy () const override |
| Vertical accuracy of position. | |
| EFixQuality | getFixQuality () const override |
| Fix quality (whether this position is trustworthy); see the explanations at EFixQuality. | |
| bool | hasCoordinates () const override |
| Query if this object has valid coordinates. | |
| bool | hasAltitude () const override |
| Query if this object has altitude. | |
| bool | hasSpeed () const override |
| Query if this object has speed. | |
| bool | hasSpeedAccuracy () const override |
| Query if this object has speed accuracy. | |
| bool | hasCourse () const override |
| Query if this object has course. | |
| bool | hasCourseAccuracy () const override |
| Query if this object has course accuracy. | |
| bool | hasHorizontalAccuracy () const override |
| Query if this object has horizontal accuracy. | |
| bool | hasVerticalAccuracy () const override |
| Query if this object has vertical accuracy. | |
| EDataType | getType () const override |
| Get data type. | |
| LargeInteger | getSatelliteTimestamp () const |
| Satellite timestamp, milliseconds since 1970. | |
| Coordinates | getCoordinates () const |
| Latitude and longitude. | |
| bool | isValid () const |
| Time | getTime () const |
| template<typename TDerivedType> | |
| StrongPointer< TDerivedType > | cast () |
| Cast to a derived type. | |
Static Public Member Functions | |
| static MockPositionPtr | produce (const double &latitude=kUndefined, const double &longitude=kUndefined, const double &altitude=kUndefined, const double &speed=kUndefined, const double &course=kUndefined, int fix=kUndefinedFix) |
| Create a mock position data object. | |
| static bool | isSameType (const IData *ptr) |
| Check if a certain data element is of Position type. | |
Mock position.
|
stronginherited |
Values that represent position data quality.
Invalid means the position can not or should not be processed (for instance, invalid coordinates)
Inertial means position has resulted from inertial extrapolation; there is a GPS outage (e.g. tunnel)
Low means the position is valid but cannot be trusted because of bad GPS accuracy (e.g. urban canyon)
High means the position is valid and can be trusted (is recent and has a good accuracy)
|
stronginherited |
Values that represent the type of position provider.
GPS means that the position comes from a GPS sensor.
Network means that the position comes from a network source, but not GPS.
|
inlineinherited |
Cast to a derived type.
|
inlineoverridevirtual |
Implements gem::sense::IData.
|
inlineoverridevirtual |
|
inlineinherited |
Latitude and longitude.
If both values are equal to 0, the position is considered invalid
|
inlineoverridevirtual |
The course of the movement.
Represents true heading, not magnetic heading.
0 means true north, 90 east, 180 south, 270 west.
A negative value (-1 by default) means the position has no course information.
Implements gem::sense::IPosition.
|
inlineoverridevirtual |
Course accuracy.
Typical accuracy for consumer GPS is 25 degrees at high speeds.
Valid course accuracy should always be positive.
Implements gem::sense::IPosition.
|
inlineoverridevirtual |
Fix quality (whether this position is trustworthy); see the explanations at EFixQuality.
Implements gem::sense::IPosition.
|
inlineoverridevirtual |
Horizontal accuracy of position.
Typical accuracy for consumer GPS is 5-20 meters.
Valid position accuracy should always be positive.
Implements gem::sense::IPosition.
|
inlineoverridevirtual |
Geographical latitude.
From -90 to +90; positive on northern hemisphere
If value is out of the -90...90 range, the position is considered invalid.
Implements gem::sense::IPosition.
|
inlineoverridevirtual |
Geographical longitude.
From -180 to +180; positive on eastern hemisphere
If value is out of the -180...180 range, the position is considered invalid.
Implements gem::sense::IPosition.
|
inlineoverridevirtual |
|
inlineoverridevirtual |
Satellite timestamp, milliseconds since 1970.
Timestamps are expected to increase monotonously for subsequent positions; data with timestamp from the past will be discarded.
Implements gem::sense::IPosition.
|
inlineinherited |
Satellite timestamp, milliseconds since 1970.
Timestamps are expected to increase monotonously for subsequent positions; data with timestamp from the past will be discarded.
|
inlineoverridevirtual |
Travel speed.
Valid speed information should always be non-negative.
A negative value (-1 by default) means the position has no speed information.
If car is going backwards, the course should change by 180, but the speed should still be non-negative.
Implements gem::sense::IPosition.
|
inlineoverridevirtual |
Travel speed accuracy.
Typical accuracy for consumer GPS is 2 m/s at steady speed and high position accuracy.
Valid speed accuracy should always be positive.
Implements gem::sense::IPosition.
|
inlineinherited |
|
inlineoverridevirtualinherited |
|
inlineoverridevirtual |
Vertical accuracy of position.
Valid position accuracy should always be positive.
Implements gem::sense::IPosition.
|
inlineoverridevirtual |
Query if this object has altitude.
Implements gem::sense::IPosition.
|
inlineoverridevirtual |
Query if this object has valid coordinates.
Implements gem::sense::IPosition.
|
inlineoverridevirtual |
Query if this object has course.
Implements gem::sense::IPosition.
|
inlineoverridevirtual |
Query if this object has course accuracy.
Implements gem::sense::IPosition.
|
inlineoverridevirtual |
Query if this object has horizontal accuracy.
Implements gem::sense::IPosition.
|
inlineoverridevirtual |
Query if this object has speed.
Implements gem::sense::IPosition.
|
inlineoverridevirtual |
Query if this object has speed accuracy.
Implements gem::sense::IPosition.
|
inlineoverridevirtual |
Query if this object has vertical accuracy.
Implements gem::sense::IPosition.
|
inlinestaticinherited |
Check if a certain data element is of Position type.
| ptr | The other IData pointer to check against. |
|
inlineinherited |
|
inlinestatic |
Create a mock position data object.
| latitude | The latitude of the position in degrees. |
| longitude | The longitude of the position in degrees. |
| altitude | The altitude in meters. |
| speed | The speed in meter/second. |
| course | The course in degrees. |
| fix | The fix quality. |