Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(101)

Side by Side Diff: src/gpu/gl/GrGLCaps.h

Issue 1666803002: Add GL indirect drawing APIs (Closed) Base URL: https://skia.googlesource.com/skia.git@upload_rastermultisample
Patch Set: formatting Created 4 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « src/gpu/gl/GrGLAssembleInterface.cpp ('k') | src/gpu/gl/GrGLCaps.cpp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright 2012 Google Inc. 2 * Copyright 2012 Google Inc.
3 * 3 *
4 * Use of this source code is governed by a BSD-style license that can be 4 * Use of this source code is governed by a BSD-style license that can be
5 * found in the LICENSE file. 5 * found in the LICENSE file.
6 */ 6 */
7 7
8 8
9 #ifndef GrGLCaps_DEFINED 9 #ifndef GrGLCaps_DEFINED
10 #define GrGLCaps_DEFINED 10 #define GrGLCaps_DEFINED
(...skipping 265 matching lines...) Expand 10 before | Expand all | Expand 10 after
276 276
277 /// Is there support for GL_KHR_debug? 277 /// Is there support for GL_KHR_debug?
278 bool debugSupport() const { return fDebugSupport; } 278 bool debugSupport() const { return fDebugSupport; }
279 279
280 /// Is there support for ES2 compatability? 280 /// Is there support for ES2 compatability?
281 bool ES2CompatibilitySupport() const { return fES2CompatibilitySupport; } 281 bool ES2CompatibilitySupport() const { return fES2CompatibilitySupport; }
282 282
283 /// Can we call glDisable(GL_MULTISAMPLE)? 283 /// Can we call glDisable(GL_MULTISAMPLE)?
284 bool multisampleDisableSupport() const { return fMultisampleDisableSupport; } 284 bool multisampleDisableSupport() const { return fMultisampleDisableSupport; }
285 285
286 /// Is there support for glDraw*Indirect? Note that the baseInstance fields of indirect draw
287 /// commands cannot be used unless we have base instance support.
288 bool drawIndirectSupport() const { return fDrawIndirectSupport; }
289
290 /// Is there support for glMultiDraw*Indirect? Note that the baseInstance fi elds of indirect
291 /// draw commands cannot be used unless we have base instance support.
292 bool multiDrawIndirectSupport() const { return fMultiDrawIndirectSupport; }
293
294 /// Are the baseInstance fields supported in indirect draw commands?
295 bool baseInstanceSupport() const { return fBaseInstanceSupport; }
296
286 /// Use indices or vertices in CPU arrays rather than VBOs for dynamic conte nt. 297 /// Use indices or vertices in CPU arrays rather than VBOs for dynamic conte nt.
287 bool useNonVBOVertexAndIndexDynamicData() const { return fUseNonVBOVertexAnd IndexDynamicData; } 298 bool useNonVBOVertexAndIndexDynamicData() const { return fUseNonVBOVertexAnd IndexDynamicData; }
288 299
289 /// Does ReadPixels support reading readConfig pixels from a FBO that is ren derTargetConfig? 300 /// Does ReadPixels support reading readConfig pixels from a FBO that is ren derTargetConfig?
290 bool readPixelsSupported(GrPixelConfig renderTargetConfig, 301 bool readPixelsSupported(GrPixelConfig renderTargetConfig,
291 GrPixelConfig readConfig, 302 GrPixelConfig readConfig,
292 std::function<void (GrGLenum, GrGLint*)> getInteger v, 303 std::function<void (GrGLenum, GrGLint*)> getInteger v,
293 std::function<bool ()> bindRenderTarget) const; 304 std::function<bool ()> bindRenderTarget) const;
294 305
295 bool isCoreProfile() const { return fIsCoreProfile; } 306 bool isCoreProfile() const { return fIsCoreProfile; }
(...skipping 75 matching lines...) Expand 10 before | Expand all | Expand 10 after
371 bool fPackFlipYSupport : 1; 382 bool fPackFlipYSupport : 1;
372 bool fTextureUsageSupport : 1; 383 bool fTextureUsageSupport : 1;
373 bool fTexStorageSupport : 1; 384 bool fTexStorageSupport : 1;
374 bool fTextureRedSupport : 1; 385 bool fTextureRedSupport : 1;
375 bool fImagingSupport : 1; 386 bool fImagingSupport : 1;
376 bool fVertexArrayObjectSupport : 1; 387 bool fVertexArrayObjectSupport : 1;
377 bool fDirectStateAccessSupport : 1; 388 bool fDirectStateAccessSupport : 1;
378 bool fDebugSupport : 1; 389 bool fDebugSupport : 1;
379 bool fES2CompatibilitySupport : 1; 390 bool fES2CompatibilitySupport : 1;
380 bool fMultisampleDisableSupport : 1; 391 bool fMultisampleDisableSupport : 1;
392 bool fDrawIndirectSupport : 1;
393 bool fMultiDrawIndirectSupport : 1;
394 bool fBaseInstanceSupport : 1;
381 bool fUseNonVBOVertexAndIndexDynamicData : 1; 395 bool fUseNonVBOVertexAndIndexDynamicData : 1;
382 bool fIsCoreProfile : 1; 396 bool fIsCoreProfile : 1;
383 bool fBindFragDataLocationSupport : 1; 397 bool fBindFragDataLocationSupport : 1;
384 bool fSRGBWriteControl : 1; 398 bool fSRGBWriteControl : 1;
385 bool fRGBA8888PixelsOpsAreSlow : 1; 399 bool fRGBA8888PixelsOpsAreSlow : 1;
386 bool fPartialFBOReadIsSlow : 1; 400 bool fPartialFBOReadIsSlow : 1;
387 bool fBindUniformLocationSupport : 1; 401 bool fBindUniformLocationSupport : 1;
388 bool fExternalTextureSupport : 1; 402 bool fExternalTextureSupport : 1;
389 bool fRectangleTextureSupport : 1; 403 bool fRectangleTextureSupport : 1;
390 bool fTextureSwizzleSupport : 1; 404 bool fTextureSwizzleSupport : 1;
(...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after
456 470
457 GrSwizzle fSwizzle; 471 GrSwizzle fSwizzle;
458 }; 472 };
459 473
460 ConfigInfo fConfigTable[kGrPixelConfigCnt]; 474 ConfigInfo fConfigTable[kGrPixelConfigCnt];
461 475
462 typedef GrCaps INHERITED; 476 typedef GrCaps INHERITED;
463 }; 477 };
464 478
465 #endif 479 #endif
OLDNEW
« no previous file with comments | « src/gpu/gl/GrGLAssembleInterface.cpp ('k') | src/gpu/gl/GrGLCaps.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698