]> git.sesse.net Git - kdenlive/blobdiff - src/audioscopes/abstractaudioscopewidget.h
Effect comments added
[kdenlive] / src / audioscopes / abstractaudioscopewidget.h
index e519e2a4398a6c2465bd82e53b3ce8a0229896f7..b9c3430a99af5a6f4a59dfd58389c1b7dc2717c3 100644 (file)
@@ -15,6 +15,8 @@
 #include <QtCore>
 #include <QWidget>
 
+#include <stdint.h>
+
 #include "abstractscopewidget.h"
 
 class QMenu;
@@ -26,10 +28,11 @@ class AbstractAudioScopeWidget : public AbstractScopeWidget
 {
     Q_OBJECT
 public:
-    AbstractAudioScopeWidget(Monitor *projMonitor, Monitor *clipMonitor, bool trackMouse = false, QWidget *parent = 0);
+    AbstractAudioScopeWidget(bool trackMouse = false, QWidget *parent = 0);
     virtual ~AbstractAudioScopeWidget();
 
 protected:
+    /** @brief This is just a wrapper function, subclasses can use renderAudioScope. */
     virtual QImage renderScope(uint accelerationFactor);
 
     ///// Unimplemented Methods /////
@@ -37,16 +40,19 @@ protected:
         when calculation has finished, to allow multi-threading.
         accelerationFactor hints how much faster than usual the calculation should be accomplished, if possible. */
     virtual QImage renderAudioScope(uint accelerationFactor,
-                               const QVector<int16_t> audioFrame, const int freq, const int num_channels, const int num_samples) = 0;
+                               const QVector<int16_t> audioFrame, const int freq, const int num_channels, const int num_samples,
+                               const int newData) = 0;
 
-private:
-    QVector<int16_t> m_audioFrame;
     int m_freq;
     int m_nChannels;
     int m_nSamples;
 
+private:
+    QVector<int16_t> m_audioFrame;
+    QAtomicInt m_newData;
+
 private slots:
-    void slotReceiveAudio(const QVector<int16_t>& sampleData, int freq, int num_channels, int num_samples); // NEW, TODO comment
+    void slotReceiveAudio(const QVector<int16_t>& sampleData, int freq, int num_channels, int num_samples);
 
 };