# org.pdfclown.objects.PdfDataObject Class Reference

PDF data object. More...

Inheritance diagram for org.pdfclown.objects.PdfDataObject:

List of all members.

## Public Member Functions
abstract PdfObject | Accept (IVisitor visitor, object data)
| Accepts a visit.
virtual PdfObject | Clone (File context)
| Creates a deep copy of this object within the specified file context.
object | Clone ()
| Creates a shallow copy of this object.
PdfDataObject | Resolve ()
| Ensures this object to be resolved into its corresponding data object.
abstract PdfObject | Swap (PdfObject other)
| Swaps contents between this object and the other one.
PdfDirectObject | Unresolve ()
| Ensures this object to be unresolved into its corresponding indirect reference, if available.
abstract void | WriteTo (IOutputStream stream, File context)
| Serializes this object to the specified stream.
## Static Public Member Functions
static PdfObject | Clone (PdfObject @object, File context)
| Gets the clone of the specified object, registered inside the specified file context.
static PdfDataObject | Resolve (PdfObject @object)
| Ensures an indirect reference to be resolved into its corresponding data object.
static PdfDirectObject | Unresolve (PdfDataObject @object)
| Ensures a data object to be unresolved into its corresponding indirect reference, if available.
## Protected Member Functions
| PdfDataObject ()
internal void | Update ()
| Updates the state of this object.
## Properties
virtual PdfIndirectObject | Container`[get]`
| Gets the indirect object containing this object.
PdfIndirectObject | DataContainer`[get]`
| Gets the indirect object containing the data associated to this object.
virtual File | File`[get]`
| Gets the file containing this object.
virtual PdfIndirectObject | IndirectObject`[get]`
| Gets the indirect object corresponding to this object.
abstract PdfObject | Parent`[get, set]`
| Gets/Sets the parent of this object.
virtual PdfReference | Reference`[get]`
| Gets the indirect reference of this object.
abstract bool | Updateable`[get, set]`
| Gets/Sets whether the detection of object state changes is enabled.
abstract bool | Updated`[get, set]`
| Gets/Sets whether the initial state of this object has been modified.
abstract internal bool | Virtual`[get, set]`
| Gets/Sets whether this object acts like a null-object placeholder.

##

PDF data object.

## Constructor & Destructor Documentation

org.pdfclown.objects.PdfDataObject.PdfDataObject | ( |  | ) | `[protected]`

## Member Function Documentation

abstract PdfObject org.pdfclown.objects.PdfObject.Accept | ( | IVisitor | visitor,
|  | object | data |
| ) |  |  | `[pure virtual, inherited]`

Accepts a visit.

Parameters:

  | visitor | Visiting object.
  | data | Supplemental data.

Returns:
  Result object.

Implements org.pdfclown.objects.IVisitable.

Implemented in org.pdfclown.objects.PdfArray, org.pdfclown.objects.PdfDictionary, org.pdfclown.objects.PdfIndirectObject, org.pdfclown.objects.PdfReference, org.pdfclown.objects.PdfStream, org.pdfclown.tokens.ObjectStream, and org.pdfclown.tokens.XRefStream.

Referenced by org.pdfclown.files.IndirectObjects.AddExternal(), org.pdfclown.objects.Visitor.Visit(), and org.pdfclown.objects.Cloner.Visit().

virtual PdfObject org.pdfclown.objects.PdfObject.Clone | ( | File | context | ) | `[virtual, inherited]`

Creates a deep copy of this object within the specified file context.

Reimplemented in org.pdfclown.objects.PdfSimpleObject< TValue >.

References org.pdfclown.files.File.Cloner.

object org.pdfclown.objects.PdfObject.Clone | ( |  | ) | `[inherited]`

Creates a shallow copy of this object.

References org.pdfclown.objects.PdfObject.Parent.

static PdfObject org.pdfclown.objects.PdfObject.Clone | ( | PdfObject @ | object,
|  | File | context |
| ) |  |  | `[static, inherited]`

Gets the clone of the specified object, registered inside the specified file context.

Parameters:

  | object | Object to clone into the specified file context.
  | context | File context of the cloning.

Referenced by org.pdfclown.objects.PdfObjectWrapper< PdfTextString >.Clone(), and org.pdfclown.objects.Cloner.Visit().

PdfDataObject org.pdfclown.objects.PdfObject.Resolve | ( |  | ) | `[inherited]`

Ensures this object to be resolved into its corresponding data object.

See also:
  Unresolve()

References org.pdfclown.objects.PdfReference.DataObject.

static PdfDataObject org.pdfclown.objects.PdfObject.Resolve | ( | PdfObject @ | object | ) | `[static, inherited]`

Ensures an indirect reference to be resolved into its corresponding data object.

Parameters:

  | object | Object to resolve.

Referenced by org.pdfclown.objects.Tree< TKey, TValue >.Remove(), org.pdfclown.documents.Pages.Remove(), org.pdfclown.documents.Page.ToXObject(), org.pdfclown.documents.contents.xObjects.XObject.Wrap(), org.pdfclown.documents.multimedia.Rendition.Wrap(), org.pdfclown.documents.contents.PropertyList.Wrap(), org.pdfclown.documents.contents.colorSpaces.Pattern.Wrap(), org.pdfclown.documents.multimedia.MediaOffset.Wrap(), org.pdfclown.documents.multimedia.MediaClip.Wrap(), org.pdfclown.documents.interchange.access.LanguageIdentifier.Wrap(), org.pdfclown.documents.contents.layers.LayerNode.Wrap(), org.pdfclown.documents.functions.Function.Wrap(), org.pdfclown.documents.files.FileSpecification.Wrap(), org.pdfclown.documents.interaction.navigation.document.Destination.Wrap(), org.pdfclown.documents.contents.colorSpaces.ColorSpace.Wrap(), org.pdfclown.documents.interaction.annotations.Annotation.Wrap(), and org.pdfclown.documents.interaction.actions.Action.Wrap().

abstract PdfObject org.pdfclown.objects.PdfObject.Swap | ( | PdfObject | other | ) | `[pure virtual, inherited]`

Swaps contents between this object and the other one.

Parameters:

  | other | Object whose contents have to be swapped with this one's.

Returns:
  This object.

Implemented in org.pdfclown.objects.PdfArray, org.pdfclown.objects.PdfDictionary, org.pdfclown.objects.PdfIndirectObject, org.pdfclown.objects.PdfReference, org.pdfclown.objects.PdfSimpleObject< TValue >, and org.pdfclown.objects.PdfStream.

PdfDirectObject org.pdfclown.objects.PdfObject.Unresolve | ( |  | ) | `[inherited]`

Ensures this object to be unresolved into its corresponding indirect reference, if available.

Returns:
  PdfReference, if available;

      this

  , otherwise.

See also:
  Resolve()

static PdfDirectObject org.pdfclown.objects.PdfObject.Unresolve | ( | PdfDataObject @ | object | ) | `[static, inherited]`

Ensures a data object to be unresolved into its corresponding indirect reference, if available.

Parameters:

  | object | Object to unresolve.

Returns:
  PdfReference, if available;

      object

  , otherwise.

internal void org.pdfclown.objects.PdfObject.Update | ( |  | ) | `[protected, inherited]`

Updates the state of this object.

Referenced by org.pdfclown.objects.PdfStream.Swap(), org.pdfclown.objects.PdfDictionary.Swap(), and org.pdfclown.objects.PdfArray.Swap().

abstract void org.pdfclown.objects.PdfObject.WriteTo | ( | IOutputStream | stream,
|  | File | context |
| ) |  |  | `[pure virtual, inherited]`

Serializes this object to the specified stream.

Parameters:

  | stream | Target stream.
  | context | File context.

Implemented in org.pdfclown.objects.PdfArray, org.pdfclown.objects.PdfDictionary, org.pdfclown.objects.PdfIndirectObject, org.pdfclown.objects.PdfReference, org.pdfclown.objects.PdfStream, org.pdfclown.tokens.ObjectStream, and org.pdfclown.tokens.XRefStream.

## Property Documentation

virtual PdfIndirectObject org.pdfclown.objects.PdfObject.Container`[get, inherited]`

Gets the indirect object containing this object.

See also:
  DataContainer, IndirectObject

Reimplemented in org.pdfclown.objects.PdfIndirectObject.

Referenced by org.pdfclown.tokens.CompressedWriter.WriteIncremental().

PdfIndirectObject org.pdfclown.objects.PdfObject.DataContainer`[get, inherited]`

Gets the indirect object containing the data associated to this object.

See also:
  Container, IndirectObject

virtual File org.pdfclown.objects.PdfObject.File`[get, inherited]`

Gets the file containing this object.

Reimplemented in org.pdfclown.objects.PdfIndirectObject.

Referenced by org.pdfclown.objects.Cloner.Visit().

virtual PdfIndirectObject org.pdfclown.objects.PdfObject.IndirectObject`[get, inherited]`

Gets the indirect object corresponding to this object.

See also:
  Container, DataContainer

Reimplemented in org.pdfclown.objects.PdfIndirectObject, and org.pdfclown.objects.PdfReference.

abstract PdfObject org.pdfclown.objects.PdfObject.Parent`[get, set, inherited]`

Gets/Sets the parent of this object.

See also:
  Container

Reimplemented in org.pdfclown.objects.PdfArray, org.pdfclown.objects.PdfDictionary, org.pdfclown.objects.PdfIndirectObject, org.pdfclown.objects.PdfReference, org.pdfclown.objects.PdfSimpleObject< TValue >, and org.pdfclown.objects.PdfStream.

Referenced by org.pdfclown.objects.PdfObject.Clone().

virtual PdfReference org.pdfclown.objects.PdfObject.Reference`[get, inherited]`

Gets the indirect reference of this object.

Reimplemented in org.pdfclown.objects.PdfIndirectObject, and org.pdfclown.objects.PdfReference.

Referenced by org.pdfclown.objects.PdfIndirectObject.Compress(), org.pdfclown.objects.Tree< TKey, TValue >.Remove(), and org.pdfclown.objects.Cloner.Visit().

abstract bool org.pdfclown.objects.PdfObject.Updateable`[get, set, inherited]`

Gets/Sets whether the detection of object state changes is enabled.

Reimplemented in org.pdfclown.objects.PdfArray, org.pdfclown.objects.PdfDictionary, org.pdfclown.objects.PdfIndirectObject, org.pdfclown.objects.PdfReference, org.pdfclown.objects.PdfSimpleObject< TValue >, and org.pdfclown.objects.PdfStream.

abstract bool org.pdfclown.objects.PdfObject.Updated`[get, set, inherited]`

Gets/Sets whether the initial state of this object has been modified.

Reimplemented in org.pdfclown.objects.PdfArray, org.pdfclown.objects.PdfDictionary, org.pdfclown.objects.PdfIndirectObject, org.pdfclown.objects.PdfReference, org.pdfclown.objects.PdfSimpleObject< TValue >, and org.pdfclown.objects.PdfStream.

abstract internal bool org.pdfclown.objects.PdfObject.Virtual`[get, set, protected, inherited]`

Gets/Sets whether this object acts like a null-object placeholder.

Reimplemented in org.pdfclown.objects.PdfArray, org.pdfclown.objects.PdfDictionary, org.pdfclown.objects.PdfIndirectObject, org.pdfclown.objects.PdfReference, org.pdfclown.objects.PdfSimpleObject< TValue >, and org.pdfclown.objects.PdfStream.

Referenced by org.pdfclown.objects.PdfDictionary.WriteTo(), and org.pdfclown.objects.PdfArray.WriteTo().

Copyright 2006-2013 Stefano Chizzolini. For more information, please visit PDF Clown home page.