Flutter Engine
The Flutter Engine
|
#include <SkTraceMemoryDump.h>
Public Types | |
enum | LevelOfDetail { kLight_LevelOfDetail , kObjectsBreakdowns_LevelOfDetail } |
Public Member Functions | |
virtual void | dumpNumericValue (const char *dumpName, const char *valueName, const char *units, uint64_t value)=0 |
virtual void | dumpStringValue (const char *, const char *, const char *) |
virtual void | setMemoryBacking (const char *dumpName, const char *backingType, const char *backingObjectId)=0 |
virtual void | setDiscardableMemoryBacking (const char *dumpName, const SkDiscardableMemory &discardableMemoryObject)=0 |
virtual LevelOfDetail | getRequestedDetails () const =0 |
virtual bool | shouldDumpWrappedObjects () const |
virtual void | dumpWrappedState (const char *, bool) |
virtual bool | shouldDumpUnbudgetedObjects () const |
virtual void | dumpBudgetedState (const char *, bool) |
Protected Member Functions | |
virtual | ~SkTraceMemoryDump ()=default |
SkTraceMemoryDump ()=default | |
SkTraceMemoryDump (const SkTraceMemoryDump &)=delete | |
SkTraceMemoryDump & | operator= (const SkTraceMemoryDump &)=delete |
Interface for memory tracing. This interface is meant to be passed as argument to the memory dump methods of Skia objects. The implementation of this interface is provided by the embedder.
Definition at line 20 of file SkTraceMemoryDump.h.
Enum to specify the level of the requested details for the dump from the Skia objects.
Enumerator | |
---|---|
kLight_LevelOfDetail | |
kObjectsBreakdowns_LevelOfDetail |
Definition at line 25 of file SkTraceMemoryDump.h.
|
protectedvirtualdefault |
|
protecteddefault |
|
protecteddelete |
|
inlinevirtual |
If shouldDumpUnbudgetedObjects() returns true then this function will be called to populate the output with information on whether the item being dumped is budgeted. This call is only used when dumping Graphite memory statistics.
Definition at line 105 of file SkTraceMemoryDump.h.
|
pure virtual |
Appends a new memory dump (i.e. a row) to the trace memory infrastructure. If dumpName does not exist yet, a new one is created. Otherwise, a new column is appended to the previously created dump. Arguments: dumpName: an absolute, slash-separated, name for the item being dumped e.g., "skia/CacheX/EntryY". valueName: a string indicating the name of the column. e.g., "size", "active_size", "number_of_objects". This string is supposed to be long lived and is NOT copied. units: a string indicating the units for the value. e.g., "bytes", "objects". This string is supposed to be long lived and is NOT copied. value: the actual value being dumped.
|
inlinevirtual |
Definition at line 53 of file SkTraceMemoryDump.h.
|
inlinevirtual |
If shouldDumpWrappedObjects() returns true then this function will be called to populate the output with information on whether the item being dumped is a wrapped object.
Definition at line 90 of file SkTraceMemoryDump.h.
|
pure virtual |
Returns the type of details requested in the dump. The granularity of the dump is supposed to match the LevelOfDetail argument. The level of detail must not affect the total size reported, but only granularity of the child entries.
|
protecteddelete |
|
pure virtual |
Specialization for memory backed by discardable memory.
|
pure virtual |
Sets the memory backing for an existing dump. backingType and backingObjectId are used by the embedder to associate the memory dumped via dumpNumericValue with the corresponding dump that backs the memory.
|
inlinevirtual |
Returns true if we should dump unbudgeted objects. Unbudgeted objects can either come from wrapped objects passed into Skia from the client or from Skia created objects currently held by the client in a public Skia object (e.g. SkSurface or SkImage). This call is only used when dumping Graphite memory statistics.
Definition at line 98 of file SkTraceMemoryDump.h.
|
inlinevirtual |
Returns true if we should dump wrapped objects. Wrapped objects come from outside Skia, and may be independently tracked there.
Definition at line 84 of file SkTraceMemoryDump.h.