move strand into seqspan
authorDiane Trout <diane@caltech.edu>
Sat, 24 Mar 2007 01:00:49 +0000 (01:00 +0000)
committerDiane Trout <diane@caltech.edu>
Sat, 24 Mar 2007 01:00:49 +0000 (01:00 +0000)
commit75496e2c562d728af983c347527270eba360c6ee
treefe1c5ca83e4a26ad73bababe32c7967aed6131b9
parentb9755e1974201ff513c66b0fd684bde330c6fff6
move strand into seqspan
this patch moves strand storage from Sequence into SeqSpan,
also when accessing sequence data from a SeqSpan that is currently
on the minus side it correctly returns reverse complemented data.

Unfortunately getting iterators that point to data thats a
transformation of currently existing data is a giant pain and
was making SeqSpan way to complicated.

So I took the easy way out. SeqSpan will now cache a reverse complement
of the region its pointing to and return iterators based on that.

Also Alphabet can reverse complement a string,

Drat, just realized that if one changes the region of SeqSpan,
the rc_seq will need to be invalidated.
15 files changed:
alg/alphabet.cpp
alg/alphabet.hpp
alg/flp_seqcomp.cpp
alg/motif_parser.cpp
alg/mussa.cpp
alg/seq.hpp
alg/seq_span.cpp
alg/seq_span.hpp
alg/sequence.cpp
alg/sequence.hpp
alg/test/test_alphabet.cpp
alg/test/test_seq.cpp
alg/test/test_seq_span.cpp
alg/test/test_sequence.cpp
mussa_exceptions.hpp