/* === This file is part of Calamares - === * * SPDX-FileCopyrightText: 2014 Teo Mrnjavac * SPDX-License-Identifier: GPL-3.0-or-later * * Calamares is Free Software: see the License-Identifier above. * */ #ifndef CALAMARES_PYTHONJOBMODULE_H #define CALAMARES_PYTHONJOBMODULE_H #include "DllMacro.h" #include "modulesystem/Module.h" namespace Calamares { class UIDLLEXPORT PythonJobModule : public Module { public: Type type() const override; Interface interface() const override; void loadSelf() override; JobList jobs() const override; protected: void initFrom( const ModuleSystem::Descriptor& moduleDescriptor ) override; private: explicit PythonJobModule(); virtual ~PythonJobModule() override; QString m_scriptFileName; QString m_workingPath; job_ptr m_job; friend Module* Calamares::moduleFromDescriptor( const ModuleSystem::Descriptor& moduleDescriptor, const QString& instanceId, const QString& configFileName, const QString& moduleDirectory ); }; } // namespace Calamares #endif // CALAMARES_PYTHONJOBMODULE_H