41 #ifndef _ORDEREDSEQUENCECONTAINER_H_ 42 #define _ORDEREDSEQUENCECONTAINER_H_ 44 #include "../Sequence.h" 71 virtual const std::vector<int>&
getContent(
size_t sequenceIndex)
const throw (IndexOutOfBoundsException) = 0;
80 virtual std::string
toString(
size_t sequenceIndex)
const throw (IndexOutOfBoundsException) = 0;
90 virtual const Sequence&
getSequence(
size_t sequenceIndex)
const throw (IndexOutOfBoundsException) = 0;
102 virtual void setSequence(
size_t sequenceIndex,
const Sequence& sequence,
bool checkName)
throw (Exception) = 0;
120 virtual void deleteSequence(
size_t sequenceIndex)
throw (IndexOutOfBoundsException, Exception) = 0;
130 virtual const std::string&
getName(
size_t sequenceIndex)
const throw (IndexOutOfBoundsException) = 0;
140 virtual const Comments&
getComments(
size_t sequenceIndex)
const throw (IndexOutOfBoundsException) = 0;
150 virtual void setComments(
size_t sequenceIndex,
const Comments & comments)
throw (IndexOutOfBoundsException) = 0;
184 virtual int&
valueAt(
size_t sequenceIndex,
size_t elementIndex)
throw (IndexOutOfBoundsException) = 0;
195 virtual const int&
valueAt(
size_t sequenceIndex,
size_t elementIndex)
const throw (IndexOutOfBoundsException) = 0;
207 virtual int&
operator()(
size_t sequenceIndex,
size_t elementIndex) = 0;
219 virtual const int&
operator()(
size_t sequenceIndex,
size_t elementIndex)
const = 0;
232 virtual void setSequence(
const std::string& name,
const Sequence& sequence,
bool checkName)
throw (Exception) = 0;
237 virtual void setSequencesNames(
const std::vector<std::string> & names,
bool checkNames)
throw (Exception) = 0;
245 #endif //_ORDEREDSEQUENCECONTAINER_H_ virtual void setComments(size_t sequenceIndex, const Comments &comments)=0
Set the comments of a particular sequence.
virtual int & operator()(size_t sequenceIndex, size_t elementIndex)=0
Element access operator.
Exception thrown when a sequence is not found The sequence not found exception base class...
std::vector< std::string > Comments
Declaration of Comments type.
virtual const std::vector< int > & getContent(size_t sequenceIndex) const =0
Get the content of a sequence.
virtual ~OrderedSequenceContainer()
virtual void deleteSequence(size_t sequenceIndex)=0
Delete a sequence of the container.
The OrderedSequenceContainer interface.
This alphabet is used to deal NumericAlphabet.
virtual void setSequence(size_t sequenceIndex, const Sequence &sequence, bool checkName)=0
Replace a sequence in the container.
virtual const Comments & getComments(size_t sequenceIndex) const =0
Get comments of a particular sequence.
virtual const Sequence & getSequence(size_t sequenceIndex) const =0
Retrieve a sequence object from the container.
virtual int & valueAt(const std::string &sequenceName, size_t elementIndex)=0
Element access function.
virtual void setSequencesNames(const std::vector< std::string > &names, bool checkNames)=0
Set all sequence names.
virtual std::string toString(size_t sequenceIndex) const =0
Convert a particular sequence to a string.
virtual size_t getSequencePosition(const std::string &name) const =0
Get the position of a sequence in sequence container from its name.
virtual Sequence * removeSequence(size_t sequenceIndex)=0
Extract (and remove) a sequence from the container.
virtual const std::string & getName(size_t sequenceIndex) const =0
Get the name of a particular sequence.
OrderedSequenceContainer()
virtual std::vector< std::string > getSequencesNames() const =0
Get all the names of the sequences in the container.
The SequenceContainer interface.
virtual size_t getNumberOfSequences() const =0
Get the number of sequences in the container.