Java Code Examples for htsjdk.samtools.SAMRecordSetBuilder#getRecords()
The following examples show how to use
htsjdk.samtools.SAMRecordSetBuilder#getRecords() .
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source File: ReadPairTest.java From Drop-seq with MIT License | 6 votes |
private List<SAMRecord> getPairedRead (final String name, final int contig, final int start1, final int start2) { List<SAMRecord> result = new ArrayList<> (); SAMRecordSetBuilder builder = new SAMRecordSetBuilder(); builder.addPair(name, contig, start1, start2); Collection<SAMRecord> recs = builder.getRecords(); for (SAMRecord r: recs) { if (r.getFirstOfPairFlag()) result.add(0, r); if (r.getSecondOfPairFlag()) result.add(1, r); r.setMappingQuality(10); } return (result); }
Example 2
Source File: FilterBamByTagTest.java From Drop-seq with MIT License | 5 votes |
/** * @return a paired read, first of pair in the first position of the list, 2nd of pair in the 2nd position. */ private List<SAMRecord> getPairedRead () { List<SAMRecord> result = new ArrayList<> (); SAMRecordSetBuilder builder = new SAMRecordSetBuilder(); builder.addUnmappedPair("test"); Collection<SAMRecord> recs = builder.getRecords(); for (SAMRecord r: recs) { if (r.getFirstOfPairFlag()) result.add(0, r); if (r.getSecondOfPairFlag()) result.add(1, r); } return (result); }
Example 3
Source File: BAMTestUtil.java From Hadoop-BAM with MIT License | 5 votes |
public static File writeBamFileWithLargeHeader() throws IOException { SAMRecordSetBuilder samRecordSetBuilder = new SAMRecordSetBuilder(true, SAMFileHeader.SortOrder.queryname); for (int i = 0; i < 1000; i++) { int chr = 20; int start1 = (i + 1) * 1000; int start2 = start1 + 100; samRecordSetBuilder.addPair(String.format("test-read-%03d", i), chr, start1, start2); } final File bamFile = File.createTempFile("test", ".bam"); bamFile.deleteOnExit(); SAMFileHeader samHeader = samRecordSetBuilder.getHeader(); StringBuffer sb = new StringBuffer(); for (int i = 0; i < 1000000; i++) { sb.append("0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789"); } samHeader.addComment(sb.toString()); final SAMFileWriter bamWriter = new SAMFileWriterFactory() .makeSAMOrBAMWriter(samHeader, true, bamFile); for (final SAMRecord rec : samRecordSetBuilder.getRecords()) { bamWriter.addAlignment(rec); } bamWriter.close(); return bamFile; }
Example 4
Source File: BAMTestUtil.java From Hadoop-BAM with MIT License | 4 votes |
public static File writeBamFile(int numPairs, SAMFileHeader.SortOrder sortOrder) throws IOException { // file will be both queryname and coordinate sorted, so use one or the other SAMRecordSetBuilder samRecordSetBuilder = new SAMRecordSetBuilder(true, sortOrder); for (int i = 0; i < numPairs; i++) { int chr = 20; int start1 = (i + 1) * 1000; int start2 = start1 + 100; if (i == 5) { // add two unmapped fragments instead of a mapped pair samRecordSetBuilder.addFrag(String.format("test-read-%03d-1", i), chr, start1, false, true, null, null, -1, false); samRecordSetBuilder.addFrag(String.format("test-read-%03d-2", i), chr, start2, false, true, null, null, -1, false); } else { samRecordSetBuilder.addPair(String.format("test-read-%03d", i), chr, start1, start2); } } if (numPairs > 0) { // add two unplaced unmapped fragments if non-empty samRecordSetBuilder.addUnmappedFragment(String.format ("test-read-%03d-unplaced-unmapped", numPairs++)); samRecordSetBuilder.addUnmappedFragment(String.format ("test-read-%03d-unplaced-unmapped", numPairs++)); } final File bamFile = File.createTempFile("test", ".bam"); bamFile.deleteOnExit(); SAMFileHeader samHeader = samRecordSetBuilder.getHeader(); final SAMFileWriter bamWriter = new SAMFileWriterFactory() .makeSAMOrBAMWriter(samHeader, true, bamFile); for (final SAMRecord rec : samRecordSetBuilder.getRecords()) { bamWriter.addAlignment(rec); } bamWriter.close(); // create BAM index if (sortOrder.equals(SAMFileHeader.SortOrder.coordinate)) { SamReader samReader = SamReaderFactory.makeDefault() .enable(SamReaderFactory.Option.INCLUDE_SOURCE_IN_RECORDS) .open(bamFile); BAMIndexer.createIndex(samReader, new File(bamFile.getAbsolutePath() .replaceFirst("\\.bam$", BAMIndex.BAMIndexSuffix))); } return bamFile; }