#include <SkFlattenable.h>
Inherits SkRefCnt.
Inherited by SkColorFilter, SkDrawable, SkDrawLooper, SkMaskFilter, SkPathEffect, SkRasterizer, SkShader, SkShape, SkUnitMapper, and SkXfermode.
Classes | |
class | Registrar |
Public Types | |
typedef SkFlattenable *(* | Factory )(SkFlattenableReadBuffer &) |
Public Member Functions | |
SkFlattenable () | |
virtual Factory | getFactory ()=0 |
virtual void | flatten (SkFlattenableWriteBuffer &) |
virtual bool | toDumpString (SkString *) const |
Static Public Member Functions | |
static Factory | NameToFactory (const char name[]) |
static const char * | FactoryToName (Factory) |
static void | Register (const char name[], Factory) |
Protected Member Functions | |
SkFlattenable (SkFlattenableReadBuffer &) |
SkFlattenable is the base class for objects that need to be flattened into a data stream for either transport or as part of the key to the font cache.
Definition at line 36 of file SkFlattenable.h.
typedef SkFlattenable*(* SkFlattenable::Factory)(SkFlattenableReadBuffer &) |
Definition at line 38 of file SkFlattenable.h.
SkFlattenable::SkFlattenable | ( | ) | [inline] |
Definition at line 40 of file SkFlattenable.h.
SkFlattenable::SkFlattenable | ( | SkFlattenableReadBuffer & | ) | [inline, protected] |
Definition at line 70 of file SkFlattenable.h.
static const char* SkFlattenable::FactoryToName | ( | Factory | ) | [static] |
virtual void SkFlattenable::flatten | ( | SkFlattenableWriteBuffer & | ) | [virtual] |
Override this to write data specific to your subclass into the buffer, being sure to call your super-class' version first. This data will later be passed to your Factory function, returned by getFactory().
Reimplemented in SkFilterShader, SkColorShader, SkComposeShader, SkMaskFilter, SkStrokePathEffect, SkPairPathEffect, SkRasterizer, SkShader, SkShape, SkProcXfermode, SkPath1DPathEffect, Sk2DPathEffect, SkAvoidXfermode, SkBlurDrawLooper, SkColorMatrixFilter, SkCornerPathEffect, SkDashPathEffect, SkDiscretePathEffect, SkEmbossMaskFilter, SkGroupShape, SkKernel33ProcMaskFilter, SkKernel33MaskFilter, SkLayerDrawLooper, SkLayerRasterizer, SkPixelXorXfermode, SkPaintShape, SkRectShape, and SkTransparentShader.
virtual Factory SkFlattenable::getFactory | ( | ) | [pure virtual] |
Implement this to return a factory function pointer that can be called to recreate your class given a buffer (previously written to by your override of flatten().
Implemented in SkFilterShader, SkColorShader, SkComposeShader, SkStrokePathEffect, SkComposePathEffect, SkSumPathEffect, SkShape, SkProcXfermode, SkPath1DPathEffect, Sk2DPathEffect, SkAvoidXfermode, SkBlurDrawLooper, SkColorMatrixFilter, SkCornerPathEffect, SkDashPathEffect, SkDiscretePathEffect, SkEmbossMaskFilter, SkGroupShape, SkKernel33MaskFilter, SkLayerDrawLooper, SkLayerRasterizer, SkPixelXorXfermode, SkRectShape, and SkTransparentShader.
static Factory SkFlattenable::NameToFactory | ( | const char | name[] | ) | [static] |
static void SkFlattenable::Register | ( | const char | name[], | |
Factory | ||||
) | [static] |
virtual bool SkFlattenable::toDumpString | ( | SkString * | ) | const [virtual] |
Set the string to describe the sublass and return true. If this is not overridden, ignore the string param and return false.