BioInt  1.02.00
BioInt: An integrative biological object-oriented application framework and interpreter
BioDnaMultiPatternAlignment.h
Go to the documentation of this file.
00001 #ifndef BIODNAMULTIPATTERNALIGNMENT_H
00002 #define BIODNAMULTIPATTERNALIGNMENT_H
00003 
00004 #include <iostream>
00005 #include <fstream>
00006 #include <string>
00007 #include <sstream>
00008 #include <vector>
00009 
00010 #include "BioUtilities.h"
00011 #include "BioDnaSequence.h"
00012 #include "BioGenBank.h"
00013 #include "BioFasta.h"
00014 #include "BioEmbl.h"
00015 #include "BioDnaSequenceRepeatAlignment.h"
00016 #include "BioPostScript.h"
00017 
00018 using namespace std;
00019 
00020 class BioDnaMultiPatternAlignment
00021 {
00022         friend bool operator >(const BioDnaMultiPatternAlignment& , const BioDnaMultiPatternAlignment&);
00023        friend bool operator <(const BioDnaMultiPatternAlignment& , const BioDnaMultiPatternAlignment&);
00024        friend bool operator ==(const BioDnaMultiPatternAlignment& , const BioDnaMultiPatternAlignment&);
00025     
00026     vector <BioDnaSequenceRepeatAlignment> reapAligns;
00027     
00028     string fileName,substitutionMatrix;
00029 
00030     int match,misMatch;
00031     
00032     string querySequence;
00033 
00034     string outSeq1_,outSeq2_;
00035 
00036     vector <int> offsetStart;
00037     vector <int> offsetEnd;
00038 
00039     vector < vector <int> > finalstposs;
00040     vector < vector <int> > finaledposs;
00041     
00042     BioMatrix tMatrix;
00043 
00044     vector <int> scores;
00045 
00046     int status;
00047 
00048     void tempMatrix(string,string);
00049     
00050     vector<string> processInputPattern(string);
00051 
00052     vector<int> processStringForPatterns(string );
00053 
00054     bool checkInt(string);
00055 
00056     void showAlign(ostream & = cout);
00057 
00058     void makeAlign();
00059     
00060     void init();
00061     
00062 public: 
00063         ~BioDnaMultiPatternAlignment();
00064         BioDnaMultiPatternAlignment();
00065         BioDnaMultiPatternAlignment(BioDnaSequence,string,string,string MatName,int ReapIden=100,int GP=-50,int extn=-9999,int TH=10);
00066         BioDnaMultiPatternAlignment(BioDnaSequence,string,string MatName="IDENTITY",int ReapIden=100,int GP=-50,int extn=-9999,int TH=10);
00067                 
00068         BioDnaMultiPatternAlignment(BioDnaSequence,string,int ReapIden,int MS,int MMS,int GP=-50,int extn=-9999,int TH=10);
00069         BioDnaMultiPatternAlignment(BioFasta,string,string,string MatName,int ReapIden=100,int GP=-50,int extn=-9999,int TH=10);
00070         BioDnaMultiPatternAlignment(BioFasta,string,string MatName="IDENTITY",int ReapIden=100,int GP=-50,int extn=-9999,int TH=10);
00071         BioDnaMultiPatternAlignment(BioFasta,string,int ReapIden,int MS,int MMS,int GP=-50,int extn=-9999,int TH=10);
00072 
00073         BioDnaMultiPatternAlignment(string,string,string,string,int ReapIden=100,int GP=-50,int extn=-9999,int TH=10);
00074         BioDnaMultiPatternAlignment(string,string,string matName="IDENTITY",int ReapIden=100,int GP=-50,int extn=-9999,int TH=10);
00075         BioDnaMultiPatternAlignment(string,string,int ReapIden,int MS,int MMS,int GP=-50,int extn=-9999,int TH=10);
00076 
00077       void setSequence(BioDnaSequence);
00078       void setSequence(BioFasta);
00079       void setSequence(string);
00080           
00081       void addPattern(string,int ReapIden=100,int GP=-50,int extn=-9999,int TH=10);
00082 
00083       void setSubstitutionMatrix(string);
00084       void setSubstitutionMatrix(string,string);
00085       void setMatchMisMatchScore(int MS=1,int MMS=0);
00086           
00087       void setGapPenalty(int GP=-11,int extn=-9999, int index = -1);
00088       void setRepeatIdentity(int identity,int index=-1);
00089       void setThreshold(int,int index = -1);
00090       void setOffsetRange(int st, int ed,int index=-1);
00091       void setOrder(string);
00092       void setGaps(int cou,int index=-1);
00093 
00094       void showAlignment(ostream & = cout);
00095       void showAlignment(BioPostScript& ps,float=100,float=650,float=450);
00096       
00097       int getRepeatStartingPosition(int);
00098 
00099       int getRepeatEndingPosition(int);
00100 
00101       int getNumberOfRepeats();
00102       int getScore(int);
00103       string getRepeat(int);
00104       string getAlignedRepeat(int);
00105       
00106 };
00107 
00108 #endif
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Defines