MatchAlgorithm Class Reference

#include <MatchStoreGapped.h>

Inheritance diagram for MatchAlgorithm:

Inheritance graph
[legend]
List of all members.

Public Member Functions

 MatchAlgorithm (int numRepeats)
void operator() (WordSequence &querySeq, MatchAdder &addMatch, HashTableGeneric &subjectTable, int wordLength=-1, int stepLength=-1)
void generateHits (WordSequence &querySeq, HitListVector &hitList, HashTableGeneric &subjectTable)
virtual void generateMatches (HitListVector &hitList, MatchAdder &addMatch)=0

Protected Attributes

bool sortNeeded_
int numRepeats_
int wordLength_
int stepLength_

Detailed Description

Definition at line 56 of file MatchStoreGapped.h.


Constructor & Destructor Documentation

MatchAlgorithm::MatchAlgorithm ( int  numRepeats  )  [inline]

Definition at line 59 of file MatchStoreGapped.h.

00059                                    : 
00060     numRepeats_( numRepeats ), sortNeeded_(true) {}


Member Function Documentation

void MatchAlgorithm::operator() ( WordSequence querySeq,
MatchAdder addMatch,
HashTableGeneric subjectTable,
int  wordLength = -1,
int  stepLength = -1 
)

Definition at line 50 of file MatchStoreGapped.cpp.

References wordLength.

00055 {
00056   //  cout << "MatchAlgorithm()" << endl;
00057   HitListVector hitList;
00058   wordLength_ = ((wordLength==-1)?subjectTable.getWordLength():wordLength);
00059   stepLength_ = ((stepLength==-1)?wordLength_:stepLength);
00060   assert(hitList.size()==0);
00061 
00062   if (dynamic_cast<HashTablePacked*>(&subjectTable)!=NULL)
00063   {
00064     sortNeeded_ = false;
00065   } // ~if
00066 
00067   generateHits( querySeq, hitList, subjectTable );
00068   //  cout << "MatchAlgorithm() - hits got: " << hitList.size() << endl;
00069   generateMatches( hitList, addMatch );
00070 }

void MatchAlgorithm::generateHits ( WordSequence querySeq,
HitListVector hitList,
HashTableGeneric subjectTable 
)

Definition at line 73 of file MatchStoreGapped.cpp.

References HashTableGeneric::matchSequence(), and HashTableGeneric::setNumRepeats().

00074 {
00075   subjectTable.setNumRepeats( numRepeats_ );
00076   //  wordLength_ = subjectTable.getWordLength();
00077   //  stepLength_ = subjectTable.getStepLength();
00078   subjectTable.matchSequence( querySeq, hitList );
00079 }

Here is the call graph for this function:

virtual void MatchAlgorithm::generateMatches ( HitListVector hitList,
MatchAdder addMatch 
) [pure virtual]

Implemented in MatchAlgorithmGapped, and MatchAlgorithmUngapped.


Member Data Documentation

bool MatchAlgorithm::sortNeeded_ [protected]

Definition at line 73 of file MatchStoreGapped.h.

int MatchAlgorithm::numRepeats_ [protected]

Definition at line 74 of file MatchStoreGapped.h.

int MatchAlgorithm::wordLength_ [protected]

Definition at line 75 of file MatchStoreGapped.h.

int MatchAlgorithm::stepLength_ [protected]

Definition at line 76 of file MatchStoreGapped.h.


The documentation for this class was generated from the following files:
Generated on Fri Dec 21 13:18:09 2007 for ssaha by  doxygen 1.5.2