0f10f7bf1f
This change is motivated by the desire to see the text information in the debugger when not in developer mode. It is structured so user's can disable it if the capability is not wanted. R=bsalomon@google.com Author: robertphillips@google.com Review URL: https://codereview.chromium.org/197763008 git-svn-id: http://skia.googlecode.com/svn/trunk@13795 2bbb7eff-a529-9590-31e7-b0007b416f81
47 lines
1.3 KiB
C++
47 lines
1.3 KiB
C++
/*
|
|
* Copyright 2013 Google Inc.
|
|
*
|
|
* Use of this source code is governed by a BSD-style license that can be
|
|
* found in the LICENSE file.
|
|
*/
|
|
|
|
#ifndef SkLerpXfermode_DEFINED
|
|
#define SkLerpXfermode_DEFINED
|
|
|
|
#include "SkXfermode.h"
|
|
|
|
class SK_API SkLerpXfermode : public SkXfermode {
|
|
public:
|
|
/**
|
|
* result = scale * src + (1 - scale) * dst
|
|
*
|
|
* When scale == 1, this is the same as kSrc_Mode
|
|
* When scale == 0, this is the same as kDst_Mode
|
|
*/
|
|
static SkXfermode* Create(SkScalar scale);
|
|
|
|
// overrides from SkXfermode
|
|
virtual void xfer32(SkPMColor dst[], const SkPMColor src[], int count,
|
|
const SkAlpha aa[]) const SK_OVERRIDE;
|
|
virtual void xfer16(uint16_t dst[], const SkPMColor src[], int count,
|
|
const SkAlpha aa[]) const SK_OVERRIDE;
|
|
virtual void xferA8(SkAlpha dst[], const SkPMColor src[], int count,
|
|
const SkAlpha aa[]) const SK_OVERRIDE;
|
|
|
|
SK_TO_STRING_OVERRIDE()
|
|
SK_DECLARE_PUBLIC_FLATTENABLE_DESERIALIZATION_PROCS(SkLerpXfermode)
|
|
|
|
protected:
|
|
SkLerpXfermode(SkReadBuffer&);
|
|
virtual void flatten(SkWriteBuffer&) const SK_OVERRIDE;
|
|
|
|
private:
|
|
SkLerpXfermode(unsigned scale256);
|
|
|
|
unsigned fScale256; // 0..256
|
|
|
|
typedef SkXfermode INHERITED;
|
|
};
|
|
|
|
#endif
|