2 * Copyright 2014 Google Inc.
4 * Use of this source code is governed by a BSD-style license that can be
5 * found in the LICENSE file.
8 #ifndef CanvasStateHelpers_DEFINED
9 #define CanvasStateHelpers_DEFINED
13 #ifdef SK_SUPPORT_LEGACY_CLIPTOLAYERFLAG
19 * Helper function to perform drawing to an SkCanvas. Used by both
20 * test_complex_layers and complex_layers_draw_from_canvas_state.
22 void complex_layers_draw(SkCanvas* canvas, float left, float top,
23 float right, float bottom, int32_t spacer);
26 * Create an SkCanvas from state and draw to it. Return true on success.
28 * Used by test_complex_layers test in CanvasStateTest. Marked as extern
29 * so it can be called from a separate library.
31 extern "C" bool complex_layers_draw_from_canvas_state(SkCanvasState* state,
32 float left, float top, float right, float bottom, int32_t spacer);
35 * Helper function to perform drawing to an SkCanvas. Used both by test_complex_clips
36 * and complex_clips_draw_from_canvas_state.
38 void complex_clips_draw(SkCanvas* canvas, int32_t left, int32_t top,
39 int32_t right, int32_t bottom, int32_t clipOp, const SkRegion& localRegion);
42 * Create an SkCanvas from state and draw to it. Return true on success.
44 * Used by test_complex_clips test in CanvasStateTest. Marked as extern
45 * so it can be called from a separate library.
47 extern "C" bool complex_clips_draw_from_canvas_state(SkCanvasState* state,
48 int32_t left, int32_t top, int32_t right, int32_t bottom, int32_t clipOp,
49 int32_t regionRects, int32_t* rectCoords);
51 #endif // SK_SUPPORT_LEGACY_CLIPTOLAYERFLAG
52 #endif // CanvasStateHelpers_DEFINED