+
+void Utilities::Reverse(string& sequence) {
+ reverse(sequence.begin(), sequence.end());
+}
+
+void Utilities::ReverseComplement(string& sequence) {
+
+ // do complement, in-place
+ size_t seqLength = sequence.length();
+ for ( size_t i = 0; i < seqLength; ++i )
+ sequence.replace(i, 1, 1, REVCOMP_LOOKUP[(int)sequence.at(i) - 65]);
+
+ // reverse it
+ Reverse(sequence);
+}