KFileMetaData 5.109.0
writedata.h
1/*
2 This file is part of the KFileMetaData project
3 SPDX-FileCopyrightText: 2016 Varun Joshi <varunj.1011@gmail.com>
4 SPDX-FileCopyrightText: 2016 Vishesh Handa <me@vhanda.in>
5
6 SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL
7*/
8
9#ifndef _KFILEMETADATA_WRITEDATA_H
10#define _KFILEMETADATA_WRITEDATA_H
11
12#include "kfilemetadata_export.h"
13
14#include <QString>
15#include <QMultiMap>
16#include <QVariant>
17
18#include "embeddedimagedata.h"
19#include "properties.h"
20#include "types.h"
21
22namespace KFileMetaData {
23class WriteDataPrivate;
27class KFILEMETADATA_EXPORT WriteData
28{
29public:
30 WriteData(const QString& url, const QString& mimetype);
31 WriteData(const WriteData& rhs);
32 virtual ~WriteData();
33 WriteData& operator=(const WriteData& rhs);
34 bool operator==(const WriteData& rhs) const;
35
36 QString inputUrl() const;
37
38 QString inputMimetype() const;
39
40 void add(Property::Property property, const QVariant& value);
41 void addImageData(const QMap<EmbeddedImageData::ImageType, QByteArray>& images);
42
44 PropertyMultiMap properties() const;
45
46#if KFILEMETADATA_ENABLE_DEPRECATED_SINCE(5, 89)
48 KFILEMETADATA_DEPRECATED_VERSION(5, 89, "Use properties() instead")
49 QMap<Property::Property, QVariant> getAllProperties() const;
50#endif
51
52 QMap<EmbeddedImageData::ImageType, QByteArray> imageData() const;
53
54private:
55 std::unique_ptr<WriteDataPrivate> d_ptr;
56 Q_DECLARE_PRIVATE(WriteData)
57};
58}
59
60#endif // _KFILEMETADATA_WRITEDATA_H
<KFileMetaData/Properties>