XweatherEncodedTileSource

XweatherEncodedTileSource.kt

A subclass of EncodedTileSource that is used to request and process encoded tile data from the MapsGL server.

Based on the IOS version.

Author

Jason Suto 01/08/24

Constructors

Link copied to clipboard
constructor(id: String, authenticator: XweatherAuthenticator?)

Types

Link copied to clipboard
object Companion
Link copied to clipboard

Properties

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
var bounds: LatLonBounds?
Link copied to clipboard
open override var datasets: List<DatasetType>
Link copied to clipboard
open override val eventDispatcher: EventDispatcher
Link copied to clipboard
open override var id: String

The unique identifier for the data source.

Link copied to clipboard
open override val isEncoded: Boolean = true
Link copied to clipboard
Link copied to clipboard
open override var isReady: Boolean

Indicates whether the data source is ready to be used by consuming layers, which may be false if data has not been loaded from a remote source yet or the data has not been fully prepared for rendering.

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
open override var kind: DataSourceKind

type in MapsGL JS

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
val requests: <Error class: unknown class>
Link copied to clipboard
Link copied to clipboard
open override var tileCache: TileCache<DataType>
Link copied to clipboard
open override var tileManager: TileRequestManager<DataType>
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
open override var timeRange: ClosedRange<Date>?
Link copied to clipboard
Link copied to clipboard

Functions

Link copied to clipboard
open override fun addConsumer(consumer: DataSourceConsumer)

Adds a map layer as a consumer of the data source.

Link copied to clipboard
fun addToAnimationQueue(inputString: String)
Link copied to clipboard
fun adjustDateBySeconds(dateString: String, offsetSeconds: Long): String?

Used by prepareTileRequest() to increment or decremnet the time and reformate it for sources with time offets

Link copied to clipboard
fun cleanup()
Link copied to clipboard
open fun contains(coord: TileCoord): Boolean
Link copied to clipboard
fun <DataType : TileData> TileSource<DataType>.contains(coord: TileCoord): Boolean
Link copied to clipboard

Returns the data range for the specified channel.

Link copied to clipboard
fun extractValidTimes(jsonString: String): List<String>
Link copied to clipboard
open suspend override fun fetchMetadata(startDate: Date?, endDate: Date?)

Returns the metadata for the source, which can be loaded from a remote source.

Link copied to clipboard
suspend fun fetchValidTimes()

To be used when the Play button is used to start a timeline animation

Link copied to clipboard
Link copied to clipboard

Test function to detect color format of image

Link copied to clipboard
Link copied to clipboard
open override fun getMetadataURL(): URL?
Link copied to clipboard
open fun getTileData(coord: TileCoord): Any?
Link copied to clipboard
fun <DataType : TileData> TileSource<DataType>.init(id: String, authenticator: Authenticator<MediaSession.Token>?)
Link copied to clipboard
fun intervalToURLTime(intervalTime: String): String

convert from \"2025-04-22T03:49:31Z\" to 20250422030000

Link copied to clipboard
fun makeTileURL(coord: TileCoord, variables: Map<String, Any>?): URL
Link copied to clipboard

Returns the metadata for the specified channel, if available.

Link copied to clipboard
Link copied to clipboard
fun onTileError(tile: TileType, error: Error)
Link copied to clipboard
suspend fun onTileLoaded(tile: TileType, intervals: List<String>? = null)

Given a tile and data, generate encodeddate and add to the tilecache.

Link copied to clipboard
suspend fun parseTile(tile: TileType, data: ByteArray, headers: <Error class: unknown class><Any, Any>?): Bitmap
Link copied to clipboard
open fun prepareTileRequest(request: URLRequest, timeString: String?)
fun prepareTileRequest(request: URLRequest, timeString: String?, intervals: List<String>?)
Link copied to clipboard
inline fun <EventType : Event> EventSource.publisher(eventType: Class<EventType>): Flow<EventType>
Link copied to clipboard
open override fun removeConsumer(layerId: String)

Removes a consumer

Link copied to clipboard
Link copied to clipboard
open suspend override fun requestTiles(coord: TileCoord, options: TileRequestOptions, currentDate: String, fromAnimation: Boolean, intervals: List<String>?): Any
Link copied to clipboard
fun setObserver(observer: Observer<String>, layerID: String)
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
inline suspend fun <EventType : Event> EventSource.subscribe(eventType: Class<EventType>, crossinline handler: (EventType) -> Unit)
Link copied to clipboard