LibreOffice Module vcl (master)  1
Public Member Functions | Private Attributes | List of all members
vcl::filter::PDFObjectElement Class Referencefinal

Indirect object: something with a unique ID. More...

#include <pdfdocument.hxx>

Inheritance diagram for vcl::filter::PDFObjectElement:
[legend]
Collaboration diagram for vcl::filter::PDFObjectElement:
[legend]

Public Member Functions

 PDFObjectElement (PDFDocument &rDoc, double fObjectValue, double fGenerationValue)
 
bool Read (SvStream &rStream) override
 
PDFElementLookup (const OString &rDictionaryKey)
 
PDFObjectElementLookupObject (const OString &rDictionaryKey)
 
double GetObjectValue () const
 
void SetDictionaryOffset (sal_uInt64 nDictionaryOffset)
 
sal_uInt64 GetDictionaryOffset ()
 
void SetDictionaryLength (sal_uInt64 nDictionaryLength)
 
sal_uInt64 GetDictionaryLength ()
 
PDFDictionaryElementGetDictionary ()
 
void SetDictionary (PDFDictionaryElement *pDictionaryElement)
 
void SetNumberElement (PDFNumberElement *pNumberElement)
 
PDFNumberElementGetNumberElement () const
 
const std::map< OString, PDFElement * > & GetDictionaryItems ()
 Get access to the parsed key-value items from the object dictionary. More...
 
const std::vector< PDFReferenceElement * > & GetDictionaryReferences () const
 
void AddDictionaryReference (PDFReferenceElement *pReference)
 
void SetArray (PDFArrayElement *pArrayElement)
 
void SetStream (PDFStreamElement *pStreamElement)
 
PDFStreamElementGetStream () const
 Access to the stream of the object, if it has any. More...
 
void SetArrayOffset (sal_uInt64 nArrayOffset)
 
sal_uInt64 GetArrayOffset () const
 
void SetArrayLength (sal_uInt64 nArrayLength)
 
sal_uInt64 GetArrayLength () const
 
PDFArrayElementGetArray () const
 
void ParseStoredObjects ()
 Parse objects stored in this object stream. More...
 
std::vector< std::unique_ptr< PDFElement > > & GetStoredElements ()
 
SvMemoryStreamGetStreamBuffer () const
 
void SetStreamBuffer (std::unique_ptr< SvMemoryStream > &pStreamBuffer)
 
PDFDocumentGetDocument ()
 
- Public Member Functions inherited from vcl::filter::PDFElement
 PDFElement ()=default
 
virtual ~PDFElement ()=default
 
void setVisiting (bool bVisiting)
 
bool alreadyVisiting () const
 
void setParsing (bool bParsing)
 
bool alreadyParsing () const
 

Private Attributes

PDFDocumentm_rDoc
 The document owning this element. More...
 
double m_fObjectValue
 
double m_fGenerationValue
 
std::map< OString, PDFElement * > m_aDictionary
 
PDFNumberElementm_pNumberElement
 If set, the object contains this number element (outside any dictionary/array). More...
 
sal_uInt64 m_nDictionaryOffset
 Position after the '<<' token. More...
 
sal_uInt64 m_nDictionaryLength
 Length of the dictionary buffer till (before) the '>>' token. More...
 
PDFDictionaryElementm_pDictionaryElement
 
sal_uInt64 m_nArrayOffset
 Position after the '[' token, if m_pArrayElement is set. More...
 
sal_uInt64 m_nArrayLength
 Length of the array buffer till (before) the ']' token. More...
 
PDFArrayElementm_pArrayElement
 The contained direct array, if any. More...
 
PDFStreamElementm_pStreamElement
 The stream of this object, used when this is an object stream. More...
 
std::vector< std::unique_ptr< PDFObjectElement > > m_aStoredElements
 Objects of an object stream. More...
 
std::vector< std::unique_ptr< PDFElement > > m_aElements
 Elements of an object in an object stream. More...
 
std::unique_ptr< SvMemoryStreamm_pStreamBuffer
 Uncompressed buffer of an object in an object stream. More...
 
std::vector< PDFReferenceElement * > m_aDictionaryReferences
 List of all reference elements inside this object's dictionary and nested dictionaries. More...
 

Detailed Description

Indirect object: something with a unique ID.

Definition at line 79 of file pdfdocument.hxx.

Constructor & Destructor Documentation

vcl::filter::PDFObjectElement::PDFObjectElement ( PDFDocument rDoc,
double  fObjectValue,
double  fGenerationValue 
)

Definition at line 2133 of file pdfdocument.cxx.

Member Function Documentation

void vcl::filter::PDFObjectElement::AddDictionaryReference ( PDFReferenceElement pReference)

Definition at line 2547 of file pdfdocument.cxx.

References m_aDictionaryReferences.

Referenced by vcl::filter::PDFDocument::Tokenize().

PDFArrayElement * vcl::filter::PDFObjectElement::GetArray ( ) const
sal_uInt64 vcl::filter::PDFObjectElement::GetArrayLength ( ) const

Definition at line 2521 of file pdfdocument.cxx.

References m_nArrayLength.

Referenced by vcl::PDFWriterImpl::copyExternalResource().

sal_uInt64 vcl::filter::PDFObjectElement::GetArrayOffset ( ) const
PDFDictionaryElement * vcl::filter::PDFObjectElement::GetDictionary ( )
const std::map< OString, PDFElement * > & vcl::filter::PDFObjectElement::GetDictionaryItems ( )

Get access to the parsed key-value items from the object dictionary.

Definition at line 2552 of file pdfdocument.cxx.

References vcl::filter::PDFDocument::GetElements(), m_aDictionary, m_rDoc, and vcl::filter::PDFDictionaryElement::Parse().

Referenced by vcl::PDFWriterImpl::copyExternalResources().

sal_uInt64 vcl::filter::PDFObjectElement::GetDictionaryLength ( )
sal_uInt64 vcl::filter::PDFObjectElement::GetDictionaryOffset ( )
const std::vector< PDFReferenceElement * > & vcl::filter::PDFObjectElement::GetDictionaryReferences ( ) const

Definition at line 2542 of file pdfdocument.cxx.

References m_aDictionaryReferences.

Referenced by vcl::PDFWriterImpl::copyExternalResource().

PDFDocument & vcl::filter::PDFObjectElement::GetDocument ( )

Definition at line 2717 of file pdfdocument.cxx.

References m_rDoc.

Referenced by vcl::PDFWriterImpl::copyExternalResources().

PDFNumberElement * vcl::filter::PDFObjectElement::GetNumberElement ( ) const

Definition at line 2540 of file pdfdocument.cxx.

References m_pNumberElement.

Referenced by vcl::PDFWriterImpl::copyExternalResource().

double vcl::filter::PDFObjectElement::GetObjectValue ( ) const
std::vector< std::unique_ptr< PDFElement > > & vcl::filter::PDFObjectElement::GetStoredElements ( )

Definition at line 2705 of file pdfdocument.cxx.

References m_aElements.

Referenced by ParseStoredObjects().

PDFStreamElement * vcl::filter::PDFObjectElement::GetStream ( ) const

Access to the stream of the object, if it has any.

Definition at line 2567 of file pdfdocument.cxx.

References m_pStreamElement.

Referenced by vcl::PDFWriterImpl::copyExternalResource().

SvMemoryStream * vcl::filter::PDFObjectElement::GetStreamBuffer ( ) const

Definition at line 2710 of file pdfdocument.cxx.

References m_pStreamBuffer.

Referenced by vcl::filter::PDFDocument::WriteCatalogObject().

PDFElement * vcl::filter::PDFObjectElement::Lookup ( const OString &  rDictionaryKey)
PDFObjectElement * vcl::filter::PDFObjectElement::LookupObject ( const OString &  rDictionaryKey)
void vcl::filter::PDFObjectElement::ParseStoredObjects ( )
bool vcl::filter::PDFObjectElement::Read ( SvStream rStream)
overridevirtual

Implements vcl::filter::PDFElement.

Definition at line 2148 of file pdfdocument.cxx.

References m_fGenerationValue, m_fObjectValue, and SAL_INFO.

void vcl::filter::PDFObjectElement::SetArray ( PDFArrayElement pArrayElement)

Definition at line 2560 of file pdfdocument.cxx.

References m_pArrayElement.

Referenced by vcl::filter::PDFDocument::Tokenize().

void vcl::filter::PDFObjectElement::SetArrayLength ( sal_uInt64  nArrayLength)

Definition at line 2519 of file pdfdocument.cxx.

References m_nArrayLength.

Referenced by vcl::filter::PDFDocument::Tokenize().

void vcl::filter::PDFObjectElement::SetArrayOffset ( sal_uInt64  nArrayOffset)

Definition at line 2472 of file pdfdocument.cxx.

References m_nArrayOffset.

Referenced by vcl::filter::PDFDocument::Tokenize().

void vcl::filter::PDFObjectElement::SetDictionary ( PDFDictionaryElement pDictionaryElement)

Definition at line 2530 of file pdfdocument.cxx.

References m_pDictionaryElement.

void vcl::filter::PDFObjectElement::SetDictionaryLength ( sal_uInt64  nDictionaryLength)

Definition at line 2506 of file pdfdocument.cxx.

References m_nDictionaryLength.

void vcl::filter::PDFObjectElement::SetDictionaryOffset ( sal_uInt64  nDictionaryOffset)

Definition at line 2459 of file pdfdocument.cxx.

References m_nDictionaryOffset.

void vcl::filter::PDFObjectElement::SetNumberElement ( PDFNumberElement pNumberElement)

Definition at line 2535 of file pdfdocument.cxx.

References m_pNumberElement.

Referenced by vcl::filter::PDFDocument::Tokenize().

void vcl::filter::PDFObjectElement::SetStream ( PDFStreamElement pStreamElement)

Definition at line 2562 of file pdfdocument.cxx.

References m_pStreamElement.

Referenced by vcl::filter::PDFDocument::Tokenize().

void vcl::filter::PDFObjectElement::SetStreamBuffer ( std::unique_ptr< SvMemoryStream > &  pStreamBuffer)

Definition at line 2712 of file pdfdocument.cxx.

References m_pStreamBuffer.

Referenced by ParseStoredObjects().

Member Data Documentation

std::map<OString, PDFElement*> vcl::filter::PDFObjectElement::m_aDictionary
private
std::vector<PDFReferenceElement*> vcl::filter::PDFObjectElement::m_aDictionaryReferences
private

List of all reference elements inside this object's dictionary and nested dictionaries.

Definition at line 109 of file pdfdocument.hxx.

Referenced by AddDictionaryReference(), and GetDictionaryReferences().

std::vector<std::unique_ptr<PDFElement> > vcl::filter::PDFObjectElement::m_aElements
private

Elements of an object in an object stream.

Definition at line 104 of file pdfdocument.hxx.

Referenced by GetStoredElements(), and Lookup().

std::vector<std::unique_ptr<PDFObjectElement> > vcl::filter::PDFObjectElement::m_aStoredElements
private

Objects of an object stream.

Definition at line 102 of file pdfdocument.hxx.

Referenced by ParseStoredObjects().

double vcl::filter::PDFObjectElement::m_fGenerationValue
private

Definition at line 84 of file pdfdocument.hxx.

Referenced by Read().

double vcl::filter::PDFObjectElement::m_fObjectValue
private

Definition at line 83 of file pdfdocument.hxx.

Referenced by GetObjectValue(), and Read().

sal_uInt64 vcl::filter::PDFObjectElement::m_nArrayLength
private

Length of the array buffer till (before) the ']' token.

Definition at line 96 of file pdfdocument.hxx.

Referenced by GetArrayLength(), and SetArrayLength().

sal_uInt64 vcl::filter::PDFObjectElement::m_nArrayOffset
private

Position after the '[' token, if m_pArrayElement is set.

Definition at line 94 of file pdfdocument.hxx.

Referenced by GetArrayOffset(), and SetArrayOffset().

sal_uInt64 vcl::filter::PDFObjectElement::m_nDictionaryLength
private

Length of the dictionary buffer till (before) the '>>' token.

Definition at line 91 of file pdfdocument.hxx.

Referenced by GetDictionaryLength(), and SetDictionaryLength().

sal_uInt64 vcl::filter::PDFObjectElement::m_nDictionaryOffset
private

Position after the '<<' token.

Definition at line 89 of file pdfdocument.hxx.

Referenced by GetDictionaryOffset(), and SetDictionaryOffset().

PDFArrayElement* vcl::filter::PDFObjectElement::m_pArrayElement
private

The contained direct array, if any.

Definition at line 98 of file pdfdocument.hxx.

Referenced by GetArray(), and SetArray().

PDFDictionaryElement* vcl::filter::PDFObjectElement::m_pDictionaryElement
private

Definition at line 92 of file pdfdocument.hxx.

Referenced by GetDictionary(), and SetDictionary().

PDFNumberElement* vcl::filter::PDFObjectElement::m_pNumberElement
private

If set, the object contains this number element (outside any dictionary/array).

Definition at line 87 of file pdfdocument.hxx.

Referenced by GetNumberElement(), and SetNumberElement().

std::unique_ptr<SvMemoryStream> vcl::filter::PDFObjectElement::m_pStreamBuffer
private

Uncompressed buffer of an object in an object stream.

Definition at line 106 of file pdfdocument.hxx.

Referenced by GetStreamBuffer(), and SetStreamBuffer().

PDFStreamElement* vcl::filter::PDFObjectElement::m_pStreamElement
private

The stream of this object, used when this is an object stream.

Definition at line 100 of file pdfdocument.hxx.

Referenced by GetStream(), ParseStoredObjects(), and SetStream().

PDFDocument& vcl::filter::PDFObjectElement::m_rDoc
private

The document owning this element.

Definition at line 82 of file pdfdocument.hxx.

Referenced by GetDictionary(), GetDictionaryItems(), GetDictionaryLength(), GetDictionaryOffset(), GetDocument(), Lookup(), and ParseStoredObjects().


The documentation for this class was generated from the following files: