File indexing completed on 2024-06-23 05:49:21

0001 /*
0002     This file is part of the Kasten Framework, made within the KDE community.
0003 
0004     SPDX-FileCopyrightText: 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_ABSTRACTMODELDATAGENERATOR_P_HPP
0010 #define KASTEN_ABSTRACTMODELDATAGENERATOR_P_HPP
0011 
0012 #include "abstractmodeldatagenerator.hpp"
0013 
0014 namespace Kasten {
0015 
0016 class AbstractModelDataGeneratorPrivate
0017 {
0018 public:
0019     explicit AbstractModelDataGeneratorPrivate(AbstractModelDataGenerator* parent,
0020                                                const QString& typeName, const QString& mimeType,
0021                                                AbstractModelDataGenerator::Flags flags);
0022     AbstractModelDataGeneratorPrivate(const AbstractModelDataGeneratorPrivate&) = delete;
0023 
0024     virtual ~AbstractModelDataGeneratorPrivate();
0025 
0026     AbstractModelDataGeneratorPrivate& operator=(const AbstractModelDataGeneratorPrivate&) = delete;
0027 
0028 public:
0029     const QString& typeName() const;
0030     const QString& mimeType() const;
0031     AbstractModelDataGenerator::Flags flags() const;
0032 
0033 protected:
0034     AbstractModelDataGenerator* const q_ptr;
0035 
0036     const QString mTypeName;
0037     const QString mMimeType;
0038     AbstractModelDataGenerator::Flags mFlags;
0039 };
0040 
0041 inline AbstractModelDataGeneratorPrivate::AbstractModelDataGeneratorPrivate(AbstractModelDataGenerator* parent,
0042                                                                             const QString& typeName, const QString& mimeType, AbstractModelDataGenerator::Flags flags)
0043     : q_ptr(parent)
0044     , mTypeName(typeName)
0045     , mMimeType(mimeType)
0046     , mFlags(flags)
0047 {}
0048 
0049 inline AbstractModelDataGeneratorPrivate::~AbstractModelDataGeneratorPrivate() = default;
0050 
0051 inline const QString& AbstractModelDataGeneratorPrivate::typeName() const { return mTypeName; }
0052 inline const QString& AbstractModelDataGeneratorPrivate::mimeType() const { return mMimeType; }
0053 inline AbstractModelDataGenerator::Flags AbstractModelDataGeneratorPrivate::flags() const { return mFlags; }
0054 
0055 }
0056 
0057 #endif