180bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru
280bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru/*
380bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru * Copyright 2012 Google Inc.
480bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru *
580bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru * Use of this source code is governed by a BSD-style license that can be
680bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru * found in the LICENSE file.
780bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru */
880bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru
980bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru
1080bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru#include "GrStencilAndCoverPathRenderer.h"
1180bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru#include "GrAAHairLinePathRenderer.h"
1280bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru#include "GrAAConvexPathRenderer.h"
13d686ac77c2c485c4a3302eda9c1de597a6f8c568Derek Sollenberger#if GR_STROKE_PATH_RENDERING
14d686ac77c2c485c4a3302eda9c1de597a6f8c568Derek Sollenberger#include "../../experimental/StrokePathRenderer/GrStrokePathRenderer.h"
15d686ac77c2c485c4a3302eda9c1de597a6f8c568Derek Sollenberger#endif
16d686ac77c2c485c4a3302eda9c1de597a6f8c568Derek Sollenberger#if GR_ANDROID_PATH_RENDERING
17d686ac77c2c485c4a3302eda9c1de597a6f8c568Derek Sollenberger#include "../../experimental/AndroidPathRenderer/GrAndroidPathRenderer.h"
18d686ac77c2c485c4a3302eda9c1de597a6f8c568Derek Sollenberger#endif
1980bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru
20363e546ed626b6dbbc42f5db87b3594bc0b5944bDerek Sollenbergervoid GrPathRenderer::AddPathRenderers(GrContext* ctx, GrPathRendererChain* chain) {
21d686ac77c2c485c4a3302eda9c1de597a6f8c568Derek Sollenberger#if GR_STROKE_PATH_RENDERING
22d686ac77c2c485c4a3302eda9c1de597a6f8c568Derek Sollenberger    chain->addPathRenderer(SkNEW(GrStrokePathRenderer))->unref();
23d686ac77c2c485c4a3302eda9c1de597a6f8c568Derek Sollenberger#endif
24d686ac77c2c485c4a3302eda9c1de597a6f8c568Derek Sollenberger#if GR_ANDROID_PATH_RENDERING
25d686ac77c2c485c4a3302eda9c1de597a6f8c568Derek Sollenberger    chain->addPathRenderer(SkNEW(GrAndroidPathRenderer))->unref();
26d686ac77c2c485c4a3302eda9c1de597a6f8c568Derek Sollenberger#endif
2780bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru    if (GrPathRenderer* pr = GrStencilAndCoverPathRenderer::Create(ctx)) {
2880bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru        chain->addPathRenderer(pr)->unref();
2980bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru    }
30363e546ed626b6dbbc42f5db87b3594bc0b5944bDerek Sollenberger    if (GrPathRenderer* pr = GrAAHairLinePathRenderer::Create(ctx)) {
31363e546ed626b6dbbc42f5db87b3594bc0b5944bDerek Sollenberger        chain->addPathRenderer(pr)->unref();
3280bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru    }
33363e546ed626b6dbbc42f5db87b3594bc0b5944bDerek Sollenberger    chain->addPathRenderer(SkNEW(GrAAConvexPathRenderer))->unref();
3480bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru}
35