SK_SUPPORTED_DEPRECATED_FIXEDROUND around deprecated fixed[round,ceil,floor]
git-svn-id: http://skia.googlecode.com/svn/trunk@12903 2bbb7eff-a529-9590-31e7-b0007b416f81
This commit is contained in:
parent
4e4b09a44e
commit
9fb00413ec
@ -1,4 +1,3 @@
|
||||
|
||||
/*
|
||||
* Copyright 2006 The Android Open Source Project
|
||||
*
|
||||
@ -6,12 +5,13 @@
|
||||
* found in the LICENSE file.
|
||||
*/
|
||||
|
||||
|
||||
#ifndef SkFixed_DEFINED
|
||||
#define SkFixed_DEFINED
|
||||
|
||||
#include "SkTypes.h"
|
||||
|
||||
//#define SK_SUPPORTED_DEPRECATED_FIXEDROUND
|
||||
|
||||
/** \file SkFixed.h
|
||||
|
||||
Types and macros for 16.16 fixed point
|
||||
@ -77,10 +77,11 @@ typedef int32_t SkFixed;
|
||||
#define SkFixedCeilToFixed(x) (((x) + SK_Fixed1 - 1) & 0xFFFF0000)
|
||||
#define SkFixedFloorToFixed(x) ((x) & 0xFFFF0000)
|
||||
|
||||
// DEPRECATED
|
||||
#define SkFixedFloor(x) SkFixedFloorToInt(x)
|
||||
#define SkFixedCeil(x) SkFixedCeilToInt(x)
|
||||
#define SkFixedRound(x) SkFixedRoundToInt(x)
|
||||
#ifdef SK_SUPPORTED_DEPRECATED_FIXEDROUND
|
||||
# define SkFixedFloor(x) SkFixedFloorToInt(x)
|
||||
# define SkFixedCeil(x) SkFixedCeilToInt(x)
|
||||
# define SkFixedRound(x) SkFixedRoundToInt(x)
|
||||
#endif
|
||||
|
||||
#define SkFixedAbs(x) SkAbs32(x)
|
||||
#define SkFixedAve(a, b) (((a) + (b)) >> 1)
|
||||
|
@ -1496,8 +1496,8 @@ void SkDraw::drawText_asPaths(const char text[], size_t byteLength,
|
||||
static void D1G_NoBounder_RectClip(const SkDraw1Glyph& state,
|
||||
SkFixed fx, SkFixed fy,
|
||||
const SkGlyph& glyph) {
|
||||
int left = SkFixedFloor(fx);
|
||||
int top = SkFixedFloor(fy);
|
||||
int left = SkFixedFloorToInt(fx);
|
||||
int top = SkFixedFloorToInt(fy);
|
||||
SkASSERT(glyph.fWidth > 0 && glyph.fHeight > 0);
|
||||
SkASSERT(NULL == state.fBounder);
|
||||
SkASSERT((NULL == state.fClip && state.fAAClip) ||
|
||||
@ -1540,8 +1540,8 @@ static void D1G_NoBounder_RectClip(const SkDraw1Glyph& state,
|
||||
static void D1G_NoBounder_RgnClip(const SkDraw1Glyph& state,
|
||||
SkFixed fx, SkFixed fy,
|
||||
const SkGlyph& glyph) {
|
||||
int left = SkFixedFloor(fx);
|
||||
int top = SkFixedFloor(fy);
|
||||
int left = SkFixedFloorToInt(fx);
|
||||
int top = SkFixedFloorToInt(fy);
|
||||
SkASSERT(glyph.fWidth > 0 && glyph.fHeight > 0);
|
||||
SkASSERT(!state.fClip->isRect());
|
||||
SkASSERT(NULL == state.fBounder);
|
||||
@ -1577,8 +1577,8 @@ static void D1G_NoBounder_RgnClip(const SkDraw1Glyph& state,
|
||||
static void D1G_Bounder(const SkDraw1Glyph& state,
|
||||
SkFixed fx, SkFixed fy,
|
||||
const SkGlyph& glyph) {
|
||||
int left = SkFixedFloor(fx);
|
||||
int top = SkFixedFloor(fy);
|
||||
int left = SkFixedFloorToInt(fx);
|
||||
int top = SkFixedFloorToInt(fy);
|
||||
SkASSERT(glyph.fWidth > 0 && glyph.fHeight > 0);
|
||||
|
||||
SkMask mask;
|
||||
@ -1618,8 +1618,8 @@ static void D1G_Bounder(const SkDraw1Glyph& state,
|
||||
static void D1G_Bounder_AAClip(const SkDraw1Glyph& state,
|
||||
SkFixed fx, SkFixed fy,
|
||||
const SkGlyph& glyph) {
|
||||
int left = SkFixedFloor(fx);
|
||||
int top = SkFixedFloor(fy);
|
||||
int left = SkFixedFloorToInt(fx);
|
||||
int top = SkFixedFloorToInt(fy);
|
||||
SkIRect bounds;
|
||||
bounds.set(left, top, left + glyph.fWidth, top + glyph.fHeight);
|
||||
|
||||
|
@ -97,20 +97,20 @@ static inline void XRect_set(SkXRect* xr, const SkRect& src) {
|
||||
/** Round the SkXRect coordinates, and store the result in the SkIRect.
|
||||
*/
|
||||
static inline void XRect_round(const SkXRect& xr, SkIRect* dst) {
|
||||
dst->fLeft = SkFixedRound(xr.fLeft);
|
||||
dst->fTop = SkFixedRound(xr.fTop);
|
||||
dst->fRight = SkFixedRound(xr.fRight);
|
||||
dst->fBottom = SkFixedRound(xr.fBottom);
|
||||
dst->fLeft = SkFixedRoundToInt(xr.fLeft);
|
||||
dst->fTop = SkFixedRoundToInt(xr.fTop);
|
||||
dst->fRight = SkFixedRoundToInt(xr.fRight);
|
||||
dst->fBottom = SkFixedRoundToInt(xr.fBottom);
|
||||
}
|
||||
|
||||
/** Round the SkXRect coordinates out (i.e. use floor for left/top, and ceiling
|
||||
for right/bottom), and store the result in the SkIRect.
|
||||
*/
|
||||
static inline void XRect_roundOut(const SkXRect& xr, SkIRect* dst) {
|
||||
dst->fLeft = SkFixedFloor(xr.fLeft);
|
||||
dst->fTop = SkFixedFloor(xr.fTop);
|
||||
dst->fRight = SkFixedCeil(xr.fRight);
|
||||
dst->fBottom = SkFixedCeil(xr.fBottom);
|
||||
dst->fLeft = SkFixedFloorToInt(xr.fLeft);
|
||||
dst->fTop = SkFixedFloorToInt(xr.fTop);
|
||||
dst->fRight = SkFixedCeilToInt(xr.fRight);
|
||||
dst->fBottom = SkFixedCeilToInt(xr.fBottom);
|
||||
}
|
||||
|
||||
#endif
|
||||
|
@ -466,11 +466,11 @@ static void do_anti_hairline(SkFDot6 x0, SkFDot6 y0, SkFDot6 x1, SkFDot6 y1,
|
||||
// now test if our Y values are completely inside the clip
|
||||
int top, bottom;
|
||||
if (slope >= 0) { // T2B
|
||||
top = SkFixedFloor(fstart - SK_FixedHalf);
|
||||
bottom = SkFixedCeil(fstart + (istop - istart - 1) * slope + SK_FixedHalf);
|
||||
top = SkFixedFloorToInt(fstart - SK_FixedHalf);
|
||||
bottom = SkFixedCeilToInt(fstart + (istop - istart - 1) * slope + SK_FixedHalf);
|
||||
} else { // B2T
|
||||
bottom = SkFixedCeil(fstart + SK_FixedHalf);
|
||||
top = SkFixedFloor(fstart + (istop - istart - 1) * slope - SK_FixedHalf);
|
||||
bottom = SkFixedCeilToInt(fstart + SK_FixedHalf);
|
||||
top = SkFixedFloorToInt(fstart + (istop - istart - 1) * slope - SK_FixedHalf);
|
||||
}
|
||||
#ifdef OUTSET_BEFORE_CLIP_TEST
|
||||
top -= 1;
|
||||
@ -542,11 +542,11 @@ static void do_anti_hairline(SkFDot6 x0, SkFDot6 y0, SkFDot6 x1, SkFDot6 y1,
|
||||
// now test if our X values are completely inside the clip
|
||||
int left, right;
|
||||
if (slope >= 0) { // L2R
|
||||
left = SkFixedFloor(fstart - SK_FixedHalf);
|
||||
right = SkFixedCeil(fstart + (istop - istart - 1) * slope + SK_FixedHalf);
|
||||
left = SkFixedFloorToInt(fstart - SK_FixedHalf);
|
||||
right = SkFixedCeilToInt(fstart + (istop - istart - 1) * slope + SK_FixedHalf);
|
||||
} else { // R2L
|
||||
right = SkFixedCeil(fstart + SK_FixedHalf);
|
||||
left = SkFixedFloor(fstart + (istop - istart - 1) * slope - SK_FixedHalf);
|
||||
right = SkFixedCeilToInt(fstart + SK_FixedHalf);
|
||||
left = SkFixedFloorToInt(fstart + (istop - istart - 1) * slope - SK_FixedHalf);
|
||||
}
|
||||
#ifdef OUTSET_BEFORE_CLIP_TEST
|
||||
left -= 1;
|
||||
|
@ -162,7 +162,7 @@ char* SkStrAppendFixed(char string[], SkFixed x) {
|
||||
static const uint16_t gTens[] = { 1000, 100, 10, 1 };
|
||||
const uint16_t* tens = gTens;
|
||||
|
||||
x = SkFixedRound(frac * 10000);
|
||||
x = SkFixedRoundToInt(frac * 10000);
|
||||
SkASSERT(x <= 10000);
|
||||
if (x == 10000) {
|
||||
x -= 1;
|
||||
|
@ -107,7 +107,7 @@ void SkTableMaskFilter::MakeClipTable(uint8_t table[256], uint8_t min,
|
||||
SkFixed scale = (1 << 16) * 255 / (max - min);
|
||||
memset(table, 0, min + 1);
|
||||
for (int i = min + 1; i < max; i++) {
|
||||
int value = SkFixedRound(scale * (i - min));
|
||||
int value = SkFixedRoundToInt(scale * (i - min));
|
||||
SkASSERT(value <= 255);
|
||||
table[i] = value;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user