aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/pdf/SkPDFGraphicState.h
diff options
context:
space:
mode:
authorGravatar vandebo@chromium.org <vandebo@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81>2012-03-21 20:31:08 +0000
committerGravatar vandebo@chromium.org <vandebo@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81>2012-03-21 20:31:08 +0000
commit76d6de0845910f18306125bbcaef7edf6e8f6649 (patch)
tree791272428a3135e2788e9a77915a3de581a99513 /src/pdf/SkPDFGraphicState.h
parentbd960c7f1915c73ceec1c1ee7cd23b48107cb0bd (diff)
Revert "[PDF] Move most of the headers to be private."
This reverts r3457 TBR=epoger@google.com Review URL: https://codereview.appspot.com/5866051 git-svn-id: http://skia.googlecode.com/svn/trunk@3458 2bbb7eff-a529-9590-31e7-b0007b416f81
Diffstat (limited to 'src/pdf/SkPDFGraphicState.h')
-rw-r--r--src/pdf/SkPDFGraphicState.h101
1 files changed, 0 insertions, 101 deletions
diff --git a/src/pdf/SkPDFGraphicState.h b/src/pdf/SkPDFGraphicState.h
deleted file mode 100644
index af01737276..0000000000
--- a/src/pdf/SkPDFGraphicState.h
+++ /dev/null
@@ -1,101 +0,0 @@
-
-/*
- * Copyright 2010 The Android Open Source Project
- *
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-
-#ifndef SkPDFGraphicState_DEFINED
-#define SkPDFGraphicState_DEFINED
-
-#include "SkPaint.h"
-#include "SkPDFTypes.h"
-#include "SkTemplates.h"
-#include "SkThread.h"
-
-class SkPDFFormXObject;
-
-/** \class SkPDFGraphicState
- SkPaint objects roughly correspond to graphic state dictionaries that can
- be installed. So that a given dictionary is only output to the pdf file
- once, we want to canonicalize them. Static methods in this class manage
- a weakly referenced set of SkPDFGraphicState objects: when the last
- reference to a SkPDFGraphicState is removed, it removes itself from the
- static set of objects.
-
-*/
-class SkPDFGraphicState : public SkPDFDict {
-public:
- virtual ~SkPDFGraphicState();
-
- virtual void getResources(SkTDArray<SkPDFObject*>* resourceList);
-
- // Override emitObject and getOutputSize so that we can populate
- // the dictionary on demand.
- virtual void emitObject(SkWStream* stream, SkPDFCatalog* catalog,
- bool indirect);
- virtual size_t getOutputSize(SkPDFCatalog* catalog, bool indirect);
-
- /** Get the graphic state for the passed SkPaint. The reference count of
- * the object is incremented and it is the caller's responsibility to
- * unreference it when done. This is needed to accommodate the weak
- * reference pattern used when the returned object is new and has no
- * other references.
- * @param paint The SkPaint to emulate.
- */
- static SkPDFGraphicState* GetGraphicStateForPaint(const SkPaint& paint);
-
- /** Make a graphic state that only sets the passed soft mask. The
- * reference count of the object is incremented and it is the caller's
- * responsibility to unreference it when done.
- * @param sMask The form xobject to use as a soft mask.
- * @param invert Indicates if the alpha of the sMask should be inverted.
- */
- static SkPDFGraphicState* GetSMaskGraphicState(SkPDFFormXObject* sMask,
- bool invert);
-
- /** Get a graphic state that only unsets the soft mask. The reference
- * count of the object is incremented and it is the caller's responsibility
- * to unreference it when done. This is needed to accommodate the weak
- * reference pattern used when the returned object is new and has no
- * other references.
- */
- static SkPDFGraphicState* GetNoSMaskGraphicState();
-
-private:
- const SkPaint fPaint;
- SkTDArray<SkPDFObject*> fResources;
- bool fPopulated;
- bool fSMask;
-
- class GSCanonicalEntry {
- public:
- SkPDFGraphicState* fGraphicState;
- const SkPaint* fPaint;
-
- bool operator==(const GSCanonicalEntry& b) const;
- explicit GSCanonicalEntry(SkPDFGraphicState* gs)
- : fGraphicState(gs),
- fPaint(&gs->fPaint) {}
- explicit GSCanonicalEntry(const SkPaint* paint)
- : fGraphicState(NULL),
- fPaint(paint) {}
- };
-
- // This should be made a hash table if performance is a problem.
- static SkTDArray<GSCanonicalEntry>& CanonicalPaints();
- static SkBaseMutex& CanonicalPaintsMutex();
-
- SkPDFGraphicState();
- explicit SkPDFGraphicState(const SkPaint& paint);
-
- void populateDict();
-
- static SkPDFObject* GetInvertFunction();
-
- static int Find(const SkPaint& paint);
-};
-
-#endif