implement alphabet for sequence
authorDiane Trout <diane@caltech.edu>
Tue, 10 Oct 2006 22:27:54 +0000 (22:27 +0000)
committerDiane Trout <diane@caltech.edu>
Tue, 10 Oct 2006 22:27:54 +0000 (22:27 +0000)
commit3f3aba42bdea1eaa21c4345732320b9cf3473da2
treec1cd9f4d690828fee3cc48edd1ff5082c07102c3
parent17b3ec9aa2816c0f4d515f933cbd7dc9f0939ebd
implement alphabet for sequence
in order to fix ticket:144 when motifs were changed to be
sequences I needed someway of specifying what alphabet a particular
sequence is using.

This patch changes things so a sequences default sequence alphabet
is a "AGCTUN" AKA reduced nucleic alphabet.

Motifs however use the full IUPAC nucleic alphabet.

(Or at least I hope they do I tested the sequence class, but GUI
testing is harder).

Another change is that instead of building a fixed reverse complement
table, there's a function which creates the table and understands
that at least for reduced_rna_alphabet (currently the only specifically RNA
alphabet) the reverse of A should be a.

Sequence is no longer case sensitive, all of the comparisons
are now done in an insensitive manner.

Finally I found a bug in the motif scanning code that was due to a typo
from long before I inherited the code. Aparently that code branch in
motif_scan had never been executed before.
12 files changed:
alg/CMakeLists.txt
alg/alphabet.cpp [new file with mode: 0644]
alg/alphabet.hpp [new file with mode: 0644]
alg/mussa.cpp
alg/sequence.cpp
alg/sequence.hpp
alg/test/CMakeLists.txt
alg/test/test_alphabet.cpp [new file with mode: 0644]
alg/test/test_sequence.cpp
mussa_exceptions.hpp
qui/motif_editor/MotifElement.cpp
qui/mussa_setup_dialog/MussaSetupWidget.cpp