/external/chromium_org/third_party/mesa/src/src/mesa/main/ |
stencil.c | 27 * \file stencil.c 28 * Stencil operations. 31 * OpenGL 2.0's two-sided stencil feature. 43 * This problem is solved by keeping three sets of stencil state: 54 #include "stencil.h" 97 * Set the clear value for the stencil buffer. 113 if (ctx->Stencil.Clear == (GLuint) s) 117 ctx->Stencil.Clear = (GLuint) s; 122 * Set the function and reference value for stencil testing. 132 * __struct gl_contextRec::Stencil. On change flushes the vertices and notifies th [all...] |
clear.c | 304 * Clear signed integer color buffer or stencil buffer (not depth). 325 * STENCIL, or DEPTH STENCIL and drawbuffer is not zero." 333 /* Save current stencil clear value, set to 'value', do the 334 * stencil clear and restore the clear value. 338 const GLuint clearSave = ctx->Stencil.Clear; 339 ctx->Stencil.Clear = *value; 341 ctx->Stencil.Clear = clearSave; 395 * Clear unsigned integer color buffer (not depth, not stencil). 446 * "Only ClearBufferiv should be used to clear stencil buffers. [all...] |
/external/mesa3d/src/mesa/main/ |
stencil.c | 27 * \file stencil.c 28 * Stencil operations. 31 * OpenGL 2.0's two-sided stencil feature. 43 * This problem is solved by keeping three sets of stencil state: 54 #include "stencil.h" 97 * Set the clear value for the stencil buffer. 113 if (ctx->Stencil.Clear == (GLuint) s) 117 ctx->Stencil.Clear = (GLuint) s; 122 * Set the function and reference value for stencil testing. 132 * __struct gl_contextRec::Stencil. On change flushes the vertices and notifies th [all...] |
clear.c | 304 * Clear signed integer color buffer or stencil buffer (not depth). 325 * STENCIL, or DEPTH STENCIL and drawbuffer is not zero." 333 /* Save current stencil clear value, set to 'value', do the 334 * stencil clear and restore the clear value. 338 const GLuint clearSave = ctx->Stencil.Clear; 339 ctx->Stencil.Clear = *value; 341 ctx->Stencil.Clear = clearSave; 395 * Clear unsigned integer color buffer (not depth, not stencil). 446 * "Only ClearBufferiv should be used to clear stencil buffers. [all...] |
/external/chromium_org/third_party/mesa/src/src/mesa/drivers/dri/i965/ |
gen6_depthstencil.c | 48 if (ctx->Stencil._Enabled) { 49 int back = ctx->Stencil._BackFace; 53 intel_translate_compare_func(ctx->Stencil.Function[0]); 55 intel_translate_stencil_op(ctx->Stencil.FailFunc[0]); 57 intel_translate_stencil_op(ctx->Stencil.ZFailFunc[0]); 59 intel_translate_stencil_op(ctx->Stencil.ZPassFunc[0]); 60 ds->ds1.stencil_write_mask = ctx->Stencil.WriteMask[0]; 61 ds->ds1.stencil_test_mask = ctx->Stencil.ValueMask[0]; 63 if (ctx->Stencil._TestTwoSide) { 66 intel_translate_compare_func(ctx->Stencil.Function[back]) [all...] |
brw_cc.c | 107 if (ctx->Stencil._Enabled) { 108 const unsigned back = ctx->Stencil._BackFace; 112 intel_translate_compare_func(ctx->Stencil.Function[0]); 114 intel_translate_stencil_op(ctx->Stencil.FailFunc[0]); 116 intel_translate_stencil_op(ctx->Stencil.ZFailFunc[0]); 118 intel_translate_stencil_op(ctx->Stencil.ZPassFunc[0]); 119 cc->cc1.stencil_ref = ctx->Stencil.Ref[0]; 120 cc->cc1.stencil_write_mask = ctx->Stencil.WriteMask[0]; 121 cc->cc1.stencil_test_mask = ctx->Stencil.ValueMask[0]; 123 if (ctx->Stencil._TestTwoSide) [all...] |
gen7_misc_state.c | 56 * Since the HiZ, depth, and stencil buffers all use the same "depth 95 /* Stencil buffer uses 64x64 tiles. */ 100 /* Gen7 doesn't support packed depth/stencil */ 114 /* _NEW_STENCIL: enable stencil buffer writes */ 115 dw1 |= ((ctx->Stencil.WriteMask != 0) << 27); 195 ((stencil_mt != NULL && ctx->Stencil.WriteMask != 0) << 27) | 240 /* Note: We can't compute the stencil offset using 241 * intel_region_get_aligned_offset(), because the stencil region claims 250 /* The stencil buffer has quirky pitch requirements. From the Graphics 251 * BSpec: vol2a.11 3D Pipeline Windower > Early Depth/Stencil Processin [all...] |
/external/mesa3d/src/mesa/drivers/dri/i965/ |
gen6_depthstencil.c | 48 if (ctx->Stencil._Enabled) { 49 int back = ctx->Stencil._BackFace; 53 intel_translate_compare_func(ctx->Stencil.Function[0]); 55 intel_translate_stencil_op(ctx->Stencil.FailFunc[0]); 57 intel_translate_stencil_op(ctx->Stencil.ZFailFunc[0]); 59 intel_translate_stencil_op(ctx->Stencil.ZPassFunc[0]); 60 ds->ds1.stencil_write_mask = ctx->Stencil.WriteMask[0]; 61 ds->ds1.stencil_test_mask = ctx->Stencil.ValueMask[0]; 63 if (ctx->Stencil._TestTwoSide) { 66 intel_translate_compare_func(ctx->Stencil.Function[back]) [all...] |
brw_cc.c | 107 if (ctx->Stencil._Enabled) { 108 const unsigned back = ctx->Stencil._BackFace; 112 intel_translate_compare_func(ctx->Stencil.Function[0]); 114 intel_translate_stencil_op(ctx->Stencil.FailFunc[0]); 116 intel_translate_stencil_op(ctx->Stencil.ZFailFunc[0]); 118 intel_translate_stencil_op(ctx->Stencil.ZPassFunc[0]); 119 cc->cc1.stencil_ref = ctx->Stencil.Ref[0]; 120 cc->cc1.stencil_write_mask = ctx->Stencil.WriteMask[0]; 121 cc->cc1.stencil_test_mask = ctx->Stencil.ValueMask[0]; 123 if (ctx->Stencil._TestTwoSide) [all...] |
gen7_misc_state.c | 56 * Since the HiZ, depth, and stencil buffers all use the same "depth 95 /* Stencil buffer uses 64x64 tiles. */ 100 /* Gen7 doesn't support packed depth/stencil */ 114 /* _NEW_STENCIL: enable stencil buffer writes */ 115 dw1 |= ((ctx->Stencil.WriteMask != 0) << 27); 195 ((stencil_mt != NULL && ctx->Stencil.WriteMask != 0) << 27) | 240 /* Note: We can't compute the stencil offset using 241 * intel_region_get_aligned_offset(), because the stencil region claims 250 /* The stencil buffer has quirky pitch requirements. From the Graphics 251 * BSpec: vol2a.11 3D Pipeline Windower > Early Depth/Stencil Processin [all...] |
/frameworks/base/libs/hwui/ |
Stencil.cpp | 20 #include "Stencil.h" 35 Stencil::Stencil(): mState(kDisabled) { 38 uint32_t Stencil::getStencilSize() { 42 GLenum Stencil::getSmallestStencilFormat() { 54 void Stencil::clear() { 59 void Stencil::enableTest() { 70 void Stencil::enableWrite() { 81 void Stencil::enableDebugTest(GLint value, bool greater) { 89 void Stencil::enableDebugWrite() [all...] |
Stencil.h | 32 // Stencil buffer management 35 class ANDROID_API Stencil { 37 Stencil(); 40 * Returns the desired size for the stencil buffer. If the returned value 41 * is 0, then no stencil buffer is required. 46 * Returns the smallest stencil format accepted by render buffers. 51 * Clears the stencil buffer. 56 * Enables stencil test. When the stencil test is enabled the stencil [all...] |
/external/chromium_org/third_party/mesa/src/src/mesa/state_tracker/ |
st_atom_depth.c | 67 * Convert GLenum stencil op tokens to pipe tokens. 111 if (ctx->Stencil.Enabled && ctx->DrawBuffer->Visual.stencilBits > 0) { 112 dsa->stencil[0].enabled = 1; 113 dsa->stencil[0].func = st_compare_func_to_pipe(ctx->Stencil.Function[0]); 114 dsa->stencil[0].fail_op = gl_stencil_op_to_pipe(ctx->Stencil.FailFunc[0]); 115 dsa->stencil[0].zfail_op = gl_stencil_op_to_pipe(ctx->Stencil.ZFailFunc[0]); 116 dsa->stencil[0].zpass_op = gl_stencil_op_to_pipe(ctx->Stencil.ZPassFunc[0]) [all...] |
/external/mesa3d/src/mesa/state_tracker/ |
st_atom_depth.c | 67 * Convert GLenum stencil op tokens to pipe tokens. 111 if (ctx->Stencil.Enabled && ctx->DrawBuffer->Visual.stencilBits > 0) { 112 dsa->stencil[0].enabled = 1; 113 dsa->stencil[0].func = st_compare_func_to_pipe(ctx->Stencil.Function[0]); 114 dsa->stencil[0].fail_op = gl_stencil_op_to_pipe(ctx->Stencil.FailFunc[0]); 115 dsa->stencil[0].zfail_op = gl_stencil_op_to_pipe(ctx->Stencil.ZFailFunc[0]); 116 dsa->stencil[0].zpass_op = gl_stencil_op_to_pipe(ctx->Stencil.ZPassFunc[0]) [all...] |
/external/chromium_org/third_party/mesa/src/src/mesa/drivers/dri/nouveau/ |
nv04_state_raster.c | 172 /* Stencil test. */ 173 if (ctx->Stencil.WriteMask[0]) 176 if (ctx->Stencil.Enabled) 179 nv04->ctrl[1] |= get_comparison_op(ctx->Stencil.Function[0]) << 4 | 180 ctx->Stencil.Ref[0] << 8 | 181 ctx->Stencil.ValueMask[0] << 16 | 182 ctx->Stencil.WriteMask[0] << 24; 184 nv04->ctrl[2] |= get_stencil_op(ctx->Stencil.ZPassFunc[0]) << 8 | 185 get_stencil_op(ctx->Stencil.ZFailFunc[0]) << 4 | 186 get_stencil_op(ctx->Stencil.FailFunc[0]) [all...] |
nv10_state_raster.c | 144 PUSH_DATAb(push, ctx->Stencil.Enabled); 147 PUSH_DATA (push, nvgl_comparison_op(ctx->Stencil.Function[0])); 148 PUSH_DATA (push, ctx->Stencil.Ref[0]); 149 PUSH_DATA (push, ctx->Stencil.ValueMask[0]); 158 PUSH_DATA (push, ctx->Stencil.WriteMask[0]); 167 PUSH_DATA (push, nvgl_stencil_op(ctx->Stencil.FailFunc[0])); 168 PUSH_DATA (push, nvgl_stencil_op(ctx->Stencil.ZFailFunc[0])); 169 PUSH_DATA (push, nvgl_stencil_op(ctx->Stencil.ZPassFunc[0]));
|
nouveau_driver.c | 131 ctx->Stencil.WriteMask[0] : 0)); 134 ctx->Stencil.Clear);
|
/external/mesa3d/src/mesa/drivers/dri/nouveau/ |
nv04_state_raster.c | 172 /* Stencil test. */ 173 if (ctx->Stencil.WriteMask[0]) 176 if (ctx->Stencil.Enabled) 179 nv04->ctrl[1] |= get_comparison_op(ctx->Stencil.Function[0]) << 4 | 180 ctx->Stencil.Ref[0] << 8 | 181 ctx->Stencil.ValueMask[0] << 16 | 182 ctx->Stencil.WriteMask[0] << 24; 184 nv04->ctrl[2] |= get_stencil_op(ctx->Stencil.ZPassFunc[0]) << 8 | 185 get_stencil_op(ctx->Stencil.ZFailFunc[0]) << 4 | 186 get_stencil_op(ctx->Stencil.FailFunc[0]) [all...] |
nv10_state_raster.c | 144 PUSH_DATAb(push, ctx->Stencil.Enabled); 147 PUSH_DATA (push, nvgl_comparison_op(ctx->Stencil.Function[0])); 148 PUSH_DATA (push, ctx->Stencil.Ref[0]); 149 PUSH_DATA (push, ctx->Stencil.ValueMask[0]); 158 PUSH_DATA (push, ctx->Stencil.WriteMask[0]); 167 PUSH_DATA (push, nvgl_stencil_op(ctx->Stencil.FailFunc[0])); 168 PUSH_DATA (push, nvgl_stencil_op(ctx->Stencil.ZFailFunc[0])); 169 PUSH_DATA (push, nvgl_stencil_op(ctx->Stencil.ZPassFunc[0]));
|
/external/chromium_org/third_party/mesa/src/src/mesa/drivers/dri/i915/ |
i915_state.c | 61 /* The 915 considers CW to be "front" for two-sided stencil, so choose 66 front_ref = ctx->Stencil.Ref[0]; 67 front_mask = ctx->Stencil.ValueMask[0]; 68 front_writemask = ctx->Stencil.WriteMask[0]; 69 front_func = ctx->Stencil.Function[0]; 70 front_fail = ctx->Stencil.FailFunc[0]; 71 front_pass_z_fail = ctx->Stencil.ZFailFunc[0]; 72 front_pass_z_pass = ctx->Stencil.ZPassFunc[0]; 73 back_ref = ctx->Stencil.Ref[ctx->Stencil._BackFace] [all...] |
/external/mesa3d/src/mesa/drivers/dri/i915/ |
i915_state.c | 61 /* The 915 considers CW to be "front" for two-sided stencil, so choose 66 front_ref = ctx->Stencil.Ref[0]; 67 front_mask = ctx->Stencil.ValueMask[0]; 68 front_writemask = ctx->Stencil.WriteMask[0]; 69 front_func = ctx->Stencil.Function[0]; 70 front_fail = ctx->Stencil.FailFunc[0]; 71 front_pass_z_fail = ctx->Stencil.ZFailFunc[0]; 72 front_pass_z_pass = ctx->Stencil.ZPassFunc[0]; 73 back_ref = ctx->Stencil.Ref[ctx->Stencil._BackFace] [all...] |
/external/chromium_org/third_party/mesa/src/src/mesa/drivers/common/ |
driverfuncs.c | 271 ctx->Driver.Enable(ctx, GL_STENCIL_TEST, ctx->Stencil._Enabled); 302 ctx->Stencil.Function[0], 303 ctx->Stencil.Ref[0], 304 ctx->Stencil.ValueMask[0]); 306 ctx->Stencil.Function[1], 307 ctx->Stencil.Ref[1], 308 ctx->Stencil.ValueMask[1]); 309 ctx->Driver.StencilMaskSeparate(ctx, GL_FRONT, ctx->Stencil.WriteMask[0]); 310 ctx->Driver.StencilMaskSeparate(ctx, GL_BACK, ctx->Stencil.WriteMask[1]); 312 ctx->Stencil.FailFunc[0] [all...] |
/external/mesa3d/src/mesa/drivers/common/ |
driverfuncs.c | 271 ctx->Driver.Enable(ctx, GL_STENCIL_TEST, ctx->Stencil._Enabled); 302 ctx->Stencil.Function[0], 303 ctx->Stencil.Ref[0], 304 ctx->Stencil.ValueMask[0]); 306 ctx->Stencil.Function[1], 307 ctx->Stencil.Ref[1], 308 ctx->Stencil.ValueMask[1]); 309 ctx->Driver.StencilMaskSeparate(ctx, GL_FRONT, ctx->Stencil.WriteMask[0]); 310 ctx->Driver.StencilMaskSeparate(ctx, GL_BACK, ctx->Stencil.WriteMask[1]); 312 ctx->Stencil.FailFunc[0] [all...] |
/external/chromium_org/third_party/mesa/src/src/mesa/swrast/ |
s_stencil.c | 39 /* Stencil Logic: 41 IF stencil test fails THEN 42 Apply fail-op to stencil value 46 Apply zfail-op to stencil value 49 Apply zpass-op to stencil value 57 * Compute/return the offset of the stencil value in a pixel. 58 * For example, if the format is Z24+S8, the position of the stencil bits 83 /** Clamp the stencil value to [0, 255] */ 100 GLubyte s = stencil[j]; \ 102 stencil[j] = (GLubyte) (NEW_VAL); [all...] |
/external/mesa3d/src/mesa/swrast/ |
s_stencil.c | 39 /* Stencil Logic: 41 IF stencil test fails THEN 42 Apply fail-op to stencil value 46 Apply zfail-op to stencil value 49 Apply zpass-op to stencil value 57 * Compute/return the offset of the stencil value in a pixel. 58 * For example, if the format is Z24+S8, the position of the stencil bits 83 /** Clamp the stencil value to [0, 255] */ 100 GLubyte s = stencil[j]; \ 102 stencil[j] = (GLubyte) (NEW_VAL); [all...] |