Maps SDK for C++ 1.0.0
Loading...
Searching...
No Matches
Magic Lane Maps SDK for C++ API Reference
Welcome to the complete API reference for the Magic Lane Maps SDK for C++. Explore classes and methods for 3D map rendering, turn-by-turn navigation, offline maps, real-time traffic, POI search, geocoding, custom styling, fleet optimization, and more.

Key Capabilities

Area Classes
Maps & Rendering gem::MapViewV2 , gem::IMapViewListener , gem::CanvasBufferRenderer
Search & Geocoding gem::SearchService , gem::SearchPreferences , gem::GuidedAddressSearchService
Routing (incl. EV) gem::RoutingService , gem::RoutePreferences , gem::Route , gem::RouteList
Navigation gem::NavigationService , gem::INavigationListener , gem::NavigationInstruction
Markers & Overlays gem::Marker , gem::MarkerCollection , gem::OverlayService , gem::OverlayItem
Styles & Theming MapViewV2::preferences()
Offline Content gem::ContentStore , gem::ContentStoreItem , gem::MapDownloaderService
Traffic & Weather gem::TrafficReplay , gem::TrafficEvent , gem::weather::Service
Social Layers gem::SocialOverlay , gem::SocialReportsOverlayInfo , gem::SocialLabelsOverlayInfo
Geofencing gem::Geofence , gem::IGeofenceListener
Sensing gem::NavigationService (position tracking)
Fleet / VRP gem::vrp::Service , gem::vrp::dlv::Fleet , gem::vrp::rs::Fleet

Design Principles

ApiObject-style Services

Many high-level managers and views expose a consistent surface:

Shared model types glue the modules together:

Tip: Long-running calls usually accept a ProgressListener and have a matching cancel(...) / cancel(...) to stop gracefully.

Quick Start

  1. Activate & load content
  2. Show a map
  3. Add overlays
  4. Search & route
  5. Navigate & react to live data

Component Interactions

MapViewV2 - the interactive canvas

Key methods:

Markers & Collections

SearchService - POI, text, and spatial queries

RoutingService - multi-criteria & EV routing

NavigationService - turn-by-turn guidance

ContentStore & MapDownloaderService - offline data

SocialOverlay - community reports & labels

Geofence - areas & proximity

Weather::Service - current, hourly, daily

Fleet Optimization (VRP)

Examples

From search to navigation with MapView

// 1) Search
search.search(pois, /*ProgressListener*/{}, "coffee",
// 2) Route
routing.calculateRoute(routes, pois[0], /*destination*/, gem::RoutingPreferences(), /*ProgressListener*/{});
// 3) Display
auto& groups = map.markerCollections();
auto groupId = groups.add("results");
groups.setRenderSettings(groupId, gem::MarkerCollectionRenderSettings());
for(auto& lm : pois) { groups.add(groupId, gem::Marker(lm.position())); }
map.centerOnRoute(routes[0], /*rc*/{}, /*animation*/{});
// 4) Navigate
nav.start(routes[0]);
MapView v2 object - displays a map.
Definition GEM_MapViewV2.h:32
MapView & centerOnRoute(const Route &route, Rect viewRectangle=Rect(), Animation animation=Animation()) noexcept
Center on the given route.
Definition GEM_MapView.h:987
Marker.
Definition GEM_Markers.h:866
Core navigation engine.
Definition GEM_NavigationService.h:118
RectangleGeographicArea object.
Definition GEM_GeographicArea.h:401
RoutingService object.
Definition GEM_RoutingService.h:2928
int calculateRoute(RouteList &possibleRoutes, LandmarkList const &waypoints, RoutePreferences const &routePreferences, ProgressListener progressListener)
Calculate a route between the specified waypoints.
Definition GEM_RoutingService.h:2977
SearchPreferences object.
Definition GEM_SearchPreferences.h:111
SearchService object.
Definition GEM_SearchService.h:94
int search(LandmarkList &results, ProgressListener listener, const AddressInfo &addressInfo, const Coordinates &referenceCoordinates, const SearchPreferences &preferences=SearchPreferences(), const GeographicArea &locationHint=RectangleGeographicArea()) noexcept
Search using address and geographic area as discriminants.
Definition GEM_SearchService.h:137
List< Landmark > LandmarkList
List of Landmark objects.
Definition GEM_ApiLists.h:108
List< Route > RouteList
List of Route objects.
Definition GEM_ApiLists.h:150
Marker collection render settings.
Definition GEM_Markers.h:219

Copyright © 2021-2026 Magic Lane International B.V.