MapContext (API Reference)
Class MapContext
MapContext is the rendering engine and the context in which virtual geographic maps get rendered.
It runs the render loop or offers the means for the user to run a custom one.
Data sources, assets and virtual maps can be attached to the context. A virtual map can only render data from sources attached to the same context.
The graphics backend to be used by the engine can be choosen by the user or a platform suitable one can be automatically selected internally. Only one graphics backend can be active and once selected it cannot be changed.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic enumThe severity of a free resource request.static final classMemory management options.static final classMemory management result.static enumThe memory management result code.static enumThe memory management strategy.static enumTypes of system resources used byMapContextor any of the entities attached to it, likeHereMap.static interfaceCallback to handle the memory management result. -
Method Summary
Modifier and TypeMethodDescriptionvoidfreeResource(MapContext.ResourceType type, MapContext.FreeResourceSeverity severity) Frees a system resource held by theMapContextand all entities attached to it, likeHereMap.voidsetMemoryManagementOptions(MapContext.MemoryManagementOptions memoryManagementOptions, MapContext.SetMemoryManagementOptionsCallback callback) Sets memory management options for controlling tile cache and video memory usage.
-
Method Details
-
freeResource
public void freeResource(@NonNull MapContext.ResourceType type, @NonNull MapContext.FreeResourceSeverity severity) Frees a system resource held by the
MapContextand all entities attached to it, likeHereMap. This function is intended for use when a system resource availability becomes low. For example, some memory can be freed when the application transitions to the background state.- Parameters:
type-Type of resource to be freed.
severity-Severity of the request.
-
getMemoryManagementOptions
- Returns:
Gets the current memory management options. Returns the actual applied memory limits. If the underlying system limits exceed int32_t max value (2,147,483,647 KiB or ~2 TiB), the returned value is clamped to int32_t max.
Note: This is a beta release of this feature, so there could be a few bugs and unexpected behavior. Related APIs may change for new releases without a deprecation process.
-
setMemoryManagementOptions
public void setMemoryManagementOptions(@NonNull MapContext.MemoryManagementOptions memoryManagementOptions, @Nullable MapContext.SetMemoryManagementOptionsCallback callback) Sets memory management options for controlling tile cache and video memory usage. In
MapContext.MemoryManagementOptionsoptional parameters withnullor non positive values will be ignored, preserving their existing settings.Note: This is a beta release of this feature, so there could be a few bugs and unexpected behavior. Related APIs may change for new releases without a deprecation process.
- Parameters:
memoryManagementOptions-The memory management options to set.
callback-Optional callback used upon completion to pass the return value to the caller.
The callback is called on the main thread.
-