E-Mobility SDK
Completely offline C++ based solution kit to extend existing product with E-Mobility features. We are providing mapping, routing and navigation solutions with more than 15 years of E-Bike navigation software experience. Detailed customizable maps, including large list of POIs, optimal route detection, precise turn-by-turn navigation, and much more.
SDK Functions | |
bool | GTSDKInitEngine (const wchar_t* uniqueID, const wchar_t* sdkKey, const wchar_t* dataPath) |
Inits the map engine. This function has to be called first. | |
int | GTSDKUpdateMap (const unsigned char *buffer, int bufferSize, int pixelFormat, int width, int height) |
Draws the map to the buffer. It runs only max 50 millisecond at a time. If the draw is not finished it continues next time. Using this behavior it can run in onDraw function, and if returns true you can call postInvalidate() function to continue drawing next time. | |
int | GTSDKZoomMap (double factor) |
Zooms the map with a factor. | |
int | GTSDKZoomMapToScreenPosition (double factor, double x, double y) |
Zooms the map with a factor, taking zooming focus the x,y screen coordinates. | |
void | GTSDKMoveMap (double xOffset, double yOffset) |
Pans the map. | |
bool | GTSDKStartRoutePlan (double latStart, double lonStart, double latEnd, double lonEnd, int vehicleType, int routeplanMode, int majorRoadWeight, int unpavedRoadWeight, int cycleRoadWeight, int ferriesWeight, bool useOnewayStreetsBothDirections, int bearing) |
Sets up route planner with given parameters. | |
void | GTSDKScreenToMap (double x, double y, double &lat, double &lon) |
Converts screen coordinate to geo position. | |
void | GTSDKMapToScreen (double lat, double lon, double &x, double &y) |
Converts geo position to screen coordinate. | |
bool | GTSDKUpdateRoutePlan (int timeOut, double &progress, int &routeId) |
Runs route planning for a given milliseconds. | |
int | GTSDKAddressSearchGetCountryCount () |
Returns the number of countries for address search. | |
wchar_t* | GTSDKAddressSearchGetCountryName (int idx) |
Returns the name of the country. | |
void | GTSDKAddressSearchSelectCountry (const wchar_t* name) |
Selects a country for further searching. | |
wchar_t* | GTSDKAddressSearchFilterCity (const wchar_t* filter, int &count) |
Filters the results of cities. | |
int | GTSDKAddressSearchGetCityCount (const wchar_t* filter) |
Prepares a result list of cities matching the filter. | |
wchar_t* | GTSDKAddressSearchGetCityName (int idx) |
Returns a city name in the result list. | |
void | GTSDKAddressSearchSelectCity (const wchar_t* name) |
Selects a city for further searching. | |
wchar_t* | GTSDKAddressSearchFilterStreet (const wchar_t* filter, int &count) |
Filters the results of streets. | |
int | GTSDKAddressSearchGetStreetCount (const wchar_t* filter) |
Prepares a result list of streets matching the filter. | |
wchar_t* | GTSDKAddressSearchGetStreetName (int idx) |
Returns a city name in the result list. | |
void | GTSDKAddressSearchSelectStreet (const wchar_t* name) |
Selects a street for further searching. | |
int | GTSDKAddressSearchGetHouseNumberCount () |
Returns the housenumber count of selected street. | |
wchar_t* | GTSDKAddressSearchGetHouseNumber (int houseNumberIdx) |
Returns a house number. | |
bool | GTSDKAddressSearchGetLatLonForHouseNumberIdx (int houseNumberIdx, double &lat, double &lon) |
Returns the coordinate of selected house number. | |
wchar_t* | GTSDKPOISearch (double lat, double lon, const wchar_t* filter, int typeFilter, int &poiCount) |
Search POIs near to given coordinate. | |
wchar_t* | GTSDKGetPOINameByIdx (int idx) |
Returns a POI name in the result list. | |
wchar_t* | GTSDKGetPOIDetailsByIdx (int idx, int &type, double &lat, double &lon) |
Returns details of a POI. | |
bool | GTSDKHasEngineNotification () |
Query the engine if there is a notification. | |
void | GTSDKGetEngineNotification (int ¬ificationType, int ¬ificationInfo) |
Gets the top engine notification. | |
double | GTSDKStartNavigation (int routeId, int red, int green, int blue, int redOutline, int greenOutline, int blueOutline, int redOutlineBorder, int greenOutlineBorder, int blueOutlineBorder) |
Starts the navigation. | |
void | GTSDKStopNavigation () |
Stops the navigation. | |
wchar_t* | GTSDKGetTurnInfo () |
Returns the info of the next turn in XML format. | |
void | GTSDKUpdateGPSData (float direction, double lat, double lon, float alt, float speed, int year, int month, int day, int hour, int minute, int second) |
updates engine with a new gps position and data | |
void | GTSDKSetFollowMode (bool followMode) |
Sets the follow mode to track the gps cursor. | |
void | GTSDKAddRouteToMap (int routeId, int red, int green, int blue, int redOutline, int greenOutline, int blueOutline, int redOutlineBorder, int greenOutlineBorder, int blueOutlineBorder) |
Adds a route to the map to display. | |
void | GTSDKRemoveRouteFromMap (int routeId) |
Removes a route from the map. | |
void | GTSDKDeleteRoute (int routeId) |
Deletes a route. | |
void | GTSDKSetMapColor (int type, int red, int green, int blue, int redOutline, int greenOutline, int blueOutline) |
Sets the color of a map feature. | |
void | GTSDKInitEBike (int vendorId, int bikeId, double batteryCapacity, double batteryVoltage, double bikeWeight, int minAssistLevel, int maxAssistLevel, int currentAssistLevel, double currentBatteryLevel) |
Inits E-Bike data. | |
void | GTSDKUpdateEBikeData (int type, double value) |
Update E-Bike actual data. | |
void | GTSDKDisplayRangeOnMap (bool display, int red1, int green1, int blue1, int red2, int green2, int blue2, int red3, int green3, int blue3, int redOutline, int greenOutline, int blueOutline) |
Display range patch on map range stripes ( 50-75%, 75-90%, 90-100% ) | |
void | GTSDKSetRangeCenter (double lat, double lon) |
Sets the range dislpay center to a map position, and recalculates it. | |
void | GTSDKSetMapCenter (double lat, double lon) |
Sets the map center to a position. | |
void | GTSDKSetZoomLevel (double zoomLevel) |
Sets the actual zoom level ( levels are from 1 to 15 ) | |
double | GTSDKGetZoomLevel () |
Gets the actual zoom level ( levels are from 1 to 15 ) | |
Member Typedef Documentation
wchar_t* GTSDKAddressSearchFilterCity (const wchar_t* filter, int &count) |
Filters the results of cities.
- Parameters
filter Sets the filter of the cities count Out parameter count of the results.
- Returns
- String of the next characters you can enter.
wchar_t* GTSDKAddressSearchFilterStreet (const wchar_t* filter, int &count) |
Filters the results of streets.
- Parameters
filter Sets the filter of the streets count Out parameter count of the results.
- Returns
- wchar_t* List of the next characters you can enter.
int GTSDKAddressSearchGetCityCount (const wchar_t* filter) |
Prepares a result list of cities matching the filter.
- Parameters
filter Sets the filter of the cities
- Returns
- Size of the city result list
wchar_t* GTSDKAddressSearchGetCityName (int idx) |
Returns a city name in the result list.
- Parameters
idx Index of the city name
- Returns
- Name of the city
int GTSDKAddressSearchGetCountryCount () |
Returns the number of countries for address search.
- Returns
- Number of countries for address search.
wchar_t* GTSDKAddressSearchGetCountryName (int idx) |
Returns the name of the country.
- Parameters
idx Index of the country
- Returns
- Name of the country
wchar_t* GTSDKAddressSearchGetHouseNumber (int houseNumberIdx) |
Returns a house number.
- Parameters
houseNumberIdx Index of the housenumber in the list. This list contains a Street Center too.
- Returns
- House number as a wchar_t*.
int GTSDKAddressSearchGetHouseNumberCount () |
Returns the housenumber count of selected street.
- Returns
- The count of housenumbers.
bool GTSDKAddressSearchGetLatLonForHouseNumberIdx (int houseNumberIdx, double &lat, double &lon) |
Returns the coordinate of selected house number.
- Parameters
houseNumberIdx Index of the housenumber in the list lat out parameter latitude of the geo position of house number of the street. lon out parameter longitude of the geo position of house number of the street.
- Returns
- House number as a wchar_t*.
int GTSDKAddressSearchGetStreetCount (const wchar_t* filter) |
Prepares a result list of streets matching the filter.
- Parameters
filter Sets the filter of the streets
- Returns
- Size of the street result list
wchar_t* GTSDKAddressSearchGetStreetName (int idx) |
Returns a city name in the result list.
- Parameters
idx Index of the city name
- Returns
- Name of the city
void GTSDKAddressSearchSelectCity (const wchar_t* name) |
Selects a city for further searching.
- Parameters
name Name of the city
- Returns
- Void.
void GTSDKAddressSearchSelectCountry (const wchar_t* name) |
Selects a country for further searching.
- Parameters
name Name of the country
- Returns
- Void.
void GTSDKAddressSearchSelectStreet (const wchar_t* name) |
Selects a street for further searching.
- Parameters
name Name of the street
- Returns
- Void.
void GTSDKAddRouteToMap (int routeId, int red, int green, int blue, int redOutline, int greenOutline, int blueOutline, int redOutlineBorder, int greenOutlineBorder, int blueOutlineBorder) |
Adds a route to the map to display.
- Parameters
routeId id of the route red red channel of the inner color of the route green green channel of the inner color of the route blue blue channel of the inner color of the route redOutline red channel of the outline color of the route greenOutline green channel of the outline color of the route blueOutline blue channel of the outline color of the route redOutlineBorder red channel of the outlineborder color of the route greenOutlineBorder green channel of the outlineborder color of the route blueOutlineBorder blue channel of the outlineborder color of the route
- Returns
- void
void GTSDKDeleteRoute (int routeId) |
Deletes a route.
- Parameters
routeId id of the route to delete
- Returns
- void
void GTSDKDisplayRangeOnMap (bool display, int red1, int green1, int blue1, int red2, int green2, int blue2, int red3, int green3, int blue3, int redOutline, int greenOutline, int blueOutline) |
Display range patch on map range stripes ( 50-75%, 75-90%, 90-100% )
- Parameters
display to display or not the range on map red1 red channel of the inner color of the range stripe 1 green1 green channel of the inner color of the range stripe 1 blue1 blue channel of the inner color of the the range stripe 1 red2 red channel of the inner color of the range stripe 2 green2 green channel of the inner color of the range stripe 2 blue2 blue channel of the inner color of the the range stripe 2 red3 red channel of the inner color of the range stripe 3 green3 green channel of the inner color of the range stripe 3 blue3 blue channel of the inner color of the the range stripe 3 redOutline red channel of the inner color of the range outline greenOutline green channel of the inner color of the range outline blueOutline blue channel of the inner color of the the range outline
- Returns
- void
void GTSDKGetEngineNotification (int ¬ificationType, int ¬ificationInfo) |
Gets the top engine notification.
- Parameters
notificationType out parameter type of the notification. See EngineNotificationType. notificationInfo out parameter longitude of the geo position of house number of the street.
- Returns
- void
wchar_t* GTSDKGetPOIDetailsByIdx (int idx, int &type, double &lat, double &lon) |
Returns details of a POI.
- Parameters
idx Index of the POI type out parameter type of POI. lat out parameter latitude of the geo position of house number of the street. lon out parameter longitude of the geo position of house number of the street.
- Returns
- Description XML of the POI
wchar_t* GTSDKGetPOINameByIdx (int idx) |
Returns a POI name in the result list.
- Parameters
idx Index of the POI
- Returns
- Name of the POI
wchar_t* GTSDKGetTurnInfo () |
Returns the info of the next turn in XML format.
- Returns
- wchar_t* info of the next turn in XML format
double GTSDKGetZoomLevel () |
Gets the actual zoom level ( levels are from 1 to 15 )
- Returns
- actual zoom level
bool GTSDKHasEngineNotification () |
Query the engine if there is a notification.
- Returns
- bool true if there is a notification.
void GTSDKInitEBike (int vendorId, int bikeId, double batteryCapacity, double batteryVoltage, double bikeWeight, int minAssistLevel, int maxAssistLevel, int currentAssistLevel, double currentBatteryLevel) |
Inits E-Bike data.
- Parameters
vendorId id of the manufacturer bikeId id if the E-Bike batteryCapacity in Ah batteryVoltage in V bikeWeight in kg minAssistLevel minimum assist level maxAssistLevel maximum assist level currentAssistLevel current Assist Level currentBatteryLevel current SOC
- Returns
- void
bool GTSDKInitEngine (const wchar_t* uniqueID, const wchar_t* sdkKey, const wchar_t* dataPath) |
Inits the map engine. This function has to be called first.
- Parameters
uniqueID Device unique ID. sdkKey The license key you can use the SDK with. dataPath Path of the mapengine resource and map files.
- Returns
- true if engine init was successful, false if something went wrong
void GTSDKMapToScreen (double lat, double lon, double &x, double &y) |
Converts geo position to screen coordinate.
- Parameters
lat Latitude of the geo position lon Longitude of the geo position x Out parameter X pixel coordinate of point. y Out parameter Y pixel coordinate of point.
- Returns
- void.
void GTSDKMoveMap (double xOffset, double yOffset) |
Pans the map.
- Parameters
xOffset Pixel x offset of panning. yOffset Pixel y offset of panning.
- Returns
- void.
wchar_t* GTSDKPOISearch (double lat, double lon, const wchar_t* filter, int typeFilter, int &poiCount) |
Search POIs near to given coordinate.
- Parameters
lat Latitude of the geo position lon Longitude of the geo position filter Filter for results. typeFilter Type filter of results. Set -1 to search for all. To filter to specific types set this to a POICategory. poiCount Out parameter count of the results.
- Returns
- House number as a wchar_t*.
void GTSDKRemoveRouteFromMap (int routeId) |
Removes a route from the map.
- Parameters
routeId id of the route
- Returns
- void
void GTSDKScreenToMap (double x, double y, double &lat, double &lon) |
Converts screen coordinate to geo position.
- Parameters
x X pixel coordinate of point y Y pixel coordinate of point lat out parameter latitude of the geo position. lon out parameter longitude of the geo position.
- Returns
- void.
void GTSDKSetFollowMode (bool followMode) |
Sets the follow mode to track the gps cursor.
- Parameters
direction current direction of vehicle ( north 0 degrees, west 90 degrees etc. ) lat of gps coordinate lon of gps coordinate alt gps altitude speed gps speed year of gps timestamp month of gps timestamp day of gps timestamp hour of gps timestamp minute of gps timestamp second of gps timestamp
- Returns
- void
void GTSDKSetMapCenter (double lat, double lon) |
Sets the map center to a position.
- Parameters
display to display or not the range on map lat Latitude of the geo position lon Longitude of the geo position
- Returns
- void
void GTSDKSetMapColor (int type, int red, int green, int blue, int redOutline, int greenOutline, int blueOutline) |
Sets the color of a map feature.
- Parameters
type of the map feature. See MapColorType. red red channel of the inner color of the map feature green green channel of the inner color of the map feature blue blue channel of the inner color of the map feature redOutline red channel of the outline color of the map feature greenOutline green channel of the outline color of the map feature blueOutline blue channel of the outline color of the map feature
- Returns
- void
void GTSDKSetRangeCenter (double lat, double lon) |
Sets the range dislpay center to a map position, and recalculates it.
- Parameters
display to display or not the range on map lat Latitude of the geo position lon Longitude of the geo position
- Returns
- void
void GTSDKSetZoomLevel (double zoomLevel) |
Sets the actual zoom level ( levels are from 1 to 15 )
- Parameters
zoomLevel
- Returns
- void
double* GTSDKStartNavigation (int routeId, int red, int green, int blue, int redOutline, int greenOutline, int blueOutline, int redOutlineBorder, int greenOutlineBorder, int blueOutlineBorder) |
Starts the navigation.
- Parameters
routeId id of the route the navigation will start on red red channel of the inner color of the navigation route green green channel of the inner color of the navigation route blue blue channel of the inner color of the navigation route redOutline red channel of the outline color of the navigation route greenOutline green channel of the outline color of the navigation route blueOutline blue channel of the outline color of the navigation route redOutlineBorder red channel of the outlineborder color of the navigation route greenOutlineBorder green channel of the outlineborder color of the navigation route blueOutlineBorder blue channel of the outlineborder color of the navigation route
- Returns
- void
bool GTSDKStartRoutePlan (double latStart, double lonStart, double latEnd, double lonEnd, int vehicleType, int routeplanMode, int majorRoadWeight, int unpavedRoadWeight, int cycleRoadWeight, int ferriesWeight, bool useOnewayStreetsBothDirections, int bearing) |
Sets up route planner with given parameters.
- Parameters
buffer Byte buffer where the map will be copied to latStart latitude of start point lonStart longitude of start point latEnd latitude of end point lonEnd longitude of end point vehicleType Vehicle type like VEHICLETYPE_BICYCLE, VEHICLETYPE_MTB, VEHICLETYPE_SPEED, VEHICLETYPE_PEDESTRIAN routeplanMode Route plan mode like ROUTEPLANMODE_SUGGESTED, ROUTEPLANMODE_EASIEST, ROUTEPLANMODE_SHORTEST majorRoadWeight Major road weight like ROADTYPEWEIGHT_TRYTOAVOID, ROADTYPEWEIGHT_ALLOW, ROADTYPEWEIGHT_PREFER unpavedRoadWeight Unpaved road weight like ROADTYPEWEIGHT_TRYTOAVOID, ROADTYPEWEIGHT_ALLOW, ROADTYPEWEIGHT_PREFER cycleRoadWeight Cycle road weight like ROADTYPEWEIGHT_TRYTOAVOID, ROADTYPEWEIGHT_ALLOW, ROADTYPEWEIGHT_PREFER ferriesWeight Ferries weight like ROADTYPEWEIGHT_TRYTOAVOID, ROADTYPEWEIGHT_ALLOW, ROADTYPEWEIGHT_PREFER useOnewayStreetsBothDirections If true route planner will ignore one way restriction in low level road classes bearing The angle of the user from north. If this is not zero route planner will plan a route using your direction and tries to plan route straight.
- Returns
- true if parameters are ok false if there was an error
void GTSDKStopNavigation () |
Stops the navigation.
- Returns
- void
void GTSDKUpdateEBikeData (int type, double value) |
Update E-Bike actual data.
- Parameters
type of the map feature. See EBikeDataType. value of the given data.
- Returns
- void
void GTSDKUpdateGPSData (float direction, double lat, double lon, float alt, float speed, int year, int month, int day, int hour, int minute, int second) |
updates engine with a new gps position and data
- Parameters
direction current direction of vehicle ( north 0 degrees, west 90 degrees etc. ) lat of gps coordinate lon of gps coordinate alt gps altitude speed gps speed year of gps timestamp month of gps timestamp day of gps timestamp hour of gps timestamp minute of gps timestamp second of gps timestamp
- Returns
- void
int GTSDKUpdateMap (const unsigned char *buffer, int bufferSize, int pixelFormat, int width, int height) |
Draws the map to the buffer. It runs only max 50 millisecond at a time. If the draw is not finished it continues next time. Using this behavior it can run in onDraw function, and if returns true you can call postInvalidate() function to continue drawing next time.
- Parameters
buffer byte buffer wher the map will be copied to bufferSize size of the buffer pixelFormat PIXELFORMAT_RGB565 = 0, PIXELFORMAT_RGB888 = 1 width Pixel width of the map height Pixel height of the map
- Returns
- true if more draw time needed.
bool GTSDKUpdateRoutePlan (int timeOut, double &progress, int &routeId) |
Runs route planning for a given milliseconds.
- Parameters
timeOut Running time in milliseconds. If timeout occurs it pauses route planning and continues next updateRoutePlan call. progress Out parameter percent of route planning progress. routeId Id of the planned route. If planning is not finished or failed, result is -1
- Returns
- true if route planning still has to run.
int GTSDKZoomMap (double factor) |
Zooms the map with a factor.
- Parameters
factor The factor of zooming, e.g. 2 is zoom out one level and 0.5 is zoom in one level.
- Returns
- true if zoom limit is reached.
int GTSDKZoomMapToScreenPosition (double factor, double x, double y) |
Zooms the map with a factor, taking zooming focus the x,y screen coordinates.
- Parameters
factor The factor of zooming, e.g. 2 is zoom out one level and 0.5 is zoom in one level. x X screen position of zooming focus point. y Y screen position of zooming focus point.
- Returns
- true if zoom limit is reached.