/** * Returns the standard info line for {@code ID}. * If none exists throw a {@link TribbleException}. */ public static VCFInfoHeaderLine getInfoLine(final String ID) { return getInfoLine(ID, true); }
/** * @see #addStandardFormatLines(java.util.Set, boolean, java.util.Collection) */ public static Set<String> addStandardFormatLines(final Set<VCFHeaderLine> headerLines, final boolean throwErrorForMissing, final String ... IDs) { return addStandardFormatLines(headerLines, throwErrorForMissing, Arrays.asList(IDs)); }
@Override public List<VCFFormatHeaderLine> getDescriptions() { return Collections.singletonList(VCFStandardHeaderLines.getFormatLine(VCFConstants.DEPTH_KEY)); } }
/** * Gets the header lines for the VCF writer * * @return A set of VCF header lines */ private static Set<VCFHeaderLine> getHeaderInfo() { Set<VCFHeaderLine> headerLines = new HashSet<>(); // INFO fields for overall data headerLines.add(VCFStandardHeaderLines.getInfoLine(VCFConstants.END_KEY)); headerLines.add(GATKVCFHeaderLines.getInfoLine(GATKVCFConstants.AVG_INTERVAL_DP_KEY)); headerLines.add(GATKVCFHeaderLines.getInfoLine(GATKVCFConstants.INTERVAL_GC_CONTENT_KEY)); headerLines.add(new VCFInfoHeaderLine("Diagnose Targets", 0, VCFHeaderLineType.Flag, "DiagnoseTargets mode")); // FORMAT fields for each genotype headerLines.add(VCFStandardHeaderLines.getFormatLine(VCFConstants.GENOTYPE_FILTER_KEY)); headerLines.add(GATKVCFHeaderLines.getFormatLine(GATKVCFConstants.AVG_INTERVAL_DP_BY_SAMPLE_KEY)); headerLines.add(GATKVCFHeaderLines.getFormatLine(GATKVCFConstants.LOW_COVERAGE_LOCI)); headerLines.add(GATKVCFHeaderLines.getFormatLine(GATKVCFConstants.ZERO_COVERAGE_LOCI)); // FILTER fields for (CallableStatus stat : CallableStatus.values()) headerLines.add(new VCFFilterHeaderLine(stat.name(), stat.description)); return headerLines; }
headerLines.add(GATKVCFHeaderLines.getInfoLine(GATKVCFConstants.MLE_ALLELE_FREQUENCY_KEY)); headerLines.add(GATKVCFHeaderLines.getFormatLine(GATKVCFConstants.REFERENCE_GENOTYPE_QUALITY)); headerLines.add(VCFStandardHeaderLines.getInfoLine(VCFConstants.DEPTH_KEY)); // needed for gVCFs without DP tags VCFStandardHeaderLines.addStandardInfoLines(headerLines, true, VCFConstants.DBSNP_KEY);
VCFStandardHeaderLines.addStandardInfoLines(headerInfo, true, VCFConstants.STRAND_BIAS_KEY); VCFStandardHeaderLines.addStandardInfoLines(headerInfo, true, VCFConstants.DBSNP_KEY); VCFStandardHeaderLines.addStandardFormatLines(headerInfo, true, VCFConstants.GENOTYPE_KEY, VCFConstants.GENOTYPE_QUALITY_KEY,
/** * Explicitly set the VCFHeader on this codec. This will overwrite the header read from the file * and the version state stored in this instance; conversely, reading the header from a file will * overwrite whatever is set here. The returned header may not be identical to the header argument * since the header lines may be "repaired" (i.e., rewritten) if doOnTheFlyModifications is set. */ public VCFHeader setVCFHeader(final VCFHeader header, final VCFHeaderVersion version) { this.version = version; if (this.doOnTheFlyModifications) this.header = VCFStandardHeaderLines.repairStandardHeaderLines(header); else this.header = header; return this.header; }
/** * @see #addStandardFormatLines(java.util.Set, boolean, java.util.Collection) */ public static Set<String> addStandardInfoLines(final Set<VCFHeaderLine> headerLines, final boolean throwErrorForMissing, final String ... IDs) { return addStandardInfoLines(headerLines, throwErrorForMissing, Arrays.asList(IDs)); }
hInfo.add(VCFStandardHeaderLines.getInfoLine(VCFConstants.ALLELE_COUNT_KEY)); hInfo.add(VCFStandardHeaderLines.getInfoLine(VCFConstants.ALLELE_NUMBER_KEY)); hInfo.add(VCFStandardHeaderLines.getInfoLine(VCFConstants.ALLELE_FREQUENCY_KEY)); hInfo.add(VCFStandardHeaderLines.getFormatLine(VCFConstants.GENOTYPE_FILTER_KEY));
/** * Explicitly set the VCFHeader on this codec. This will overwrite the header read from the file * and the version state stored in this instance; conversely, reading the header from a file will * overwrite whatever is set here. The returned header may not be identical to the header argument * since the header lines may be "repaired" (i.e., rewritten) if doOnTheFlyModifications is set. */ public VCFHeader setVCFHeader(final VCFHeader header, final VCFHeaderVersion version) { this.version = version; if (this.doOnTheFlyModifications) this.header = VCFStandardHeaderLines.repairStandardHeaderLines(header); else this.header = header; return this.header; }
/** * @see #addStandardFormatLines(java.util.Set, boolean, java.util.Collection) */ public static Set<String> addStandardInfoLines(final Set<VCFHeaderLine> headerLines, final boolean throwErrorForMissing, final String ... IDs) { return addStandardInfoLines(headerLines, throwErrorForMissing, Arrays.asList(IDs)); }
/** * Returns the standard info line for {@code ID}. * If none exists throw a {@link TribbleException}. */ public static VCFInfoHeaderLine getInfoLine(final String ID) { return getInfoLine(ID, true); }
@Test(dataProvider = "getStandardLines") public void getStandardLines(final String key, final String type, final boolean expectedToBeStandard) { VCFCompoundHeaderLine line = null; if ( type.equals("info") ) line = VCFStandardHeaderLines.getInfoLine(key, false); else if ( type.equals("format") ) line = VCFStandardHeaderLines.getFormatLine(key, false); else throw new IllegalArgumentException("Unexpected type in getStandardLines " + type); if ( expectedToBeStandard ) { Assert.assertNotNull(line); Assert.assertEquals(line.getID(), key); Assert.assertTrue(deeperTest(line)); } else { Assert.assertNull(line); } }
/** * @see #addStandardFormatLines(java.util.Set, boolean, java.util.Collection) * * @param headerLines * @param throwErrorForMissing * @param IDs * @return */ public static Set<String> addStandardFormatLines(final Set<VCFHeaderLine> headerLines, final boolean throwErrorForMissing, final String ... IDs) { return addStandardFormatLines(headerLines, throwErrorForMissing, Arrays.asList(IDs)); }
public List<VCFFormatHeaderLine> getDescriptions() { return Arrays.asList(VCFStandardHeaderLines.getFormatLine(getKeyNames().get(0))); } }
/** * Explicitly set the VCFHeader on this codec. This will overwrite the header read from the file * and the version state stored in this instance; conversely, reading the header from a file will * overwrite whatever is set here. The returned header may not be identical to the header argument * since the header lines may be "repaired" (i.e., rewritten) if doOnTheFlyModifications is set. */ public VCFHeader setVCFHeader(final VCFHeader header, final VCFHeaderVersion version) { this.version = version; if (this.doOnTheFlyModifications) this.header = VCFStandardHeaderLines.repairStandardHeaderLines(header); else this.header = header; return this.header; }
/** * @see #addStandardFormatLines(java.util.Set, boolean, java.util.Collection) * * @param IDs * @return */ public static Set<String> addStandardInfoLines(final Set<VCFHeaderLine> headerLines, final boolean throwErrorForMissing, final String ... IDs) { return addStandardInfoLines(headerLines, throwErrorForMissing, Arrays.asList(IDs)); }
/** * Returns the standard info line for ID. If none exists throw an exception * * @param ID * @return */ public static VCFInfoHeaderLine getInfoLine(final String ID) { return getInfoLine(ID, true); }
@DataProvider(name = "RepairHeaderTest") public Object[][] makeRepairHeaderTest() { final VCFInfoHeaderLine standardAC = VCFStandardHeaderLines.getInfoLine("AC"); final VCFInfoHeaderLine goodAC = new VCFInfoHeaderLine("AC", VCFHeaderLineCount.A, VCFHeaderLineType.Integer, "x"); final VCFFormatHeaderLine standardGT = VCFStandardHeaderLines.getFormatLine("GT"); final VCFFormatHeaderLine goodGT = new VCFFormatHeaderLine("GT", 1, VCFHeaderLineType.String, "x"); List<Object[]> tests = new ArrayList<Object[]>(); tests.add(new Object[]{new RepairHeaderTest( standardGT, standardGT)}); tests.add(new Object[]{new RepairHeaderTest( goodGT, goodGT )}); tests.add(new Object[]{new RepairHeaderTest( new VCFFormatHeaderLine("GT", 2, VCFHeaderLineType.String, "x"), standardGT)}); tests.add(new Object[]{new RepairHeaderTest( new VCFFormatHeaderLine("GT", 1, VCFHeaderLineType.Integer, "x"), standardGT)}); tests.add(new Object[]{new RepairHeaderTest( new VCFFormatHeaderLine("GT", 1, VCFHeaderLineType.Float, "x"), standardGT)}); tests.add(new Object[]{new RepairHeaderTest( new VCFFormatHeaderLine("GT", VCFHeaderLineCount.UNBOUNDED, VCFHeaderLineType.Float, "x"), standardGT)}); tests.add(new Object[]{new RepairHeaderTest( new VCFFormatHeaderLine("GT", VCFHeaderLineCount.G, VCFHeaderLineType.String, "x"), standardGT)}); tests.add(new Object[]{new RepairHeaderTest( new VCFFormatHeaderLine("GT", VCFHeaderLineCount.A, VCFHeaderLineType.String, "x"), standardGT)}); tests.add(new Object[]{new RepairHeaderTest( standardAC, standardAC)}); tests.add(new Object[]{new RepairHeaderTest( goodAC, goodAC )}); tests.add(new Object[]{new RepairHeaderTest( new VCFInfoHeaderLine("AC", 1, VCFHeaderLineType.Integer, "x"), standardAC)}); tests.add(new Object[]{new RepairHeaderTest( new VCFInfoHeaderLine("AC", VCFHeaderLineCount.G, VCFHeaderLineType.Integer, "x"), standardAC)}); tests.add(new Object[]{new RepairHeaderTest( new VCFInfoHeaderLine("AC", VCFHeaderLineCount.UNBOUNDED, VCFHeaderLineType.Integer, "x"), standardAC)}); tests.add(new Object[]{new RepairHeaderTest( new VCFInfoHeaderLine("AC", 1, VCFHeaderLineType.Float, "x"), standardAC)}); tests.add(new Object[]{new RepairHeaderTest( new VCFInfoHeaderLine("AC", 1, VCFHeaderLineType.String, "x"), standardAC)}); tests.add(new Object[]{new RepairHeaderTest( new VCFInfoHeaderLine("AC", 0, VCFHeaderLineType.Flag, "x"), standardAC)}); tests.add(new Object[]{new RepairHeaderTest( new VCFInfoHeaderLine("AC", 0, VCFHeaderLineType.Flag, "x", "source", "v1.2.3"), standardAC)}); tests.add(new Object[]{new RepairHeaderTest( new VCFInfoHeaderLine("NON_STANDARD_INFO", 1, VCFHeaderLineType.String, "x"))}); tests.add(new Object[]{new RepairHeaderTest( new VCFFormatHeaderLine("NON_STANDARD_FORMAT", 1, VCFHeaderLineType.String, "x"))}); return tests.toArray(new Object[][]{}); }
/** * @see #addStandardFormatLines(java.util.Set, boolean, java.util.Collection) */ public static Set<String> addStandardFormatLines(final Set<VCFHeaderLine> headerLines, final boolean throwErrorForMissing, final String ... IDs) { return addStandardFormatLines(headerLines, throwErrorForMissing, Arrays.asList(IDs)); }