LCOV - code coverage report
Current view: top level - gfx/skia/skia/src/core - SkAutoKern.h (source / functions) Hit Total Coverage
Test: output.info Lines: 1 5 20.0 %
Date: 2017-07-14 16:53:18 Functions: 1 2 50.0 %
Legend: Lines: hit not hit

          Line data    Source code
       1             : /*
       2             :  * Copyright 2006 The Android Open Source Project
       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             : 
       9             : #ifndef SkAutoKern_DEFINED
      10             : #define SkAutoKern_DEFINED
      11             : 
      12             : #include "SkGlyph.h"
      13             : 
      14             : #define SkAutoKern_Adjust(prev, next)    SkIntToScalar(((next) - (prev) + 32) >> 6)
      15             : 
      16             : /* this is a helper class to perform auto-kerning
      17             :  * the adjust() method returns a SkScalar corresponding
      18             :  * to a +1/0/-1 pixel adjustment
      19             :  */
      20             : 
      21             : class SkAutoKern {
      22             : public:
      23          21 :     SkAutoKern() : fPrevRsbDelta(0) {}
      24             : 
      25           0 :     SkScalar  adjust(const SkGlyph&  glyph)
      26             :     {
      27             : //        if (SkAbs32(glyph.fLsbDelta) > 47 || SkAbs32(glyph.fRsbDelta) > 47)
      28             : //            printf("------- %d> L %d R %d\n", glyph.f_GlyphID, glyph.fLsbDelta, glyph.fRsbDelta);
      29             : 
      30             : #if 0
      31             :         int  distort = fPrevRsbDelta - glyph.fLsbDelta;
      32             : 
      33             :         fPrevRsbDelta = glyph.fRsbDelta;
      34             : 
      35             :         if (distort >= 32)
      36             :             return -SK_Scalar1;
      37             :         else if (distort < -32)
      38             :             return +SK_Scalar1;
      39             :         else
      40             :             return 0;
      41             : #else
      42           0 :         SkScalar adjust = SkAutoKern_Adjust(fPrevRsbDelta, glyph.fLsbDelta);
      43           0 :         fPrevRsbDelta = glyph.fRsbDelta;
      44           0 :         return adjust;
      45             : #endif
      46             :     }
      47             : private:
      48             :     int   fPrevRsbDelta;
      49             : };
      50             : 
      51             : #endif

Generated by: LCOV version 1.13