Chromium Code Reviews| Index: include/gpu/GrTypes.h |
| diff --git a/include/gpu/GrTypes.h b/include/gpu/GrTypes.h |
| index 3f02c62bfd07aab21c647c673beef0850a782c32..fc85956288dfaa79bde9f7966fa02bddd7ceda9c 100644 |
| --- a/include/gpu/GrTypes.h |
| +++ b/include/gpu/GrTypes.h |
| @@ -423,6 +423,32 @@ enum GrSurfaceOrigin { |
| }; |
| /** |
| + * Sample config clarifies the meaning of samples count. |
| + * In default kUnified_GrSampleConfig sample count refers to MSAA sample count. |
| + * If NV_framebuffer_mixed_samples is available and sample config is chosen to be |
| + * kStencil_GrSampleConfig, sample count refers to the stencil sample count only, |
| + * and the color sample count is assumed to be zero. |
| + */ |
| +enum GrSampleConfig { |
| + kUnified_GrSampleConfig, |
| + kStencil_GrSampleConfig, |
| +}; |
| + |
| +/** |
| + * Pipeline stage serves as a query parameter to render target's isMultisampled |
| + * and numSamples methods. It signifies whether the caller is interested in |
| + * multisampling in color buffer or stencil buffer specifically, both, or any of |
| + * the two. Used by the NV_framebuffer_mixed_samples implementation. |
| + */ |
|
Chris Dalton
2015/03/19 12:07:41
I think this enum belongs inside the GrRenderTarge
|
| +enum GrPipelineStage { |
| + kColorBuffer_GrPipelineStage, |
| + kStencilBuffer_GrPipelineStage, |
| + kEverywhere_GrPipelineStage = kColorBuffer_GrPipelineStage, |
| + kAnywhere_GrPipelineStage = kStencilBuffer_GrPipelineStage, |
| + kRaster_GrPipelineStage = kStencilBuffer_GrPipelineStage |
|
Chris Dalton
2015/03/19 12:07:41
We maybe don't have to include kRaster for now. So
|
| +}; |
| + |
| +/** |
| * Describes a surface to be created. |
| */ |
| struct GrSurfaceDesc { |
| @@ -549,6 +575,13 @@ struct GrBackendRenderTargetDesc { |
| */ |
| int fSampleCnt; |
| /** |
| + * If fSampleCnt is > 1, which buffers are multisampled (color and stencil, |
| + * or just stencil?). The default is both. Note that mixing multisampled |
| + * and aliased buffers is only possible if NV_framebuffer_mixed_samples is |
| + * available. |
| + */ |
| + GrSampleConfig fSampleConfig; |
| + /** |
| * Number of bits of stencil per-pixel. |
| */ |
| int fStencilBits; |