1 #ifndef CHIMERASLAYER_H
2 #define CHIMERASLAYER_H
8 * Created by westcott on 9/25/09.
9 * Copyright 2009 Schloss Lab. All rights reserved.
20 //***********************************************************************/
21 //This class was modeled after the chimeraSlayer written by the Broad Institute
22 /***********************************************************************/
25 class ChimeraSlayer : public Chimera {
28 ChimeraSlayer(string, string, bool, string, int, int, int, int, float, int, int, int, int, int, int, int, int, bool);
29 ChimeraSlayer(string, string, bool, string, string, string, int, int, int, int, float, int, int, int, int, int, int, int, int, bool);
33 int getChimeras(Sequence*);
34 Sequence* print(ostream&, ostream&);
35 void printHeader(ostream&);
39 Sequence* print(MPI_File&, MPI_File&);
46 map<int, int> spotMap;
47 Database* databaseRight;
48 Database* databaseLeft;
49 map<string, vector<string> > nameMapRank; //sequence name to rank so you can construct a template of the abundant sequences if the user uses itself as template
51 vector<data_struct> chimeraResults;
52 string chimeraFlags, searchMethod, fastafile, includeAbunds;
53 bool realign, trimChimera;
54 int window, numWanted, kmerSize, match, misMatch, minSim, minCov, minBS, minSNP, parents, iters, increment;
57 void printBlock(data_struct, string, ostream&);
58 string getBlock(data_struct, string);
59 int readNameFile(string);
60 vector<Sequence*> getTemplate(Sequence*);
64 /************************************************************************/