00001 /******************************************************************************* 00002 * $Id: DNAMemorySML.h,v 1.3 2004/03/01 02:40:08 darling Exp $ 00003 * This file is copyright 2002-2007 Aaron Darling and authors listed in the AUTHORS file. 00004 * This file is licensed under the GPL. 00005 * Please see the file called COPYING for licensing details. 00006 * ************** 00007 ******************************************************************************/ 00008 00009 #ifndef _DNAMemorySML_h_ 00010 #define _DNAMemorySML_h_ 00011 00012 #ifdef HAVE_CONFIG_H 00013 #include "config.h" 00014 #endif 00015 00016 #include "libGenome/gnSequence.h" 00017 #include "libMems/MemorySML.h" 00018 00019 namespace mems { 00020 00027 class DNAMemorySML : public MemorySML 00028 { 00029 public: 00037 DNAMemorySML(const uint8* table = SortedMerList::BasicDNATable(), const uint32 alpha_bits = DNA_ALPHA_BITS); 00038 DNAMemorySML(const DNAMemorySML& msa); 00039 DNAMemorySML(const SortedMerList& sa); 00040 DNAMemorySML& operator=(const DNAMemorySML& msa ); 00041 DNAMemorySML* Clone() const; 00042 00043 00044 virtual uint64 GetMer(gnSeqI offset) const; 00045 virtual uint64 GetSeedMer( gnSeqI offset ) const; 00046 00047 protected: 00048 00049 virtual void FillSML(const genome::gnSequence& seq, std::vector<bmer>& sml_array); 00050 00051 }; 00052 00053 } 00054 00055 #endif //_DNAMemorySML_h_
1.3.6