00001 #ifndef TRAPPERPARSER_H 00002 #define TRAPPERPARSER_H 00003 00004 #include <qxml.h> 00005 #include <qstringlist.h> 00006 #include <db_cxx.h> 00007 00008 class TrapperDoc; 00009 00010 00011 class TrapperParser : public QXmlDefaultHandler 00012 { 00013 00014 public: 00015 TrapperParser(DbEnv* dbenv, QString projectDir) : 00016 env(dbenv), projDir(projectDir), current_doc(0), format_ok(false) {} 00017 00018 bool startElement( const QString & namespaceURI, const QString & localName, 00019 const QString & qName, const QXmlAttributes & attributes); 00020 bool endElement( const QString & namespaceURI, const QString & localName, 00021 const QString & qName); 00022 00023 00024 00025 00026 private: 00027 00028 QStringList contigNamesInProjectDir(); 00029 00030 00031 DbEnv* env; 00032 QString projDir; 00033 00034 TrapperDoc* current_doc; 00035 db_recno_t current_read_recno; 00036 bool format_ok; 00037 }; 00038 00039 #endif //TRAPPERPARSER_H