Flutter Engine
The Flutter Engine
Public Member Functions | Protected Member Functions | List of all members
AAClipBuilderBench Class Reference
Inheritance diagram for AAClipBuilderBench:
Benchmark SkRefCnt SkRefCntBase

Public Member Functions

 AAClipBuilderBench (bool doPath, bool doAA)
 
- Public Member Functions inherited from Benchmark
 Benchmark ()
 
const char * getName ()
 
const char * getUniqueName ()
 
SkISize getSize ()
 
virtual bool isSuitableFor (Backend backend)
 
virtual void modifyGrContextOptions (GrContextOptions *)
 
virtual bool shouldLoop () const
 
void delayedSetup ()
 
void perCanvasPreDraw (SkCanvas *)
 
void perCanvasPostDraw (SkCanvas *)
 
void preDraw (SkCanvas *)
 
void postDraw (SkCanvas *)
 
void draw (int loops, SkCanvas *)
 
virtual void getGpuStats (SkCanvas *, skia_private::TArray< SkString > *keys, skia_private::TArray< double > *values)
 
virtual bool getDMSAAStats (GrRecordingContext *)
 
int getUnits () const
 
- Public Member Functions inherited from SkRefCntBase
 SkRefCntBase ()
 
virtual ~SkRefCntBase ()
 
bool unique () const
 
void ref () const
 
void unref () const
 

Protected Member Functions

const char * onGetName () override
 
void onDraw (int loops, SkCanvas *) override
 
- Protected Member Functions inherited from Benchmark
void setUnits (int units)
 
virtual void setupPaint (SkPaint *paint)
 
virtual const char * onGetName ()=0
 
virtual const char * onGetUniqueName ()
 
virtual void onDelayedSetup ()
 
virtual void onPerCanvasPreDraw (SkCanvas *)
 
virtual void onPerCanvasPostDraw (SkCanvas *)
 
virtual void onPreDraw (SkCanvas *)
 
virtual void onPostDraw (SkCanvas *)
 
virtual void onDraw (int loops, SkCanvas *)=0
 
virtual SkISize onGetSize ()
 

Additional Inherited Members

- Public Types inherited from Benchmark
enum class  Backend {
  kNonRendering , kRaster , kGanesh , kGraphite ,
  kPDF , kHWUI
}
 

Detailed Description

Definition at line 169 of file AAClipBench.cpp.

Constructor & Destructor Documentation

◆ AAClipBuilderBench()

AAClipBuilderBench::AAClipBuilderBench ( bool  doPath,
bool  doAA 
)
inline

Definition at line 178 of file AAClipBench.cpp.

178 {
179 fDoPath = doPath;
180 fDoAA = doAA;
181
182 fName.printf("aaclip_build_%s_%s", doPath ? "path" : "rect",
183 doAA ? "AA" : "BW");
184 fBounds = {0, 0, 640, 480};
185 fRect.set(fBounds);
186 fRect.inset(SK_Scalar1/4, SK_Scalar1/4);
187 fPath.addRoundRect(fRect, SkIntToScalar(20), SkIntToScalar(20));
188 }
#define SK_Scalar1
Definition: SkScalar.h:18
#define SkIntToScalar(x)
Definition: SkScalar.h:57
SkPath & addRoundRect(const SkRect &rect, SkScalar rx, SkScalar ry, SkPathDirection dir=SkPathDirection::kCW)
Definition: SkPath.cpp:1093
void printf(const char format[],...) SK_PRINTF_LIKE(2
Definition: SkString.cpp:534
void inset(float dx, float dy)
Definition: SkRect.h:1060
void set(const SkIRect &src)
Definition: SkRect.h:849

Member Function Documentation

◆ onDraw()

void AAClipBuilderBench::onDraw ( int  loops,
SkCanvas  
)
inlineoverrideprotectedvirtual

Implements Benchmark.

Definition at line 192 of file AAClipBench.cpp.

192 {
194 this->setupPaint(&paint);
195
196 for (int i = 0; i < loops; ++i) {
198 if (fDoPath) {
199 clip.setPath(fPath, fBounds, fDoAA);
200 } else {
201 if (fDoAA) {
202 clip.setPath(SkPath::Rect(fRect), fBounds, fDoAA);
203 } else {
204 clip.setRect(fBounds);
205 }
206 }
207 }
208 }
static SkPath clip(const SkPath &path, const SkHalfPlane &plane)
Definition: SkPath.cpp:3892
virtual void setupPaint(SkPaint *paint)
Definition: Benchmark.cpp:55
static SkPath Rect(const SkRect &, SkPathDirection=SkPathDirection::kCW, unsigned startIndex=0)
Definition: SkPath.cpp:3586
const Paint & paint
Definition: color_source.cc:38

◆ onGetName()

const char * AAClipBuilderBench::onGetName ( )
inlineoverrideprotectedvirtual

Implements Benchmark.

Definition at line 191 of file AAClipBench.cpp.

191{ return fName.c_str(); }
const char * c_str() const
Definition: SkString.h:133

The documentation for this class was generated from the following file: