DataInput
Date: 2017-05-25

org.apache.fontbox.cff

## Class DataInput

- java.lang.Object
- - org.apache.fontbox.cff.DataInput

- Direct Known Subclasses:
    CFFDataInput

      public class DataInput
      extends java.lang.Object

  This class contains some functionality to read a byte buffer.

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `DataInput(byte[] buffer)` Constructor.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `int` | `getPosition()` Returns the current position.
    `java.lang.String` | `getString()` Returns the buffer as an ISO-8859-1 string.
    `boolean` | `hasRemaining()` Determines if there are any bytes left to read or not.
    `int` | `length()`
    `int` | `peekUnsignedByte(int offset)` Peeks one single unsigned byte from the buffer.
    `byte` | `readByte()` Read one single byte from the buffer.
    `byte[]` | `readBytes(int length)` Read a number of single byte values from the buffer.
    `int` | `readInt()` Read one single int (4 bytes) from the buffer.
    `short` | `readShort()` Read one single short value from the buffer.
    `int` | `readUnsignedByte()` Read one single unsigned byte from the buffer.
    `int` | `readUnsignedShort()` Read one single unsigned short (2 bytes) value from the buffer.
    `void` | `setPosition(int position)` Sets the current position to the given value.

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

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

- - ### Constructor Detail

    - #### DataInput

          public DataInput(byte[] buffer)

      Constructor.
      Parameters:
        `buffer` - the buffer to be read

  - ### Method Detail

    - #### hasRemaining

          public boolean hasRemaining()

      Determines if there are any bytes left to read or not.
      Returns:
        true if there are any bytes left to read

    - #### getPosition

          public int getPosition()

      Returns the current position.
      Returns:
        current position

    - #### setPosition

          public void setPosition(int position)

      Sets the current position to the given value.
      Parameters:
        `position` - the given position

    - #### getString

          public java.lang.String getString()
                                     throws java.io.IOException

      Returns the buffer as an ISO-8859-1 string.
      Returns:
        the buffer as string
      Throws:
        `java.io.IOException` - if an error occurs during reading

    - #### readByte

          public byte readByte()
                        throws java.io.IOException

      Read one single byte from the buffer.
      Returns:
        the byte
      Throws:
        `java.io.IOException` - if an error occurs during reading

    - #### readUnsignedByte

          public int readUnsignedByte()
                               throws java.io.IOException

      Read one single unsigned byte from the buffer.
      Returns:
        the unsigned byte as int
      Throws:
        `java.io.IOException` - if an error occurs during reading

    - #### peekUnsignedByte

          public int peekUnsignedByte(int offset)
                               throws java.io.IOException

      Peeks one single unsigned byte from the buffer.
      Returns:
        the unsigned byte as int
      Throws:
        `java.io.IOException` - if an error occurs during reading

    - #### readShort

          public short readShort()
                          throws java.io.IOException

      Read one single short value from the buffer.
      Returns:
        the short value
      Throws:
        `java.io.IOException` - if an error occurs during reading

    - #### readUnsignedShort

          public int readUnsignedShort()
                                throws java.io.IOException

      Read one single unsigned short (2 bytes) value from the buffer.
      Returns:
        the unsigned short value as int
      Throws:
        `java.io.IOException` - if an error occurs during reading

    - #### readInt

          public int readInt()
                      throws java.io.IOException

      Read one single int (4 bytes) from the buffer.
      Returns:
        the int value
      Throws:
        `java.io.IOException` - if an error occurs during reading

    - #### readBytes

          public byte[] readBytes(int length)
                           throws java.io.IOException

      Read a number of single byte values from the buffer.
      Parameters:
        `length` - the number of bytes to be read
      Returns:
        an array with containing the bytes from the buffer
      Throws:
        `java.io.IOException` - if an error occurs during reading

    - #### length

          public int length()