virtual ~Database();
virtual void generateDB() = 0;
virtual void addSequence(Sequence) = 0; //add sequence to search engine
+ virtual string getName(int) { return ""; }
virtual vector<int> findClosestSequences(Sequence*, int) = 0; // returns indexes of n closest sequences to query
virtual vector<int> findClosestMegaBlast(Sequence*, int){return results;}
virtual float getSearchScore();