summaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* Scope the Tile worker thread to an EnvironmentThiago Marcos P. Santos2015-03-1813-46/+41
| | | | | | | | | | | We are also removing the code that is passing the Environment around and instead, we get now the Environment in the TileData using Environment::Get(). When processing the job, the work will be temporally registered to the Environment as "TileWorker_0/0/0" which can be used for logging in the future. At the end of the job, it gets unregistered automatically from the Environment.
* Scope the Map thread to an EnvironmentThiago Marcos P. Santos2015-03-183-56/+35
| | | | Also, replace manual thread type checks with Environment::currentlyOn().
* Introduce the ThreadInfoStore and Environment::ScopeThiago Marcos P. Santos2015-03-182-2/+113
| | | | | | | | | | | | | | | | | | | The Environment will now keep track of every thread that is running within a Environment::Scope. Once the Scope object is created, it will automatically register the thread to the ThreadInfoStore with some additional information and it will automatically deregister as the stack frame rewinds (which can be useful for Threads that are temporally in use by an Environment like Workers). The ThreadInfoStore could be using the thread-local storage, but I think that making the Environment aware of what threads are associated to it can be useful for writing a mechanism for posting messages between threads. Withing a Scope, the Environment associated to the thread can be queried at any time which will save us from juggling a reference to the Environemnt around. Finally, the type of thread (Main, Map, etc) can also be queried at any moment to make sure a piece of code is running on the desired thread.
* feature() -> getFeature() to clear up ambiguity / Linux compiler errorJustin R. Miller2015-03-176-6/+6
|
* properly clean up tile annotations on deleteJustin R. Miller2015-03-171-0/+6
|
* fix passing of annotation managerJustin R. Miller2015-03-173-5/+5
|
* refs #893 #992: point annotations APIJustin R. Miller2015-03-1718-33/+541
|
* fix sprites for pixel ratios that are not 1 and 2Konstantin Käfer2015-03-178-55/+312
| | | | | | - OpenGL ES 2 doesn't allow NPOT textures with wrap-around - The Sprite object reported the map's pixelRatio, even though it loaded @2x assets - Copying icons from the sprite into the atlas now uses bilinear scaling to scale up to the actual size
* Revert "Move atlas ownership to Style"John Firebaugh2015-03-138-136/+131
| | | | This reverts commit bffee0715458530c6c86f440f757a4de667278a2.
* Index glyph use by tile pointer value, not tile IDJohn Firebaugh2015-03-136-18/+21
| | | | | | | There can be multiple tiles with the same ID, but from different sources. Fixes #957
* Remove unused declarationJohn Firebaugh2015-03-131-3/+0
|
* Remove needless indirectionJohn Firebaugh2015-03-132-12/+1
|
* Clean up GlyphAtlasJohn Firebaugh2015-03-132-40/+40
|
* Move atlas ownership to StyleJohn Firebaugh2015-03-138-131/+136
| | | | | | This follows gl-js and just makes sense -- whenever the style changes the atlases should be blown away. Refs #957
* fix rare issue that had the notify and cancel callbacks called in the wrong ↵Konstantin Käfer2015-03-131-57/+44
| | | | order
* Merge pull request #984 from mapbox/log_stderr_printfJohn Firebaugh2015-03-129-26/+35
|\ | | | | Get rid of printf and cout by using Log::*
| * Get rid of printf and cout by using Log::*Thiago Marcos P. Santos2015-03-129-26/+35
| | | | | | | | | | | | | | Use our logging system that will route the message accordingly on the target platform. Fixes #613
* | tolerate missing spritesKonstantin Käfer2015-03-121-8/+4
|/ | | | Do not try to fulfil the promise twice in case both requests to the sprite JSON and image fail. this will crash the program. Instead, we always continue with the promise, instead of throwing an exception. This allows the program to continue parsing tiles, but without an image sprite available. This means the map will render, but without the sprite images
* Merge pull request #972 from mapbox/log_cleanupThiago Marcos P. Santos2015-03-121-1/+37
|\ | | | | Refactoring of the log system
| * Update the FixtureLogThiago Marcos P. Santos2015-03-121-0/+14
| | | | | | | | | | | | Now the FixtureLog is an Log::Observer instead of a backend. The observer can sniff and filter log messages, that can be used for fail a test if it emits a warning for example.
| * Make the logging system staticThiago Marcos P. Santos2015-03-121-5/+7
| | | | | | | | | | | | | | No initialization is needed anymore and we can use the logging functions safely at any point of the code (threading is not handled though, so you might get multiplexed messages if you log from two threads simultaneously).
| * Simplify the logging mechanismThiago Marcos P. Santos2015-03-121-0/+20
| | | | | | | | | | | | | | | | | | Move the implementation of the more specialized methods to the base class and let the platform implement only the most generic method that takes all the possible arguments. These specialized methods will then map to the generic implementation that must be provided by the platforms we support.
* | fixes black flicker on rotating the deviceKonstantin Käfer2015-03-123-75/+94
|/ | | | | | | | | | | | fixes #838 instead of rendering ad libitum on the map thread, we are now driving rendering from the UI thread on iOS via the map.renderSync() function. There are still white bars during the rotation, but the general content of the view is kept visible. - upgrades GLFW to 3.1 - removes swapped/needsSwap in favor of a more explicit scheme - View#invalidate() now replaces View#swap() and is called whenever the View needs to trigger a rerender. GLFW and Android to this right away, while iOS goes back to the main thread and does the Map redrawing as part of the GLKView update - sets all iOS deployment targets to 7.0 - disables SQLite3 version check, since the library version changed on iOS 8.2
* Don't copy VT keys / values into each featureJohn Firebaugh2015-03-102-18/+24
| | | | Instead, maintain a key index ⇢ value index map and look up the value in getValue().
* More include fixesJohn Firebaugh2015-03-104-5/+4
|
* Move parseValue(pbf) to vector_tile.cppJohn Firebaugh2015-03-103-30/+30
| | | This code is specific to the vector tile format.
* Remove unused headerJohn Firebaugh2015-03-101-1/+0
|
* virtual ⇢ override in derived classJohn Firebaugh2015-03-101-6/+6
|
* Don't use const on value-type returnsJohn Firebaugh2015-03-103-6/+6
|
* Inline PBFGeometryJohn Firebaugh2015-03-102-99/+35
|
* Revert FeatureType renameJohn Firebaugh2015-03-094-9/+9
|
* Use single geometry formatJohn Firebaugh2015-03-097-283/+252
|
* Rework GeometryTile* interfaceJohn Firebaugh2015-03-099-297/+112
|
* unique -> shared ptrJustin R. Miller2015-03-095-7/+6
|
* reference cleanupsJustin R. Miller2015-03-092-10/+10
|
* move to shared pointers for queried layers passed to bucketsJustin R. Miller2015-03-097-44/+28
|
* move from range-based for loop to iterator for to be clearerJustin R. Miller2015-03-095-11/+23
|
* fix iterator comparatorJustin R. Miller2015-03-092-1/+6
|
* move to abstract interfaces to more be in line with original APIJustin R. Miller2015-03-099-115/+178
|
* doesn't make sense to move shared pointersJustin R. Miller2015-03-091-3/+3
|
* safely check pointsJustin R. Miller2015-03-091-3/+4
|
* refactor varsJustin R. Miller2015-03-091-6/+5
|
* properly iterate geometriesJustin R. Miller2015-03-091-3/+1
|
* increment feature filter on creationJustin R. Miller2015-03-091-0/+1
|
* get rid of unused memberJustin R. Miller2015-03-093-10/+0
|
* parse geometry collections from the pbfs; iterate geometries in bucketsJustin R. Miller2015-03-099-264/+270
|
* pass actual feature pbf when filtering layer featuresJustin R. Miller2015-03-091-3/+4
|
* no need for while loopJustin R. Miller2015-03-091-1/+1
|
* proper moveJustin R. Miller2015-03-091-1/+1
|
* iterate through fresh copy of layer dataJustin R. Miller2015-03-091-10/+10
|