]> git.sesse.net Git - kdenlive/blobdiff - src/monitormanager.h
Const'ref
[kdenlive] / src / monitormanager.h
index 8ce0e3f3ff4d8f4eaee822263ed141ac64148b26..b9f7de2c2da501f6953049eac5bfa142078c2121 100644 (file)
 #include "recmonitor.h"
 #include "timecode.h"
 
+class KdenliveDoc;
 
 class MonitorManager : public QObject
 {
     Q_OBJECT
 
 public:
-    MonitorManager(QWidget *parent = 0);
+    explicit MonitorManager(QWidget *parent = 0);
     void initMonitors(Monitor *clipMonitor, Monitor *projectMonitor, RecMonitor *recMonitor);
     void appendMonitor(AbstractMonitor *monitor);
     void removeMonitor(AbstractMonitor *monitor);
-    Timecode timecode();
-    void resetProfiles(Timecode tc);
+    Timecode timecode() const;
+    void resetProfiles(const Timecode &tc);
     void stopActiveMonitor();
     AbstractRender *activeRenderer();
     /** Searches for a monitor with the given name.
@@ -45,6 +46,12 @@ public:
     AbstractMonitor *monitor(Kdenlive::MONITORID monitorName);
     void updateScopeSource();
     void clearScopeSource();
+    /** @brief Returns current project's folder. */
+    QString getProjectFolder() const;
+    /** @brief Sets current document for later reference. */
+    void setDocument(KdenliveDoc *doc);
+    /** @brief Change an MLT consumer property for both monitors. */
+    void setConsumerProperty(const QString &name, const QString &value);
 
 public slots:
 
@@ -79,6 +86,7 @@ private slots:
     void slotRefreshCurrentMonitor(const QString &id);
 
 private:
+    KdenliveDoc *m_document;
     Monitor *m_clipMonitor;
     Monitor *m_projectMonitor;
     Timecode m_timecode;