template<
uint32 CHECKPOINTS,
AlignmentType TYPE,
typename scoring_type,
typename pattern_string,
typename qual_string,
typename text_string,
typename column_type>
struct nvbio::aln::priv::alignment_checkpointed_dispatch< CHECKPOINTS, HammingDistanceAligner< TYPE, scoring_type >, pattern_string, qual_string, text_string, column_type >
Calculate the alignment score between a pattern and a text, using the HammingDistance algorithm.
- Template Parameters
-
CHECKPOINTS | number of columns between each checkpoint |
TYPE | the alignment type |
pattern_string | pattern string |
quals_string | pattern qualities |
text_string | text string |
column_type | temporary column storage |
Definition at line 1450 of file hamming_inl.h.
|
template<typename sink_type , typename checkpoint_type > |
NVBIO_FORCEINLINE static
NVBIO_HOST_DEVICE void | dispatch_checkpoints (const aligner_type aligner, const pattern_string pattern, const qual_string quals, const text_string text, const int32 min_score, sink_type &sink, checkpoint_type checkpoints, column_type column) |
|
template<typename checkpoint_type , typename submatrix_type > |
NVBIO_FORCEINLINE static
NVBIO_HOST_DEVICE uint32 | dispatch_submatrix (const aligner_type aligner, const pattern_string pattern, const qual_string quals, const text_string text, const int32 min_score, checkpoint_type checkpoints, const uint32 checkpoint_id, submatrix_type submatrix, column_type column) |
|
template<uint32 CHECKPOINTS, AlignmentType TYPE, typename scoring_type , typename pattern_string , typename qual_string , typename text_string , typename column_type >
template<typename sink_type , typename checkpoint_type >
NVBIO_FORCEINLINE static NVBIO_HOST_DEVICE void nvbio::aln::priv::alignment_checkpointed_dispatch< CHECKPOINTS, HammingDistanceAligner< TYPE, scoring_type >, pattern_string, qual_string, text_string, column_type >::dispatch_checkpoints |
( |
const aligner_type |
aligner, |
|
|
const pattern_string |
pattern, |
|
|
const qual_string |
quals, |
|
|
const text_string |
text, |
|
|
const int32 |
min_score, |
|
|
sink_type & |
sink, |
|
|
checkpoint_type |
checkpoints, |
|
|
column_type |
column |
|
) |
| |
|
inlinestatic |
Calculate a set of checkpoints of the DP matrix for the alignment between a pattern and a text, using the Smith-Waterman algorithm.
- Template Parameters
-
checkpoint_type | a class to represent the collection of checkpoints, represented as a linear array storing each checkpointed band contiguously. The class has to provide the const indexing operator[]. |
- Parameters
-
aligner | scoring scheme |
pattern | pattern string (horizontal |
quals | pattern qualities |
text | text string (vertical) |
min_score | minimum score |
sink | output alignment sink |
checkpoints | output checkpoints |
- Returns
- true iff the minimum score was reached
Definition at line 1484 of file hamming_inl.h.
template<uint32 CHECKPOINTS, AlignmentType TYPE, typename scoring_type , typename pattern_string , typename qual_string , typename text_string , typename column_type >
template<typename checkpoint_type , typename submatrix_type >
NVBIO_FORCEINLINE static NVBIO_HOST_DEVICE uint32 nvbio::aln::priv::alignment_checkpointed_dispatch< CHECKPOINTS, HammingDistanceAligner< TYPE, scoring_type >, pattern_string, qual_string, text_string, column_type >::dispatch_submatrix |
( |
const aligner_type |
aligner, |
|
|
const pattern_string |
pattern, |
|
|
const qual_string |
quals, |
|
|
const text_string |
text, |
|
|
const int32 |
min_score, |
|
|
checkpoint_type |
checkpoints, |
|
|
const uint32 |
checkpoint_id, |
|
|
submatrix_type |
submatrix, |
|
|
column_type |
column |
|
) |
| |
|
inlinestatic |
Compute the banded Dynamic Programming submatrix between two given checkpoints, storing its flow at each cell. The function returns the submatrix width.
- Template Parameters
-
BAND_LEN | size of the DP band |
checkpoint_type | a class to represent the collection of checkpoints, represented as a linear array storing each checkpointed band contiguously. The class has to provide the const indexing operator[]. |
submatrix_type | a class to store the flow submatrix, represented as a linear array of size (BAND_LEN*CHECKPOINTS). The class has to provide the non-const indexing operator[]. Note that the submatrix entries can assume only 3 values, and could hence be packed in 2 bits. |
- Parameters
-
checkpoints | the set of checkpointed rows |
checkpoint_id | the starting checkpoint used as the beginning of the submatrix |
submatrix | the output submatrix |
- Returns
- the submatrix width
Definition at line 1532 of file hamming_inl.h.