File indexing completed on 2024-05-12 04:54:04

0001 /*
0002     SPDX-FileCopyrightText: 2017 Nicolas Carion
0003     SPDX-License-Identifier: GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL
0004 */
0005 
0006 #pragma once
0007 
0008 #include <QDateTime>
0009 #include <QUuid>
0010 #include <QtCore/QString>
0011 #include <QtCore/QStringList>
0012 #include <memory>
0013 #include <mlt++/MltTractor.h>
0014 
0015 class TimelineItemModel;
0016 class ProjectItemModel;
0017 class QProgressDialog;
0018 
0019 /** @brief This function can be used to construct a TimelineModel object from a Mlt object hierarchy
0020  */
0021 
0022 bool loadProjectBin(Mlt::Tractor tractor, const QUuid &activeUuid);
0023 void checkProjectWarnings();
0024 
0025 bool constructTimelineFromMelt(const std::shared_ptr<TimelineItemModel> &timeline, Mlt::Tractor mlt_timeline, const QString &originalDecimalPoint = QString(),
0026                                const QString &chunks = QString(), bool enablePreview = false, bool *projectErrors = nullptr);
0027 
0028 bool constructTimelineFromTractor(const std::shared_ptr<TimelineItemModel> &timeline, const std::shared_ptr<ProjectItemModel> &projectModel,
0029                                   Mlt::Tractor tractor, const QString &originalDecimalPoint, const QString &chunks = QString(),
0030                                   const QString &dirty = QString(), bool enablePreview = false);