xref: /aosp_15_r20/frameworks/base/libs/hwui/Debug.h (revision d57664e9bc4670b3ecf6748a746a57c557b6bc9e)
1*d57664e9SAndroid Build Coastguard Worker /*
2*d57664e9SAndroid Build Coastguard Worker  * Copyright (C) 2010 The Android Open Source Project
3*d57664e9SAndroid Build Coastguard Worker  *
4*d57664e9SAndroid Build Coastguard Worker  * Licensed under the Apache License, Version 2.0 (the "License");
5*d57664e9SAndroid Build Coastguard Worker  * you may not use this file except in compliance with the License.
6*d57664e9SAndroid Build Coastguard Worker  * You may obtain a copy of the License at
7*d57664e9SAndroid Build Coastguard Worker  *
8*d57664e9SAndroid Build Coastguard Worker  *      http://www.apache.org/licenses/LICENSE-2.0
9*d57664e9SAndroid Build Coastguard Worker  *
10*d57664e9SAndroid Build Coastguard Worker  * Unless required by applicable law or agreed to in writing, software
11*d57664e9SAndroid Build Coastguard Worker  * distributed under the License is distributed on an "AS IS" BASIS,
12*d57664e9SAndroid Build Coastguard Worker  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13*d57664e9SAndroid Build Coastguard Worker  * See the License for the specific language governing permissions and
14*d57664e9SAndroid Build Coastguard Worker  * limitations under the License.
15*d57664e9SAndroid Build Coastguard Worker  */
16*d57664e9SAndroid Build Coastguard Worker 
17*d57664e9SAndroid Build Coastguard Worker #ifndef ANDROID_HWUI_DEBUG_H
18*d57664e9SAndroid Build Coastguard Worker #define ANDROID_HWUI_DEBUG_H
19*d57664e9SAndroid Build Coastguard Worker 
20*d57664e9SAndroid Build Coastguard Worker #define DEBUG_LEVEL_HIGH 3
21*d57664e9SAndroid Build Coastguard Worker #define DEBUG_LEVEL_MODERATE 2
22*d57664e9SAndroid Build Coastguard Worker #define DEBUG_LEVEL_LOW 1
23*d57664e9SAndroid Build Coastguard Worker #define DEBUG_LEVEL_NONE 0
24*d57664e9SAndroid Build Coastguard Worker 
25*d57664e9SAndroid Build Coastguard Worker // Turn on to check for OpenGL errors on each frame
26*d57664e9SAndroid Build Coastguard Worker // Note DEBUG_LEVEL_HIGH for DEBUG_OPENGL is only setable by enabling
27*d57664e9SAndroid Build Coastguard Worker // HWUI_ENABLE_OPENGL_VALIDATION when building HWUI. Similarly if
28*d57664e9SAndroid Build Coastguard Worker // HWUI_ENABLE_OPENGL_VALIDATION is set then this is always DEBUG_LEVEL_HIGH
29*d57664e9SAndroid Build Coastguard Worker #ifndef DEBUG_OPENGL
30*d57664e9SAndroid Build Coastguard Worker #define DEBUG_OPENGL DEBUG_LEVEL_LOW
31*d57664e9SAndroid Build Coastguard Worker #endif
32*d57664e9SAndroid Build Coastguard Worker 
33*d57664e9SAndroid Build Coastguard Worker // Turn on to enable initialization information
34*d57664e9SAndroid Build Coastguard Worker #define DEBUG_INIT 0
35*d57664e9SAndroid Build Coastguard Worker 
36*d57664e9SAndroid Build Coastguard Worker // Turn on to enable memory usage summary on each frame
37*d57664e9SAndroid Build Coastguard Worker #define DEBUG_MEMORY_USAGE 0
38*d57664e9SAndroid Build Coastguard Worker 
39*d57664e9SAndroid Build Coastguard Worker // Turn on to enable debugging of cache flushes
40*d57664e9SAndroid Build Coastguard Worker #define DEBUG_CACHE_FLUSH 0
41*d57664e9SAndroid Build Coastguard Worker 
42*d57664e9SAndroid Build Coastguard Worker // Turn on to enable layers debugging when rendered as regions
43*d57664e9SAndroid Build Coastguard Worker #define DEBUG_LAYERS_AS_REGIONS 0
44*d57664e9SAndroid Build Coastguard Worker 
45*d57664e9SAndroid Build Coastguard Worker // Turn on to enable debugging when the clip is not a rect
46*d57664e9SAndroid Build Coastguard Worker #define DEBUG_CLIP_REGIONS 0
47*d57664e9SAndroid Build Coastguard Worker 
48*d57664e9SAndroid Build Coastguard Worker // Turn on to display debug info about vertex/fragment shaders
49*d57664e9SAndroid Build Coastguard Worker #define DEBUG_PROGRAMS 0
50*d57664e9SAndroid Build Coastguard Worker 
51*d57664e9SAndroid Build Coastguard Worker // Turn on to display info about layers
52*d57664e9SAndroid Build Coastguard Worker #define DEBUG_LAYERS 0
53*d57664e9SAndroid Build Coastguard Worker 
54*d57664e9SAndroid Build Coastguard Worker // Turn on to display info about render buffers
55*d57664e9SAndroid Build Coastguard Worker #define DEBUG_RENDER_BUFFERS 0
56*d57664e9SAndroid Build Coastguard Worker 
57*d57664e9SAndroid Build Coastguard Worker // Turn on to make stencil operations easier to debug
58*d57664e9SAndroid Build Coastguard Worker // (writes 255 instead of 1 in the buffer, forces 8 bit stencil)
59*d57664e9SAndroid Build Coastguard Worker #define DEBUG_STENCIL 0
60*d57664e9SAndroid Build Coastguard Worker 
61*d57664e9SAndroid Build Coastguard Worker // Turn on to display debug info about 9patch objects
62*d57664e9SAndroid Build Coastguard Worker #define DEBUG_PATCHES 0
63*d57664e9SAndroid Build Coastguard Worker // Turn on to display vertex and tex coords data about 9patch objects
64*d57664e9SAndroid Build Coastguard Worker // This flag requires DEBUG_PATCHES to be turned on
65*d57664e9SAndroid Build Coastguard Worker #define DEBUG_PATCHES_VERTICES 0
66*d57664e9SAndroid Build Coastguard Worker // Turn on to display vertex and tex coords data used by empty quads
67*d57664e9SAndroid Build Coastguard Worker // in 9patch objects
68*d57664e9SAndroid Build Coastguard Worker // This flag requires DEBUG_PATCHES to be turned on
69*d57664e9SAndroid Build Coastguard Worker #define DEBUG_PATCHES_EMPTY_VERTICES 0
70*d57664e9SAndroid Build Coastguard Worker 
71*d57664e9SAndroid Build Coastguard Worker // Turn on to display debug info about shapes
72*d57664e9SAndroid Build Coastguard Worker #define DEBUG_PATHS 0
73*d57664e9SAndroid Build Coastguard Worker 
74*d57664e9SAndroid Build Coastguard Worker // Turn on to display debug info about textures
75*d57664e9SAndroid Build Coastguard Worker #define DEBUG_TEXTURES 0
76*d57664e9SAndroid Build Coastguard Worker 
77*d57664e9SAndroid Build Coastguard Worker // Turn on to display debug info about the layer renderer
78*d57664e9SAndroid Build Coastguard Worker #define DEBUG_LAYER_RENDERER 0
79*d57664e9SAndroid Build Coastguard Worker 
80*d57664e9SAndroid Build Coastguard Worker // Turn on to enable additional debugging in the font renderers
81*d57664e9SAndroid Build Coastguard Worker #define DEBUG_FONT_RENDERER 0
82*d57664e9SAndroid Build Coastguard Worker 
83*d57664e9SAndroid Build Coastguard Worker // Turn on to log draw operation batching and deferral information
84*d57664e9SAndroid Build Coastguard Worker #define DEBUG_DEFER 0
85*d57664e9SAndroid Build Coastguard Worker 
86*d57664e9SAndroid Build Coastguard Worker // Turn on to dump display list state
87*d57664e9SAndroid Build Coastguard Worker #define DEBUG_DISPLAY_LIST 0
88*d57664e9SAndroid Build Coastguard Worker 
89*d57664e9SAndroid Build Coastguard Worker // Turn on to insert an event marker for each display list op
90*d57664e9SAndroid Build Coastguard Worker #define DEBUG_DISPLAY_LIST_OPS_AS_EVENTS 0
91*d57664e9SAndroid Build Coastguard Worker 
92*d57664e9SAndroid Build Coastguard Worker // Turn on to insert detailed event markers
93*d57664e9SAndroid Build Coastguard Worker #define DEBUG_DETAILED_EVENTS 0
94*d57664e9SAndroid Build Coastguard Worker 
95*d57664e9SAndroid Build Coastguard Worker // Turn on to highlight drawing batches and merged batches with different colors
96*d57664e9SAndroid Build Coastguard Worker #define DEBUG_MERGE_BEHAVIOR 0
97*d57664e9SAndroid Build Coastguard Worker 
98*d57664e9SAndroid Build Coastguard Worker // Turn on to enable debugging shadow
99*d57664e9SAndroid Build Coastguard Worker #define DEBUG_SHADOW 0
100*d57664e9SAndroid Build Coastguard Worker 
101*d57664e9SAndroid Build Coastguard Worker // Turn on to enable debugging vector drawable
102*d57664e9SAndroid Build Coastguard Worker #define DEBUG_VECTOR_DRAWABLE 0
103*d57664e9SAndroid Build Coastguard Worker 
104*d57664e9SAndroid Build Coastguard Worker #if DEBUG_INIT
105*d57664e9SAndroid Build Coastguard Worker #define INIT_LOGD(...) ALOGD(__VA_ARGS__)
106*d57664e9SAndroid Build Coastguard Worker #else
107*d57664e9SAndroid Build Coastguard Worker #define INIT_LOGD(...)
108*d57664e9SAndroid Build Coastguard Worker #endif
109*d57664e9SAndroid Build Coastguard Worker 
110*d57664e9SAndroid Build Coastguard Worker #endif  // ANDROID_HWUI_DEBUG_H
111