Refine search
public static int countInsertedBases(final Cigar cigar) { int ret = 0; for (final CigarElement element : cigar.getCigarElements()) { if (element.getOperator() == CigarOperator.INSERTION) ret += element.getLength(); } return ret; }
@Override public CigarOperator next() { if (currentElement == null || currentIndex >= currentElement.getLength()) { currentElement = it.next(); currentIndex = 0; } currentIndex++; return currentElement.getOperator(); } }
/** * Does one of the elements in cigar have a 0 length? * * @param c a non-null cigar * @return true if any element has 0 size */ @Requires("c != null") protected static boolean cigarHasZeroSizeElement(final Cigar c) { for (final CigarElement ce : c.getCigarElements()) { if (ce.getLength() == 0) return true; } return false; }
public static int countInsertedBases(final Cigar cigar) { int ret = 0; for (final CigarElement element : cigar.getCigarElements()) { if (element.getOperator() == CigarOperator.INSERTION) ret += element.getLength(); } return ret; }
/** * @return The number of reference bases that the read covers, excluding padding. */ public int getReferenceLength() { int length = 0; for (final CigarElement element : cigarElements) { switch (element.getOperator()) { case M: case D: case N: case EQ: case X: length += element.getLength(); } } return length; }
private static int numDeletionsInCigar( Cigar cigar ) { int numDeletions = 0; for(CigarElement cigarElement: cigar.getCigarElements()) { if(cigarElement.getOperator() == CigarOperator.DELETION) numDeletions += cigarElement.getLength(); } return numDeletions; } }
public static char[] cigarArrayFromElements(List<CigarElement> cigar){ int pos = 0; int length = 0; for (CigarElement e : cigar){ length += e.getLength(); } char[] result = new char[length]; for (CigarElement e : cigar){ for (int i = 0; i < e.getLength(); i++){ CigarOperator o = e.getOperator(); result[i+pos] = (char) CigarOperator.enumToCharacter(o); } pos += e.getLength(); } return result; }
public static int countDeletedBases(final Cigar cigar) { int ret = 0; for (final CigarElement element : cigar.getCigarElements()) { if (element.getOperator() == CigarOperator.DELETION) ret += element.getLength(); } return ret; }
private int calculateHardClippingAlignmentShift(CigarElement cigarElement, int clippedLength) { // Insertions should be discounted from the total hard clip count if (cigarElement.getOperator() == CigarOperator.INSERTION) return -clippedLength; // Deletions and Ns should be added to the total hard clip count (because we want to maintain the original alignment start) else if (cigarElement.getOperator() == CigarOperator.DELETION || cigarElement.getOperator() == CigarOperator.SKIPPED_REGION) return cigarElement.getLength(); // There is no shift if we are not clipping an indel return 0; }
public static int countDeletedBases(final Cigar cigar) { int ret = 0; for (final CigarElement element : cigar.getCigarElements()) { if (element.getOperator() == CigarOperator.DELETION) ret += element.getLength(); } return ret; }
public static char[] cigarArrayFromElements(List<CigarElement> cigar){ int pos = 0; int length = 0; for (CigarElement e : cigar){ length += e.getLength(); } char[] result = new char[length]; for (CigarElement e : cigar){ for (int i = 0; i < e.getLength(); i++){ CigarOperator o = e.getOperator(); result[i+pos] = (char) CigarOperator.enumToCharacter(o); } pos += e.getLength(); } return result; }
public static int countDeletedBases(final Cigar cigar) { int ret = 0; for (final CigarElement element : cigar.getCigarElements()) { if (element.getOperator() == CigarOperator.DELETION) ret += element.getLength(); } return ret; }
public static char[] cigarArrayFromElements(List<CigarElement> cigar){ int pos = 0; int length = 0; for (CigarElement e : cigar){ length += e.getLength(); } char[] result = new char[length]; for (CigarElement e : cigar){ for (int i = 0; i < e.getLength(); i++){ CigarOperator o = e.getOperator(); result[i+pos] = (char) CigarOperator.enumToCharacter(o); } pos += e.getLength(); } return result; }
public static int countInsertedBases(final Cigar cigar) { int ret = 0; for (final CigarElement element : cigar.getCigarElements()) { if (element.getOperator() == CigarOperator.INSERTION) ret += element.getLength(); } return ret; }
private int getRefOffset(CigarElement elem) { int offset = -1; switch(elem.getOperator()) { case M: case D: offset = elem.getLength(); break; case I: offset = 0; break; default: throw new IllegalArgumentException("Unexpected Cigar operator: " + elem.getOperator()); } return offset; }
public static int countBases(final Cigar cigar, final CigarOperator operator) { if (cigar == null) return 0; int n = 0; for (CigarElement ce : cigar.getCigarElements()) { if (ce.getOperator() == operator) { n += ce.getLength(); } } return n; } }
/** Returns the number of soft-clipped bases until a non-soft-clipping element is encountered. */ private static int lengthOfSoftClipping(Iterator<CigarElement> iterator) { int clipped = 0; while (iterator.hasNext()) { final CigarElement elem = iterator.next(); if (elem.getOperator() != CigarOperator.SOFT_CLIP && elem.getOperator() != CigarOperator.HARD_CLIP) { break; } if (elem.getOperator() == CigarOperator.SOFT_CLIP) { clipped = elem.getLength(); } } return clipped; }
static int getSoftClippedLength(Cigar readCigar) { int length = 0; for (CigarElement element : readCigar.getCigarElements()) { CigarOperator operator = element.getOperator(); if (operator == CigarOperator.M || operator == CigarOperator.I || operator == CigarOperator.S) { length += element.getLength(); } } return length; }
private int getReadOffset(CigarElement elem) { int offset = -1; switch(elem.getOperator()) { case M: case I: offset = elem.getLength(); break; case D: offset = 0; break; default: throw new IllegalArgumentException("Unexpected Cigar operator: " + elem.getOperator()); } return offset; }
static int getAlignedLength(Cigar readCigar) { int length = 0; for (CigarElement element : readCigar.getCigarElements()) { if (element.getOperator() == CigarOperator.M || element.getOperator() == CigarOperator.D) { length += element.getLength(); } } return length; }