bpp-seq
2.2.0
|
The OrderedSequenceContainer interface. More...
#include <Bpp/Seq/Container/OrderedSequenceContainer.h>
Public Member Functions | |
OrderedSequenceContainer () | |
virtual | ~OrderedSequenceContainer () |
virtual const std::vector< int > & | getContent (size_t sequenceIndex) const =0 throw (IndexOutOfBoundsException) |
Get the content of a sequence. More... | |
virtual std::string | toString (size_t sequenceIndex) const =0 throw (IndexOutOfBoundsException) |
Convert a particular sequence to a string. More... | |
virtual const Sequence & | getSequence (size_t sequenceIndex) const =0 throw (IndexOutOfBoundsException) |
Retrieve a sequence object from the container. More... | |
virtual void | setSequence (size_t sequenceIndex, const Sequence &sequence, bool checkName)=0 throw (Exception) |
Replace a sequence in the container. More... | |
virtual Sequence * | removeSequence (size_t sequenceIndex)=0 throw (IndexOutOfBoundsException, Exception) |
Extract (and remove) a sequence from the container. More... | |
virtual void | deleteSequence (size_t sequenceIndex)=0 throw (IndexOutOfBoundsException, Exception) |
Delete a sequence of the container. More... | |
virtual const std::string & | getName (size_t sequenceIndex) const =0 throw (IndexOutOfBoundsException) |
Get the name of a particular sequence. More... | |
virtual const Comments & | getComments (size_t sequenceIndex) const =0 throw (IndexOutOfBoundsException) |
Get comments of a particular sequence. More... | |
virtual void | setComments (size_t sequenceIndex, const Comments &comments)=0 throw (IndexOutOfBoundsException) |
Set the comments of a particular sequence. More... | |
virtual size_t | getSequencePosition (const std::string &name) const =0 throw (SequenceNotFoundException) |
Get the position of a sequence in sequence container from its name. More... | |
virtual const Alphabet * | getAlphabet () const =0 |
Get sequence container's alphabet. More... | |
virtual bool | hasSequence (const std::string &name) const =0 |
Check if a sequence with a given name is present in the container. More... | |
virtual void | addSequence (const Sequence &sequence, bool checkName)=0 throw (Exception) |
Add a sequence to the container. More... | |
virtual const Comments & | getGeneralComments () const =0 |
Get the comments of this container. More... | |
virtual void | setGeneralComments (const Comments &comments)=0 |
Set the comments of this container. More... | |
virtual void | deleteGeneralComments ()=0 |
Delete the comments associated to this container. More... | |
virtual void | clear ()=0 |
Delete all sequences in the container. More... | |
virtual SequenceContainer * | createEmptyContainer () const =0 |
Return a copy of this container, but with no sequence inside. More... | |
Provide direct access to sequences content. | |
| |
virtual int & | valueAt (const std::string &sequenceName, size_t elementIndex)=0 throw (SequenceNotFoundException, IndexOutOfBoundsException) |
Element access function. More... | |
virtual const int & | valueAt (const std::string &sequenceName, size_t elementIndex) const =0 throw (SequenceNotFoundException, IndexOutOfBoundsException) |
Element access function. More... | |
virtual int & | valueAt (size_t sequenceIndex, size_t elementIndex)=0 throw (IndexOutOfBoundsException) |
Element access operator. More... | |
virtual const int & | valueAt (size_t sequenceIndex, size_t elementIndex) const =0 throw (IndexOutOfBoundsException) |
Element access operator. More... | |
virtual int & | operator() (size_t sequenceIndex, size_t elementIndex)=0 |
Element access operator. More... | |
virtual const int & | operator() (size_t sequenceIndex, size_t elementIndex) const =0 |
Element access operator. More... | |
SequenceContainer methods. | |
virtual const std::vector< int > & | getContent (const std::string &name) const =0 throw (SequenceNotFoundException) |
Get the content of a sequence. More... | |
virtual std::string | toString (const std::string &name) const =0 throw (SequenceNotFoundException) |
Convert a particular sequence to a string. More... | |
virtual const Sequence & | getSequence (const std::string &name) const =0 throw (SequenceNotFoundException) |
Retrieve a sequence object from the container. More... | |
virtual void | setSequence (const std::string &name, const Sequence &sequence, bool checkName)=0 throw (Exception) |
Replace a sequence in the container. More... | |
virtual Sequence * | removeSequence (const std::string &name)=0 throw (SequenceNotFoundException, Exception) |
Extract (and remove) a sequence from the container. More... | |
virtual void | deleteSequence (const std::string &name)=0 throw (SequenceNotFoundException, Exception) |
Delete a sequence of the container. More... | |
virtual size_t | getNumberOfSequences () const =0 |
Get the number of sequences in the container. More... | |
virtual std::vector< std::string > | getSequencesNames () const =0 |
Get all the names of the sequences in the container. More... | |
virtual void | setSequencesNames (const std::vector< std::string > &names, bool checkNames)=0 throw (Exception) |
Set all sequence names. More... | |
virtual const Comments & | getComments (const std::string &name) const =0 throw (SequenceNotFoundException) |
Get comments of a particular sequence. More... | |
virtual void | setComments (const std::string &name, const Comments &comments)=0 throw (SequenceNotFoundException) |
Set the comments of a particular sequence. More... | |
Provide direct access to sequences content. | |
| |
virtual int & | operator() (const std::string &sequenceName, size_t elementIndex)=0 |
Element access operator. More... | |
virtual const int & | operator() (const std::string &sequenceName, size_t elementIndex) const =0 |
Element access operator. More... | |
The OrderedSequenceContainer interface.
Interface to manage indexed containers. Sequences may be accessed via their indice, i.e. their position in the container.
Definition at line 56 of file OrderedSequenceContainer.h.
|
inline |
Definition at line 60 of file OrderedSequenceContainer.h.
|
inlinevirtual |
Definition at line 61 of file OrderedSequenceContainer.h.
|
pure virtualinherited |
Add a sequence to the container.
sequence | The sequence to add. |
checkName | Tell if the container must check if the name of the sequence is already used in the container before adding it. |
Exception | Any other kind of exception, if the name of the sequence is already used, are whatever else depending on the implementation. |
Implemented in bpp::VectorSequenceContainer, bpp::CompressedVectorSiteContainer, bpp::VectorSiteContainer, bpp::AlignedSequenceContainer, and bpp::MapSequenceContainer.
Referenced by bpp::SequenceContainerTools::append(), and bpp::NexusIOSequence::appendAlignmentFromStream().
|
pure virtualinherited |
Delete all sequences in the container.
Implemented in bpp::CompressedVectorSiteContainer, bpp::VectorSequenceContainer, bpp::VectorSiteContainer, bpp::MapSequenceContainer, and bpp::AlignedSequenceContainer.
|
pure virtualinherited |
Return a copy of this container, but with no sequence inside.
This method creates a new SequenceContainer objet. The class of this container depends on the derivative class.
Implemented in bpp::CompressedVectorSiteContainer, bpp::VectorSequenceContainer, bpp::VectorSiteContainer, bpp::MapSequenceContainer, and bpp::AlignedSequenceContainer.
|
pure virtualinherited |
Delete the comments associated to this container.
Implemented in bpp::AbstractSequenceContainer.
|
pure virtual |
Delete a sequence of the container.
sequenceIndex | The position of the sequence. |
IndexOutOfBoundsException | If the position does not match any sequence in the container. |
Implemented in bpp::VectorSequenceContainer, bpp::MapSequenceContainer, bpp::CompressedVectorSiteContainer, and bpp::VectorSiteContainer.
Referenced by bpp::SequenceContainerTools::keepOnlySelectedSequences().
|
pure virtual |
Delete a sequence of the container.
name | The name of the sequence. |
SequenceNotFoundException | If the name does not match any sequence in the container. |
Implements bpp::SequenceContainer.
Implemented in bpp::CompressedVectorSiteContainer, bpp::VectorSequenceContainer, bpp::VectorSiteContainer, and bpp::MapSequenceContainer.
|
pure virtualinherited |
Get sequence container's alphabet.
Implemented in bpp::AbstractSequenceContainer.
Referenced by bpp::NexusIOSequence::appendAlignmentFromStream(), bpp::SiteContainerTools::changeGapsToUnknownCharacters(), bpp::SiteContainerTools::changeUnresolvedCharactersToGaps(), bpp::SiteContainerTools::getCompleteSites(), bpp::SiteContainerTools::getConsensus(), bpp::SequenceContainerTools::getFrequencies(), bpp::SiteContainerTools::getSelectedPositions(), bpp::SiteContainerTools::getSelectedSites(), bpp::SiteContainerTools::getSequencePositions(), bpp::SequenceApplicationTools::getSitesToAnalyse(), bpp::SiteContainerTools::getSitesWithoutGaps(), bpp::AbstractSequenceContainer::operator=(), bpp::SiteContainerTools::removeGapOnlySites(), bpp::SiteContainerTools::removeGapOrUnresolvedOnlySites(), bpp::SiteContainerTools::removeGapSites(), bpp::SiteContainerTools::sampleSites(), bpp::Phylip::writeInterleaved(), and bpp::Phylip::writeSequential().
|
pure virtual |
Get comments of a particular sequence.
sequenceIndex | The position of the sequence. |
IndexOutOfBoundsException | If the position does not match any sequence in the container. |
Implemented in bpp::AbstractSequenceContainer.
Referenced by bpp::CompressedVectorSiteContainer::CompressedVectorSiteContainer(), bpp::VectorSiteContainer::operator=(), bpp::CompressedVectorSiteContainer::operator=(), and bpp::VectorSiteContainer::VectorSiteContainer().
|
pure virtual |
Get comments of a particular sequence.
name | The name of the sequence. |
SequenceNotFoundException | If the name does not match any sequence in the container. |
Implements bpp::SequenceContainer.
Implemented in bpp::AbstractSequenceContainer.
|
pure virtual |
Get the content of a sequence.
sequenceIndex | The position of the sequence. |
IndexOutOfBoundsException | If the position does not match any sequence in the container. |
Implemented in bpp::AbstractSequenceContainer.
|
pure virtual |
Get the content of a sequence.
name | The name of the sequence. |
SequenceNotFoundException | If the name does not match any sequence in the container. |
Implements bpp::SequenceContainer.
Implemented in bpp::AbstractSequenceContainer.
|
pure virtualinherited |
Get the comments of this container.
Implemented in bpp::AbstractSequenceContainer.
Referenced by bpp::SiteContainerTools::getSelectedSites(), bpp::AbstractSequenceContainer::operator=(), and bpp::VectorSequenceContainer::VectorSequenceContainer().
|
pure virtual |
Get the name of a particular sequence.
sequenceIndex | The position of the sequence. |
IndexOutOfBoundsException | If the position does not match any sequence in the container. |
Implemented in bpp::AbstractSequenceContainer.
|
pure virtual |
Get the number of sequences in the container.
Implements bpp::SequenceContainer.
Implemented in bpp::CompressedVectorSiteContainer, bpp::VectorSequenceContainer, bpp::VectorSiteContainer, and bpp::MapSequenceContainer.
Referenced by bpp::SequenceContainerTools::append(), bpp::NexusIOSequence::appendAlignmentFromStream(), bpp::SiteContainerTools::changeGapsToUnknownCharacters(), bpp::SiteContainerTools::changeUnresolvedCharactersToGaps(), bpp::CompressedVectorSiteContainer::CompressedVectorSiteContainer(), bpp::SiteContainerTools::computeSimilarityMatrix(), bpp::SiteContainerTools::getSequencePositions(), bpp::SequenceApplicationTools::getSitesToAnalyse(), bpp::SimpleSequenceContainerIterator::hasMoreSequences(), bpp::VectorSiteContainer::operator=(), bpp::CompressedVectorSiteContainer::operator=(), bpp::VectorSequenceContainer::operator=(), bpp::VectorSequenceContainer::VectorSequenceContainer(), and bpp::VectorSiteContainer::VectorSiteContainer().
|
pure virtual |
Retrieve a sequence object from the container.
sequenceIndex | The position of the sequence. |
IndexOutOfBoundsException | If the position does not match any sequence in the container. |
Implemented in bpp::VectorSequenceContainer, bpp::MapSequenceContainer, bpp::CompressedVectorSiteContainer, and bpp::VectorSiteContainer.
Referenced by bpp::SequenceContainerTools::append(), bpp::NexusIOSequence::appendAlignmentFromStream(), bpp::SiteContainerTools::computeSimilarityMatrix(), bpp::AbstractSequenceContainer::getComments(), bpp::AbstractSequenceContainer::getContent(), bpp::AbstractSequenceContainer::getName(), bpp::SiteContainerTools::getSequencePositions(), bpp::SimpleSequenceContainerIterator::nextSequence(), bpp::VectorSiteContainer::operator=(), bpp::VectorSequenceContainer::operator=(), bpp::AbstractSequenceContainer::toString(), bpp::SiteContainerTools::translateSequence(), bpp::VectorSequenceContainer::VectorSequenceContainer(), and bpp::VectorSiteContainer::VectorSiteContainer().
|
pure virtual |
Retrieve a sequence object from the container.
name | The name of the sequence. |
SequenceNotFoundException | If the name does not match any sequence in the container. |
Implements bpp::SequenceContainer.
Implemented in bpp::CompressedVectorSiteContainer, bpp::VectorSequenceContainer, bpp::VectorSiteContainer, and bpp::MapSequenceContainer.
|
pure virtual |
Get the position of a sequence in sequence container from its name.
name | The name of the sequence. |
SequenceNotFoundException | If no sequence with name 'name' could be found. |
Implemented in bpp::VectorSequenceContainer, bpp::MapSequenceContainer, bpp::CompressedVectorSiteContainer, and bpp::VectorSiteContainer.
|
pure virtual |
Get all the names of the sequences in the container.
Implements bpp::SequenceContainer.
Implemented in bpp::MapSequenceContainer, bpp::CompressedVectorSiteContainer, bpp::VectorSequenceContainer, and bpp::VectorSiteContainer.
Referenced by bpp::SiteContainerTools::computeSimilarityMatrix(), bpp::SiteContainerTools::getCompleteSites(), bpp::SiteContainerTools::getSelectedSites(), bpp::SiteContainerTools::getSitesWithoutGaps(), bpp::SequenceContainerTools::keepOnlySelectedSequences(), bpp::VectorSiteContainer::operator=(), bpp::CompressedVectorSiteContainer::operator=(), bpp::SiteContainerTools::removeGapOnlySites(), bpp::SiteContainerTools::removeGapOrUnresolvedOnlySites(), bpp::SiteContainerTools::removeGapSites(), and bpp::SiteContainerTools::sampleSites().
|
pure virtualinherited |
Check if a sequence with a given name is present in the container.
name | The name of the sequence. |
Implemented in bpp::CompressedVectorSiteContainer, bpp::VectorSequenceContainer, bpp::VectorSiteContainer, and bpp::MapSequenceContainer.
|
pure virtual |
Element access operator.
Allows direct access to the data stored in the container. This method is faster then the valueAt function, but input parameters are not checked!
sequenceIndex | The sequence position. |
elementIndex | The element position within the sequence. |
Implemented in bpp::CompressedVectorSiteContainer, bpp::VectorSequenceContainer, bpp::VectorSiteContainer, and bpp::MapSequenceContainer.
|
pure virtual |
Element access operator.
Allows direct access to the data stored in the container. This method is faster then the valueAt function, but input parameters are not checked!
sequenceIndex | The sequence position. |
elementIndex | The element position within the sequence. |
Implemented in bpp::CompressedVectorSiteContainer, bpp::VectorSequenceContainer, bpp::VectorSiteContainer, and bpp::MapSequenceContainer.
|
pure virtualinherited |
Element access operator.
Allows direct access to the data stored in the container. This method is faster then the valueAt function, but input parameters are not checked!
sequenceName | The sequence name. |
elementIndex | The element position within the sequence. |
Implemented in bpp::CompressedVectorSiteContainer, bpp::VectorSequenceContainer, bpp::VectorSiteContainer, and bpp::MapSequenceContainer.
|
pure virtualinherited |
Element access operator.
Allows direct access to the data stored in the container. This method is faster then the valueAt function, but input parameters are not checked!
sequenceName | The sequence name. |
elementIndex | The element position within the sequence. |
Implemented in bpp::CompressedVectorSiteContainer, bpp::VectorSequenceContainer, bpp::VectorSiteContainer, and bpp::MapSequenceContainer.
|
pure virtual |
Extract (and remove) a sequence from the container.
sequenceIndex | The position of the sequence. |
IndexOutOfBoundsException | If the name does not match any sequence in the container. |
Implemented in bpp::VectorSequenceContainer, bpp::MapSequenceContainer, bpp::CompressedVectorSiteContainer, and bpp::VectorSiteContainer.
|
pure virtual |
Extract (and remove) a sequence from the container.
name | The name of the sequence. |
SequenceNotFoundException | If the name does not match any sequence in the container. |
Implements bpp::SequenceContainer.
Implemented in bpp::CompressedVectorSiteContainer, bpp::VectorSequenceContainer, bpp::MapSequenceContainer, and bpp::VectorSiteContainer.
|
pure virtual |
Set the comments of a particular sequence.
sequenceIndex | The position of the sequence. |
comments | The comments to set to sequence with position 'i'. |
IndexOutOfBoundsException | If the position does not match any sequence in the container. |
Implemented in bpp::VectorSequenceContainer, bpp::MapSequenceContainer, bpp::AbstractSequenceContainer, bpp::CompressedVectorSiteContainer, and bpp::VectorSiteContainer.
|
pure virtual |
Set the comments of a particular sequence.
name | The name of the sequence. |
comments | The comments to set to sequence with name 'name'. |
SequenceNotFoundException | If the name does not match any sequence in the container. |
Implements bpp::SequenceContainer.
Implemented in bpp::VectorSequenceContainer, and bpp::AbstractSequenceContainer.
|
pure virtualinherited |
Set the comments of this container.
comments | The comments to be associated to this container. |
Implemented in bpp::AbstractSequenceContainer.
|
pure virtual |
Replace a sequence in the container.
sequenceIndex | The position of the sequence. |
sequence | The sequence to add. |
checkName | Tell if the container must check if the name of the sequence is already used in the container before adding it. |
IndexOutOfBoundsException | If the position does not match any sequence in the container. |
Exception | Any other kind of exception. |
Implemented in bpp::CompressedVectorSiteContainer, bpp::VectorSequenceContainer, bpp::VectorSiteContainer, bpp::MapSequenceContainer, and bpp::AlignedSequenceContainer.
|
pure virtual |
Replace a sequence in the container.
name | The name of the sequence. |
sequence | The sequence to add. |
checkName | Tell if the container must check if the name of the sequence is already used in the container before adding it. |
SequenceNotFoundException | If the name does not match any sequence in the container. |
Exception | Any other kind of exception, if the name of the sequence is already used, are whatever else depending on the implementation. |
Implements bpp::SequenceContainer.
Implemented in bpp::CompressedVectorSiteContainer, bpp::VectorSiteContainer, bpp::AlignedSequenceContainer, bpp::MapSequenceContainer, and bpp::VectorSequenceContainer.
|
pure virtual |
Set all sequence names.
names | A vector of strings with all sequence names. Its size must be strictly equal to the the size of the container (the number of sequences). |
checkNames | Tell if the container must check if the name of the sequence is already used in the container before adding it. |
Exception | If there are redundant names in the input vector. |
Implements bpp::SequenceContainer.
Implemented in bpp::MapSequenceContainer, bpp::CompressedVectorSiteContainer, bpp::VectorSequenceContainer, and bpp::VectorSiteContainer.
|
pure virtual |
Convert a particular sequence to a string.
sequenceIndex | The position of the sequence. |
IndexOutOfBoundsException | If the position does not match any sequence in the container. |
Implemented in bpp::AbstractSequenceContainer.
|
pure virtual |
Convert a particular sequence to a string.
name | The name of the sequence. |
SequenceNotFoundException | If the name does not match any sequence in the container. |
Implements bpp::SequenceContainer.
Implemented in bpp::AbstractSequenceContainer.
|
pure virtual |
Element access function.
Allows direct access to the data stored in the container.
sequenceName | The sequence name. |
elementIndex | The element position within the sequence. |
SequenceNotFoundException | If no corresponding sequence is found in the container. |
IndexOutOfBoundsException | If the element position is not valid. |
Implements bpp::SequenceContainer.
Implemented in bpp::CompressedVectorSiteContainer, bpp::VectorSequenceContainer, bpp::VectorSiteContainer, and bpp::MapSequenceContainer.
|
pure virtual |
Element access function.
Allows direct access to the data stored in the container.
sequenceName | The sequence name. |
elementIndex | The element position within the sequence. |
SequenceNotFoundException | If no corresponding sequence is found in the container. |
IndexOutOfBoundsException | If the element position is not valid. |
Implements bpp::SequenceContainer.
Implemented in bpp::CompressedVectorSiteContainer, bpp::VectorSequenceContainer, bpp::VectorSiteContainer, and bpp::MapSequenceContainer.
|
pure virtual |
Element access operator.
Allows direct access to the data stored in the container.
sequenceIndex | The sequence position. |
elementIndex | The element position within the sequence. |
IndexOutOfBoundsException | If a position is not valid. |
Implemented in bpp::CompressedVectorSiteContainer, bpp::VectorSequenceContainer, bpp::VectorSiteContainer, and bpp::MapSequenceContainer.
|
pure virtual |
Element access operator.
Allows direct access to the data stored in the container.
sequenceIndex | The sequence position. |
elementIndex | The element position within the sequence. |
IndexOutOfBoundsException | If a position is not valid. |
Implemented in bpp::CompressedVectorSiteContainer, bpp::VectorSequenceContainer, bpp::VectorSiteContainer, and bpp::MapSequenceContainer.