OLD | NEW |
1 /* | 1 /* |
2 * Copyright 2015 Google Inc. | 2 * Copyright 2015 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 #ifndef GrPipeline_DEFINED | 8 #ifndef GrPipeline_DEFINED |
9 #define GrPipeline_DEFINED | 9 #define GrPipeline_DEFINED |
10 | 10 |
(...skipping 142 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
153 const GrScissorState& getScissorState() const { return fScissorState; } | 153 const GrScissorState& getScissorState() const { return fScissorState; } |
154 | 154 |
155 bool isHWAntialiasState() const { return SkToBool(fFlags & kHWAA_Flag); } | 155 bool isHWAntialiasState() const { return SkToBool(fFlags & kHWAA_Flag); } |
156 bool snapVerticesToPixelCenters() const { return SkToBool(fFlags & kSnapVert
ices_Flag); } | 156 bool snapVerticesToPixelCenters() const { return SkToBool(fFlags & kSnapVert
ices_Flag); } |
157 bool getDisableOutputConversionToSRGB() const { | 157 bool getDisableOutputConversionToSRGB() const { |
158 return SkToBool(fFlags & kDisableOutputConversionToSRGB_Flag); | 158 return SkToBool(fFlags & kDisableOutputConversionToSRGB_Flag); |
159 } | 159 } |
160 bool getAllowSRGBInputs() const { | 160 bool getAllowSRGBInputs() const { |
161 return SkToBool(fFlags & kAllowSRGBInputs_Flag); | 161 return SkToBool(fFlags & kAllowSRGBInputs_Flag); |
162 } | 162 } |
| 163 bool usesDistanceVectorField() const { |
| 164 return SkToBool(fFlags & kUsesDistanceVectorField_Flag); |
| 165 } |
163 bool hasStencilClip() const { | 166 bool hasStencilClip() const { |
164 return SkToBool(fFlags & kHasStencilClip_Flag); | 167 return SkToBool(fFlags & kHasStencilClip_Flag); |
165 } | 168 } |
166 | 169 |
167 GrXferBarrierType xferBarrierType(const GrCaps& caps) const { | 170 GrXferBarrierType xferBarrierType(const GrCaps& caps) const { |
168 return this->getXferProcessor().xferBarrierType(fRenderTarget.get(), cap
s); | 171 return this->getXferProcessor().xferBarrierType(fRenderTarget.get(), cap
s); |
169 } | 172 } |
170 | 173 |
171 /** | 174 /** |
172 * Gets whether the target is drawing clockwise, counterclockwise, | 175 * Gets whether the target is drawing clockwise, counterclockwise, |
(...skipping 26 matching lines...) Expand all Loading... |
199 * blend coeffs will represent those used by backend API. | 202 * blend coeffs will represent those used by backend API. |
200 */ | 203 */ |
201 void setOutputStateInfo(const GrPipelineBuilder& ds, GrXferProcessor::OptFla
gs, | 204 void setOutputStateInfo(const GrPipelineBuilder& ds, GrXferProcessor::OptFla
gs, |
202 const GrCaps&); | 205 const GrCaps&); |
203 | 206 |
204 enum Flags { | 207 enum Flags { |
205 kHWAA_Flag = 0x1, | 208 kHWAA_Flag = 0x1, |
206 kSnapVertices_Flag = 0x2, | 209 kSnapVertices_Flag = 0x2, |
207 kDisableOutputConversionToSRGB_Flag = 0x4, | 210 kDisableOutputConversionToSRGB_Flag = 0x4, |
208 kAllowSRGBInputs_Flag = 0x8, | 211 kAllowSRGBInputs_Flag = 0x8, |
209 kHasStencilClip_Flag = 0x10 | 212 kUsesDistanceVectorField_Flag = 0x10, |
| 213 kHasStencilClip_Flag = 0x20, |
210 }; | 214 }; |
211 | 215 |
212 typedef GrPendingIOResource<GrRenderTarget, kWrite_GrIOType> RenderTarget; | 216 typedef GrPendingIOResource<GrRenderTarget, kWrite_GrIOType> RenderTarget; |
213 typedef GrPendingProgramElement<const GrFragmentProcessor> PendingFragmentPr
ocessor; | 217 typedef GrPendingProgramElement<const GrFragmentProcessor> PendingFragmentPr
ocessor; |
214 typedef SkAutoSTArray<8, PendingFragmentProcessor> FragmentProcessorArray; | 218 typedef SkAutoSTArray<8, PendingFragmentProcessor> FragmentProcessorArray; |
215 typedef GrPendingProgramElement<const GrXferProcessor> ProgramXferProcessor; | 219 typedef GrPendingProgramElement<const GrXferProcessor> ProgramXferProcessor; |
216 RenderTarget fRenderTarget; | 220 RenderTarget fRenderTarget; |
217 GrScissorState fScissorState; | 221 GrScissorState fScissorState; |
218 GrStencilSettings fStencilSettings; | 222 GrStencilSettings fStencilSettings; |
219 GrDrawFace fDrawFace; | 223 GrDrawFace fDrawFace; |
220 uint32_t fFlags; | 224 uint32_t fFlags; |
221 ProgramXferProcessor fXferProcessor; | 225 ProgramXferProcessor fXferProcessor; |
222 FragmentProcessorArray fFragmentProcessors; | 226 FragmentProcessorArray fFragmentProcessors; |
223 bool fIgnoresCoverage; | 227 bool fIgnoresCoverage; |
224 | 228 |
225 // This value is also the index in fFragmentProcessors where coverage proces
sors begin. | 229 // This value is also the index in fFragmentProcessors where coverage proces
sors begin. |
226 int fNumColorProcessors; | 230 int fNumColorProcessors; |
227 | 231 |
228 typedef SkRefCnt INHERITED; | 232 typedef SkRefCnt INHERITED; |
229 }; | 233 }; |
230 | 234 |
231 #endif | 235 #endif |
OLD | NEW |