org.biojava.utils.io
Class LargeBuffer

java.lang.Object
  extended by org.biojava.utils.io.LargeBuffer

public class LargeBuffer
extends Object

Wrapper arround MappedByteBuffers to allow long-indexed access to files larger than 2 gigs.

Author:
Matthews Pocock

Constructor Summary
LargeBuffer(FileChannel channel, FileChannel.MapMode mode, long pos, long size)
           
 
Method Summary
 void force()
           
 byte get()
           
 byte get(long pos)
           
 char getChar()
           
 char getChar(long pos)
           
 double getDouble()
           
 double getDouble(long pos)
           
 float getFloat()
           
 float getFloat(long pos)
           
 int getInt()
           
 int getInt(long pos)
           
 long getLong()
           
 long getLong(long pos)
           
 short getShort()
           
 short getShort(long pos)
           
 long position()
           
 void position(long pos)
           
 void put(byte val)
           
 void put(long pos, byte b)
           
 void putChar(char val)
           
 void putChar(long pos, char c)
           
 void putDouble(double val)
           
 void putDouble(long pos, double d)
           
 void putFloat(float val)
           
 void putFloat(long pos, float f)
           
 void putInt(int val)
           
 void putInt(long pos, int i)
           
 void putLong(long val)
           
 void putLong(long pos, long l)
           
 void putShort(long pos, short s)
           
 void putShort(short val)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

LargeBuffer

public LargeBuffer(FileChannel channel,
                   FileChannel.MapMode mode,
                   long pos,
                   long size)
            throws IOException
Throws:
IOException
Method Detail

get

public byte get(long pos)
         throws IndexOutOfBoundsException,
                IOException
Throws:
IndexOutOfBoundsException
IOException

get

public byte get()
         throws IndexOutOfBoundsException,
                IOException
Throws:
IndexOutOfBoundsException
IOException

put

public void put(long pos,
                byte b)
         throws IndexOutOfBoundsException,
                IOException
Throws:
IndexOutOfBoundsException
IOException

put

public void put(byte val)
         throws IndexOutOfBoundsException,
                IOException
Throws:
IndexOutOfBoundsException
IOException

getChar

public char getChar(long pos)
             throws IndexOutOfBoundsException,
                    IOException
Throws:
IndexOutOfBoundsException
IOException

getChar

public char getChar()
             throws IndexOutOfBoundsException,
                    IOException
Throws:
IndexOutOfBoundsException
IOException

putChar

public void putChar(long pos,
                    char c)
             throws IndexOutOfBoundsException,
                    IOException
Throws:
IndexOutOfBoundsException
IOException

putChar

public void putChar(char val)
             throws IndexOutOfBoundsException,
                    IOException
Throws:
IndexOutOfBoundsException
IOException

getDouble

public double getDouble(long pos)
                 throws IndexOutOfBoundsException,
                        IOException
Throws:
IndexOutOfBoundsException
IOException

getDouble

public double getDouble()
                 throws IndexOutOfBoundsException,
                        IOException
Throws:
IndexOutOfBoundsException
IOException

putDouble

public void putDouble(long pos,
                      double d)
               throws IndexOutOfBoundsException,
                      IOException
Throws:
IndexOutOfBoundsException
IOException

putDouble

public void putDouble(double val)
               throws IndexOutOfBoundsException,
                      IOException
Throws:
IndexOutOfBoundsException
IOException

getFloat

public float getFloat(long pos)
               throws IndexOutOfBoundsException,
                      IOException
Throws:
IndexOutOfBoundsException
IOException

getFloat

public float getFloat()
               throws IndexOutOfBoundsException,
                      IOException
Throws:
IndexOutOfBoundsException
IOException

putFloat

public void putFloat(long pos,
                     float f)
              throws IndexOutOfBoundsException,
                     IOException
Throws:
IndexOutOfBoundsException
IOException

putFloat

public void putFloat(float val)
              throws IndexOutOfBoundsException,
                     IOException
Throws:
IndexOutOfBoundsException
IOException

getInt

public int getInt(long pos)
           throws IndexOutOfBoundsException,
                  IOException
Throws:
IndexOutOfBoundsException
IOException

getInt

public int getInt()
           throws IndexOutOfBoundsException,
                  IOException
Throws:
IndexOutOfBoundsException
IOException

putInt

public void putInt(long pos,
                   int i)
            throws IndexOutOfBoundsException,
                   IOException
Throws:
IndexOutOfBoundsException
IOException

putInt

public void putInt(int val)
            throws IndexOutOfBoundsException,
                   IOException
Throws:
IndexOutOfBoundsException
IOException

getLong

public long getLong(long pos)
             throws IndexOutOfBoundsException,
                    IOException
Throws:
IndexOutOfBoundsException
IOException

getLong

public long getLong()
             throws IndexOutOfBoundsException,
                    IOException
Throws:
IndexOutOfBoundsException
IOException

putLong

public void putLong(long pos,
                    long l)
             throws IndexOutOfBoundsException,
                    IOException
Throws:
IndexOutOfBoundsException
IOException

putLong

public void putLong(long val)
             throws IndexOutOfBoundsException,
                    IOException
Throws:
IndexOutOfBoundsException
IOException

getShort

public short getShort(long pos)
               throws IndexOutOfBoundsException,
                      IOException
Throws:
IndexOutOfBoundsException
IOException

getShort

public short getShort()
               throws IndexOutOfBoundsException,
                      IOException
Throws:
IndexOutOfBoundsException
IOException

putShort

public void putShort(long pos,
                     short s)
              throws IndexOutOfBoundsException,
                     IOException
Throws:
IndexOutOfBoundsException
IOException

putShort

public void putShort(short val)
              throws IndexOutOfBoundsException,
                     IOException
Throws:
IndexOutOfBoundsException
IOException

position

public long position()

position

public void position(long pos)

force

public void force()