public static ReadOrdinality of(final SAMRecord sam) { if (!sam.getReadPairedFlag()) { return null; } return sam.getFirstOfPairFlag() ? ReadOrdinality.FIRST : ReadOrdinality.SECOND; } }
private void updateTotalClusters(final SAMRecord rec, final Map<String, GcObject> gcData) { for (final Map.Entry<String, GcObject> entry : gcData.entrySet()) { final GcObject gcCur = entry.getValue(); if (!rec.getReadPairedFlag() || rec.getFirstOfPairFlag()) ++gcCur.totalClusters; } }
private void updateTotalClusters(final SAMRecord rec, final Map<String, GcObject> gcData) { for (final Map.Entry<String, GcObject> entry : gcData.entrySet()) { final GcObject gcCur = entry.getValue(); if (!rec.getReadPairedFlag() || rec.getFirstOfPairFlag()) ++gcCur.totalClusters; } }
public static ReadOrdinality of(final SAMRecord sam) { if (!sam.getReadPairedFlag()) { return null; } return sam.getFirstOfPairFlag() ? ReadOrdinality.FIRST : ReadOrdinality.SECOND; } }
public String getPairedReadName() { final StringBuilder builder = new StringBuilder(64); builder.append(getReadName()); if (getReadPairedFlag()) { if (getFirstOfPairFlag()) { builder.append(" 1/2"); } else { builder.append(" 2/2"); } } return builder.toString(); }
public String getPairedReadName() { final StringBuilder builder = new StringBuilder(64); builder.append(getReadName()); if (getReadPairedFlag()) { if (getFirstOfPairFlag()) { builder.append(" 1/2"); } else { builder.append(" 2/2"); } } return builder.toString(); }
@Override public boolean getFirstOfPairFlag() { if (!initializedFlags.contains(LazyFlag.FIRST_OF_PAIR)) { setFirstOfPairFlag(getFirstOfPairFlagImpl()); } return super.getFirstOfPairFlag(); }
@Override public boolean getFirstOfPairFlag() { if (!initializedFlags.contains(LazyFlag.FIRST_OF_PAIR)) { setFirstOfPairFlag(getFirstOfPairFlagImpl()); } return super.getFirstOfPairFlag(); }
protected static void assertPairedMates(final SAMRecord record1, final SAMRecord record2) { if (!(record1.getFirstOfPairFlag() && record2.getSecondOfPairFlag() || record2.getFirstOfPairFlag() && record1.getSecondOfPairFlag())) { throw new PicardException("Illegal mate state: " + record1.getReadName()); } }
protected static void assertPairedMates(final SAMRecord record1, final SAMRecord record2) { if (!(record1.getFirstOfPairFlag() && record2.getSecondOfPairFlag() || record2.getFirstOfPairFlag() && record1.getSecondOfPairFlag())) { throw new PicardException("Illegal mate state: " + record1.getReadName()); } }
public int getStreamIndex(SAMRecord record) { if (!record.getReadPairedFlag()) return 0; if (record.getFirstOfPairFlag()) return 1; if (record.getSecondOfPairFlag()) return 2; return 0; }
/** * Converts a {@link SAMRecord} into a {@link FastqRecord}. */ public static FastqRecord asFastqRecord(final SAMRecord record) { String readName = record.getReadName(); if(record.getReadPairedFlag() && (record.getFirstOfPairFlag() || record.getSecondOfPairFlag())) { readName += (record.getFirstOfPairFlag()) ? FastqConstants.FIRST_OF_PAIR : FastqConstants.SECOND_OF_PAIR; } return new FastqRecord(readName, record.getReadString(), record.getStringAttribute(SAMTag.CO.name()), record.getBaseQualityString()); }
/** * Converts a {@link SAMRecord} into a {@link FastqRecord}. */ public static FastqRecord asFastqRecord(final SAMRecord record) { String readName = record.getReadName(); if(record.getReadPairedFlag() && (record.getFirstOfPairFlag() || record.getSecondOfPairFlag())) { readName += (record.getFirstOfPairFlag()) ? FastqConstants.FIRST_OF_PAIR : FastqConstants.SECOND_OF_PAIR; } return new FastqRecord(readName, record.getReadString(), record.getStringAttribute(SAMTag.CO.name()), record.getBaseQualityString()); }
private void print(SAMRecord r1, SAMRecord r2) throws IOException { if (r1.getFirstOfPairFlag()) { print(r1, 1); print(r2, 2); } else { print(r1, 2); print(r2, 1); } }
private void assertMate(final SAMRecord rec, final SAMRecord mate) { Assert.assertNotNull(mate); Assert.assertEquals(mate.getReadName(), rec.getReadName()); Assert.assertEquals(mate.getReferenceIndex(), rec.getMateReferenceIndex()); if (SAMUtils.getMateCigarString(rec) != null) { Assert.assertEquals(mate.getCigarString(), SAMUtils.getMateCigarString(rec)); } Assert.assertEquals(mate.getAlignmentStart(), rec.getMateAlignmentStart()); Assert.assertFalse(mate.getFirstOfPairFlag() == rec.getFirstOfPairFlag()); }
@Override public void acceptRecord(final SAMRecord record, final ReferenceSequence refSeq) { if (!record.getReadPairedFlag() || record.getReadUnmappedFlag() || record.getMateUnmappedFlag() || record.getFirstOfPairFlag() || record.isSecondaryOrSupplementary() || (record.getDuplicateReadFlag() && !this.includeDuplicates) || record.getInferredInsertSize() == 0) { return; } super.acceptRecord(record, refSeq); }
@Override public void acceptRecord(final SAMRecord record, final ReferenceSequence refSeq) { if (!record.getReadPairedFlag() || record.getReadUnmappedFlag() || record.getMateUnmappedFlag() || record.getFirstOfPairFlag() || record.isSecondaryOrSupplementary() || (record.getDuplicateReadFlag() && !this.includeDuplicates) || record.getInferredInsertSize() == 0) { return; } super.acceptRecord(record, refSeq); }
private boolean isLowerMappedOfNonOverlappingConcordantPair(SAMRecord read) { return !read.getReadUnmappedFlag() && read.getReadPairedFlag() && !read.getMateUnmappedFlag() && read.getAlignmentEnd() < read.getMateAlignmentStart() && read.getReferenceIndex().equals(read.getMateReferenceIndex()) && (read.getAlignmentStart() < read.getMateAlignmentStart() || (read.getAlignmentStart() == read.getMateAlignmentStart() && read.getFirstOfPairFlag())) && pairing.isConcordant(read); } private String trackedBufferName_currentReferenceRead = "coverage.currentReferenceRead";
public MateKey getMateKey(SAMRecord read) { // If mate is mapped, use read flag. // If mate is not mapped, use opposite of this read's RC flag boolean isMateRevOrientation = read.getMateUnmappedFlag() ? !read.getReadNegativeStrandFlag() : read.getMateNegativeStrandFlag(); int matePos = read.getMateUnmappedFlag() ? -1 : read.getMateAlignmentStart(); int mateNum = read.getFirstOfPairFlag() ? 2 : 1; return new MateKey(read.getReadName(), matePos, read.getMateUnmappedFlag(), isMateRevOrientation, mateNum, read.getAlignmentStart()); }
void add(final SAMRecord record) { if (!record.getReadPairedFlag()) throw new PicardException("Record "+record.getReadName()+" is not paired"); if (record.getFirstOfPairFlag()) { if (mate1 != null) throw new PicardException("Mate 1 already set for record: "+record.getReadName()); mate1 = record ; } else if (record.getSecondOfPairFlag()) { if (mate2 != null) throw new PicardException("Mate 2 already set for record: "+record.getReadName()); mate2 = record ; } else throw new PicardException("Neither FirstOfPairFlag or SecondOfPairFlag is set for a paired record"); } }