X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;ds=sidebyside;f=src%2Fdocclipbase.h;h=288b3d453a6697133f34be271da0471303b1b4d9;hb=880efc8572a7df65453dfb5736de6455fe129a86;hp=2f52b72547f976d18f385cac2e8471f25000b29a;hpb=c42a026234a44a2d766e57bc64a6ac7bbd094000;p=kdenlive diff --git a/src/docclipbase.h b/src/docclipbase.h index 2f52b725..288b3d45 100644 --- a/src/docclipbase.h +++ b/src/docclipbase.h @@ -110,7 +110,7 @@ Q_OBJECT public: } /** Sets producers for the current clip (one for each track due to a limitation in MLT's track mixing */ - void setProducer(Mlt::Producer *producer); + void setProducer(Mlt::Producer *producer, bool reset = false); /** Retrieve a producer for a track */ Mlt::Producer *producer(int track = -1); /** Retrieve the producer that shows only video */ @@ -147,7 +147,7 @@ Q_OBJECT public: bool hasFileSize() const; /** Returns the filesize, or 0 if there is no appropriate filesize. */ - uint fileSize() const; + qulonglong fileSize() const; /** Returns true if this clip refers to the clip passed in. A clip refers to another clip if * it uses it as part of it's own composition. */ @@ -164,7 +164,7 @@ Q_OBJECT public: /** Cache for every audio Frame with 10 Bytes */ /** format is frame -> channel ->bytes */ - QMap > audioFrameChache; + QMap > m_audioFrameCache; /** Free cache data */ void slotClearAudioCache(); @@ -173,6 +173,7 @@ Q_OBJECT public: void refreshThumbUrl(); const char *producerProperty(const char *name) const; void setProducerProperty(const char *name, const char *data); + void clearProducers(); void deleteProducers(); /** Set default play zone for clip monitor */ @@ -180,10 +181,18 @@ Q_OBJECT public: /** Get default play zone for clip monitor */ QPoint zone() const; + /** Returns true is clip is missing but user wants to keep it as placeholder */ + bool isPlaceHolder() const; + static QString getHash(const QString &path); + + void addCutZone(int in, int out); + bool hasCutZone(QPoint p) const; + void removeCutZone(int in, int out); + QList cutZones() const; + void updateCutZone(int oldin, int oldout, int in, int out); + private: // Private attributes - /** A description of this clip */ - QString m_description; /** The number of times this clip is used in the project - the number of references to this clip * that exist. */ uint m_refcount; @@ -205,6 +214,12 @@ private: // Private attributes /** a unique numeric id */ QString m_id; + + /** Wheter the clip is a placeholder (clip missing but user wants to see it) */ + bool m_placeHolder; + + QList m_cutZones; + void setAudioThumbCreated(bool isDone); /** Holds clip infos like fps, size,... */ QMap m_properties; @@ -214,6 +229,7 @@ private: // Private attributes void slotCreateAudioTimer(); void slotRefreshProducer(); void setProducerProperty(const char *name, int data); + void setProducerProperty(const char *name, double data); void getFileHash(const QString url); public slots: