src/gnCompare.cpp

Go to the documentation of this file.
00001 00002 // File: gnCompare.cpp 00003 // Purpose: Coparator for all Sequences 00004 // Description: Compares sequences 00005 // Changes: 00006 // Version: libGenome 0.5.1 00007 // Author: Aaron Darling 00008 // Modified by: 00009 // Copyright: (c) Aaron Darling 00010 // Licenses: See COPYING file for details 00012 #include "gn/gnCompare.h" 00013 00014 // public: 00015 00016 const gnCompare *gnCompare::ProteinSeqCompare(){ 00017 const static gnCompare* t_comp = new gnCompare(ProteinSeqCompareType); 00018 return t_comp; 00019 } 00020 const gnCompare *gnCompare::DNASeqCompare(){ 00021 const static gnCompare* t_comp = new gnCompare(DNASeqCompareType); 00022 return t_comp; 00023 } 00024 const gnCompare *gnCompare::RNASeqCompare(){ 00025 const static gnCompare* t_comp = new gnCompare(RNASeqCompareType); 00026 return t_comp; 00027 } 00028 00029 gnCompare::gnCompare( const gnCompareType c_type ){ 00030 for( gnSeqC i = 0; i < GNSEQC_MAX; ++i ){ 00031 m_pairArray[i] = new gnSeqC[1]; 00032 m_pairArray[i][0] = 0; 00033 m_containArray[i] = new gnSeqC[1]; 00034 m_containArray[i][0] = 0; 00035 } 00036 switch(c_type){ 00037 case ProteinSeqCompareType: 00038 CreateProteinComparator(); 00039 break; 00040 case DNASeqCompareType: 00041 CreateDNAComparator(); 00042 break; 00043 case RNASeqCompareType: 00044 CreateRNAComparator(); 00045 break; 00046 } 00047 } 00048 00049 boolean gnCompare::Contains( gnSeqC ch, gnSeqC ch2, boolean case_sensitive) const 00050 { 00051 if(!case_sensitive){ 00052 ch = toupper(ch); 00053 ch2 = toupper(ch2); 00054 } 00055 if(strchr(m_containArray[ch], ch2) == 0) 00056 return false; 00057 return true; 00058 } 00059 00060 boolean gnCompare::Contains( const gnSeqC* seq, const gnSeqC* seq2, const uint32 len, boolean case_sensitive ) const{ 00061 for( uint32 i=0; i < len ; ++i ) 00062 if(!Contains(seq[i], seq2[i], case_sensitive)) 00063 return false; 00064 return true; 00065 } 00066 00067 boolean gnCompare::Contains( const string &seq, const string &seq2, boolean case_sensitive) const 00068 { 00069 gnSeqI shorter_len = seq.length() < seq2.length() ? seq.length() : seq2.length(); 00070 return Contains( (gnSeqC*)seq.data(), (gnSeqC*)seq2.data(), shorter_len, case_sensitive ); 00071 } 00072 // public: 00073 gnCompare::gnCompare() 00074 { 00075 for( gnSeqC i = 0; i < GNSEQC_MAX; ++i ){ 00076 m_pairArray[i] = new gnSeqC[1]; 00077 m_pairArray[i][0] = 0; 00078 m_containArray[i] = new gnSeqC[1]; 00079 m_containArray[i][0] = 0; 00080 } 00081 } 00082 00083 gnCompare::gnCompare( const gnCompare &sf ) 00084 { 00085 m_name = sf.m_name; 00086 for( gnSeqC i = 0; i < GNSEQC_MAX; ++i ){ 00087 m_pairArray[i] = new gnSeqC[strlen(sf.m_pairArray[i])+1]; 00088 strcpy(m_pairArray[i], sf.m_pairArray[i]); 00089 m_containArray[i] = new gnSeqC[strlen(sf.m_containArray[i])+1]; 00090 strcpy(m_containArray[i], sf.m_containArray[i]); 00091 } 00092 } 00093 gnCompare::~gnCompare() 00094 { 00095 for( gnSeqC i = 0; i < GNSEQC_MAX; ++i ){ 00096 delete[] m_pairArray[i]; 00097 delete[] m_containArray[i]; 00098 } 00099 } 00100 00101 00102 void gnCompare::AddArrayEntry( gnSeqC *array[GNSEQC_MAX], const gnSeqC ch, const gnSeqC ch2){ 00103 uint32 curlen = strlen(array[ch]); 00104 gnSeqC* tmp = new gnSeqC[curlen + 2]; 00105 strcpy(tmp, array[ch]); 00106 tmp[curlen] = ch2; 00107 tmp[curlen+1] = 0; 00108 delete[] array[ch]; 00109 array[ch] = tmp; 00110 } 00111 00112 void gnCompare::DelArrayEntry( gnSeqC *array[GNSEQC_MAX], const gnSeqC ch, const gnSeqC ch2){ 00113 //check that the pair exists 00114 gnSeqC* loc = strchr(m_containArray[ch], ch2); 00115 uint32 count = 0; 00116 while(loc != NULL){ 00117 count++; 00118 loc = strchr(loc+1, ch2); 00119 } 00120 if(count == 0) 00121 return; 00122 00123 uint32 curlen = strlen(array[ch]); 00124 gnSeqC* tmp = new gnSeqC[curlen - count]; 00125 uint32 tmppos = 0; 00126 for(uint32 i=0; i < curlen; i++) 00127 if(m_containArray[ch][i] != ch2) 00128 tmp[tmppos++] = m_containArray[ch][i]; 00129 tmp[tmppos] = 0; 00130 delete[] array[ch]; 00131 array[ch] = tmp; 00132 } 00133 00134 00135 void gnCompare::CreateProteinComparator() 00136 { 00137 SetName( "Protein Comparator" ); 00138 SetSingle( 'A' ); 00139 SetSingle( 'R' ); 00140 SetSingle( 'N' ); 00141 SetSingle( 'D' ); 00142 SetSingle( 'C' ); 00143 SetSingle( 'Q' ); 00144 SetSingle( 'E' ); 00145 SetSingle( 'G' ); 00146 SetSingle( 'H' ); 00147 SetSingle( 'I' ); 00148 SetSingle( 'L' ); 00149 SetSingle( 'K' ); 00150 SetSingle( 'M' ); 00151 SetSingle( 'F' ); 00152 SetSingle( 'P' ); 00153 SetSingle( 'S' ); 00154 SetSingle( 'T' ); 00155 SetSingle( 'W' ); 00156 SetSingle( 'Y' ); 00157 SetSingle( 'V' ); 00158 SetSingle( '.' ); 00159 00160 SetSingle( 'a' ); 00161 SetSingle( 'r' ); 00162 SetSingle( 'n' ); 00163 SetSingle( 'd' ); 00164 SetSingle( 'c' ); 00165 SetSingle( 'q' ); 00166 SetSingle( 'e' ); 00167 SetSingle( 'g' ); 00168 SetSingle( 'h' ); 00169 SetSingle( 'i' ); 00170 SetSingle( 'l' ); 00171 SetSingle( 'k' ); 00172 SetSingle( 'm' ); 00173 SetSingle( 'f' ); 00174 SetSingle( 'p' ); 00175 SetSingle( 's' ); 00176 SetSingle( 't' ); 00177 SetSingle( 'w' ); 00178 SetSingle( 'y' ); 00179 SetSingle( 'v' ); 00180 } 00181 00182 void gnCompare::CreateDNAComparator() 00183 { 00184 SetName( "Full DNA Comparator" ); 00185 00186 SetSingle( 'a' ); 00187 SetSingle( 'c' ); 00188 SetSingle( 'g' ); 00189 SetSingle( 't' ); 00190 SetSingle( 'r' ); 00191 SetSingle( 'k' ); 00192 SetSingle( 's' ); 00193 SetSingle( 'm' ); 00194 SetSingle( 'y' ); 00195 SetSingle( 'w' ); 00196 SetSingle( 'b' ); 00197 SetSingle( 'v' ); 00198 SetSingle( 'd' ); 00199 SetSingle( 'h' ); 00200 SetSingle( 'n' ); 00201 SetSingle( 'x' ); 00202 00203 SetSingle( 'A' ); 00204 SetSingle( 'C' ); 00205 SetSingle( 'G' ); 00206 SetSingle( 'T' ); 00207 SetSingle( 'R' ); 00208 SetSingle( 'K' ); 00209 SetSingle( 'S' ); 00210 SetSingle( 'M' ); 00211 SetSingle( 'Y' ); 00212 SetSingle( 'W' ); 00213 SetSingle( 'B' ); 00214 SetSingle( 'V' ); 00215 SetSingle( 'D' ); 00216 SetSingle( 'H' ); 00217 SetSingle( 'N' ); 00218 SetSingle( 'X' ); 00219 00220 SetPair( 'g', 'r' ); 00221 SetPair( 'g', 'k' ); 00222 SetPair( 'g', 's' ); 00223 SetPair( 'g', 'd' ); 00224 SetPair( 'g', 'v' ); 00225 SetPair( 'g', 'b' ); 00226 SetPair( 'g', 'x' ); 00227 SetPair( 'G', 'R' ); 00228 SetPair( 'G', 'K' ); 00229 SetPair( 'G', 'S' ); 00230 SetPair( 'G', 'D' ); 00231 SetPair( 'G', 'V' ); 00232 SetPair( 'G', 'B' ); 00233 SetPair( 'G', 'X' ); 00234 SetPair( 'a', 'r' ); 00235 SetPair( 'a', 'w' ); 00236 SetPair( 'a', 'm' ); 00237 SetPair( 'a', 'd' ); 00238 SetPair( 'a', 'v' ); 00239 SetPair( 'a', 'h' ); 00240 SetPair( 'a', 'x' ); 00241 SetPair( 'A', 'R' ); 00242 SetPair( 'A', 'W' ); 00243 SetPair( 'A', 'M' ); 00244 SetPair( 'A', 'D' ); 00245 SetPair( 'A', 'V' ); 00246 SetPair( 'A', 'H' ); 00247 SetPair( 'A', 'B' ); 00248 SetPair( 'A', 'X' ); 00249 SetPair( 'c', 's' ); 00250 SetPair( 'c', 'm' ); 00251 SetPair( 'c', 'y' ); 00252 SetPair( 'c', 'v' ); 00253 SetPair( 'c', 'b' ); 00254 SetPair( 'c', 'h' ); 00255 SetPair( 'c', 'x' ); 00256 SetPair( 'C', 'S' ); 00257 SetPair( 'C', 'M' ); 00258 SetPair( 'C', 'Y' ); 00259 SetPair( 'C', 'V' ); 00260 SetPair( 'C', 'B' ); 00261 SetPair( 'C', 'H' ); 00262 SetPair( 'C', 'X' ); 00263 SetPair( 't', 'k' ); 00264 SetPair( 't', 'w' ); 00265 SetPair( 't', 'y' ); 00266 SetPair( 't', 'd' ); 00267 SetPair( 't', 'b' ); 00268 SetPair( 't', 'h' ); 00269 SetPair( 't', 'x' ); 00270 SetPair( 'T', 'K' ); 00271 SetPair( 'T', 'W' ); 00272 SetPair( 'T', 'Y' ); 00273 SetPair( 'T', 'D' ); 00274 SetPair( 'T', 'B' ); 00275 SetPair( 'T', 'H' ); 00276 SetPair( 'T', 'X' ); 00277 00278 SetPair( 'r', 'x' ); 00279 SetPair( 'y', 'x' ); 00280 SetPair( 'w', 'x' ); 00281 SetPair( 's', 'x' ); 00282 SetPair( 'k', 'x' ); 00283 SetPair( 'm', 'x' ); 00284 SetPair( 'b', 'x' ); 00285 SetPair( 'd', 'x' ); 00286 SetPair( 'h', 'x' ); 00287 SetPair( 'v', 'x' ); 00288 SetPair( 'n', 'x' ); 00289 00290 SetPair( 'R', 'X' ); 00291 SetPair( 'Y', 'X' ); 00292 SetPair( 'W', 'X' ); 00293 SetPair( 'S', 'X' ); 00294 SetPair( 'K', 'X' ); 00295 SetPair( 'M', 'X' ); 00296 SetPair( 'B', 'X' ); 00297 SetPair( 'D', 'X' ); 00298 SetPair( 'H', 'X' ); 00299 SetPair( 'V', 'X' ); 00300 SetPair( 'N', 'X' ); 00301 00302 SetPair( 'k', 'd' ); 00303 SetPair( 'k', 'b' ); 00304 SetPair( 'r', 'd' ); 00305 SetPair( 'r', 'v' ); 00306 SetPair( 's', 'v' ); 00307 SetPair( 's', 'b' ); 00308 SetPair( 'm', 'v' ); 00309 SetPair( 'm', 'h' ); 00310 SetPair( 'w', 'd' ); 00311 SetPair( 'w', 'h' ); 00312 SetPair( 'y', 'b' ); 00313 SetPair( 'y', 'h' ); 00314 00315 SetPair( 'K', 'D' ); 00316 SetPair( 'K', 'B' ); 00317 SetPair( 'R', 'D' ); 00318 SetPair( 'R', 'V' ); 00319 SetPair( 'S', 'V' ); 00320 SetPair( 'S', 'B' ); 00321 SetPair( 'M', 'V' ); 00322 SetPair( 'M', 'H' ); 00323 SetPair( 'W', 'D' ); 00324 SetPair( 'W', 'H' ); 00325 SetPair( 'Y', 'B' ); 00326 SetPair( 'Y', 'H' ); 00327 //set the containment properties 00328 SetContained( 'g', 'r' ); 00329 SetContained( 'g', 'k' ); 00330 SetContained( 'g', 's' ); 00331 SetContained( 'g', 'd' ); 00332 SetContained( 'g', 'v' ); 00333 SetContained( 'g', 'b' ); 00334 SetContained( 'g', 'x' ); 00335 SetContained( 'G', 'R' ); 00336 SetContained( 'G', 'K' ); 00337 SetContained( 'G', 'S' ); 00338 SetContained( 'G', 'D' ); 00339 SetContained( 'G', 'V' ); 00340 SetContained( 'G', 'B' ); 00341 SetContained( 'G', 'X' ); 00342 SetContained( 'a', 'r' ); 00343 SetContained( 'a', 'w' ); 00344 SetContained( 'a', 'm' ); 00345 SetContained( 'a', 'd' ); 00346 SetContained( 'a', 'v' ); 00347 SetContained( 'a', 'h' ); 00348 SetContained( 'a', 'x' ); 00349 SetContained( 'A', 'R' ); 00350 SetContained( 'A', 'W' ); 00351 SetContained( 'A', 'M' ); 00352 SetContained( 'A', 'D' ); 00353 SetContained( 'A', 'V' ); 00354 SetContained( 'A', 'H' ); 00355 SetContained( 'A', 'B' ); 00356 SetContained( 'A', 'X' ); 00357 SetContained( 'c', 's' ); 00358 SetContained( 'c', 'm' ); 00359 SetContained( 'c', 'y' ); 00360 SetContained( 'c', 'v' ); 00361 SetContained( 'c', 'b' ); 00362 SetContained( 'c', 'h' ); 00363 SetContained( 'c', 'x' ); 00364 SetContained( 'C', 'S' ); 00365 SetContained( 'C', 'M' ); 00366 SetContained( 'C', 'Y' ); 00367 SetContained( 'C', 'V' ); 00368 SetContained( 'C', 'B' ); 00369 SetContained( 'C', 'H' ); 00370 SetContained( 'C', 'X' ); 00371 SetContained( 't', 'k' ); 00372 SetContained( 't', 'w' ); 00373 SetContained( 't', 'y' ); 00374 SetContained( 't', 'd' ); 00375 SetContained( 't', 'b' ); 00376 SetContained( 't', 'h' ); 00377 SetContained( 't', 'x' ); 00378 SetContained( 'T', 'K' ); 00379 SetContained( 'T', 'W' ); 00380 SetContained( 'T', 'Y' ); 00381 SetContained( 'T', 'D' ); 00382 SetContained( 'T', 'B' ); 00383 SetContained( 'T', 'H' ); 00384 SetContained( 'T', 'X' ); 00385 00386 SetContained( 'r', 'x' ); 00387 SetContained( 'y', 'x' ); 00388 SetContained( 'w', 'x' ); 00389 SetContained( 's', 'x' ); 00390 SetContained( 'k', 'x' ); 00391 SetContained( 'm', 'x' ); 00392 SetContained( 'b', 'x' ); 00393 SetContained( 'd', 'x' ); 00394 SetContained( 'h', 'x' ); 00395 SetContained( 'v', 'x' ); 00396 SetContained( 'n', 'x' ); 00397 00398 SetContained( 'R', 'X' ); 00399 SetContained( 'Y', 'X' ); 00400 SetContained( 'W', 'X' ); 00401 SetContained( 'S', 'X' ); 00402 SetContained( 'K', 'X' ); 00403 SetContained( 'M', 'X' ); 00404 SetContained( 'B', 'X' ); 00405 SetContained( 'D', 'X' ); 00406 SetContained( 'H', 'X' ); 00407 SetContained( 'V', 'X' ); 00408 SetContained( 'N', 'X' ); 00409 00410 SetContained( 'k', 'd' ); 00411 SetContained( 'k', 'b' ); 00412 SetContained( 'r', 'd' ); 00413 SetContained( 'r', 'v' ); 00414 SetContained( 's', 'v' ); 00415 SetContained( 's', 'b' ); 00416 SetContained( 'm', 'v' ); 00417 SetContained( 'm', 'h' ); 00418 SetContained( 'w', 'd' ); 00419 SetContained( 'w', 'h' ); 00420 SetContained( 'y', 'b' ); 00421 SetContained( 'y', 'h' ); 00422 00423 SetContained( 'K', 'D' ); 00424 SetContained( 'K', 'B' ); 00425 SetContained( 'R', 'D' ); 00426 SetContained( 'R', 'V' ); 00427 SetContained( 'S', 'V' ); 00428 SetContained( 'S', 'B' ); 00429 SetContained( 'M', 'V' ); 00430 SetContained( 'M', 'H' ); 00431 SetContained( 'W', 'D' ); 00432 SetContained( 'W', 'H' ); 00433 SetContained( 'Y', 'B' ); 00434 SetContained( 'Y', 'H' ); 00435 00436 } 00437 00438 void gnCompare::CreateRNAComparator() 00439 { 00440 SetName( "Full RNA Comparator" ); 00441 00442 SetSingle( 'a' ); 00443 SetSingle( 'c' ); 00444 SetSingle( 'g' ); 00445 SetSingle( 'u' ); 00446 SetSingle( 'r' ); 00447 SetSingle( 'k' ); 00448 SetSingle( 's' ); 00449 SetSingle( 'm' ); 00450 SetSingle( 'y' ); 00451 SetSingle( 'w' ); 00452 SetSingle( 'b' ); 00453 SetSingle( 'v' ); 00454 SetSingle( 'd' ); 00455 SetSingle( 'h' ); 00456 SetSingle( 'n' ); 00457 SetSingle( 'x' ); 00458 00459 SetSingle( 'A' ); 00460 SetSingle( 'C' ); 00461 SetSingle( 'G' ); 00462 SetSingle( 'U' ); 00463 SetSingle( 'R' ); 00464 SetSingle( 'K' ); 00465 SetSingle( 'S' ); 00466 SetSingle( 'M' ); 00467 SetSingle( 'Y' ); 00468 SetSingle( 'W' ); 00469 SetSingle( 'B' ); 00470 SetSingle( 'V' ); 00471 SetSingle( 'D' ); 00472 SetSingle( 'H' ); 00473 SetSingle( 'N' ); 00474 SetSingle( 'X' ); 00475 00476 SetPair( 'g', 'r' ); 00477 SetPair( 'g', 'k' ); 00478 SetPair( 'g', 's' ); 00479 SetPair( 'g', 'd' ); 00480 SetPair( 'g', 'v' ); 00481 SetPair( 'g', 'b' ); 00482 SetPair( 'g', 'x' ); 00483 SetPair( 'G', 'R' ); 00484 SetPair( 'G', 'K' ); 00485 SetPair( 'G', 'S' ); 00486 SetPair( 'G', 'D' ); 00487 SetPair( 'G', 'V' ); 00488 SetPair( 'G', 'B' ); 00489 SetPair( 'G', 'X' ); 00490 SetPair( 'a', 'r' ); 00491 SetPair( 'a', 'w' ); 00492 SetPair( 'a', 'm' ); 00493 SetPair( 'a', 'd' ); 00494 SetPair( 'a', 'v' ); 00495 SetPair( 'a', 'h' ); 00496 SetPair( 'a', 'x' ); 00497 SetPair( 'A', 'R' ); 00498 SetPair( 'A', 'W' ); 00499 SetPair( 'A', 'M' ); 00500 SetPair( 'A', 'D' ); 00501 SetPair( 'A', 'V' ); 00502 SetPair( 'A', 'H' ); 00503 SetPair( 'A', 'B' ); 00504 SetPair( 'A', 'X' ); 00505 SetPair( 'c', 's' ); 00506 SetPair( 'c', 'm' ); 00507 SetPair( 'c', 'y' ); 00508 SetPair( 'c', 'v' ); 00509 SetPair( 'c', 'b' ); 00510 SetPair( 'c', 'h' ); 00511 SetPair( 'c', 'x' ); 00512 SetPair( 'C', 'S' ); 00513 SetPair( 'C', 'M' ); 00514 SetPair( 'C', 'Y' ); 00515 SetPair( 'C', 'V' ); 00516 SetPair( 'C', 'B' ); 00517 SetPair( 'C', 'H' ); 00518 SetPair( 'C', 'X' ); 00519 SetPair( 'u', 'k' ); 00520 SetPair( 'u', 'w' ); 00521 SetPair( 'u', 'y' ); 00522 SetPair( 'u', 'd' ); 00523 SetPair( 'u', 'b' ); 00524 SetPair( 'u', 'h' ); 00525 SetPair( 'u', 'x' ); 00526 SetPair( 'U', 'K' ); 00527 SetPair( 'U', 'W' ); 00528 SetPair( 'U', 'Y' ); 00529 SetPair( 'U', 'D' ); 00530 SetPair( 'U', 'B' ); 00531 SetPair( 'U', 'H' ); 00532 SetPair( 'U', 'X' ); 00533 00534 SetPair( 'r', 'x' ); 00535 SetPair( 'y', 'x' ); 00536 SetPair( 'w', 'x' ); 00537 SetPair( 's', 'x' ); 00538 SetPair( 'k', 'x' ); 00539 SetPair( 'm', 'x' ); 00540 SetPair( 'b', 'x' ); 00541 SetPair( 'd', 'x' ); 00542 SetPair( 'h', 'x' ); 00543 SetPair( 'v', 'x' ); 00544 SetPair( 'n', 'x' ); 00545 00546 SetPair( 'R', 'X' ); 00547 SetPair( 'Y', 'X' ); 00548 SetPair( 'W', 'X' ); 00549 SetPair( 'S', 'X' ); 00550 SetPair( 'K', 'X' ); 00551 SetPair( 'M', 'X' ); 00552 SetPair( 'B', 'X' ); 00553 SetPair( 'D', 'X' ); 00554 SetPair( 'H', 'X' ); 00555 SetPair( 'V', 'X' ); 00556 SetPair( 'N', 'X' ); 00557 00558 SetPair( 'k', 'd' ); 00559 SetPair( 'k', 'b' ); 00560 SetPair( 'r', 'd' ); 00561 SetPair( 'r', 'v' ); 00562 SetPair( 's', 'v' ); 00563 SetPair( 's', 'b' ); 00564 SetPair( 'm', 'v' ); 00565 SetPair( 'm', 'h' ); 00566 SetPair( 'w', 'd' ); 00567 SetPair( 'w', 'h' ); 00568 SetPair( 'y', 'b' ); 00569 SetPair( 'y', 'h' ); 00570 00571 SetPair( 'K', 'D' ); 00572 SetPair( 'K', 'B' ); 00573 SetPair( 'R', 'D' ); 00574 SetPair( 'R', 'V' ); 00575 SetPair( 'S', 'V' ); 00576 SetPair( 'S', 'B' ); 00577 SetPair( 'M', 'V' ); 00578 SetPair( 'M', 'H' ); 00579 SetPair( 'W', 'D' ); 00580 SetPair( 'W', 'H' ); 00581 SetPair( 'Y', 'B' ); 00582 SetPair( 'Y', 'H' ); 00583 //set the containment properties 00584 SetContained( 'g', 'r' ); 00585 SetContained( 'g', 'k' ); 00586 SetContained( 'g', 's' ); 00587 SetContained( 'g', 'd' ); 00588 SetContained( 'g', 'v' ); 00589 SetContained( 'g', 'b' ); 00590 SetContained( 'g', 'x' ); 00591 SetContained( 'G', 'R' ); 00592 SetContained( 'G', 'K' ); 00593 SetContained( 'G', 'S' ); 00594 SetContained( 'G', 'D' ); 00595 SetContained( 'G', 'V' ); 00596 SetContained( 'G', 'B' ); 00597 SetContained( 'G', 'X' ); 00598 SetContained( 'a', 'r' ); 00599 SetContained( 'a', 'w' ); 00600 SetContained( 'a', 'm' ); 00601 SetContained( 'a', 'd' ); 00602 SetContained( 'a', 'v' ); 00603 SetContained( 'a', 'h' ); 00604 SetContained( 'a', 'x' ); 00605 SetContained( 'A', 'R' ); 00606 SetContained( 'A', 'W' ); 00607 SetContained( 'A', 'M' ); 00608 SetContained( 'A', 'D' ); 00609 SetContained( 'A', 'V' ); 00610 SetContained( 'A', 'H' ); 00611 SetContained( 'A', 'B' ); 00612 SetContained( 'A', 'X' ); 00613 SetContained( 'c', 's' ); 00614 SetContained( 'c', 'm' ); 00615 SetContained( 'c', 'y' ); 00616 SetContained( 'c', 'v' ); 00617 SetContained( 'c', 'b' ); 00618 SetContained( 'c', 'h' ); 00619 SetContained( 'c', 'x' ); 00620 SetContained( 'C', 'S' ); 00621 SetContained( 'C', 'M' ); 00622 SetContained( 'C', 'Y' ); 00623 SetContained( 'C', 'V' ); 00624 SetContained( 'C', 'B' ); 00625 SetContained( 'C', 'H' ); 00626 SetContained( 'C', 'X' ); 00627 SetContained( 'u', 'k' ); 00628 SetContained( 'u', 'w' ); 00629 SetContained( 'u', 'y' ); 00630 SetContained( 'u', 'd' ); 00631 SetContained( 'u', 'b' ); 00632 SetContained( 'u', 'h' ); 00633 SetContained( 'u', 'x' ); 00634 SetContained( 'U', 'K' ); 00635 SetContained( 'U', 'W' ); 00636 SetContained( 'U', 'Y' ); 00637 SetContained( 'U', 'D' ); 00638 SetContained( 'U', 'B' ); 00639 SetContained( 'U', 'H' ); 00640 SetContained( 'U', 'X' ); 00641 00642 SetContained( 'r', 'x' ); 00643 SetContained( 'y', 'x' ); 00644 SetContained( 'w', 'x' ); 00645 SetContained( 's', 'x' ); 00646 SetContained( 'k', 'x' ); 00647 SetContained( 'm', 'x' ); 00648 SetContained( 'b', 'x' ); 00649 SetContained( 'd', 'x' ); 00650 SetContained( 'h', 'x' ); 00651 SetContained( 'v', 'x' ); 00652 SetContained( 'n', 'x' ); 00653 00654 SetContained( 'R', 'X' ); 00655 SetContained( 'Y', 'X' ); 00656 SetContained( 'W', 'X' ); 00657 SetContained( 'S', 'X' ); 00658 SetContained( 'K', 'X' ); 00659 SetContained( 'M', 'X' ); 00660 SetContained( 'B', 'X' ); 00661 SetContained( 'D', 'X' ); 00662 SetContained( 'H', 'X' ); 00663 SetContained( 'V', 'X' ); 00664 SetContained( 'N', 'X' ); 00665 00666 SetContained( 'k', 'd' ); 00667 SetContained( 'k', 'b' ); 00668 SetContained( 'r', 'd' ); 00669 SetContained( 'r', 'v' ); 00670 SetContained( 's', 'v' ); 00671 SetContained( 's', 'b' ); 00672 SetContained( 'm', 'v' ); 00673 SetContained( 'm', 'h' ); 00674 SetContained( 'w', 'd' ); 00675 SetContained( 'w', 'h' ); 00676 SetContained( 'y', 'b' ); 00677 SetContained( 'y', 'h' ); 00678 00679 SetContained( 'K', 'D' ); 00680 SetContained( 'K', 'B' ); 00681 SetContained( 'R', 'D' ); 00682 SetContained( 'R', 'V' ); 00683 SetContained( 'S', 'V' ); 00684 SetContained( 'S', 'B' ); 00685 SetContained( 'M', 'V' ); 00686 SetContained( 'M', 'H' ); 00687 SetContained( 'W', 'D' ); 00688 SetContained( 'W', 'H' ); 00689 SetContained( 'Y', 'B' ); 00690 SetContained( 'Y', 'H' ); 00691 }

Generated on Mon Feb 14 19:28:19 2005 for libGenome by doxygen 1.3.8