Lines Matching refs:ctxInfo

90 void GrGLCaps::init(const GrGLContextInfo& ctxInfo, const GrGLInterface* gli) {
93 if (!ctxInfo.isInitialized()) {
97 GrGLBinding binding = ctxInfo.binding();
98 GrGLVersion version = ctxInfo.version();
119 fRGBA8RenderbufferSupport = ctxInfo.hasExtension("GL_OES_rgb8_rgba8") ||
120 ctxInfo.hasExtension("GL_ARM_rgba8");
125 ctxInfo.hasExtension("GL_EXT_bgra");
127 if (ctxInfo.hasExtension("GL_APPLE_texture_format_BGRA8888")) {
129 } else if (ctxInfo.hasExtension("GL_EXT_texture_format_BGRA8888")) {
139 ctxInfo.hasExtension("GL_ARB_texture_swizzle");
150 fUnpackRowLengthSupport =ctxInfo.hasExtension("GL_EXT_unpack_subimage");
151 fUnpackFlipYSupport = ctxInfo.hasExtension("GL_CHROMIUM_flipy");
155 ctxInfo.hasExtension("GL_ANGLE_pack_reverse_row_order");
159 ctxInfo.hasExtension("GL_ANGLE_texture_usage");
164 ctxInfo.hasExtension("GL_ARB_texture_storage") ||
165 ctxInfo.hasExtension("GL_EXT_texture_storage");
170 if (ctxInfo.isMesa()) {
171 fTextureRedSupport = ctxInfo.hasExtension("GL_ARB_texture_rg");
174 ctxInfo.hasExtension("GL_ARB_texture_rg");
177 fTextureRedSupport = ctxInfo.hasExtension("GL_EXT_texture_rg");
181 ctxInfo.hasExtension("GL_ARB_imaging");
190 if (kIntel_GrGLVendor != ctxInfo.vendor()) {
191 fFragCoordsConventionSupport = ctxInfo.glslGeneration() >= k150_GrGLSLGeneration ||
192 ctxInfo.hasExtension("GL_ARB_fragment_coord_conventions");
200 (kARM_GrGLVendor == ctxInfo.vendor() || kImagination_GrGLVendor == ctxInfo.vendor())) {
210 fDiscardFBSupport = ctxInfo.hasExtension("GL_EXT_discard_framebuffer");
214 ctxInfo.hasExtension("GL_ARB_vertex_array_object");
216 fVertexArrayObjectSupport = ctxInfo.hasExtension("GL_OES_vertex_array_object");
220 if (ctxInfo.hasExtension("GL_EXT_shader_framebuffer_fetch")) {
222 } else if (ctxInfo.hasExtension("GL_NV_shader_framebuffer_fetch")) {
227 this->initFSAASupport(ctxInfo, gli);
228 this->initStencilFormats(ctxInfo);
250 fTwoSidedStencilSupport = (ctxInfo.version() >= GR_GL_VER(2,0));
252 fStencilWrapOpsSupport = (ctxInfo.version() >= GR_GL_VER(1,4)) ||
253 ctxInfo.hasExtension("GL_EXT_stencil_wrap");
264 fBufferLockSupport = ctxInfo.hasExtension("GL_OES_mapbuffer");
268 if (ctxInfo.version() >= GR_GL_VER(2,0) ||
269 ctxInfo.hasExtension("GL_ARB_texture_non_power_of_two")) {
276 fNPOTTextureTileSupport = ctxInfo.hasExtension("GL_OES_texture_npot");
288 ctxInfo.hasExtension("GL_NV_path_rendering");
297 fReuseScratchTextures = kARM_GrGLVendor != ctxInfo.vendor();
304 fDualSourceBlendingSupport = ctxInfo.version() >= GR_GL_VER(3,3) ||
305 ctxInfo.hasExtension("GL_ARB_blend_func_extended");
308 fGeometryShaderSupport = ctxInfo.version() >= GR_GL_VER(3,2) &&
309 ctxInfo.glslGeneration() >= k150_GrGLSLGeneration;
311 fShaderDerivativeSupport = ctxInfo.hasExtension("GL_OES_standard_derivatives");
364 void GrGLCaps::initFSAASupport(const GrGLContextInfo& ctxInfo, const GrGLInterface* gli) {
367 if (kDesktop_GrGLBinding != ctxInfo.binding()) {
368 if (ctxInfo.hasExtension("GL_CHROMIUM_framebuffer_multisample")) {
372 } else if (ctxInfo.hasExtension("GL_APPLE_framebuffer_multisample")) {
374 } else if (ctxInfo.hasExtension("GL_EXT_multisampled_render_to_texture")) {
376 } else if (ctxInfo.hasExtension("GL_IMG_multisampled_render_to_texture")) {
380 if ((ctxInfo.version() >= GR_GL_VER(3,0)) ||
381 ctxInfo.hasExtension("GL_ARB_framebuffer_object")) {
383 } else if (ctxInfo.hasExtension("GL_EXT_framebuffer_multisample") &&
384 ctxInfo.hasExtension("GL_EXT_framebuffer_blit")) {
391 if (ctxInfo.hasExtension("GL_NV_framebuffer_multisample_coverage")) {
437 void GrGLCaps::initStencilFormats(const GrGLContextInfo& ctxInfo) {
454 if (kDesktop_GrGLBinding == ctxInfo.binding()) {
456 ctxInfo.version() >= GR_GL_VER(3,0) ||
457 ctxInfo.hasExtension("GL_EXT_packed_depth_stencil") ||
458 ctxInfo.hasExtension("GL_ARB_framebuffer_object");
479 if (ctxInfo.hasExtension("GL_OES_packed_depth_stencil")) {
482 if (ctxInfo.hasExtension("GL_OES_stencil4")) {