1// Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB).
2// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
3
4#ifndef QT3DINPUT_QABSTRACTPHYSICALDEVICE_P_H
5#define QT3DINPUT_QABSTRACTPHYSICALDEVICE_P_H
6
7//
8// W A R N I N G
9// -------------
10//
11// This file is not part of the Qt API. It exists for the convenience
12// of other Qt classes. This header file may change from version to
13// version without notice, or even be removed.
14//
15// We mean it.
16//
17
18#include <Qt3DInput/qt3dinput_global.h>
19#include <QtCore/qhash.h>
20#include <QtCore/qlist.h>
21#include <QtCore/qmutex.h>
22
23#include <Qt3DInput/private/qt3dinput_global_p.h>
24#include <Qt3DCore/private/qnode_p.h>
25
26QT_BEGIN_NAMESPACE
27
28namespace Qt3DInput {
29
30class QAxisSetting;
31
32class Q_3DINPUTSHARED_PRIVATE_EXPORT QAbstractPhysicalDevicePrivate : public Qt3DCore::QNodePrivate
33{
34public:
35 QAbstractPhysicalDevicePrivate();
36 ~QAbstractPhysicalDevicePrivate();
37
38 Q_DECLARE_PUBLIC(QAbstractPhysicalDevice)
39 QList<QAxisSetting *> m_axisSettings;
40 QHash<QString, int> m_axesHash;
41 QHash<QString, int> m_buttonsHash;
42
43 QList<QPair<int, qreal>> m_pendingAxisEvents;
44 QList<QPair<int, qreal>> m_pendingButtonsEvents;
45
46 void postAxisEvent(int axis, qreal value);
47 void postButtonEvent(int button, qreal value);
48};
49
50}
51
52QT_END_NAMESPACE
53
54#endif // QT3DINPUT_QABSTRACTPHYSICALDEVICE_P_H
55
56

source code of qt3d/src/input/frontend/qabstractphysicaldevice_p.h