T - data series typepublic abstract class CRAMEncoding<T>
extends java.lang.Object
CRAMCodec instance.| Modifier | Constructor and Description |
|---|---|
protected |
CRAMEncoding(EncodingID id)
Create a new encoding.
|
| Modifier and Type | Method and Description |
|---|---|
abstract CRAMCodec<T> |
buildCodec(BitInputStream coreBlockInputStream,
BitOutputStream coreBlockOutputStream,
java.util.Map<java.lang.Integer,java.io.ByteArrayInputStream> externalBlockInputMap,
java.util.Map<java.lang.Integer,java.io.ByteArrayOutputStream> externalBlockOutputMap)
Instantiate the codec represented by this encoding by supplying it with the appropriate streams
|
CRAMCodec<T> |
buildReadCodec(BitInputStream coreBlockInputStream,
java.util.Map<java.lang.Integer,java.io.ByteArrayInputStream> externalBlockInputMap)
Convenience initializer method for read codecs
|
CRAMCodec<T> |
buildWriteCodec(BitOutputStream coreBlockOutputStream,
java.util.Map<java.lang.Integer,java.io.ByteArrayOutputStream> externalBlockOutputMap)
Convenience initializer method for write codecs
|
EncodingID |
id() |
abstract byte[] |
toByteArray()
Subclasses but have a defined serialization of their parameters
|
EncodingParams |
toParam() |
protected CRAMEncoding(EncodingID id)
id - the EncodingID associated with the concrete implementationpublic EncodingID id()
public EncodingParams toParam()
public abstract byte[] toByteArray()
public abstract CRAMCodec<T> buildCodec(BitInputStream coreBlockInputStream, BitOutputStream coreBlockOutputStream, java.util.Map<java.lang.Integer,java.io.ByteArrayInputStream> externalBlockInputMap, java.util.Map<java.lang.Integer,java.io.ByteArrayOutputStream> externalBlockOutputMap)
coreBlockInputStream - the core block bit stream a CoreCodec will read fromcoreBlockOutputStream - the core block bit stream a CoreCodec will write toexternalBlockInputMap - the external block byte stream a ExternalCodec will read fromexternalBlockOutputMap - the external block byte stream a ExternalCodec will write topublic CRAMCodec<T> buildReadCodec(BitInputStream coreBlockInputStream, java.util.Map<java.lang.Integer,java.io.ByteArrayInputStream> externalBlockInputMap)
coreBlockInputStream - the core block bit stream a CoreCodec will read fromexternalBlockInputMap - the external block byte stream a ExternalCodec will read frompublic CRAMCodec<T> buildWriteCodec(BitOutputStream coreBlockOutputStream, java.util.Map<java.lang.Integer,java.io.ByteArrayOutputStream> externalBlockOutputMap)
coreBlockOutputStream - the core block bit stream a CoreCodec will write toexternalBlockOutputMap - the external block byte stream a ExternalCodec will write to