1 | /* -*- C++ -*- |
2 | This file declares the WorkingHardState class. |
3 | |
4 | SPDX-FileCopyrightText: 2005-2013 Mirko Boehm <mirko@kde.org> |
5 | |
6 | SPDX-License-Identifier: LGPL-2.0-or-later |
7 | |
8 | $Id: WorkingHardState.h 32 2005-08-17 08:38:01Z mirko $ |
9 | */ |
10 | |
11 | #ifndef WorkingHardState_H |
12 | #define WorkingHardState_H |
13 | |
14 | #include "weaver.h" |
15 | #include "weaverimplstate.h" |
16 | |
17 | namespace ThreadWeaver |
18 | { |
19 | /* |
20 | * WorkingHardState handles the state dependent calls in the state where |
21 | * jobs are executed. |
22 | */ |
23 | class WorkingHardState : public WeaverImplState |
24 | { |
25 | public: |
26 | /*! |
27 | */ |
28 | explicit WorkingHardState(Weaver *weaver); |
29 | /*! Suspend job processing. */ |
30 | void suspend() override; |
31 | /*! Resume job processing. */ |
32 | void resume() override; |
33 | /*! Assign a job to an idle thread. */ |
34 | JobPointer applyForWork(Thread *th, bool wasBusy) override; |
35 | /*! Overload. */ |
36 | void activated() override; |
37 | /*! reimpl */ |
38 | StateId stateId() const override; |
39 | }; |
40 | |
41 | } |
42 | |
43 | #endif // WorkingHardIState_H |
44 | |