/** * Returns the contigs in this VCF file as a SAMSequenceDictionary. Returns null if contigs lines are * not present in the header. Throws SAMException if one or more contig lines do not have length * information. */ public SAMSequenceDictionary getSequenceDictionary() { final List<VCFContigHeaderLine> contigHeaderLines = this.getContigLines(); if (contigHeaderLines.isEmpty()) return null; final List<SAMSequenceRecord> sequenceRecords = new ArrayList<SAMSequenceRecord>(contigHeaderLines.size()); for (final VCFContigHeaderLine contigHeaderLine : contigHeaderLines) { sequenceRecords.add(contigHeaderLine.getSAMSequenceRecord()); } return new SAMSequenceDictionary(sequenceRecords); }
/** * Returns the contigs in this VCF file as a SAMSequenceDictionary. Returns null if contigs lines are * not present in the header. Throws SAMException if one or more contig lines do not have length * information. */ public SAMSequenceDictionary getSequenceDictionary() { final List<VCFContigHeaderLine> contigHeaderLines = this.getContigLines(); if (contigHeaderLines.isEmpty()) return null; final List<SAMSequenceRecord> sequenceRecords = new ArrayList<SAMSequenceRecord>(contigHeaderLines.size()); for (final VCFContigHeaderLine contigHeaderLine : contigHeaderLines) { sequenceRecords.add(contigHeaderLine.getSAMSequenceRecord()); } return new SAMSequenceDictionary(sequenceRecords); }
/** * Returns the contigs in this VCF file as a SAMSequenceDictionary. Returns null if contigs lines are * not present in the header. Throws SAMException if one or more contig lines do not have length * information. */ public SAMSequenceDictionary getSequenceDictionary() { final List<VCFContigHeaderLine> contigHeaderLines = this.getContigLines(); if (contigHeaderLines.isEmpty()) return null; final List<SAMSequenceRecord> sequenceRecords = new ArrayList<SAMSequenceRecord>(contigHeaderLines.size()); for (final VCFContigHeaderLine contigHeaderLine : contigHeaderLines) { sequenceRecords.add(contigHeaderLine.getSAMSequenceRecord()); } return new SAMSequenceDictionary(sequenceRecords); }
/** * Validate the VCF dictionary against the sequence dictionary. * * @param name the name of this specific track * @param descriptorName the name of the feature * @param reader the feature reader to use as the underlying data source * @param dict the sam sequence dictionary */ private void validateVariantAgainstSequenceDictionary(final String name, final String descriptorName, final AbstractFeatureReader reader, final SAMSequenceDictionary dict ) throws UserException { // only process if the variant is a VCF if ( name.equals("variant") && descriptorName.equals("VCF") ){ if ( reader != null && dict != null && reader.getHeader() != null ){ final List<VCFContigHeaderLine> contigs = ((VCFHeader) reader.getHeader()).getContigLines(); if (contigs != null) { // make the VCF dictionary from the contig header fields final List<SAMSequenceRecord> vcfContigRecords = new ArrayList<SAMSequenceRecord>(); for (final VCFContigHeaderLine contig : contigs) vcfContigRecords.add(contig.getSAMSequenceRecord()); // have VCF contig fields so can make a dictionary and compare it to the sequence dictionary if (!vcfContigRecords.isEmpty()) { final SAMSequenceDictionary vcfDictionary = new SAMSequenceDictionary(vcfContigRecords); final SAMSequenceDictionary sequenceDictionary = new SAMSequenceDictionary(dict.getSequences()); SequenceDictionaryUtils.validateDictionaries(logger, validationExclusionType, name, vcfDictionary, "sequence", sequenceDictionary, false, null, false); } } } } }
for (VCFContigHeaderLine line : vcfHeader.getContigLines()) { if (line.getID().equals(itv.getContig())) end = line.getSAMSequenceRecord().getSequenceLength();
VCFContigHeaderLine contigHeaderLine = (VCFContigHeaderLine) headerLine; long length = contigHeaderLine.getSAMSequenceRecord().getSequenceLength(); GenomicsDBVidMapProto.Chromosome.Builder contigBuilder = GenomicsDBVidMapProto.Chromosome.newBuilder();