Warning, file /graphics/kphotoalbum/BackgroundTaskManager/JobInterface.h was not indexed or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).

0001 // SPDX-FileCopyrightText: 2012-2022 Jesper K. Pedersen <blackie@kde.org>
0002 //
0003 // SPDX-License-Identifier: GPL-2.0-or-later
0004 
0005 #ifndef JOBINTERFACE_H
0006 #define JOBINTERFACE_H
0007 
0008 #include "JobInfo.h"
0009 
0010 #include <QObject>
0011 
0012 namespace BackgroundTaskManager
0013 {
0014 
0015 class JobInterface : public JobInfo
0016 {
0017     Q_OBJECT
0018 public:
0019     explicit JobInterface(BackgroundTaskManager::Priority);
0020     ~JobInterface() override;
0021     void start();
0022     void addDependency(JobInterface *job);
0023 
0024 protected:
0025     virtual void execute() = 0;
0026 
0027 Q_SIGNALS:
0028     void completed();
0029 
0030 private Q_SLOTS:
0031     void dependedJobCompleted();
0032 
0033 private:
0034     int m_dependencies;
0035 };
0036 
0037 }
0038 
0039 #endif // JOBINTERFACE_H
0040 // vi:expandtab:tabstop=4 shiftwidth=4: