Move parseFontFaceDescriptor to CSSPropertyParser.cpp
[chromium-blink-merge.git] / third_party / WebKit / Source / core / paint / SVGMaskPainter.h
blobf0c386d6a5234431b0055042395405f1eae44013
1 // Copyright 2015 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #ifndef SVGMaskPainter_h
6 #define SVGMaskPainter_h
8 #include "platform/geometry/FloatRect.h"
9 #include "wtf/Allocator.h"
11 namespace blink {
13 class GraphicsContext;
14 class LayoutObject;
15 class LayoutSVGResourceMasker;
17 class SVGMaskPainter {
18 STACK_ALLOCATED();
19 public:
20 SVGMaskPainter(LayoutSVGResourceMasker& mask) : m_mask(mask) { }
22 bool prepareEffect(const LayoutObject&, GraphicsContext*);
23 void finishEffect(const LayoutObject&, GraphicsContext*);
25 private:
26 void drawMaskForLayoutObject(GraphicsContext*, const LayoutObject&, const FloatRect& targetBoundingBox, const FloatRect& targetPaintInvalidationRect);
28 LayoutSVGResourceMasker& m_mask;
31 } // namespace blink
33 #endif // SVGMaskPainter_h