Upstream version 11.39.266.0
[platform/framework/web/crosswalk.git] / src / third_party / WebKit / Source / core / svg / SVGRemoteFontFaceSource.h
1 // Copyright 2014 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.
4
5 #ifndef SVGRemoteFontFaceSource_h
6 #define SVGRemoteFontFaceSource_h
7
8 #if ENABLE(SVG_FONTS)
9
10 #include "core/css/RemoteFontFaceSource.h"
11 #include "platform/heap/Handle.h"
12
13 namespace blink {
14
15 class SVGFontElement;
16
17 class SVGRemoteFontFaceSource : public RemoteFontFaceSource {
18 public:
19     SVGRemoteFontFaceSource(const String& uri, FontResource*, PassRefPtrWillBeRawPtr<FontLoader>);
20     ~SVGRemoteFontFaceSource();
21     virtual bool isSVGFontFaceSource() const OVERRIDE { return true; }
22     virtual bool ensureFontData() OVERRIDE;
23
24     virtual void trace(Visitor*) OVERRIDE;
25
26 private:
27     virtual PassRefPtr<SimpleFontData> createFontData(const FontDescription&) OVERRIDE;
28
29     String m_uri;
30     RefPtrWillBeMember<SVGFontElement> m_externalSVGFontElement;
31 };
32
33 } // namespace blink
34
35 #endif // ENABLE(SVG_FONTS)
36 #endif