Package loci.formats.codec
Class BaseCodec
java.lang.Object
loci.formats.codec.BaseCodec
- All Implemented Interfaces:
loci.formats.codec.Codec
- Direct Known Subclasses:
Base64Codec,HuffmanCodec,JPEG2000Codec,JPEGCodec,JPEGXRCodec,LosslessJPEGCodec,LZOCodec,LZWCodec,MJPBCodec,MSRLECodec,MSVideoCodec,NikonCodec,PackbitsCodec,PassthroughCodec,QTRLECodec,RPZACodec,TargaRLECodec,ZlibCodec,ZstdCodec
BaseCodec contains default implementation and testing for classes
implementing the Codec interface, and acts as a base class for any
of the compression classes.
Base 1D compression and decompression methods are not implemented here, and
are left as abstract. 2D methods do simple concatenation and call to the 1D
methods
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionbyte[]compress(byte[][] data, loci.formats.codec.CodecOptions options) 2D data block encoding default implementation.byte[]decompress(byte[] data) byte[]decompress(byte[][] data) byte[]decompress(byte[][] data, loci.formats.codec.CodecOptions options) 2D data block decoding default implementation.byte[]decompress(byte[] data, loci.formats.codec.CodecOptions options) abstract byte[]voidtest()Main testing method default implementation.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface loci.formats.codec.Codec
compress
-
Field Details
-
LOGGER
-
-
Constructor Details
-
BaseCodec
public BaseCodec()
-
-
Method Details
-
test
Main testing method default implementation. This method tests whether the data is the same after compressing and decompressing, as well as doing a basic test of the 2D methods.- Throws:
loci.formats.FormatException- Can only occur if there is a bug in the compress method.
-
compress
public byte[] compress(byte[][] data, loci.formats.codec.CodecOptions options) throws loci.formats.FormatException 2D data block encoding default implementation. This method simply concatenates data[0] + data[1] + ... + data[i] into a 1D block of data, then calls the 1D version of compress.- Specified by:
compressin interfaceloci.formats.codec.Codec- Parameters:
data- The data to be compressed.options- Options to be used during compression, if appropriate.- Returns:
- The compressed data.
- Throws:
loci.formats.FormatException- If input is not a compressed data block of the appropriate type.
-
decompress
- Specified by:
decompressin interfaceloci.formats.codec.Codec- Throws:
loci.formats.FormatException
-
decompress
- Specified by:
decompressin interfaceloci.formats.codec.Codec- Throws:
loci.formats.FormatException
-
decompress
public byte[] decompress(byte[] data, loci.formats.codec.CodecOptions options) throws loci.formats.FormatException - Specified by:
decompressin interfaceloci.formats.codec.Codec- Throws:
loci.formats.FormatException
-
decompress
public abstract byte[] decompress(RandomAccessInputStream in, loci.formats.codec.CodecOptions options) throws loci.formats.FormatException, IOException - Specified by:
decompressin interfaceloci.formats.codec.Codec- Throws:
loci.formats.FormatExceptionIOException
-
decompress
public byte[] decompress(byte[][] data, loci.formats.codec.CodecOptions options) throws loci.formats.FormatException 2D data block decoding default implementation. This method simply concatenates data[0] + data[1] + ... + data[i] into a 1D block of data, then calls the 1D version of decompress.- Specified by:
decompressin interfaceloci.formats.codec.Codec- Parameters:
data- The data to be decompressed.- Returns:
- The decompressed data.
- Throws:
loci.formats.FormatException- If input is not a compressed data block of the appropriate type.
-