]> git.sesse.net Git - kdenlive/blobdiff - src/projecttree/abstractclipjob.h
Improvements to the clip jobs framework
[kdenlive] / src / projecttree / abstractclipjob.h
index 7292e38b4ce49f93b962e59ec7528fb5bdbdf4d3..26c46a6ddaa2118b93a6c78eb3f67f560a9d3bbf 100644 (file)
@@ -26,7 +26,7 @@
 
 #include "definitions.h"
 
-enum JOBTYPE { NOJOBTYPE = 0, PROXYJOB = 1, CUTJOB = 2};
+enum JOBTYPE { NOJOBTYPE = 0, PROXYJOB = 1, CUTJOB = 2, MLTJOB = 3};
 
 class AbstractClipJob : public QObject
 {
@@ -35,29 +35,30 @@ class AbstractClipJob : public QObject
 public:
     AbstractClipJob(JOBTYPE type, CLIPTYPE cType, const QString &id, QStringList parameters);    virtual ~ AbstractClipJob();
     CLIPTYPE clipType;
-    CLIPJOBSTATUS jobStatus;
     JOBTYPE jobType;
+    CLIPJOBSTATUS jobStatus;
     QString m_clipId;
     QString description;
+    bool addClipToProject;
+    bool replaceClip;
     const QString clipId() const;
     const QString errorMessage() const;
     void setStatus(CLIPJOBSTATUS status);
     virtual const QString destination() const;
-    virtual QProcess *startJob(bool */*ok*/);
+    virtual void startJob();
     virtual stringMap cancelProperties();
-    virtual int processLogInfo();
+    virtual void processLogInfo();
     virtual const QString statusMessage();
+    /** @brief Returns true if only one instance of this job can be run on a clip. */
+    virtual bool isExclusive();
     
 protected:
     QString m_errorMessage;
     QProcess *m_jobProcess;
     
-private:
-    
-    
 signals:
-    void jobProgress(int progress);
-
+    void jobProgress(QString, int, int);
+    void cancelRunningJob(const QString, stringMap);
 };