vg
tools for working with variation graphs
Public Member Functions | Private Member Functions | Private Attributes | Friends | List of all members
vg::BandedGlobalAligner< IntType >::BAMatrix Class Reference

#include <banded_global_aligner.hpp>

Public Member Functions

 BAMatrix (Alignment &alignment, handle_t node, int64_t top_diag, int64_t bottom_diag, const vector< BAMatrix * > &seeds, int64_t cumulative_seq_len)
 
 ~BAMatrix ()
 
void fill_matrix (const HandleGraph &graph, int8_t *score_mat, int8_t *nt_table, int8_t gap_open, int8_t gap_extend, bool qual_adjusted, IntType min_inf)
 Use DP to fill the band with alignment scores. More...
 
void init_traceback_indexes (const HandleGraph &graph, int64_t &i, int64_t &j)
 
void traceback (const HandleGraph &graph, BABuilder &builder, AltTracebackStack &traceback_stack, int64_t &i, int64_t &j, matrix_t &mat, bool &in_lead_gap, const int8_t *score_mat, const int8_t *nt_table, const int8_t gap_open, const int8_t gap_extend, const bool qual_adjusted, IntType const min_inf)
 
void traceback_over_edge (const HandleGraph &graph, BABuilder &builder, AltTracebackStack &traceback_stack, int64_t &i, int64_t &j, matrix_t &mat, bool &in_lead_gap, int64_t &node_id, const int8_t *score_mat, const int8_t *nt_table, const int8_t gap_open, const int8_t gap_extend, const bool qual_adjusted, IntType const min_inf)
 
void print_full_matrices (const HandleGraph &graph)
 Debugging function. More...
 
void print_rectangularized_bands (const HandleGraph &graph)
 Debugging function. More...
 

Private Member Functions

void print_matrix (const HandleGraph &graph, matrix_t which_mat)
 Debugging function. More...
 
void print_band (const HandleGraph &graph, matrix_t which_mat)
 Debugging function. More...
 

Private Attributes

int64_t top_diag
 The diagonals in the DP matrix that the band passes through with the bottom index inclusive. More...
 
int64_t bottom_diag
 
handle_t node
 
Alignmentalignment
 
int64_t cumulative_seq_len
 Length of shortest sequence leading to matrix from a source node. More...
 
vector< BAMatrix * > seeds
 Matrices for nodes with edges into this node. More...
 
IntType * match
 DP matrix. More...
 
IntType * insert_col
 DP matrix. More...
 
IntType * insert_row
 DP matrix. More...
 

Friends

class BABuilder
 
class AltTracebackStack
 
class BandedGlobalAligner
 

Detailed Description

template<class IntType>
class vg::BandedGlobalAligner< IntType >::BAMatrix

Represents the band from the DP matrix for one node in the graph

Constructor & Destructor Documentation

◆ BAMatrix()

template<class IntType >
vg::BandedGlobalAligner< IntType >::BAMatrix::BAMatrix ( Alignment alignment,
handle_t  node,
int64_t  top_diag,
int64_t  bottom_diag,
const vector< BAMatrix * > &  seeds,
int64_t  cumulative_seq_len 
)

◆ ~BAMatrix()

template<class IntType >
vg::BandedGlobalAligner< IntType >::BAMatrix::~BAMatrix

Member Function Documentation

◆ fill_matrix()

template<class IntType >
void vg::BandedGlobalAligner< IntType >::BAMatrix::fill_matrix ( const HandleGraph graph,
int8_t *  score_mat,
int8_t *  nt_table,
int8_t  gap_open,
int8_t  gap_extend,
bool  qual_adjusted,
IntType  min_inf 
)

Use DP to fill the band with alignment scores.

◆ init_traceback_indexes()

template<class IntType >
void vg::BandedGlobalAligner< IntType >::BAMatrix::init_traceback_indexes ( const HandleGraph graph,
int64_t &  i,
int64_t &  j 
)

◆ print_band()

template<class IntType >
void vg::BandedGlobalAligner< IntType >::BAMatrix::print_band ( const HandleGraph graph,
matrix_t  which_mat 
)
private

Debugging function.

◆ print_full_matrices()

template<class IntType >
void vg::BandedGlobalAligner< IntType >::BAMatrix::print_full_matrices ( const HandleGraph graph)

Debugging function.

◆ print_matrix()

template<class IntType >
void vg::BandedGlobalAligner< IntType >::BAMatrix::print_matrix ( const HandleGraph graph,
matrix_t  which_mat 
)
private

Debugging function.

◆ print_rectangularized_bands()

template<class IntType >
void vg::BandedGlobalAligner< IntType >::BAMatrix::print_rectangularized_bands ( const HandleGraph graph)

Debugging function.

◆ traceback()

template<class IntType >
void vg::BandedGlobalAligner< IntType >::BAMatrix::traceback ( const HandleGraph graph,
BABuilder builder,
AltTracebackStack traceback_stack,
int64_t &  i,
int64_t &  j,
matrix_t mat,
bool &  in_lead_gap,
const int8_t *  score_mat,
const int8_t *  nt_table,
const int8_t  gap_open,
const int8_t  gap_extend,
const bool  qual_adjusted,
IntType const  min_inf 
)

◆ traceback_over_edge()

template<class IntType >
void vg::BandedGlobalAligner< IntType >::BAMatrix::traceback_over_edge ( const HandleGraph graph,
BABuilder builder,
AltTracebackStack traceback_stack,
int64_t &  i,
int64_t &  j,
matrix_t mat,
bool &  in_lead_gap,
int64_t &  node_id,
const int8_t *  score_mat,
const int8_t *  nt_table,
const int8_t  gap_open,
const int8_t  gap_extend,
const bool  qual_adjusted,
IntType const  min_inf 
)

Friends And Related Function Documentation

◆ AltTracebackStack

template<class IntType >
friend class AltTracebackStack
friend

◆ BABuilder

template<class IntType >
friend class BABuilder
friend

◆ BandedGlobalAligner

template<class IntType >
friend class BandedGlobalAligner
friend

Member Data Documentation

◆ alignment

template<class IntType >
Alignment& vg::BandedGlobalAligner< IntType >::BAMatrix::alignment
private

◆ bottom_diag

template<class IntType >
int64_t vg::BandedGlobalAligner< IntType >::BAMatrix::bottom_diag
private

◆ cumulative_seq_len

template<class IntType >
int64_t vg::BandedGlobalAligner< IntType >::BAMatrix::cumulative_seq_len
private

Length of shortest sequence leading to matrix from a source node.

◆ insert_col

template<class IntType >
IntType* vg::BandedGlobalAligner< IntType >::BAMatrix::insert_col
private

DP matrix.

◆ insert_row

template<class IntType >
IntType* vg::BandedGlobalAligner< IntType >::BAMatrix::insert_row
private

DP matrix.

◆ match

template<class IntType >
IntType* vg::BandedGlobalAligner< IntType >::BAMatrix::match
private

DP matrix.

◆ node

template<class IntType >
handle_t vg::BandedGlobalAligner< IntType >::BAMatrix::node
private

◆ seeds

template<class IntType >
vector<BAMatrix*> vg::BandedGlobalAligner< IntType >::BAMatrix::seeds
private

Matrices for nodes with edges into this node.

◆ top_diag

template<class IntType >
int64_t vg::BandedGlobalAligner< IntType >::BAMatrix::top_diag
private

The diagonals in the DP matrix that the band passes through with the bottom index inclusive.


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