39 return alignment + (sink & 0xFFFFu);
43 template <
typename vector_type>
49 for (
uint32 i = 0; i < cigar_len; ++i)
51 const uint32 l = cigar[ cigar_len - i - 1u ].m_len;
52 const uint32 op = cigar[ cigar_len - i - 1u ].m_type;
59 template <
typename vector_type>
66 for (
uint32 i = 0; i < cigar_len; ++i)
68 const uint32 l = cigar[ cigar_len - i - 1u ].m_len;
69 const uint32 op = cigar[ cigar_len - i - 1u ].m_type;
70 if (op == type) r += l;
76 template <
typename vector_type>
85 for (
uint32 i = 2; i < mds_len; )
87 const uint8 op = mds[i++];
93 while (i < mds_len && mds[i] ==
MDS_MATCH)
104 const uint8 l = mds[i++];
113 const uint8 l = mds[i++];