[cartwheel-svn] Revision 103 [All]

Commit messages for Cartwheel. cartwheel-svn at lists.idyll.org
Thu Jan 4 13:15:28 PST 2007


Revision: 103
Author:   diane
Date:     Thu, 04 Jan 2007 13:15:28 -0800

Log message:
Mussa's sequence class needs to be immutable, which required that
I change paircomp:_preprocess and paircomp:_reverse_complement to
not update in place. 

By losing the ability to force thing to uppercase, I needed to change
the MATCH macro to be case insensitive. Thankfully I found a trick
that should execute in a single instruction. char &= 0xDF will
force an ASCII letter to uppercase.

I also changed the C macro to a C++ inline function for a bit
of improved type checking and legibility. The lookup into the sequence
array also only happens once.

If my sequence class was mutable I could've gotten the _reverse_complement
to a single pass by more careful use of std::transform, but I needed
a scratch place to hold the transformation, so I needed two passes.


Changed paths:
M    branches/diane/paircomp/bin/find_patch.cc
M    branches/diane/paircomp/lib/algorithms.cc
M    branches/diane/paircomp/lib/algorithms.hh




More information about the cartwheel-svn mailing list