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

Unified Diff: src/pdf/SkPDFShader.h

Issue 842253003: SkPDFCanon (Closed) Base URL: https://skia.googlesource.com/skia.git@master
Patch Set: did you mean struct here? 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
« no previous file with comments | « src/pdf/SkPDFGraphicState.cpp ('k') | src/pdf/SkPDFShader.cpp » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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
« no previous file with comments | « src/pdf/SkPDFGraphicState.cpp ('k') | src/pdf/SkPDFShader.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698