BioInt
1.02.00
BioInt: An integrative biological object-oriented application framework and interpreter
|
00001 #ifndef BIOPROTEINSEQUENCEALIGNMENT_H 00002 #define BIOPROTEINSEQUENCEALIGNMENT_H 00003 00004 #include <iostream> 00005 #include <fstream> 00006 #include <sstream> 00007 #include <string> 00008 #include <vector> 00009 #include "BioUtilities.h" 00010 #include "BioProteinSequence.h" 00011 #include "BioSwissProt.h" 00012 #include "BioFasta.h" 00013 #include "BioProteinSubstitutionMatrix.h" 00014 #include "BioMultipleFasta.h" 00015 #include "BioLenPos.h" 00016 #include "BioMatrix.h" 00017 00018 class BioProteinSequenceAlignment 00019 { 00020 protected: 00021 /*VARIABLES*/ 00022 string seq1_,seq2_; /* These variables holds the sequences to be aligned*/ 00023 00024 string outSeq1_,outSeq2_; /* These varables holds the ouput aligned sequences*/ 00025 00026 string seqName1_,seqName2_; /* These variables holds the Sequence Names */ 00027 00028 static string aminoAcidSeq_; /* This String Holds the AminoAcid names in a most comman way of its usage*/ 00029 00030 int gapPenalty; /* This varible is used to Set the Gap Penality in sequnce alignment process (in substitution matrix) */ 00031 00032 int gapExtn; /* This variable is used to set the Gap Extention Penality in seqquence alignment process*/ 00033 00034 BioMatrix substitutionMatrix; /* This 2D array holds the Substitutionmatrix elements used for the currrent alignment*/ 00035 // vector < vector < int > > tempMatrix; /* This is a temporary 2D variable used for most convenetianal way data transfer*/ 00036 BioMatrix scoringMatrix; 00037 //int** accumMatrix; 00038 int status; 00039 00040 /*FUNCTIONS*/ 00041 void formScoringMatrix(); 00042 00043 int getAccValMov(long,long,int); 00044 00045 void init(); 00046 00047 BioProteinSequenceAlignment(); 00048 // ~BioProteinSequenceAlignment(){ delete seq1_, seq2_, outSeq1_, outSeq2_, seqName1_, seqName2_; }; 00049 00050 BioProteinSequenceAlignment(BioProteinSequence,BioProteinSequence,string mat="BLOSUM62",int GP=-11,int extn=-9999); 00051 BioProteinSequenceAlignment(BioProteinSequence,BioProteinSequence,string,string,int GP=-11,int extn=-9999); 00052 BioProteinSequenceAlignment(BioProteinSequence,BioProteinSequence,int MS,int MMS,int GP=-11,int extn=-9999); 00053 BioProteinSequenceAlignment(BioProteinSequence,string,string mat="BLOSUM62",int GP=-11,int extn=-9999); 00054 BioProteinSequenceAlignment(BioProteinSequence,string,string,string,int GP=-11,int extn=-9999); 00055 BioProteinSequenceAlignment(BioProteinSequence,string,int MS,int MMS,int GP=-11,int extn=-9999); 00056 00057 BioProteinSequenceAlignment(BioSwissProt,BioSwissProt,string mat="BLOSUM62",int GP=-11,int extn=-9999); 00058 BioProteinSequenceAlignment(BioSwissProt,BioSwissProt,string,string,int GP=-11,int extn=-9999); 00059 BioProteinSequenceAlignment(BioSwissProt,BioSwissProt,int MS,int MMS,int GP=-11,int extn=-9999); 00060 BioProteinSequenceAlignment(BioSwissProt,string,string mat="BLOSUM62",int GP=-11,int extn=-9999); 00061 BioProteinSequenceAlignment(BioSwissProt,string,string,string,int GP=-11,int extn=-9999); 00062 BioProteinSequenceAlignment(BioSwissProt,string,int MS,int MMS,int GP=-11,int extn=-9999); 00063 00064 00065 BioProteinSequenceAlignment(const BioFasta&,const BioFasta&,const string& mat="BLOSUM62",const int& GP=-11,const int& extn=-9999); 00066 BioProteinSequenceAlignment(BioFasta,BioFasta,string,string,int GP=-11,int extn=-9999); 00067 BioProteinSequenceAlignment(BioFasta,BioFasta,int MS,int MMS,int GP=-11,int extn=-9999); 00068 BioProteinSequenceAlignment(BioFasta,string,string mat="BLOSUM62",int GP=-11,int extn=-9999); 00069 BioProteinSequenceAlignment(BioFasta,string,string,string,int GP=-11,int extn=-9999); 00070 BioProteinSequenceAlignment(BioFasta,string,int MS,int MMS,int GP=-11,int extn=-9999); 00071 00072 00073 BioProteinSequenceAlignment(const string&,const string&,const string& mat="BLOSUM62",int GP=-11,int extn=-9999); 00074 BioProteinSequenceAlignment(const string&,const string&,const string&,const string&,int GP=-11,int extn=-9999); 00075 BioProteinSequenceAlignment(const string&,const string&,int MS,int MMS,int GP=-11,int extn=-9999); 00076 00077 public: 00078 void setSequence1(BioProteinSequence); 00079 void setSequence2(BioProteinSequence); 00080 00081 void setSequence1(BioSwissProt); 00082 void setSequence2(BioSwissProt); 00083 00084 void setSequence1(BioFasta); 00085 void setSequence2(BioFasta); 00086 00087 void setSequence1(const string&); 00088 void setSequence2(const string&); 00089 00090 void setGapPenalty(int GP=-11,int extn=-9999); 00091 void setSubstitutionMatrix(const string&); 00092 void setSubstitutionMatrix(const string&,const string&); 00093 void setMatchMisMatchScore(int MS=1,int MMS=0); 00094 00095 void showScoringMatrix(ostream & = cout); 00096 00097 }; 00098 00099 #endif