## org.apache.poi.ddf
Class EscherSpRecord

    java.lang.Object
      org.apache.poi.ddf.EscherRecord
          org.apache.poi.ddf.EscherSpRecord

    public class EscherSpRecord

extends EscherRecord

Together the the EscherOptRecord this record defines some of the basic properties of a shape.

Author:
  Glen Stampoultzis (glens at apache.org)

Field Summary
`static int` `FLAG_BACKGROUND`
`static int` `FLAG_CHILD`
`static int` `FLAG_CONNECTOR`
`static int` `FLAG_DELETED`
`static int` `FLAG_FLIPHORIZ`
`static int` `FLAG_FLIPVERT`
`static int` `FLAG_GROUP`
`static int` `FLAG_HASSHAPETYPE`
`static int` `FLAG_HAVEANCHOR`
`static int` `FLAG_HAVEMASTER`
`static int` `FLAG_OLESHAPE`
`static int` `FLAG_PATRIARCH`
`static java.lang.String` `RECORD_DESCRIPTION`
`static short` `RECORD_ID`

Constructor Summary
`EscherSpRecord()`

Method Summary
`int` `fillFields(byte[] data, int offset, EscherRecordFactory recordFactory)` The contract of this method is to deserialize an escher record including it's children.
`int` `getFlags()` The flags that apply to this shape.
`short` `getRecordId()` Return the current record id.
`java.lang.String` `getRecordName()` Subclasses should return the short name for this escher record.
`int` `getRecordSize()` Subclasses should effeciently return the number of bytes required to serialize the record.
`int` `getShapeId()`
`short` `getShapeType()` Returns shape type.
`int` `serialize(int offset, byte[] data, EscherSerializationListener listener)` This method serializes this escher record into a byte array.
`void` `setFlags(int field_2_flags)` The flags that apply to this shape.
`void` `setShapeId(int field_1_shapeId)` Sets a number that identifies this shape.
`void` `setShapeType(short value)` Sets shape type.
`java.lang.String` `toString()`

Methods inherited from class org.apache.poi.ddf.EscherRecord
`clone, display, fillFields, getChild, getChildRecords, getInstance, getOptions, getVersion, isContainerRecord, readHeader, readInstance, serialize, serialize, setChildRecords, setInstance, setOptions, setRecordId, setVersion`

Methods inherited from class java.lang.Object
`equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Field Detail

### RECORD_ID

    public static final short RECORD_ID

See Also:
  Constant Field Values

### RECORD_DESCRIPTION

    public static final java.lang.String RECORD_DESCRIPTION

See Also:
  Constant Field Values

### FLAG_GROUP

    public static final int FLAG_GROUP

See Also:
  Constant Field Values

### FLAG_CHILD

    public static final int FLAG_CHILD

See Also:
  Constant Field Values

### FLAG_PATRIARCH

    public static final int FLAG_PATRIARCH

See Also:
  Constant Field Values

### FLAG_DELETED

    public static final int FLAG_DELETED

See Also:
  Constant Field Values

### FLAG_OLESHAPE

    public static final int FLAG_OLESHAPE

See Also:
  Constant Field Values

### FLAG_HAVEMASTER

    public static final int FLAG_HAVEMASTER

See Also:
  Constant Field Values

### FLAG_FLIPHORIZ

    public static final int FLAG_FLIPHORIZ

See Also:
  Constant Field Values

### FLAG_FLIPVERT

    public static final int FLAG_FLIPVERT

See Also:
  Constant Field Values

### FLAG_CONNECTOR

    public static final int FLAG_CONNECTOR

See Also:
  Constant Field Values

### FLAG_HAVEANCHOR

    public static final int FLAG_HAVEANCHOR

See Also:
  Constant Field Values

### FLAG_BACKGROUND

    public static final int FLAG_BACKGROUND

See Also:
  Constant Field Values

### FLAG_HASSHAPETYPE

    public static final int FLAG_HASSHAPETYPE

See Also:
  Constant Field Values

Constructor Detail

### EscherSpRecord

    public EscherSpRecord()

Method Detail

### fillFields

    public int fillFields(byte[] data,
                          int offset,
                          EscherRecordFactory recordFactory)

  Description copied from class: `EscherRecord`
  The contract of this method is to deserialize an escher record including it's children.

  Specified by:
    `fillFields` in class `EscherRecord`
  Parameters:
    `data` - The byte array containing the serialized escher records.
    `offset` - The offset into the byte array.
    `recordFactory` - A factory for creating new escher records.
  Returns:
    The number of bytes written.

### serialize

    public int serialize(int offset,
                         byte[] data,
                         EscherSerializationListener listener)

  This method serializes this escher record into a byte array.

  Specified by:
    `serialize` in class `EscherRecord`
  Parameters:
    `offset` - The offset into `data` to start writing the record data to.
    `data` - The byte array to serialize to.
    `listener` - A listener to retrieve start and end callbacks. Use a `NullEscherSerailizationListener` to ignore these events.
  Returns:
    The number of bytes written.
  See Also:
    `NullEscherSerializationListener`

### getRecordSize

    public int getRecordSize()

  Description copied from class: `EscherRecord`
  Subclasses should effeciently return the number of bytes required to serialize the record.

  Specified by:
    `getRecordSize` in class `EscherRecord`
  Returns:
    number of bytes

### getRecordId

    public short getRecordId()

  Description copied from class: `EscherRecord`
  Return the current record id.

  Overrides:
    `getRecordId` in class `EscherRecord`
  Returns:
    The 16 bit record id.

### getRecordName

    public java.lang.String getRecordName()

  Description copied from class: `EscherRecord`
  Subclasses should return the short name for this escher record.

  Specified by:
    `getRecordName` in class `EscherRecord`

### toString

    public java.lang.String toString()

  Overrides:
    `toString` in class `java.lang.Object`
  Returns:
    the string representing this shape.

### getShapeId

    public int getShapeId()

  Returns:
    A number that identifies this shape

### setShapeId

    public void setShapeId(int field_1_shapeId)

  Sets a number that identifies this shape.

### getFlags

    public int getFlags()

  The flags that apply to this shape.

  See Also:
    `FLAG_GROUP`, `FLAG_CHILD`, `FLAG_PATRIARCH`, `FLAG_DELETED`, `FLAG_OLESHAPE`, `FLAG_HAVEMASTER`, `FLAG_FLIPHORIZ`, `FLAG_FLIPVERT`, `FLAG_CONNECTOR`, `FLAG_HAVEANCHOR`, `FLAG_BACKGROUND`, `FLAG_HASSHAPETYPE`

### setFlags

    public void setFlags(int field_2_flags)

  The flags that apply to this shape.

  See Also:
    `FLAG_GROUP`, `FLAG_CHILD`, `FLAG_PATRIARCH`, `FLAG_DELETED`, `FLAG_OLESHAPE`, `FLAG_HAVEMASTER`, `FLAG_FLIPHORIZ`, `FLAG_FLIPVERT`, `FLAG_CONNECTOR`, `FLAG_HAVEANCHOR`, `FLAG_BACKGROUND`, `FLAG_HASSHAPETYPE`

### getShapeType

    public short getShapeType()

  Returns shape type. Must be one of MSOSPT values (see [MS-ODRAW] for details).

  Returns:
    shape type

### setShapeType

    public void setShapeType(short value)

  Sets shape type. Must be one of MSOSPT values (see [MS-ODRAW] for details).

  Parameters:
    `value` - new shape type

Copyright 2012 The Apache Software Foundation or its licensors, as applicable.