Structural Bioinformatics Library
Template C++ / Python API for developping structural bioinformatics applications.
T_Aligner_sequence_seqan_wrapper< SeqanSequenceConverter, FreeEndsAlignment, ScoreType, SeqanUnitType, SeqanCustomMatrix, SeqanAlgorithm > Class Template Reference

Wrapper of the Seqan algorithm for aligning pairwise sequences. More...

#include <Alignment_engine_sequences_seqan.hpp>

Public Types

typedef T_Aligner_sequence_seqan_wrapper< SeqanSequenceConverter, FreeEndsAlignment, ScoreType, SeqanUnitType, SeqanCustomMatrix, SeqanAlgorithm > Self
 
typedef seqan::Score< ScoreType, seqan::ScoreMatrix< SeqanUnitType, SeqanCustomMatrix > > Scoring_matrix
 Scoring matrix in Seqan. More...
 
typedef seqan::Value< Scoring_matrix >::Type Score_type
 
typedef seqan::String< char > TSequence
 Sequence type. More...
 
typedef seqan::StringSet< TSequenceTStringSet
 Container for strings. More...
 
typedef seqan::StringSet< TSequence, seqan::Dependent<> > TDepStringSet
 Dependent string set. More...
 
typedef seqan::Graph< seqan::Alignment< TDepStringSet > > TAlignGraph
 Alignment graph. More...
 
typedef std::pair< std::string, std::string > AlignedSequences
 Return type independent of seqan's objects. More...
 

Constructors

 T_Aligner_sequence_seqan_wrapper (Score_type gap_open_score=-10, Score_type gap_extend_score=-1)
 

Accessors / Modifiers

char get_gap_symbol (void) const
 
void set_gap_symbol (char gap_symbol)
 
const Score_typeget_gap_open_score (void) const
 
void set_gap_open_score (const Score_type &gap_open_score)
 
const Score_typeget_gap_extend_score (void) const
 
void set_gap_extend_score (const Score_type &gap_extend_score)
 
void set_substitution_score (char x, char y, const Score_type &score)
 

Functor

template<class SequenceType , class OutputIterator >
Score_type operator() (const SequenceType &seq_1, const SequenceType &seq_2, OutputIterator out)
 

Detailed Description

template<class SeqanSequenceConverter = T_Default_amino_acid_seqan_sequence_converter<>, bool FreeEndsAlignment = true, class ScoreType = int, class SeqanUnitType = seqan::AminoAcid, class SeqanCustomMatrix = seqan::CustomAminoAcidMatrix, class SeqanAlgorithm = seqan::Gotoh>
class SBL::CSB::T_Aligner_sequence_seqan_wrapper< SeqanSequenceConverter, FreeEndsAlignment, ScoreType, SeqanUnitType, SeqanCustomMatrix, SeqanAlgorithm >

Wrapper of the Seqan algorithm for aligning pairwise sequences.

It is specialized by default for amino acids with a custom score matrix filled with integers.

Template Parameters
SeqanSequenceConverterConverter between unit names in a sequence defined in the SBL and a unit of a Seqan sequence. It defines the two methods to_seqan_sequence and to_unit_name.
FreeEndsAlignmentSeqan parameter (true by default) (see Simon)
ScoreTypeReturned score type (int by default)
SeqanUnitTypeUnit type in Seqan, that could be amino acid or nucleotid (AminoAcid by default)
SeqanCustomMatrixSeqan matrix defined in this header file for adapting the seqan matrix notation to this engine matrix notation (default is custom for amino acids)
SeqanAlgorithmSeqan algorithm used to solve the alignments (default is Gotoh)

Member Typedef Documentation

◆ AlignedSequences

typedef std::pair<std::string, std::string> AlignedSequences

Return type independent of seqan's objects.

◆ Score_type

typedef seqan::Value<Scoring_matrix>::Type Score_type

◆ Scoring_matrix

typedef seqan::Score<ScoreType, seqan::ScoreMatrix<SeqanUnitType, SeqanCustomMatrix> > Scoring_matrix

Scoring matrix in Seqan.

◆ Self

typedef T_Aligner_sequence_seqan_wrapper<SeqanSequenceConverter, FreeEndsAlignment, ScoreType, SeqanUnitType, SeqanCustomMatrix, SeqanAlgorithm> Self

◆ TAlignGraph

typedef seqan::Graph<seqan::Alignment<TDepStringSet> > TAlignGraph

Alignment graph.

◆ TDepStringSet

typedef seqan::StringSet<TSequence, seqan::Dependent<> > TDepStringSet

Dependent string set.

◆ TSequence

typedef seqan::String<char> TSequence

Sequence type.

◆ TStringSet

typedef seqan::StringSet<TSequence> TStringSet

Container for strings.

Constructor & Destructor Documentation

◆ T_Aligner_sequence_seqan_wrapper()

T_Aligner_sequence_seqan_wrapper ( Score_type  gap_open_score = -10,
Score_type  gap_extend_score = -1 
)
inline

Member Function Documentation

◆ get_gap_extend_score()

const T_Aligner_sequence_seqan_wrapper< SeqanSequenceConverter, FreeEndsAlignment, ScoreType, SeqanUnitType, SeqanCustomMatrix, SeqanAlgorithm >::Score_type & get_gap_extend_score ( void  ) const
inline

◆ get_gap_open_score()

const T_Aligner_sequence_seqan_wrapper< SeqanSequenceConverter, FreeEndsAlignment, ScoreType, SeqanUnitType, SeqanCustomMatrix, SeqanAlgorithm >::Score_type & get_gap_open_score ( void  ) const
inline

◆ get_gap_symbol()

char get_gap_symbol ( void  ) const
inline

◆ operator()()

T_Aligner_sequence_seqan_wrapper< SeqanSequenceConverter, FreeEndsAlignment, ScoreType, SeqanUnitType, SeqanCustomMatrix, SeqanAlgorithm >::Score_type operator() ( const SequenceType &  seq_1,
const SequenceType &  seq_2,
OutputIterator  out 
)
inline

◆ set_gap_extend_score()

void set_gap_extend_score ( const Score_type gap_extend_score)
inline

◆ set_gap_open_score()

void set_gap_open_score ( const Score_type gap_open_score)
inline

◆ set_gap_symbol()

void set_gap_symbol ( char  gap_symbol)
inline

◆ set_substitution_score()

void set_substitution_score ( char  x,
char  y,
const Score_type score 
)
inline