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

Unified Diff: include/gpu/GrResourceKey.h

Issue 1114353004: Implement vertex buffer caching in the tessellated path renderer. (Closed) Base URL: https://skia.googlesource.com/skia.git@master
Patch Set: Merge resource cache fix, leak fix, inverse winding fix Created 5 years, 4 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 | « include/core/SkPathRef.h ('k') | src/core/SkPathPriv.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: include/gpu/GrResourceKey.h
diff --git a/include/gpu/GrResourceKey.h b/include/gpu/GrResourceKey.h
index a353dc21143766f0a1cb7a2a598e9c55dc2c375b..0a97c20b4d5420bc9d819d3d27142bccf1c743b1 100644
--- a/include/gpu/GrResourceKey.h
+++ b/include/gpu/GrResourceKey.h
@@ -10,6 +10,7 @@
#define GrResourceKey_DEFINED
#include "GrTypes.h"
+#include "SkData.h"
#include "SkOnce.h"
#include "SkTemplates.h"
@@ -237,6 +238,7 @@ public:
GrUniqueKey& operator=(const GrUniqueKey& that) {
this->INHERITED::operator=(that);
+ this->setCustomData(that.getCustomData());
return *this;
}
@@ -245,6 +247,14 @@ public:
}
bool operator!=(const GrUniqueKey& that) const { return !(*this == that); }
+ void setCustomData(const SkData* data) {
+ SkSafeRef(data);
+ fData.reset(data);
+ }
+ const SkData* getCustomData() const {
+ return fData.get();
+ }
+
class Builder : public INHERITED::Builder {
public:
Builder(GrUniqueKey* key, Domain domain, int data32Count)
@@ -268,6 +278,9 @@ public:
return SkToInt((innerKey.dataSize() >> 2) + 1);
}
};
+
+private:
+ SkAutoTUnref<const SkData> fData;
};
/**
« no previous file with comments | « include/core/SkPathRef.h ('k') | src/core/SkPathPriv.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698