#ifndef DUST3D_APPLICATION_DOCUMENT_SAVER_H_ #define DUST3D_APPLICATION_DOCUMENT_SAVER_H_ #include #include #include #include #include #include #include class DocumentSaver : public QObject { Q_OBJECT public: DocumentSaver(const QString *filename, dust3d::Snapshot *snapshot, QByteArray *turnaroundPngByteArray); ~DocumentSaver(); static bool save(const QString *filename, dust3d::Snapshot *snapshot, const QByteArray *turnaroundPngByteArray); static void collectUsedResourceIds(const dust3d::Snapshot *snapshot, std::set &imageIds); signals: void finished(); public slots: void process(); private: const QString *m_filename = nullptr; dust3d::Snapshot *m_snapshot = nullptr; QByteArray *m_turnaroundPngByteArray = nullptr; }; #endif