QuartzCore.framework | |
---|---|
Public Framework | |
Availabile | 2.0 – present |
Class Prefix | CA |
```QuartzCore```, also known as Core Animation, is an Objective-C framework that to declaratively build an animatable scene graph. CoreAnimation uses a unique rendering model where the graphics operations are run in a separate process.
For an example of using it, see Page Flip.
Debugging
Signature | unsigned CAGetDebugFlags();
|
---|---|
Available in | 2.0 – |
Signature | void CASetDebugFlags(unsigned flags);
|
---|---|
Available in | 2.0 – |
Applications linked with QuartzCore will recognize the following debugging (boolean) environment variables:
Flag | Environment variable | Meaning |
---|---|---|
1 | CA_COLOR_FLUSH[1] | ? |
2 | CA_COLOR_COPY | Color Copied Images |
4 | CA_COLOR_OPAQUE[1][2] | Color Blended Layers: Shows opaque vs non-opaque regions in green and red |
8 | CA_COLOR_NO_WAIT[1] | Color Immediately: Like the "no delay after flash" option in Quartz Debug |
16 | CA_AUTO_FLUSH | ? |
32 | CA_PRINT_TREE[1] | ? |
64 | CA_PRINT_OBJECTS | ? |
128 | CA_LOG_IMPLICIT_TRANSACTIONS | Logs all implicitly created transactions: "Started implicit transaction for thread 0x7fff7be65300" |
256 | CA_LOG_MEMORY_USAGE | When there's some CA activity, periodically prints lines like these: "CoreAnimation buffers: currently 0.0522MB; maximum 0.1MB" |
512 | CA_LOG_IMAGE_COPIES | "CoreAnimation: copied CGImageRef 0x6200001a0380 - RGB mask (bug!)" |
1024 | CA_PRINT_PERF | When there's some CA activity, periodically prints number of transactions since last time |
2048 | CA_DISABLE_OCCLUSION_CULLING | ? |
4096 | CA_DISABLE_DIRTY_REGIONS | ? |
8192 | CA_LOG_TRIPLE_BUFFERING | ? |
16384 | CA_COLOR_SUBPIXEL | ? |
32768 | CA_DISABLE_RENDER | ? |
65536 | CA_ALWAYS_RENDER | ? |
131072 | CA_COLOR_OFFSCREEN | ? |
262144 | CA_COLOR_DETACHED | ? |
524288 | CA_COLOR_CACHED | ? |
1048576 | CA_DISABLE_DETACHED | ? |
Alternatively, you can use the CASetDebugFlags() to update the flags in runtime.
Other environment variables
Additionally, the following environment variables not governed by CASetDebugFlags() also exist:
Environment variable | Default | Meaning |
---|---|---|
CA_BENCHMARK LK_BENCHMARK |
false | - |
CA_LOG_IMAGE_QUEUE_FRAMES | false | - |
CA_PRINT_SHADERS | false | Log the vertex and fragment shader codes when creating them. |
CA_DISABLED_EXTENSIONS | NULL | A space-delimited list of the following OpenGL extensions that should be disabled: |
CA_DISABLE_WORKAROUNDS | false | - |
CA_MAX_TEXTURE_UNITS | ? | - |
CA_MAX_TEXTURE_SIZE | ? | - |
CA_ENABLE_OGL | true | - |
CA_ENABLE_TILING | true | - |
CA_RESIZE_YUV_SCALE | 0.8 | - |
MBX2D_OFFSCREEN MBX2D_PAGE_FLIP |
true | - |
CA_CLONE_OVERSCAN_AMOUNT | 0.0? | - |
CA_CLONE_DISPLAY | false | - |
Versions
Firmware | 2.0 | 2.1 | 2.2 | 3.0 | 3.1 | 3.2 |
---|---|---|---|---|---|---|
SourceCache version | N/A | |||||
dylib version | 1.6 |
References
- ^ a b c d http://lists.apple.com/archives/Quartz-dev/2008/Oct/msg00048.html [Archived 2011-12-02 at the Wayback Machine]
- ^ Darknoon Blog » Core Animation debug mode: http://darknoon.com/blog/2009/06/29/core-animation-debug-mode/ [Archived 2009-12-12 at the Wayback Machine]