1/* -*- C++ -*-
2 Shared pointer based jobs that are managed by the caller in ThreadWeaver.
3
4 SPDX-FileCopyrightText: 2005-2013 Mirko Boehm <mirko@kde.org>
5
6 SPDX-License-Identifier: LGPL-2.0-or-later
7*/
8
9#ifndef MANAGEDJOBPOINTER_H
10#define MANAGEDJOBPOINTER_H
11
12#include <QSharedPointer>
13
14#include "jobinterface.h"
15
16namespace ThreadWeaver
17{
18inline void doNotDeleteJob(JobInterface *)
19{
20}
21
22template<typename T>
23class ManagedJobPointer : public QSharedPointer<T>
24{
25public:
26 /*!
27 */
28 ManagedJobPointer(T *job)
29 : QSharedPointer<T>(job, doNotDeleteJob)
30 {
31 }
32};
33
34}
35
36#endif // MANAGEDJOBPOINTER_H
37

source code of threadweaver/src/managedjobpointer.h