File indexing completed on 2025-03-09 05:20:52
0001 /* 0002 This file is part of the Kasten Framework, made within the KDE community. 0003 0004 SPDX-FileCopyrightText: 2008-2009 Friedrich W. H. Kossebau <kossebau@kde.org> 0005 0006 SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL 0007 */ 0008 0009 #ifndef KASTEN_MODELENCODERFILESYSTEMEXPORTER_HPP 0010 #define KASTEN_MODELENCODERFILESYSTEMEXPORTER_HPP 0011 0012 // lib 0013 #include "abstractmodelexporter.hpp" 0014 0015 namespace Kasten { 0016 0017 class AbstractModelStreamEncoder; 0018 0019 class ModelEncoderFileSystemExporterPrivate; 0020 0021 class KASTENCORE_EXPORT ModelEncoderFileSystemExporter : public AbstractModelExporter 0022 { 0023 Q_OBJECT 0024 0025 public: 0026 explicit ModelEncoderFileSystemExporter(AbstractModelStreamEncoder* encoder); 0027 0028 ~ModelEncoderFileSystemExporter() override; 0029 0030 public: 0031 AbstractModelStreamEncoder* encoder() const; 0032 0033 public: // AbstractModelExporter API 0034 AbstractExportJob* startExport(AbstractModel* model, const AbstractModelSelection* selection, 0035 const QUrl& url) override; 0036 QString modelTypeName(AbstractModel* model, const AbstractModelSelection* selection) const override; 0037 0038 private: 0039 Q_DECLARE_PRIVATE(ModelEncoderFileSystemExporter) 0040 }; 0041 0042 } 0043 0044 #endif