Alexander Shalamov
f3e9c4733a
[core] Add unit tests
2020-04-01 16:18:55 -04:00
Alexander Shalamov
81e116d41a
[core] Use weak annotation manager
...
Map and renderer / orchestrator should be able to run on a separate threads,
however, legacy AnnotationManager is shared between Map and Renderer, therefore
is not a thread safe. Until AnnotationManager is deprecated and removed from a
code-base, use it only via weak pointers.
2020-03-05 17:43:37 +02:00
Alexander Shalamov
def38cf4db
[core] Override default prefetch delta if source has it's own setting
2020-02-11 10:40:30 +02:00
Alexander Shalamov
879c44f661
[core] Modularize FileSource codebase ( #15768 )
...
* [core] Introduce FileSourceManager and use it for default platform impl
- Add `FileSourceManager` interface that provides access to `FileSource`
instances and means of registering / unregistering `FileSource` factories
- Split `DefaultFileSource` into smaller parts
- Add `DatabaseFileSource` interface and it's default implementation
- Remove inter-dependencies between concrete `FileSource` classes
* [build] Add files to next build system
* [core] Add generic property setters / getters
* [core] Remove setOnlineStatus from OnlineFileSource interface
* [core] Hide threading implementation details from DatabaseFileSource interface
* [core] Make DB file source methods virtual
* [core] Add documentation for DatabaseFileSource and rename one method
* [core] Use simple callback instead of ActorRef
* [core] Remove ActorRef from OnlineFileSource public header
* [core] Add callback to FileSource::forward async API
* [core] Pass OfflineRegionDefinition by value
* [core] Update tests to use modular file sources
* [core] Update unit tests
* [core] Update unit tests after rebase
* [core] Backport low prio fix for cached requests
* [core] Backport pack database
* [core] Return removed factory from unRegisterFileSourceFactory
* [core] Rename shadowed args in onlinefilesource
* [core] Remove simple std::function callback aliases
* [core] Expose online file source property keys in public header file
* [test-runner] Add proxy file source test runner
* [cache] Update mbgl-cache utility to use new file source
* [metrics] Rebaseline binary size metrics
* [offline] Update offline utility
* [core] Update changelog
2020-01-13 10:57:23 +02:00
Mikhail Pozdnyakov
cd4136ed4b
[core][android][darwin] Fix GeoJSONOptions handling
...
- share the `GeoJSONOptions` instances using `Immutable<GeoJSONOptions>` - avoid extra copying
- fix wrapping of the `GeoJSONOptions` instances in supercluster map/reduce lambdas.
Previously, local variables were wrapped by reference.
2019-11-29 09:53:28 +02:00
Mikhail Pozdnyakov
5c271dba24
[core] Update Source.GeoJSONSourceTilesAfterDataReset unit test
2019-11-26 16:35:17 +02:00
Mikhail Pozdnyakov
ee38730eed
[core] Add Source.GeoJSONSourceTilesRemainAfterDataReset unit test
2019-11-12 15:12:31 +02:00
Mikhail Pozdnyakov
ff6a3ee5b7
[core] Suppress network requests for invisible tiles
...
If the render source does not need rendering, we set necessity for its tiles to `optional`, and thus suppress network requests on tiles expiration.
2019-10-02 20:45:46 +03:00
Mikhail Pozdnyakov
187962e425
[core] Fix render tile set source update
...
Before this change, the `RenderTileSetSource` implementation
ignored update calls for the sources whose description was not yet
loaded and it lead to missing of relayout requests.
2019-08-01 18:20:21 +03:00
Mikhail Pozdnyakov
5b6a262e15
[core] GeometryTile and TileLoader keep strong reference to FileSource
...
Thus we fix a potential bug: if `Renderer` outlives the `Map` it will hold a stale reference to the `FileSource` instance.
2019-05-14 11:29:24 +03:00
Mikhail Pozdnyakov
953ee5e81b
[core] Create glyph manager at renderer construction time
...
Avoid unnecessary glyph manager presence check in `Renderer::Impl::()`.
2019-05-14 11:29:24 +03:00
Thiago Marcos P. Santos
06f1dc48a2
[core] Make the BackgroundScheduler a singleton
...
- Do not carry it over everywhere as parameter, it is a shared
instance anyway and the lifecycle is pretty much the app lifecycle
from the moment we instantiate a map.
- Rename to BackgroundScheduler because it is a Scheduler that will
do tasks in the background, we don't make assumptions if it is a
thread pool or a single thread.
- Most importantly, remove the dependency from `core` on `platform`.
2019-05-10 14:20:38 +03:00
Mikhail Pozdnyakov
7a7192516f
[core] Introduce LayerRenderData. Source::update() accepts layer properties.
2019-04-17 17:21:41 +03:00
Mikhail Pozdnyakov
033d16ba86
[test] Fixed headers in source.test.cpp
2018-12-19 19:09:19 +02:00
Bruno de Oliveira Abinader
20ca1a0418
[core] Cleanup Transform, use {jump,ease}To() instead
2018-11-27 21:38:36 +02:00
Konstantin Käfer
8bf66ef7a7
[core] remove some uses of <iostream> and <sstream>
2018-10-23 12:23:40 +02:00
Molly Lloyd
f3294200c6
[core] add raster-dem source type and hillshade layer type ( #10642 )
2018-01-23 10:49:23 -08:00
Asheem Mamoowala
ba63d06cfc
[core] Use Actors for CustomTileLoader invocation from bindings.
2017-11-22 13:56:38 -08:00
Asheem Mamoowala
acae193861
[core] Custom Geometry Sources
2017-11-22 13:56:38 -08:00
Anand Thakker
b8654b3b04
[core] Move SourceType to the 'style' namespace
2017-10-16 16:32:53 -07:00
Ivo van Dongen
e35cbbae55
[core] mutate style on annotation mutations immediately
2017-07-18 10:45:12 +02:00
Asheem Mamoowala
8ae7010546
[core][ios][android][macos] Use premultiplied image directly for RasterTile and ImageSource, un-premultiply in the shader for blending
2017-07-17 12:20:03 -07:00
Asheem Mamoowala
1d15ed64dc
[core] Use shared pointer to manage Image source raster data and speed up change detection
2017-07-17 12:20:03 -07:00
Bruno de Oliveira Abinader
2fae373fc9
[core] GCC 4.9 is unable to deduce ctors when using bracket init
2017-07-12 20:42:29 +03:00
Asheem Mamoowala
a33cad9855
[core] Trigger repaint on source changes
2017-06-19 09:50:08 -07:00
Asheem Mamoowala
7f36e0cf76
[iOS][macOS] Export MGLImageSource, add and update documentation. Use animated ImageSource demo in iOS test app
2017-06-19 09:50:08 -07:00
John Firebaugh
0b68731207
[core] Per-bucket icon atlases
2017-06-13 10:18:43 -07:00
John Firebaugh
92252849c1
[core] Per-bucket glyph atlases
2017-06-13 10:18:43 -07:00
John Firebaugh
591af0021b
[core] Refactor RenderSource updates
...
* Eliminate updateBatch in favor of diffing layers and detecting changes to properties upon which layout depends.
* Replace RenderSource::{update,remove,invalidate,reload}Tiles with a single update method
* Replace TilePyramid::{update,remove,invalidate,reload}Tiles with a single update method
* Remove Style& dependency TODO from GeometryTile and TileParameters
2017-06-05 19:38:08 -07:00
Asheem Mamoowala
8b37a0704c
[core] Use fixed-size std::array for ImageSource coordinates
2017-06-01 15:38:01 -07:00
Asheem Mamoowala
7a010df956
[core] Add ImageSource support to style parsers
2017-06-01 15:38:01 -07:00
John Firebaugh
d766af44c8
[core] Auto-growable SpriteAtlas using shelf-pack
2017-05-26 11:21:56 -07:00
John Firebaugh
095dc7b167
[core] Replace createRender{Source,Layer} with Render{Source,Layer}::create
...
* Eliminates the need for EnableImmutableFromThis
* Eliminates the dependency of {Source,Layer}::Impl on corresponding Render class (circular dependency)
2017-05-12 11:26:27 -07:00
John Firebaugh
c2a5894f2d
[core] Immutable Impls
2017-05-12 11:26:27 -07:00
Bruno de Oliveira Abinader
37046938da
[tidy] modernize-raw-string-literal
2017-05-12 18:07:36 +03:00
John Firebaugh
89f1ffc6d2
[core] UpdateParameters ⇢ TileParameters
2017-05-04 07:29:08 -07:00
John Firebaugh
d5f4d0f05f
[core] Move render-related sources out of style directory/namespace
...
Moves the following to the renderer directory and out of the style namespace:
* CascadeParameters
* PropertyEvaluationParameters
* UpdateParameters
* PropertyEvaluator
* DataDrivenPropertyEvaluator
* CrossFadedPropertyEvaluator
* PaintPropertyBinder
* PaintProperyStatistics
* PossiblyEvaluatedPropertyValue
* TransitioningLight
* EvaluatedLight
2017-05-03 08:30:17 -07:00
John Firebaugh
3f0c89d633
[core] Refactor Source::*Impls into RenderSources and TilePyramid
2017-05-02 08:45:09 -07:00
Konstantin Käfer
59055cf403
[core] Move Sprite parsing to thread pool
2017-04-24 10:42:47 +02:00
Bruno de Oliveira Abinader
1f8910de18
Make Source::getZoomRange return an optional range
2017-03-21 19:33:36 +02:00
Bruno de Oliveira Abinader
c1a410be8b
[core] s/onSourceDidChange/onSourceChanged/ + source ref
2017-03-21 17:36:56 +02:00
Bruno de Oliveira Abinader
24198ebca8
[core] Expose Source::getZoomRange
2017-03-20 18:25:04 +02:00
Konstantin Käfer
62ea1f2185
[core] remove trailing whitespace, add trailing newlines, add space after //
2017-01-27 11:44:16 +01:00
Konstantin Käfer
e76de05402
[build] move logging to util
2016-11-22 20:58:51 +01:00
Konstantin Käfer
3bc79e316e
[build] move default ThreadPool implementation to platform/default
2016-11-22 20:58:51 +01:00
Konstantin Käfer
62b56b799a
[core] change std::array<uint16_t, 2> to mbgl::Size
2016-10-27 18:30:58 -07:00
Ivo van Dongen
e31a2c1c11
[core] fixup formatting
2016-10-21 10:05:00 -07:00
Mike Morris
817c26111a
[core] [node] pass thread pool impl to Map constructor
...
Updates mbgl::Map constructor usage everywhere
Adds NodeThreadPool implementation using AsyncQueue to call
Nan::AsyncQueueWorker from main thread
2016-10-20 14:37:36 -04:00
Ivo van Dongen
ab63a9494f
[core] reload geojson source on url change
2016-10-20 16:18:08 +03:00
Konstantin Käfer
3f3fc7b772
[test] add .test.cpp suffix to test case files
2016-09-28 16:34:22 +02:00