halapi
hierarchichalalignmentformatapi
 All Classes Namespaces Functions Pages
Classes | Public Member Functions | Friends | List of all members
hal::MappedSegment Class Referenceabstract

#include <halMappedSegment.h>

Inheritance diagram for hal::MappedSegment:
hal::SlicedSegment hal::Segment

Classes

struct  EqualTo
 
struct  Less
 
struct  LessSource
 

Public Member Functions

virtual SlicedSegmentConstPtr getSource () const =0
 
virtual bool lessThan (const MappedSegmentConstPtr &other) const =0
 
virtual bool lessThanBySource (const MappedSegmentConstPtr &other) const =0
 
virtual bool equals (const MappedSegmentConstPtr &other) const =0
 
virtual void flip () const =0
 
virtual void fullReverse () const =0
 
virtual MappedSegmentConstPtr copy () const =0
 
virtual bool canMergeRightWith (const MappedSegmentConstPtr &next, const std::set< hal_index_t > *cutSet=NULL, const std::set< hal_index_t > *sourceCutSet=NULL) const =0
 
virtual void print (std::ostream &os) const =0
 
- Public Member Functions inherited from hal::SlicedSegment
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
 
- Public Member Functions inherited from hal::Segment
virtual void setArrayIndex (Genome *genome, hal_index_t arrayIndex)=0
 
virtual void setArrayIndex (const Genome *genome, hal_index_t arrayIndex) const =0
 
virtual const GenomegetGenome () const =0
 
virtual GenomegetGenome ()=0
 
virtual const SequencegetSequence () const =0
 
virtual SequencegetSequence ()=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
 

Friends

class counted_ptr< MappedSegment >
 
class counted_ptr< const MappedSegment >
 

Detailed Description

Interface for a mapped segement. A mapped segment keeps track of a homologous region in another genome (from which it was mapped). Mapped segments are used to keep pairwise alignment fragments across the tree as an alternative to the column iterator.

Member Function Documentation

virtual bool hal::MappedSegment::canMergeRightWith ( const MappedSegmentConstPtr &  next,
const std::set< hal_index_t > *  cutSet = NULL,
const std::set< hal_index_t > *  sourceCutSet = NULL 
) const
pure virtual

Test if mapped segment can be merged to the right with input segment. will return false if the right coordinate of this is in either (optional) cutSet.

virtual MappedSegmentConstPtr hal::MappedSegment::copy ( ) const
pure virtual

Return of a copy of the mapped segment

virtual bool hal::MappedSegment::equals ( const MappedSegmentConstPtr &  other) const
pure virtual

Comparison used to determine uniqueness in lists. Tests lessThan in both directions. Note that equality is the same regardless of whether or not we use the source segment as our primary index.

virtual void hal::MappedSegment::flip ( ) const
pure virtual

Flip the mapping direction. This segment becomes the source, and the source becomes this.

virtual void hal::MappedSegment::fullReverse ( ) const
pure virtual

Reverse both segments. Also swap their start and end offsets. Note that toReverse() does not reverse the source segment.

virtual SlicedSegmentConstPtr hal::MappedSegment::getSource ( ) const
pure virtual

Get the original segment from which this segment was mapped

virtual bool hal::MappedSegment::lessThan ( const MappedSegmentConstPtr &  other) const
pure virtual

Comparison used to store in stl sets and maps. We sort based on the coordinate of the mapped segemnt's (target) interval as the primary index and the target genome as the secondary index.

virtual bool hal::MappedSegment::lessThanBySource ( const MappedSegmentConstPtr &  other) const
pure virtual

Comparison used to store in STL containers. We sort based on the coordinate of the Source genome interval as the primary index and the target genome as the secondary index.

virtual void hal::MappedSegment::print ( std::ostream &  os) const
pure virtual

Print contents of segment

Implements hal::Segment.


The documentation for this class was generated from the following file: