com.imagero.uio.buffer
Class DefaultBufferManager

java.lang.Object
  extended bycom.imagero.uio.buffer.DefaultBufferManager
All Implemented Interfaces:
BufferManager, MutableBufferManager

public class DefaultBufferManager
extends java.lang.Object
implements MutableBufferManager

DefaultBufferManager.java


Field Summary
 
Fields inherited from interface com.imagero.uio.buffer.BufferManager
empty
 
Constructor Summary
DefaultBufferManager(Buffer[] ds)
           
 
Method Summary
 void clear()
          clears all buffers (same as close)
 void clear(long start, long end)
          all buffered data in stream between start and end will be cleared
 void close()
          releases all buffers
 void flush()
          does currently nothing
 int getCount()
          count of Buffers contained in this BufferManager
 byte[] getData(int i)
          get data (as byte array) from i'th Buffer
 int getDataLength(int i)
          get length of i'th Buffer in byte
 long getDataStart(int i)
          get start of i'th Buffer in byte
 int getIndex(long pos)
          get index of Buffer which contains index pos
 long getLength()
          length of all data
 int getMaxCache()
          get max buffer count
 void setDirty(int index)
          does currently nothing
 void setDirty(long from, long to)
          does currently nothing
 void setMaxCache(int max)
          does nothing, because Buffer is never dropped
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DefaultBufferManager

public DefaultBufferManager(Buffer[] ds)
Method Detail

getDataStart

public long getDataStart(int i)
Description copied from interface: BufferManager
get start of i'th Buffer in byte

Specified by:
getDataStart in interface BufferManager
Parameters:
i - Buffer index
Returns:
int
                          n-1
dataStart(n) = Σ getDataLength(i)
                          i=0

getData

public byte[] getData(int i)
               throws java.io.IOException
get data (as byte array) from i'th Buffer

Specified by:
getData in interface BufferManager
Parameters:
i - Buffer index
Returns:
byte array
Throws:
java.io.IOException

getCount

public int getCount()
count of Buffers contained in this BufferManager

Specified by:
getCount in interface BufferManager
Returns:
int

getDataLength

public int getDataLength(int i)
get length of i'th Buffer in byte

Specified by:
getDataLength in interface BufferManager
Parameters:
i - Buffer index
Returns:
int

getIndex

public int getIndex(long pos)
get index of Buffer which contains index pos

Specified by:
getIndex in interface BufferManager
Parameters:
pos -
Returns:
index or -1 if pos is negative or greater then or equal to getLength()

getLength

public long getLength()
length of all data

Specified by:
getLength in interface BufferManager
Returns:
int

close

public void close()
releases all buffers

Specified by:
close in interface BufferManager

setDirty

public void setDirty(long from,
                     long to)
does currently nothing

Specified by:
setDirty in interface MutableBufferManager
Parameters:
from -
to -

setDirty

public void setDirty(int index)
does currently nothing

Specified by:
setDirty in interface MutableBufferManager
Parameters:
index -

flush

public void flush()
           throws java.io.IOException
does currently nothing

Specified by:
flush in interface MutableBufferManager
Throws:
java.io.IOException

clear

public void clear()
clears all buffers (same as close)

Specified by:
clear in interface BufferManager

clear

public void clear(long start,
                  long end)
Description copied from interface: BufferManager
all buffered data in stream between start and end will be cleared

Specified by:
clear in interface BufferManager
Parameters:
start -
end -

getMaxCache

public int getMaxCache()
Description copied from interface: BufferManager
get max buffer count

Specified by:
getMaxCache in interface BufferManager
Returns:
current buffer count

setMaxCache

public void setMaxCache(int max)
does nothing, because Buffer is never dropped

Specified by:
setMaxCache in interface BufferManager