]> git.sesse.net Git - kdenlive/blobdiff - src/renderer.h
Use const'ref.
[kdenlive] / src / renderer.h
index 972feb03649dde577d08415fec8273a2e850e352..d0c7d34a25475494fa3564bf365a2341923de213 100644 (file)
@@ -45,8 +45,8 @@
 #include <QMutex>
 #include <QFuture>
 #include <QSemaphore>
+#include <QTimer>
 
-class QTimer;
 class QPixmap;
 
 class KComboBox;
@@ -55,6 +55,7 @@ namespace Mlt
 {
 class Consumer;
 class Playlist;
+class Properties;
 class Tractor;
 class Transition;
 class Frame;
@@ -294,6 +295,8 @@ Q_OBJECT public:
     const QList <Mlt::Producer *> producersList();
     void updatePreviewSettings();
     void setDropFrames(bool show);
+    /** @brief Sets an MLT consumer property. */
+    void setConsumerProperty(const QString &name, const QString &value);
     QString updateSceneListFps(double current_fps, double new_fps, QString scene);
 
     void showAudio(Mlt::Frame&);
@@ -338,6 +341,9 @@ Q_OBJECT public:
     /** @brief Check if the installed FFmpeg / Libav supports x11grab */
     static bool checkX11Grab();
     
+    /** @brief Ask to set this monitor as active */
+    void setActiveMonitor();
+    
     QSemaphore showFrameSemaphore;
     bool externalConsumer;
 
@@ -385,6 +391,8 @@ private:
     QFuture <void> m_infoThread;
     QList <requestClipInfo> m_requestList;
     bool m_paused;
+    /** @brief True if this monitor is active. */
+    bool m_isActive;
 
     void closeMlt();
     void mltCheckLength(Mlt::Tractor *tractor);
@@ -407,6 +415,8 @@ private:
     void fixAudioMixing(Mlt::Tractor tractor);
     /** @brief Make sure we inform MLT if we need a lot of threads for avformat producer */
     void checkMaxThreads();
+    /** @brief Clone serialisable properties only */
+    void cloneProperties(Mlt::Properties &dest, Mlt::Properties &source);
 
 private slots:
 
@@ -464,6 +474,8 @@ signals:
     void showAudioSignal(const QVector<double> &);
     void addClip(const KUrl &, stringMap);
     void checkSeeking();
+    /** @brief Activate current monitor. */
+    void activateMonitor(Kdenlive::MONITORID);
     void mltFrameReceived(Mlt::Frame *);
 
 public slots: