@Override public void write(final SAMRecordsForCluster records) { for (final SAMRecord rec : records.records) { writer.addAlignment(rec); } }
@Override public void add(GATKSAMRecord read) { bamWriter.addAlignment(read); } }
/** * given a read and a output location, reduce by emitting the read * * @param read the read itself * @param output the output source * @return the SAMFileWriter, so that the next reduce can emit to the same source */ public SAMFileWriter reduce( GATKSAMRecord read, SAMFileWriter output ) { output.addAlignment(read); return output; }
@Override public void write(final SAMRecordsForCluster records) { for (final SAMRecord rec : records.records) { writer.addAlignment(rec); } }
/** * Close out the manager stream by clearing the read cache */ public void close() { // write out all of the remaining reads while ( ! waitingReads.isEmpty() ) writer.addAlignment(waitingReads.poll().read); }
/** Adds a record to the sink. */ void add(final SAMRecord rec) { if (writer != null) { writer.addAlignment(rec); } if (sorter != null) { sorter.add(rec); } }
private void writeRead(SAMRecord read) { try { if ( writer != null ) writer.addAlignment(read); } catch (IllegalArgumentException e) { throw new UserException("If the maximum allowable reads in memory is too small, it may cause reads to be written out of order when trying to write the BAM; please see the --maxReadsInMemory argument for details. " + e.getMessage(), e); } }
/** Adds a record to the sink. */ void add(final SAMRecord rec) { if (writer != null) { writer.addAlignment(rec); } if (sorter != null) { sorter.add(rec); } }
@Override public SAMFileWriter reduce(final GATKSAMRecord read, final SAMFileWriter output) { output.addAlignment(read); return output; } }
@Override protected void acceptRead(SAMRecord rec, ReferenceSequence ref) { if (extractor.shouldExtract(rec)) { writer.addAlignment(rec); } }
private int writeAlignments(SAMFileWriter writer, Iterator<PicardAlignment> alignments) { int count = 0; while (alignments.hasNext()) { PicardAlignment al = alignments.next(); writer.addAlignment(al.getRecord()); count++; } writer.close(); return count; }
void addAlignment(final SAMRecord rec) { final SAMFileWriter writer; if (outputByReadGroup) { writer = writerMap.get(rec.getReadGroup().getId()); } else { writer = singleWriter; } writer.addAlignment(rec); }
public void addAlignment( SAMRecord read ) { if ( keepRead(read) ) { dest.addAlignment(simplifyRead(read)); } }
private void processUnmapped(SAMFileWriter output, String inputBam) throws IOException { Logger.debug("Processing unmapped reads..."); SamReader reader = SAMRecordUtils.getSamReader(inputBam); // This should give us only read pairs with both ends unmapped Iterator<SAMRecord> iter = reader.queryUnmapped(); while (iter.hasNext()) { SAMRecord read = iter.next(); output.addAlignment(read); } reader.close(); }
/** * Write the reads from this builder to output, creating an index as well * @param output the output BAM file we want to use * @return */ public File makeBAMFile(final File output) { final SAMFileWriter writer = factory.makeBAMWriter(header, true, output, 0); for ( final GATKSAMRecord read : makeReads() ) writer.addAlignment(read); writer.close(); return output; }
@Override protected void ready(BAMRead read) { int streamIndex = getStreamIndex(read.getRecord()); writers[streamIndex].addAlignment(read.getRecord()); ready++; }
private void createBAM(final List<GATKSAMRecord> reads) throws IOException { testBAM = createTempFile("TraverseActiveRegionsUnitTest", ".bam"); SAMFileWriter out = new SAMFileWriterFactory().setCreateIndex(true).makeBAMWriter(reads.get(0).getHeader(), true, testBAM); for (GATKSAMRecord read : reads ) { out.addAlignment(read); } out.close(); new File(testBAM.getAbsolutePath().replace(".bam", ".bai")).deleteOnExit(); new File(testBAM.getAbsolutePath() + ".bai").deleteOnExit(); }
private void createBAM(List<GATKSAMRecord> reads) throws IOException { testBAM = createTempFile("TraverseActiveRegionsUnitTest", ".bam"); SAMFileWriter out = new SAMFileWriterFactory().setCreateIndex(true).makeBAMWriter(reads.get(0).getHeader(), true, testBAM); for (GATKSAMRecord read : ReadUtils.sortReadsByCoordinate(reads)) { out.addAlignment(read); } out.close(); new File(testBAM.getAbsolutePath().replace(".bam", ".bai")).deleteOnExit(); new File(testBAM.getAbsolutePath() + ".bai").deleteOnExit(); }
private int fillSmallBam(SAMFileWriter writer) { final SAMRecordSetBuilder builder = new SAMRecordSetBuilder(); builder.addUnmappedFragment("HiMom!"); int numRecs = builder.getRecords().size(); for (final SAMRecord rec: builder.getRecords()) { writer.addAlignment(rec); } return numRecs; }
protected void kickedFromCache(FastqRead read) { if (writer == null) { log.info("Creating overflow BAM file."); headerForOverflowWriter = header.clone(); headerForOverflowWriter.setSortOrder(SAMFileHeader.SortOrder.queryname); writer = new SAMFileWriterFactory().makeBAMWriter(headerForOverflowWriter, false, cacheOverFlowStream); } SAMRecord r = read.toSAMRecord(writer.getFileHeader()); writer.addAlignment(r); }