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

Unified Diff: src/pdf/SkPDFShader.h

Issue 842253003: SkPDFCanon (Closed) Base URL: https://skia.googlesource.com/skia.git@master
Patch Set: react to comments Created 5 years, 11 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
Index: src/pdf/SkPDFShader.h
diff --git a/src/pdf/SkPDFShader.h b/src/pdf/SkPDFShader.h
index 9c92d77d927cd463f46a8cd9e40478b135fcf3a3..e0abff8f68388324128cbe15bfebfc4d49540bc2 100644
--- a/src/pdf/SkPDFShader.h
+++ b/src/pdf/SkPDFShader.h
@@ -45,31 +45,24 @@ public:
const SkIRect& surfaceBBox,
SkScalar rasterScale);
-protected:
class State;
+ bool equals(const SkPDFShader::State&) const;
- class ShaderCanonicalEntry {
- public:
- ShaderCanonicalEntry(SkPDFObject* pdfShader, const State* state);
- bool operator==(const ShaderCanonicalEntry& b) const;
-
- SkPDFObject* fPDFShader;
- const State* fState;
- };
- // This should be made a hash table if performance is a problem.
- static SkTDArray<ShaderCanonicalEntry>& CanonicalShaders();
- static SkBaseMutex& CanonicalShadersMutex();
+protected:
+ SkAutoTDelete<const State> fShaderState;
// This is an internal method.
// CanonicalShadersMutex() should already be acquired.
// This also takes ownership of shaderState.
static SkPDFObject* GetPDFShaderByState(State* shaderState);
- static void RemoveShader(SkPDFObject* shader);
+ static SkPDFObject* AddToCanonIfValid(SkPDFShader*);
+ static void RemoveFromCanonIfValid(SkPDFShader*);
- SkPDFShader();
- virtual ~SkPDFShader() {};
+ SkPDFShader(State*);
+ virtual ~SkPDFShader();
virtual bool isValid() = 0;
+ virtual SkPDFObject* toPDFObject() = 0;
};
#endif

Powered by Google App Engine
This is Rietveld 408576698