org.apache.fop.afp.goca

## Class GraphicsData

- java.lang.Object
- - org.apache.fop.afp.modca.AbstractAFPObject
  - - org.apache.fop.afp.modca.AbstractStructuredObject
    - - org.apache.fop.afp.modca.AbstractTripletStructuredObject
      - - org.apache.fop.afp.modca.AbstractNamedAFPObject
        - - org.apache.fop.afp.goca.AbstractGraphicsDrawingOrderContainer
          - - org.apache.fop.afp.goca.GraphicsData

All Implemented Interfaces:
  Completable, Startable, Streamable, StructuredData

    public final class GraphicsData
    extends AbstractGraphicsDrawingOrderContainer

A GOCA graphics data

### Nested Class Summary

### Nested classes/interfaces inherited from class org.apache.fop.afp.modca.AbstractAFPObject

`AbstractAFPObject.Category, AbstractAFPObject.Type`

### Field Summary

Fields
`static int` `MAX_DATA_LEN` the maximum graphics data length

### Fields inherited from class org.apache.fop.afp.goca.AbstractGraphicsDrawingOrderContainer

`objects`

### Fields inherited from class org.apache.fop.afp.modca.AbstractNamedAFPObject

`name`

### Fields inherited from class org.apache.fop.afp.modca.AbstractTripletStructuredObject

`triplets`

### Fields inherited from class org.apache.fop.afp.modca.AbstractAFPObject

`LOG, SF_CLASS, SF_HEADER_LENGTH`

### Constructor Summary

Constructors
Constructor and Description
`GraphicsData()` Main constructor

### Method Summary

All Methods Instance Methods Concrete Methods
`void` `addObject(StructuredData object)` Adds a given graphics object to this container
`void` `addSegment(GraphicsChainedSegment segment)` Adds the given segment to this graphics data
`String` `createSegmentName()` Returns a new segment name
`int` `getDataLength()` Returns the current data length
`GraphicsChainedSegment` `newSegment()` Creates a new graphics segment.
`GraphicsChainedSegment` `newSegment(boolean appended, boolean prologPresent)` Creates a new graphics segment.
`StructuredData` `removeCurrentSegment()` Removes the current segment from this graphics data
`void` `setSegmentedData(boolean segmented)` Sets the indicator that this instance is a part of a series of segmented data chunks.
`String` `toString()`
`void` `writeToStream(OutputStream os)` DataStream objects must implement the writeToStream() method to write its data to the given OutputStream

### Methods inherited from class org.apache.fop.afp.goca.AbstractGraphicsDrawingOrderContainer

`addAll, isComplete, isStarted, removeLast, setComplete, setStarted, writeContent, writeStart`

### Methods inherited from class org.apache.fop.afp.modca.AbstractNamedAFPObject

`copySF, getName, getNameBytes, getNameLength, setName`

### Methods inherited from class org.apache.fop.afp.modca.AbstractTripletStructuredObject

`addTriplet, addTriplets, getFullyQualifiedName, getTripletDataLength, getTriplets, hasTriplet, hasTriplets, setComment, setFullyQualifiedName, setFullyQualifiedName, setObjectClassification, writeTriplets`

### Methods inherited from class org.apache.fop.afp.modca.AbstractStructuredObject

`writeEnd`

### Methods inherited from class org.apache.fop.afp.modca.AbstractAFPObject

`copySF, truncate, writeChunksToStream, writeObjects`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

### Field Detail

#### MAX_DATA_LEN

    public static final int MAX_DATA_LEN

the maximum graphics data length

See Also:
  Constant Field Values

### Constructor Detail

#### GraphicsData

    public GraphicsData()

Main constructor

### Method Detail

#### getDataLength

    public int getDataLength()

Returns the current data length

Specified by:
  `getDataLength` in interface `StructuredData`
Overrides:
  `getDataLength` in class `AbstractGraphicsDrawingOrderContainer`
Returns:
  the current data length of this container including all enclosed objects (and their containers)

#### setSegmentedData

    public void setSegmentedData(boolean segmented)

Sets the indicator that this instance is a part of a series of segmented data chunks. This indirectly sets the SegFlag on the SFI header.

Parameters:
  `segmented` - true if this data object is not the last of the series

#### createSegmentName

    public String createSegmentName()

Returns a new segment name

Returns:
  a new segment name

#### newSegment

    public GraphicsChainedSegment newSegment()

Creates a new graphics segment.

Returns:
  a newly created graphics segment

#### newSegment

    public GraphicsChainedSegment newSegment(boolean appended,
                                             boolean prologPresent)

Creates a new graphics segment.

Parameters:
  `appended` - true if this segment is appended to the previous one
  `prologPresent` - true if started with a prolog
Returns:
  a newly created graphics segment

#### addObject

    public void addObject(StructuredData object)

Adds a given graphics object to this container

Overrides:
  `addObject` in class `AbstractGraphicsDrawingOrderContainer`
Parameters:
  `object` - the structured data object

#### removeCurrentSegment

    public StructuredData removeCurrentSegment()

Removes the current segment from this graphics data

Returns:
  the current segment from this graphics data

#### writeToStream

    public void writeToStream(OutputStream os)
                       throws IOException

DataStream objects must implement the writeToStream() method to write its data to the given OutputStream

Specified by:
  `writeToStream` in interface `Streamable`
Overrides:
  `writeToStream` in class `AbstractStructuredObject`
Parameters:
  `os` - the outputsteam stream
Throws:
  `IOException` - an I/O exception of some sort has occurred.

#### toString

    public String toString()

Overrides:
  `toString` in class `AbstractNamedAFPObject`

#### addSegment

    public void addSegment(GraphicsChainedSegment segment)

Adds the given segment to this graphics data

Parameters:
  `segment` - a graphics chained segment