VCF Parsing - IGV is using htsjdk library for parsing and structure the VCF data.
Key Classes used as part of VCF parsing:
1. Inbuilt classes:
- VCFFileReader - reads the vcf file
- VCFCodec - inbuilt class in htsjdk used for reading, parsing vcf files
- extracts all information like INFO, FORMAT, FILTER fields from file
- basically converts a vcf file into particular type of objects (VariantContext)
- VariantContext
- used for representing single variant record and has details like CHROM, POS, REF, ALT, genotypes
- stores parsed data in structured way
- Genotype - represents genotype information
2. Custom classes - created on top of built-in to handle logic according to requirements for better visualisation.
- VCFVariant - custom wrapper around existing inbuilt VariantContext
- more of formatting data
- calculates allele freq, metadata or required data that has to be shown in UI
- VCFGenotype - formats genotype data
For displaying or rendering elements for visualisation
- VariantTrack - render vcf variants
- VariantRenderer - handle graphical representation of variants
VCF Parsing - IGV is using htsjdk library for parsing and structure the VCF data.
Key Classes used as part of VCF parsing:
1. Inbuilt classes:
2. Custom classes - created on top of built-in to handle logic according to requirements for better visualisation.
For displaying or rendering elements for visualisation