Wed, 31 Dec 2014 06:09:35 +0100
Cloned upstream origin tor-browser at tor-browser-31.3.0esr-4.5-1-build1
revision ID fc1c9ff7c1b2defdbc039f12214767608f46423f for hacking purpose.
2 /*
3 * Copyright 2013 Google Inc.
4 *
5 * Use of this source code is governed by a BSD-style license that can be
6 * found in the LICENSE file.
7 */
9 #ifndef GrTest_DEFINED
10 #define GrTest_DEFINED
12 #include "GrContext.h"
13 #include "GrDrawTarget.h"
15 /** Allows a test to temporarily draw to a GrDrawTarget owned by a GrContext. Tests that use this
16 should be careful not to mix using the GrDrawTarget directly and drawing via SkCanvas or
17 GrContext. In the future this object may provide some guards to prevent this. */
18 class GrTestTarget {
19 public:
20 GrTestTarget() {};
22 void init(GrContext*, GrDrawTarget*);
24 GrDrawTarget* target() { return fDrawTarget.get(); }
26 private:
27 SkTLazy<GrDrawTarget::AutoStateRestore> fASR;
28 SkTLazy<GrDrawTarget::AutoClipRestore> fACR;
29 SkTLazy<GrDrawTarget::AutoGeometryPush> fAGP;
31 SkAutoTUnref<GrDrawTarget> fDrawTarget;
32 SkAutoTUnref<GrContext> fContext;
33 };
35 #endif