1// qdeadlinetimer.sip generated by MetaSIP
2//
3// This file is part of the QtCore Python extension module.
4//
5// Copyright (c) 2021 Riverbank Computing Limited <info@riverbankcomputing.com>
6//
7// This file is part of PyQt5.
8//
9// This file may be used under the terms of the GNU General Public License
10// version 3.0 as published by the Free Software Foundation and appearing in
11// the file LICENSE included in the packaging of this file.  Please review the
12// following information to ensure the GNU General Public License version 3.0
13// requirements will be met: http://www.gnu.org/copyleft/gpl.html.
14//
15// If you do not wish to use this file under the terms of the GPL version 3.0
16// then you may purchase a commercial license.  For more information contact
17// info@riverbankcomputing.com.
18//
19// This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
20// WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
21
22
23%If (Qt_5_8_0 -)
24
25class QDeadlineTimer
26{
27%TypeHeaderCode
28#include <qdeadlinetimer.h>
29%End
30
31public:
32    enum ForeverConstant
33    {
34        Forever,
35    };
36
37    QDeadlineTimer(Qt::TimerType type = Qt::CoarseTimer);
38    QDeadlineTimer(QDeadlineTimer::ForeverConstant, Qt::TimerType type = Qt::CoarseTimer);
39    QDeadlineTimer(qint64 msecs, Qt::TimerType type = Qt::CoarseTimer);
40    void swap(QDeadlineTimer &other /Constrained/);
41    bool isForever() const;
42    bool hasExpired() const;
43    Qt::TimerType timerType() const;
44    void setTimerType(Qt::TimerType type);
45    qint64 remainingTime() const;
46    qint64 remainingTimeNSecs() const;
47    void setRemainingTime(qint64 msecs, Qt::TimerType type = Qt::CoarseTimer);
48    void setPreciseRemainingTime(qint64 secs, qint64 nsecs = 0, Qt::TimerType type = Qt::CoarseTimer);
49    qint64 deadline() const;
50    qint64 deadlineNSecs() const;
51    void setDeadline(qint64 msecs, Qt::TimerType type = Qt::CoarseTimer);
52    void setPreciseDeadline(qint64 secs, qint64 nsecs = 0, Qt::TimerType type = Qt::CoarseTimer);
53    static QDeadlineTimer addNSecs(QDeadlineTimer dt, qint64 nsecs);
54    static QDeadlineTimer current(Qt::TimerType type = Qt::CoarseTimer);
55    QDeadlineTimer &operator+=(qint64 msecs);
56    QDeadlineTimer &operator-=(qint64 msecs);
57};
58
59%End
60%If (Qt_5_8_0 -)
61bool operator==(QDeadlineTimer d1, QDeadlineTimer d2);
62%End
63%If (Qt_5_8_0 -)
64bool operator!=(QDeadlineTimer d1, QDeadlineTimer d2);
65%End
66%If (Qt_5_8_0 -)
67bool operator<(QDeadlineTimer d1, QDeadlineTimer d2);
68%End
69%If (Qt_5_8_0 -)
70bool operator<=(QDeadlineTimer d1, QDeadlineTimer d2);
71%End
72%If (Qt_5_8_0 -)
73bool operator>(QDeadlineTimer d1, QDeadlineTimer d2);
74%End
75%If (Qt_5_8_0 -)
76bool operator>=(QDeadlineTimer d1, QDeadlineTimer d2);
77%End
78%If (Qt_5_8_0 -)
79QDeadlineTimer operator+(QDeadlineTimer dt, qint64 msecs);
80%End
81%If (Qt_5_8_0 -)
82QDeadlineTimer operator+(qint64 msecs, QDeadlineTimer dt);
83%End
84%If (Qt_5_8_0 -)
85QDeadlineTimer operator-(QDeadlineTimer dt, qint64 msecs);
86%End
87%If (Qt_5_8_0 -)
88qint64 operator-(QDeadlineTimer dt1, QDeadlineTimer dt2);
89%End
90