1 #ifndef KMERALIGN_N 2 #define KMERALIGN_N 3 4 /* 5 * kmeralign.h 6 * 7 * 8 * Created by Pat Schloss on 4/6/14. 9 * Copyright 2014 Patrick D. Schloss. All rights reserved. 10 * 11 * This class is an Alignment child class that implements a kmer-based pairwise alignment algorithm 12 * for making contigs of reads without insertions 13 * 14 * 15 */ 16 17 #include "alignment.hpp" 18 #include "kmer.hpp" 19 20 # define PHREDMAX 46 21 # define PHREDCLAMP(x) ((x) > PHREDMAX ? PHREDMAX : ((x) < 0 ? 0 : (x))) 22 23 24 /**************************************************************************************************/ 25 26 class KmerAlign : public Alignment { 27 28 public: 29 KmerAlign(int); 30 ~KmerAlign(); 31 void align(string, string, bool createBaseMap=false); 32 33 private: 34 int kmerSize; 35 int maxKmer; 36 Kmer kmerLibrary; 37 double calcProb(string A, string B, int overlap); 38 }; 39 40 /**************************************************************************************************/ 41 42 #endif 43