![]() |
Mixxx
|
00001 // engineworker.h 00002 // Created 6/2/2010 by RJ Ryan (rryan@mit.edu) 00003 00004 #ifndef ENGINEWORKER_H 00005 #define ENGINEWORKER_H 00006 00007 #include <QObject> 00008 #include <QRunnable> 00009 00010 // EngineWorker is an interface for running background processing work when the 00011 // audio callback is not active. While the audio callback is active, an 00012 // EngineWorker can emit its workReady signal, and an EngineWorkerManager will 00013 // schedule it for running after the audio callback has completed. 00014 00015 class EngineWorker : public QObject, public QRunnable { 00016 Q_OBJECT 00017 public: 00018 EngineWorker(); 00019 virtual ~EngineWorker(); 00020 00021 virtual void run(); 00022 00023 signals: 00024 void workReady(EngineWorker* worker); 00025 void workStarting(EngineWorker* worker); 00026 void workDone(EngineWorker* worker); 00027 }; 00028 00029 #endif /* ENGINEWORKER_H */