NVBIO
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Types | Public Methods | Public Members | Static Public Members | List of all members
nvbio::aln::GotohAligner< T_TYPE, scoring_scheme_type, AlgorithmType > Struct Template Reference

Detailed description

template< AlignmentType T_TYPE, typename scoring_scheme_type, typename AlgorithmType = PatternBlockingTag>
struct nvbio::aln::GotohAligner< T_TYPE, scoring_scheme_type, AlgorithmType >

A Gotoh alignment algorithm, see Aligners

Template Parameters
T_TYPEspecifies whether the alignment is LOCAL/SEMI_GLOBAL/GLOBAL
scoring_scheme_typespecifies the scoring scheme, a model of Gotoh Scoring Scheme
AlgorithmTypespecifies the Algorithm Tag

Gotoh Scoring Scheme

A Gotoh scoring scheme is a class exposing the following interface:

struct GotohScoringScheme
{
// the maximum match bonus at a given quality q
int32 match(const uint8 q = 0) const;
// the substitution score of text and pattern bases (t,p),
// at positions (t_i,p_j), with a given pattern quality q
int32 substitution(
const uint32 t_i, const uint32 p_j,
const uint8 t, const uint8 p, const uint8 q = 0) const;
// the pattern gap open cost
int32 pattern_gap_open() const;
// the pattern gap extension cost
int32 pattern_gap_extension() const;
// the text gap open cost
int32 text_gap_open() const;
// the text gap extension cost
int32 text_gap_extension() const;
};

Definition at line 256 of file alignment_base.h.

#include <alignment_base.h>

Public Types

typedef GotohTag aligner_tag
 the Aligner Tag More...
 
typedef AlgorithmType algorithm_tag
 the Algorithm Tag More...
 

Public Methods

NVBIO_FORCEINLINE NVBIO_HOST_DEVICE GotohAligner (const scoring_scheme_type _scheme)
 

Public Members

scoring_scheme_type scheme
 

Static Public Members

static const AlignmentType TYPE = T_TYPE
 the AlignmentType More...
 

Member Typedef Documentation

template<AlignmentType T_TYPE, typename scoring_scheme_type, typename AlgorithmType = PatternBlockingTag>
typedef AlgorithmType nvbio::aln::GotohAligner< T_TYPE, scoring_scheme_type, AlgorithmType >::algorithm_tag

the Algorithm Tag

Definition at line 261 of file alignment_base.h.

template<AlignmentType T_TYPE, typename scoring_scheme_type, typename AlgorithmType = PatternBlockingTag>
typedef GotohTag nvbio::aln::GotohAligner< T_TYPE, scoring_scheme_type, AlgorithmType >::aligner_tag

the Aligner Tag

Definition at line 260 of file alignment_base.h.

Constructor & Destructor Documentation

template<AlignmentType T_TYPE, typename scoring_scheme_type, typename AlgorithmType = PatternBlockingTag>
NVBIO_FORCEINLINE NVBIO_HOST_DEVICE nvbio::aln::GotohAligner< T_TYPE, scoring_scheme_type, AlgorithmType >::GotohAligner ( const scoring_scheme_type  _scheme)
inline

Definition at line 264 of file alignment_base.h.

Member Data Documentation

template<AlignmentType T_TYPE, typename scoring_scheme_type, typename AlgorithmType = PatternBlockingTag>
scoring_scheme_type nvbio::aln::GotohAligner< T_TYPE, scoring_scheme_type, AlgorithmType >::scheme

Definition at line 266 of file alignment_base.h.

template<AlignmentType T_TYPE, typename scoring_scheme_type, typename AlgorithmType = PatternBlockingTag>
const AlignmentType nvbio::aln::GotohAligner< T_TYPE, scoring_scheme_type, AlgorithmType >::TYPE = T_TYPE
static

the AlignmentType

Definition at line 258 of file alignment_base.h.


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