Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(670)

Unified Diff: gm/etc1bitmap.cpp

Issue 302333002: Initial KTX file decoder (Closed) Base URL: https://skia.googlesource.com/skia.git@master
Patch Set: More code comments Created 6 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | gyp/gpu.gyp » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: gm/etc1bitmap.cpp
diff --git a/gm/etc1bitmap.cpp b/gm/etc1bitmap.cpp
index f61b514ecbe278fea094ac2ed421449f1f81855e..ec71d8daa56843344d4d95469f09ac018190e3fb 100644
--- a/gm/etc1bitmap.cpp
+++ b/gm/etc1bitmap.cpp
@@ -15,7 +15,7 @@
namespace skiagm {
/**
- * Test decoding an image from a PKM file and then
+ * Test decoding an image from a PKM or KTX file and then
* from compressed ETC1 data.
*/
class ETC1BitmapGM : public GM {
@@ -25,18 +25,22 @@ public:
protected:
virtual SkString onShortName() SK_OVERRIDE {
- return SkString("etc1bitmap");
+ SkString str = SkString("etc1bitmap_");
+ str.append(this->fileExtension());
+ return str;
}
virtual SkISize onISize() SK_OVERRIDE {
- return make_isize(512, 512);
+ return make_isize(128, 128);
}
- virtual void onDraw(SkCanvas* canvas) SK_OVERRIDE {
+ virtual SkString fileExtension() const = 0;
+ virtual void onDraw(SkCanvas* canvas) SK_OVERRIDE {
SkBitmap bm;
SkString filename = SkOSPath::SkPathJoin(
- INHERITED::gResourcePath.c_str(), "mandrill_512.pkm");
+ INHERITED::gResourcePath.c_str(), "mandrill_128.");
+ filename.append(this->fileExtension());
SkAutoTUnref<SkData> fileData(SkData::NewFromFileName(filename.c_str()));
if (NULL == fileData) {
@@ -58,8 +62,37 @@ private:
typedef GM INHERITED;
};
+// This class specializes ETC1BitmapGM to load the mandrill_128.pkm file.
+class ETC1Bitmap_PKM_GM : public ETC1BitmapGM {
+public:
+ ETC1Bitmap_PKM_GM() : ETC1BitmapGM() { }
+ virtual ~ETC1Bitmap_PKM_GM() { }
+
+protected:
+
+ virtual SkString fileExtension() const SK_OVERRIDE { return SkString("pkm"); }
+
+private:
+ typedef ETC1BitmapGM INHERITED;
+};
+
+// This class specializes ETC1BitmapGM to load the mandrill_128.ktx file.
+class ETC1Bitmap_KTX_GM : public ETC1BitmapGM {
+public:
+ ETC1Bitmap_KTX_GM() : ETC1BitmapGM() { }
+ virtual ~ETC1Bitmap_KTX_GM() { }
+
+protected:
+
+ virtual SkString fileExtension() const SK_OVERRIDE { return SkString("ktx"); }
+
+private:
+ typedef ETC1BitmapGM INHERITED;
+};
+
} // namespace skiagm
//////////////////////////////////////////////////////////////////////////////
-DEF_GM( return SkNEW(skiagm::ETC1BitmapGM); )
+DEF_GM( return SkNEW(skiagm::ETC1Bitmap_PKM_GM); )
+DEF_GM( return SkNEW(skiagm::ETC1Bitmap_KTX_GM); )
« no previous file with comments | « no previous file | gyp/gpu.gyp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698