1cf2cfa174ca878c144e17e9fc60ca8e9070d7dededisonn@google.com/*
2cf2cfa174ca878c144e17e9fc60ca8e9070d7dededisonn@google.com * Copyright 2013 Google Inc.
3cf2cfa174ca878c144e17e9fc60ca8e9070d7dededisonn@google.com
4cf2cfa174ca878c144e17e9fc60ca8e9070d7dededisonn@google.com * Use of this source code is governed by a BSD-style license that can be
5cf2cfa174ca878c144e17e9fc60ca8e9070d7dededisonn@google.com * found in the LICENSE file.
6cf2cfa174ca878c144e17e9fc60ca8e9070d7dededisonn@google.com */
7cf2cfa174ca878c144e17e9fc60ca8e9070d7dededisonn@google.com
8cf2cfa174ca878c144e17e9fc60ca8e9070d7dededisonn@google.com#ifndef SkPdfType1ShadingDictionary_DEFINED
9cf2cfa174ca878c144e17e9fc60ca8e9070d7dededisonn@google.com#define SkPdfType1ShadingDictionary_DEFINED
108cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com
118cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com#include "SkPdfShadingDictionary_autogen.h"
128cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com
138cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com// Additional entries specific to a type 1 shading dictionary
148cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.comclass SkPdfType1ShadingDictionary : public SkPdfShadingDictionary {
158cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.compublic:
168cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.compublic:
178cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com   SkPdfType1ShadingDictionary* asType1ShadingDictionary() {return this;}
188cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com   const SkPdfType1ShadingDictionary* asType1ShadingDictionary() const {return this;}
198cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com
208cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.comprivate:
218cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com   SkPdfType2ShadingDictionary* asType2ShadingDictionary() {return (SkPdfType2ShadingDictionary*)this;}
228cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com   const SkPdfType2ShadingDictionary* asType2ShadingDictionary() const {return (const SkPdfType2ShadingDictionary*)this;}
238cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com
248cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com   SkPdfType3ShadingDictionary* asType3ShadingDictionary() {return (SkPdfType3ShadingDictionary*)this;}
258cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com   const SkPdfType3ShadingDictionary* asType3ShadingDictionary() const {return (const SkPdfType3ShadingDictionary*)this;}
268cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com
278cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com   SkPdfType4ShadingDictionary* asType4ShadingDictionary() {return (SkPdfType4ShadingDictionary*)this;}
288cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com   const SkPdfType4ShadingDictionary* asType4ShadingDictionary() const {return (const SkPdfType4ShadingDictionary*)this;}
298cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com
308cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com   SkPdfType5ShadingDictionary* asType5ShadingDictionary() {return (SkPdfType5ShadingDictionary*)this;}
318cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com   const SkPdfType5ShadingDictionary* asType5ShadingDictionary() const {return (const SkPdfType5ShadingDictionary*)this;}
328cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com
338cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com   SkPdfType6ShadingDictionary* asType6ShadingDictionary() {return (SkPdfType6ShadingDictionary*)this;}
348cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com   const SkPdfType6ShadingDictionary* asType6ShadingDictionary() const {return (const SkPdfType6ShadingDictionary*)this;}
358cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com
368cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.compublic:
378cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com   bool valid() const {return true;}
388cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com  SkPdfArray* Domain(SkPdfNativeDoc* doc);
398cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com  bool has_Domain() const;
408cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com  SkPdfArray* Matrix(SkPdfNativeDoc* doc);
418cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com  bool has_Matrix() const;
428cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com  SkPdfFunction Function(SkPdfNativeDoc* doc);
438cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com  bool has_Function() const;
448cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com};
458cee797901763ab0922eb9ef484cfdcbc94bee54edisonn@google.com
46cf2cfa174ca878c144e17e9fc60ca8e9070d7dededisonn@google.com#endif  // SkPdfType1ShadingDictionary_DEFINED
47