LCOV - code coverage report
Current view: directory - gfx/skia/include/core - SkComposeShader.h (source / functions) Found Hit Coverage
Test: app.info Lines: 3 0 0.0 %
Date: 2012-06-02 Functions: 2 0 0.0 %

       1                 : 
       2                 : /*
       3                 :  * Copyright 2006 The Android Open Source Project
       4                 :  *
       5                 :  * Use of this source code is governed by a BSD-style license that can be
       6                 :  * found in the LICENSE file.
       7                 :  */
       8                 : 
       9                 : 
      10                 : #ifndef SkComposeShader_DEFINED
      11                 : #define SkComposeShader_DEFINED
      12                 : 
      13                 : #include "SkShader.h"
      14                 : 
      15                 : class SkXfermode;
      16                 : 
      17                 : ///////////////////////////////////////////////////////////////////////////////////////////
      18                 : 
      19                 : /** \class SkComposeShader
      20                 :     This subclass of shader returns the coposition of two other shaders, combined by
      21                 :     a xfermode.
      22                 : */
      23                 : class SK_API SkComposeShader : public SkShader {
      24                 : public:
      25                 :     /** Create a new compose shader, given shaders A, B, and a combining xfermode mode.
      26                 :         When the xfermode is called, it will be given the result from shader A as its
      27                 :         "dst", and the result of from shader B as its "src".
      28                 :         mode->xfer32(sA_result, sB_result, ...)
      29                 :         @param shaderA  The colors from this shader are seen as the "dst" by the xfermode
      30                 :         @param shaderB  The colors from this shader are seen as the "src" by the xfermode
      31                 :         @param mode     The xfermode that combines the colors from the two shaders. If mode
      32                 :                         is null, then SRC_OVER is assumed.
      33                 :     */
      34                 :     SkComposeShader(SkShader* sA, SkShader* sB, SkXfermode* mode = NULL);
      35                 :     virtual ~SkComposeShader();
      36                 :     
      37                 :     // override
      38                 :     virtual bool setContext(const SkBitmap& device, const SkPaint& paint, const SkMatrix& matrix);
      39                 :     virtual void shadeSpan(int x, int y, SkPMColor result[], int count);
      40                 :     virtual void beginSession();
      41                 :     virtual void endSession();
      42                 : 
      43                 : protected:
      44                 :     SkComposeShader(SkFlattenableReadBuffer& );
      45                 :     virtual void flatten(SkFlattenableWriteBuffer& );
      46               0 :     virtual Factory getFactory() { return CreateProc; }
      47                 : 
      48                 : private:
      49               0 :     static SkFlattenable* CreateProc(SkFlattenableReadBuffer& buffer) { 
      50               0 :         return SkNEW_ARGS(SkComposeShader, (buffer)); }
      51                 : 
      52                 :     SkShader*   fShaderA;
      53                 :     SkShader*   fShaderB;
      54                 :     SkXfermode* fMode;
      55                 : 
      56                 :     typedef SkShader INHERITED;
      57                 : };
      58                 : 
      59                 : #endif

Generated by: LCOV version 1.7