public VCFRecordCodec(final VCFHeader header, final boolean allowMissingFieldsInHeader) { this.vcfEncoder = new VCFEncoder(header, allowMissingFieldsInHeader, false); // Explicitly set the version because it's not available in the header itself. this.vcfDecoder.setVCFHeader(header, VCFHeaderVersion.VCF4_2); }
public VCFRecordCodec(final VCFHeader header) { this.vcfEncoder = new VCFEncoder(header, false); // Explicitly set the version because it's not available in the header itself. this.vcfDecoder.setVCFHeader(header, VCFHeaderVersion.VCF4_1); }
public VCFRecordCodec(final VCFHeader header, final boolean allowMissingFieldsInHeader) { this.vcfEncoder = new VCFEncoder(header, allowMissingFieldsInHeader, false); // Explicitly set the version because it's not available in the header itself. this.vcfDecoder.setVCFHeader(header, VCFHeaderVersion.VCF4_2); }
vcfCodec.setVCFHeader(this.getVcfHeader(), Utils.getVCFHeaderVersion(this.getVcfHeader())); VariantContext variantContext= vcfCodec.decode(line);
private VCFCodec getVCFCodec() { if(this.getVcfHeader() == null){ return null; } if(this.vcfCodec == null){ VCFCodec vcfCodec= new VCFCodec(); vcfCodec.setVCFHeader(this.getVcfHeader(), Utils.getVCFHeaderVersion(this.getVcfHeader())); this.vcfCodec= vcfCodec; } return this.vcfCodec; }
vcfCodec.setVCFHeader(vcfHeader, Utils.getVCFHeaderVersion(vcfHeader));
public VariantTransformTask(VCFHeader header, VCFHeaderVersion version, String studyId, VariantFileMetadata fileMetadata, Path outputFileJsonFile, VariantSetStatsCalculator variantStatsTask, boolean includeSrc, boolean generateReferenceBlocks) { this.variantStatsTask = variantStatsTask; this.factory = null; this.fileMetadata = fileMetadata; this.metadata = fileMetadata.toVariantStudyMetadata(studyId); this.outputFileJsonFile = outputFileJsonFile; this.includeSrc = includeSrc; this.vcfCodec = new FullVcfCodec(); this.vcfCodec.setVCFHeader(header, version); this.converter = new VariantContextToVariantConverter(studyId, fileMetadata.getId(), fileMetadata.getSampleIds()); this.normalizer = new VariantNormalizer(true, true, false); normalizer.setGenerateReferenceBlocks(generateReferenceBlocks); }
@Test public void canFormatVCFLineStructVar() throws InvalidGenomicCoordsException, InvalidColourException, IOException, InvalidConfigException{ List<Double> rulerMap= new ArrayList<Double>(); for(int i= 1; i < 100; i++){ rulerMap.add((double)i); } // Prepare header VCFFileReader reader = new VCFFileReader(new File("test_data/ALL.wgs.mergedSV.v8.20130502.svs.genotypes.vcf.gz")); VCFHeader vcfHeader= reader.getFileHeader(); reader.close(); VCFCodec vcfCodec= new VCFCodec(); vcfCodec.setVCFHeader(vcfHeader, Utils.getVCFHeaderVersion(vcfHeader)); String vcfLine= "1 668630 DUP_delly_DUP20532 G <CN2> . PASS AC=64;AF=0.0127795;AFR_AF=0.0015;AMR_AF=0;AN=5008;CIEND=-150,150;CIPOS=-150,150;CS=DUP_delly;EAS_AF=0.0595;END=850204;EUR_AF=0.001;IMPRECISE;NS=2504;SAS_AF=0.001;SITEPOST=1;SVTYPE=DUP GT 0|0 0|0 0|0".replaceAll(" ", "\t"); IntervalFeature ift= new IntervalFeature(vcfLine, TrackFormat.VCF, vcfCodec); ift.mapToScreen(rulerMap); assertEquals(850204, ift.getTo()); assertEquals("|", ift.getIdeogram(true, true).get(0).format(true)); }
codec.setVCFHeader(header, VCFHeaderVersion.VCF4_2);
/** test, using the writer and reader, that we can output and input a VCF body without problems */ @Test public void testWriteAndReadAsyncVCFHeaderless() throws IOException { final File fakeVCFFile = VariantBaseTest.createTempFile("testWriteAndReadAsyncVCFHeaderless.", IOUtil.VCF_FILE_EXTENSION); fakeVCFFile.deleteOnExit(); Tribble.indexFile(fakeVCFFile).deleteOnExit(); final Set<VCFHeaderLine> metaData = new HashSet<>(); final Set<String> additionalColumns = new HashSet<>(); final SAMSequenceDictionary sequenceDict = createArtificialSequenceDictionary(); final VCFHeader header = createFakeHeader(metaData, additionalColumns, sequenceDict); try (final VariantContextWriter writer = new VariantContextWriterBuilder() .setOutputFile(fakeVCFFile).setReferenceDictionary(sequenceDict) .setOptions(EnumSet.of(Options.ALLOW_MISSING_FIELDS_IN_HEADER, Options.INDEX_ON_THE_FLY, Options.USE_ASYNC_IO)) .build()) { writer.setHeader(header); writer.add(createVC(header)); writer.add(createVC(header)); } final VCFCodec codec = new VCFCodec(); codec.setVCFHeader(header, VCFHeaderVersion.VCF4_2); try (final FileInputStream fis = new FileInputStream(fakeVCFFile)) { final AsciiLineReaderIterator iterator = new AsciiLineReaderIterator(new AsciiLineReader(fis)); int counter = 0; while (iterator.hasNext()) { VariantContext context = codec.decode(iterator.next()); counter++; } Assert.assertEquals(counter, 2); } }
reader.close(); VCFCodec vcfCodec= new VCFCodec(); vcfCodec.setVCFHeader(vcfHeader, Utils.getVCFHeaderVersion(vcfHeader));