bpp-seq3  3.0.0
bpp::AbstractProbabilisticSequenceContainer Class Referenceabstract

Partial implementation of the OrderedSequenceContainer interface. More...

#include <Bpp/Seq/Container/AbstractProbabilisticSequenceContainer.h>

+ Inheritance diagram for bpp::AbstractProbabilisticSequenceContainer:
+ Collaboration diagram for bpp::AbstractProbabilisticSequenceContainer:

Public Member Functions

 AbstractProbabilisticSequenceContainer (const Alphabet *alpha)
 This constructor initialize the alphabet pointer. More...
 
 AbstractProbabilisticSequenceContainer (const AbstractProbabilisticSequenceContainer &sc)
 
AbstractProbabilisticSequenceContaineroperator= (const AbstractProbabilisticSequenceContainer &sc)
 
virtual ~AbstractProbabilisticSequenceContainer ()
 
virtual const ProbabilisticSequencegetSequence (std::size_t i) const =0
 
virtual const ProbabilisticSequencegetSequence (const std::string &name) const =0
 Retrieve a probabilistic sequence object from the container. More...
 
virtual void addSequence (const ProbabilisticSequence &sequence, bool checkName=true)=0
 Add a probabilistic sequence to the container. More...
 
virtual void addSequence (const Sequence &sequence, bool checkName=true)=0
 Add a basic sequence to the container, through conversion to a probabilistic sequence. More...
 
std::string toString (const std::string &name) const
 Output to string. More...
 
const CommentsgetComments (const std::string &name) const
 Get comments of a particular sequence. More...
 
void setComments (const std::string &name, const Comments &comments)
 Set the comments of a particular sequence. More...
 
virtual void setComments (const std::string &name, const Comments &comments)=0
 Set the comments of a particular sequence. More...
 
void setComments (const Comments &comments)
 Set the comments. More...
 
virtual const CommentsgetComments (const std::string &name) const=0
 Get comments of a particular sequence. More...
 
const CommentsgetComments () const
 Get the comments. More...
 
OrderedValuesContainerclone () const =0
 
virtual std::string toString (const std::string &name) const=0
 Convert a particular sequence to a string. More...
 
virtual size_t getSequencePosition (const std::string &name) const =0
 Get the position of a sequence in sequence container from its name. More...
 
virtual double getStateValueAt (size_t siteIndex, size_t sequenceIndex, int state) const =0
 
virtual double getStateValueAt (size_t siteIndex, const std::string &sequenceName, int state) const=0
 get value of a state in a position More...
 
virtual double getStateValueAt (size_t siteIndex, const std::string &sequenceName, int state) const =0
 get value of a state in a position More...
 
virtual double operator() (size_t siteIndex, size_t sequenceIndex, int state) const =0
 
virtual double operator() (size_t siteIndex, const std::string &sequenceName, int state) const =0
 
virtual bool hasSequence (const std::string &name) const =0
 Check if a sequence with a given name is present in the container. More...
 
virtual size_t getNumberOfSequences () const =0
 Get the number of sequences in the container. More...
 
virtual std::vector< std::string > getSequenceNames () const =0
 Get all the names of the sequences in the container. More...
 
virtual void setSequenceNames (const std::vector< std::string > &names, bool checkNames)=0
 Set all sequence names. More...
 
virtual void clear ()=0
 Delete all data in the container. More...
 
virtual SequencedValuesContainercreateEmptyContainer () const =0
 Return a copy of this container, but with no data inside. More...
 
void clearComments ()
 
virtual void setSequence (const std::string &name, const ProbabilisticSequence &sequence, bool checkName)=0
 Replace a probabilistic sequence in the container. More...
 
From the OrderedSequenceContainer interface
virtual const std::string & getName (size_t sequenceIndex) const
 Get the name of a particular row of the alignement (aka sequence). More...
 
virtual std::string toString (size_t sequenceIndex) const
 
const CommentsgetGeneralComments () const
 Get the comments of this container. More...
 
void setGeneralComments (const Comments &comments)
 Set the comments of this container. More...
 
void deleteGeneralComments ()
 Delete the comments associated to this container. More...
 
virtual const CommentsgetComments (size_t sequenceIndex) const
 
virtual void setComments (size_t sequenceIndex, const Comments &comments)=0
 
From the SequencedValuesContainer interface
const AlphabetgetAlphabet () const
 Get container's alphabet. More...
 

Protected Attributes

const Alphabetalphabet_
 The container's alphabet. More...
 
Comments comments_
 

Detailed Description

Partial implementation of the OrderedSequenceContainer interface.

This abstract class provides an alphabet and comments, with associated methods.

Definition at line 56 of file AbstractProbabilisticSequenceContainer.h.

Constructor & Destructor Documentation

◆ AbstractProbabilisticSequenceContainer() [1/2]

bpp::AbstractProbabilisticSequenceContainer::AbstractProbabilisticSequenceContainer ( const Alphabet alpha)
inline

This constructor initialize the alphabet pointer.

This constructor is to be called by constructors of derived classes.

Parameters
alphaThe alphabet to be associated to this container.

Definition at line 68 of file AbstractProbabilisticSequenceContainer.h.

◆ AbstractProbabilisticSequenceContainer() [2/2]

bpp::AbstractProbabilisticSequenceContainer::AbstractProbabilisticSequenceContainer ( const AbstractProbabilisticSequenceContainer sc)
inline

Definition at line 71 of file AbstractProbabilisticSequenceContainer.h.

◆ ~AbstractProbabilisticSequenceContainer()

virtual bpp::AbstractProbabilisticSequenceContainer::~AbstractProbabilisticSequenceContainer ( )
inlinevirtual

Definition at line 80 of file AbstractProbabilisticSequenceContainer.h.

Member Function Documentation

◆ addSequence() [1/2]

virtual void bpp::AbstractProbabilisticSequenceContainer::addSequence ( const ProbabilisticSequence sequence,
bool  checkName = true 
)
pure virtual

Add a probabilistic sequence to the container.

Parameters
sequenceThe sequence to add.
checkNameTell if the container must check if the name of the sequence is already used in the container before adding it.
Exceptions
ExceptionAny other kind of exception, if the name of the sequence is already used, are whatever else depending on the implementation.

Implemented in bpp::VectorProbabilisticSiteContainer.

◆ addSequence() [2/2]

virtual void bpp::AbstractProbabilisticSequenceContainer::addSequence ( const Sequence sequence,
bool  checkName = true 
)
pure virtual

Add a basic sequence to the container, through conversion to a probabilistic sequence.

Parameters
sequenceThe sequence to add.
checkNameTell if the container must check if the name of the sequence is already used in the container before adding it.
Exceptions
ExceptionAny other kind of exception, if the name of the sequence is already used, are whatever else depending on the implementation.

Implemented in bpp::VectorProbabilisticSiteContainer.

◆ clear()

virtual void bpp::SequencedValuesContainer::clear ( )
pure virtualinherited

◆ clearComments()

◆ clone()

◆ createEmptyContainer()

virtual SequencedValuesContainer* bpp::SequencedValuesContainer::createEmptyContainer ( ) const
pure virtualinherited

Return a copy of this container, but with no data inside.

This method creates a new SequencedValuesContainer objet. The class of this container depends on the derivative class.

Returns
A new empty container, with the same alphabet as this one.

Implemented in bpp::VectorSiteContainer, bpp::VectorSequenceContainer, bpp::VectorProbabilisticSiteContainer, bpp::VectorProbabilisticSequenceContainer, bpp::CompressedVectorSiteContainer, and bpp::AlignedSequenceContainer.

◆ deleteGeneralComments()

void bpp::AbstractProbabilisticSequenceContainer::deleteGeneralComments ( )
inlinevirtual

Delete the comments associated to this container.

Implements bpp::SequencedValuesContainer.

Definition at line 157 of file AbstractProbabilisticSequenceContainer.h.

References bpp::Commentable::clearComments().

◆ getAlphabet()

const Alphabet* bpp::AbstractValuesContainer::getAlphabet ( ) const
inlinevirtualinherited

Get container's alphabet.

Returns
The alphabet associated to this container.

Implements bpp::SequencedValuesContainer.

Definition at line 99 of file AbstractValuesContainer.h.

References bpp::AbstractValuesContainer::alphabet_.

Referenced by bpp::VectorProbabilisticSequenceContainer::addSequence(), bpp::VectorProbabilisticSiteContainer::addSequence(), bpp::VectorSequenceContainer::addSequence(), bpp::VectorSiteContainer::addSequence(), bpp::CompressedVectorSiteContainer::addSite(), bpp::AlignedSequenceContainer::addSite(), bpp::VectorSiteContainer::addSite(), bpp::VectorProbabilisticSiteContainer::addSite(), bpp::Pasta::appendSequencesFromStream(), bpp::AlignedSequenceContainer::createEmptyContainer(), bpp::CompressedVectorSiteContainer::createEmptyContainer(), bpp::VectorProbabilisticSequenceContainer::createEmptyContainer(), bpp::VectorProbabilisticSiteContainer::createEmptyContainer(), bpp::VectorSequenceContainer::createEmptyContainer(), bpp::VectorSiteContainer::createEmptyContainer(), bpp::CompressedVectorSiteContainer::getSequence(), bpp::VectorSiteContainer::getSequence(), bpp::VectorProbabilisticSiteContainer::getSequence(), bpp::AlignedSequenceContainer::getSite(), bpp::CompressedVectorSiteContainer::getStateValueAt(), bpp::VectorProbabilisticSiteContainer::getStateValueAt(), bpp::VectorSiteContainer::getStateValueAt(), bpp::VectorProbabilisticSequenceContainer::getStateValueAt(), bpp::VectorSequenceContainer::getStateValueAt(), bpp::CompressedVectorSiteContainer::operator()(), bpp::VectorProbabilisticSiteContainer::operator()(), bpp::VectorSiteContainer::operator()(), bpp::VectorProbabilisticSequenceContainer::operator()(), bpp::VectorSequenceContainer::operator()(), bpp::VectorProbabilisticSiteContainer::realloc(), bpp::VectorSiteContainer::realloc(), bpp::CompressedVectorSiteContainer::removeSite(), bpp::CompressedVectorSiteContainer::setComments(), bpp::VectorProbabilisticSiteContainer::setSequence(), bpp::VectorProbabilisticSequenceContainer::setSequence(), bpp::VectorSiteContainer::setSequence(), bpp::VectorSequenceContainer::setSequence(), bpp::AlignedSequenceContainer::setSite(), bpp::CompressedVectorSiteContainer::setSite(), and bpp::VectorSiteContainer::setSite().

◆ getComments() [1/4]

◆ getComments() [2/4]

const Comments& bpp::AbstractProbabilisticSequenceContainer::getComments ( const std::string &  name) const
inlinevirtual

Get comments of a particular sequence.

Parameters
nameThe name of the sequence.
Returns
The comments associated to sequence with name 'name'.
Exceptions
SequenceNotFoundExceptionIf the name does not match any sequence in the container.

Implements bpp::SequencedValuesContainer.

Definition at line 121 of file AbstractProbabilisticSequenceContainer.h.

References bpp::CoreSequence::getComments(), and getSequence().

◆ getComments() [3/4]

virtual const Comments& bpp::SequencedValuesContainer::getComments
inherited

Get comments of a particular sequence.

Parameters
sequenceIndexThe position of the sequence.
Returns
The comments associated to sequence at position 'sequenceIndex'.
Exceptions
IndexOutOfBoundsExceptionIf the position does not match any sequence in the container.

◆ getComments() [4/4]

virtual const Comments& bpp::AbstractProbabilisticSequenceContainer::getComments ( size_t  sequenceIndex) const
inlinevirtual

◆ getGeneralComments()

const Comments& bpp::AbstractProbabilisticSequenceContainer::getGeneralComments ( ) const
inlinevirtual

Get the comments of this container.

Returns
The comments associated to this container.

Implements bpp::SequencedValuesContainer.

Definition at line 147 of file AbstractProbabilisticSequenceContainer.h.

References bpp::Commentable::getComments().

Referenced by bpp::VectorProbabilisticSiteContainer::createEmptyContainer(), and bpp::SiteContainerTools::getSelectedSites().

◆ getName()

virtual const std::string& bpp::AbstractProbabilisticSequenceContainer::getName ( size_t  sequenceIndex) const
inlinevirtual

Get the name of a particular row of the alignement (aka sequence).

Parameters
sequenceIndexThe position of the sequence.
Returns
The name of the sequence at position 'sequenceIndex'.
Exceptions
IndexOutOfBoundsExceptionIf the position does not match any sequence in the container.

Implements bpp::OrderedValuesContainer.

Definition at line 137 of file AbstractProbabilisticSequenceContainer.h.

References bpp::CoreSequence::getName(), and getSequence().

◆ getNumberOfSequences()

virtual size_t bpp::SequencedValuesContainer::getNumberOfSequences ( ) const
pure virtualinherited

Get the number of sequences in the container.

Returns
The number of sequences in the container.

Implemented in bpp::VectorSiteContainer, bpp::VectorSequenceContainer, bpp::VectorProbabilisticSiteContainer, bpp::VectorProbabilisticSequenceContainer, and bpp::CompressedVectorSiteContainer.

Referenced by bpp::AlignedSequenceContainer::AlignedSequenceContainer(), bpp::SequenceContainerTools::append(), bpp::NexusIOSequence::appendAlignmentFromStream(), bpp::SiteContainerTools::changeGapsToUnknownCharacters(), bpp::SiteContainerTools::changeUnresolvedCharactersToGaps(), bpp::SiteContainerTools::computeSimilarityMatrix(), bpp::SequenceContainerTools::convertAlphabet(), bpp::SequenceContainerTools::getSelectedSequences(), bpp::SiteContainerTools::getSequencePositions(), bpp::SequenceApplicationTools::getSitesToAnalyse(), bpp::SimpleSequenceContainerIterator::hasMoreSequences(), bpp::VectorSequenceContainer::operator=(), bpp::VectorSiteContainer::operator=(), bpp::SiteContainerTools::removeGapOnlySites(), bpp::SiteContainerTools::removeGapOrUnresolvedOnlySites(), bpp::SiteContainerTools::removeGapSites(), bpp::SiteContainerTools::removeStopCodonSites(), bpp::SiteContainerTools::resolveDottedAlignment(), bpp::VectorProbabilisticSiteContainer::VectorProbabilisticSiteContainer(), bpp::VectorSequenceContainer::VectorSequenceContainer(), bpp::VectorSiteContainer::VectorSiteContainer(), bpp::Clustal::writeAlignment(), bpp::Phylip::writeAlignment(), bpp::Stockholm::writeAlignment(), bpp::Phylip::writeInterleaved(), and bpp::Phylip::writeSequential().

◆ getSequence() [1/2]

virtual const ProbabilisticSequence& bpp::AbstractProbabilisticSequenceContainer::getSequence ( const std::string &  name) const
pure virtual

Retrieve a probabilistic sequence object from the container.

Parameters
nameThe name of the sequence in the map.
Returns
A reference toward the Sequence with corresponding name.
Exceptions
SequenceNotFoundExceptionIf the name does not match any sequence in the container.

Implements bpp::ProbabilisticSequenceContainer.

Implemented in bpp::VectorProbabilisticSiteContainer.

◆ getSequence() [2/2]

virtual const ProbabilisticSequence& bpp::AbstractProbabilisticSequenceContainer::getSequence ( std::size_t  i) const
pure virtual

◆ getSequenceNames()

virtual std::vector<std::string> bpp::SequencedValuesContainer::getSequenceNames ( ) const
pure virtualinherited

Get all the names of the sequences in the container.

Returns
A vector of strings with all sequence names.

Implemented in bpp::VectorSiteContainer, bpp::VectorSequenceContainer, bpp::VectorProbabilisticSiteContainer, bpp::VectorProbabilisticSequenceContainer, and bpp::CompressedVectorSiteContainer.

Referenced by bpp::SequenceContainerTools::append(), bpp::CompressedVectorSiteContainer::CompressedVectorSiteContainer(), bpp::SiteContainerTools::computeSimilarityMatrix(), bpp::SequenceContainerTools::convertAlphabet(), bpp::SequenceContainerTools::getCodonPosition(), bpp::SiteContainerTools::getCompleteSites(), bpp::SequenceContainerTools::getCounts(), bpp::SequenceContainerTools::getFrequencies(), bpp::SiteContainerTools::getSelectedSites(), bpp::SiteContainerTools::getSitesWithoutGaps(), bpp::SequenceContainerTools::keepOnlySelectedSequences(), bpp::SequenceContainerTools::merge(), bpp::SiteContainerTools::merge(), bpp::VectorSequenceContainer::operator=(), bpp::CompressedVectorSiteContainer::operator=(), bpp::VectorSiteContainer::operator=(), bpp::SiteContainerTools::removeGapOnlySites(), bpp::SiteContainerTools::removeGapOrUnresolvedOnlySites(), bpp::SiteContainerTools::removeGapSites(), bpp::SiteContainerTools::removeStopCodonSites(), bpp::SiteContainerTools::resolveDottedAlignment(), bpp::SequenceApplicationTools::restrictSelectedSequencesByName(), bpp::SiteContainerTools::sampleSites(), bpp::SequenceContainerTools::sequencesHaveTheSameLength(), bpp::VectorProbabilisticSiteContainer::VectorProbabilisticSiteContainer(), bpp::VectorSequenceContainer::VectorSequenceContainer(), bpp::VectorSiteContainer::VectorSiteContainer(), bpp::Pasta::writeAlignedValues(), bpp::Stockholm::writeAlignment(), bpp::Phylip::writeInterleaved(), bpp::Fasta::writeSequences(), bpp::Mase::writeSequences(), and bpp::Phylip::writeSequential().

◆ getSequencePosition()

virtual size_t bpp::OrderedValuesContainer::getSequencePosition ( const std::string &  name) const
pure virtualinherited

Get the position of a sequence in sequence container from its name.

Parameters
nameThe name of the sequence.
Returns
The position of the sequence with name 'name', if it exists.
Exceptions
SequenceNotFoundExceptionIf no sequence with name 'name' could be found.

Implemented in bpp::VectorSiteContainer, bpp::VectorSequenceContainer, bpp::VectorProbabilisticSiteContainer, bpp::VectorProbabilisticSequenceContainer, and bpp::CompressedVectorSiteContainer.

Referenced by setComments(), bpp::AbstractSequenceContainer::setComments(), and bpp::AbstractValuesContainer::setComments().

◆ getStateValueAt() [1/3]

virtual double bpp::SequencedValuesContainer::getStateValueAt ( size_t  siteIndex,
const std::string &  sequenceName,
int  state 
) const
pure virtualinherited

get value of a state in a position

Parameters
siteIndexindex of the site
sequenceNamename of the sequence in the container
statestate in the alphabet

Implemented in bpp::VectorSiteContainer, bpp::VectorSequenceContainer, bpp::VectorProbabilisticSiteContainer, bpp::VectorProbabilisticSequenceContainer, and bpp::CompressedVectorSiteContainer.

◆ getStateValueAt() [2/3]

virtual double bpp::SequencedValuesContainer::getStateValueAt
inherited

get value of a state in a position

Parameters
siteIndexindex of the site
sequenceNamename of the sequence in the container
statestate in the alphabet

◆ getStateValueAt() [3/3]

virtual double bpp::OrderedValuesContainer::getStateValueAt ( size_t  siteIndex,
size_t  sequenceIndex,
int  state 
) const
pure virtualinherited

◆ hasSequence()

virtual bool bpp::SequencedValuesContainer::hasSequence ( const std::string &  name) const
pure virtualinherited

Check if a sequence with a given name is present in the container.

Parameters
nameThe name of the sequence.
Returns
True if a sequence with the given name is present in the container.

Implemented in bpp::VectorSiteContainer, bpp::VectorSequenceContainer, bpp::VectorProbabilisticSiteContainer, bpp::VectorProbabilisticSequenceContainer, and bpp::CompressedVectorSiteContainer.

Referenced by bpp::SequenceContainerTools::getSelectedSequences().

◆ operator()() [1/2]

virtual double bpp::SequencedValuesContainer::operator() ( size_t  siteIndex,
const std::string &  sequenceName,
int  state 
) const
pure virtualinherited

◆ operator()() [2/2]

virtual double bpp::OrderedValuesContainer::operator() ( size_t  siteIndex,
size_t  sequenceIndex,
int  state 
) const
pure virtualinherited

◆ operator=()

AbstractProbabilisticSequenceContainer& bpp::AbstractProbabilisticSequenceContainer::operator= ( const AbstractProbabilisticSequenceContainer sc)
inline

◆ setComments() [1/4]

void bpp::Commentable::setComments ( const Comments comments)
inlineinherited

◆ setComments() [2/4]

void bpp::AbstractProbabilisticSequenceContainer::setComments ( const std::string &  name,
const Comments comments 
)
inlinevirtual

Set the comments of a particular sequence.

Parameters
nameThe name of the sequence.
commentsThe comments to set to sequence with name 'name'.
Exceptions
SequenceNotFoundExceptionIf the name does not match any sequence in the container.

Implements bpp::SequencedValuesContainer.

Definition at line 126 of file AbstractProbabilisticSequenceContainer.h.

References bpp::OrderedValuesContainer::getSequencePosition(), and bpp::OrderedValuesContainer::setComments().

◆ setComments() [3/4]

virtual void bpp::SequencedValuesContainer::setComments
inherited

Set the comments of a particular sequence.

Parameters
sequenceIndexThe position of the sequence.
commentsThe comments to set to sequence with position 'i'.
Exceptions
IndexOutOfBoundsExceptionIf the position does not match any sequence in the container.

Referenced by setComments(), bpp::AbstractValuesContainer::setComments(), and bpp::VectorProbabilisticSequenceContainer::setComments().

◆ setComments() [4/4]

virtual void bpp::AbstractProbabilisticSequenceContainer::setComments ( size_t  sequenceIndex,
const Comments comments 
)
pure virtual

◆ setGeneralComments()

void bpp::AbstractProbabilisticSequenceContainer::setGeneralComments ( const Comments comments)
inlinevirtual

Set the comments of this container.

Parameters
commentsThe comments to be associated to this container.

Implements bpp::SequencedValuesContainer.

Definition at line 152 of file AbstractProbabilisticSequenceContainer.h.

References bpp::Commentable::setComments().

Referenced by bpp::VectorProbabilisticSiteContainer::addSequence(), bpp::Pasta::appendSequencesFromStream(), and bpp::VectorProbabilisticSiteContainer::createEmptyContainer().

◆ setSequence()

virtual void bpp::ProbabilisticSequenceContainer::setSequence ( const std::string &  name,
const ProbabilisticSequence sequence,
bool  checkName 
)
pure virtualinherited

Replace a probabilistic sequence in the container.

Parameters
nameThe name of the sequence in the map.
sequenceThe sequence to add.
checkNameTell if the container must check if the name of the sequence is already used in the container before adding it.

Implemented in bpp::VectorProbabilisticSiteContainer.

◆ setSequenceNames()

virtual void bpp::SequencedValuesContainer::setSequenceNames ( const std::vector< std::string > &  names,
bool  checkNames 
)
pure virtualinherited

Set all sequence names.

Parameters
namesA vector of strings with all sequence names. Its size must be strictly equal to the the size of the container (the number of sequences).
checkNamesTell if the container must check if the name of the sequence is already used in the container before adding it.
Exceptions
ExceptionIf there are redundant names in the input vector.

Implemented in bpp::VectorSiteContainer, bpp::VectorSequenceContainer, bpp::VectorProbabilisticSiteContainer, bpp::VectorProbabilisticSequenceContainer, and bpp::CompressedVectorSiteContainer.

Referenced by bpp::SequenceContainerTools::createContainerWithSequenceNames(), bpp::SiteContainerTools::getCompleteSites(), and bpp::SiteContainerTools::getSitesWithoutGaps().

◆ toString() [1/3]

std::string bpp::AbstractProbabilisticSequenceContainer::toString ( const std::string &  name) const
inlinevirtual

Output to string.

Implements bpp::SequencedValuesContainer.

Definition at line 116 of file AbstractProbabilisticSequenceContainer.h.

References getSequence(), and bpp::CruxSymbolList::toString().

◆ toString() [2/3]

virtual std::string bpp::SequencedValuesContainer::toString
inherited

Convert a particular sequence to a string.

Parameters
sequenceIndexThe position of the sequence.
Returns
A string describing the content of the sequence.
Exceptions
IndexOutOfBoundsExceptionIf the position does not match any sequence in the container.

◆ toString() [3/3]

virtual std::string bpp::AbstractProbabilisticSequenceContainer::toString ( size_t  sequenceIndex) const
inlinevirtual

Member Data Documentation

◆ alphabet_

const Alphabet* bpp::AbstractValuesContainer::alphabet_
protectedinherited

◆ comments_

Comments bpp::Commentable::comments_
protectedinherited

The documentation for this class was generated from the following file: