19 #ifndef OST_SEQ_SEQUENCE_LIST_IMPL_HH
20 #define OST_SEQ_SEQUENCE_LIST_IMPL_HH
26 #include <boost/shared_ptr.hpp>
30 namespace ost {
namespace seq {
namespace impl {
45 unsigned int index =
static_cast<unsigned int>(i);
46 if (index<list_.size()) {
49 throw std::out_of_range(
"Index not covered SequenceList");
53 unsigned int index =
static_cast<unsigned int>(i);
54 if (index<list_.size()) {
57 throw std::out_of_range(
"Index not covered SequenceList");
61 void RemoveSequence(
int index);
62 int GetPos(
int seq_index,
int residue_index)
const;
64 int GetResidueIndex(
int seq_index,
int pos)
const;
68 int FindSequenceIndex(
const String& name)
const;
70 String ToString(
int width=80)
const;
73 int GetMinLength()
const;
76 int GetMaxLength()
const;
80 return this->GetMaxLength()==this->GetMinLength();
83 Real GetCoverage(
int seq_index)
const;
94 std::vector<SequenceImplPtr> list_;
102 info::InfoGroup& group);
107 SequenceListImplFromInfo(info::InfoGroup& group);
#define DLLEXPORT_OST_SEQ
SequenceListImplVector::iterator SequenceImplListIterator
boost::shared_ptr< SequenceListImpl > SequenceListImplPtr
SequenceImplListConstIterator ConstIterator
SequenceImplListIterator Iterator
SequenceImplPtr & GetSequence(int i)
boost::shared_ptr< SequenceImpl > SequenceImplPtr
int GetCount() const
get number of sequences in list
SequenceListImplVector::const_iterator SequenceImplListConstIterator
ConstIterator End() const
bool SequencesHaveEqualLength() const
ConstIterator Begin() const
const SequenceImplPtr & GetSequence(unsigned int i) const