7 #ifndef _HALREARRANGEMENT_H
8 #define _HALREARRANGEMENT_H
13 #include "halTopSegmentIterator.h"
27 enum ID { Insertion = 0, Deletion, Duplication, Translocation,
28 Transposition, Inversion, Complex, Invalid, Gap,
32 virtual ID
getID()
const = 0;
67 virtual std::pair<hal_index_t, hal_index_t>
getDeletedRange()
const = 0;
103 virtual bool getAtomic()
const = 0;
109 virtual void setNThreshold(
double nThreshold) = 0;
115 virtual double getNThreshold()
const = 0;
118 friend class counted_ptr<Rearrangement>;
119 friend class counted_ptr<const Rearrangement>;
virtual bool identifyFromLeftBreakpoint(TopSegmentIteratorConstPtr topSegment)=0
virtual void setAtomic(bool atomic)=0
virtual bool identifyDeletionFromLeftBreakpoint(TopSegmentIteratorConstPtr topSegment)=0
virtual std::pair< hal_index_t, hal_index_t > getDeletedRange() const =0
virtual bool identifyNext()=0
virtual void setGapLengthThreshold(hal_size_t threshold)=0
virtual std::pair< hal_index_t, hal_index_t > getInsertedRange() const =0
virtual hal_size_t getNumContainedGaps() const =0
virtual ~Rearrangement()=0
Definition: halRearrangement.h:124
virtual std::pair< hal_index_t, hal_index_t > getDuplicatedRange() const =0
virtual hal_size_t getNumContainedGapBases() const =0
virtual hal_size_t getGapLengthThreshold() const =0
Definition: halRearrangement.h:23
virtual bool identifyInsertionFromLeftBreakpoint(TopSegmentIteratorConstPtr topSegment)=0
virtual TopSegmentIteratorConstPtr getLeftBreakpoint() const =0
virtual TopSegmentIteratorConstPtr getRightBreakpoint() const =0
virtual hal_size_t getLength() const =0
virtual ID getID() const =0