File indexing completed on 2024-05-05 08:04:29
0001 /* -*- C++ -*- 0002 A dependency between jobs. 0003 0004 SPDX-FileCopyrightText: 2005-2013 Mirko Boehm <mirko@kde.org> 0005 0006 SPDX-License-Identifier: LGPL-2.0-or-later 0007 */ 0008 0009 #ifndef DEPENDENCY_H 0010 #define DEPENDENCY_H 0011 0012 #include "jobpointer.h" 0013 0014 namespace ThreadWeaver 0015 { 0016 class JobInterface; 0017 0018 class THREADWEAVER_EXPORT Dependency 0019 { 0020 public: 0021 explicit Dependency(const JobPointer &dependent, const JobPointer &dependee); 0022 explicit Dependency(JobInterface *dependent, JobInterface *dependee); 0023 explicit Dependency(const JobPointer &dependent, JobInterface *dependee); 0024 explicit Dependency(JobInterface *dependent, const JobPointer &dependee); 0025 0026 JobPointer dependent() const; 0027 JobPointer dependee() const; 0028 0029 private: 0030 const JobPointer m_dependent; 0031 const JobPointer m_dependee; 0032 }; 0033 0034 } 0035 0036 #endif // DEPENDENCY_H