Files
Meshtastic-Android/api/feature/map/org.meshtastic.feature.map.layers/index.html
T

521 lines
70 KiB
HTML

<!doctype html>
<html class="no-js" lang="en">
<head>
<meta name="viewport" content="width=device-width, initial-scale=1" charset="UTF-8">
<title>org.meshtastic.feature.map.layers</title>
<link href="../../../images/logo-icon.svg" rel="icon" type="image/svg"><script>var pathToRoot = "../../../";</script>
<script>document.documentElement.classList.replace("no-js", "js");</script>
<script>const storage = localStorage.getItem("dokka-dark-mode")
if (storage == null) {
const osDarkSchemePreferred = window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches
if (osDarkSchemePreferred === true) {
document.getElementsByTagName("html")[0].classList.add("theme-dark")
}
} else {
const savedDarkMode = JSON.parse(storage)
if (savedDarkMode === true) {
document.getElementsByTagName("html")[0].classList.add("theme-dark")
}
}
</script>
<script type="text/javascript" src="../../../scripts/sourceset_dependencies.js" async></script>
<link href="../../../styles/style.css" rel="Stylesheet">
<link href="../../../styles/main.css" rel="Stylesheet">
<link href="../../../styles/prism.css" rel="Stylesheet">
<link href="../../../styles/logo-styles.css" rel="Stylesheet">
<link href="../../../ui-kit/ui-kit.min.css" rel="Stylesheet">
<script type="text/javascript" src="../../../scripts/safe-local-storage_blocking.js"></script>
<script type="text/javascript" src="../../../scripts/navigation-loader.js" async></script>
<script type="text/javascript" src="../../../scripts/platform-content-handler.js" async></script>
<script type="text/javascript" src="../../../scripts/main.js" defer></script>
<script type="text/javascript" src="../../../scripts/prism.js" async></script>
<script type="text/javascript" src="../../../ui-kit/ui-kit.min.js" defer></script></head>
<body>
<div class="root">
<header class="navigation theme-dark" id="navigation-wrapper" role="banner">
<a class="library-name--link" href="../../../index.html" tabindex="1">
Meshtastic App
</a> <button class="navigation-controls--btn navigation-controls--btn_toc ui-kit_mobile-only" id="toc-toggle" type="button">Toggle table of contents
</button>
<div class="navigation-controls--break ui-kit_mobile-only"></div>
<div class="library-version" id="library-version">
</div>
<div class="navigation-controls">
<ul class="filter-section filter-section_loading" id="filter-section" aria-label="Target filter">
<button class="platform-tag platform-selector jvm-like" data-active="" aria-pressed="true" data-filter=":feature:map/androidMain">android</button>
<button class="platform-tag platform-selector common-like" data-active="" aria-pressed="true" data-filter=":feature:map/commonMain">common</button>
<button class="platform-tag platform-selector jvm-like" data-active="" aria-pressed="true" data-filter=":feature:map/jvmMain">jvm</button>
<div class="dropdown filter-section--dropdown" data-role="dropdown" id="filter-section-dropdown">
<button class="button button_dropdown filter-section--dropdown-toggle" role="combobox" data-role="dropdown-toggle" aria-controls="platform-tags-listbox" aria-haspopup="listbox" aria-expanded="false" aria-label="Toggle source sets"></button>
<ul role="listbox" id="platform-tags-listbox" class="dropdown--list" data-role="dropdown-listbox" aria-label="Target filter">
<div class="dropdown--header"><span>Target filter</span>
<button class="button" data-role="dropdown-toggle" aria-label="Close target filter">
<i class="ui-kit-icon ui-kit-icon_cross"></i>
</button>
</div>
<li role="option" class="dropdown--option platform-selector-option jvm-like" tabindex="0">
<label class="checkbox">
<input type="checkbox" class="checkbox--input" id=":feature:map/androidMain" data-filter=":feature:map/androidMain">
<span class="checkbox--icon"></span>
android
</label>
</li>
<li role="option" class="dropdown--option platform-selector-option common-like" tabindex="0">
<label class="checkbox">
<input type="checkbox" class="checkbox--input" id=":feature:map/commonMain" data-filter=":feature:map/commonMain">
<span class="checkbox--icon"></span>
common
</label>
</li>
<li role="option" class="dropdown--option platform-selector-option jvm-like" tabindex="0">
<label class="checkbox">
<input type="checkbox" class="checkbox--input" id=":feature:map/jvmMain" data-filter=":feature:map/jvmMain">
<span class="checkbox--icon"></span>
jvm
</label>
</li>
</ul>
<div class="dropdown--overlay"></div>
</div>
</ul>
<button class="navigation-controls--btn navigation-controls--btn_theme" id="theme-toggle-button" type="button">Switch theme
</button>
<div class="navigation-controls--btn navigation-controls--btn_search" id="searchBar" role="button">Search in
API
</div>
</div>
</header>
<div id="container">
<nav id="leftColumn" class="sidebar" data-item-type="SECTION" data-item-config="{&quot;defaultSize&quot;: 280, &quot;minSize&quot;: 200, &quot;maxSize&quot;: 400}">
<a class="toc--skip-link" href="#main">Skip to content</a>
<div class="dropdown theme-dark_mobile" data-role="dropdown" id="toc-dropdown">
<ul role="listbox" id="toc-listbox" class="dropdown--list dropdown--list_toc-list" data-role="dropdown-listbox" aria-label="Table of contents">
<div class="dropdown--header">
<span>
Meshtastic App
</span>
<button class="button" data-role="dropdown-toggle" aria-label="Close table of contents">
<i class="ui-kit-icon ui-kit-icon_cross"></i>
</button>
</div>
<div class="sidebar--inner" id="sideMenu"></div>
</ul>
<div class="dropdown--overlay"></div>
</div>
</nav>
<div id="resizer" class="resizer" data-item-type="BAR"></div>
<div id="main" data-item-type="SECTION" role="main">
<div class="main-content" data-page-type="package" id="content" pageids="feature-map::org.meshtastic.feature.map.layers////PointingToDeclaration//326004429">
<div class="breadcrumbs"><a href="../index.html">feature-map</a><span class="delimiter">/</span><span class="current">org.meshtastic.feature.map.layers</span></div>
<div class="cover ">
<h1 class="cover"><span><span>Package-level</span></span> <span><span>declarations</span></span></h1>
</div>
<div class="tabbedcontent">
<div class="tabs-section" tabs-section="tabs-section"><button class="section-tab" data-active="" data-togglable="TYPE">Types</button><button class="section-tab" data-togglable="FUNCTION,EXTENSION_FUNCTION">Functions</button><button class="section-tab" data-togglable="PROPERTY,EXTENSION_PROPERTY">Properties</button></div>
<div class="tabs-section-body">
<div data-togglable="TYPE">
<h2 class="tableheader">Types</h2>
<div class="table"><a data-name="1283450238%2FClasslikes%2F-1707802287" anchor-label="LayerOpacityStore" id="1283450238%2FClasslikes%2F-1707802287" data-filterable-set=":feature:map/commonMain"></a>
<div class="table-row table-row_content" data-filterable-current=":feature:map/commonMain" data-filterable-set=":feature:map/commonMain">
<div class="main-subrow keyValue ">
<div class=""><span class="inline-flex">
<div><a href="-layer-opacity-store/index.html"><span>Layer</span><wbr><span>Opacity</span><wbr><span><span>Store</span></span></a></div>
<span class="anchor-wrapper"><span class="anchor-icon" pointing-to="1283450238%2FClasslikes%2F-1707802287"></span>
<div class="copy-popup-wrapper "><span class="copy-popup-icon"></span><span>Link copied to clipboard</span></div>
</span></span></div>
<div>
<div class="title">
<div class="platform-hinted " data-platform-hinted="data-platform-hinted"><div class="content sourceset-dependent-content" data-active="" data-togglable=":feature:map/commonMain"><div class="symbol monospace"><span class="token keyword">class </span><a href="-layer-opacity-store/index.html">LayerOpacityStore</a><span class="token punctuation">(</span><span class="parameters "><span class="parameter ">mapPrefs<span class="token operator">: </span><a href="../../../core/repository/org.meshtastic.core.repository/-map-prefs/index.html">MapPrefs</a><span class="token punctuation">, </span></span><span class="parameter ">dispatchers<span class="token operator">: </span><a href="../../../core/di/org.meshtastic.core.di/-coroutine-dispatchers/index.html">CoroutineDispatchers</a></span></span><span class="token punctuation">)</span></div><div class="brief "><p class="paragraph">The user's per-layer opacity, for every layer either engine can draw.</p></div></div></div>
</div>
</div>
</div>
</div>
<a data-name="-487085734%2FClasslikes%2F-1707802287" anchor-label="LayerType" id="-487085734%2FClasslikes%2F-1707802287" data-filterable-set=":feature:map/commonMain"></a>
<div class="table-row table-row_content" data-filterable-current=":feature:map/commonMain" data-filterable-set=":feature:map/commonMain">
<div class="main-subrow keyValue ">
<div class=""><span class="inline-flex">
<div><a href="-layer-type/index.html"><span>Layer</span><wbr><span><span>Type</span></span></a></div>
<span class="anchor-wrapper"><span class="anchor-icon" pointing-to="-487085734%2FClasslikes%2F-1707802287"></span>
<div class="copy-popup-wrapper "><span class="copy-popup-icon"></span><span>Link copied to clipboard</span></div>
</span></span></div>
<div>
<div class="title">
<div class="platform-hinted " data-platform-hinted="data-platform-hinted"><div class="content sourceset-dependent-content" data-active="" data-togglable=":feature:map/commonMain"><div class="symbol monospace"><span class="token keyword">enum </span><a href="-layer-type/index.html">LayerType</a> : <a href="https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-enum/index.html">Enum</a><span class="token operator">&lt;</span><a href="-layer-type/index.html">LayerType</a><span class="token operator">&gt; </span></div><div class="brief "><p class="paragraph">The imported-overlay model, shared by every renderer.</p></div></div></div>
</div>
</div>
</div>
</div>
<a data-name="549945269%2FClasslikes%2F-1707802287" anchor-label="MapLayerItem" id="549945269%2FClasslikes%2F-1707802287" data-filterable-set=":feature:map/commonMain"></a>
<div class="table-row table-row_content" data-filterable-current=":feature:map/commonMain" data-filterable-set=":feature:map/commonMain">
<div class="main-subrow keyValue ">
<div class=""><span class="inline-flex">
<div><a href="-map-layer-item/index.html"><span>Map</span><wbr><span>Layer</span><wbr><span><span>Item</span></span></a></div>
<span class="anchor-wrapper"><span class="anchor-icon" pointing-to="549945269%2FClasslikes%2F-1707802287"></span>
<div class="copy-popup-wrapper "><span class="copy-popup-icon"></span><span>Link copied to clipboard</span></div>
</span></span></div>
<div>
<div class="title">
<div class="platform-hinted " data-platform-hinted="data-platform-hinted"><div class="content sourceset-dependent-content" data-active="" data-togglable=":feature:map/commonMain"><div class="symbol monospace"><span class="token keyword">data </span><span class="token keyword">class </span><a href="-map-layer-item/index.html">MapLayerItem</a><span class="token punctuation">(</span><span class="parameters "><span class="parameter "><span class="token keyword">val </span>id<span class="token operator">: </span><a href="https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html">String</a><span class="token operator"> = </span>Uuid.random().toString()<span class="token punctuation">, </span></span><span class="parameter "><span class="token keyword">val </span>name<span class="token operator">: </span><a href="https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html">String</a><span class="token punctuation">, </span></span><span class="parameter "><span class="token keyword">val </span>uri<span class="token operator">: </span><a href="https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html">String</a><span class="token operator">?</span><span class="token operator"> = </span>null<span class="token punctuation">, </span></span><span class="parameter "><span class="token keyword">val </span>isVisible<span class="token operator">: </span><a href="https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html">Boolean</a><span class="token operator"> = </span><span class="token boolean">true</span><span class="token punctuation">, </span></span><span class="parameter "><span class="token keyword">val </span>layerType<span class="token operator">: </span><a href="-layer-type/index.html">LayerType</a><span class="token punctuation">, </span></span><span class="parameter "><span class="token keyword">val </span>isNetwork<span class="token operator">: </span><a href="https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html">Boolean</a><span class="token operator"> = </span><span class="token boolean">false</span><span class="token punctuation">, </span></span><span class="parameter "><span class="token keyword">val </span>createdAt<span class="token operator">: </span><a href="https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-long/index.html">Long</a><span class="token operator">?</span><span class="token operator"> = </span>null<span class="token punctuation">, </span></span><span class="parameter "><span class="token keyword">val </span>isRefreshing<span class="token operator">: </span><a href="https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html">Boolean</a><span class="token operator"> = </span><span class="token boolean">false</span><span class="token punctuation">, </span></span><span class="parameter "><span class="token keyword">val </span>refreshToken<span class="token operator">: </span><a href="https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html">Int</a><span class="token operator"> = </span><span class="token constant">0</span></span></span><span class="token punctuation">)</span></div></div></div>
</div>
</div>
</div>
</div>
<a data-name="1894095898%2FClasslikes%2F-1707802287" anchor-label="MapLayerPickerLauncher" id="1894095898%2FClasslikes%2F-1707802287" data-filterable-set=":feature:map/commonMain"></a>
<div class="table-row table-row_content" data-filterable-current=":feature:map/commonMain" data-filterable-set=":feature:map/commonMain">
<div class="main-subrow keyValue ">
<div class=""><span class="inline-flex">
<div><a href="-map-layer-picker-launcher/index.html"><span>Map</span><wbr><span>Layer</span><wbr><span>Picker</span><wbr><span><span>Launcher</span></span></a></div>
<span class="anchor-wrapper"><span class="anchor-icon" pointing-to="1894095898%2FClasslikes%2F-1707802287"></span>
<div class="copy-popup-wrapper "><span class="copy-popup-icon"></span><span>Link copied to clipboard</span></div>
</span></span></div>
<div>
<div class="title">
<div class="platform-hinted " data-platform-hinted="data-platform-hinted"><div class="content sourceset-dependent-content" data-active="" data-togglable=":feature:map/commonMain"><div class="symbol monospace"><span class="token keyword">fun </span><span class="token keyword">interface </span><a href="-map-layer-picker-launcher/index.html">MapLayerPickerLauncher</a></div><div class="brief "><p class="paragraph">Platform-agnostic handle for opening the picker.</p></div></div></div>
</div>
</div>
</div>
</div>
<a data-name="1099297166%2FClasslikes%2F-1707802287" anchor-label="MapLayersManager" id="1099297166%2FClasslikes%2F-1707802287" data-filterable-set=":feature:map/commonMain"></a>
<div class="table-row table-row_content" data-filterable-current=":feature:map/commonMain" data-filterable-set=":feature:map/commonMain">
<div class="main-subrow keyValue ">
<div class=""><span class="inline-flex">
<div><a href="-map-layers-manager/index.html"><span>Map</span><wbr><span>Layers</span><wbr><span><span>Manager</span></span></a></div>
<span class="anchor-wrapper"><span class="anchor-icon" pointing-to="1099297166%2FClasslikes%2F-1707802287"></span>
<div class="copy-popup-wrapper "><span class="copy-popup-icon"></span><span>Link copied to clipboard</span></div>
</span></span></div>
<div>
<div class="title">
<div class="platform-hinted " data-platform-hinted="data-platform-hinted"><div class="content sourceset-dependent-content" data-active="" data-togglable=":feature:map/commonMain"><div class="symbol monospace"><span class="token keyword">class </span><a href="-map-layers-manager/index.html">MapLayersManager</a><span class="token punctuation">(</span><span class="parameters "><span class="parameter ">dispatchers<span class="token operator">: </span><a href="../../../core/di/org.meshtastic.core.di/-coroutine-dispatchers/index.html">CoroutineDispatchers</a><span class="token punctuation">, </span></span><span class="parameter ">httpClient<span class="token operator">: </span><span data-unresolved-link="io.ktor.client/HttpClient///PointingToDeclaration/">HttpClient</span><span class="token punctuation">, </span></span><span class="parameter ">mapPrefs<span class="token operator">: </span><a href="../../../core/repository/org.meshtastic.core.repository/-map-prefs/index.html">MapPrefs</a><span class="token punctuation">, </span></span><span class="parameter ">layersDir<span class="token operator">: </span><span data-unresolved-link="okio/Path///PointingToDeclaration/">Path</span><span class="token operator"> = </span>mapLayersDirectory()<span class="token punctuation">, </span></span><span class="parameter ">fileSystem<span class="token operator">: </span><span data-unresolved-link="okio/FileSystem///PointingToDeclaration/">FileSystem</span><span class="token operator"> = </span>mapLayerFileSystem()</span></span><span class="token punctuation">)</span></div><div class="brief "><p class="paragraph">Owner of the imported map-layer list, its on-disk persistence, and the import plumbing.</p></div></div></div>
</div>
</div>
</div>
</div>
<a data-name="-647531571%2FClasslikes%2F-1707802287" anchor-label="PickedMapFile" id="-647531571%2FClasslikes%2F-1707802287" data-filterable-set=":feature:map/commonMain"></a>
<div class="table-row table-row_content" data-filterable-current=":feature:map/commonMain" data-filterable-set=":feature:map/commonMain">
<div class="main-subrow keyValue ">
<div class=""><span class="inline-flex">
<div><a href="-picked-map-file/index.html"><span>Picked</span><wbr><span>Map</span><wbr><span><span>File</span></span></a></div>
<span class="anchor-wrapper"><span class="anchor-icon" pointing-to="-647531571%2FClasslikes%2F-1707802287"></span>
<div class="copy-popup-wrapper "><span class="copy-popup-icon"></span><span>Link copied to clipboard</span></div>
</span></span></div>
<div>
<div class="title">
<div class="platform-hinted " data-platform-hinted="data-platform-hinted"><div class="content sourceset-dependent-content" data-active="" data-togglable=":feature:map/commonMain"><div class="symbol monospace"><span class="token keyword">class </span><a href="-picked-map-file/index.html">PickedMapFile</a><span class="token punctuation">(</span><span class="parameters "><span class="parameter "><span class="token keyword">val </span>displayName<span class="token operator">: </span><a href="https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html">String</a><span class="token punctuation">, </span></span><span class="parameter "><span class="token keyword">val </span>extensionOrMime<span class="token operator">: </span><a href="https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html">String</a><span class="token operator">?</span><span class="token punctuation">, </span></span><span class="parameter "><span class="token keyword">val </span>read<span class="token operator">: </span><span class="token keyword">suspend </span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token operator"> -&gt; </span><a href="https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-byte-array/index.html">ByteArray</a><span class="token operator">?</span></span></span><span class="token punctuation">)</span></div><div class="brief "><p class="paragraph">A file the user picked, handed to <a href="-map-layers-manager/index.html">MapLayersManager</a> by whatever picker the platform uses.</p></div></div></div>
</div>
</div>
</div>
</div>
</div>
</div>
<div data-togglable="PROPERTY">
<h2 class="tableheader">Properties</h2>
<div class="table"><a data-name="1656670842%2FProperties%2F-1707802287" anchor-label="COVERAGE_EXTENSION" id="1656670842%2FProperties%2F-1707802287" data-filterable-set=":feature:map/commonMain"></a>
<div class="table-row table-row_content" data-filterable-current=":feature:map/commonMain" data-filterable-set=":feature:map/commonMain">
<div class="main-subrow keyValue ">
<div class=""><span class="inline-flex">
<div><a href="-c-o-v-e-r-a-g-e_-e-x-t-e-n-s-i-o-n.html"><span>COVERAGE_</span><wbr><span>EXTENSION</span></a></div>
<span class="anchor-wrapper"><span class="anchor-icon" pointing-to="1656670842%2FProperties%2F-1707802287"></span>
<div class="copy-popup-wrapper "><span class="copy-popup-icon"></span><span>Link copied to clipboard</span></div>
</span></span></div>
<div>
<div class="title">
<div class="platform-hinted " data-platform-hinted="data-platform-hinted"><div class="content sourceset-dependent-content" data-active="" data-togglable=":feature:map/commonMain"><div class="symbol monospace"><span class="token keyword">const </span><span class="token keyword">val </span><a href="-c-o-v-e-r-a-g-e_-e-x-t-e-n-s-i-o-n.html">COVERAGE_EXTENSION</a><span class="token operator">: </span><a href="https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html">String</a></div><div class="brief "><p class="paragraph">On-disk extension marking a saved coverage estimate, so <a href="-layer-type/-c-o-v-e-r-a-g-e/index.html">LayerType.COVERAGE</a> survives a restart.</p></div></div></div>
</div>
</div>
</div>
</div>
<a data-name="1409201247%2FProperties%2F-1707802287" anchor-label="LAYER_OPACITY_OPAQUE" id="1409201247%2FProperties%2F-1707802287" data-filterable-set=":feature:map/commonMain"></a>
<div class="table-row table-row_content" data-filterable-current=":feature:map/commonMain" data-filterable-set=":feature:map/commonMain">
<div class="main-subrow keyValue ">
<div class=""><span class="inline-flex">
<div><a href="-l-a-y-e-r_-o-p-a-c-i-t-y_-o-p-a-q-u-e.html"><span>LAYER_</span><wbr><span>OPACITY_</span><wbr><span>OPAQUE</span></a></div>
<span class="anchor-wrapper"><span class="anchor-icon" pointing-to="1409201247%2FProperties%2F-1707802287"></span>
<div class="copy-popup-wrapper "><span class="copy-popup-icon"></span><span>Link copied to clipboard</span></div>
</span></span></div>
<div>
<div class="title">
<div class="platform-hinted " data-platform-hinted="data-platform-hinted"><div class="content sourceset-dependent-content" data-active="" data-togglable=":feature:map/commonMain"><div class="symbol monospace"><span class="token keyword">const </span><span class="token keyword">val </span><a href="-l-a-y-e-r_-o-p-a-c-i-t-y_-o-p-a-q-u-e.html">LAYER_OPACITY_OPAQUE</a><span class="token operator">: </span><a href="https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html">Float</a><span class="token operator"> = </span><span class="token constant">1.0f</span></div><div class="brief "><p class="paragraph">Per-layer opacity, keyed the way each kind of layer is already identified elsewhere.</p></div></div></div>
</div>
</div>
</div>
</div>
<a data-name="-1471170473%2FProperties%2F-1707802287" anchor-label="MAX_KMZ_INFLATED_BYTES" id="-1471170473%2FProperties%2F-1707802287" data-filterable-set=":feature:map/commonMain"></a>
<div class="table-row table-row_content" data-filterable-current=":feature:map/commonMain" data-filterable-set=":feature:map/commonMain">
<div class="main-subrow keyValue ">
<div class=""><span class="inline-flex">
<div><a href="-m-a-x_-k-m-z_-i-n-f-l-a-t-e-d_-b-y-t-e-s.html"><span>MAX_</span><wbr><span>KMZ_</span><wbr><span>INFLATED_</span><wbr><span>BYTES</span></a></div>
<span class="anchor-wrapper"><span class="anchor-icon" pointing-to="-1471170473%2FProperties%2F-1707802287"></span>
<div class="copy-popup-wrapper "><span class="copy-popup-icon"></span><span>Link copied to clipboard</span></div>
</span></span></div>
<div>
<div class="title">
<div class="platform-hinted " data-platform-hinted="data-platform-hinted"><div class="content sourceset-dependent-content" data-active="" data-togglable=":feature:map/commonMain"><div class="symbol monospace"><span class="token keyword">const </span><span class="token keyword">val </span><a href="-m-a-x_-k-m-z_-i-n-f-l-a-t-e-d_-b-y-t-e-s.html">MAX_KMZ_INFLATED_BYTES</a><span class="token operator">: </span><a href="https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-long/index.html">Long</a></div><div class="brief "><p class="paragraph">Ceiling on the bytes one KMZ may inflate to, summed across every entry read from it.</p></div></div></div>
</div>
</div>
</div>
</div>
</div>
</div>
<div data-togglable="FUNCTION">
<h2 class="tableheader">Functions</h2>
<div class="table"><a data-name="617221898%2FFunctions%2F-1707802287" anchor-label="decodeLayerOpacity" id="617221898%2FFunctions%2F-1707802287" data-filterable-set=":feature:map/commonMain"></a>
<div class="table-row table-row_content" data-filterable-current=":feature:map/commonMain" data-filterable-set=":feature:map/commonMain">
<div class="main-subrow keyValue ">
<div class=""><span class="inline-flex">
<div><a href="decode-layer-opacity.html"><span>decode</span><wbr><span>Layer</span><wbr><span><span>Opacity</span></span></a></div>
<span class="anchor-wrapper"><span class="anchor-icon" pointing-to="617221898%2FFunctions%2F-1707802287"></span>
<div class="copy-popup-wrapper "><span class="copy-popup-icon"></span><span>Link copied to clipboard</span></div>
</span></span></div>
<div>
<div class="title">
<div class="platform-hinted " data-platform-hinted="data-platform-hinted"><div class="content sourceset-dependent-content" data-active="" data-togglable=":feature:map/commonMain"><div class="symbol monospace"><span class="token keyword">fun </span><a href="decode-layer-opacity.html"><span class="token function">decodeLayerOpacity</span></a><span class="token punctuation">(</span><span class="parameters "><span class="parameter ">entries<span class="token operator">: </span><a href="https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-set/index.html">Set</a><span class="token operator">&lt;</span><a href="https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html">String</a><span class="token operator">&gt;</span></span></span><span class="token punctuation">)</span><span class="token operator">: </span><a href="https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-map/index.html">Map</a><span class="token operator">&lt;</span><a href="https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html">String</a><span class="token punctuation">, </span><a href="https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html">Float</a><span class="token operator">&gt;</span></div><div class="brief "><p class="paragraph">Decodes stored entries, dropping any that no longer parse.</p></div></div></div>
</div>
</div>
</div>
</div>
<a data-name="760824298%2FFunctions%2F-1707802287" anchor-label="displayNameFromFileName" id="760824298%2FFunctions%2F-1707802287" data-filterable-set=":feature:map/commonMain"></a>
<div class="table-row table-row_content" data-filterable-current=":feature:map/commonMain" data-filterable-set=":feature:map/commonMain">
<div class="main-subrow keyValue ">
<div class=""><span class="inline-flex">
<div><a href="display-name-from-file-name.html"><span>display</span><wbr><span>Name</span><wbr><span>From</span><wbr><span>File</span><wbr><span><span>Name</span></span></a></div>
<span class="anchor-wrapper"><span class="anchor-icon" pointing-to="760824298%2FFunctions%2F-1707802287"></span>
<div class="copy-popup-wrapper "><span class="copy-popup-icon"></span><span>Link copied to clipboard</span></div>
</span></span></div>
<div>
<div class="title">
<div class="platform-hinted " data-platform-hinted="data-platform-hinted"><div class="content sourceset-dependent-content" data-active="" data-togglable=":feature:map/commonMain"><div class="symbol monospace"><span class="token keyword">fun </span><a href="display-name-from-file-name.html"><span class="token function">displayNameFromFileName</span></a><span class="token punctuation">(</span><span class="parameters "><span class="parameter ">fileNameWithoutExtension<span class="token operator">: </span><a href="https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html">String</a></span></span><span class="token punctuation">)</span><span class="token operator">: </span><a href="https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html">String</a></div><div class="brief "><p class="paragraph">Recover a layer's display name from its on-disk file name (sans extension).</p></div></div></div>
</div>
</div>
</div>
</div>
<a data-name="1421778615%2FFunctions%2F-1707802287" anchor-label="encodeLayerOpacity" id="1421778615%2FFunctions%2F-1707802287" data-filterable-set=":feature:map/commonMain"></a>
<div class="table-row table-row_content" data-filterable-current=":feature:map/commonMain" data-filterable-set=":feature:map/commonMain">
<div class="main-subrow keyValue ">
<div class=""><span class="inline-flex">
<div><a href="encode-layer-opacity.html"><span>encode</span><wbr><span>Layer</span><wbr><span><span>Opacity</span></span></a></div>
<span class="anchor-wrapper"><span class="anchor-icon" pointing-to="1421778615%2FFunctions%2F-1707802287"></span>
<div class="copy-popup-wrapper "><span class="copy-popup-icon"></span><span>Link copied to clipboard</span></div>
</span></span></div>
<div>
<div class="title">
<div class="platform-hinted " data-platform-hinted="data-platform-hinted"><div class="content sourceset-dependent-content" data-active="" data-togglable=":feature:map/commonMain"><div class="symbol monospace"><span class="token keyword">fun </span><a href="encode-layer-opacity.html"><span class="token function">encodeLayerOpacity</span></a><span class="token punctuation">(</span><span class="parameters "><span class="parameter ">opacities<span class="token operator">: </span><a href="https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-map/index.html">Map</a><span class="token operator">&lt;</span><a href="https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html">String</a><span class="token punctuation">, </span><a href="https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html">Float</a><span class="token operator">&gt;</span></span></span><span class="token punctuation">)</span><span class="token operator">: </span><a href="https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-set/index.html">Set</a><span class="token operator">&lt;</span><a href="https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html">String</a><span class="token operator">&gt;</span></div><div class="brief "><p class="paragraph">Encodes for storage, dropping every fully-opaque layer.</p></div></div></div>
</div>
</div>
</div>
</div>
<a data-name="1573621834%2FFunctions%2F-459705751" anchor-label="getFileName" id="1573621834%2FFunctions%2F-459705751" data-filterable-set=":feature:map/androidMain"></a>
<div class="table-row table-row_content" data-togglable="EXTENSION_FUNCTION" data-filterable-current=":feature:map/androidMain" data-filterable-set=":feature:map/androidMain">
<div class="main-subrow keyValue ">
<div class=""><span class="inline-flex">
<div><a href="get-file-name.html"><span>get</span><wbr><span>File</span><wbr><span><span>Name</span></span></a></div>
<span class="anchor-wrapper"><span class="anchor-icon" pointing-to="1573621834%2FFunctions%2F-459705751"></span>
<div class="copy-popup-wrapper "><span class="copy-popup-icon"></span><span>Link copied to clipboard</span></div>
</span></span></div>
<div>
<div class="title">
<div class="platform-hinted with-platform-tabs" data-platform-hinted="data-platform-hinted">
<div class="platform-bookmarks-row" data-toggle-list="data-toggle-list"><button class="platform-bookmark" data-filterable-current=":feature:map/androidMain" data-filterable-set=":feature:map/androidMain" data-active="" data-toggle=":feature:map/androidMain">android</button></div>
<div class="content sourceset-dependent-content" data-active="" data-togglable=":feature:map/androidMain"><div class="symbol monospace"><span class="token keyword">fun </span><a href="https://developer.android.com/reference/kotlin/android/net/Uri.html">Uri</a><span class="token punctuation">.</span><a href="get-file-name.html"><span class="token function">getFileName</span></a><span class="token punctuation">(</span><span class="parameters "><span class="parameter ">context<span class="token operator">: </span><a href="https://developer.android.com/reference/kotlin/android/content/Context.html">Context</a></span></span><span class="token punctuation">)</span><span class="token operator">: </span><a href="https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html">String</a></div><div class="brief "><p class="paragraph">Resolve a display file name for <a href="https://developer.android.com/reference/kotlin/android/net/Uri.html">this</a> URI, querying the content resolver for <code class="lang-kotlin">content://</code> URIs. Untrusted providers (share/open-with from other apps) can throw or return a null display name, so guard both and fall back to the URI's last path segment.</p></div></div> </div>
</div>
</div>
</div>
</div>
<a data-name="-363702126%2FFunctions%2F-1707802287" anchor-label="isKmzArchive" id="-363702126%2FFunctions%2F-1707802287" data-filterable-set=":feature:map/commonMain"></a>
<div class="table-row table-row_content" data-togglable="EXTENSION_FUNCTION" data-filterable-current=":feature:map/commonMain" data-filterable-set=":feature:map/commonMain">
<div class="main-subrow keyValue ">
<div class=""><span class="inline-flex">
<div><a href="is-kmz-archive.html"><span>is</span><wbr><span>Kmz</span><wbr><span><span>Archive</span></span></a></div>
<span class="anchor-wrapper"><span class="anchor-icon" pointing-to="-363702126%2FFunctions%2F-1707802287"></span>
<div class="copy-popup-wrapper "><span class="copy-popup-icon"></span><span>Link copied to clipboard</span></div>
</span></span></div>
<div>
<div class="title">
<div class="platform-hinted " data-platform-hinted="data-platform-hinted"><div class="content sourceset-dependent-content" data-active="" data-togglable=":feature:map/commonMain"><div class="symbol monospace"><span class="token keyword">fun </span><a href="https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-byte-array/index.html">ByteArray</a><span class="token punctuation">.</span><a href="is-kmz-archive.html"><span class="token function">isKmzArchive</span></a><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token operator">: </span><a href="https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html">Boolean</a></div><div class="brief "><p class="paragraph">True if <a href="https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-byte-array/index.html">this</a> starts with the zip magic bytes, meaning a nominally-<a href="-layer-type/-k-m-l/index.html">LayerType.KML</a> source (<code class="lang-kotlin">.kml</code> and <code class="lang-kotlin">.kmz</code> both resolve to that one type) is actually a KMZ archive. Sniffed rather than taken from the file extension, which a content resolver can get wrong.</p></div></div></div>
</div>
</div>
</div>
</div>
<a data-name="-1949805924%2FFunctions%2F-1707802287" anchor-label="isValidNetworkLayerUrl" id="-1949805924%2FFunctions%2F-1707802287" data-filterable-set=":feature:map/commonMain"></a>
<div class="table-row table-row_content" data-filterable-current=":feature:map/commonMain" data-filterable-set=":feature:map/commonMain">
<div class="main-subrow keyValue ">
<div class=""><span class="inline-flex">
<div><a href="is-valid-network-layer-url.html"><span>is</span><wbr><span>Valid</span><wbr><span>Network</span><wbr><span>Layer</span><wbr><span><span>Url</span></span></a></div>
<span class="anchor-wrapper"><span class="anchor-icon" pointing-to="-1949805924%2FFunctions%2F-1707802287"></span>
<div class="copy-popup-wrapper "><span class="copy-popup-icon"></span><span>Link copied to clipboard</span></div>
</span></span></div>
<div>
<div class="title">
<div class="platform-hinted " data-platform-hinted="data-platform-hinted"><div class="content sourceset-dependent-content" data-active="" data-togglable=":feature:map/commonMain"><div class="symbol monospace"><span class="token keyword">fun </span><a href="is-valid-network-layer-url.html"><span class="token function">isValidNetworkLayerUrl</span></a><span class="token punctuation">(</span><span class="parameters "><span class="parameter ">url<span class="token operator">: </span><a href="https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html">String</a></span></span><span class="token punctuation">)</span><span class="token operator">: </span><a href="https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html">Boolean</a></div><div class="brief "><p class="paragraph">Whether <a href="is-valid-network-layer-url.html">url</a> is one <a href="-map-layers-manager/add-network-map-layer.html">MapLayersManager.addNetworkMapLayer</a> will accept: an explicit, parseable http(s) URL.</p></div></div></div>
</div>
</div>
</div>
</div>
<a data-name="-1662836183%2FFunctions%2F-1707802287" anchor-label="layerFileName" id="-1662836183%2FFunctions%2F-1707802287" data-filterable-set=":feature:map/commonMain"></a>
<div class="table-row table-row_content" data-filterable-current=":feature:map/commonMain" data-filterable-set=":feature:map/commonMain">
<div class="main-subrow keyValue ">
<div class=""><span class="inline-flex">
<div><a href="layer-file-name.html"><span>layer</span><wbr><span>File</span><wbr><span><span>Name</span></span></a></div>
<span class="anchor-wrapper"><span class="anchor-icon" pointing-to="-1662836183%2FFunctions%2F-1707802287"></span>
<div class="copy-popup-wrapper "><span class="copy-popup-icon"></span><span>Link copied to clipboard</span></div>
</span></span></div>
<div>
<div class="title">
<div class="platform-hinted " data-platform-hinted="data-platform-hinted"><div class="content sourceset-dependent-content" data-active="" data-togglable=":feature:map/commonMain"><div class="symbol monospace"><span class="token keyword">fun </span><a href="layer-file-name.html"><span class="token function">layerFileName</span></a><span class="token punctuation">(</span><span class="parameters "><span class="parameter ">displayName<span class="token operator">: </span><a href="https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html">String</a><span class="token punctuation">, </span></span><span class="parameter ">extension<span class="token operator">: </span><a href="https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html">String</a></span></span><span class="token punctuation">)</span><span class="token operator">: </span><a href="https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html">String</a></div><div class="brief "><p class="paragraph">Build the on-disk file name for a layer from its <a href="layer-file-name.html">displayName</a>.</p></div></div></div>
</div>
</div>
</div>
</div>
<a data-name="1863316994%2FFunctions%2F326004429" anchor-label="mapLayerFileSystem" id="1863316994%2FFunctions%2F326004429" data-filterable-set=":feature:map/commonMain,:feature:map/androidMain,:feature:map/jvmMain"></a>
<div class="table-row table-row_content" data-filterable-current=":feature:map/commonMain,:feature:map/androidMain,:feature:map/jvmMain" data-filterable-set=":feature:map/commonMain,:feature:map/androidMain,:feature:map/jvmMain">
<div class="main-subrow keyValue ">
<div class=""><span class="inline-flex">
<div><a href="map-layer-file-system.html"><span>map</span><wbr><span>Layer</span><wbr><span>File</span><wbr><span><span>System</span></span></a></div>
<span class="anchor-wrapper"><span class="anchor-icon" pointing-to="1863316994%2FFunctions%2F326004429"></span>
<div class="copy-popup-wrapper "><span class="copy-popup-icon"></span><span>Link copied to clipboard</span></div>
</span></span></div>
<div>
<div class="title">
<div class="platform-hinted with-platform-tabs" data-platform-hinted="data-platform-hinted">
<div class="platform-bookmarks-row" data-toggle-list="data-toggle-list"><button class="platform-bookmark" data-filterable-current=":feature:map/androidMain" data-filterable-set=":feature:map/androidMain" data-active="" data-toggle=":feature:map/androidMain">android</button><button class="platform-bookmark" data-filterable-current=":feature:map/commonMain" data-filterable-set=":feature:map/commonMain" data-toggle=":feature:map/commonMain">common</button><button class="platform-bookmark" data-filterable-current=":feature:map/jvmMain" data-filterable-set=":feature:map/jvmMain" data-toggle=":feature:map/jvmMain">jvm</button></div>
<div class="content sourceset-dependent-content" data-togglable=":feature:map/androidMain"><div class="symbol monospace"><span class="token keyword">actual </span><span class="token keyword">fun </span><a href="map-layer-file-system.html"><span class="token function">mapLayerFileSystem</span></a><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token operator">: </span><span data-unresolved-link="okio/FileSystem///PointingToDeclaration/">FileSystem</span></div><div class="brief "><p class="paragraph">The file system layers are stored on.</p></div></div><div class="content sourceset-dependent-content" data-active="" data-togglable=":feature:map/commonMain"><div class="symbol monospace"><span class="token keyword">expect </span><span class="token keyword">fun </span><a href="map-layer-file-system.html"><span class="token function">mapLayerFileSystem</span></a><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token operator">: </span><span data-unresolved-link="okio/FileSystem///PointingToDeclaration/">FileSystem</span></div><div class="brief "><p class="paragraph">The file system layers are stored on.</p></div></div><div class="content sourceset-dependent-content" data-togglable=":feature:map/jvmMain"><div class="symbol monospace"><span class="token keyword">actual </span><span class="token keyword">fun </span><a href="map-layer-file-system.html"><span class="token function">mapLayerFileSystem</span></a><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token operator">: </span><span data-unresolved-link="okio/FileSystem///PointingToDeclaration/">FileSystem</span></div><div class="brief "><p class="paragraph">The file system layers are stored on.</p></div></div> </div>
</div>
</div>
</div>
</div>
<a data-name="1287953487%2FFunctions%2F326004429" anchor-label="mapLayersCacheDirectory" id="1287953487%2FFunctions%2F326004429" data-filterable-set=":feature:map/commonMain,:feature:map/androidMain,:feature:map/jvmMain"></a>
<div class="table-row table-row_content" data-filterable-current=":feature:map/commonMain,:feature:map/androidMain,:feature:map/jvmMain" data-filterable-set=":feature:map/commonMain,:feature:map/androidMain,:feature:map/jvmMain">
<div class="main-subrow keyValue ">
<div class=""><span class="inline-flex">
<div><a href="map-layers-cache-directory.html"><span>map</span><wbr><span>Layers</span><wbr><span>Cache</span><wbr><span><span>Directory</span></span></a></div>
<span class="anchor-wrapper"><span class="anchor-icon" pointing-to="1287953487%2FFunctions%2F326004429"></span>
<div class="copy-popup-wrapper "><span class="copy-popup-icon"></span><span>Link copied to clipboard</span></div>
</span></span></div>
<div>
<div class="title">
<div class="platform-hinted with-platform-tabs" data-platform-hinted="data-platform-hinted">
<div class="platform-bookmarks-row" data-toggle-list="data-toggle-list"><button class="platform-bookmark" data-filterable-current=":feature:map/androidMain" data-filterable-set=":feature:map/androidMain" data-active="" data-toggle=":feature:map/androidMain">android</button><button class="platform-bookmark" data-filterable-current=":feature:map/commonMain" data-filterable-set=":feature:map/commonMain" data-toggle=":feature:map/commonMain">common</button><button class="platform-bookmark" data-filterable-current=":feature:map/jvmMain" data-filterable-set=":feature:map/jvmMain" data-toggle=":feature:map/jvmMain">jvm</button></div>
<div class="content sourceset-dependent-content" data-togglable=":feature:map/androidMain"><div class="symbol monospace"><span class="token keyword">actual </span><span class="token keyword">fun </span><a href="map-layers-cache-directory.html"><span class="token function">mapLayersCacheDirectory</span></a><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token operator">: </span><span data-unresolved-link="okio/Path///PointingToDeclaration/">Path</span></div><div class="brief "><p class="paragraph">The app cache, which Android may clear under pressure — exactly right for a reconvertible copy.</p></div></div><div class="content sourceset-dependent-content" data-active="" data-togglable=":feature:map/commonMain"><div class="symbol monospace"><span class="token keyword">expect </span><span class="token keyword">fun </span><a href="map-layers-cache-directory.html"><span class="token function">mapLayersCacheDirectory</span></a><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token operator">: </span><span data-unresolved-link="okio/Path///PointingToDeclaration/">Path</span></div><div class="brief "><p class="paragraph">Where converted copies of imported layers are cached (KML rendered down to GeoJSON, for the renderer that has no KML source). Disposable, unlike <a href="map-layers-directory.html">mapLayersDirectory</a> — losing it only costs a reconversion.</p></div></div><div class="content sourceset-dependent-content" data-togglable=":feature:map/jvmMain"><div class="symbol monospace"><span class="token keyword">actual </span><span class="token keyword">fun </span><a href="map-layers-cache-directory.html"><span class="token function">mapLayersCacheDirectory</span></a><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token operator">: </span><span data-unresolved-link="okio/Path///PointingToDeclaration/">Path</span></div><div class="brief "><p class="paragraph">Where converted copies of imported layers are cached (KML rendered down to GeoJSON, for the renderer that has no KML source). Disposable, unlike <a href="map-layers-directory.html">mapLayersDirectory</a> — losing it only costs a reconversion.</p></div></div> </div>
</div>
</div>
</div>
</div>
<a data-name="-57790317%2FFunctions%2F326004429" anchor-label="mapLayersDirectory" id="-57790317%2FFunctions%2F326004429" data-filterable-set=":feature:map/commonMain,:feature:map/androidMain,:feature:map/jvmMain"></a>
<div class="table-row table-row_content" data-filterable-current=":feature:map/commonMain,:feature:map/androidMain,:feature:map/jvmMain" data-filterable-set=":feature:map/commonMain,:feature:map/androidMain,:feature:map/jvmMain">
<div class="main-subrow keyValue ">
<div class=""><span class="inline-flex">
<div><a href="map-layers-directory.html"><span>map</span><wbr><span>Layers</span><wbr><span><span>Directory</span></span></a></div>
<span class="anchor-wrapper"><span class="anchor-icon" pointing-to="-57790317%2FFunctions%2F326004429"></span>
<div class="copy-popup-wrapper "><span class="copy-popup-icon"></span><span>Link copied to clipboard</span></div>
</span></span></div>
<div>
<div class="title">
<div class="platform-hinted with-platform-tabs" data-platform-hinted="data-platform-hinted">
<div class="platform-bookmarks-row" data-toggle-list="data-toggle-list"><button class="platform-bookmark" data-filterable-current=":feature:map/androidMain" data-filterable-set=":feature:map/androidMain" data-active="" data-toggle=":feature:map/androidMain">android</button><button class="platform-bookmark" data-filterable-current=":feature:map/commonMain" data-filterable-set=":feature:map/commonMain" data-toggle=":feature:map/commonMain">common</button><button class="platform-bookmark" data-filterable-current=":feature:map/jvmMain" data-filterable-set=":feature:map/jvmMain" data-toggle=":feature:map/jvmMain">jvm</button></div>
<div class="content sourceset-dependent-content" data-togglable=":feature:map/androidMain"><div class="symbol monospace"><span class="token keyword">actual </span><span class="token keyword">fun </span><a href="map-layers-directory.html"><span class="token function">mapLayersDirectory</span></a><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token operator">: </span><span data-unresolved-link="okio/Path///PointingToDeclaration/">Path</span></div><div class="brief "><p class="paragraph">App-internal storage, so imported layers are private to the app and removed with it.</p></div></div><div class="content sourceset-dependent-content" data-active="" data-togglable=":feature:map/commonMain"><div class="symbol monospace"><span class="token keyword">expect </span><span class="token keyword">fun </span><a href="map-layers-directory.html"><span class="token function">mapLayersDirectory</span></a><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token operator">: </span><span data-unresolved-link="okio/Path///PointingToDeclaration/">Path</span></div><div class="brief "><p class="paragraph">Where imported layer files are kept for this platform.</p></div></div><div class="content sourceset-dependent-content" data-togglable=":feature:map/jvmMain"><div class="symbol monospace"><span class="token keyword">actual </span><span class="token keyword">fun </span><a href="map-layers-directory.html"><span class="token function">mapLayersDirectory</span></a><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token operator">: </span><span data-unresolved-link="okio/Path///PointingToDeclaration/">Path</span></div><div class="brief "><p class="paragraph">Alongside the desktop database, which already lives in <code class="lang-kotlin">~/.meshtastic</code>.</p></div></div> </div>
</div>
</div>
</div>
</div>
<a data-name="536017619%2FFunctions%2F-1707802287" anchor-label="opacityOf" id="536017619%2FFunctions%2F-1707802287" data-filterable-set=":feature:map/commonMain"></a>
<div class="table-row table-row_content" data-togglable="EXTENSION_FUNCTION" data-filterable-current=":feature:map/commonMain" data-filterable-set=":feature:map/commonMain">
<div class="main-subrow keyValue ">
<div class=""><span class="inline-flex">
<div><a href="opacity-of.html"><span>opacity</span><wbr><span><span>Of</span></span></a></div>
<span class="anchor-wrapper"><span class="anchor-icon" pointing-to="536017619%2FFunctions%2F-1707802287"></span>
<div class="copy-popup-wrapper "><span class="copy-popup-icon"></span><span>Link copied to clipboard</span></div>
</span></span></div>
<div>
<div class="title">
<div class="platform-hinted " data-platform-hinted="data-platform-hinted"><div class="content sourceset-dependent-content" data-active="" data-togglable=":feature:map/commonMain"><div class="symbol monospace"><span class="token keyword">fun </span><a href="https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-map/index.html">Map</a><span class="token operator">&lt;</span><a href="https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html">String</a><span class="token punctuation">, </span><a href="https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html">Float</a><span class="token operator">&gt;</span><span class="token punctuation">.</span><a href="opacity-of.html"><span class="token function">opacityOf</span></a><span class="token punctuation">(</span><span class="parameters "><span class="parameter ">key<span class="token operator">: </span><a href="https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html">String</a></span></span><span class="token punctuation">)</span><span class="token operator">: </span><a href="https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html">Float</a></div><div class="brief "><p class="paragraph">This layer's opacity, or fully opaque when the user has never moved its slider.</p></div></div></div>
</div>
</div>
</div>
</div>
<a data-name="213096014%2FFunctions%2F326004429" anchor-label="rememberMapLayerPicker" id="213096014%2FFunctions%2F326004429" data-filterable-set=":feature:map/commonMain,:feature:map/androidMain,:feature:map/jvmMain"></a>
<div class="table-row table-row_content" data-filterable-current=":feature:map/commonMain,:feature:map/androidMain,:feature:map/jvmMain" data-filterable-set=":feature:map/commonMain,:feature:map/androidMain,:feature:map/jvmMain">
<div class="main-subrow keyValue ">
<div class=""><span class="inline-flex">
<div><a href="remember-map-layer-picker.html"><span>remember</span><wbr><span>Map</span><wbr><span>Layer</span><wbr><span><span>Picker</span></span></a></div>
<span class="anchor-wrapper"><span class="anchor-icon" pointing-to="213096014%2FFunctions%2F326004429"></span>
<div class="copy-popup-wrapper "><span class="copy-popup-icon"></span><span>Link copied to clipboard</span></div>
</span></span></div>
<div>
<div class="title">
<div class="platform-hinted with-platform-tabs" data-platform-hinted="data-platform-hinted">
<div class="platform-bookmarks-row" data-toggle-list="data-toggle-list"><button class="platform-bookmark" data-filterable-current=":feature:map/androidMain" data-filterable-set=":feature:map/androidMain" data-active="" data-toggle=":feature:map/androidMain">android</button><button class="platform-bookmark" data-filterable-current=":feature:map/commonMain" data-filterable-set=":feature:map/commonMain" data-toggle=":feature:map/commonMain">common</button><button class="platform-bookmark" data-filterable-current=":feature:map/jvmMain" data-filterable-set=":feature:map/jvmMain" data-toggle=":feature:map/jvmMain">jvm</button></div>
<div class="content sourceset-dependent-content" data-togglable=":feature:map/androidMain"><div class="symbol monospace"><div class="block"><div class="block"><span class="token annotation builtin">@</span><a href="https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable.html"><span class="token annotation builtin">Composable</span></a></div></div><span class="token keyword">actual </span><span class="token keyword">fun </span><a href="remember-map-layer-picker.html"><span class="token function">rememberMapLayerPicker</span></a><span class="token punctuation">(</span><span class="parameters "><span class="parameter ">onPick<span class="token operator">: </span><span class="token punctuation">(</span><a href="-picked-map-file/index.html">PickedMapFile</a><span class="token punctuation">)</span><span class="token operator"> -&gt; </span><a href="https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html">Unit</a></span></span><span class="token punctuation">)</span><span class="token operator">: </span><a href="-map-layer-picker-launcher/index.html">MapLayerPickerLauncher</a></div><div class="brief "><p class="paragraph">Returns a launcher that asks the user for a map file and hands it back as a <a href="-picked-map-file/index.html">PickedMapFile</a>.</p></div></div><div class="content sourceset-dependent-content" data-active="" data-togglable=":feature:map/commonMain"><div class="symbol monospace"><div class="block"><div class="block"><span class="token annotation builtin">@</span><a href="https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable.html"><span class="token annotation builtin">Composable</span></a></div></div><span class="token keyword">expect </span><span class="token keyword">fun </span><a href="remember-map-layer-picker.html"><span class="token function">rememberMapLayerPicker</span></a><span class="token punctuation">(</span><span class="parameters "><span class="parameter ">onPick<span class="token operator">: </span><span class="token punctuation">(</span><a href="-picked-map-file/index.html">PickedMapFile</a><span class="token punctuation">)</span><span class="token operator"> -&gt; </span><a href="https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html">Unit</a></span></span><span class="token punctuation">)</span><span class="token operator">: </span><a href="-map-layer-picker-launcher/index.html">MapLayerPickerLauncher</a></div><div class="brief "><p class="paragraph">Returns a launcher that asks the user for a map file and hands it back as a <a href="-picked-map-file/index.html">PickedMapFile</a>.</p></div></div><div class="content sourceset-dependent-content" data-togglable=":feature:map/jvmMain"><div class="symbol monospace"><div class="block"><div class="block"><span class="token annotation builtin">@</span><a href="https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable.html"><span class="token annotation builtin">Composable</span></a></div></div><span class="token keyword">actual </span><span class="token keyword">fun </span><a href="remember-map-layer-picker.html"><span class="token function">rememberMapLayerPicker</span></a><span class="token punctuation">(</span><span class="parameters "><span class="parameter ">onPick<span class="token operator">: </span><span class="token punctuation">(</span><a href="-picked-map-file/index.html">PickedMapFile</a><span class="token punctuation">)</span><span class="token operator"> -&gt; </span><a href="https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html">Unit</a></span></span><span class="token punctuation">)</span><span class="token operator">: </span><a href="-map-layer-picker-launcher/index.html">MapLayerPickerLauncher</a></div><div class="brief "><p class="paragraph">Returns a launcher that asks the user for a map file and hands it back as a <a href="-picked-map-file/index.html">PickedMapFile</a>.</p></div></div> </div>
</div>
</div>
</div>
</div>
<a data-name="1562095522%2FFunctions%2F-1707802287" anchor-label="resolveLayerType" id="1562095522%2FFunctions%2F-1707802287" data-filterable-set=":feature:map/commonMain"></a>
<div class="table-row table-row_content" data-filterable-current=":feature:map/commonMain" data-filterable-set=":feature:map/commonMain">
<div class="main-subrow keyValue ">
<div class=""><span class="inline-flex">
<div><a href="resolve-layer-type.html"><span>resolve</span><wbr><span>Layer</span><wbr><span><span>Type</span></span></a></div>
<span class="anchor-wrapper"><span class="anchor-icon" pointing-to="1562095522%2FFunctions%2F-1707802287"></span>
<div class="copy-popup-wrapper "><span class="copy-popup-icon"></span><span>Link copied to clipboard</span></div>
</span></span></div>
<div>
<div class="title">
<div class="platform-hinted " data-platform-hinted="data-platform-hinted"><div class="content sourceset-dependent-content" data-active="" data-togglable=":feature:map/commonMain"><div class="symbol monospace"><span class="token keyword">fun </span><a href="resolve-layer-type.html"><span class="token function">resolveLayerType</span></a><span class="token punctuation">(</span><span class="parameters "><span class="parameter ">extensionOrMime<span class="token operator">: </span><a href="https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html">String</a><span class="token operator">?</span></span></span><span class="token punctuation">)</span><span class="token operator">: </span><a href="-layer-type/index.html">LayerType</a><span class="token operator">?</span></div><div class="brief "><p class="paragraph">Resolve a file extension or MIME subtype (e.g. <code class="lang-kotlin">geojson</code>, <code class="lang-kotlin">vnd.geo+json</code>) to a <a href="-layer-type/index.html">LayerType</a>, or null if unsupported.</p></div></div></div>
</div>
</div>
</div>
</div>
<a data-name="876700727%2FFunctions%2F-1707802287" anchor-label="toLocalPath" id="876700727%2FFunctions%2F-1707802287" data-filterable-set=":feature:map/commonMain"></a>
<div class="table-row table-row_content" data-togglable="EXTENSION_FUNCTION" data-filterable-current=":feature:map/commonMain" data-filterable-set=":feature:map/commonMain">
<div class="main-subrow keyValue ">
<div class=""><span class="inline-flex">
<div><a href="to-local-path.html"><span>to</span><wbr><span>Local</span><wbr><span><span>Path</span></span></a></div>
<span class="anchor-wrapper"><span class="anchor-icon" pointing-to="876700727%2FFunctions%2F-1707802287"></span>
<div class="copy-popup-wrapper "><span class="copy-popup-icon"></span><span>Link copied to clipboard</span></div>
</span></span></div>
<div>
<div class="title">
<div class="platform-hinted " data-platform-hinted="data-platform-hinted"><div class="content sourceset-dependent-content" data-active="" data-togglable=":feature:map/commonMain"><div class="symbol monospace"><span class="token keyword">fun </span><a href="https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html">String</a><span class="token punctuation">.</span><a href="to-local-path.html"><span class="token function">toLocalPath</span></a><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token operator">: </span><span data-unresolved-link="okio/Path///PointingToDeclaration/">Path</span></div><div class="brief "><p class="paragraph">The local path behind a <code class="lang-kotlin">file://</code> URI (or a bare path, which is what a hand-made item may carry). Public because the renderer's conversion cache also stores its files under <code class="lang-kotlin">file://</code> URIs and reads them back through this.</p></div></div></div>
</div>
</div>
</div>
</div>
<a data-name="503909578%2FFunctions%2F-459705751" anchor-label="toPickedMapFile" id="503909578%2FFunctions%2F-459705751" data-filterable-set=":feature:map/androidMain"></a>
<div class="table-row table-row_content" data-togglable="EXTENSION_FUNCTION" data-filterable-current=":feature:map/androidMain" data-filterable-set=":feature:map/androidMain">
<div class="main-subrow keyValue ">
<div class=""><span class="inline-flex">
<div><a href="to-picked-map-file.html"><span>to</span><wbr><span>Picked</span><wbr><span>Map</span><wbr><span><span>File</span></span></a></div>
<span class="anchor-wrapper"><span class="anchor-icon" pointing-to="503909578%2FFunctions%2F-459705751"></span>
<div class="copy-popup-wrapper "><span class="copy-popup-icon"></span><span>Link copied to clipboard</span></div>
</span></span></div>
<div>
<div class="title">
<div class="platform-hinted with-platform-tabs" data-platform-hinted="data-platform-hinted">
<div class="platform-bookmarks-row" data-toggle-list="data-toggle-list"><button class="platform-bookmark" data-filterable-current=":feature:map/androidMain" data-filterable-set=":feature:map/androidMain" data-active="" data-toggle=":feature:map/androidMain">android</button></div>
<div class="content sourceset-dependent-content" data-active="" data-togglable=":feature:map/androidMain"><div class="symbol monospace"><span class="token keyword">fun </span><a href="https://developer.android.com/reference/kotlin/android/net/Uri.html">Uri</a><span class="token punctuation">.</span><a href="to-picked-map-file.html"><span class="token function">toPickedMapFile</span></a><span class="token punctuation">(</span><span class="parameters "><span class="parameter ">context<span class="token operator">: </span><a href="https://developer.android.com/reference/kotlin/android/content/Context.html">Context</a></span></span><span class="token punctuation">)</span><span class="token operator">: </span><a href="-picked-map-file/index.html">PickedMapFile</a></div><div class="brief "><p class="paragraph">Wrap a picked <code class="lang-kotlin">content://</code> as a <a href="-picked-map-file/index.html">PickedMapFile</a> for the layer store.</p></div></div> </div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="footer">
<div class="footer--container">
<a href="#content" id="go-to-top-link" class="footer--button footer--button_go-to-top"></a>
<div class="footer--content">
<div>
<span>Generated by </span>
<a class="footer--link footer--link_external" href="https://github.com/Kotlin/dokka">
Dokka
</a>
<div>© 2026 Copyright</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</body>
</html>