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

Public Member Functions

 PathCopyBench ()
 
- Public Member Functions inherited from RandomPathBench
bool isSuitableFor (Backend backend) override
 
- 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 onDelayedSetup () override
 
void onDraw (int loops, SkCanvas *) override
 
- Protected Member Functions inherited from RandomPathBench
void createData (int minVerbs, int maxVerbs, bool allowMoves=true, SkRect *bounds=nullptr)
 
void restartMakingPaths ()
 
void makePath (SkPath *path)
 
void finishedMakingPaths ()
 
- 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 437 of file PathBench.cpp.

Constructor & Destructor Documentation

◆ PathCopyBench()

PathCopyBench::PathCopyBench ( )
inline

Definition at line 439 of file PathBench.cpp.

439 {
440 }

Member Function Documentation

◆ onDelayedSetup()

void PathCopyBench::onDelayedSetup ( )
inlineoverrideprotectedvirtual

Reimplemented from Benchmark.

Definition at line 446 of file PathBench.cpp.

446 {
447 this->createData(10, 100);
448 fPaths.reset(kPathCnt);
449 fCopies.reset(kPathCnt);
450 for (int i = 0; i < kPathCnt; ++i) {
451 this->makePath(&fPaths[i]);
452 }
453 this->finishedMakingPaths();
454 }
void makePath(SkPath *path)
Definition: PathBench.cpp:346
void createData(int minVerbs, int maxVerbs, bool allowMoves=true, SkRect *bounds=nullptr)
Definition: PathBench.cpp:313
void finishedMakingPaths()
Definition: PathBench.cpp:384
void reset(size_t count=0)
Definition: SkTemplates.h:123

◆ onDraw()

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

Implements Benchmark.

Definition at line 455 of file PathBench.cpp.

455 {
456 for (int i = 0; i < loops; ++i) {
457 int idx = i & (kPathCnt - 1);
458 fCopies[idx] = fPaths[idx];
459 }
460 }

◆ onGetName()

const char * PathCopyBench::onGetName ( )
inlineoverrideprotectedvirtual

Implements Benchmark.

Definition at line 443 of file PathBench.cpp.

443 {
444 return "path_copy";
445 }

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