Flutter Engine
The Flutter Engine
Public Member Functions | Protected Member Functions | List of all members
RecordingBench Class Reference

#include <RecordingBench.h>

Inheritance diagram for RecordingBench:
PictureCentricBench Benchmark SkRefCnt SkRefCntBase

Public Member Functions

 RecordingBench (const char *name, const SkPicture *, bool useBBH)
 
- Public Member Functions inherited from PictureCentricBench
 PictureCentricBench (const char *name, const SkPicture *)
 
- 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

void onDraw (int loops, SkCanvas *) override
 
- Protected Member Functions inherited from PictureCentricBench
const char * onGetName () override
 
bool isSuitableFor (Backend) override
 
SkISize onGetSize () 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
}
 
- Protected Types inherited from PictureCentricBench
using INHERITED = Benchmark
 
- Protected Attributes inherited from PictureCentricBench
sk_sp< const SkPicturefSrc
 
SkString fName
 

Detailed Description

Definition at line 30 of file RecordingBench.h.

Constructor & Destructor Documentation

◆ RecordingBench()

RecordingBench::RecordingBench ( const char *  name,
const SkPicture pic,
bool  useBBH 
)

Definition at line 37 of file RecordingBench.cpp.

38 : INHERITED(name, pic)
39 , fUseBBH(useBBH)
40{}
DEF_SWITCHES_START aot vmservice shared library name
Definition: switches.h:32

Member Function Documentation

◆ onDraw()

void RecordingBench::onDraw ( int  loops,
SkCanvas  
)
overrideprotectedvirtual

Implements Benchmark.

Definition at line 42 of file RecordingBench.cpp.

42 {
43 SkRTreeFactory factory;
44 SkPictureRecorder recorder;
45 while (loops --> 0) {
46 fSrc->playback(recorder.beginRecording(fSrc->cullRect(), fUseBBH ? &factory : nullptr));
47 (void)recorder.finishRecordingAsPicture();
48 }
49}
sk_sp< const SkPicture > fSrc
SkCanvas * beginRecording(const SkRect &bounds, sk_sp< SkBBoxHierarchy > bbh)
sk_sp< SkPicture > finishRecordingAsPicture()
virtual SkRect cullRect() const =0
virtual void playback(SkCanvas *canvas, AbortCallback *callback=nullptr) const =0

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