Package org.snpeff.vcf

# Class VcfEntry

java.lang.Object
org.snpeff.interval.Interval
org.snpeff.interval.Marker
org.snpeff.vcf.VcfEntry

All Implemented Interfaces:
  `Serializable`, `Cloneable`, `Comparable<Interval>`, `Iterable<VcfGenotype>`, `TxtSerializable`

public class VcfEntry extends Marker implements Iterable<VcfGenotype>
A VCF entry is a line in a VCF file A VCF line can have multiple variants, and multiple genotypes The VcfEntry represents the VCF line, NOT the variant itself. for example, if the `START` field in the VCF line may differ from the `start` possition of the variant because the first base of the `REF` field is used as an "anchor".

Author:
  pablocingolani
See Also:
  - Serialized Form

## Nested Class Summary

Nested Classes
Modifier and Type
Class
Description
`static enum`
`VcfEntry.AlleleFrequencyType`

## Field Summary

Fields
Modifier and Type
Field
Description
`static final double`
`ALLELE_FEQUENCY_COMMON`
`static final double`
`ALLELE_FEQUENCY_LOW`
`protected String[]`
`alts`
`protected String`
`altStr`
`protected String`
`chromosomeName`
`static final String[]`
`EMPTY_STRING_ARRAY`
`protected String`
`filter`
`static final String`
`FILTER_PASS`
`protected String`
`format`
`protected String[]`
`formatFields`
`protected String[]`
`genotypeFields`
`protected String`
`genotypeFieldsStr`
`protected byte[]`
`genotypeScores`
`protected HashMap<String,String>`
`info`
`static final Pattern`
`INFO_KEY_PATTERN`
`protected String`
`infoStr`
`protected String`
`line`
`protected int`
`lineNum`
`static final int`
`MAX_PADN`
`protected Double`
`quality`
`protected String`
`ref`
`static final String`
`SUB_FIELD_SEP`
`protected LinkedList<Variant>`
`variants`
`static final String[]`
`VCF_ALT_A_ARRAY`
`static final String[]`
`VCF_ALT_ASTERISK_ARRAY`
`static final String[]`
`VCF_ALT_B_ARRAY`
`static final String[]`
`VCF_ALT_C_ARRAY`
`static final String[]`
`VCF_ALT_D_ARRAY`
`static final String[]`
`VCF_ALT_G_ARRAY`
`static final String[]`
`VCF_ALT_H_ARRAY`
`static final String`
`VCF_ALT_INV`
`static final String[]`
`VCF_ALT_INV_ARRAY`
`static final String[]`
`VCF_ALT_K_ARRAY`
`static final String[]`
`VCF_ALT_M_ARRAY`
`static final String[]`
`VCF_ALT_MISSING_ARRAY`
`static final String`
`VCF_ALT_MISSING_REF`
`static final String[]`
`VCF_ALT_N_ARRAY`
`static final String`
`VCF_ALT_NON_REF`
`static final String[]`
`VCF_ALT_NON_REF_ARRAY`
`static final String`
`VCF_ALT_NON_REF_OLD`
`static final String[]`
`VCF_ALT_NON_REF_OLD_ARRAY`
`static final String[]`
`VCF_ALT_R_ARRAY`
`static final String[]`
`VCF_ALT_S_ARRAY`
`static final String[]`
`VCF_ALT_T_ARRAY`
`static final String[]`
`VCF_ALT_V_ARRAY`
`static final String[]`
`VCF_ALT_W_ARRAY`
`static final String[]`
`VCF_ALT_Y_ARRAY`
`static final String`
`VCF_INFO_END`
`static final String`
`VCF_INFO_HETS`
`static final String`
`VCF_INFO_HOMS`
`static final String`
`VCF_INFO_IMPRECISE`
`static final String`
`VCF_INFO_NAS`
`static final String`
`VCF_INFO_PRIVATE`
`static final String`
`VCF_INFO_SVLEN`
`protected List<VcfEffect>`
`vcfEffects`
`protected VcfFileIterator`
`vcfFileIterator`
`protected ArrayList<VcfGenotype>`
`vcfGenotypes`
`static final char`
`WITHIN_FIELD_SEP`

### Fields inherited from class org.snpeff.interval.Marker

`type`

### Fields inherited from class org.snpeff.interval.Interval

`chromosomeNameOri, end, id, parent, start, strandMinus`

## Constructor Summary

Constructors
Constructor
Description
`VcfEntry(VcfFileIterator vcfFileIterator, String line, int lineNum, boolean parseNow)`
Create a line form a file iterator
`VcfEntry(VcfFileIterator vcfFileIterator, Marker parent, String chromosomeName, int start, String id, String ref, String altsStr, double quality, String filterPass, String infoStr, String format)`

## Method Summary

Modifier and Type
Method
Description
`void`
`addFilter(String filterStr)`
Add string to FILTER field
`void`
`addFormat(String formatName)`
Add a 'FORMAT' field
`void`
`addGenotype(String vcfGenotypeStr)`
Add a genotype as a string
`void`
`addInfo(String key, String value)`
Add a "key=value" tuple the info field
`VcfEntry.AlleleFrequencyType`
`alleleFrequencyType()`
Categorization by allele frequency
`Boolean`
`calcHetero()`
Is this entry heterozygous? Infer Hom/Her if there is only one sample in the file.
`String`
`check()`
Perform several simple checks and report problems (if any).
`static String`
`cleanUnderscores(String s)`
Return a string without leading, trailing and duplicated underscores
`Cds`
`cloneShallow()`
Perform a shallow clone
`boolean`
`compressGenotypes()`
Compress genotypes into "HO/HE/NA" INFO fields
`boolean`
`delFilter(String filterStr)`
Remove a string from FILTER field
`int`
`getAltIndex(String alt)`
Get index of matching ALT entry
`String[]`
`getAlts()`
`String`
`getAltsStr()`
Create a comma separated ALTS string
`String`
`getChromosomeNameOri()`
Original chromosome name (as it appeared in the VCF file)
`String`
`getFilter()`
`String`
`getFormat()`
`String[]`
`getFormatFields()`
`byte[]`
`getGenotypesScores()`
Return genotypes parsed as an array of codes
`String`
`getInfo(String key)`
Get info string
`String`
`getInfo(String key, String allele)`
Get info string for a specific allele
`String`
`getInfo(String key, Variant var)`
Get an INFO field matching a variant
`boolean`
`getInfoFlag(String key)`
Does the entry exists?
`double`
`getInfoFloat(String key)`
Get info field as a 'double' number The norm specifies data type as 'FLOAT', that is why the name of this method might be not intuitive
`long`
`getInfoInt(String key)`
Get info field as an long number The norm specifies data type as 'INT', that is why the name of this method might be not intuitive
`Set<String>`
`getInfoKeys()`
Get all keys available in the info field
`String`
`getInfoStr()`
Get the full (unparsed) INFO field
`String`
`getLine()`
Original VCF line (from file)
`int`
`getLineNum()`
`int`
`getNumberOfSamples()`
number of samples in this VCF file
`double`
`getQuality()`
`String`
`getRef()`
`String`
`getStr()`
`List<VcfEffect>`
`getVcfEffects()`
`List<VcfEffect>`
`getVcfEffects(EffFormatVersion formatVersion)`
Parse 'EFF' info field and get a list of effects
`VcfFileIterator`
`getVcfFileIterator()`
`VcfGenotype`
`getVcfGenotype(int index)`
`List<VcfGenotype>`
`getVcfGenotypes()`
`VcfHeaderInfo`
`getVcfInfo(String id)`
Get VcfInfo type for a given ID
`VcfInfoType`
`getVcfInfoNumber(String id)`
Get Info number for a given ID
`boolean`
`hasAltNonRef()`
`boolean`
`hasField(String filedName)`
`boolean`
`hasGenotypes()`
`boolean`
`hasInfo(String infoFieldName)`
`boolean`
`hasQuality()`
`boolean`
`isAltNonRef(String alt)`
Is this ALT string a NON_REF? (gVCF)
`boolean`
`isBiAllelic()`
Is this bi-allelic (based ONLY on the number of ALTs) WARINIG: You should use 'calcHetero()' method for a more precise calculation.
`boolean`
`isCompressedGenotypes()`
Do we have compressed genotypes in "HO,HE,NA" INFO fields?
`static boolean`
`isEmpty(String value)`
Does 'value' represent an EMPTY / MISSING value in a VCF field? (or multiple MISSING comma-separated values)
`boolean`
`isFilterPass()`
`boolean`
`isMultiallelic()`
Is this multi-allelic (based ONLY on the number of ALTs) WARINIG: You should use 'calcHetero()' method for a more precise calculation.
`protected boolean`
`isShowWarningIfParentDoesNotInclude()`
Show an error if parent does not include child?
`boolean`
`isSingleSnp()`
Is thins a VCF entry with a single SNP?
`boolean`
`isSingleton()`
Is this variant a singleton (appears only in one genotype)
`static boolean`
`isValidInfoKey(String key)`
Make sure the INFO key matches the regular expression (as specified in VCF spec 4.3)
`static boolean`
`isValidInfoValue(String value)`
Check that this value can be added to an INFO field
`boolean`
`isVariant()`
Is this a change or are the ALTs actually the same as the reference
`boolean`
`isVariant(String alt)`
Is this ALT string a variant?
`Iterator<VcfGenotype>`
`iterator()`
`int`
`mac()`
Calculate Minor allele count
`double`
`maf()`
Calculate Minor allele frequency
`void`
`parse()`
Parse a 'line' from a 'vcfFileIterator'
`List<VcfLof>`
`parseLof()`
Parse LOF from VcfEntry
`List<VcfNmd>`
`parseNmd()`
Parse NMD from VcfEntry
`void`
`removeInfo(String key)`
Remove INFO field
`boolean`
`rmInfo(String info)`
Parse INFO fields
`void`
`setFilter(String filter)`
`void`
`setFormat(String format)`
`void`
`setGenotypeStr(String genotypeFieldsStr)`
`void`
`setLineNum(int lineNum)`
`String`
`toStr()`
To string as a simple "CHR:START_REF/ALTs" format
`String`
`toString()`
`String`
`toStringNoGt()`
Show only first eight fields (no genotype entries)
`VcfEntry`
`uncompressGenotypes()`
Uncompress VCF entry having genotypes in "HO,HE,NA" fields
`List<Variant>`
`variants()`
Create a list of variants from this VcfEntry
`static String`
`vcfInfoDecode(String str)`
Decode INFO value
`static String`
`vcfInfoEncode(String str)`
Encode a string to be used in an 'INFO' field value From the VCF 4.3 specification Characters with special meaning (such as field delimiters ';' in INFO or ':' FORMAT fields) must be represented using the capitalized percent encoding: %3A : (colon) %3B ; (semicolon) %3D = (equal sign) %25 % (percent sign) %2C , (comma) %0D CR %0A LF %09 TAB
`static String`
`vcfInfoKeySafe(String str)`
Return a string safe to be used in an 'INFO' field key
`static String`
`vcfInfoValueSafe(String str)`
Return a string safe to be used in an 'INFO' field value

### Methods inherited from class org.snpeff.interval.Marker

`adjust, apply, applyDel, applyDup, applyIns, applyMixed, clone, codonTable, compareTo, compareToPos, distance, distanceBases, getParent, getType, idChain, idChain, idChain, includes, intersect, isAdjustIfParentDoesNotInclude, isDeferredAnalysis, minus, query, query, readTxt, serializeParse, serializeSave, shouldApply, union, variantEffect, variantEffectNonRef`

### Methods inherited from class org.snpeff.interval.Interval

`equals, findParent, getChromosome, getChromosomeName, getChromosomeNum, getEnd, getGenome, getGenomeName, getId, getStart, getStrand, hashCode, intersects, intersects, intersects, intersects, intersectSize, isCircular, isSameChromo, isStrandMinus, isStrandPlus, isValid, setChromosomeNameOri, setEnd, setId, setParent, setStart, setStrandMinus, shiftCoordinates, size, toStringAsciiArt, toStrPos`

### Methods inherited from class java.lang.Object

`equals, finalize, getClass, notify, notifyAll, wait, wait, wait`

### Methods inherited from interface java.lang.Iterable

`forEach, spliterator`

## Field Details

### FILTER_PASS

public static final String FILTER_PASS

See Also:
  - Constant Field Values

### WITHIN_FIELD_SEP

public static final char WITHIN_FIELD_SEP

See Also:
  - Constant Field Values

### SUB_FIELD_SEP

public static final String SUB_FIELD_SEP

See Also:
  - Constant Field Values

### EMPTY_STRING_ARRAY

public static final String[] EMPTY_STRING_ARRAY

### ALLELE_FEQUENCY_COMMON

public static final double ALLELE_FEQUENCY_COMMON

See Also:
  - Constant Field Values

### ALLELE_FEQUENCY_LOW

public static final double ALLELE_FEQUENCY_LOW

See Also:
  - Constant Field Values

### MAX_PADN

public static final int MAX_PADN

See Also:
  - Constant Field Values

### INFO_KEY_PATTERN

public static final Pattern INFO_KEY_PATTERN

### VCF_ALT_NON_REF

public static final String VCF_ALT_NON_REF

See Also:
  - Constant Field Values

### VCF_ALT_NON_REF_OLD

public static final String VCF_ALT_NON_REF_OLD

See Also:
  - Constant Field Values

### VCF_ALT_MISSING_REF

public static final String VCF_ALT_MISSING_REF

See Also:
  - Constant Field Values

### VCF_ALT_INV

public static final String VCF_ALT_INV

See Also:
  - Constant Field Values

### VCF_ALT_A_ARRAY

public static final String[] VCF_ALT_A_ARRAY

### VCF_ALT_C_ARRAY

public static final String[] VCF_ALT_C_ARRAY

### VCF_ALT_G_ARRAY

public static final String[] VCF_ALT_G_ARRAY

### VCF_ALT_T_ARRAY

public static final String[] VCF_ALT_T_ARRAY

### VCF_ALT_N_ARRAY

public static final String[] VCF_ALT_N_ARRAY

### VCF_ALT_B_ARRAY

public static final String[] VCF_ALT_B_ARRAY

### VCF_ALT_D_ARRAY

public static final String[] VCF_ALT_D_ARRAY

### VCF_ALT_H_ARRAY

public static final String[] VCF_ALT_H_ARRAY

### VCF_ALT_V_ARRAY

public static final String[] VCF_ALT_V_ARRAY

### VCF_ALT_M_ARRAY

public static final String[] VCF_ALT_M_ARRAY

### VCF_ALT_R_ARRAY

public static final String[] VCF_ALT_R_ARRAY

### VCF_ALT_W_ARRAY

public static final String[] VCF_ALT_W_ARRAY

### VCF_ALT_S_ARRAY

public static final String[] VCF_ALT_S_ARRAY

### VCF_ALT_Y_ARRAY

public static final String[] VCF_ALT_Y_ARRAY

### VCF_ALT_K_ARRAY

public static final String[] VCF_ALT_K_ARRAY

### VCF_ALT_ASTERISK_ARRAY

public static final String[] VCF_ALT_ASTERISK_ARRAY

### VCF_ALT_MISSING_ARRAY

public static final String[] VCF_ALT_MISSING_ARRAY

### VCF_ALT_NON_REF_OLD_ARRAY

public static final String[] VCF_ALT_NON_REF_OLD_ARRAY

### VCF_ALT_NON_REF_ARRAY

public static final String[] VCF_ALT_NON_REF_ARRAY

### VCF_ALT_INV_ARRAY

public static final String[] VCF_ALT_INV_ARRAY

### VCF_INFO_END

public static final String VCF_INFO_END

See Also:
  - Constant Field Values

### VCF_INFO_SVLEN

public static final String VCF_INFO_SVLEN

See Also:
  - Constant Field Values

### VCF_INFO_IMPRECISE

public static final String VCF_INFO_IMPRECISE

See Also:
  - Constant Field Values

### VCF_INFO_HOMS

public static final String VCF_INFO_HOMS

See Also:
  - Constant Field Values

### VCF_INFO_HETS

public static final String VCF_INFO_HETS

See Also:
  - Constant Field Values

### VCF_INFO_NAS

public static final String VCF_INFO_NAS

See Also:
  - Constant Field Values

### VCF_INFO_PRIVATE

public static final String VCF_INFO_PRIVATE

See Also:
  - Constant Field Values

### alts

protected String[] alts

### altStr

protected String altStr

### chromosomeName

protected String chromosomeName

### filter

protected String filter

### format

protected String format

### formatFields

protected String[] formatFields

### genotypeFields

protected String[] genotypeFields

### genotypeFieldsStr

protected String genotypeFieldsStr

### genotypeScores

protected byte[] genotypeScores

### info

protected HashMap<String,String> info

### infoStr

protected String infoStr

### line

protected String line

### lineNum

protected int lineNum

### quality

protected Double quality

### ref

protected String ref

### variants

protected LinkedList<Variant> variants

### vcfEffects

protected List<VcfEffect> vcfEffects

### vcfFileIterator

protected VcfFileIterator vcfFileIterator

### vcfGenotypes

protected ArrayList<VcfGenotype> vcfGenotypes

## Constructor Details

### VcfEntry

public VcfEntry(VcfFileIterator vcfFileIterator, Marker parent, String chromosomeName, int start, String id, String ref, String altsStr, double quality, String filterPass, String infoStr, String format)

### VcfEntry

public VcfEntry(VcfFileIterator vcfFileIterator, String line, int lineNum, boolean parseNow)
Create a line form a file iterator

## Method Details

### cleanUnderscores

public static String cleanUnderscores(String s)
Return a string without leading, trailing and duplicated underscores

### isEmpty

public static boolean isEmpty(String value)
Does 'value' represent an EMPTY / MISSING value in a VCF field? (or multiple MISSING comma-separated values)

### isValidInfoKey

public static boolean isValidInfoKey(String key)
Make sure the INFO key matches the regular expression (as specified in VCF spec 4.3)

### isValidInfoValue

public static boolean isValidInfoValue(String value)
Check that this value can be added to an INFO field

Returns:
  true if OK, false if invalid value

### vcfInfoDecode

public static String vcfInfoDecode(String str)
Decode INFO value

### vcfInfoEncode

public static String vcfInfoEncode(String str)
Encode a string to be used in an 'INFO' field value From the VCF 4.3 specification Characters with special meaning (such as field delimiters ';' in INFO or ':' FORMAT fields) must be represented using the capitalized percent encoding: %3A : (colon) %3B ; (semicolon) %3D = (equal sign) %25 % (percent sign) %2C , (comma) %0D CR %0A LF %09 TAB

### vcfInfoKeySafe

public static String vcfInfoKeySafe(String str)
Return a string safe to be used in an 'INFO' field key

### vcfInfoValueSafe

public static String vcfInfoValueSafe(String str)
Return a string safe to be used in an 'INFO' field value

### addFilter

public void addFilter(String filterStr)
Add string to FILTER field

### addFormat

public void addFormat(String formatName)
Add a 'FORMAT' field

### addGenotype

public void addGenotype(String vcfGenotypeStr)
Add a genotype as a string

### addInfo

public void addInfo(String key, String value)
Add a "key=value" tuple the info field

Parameters:
  `key` - : INFO key name
  `value` - : Can be null if it is a boolean field.

### alleleFrequencyType

public VcfEntry.AlleleFrequencyType alleleFrequencyType()
Categorization by allele frequency

### calcHetero

public Boolean calcHetero()
Is this entry heterozygous? Infer Hom/Her if there is only one sample in the file. Ohtherwise the field is null.

### check

public String check()
Perform several simple checks and report problems (if any).

### cloneShallow

public Cds cloneShallow()
Description copied from class: `Marker`
Perform a shallow clone

Overrides:
  `cloneShallow` in class `Marker`

### compressGenotypes

public boolean compressGenotypes()
Compress genotypes into "HO/HE/NA" INFO fields

### delFilter

public boolean delFilter(String filterStr)
Remove a string from FILTER field

### getAltIndex

public int getAltIndex(String alt)
Get index of matching ALT entry

Returns:
  -1 if not found

### getAlts

public String[] getAlts()

### getAltsStr

public String getAltsStr()
Create a comma separated ALTS string

### getChromosomeNameOri

public String getChromosomeNameOri()
Original chromosome name (as it appeared in the VCF file)

Overrides:
  `getChromosomeNameOri` in class `Interval`

### getFilter

public String getFilter()

### getFormat

public String getFormat()

### getFormatFields

public String[] getFormatFields()

### getGenotypesScores

public byte[] getGenotypesScores()
Return genotypes parsed as an array of codes

### getInfo

public String getInfo(String key)
Get info string

### getInfo

public String getInfo(String key, String allele)
Get info string for a specific allele

### getInfo

public String getInfo(String key, Variant var)
Get an INFO field matching a variant

### getInfoFlag

public boolean getInfoFlag(String key)
Does the entry exists?

### getInfoFloat

public double getInfoFloat(String key)
Get info field as a 'double' number The norm specifies data type as 'FLOAT', that is why the name of this method might be not intuitive

### getInfoInt

public long getInfoInt(String key)
Get info field as an long number The norm specifies data type as 'INT', that is why the name of this method might be not intuitive

### getInfoKeys

public Set<String> getInfoKeys()
Get all keys available in the info field

### getInfoStr

public String getInfoStr()
Get the full (unparsed) INFO field

### getLine

public String getLine()
Original VCF line (from file)

### getLineNum

public int getLineNum()

### getNumberOfSamples

public int getNumberOfSamples()
number of samples in this VCF file

### getQuality

public double getQuality()

### getRef

public String getRef()

### getStr

public String getStr()

### getVcfEffects

public List<VcfEffect> getVcfEffects()

### getVcfEffects

public List<VcfEffect> getVcfEffects(EffFormatVersion formatVersion)
Parse 'EFF' info field and get a list of effects

### getVcfFileIterator

public VcfFileIterator getVcfFileIterator()

### getVcfGenotype

public VcfGenotype getVcfGenotype(int index)

### getVcfGenotypes

public List<VcfGenotype> getVcfGenotypes()

### getVcfInfo

public VcfHeaderInfo getVcfInfo(String id)
Get VcfInfo type for a given ID

### getVcfInfoNumber

public VcfInfoType getVcfInfoNumber(String id)
Get Info number for a given ID

### hasAltNonRef

public boolean hasAltNonRef()

### hasField

public boolean hasField(String filedName)

### hasGenotypes

public boolean hasGenotypes()

### hasInfo

public boolean hasInfo(String infoFieldName)

### hasQuality

public boolean hasQuality()

### isAltNonRef

public boolean isAltNonRef(String alt)
Is this ALT string a NON_REF? (gVCF)

### isBiAllelic

public boolean isBiAllelic()
Is this bi-allelic (based ONLY on the number of ALTs) WARINIG: You should use 'calcHetero()' method for a more precise calculation.

### isCompressedGenotypes

public boolean isCompressedGenotypes()
Do we have compressed genotypes in "HO,HE,NA" INFO fields?

### isFilterPass

public boolean isFilterPass()

### isMultiallelic

public boolean isMultiallelic()
Is this multi-allelic (based ONLY on the number of ALTs) WARINIG: You should use 'calcHetero()' method for a more precise calculation.

### isShowWarningIfParentDoesNotInclude

protected boolean isShowWarningIfParentDoesNotInclude()
Description copied from class: `Marker`
Show an error if parent does not include child?

Overrides:
  `isShowWarningIfParentDoesNotInclude` in class `Marker`

### isSingleSnp

public boolean isSingleSnp()
Is thins a VCF entry with a single SNP?

### isSingleton

public boolean isSingleton()
Is this variant a singleton (appears only in one genotype)

### isVariant

public boolean isVariant()
Is this a change or are the ALTs actually the same as the reference

### isVariant

public boolean isVariant(String alt)
Is this ALT string a variant?

### iterator

public Iterator<VcfGenotype> iterator()

Specified by:
  `iterator` in interface `Iterable<VcfGenotype>`

### mac

public int mac()
Calculate Minor allele count

### maf

public double maf()
Calculate Minor allele frequency

### parse

public void parse()
Parse a 'line' from a 'vcfFileIterator'

### parseLof

public List<VcfLof> parseLof()
Parse LOF from VcfEntry

### parseNmd

public List<VcfNmd> parseNmd()
Parse NMD from VcfEntry

### removeInfo

public void removeInfo(String key)
Remove INFO field

### rmInfo

public boolean rmInfo(String info)
Parse INFO fields

### setFilter

public void setFilter(String filter)

### setFormat

public void setFormat(String format)

### setGenotypeStr

public void setGenotypeStr(String genotypeFieldsStr)

### setLineNum

public void setLineNum(int lineNum)

### toStr

public String toStr()
To string as a simple "CHR:START_REF/ALTs" format

Overrides:
  `toStr` in class `Interval`

### toString

public String toString()

Overrides:
  `toString` in class `Marker`

### toStringNoGt

public String toStringNoGt()
Show only first eight fields (no genotype entries)

### uncompressGenotypes

public VcfEntry uncompressGenotypes()
Uncompress VCF entry having genotypes in "HO,HE,NA" fields

### variants

public List<Variant> variants()
Create a list of variants from this VcfEntry