diff options
author | Marc Mutz <marc.mutz@kdab.com> | 2016-08-16 10:01:05 +0200 |
---|---|---|
committer | Marc Mutz <marc.mutz@kdab.com> | 2016-09-03 05:07:28 +0000 |
commit | 7f801ed73a3b9e9098fafed64c21e98ae7d73dff (patch) | |
tree | 04576916fc6d1b967f6b4a975b61b7c926a74865 /src/plugins/generic | |
parent | 7fb34481617cb1a283082cb12885dd3f625e77a2 (diff) |
tuiotouch: clean up
- order includes from most specific to most general
- include only what you need
- port uses of inefficient QLists to QVector
(required adding default ctors to the payload types)
- mark types as Q_MOVABLE_TYPE
- inline some trivial functions
- add explicit to ctors
- mark plugin with QT_NO_FOREACH
Change-Id: I7ae13141ece22bfdf49be42deb0987d51da2d72b
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
Reviewed-by: Robin Burchell <robin.burchell@viroteck.net>
Diffstat (limited to 'src/plugins/generic')
-rw-r--r-- | src/plugins/generic/tuiotouch/qoscbundle.cpp | 23 | ||||
-rw-r--r-- | src/plugins/generic/tuiotouch/qoscbundle_p.h | 19 | ||||
-rw-r--r-- | src/plugins/generic/tuiotouch/qoscmessage.cpp | 25 | ||||
-rw-r--r-- | src/plugins/generic/tuiotouch/qoscmessage_p.h | 18 | ||||
-rw-r--r-- | src/plugins/generic/tuiotouch/qtuiocursor_p.h | 1 | ||||
-rw-r--r-- | src/plugins/generic/tuiotouch/qtuiohandler.cpp | 23 | ||||
-rw-r--r-- | src/plugins/generic/tuiotouch/qtuiotoken_p.h | 1 | ||||
-rw-r--r-- | src/plugins/generic/tuiotouch/tuiotouch.pro | 1 |
8 files changed, 53 insertions, 58 deletions
diff --git a/src/plugins/generic/tuiotouch/qoscbundle.cpp b/src/plugins/generic/tuiotouch/qoscbundle.cpp index 6ddca9b09d..b84ae39aca 100644 --- a/src/plugins/generic/tuiotouch/qoscbundle.cpp +++ b/src/plugins/generic/tuiotouch/qoscbundle.cpp @@ -38,17 +38,20 @@ ** ****************************************************************************/ +#include "qoscbundle_p.h" +#include "qtuio_p.h" + #include <QtEndian> #include <QDebug> #include <QLoggingCategory> -#include "qoscbundle_p.h" -#include "qtuio_p.h" QT_BEGIN_NAMESPACE Q_LOGGING_CATEGORY(lcTuioBundle, "qt.qpa.tuio.bundle") +QOscBundle::QOscBundle() {} + // TUIO packets are transmitted using the OSC protocol, located at: // http://opensoundcontrol.org/specification // Snippets of this specification have been pasted into the source as a means of @@ -172,21 +175,5 @@ QOscBundle::QOscBundle(const QByteArray &data) } } - -bool QOscBundle::isValid() const -{ - return m_isValid; -} - -QList<QOscBundle> QOscBundle::bundles() const -{ - return m_bundles; -} - -QList<QOscMessage> QOscBundle::messages() const -{ - return m_messages; -} - QT_END_NAMESPACE diff --git a/src/plugins/generic/tuiotouch/qoscbundle_p.h b/src/plugins/generic/tuiotouch/qoscbundle_p.h index e95a202ae7..cb3ec4d251 100644 --- a/src/plugins/generic/tuiotouch/qoscbundle_p.h +++ b/src/plugins/generic/tuiotouch/qoscbundle_p.h @@ -43,25 +43,32 @@ #include "qoscmessage_p.h" +#include <QtCore/QVector> + QT_BEGIN_NAMESPACE +class QByteArray; + class QOscBundle { + QOscBundle(); // for QVector, don't use + friend class QVector<QOscBundle>; public: - QOscBundle(const QByteArray &data); + explicit QOscBundle(const QByteArray &data); - bool isValid() const; - QList<QOscBundle> bundles() const; - QList<QOscMessage> messages() const; + bool isValid() const { return m_isValid; } + QVector<QOscBundle> bundles() const { return m_bundles; } + QVector<QOscMessage> messages() const { return m_messages; } private: bool m_isValid; bool m_immediate; quint32 m_timeEpoch; quint32 m_timePico; - QList<QOscBundle> m_bundles; - QList<QOscMessage> m_messages; + QVector<QOscBundle> m_bundles; + QVector<QOscMessage> m_messages; }; +Q_DECLARE_TYPEINFO(QOscBundle, Q_MOVABLE_TYPE); QT_END_NAMESPACE diff --git a/src/plugins/generic/tuiotouch/qoscmessage.cpp b/src/plugins/generic/tuiotouch/qoscmessage.cpp index 6f82cd784b..b2004903bd 100644 --- a/src/plugins/generic/tuiotouch/qoscmessage.cpp +++ b/src/plugins/generic/tuiotouch/qoscmessage.cpp @@ -38,19 +38,19 @@ ** ****************************************************************************/ -#include <QByteArray> +#include "qoscmessage_p.h" +#include "qtuio_p.h" + #include <QDebug> #include <QtEndian> -#include <QVariant> #include <QLoggingCategory> -#include "qoscmessage_p.h" -#include "qtuio_p.h" - QT_BEGIN_NAMESPACE Q_LOGGING_CATEGORY(lcTuioMessage, "qt.qpa.tuio.message") +QOscMessage::QOscMessage() {} + // TUIO packets are transmitted using the OSC protocol, located at: // http://opensoundcontrol.org/specification // Snippets of this specification have been pasted into the source as a means of @@ -125,20 +125,5 @@ QOscMessage::QOscMessage(const QByteArray &data) qCDebug(lcTuioMessage) << "Message with address pattern: " << addressPattern << " arguments: " << arguments; } -bool QOscMessage::isValid() const -{ - return m_isValid; -} - -QByteArray QOscMessage::addressPattern() const -{ - return m_addressPattern; -} - -QList<QVariant> QOscMessage::arguments() const -{ - return m_arguments; -} - QT_END_NAMESPACE diff --git a/src/plugins/generic/tuiotouch/qoscmessage_p.h b/src/plugins/generic/tuiotouch/qoscmessage_p.h index 788a03e504..76d40ceb18 100644 --- a/src/plugins/generic/tuiotouch/qoscmessage_p.h +++ b/src/plugins/generic/tuiotouch/qoscmessage_p.h @@ -41,22 +41,32 @@ #ifndef QOSCMESSAGE_P_H #define QOSCMESSAGE_P_H +#include <QtCore/QByteArray> +#include <QtCore/QVariant> +#include <QtCore/QVector> +#include <QtCore/QList> + + QT_BEGIN_NAMESPACE class QOscMessage { + QOscMessage(); // for QVector, don't use + friend class QVector<QOscMessage>; public: - QOscMessage(const QByteArray &data); - bool isValid() const; + explicit QOscMessage(const QByteArray &data); + + bool isValid() const { return m_isValid; } - QByteArray addressPattern() const; - QList<QVariant> arguments() const; + QByteArray addressPattern() const { return m_addressPattern; } + QList<QVariant> arguments() const { return m_arguments; } private: bool m_isValid; QByteArray m_addressPattern; QList<QVariant> m_arguments; }; +Q_DECLARE_TYPEINFO(QOscMessage, Q_MOVABLE_TYPE); QT_END_NAMESPACE diff --git a/src/plugins/generic/tuiotouch/qtuiocursor_p.h b/src/plugins/generic/tuiotouch/qtuiocursor_p.h index 2ff762b836..46134e6f3f 100644 --- a/src/plugins/generic/tuiotouch/qtuiocursor_p.h +++ b/src/plugins/generic/tuiotouch/qtuiocursor_p.h @@ -102,6 +102,7 @@ private: float m_acceleration; Qt::TouchPointState m_state; }; +Q_DECLARE_TYPEINFO(QTuioCursor, Q_MOVABLE_TYPE); // Q_PRIMITIVE_TYPE: not possible, m_state is = 1, not 0. QT_END_NAMESPACE diff --git a/src/plugins/generic/tuiotouch/qtuiohandler.cpp b/src/plugins/generic/tuiotouch/qtuiohandler.cpp index 38105fe656..26b88d6d78 100644 --- a/src/plugins/generic/tuiotouch/qtuiohandler.cpp +++ b/src/plugins/generic/tuiotouch/qtuiohandler.cpp @@ -38,19 +38,22 @@ ** ****************************************************************************/ -#include <QLoggingCategory> -#include <QRect> -#include <QWindow> -#include <QGuiApplication> -#include <QTouchDevice> -#include <qmath.h> - -#include <qpa/qwindowsysteminterface.h> +#include "qtuiohandler_p.h" #include "qtuiocursor_p.h" #include "qtuiotoken_p.h" -#include "qtuiohandler_p.h" #include "qoscbundle_p.h" +#include "qoscmessage_p.h" + +#include <qpa/qwindowsysteminterface.h> + +#include <QTouchDevice> +#include <QWindow> +#include <QGuiApplication> + +#include <QLoggingCategory> +#include <QRect> +#include <qmath.h> QT_BEGIN_NAMESPACE @@ -151,7 +154,7 @@ void QTuioHandler::processPackets() // messages. The FSEQ frame ID is incremented for each delivered bundle, // while redundant bundles can be marked using the frame sequence ID // -1." - QList<QOscMessage> messages; + QVector<QOscMessage> messages; QOscBundle bundle(datagram); if (bundle.isValid()) { diff --git a/src/plugins/generic/tuiotouch/qtuiotoken_p.h b/src/plugins/generic/tuiotouch/qtuiotoken_p.h index 5084aeed11..b784190d53 100644 --- a/src/plugins/generic/tuiotouch/qtuiotoken_p.h +++ b/src/plugins/generic/tuiotouch/qtuiotoken_p.h @@ -138,6 +138,7 @@ private: float m_angularAcceleration; Qt::TouchPointState m_state; }; +Q_DECLARE_TYPEINFO(QTuioToken, Q_MOVABLE_TYPE); // Q_PRIMITIVE_TYPE: not possible: m_id, m_classId == -1 QT_END_NAMESPACE diff --git a/src/plugins/generic/tuiotouch/tuiotouch.pro b/src/plugins/generic/tuiotouch/tuiotouch.pro index ad6a1c6876..08f7036c92 100644 --- a/src/plugins/generic/tuiotouch/tuiotouch.pro +++ b/src/plugins/generic/tuiotouch/tuiotouch.pro @@ -21,6 +21,7 @@ HEADERS += \ OTHER_FILES += \ tuiotouch.json +DEFINES += QT_NO_FOREACH PLUGIN_TYPE = generic PLUGIN_EXTENDS = - PLUGIN_CLASS_NAME = QTuioTouchPlugin |