KFileMetaData

extractor.h
1 /*
2  SPDX-FileCopyrightText: 2014 Vishesh Handa <[email protected]>
3 
4  SPDX-License-Identifier: LGPL-2.1-or-later
5 */
6 
7 #ifndef KFILEMETADATA_EXTRACTOR_H
8 #define KFILEMETADATA_EXTRACTOR_H
9 
10 #include "kfilemetadata_export.h"
11 #include <QStringList>
12 #include <QVariantMap>
13 
14 namespace KFileMetaData {
15 
16 class ExtractionResult;
17 class ExtractorCollection;
18 class ExtractorPlugin;
19 
23 class KFILEMETADATA_EXPORT Extractor
24 {
25  class ExtractorPrivate;
26 
27  enum ExtractorPluginOwnership {
28  AutoDeletePlugin,
29  DoNotDeletePlugin,
30  };
31 
32 public:
33  Extractor(Extractor&&);
34  virtual ~Extractor() noexcept;
35 
36  void extract(ExtractionResult* result);
37  QStringList mimetypes() const;
38  QVariantMap extractorProperties() const;
39 
40 private:
41  Extractor();
42  Extractor(const Extractor&);
43 
44  void operator =(const Extractor&);
45 
46  void setExtractorPlugin(ExtractorPlugin *extractorPlugin);
47 
48  void setAutoDeletePlugin(ExtractorPluginOwnership autoDelete);
49 
50  void setMetaData(const QVariantMap &metaData);
51 
52  ExtractorPrivate *d;
53  friend class ExtractorCollection;
54 };
55 }
56 
57 #endif // KFILEMETADATA_EXTRACTOR_H
This file is part of the KDE documentation.
Documentation copyright © 1996-2020 The KDE developers.
Generated on Sun Aug 9 2020 22:56:15 by doxygen 1.8.11 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.