Hi Brett,
So typename Row<Align<DnaString, TGapsSpec> >::Type == Gaps<DnaString, TGapsSpec>.
Apparently there is no Metafunction to receive the Spec type of the Gaps nor the Align structure.
Remove the one line above. This one would be correct. Value of TGaps would give you the Value of the Source of Gaps which is the alphabet type used for the source.
From the code above I don’t see, why exactly you need the Gaps type.
Wouldn’t this here be sufficient?
BTW it should read Align<TSource, TGapsSpec>. The first template argument of Align is the type of the source.
```
template <typename TSource, typename TGapsSpec>
String<char> alignmentIdentityString(Align<TSource, TGapsSpec>
const & align,
char const matchChar,
char const mismatchChar,
char const gapChar)
{
// Check that the supplied alignment is pairwise
SEQAN_ASSERT_EQ_MSG(length(rows(align)), 2u, "Only works with pairwise alignments.”);
return alignmentSimilarityString(row(align,0), row(align,1), scoringScheme,
matchChar, mismatchChar, gapChar);
```
cheers,
René
---
René Rahn
Ph.D. Student
--------------------------------
Institute of Computer Science
Algorithmic Bioinformatics (ABI)
--------------------------------
Freie Universität Berlin
Takustraße 9
14195 Berlin
--------------------------------
|