/* * Copyright 2010 Google Inc. * * Use of this source code is governed by a BSD-style license that can be * found in the LICENSE file. */ #ifndef GrClip_DEFINED #define GrClip_DEFINED #include "include/core/SkRRect.h" #include "include/core/SkRect.h" #include "include/core/SkScalar.h" #include "include/private/gpu/ganesh/GrTypesPriv.h" #include "src/gpu/ganesh/GrAppliedClip.h" class GrDrawOp; class GrRecordingContext; namespace skgpu { namespace ganesh { class SurfaceDrawContext; } } // namespace skgpu /** * GrClip is an abstract base class for applying a clip. It constructs a clip mask if necessary, and * fills out a GrAppliedClip instructing the caller on how to set up the draw state. */ class GrClip { … }; /** * GrHardClip never uses coverage FPs. It can only enforce the clip using the already-existing * stencil buffer contents and/or fixed-function state like scissor. Always aliased if MSAA is off. */ class GrHardClip : public GrClip { … }; #endif