/* This file is part of the KFileMetaData project SPDX-FileCopyrightText: 2016 Varun Joshi SPDX-FileCopyrightText: 2016 Vishesh Handa SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL */ #ifndef _KFILEMETADATA_WRITEDATA_H #define _KFILEMETADATA_WRITEDATA_H #include "kfilemetadata_export.h" #include #include #include #include "embeddedimagedata.h" #include "properties.h" #include "types.h" namespace KFileMetaData { class WriteDataPrivate; /** * \class WriteData writedata.h * * \brief The WriteData class stores all the data to be written to a file. */ class KFILEMETADATA_EXPORT WriteData { public: WriteData(const QString& url, const QString& mimetype); WriteData(const WriteData& rhs); virtual ~WriteData(); WriteData& operator=(const WriteData& rhs); bool operator==(const WriteData& rhs) const; QString inputUrl() const; QString inputMimetype() const; void add(Property::Property property, const QVariant& value); void addImageData(const QMap& images); /// @since 5.89 PropertyMultiMap properties() const; QMap imageData() const; private: std::unique_ptr d_ptr; Q_DECLARE_PRIVATE(WriteData) }; } #endif // _KFILEMETADATA_WRITEDATA_H