File indexing completed on 2024-05-05 16:09:02

0001 /*
0002     This file is part of the KFileMetaData project
0003     SPDX-FileCopyrightText: 2016 Varun Joshi <varunj.1011@gmail.com>
0004 
0005     SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL
0006 */
0007 
0008 #ifndef EXTERNALEXTRACTOR_H
0009 #define EXTERNALEXTRACTOR_H
0010 
0011 #include "extractorplugin.h"
0012 
0013 namespace KFileMetaData {
0014 class ExternalExtractorPrivate;
0015 class ExternalExtractor : public ExtractorPlugin
0016 {
0017 
0018     Q_OBJECT
0019 
0020 public:
0021     explicit ExternalExtractor(QObject* parent = nullptr);
0022     explicit ExternalExtractor(const QString& pluginPath);
0023     ~ExternalExtractor() override;
0024 
0025     QStringList mimetypes() const override;
0026     void extract(ExtractionResult* result) override;
0027 
0028 private:
0029     std::unique_ptr<ExternalExtractorPrivate> d_ptr;
0030     Q_DECLARE_PRIVATE(ExternalExtractor)
0031 };
0032 }
0033 
0034 #endif // EXTERNALEXTRACTOR_H