| Index: skia/picture/SkPicturePlayback.h
|
| ===================================================================
|
| --- skia/picture/SkPicturePlayback.h (revision 16859)
|
| +++ skia/picture/SkPicturePlayback.h (working copy)
|
| @@ -1,168 +0,0 @@
|
| -#ifndef SkPicturePlayback_DEFINED
|
| -#define SkPicturePlayback_DEFINED
|
| -
|
| -#include "SkPicture.h"
|
| -#include "SkReader32.h"
|
| -
|
| -#include "SkBitmap.h"
|
| -#include "SkMatrix.h"
|
| -#include "SkPaint.h"
|
| -#include "SkPath.h"
|
| -#include "SkPathHeap.h"
|
| -#include "SkRegion.h"
|
| -#include "SkPictureFlat.h"
|
| -
|
| -class SkPictureRecord;
|
| -class SkStream;
|
| -class SkWStream;
|
| -
|
| -class SkPicturePlayback {
|
| -public:
|
| - SkPicturePlayback();
|
| - SkPicturePlayback(const SkPicturePlayback& src);
|
| - explicit SkPicturePlayback(const SkPictureRecord& record);
|
| - explicit SkPicturePlayback(SkStream*);
|
| -
|
| - virtual ~SkPicturePlayback();
|
| -
|
| - void draw(SkCanvas& canvas);
|
| -
|
| - void serialize(SkWStream*) const;
|
| -
|
| - void dumpSize() const;
|
| -
|
| - // Can be called in the middle of playback (the draw() call). WIll abort the
|
| - // drawing and return from draw() after the "current" op code is done
|
| - void abort();
|
| -
|
| -private:
|
| -
|
| - class TextContainer {
|
| - public:
|
| - size_t length() { return fByteLength; }
|
| - const void* text() { return (const void*) fText; }
|
| - size_t fByteLength;
|
| - const char* fText;
|
| - };
|
| -
|
| - const SkBitmap& getBitmap() {
|
| - int index = getInt();
|
| - SkASSERT(index > 0);
|
| - return fBitmaps[index - 1];
|
| - }
|
| -
|
| - int getIndex() { return fReader.readInt(); }
|
| - int getInt() { return fReader.readInt(); }
|
| -
|
| - const SkMatrix* getMatrix() {
|
| - int index = getInt();
|
| - if (index == 0) {
|
| - return NULL;
|
| - }
|
| - SkASSERT(index > 0 && index <= fMatrixCount);
|
| - return &fMatrices[index - 1];
|
| - }
|
| -
|
| - const SkPath& getPath() {
|
| - return (*fPathHeap)[getInt() - 1];
|
| - }
|
| -
|
| - SkPicture& getPicture() {
|
| - int index = getInt();
|
| - SkASSERT(index > 0 && index <= fPictureCount);
|
| - return *fPictureRefs[index - 1];
|
| - }
|
| -
|
| - const SkPaint* getPaint() {
|
| - int index = getInt();
|
| - if (index == 0) {
|
| - return NULL;
|
| - }
|
| - SkASSERT(index > 0 && index <= fPaintCount);
|
| - return &fPaints[index - 1];
|
| - }
|
| -
|
| - const SkRect* getRectPtr() {
|
| - if (fReader.readBool()) {
|
| - return fReader.skipRect();
|
| - } else {
|
| - return NULL;
|
| - }
|
| - }
|
| -
|
| - const SkIRect* getIRectPtr() {
|
| - if (fReader.readBool()) {
|
| - return (const SkIRect*)fReader.skip(sizeof(SkIRect));
|
| - } else {
|
| - return NULL;
|
| - }
|
| - }
|
| -
|
| - const SkRegion& getRegion() {
|
| - int index = getInt();
|
| - SkASSERT(index > 0);
|
| - return fRegions[index - 1];
|
| - }
|
| -
|
| - SkScalar getScalar() { return fReader.readScalar(); }
|
| -
|
| - void getText(TextContainer* text) {
|
| - size_t length = text->fByteLength = getInt();
|
| - text->fText = (const char*)fReader.skip(length);
|
| - }
|
| -
|
| - void init();
|
| -
|
| -#ifdef SK_DEBUG_SIZE
|
| -public:
|
| - int size(size_t* sizePtr);
|
| - int bitmaps(size_t* size);
|
| - int paints(size_t* size);
|
| - int paths(size_t* size);
|
| - int regions(size_t* size);
|
| -#endif
|
| -
|
| -#ifdef SK_DEBUG_DUMP
|
| -private:
|
| - void dumpBitmap(const SkBitmap& bitmap) const;
|
| - void dumpMatrix(const SkMatrix& matrix) const;
|
| - void dumpPaint(const SkPaint& paint) const;
|
| - void dumpPath(const SkPath& path) const;
|
| - void dumpPicture(const SkPicture& picture) const;
|
| - void dumpRegion(const SkRegion& region) const;
|
| - int dumpDrawType(char* bufferPtr, char* buffer, DrawType drawType);
|
| - int dumpInt(char* bufferPtr, char* buffer, char* name);
|
| - int dumpRect(char* bufferPtr, char* buffer, char* name);
|
| - int dumpPoint(char* bufferPtr, char* buffer, char* name);
|
| - void dumpPointArray(char** bufferPtrPtr, char* buffer, int count);
|
| - int dumpPtr(char* bufferPtr, char* buffer, char* name, void* ptr);
|
| - int dumpRectPtr(char* bufferPtr, char* buffer, char* name);
|
| - int dumpScalar(char* bufferPtr, char* buffer, char* name);
|
| - void dumpText(char** bufferPtrPtr, char* buffer);
|
| - void dumpStream();
|
| -
|
| -public:
|
| - void dump() const;
|
| -#endif
|
| -
|
| -private:
|
| - SkPathHeap* fPathHeap; // reference counted
|
| - SkBitmap* fBitmaps;
|
| - int fBitmapCount;
|
| - SkMatrix* fMatrices;
|
| - int fMatrixCount;
|
| - SkPaint* fPaints;
|
| - int fPaintCount;
|
| - SkRegion* fRegions;
|
| - int fRegionCount;
|
| - mutable SkFlattenableReadBuffer fReader;
|
| -
|
| - SkPicture** fPictureRefs;
|
| - int fPictureCount;
|
| -
|
| - SkRefCntPlayback fRCPlayback;
|
| - SkTypefacePlayback fTFPlayback;
|
| - SkFactoryPlayback* fFactoryPlayback;
|
| -};
|
| -
|
| -#endif
|
|
|