aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/lazy/SkDiscardablePixelRef.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/lazy/SkDiscardablePixelRef.h')
-rw-r--r--src/lazy/SkDiscardablePixelRef.h37
1 files changed, 5 insertions, 32 deletions
diff --git a/src/lazy/SkDiscardablePixelRef.h b/src/lazy/SkDiscardablePixelRef.h
index 78dcd66791..44c6df9637 100644
--- a/src/lazy/SkDiscardablePixelRef.h
+++ b/src/lazy/SkDiscardablePixelRef.h
@@ -9,43 +9,12 @@
#define SkDiscardablePixelRef_DEFINED
#include "SkDiscardableMemory.h"
-#include "SkPixelRef.h"
#include "SkImageGenerator.h"
#include "SkImageInfo.h"
-
-/**
- * An interface that allows a purgable PixelRef to re-decode an image.
- */
-
-typedef SkDiscardableMemory* (*SkDiscardableMemoryFactory)(size_t bytes);
-
+#include "SkPixelRef.h"
class SkDiscardablePixelRef : public SkPixelRef {
public:
- /**
- * Takes ownership of SkImageGenerator. If this method fails for
- * whatever reason, it will return false and immediatetely delete
- * the generator. If it succeeds, it will modify destination
- * bitmap.
- *
- * If Install fails or when the SkDiscardablePixelRef that is
- * installed into destination is destroyed, it will call
- * SkDELETE() on the generator. Therefore, generator should be
- * allocated with SkNEW() or SkNEW_ARGS().
- *
- * @param destination Upon success, this bitmap will be
- * configured and have a pixelref installed.
- *
- * @param factory If not NULL, this object will be used as a
- * source of discardable memory when decoding. If NULL, then
- * SkDiscardableMemory::Create() will be called.
- *
- * @return true iff successful.
- */
- static bool Install(SkImageGenerator* generator,
- SkBitmap* destination,
- SkDiscardableMemory::Factory* factory = NULL);
-
SK_DECLARE_UNFLATTENABLE_OBJECT()
protected:
@@ -75,5 +44,9 @@ private:
size_t size,
size_t rowBytes,
SkDiscardableMemory::Factory* factory);
+ friend bool SkInstallDiscardablePixelRef(SkImageGenerator*,
+ SkBitmap*,
+ SkDiscardableMemory::Factory*);
+ typedef SkPixelRef INHERITED;
};
#endif // SkDiscardablePixelRef_DEFINED