remvoe duplicate impl for SkImageInfo flattening
Revert "Revert "PixelRef now returns (nearly) everything that is currently in SkBitmap. The goal is to refactor bitmap later to remove redundancy, and more interestingly, remove the chance for a disconnect between the actual (pixelref) rowbytes and config, and the one claimed by the bitmap.""""""
This reverts commit eabd6b2ed4e494b323c08f32358f45950a0368c3.
BUG=
Review URL: https://codereview.chromium.org/108773003
git-svn-id: http://skia.googlecode.com/svn/trunk@12624 2bbb7eff-a529-9590-31e7-b0007b416f81
diff --git a/tests/PictureTest.cpp b/tests/PictureTest.cpp
index 9ef4bb0..3c53dd3 100644
--- a/tests/PictureTest.cpp
+++ b/tests/PictureTest.cpp
@@ -9,6 +9,7 @@
#include "SkCanvas.h"
#include "SkColorPriv.h"
#include "SkData.h"
+#include "SkDecodingImageGenerator.h"
#include "SkError.h"
#include "SkPaint.h"
#include "SkPicture.h"
@@ -335,32 +336,6 @@
}
#endif
-#include "SkData.h"
-#include "SkImageRef_GlobalPool.h"
-// Class to test SkPixelRef::onRefEncodedData, since there are currently no implementations in skia.
-class SkDataImageRef : public SkImageRef_GlobalPool {
-
-public:
- SkDataImageRef(SkMemoryStream* stream)
- : SkImageRef_GlobalPool(stream, SkBitmap::kNo_Config) {
- SkASSERT(stream != NULL);
- fData = stream->copyToData();
- this->setImmutable();
- }
-
- ~SkDataImageRef() {
- fData->unref();
- }
-
- virtual SkData* onRefEncodedData() SK_OVERRIDE {
- fData->ref();
- return fData;
- }
-
-private:
- SkData* fData;
-};
-
#include "SkImageEncoder.h"
static SkData* encode_bitmap_to_data(size_t* offset, const SkBitmap& bm) {
@@ -402,14 +377,10 @@
return;
}
SkAutoDataUnref data(wStream.copyToData());
- SkMemoryStream memStream;
- memStream.setData(data);
- // Use the encoded bitmap as the data for an image ref.
SkBitmap bm;
- SkAutoTUnref<SkDataImageRef> imageRef(SkNEW_ARGS(SkDataImageRef, (&memStream)));
- imageRef->getInfo(&bm);
- bm.setPixelRef(imageRef);
+ bool installSuccess = SkDecodingImageGenerator::Install(data, &bm);
+ REPORTER_ASSERT(reporter, installSuccess);
// Write both bitmaps to pictures, and ensure that the resulting data streams are the same.
// Flattening original will follow the old path of performing an encode, while flattening bm