All Classes Namespaces Functions Pages
halTopSegment.h
/*
* Copyright (C) 2012 by Glenn Hickey (hickey@soe.ucsc.edu)
*
* Released under the MIT license, see LICENSE.txt
*/
#ifndef _HALTOPSEGMENT_H
#define _HALTOPSEGMENT_H
#include "halDefs.h"
#include "halSegment.h"
namespace hal {
class TopSegment : virtual public Segment
{
public:
virtual hal_index_t getParentIndex() const = 0;
/* Check if segment has a parent bottom segment */
virtual bool hasParent() const = 0;
virtual void setParentIndex(hal_index_t parIdx) = 0;
virtual bool getParentReversed() const = 0;
virtual void setParentReversed(bool isReversed) = 0;
virtual hal_index_t getBottomParseIndex() const = 0;
virtual void setBottomParseIndex(hal_index_t botParseIdx) = 0;
virtual hal_offset_t getBottomParseOffset() const = 0;
/* Check if segment has a "down" parse bottom segment in the same genome.
* This segment should exist by definition unless in a leaf genome */
virtual bool hasParseDown() const = 0;
virtual hal_index_t getNextParalogyIndex() const = 0;
/* Check if top segment has a paralgy in the same genome */
virtual bool hasNextParalogy() const = 0;
virtual void setNextParalogyIndex(hal_index_t parIdx) = 0;
virtual hal_index_t getLeftParentIndex() const = 0;
virtual hal_index_t getRightParentIndex() const = 0;
virtual bool isCanonicalParalog() const = 0;
protected:
friend class counted_ptr<TopSegment>;
friend class counted_ptr<const TopSegment>;
virtual ~TopSegment() = 0;
};
inline TopSegment::~TopSegment() {}
}
#endif
hal::TopSegment::setNextParalogyIndex
virtual void setNextParalogyIndex(hal_index_t parIdx)=0
hal::Segment
Definition: halSegment.h:21
hal::TopSegment::getRightParentIndex
virtual hal_index_t getRightParentIndex() const =0
hal::TopSegment
Definition: halTopSegment.h:18
hal::TopSegment::setParentReversed
virtual void setParentReversed(bool isReversed)=0
hal::TopSegment::setBottomParseIndex
virtual void setBottomParseIndex(hal_index_t botParseIdx)=0
hal::TopSegment::getParentReversed
virtual bool getParentReversed() const =0
hal::TopSegment::getBottomParseIndex
virtual hal_index_t getBottomParseIndex() const =0
hal::TopSegment::getParentIndex
virtual hal_index_t getParentIndex() const =0
hal::TopSegment::getLeftParentIndex
virtual hal_index_t getLeftParentIndex() const =0
hal::TopSegment::isCanonicalParalog
virtual bool isCanonicalParalog() const =0
hal::TopSegment::getBottomParseOffset
virtual hal_offset_t getBottomParseOffset() const =0
hal::TopSegment::setParentIndex
virtual void setParentIndex(hal_index_t parIdx)=0
hal::TopSegment::getNextParalogyIndex
virtual hal_index_t getNextParalogyIndex() const =0