Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Alignment Config] Change align_cfg::gap to align_cfg::gap_cost_affine #176

Open
7 of 15 tasks
rrahn opened this issue Aug 7, 2020 · 0 comments
Open
7 of 15 tasks
Assignees

Comments

@rrahn
Copy link
Contributor

rrahn commented Aug 7, 2020

Description

We remove the gap cost scheme and implement a direct high-level configuration element for the affine gap scheme.

Here is the proposed change of the interface:

seqan3::align_cfg::gap_cost_affine    [optional]

construction

seqan3::align_cfg::gap_cost_affine affine{seqan3::align_cfg::open_score{-10}, seqan3::align_cfg::extension_score{-1}};

later access and set

affine.open_score = seqan3::align_cfg::open_score{-10};
affine.extension_score = seqan3::align_cfg::extension_score{-1};

or by seqan::get

auto && affine = seqan3::get<seqan3::align_cfg::gap_cost_affine>(config);
affine.open_score = seqan3::align_cfg::open_score{-10};
affine.extension_score = seqan3::align_cfg::extension_score{-1};

query if configuration was piped

config_t::template exists<seqan3::align_cfg::gap_cost_affine>()

Acceptance Criteria

  • All of the alignment works with the changed align_cfg::gap_cost_affine

Tasks

  • Add an implementation for the align_cfg::gap_cost_affine
  • Make the basic tests for the new configuration element
  • Replace any occurrence of align_cfg::gap with the new config
  • Remove old align_cfg::gap configuration
  • Update the documentation and snippets accordingly
  • Deprecate gap_scheme

Definition of Done

  • Implementation and design approved
  • Unit tests pass
  • Test coverage = 100%
  • Microbenchmarks added and/or affected microbenchmarks < 5% performance drop
  • API documentation added
  • Tutorial/teaching material added
  • Test suite compiles in less than 30 seconds (on travis)
  • Changelog entry added
@rrahn rrahn added the ready to tackle This story was discussed and can be immidietly tackled label Aug 7, 2020
@wvdtoorn wvdtoorn self-assigned this Aug 12, 2020
@smehringer smehringer removed the ready to tackle This story was discussed and can be immidietly tackled label Nov 15, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants