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 GrPipelineBuilder_DEFINED | 8 #ifndef GrPipelineBuilder_DEFINED |
9 #define GrPipelineBuilder_DEFINED | 9 #define GrPipelineBuilder_DEFINED |
10 | 10 |
(...skipping 90 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
101 } | 101 } |
102 | 102 |
103 /** | 103 /** |
104 * When this object is destroyed it will remove any color/coverage FPs from
the pipeline builder | 104 * When this object is destroyed it will remove any color/coverage FPs from
the pipeline builder |
105 * that were added after its constructor. | 105 * that were added after its constructor. |
106 * This class can transiently modify its "const" GrPipelineBuilder object bu
t will restore it | 106 * This class can transiently modify its "const" GrPipelineBuilder object bu
t will restore it |
107 * when done - so it is notionally "const" correct. | 107 * when done - so it is notionally "const" correct. |
108 */ | 108 */ |
109 class AutoRestoreFragmentProcessorState : public ::SkNoncopyable { | 109 class AutoRestoreFragmentProcessorState : public ::SkNoncopyable { |
110 public: | 110 public: |
111 AutoRestoreFragmentProcessorState() | 111 AutoRestoreFragmentProcessorState() |
112 : fPipelineBuilder(nullptr) | 112 : fPipelineBuilder(nullptr) |
113 , fColorEffectCnt(0) | 113 , fColorEffectCnt(0) |
114 , fCoverageEffectCnt(0) {} | 114 , fCoverageEffectCnt(0) {} |
115 | 115 |
116 AutoRestoreFragmentProcessorState(const GrPipelineBuilder& ds) | 116 AutoRestoreFragmentProcessorState(const GrPipelineBuilder& ds) |
117 : fPipelineBuilder(nullptr) | 117 : fPipelineBuilder(nullptr) |
118 , fColorEffectCnt(0) | 118 , fColorEffectCnt(0) |
119 , fCoverageEffectCnt(0) { | 119 , fCoverageEffectCnt(0) { |
120 this->set(&ds); | 120 this->set(&ds); |
121 } | 121 } |
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
162 fXPFactory.reset(GrDisableColorXPFactory::Create()); | 162 fXPFactory.reset(GrDisableColorXPFactory::Create()); |
163 } | 163 } |
164 | 164 |
165 const GrXPFactory* getXPFactory() const { | 165 const GrXPFactory* getXPFactory() const { |
166 return fXPFactory; | 166 return fXPFactory; |
167 } | 167 } |
168 | 168 |
169 /** | 169 /** |
170 * Checks whether the xp will need destination in a texture to correctly ble
nd. | 170 * Checks whether the xp will need destination in a texture to correctly ble
nd. |
171 */ | 171 */ |
172 bool willXPNeedDstTexture(const GrCaps& caps, | 172 bool willXPNeedDstTexture(const GrCaps& caps, |
173 const GrPipelineOptimizations& optimizations) cons
t; | 173 const GrPipelineOptimizations& optimizations) cons
t; |
174 | 174 |
175 /// @} | 175 /// @} |
176 | 176 |
177 | 177 |
178 /////////////////////////////////////////////////////////////////////////// | 178 /////////////////////////////////////////////////////////////////////////// |
179 /// @name Render Target | 179 /// @name Render Target |
180 //// | 180 //// |
181 | 181 |
182 /** | 182 /** |
(...skipping 113 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
296 return SkToBool(fFlags & kSnapVerticesToPixelCenters_Flag); } | 296 return SkToBool(fFlags & kSnapVerticesToPixelCenters_Flag); } |
297 bool getDisableOutputConversionToSRGB() const { | 297 bool getDisableOutputConversionToSRGB() const { |
298 return SkToBool(fFlags & kDisableOutputConversionToSRGB_Flag); } | 298 return SkToBool(fFlags & kDisableOutputConversionToSRGB_Flag); } |
299 | 299 |
300 /** | 300 /** |
301 * Enable render state settings. | 301 * Enable render state settings. |
302 * | 302 * |
303 * @param flags bitfield of Flags specifying the states to enable | 303 * @param flags bitfield of Flags specifying the states to enable |
304 */ | 304 */ |
305 void enableState(uint32_t flags) { fFlags |= flags; } | 305 void enableState(uint32_t flags) { fFlags |= flags; } |
306 | 306 |
307 /** | 307 /** |
308 * Disable render state settings. | 308 * Disable render state settings. |
309 * | 309 * |
310 * @param flags bitfield of Flags specifying the states to disable | 310 * @param flags bitfield of Flags specifying the states to disable |
311 */ | 311 */ |
312 void disableState(uint32_t flags) { fFlags &= ~(flags); } | 312 void disableState(uint32_t flags) { fFlags &= ~(flags); } |
313 | 313 |
314 /** | 314 /** |
315 * Enable or disable flags based on a boolean. | 315 * Enable or disable flags based on a boolean. |
316 * | 316 * |
(...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
378 mutable SkAutoTUnref<const GrXPFactory> fXPFactory; | 378 mutable SkAutoTUnref<const GrXPFactory> fXPFactory; |
379 FragmentProcessorArray fColorFragmentProcessors; | 379 FragmentProcessorArray fColorFragmentProcessors; |
380 FragmentProcessorArray fCoverageFragmentProcessors; | 380 FragmentProcessorArray fCoverageFragmentProcessors; |
381 GrClip fClip; | 381 GrClip fClip; |
382 | 382 |
383 friend class GrPipeline; | 383 friend class GrPipeline; |
384 friend class GrDrawTarget; | 384 friend class GrDrawTarget; |
385 }; | 385 }; |
386 | 386 |
387 #endif | 387 #endif |
OLD | NEW |