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;
78 bool SequencesHaveEqualLength()
const
80 return this->GetMaxLength()==this->GetMinLength();
83 Real GetCoverage(
int seq_index)
const;
94 std::vector<SequenceImplPtr> list_;