| Index: src/pathops/SkReduceOrder.h
 | 
| ===================================================================
 | 
| --- src/pathops/SkReduceOrder.h	(revision 0)
 | 
| +++ src/pathops/SkReduceOrder.h	(revision 0)
 | 
| @@ -0,0 +1,38 @@
 | 
| +/*
 | 
| + * Copyright 2012 Google Inc.
 | 
| + *
 | 
| + * Use of this source code is governed by a BSD-style license that can be
 | 
| + * found in the LICENSE file.
 | 
| + */
 | 
| +#ifndef SkReduceOrder_DEFINED
 | 
| +#define SkReduceOrder_DEFINED
 | 
| +
 | 
| +#include "SkPath.h"
 | 
| +#include "SkPathOpsCubic.h"
 | 
| +#include "SkPathOpsLine.h"
 | 
| +#include "SkPathOpsQuad.h"
 | 
| +#include "SkTDArray.h"
 | 
| +
 | 
| +union SkReduceOrder {
 | 
| +    enum Quadratics {
 | 
| +        kNo_Quadratics,
 | 
| +        kAllow_Quadratics
 | 
| +    };
 | 
| +    enum Style {
 | 
| +        kStroke_Style,
 | 
| +        kFill_Style
 | 
| +    };
 | 
| +
 | 
| +    int reduce(const SkDCubic& cubic, Quadratics, Style);
 | 
| +    int reduce(const SkDLine& line);
 | 
| +    int reduce(const SkDQuad& quad, Style);
 | 
| +
 | 
| +    static SkPath::Verb Cubic(const SkPoint pts[4], SkTDArray<SkPoint>* reducePts);
 | 
| +    static SkPath::Verb Quad(const SkPoint pts[3], SkTDArray<SkPoint>* reducePts);
 | 
| +
 | 
| +    SkDLine fLine;
 | 
| +    SkDQuad fQuad;
 | 
| +    SkDCubic fCubic;
 | 
| +};
 | 
| +
 | 
| +#endif
 | 
| 
 |