PoDoFo  0.9.1
Public Member Functions | Protected Member Functions
PoDoFo::PdfDataType Class Reference

#include <PdfDataType.h>

Inheritance diagram for PoDoFo::PdfDataType:
PoDoFo::PdfData PoDoFo::PdfName PoDoFo::PdfReference PoDoFo::PdfString

List of all members.

Public Member Functions

virtual void Write (PdfOutputDevice *pDevice, EPdfWriteMode eWriteMode, const PdfEncrypt *pEncrypt=NULL) const =0
virtual bool IsDirty () const
virtual void SetDirty (bool bDirty)
void SetImmutable (bool bImmutable)
bool GetImmutable () const

Protected Member Functions

 PdfDataType ()
void AssertMutable () const

Detailed Description

An interface for all PDF datatype classes.

See also:
PdfName
PdfArray
PdfReference
PdfVariant
PdfDictionary
PdfString

Constructor & Destructor Documentation

Create a new PdfDataType. Can only be called by subclasses


Member Function Documentation

void PoDoFo::PdfDataType::AssertMutable ( ) const [inline, protected]

Will throw an exception if called on an immutable object, so this should be called before actually changing a value!

bool PoDoFo::PdfDataType::GetImmutable ( ) const [inline]

Retrieve if an object is immutable.

This is used by PdfImmediateWriter and PdfStreamedDocument so that no keys can be added to an object after setting stream data on it.

Returns:
true if the object is immutable
bool PoDoFo::PdfDataType::IsDirty ( ) const [virtual]

The dirty flag is set if this variant has been modified after construction.

Usually the dirty flag is also set if you call any non-const member function as we cannot determine if you actually changed something or not.

Returns:
true if the value is dirty and has been modified since construction
void PoDoFo::PdfDataType::SetDirty ( bool  bDirty) [virtual]

Sets the dirty flag of this PdfVariant

Parameters:
bDirtytrue if this PdfVariant has been modified from the outside
See also:
IsDirty
void PoDoFo::PdfDataType::SetImmutable ( bool  bImmutable) [inline]

Sets this object to immutable, so that no keys can be edited or changed.

Parameters:
bImmutableif true set the object to be immutable

This is used by PdfImmediateWriter and PdfStreamedDocument so that no keys can be added to an object after setting stream data on it.

virtual void PoDoFo::PdfDataType::Write ( PdfOutputDevice pDevice,
EPdfWriteMode  eWriteMode,
const PdfEncrypt pEncrypt = NULL 
) const [pure virtual]

Write the complete datatype to a file.

Parameters:
pDevicewrite the object to this device
eWriteModeadditional options for writing this object
pEncryptan encryption object which is used to encrypt this object or NULL to not encrypt this object

Implemented in PoDoFo::PdfString, PoDoFo::PdfName, PoDoFo::PdfReference, and PoDoFo::PdfData.