bpp-seq3  3.0.0
bpp::SequenceWithAnnotation Class Referenceabstract

An implementation of the Sequence interface that supports annotation. More...

#include <Bpp/Seq/SequenceWithAnnotation.h>

+ Inheritance diagram for bpp::SequenceWithAnnotation:
+ Collaboration diagram for bpp::SequenceWithAnnotation:

Public Types

typedef int ElementType
 
typedef int SymbolType
 

Public Member Functions

 SequenceWithAnnotation (std::shared_ptr< const Alphabet > &alpha)
 Empty constructor: build a void Sequence with just an Alphabet. More...
 
 SequenceWithAnnotation (const std::string &name, const std::string &sequence, std::shared_ptr< const Alphabet > &alpha)
 Direct constructor: build a Sequence object from a std::string You can use it safely for RNA, DNA and protein sequences. More...
 
 SequenceWithAnnotation (const std::string &name, const std::string &sequence, const Comments &comments, std::shared_ptr< const Alphabet > &alpha)
 Direct constructor: build a Sequence object from a std::string. More...
 
 SequenceWithAnnotation (const std::string &name, const std::vector< std::string > &sequence, std::shared_ptr< const Alphabet > &alpha)
 General purpose constructor, can be used with any alphabet. More...
 
 SequenceWithAnnotation (const std::string &name, const std::vector< std::string > &sequence, const Comments &comments, std::shared_ptr< const Alphabet > &alpha)
 General purpose constructor, can be used with any alphabet. More...
 
 SequenceWithAnnotation (const std::string &name, const std::vector< int > &sequence, std::shared_ptr< const Alphabet > &alpha)
 General purpose constructor, can be used with any alphabet. More...
 
 SequenceWithAnnotation (const std::string &name, const std::vector< int > &sequence, const Comments &comments, std::shared_ptr< const Alphabet > &alpha)
 General purpose constructor, can be used with any alphabet. More...
 
 SequenceWithAnnotation (const Sequence &s)
 The Sequence generic copy constructor. More...
 
 SequenceWithAnnotation (const SequenceWithAnnotation &s)
 The Sequence copy constructor. More...
 
SequenceWithAnnotationoperator= (const Sequence &s)
 The Sequence generic assignment operator. More...
 
SequenceWithAnnotationoperator= (const SequenceWithAnnotation &s)
 The Sequence assignment operator. This does not perform a hard copy of the alphabet object. More...
 
virtual ~SequenceWithAnnotation ()
 
virtual void addAnnotation (std::shared_ptr< SequenceAnnotation > anno)
 Add a new annotation to the sequence. More...
 
virtual bool hasAnnotation (const std::string &type) const
 
virtual const SequenceAnnotationannotation (const std::string &type) const
 
virtual SequenceAnnotationannotation (const std::string &type)
 
virtual std::vector< std::string > getAnnotationTypes () const
 
virtual void merge (const SequenceWithAnnotation &swa)
 Merge a sequence with the current one. More...
 
virtual std::shared_ptr< const AlphabetgetAlphabet () const =0
 Get the alphabet associated to the list. More...
 
virtual const Alphabetalphabet () const =0
 Get the alphabet associated to the list. More...
 
virtual size_t size () const =0
 Get the number of elements in the list. More...
 
virtual std::string toString () const =0
 Convert the list as a string. More...
 
virtual double getStateValueAt (size_t position, int state) const =0
 get value of a state at a position More...
 
virtual double operator() (size_t position, int state) const =0
 get value of a state at a position More...
 
virtual const CommentsgetComments () const =0
 Get the comments. More...
 
virtual void setComments (const Comments &comments)=0
 Set the comments. More...
 
virtual void clearComments ()=0
 
const CommentsgetComments () const override
 Get the comments. More...
 
void setComments (const Comments &comments) override
 Set the comments. More...
 
void clearComments () override
 
virtual std::string toString () const override
 Convert the list as a string. More...
 
virtual void addElement (const std::string &c) override
 Add a character to the end of the list. More...
 
virtual void addElement (size_t pos, const std::string &c) override
 Add a character at a certain position in the list. More...
 
void addElement (const T &v) override
 
void addElement (const int &v) override
 Add a character to the end of the list. More...
 
void addElement (size_t pos, const int &v) override
 Add a character at a certain position in the list. More...
 
virtual void addElement (const int &v) override
 Add a character to the end of the list. More...
 
virtual void addElement (size_t pos, const int &v) override
 Add a character at a certain position in the list. More...
 
virtual void setElement (size_t pos, const std::string &c) override
 Set the element at position 'pos' to character 'c'. More...
 
void setElement (size_t pos, const T &v) override
 
void setElement (size_t pos, const int &v) override
 Set the element at position 'pos' to character 'c'. More...
 
virtual void setElement (size_t pos, const int &v) override
 Set the element at position 'pos' to character 'c'. More...
 
virtual std::string getChar (size_t pos) const override
 Get the element at position 'pos' as a character. More...
 
void addIntSymbolListListener (std::shared_ptr< IntSymbolListListener > listener)
 
double getStateValueAt (size_t siteIndex, int state) const override
 get value of a state at a position More...
 
double operator() (size_t siteIndex, int state) const override
 get value of a state at a position More...
 
virtual const std::vector< int > & getContent () const override
 
const int & getElement (size_t pos) const override
 Get the element at position 'pos' as a character. More...
 
const int & getValue (size_t pos) const override
 checked access to a character in list. More...
 
const int & operator[] (size_t pos) const override
 Operator [] overloaded for quick access to a character in list. More...
 
int & operator[] (size_t pos) override
 Operator [] overloaded for quick access to a character in list. More...
 
std::shared_ptr< const AlphabetgetAlphabet () const override
 Get the alphabet associated to the list. More...
 
const Alphabetalphabet () const override
 Get the alphabet associated to the list. More...
 
size_t size () const override
 Get the number of elements in the list. More...
 
void deleteElement (size_t pos) override
 Remove the element at position 'pos'. More...
 
void deleteElement (size_t pos) override
 Remove the element at position 'pos'. More...
 
void deleteElements (size_t pos, size_t len) override
 Remove the elements at position 'pos'. More...
 
void deleteElements (size_t pos, size_t len) override
 Remove the elements at position 'pos'. More...
 
void shuffle () override
 Randomly shuffle the content of the list, with linear complexity. More...
 
The Clonable interface
SequenceWithAnnotationclone () const override
 
Adjusting the size of the sequence.
virtual void setContent (const std::string &sequence) override
 Set the whole content of the sequence. More...
 
void setContent (const std::vector< std::string > &list) override
 Set the whole content of the list. More...
 
void setContent (const std::vector< int > &list) override
 
void setToSizeR (size_t newSize) override
 Set up the size of a sequence from the right side. More...
 
void setToSizeL (size_t newSize) override
 Set up the size of a sequence from the left side. More...
 
void append (const SequenceInterface &seq) override
 Append the content of a sequence to the current one. More...
 
void append (const std::vector< int > &content) override
 Append the specified content to the sequence. More...
 
void append (const std::vector< std::string > &content) override
 Append the specified content to the sequence. More...
 
void append (const std::string &content) override
 Append the specified content to the sequence. More...
 
Acting on the content of the list.
virtual void setContent (const std::vector< T > &list)=0
 Set the whole content of the list. More...
 
Acting on the content of the list.
virtual void setContent (const std::vector< T > &list)=0
 Set the whole content of the list. More...
 
virtual const std::vector< T > & getContent () const =0
 
Setting/getting the name of the sequence.
virtual const std::string & getName () const =0
 Get the name of this sequence. More...
 
virtual void setName (const std::string &name)=0
 Set the name of this sequence. More...
 
Edition methods.
virtual void deleteElement (size_t pos)=0
 Remove the element at position 'pos'. More...
 
virtual void deleteElements (size_t pos, size_t len)=0
 Remove the elements at position 'pos'. More...
 
Provide direct access to the list content.
Warning
These operators allow you to modify the list content. No alphabet checking is performed for your modifications, so use with care, or consider using the setContent() method.
virtual void shuffle ()=0
 Randomly shuffle the content of the list, with linear complexity. More...
 
Edition methods.
virtual void addElement (const std::string &c)=0
 Add a character to the end of the list. More...
 
virtual void addElement (size_t pos, const std::string &c)=0
 Add a character at a certain position in the list. More...
 
virtual void addElement (const T &c)=0
 Add a character to the end of the list. More...
 
virtual void addElement (size_t pos, const T &c)=0
 Add a character at a certain position in the list. More...
 
virtual void setElement (size_t pos, const std::string &c)=0
 Set the element at position 'pos' to character 'c'. More...
 
virtual void setElement (size_t pos, const T &c)=0
 Set the element at position 'pos' to character 'c'. More...
 
virtual std::string getChar (size_t pos) const =0
 Get the element at position 'pos' as a character. More...
 
Edition methods.
virtual void addElement (const T &c)=0
 Add a character to the end of the list. More...
 
virtual void addElement (size_t pos, const T &c)=0
 Add a character at a certain position in the list. More...
 
virtual void setElement (size_t pos, const T &c)=0
 Set the element at position 'pos' to character 'c'. More...
 
virtual const T & getElement (size_t pos) const =0
 Get the element at position 'pos' as a character. More...
 
Provide direct access to the list content.
Warning
These operators allow you to modify the list content. No alphabet checking is performed for your modifications, so use with care, or consider using the setContent() method.
virtual const T & getValue (size_t pos) const =0
 checked access to a character in list. More...
 
virtual const T & operator[] (size_t pos) const =0
 Operator [] overloaded for quick access to a character in list. More...
 
virtual T & operator[] (size_t pos)=0
 Operator [] overloaded for quick access to a character in list. More...
 
Setting/getting the name of the sequence.
const std::string & getName () const override
 Get the name of this sequence. More...
 
void setName (const std::string &name) override
 Set the name of this sequence. More...
 

Protected Member Functions

virtual void beforeSequenceChanged (const IntSymbolListEditionEvent &event) override
 
virtual void afterSequenceChanged (const IntSymbolListEditionEvent &event) override
 
virtual void beforeSequenceInserted (const IntSymbolListInsertionEvent &event) override
 
virtual void afterSequenceInserted (const IntSymbolListInsertionEvent &event) override
 
virtual void beforeSequenceDeleted (const IntSymbolListDeletionEvent &event) override
 
virtual void afterSequenceDeleted (const IntSymbolListDeletionEvent &event) override
 
virtual void beforeSequenceSubstituted (const IntSymbolListSubstitutionEvent &event) override
 
virtual void afterSequenceSubstituted (const IntSymbolListSubstitutionEvent &event) override
 
void propagateEvents (bool yn) override
 
bool propagateEvents () const override
 

Protected Attributes

Comments comments_
 
std::vector< int > content_
 The list content. More...
 
std::vector< std::shared_ptr< CoreSymbolListListener< int > > > listeners_
 Contains the listeners. More...
 

Private Attributes

std::string name_
 The sequence name. More...
 
std::shared_ptr< const Alphabetalphabet_
 The Alphabet attribute must be initialized in constructor and then can never be changed. More...
 
bool propagateEvents_
 

Events handling

virtual size_t getNumberOfListeners () const override
 
virtual const CoreSymbolListListener< int > & listener (size_t i) const override
 
virtual CoreSymbolListListener< int > & listener (size_t i) override
 
virtual std::shared_ptr< const CoreSymbolListListener< int > > getListener (size_t i) const override
 
virtual std::shared_ptr< CoreSymbolListListener< int > > getListener (size_t i) override
 
virtual void addCoreSymbolListListener (std::shared_ptr< CoreSymbolListListener< int >> listener) override
 
virtual void removeCoreSymbolListListener (std::shared_ptr< CoreSymbolListListener< int >> listener) override
 
void fireBeforeSequenceChanged (const CoreSymbolListEditionEvent< int > &event) override
 
void fireAfterSequenceChanged (const CoreSymbolListEditionEvent< int > &event) override
 
void fireBeforeSequenceInserted (const CoreSymbolListInsertionEvent< int > &event) override
 
void fireAfterSequenceInserted (const CoreSymbolListInsertionEvent< int > &event) override
 
void fireBeforeSequenceDeleted (const CoreSymbolListDeletionEvent< int > &event) override
 
void fireAfterSequenceDeleted (const CoreSymbolListDeletionEvent< int > &event) override
 
void fireBeforeSequenceSubstituted (const CoreSymbolListSubstitutionEvent< int > &event) override
 
void fireAfterSequenceSubstituted (const CoreSymbolListSubstitutionEvent< int > &event) override
 

Events handling

virtual void addCoreSymbolListListener (std::shared_ptr< CoreSymbolListListener< T >> listener)=0
 
virtual void removeCoreSymbolListListener (std::shared_ptr< CoreSymbolListListener< T >> listener)=0
 
virtual void beforeSequenceChanged (const CoreSymbolListEditionEvent< T > &event)=0
 
virtual void afterSequenceChanged (const CoreSymbolListEditionEvent< T > &event)=0
 
virtual void beforeSequenceInserted (const CoreSymbolListInsertionEvent< T > &event)=0
 
virtual void afterSequenceInserted (const CoreSymbolListInsertionEvent< T > &event)=0
 
virtual void beforeSequenceDeleted (const CoreSymbolListDeletionEvent< T > &event)=0
 
virtual void afterSequenceDeleted (const CoreSymbolListDeletionEvent< T > &event)=0
 
virtual void beforeSequenceSubstituted (const CoreSymbolListSubstitutionEvent< T > &event)=0
 
virtual void afterSequenceSubstituted (const CoreSymbolListSubstitutionEvent< T > &event)=0
 
virtual void fireBeforeSequenceChanged (const CoreSymbolListEditionEvent< T > &event)=0
 
virtual void fireAfterSequenceChanged (const CoreSymbolListEditionEvent< T > &event)=0
 
virtual void fireBeforeSequenceInserted (const CoreSymbolListInsertionEvent< T > &event)=0
 
virtual void fireAfterSequenceInserted (const CoreSymbolListInsertionEvent< T > &event)=0
 
virtual void fireBeforeSequenceDeleted (const CoreSymbolListDeletionEvent< T > &event)=0
 
virtual void fireAfterSequenceDeleted (const CoreSymbolListDeletionEvent< T > &event)=0
 
virtual void fireBeforeSequenceSubstituted (const CoreSymbolListSubstitutionEvent< T > &event)=0
 
virtual void fireAfterSequenceSubstituted (const CoreSymbolListSubstitutionEvent< T > &event)=0
 

Detailed Description

An implementation of the Sequence interface that supports annotation.

This is a general purpose container, containing an ordered list of states. The states that allowed to be present in the sequence are defined by an alphabet object, which is passed to the sequence constructor by a pointer.

For programming convenience, the states are stored as integers, but the translation toward and from a char description is easily performed with the Alphabet classes.

Sequence objects also contain a name attribute and potentially several comment lines.

The gestion of sequence content is identical to the BasicSequence object, but edition events are properly fired. Listener are therefore properly handled.

See also
BasicSequence

Definition at line 85 of file SequenceWithAnnotation.h.

Member Typedef Documentation

◆ ElementType

typedef int bpp::SequenceInterface::ElementType
inherited

Definition at line 36 of file Sequence.h.

◆ SymbolType

Definition at line 31 of file IntSymbolList.h.

Constructor & Destructor Documentation

◆ SequenceWithAnnotation() [1/9]

bpp::SequenceWithAnnotation::SequenceWithAnnotation ( std::shared_ptr< const Alphabet > &  alpha)
inline

Empty constructor: build a void Sequence with just an Alphabet.

You can use it safely for all type of Alphabet in order to build an empty Sequence i.e. without name nor sequence data.

Parameters
alphaA pointer toward the Alphabet to be used with this Sequence.

Definition at line 99 of file SequenceWithAnnotation.h.

Referenced by clone().

◆ SequenceWithAnnotation() [2/9]

bpp::SequenceWithAnnotation::SequenceWithAnnotation ( const std::string &  name,
const std::string &  sequence,
std::shared_ptr< const Alphabet > &  alpha 
)
inline

Direct constructor: build a Sequence object from a std::string You can use it safely for RNA, DNA and protein sequences.

It can be used with codon sequences too, the std::string will be cut into parts of size 3. But for more complicated alphabets, you should use one complete constructors.

Parameters
nameThe sequence name.
sequenceThe whole sequence to be parsed as a std::string.
alphaA pointer toward the alphabet to be used with this sequence.

Definition at line 118 of file SequenceWithAnnotation.h.

References bpp::IntSymbolListInterface::setContent().

◆ SequenceWithAnnotation() [3/9]

bpp::SequenceWithAnnotation::SequenceWithAnnotation ( const std::string &  name,
const std::string &  sequence,
const Comments comments,
std::shared_ptr< const Alphabet > &  alpha 
)
inline

Direct constructor: build a Sequence object from a std::string.

You can use it safely for RNA, DNA and protein sequences.

It can be used with codon sequences too, the std::string will be cut into tokens of size 3. But for more complicated alphabets, you should use one complete constructors.

Parameters
nameThe sequence name.
sequenceThe whole sequence to be parsed as a std::string.
commentsComments to add to the sequence.
alphaA pointer toward the alphabet to be used with this sequence.

Definition at line 145 of file SequenceWithAnnotation.h.

References bpp::IntSymbolListInterface::setContent().

◆ SequenceWithAnnotation() [4/9]

bpp::SequenceWithAnnotation::SequenceWithAnnotation ( const std::string &  name,
const std::vector< std::string > &  sequence,
std::shared_ptr< const Alphabet > &  alpha 
)
inline

General purpose constructor, can be used with any alphabet.

You should note that the sequence is stored as a std::vector of int. Hence each std::string in the std::vector will be translated using the alphabet object.

Parameters
nameThe sequence name.
sequenceThe sequence content.
alphaA pointer toward the alphabet to be used with this sequence.

Definition at line 169 of file SequenceWithAnnotation.h.

◆ SequenceWithAnnotation() [5/9]

bpp::SequenceWithAnnotation::SequenceWithAnnotation ( const std::string &  name,
const std::vector< std::string > &  sequence,
const Comments comments,
std::shared_ptr< const Alphabet > &  alpha 
)
inline

General purpose constructor, can be used with any alphabet.

You should note that the sequence is stored as a std::vector of int. Hence each std::string in the std::vector will be translated using the alphabet object.

Parameters
nameThe sequence name.
sequenceThe sequence content.
commentsComments to add to the sequence.
alphaA pointer toward the alphabet to be used with this sequence.

Definition at line 190 of file SequenceWithAnnotation.h.

◆ SequenceWithAnnotation() [6/9]

bpp::SequenceWithAnnotation::SequenceWithAnnotation ( const std::string &  name,
const std::vector< int > &  sequence,
std::shared_ptr< const Alphabet > &  alpha 
)
inline

General purpose constructor, can be used with any alphabet.

Parameters
nameThe sequence name.
sequenceThe sequence content.
alphaA pointer toward the alphabet to be used with this sequence.

Definition at line 208 of file SequenceWithAnnotation.h.

◆ SequenceWithAnnotation() [7/9]

bpp::SequenceWithAnnotation::SequenceWithAnnotation ( const std::string &  name,
const std::vector< int > &  sequence,
const Comments comments,
std::shared_ptr< const Alphabet > &  alpha 
)
inline

General purpose constructor, can be used with any alphabet.

Parameters
nameThe sequence name.
sequenceThe sequence content.
commentsComments to add to the sequence.
alphaA pointer toward the alphabet to be used with this sequence.

Definition at line 226 of file SequenceWithAnnotation.h.

◆ SequenceWithAnnotation() [8/9]

bpp::SequenceWithAnnotation::SequenceWithAnnotation ( const Sequence s)
inline

The Sequence generic copy constructor.

Definition at line 240 of file SequenceWithAnnotation.h.

◆ SequenceWithAnnotation() [9/9]

bpp::SequenceWithAnnotation::SequenceWithAnnotation ( const SequenceWithAnnotation s)
inline

The Sequence copy constructor.

Definition at line 250 of file SequenceWithAnnotation.h.

◆ ~SequenceWithAnnotation()

virtual bpp::SequenceWithAnnotation::~SequenceWithAnnotation ( )
inlinevirtual

Definition at line 284 of file SequenceWithAnnotation.h.

Member Function Documentation

◆ addAnnotation()

virtual void bpp::SequenceWithAnnotation::addAnnotation ( std::shared_ptr< SequenceAnnotation anno)
inlinevirtual

Add a new annotation to the sequence.

Parameters
annoThe annotation object to be added. Unless the annotation is shared, the annotation object will be owned by the sequence object, and will be copied and deleted when needed.
Exceptions
ExceptionIf the annotation is not valid for this sequence.
See also
SequenceWithAnnotation::isValidWith

Definition at line 349 of file SequenceWithAnnotation.h.

References bpp::EventDrivenIntSymbolList::addIntSymbolListListener().

Referenced by bpp::SequenceWithQuality::SequenceWithQuality().

◆ addCoreSymbolListListener() [1/2]

virtual void bpp::AbstractTemplateEventDrivenSymbolList< int >::addCoreSymbolListListener ( std::shared_ptr< CoreSymbolListListener< T >>  listener)
inlineoverridevirtualinherited

Definition at line 391 of file SymbolList.h.

◆ addCoreSymbolListListener() [2/2]

template<class T >
virtual void bpp::TemplateEventDrivenCoreSymbolListInterface< T >::addCoreSymbolListListener ( std::shared_ptr< CoreSymbolListListener< T >>  listener)
pure virtualinherited

◆ addElement() [1/13]

void bpp::AbstractTemplateSymbolList< int >::addElement ( const T &  c)
inlineoverrideinherited

Add a character to the end of the list.

Parameters
cThe character to add.

Definition at line 152 of file SymbolList.h.

◆ addElement() [2/13]

virtual void bpp::AbstractTemplateEventDrivenSymbolList< int >::addElement ( const T &  c)
inlineoverridevirtualinherited

Add a character to the end of the list.

Parameters
cThe character to add.

Definition at line 336 of file SymbolList.h.

◆ addElement() [3/13]

void EventDrivenIntSymbolList::addElement ( const std::string &  c)
overridevirtualinherited

Add a character to the end of the list.

Parameters
cThe character to add, given as a string.

Reimplemented from bpp::IntSymbolList.

Definition at line 113 of file IntSymbolList.cpp.

References bpp::AbstractTemplateEventDrivenSymbolList< T >::addElement().

◆ addElement() [4/13]

virtual void bpp::IntSymbolListInterface::addElement ( const std::string &  c)
pure virtualinherited

Add a character to the end of the list.

Parameters
cThe character to add, given as a string.

Implemented in bpp::EventDrivenIntSymbolList, and bpp::IntSymbolList.

◆ addElement() [5/13]

template<class T >
virtual void bpp::TemplateCoreSymbolListInterface< T >::addElement ( const T &  c)
pure virtualinherited

Add a character to the end of the list.

Parameters
cThe character to add.

Implemented in bpp::AbstractTemplateEventDrivenSymbolList< T >, and bpp::AbstractTemplateSymbolList< T >.

◆ addElement() [6/13]

virtual void bpp::TemplateCoreSymbolListInterface< T >::addElement
inherited

Add a character to the end of the list.

Parameters
cThe character to add.

Referenced by bpp::SequenceWithQuality::addElement().

◆ addElement() [7/13]

void bpp::AbstractTemplateSymbolList< T >::addElement
inlineoverrideinherited

Definition at line 152 of file SymbolList.h.

Referenced by bpp::SequenceWithQuality::addElement().

◆ addElement() [8/13]

void bpp::AbstractTemplateSymbolList< int >::addElement ( size_t  pos,
const T &  c 
)
inlineoverrideinherited

Add a character at a certain position in the list.

Parameters
posThe position where to insert the element.
cThe character to add.

Definition at line 157 of file SymbolList.h.

◆ addElement() [9/13]

virtual void bpp::AbstractTemplateEventDrivenSymbolList< int >::addElement ( size_t  pos,
const T &  c 
)
inlineoverridevirtualinherited

Add a character at a certain position in the list.

Parameters
posThe position where to insert the element.
cThe character to add.

Definition at line 344 of file SymbolList.h.

◆ addElement() [10/13]

void EventDrivenIntSymbolList::addElement ( size_t  pos,
const std::string &  c 
)
overridevirtualinherited

Add a character at a certain position in the list.

Parameters
posThe position where to insert the element.
cThe character to add, given as a string.

Reimplemented from bpp::IntSymbolList.

Definition at line 120 of file IntSymbolList.cpp.

References bpp::AbstractTemplateEventDrivenSymbolList< T >::addElement().

◆ addElement() [11/13]

virtual void bpp::IntSymbolListInterface::addElement ( size_t  pos,
const std::string &  c 
)
pure virtualinherited

Add a character at a certain position in the list.

Parameters
posThe position where to insert the element.
cThe character to add, given as a string.

Implemented in bpp::EventDrivenIntSymbolList, and bpp::IntSymbolList.

◆ addElement() [12/13]

template<class T >
virtual void bpp::TemplateCoreSymbolListInterface< T >::addElement ( size_t  pos,
const T &  c 
)
pure virtualinherited

Add a character at a certain position in the list.

Parameters
posThe position where to insert the element.
cThe character to add.

Implemented in bpp::AbstractTemplateEventDrivenSymbolList< T >, and bpp::AbstractTemplateSymbolList< T >.

◆ addElement() [13/13]

virtual void bpp::TemplateCoreSymbolListInterface< T >::addElement
inherited

Add a character at a certain position in the list.

Parameters
posThe position where to insert the element.
cThe character to add.

◆ addIntSymbolListListener()

void bpp::EventDrivenIntSymbolList::addIntSymbolListListener ( std::shared_ptr< IntSymbolListListener listener)
inlineinherited

◆ afterSequenceChanged() [1/2]

template<class T >
virtual void bpp::TemplateEventDrivenCoreSymbolListInterface< T >::afterSequenceChanged ( const CoreSymbolListEditionEvent< T > &  event)
protectedpure virtualinherited

◆ afterSequenceChanged() [2/2]

virtual void bpp::EventDrivenIntSymbolList::afterSequenceChanged ( const IntSymbolListEditionEvent event)
inlineoverrideprotectedvirtualinherited

Reimplemented from bpp::AbstractTemplateEventDrivenSymbolList< int >.

Definition at line 375 of file IntSymbolList.h.

◆ afterSequenceDeleted() [1/2]

template<class T >
virtual void bpp::TemplateEventDrivenCoreSymbolListInterface< T >::afterSequenceDeleted ( const CoreSymbolListDeletionEvent< T > &  event)
protectedpure virtualinherited

◆ afterSequenceDeleted() [2/2]

virtual void bpp::EventDrivenIntSymbolList::afterSequenceDeleted ( const IntSymbolListDeletionEvent event)
inlineoverrideprotectedvirtualinherited

Reimplemented from bpp::AbstractTemplateEventDrivenSymbolList< int >.

Definition at line 379 of file IntSymbolList.h.

◆ afterSequenceInserted() [1/2]

template<class T >
virtual void bpp::TemplateEventDrivenCoreSymbolListInterface< T >::afterSequenceInserted ( const CoreSymbolListInsertionEvent< T > &  event)
protectedpure virtualinherited

◆ afterSequenceInserted() [2/2]

virtual void bpp::EventDrivenIntSymbolList::afterSequenceInserted ( const IntSymbolListInsertionEvent event)
inlineoverrideprotectedvirtualinherited

Reimplemented from bpp::AbstractTemplateEventDrivenSymbolList< int >.

Definition at line 377 of file IntSymbolList.h.

◆ afterSequenceSubstituted() [1/2]

template<class T >
virtual void bpp::TemplateEventDrivenCoreSymbolListInterface< T >::afterSequenceSubstituted ( const CoreSymbolListSubstitutionEvent< T > &  event)
protectedpure virtualinherited

◆ afterSequenceSubstituted() [2/2]

virtual void bpp::EventDrivenIntSymbolList::afterSequenceSubstituted ( const IntSymbolListSubstitutionEvent event)
inlineoverrideprotectedvirtualinherited

Reimplemented from bpp::AbstractTemplateEventDrivenSymbolList< int >.

Definition at line 381 of file IntSymbolList.h.

◆ alphabet() [1/2]

◆ alphabet() [2/2]

const Alphabet& bpp::AbstractTemplateSymbolList< int >::alphabet ( ) const
inlineoverridevirtualinherited

Get the alphabet associated to the list.

Returns
A const reference to the alphabet.
See also
Alphabet class.

Implements bpp::CruxSymbolListInterface.

Definition at line 122 of file SymbolList.h.

◆ annotation() [1/2]

virtual SequenceAnnotation& bpp::SequenceWithAnnotation::annotation ( const std::string &  type)
inlinevirtual

◆ annotation() [2/2]

◆ append() [1/4]

void SequenceWithAnnotation::append ( const SequenceInterface seq)
overridevirtual

Append the content of a sequence to the current one.

Parameters
seqThe sequence to append. Only the raw content is appended, not additional fields such as annotations if any.
Exceptions
AlphabetMismatchExceptionIn case the alphabet does not match the current one.

Implements bpp::SequenceInterface.

Definition at line 87 of file SequenceWithAnnotation.cpp.

References bpp::CruxSymbolListInterface::getAlphabet(), and bpp::CruxSymbolListInterface::size().

Referenced by bpp::SequenceWithQuality::append().

◆ append() [2/4]

void SequenceWithAnnotation::append ( const std::string &  content)
overridevirtual

Append the specified content to the sequence.

Parameters
contentThe content to append to the sequence.
Exceptions
BadCharExceptionIf the content does not match the current alphabet.

Implements bpp::SequenceInterface.

Definition at line 140 of file SequenceWithAnnotation.cpp.

References bpp::StringSequenceTools::codeSequence().

◆ append() [3/4]

void SequenceWithAnnotation::append ( const std::vector< int > &  content)
overridevirtual

Append the specified content to the sequence.

Parameters
contentThe content to append to the sequence.
Exceptions
BadIntExceptionIf the content does not match the current alphabet.

Implements bpp::SequenceInterface.

Definition at line 101 of file SequenceWithAnnotation.cpp.

◆ append() [4/4]

void SequenceWithAnnotation::append ( const std::vector< std::string > &  content)
overridevirtual

Append the specified content to the sequence.

Parameters
contentThe content to append to the sequence.
Exceptions
BadCharExceptionIf the content does not match the current alphabet.

Implements bpp::SequenceInterface.

Definition at line 120 of file SequenceWithAnnotation.cpp.

◆ beforeSequenceChanged() [1/2]

template<class T >
virtual void bpp::TemplateEventDrivenCoreSymbolListInterface< T >::beforeSequenceChanged ( const CoreSymbolListEditionEvent< T > &  event)
protectedpure virtualinherited

◆ beforeSequenceChanged() [2/2]

virtual void bpp::EventDrivenIntSymbolList::beforeSequenceChanged ( const IntSymbolListEditionEvent event)
inlineoverrideprotectedvirtualinherited

Reimplemented from bpp::AbstractTemplateEventDrivenSymbolList< int >.

Definition at line 374 of file IntSymbolList.h.

◆ beforeSequenceDeleted() [1/2]

template<class T >
virtual void bpp::TemplateEventDrivenCoreSymbolListInterface< T >::beforeSequenceDeleted ( const CoreSymbolListDeletionEvent< T > &  event)
protectedpure virtualinherited

◆ beforeSequenceDeleted() [2/2]

virtual void bpp::EventDrivenIntSymbolList::beforeSequenceDeleted ( const IntSymbolListDeletionEvent event)
inlineoverrideprotectedvirtualinherited

Reimplemented from bpp::AbstractTemplateEventDrivenSymbolList< int >.

Definition at line 378 of file IntSymbolList.h.

◆ beforeSequenceInserted() [1/2]

template<class T >
virtual void bpp::TemplateEventDrivenCoreSymbolListInterface< T >::beforeSequenceInserted ( const CoreSymbolListInsertionEvent< T > &  event)
protectedpure virtualinherited

◆ beforeSequenceInserted() [2/2]

virtual void bpp::EventDrivenIntSymbolList::beforeSequenceInserted ( const IntSymbolListInsertionEvent event)
inlineoverrideprotectedvirtualinherited

Reimplemented from bpp::AbstractTemplateEventDrivenSymbolList< int >.

Definition at line 376 of file IntSymbolList.h.

◆ beforeSequenceSubstituted() [1/2]

template<class T >
virtual void bpp::TemplateEventDrivenCoreSymbolListInterface< T >::beforeSequenceSubstituted ( const CoreSymbolListSubstitutionEvent< T > &  event)
protectedpure virtualinherited

◆ beforeSequenceSubstituted() [2/2]

virtual void bpp::EventDrivenIntSymbolList::beforeSequenceSubstituted ( const IntSymbolListSubstitutionEvent event)
inlineoverrideprotectedvirtualinherited

Reimplemented from bpp::AbstractTemplateEventDrivenSymbolList< int >.

Definition at line 380 of file IntSymbolList.h.

◆ clearComments() [1/2]

void bpp::SimpleCommentable::clearComments ( )
inlineoverridevirtualinherited

Implements bpp::Commentable.

Definition at line 88 of file Commentable.h.

References bpp::SimpleCommentable::comments_.

◆ clearComments() [2/2]

virtual void bpp::Commentable::clearComments ( )
pure virtualinherited

Implemented in bpp::SimpleCommentable.

◆ clone()

SequenceWithAnnotation* bpp::SequenceWithAnnotation::clone ( ) const
inlineoverridevirtual

Implements bpp::AbstractCoreSequence.

Reimplemented in bpp::SequenceWithQuality.

Definition at line 292 of file SequenceWithAnnotation.h.

References SequenceWithAnnotation().

◆ deleteElement() [1/3]

void bpp::AbstractTemplateSymbolList< int >::deleteElement ( size_t  pos)
inlineoverridevirtualinherited

Remove the element at position 'pos'.

Parameters
posThe position of the element to remove.

Implements bpp::CruxSymbolListInterface.

Reimplemented in bpp::AbstractTemplateEventDrivenSymbolList< int >.

Definition at line 138 of file SymbolList.h.

◆ deleteElement() [2/3]

void bpp::AbstractTemplateEventDrivenSymbolList< int >::deleteElement ( size_t  pos)
inlineoverridevirtualinherited

Remove the element at position 'pos'.

Parameters
posThe position of the element to remove.

Reimplemented from bpp::AbstractTemplateSymbolList< int >.

Definition at line 319 of file SymbolList.h.

◆ deleteElement() [3/3]

virtual void bpp::CruxSymbolListInterface::deleteElement ( size_t  pos)
pure virtualinherited

◆ deleteElements() [1/3]

void bpp::AbstractTemplateSymbolList< int >::deleteElements ( size_t  pos,
size_t  len 
)
inlineoverridevirtualinherited

Remove the elements at position 'pos'.

Parameters
posThe position of the first element to remove.
lenThe length of the region to remove.

Implements bpp::CruxSymbolListInterface.

Reimplemented in bpp::AbstractTemplateEventDrivenSymbolList< int >.

Definition at line 145 of file SymbolList.h.

◆ deleteElements() [2/3]

void bpp::AbstractTemplateEventDrivenSymbolList< int >::deleteElements ( size_t  pos,
size_t  len 
)
inlineoverridevirtualinherited

Remove the elements at position 'pos'.

Parameters
posThe position of the first element to remove.
lenThe length of the region to remove.

Reimplemented from bpp::AbstractTemplateSymbolList< int >.

Definition at line 328 of file SymbolList.h.

◆ deleteElements() [3/3]

virtual void bpp::CruxSymbolListInterface::deleteElements ( size_t  pos,
size_t  len 
)
pure virtualinherited

Remove the elements at position 'pos'.

Parameters
posThe position of the first element to remove.
lenThe length of the region to remove.

Implemented in bpp::AbstractTemplateEventDrivenSymbolList< T >, bpp::AbstractTemplateEventDrivenSymbolList< int >, bpp::AbstractTemplateSymbolList< T >, bpp::AbstractTemplateSymbolList< int >, and bpp::ProbabilisticSymbolList.

◆ fireAfterSequenceChanged() [1/2]

void bpp::AbstractTemplateEventDrivenSymbolList< int >::fireAfterSequenceChanged ( const CoreSymbolListEditionEvent< T > &  event)
inlineoverrideprotectedinherited

Definition at line 424 of file SymbolList.h.

◆ fireAfterSequenceChanged() [2/2]

template<class T >
virtual void bpp::TemplateEventDrivenCoreSymbolListInterface< T >::fireAfterSequenceChanged ( const CoreSymbolListEditionEvent< T > &  event)
protectedpure virtualinherited

◆ fireAfterSequenceDeleted() [1/2]

void bpp::AbstractTemplateEventDrivenSymbolList< int >::fireAfterSequenceDeleted ( const CoreSymbolListDeletionEvent< T > &  event)
inlineoverrideprotectedinherited

Definition at line 464 of file SymbolList.h.

◆ fireAfterSequenceDeleted() [2/2]

template<class T >
virtual void bpp::TemplateEventDrivenCoreSymbolListInterface< T >::fireAfterSequenceDeleted ( const CoreSymbolListDeletionEvent< T > &  event)
protectedpure virtualinherited

◆ fireAfterSequenceInserted() [1/2]

void bpp::AbstractTemplateEventDrivenSymbolList< int >::fireAfterSequenceInserted ( const CoreSymbolListInsertionEvent< T > &  event)
inlineoverrideprotectedinherited

Definition at line 444 of file SymbolList.h.

◆ fireAfterSequenceInserted() [2/2]

template<class T >
virtual void bpp::TemplateEventDrivenCoreSymbolListInterface< T >::fireAfterSequenceInserted ( const CoreSymbolListInsertionEvent< T > &  event)
protectedpure virtualinherited

◆ fireAfterSequenceSubstituted() [1/2]

void bpp::AbstractTemplateEventDrivenSymbolList< int >::fireAfterSequenceSubstituted ( const CoreSymbolListSubstitutionEvent< T > &  event)
inlineoverrideprotectedinherited

Definition at line 484 of file SymbolList.h.

◆ fireAfterSequenceSubstituted() [2/2]

template<class T >
virtual void bpp::TemplateEventDrivenCoreSymbolListInterface< T >::fireAfterSequenceSubstituted ( const CoreSymbolListSubstitutionEvent< T > &  event)
protectedpure virtualinherited

◆ fireBeforeSequenceChanged() [1/2]

void bpp::AbstractTemplateEventDrivenSymbolList< int >::fireBeforeSequenceChanged ( const CoreSymbolListEditionEvent< T > &  event)
inlineoverrideprotectedinherited

Definition at line 414 of file SymbolList.h.

◆ fireBeforeSequenceChanged() [2/2]

template<class T >
virtual void bpp::TemplateEventDrivenCoreSymbolListInterface< T >::fireBeforeSequenceChanged ( const CoreSymbolListEditionEvent< T > &  event)
protectedpure virtualinherited

◆ fireBeforeSequenceDeleted() [1/2]

void bpp::AbstractTemplateEventDrivenSymbolList< int >::fireBeforeSequenceDeleted ( const CoreSymbolListDeletionEvent< T > &  event)
inlineoverrideprotectedinherited

Definition at line 454 of file SymbolList.h.

◆ fireBeforeSequenceDeleted() [2/2]

template<class T >
virtual void bpp::TemplateEventDrivenCoreSymbolListInterface< T >::fireBeforeSequenceDeleted ( const CoreSymbolListDeletionEvent< T > &  event)
protectedpure virtualinherited

◆ fireBeforeSequenceInserted() [1/2]

void bpp::AbstractTemplateEventDrivenSymbolList< int >::fireBeforeSequenceInserted ( const CoreSymbolListInsertionEvent< T > &  event)
inlineoverrideprotectedinherited

Definition at line 434 of file SymbolList.h.

◆ fireBeforeSequenceInserted() [2/2]

template<class T >
virtual void bpp::TemplateEventDrivenCoreSymbolListInterface< T >::fireBeforeSequenceInserted ( const CoreSymbolListInsertionEvent< T > &  event)
protectedpure virtualinherited

◆ fireBeforeSequenceSubstituted() [1/2]

void bpp::AbstractTemplateEventDrivenSymbolList< int >::fireBeforeSequenceSubstituted ( const CoreSymbolListSubstitutionEvent< T > &  event)
inlineoverrideprotectedinherited

Definition at line 474 of file SymbolList.h.

◆ fireBeforeSequenceSubstituted() [2/2]

template<class T >
virtual void bpp::TemplateEventDrivenCoreSymbolListInterface< T >::fireBeforeSequenceSubstituted ( const CoreSymbolListSubstitutionEvent< T > &  event)
protectedpure virtualinherited

◆ getAlphabet() [1/2]

virtual std::shared_ptr<const Alphabet> bpp::CruxSymbolListInterface::getAlphabet ( ) const
pure virtualinherited

Get the alphabet associated to the list.

Returns
A const pointer to the alphabet.
See also
Alphabet class.

Implemented in bpp::AbstractTemplateSymbolList< T >, bpp::AbstractTemplateSymbolList< int >, and bpp::ProbabilisticSymbolList.

Referenced by bpp::Sequence::append(), append(), bpp::SequenceTools::areSequencesIdentical(), bpp::SymbolListTools::areSymbolListsIdentical(), bpp::SequenceTools::bowkerTest(), bpp::SymbolListTools::changeGapsToUnknownCharacters(), bpp::SymbolListTools::changeUnresolvedCharactersToGaps(), bpp::SequenceTools::combineSequences(), bpp::SequenceWithQualityTools::complement(), bpp::SequenceTools::complement(), bpp::SiteContainerTools::computeSimilarity(), bpp::SequenceTools::concatenate(), bpp::SequenceWithQualityTools::concatenate(), bpp::SequenceTools::findFirstOf(), bpp::SequenceTools::getCDS(), bpp::SequenceTools::getComplement(), bpp::SymbolListTools::getCountsResolveUnknowns(), bpp::SymbolListTools::getGCContent(), bpp::SymbolListTools::getNumberOfDistinctPositions(), bpp::SymbolListTools::getNumberOfPositionsWithoutGap(), bpp::SequenceTools::getNumberOfUnresolvedSites(), bpp::SequenceTools::getPercentIdentity(), bpp::SequenceTools::getPutativeHaplotypes(), bpp::SequenceTools::getSequenceWithoutGaps(), bpp::SequenceTools::getSequenceWithoutStops(), bpp::SymbolListTools::hasGap(), bpp::SymbolListTools::hasUnknown(), bpp::SymbolListTools::hasUnresolved(), bpp::SequenceTools::invertComplement(), bpp::SymbolListTools::isComplete(), bpp::SymbolListTools::isConstant(), bpp::SymbolListTools::isGapOnly(), bpp::SymbolListTools::isGapOrUnresolvedOnly(), bpp::SymbolListTools::jointEntropy(), merge(), bpp::SymbolListTools::mutualInformation(), bpp::SymbolListTools::numberOfGaps(), bpp::SymbolListTools::numberOfUnresolved(), bpp::ProbabilisticSymbolList::operator=(), bpp::AbstractTemplateSymbolList< T >::operator=(), bpp::SequenceWithQualityTools::removeGaps(), bpp::SequenceTools::removeGaps(), bpp::SequenceTools::removeStops(), bpp::SequenceTools::replaceStopsWithGaps(), bpp::WordAlphabet::reverse(), bpp::NucleicAcidsReplication::reverse(), bpp::SequenceWithQualityTools::reverseTranscript(), bpp::SequenceTools::RNYslice(), bpp::SequenceTools::subseq(), bpp::SequenceWithQualityTools::subseq(), bpp::SequenceTools::subtractHaplotype(), bpp::SequenceWithQualityTools::transcript(), bpp::NucleicAcidsReplication::translate(), bpp::AbstractTransliterator::translate(), bpp::WordAlphabet::translate(), and bpp::SymbolListTools::variabilityShannon().

◆ getAlphabet() [2/2]

std::shared_ptr<const Alphabet> bpp::AbstractTemplateSymbolList< int >::getAlphabet ( ) const
inlineoverridevirtualinherited

Get the alphabet associated to the list.

Returns
A const pointer to the alphabet.
See also
Alphabet class.

Implements bpp::CruxSymbolListInterface.

Definition at line 120 of file SymbolList.h.

◆ getAnnotationTypes()

vector< string > SequenceWithAnnotation::getAnnotationTypes ( ) const
virtual
Returns
The list of annotation types contained in this sequence.

Definition at line 148 of file SequenceWithAnnotation.cpp.

References bpp::SequenceAnnotation::getType().

Referenced by merge().

◆ getChar() [1/2]

virtual std::string bpp::IntSymbolListInterface::getChar ( size_t  pos) const
pure virtualinherited

Get the element at position 'pos' as a character.

Parameters
posThe position of the character to retrieve.

Implemented in bpp::Sequence, bpp::EventDrivenIntSymbolList, and bpp::IntSymbolList.

◆ getChar() [2/2]

string EventDrivenIntSymbolList::getChar ( size_t  pos) const
overridevirtualinherited

Get the element at position 'pos' as a character.

Parameters
posThe position of the character to retrieve.

Reimplemented from bpp::IntSymbolList.

Definition at line 134 of file IntSymbolList.cpp.

◆ getComments() [1/2]

◆ getComments() [2/2]

◆ getContent() [1/2]

◆ getContent() [2/2]

virtual const std::vector<int >& bpp::AbstractTemplateSymbolList< int >::getContent ( ) const
inlineoverridevirtualinherited

Implements bpp::TemplateCoreSymbolListInterface< T >.

Definition at line 131 of file SymbolList.h.

◆ getElement() [1/2]

template<class T >
virtual const T& bpp::TemplateCoreSymbolListInterface< T >::getElement ( size_t  pos) const
pure virtualinherited

Get the element at position 'pos' as a character.

Parameters
posThe position of the character to retrieve.

Implemented in bpp::AbstractTemplateSymbolList< T >, bpp::AbstractTemplateSymbolList< int >, and bpp::ProbabilisticSymbolList.

◆ getElement() [2/2]

const int & bpp::AbstractTemplateSymbolList< int >::getElement ( size_t  pos) const
inlineoverridevirtualinherited

Get the element at position 'pos' as a character.

Parameters
posThe position of the character to retrieve.

Implements bpp::TemplateCoreSymbolListInterface< T >.

Definition at line 173 of file SymbolList.h.

◆ getListener() [1/2]

virtual std::shared_ptr<const CoreSymbolListListener<int > > bpp::AbstractTemplateEventDrivenSymbolList< int >::getListener ( size_t  i) const
inlineoverridevirtualinherited

◆ getListener() [2/2]

virtual std::shared_ptr<CoreSymbolListListener<int > > bpp::AbstractTemplateEventDrivenSymbolList< int >::getListener ( size_t  i)
inlineoverridevirtualinherited

◆ getName() [1/2]

◆ getName() [2/2]

const std::string& bpp::AbstractCoreSequence::getName ( ) const
inlineoverridevirtualinherited

◆ getNumberOfListeners()

virtual size_t bpp::AbstractTemplateEventDrivenSymbolList< int >::getNumberOfListeners ( ) const
inlineoverridevirtualinherited

◆ getStateValueAt() [1/2]

virtual double bpp::CruxSymbolListInterface::getStateValueAt ( size_t  position,
int  state 
) const
pure virtualinherited

get value of a state at a position

Parameters
positionposition in the list
statestate in the alphabet
Returns
The state value at the given position.

Implemented in bpp::Sequence, bpp::ProbabilisticSequence, bpp::ProbabilisticSymbolList, bpp::IntSymbolList, bpp::CoreSiteInterface, bpp::Site, and bpp::ProbabilisticSite.

Referenced by bpp::ProbabilisticSymbolList::ProbabilisticSymbolList().

◆ getStateValueAt() [2/2]

double bpp::IntSymbolList::getStateValueAt ( size_t  position,
int  state 
) const
inlineoverridevirtualinherited

get value of a state at a position

Parameters
positionposition in the list
statestate in the alphabet
Returns
The state value at the given position.

Implements bpp::CruxSymbolListInterface.

Reimplemented in bpp::Sequence, and bpp::Site.

Definition at line 210 of file IntSymbolList.h.

References bpp::AbstractTemplateSymbolList< int >::content_, and bpp::AbstractTemplateSymbolList< int >::getAlphabet().

◆ getValue() [1/2]

◆ getValue() [2/2]

const int & bpp::AbstractTemplateSymbolList< int >::getValue ( size_t  pos) const
inlineoverridevirtualinherited

checked access to a character in list.

Parameters
posThe position to retrieve.
Returns
The T value of character at position pos.

Implements bpp::TemplateCoreSymbolListInterface< T >.

Definition at line 180 of file SymbolList.h.

◆ hasAnnotation()

virtual bool bpp::SequenceWithAnnotation::hasAnnotation ( const std::string &  type) const
inlinevirtual

◆ listener() [1/2]

virtual const CoreSymbolListListener<int >& bpp::AbstractTemplateEventDrivenSymbolList< int >::listener ( size_t  i) const
inlineoverridevirtualinherited

◆ listener() [2/2]

virtual CoreSymbolListListener<int >& bpp::AbstractTemplateEventDrivenSymbolList< int >::listener ( size_t  i)
inlineoverridevirtualinherited

◆ merge()

void SequenceWithAnnotation::merge ( const SequenceWithAnnotation swa)
virtual

Merge a sequence with the current one.

Sequences must have the same name and alphabets. Only first sequence's commentaries are kept. Annotations that could not be merged will not be added in the concatenated sequence. See the documentation of each annotation class for more details.

Parameters
swaThe sequence to merge with.
Exceptions
AlphabetMismatchExceptionIf the two alphabets do not match.
ExceptionIf the sequence names do not match.

Definition at line 166 of file SequenceWithAnnotation.cpp.

References annotation(), bpp::SequenceAnnotation::clone(), bpp::CruxSymbolListInterface::getAlphabet(), getAnnotationTypes(), bpp::TemplateCoreSymbolListInterface< T >::getContent(), and bpp::AbstractCoreSequence::getName().

◆ operator()() [1/2]

virtual double bpp::CruxSymbolListInterface::operator() ( size_t  position,
int  state 
) const
pure virtualinherited

get value of a state at a position

Short-cut for getStateValueAt.

Parameters
positionposition in the list
statestate in the alphabet
Returns
The state value at the given position.

Implemented in bpp::ProbabilisticSymbolList, and bpp::IntSymbolList.

◆ operator()() [2/2]

double bpp::IntSymbolList::operator() ( size_t  position,
int  state 
) const
inlineoverridevirtualinherited

get value of a state at a position

Short-cut for getStateValueAt.

Parameters
positionposition in the list
statestate in the alphabet
Returns
The state value at the given position.

Implements bpp::CruxSymbolListInterface.

Definition at line 218 of file IntSymbolList.h.

References bpp::AbstractTemplateSymbolList< int >::content_, and bpp::AbstractTemplateSymbolList< int >::getAlphabet().

◆ operator=() [1/2]

◆ operator=() [2/2]

SequenceWithAnnotation& bpp::SequenceWithAnnotation::operator= ( const SequenceWithAnnotation s)
inline

The Sequence assignment operator. This does not perform a hard copy of the alphabet object.

Returns
A ref toward the assigned Sequence.

Definition at line 276 of file SequenceWithAnnotation.h.

References bpp::AbstractCoreSequence::operator=(), and bpp::EventDrivenIntSymbolList::operator=().

◆ operator[]() [1/4]

template<class T >
virtual const T& bpp::TemplateCoreSymbolListInterface< T >::operator[] ( size_t  pos) const
pure virtualinherited

Operator [] overloaded for quick access to a character in list.

Parameters
posThe position to retrieve.
Returns
The T value of character at position pos.

Implemented in bpp::AbstractTemplateSymbolList< T >, bpp::AbstractTemplateSymbolList< int >, and bpp::ProbabilisticSymbolList.

◆ operator[]() [2/4]

const int & bpp::AbstractTemplateSymbolList< int >::operator[] ( size_t  pos) const
inlineoverridevirtualinherited

Operator [] overloaded for quick access to a character in list.

Parameters
posThe position to retrieve.
Returns
The T value of character at position pos.

Implements bpp::TemplateCoreSymbolListInterface< T >.

Definition at line 187 of file SymbolList.h.

◆ operator[]() [3/4]

int & bpp::AbstractTemplateSymbolList< int >::operator[] ( size_t  pos)
inlineoverridevirtualinherited

Operator [] overloaded for quick access to a character in list.

Parameters
posThe position to retrieve.
Returns
The T value of character at position pos.

Implements bpp::TemplateCoreSymbolListInterface< T >.

Definition at line 189 of file SymbolList.h.

◆ operator[]() [4/4]

template<class T >
virtual T& bpp::TemplateCoreSymbolListInterface< T >::operator[] ( size_t  pos)
pure virtualinherited

Operator [] overloaded for quick access to a character in list.

Parameters
posThe position to retrieve.
Returns
The T value of character at position pos.

Implemented in bpp::AbstractTemplateSymbolList< T >, bpp::AbstractTemplateSymbolList< int >, and bpp::ProbabilisticSymbolList.

◆ propagateEvents() [1/2]

bool bpp::AbstractTemplateEventDrivenSymbolList< int >::propagateEvents ( ) const
inlineoverrideprotectedvirtualinherited

◆ propagateEvents() [2/2]

void bpp::AbstractTemplateEventDrivenSymbolList< int >::propagateEvents ( bool  yn)
inlineoverrideprotectedvirtualinherited

◆ removeCoreSymbolListListener() [1/2]

virtual void bpp::AbstractTemplateEventDrivenSymbolList< int >::removeCoreSymbolListListener ( std::shared_ptr< CoreSymbolListListener< T >>  listener)
inlineoverridevirtualinherited

Definition at line 396 of file SymbolList.h.

◆ removeCoreSymbolListListener() [2/2]

template<class T >
virtual void bpp::TemplateEventDrivenCoreSymbolListInterface< T >::removeCoreSymbolListListener ( std::shared_ptr< CoreSymbolListListener< T >>  listener)
pure virtualinherited

◆ setComments() [1/2]

◆ setComments() [2/2]

virtual void bpp::Commentable::setComments ( const Comments comments)
pure virtualinherited

◆ setContent() [1/5]

void SequenceWithAnnotation::setContent ( const std::string &  sequence)
overridevirtual

Set the whole content of the sequence.

Parameters
sequenceThe new content of the sequence.
See also
The Sequence constructor for information about the way sequences are internally stored.

Implements bpp::SequenceInterface.

Definition at line 20 of file SequenceWithAnnotation.cpp.

References bpp::StringSequenceTools::codeSequence(), and bpp::TextTools::removeWhiteSpaces().

◆ setContent() [2/5]

void bpp::SequenceWithAnnotation::setContent ( const std::vector< int > &  list)
inlineoverridevirtual

Reimplemented from bpp::EventDrivenIntSymbolList.

Definition at line 315 of file SequenceWithAnnotation.h.

References bpp::IntSymbolListInterface::setContent().

◆ setContent() [3/5]

void bpp::SequenceWithAnnotation::setContent ( const std::vector< std::string > &  list)
inlineoverridevirtual

Set the whole content of the list.

Parameters
listThe new content of the list.
See also
The list constructor for information about the way lists are internally stored.

Reimplemented from bpp::EventDrivenIntSymbolList.

Definition at line 310 of file SequenceWithAnnotation.h.

References bpp::IntSymbolListInterface::setContent().

◆ setContent() [4/5]

template<class T >
virtual void bpp::TemplateCoreSymbolListInterface< T >::setContent ( const std::vector< T > &  list)
pure virtualinherited

Set the whole content of the list.

Parameters
listThe new content of the list.
See also
The list constructor for information about the way lists are internally stored.

Implemented in bpp::AbstractTemplateEventDrivenSymbolList< T >, and bpp::AbstractTemplateSymbolList< T >.

◆ setContent() [5/5]

virtual void bpp::TemplateCoreSymbolListInterface< T >::setContent
inherited

Set the whole content of the list.

Parameters
listThe new content of the list.
See also
The list constructor for information about the way lists are internally stored.

Referenced by bpp::EventDrivenIntSymbolList::EventDrivenIntSymbolList(), bpp::IntSymbolList::IntSymbolList(), operator=(), bpp::Sequence::operator=(), bpp::Sequence::Sequence(), SequenceWithAnnotation(), bpp::Sequence::setContent(), and setContent().

◆ setElement() [1/7]

void bpp::AbstractTemplateSymbolList< int >::setElement ( size_t  pos,
const T &  c 
)
inlineoverrideinherited

Set the element at position 'pos' to character 'c'.

Parameters
posThe position of the character to set.
cThe value of the element.

Definition at line 165 of file SymbolList.h.

◆ setElement() [2/7]

virtual void bpp::AbstractTemplateEventDrivenSymbolList< int >::setElement ( size_t  pos,
const T &  c 
)
inlineoverridevirtualinherited

Set the element at position 'pos' to character 'c'.

Parameters
posThe position of the character to set.
cThe value of the element.

Definition at line 352 of file SymbolList.h.

◆ setElement() [3/7]

void EventDrivenIntSymbolList::setElement ( size_t  pos,
const std::string &  c 
)
overridevirtualinherited

Set the element at position 'pos' to character 'c'.

Parameters
posThe position of the character to set.
cThe value of the element, given as a string.

Reimplemented from bpp::IntSymbolList.

Definition at line 127 of file IntSymbolList.cpp.

References bpp::AbstractTemplateEventDrivenSymbolList< T >::setElement().

◆ setElement() [4/7]

virtual void bpp::IntSymbolListInterface::setElement ( size_t  pos,
const std::string &  c 
)
pure virtualinherited

Set the element at position 'pos' to character 'c'.

Parameters
posThe position of the character to set.
cThe value of the element, given as a string.

Implemented in bpp::EventDrivenIntSymbolList, and bpp::IntSymbolList.

Referenced by bpp::SequenceTools::complement(), bpp::SequenceTools::invert(), bpp::SequenceTools::invertComplement(), and bpp::SequenceTools::replaceStopsWithGaps().

◆ setElement() [5/7]

template<class T >
virtual void bpp::TemplateCoreSymbolListInterface< T >::setElement ( size_t  pos,
const T &  c 
)
pure virtualinherited

Set the element at position 'pos' to character 'c'.

Parameters
posThe position of the character to set.
cThe value of the element.

Implemented in bpp::AbstractTemplateEventDrivenSymbolList< T >, and bpp::AbstractTemplateSymbolList< T >.

◆ setElement() [6/7]

virtual void bpp::TemplateCoreSymbolListInterface< T >::setElement
inherited

Set the element at position 'pos' to character 'c'.

Parameters
posThe position of the character to set.
cThe value of the element.

◆ setElement() [7/7]

void bpp::AbstractTemplateSymbolList< T >::setElement
inlineoverrideinherited

Definition at line 165 of file SymbolList.h.

◆ setName() [1/2]

void bpp::AbstractCoreSequence::setName ( const std::string &  name)
inlineoverridevirtualinherited

Set the name of this sequence.

Parameters
nameThe new name of the sequence.

Implements bpp::CoreSequenceInterface.

Definition at line 172 of file CoreSequence.h.

References bpp::AbstractCoreSequence::name_.

Referenced by bpp::Pasta::nextSequence(), bpp::PhredPoly::nextSequence(), bpp::Fasta::nextSequence(), bpp::PhredPhd::nextSequence(), and operator=().

◆ setName() [2/2]

virtual void bpp::CoreSequenceInterface::setName ( const std::string &  name)
pure virtualinherited

Set the name of this sequence.

Parameters
nameThe new name of the sequence.

Implemented in bpp::AbstractCoreSequence.

◆ setToSizeL()

void SequenceWithAnnotation::setToSizeL ( size_t  newSize)
overridevirtual

Set up the size of a sequence from the left side.

All new characters are filled with gaps. If the specified size is < to the sequence size, the sequence will be truncated.

Parameters
newSizeThe new size of the sequence.

Implements bpp::CoreSequenceInterface.

Definition at line 60 of file SequenceWithAnnotation.cpp.

◆ setToSizeR()

void SequenceWithAnnotation::setToSizeR ( size_t  newSize)
overridevirtual

Set up the size of a sequence from the right side.

All new characters are filled with gaps. If the specified size is < to the sequence size, the sequence will be truncated.

Parameters
newSizeThe new size of the sequence.

Implements bpp::CoreSequenceInterface.

Definition at line 33 of file SequenceWithAnnotation.cpp.

◆ shuffle() [1/2]

void bpp::AbstractTemplateSymbolList< int >::shuffle ( )
inlineoverridevirtualinherited

Randomly shuffle the content of the list, with linear complexity.

Implements bpp::CruxSymbolListInterface.

Definition at line 191 of file SymbolList.h.

◆ shuffle() [2/2]

virtual void bpp::CruxSymbolListInterface::shuffle ( )
pure virtualinherited

Randomly shuffle the content of the list, with linear complexity.

Implemented in bpp::AbstractTemplateSymbolList< T >, bpp::AbstractTemplateSymbolList< int >, and bpp::ProbabilisticSymbolList.

◆ size() [1/2]

virtual size_t bpp::CruxSymbolListInterface::size ( ) const
pure virtualinherited

Get the number of elements in the list.

Returns
The number of sites in the list.

Implemented in bpp::AbstractTemplateSymbolList< T >, bpp::AbstractTemplateSymbolList< int >, and bpp::ProbabilisticSymbolList.

Referenced by bpp::AbstractTemplateSymbolList< T >::AbstractTemplateSymbolList(), bpp::SequenceWithQuality::addElement(), append(), bpp::SequenceTools::areSequencesIdentical(), bpp::SymbolListTools::areSymbolListsIdentical(), bpp::SequenceTools::bowkerTest(), bpp::SymbolListTools::changeGapsToUnknownCharacters(), bpp::SymbolListTools::changeUnresolvedCharactersToGaps(), bpp::SequenceTools::combineSequences(), bpp::SequenceTools::complement(), bpp::SiteContainerTools::computeSimilarity(), bpp::SequenceTools::concatenate(), bpp::SequenceTools::findFirstOf(), bpp::SequenceTools::getCDS(), bpp::GeneticCode::getCodingSequence(), bpp::SymbolListTools::getCounts(), bpp::SymbolListTools::getCountsResolveUnknowns(), bpp::SymbolListTools::getFrequencies(), bpp::SymbolListTools::getGCContent(), bpp::SymbolListTools::getMajorAllele(), bpp::SymbolListTools::getMajorAlleleFrequency(), bpp::SymbolListTools::getMinorAllele(), bpp::SymbolListTools::getMinorAlleleFrequency(), bpp::SequenceTools::getNumberOfCompleteSites(), bpp::SymbolListTools::getNumberOfDistinctCharacters(), bpp::SymbolListTools::getNumberOfDistinctPositions(), bpp::SymbolListTools::getNumberOfPositionsWithoutGap(), bpp::SequenceTools::getNumberOfSites(), bpp::SequenceTools::getNumberOfUnresolvedSites(), bpp::SequenceTools::getPercentIdentity(), bpp::SequenceTools::getPutativeHaplotypes(), bpp::SequenceTools::getSequenceWithCompleteSites(), bpp::SequenceTools::getSequenceWithoutGaps(), bpp::SequenceTools::getSequenceWithoutStops(), bpp::SymbolListTools::hasGap(), bpp::SymbolListTools::hasSingleton(), bpp::SymbolListTools::hasUnknown(), bpp::SymbolListTools::hasUnresolved(), bpp::SymbolListTools::heterozygosity(), bpp::SequenceTools::invert(), bpp::SequenceTools::invertComplement(), bpp::SymbolListTools::isComplete(), bpp::SymbolListTools::isConstant(), bpp::SymbolListTools::isDoubleton(), bpp::SymbolListTools::isGapOnly(), bpp::SymbolListTools::isGapOrUnresolvedOnly(), bpp::SymbolListTools::isParsimonyInformativeSite(), bpp::SymbolListTools::isTriplet(), bpp::SequenceMask::isValidWith(), bpp::SequenceQuality::isValidWith(), bpp::SymbolListTools::jointEntropy(), bpp::SymbolListTools::mutualInformation(), bpp::SymbolListTools::numberOfGaps(), bpp::SymbolListTools::numberOfUnresolved(), bpp::AbstractTemplateSymbolList< T >::operator=(), bpp::SiteInterface::operator==(), bpp::SequenceWithQualityTools::removeGaps(), bpp::SequenceTools::removeGaps(), bpp::SequenceTools::removeStops(), bpp::SequenceTools::replaceStopsWithGaps(), bpp::CodonAlphabet::reverse(), bpp::WordAlphabet::reverse(), bpp::NucleicAcidsReplication::reverse(), bpp::AbstractReverseTransliterator::reverse(), bpp::SequenceTools::RNYslice(), bpp::SequenceWalker::SequenceWalker(), bpp::SequenceTools::subseq(), bpp::SequenceWithQualityTools::subseq(), bpp::SequenceTools::subtractHaplotype(), bpp::NucleicAcidsReplication::translate(), bpp::AbstractTransliterator::translate(), bpp::CodonAlphabet::translate(), bpp::WordAlphabet::translate(), bpp::SymbolListTools::variabilityFactorial(), and bpp::SymbolListTools::variabilityShannon().

◆ size() [2/2]

size_t bpp::AbstractTemplateSymbolList< int >::size ( ) const
inlineoverridevirtualinherited

Get the number of elements in the list.

Returns
The number of sites in the list.

Implements bpp::CruxSymbolListInterface.

Definition at line 124 of file SymbolList.h.

◆ toString() [1/2]

virtual std::string bpp::CruxSymbolListInterface::toString ( ) const
pure virtualinherited

Convert the list as a string.

This method is useful for dumping a list to a file or to the screen for display.

Returns
The whole list as a string.

Implemented in bpp::AbstractTemplateSymbolList< T >, bpp::AbstractTemplateSymbolList< int >, bpp::Sequence, bpp::ProbabilisticSymbolList, bpp::EventDrivenIntSymbolList, and bpp::IntSymbolList.

◆ toString() [2/2]

string EventDrivenIntSymbolList::toString ( ) const
overridevirtualinherited

Convert the list as a string.

This method is useful for dumping a list to a file or to the screen for display.

Returns
The whole list as a string.

Reimplemented from bpp::IntSymbolList.

Definition at line 105 of file IntSymbolList.cpp.

References bpp::StringSequenceTools::decodeSequence().

Member Data Documentation

◆ alphabet_

std::shared_ptr<const Alphabet> bpp::AbstractTemplateSymbolList< int >::alphabet_
privateinherited

The Alphabet attribute must be initialized in constructor and then can never be changed.

To apply another alphabet to a list you'll have to create a new list.

Definition at line 41 of file SymbolList.h.

◆ comments_

◆ content_

std::vector<int > bpp::AbstractTemplateSymbolList< int >::content_
protectedinherited

The list content.

Definition at line 47 of file SymbolList.h.

◆ listeners_

std::vector<std::shared_ptr<CoreSymbolListListener<int > > > bpp::AbstractTemplateEventDrivenSymbolList< int >::listeners_
protectedinherited

Contains the listeners.

Definition at line 218 of file SymbolList.h.

◆ name_

std::string bpp::AbstractCoreSequence::name_
privateinherited

◆ propagateEvents_

bool bpp::AbstractTemplateEventDrivenSymbolList< int >::propagateEvents_
privateinherited

Definition at line 212 of file SymbolList.h.


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