BioInt
1.02.00
BioInt: An integrative biological object-oriented application framework and interpreter
|
00001 /**************************************************************************** 00002 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 00003 The BioBhasha : A Programming Language for Biologist 00004 Version 1.0 (19th December 2001) 00005 Dr. Prasad, B.V.L.S. 00006 Contact: prasadbvls@helixgenomics.com 00007 Version 1.1 (23th January 2003) 00008 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 00009 *****************************************************************************/ 00010 #ifndef BIODNASEQUENCE_H 00011 #define BIODNASEQUENCE_H 00012 00013 #include "BioSequence.h" 00014 #include "BioPostScript.h" 00015 #include "BioHtml.h" 00016 #include <string> 00017 00018 class BioDnaSequence : public BioSequence 00019 { 00020 void drawORFTable(const vector <string> & vst, BioHtml & os); 00021 string markRegion(string st1, BioHtml & os); 00022 string reverseMarkRegion(string st1, BioHtml & os); 00023 string fillColor(string & st,string & ext); 00024 void drawOrfs(int,int,int,int,int,BioPostScript&);//private function 00025 public: 00026 BioDnaSequence(const string& ); 00027 BioDnaSequence(); 00028 BioDnaSequence(const string& seqnam, const string& seq); 00029 ~BioDnaSequence(); 00030 00031 00032 bool checkDnaSequence(); 00033 00034 void setSequence(const string& seqnam, const string& seq); 00035 void setSequenceName(const string& seqnam); 00036 void setSequence(const string& seq); 00037 00038 string getTranslatedSequence(const int& frameNumber ); 00039 string getTranslatedSequence(const long& ,const long& , const int& frameNumber ); 00040 00041 void showTranslatedSequences(ostream & os = cout); 00042 void showTranslatedSequences(const long&,const long&,ostream& os = cout); 00043 void showTranslatedSequences(BioHtml & ); 00044 void showTranslatedSequences(BioPostScript&,int startX=75,int startY=200,int len=400); 00045 string getmRnaSequence(); 00046 string getComplementarySequence(); 00047 string getmRnaSequence(const long&, const long&); 00048 string getComplementarySequence(const long&, const long&); 00049 00050 string getBase(const long&); 00051 00052 double getMolecularWeight(); 00053 double getPercentGC(); 00054 double getPercentAT(); 00055 double getTm(); 00056 // Melting Temperature 00057 // %GC content 00058 // Tm = 59.9 + 0.41*(%GC) - 600/length 00059 // Tm = 81.5 + 16.6* log[Na] + 0.41*(%GC) - 675/length - 0.65*(%formamide) - (%mismatch) 00060 00061 00062 }; 00063 00064 BioDnaSequence BioGetRandomDnaSequence(const int& seqLength); 00065 vector <string > BioGetDnaSequences(const string& ambiguousSequence); 00066 00067 #endif 00068 00069