8#ifndef GrSimpleMeshDrawOpHelperWithStencil_DEFINED
9#define GrSimpleMeshDrawOpHelperWithStencil_DEFINED
37 template <
typename Op,
typename... OpArgs>
41 context, std::move(
paint), std::forward<OpArgs>(opArgs)...);
54 geometryCoverage, geometryColor);
71 bool ignoreAAType =
false)
const;
73#if defined(GR_TEST_UTILS)
GrProcessorAnalysisCoverage
static SkPath clip(const SkPath &path, const SkHalfPlane &plane)
std::unique_ptr< GrOp > Owner
GrSimpleMeshDrawOpHelper::InputFlags InputFlags
GrProcessorSet::Analysis finalizeProcessors(const GrCaps &caps, const GrAppliedClip *clip, GrClampType clampType, GrProcessorAnalysisCoverage geometryCoverage, GrProcessorAnalysisColor *geometryColor)
GrDrawOp::FixedFunctionFlags fixedFunctionFlags() const
bool isCompatible(const GrSimpleMeshDrawOpHelperWithStencil &that, const GrCaps &, const SkRect &thisBounds, const SkRect &thatBounds, bool ignoreAAType=false) const
static GrOp::Owner FactoryHelper(GrRecordingContext *context, GrPaint &&paint, OpArgs... opArgs)
GrSimpleMeshDrawOpHelperWithStencil(GrProcessorSet *, GrAAType, const GrUserStencilSettings *, InputFlags=InputFlags::kNone)
const GrUserStencilSettings * stencilSettings() const
GrProgramInfo * createProgramInfoWithStencil(const GrCaps *, SkArenaAlloc *, const GrSurfaceProxyView &writeView, bool usesMSAASurface, GrAppliedClip &&, const GrDstProxyView &, GrGeometryProcessor *, GrPrimitiveType, GrXferBarrierFlags renderPassXferBarriers, GrLoadOp colorLoadOp)
GrSimpleMeshDrawOpHelper()=delete
GrProcessorSet detachProcessorSet()
void visitProxies(const GrVisitProxyFunc &func) const
void setAAType(GrAAType aaType)
static GrOp::Owner FactoryHelper(GrRecordingContext *, GrPaint &&, OpArgs &&...)
bool usesLocalCoords() const
GrPipeline::InputFlags pipelineFlags() const
bool compatibleWithCoverageAsAlpha() const
GrProcessorSet::Analysis finalizeProcessors(const GrCaps &caps, const GrAppliedClip *clip, GrClampType clampType, GrProcessorAnalysisCoverage geometryCoverage, GrProcessorAnalysisColor *geometryColor)
const GrPipeline * createPipeline(GrOpFlushState *flushState)