diff options
author | vandebo@chromium.org <vandebo@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> | 2012-03-21 20:31:08 +0000 |
---|---|---|
committer | vandebo@chromium.org <vandebo@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> | 2012-03-21 20:31:08 +0000 |
commit | 76d6de0845910f18306125bbcaef7edf6e8f6649 (patch) | |
tree | 791272428a3135e2788e9a77915a3de581a99513 /src/pdf/SkPDFGraphicState.h | |
parent | bd960c7f1915c73ceec1c1ee7cd23b48107cb0bd (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.h | 101 |
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 |