Bugfix for BCF2 reader / writer for > 0x0FFF samples :-)
-- Should be 0x00FFFFFF in the mask
This commit is contained in:
parent
1d4eb46606
commit
6f7a01e00d
|
|
@ -208,9 +208,9 @@ public class BCF2Codec implements FeatureCodec<VariantContext>, ReferenceDepende
|
||||||
final int nAlleleInfo = decoder.decodeInt(BCF2Type.INT32);
|
final int nAlleleInfo = decoder.decodeInt(BCF2Type.INT32);
|
||||||
final int nFormatSamples = decoder.decodeInt(BCF2Type.INT32);
|
final int nFormatSamples = decoder.decodeInt(BCF2Type.INT32);
|
||||||
final int nAlleles = nAlleleInfo >> 16;
|
final int nAlleles = nAlleleInfo >> 16;
|
||||||
final int nInfo = nAlleleInfo & 0x00FF;
|
final int nInfo = nAlleleInfo & 0x0000FFFF;
|
||||||
final int nFormatFields = nFormatSamples >> 24;
|
final int nFormatFields = nFormatSamples >> 24;
|
||||||
final int nSamples = nFormatSamples & 0x0FFF;
|
final int nSamples = nFormatSamples & 0x00FFFFF;
|
||||||
|
|
||||||
decodeID(builder);
|
decodeID(builder);
|
||||||
final ArrayList<Allele> alleles = decodeAlleles(builder, pos, nAlleles);
|
final ArrayList<Allele> alleles = decodeAlleles(builder, pos, nAlleles);
|
||||||
|
|
|
||||||
|
|
@ -169,8 +169,8 @@ class BCF2Writer extends IndexingVariantContextWriter {
|
||||||
final int nGenotypeFormatFields = getNGenotypeFormatFields(vc);
|
final int nGenotypeFormatFields = getNGenotypeFormatFields(vc);
|
||||||
final int nSamples = vc.getNSamples();
|
final int nSamples = vc.getNSamples();
|
||||||
|
|
||||||
encoder.encodeRawInt((nAlleles << 16) | (nInfo & 0x00FF), BCF2Type.INT32);
|
encoder.encodeRawInt((nAlleles << 16) | (nInfo & 0x0000FFFF), BCF2Type.INT32);
|
||||||
encoder.encodeRawInt((nGenotypeFormatFields << 24) | (nSamples & 0x0FFF), BCF2Type.INT32);
|
encoder.encodeRawInt((nGenotypeFormatFields << 24) | (nSamples & 0x00FFFFF), BCF2Type.INT32);
|
||||||
|
|
||||||
buildID(vc);
|
buildID(vc);
|
||||||
buildAlleles(vc);
|
buildAlleles(vc);
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue