bool Interval::operator<(const Interval & b) const { if(getStart() == b.getStart()){ return (getStop() < b.getStop()); } return (getStart() < b.getStart()); }
bool Interval::overlaps(const Interval & b, bool strand_specific){ if(getStrand() == b.getStrand() || getStrand() == BOTH || b.getStrand() == BOTH || !strand_specific){ return (getStart() < b.getStop() && b.getStart() < getStop()); } return false; }