Bouncy Castle Cryptography Library 1.45

## org.bouncycastle.crypto.tls
Class ByteQueue

    java.lang.Object
      org.bouncycastle.crypto.tls.ByteQueue

    public class ByteQueue

extends java.lang.Object

A queue for bytes.

This file could be more optimized.

Constructor Summary
`ByteQueue()`

Method Summary
`void` `addData(byte[] data, int offset, int len)` Add some data to our buffer.
`static int` `nextTwoPow(int i)`
`void` `read(byte[] buf, int offset, int len, int skip)` Read data from the buffer.
`void` `removeData(int i)` Remove some bytes from our data from the beginning.
`int` `size()`

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

Constructor Detail

### ByteQueue

    public ByteQueue()

Method Detail

### nextTwoPow

    public static final int nextTwoPow(int i)

  Returns:
    The smallest number which can be written as 2^x which is bigger than i.

### read

    public void read(byte[] buf,
                     int offset,
                     int len,
                     int skip)

  Read data from the buffer.

  Parameters:
    `buf` - The buffer where the read data will be copied to.
    `offset` - How many bytes to skip at the beginning of buf.
    `len` - How many bytes to read at all.
    `skip` - How many bytes from our data to skip.

### addData

    public void addData(byte[] data,
                        int offset,
                        int len)

  Add some data to our buffer.

  Parameters:
    `data` - A byte-array to read data from.
    `offset` - How many bytes to skip at the beginning of the array.
    `len` - How many bytes to read from the array.

### removeData

    public void removeData(int i)

  Remove some bytes from our data from the beginning.

  Parameters:
    `i` - How many bytes to remove.

### size

    public int size()

  Returns:
    The number of bytes which are available in this buffer.

Bouncy Castle Cryptography Library 1.45