adding a new dedicated scoring scheme for enabling hamming distance, which is agnostic to the alphabet type,
switching to use this hamming scoring scheme in the edit scheme alignment configuration and test for it during the alignment configuration.
Due to these changes, users can select the Myers' bitparallel edit distance alignment computation independent of their alphabet types and thus are not forced to work with the nucelotide scoring scheme anymore, which did not allow to customize the alphabet type.
Since the bitparallel edit distance algorithm doesn't even read the values from the given scoring schemes, it makes only sense to enable it without specifying a dedicate scoring scheme anyway.
However, due to the existing configuration modes, too much API breakage would have been introduced if wanted to solve this by moving the bitparallel edit distance computation into its own configuration element.
With this solution the user won't see any difference to the old version, when sticking to the tuorials where we explicitly teach to use the dedicated align_cfg::edit_scheme shortcut.
This PR fixes #3253 by:
Due to these changes, users can select the Myers' bitparallel edit distance alignment computation independent of their alphabet types and thus are not forced to work with the nucelotide scoring scheme anymore, which did not allow to customize the alphabet type. Since the bitparallel edit distance algorithm doesn't even read the values from the given scoring schemes, it makes only sense to enable it without specifying a dedicate scoring scheme anyway. However, due to the existing configuration modes, too much API breakage would have been introduced if wanted to solve this by moving the bitparallel edit distance computation into its own configuration element.
With this solution the user won't see any difference to the old version, when sticking to the tuorials where we explicitly teach to use the dedicated
align_cfg::edit_scheme
shortcut.