oopapidocs
2.0
|
00001 #ifndef METADATALOADER_H 00002 #define METADATALOADER_H 00003 #include "phonon_mdexport.h" 00004 #include "phononitem.h" 00005 #include <QSharedPointer> 00006 #include <QSemaphore> 00007 #include <QTimer> 00008 #include <QTime> 00009 #include <QEvent> 00010 #include "metadatavalue.h" 00011 #include "abstractmetadataloader.h" 00012 00013 namespace Phonon { 00014 00022 //start 00023 class PHONON_MDEXPORT MetaDataLoader : public Abstract::MetaDataLoader { 00024 Q_OBJECT 00025 public: 00027 static MetaDataLoader* instance(); 00028 explicit MetaDataLoader(QObject* parent=0); 00029 virtual ~MetaDataLoader(); 00030 MetaDataLoader* clone(QObject* parent = 0); 00032 void get(QString path); 00033 bool isRunning() const ; 00034 void get(QStringList paths); 00036 const QStringList &supportedExtensions() ; 00037 public slots: 00039 void cancel(); 00040 00041 private slots: 00042 void failed(); 00043 void grabFirst(); 00044 void checkForWork(); 00045 void copyData(bool success=true); 00046 00047 private: 00048 QTimer m_timeOut; 00049 bool m_isBusy; 00050 PhononItem m_item; 00051 QStringList m_queuedPaths; 00052 int totalFetched; 00053 }; 00054 //end 00055 } 00056 #endif // METADATALOADER_H