1/*
2 * Copyright 2013 Google Inc.
3
4 * Use of this source code is governed by a BSD-style license that can be
5 * found in the LICENSE file.
6 */
7
8#ifndef SkPdfType2ShadingDictionary_DEFINED
9#define SkPdfType2ShadingDictionary_DEFINED
10
11#include "SkPdfShadingDictionary_autogen.h"
12
13// Additional entries specific to a type 2 shading dictionary
14class SkPdfType2ShadingDictionary : public SkPdfShadingDictionary {
15public:
16public:
17   SkPdfType2ShadingDictionary* asType2ShadingDictionary() {return this;}
18   const SkPdfType2ShadingDictionary* asType2ShadingDictionary() const {return this;}
19
20private:
21   SkPdfType1ShadingDictionary* asType1ShadingDictionary() {return (SkPdfType1ShadingDictionary*)this;}
22   const SkPdfType1ShadingDictionary* asType1ShadingDictionary() const {return (const SkPdfType1ShadingDictionary*)this;}
23
24   SkPdfType3ShadingDictionary* asType3ShadingDictionary() {return (SkPdfType3ShadingDictionary*)this;}
25   const SkPdfType3ShadingDictionary* asType3ShadingDictionary() const {return (const SkPdfType3ShadingDictionary*)this;}
26
27   SkPdfType4ShadingDictionary* asType4ShadingDictionary() {return (SkPdfType4ShadingDictionary*)this;}
28   const SkPdfType4ShadingDictionary* asType4ShadingDictionary() const {return (const SkPdfType4ShadingDictionary*)this;}
29
30   SkPdfType5ShadingDictionary* asType5ShadingDictionary() {return (SkPdfType5ShadingDictionary*)this;}
31   const SkPdfType5ShadingDictionary* asType5ShadingDictionary() const {return (const SkPdfType5ShadingDictionary*)this;}
32
33   SkPdfType6ShadingDictionary* asType6ShadingDictionary() {return (SkPdfType6ShadingDictionary*)this;}
34   const SkPdfType6ShadingDictionary* asType6ShadingDictionary() const {return (const SkPdfType6ShadingDictionary*)this;}
35
36public:
37   bool valid() const {return true;}
38  SkPdfArray* Coords(SkPdfNativeDoc* doc);
39  bool has_Coords() const;
40  SkPdfArray* Domain(SkPdfNativeDoc* doc);
41  bool has_Domain() const;
42  SkPdfFunction Function(SkPdfNativeDoc* doc);
43  bool has_Function() const;
44  SkPdfArray* Extend(SkPdfNativeDoc* doc);
45  bool has_Extend() const;
46};
47
48#endif  // SkPdfType2ShadingDictionary_DEFINED
49