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

Public Member Functions

 FontCacheBench ()
 
- 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 *canvas) 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 30 of file FontCacheBench.cpp.

Constructor & Destructor Documentation

◆ FontCacheBench()

FontCacheBench::FontCacheBench ( )
inline

Definition at line 32 of file FontCacheBench.cpp.

32{}

Member Function Documentation

◆ onDraw()

void FontCacheBench::onDraw ( int  loops,
SkCanvas canvas 
)
inlineoverrideprotectedvirtual

Implements Benchmark.

Definition at line 39 of file FontCacheBench.cpp.

39 {
42
43 const uint16_t* array = gUniqueGlyphIDs;
44 while (*array != gUniqueGlyphIDs_Sentinel) {
45 int count = count_glyphs(array);
46 for (int i = 0; i < loops; ++i) {
47 (void)font.measureText(array, count * sizeof(uint16_t), SkTextEncoding::kGlyphID);
48 }
49 array += count + 1; // skip the sentinel
50 }
51 }
static int count_glyphs(const uint16_t start[])
#define gUniqueGlyphIDs_Sentinel
int count
Definition: FontMgrTest.cpp:50
@ kGlyphID
uses two byte words to represent glyph indices
Definition: SkFont.h:35
@ kAntiAlias
may have transparent pixels on glyph edges
static const uint16_t gUniqueGlyphIDs[]
SkFont DefaultFont()
font
Font Metadata and Metrics.

◆ onGetName()

const char * FontCacheBench::onGetName ( )
inlineoverrideprotectedvirtual

Implements Benchmark.

Definition at line 35 of file FontCacheBench.cpp.

35 {
36 return "fontcache";
37 }

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