Switch out random number generator for tests, benches, samples.

This change makes tests, benches and samples use the new SkMWCRandom PRNG. GMs will be saved for another time, as they'll require rebaselining.

R=reed@google.com, bsalomon@google.com

Author: jvanverth@google.com

Review URL: https://chromiumcodereview.appspot.com/23653018

git-svn-id: http://skia.googlecode.com/svn/trunk@11136 2bbb7eff-a529-9590-31e7-b0007b416f81
This commit is contained in:
commit-bot@chromium.org 2013-09-06 19:05:11 +00:00
parent 1e627276c5
commit 6485b0be74
45 changed files with 88 additions and 88 deletions

View File

@ -94,7 +94,7 @@ class NestedAAClipBench : public SkBenchmark {
SkString fName;
bool fDoAA;
SkRect fDrawRect;
SkRandom fRandom;
SkMWCRandom fRandom;
static const int kNumDraws = SkBENCHLOOP(2);
static const int kNestingDepth = 3;

View File

@ -37,7 +37,7 @@ protected:
paint.setAntiAlias(true);
SkRandom rand;
SkMWCRandom rand;
SkRect r = SkRect::MakeWH(40, 40);
SkAutoTUnref<SkImageFilter> bicubic(SkBicubicImageFilter::CreateMitchell(fScale));
paint.setImageFilter(bicubic);

View File

@ -137,7 +137,7 @@ protected:
virtual void onDraw(SkCanvas* canvas) {
SkIPoint dim = this->getSize();
SkRandom rand;
SkMWCRandom rand;
SkPaint paint(fPaint);
this->setupPaint(&paint);

View File

@ -86,7 +86,7 @@ protected:
virtual void onDraw(SkCanvas* canvas) SK_OVERRIDE {
SkRandom rand;
SkMWCRandom rand;
SkPaint paint;
this->setupPaint(&paint);

View File

@ -59,7 +59,7 @@ protected:
paint.setAntiAlias(true);
SkRandom rand;
SkMWCRandom rand;
for (int i = 0; i < SkBENCHLOOP(10); i++) {
SkRect r = SkRect::MakeWH(rand.nextUScalar1() * 400,
rand.nextUScalar1() * 400);

View File

@ -30,7 +30,7 @@ class ComputeChecksumBench : public SkBenchmark {
public:
ComputeChecksumBench(void* param, ChecksumType type) : INHERITED(param), fType(type) {
SkRandom rand;
SkMWCRandom rand;
for (int i = 0; i < U32COUNT; ++i) {
fData[i] = rand.nextU();
}

View File

@ -47,7 +47,7 @@ protected:
}
virtual void onDraw(SkCanvas*) {
SkRandom r;
SkMWCRandom r;
enum {
kMaxObjects = 4 * (1 << 10),
};
@ -103,7 +103,7 @@ protected:
}
virtual void onDraw(SkCanvas*) {
SkRandom r;
SkMWCRandom r;
enum {
kMaxObjects = 4 * (1 << 10),
};
@ -141,7 +141,7 @@ protected:
}
virtual void onDraw(SkCanvas*) {
SkRandom r;
SkMWCRandom r;
A* objects[M];
for (int i = 0; i < N; i++) {
uint32_t count = r.nextRangeU(0, M-1);

View File

@ -85,7 +85,7 @@ public:
name->append("line");
}
virtual void makePath(SkPath* path) SK_OVERRIDE {
SkRandom rand;
SkMWCRandom rand;
int size = SK_ARRAY_COUNT(points);
int hSize = size / 2;
for (int i = 0; i < kMaxPathSize; ++i) {
@ -117,7 +117,7 @@ public:
name->append("quad");
}
virtual void makePath(SkPath* path) SK_OVERRIDE {
SkRandom rand;
SkMWCRandom rand;
int size = SK_ARRAY_COUNT(points);
int hSize = size / 2;
for (int i = 0; i < kMaxPathSize; ++i) {
@ -149,8 +149,8 @@ public:
name->append("conic");
}
virtual void makePath(SkPath* path) SK_OVERRIDE {
SkRandom rand;
SkRandom randWeight;
SkMWCRandom rand;
SkMWCRandom randWeight;
int size = SK_ARRAY_COUNT(points);
int hSize = size / 2;
for (int i = 0; i < kMaxPathSize; ++i) {
@ -184,7 +184,7 @@ public:
name->append("cubic");
}
virtual void makePath(SkPath* path) SK_OVERRIDE {
SkRandom rand;
SkMWCRandom rand;
int size = SK_ARRAY_COUNT(points);
int hSize = size / 2;
for (int i = 0; i < kMaxPathSize; ++i) {

View File

@ -32,7 +32,7 @@ public:
fDoAA = doAA;
fName.printf("lines_%g_%s", width, doAA ? "AA" : "BW");
SkRandom rand;
SkMWCRandom rand;
for (int i = 0; i < PTS; ++i) {
fPts[i].set(rand.nextUScalar1() * 640, rand.nextUScalar1() * 480);
}

View File

@ -26,7 +26,7 @@ public:
MathBench(void* param, const char name[]) : INHERITED(param) {
fName.printf("math_%s", name);
SkRandom rand;
SkMWCRandom rand;
for (int i = 0; i < kBuffer; ++i) {
fSrc[i] = rand.nextSScalar1();
}
@ -254,7 +254,7 @@ class IsFiniteBench : public SkBenchmark {
public:
IsFiniteBench(void* param, int index) : INHERITED(param) {
SkRandom rand;
SkMWCRandom rand;
for (int i = 0; i < N; ++i) {
fData[i] = rand.nextSScalar1();
@ -322,7 +322,7 @@ class FloorBench : public SkBenchmark {
public:
FloorBench(void* param, bool fast) : INHERITED(param), fFast(fast) {
SkRandom rand;
SkMWCRandom rand;
for (int i = 0; i < ARRAY; ++i) {
fData[i] = rand.nextSScalar1();
@ -340,7 +340,7 @@ public:
protected:
virtual void onDraw(SkCanvas*) {
SkRandom rand;
SkMWCRandom rand;
float accum = 0;
const float* data = fData;
@ -384,7 +384,7 @@ public:
: INHERITED(param)
, fUsePortable(usePortable) {
SkRandom rand;
SkMWCRandom rand;
for (int i = 0; i < ARRAY; ++i) {
fData[i] = rand.nextU();
}
@ -444,7 +444,7 @@ public:
NormalizeBench(void* param)
: INHERITED(param) {
SkRandom rand;
SkMWCRandom rand;
for (int i = 0; i < ARRAY; ++i) {
fVec[i].set(rand.nextSScalar1(), rand.nextSScalar1());
}
@ -490,7 +490,7 @@ class FixedMathBench : public SkBenchmark {
public:
FixedMathBench(void* param) : INHERITED(param) {
SkRandom rand;
SkMWCRandom rand;
for (int i = 0; i < N; ++i) {
fData[i] = rand.nextSScalar1();
}

View File

@ -95,7 +95,7 @@ private:
// handling NaN values is a lot slower. Anyway, this guy is just meant to put
// reasonable values in our arrays.
template <typename T> void init9(T array[9]) {
SkRandom rand;
SkMWCRandom rand;
for (int i = 0; i < 9; i++) {
array[i] = rand.nextSScalar1();
}
@ -261,7 +261,7 @@ protected:
private:
SkMatrix fMatrix;
float fArray[9];
SkRandom fRnd;
SkMWCRandom fRnd;
typedef MatrixBench INHERITED;
};
@ -302,7 +302,7 @@ class ScaleTransMixedMatrixBench : public MatrixBench {
SkMatrix fMatrix;
SkPoint fSrc [16];
SkPoint fDst [16];
SkRandom fRandom;
SkMWCRandom fRandom;
typedef MatrixBench INHERITED;
};
@ -342,7 +342,7 @@ class ScaleTransDoubleMatrixBench : public MatrixBench {
double fMatrix [9];
SkPoint fSrc [16];
SkPoint fDst [16];
SkRandom fRandom;
SkMWCRandom fRandom;
typedef MatrixBench INHERITED;
};

View File

@ -39,7 +39,7 @@ protected:
SkPaint paint;
this->setupPaint(&paint);
paint.setAntiAlias(true);
SkRandom rand;
SkMWCRandom rand;
for (int i = 0; i < SkBENCHLOOP(3); i++) {
SkRect r = SkRect::MakeWH(rand.nextUScalar1() * 400,
rand.nextUScalar1() * 400);

View File

@ -59,7 +59,7 @@ protected:
paint.setAntiAlias(true);
SkRandom rand;
SkMWCRandom rand;
for (int i = 0; i < SkBENCHLOOP(3); i++) {
SkRect r = SkRect::MakeWH(rand.nextUScalar1() * 400,
rand.nextUScalar1() * 400);

View File

@ -183,7 +183,7 @@ public:
name->append("long_curved");
}
virtual void makePath(SkPath* path) SK_OVERRIDE {
SkRandom rand (12);
SkMWCRandom rand (12);
int i;
for (i = 0; i < 100; i++) {
path->quadTo(SkScalarMul(rand.nextUScalar1(), SkIntToScalar(640)),
@ -208,7 +208,7 @@ public:
name->append("long_line");
}
virtual void makePath(SkPath* path) SK_OVERRIDE {
SkRandom rand;
SkMWCRandom rand;
path->moveTo(rand.nextUScalar1() * 640, rand.nextUScalar1() * 480);
for (size_t i = 1; i < 100; i++) {
path->lineTo(rand.nextUScalar1() * 640, rand.nextUScalar1() * 480);
@ -316,7 +316,7 @@ private:
int fCurrPath;
int fCurrVerb;
int fCurrPoint;
SkRandom fRandom;
SkMWCRandom fRandom;
typedef SkBenchmark INHERITED;
};
@ -653,7 +653,7 @@ protected:
paint.setStyle(SkPaint::kStroke_Style);
}
SkRandom rand;
SkMWCRandom rand;
SkRect r;
@ -754,7 +754,7 @@ protected:
}
virtual void onDraw(SkCanvas* canvas) SK_OVERRIDE {
SkRandom rand;
SkMWCRandom rand;
SkRect r;
for (int i = 0; i < 5000; ++i) {
@ -834,7 +834,7 @@ private:
virtual void onPreDraw() SK_OVERRIDE {
fQueryRects.setCount(kQueryRectCnt);
SkRandom rand;
SkMWCRandom rand;
for (int i = 0; i < kQueryRectCnt; ++i) {
SkSize size;
SkPoint xy;
@ -931,7 +931,7 @@ private:
///////////////////////////////////////////////////////////////////////////////
static void rand_conic(SkConic* conic, SkRandom& rand) {
static void rand_conic(SkConic* conic, SkMWCRandom& rand) {
for (int i = 0; i < 3; ++i) {
conic->fPts[i].set(rand.nextUScalar1() * 100, rand.nextUScalar1() * 100);
}
@ -945,7 +945,7 @@ static void rand_conic(SkConic* conic, SkRandom& rand) {
class ConicBench : public SkBenchmark {
public:
ConicBench(void* param) : INHERITED(param) {
SkRandom rand;
SkMWCRandom rand;
for (int i = 0; i < CONICS; ++i) {
rand_conic(&fConics[i], rand);
}

View File

@ -14,7 +14,7 @@
#include "SkShader.h"
#include "SkString.h"
static int rand_pts(SkRandom& rand, SkPoint pts[4]) {
static int rand_pts(SkMWCRandom& rand, SkPoint pts[4]) {
int n = rand.nextU() & 3;
n += 1;
@ -37,7 +37,7 @@ public:
fName.printf("pathiter_%s", raw ? "raw" : "consume");
fRaw = raw;
SkRandom rand;
SkMWCRandom rand;
for (int i = 0; i < 1000; ++i) {
SkPoint pts[4];
int n = rand_pts(rand, pts);

View File

@ -143,7 +143,7 @@ public:
protected:
virtual float innerLoopScale() const SK_OVERRIDE { return 0.1f; }
virtual void recordCanvas(SkCanvas* canvas) {
SkRandom rand;
SkMWCRandom rand;
for (int i = 0; i < M; i++) {
SkPaint paint;
paint.setColor(rand.nextU());
@ -167,7 +167,7 @@ class RecurringPaintDictionaryRecordBench : public PictureRecordBench {
public:
RecurringPaintDictionaryRecordBench(void* param)
: INHERITED(param, "recurring_paint_dictionary") {
SkRandom rand;
SkMWCRandom rand;
for (int i = 0; i < ObjCount; i++) {
fPaint[i].setColor(rand.nextU());
}

View File

@ -27,7 +27,7 @@ public:
: INHERITED(param)
, fShift(shift)
, fStroke(stroke) {
SkRandom rand;
SkMWCRandom rand;
const SkScalar offset = SK_Scalar1/3;
for (int i = 0; i < N; i++) {
int x = rand.nextU() % W;
@ -246,7 +246,7 @@ protected:
gSizes[0] = this->getStrokeWidth();
sizes = 1;
}
SkRandom rand;
SkMWCRandom rand;
SkColor color = 0xFF000000;
U8CPU alpha = 0xFF;
SkPaint paint;

View File

@ -82,7 +82,7 @@ public:
N = SkBENCHLOOP(2000)
};
SkIRect randrect(SkRandom& rand) {
SkIRect randrect(SkMWCRandom& rand) {
int x = rand.nextU() % W;
int y = rand.nextU() % H;
int w = rand.nextU() % W;
@ -95,7 +95,7 @@ public:
fName.printf("region_%s_%d", name, count);
fLoopMul = mul;
SkRandom rand;
SkMWCRandom rand;
for (int i = 0; i < count; i++) {
fA.op(randrect(rand), SkRegion::kXOR_Op);
fB.op(randrect(rand), SkRegion::kXOR_Op);

View File

@ -29,7 +29,7 @@ public:
N = SkBENCHLOOP(20000)
};
SkIRect randrect(SkRandom& rand, int i) {
SkIRect randrect(SkMWCRandom& rand, int i) {
int w = rand.nextU() % W;
return SkIRect::MakeXYWH(0, i*H/COUNT, w, H/COUNT);
}
@ -38,7 +38,7 @@ public:
fProc = proc;
fName.printf("region_contains_%s", name);
SkRandom rand;
SkMWCRandom rand;
for (int i = 0; i < COUNT; i++) {
fA.op(randrect(rand, i), SkRegion::kXOR_Op);
}

View File

@ -56,7 +56,7 @@ int gScalarBench_NonStaticGlobal;
// handling NaN values is a lot slower. Anyway, this guy is just meant to put
// reasonable values in our arrays.
template <typename T> void init9(T array[9]) {
SkRandom rand;
SkMWCRandom rand;
for (int i = 0; i < 9; i++) {
array[i] = rand.nextSScalar1();
}
@ -102,7 +102,7 @@ private:
class IsFiniteScalarBench : public ScalarBench {
public:
IsFiniteScalarBench(void* param) : INHERITED(param, "isfinite") {
SkRandom rand;
SkMWCRandom rand;
for (size_t i = 0; i < ARRAY_N; ++i) {
fArray[i] = rand.nextSScalar1();
}
@ -141,7 +141,7 @@ class RectBoundsBench : public SkBenchmark {
public:
RectBoundsBench(void* param) : INHERITED(param) {
SkRandom rand;
SkMWCRandom rand;
for (int i = 0; i < PTS; ++i) {
fPts[i].fX = rand.nextSScalar1();
fPts[i].fY = rand.nextSScalar1();

View File

@ -59,7 +59,7 @@ protected:
virtual void onDraw(SkCanvas* canvas) {
const SkIPoint dim = this->getSize();
SkRandom rand;
SkMWCRandom rand;
SkPaint paint(fPaint);
this->setupPaint(&paint);

View File

@ -13,14 +13,14 @@
static const int N = 1000;
static void rand_proc(int array[], int count) {
SkRandom rand;
SkMWCRandom rand;
for (int i = 0; i < count; ++i) {
array[i] = rand.nextS();
}
}
static void randN_proc(int array[], int count) {
SkRandom rand;
SkMWCRandom rand;
int mod = N / 10;
for (int i = 0; i < count; ++i) {
array[i] = rand.nextU() % mod;

View File

@ -94,7 +94,7 @@ protected:
virtual void onDraw(SkCanvas* canvas) {
const SkIPoint dim = this->getSize();
SkRandom rand;
SkMWCRandom rand;
SkPaint paint(fPaint);
this->setupPaint(&paint);

View File

@ -68,7 +68,7 @@ public:
SkASSERT(PTS == pts - fPts);
SkASSERT(IDX == idx - fIdx);
SkRandom rand;
SkMWCRandom rand;
for (int i = 0; i < PTS; ++i) {
fColors[i] = rand.nextU() | (0xFF << 24);
}

View File

@ -43,7 +43,7 @@ protected:
SkBlurMaskFilter::kSolid_BlurStyle,
SkBlurMaskFilter::kOuter_BlurStyle,
};
SkRandom random;
SkMWCRandom random;
for (size_t i = 0; i < SK_ARRAY_COUNT(gStyles); ++i) {
SkMaskFilter* mf = SkBlurMaskFilter::Create(

View File

@ -2435,7 +2435,7 @@ template <typename T> void SkTBSort(T array[], int count) {
#include "SkRandom.h"
static void rand_rect(SkIRect* rect, SkRandom& rand) {
static void rand_rect(SkIRect* rect, SkMWCRandom& rand) {
int bits = 8;
int shift = 32 - bits;
rect->set(rand.nextU() >> shift, rand.nextU() >> shift,
@ -2499,7 +2499,7 @@ static void test() {
test_rects(gRecs[i].fRects, gRecs[i].fCount);
}
SkRandom rand;
SkMWCRandom rand;
for (i = 0; i < 10000; i++) {
SkRegion rgn0, rgn1;

View File

@ -17,7 +17,7 @@
#define H 200
static void show_text(SkCanvas* canvas, bool doAA) {
SkRandom rand;
SkMWCRandom rand;
SkPaint paint;
paint.setAntiAlias(doAA);
paint.setLCDRenderText(true);
@ -32,7 +32,7 @@ static void show_text(SkCanvas* canvas, bool doAA) {
}
static void show_fill(SkCanvas* canvas, bool doAA) {
SkRandom rand;
SkMWCRandom rand;
SkPaint paint;
paint.setAntiAlias(doAA);
@ -53,13 +53,13 @@ static void show_fill(SkCanvas* canvas, bool doAA) {
}
}
static SkScalar randRange(SkRandom& rand, SkScalar min, SkScalar max) {
static SkScalar randRange(SkMWCRandom& rand, SkScalar min, SkScalar max) {
SkASSERT(min <= max);
return min + SkScalarMul(rand.nextUScalar1(), max - min);
}
static void show_stroke(SkCanvas* canvas, bool doAA, SkScalar strokeWidth, int n) {
SkRandom rand;
SkMWCRandom rand;
SkPaint paint;
paint.setAntiAlias(doAA);
paint.setStyle(SkPaint::kStroke_Style);

View File

@ -96,7 +96,7 @@ FINISHED2:
return array;
}
static SkScalar nextScalarRange(SkRandom& rand, SkScalar min, SkScalar max) {
static SkScalar nextScalarRange(SkMWCRandom& rand, SkScalar min, SkScalar max) {
return min + SkScalarMul(rand.nextUScalar1(), max - min);
}
@ -105,7 +105,7 @@ public:
CullView() {
fClip.set(0, 0, SkIntToScalar(160), SkIntToScalar(160));
SkRandom rand;
SkMWCRandom rand;
for (int i = 0; i < 50; i++) {
SkScalar x = nextScalarRange(rand, -fClip.width()*1, fClip.width()*2);

View File

@ -73,7 +73,7 @@ protected:
100*SK_Scalar1,
titlePaint);
SkRandom rand;
SkMWCRandom rand;
SkRect rect = SkRect::MakeWH(125*SK_Scalar1, 100*SK_Scalar1);
int i = 0;
canvas->save();

View File

@ -16,7 +16,7 @@
static void call_measure() {
SkPaint paint;
uint16_t text[32];
SkRandom rand;
SkMWCRandom rand;
paint.setAntiAlias(true);
paint.setTextEncoding(SkPaint::kUTF16_TextEncoding);
@ -35,7 +35,7 @@ static void call_measure() {
static void call_draw(SkCanvas* canvas) {
SkPaint paint;
uint16_t text[32];
SkRandom rand;
SkMWCRandom rand;
paint.setAntiAlias(true);
paint.setTextEncoding(SkPaint::kUTF16_TextEncoding);

View File

@ -34,8 +34,8 @@ protected:
paint.setStrokeWidth(0);
canvas->save();
canvas->scale(1000 * SK_Scalar1, 1000 * SK_Scalar1);
SkRandom rand;
SkRandom randW;
SkMWCRandom rand;
SkMWCRandom randW;
SkPath curves;
SkPath hulls;
SkPath ctrlPts;

View File

@ -102,7 +102,7 @@ class PathEffectView : public SampleView {
SkPoint fClickPt;
public:
PathEffectView() {
SkRandom rand;
SkMWCRandom rand;
int steps = 20;
SkScalar dist = SkIntToScalar(400);
SkScalar x = SkIntToScalar(20);

View File

@ -165,7 +165,7 @@ protected:
// test that we can re-record a subpicture, and see the results
SkRandom rand(SampleCode::GetAnimTime());
SkMWCRandom rand(SampleCode::GetAnimTime());
canvas->translate(SkIntToScalar(10), SkIntToScalar(250));
drawCircle(fSubPicture->beginRecording(50, 50), 25,
rand.nextU() | 0xFF000000);

View File

@ -41,7 +41,7 @@ protected:
return this->INHERITED::onQuery(evt);
}
static void fill_pts(SkPoint pts[], size_t n, SkRandom* rand) {
static void fill_pts(SkPoint pts[], size_t n, SkMWCRandom* rand) {
for (size_t i = 0; i < n; i++)
pts[i].set(rand->nextUScalar1() * 640, rand->nextUScalar1() * 480);
}
@ -49,7 +49,7 @@ protected:
virtual void onDrawContent(SkCanvas* canvas) {
canvas->translate(SK_Scalar1, SK_Scalar1);
SkRandom rand;
SkMWCRandom rand;
SkPaint p0, p1, p2, p3;
const size_t n = 99;

View File

@ -38,7 +38,7 @@ protected:
}
virtual void onDrawContent(SkCanvas* canvas) {
SkRandom rand;
SkMWCRandom rand;
SkPaint paint;
paint.setAntiAlias(true);
paint.setStrokeWidth(20);

View File

@ -350,7 +350,7 @@ public:
static void make_tris(Rec* rec) {
int n = 10;
SkRandom rand;
SkMWCRandom rand;
rec->fMode = SkCanvas::kTriangles_VertexMode;
rec->fCount = n * 3;

View File

@ -132,7 +132,7 @@ protected:
return this->INHERITED::onQuery(evt);
}
SkRandom rand;
SkMWCRandom rand;
void drawSet(SkCanvas* canvas, SkPaint* paint) {
SkAutoCanvasRestore acr(canvas, true);

View File

@ -135,7 +135,7 @@ static void test_breakText() {
SkASSERT(mm == width);
}
static SkRandom gRand;
static SkMWCRandom gRand;
class SkPowerMode : public SkXfermode {
public:
@ -287,7 +287,7 @@ protected:
canvas.drawText(s, strlen(s), SkIntToScalar(8), SkIntToScalar(14), paint);
}
static void fill_pts(SkPoint pts[], size_t n, SkRandom* rand) {
static void fill_pts(SkPoint pts[], size_t n, SkMWCRandom* rand) {
for (size_t i = 0; i < n; i++)
pts[i].set(rand->nextUScalar1() * 640, rand->nextUScalar1() * 480);
}

View File

@ -74,7 +74,7 @@ protected:
SkBlurMask::ConvertRadiusToSigma(SkIntToScalar(3))));
paint.getMaskFilter()->unref();
SkRandom rand;
SkMWCRandom rand;
for (int ps = 6; ps <= 35; ps++) {
paint.setColor(rand.nextU() | (0xFF << 24));

View File

@ -144,7 +144,7 @@ private:
void make_tris(Rec* rec) {
int n = 10;
SkRandom rand;
SkMWCRandom rand;
rec->fMode = SkCanvas::kTriangles_VertexMode;
rec->fCount = n * 3;

View File

@ -10,11 +10,11 @@
#include "SkRect.h"
#include "SkRandom.h"
static int nextRand(SkRandom& rand, int min, int max) {
static int nextRand(SkMWCRandom& rand, int min, int max) {
return min + (int)rand.nextRangeU(0, max - min);
}
static void rand_irect(SkIRect* rect, int W, int H, SkRandom& rand) {
static void rand_irect(SkIRect* rect, int W, int H, SkMWCRandom& rand) {
const int DX = W / 2;
const int DY = H / 2;
@ -57,7 +57,7 @@ static void test_eraserect_A1(skiatest::Reporter* reporter) {
bm8.setConfig(SkBitmap::kA8_Config, W, H);
bm8.allocPixels();
SkRandom rand;
SkMWCRandom rand;
for (int i = 0; i < 10000; ++i) {
SkIRect area;
rand_irect(&area, W, H, rand);

View File

@ -19,7 +19,7 @@ static void test_clz(skiatest::Reporter* reporter) {
REPORTER_ASSERT(reporter, 1 == SkCLZ(1 << 30));
REPORTER_ASSERT(reporter, 0 == SkCLZ(~0U));
SkRandom rand;
SkMWCRandom rand;
for (int i = 0; i < 1000; ++i) {
uint32_t mask = rand.nextU();
// need to get some zeros for testing, but in some obscure way so the
@ -82,7 +82,7 @@ static void test_muldivround(skiatest::Reporter* reporter) {
}
#endif
SkRandom rand;
SkMWCRandom rand;
for (int i = 0; i < 10000; ++i) {
unsigned a = rand.nextU() & 0x7FFF;
unsigned b = rand.nextU() & 0x7FFF;

View File

@ -574,7 +574,7 @@ static void test_matrix_homogeneous(skiatest::Reporter* reporter) {
const int kTripleCount = 1000;
const int kMatrixCount = 1000;
SkRandom rand;
SkMWCRandom rand;
SkScalar randTriples[3*kTripleCount];
for (int i = 0; i < 3*kTripleCount; ++i) {

View File

@ -10,7 +10,7 @@
#include "SkBitmap.h"
#include "SkRandom.h"
static void make_bitmap(SkBitmap* bm, SkRandom& rand) {
static void make_bitmap(SkBitmap* bm, SkMWCRandom& rand) {
// for now, Build needs a min size of 2, otherwise it will return NULL.
// should fix that to support 1 X N, where N > 1 to return non-null.
int w = 2 + rand.nextU() % 1000;
@ -22,7 +22,7 @@ static void make_bitmap(SkBitmap* bm, SkRandom& rand) {
static void TestMipMap(skiatest::Reporter* reporter) {
SkBitmap bm;
SkRandom rand;
SkMWCRandom rand;
for (int i = 0; i < 500; ++i) {
make_bitmap(&bm, rand);

View File

@ -71,7 +71,7 @@ static void test_cmap(skiatest::Reporter* reporter) {
{ uni_to_utf32, SkPaint::kUTF32_TextEncoding },
};
SkRandom rand;
SkMWCRandom rand;
SkPaint paint;
paint.setTypeface(SkTypeface::RefDefault())->unref();
SkTypeface* face = paint.getTypeface();