]> git.sesse.net Git - kdenlive/blobdiff - src/kthumb.h
const'ref
[kdenlive] / src / kthumb.h
index 7dbc5c986e851c8e14fe4f4db6920a129a6f78ae..f31da85a74435ec549b1ed331ce6a00609803de1 100644 (file)
@@ -40,11 +40,8 @@ relevant signal that get's emitted once the call completes.
 
 namespace Mlt
 {
-class Miracle;
-class Consumer;
 class Producer;
 class Frame;
-class Profile;
 };
 
 class ClipManager;
@@ -53,36 +50,36 @@ typedef QMap <int, QMap <int, QByteArray> > audioByteArray;
 
 class KThumb: public QObject
 {
-Q_OBJECT public:
+   Q_OBJECT 
+public:
 
-
-    KThumb(ClipManager *clipManager, KUrl url, const QString &id, const QString &hash, QObject * parent = 0, const char *name = 0);
+    explicit KThumb(ClipManager *clipManager, const KUrl &url, const QString &id, const QString &hash, QObject * parent = 0);
     ~KThumb();
     void setProducer(Mlt::Producer *producer);
-    void askForAudioThumbs(const QString &id);
     bool hasProducer() const;
     void clearProducer();
     void updateThumbUrl(const QString &hash);
     void extractImage(QList <int> frames);
-    QPixmap extractImage(int frame, int width, int height);
+    QImage extractImage(int frame, int width, int height);
 #if KDE_IS_VERSION(4,5,0)
     /** @brief Request thumbnails for the frame range. */
     void queryIntraThumbs(QList <int> missingFrames);
     /** @brief Query cached thumbnail. */
-    QImage findCachedThumb(const QString path);
+    QImage findCachedThumb(const QString &path);
 #endif
     void getThumb(int frame);
+    void getGenericThumb(int frame, int height, int type);
 
 public slots:
     void updateClipUrl(KUrl url, const QString &hash);
-    static QPixmap getImage(KUrl url, int width, int height);
+    void slotCreateAudioThumbs();
+
+public:
+    static QPixmap getImage(const KUrl &url, int width, int height);
 //    static QPixmap getImage(QDomElement xml, int frame, int width, int height);
     /* void getImage(KUrl url, int frame, int width, int height);
      void getThumbs(KUrl url, int startframe, int endframe, int width, int height);*/
-    void stopAudioThumbs();
-    void removeAudioThumb();
-    void getAudioThumbs(int channel, double frame, double frameLength, int arrayWidth);
-    static QPixmap getImage(KUrl url, int frame, int width, int height);
+    static QPixmap getImage(const KUrl& url, int frame, int width, int height);
     static QImage getFrame(Mlt::Producer *producer, int framepos, int frameWidth, int displayWidth, int height);
     static QImage getFrame(Mlt::Frame *frame, int frameWidth, int displayWidth, int height);
     /** @brief Calculates image variance, useful to know if a thumbnail is interesting. 
@@ -91,15 +88,12 @@ public slots:
     static uint imageVariance(QImage image);
 
 private slots:
-    void slotAudioThumbOver();
-    void slotCreateAudioThumbs();
 #if KDE_IS_VERSION(4,5,0)
     /** @brief Fetch all requested frames. */ 
     void slotGetIntraThumbs();
 #endif
 
 private:
-    QFuture<void> m_audioThumbProducer;
     KUrl m_url;
     QString m_thumbFile;
     double m_dar;
@@ -109,13 +103,6 @@ private:
     QString m_id;
     /** @brief Controls the intra frames thumbnails process (cached thumbnails). */
     QFuture<void> m_intra;
-    QFile m_audioThumbFile;
-    bool m_stopAudioThumbs;
-    double m_frame;
-    double m_frameLength;
-    int m_frequency;
-    int m_channels;
-    int m_arrayWidth;
     /** @brief List of frame numbers from which we want to extract thumbnails. */
     QList <int> m_intraFramesQueue;
     QMutex m_mutex;