#include <halSlicedSegment.h>
Public Member Functions | |
virtual void | toReverse () const =0 |
virtual void | toReverseInPlace () const =0 |
virtual hal_offset_t | getStartOffset () const =0 |
virtual hal_offset_t | getEndOffset () const =0 |
virtual void | slice (hal_offset_t startOffset=0, hal_offset_t endOffset=0) const =0 |
virtual bool | getReversed () const =0 |
![]() | |
virtual void | setArrayIndex (Genome *genome, hal_index_t arrayIndex)=0 |
virtual void | setArrayIndex (const Genome *genome, hal_index_t arrayIndex) const =0 |
virtual const Genome * | getGenome () const =0 |
virtual Genome * | getGenome ()=0 |
virtual const Sequence * | getSequence () const =0 |
virtual Sequence * | getSequence ()=0 |
virtual hal_index_t | getStartPosition () const =0 |
virtual hal_index_t | getEndPosition () const =0 |
virtual hal_size_t | getLength () const =0 |
virtual void | getString (std::string &outString) const =0 |
virtual void | setCoordinates (hal_index_t startPos, hal_size_t length)=0 |
virtual hal_index_t | getArrayIndex () const =0 |
virtual bool | leftOf (hal_index_t genomePos) const =0 |
virtual bool | rightOf (hal_index_t genomePos) const =0 |
virtual bool | overlaps (hal_index_t genomePos) const =0 |
virtual bool | isFirst () const =0 |
virtual bool | isLast () const =0 |
virtual bool | isMissingData (double nThreshold) const =0 |
virtual bool | isTop () const =0 |
virtual hal_size_t | getMappedSegments (std::set< MappedSegmentConstPtr > &outSegments, const Genome *tgtGenome, const std::set< const Genome * > *genomesOnPath=NULL, bool doDupes=true, hal_size_t minLength=0) const =0 |
virtual void | print (std::ostream &os) const =0 |
Friends | |
class | counted_ptr< SlicedSegment > |
class | counted_ptr< const SlicedSegment > |
Interface for a sliced segement. This extends the segment interface by allowing slicing (accessing just subintervals of the segmenet), along with reversing.
|
pure virtual |
Get the iterator's end offset. This is used when moving vertically and following the parse index. Any part of the segment after the end offset is ignored by the iterator
|
pure virtual |
Check whether iterator is on segment's reverse complement
|
pure virtual |
Get the iterator's start offset. This is used when moving vertically and following the parse index. Any part of the segment before the start offset is ignored by the iterator
|
pure virtual |
Set the iterator's start and end offsets
startOffset | offset from beginning of segment |
endOffset | offset from end of segment |
|
pure virtual |
switch to segment's reverse complement
|
pure virtual |
switch to segment's reverse complement without affecting the coordinates in the forward strand. Unless the segment is sliced this will have an identical effect to toReverse(). Both methods can be useful in different situations but the distinction is confusing. For example, if the segment represents range [0, 10] on the forward strand but is sliced to to the subregion [3,8], then toReverse() will result in the the region [7,2], but to toReverseInPlace() would yield [8,3].