Home | History | Annotate | Download | only in tests
      1 /*
      2  * Copyright 2017 Google Inc.
      3  *
      4  * Use of this source code is governed by a BSD-style license that can be
      5  * found in the LICENSE file.
      6  */
      7 
      8 #include "Test.h"
      9 
     10 #if SK_SUPPORT_GPU
     11 
     12 class GrSurfaceContext;
     13 class GrSurfaceProxy;
     14 
     15 // Ensure that reading back from 'srcContext' as RGBA 8888 matches 'expectedPixelValues
     16 void test_read_pixels(skiatest::Reporter*,
     17                       GrSurfaceContext* srcContext, uint32_t expectedPixelValues[],
     18                       const char* testName);
     19 
     20 // See if trying to write RGBA 8888 pixels to 'dstContext' matches matches the
     21 // expectation ('expectedToWork')
     22 void test_write_pixels(skiatest::Reporter*,
     23                        GrSurfaceContext* srcContext, bool expectedToWork, const char* testName);
     24 
     25 // Ensure that the pixels can be copied from 'proxy' to an RGBA 8888 destination (both
     26 // texture-backed and rendertarget-backed).
     27 void test_copy_from_surface(skiatest::Reporter*, GrContext*,
     28                             GrSurfaceProxy* proxy, uint32_t expectedPixelValues[],
     29                             bool onlyTestRTConfig, const char* testName);
     30 
     31 // Ensure that RGBA 8888 pixels can be copied into 'dstContext'
     32 void test_copy_to_surface(skiatest::Reporter*, GrProxyProvider*,
     33                           GrSurfaceContext* dstContext, const char* testName);
     34 #endif
     35