Skip to content
This repository has been archived by the owner on Aug 8, 2023. It is now read-only.

Color operations #1373

Merged
merged 50 commits into from
Apr 29, 2015
Merged

Color operations #1373

merged 50 commits into from
Apr 29, 2015

Conversation

lbud
Copy link
Contributor

@lbud lbud commented Apr 29, 2015

friedbunny and others added 30 commits March 4, 2015 16:59
Use our logging system that will route the message accordingly on
the target platform.

Fixes #613
Get rid of printf and cout by using Log::*
iOS setAppliedStyleClasses -> setStyleClasses
This follows gl-js and just makes sense -- whenever the style changes
the atlases should be blown away.

Refs #957
There can be multiple tiles with the same ID, but from different
sources.

Fixes #957
We are using X11 symbols directly like XFree() so we need to link
with it explicitly. Previously these symbols were being resolved
somehow by libGL, but apparently they are now hidden - good - in
the custom version we are using since 5e40f72.

Fixes #1005.
Lists the dependencies needed for linking.

Fixes #967.
Add iOS project setup walkthrough including dependencies
- 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
sprite images  missing on > 2.0 scale factors
Update to latest API 22 build tools
incanus and others added 20 commits March 17, 2015 20:30
Look inside MapboxGL.bundle when present
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.
Also, replace manual thread type checks with Environment::currentlyOn().
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.
Environment will now have an incremental unique ID to that will
help distinguish between threads scoped to different Environments
when logging.
To make it easier to debug, add the Environment ID and the Thread name
to the log messages. For instance log messages from the TileParser will look like:

[WARNING] {0}{TileWorker_15/18653/9486}[ParseTile]: some relevant warning message
   |       |             |                  |
   |       |             |                  +-> Component
   |       |             +--------------------> Thread name
   |       +----------------------------------> Environment ID
   +------------------------------------------> Severity level

Log messages that are not inside an Environment::Scope will work
normally and will look like:

[WARNING] [JNI]: some relevant warning message

Fixes #882.
Scope threads to an Environment
Fix end of acceptable glyph/unicode range
lbud pushed a commit that referenced this pull request Apr 29, 2015
@lbud lbud merged commit 5a6ce11 into v8-two Apr 29, 2015
@lbud lbud deleted the color_operations_t2 branch April 29, 2015 20:09
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.