LCOV - code coverage report
Current view: top level - gfx/skia/skia/src/gpu/gl - GrGLPathRange.h (source / functions) Hit Total Coverage
Test: output.info Lines: 0 5 0.0 %
Date: 2017-07-14 16:53:18 Functions: 0 6 0.0 %
Legend: Lines: hit not hit

          Line data    Source code
       1             : /*
       2             :  * Copyright 2014 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             : #ifndef GrGLPathRange_DEFINED
       9             : #define GrGLPathRange_DEFINED
      10             : 
      11             : #include "../GrPathRange.h"
      12             : #include "GrStyle.h"
      13             : #include "gl/GrGLTypes.h"
      14             : 
      15             : class GrGLGpu;
      16             : 
      17             : /**
      18             :  * Currently this represents a range of GL_NV_path_rendering Path IDs. If we
      19             :  * support other GL path extensions then this would have to have a type enum
      20             :  * and/or be subclassed.
      21             :  */
      22             : 
      23           0 : class GrGLPathRange : public GrPathRange {
      24             : public:
      25             :     /**
      26             :      * Initialize a GL path range from a PathGenerator. This class will allocate
      27             :      * the GPU path objects and initialize them lazily.
      28             :      */
      29             :     GrGLPathRange(GrGLGpu*, PathGenerator*, const GrStyle&);
      30             : 
      31             :     /**
      32             :      * Initialize a GL path range from an existing range of pre-initialized GPU
      33             :      * path objects. This class assumes ownership of the GPU path objects and
      34             :      * will delete them when done.
      35             :      */
      36             :     GrGLPathRange(GrGLGpu*,
      37             :                   GrGLuint basePathID,
      38             :                   int numPaths,
      39             :                   size_t gpuMemorySize,
      40             :                   const GrStyle&);
      41             : 
      42           0 :     GrGLuint basePathID() const { return fBasePathID; }
      43             : 
      44           0 :     bool shouldStroke() const { return fShouldStroke; }
      45           0 :     bool shouldFill() const { return fShouldFill; }
      46             : 
      47             : protected:
      48             :     void onInitPath(int index, const SkPath&) const override;
      49             : 
      50             :     void onRelease() override;
      51             :     void onAbandon() override;
      52             : 
      53             : private:
      54             :     void init();
      55           0 :     size_t onGpuMemorySize() const override { return fGpuMemorySize; }
      56             : 
      57             :     const GrStyle fStyle;
      58             :     GrGLuint fBasePathID;
      59             :     mutable size_t fGpuMemorySize;
      60             :     bool fShouldStroke;
      61             :     bool fShouldFill;
      62             : 
      63             :     typedef GrPathRange INHERITED;
      64             : };
      65             : 
      66             : #endif

Generated by: LCOV version 1.13