00001 #ifndef _Q_GLOBAL_READER_DISPATCHER_HH_ 00002 #define _Q_GLOBAL_READER_DISPATCHER_HH_ 00003 00014 #include <map> 00015 #include <QNamed.hh> 00016 00017 class QGlobalReader; 00018 00019 class QGlobalReaderDispatcher : public QNamed 00020 { 00021 public: 00022 static QGlobalReaderDispatcher& GetInstance(); 00023 00024 ~QGlobalReaderDispatcher(); 00025 00030 QGlobalReader* GetReader(const std::string& filename); 00031 00032 private: 00033 void Clear(); 00034 QGlobalReaderDispatcher(); 00035 std::map<std::string, QGlobalReader*> fReaders; 00036 QGlobalReader* fLastReader; 00037 friend class QSequence; 00038 }; 00039 00040 #endif