HashTable/HashTablePacked.h File Reference

#include "HashTableGeneric.h"

Include dependency graph for HashTablePacked.h:

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  PackedHitStore
class  RadixSorter
class  LessThanDiff
class  HashTablePacked

Typedefs

typedef unsigned int PositionPacked
typedef unsigned int SeqStartPos
typedef pair< PositionPacked,
int > 
HitPacked

Functions

void generateSubstitutesDNA (Word w, vector< Word > &subs, int wordLength)
void generateSubstitutesProtein (Word w, vector< Word > &subs, int wordLength)

Variables

static const HitPacked zeroHit = HitPacked(0,0)
const Word subVals []
const int subStarts []


Typedef Documentation

typedef pair<PositionPacked, int> HitPacked

Definition at line 47 of file HashTablePacked.h.

typedef unsigned int PositionPacked

Definition at line 44 of file HashTablePacked.h.

typedef unsigned int SeqStartPos

Definition at line 45 of file HashTablePacked.h.


Function Documentation

void generateSubstitutesDNA ( Word  w,
vector< Word > &  subs,
int  wordLength 
)

Definition at line 98 of file HashTablePacked.cpp.

References gBaseBits.

Referenced by main().

00099 {
00100   Word mask(2);
00101   for (int i(0) ; i < wordLength ; i++, mask<<=gBaseBits)
00102   {
00103     subs.push_back(w^mask);
00104   } // ~for
00105 } // ~generateSubstitutesDNA

Here is the caller graph for this function:

void generateSubstitutesProtein ( Word  w,
vector< Word > &  subs,
int  wordLength 
)

Definition at line 110 of file HashTablePacked.cpp.

References gResidueBits, subStarts, and subVals.

Referenced by HashTableComponent::HashTableComponent(), HashTablePackedProtein::HashTablePackedProtein(), and main().

00111 {
00112   Word mask((1<<gResidueBits)-1), thisCodon, thisWord;
00113   for (int i(0) ; i < wordLength ; i++, mask<<=gResidueBits)
00114   {
00115     thisCodon=((w&mask)>>(i*gResidueBits));
00116     thisWord= (w&(~mask));
00117     //    cout << ~mask << " " << printResidue( thisWord, wordLength )
00118     // << " " << printResidue( thisCodon, wordLength) << endl;
00119     for (int j(subStarts[thisCodon]); j != subStarts[thisCodon+1]; j++ )
00120     {
00121       subs.push_back( thisWord | (subVals[j]<<(i*gResidueBits)) );
00122       //  cout << "generating sub: " << printResidue(subs.back(),wordLength)
00123       //  << endl;
00124     } // ~for j
00125   } // ~for i
00126 } // ~generateSubstitutesProtein

Here is the caller graph for this function:


Variable Documentation

const int subStarts[]

Initial value:

{
0,  
0,  
1,  
1,  
3,  
6,  
8,  
8,  
10, 
13, 
16, 
19, 
22, 
25, 
25, 
28, 
30, 
33, 
34, 
37, 
39, 
39, 
42
}

Definition at line 155 of file HashTablePacked.h.

Referenced by generateSubstitutesProtein(), and main().

const Word subVals[]

Initial value:

{
              
  16,         
              
              
  4,  12,     
  3,  9, 14,  
  19, 21,     
              
  12, 21,     
  10, 11, 18, 
  4,  14, 15, 
  8,  11, 18, 
  8,  10, 18, 
  3,  7,  16, 
              
  4,  9,  15, 
  9,  14,     
  1,  12, 17, 
  16,         
  8,  10, 11, 
  5,  21,     
  5,  7,  19, 
             
  99999
}

Definition at line 127 of file HashTablePacked.h.

Referenced by generateSubstitutesProtein(), and main().

const HitPacked zeroHit = HitPacked(0,0) [static]

Definition at line 56 of file HashTablePacked.h.

Referenced by RadixSorter::operator()().


Generated on Fri Dec 21 13:14:01 2007 for ssaha by  doxygen 1.5.2