Package com.twelvemonkeys.imageio.stream
Class BufferedImageInputStream
- java.lang.Object
-
- javax.imageio.stream.ImageInputStreamImpl
-
- com.twelvemonkeys.imageio.stream.BufferedImageInputStream
-
- All Implemented Interfaces:
java.io.Closeable
,java.io.DataInput
,java.lang.AutoCloseable
,javax.imageio.stream.ImageInputStream
public final class BufferedImageInputStream extends javax.imageio.stream.ImageInputStreamImpl implements javax.imageio.stream.ImageInputStream
A bufferedImageInputStream
. Experimental - seems to be effective forFileImageInputStream
andFileCacheImageInputStream
when doing a lot of single-byte reads (or short byte-array reads) on OS X at least. Code that uses thereadFully
methods are not affected by the issue.- Version:
- $Id: BufferedFileImageInputStream.java,v 1.0 May 15, 2008 4:36:49 PM haraldk Exp$
- Author:
- Harald Kuhr, last modified by $Author: haraldk$
-
-
Constructor Summary
Constructors Constructor Description BufferedImageInputStream(javax.imageio.stream.ImageInputStream pStream)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
close()
protected void
finalize()
void
flushBefore(long pos)
long
getFlushedPosition()
boolean
isCached()
boolean
isCachedFile()
boolean
isCachedMemory()
long
length()
int
read()
int
read(byte[] pBuffer, int pOffset, int pLength)
int
readBit()
long
readBits(int numBits)
int
readInt()
long
readLong()
short
readShort()
void
seek(long pPosition)
void
setByteOrder(java.nio.ByteOrder byteOrder)
-
Methods inherited from class javax.imageio.stream.ImageInputStreamImpl
checkClosed, flush, getBitOffset, getByteOrder, getStreamPosition, mark, read, readBoolean, readByte, readBytes, readChar, readDouble, readFloat, readFully, readFully, readFully, readFully, readFully, readFully, readFully, readFully, readLine, readUnsignedByte, readUnsignedInt, readUnsignedShort, readUTF, reset, setBitOffset, skipBytes, skipBytes
-
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface javax.imageio.stream.ImageInputStream
flush, getBitOffset, getByteOrder, getStreamPosition, mark, read, readBoolean, readByte, readBytes, readChar, readDouble, readFloat, readFully, readFully, readFully, readFully, readFully, readFully, readFully, readFully, readLine, readUnsignedByte, readUnsignedInt, readUnsignedShort, readUTF, reset, setBitOffset, skipBytes, skipBytes
-
-
-
-
Method Detail
-
setByteOrder
public void setByteOrder(java.nio.ByteOrder byteOrder)
- Specified by:
setByteOrder
in interfacejavax.imageio.stream.ImageInputStream
- Overrides:
setByteOrder
in classjavax.imageio.stream.ImageInputStreamImpl
-
read
public int read() throws java.io.IOException
- Specified by:
read
in interfacejavax.imageio.stream.ImageInputStream
- Specified by:
read
in classjavax.imageio.stream.ImageInputStreamImpl
- Throws:
java.io.IOException
-
read
public int read(byte[] pBuffer, int pOffset, int pLength) throws java.io.IOException
- Specified by:
read
in interfacejavax.imageio.stream.ImageInputStream
- Specified by:
read
in classjavax.imageio.stream.ImageInputStreamImpl
- Throws:
java.io.IOException
-
readShort
public short readShort() throws java.io.IOException
- Specified by:
readShort
in interfacejava.io.DataInput
- Specified by:
readShort
in interfacejavax.imageio.stream.ImageInputStream
- Overrides:
readShort
in classjavax.imageio.stream.ImageInputStreamImpl
- Throws:
java.io.IOException
-
readInt
public int readInt() throws java.io.IOException
- Specified by:
readInt
in interfacejava.io.DataInput
- Specified by:
readInt
in interfacejavax.imageio.stream.ImageInputStream
- Overrides:
readInt
in classjavax.imageio.stream.ImageInputStreamImpl
- Throws:
java.io.IOException
-
readLong
public long readLong() throws java.io.IOException
- Specified by:
readLong
in interfacejava.io.DataInput
- Specified by:
readLong
in interfacejavax.imageio.stream.ImageInputStream
- Overrides:
readLong
in classjavax.imageio.stream.ImageInputStreamImpl
- Throws:
java.io.IOException
-
readBit
public int readBit() throws java.io.IOException
- Specified by:
readBit
in interfacejavax.imageio.stream.ImageInputStream
- Overrides:
readBit
in classjavax.imageio.stream.ImageInputStreamImpl
- Throws:
java.io.IOException
-
readBits
public long readBits(int numBits) throws java.io.IOException
- Specified by:
readBits
in interfacejavax.imageio.stream.ImageInputStream
- Overrides:
readBits
in classjavax.imageio.stream.ImageInputStreamImpl
- Throws:
java.io.IOException
-
seek
public void seek(long pPosition) throws java.io.IOException
- Specified by:
seek
in interfacejavax.imageio.stream.ImageInputStream
- Overrides:
seek
in classjavax.imageio.stream.ImageInputStreamImpl
- Throws:
java.io.IOException
-
flushBefore
public void flushBefore(long pos) throws java.io.IOException
- Specified by:
flushBefore
in interfacejavax.imageio.stream.ImageInputStream
- Overrides:
flushBefore
in classjavax.imageio.stream.ImageInputStreamImpl
- Throws:
java.io.IOException
-
getFlushedPosition
public long getFlushedPosition()
- Specified by:
getFlushedPosition
in interfacejavax.imageio.stream.ImageInputStream
- Overrides:
getFlushedPosition
in classjavax.imageio.stream.ImageInputStreamImpl
-
isCached
public boolean isCached()
- Specified by:
isCached
in interfacejavax.imageio.stream.ImageInputStream
- Overrides:
isCached
in classjavax.imageio.stream.ImageInputStreamImpl
-
isCachedMemory
public boolean isCachedMemory()
- Specified by:
isCachedMemory
in interfacejavax.imageio.stream.ImageInputStream
- Overrides:
isCachedMemory
in classjavax.imageio.stream.ImageInputStreamImpl
-
isCachedFile
public boolean isCachedFile()
- Specified by:
isCachedFile
in interfacejavax.imageio.stream.ImageInputStream
- Overrides:
isCachedFile
in classjavax.imageio.stream.ImageInputStreamImpl
-
close
public void close() throws java.io.IOException
- Specified by:
close
in interfacejava.lang.AutoCloseable
- Specified by:
close
in interfacejava.io.Closeable
- Specified by:
close
in interfacejavax.imageio.stream.ImageInputStream
- Overrides:
close
in classjavax.imageio.stream.ImageInputStreamImpl
- Throws:
java.io.IOException
-
finalize
protected void finalize() throws java.lang.Throwable
- Overrides:
finalize
in classjavax.imageio.stream.ImageInputStreamImpl
- Throws:
java.lang.Throwable
-
length
public long length()
- Specified by:
length
in interfacejavax.imageio.stream.ImageInputStream
- Overrides:
length
in classjavax.imageio.stream.ImageInputStreamImpl
-
-