| 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;
|
| };
|
|
|
| /**
|
|
|