00001 #ifndef VALIDQUALIFIER_H 00002 #define VALIDQUALIFIER_H 00003 00004 #include <set> 00005 #include <string> 00006 00007 using namespace std; 00008 00010 class ValidQualifier { 00011 public: 00012 static ValidQualifier* getValidQualifier(); 00015 static ValidQualifier* getValidQualifier(const string &file); 00017 static ValidQualifier* getValidQualifier(const char* knownqual[], 00018 const int num); 00019 bool valid(const string &ql) const { return validqual.find(ql) != validqual.end(); } 00020 00021 private: 00022 static ValidQualifier* single; 00023 set<string> validqual; 00024 00026 ValidQualifier(); 00028 ValidQualifier(const string &file); 00030 ValidQualifier(const char* knownqual[], const int num); 00031 00032 static const int numqual=12; 00033 static const char* qualifiers[]; /* = { "protein_id", "transcript_id", 00034 "db_xref", "go_component", "go_function", "go_process", "note", 00035 "product", "locus_tag", "gene", "EC_number", "codon_start" 00036 }; 00037 */ 00038 }; 00039 00040 #endif
1.5.6