Qx v0.5.8
Qt Extensions Library
Loading...
Searching...
No Matches
qx-processwaiter_linux.h
1#ifndef QX_PROCCESSBIDER_P_LINUX_H
2#define QX_PROCCESSBIDER_P_LINUX_H
3
4// Qt Includes
5#include <QObject>
6
7// Inter-component Includes
8#include "qx-processwaiter.h"
9
10namespace Qx
11{
14class ProcessPollerManager;
15
16class ProcessWaiter : public AbstractProcessWaiter
17{
18 Q_OBJECT
19
20//-Instance Members------------------------------------------------------------------------------------------
21private:
22 std::chrono::milliseconds mPollRate;
23 bool mWaiting;
24
25//-Constructor----------------------------------------------------------------------------------------------
26public:
27 explicit ProcessWaiter(QObject* parent);
28
29//-Class Functions----------------------------------------------------------------------------------------------
30private:
31 static ProcessPollerManager* pollerManager();
32
33//-Instance Functions----------------------------------------------------------------------------------------------
34private:
35 void closeImpl(std::chrono::milliseconds timeout, bool force) override;
36
37public:
38 quint32 id() const;
39 void setPollRate(std::chrono::milliseconds rate);
40 std::chrono::milliseconds pollRate() const;
41 bool wait() override;
42 bool isWaiting() const override;
43
44//-Slots------------------------------------------------------------------------------------------------------------
45public slots:
46 void handleProcessSignaled() override;
47};
48
50}
51
52#endif // QX_PROCCESSBIDER_P_LINUX_H
The Qx namespace is the main namespace through which all non-global functionality of the Qx library i...
Definition qx-processwaiter.cpp:5