diff --git a/debian/DEBIAN/.postinst.swp b/debian/DEBIAN/.postinst.swp new file mode 100644 index 0000000..fb80e17 Binary files /dev/null and b/debian/DEBIAN/.postinst.swp differ diff --git a/debian/DEBIAN/control b/debian/DEBIAN/control index 84ffed3..f3c57a2 100644 --- a/debian/DEBIAN/control +++ b/debian/DEBIAN/control @@ -1,9 +1,9 @@ Package: libqt5raspi-5.12.5 -Version: 1.1 +Version: 1.2 Section: base Priority: optional Architecture: armhf -Depends: libgles2-mesa-dev (>= 19.3.2-1~bpo10+1~rpt1), libdouble-conversion-dev (>= 3.1.0-3), libxcb-icccm4 (>= 0.4.1-1.1), libxcb-image0 (>= 0.4.0-1+b2), libxcb-keysyms1 (>= 0.4.0-1+b2), libxcb-randr0 (>= 1.13.1-2), libxcb-render-util0 (>= 0.3.9-1+b1), libxcb-render0 (>= 1.13.1-2), libxcb-shm0 (>= 1.13.1-2), libxcb-xinerama0 (>= 1.13.1-2), libxkbcommon-x11-0 (>= 0.8.2-1), libxcb-xkb1 (>= 1.13.1-2) +Depends: libgles2-mesa-dev (>= 19.2.0~rc1-1~bpo10+1~rpt2), libdouble-conversion-dev (>= 3.1.0-3), libxcb-icccm4 (>= 0.4.1-1.1), libxcb-image0 (>= 0.4.0-1+b2), libxcb-keysyms1 (>= 0.4.0-1+b2), libxcb-randr0 (>= 1.13.1-2), libxcb-render-util0 (>= 0.3.9-1+b1), libxcb-render0 (>= 1.13.1-2), libxcb-shm0 (>= 1.13.1-2), libxcb-xinerama0 (>= 1.13.1-2), libxkbcommon-x11-0 (>= 0.8.2-1), libxcb-xkb1 (>= 1.13.1-2), libbluetooth-dev (>= 5.50-1.2~deb10u1+rpt2) Maintainer: Dorian Zedler Description: Qt 5.12.5 Raspberry Pi libraries This package contains pre-compiled shared Qt 5.12.5 libraries for the Raspberry Pi. diff --git a/debian/DEBIAN/postinst b/debian/DEBIAN/postinst index c33488e..7ddcc2d 100755 --- a/debian/DEBIAN/postinst +++ b/debian/DEBIAN/postinst @@ -1,6 +1,6 @@ #!/bin/sh # remove previous link -rm -f /usr/local/qt5pi +rm -rf /usr/local/qt5pi # link as default lib ln -s /usr/local/qt5raspi-5.12.5 /usr/local/qt5pi diff --git a/debian/usr/local/qt5raspi-5.12.5/bin/canbusutil b/debian/usr/local/qt5raspi-5.12.5/bin/canbusutil index da0e5a5..bbcf9dd 100755 Binary files a/debian/usr/local/qt5raspi-5.12.5/bin/canbusutil and b/debian/usr/local/qt5raspi-5.12.5/bin/canbusutil differ diff --git a/debian/usr/local/qt5raspi-5.12.5/bin/qdbus b/debian/usr/local/qt5raspi-5.12.5/bin/qdbus index 30dde1a..07bede0 100755 Binary files a/debian/usr/local/qt5raspi-5.12.5/bin/qdbus and b/debian/usr/local/qt5raspi-5.12.5/bin/qdbus differ diff --git a/debian/usr/local/qt5raspi-5.12.5/bin/qdbusviewer b/debian/usr/local/qt5raspi-5.12.5/bin/qdbusviewer index 189eff7..8c0caf6 100755 Binary files a/debian/usr/local/qt5raspi-5.12.5/bin/qdbusviewer and b/debian/usr/local/qt5raspi-5.12.5/bin/qdbusviewer differ diff --git a/debian/usr/local/qt5raspi-5.12.5/bin/qml b/debian/usr/local/qt5raspi-5.12.5/bin/qml index d69ef86..d76c4fb 100755 Binary files a/debian/usr/local/qt5raspi-5.12.5/bin/qml and b/debian/usr/local/qt5raspi-5.12.5/bin/qml differ diff --git a/debian/usr/local/qt5raspi-5.12.5/bin/qmlpreview b/debian/usr/local/qt5raspi-5.12.5/bin/qmlpreview index 1bd6d25..14b2032 100755 Binary files a/debian/usr/local/qt5raspi-5.12.5/bin/qmlpreview and b/debian/usr/local/qt5raspi-5.12.5/bin/qmlpreview differ diff --git a/debian/usr/local/qt5raspi-5.12.5/bin/qmlscene b/debian/usr/local/qt5raspi-5.12.5/bin/qmlscene index d0188f4..c358b29 100755 Binary files a/debian/usr/local/qt5raspi-5.12.5/bin/qmlscene and b/debian/usr/local/qt5raspi-5.12.5/bin/qmlscene differ diff --git a/debian/usr/local/qt5raspi-5.12.5/bin/qmltestrunner b/debian/usr/local/qt5raspi-5.12.5/bin/qmltestrunner index 33bcbe9..65fc549 100755 Binary files a/debian/usr/local/qt5raspi-5.12.5/bin/qmltestrunner and b/debian/usr/local/qt5raspi-5.12.5/bin/qmltestrunner differ diff --git a/debian/usr/local/qt5raspi-5.12.5/bin/qtdiag b/debian/usr/local/qt5raspi-5.12.5/bin/qtdiag index 3056e54..63f1f0c 100755 Binary files a/debian/usr/local/qt5raspi-5.12.5/bin/qtdiag and b/debian/usr/local/qt5raspi-5.12.5/bin/qtdiag differ diff --git a/debian/usr/local/qt5raspi-5.12.5/bin/qtpaths b/debian/usr/local/qt5raspi-5.12.5/bin/qtpaths index 3b930e9..8d2b102 100755 Binary files a/debian/usr/local/qt5raspi-5.12.5/bin/qtpaths and b/debian/usr/local/qt5raspi-5.12.5/bin/qtpaths differ diff --git a/debian/usr/local/qt5raspi-5.12.5/bin/qtplugininfo b/debian/usr/local/qt5raspi-5.12.5/bin/qtplugininfo index 8bd73ed..7afecdd 100755 Binary files a/debian/usr/local/qt5raspi-5.12.5/bin/qtplugininfo and b/debian/usr/local/qt5raspi-5.12.5/bin/qtplugininfo differ diff --git a/debian/usr/local/qt5raspi-5.12.5/bin/sdpscanner b/debian/usr/local/qt5raspi-5.12.5/bin/sdpscanner new file mode 100755 index 0000000..58bd742 Binary files /dev/null and b/debian/usr/local/qt5raspi-5.12.5/bin/sdpscanner differ diff --git a/debian/usr/local/qt5raspi-5.12.5/bin/xmlpatterns b/debian/usr/local/qt5raspi-5.12.5/bin/xmlpatterns index 6a05bae..b0cde5b 100755 Binary files a/debian/usr/local/qt5raspi-5.12.5/bin/xmlpatterns and b/debian/usr/local/qt5raspi-5.12.5/bin/xmlpatterns differ diff --git a/debian/usr/local/qt5raspi-5.12.5/bin/xmlpatternsvalidator b/debian/usr/local/qt5raspi-5.12.5/bin/xmlpatternsvalidator index b36619e..23aaa81 100755 Binary files a/debian/usr/local/qt5raspi-5.12.5/bin/xmlpatternsvalidator and b/debian/usr/local/qt5raspi-5.12.5/bin/xmlpatternsvalidator differ diff --git a/debian/usr/local/qt5raspi-5.12.5/doc/global/compat.qdocconf b/debian/usr/local/qt5raspi-5.12.5/doc/global/compat.qdocconf new file mode 100644 index 0000000..df3f49c --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/doc/global/compat.qdocconf @@ -0,0 +1,10 @@ +macro.0 = "\\\\0" +macro.n = "\\\\n" +macro.r = "\\\\r" +macro.img = "\\image" +macro.endquote = "\\endquotation" +macro.relatesto = "\\relates" + +spurious = "Missing comma in .*" \ + "Missing pattern .*" \ + "Unable to parse (QML|JavaScript).*" diff --git a/debian/usr/local/qt5raspi-5.12.5/doc/global/config.qdocconf b/debian/usr/local/qt5raspi-5.12.5/doc/global/config.qdocconf new file mode 100644 index 0000000..0b276c4 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/doc/global/config.qdocconf @@ -0,0 +1,20 @@ +#Include this file to inherit configuration related to Qt Project based modules. + +dita.metadata.default.author = Qt Project +dita.metadata.default.permissions = all +dita.metadata.default.publisher = Qt Project +dita.metadata.default.copyryear = 2019 +dita.metadata.default.copyrholder = The Qt Company Ltd +dita.metadata.default.audience = programmer + +#Set the main Qt index.html +navigation.homepage = index.html +navigation.hometitle = "Qt $QT_VER" + +sourcedirs += includes $$BUILDDIR + +url = http://doc.qt.io/qt-5 + +# Uncomment the following two lines to generate documentation marked as \internal +# alias.internal = disable +# macro.internal.HTML = "[internal]" diff --git a/debian/usr/local/qt5raspi-5.12.5/doc/global/externalsites.qdocconf b/debian/usr/local/qt5raspi-5.12.5/doc/global/externalsites.qdocconf new file mode 100644 index 0000000..46ce840 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/doc/global/externalsites.qdocconf @@ -0,0 +1,3 @@ +# Include the external websites +sourcedirs += externalsites + diff --git a/debian/usr/local/qt5raspi-5.12.5/doc/global/externalsites/external-resources.qdoc b/debian/usr/local/qt5raspi-5.12.5/doc/global/externalsites/external-resources.qdoc new file mode 100644 index 0000000..1c3d37c --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/doc/global/externalsites/external-resources.qdoc @@ -0,0 +1,503 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the documentation of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:FDL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Free Documentation License Usage +** Alternatively, this file may be used under the terms of the GNU Free +** Documentation License version 1.3 as published by the Free Software +** Foundation and appearing in the file included in the packaging of +** this file. Please review the following information to ensure +** the GNU Free Documentation License version 1.3 requirements +** will be met: https://www.gnu.org/licenses/fdl-1.3.html. +** $QT_END_LICENSE$ +** +****************************************************************************/ +/*! + \externalpage http://www.freedesktop.org/ + \title freedesktop.org +*/ + +/*! + \externalpage http://www.freedesktop.org/Standards/xembed-spec + \title XEmbed Specification +*/ + +/*! + \externalpage http://www.freedesktop.org/Standards/icon-theme-spec + \title Icon Themes Specification +*/ + +/*! + \externalpage http://www.cups.org/ + \title Common Unix Printing System (CUPS) + \keyword CUPS +*/ + +/*! + \externalpage http://www.freedesktop.org/wiki/Standards_2fdesktop_2dentry_2dspec + \title Desktop Entry Specification +*/ + +/*! + \externalpage http://www.kde.org/ + \title The K Desktop Environment + \keyword KDE +*/ + +/*! + \externalpage http://www.cmake.org/cmake/help/documentation.html + \title CMake Documentation +*/ + +/*! + \externalpage https://cmake.org/cmake/help/latest/command/find_package.html + \title CMake find_package Documentation +*/ + +/*! + \externalpage https://cmake.org/cmake/help/latest/manual/cmake-qt.7.html#automoc + \title CMake AUTOMOC Documentation +*/ + +/*! + \externalpage https://cmake.org/cmake/help/latest/manual/cmake-qt.7.html#autorcc + \title CMake AUTORCC Documentation +*/ + +/*! + \externalpage https://cmake.org/cmake/help/latest/manual/cmake-qt.7.html#autouic + \title CMake AUTOUIC Documentation +*/ + +/*! + \externalpage https://cmake.org/cmake/help/latest/prop_tgt/LOCATION.html + \title CMake LOCATION Documentation +*/ + +/*! + \externalpage https://cmake.org/cmake/help/latest/prop_tgt/POSITION_INDEPENDENT_CODE.html + \title CMake POSITION_INDEPENDENT_CODE Documentation +*/ + +/*! + \externalpage https://cmake.org/cmake/help/latest/command/target_link_libraries.html + \title CMake target_link_libraries Documentation +*/ + +/*! + \externalpage http://www.gnome.org/ + \title GNOME +*/ + +/*! + \externalpage http://www.gnu.org/software/emacs/ + \title GNU Emacs +*/ + +/*! + \externalpage http://gnuwin32.sourceforge.net/packages.html + \title GnuWin32 Project +*/ + +/*! + \externalpage http://www.w3.org/Graphics/SVG/About.html + \title About SVG + \keyword Scalable Vector Graphics +*/ + +/*! + \externalpage http://www.w3.org/TR/SVG/types.html#ColorKeywords + \title SVG color keyword names +*/ + +/*! + \externalpage http://www.w3.org/Graphics/SVG/ + \title SVG Working Group +*/ + +/*! + \externalpage http://www.w3.org/TR/SVGMobile/ + \title Mobile SVG Profiles + \omit + Mobile SVG Profiles: SVG Tiny and SVG Basic + \endomit +*/ + +/*! + \externalpage http://www.w3.org/TR/SVGMobile12/ + \title SVG 1.2 Tiny +*/ + +/*! + \externalpage http://www.w3.org/Graphics/SVG/feature/1.2/#SVG-static + \title SVG 1.2 Tiny Static Features +*/ + + + +/*! + \externalpage http://tdm-gcc.tdragon.net/ + \title TDM-GCC +*/ + +/*! + \externalpage http://www.dependencywalker.com/ + \title Dependency Walker +*/ + +/*! + \externalpage http://webkit.org/ + \title WebKit Open Source Project +*/ + +/*! + \externalpage http://www.informit.com/store/product.aspx?isbn=0132354160 + \title C++ GUI Programming with Qt 4, 2nd Edition +*/ + +/*! + \externalpage http://www.openssl.org/ + \title OpenSSL Toolkit +*/ + +/*! + \externalpage http://arora-browser.org/ + \title Arora Browser +*/ + +/*! + \externalpage http://www.activestate.com/Products/activeperl/index.mhtml + \title ActivePerl +*/ + +/*! + \externalpage https://chromium.googlesource.com/angle/angle/+/master/README.md + \title ANGLE +*/ + +/*! + \externalpage http://msdn.microsoft.com/en-us/directx/default.aspx + \title Direct X SDK +*/ + +/*! + \externalpage http://www.w3.org/TR/html401/ + \title HTML 4 +*/ + +/*! + \externalpage http://www.w3.org/TR/html5/ + \title HTML 5 +*/ + +/*! + \externalpage http://site.icu-project.org/ + \title ICU +*/ + +/*! + \externalpage https://mingw-w64.org/ + \title MinGW +*/ + +/*! + \externalpage http://www.python.org/ + \title Python +*/ + +/*! + \externalpage http://pyxml.sourceforge.net/topics/xbel/ + \title XML Bookmark Exchange Language Resource Page +*/ + +/*! + \externalpage http://www.w3.org/TR/xquery/#errors + \title error handling in the XQuery language +*/ + +/*! + \externalpage http://xaos.sourceforge.net/ + \title XaoS +*/ + +/*! + \externalpage http://www.unixodbc.org + \title http://www.unixodbc.org +*/ + +/*! + \externalpage http://www.postgresql.org + \title http://www.postgresql.org +*/ + +/*! + \externalpage http://www.postgresql.org/docs/current/static/installation-platform-notes.html#INSTALLATION-NOTES-MINGW + \title PostgreSQL MinGW/Native Windows +*/ + +/*! + \externalpage http://www.freetds.org + \title http://www.freetds.org +*/ + +/*! + \externalpage http://www.sybase.com + \title http://www.sybase.com +*/ + +/*! + \externalpage http://linux.sybase.com + \title http://linux.sybase.com +*/ + +/*! + \externalpage http://www.sqlite.org + \title http://www.sqlite.org +*/ + +/*! + \externalpage http://www.amazon.com/Threads-Primer-Guide-Multithreaded-Programming/dp/0134436989/ref=sr_1_1?ie=UTF8&qid=1354884049&sr=8-1&keywords=a+guide+to+multithreaded+programming + \title Threads Primer: A Guide to Multithreaded Programming +*/ + +/*! + \externalpage http://www.amazon.com/Thread-Time-MultiThreaded-Programming-Guide/dp/0131900676/ref=sr_1_sc_3?ie=UTF8&qid=1354884427&sr=8-3-spell&keywords=The+Mulltithread+Programming+Guide + \title Thread Time: The Multithreaded Programming Guide +*/ + +/*! + \externalpage http://www.amazon.com/Pthreads-Programming-Standard-Multiprocessing-Nutshell/dp/1565921151/ref=sr_1_1?s=books&ie=UTF8&qid=1354884565&sr=1-1&keywords=threads+Programming%3A+A+POSIX+Standard+for+Better+Multiprocessing + \title Pthreads Programming: A POSIX Standard for Better Multiprocessing +*/ + +/*! + \externalpage http://www.amazon.com/Win32-Multithreaded-Programming-Aaron-Cohen/dp/B00007GW3Z/ref=sr_1_1?s=books&ie=UTF8&qid=1354884647&sr=1-1&keywords=Win32+Multithreaded+Programming + \title Win32 Multithreaded Programming +*/ + +/*! + \externalpage http://www.phptr.com/content/images/0131872494/samplechapter/blanchette_ch10.pdf + \title "Item View Classes" Chapter of C++ GUI Programming with Qt 4 +*/ + +/*! + \externalpage https://developer.apple.com/library/mac/#documentation/UserExperience/Conceptual/AppleHIGuidelines/Intro/Intro.html + \title Mac OS X Aqua +*/ + +/*! + \externalpage http://www.kdedevelopers.org/node/2345 + \title KDE applications +*/ + +/*! + \externalpage http://cgi.netscape.com/newsref/std/cookie_spec.html + \title Netscape Cookie Specification +*/ + +/*! + \externalpage http://msdn.microsoft.com/en-us/library/ms533046(VS.85).aspx + \title Mitigating Cross-site Scripting With HTTP-only Cookies +*/ + +/*! + \externalpage http://en.tldp.org/HOWTO/Framebuffer-HOWTO.html + \title Framebuffer HOWTO +*/ + +/*! + \externalpage http://wap.trafikanten.no + \title Trafikanten +*/ + +/*! + \externalpage http://www.w3.org/TR/scxml/ + \title State Chart XML: State Machine Notation for Control Abstraction +*/ + +/*! + \externalpage http://www.wisdom.weizmann.ac.il/~dharel/SCANNED.PAPERS/Statecharts.pdf + \title Statecharts: A visual formalism for complex systems +*/ + +/*! + \externalpage http://www.gnu.org/licenses/gpl.html + \title GNU General Public License +*/ + +/*! + \externalpage http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html + \title GNU Lesser General Public License, version 2.1 +*/ + +/*! + \externalpage http://developers.sun.com/sunstudio/downloads/patches/index.jsp + \title Sun Studio Patches +*/ + +/*! + \externalpage http://www.qtcentre.org + \title Qt Centre +*/ + +/*! + \externalpage http://www.kde.org + \title KDE +*/ + +/*! + \externalpage http://www.directfb.org/index.php?path=Main%2FDownloads&page=1 + \title DirectFB - df_window example +*/ + +/*! + \externalpage http://www.directfb.org/docs/DirectFB_Reference_1_4/IDirectFBPalette.html + \title DirectFB - IDirectFBPalette +*/ + +/*! + \externalpage http://www.cplusplus.com/reference/clibrary/cstring/memcpy/ + \title C++ Reference - memcpy +*/ + +/*! + \externalpage http://www.directfb.org/docs/DirectFB_Reference_1_4/IDirectFB_CreateInputEventBuffer.html + \title DirectFB - CreateInputEventBuffer +*/ + +/*! + \externalpage http://www.directfb.org/docs/DirectFB_Reference_1_4/types.html#DFBSurfaceBlittingFlags + \title DirectFB - DFBSurfaceBlittingFlags +*/ + +/*! + \externalpage http://directfb.org/docs/DirectFB_Reference_1_4/IDirectFBImageProvider.html + \title DirectFB - IDirectFBImageProvider +*/ + +/*! + \externalpage http://www.directfb.org/docs/DirectFB_Reference_1_4/IDirectFBSurface.html + \title DirectFB - IDirectFBSurface +*/ + +/*! + \externalpage http://www.directfb.org/docs/DirectFB_Reference_1_4/IDirectFBWindow + \title DirectFB - IDirectFBWindow +*/ + +/*! + \externalpage http://www.directfb.org/docs/DirectFB_Reference_1_4/types.html#DFBSurfaceDescription + \title DirectFB - DFBSurfaceDescription +*/ + +/*! + \externalpage http://www.w3.org/TR/REC-CSS2/selector.html#q1 + \title Standard CSS2 selector +*/ + +/*! + \externalpage http://www.w3.org/XML/Core/#Publications + \title W3C XML specifications +*/ + +/*! + \externalpage http://www.w3.org/XML/Schema + \title XML Schema +*/ + +/*! + \externalpage http://opensource.org/licenses/bsd-license.php + \title New and Modified BSD Licenses +*/ + +/*! + \externalpage http://www.ecma-international.org/publications/standards/Ecma-262.htm + \title ECMAScript Language Specification +*/ + +/*! + \externalpage https://developer.mozilla.org/en/JavaScript + \title JavaScript Resources +*/ + +/*! + \externalpage https://developer.mozilla.org/en/JavaScript/Guide + \title JavaScript Guide +*/ + +/*! + \externalpage https://developer.mozilla.org/en/JavaScript/About_JavaScript + \title About JavaScript +*/ + +/*! + \externalpage http://www.libusb.org/ + \title libusb +*/ + +/*! + \externalpage https://developer.mozilla.org/en/JavaScript/Reference/Reserved_Words + \title JavaScript Reserved Words +*/ + +/*! + \externalpage http://publicsuffix.org/ + \title publicsuffix.org +*/ + +/*! + \externalpage http://accessibility.linuxfoundation.org/a11yspecs/ia2/docs/html/_accessible_event_i_d_8idl.html + \title AccessibleEventID.idl File Reference +*/ + +/*! + \externalpage http://msdn.microsoft.com/en-us/library/dd318066.aspx + \title Microsoft Active Accessibility Event Constants +*/ + +/*! + \externalpage ftp://ftp.qt-project.org/pub/qt/solutions/lgpl/qtmotifextension-2.7_1-opensource.tar.gz + \title Motif Extension +*/ + +/*! + \externalpage http://www.opengl.org/registry/ + \title OpenGL Registry +*/ + +/*! + \externalpage http://www.khronos.org/registry/gles/ + \title Khronos OpenGL ES API Registry +*/ + +/*! + \externalpage https://github.com/iksaif/qsslkey-p11 + \title qsslkey example +*/ + +/*! + \externalpage http://www.w3.org/TR/2009/WD-webdatabase-20091029/ + \title HTML5 Web Database API +*/ + +/*! + \externalpage http://lldb.llvm.org/ + \title The LLDB Debugger +*/ + +/*! + \externalpage https://login.qt.io/ + \title Qt Account Sign-up +*/ diff --git a/debian/usr/local/qt5raspi-5.12.5/doc/global/externalsites/qt-webpages.qdoc b/debian/usr/local/qt5raspi-5.12.5/doc/global/externalsites/qt-webpages.qdoc new file mode 100644 index 0000000..f17f85d --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/doc/global/externalsites/qt-webpages.qdoc @@ -0,0 +1,116 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the documentation of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:FDL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Free Documentation License Usage +** Alternatively, this file may be used under the terms of the GNU Free +** Documentation License version 1.3 as published by the Free Software +** Foundation and appearing in the file included in the packaging of +** this file. Please review the following information to ensure +** the GNU Free Documentation License version 1.3 requirements +** will be met: https://www.gnu.org/licenses/fdl-1.3.html. +** $QT_END_LICENSE$ +** +****************************************************************************/ +/*! + \externalpage http://qt.io/ + \title Qt Homepage +*/ +/*! + \externalpage http://bugreports.qt.io + \title Qt Bug Tracker +*/ +/*! + \externalpage http://qt.io/download + \title Downloads +*/ +/*! + \externalpage http://www.qt.io/about-us/ + \title The Qt Company +*/ +/*! + \externalpage http://qt.io/licensing/ + \title Qt Licensing Overview +*/ +/*! + \externalpage http://doc.qt.io/archives/qq/ + \title Qt Quarterly +*/ +/*! + \externalpage http://doc.qt.io/archives/qq/qq19-plurals.html + \title Qt Quarterly: Plural Form in Translation +*/ +/*! + \externalpage https://code.qt.io/ + \title Public Qt Repository +*/ +/*! + \externalpage https://code.qt.io/cgit/%7bnon-gerrit%7d/qt-labs/qtestlib-tools.git/ + \title qtestlib-tools +*/ + +/*! + \externalpage http://wiki.qt.io/Qt_Coding_Style + \title Qt Coding Style +*/ +/*! + \externalpage http://doc.qt.io/archives/qt-eclipse-1.6/index.html + \title Eclipse Plugin +*/ +/*! + \externalpage http://doc.qt.io/archives/qq/qq11-events.html + \title Qt Quarterly: Another Look at Events +*/ +/*! + \externalpage https://www.youtube.com/watch?v=P4kv-AoAJ-Q + \title Livecoding video effects with Qt5 +*/ +/*! + \externalpage http://blog.qt.io/2012/02/29/pimp-my-video-shader-effects-and-multimedia/ + \title Pimp my video +*/ +/*! + \externalpage http://wiki.qt.io/QtMediaHub + \title QtMediaHub +*/ +/*! + \externalpage http://wiki.qt.io/Qt_RaspberryPi + \title QtonPi +*/ + +/*! + \externalpage http://wiki.qt.io/jom + \title jom +*/ + +/*! + \externalpage http://doc.qt.io/qt-4.8 + \title Qt 4.8 Reference Documentation +*/ + +/*! + \externalpage http://doc.qt.io/qt-4.8/qtquick.html + \title Qt Quick 1 Reference Documentation +*/ + +/*! + \externalpage http://wiki.qt.io/Qt_Localization + \title external: Translating Qt Into Other Languages +*/ + +/*! + \externalpage http://wiki.qt.io/Qt_Multimedia_Backends + \title Qt Multimedia Backends +*/ diff --git a/debian/usr/local/qt5raspi-5.12.5/doc/global/externalsites/qtcreator.qdoc b/debian/usr/local/qt5raspi-5.12.5/doc/global/externalsites/qtcreator.qdoc new file mode 100644 index 0000000..98a5c9f --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/doc/global/externalsites/qtcreator.qdoc @@ -0,0 +1,583 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the documentation of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:FDL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Free Documentation License Usage +** Alternatively, this file may be used under the terms of the GNU Free +** Documentation License version 1.3 as published by the Free Software +** Foundation and appearing in the file included in the packaging of +** this file. Please review the following information to ensure +** the GNU Free Documentation License version 1.3 requirements +** will be met: https://www.gnu.org/licenses/fdl-1.3.html. +** $QT_END_LICENSE$ +** +****************************************************************************/ + +/*! + \externalpage http://doc.qt.io/qtcreator/creator-deployment-qnx.html + \title Qt Creator: Deploying Applications to QNX Neutrino Devices +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-developing-baremetal.html + \title Qt Creator: Connecting Bare Metal Devices +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-developing-qnx.html + \title Qt Creator: Connecting QNX Devices +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-developing-generic-linux.html + \title Qt Creator: Connecting Embedded Linux Devices +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-deployment-embedded-linux.html + \title Qt Creator: Deploying Applications to Embedded Linux Devices +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-faq.html + \title Qt Creator: FAQ +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-tips.html + \title Qt Creator: Tips and Tricks +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-help.html + \title Qt Creator: Using the Help Mode +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-quick-tour.html + \title Qt Creator: User Interface +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-cli.html + \title Qt Creator: Using Command Line Options +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-task-lists.html + \title Qt Creator: Showing Task List Files in Issues Pane +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-project-managing-sessions.html + \title Qt Creator: Managing Sessions +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-editor-external.html + \title Qt Creator: Using External Tools +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-version-control.html + \title Qt Creator: Using Version Control Systems +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-vcs-bazaar.html + \title Qt Creator: Using Bazaar +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-vcs-clearcase.html + \title Qt Creator: Using ClearCase +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-vcs-cvs.html + \title Qt Creator: Using CVS +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-vcs-git.html + \title Qt Creator: Using Git +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-vcs-mercurial.html + \title Qt Creator: Using Mercurial +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-vcs-perforce.html + \title Qt Creator: Using Perforce +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-vcs-subversion.html + \title Qt Creator: Using Subversion +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-keyboard-shortcuts.html + \title Qt Creator: Keyboard Shortcuts +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/qmldesigner-pathview-editor.html + \title Qt Creator: Editing PathView Properties +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/qmldesigner-connections.html + \title Qt Creator: Adding Connections +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/quick-signals.html + \title Qt Creator: Connecting Objects to Signals +*/ +* /*! + \externalpage http://doc.qt.io/qtcreator/quick-dynamic-properties.html + \title Qt Creator: Specifying Dynamic Properties +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/quick-property-bindings.html + \title Qt Creator: Adding Bindings Between Properties +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/quick-connections-backend.html + \title Qt Creator: Managing C++ Backend Objects +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/qtcreator-transitions-example.html + \title Qt Creator: Creating a Qt Quick Application +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/qtquick-iso-icon-browser.html + \title Qt Creator: Browsing ISO 7000 Icons +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/quick-export-to-qml.html + \title Qt Creator: Exporting Designs from Graphics Software +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-qml-modules-with-plugins.html + \title Qt Creator: Using QML Modules with Plugins +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-visual-editor.html + \title Qt Creator: Developing Qt Quick Applications +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-using-qt-quick-designer.html + \title Qt Creator: Editing QML Files in Design Mode +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/quick-projects.html + \title Qt Creator: Creating Qt Quick Projects +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/quick-components.html + \title Qt Creator: Creating Components +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/qt-quick-toolbars.html + \title Qt Creator: Using Qt Quick Toolbars +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/quick-buttons.html + \title Qt Creator: Creating Buttons +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/quick-scalable-image.html + \title Qt Creator: Creating Scalable Buttons and Borders +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-editor-options.html + \title Qt Creator: Configuring the Editor +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-editor-functions.html + \title Qt Creator: Writing Code +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-coding-navigating.html + \title Qt Creator: Working in Edit Mode +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-highlighting.html + \title Qt Creator: Semantic Highlighting +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-checking-code-syntax.html + \title Qt Creator: Checking Code Syntax +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-completing-code.html + \title Qt Creator: Completing Code +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-editor-codepasting.html + \title Qt Creator: Pasting and Fetching Code Snippets +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-macros.html + \title Qt Creator: Using Text Editing Macros +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-editor-fakevim.html + \title Qt Creator: Using FakeVim Mode +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-indenting-code.html + \title Qt Creator: Indenting Text or Code +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-editor-finding.html + \title Qt Creator: Finding and Replacing +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-editor-refactoring.html + \title Qt Creator: Refactoring +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-editor-locator.html + \title Qt Creator: Searching with the Locator +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-coding.html + \title Qt Creator: Coding +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-editor-options-text.html + \title Qt Creator: Specifying Text Editor Settings +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-finding-overview.html + \title Qt Creator: Finding +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-mime-types.html + \title Qt Creator: Editing MIME Types +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-modeling.html + \title Qt Creator: Modeling +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-qml-debugging-example.html + \title Qt Creator: Debugging a Qt Quick Example Application +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-debugging-example.html + \title Qt Creator: Debugging a C++ Example Application +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-debugger-engines.html + \title Qt Creator: Setting Up Debugger +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-debugging-qml.html + \title Qt Creator: Debugging Qt Quick Projects +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-debugging.html + \title Qt Creator: Debugging +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-debugger-operating-modes.html + \title Qt Creator: Launching the Debugger +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-debug-mode.html + \title Qt Creator: Interacting with the Debugger +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-debugging-helpers.html + \title Qt Creator: Using Debugging Helpers +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-troubleshooting-debugging.html + \title Qt Creator: Troubleshooting Debugger +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/index.html + \title Qt Creator Manual +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-advanced.html + \title Qt Creator: Advanced Use +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-os-supported-platforms.html + \title Qt Creator: Supported Platforms +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-connecting-mobile.html + \title Qt Creator: Connecting Devices +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-usability.html + \title Qt Creator: Optimizing Applications for Mobile Devices +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-acknowledgements.html + \title Qt Creator: Acknowledgements +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-help-overview.html + \title Qt Creator: Getting Help +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/technical-support.html + \title Qt Creator: Technical Support +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-overview.html + \title Qt Creator: IDE Overview +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-testing.html + \title Qt Creator: Testing +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-deployment.html + \title Qt Creator: Deploying to Devices +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-tutorials.html + \title Qt Creator: Tutorials +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-known-issues.html + \title Qt Creator: Known Issues +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-design-mode.html + \title Qt Creator: Designing User Interfaces +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-glossary.html + \title Qt Creator: Glossary +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-getting-started.html + \title Qt Creator: Getting Started +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-analyzer.html + \title Qt Creator: Detecting Memory Leaks with Memcheck +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-cache-profiler.html + \title Qt Creator: Profiling Function Execution +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-running-valgrind-remotely.html + \title Qt Creator: Running Valgrind Tools on External Applications +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-valgrind-overview.html + \title Qt Creator: Using Valgrind Code Analysis Tools +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-analyze-mode.html + \title Qt Creator: Analyzing Code +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-qml-performance-monitor.html + \title Qt Creator: Profiling QML Applications +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-deploying-android.html + \title Qt Creator: Deploying Applications to Android Devices +*/ + +/*! + \externalpage http://doc.qt.io/qtcreator/creator-developing-ios.html + \title Qt Creator: Connecting iOS devices +*/ + +/*! + \externalpage http://doc.qt.io/qtcreator/creator-developing-android.html + \title Qt Creator: Connecting Android Devices +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-build-example-application.html + \title Qt Creator: Building and Running an Example +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-project-generic.html + \title Qt Creator: Setting Up a Generic Project +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-sharing-project-settings.html + \title Qt Creator: Sharing Project Settings +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-project-opening.html + \title Qt Creator: Opening Projects +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-project-managing.html + \title Qt Creator: Managing Projects +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-project-cmake.html + \title Qt Creator: Setting Up CMake +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-targets.html + \title Qt Creator: Adding Kits +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-tool-chains.html + \title Qt Creator: Adding Compilers +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-project-qbs.html + \title Qt Creator: Setting Up Qbs +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-project-creating.html + \title Qt Creator: Creating Projects +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-project-wizards.html + \title Qt Creator: Adding New Custom Wizards +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-project-wizards-json.html + \title Qt Creator: Adding JSON-Based Wizards +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-project-wizards-xml.html + \title Qt Creator: Adding XML-Based Wizards +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-projects-autotools.html + \title Qt Creator: Setting Up an Autotools Project +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-configuring-projects.html + \title Qt Creator: Configuring Projects +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-build-process-customizing.html + \title Qt Creator: Customizing the Build Process +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-build-settings.html + \title Qt Creator: Specifying Build Settings +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-code-style-settings.html + \title Qt Creator: Specifying Code Style Settings +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-run-settings.html + \title Qt Creator: Specifying Run Settings +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-project-qmake-libraries.html + \title Qt Creator: Adding Libraries to Projects +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-project-other.html + \title Qt Creator: Using Other Build Systems +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-running-targets.html + \title Qt Creator: Running on Multiple Platforms +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-build-dependencies.html + \title Qt Creator: Specifying Dependencies +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-building-running.html + \title Qt Creator: Building and Running +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-editor-settings.html + \title Qt Creator: Specifying Editor Settings +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-project-qmake.html + \title Qt Creator: Adding Qt Versions +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-building-targets.html + \title Qt Creator: Building for Multiple Platforms +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-using-qt-designer.html + \title Qt Creator: Developing Widget Based Applications +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-writing-program.html + \title Qt Creator: Creating a Qt Widget Based Application +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/adding-plugins.html + \title Qt Creator: Adding Qt Designer Plugins +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-configuring.html + \title Qt Creator: Configuring Qt Creator +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-debuggers.html + \title Qt Creator: Adding Debuggers +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/qt-creator-accelbubble-example.html + \title Qt Creator: Creating a Mobile Application +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-diff-editor.html + \title Qt Creator: Comparing Files +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-beautifier.html + \title Qt Creator: Beautifying Source Code +*/ + +/*! + \externalpage http://doc.qt.io/qtcreator/creator-clang-codemodel.html + \title Qt Creator: Parsing C++ Files with the Clang Code Model +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-quick-ui-forms.html + \title Qt Creator: Qt Quick UI Forms +*/ + +/*! + \externalpage http://doc.qt.io/qtcreator/creator-clang-tools.html + \title Qt Creator: Using Clang Tools +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-heob.html + \title Qt Creator: Detecting Memory Leaks with Heob +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-cpu-usage-analyzer.html + \title Qt Creator: Analyzing CPU Usage +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-autotest.html + \title Qt Creator: Running Autotests +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-project-creating.html#creating-c-classes + \title Qt Creator: Creating C++ Classes +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-writing-program.html + \title Creating a Qt Widget Based Application +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/qtquick-navigator.html + \title Qt Creator: Managing Item Hierarchy +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/qtquick-properties.html + \title Qt Creator: Specifying Item Properties +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/quick-states.html + \title Qt Creator: Adding States +*/ +/*! + \externalpage http://doc.qt.io/qtcreator/creator-scxml.html + \title Qt Creator: Editing State Charts +*/ diff --git a/debian/usr/local/qt5raspi-5.12.5/doc/global/externalsites/rfc.qdoc b/debian/usr/local/qt5raspi-5.12.5/doc/global/externalsites/rfc.qdoc new file mode 100644 index 0000000..411decd --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/doc/global/externalsites/rfc.qdoc @@ -0,0 +1,94 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the documentation of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:FDL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Free Documentation License Usage +** Alternatively, this file may be used under the terms of the GNU Free +** Documentation License version 1.3 as published by the Free Software +** Foundation and appearing in the file included in the packaging of +** this file. Please review the following information to ensure +** the GNU Free Documentation License version 1.3 requirements +** will be met: https://www.gnu.org/licenses/fdl-1.3.html. +** $QT_END_LICENSE$ +** +****************************************************************************/ + +/*! + \externalpage http://www.ietf.org/rfc/rfc1179.txt + \title RFC 1179 + \keyword lpr +*/ + +/*! + \externalpage http://www.rfc-editor.org/rfc/rfc1738.txt + \title RFC 1738 +*/ + +/*! + \externalpage http://www.rfc-editor.org/rfc/rfc1928.txt + \title RFC 1928 +*/ + +/*! + \externalpage http://www.rfc-editor.org/rfc/rfc1929.txt + \title RFC 1929 +*/ + +/*! + \externalpage http://www.rfc-editor.org/rfc/rfc2045.txt + \title RFC 2045 +*/ + +/*! + \externalpage http://www.rfc-editor.org/rfc/rfc2109.txt + \title RFC 2109 + HTTP State Management Mechanism +*/ + +/*! + \externalpage http://www.rfc-editor.org/rfc/rfc2965.txt + \title RFC 2965 + HTTP State Management Mechanism +*/ + +/*! + \externalpage http://www.rfc-editor.org/rfc/rfc3174.txt + \title RFC 3174 +*/ + +/*! + \externalpage http://www.rfc-editor.org/rfc/rfc3491.txt + \title RFC 3491 +*/ + +/*! + \externalpage http://www.rfc-editor.org/rfc/rfc3986.txt + \title RFC 3986 +*/ + +/*! + \externalpage http://www.rfc-editor.org/rfc/rfc2822.txt + \title RFC 2822 +*/ + +/*! + \externalpage http://www.rfc-editor.org/rfc/rfc1036.txt + \title RFC 1036 +*/ + +/*! + \externalpage http://www.rfc-editor.org/rfc/rfc850.txt + \title RFC 850 +*/ diff --git a/debian/usr/local/qt5raspi-5.12.5/doc/global/fileextensions.qdocconf b/debian/usr/local/qt5raspi-5.12.5/doc/global/fileextensions.qdocconf new file mode 100644 index 0000000..ca03661 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/doc/global/fileextensions.qdocconf @@ -0,0 +1,10 @@ +naturallanguage = en +outputencoding = UTF-8 +sourceencoding = UTF-8 + +examples.fileextensions = "*.cpp *.h *.js *.xq *.svg *.xml *.ui *.qhp *.qhcp *.qml *.css *.glsl" +examples.imageextensions = "*.png *.jpg *.gif" + +headers.fileextensions = "*.ch *.h *.h++ *.hh *.hpp *.hxx" +sources.fileextensions = "*.c++ *.cc *.cpp *.cxx *.mm *.qml *.qdoc" + diff --git a/debian/usr/local/qt5raspi-5.12.5/doc/global/html-config.qdocconf b/debian/usr/local/qt5raspi-5.12.5/doc/global/html-config.qdocconf new file mode 100644 index 0000000..9b3b05b --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/doc/global/html-config.qdocconf @@ -0,0 +1,31 @@ +#Additional HTML settings + +HTML.nonavigationbar = "false" + +HTML.tocdepth = 2 + +HTML.extraimages += template/images/arrow_bc.png \ + template/images/home.png \ + template/images/ico_out.png \ + template/images/ico_note.png \ + template/images/ico_note_attention.png \ + template/images/btn_prev.png \ + template/images/btn_next.png \ + template/images/bullet_dn.png \ + template/images/bullet_sq.png \ + template/images/bgrContent.png \ + template/images/logo.png + +#specify which files in the output directory should be packed into the qch file. +#these files are assumed to be in each module's output directory."qtquick/images/ico_out.png" for example. +qhp.extraFiles += images/arrow_bc.png \ + images/home.png \ + images/ico_out.png \ + images/ico_note.png \ + images/ico_note_attention.png \ + images/btn_prev.png \ + images/btn_next.png \ + images/bullet_dn.png \ + images/bullet_sq.png \ + images/bgrContent.png \ + images/logo.png diff --git a/debian/usr/local/qt5raspi-5.12.5/doc/global/html-footer-online.qdocconf b/debian/usr/local/qt5raspi-5.12.5/doc/global/html-footer-online.qdocconf new file mode 100644 index 0000000..c4465fc --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/doc/global/html-footer-online.qdocconf @@ -0,0 +1,86 @@ +# HTML footer for qt.io + +HTML.footer += \ + "\n" \ + "\n" \ + "\n" \ + "\n" \ + "\n" \ + "
\n" \ + "\n" \ + "
\n" diff --git a/debian/usr/local/qt5raspi-5.12.5/doc/global/html-footer.qdocconf b/debian/usr/local/qt5raspi-5.12.5/doc/global/html-footer.qdocconf new file mode 100644 index 0000000..04f7fa0 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/doc/global/html-footer.qdocconf @@ -0,0 +1,20 @@ +#Default HTML footer for QDoc builds. + +HTML.footer = \ + " \n" \ + " \n" \ + " \n" \ + " \n" \ + "\n" \ + "
\n" \ + "

\n" \ + " © 2019 The Qt Company Ltd.\n" \ + " Documentation contributions included herein are the copyrights of\n" \ + " their respective owners.
" \ + " The documentation provided herein is licensed under the terms of the" \ + " GNU Free Documentation" \ + " License version 1.3 as published by the Free Software Foundation.
" \ + " Qt and respective logos are trademarks of The Qt Company Ltd. " \ + " in Finland and/or other countries worldwide. All other trademarks are property\n" \ + " of their respective owners.

\n" \ + "
\n" \ diff --git a/debian/usr/local/qt5raspi-5.12.5/doc/global/html-header-offline.qdocconf b/debian/usr/local/qt5raspi-5.12.5/doc/global/html-header-offline.qdocconf new file mode 100644 index 0000000..d84f38f --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/doc/global/html-header-offline.qdocconf @@ -0,0 +1,31 @@ +#Default HTML header for QDoc builds. + +#specify the CSS file used by this template +HTML.stylesheets = template/style/offline.css + +#for including files into the qch file +qhp.extraFiles += style/offline.css + +HTML.headerstyles = \ + " \n" + +HTML.endheader = \ + "\n" + +HTML.postheader = \ + "\n" \ + "
\n"\ + "
\n" \ + "
\n" \ + "
\n"\ + "
    \n"\ + + + +HTML.postpostheader = \ + "
\n"\ + "
\n" \ + "
\n" \ + "
\n" \ + "
\n" \ + "
\n" \ diff --git a/debian/usr/local/qt5raspi-5.12.5/doc/global/html-header-online.qdocconf b/debian/usr/local/qt5raspi-5.12.5/doc/global/html-header-online.qdocconf new file mode 100644 index 0000000..d674e76 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/doc/global/html-header-online.qdocconf @@ -0,0 +1,127 @@ +# HTML Header with qt.io branding and online links + +HTML.stylesheets = template/style/online.css \ + template/style/cookie-confirm.css \ + template/style/gsc.css \ + template/style/list_arrow.png \ + template/style/list_expand.png \ + template/style/icomoon.eot \ + template/style/icomoon.svg \ + template/style/icomoon.ttf \ + template/style/icomoon.woff \ + template/style/cookiebar-x.png \ + template/style/doc_search.png \ + template/style/theqtcompany.png + +#for including files into the qch file. Relative to the outputdir of a QDoc build. +qhp.extraFiles += style/online.css \ + style/cookie-confirm.css \ + style/gsc.css \ + style/list_arrow.png \ + style/list_expand.png \ + style/icomoon.eot \ + style/icomoon.svg \ + style/icomoon.ttf \ + style/icomoon.woff \ + style/cookiebar-x.png \ + style/doc_search.png \ + style/theqtcompany.png + +HTML.headerstyles = \ + " \n" \ + " \n" + +HTML.headerscripts = \ + " \n" \ + " \n" \ + " \n" \ + " \n" \ + " \n" \ + " \n" \ + " \n" \ + " \n" + +HTML.scripts = template/scripts/extras.js \ + template/scripts/main.js + +HTML.endheader = \ + "\n" + +# minimal header +HTML.postheader = \ + "\n" \ + "
\n" \ + "

We bake cookies in your browser for a better experience. Using this site means that you consent.\n" \ + "Read more

Continue »\n" \ + "
\n" \ + "\n" \ + "
\n" \ + "
\n" \ + "
\n" \ + "
\n" \ + " \n" \ + "
\n" \ + " \n" \ + "
\n" \ + "
\n" \ + "
\n" \ + "
\n" \ + "
\n" \ + "
\n" \ + "
\n" \ + " \n" \ + "
\n" \ + "

Qt Documentation

\n" \ + "
\n" \ + " \n" \ + " \n" \ + "
\n" \ + "
    \n" + +HTML.postpostheader = \ + "
\n" \ + "
\n" \ + "
\n" \ + "
\n" \ + "
\n" + +HTML.prologue = \ + "
\n" diff --git a/debian/usr/local/qt5raspi-5.12.5/doc/global/includes-online/search.qdoc b/debian/usr/local/qt5raspi-5.12.5/doc/global/includes-online/search.qdoc new file mode 100644 index 0000000..8d3c7d2 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/doc/global/includes-online/search.qdoc @@ -0,0 +1,39 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the documentation of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:FDL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Free Documentation License Usage +** Alternatively, this file may be used under the terms of the GNU Free +** Documentation License version 1.3 as published by the Free Software +** Foundation and appearing in the file included in the packaging of +** this file. Please review the following information to ensure +** the GNU Free Documentation License version 1.3 requirements +** will be met: https://www.gnu.org/licenses/fdl-1.3.html. +** $QT_END_LICENSE$ +** +****************************************************************************/ + +/*! +\page search-results.html +\title Search Results + +\raw HTML + + + +\endraw +*/ diff --git a/debian/usr/local/qt5raspi-5.12.5/doc/global/includes/examples-run.qdocinc b/debian/usr/local/qt5raspi-5.12.5/doc/global/includes/examples-run.qdocinc new file mode 100644 index 0000000..e9b8575 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/doc/global/includes/examples-run.qdocinc @@ -0,0 +1,5 @@ +\section1 Running the Example + +To run the example from \l{Qt Creator Manual}{Qt Creator}, open the \gui Welcome +mode and select the example from \gui Examples. For more information, visit +\l{Qt Creator: Building and Running an Example}{Building and Running an Example}. diff --git a/debian/usr/local/qt5raspi-5.12.5/doc/global/includes/module-use.qdocinc b/debian/usr/local/qt5raspi-5.12.5/doc/global/includes/module-use.qdocinc new file mode 100644 index 0000000..df33d1d --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/doc/global/includes/module-use.qdocinc @@ -0,0 +1,52 @@ +/**************************************************************************** +** +** Copyright (C) 2019 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the documentation of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:FDL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Free Documentation License Usage +** Alternatively, this file may be used under the terms of the GNU Free +** Documentation License version 1.3 as published by the Free Software +** Foundation and appearing in the file included in the packaging of +** this file. Please review the following information to ensure +** the GNU Free Documentation License version 1.3 requirements +** will be met: https://www.gnu.org/licenses/fdl-1.3.html. +** $QT_END_LICENSE$ +** +****************************************************************************/ + +//! [using qt module] + + \section1 Using the Module + + Using a Qt module requires linking against the module library, either + directly or through other dependencies. Several build tools have dedicated + support for this, including \l{CMake Documentation}{CMake} and + \l{qmake}. + + \section2 Building with CMake + + Use the \c{find_package()} command to locate the needed module components in + the \c{Qt5} package: + +//! [using qt module] + + +//! [building with qmake] + + \section2 Building with qmake + + To configure the module for building with qmake, add the module as a value + of the \c QT variable in the project's .pro file: + +//! [building with qmake] diff --git a/debian/usr/local/qt5raspi-5.12.5/doc/global/macros.qdocconf b/debian/usr/local/qt5raspi-5.12.5/doc/global/macros.qdocconf new file mode 100644 index 0000000..ef3ca1d --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/doc/global/macros.qdocconf @@ -0,0 +1,61 @@ +macro.aacute.HTML = "á" +macro.Aring.HTML = "Å" +macro.aring.HTML = "å" +macro.Auml.HTML = "Ä" +macro.author = "\\b{Author:}" +macro.BR.HTML = "
" +macro.copyright.HTML = "©" +macro.eacute.HTML = "é" +macro.gui = "\\b" +macro.HR.HTML = "
" +macro.iacute.HTML = "í" +macro.key = "\\b" +macro.macos = "macOS" +macro.menu = "\\b" +macro.oslash.HTML = "ø" +macro.ouml.HTML = "ö" +macro.nullptr = "\\c{nullptr}" +macro.QA = "\\e{Qt Assistant}" +macro.QD = "\\e{Qt Designer}" +macro.QL = "\\e{Qt Linguist}" +macro.QQV = "\\e{Qt QML Viewer}" +macro.QtVersion = "$QT_VERSION" +macro.QtVer = "$QT_VER" +macro.param = "\\e" +macro.raisedaster.HTML = "*" +macro.rarrow.HTML = "→" +macro.reg.HTML = "®" +macro.return = "Returns" +macro.starslash = "\\c{*/}" +macro.begincomment = "\\c{/*}" +macro.endcomment = "\\c{*/}" +macro.uuml.HTML = "ü" +macro.mdash.HTML = "—" +macro.pi.HTML = "Π" +macro.beginqdoc.HTML = "/*!" +macro.endqdoc.HTML = "*/" +macro.borderedimage = "\\div {class=\"border\"} \\image \1\n\\enddiv" + +macro.beginfloatleft.HTML = "
" +macro.beginfloatright.HTML = "
" +macro.endfloat.HTML = "
" +macro.clearfloat.HTML = "
" +macro.emptyspan.HTML = "" + +# Expands to the minor version based on the QT_VER environment variable +macro.QtMinorVersion = "$QT_VER" +macro.QtMinorVersion.match = "\\d+\\.(\\d+)" + +# Embed YouTube content by video ID - Example: \youtube dQw4w9WgXcQ +# Also requires a .jpg thumbnail for offline docs. In .qdocconf, add: +# +# HTML.extraimages += images/dQw4w9WgXcQ.jpg +# qhp.ProjectName.extraFiles += images/dQw4w9WgXcQ.jpg +# +macro.youtube.HTML = "
\n\n" \ + "
\n" diff --git a/debian/usr/local/qt5raspi-5.12.5/doc/global/manifest-meta.qdocconf b/debian/usr/local/qt5raspi-5.12.5/doc/global/manifest-meta.qdocconf new file mode 100644 index 0000000..3db67a3 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/doc/global/manifest-meta.qdocconf @@ -0,0 +1,236 @@ +# Additional meta information (attributes for matched entries, as well as tags) +# to be added to manifest.xml files. +# +# manifestmeta.filters = ,,... +# +# manifestmeta..names = /,/,.. +# manifestmeta..attributes = ,,.. +# manifestmeta..tags = ,,.. +# +# .names specify all the module/name combinations to apply the +# attributes/tags to. You can use simple wildcard matching by appending +# '*' at the end of name. +# +# Note: You cannot use operators (+, =, -) in the names. +# +# Examples: add a 'isHighlighted' attribute for two 'Analog Clock' examples, +# add a 'database' tag for QtSql examples, and a 'qt5' tag for all examples +# +# manifestmeta.filters = highlighted sql global +# +# manifestmeta.highlighted.names = "QtGui/Analog Clock Window Example" \ +# "QtWidgets/Analog Clock Example" +# manifestmeta.highlighted.attributes = isHighlighted:true +# +# manifestmeta.sql.names = "QtSql/*" +# manifestmeta.sql.tags = database +# +# manifestmeta.global.names = * +# manifestmeta.global.tags = qt5 + +manifestmeta.filters = highlighted android thumbnail ios + +manifestmeta.highlighted.attributes = isHighlighted:true + +manifestmeta.android.names = "QtQuick/Qt Quick Demo - Calqlatr" \ + "QtWidgets/Application Chooser Example" \ + "QtWidgets/Stickman Example" \ + "QtWidgets/Move Blocks Example" \ + "QtWidgets/Border Layout Example" \ + "QtWidgets/Flow Layout Example" \ + "QtWidgets/Dock Widgets Example" \ + "QtWidgets/Recent Files Example" \ + "QtWidgets/Concentric Circles Example" \ + "QtWidgets/Gradients" \ + "QtWidgets/Font Sampler Example" \ + "QtWidgets/Path Stroking" \ + "QtWidgets/Transformations Example" \ + "QtWidgets/Syntax Highlighter Example" \ + "QtWidgets/Calendar Example" \ + "QtWidgets/Analog Clock Example" \ + "QtWidgets/Calculator Example" \ + "QtWidgets/Mouse Button Tester" \ + "QtWidgets/Character Map Example" \ + "QtWidgets/Digital Clock Example" \ + "QtWidgets/Elided Label Example" \ + "QtWidgets/Sliders Example" \ + "QtWidgets/Tetrix Example" \ + "QtWidgets/Group Box Example" \ + "QtWidgets/Undo Framework" \ + "QtWidgets/Colliding Mice Example" \ + "QtWidgets/Diagram Scene Example" \ + "QtWidgets/Elastic Nodes Example" \ + "QtWidgets/Weather Anchor Layout Example" \ + "QtNetwork/Torrent Example" \ + "QtNetwork/Network Chat Example" \ + "QtSQL/Master Detail Example" \ + "QtLinguist/Arrow Pad Example" \ + "QtGui/Raster Window Example" \ + "QtGui/Analog Clock Window Example" \ + "QtAndroidExtras/Qt Notifier" \ + "QtMultimedia/QML Video Shader Effects Example" \ + "QtMultimedia/QML Video Example" \ + "QtMultimedia/QML Camera Example" \ + "QtSVG/Text Object Example" \ + "QtQML/Qt Quick Examples - XMLHttpRequest" \ + "QtQuick/Qt Quick Particles Examples - *" \ + "QtQuick/Qt Quick Examples - Touch Interaction" \ + "QtQuick/Scene Graph - Custom Geometry" \ + "QtQuick/Scene Graph - Graph" \ + "QtQuick/Scene Graph - OpenGL Under QML" \ + "QtQuick/Scene Graph - Painted Item" \ + "QtQuick/Scene Graph - Rendering FBOs" \ + "QtQuick/Scene Graph - Simple Material" \ + "QtQuick/Qt Quick Examples - Image Elements" \ + "QtQuick/Qt Quick Examples - Key Interaction" \ + "QtQuick/Qt Quick Examples - Text" \ + "QtQuick/Qt Quick Examples - Animation" \ + "QtQuick/Qt Quick Examples - Shader Effects" \ + "QtQuick/Qt Quick Examples - Canvas" \ + "QtQuick/Qt Quick Examples - MouseArea" \ + "QtQuick/Qt Quick Examples - Positioners" \ + "QtQuick/Qt Quick Examples - Right to Left" \ + "QtWidgets/Interview" \ + "QtWidgets/Spreadsheet" \ + "QtWidgets/Pixelator Example" \ + "QtWidgets/Animated Tiles Example" \ + "QtWidgets/Affine Transformations" \ + "QtWidgets/Image Composition Example" \ + "QtWidgets/Basic Drawing Example" \ + "QtWidgets/Vector Deformation" \ + "QtWidgets/Painter Paths Example" \ + "QtWidgets/Style Sheet Example" \ + "QtWidgets/Code Editor Example" \ + "QtWidgets/Scribble Example" \ + "QtWidgets/Line Edits Example" \ + "QtWidgets/Calendar Widget Example" \ + "QtWidgets/Completer Example" \ + "QtWidgets/I18N Example" \ + "QtQML/Extending QML - Grouped Properties Example" \ + "QtQML/Extending QML - Methods Example" \ + "QtQML/Extending QML - Signal Support Example" \ + "QtQML/Extending QML - Attached Properties Example" + +manifestmeta.android.tags = android + +manifestmeta.ios.names = "QtCore/Contiguous Cache Example" \ + "QtCore/Mandelbrot Example" \ + "QtCore/Queued Custom Type Example" \ + "QtGui/Analog Clock Window Example" \ + "QtGui/OpenGL Window Example" \ + "QtGui/Raster Window Example" \ + "QtNetwork/Loopback Example" \ + "QtNetwork/Network Chat Example" \ + "QtNetwork/Torrent Example" \ + "QtOpenGL/2D Painting Example" \ + "QtOpenGL/Textures Example" \ + "QtWidgets/Animated Tiles Example" \ + "QtWidgets/Application Chooser Example" \ + "QtWidgets/Easing Curves Example" \ + "QtWidgets/Move Blocks Example" \ + "QtWidgets/States Example" \ + "QtWidgets/Class Wizard Example" \ + "QtWidgets/Find Files Example" \ + "QtWidgets/License Wizard Example" \ + "QtWidgets/Standard Dialogs Example" \ + "QtWidgets/Tab Dialog Example" \ + "QtWidgets/Trivial Wizard Example" \ + "QtWidgets/Draggable Text Example" \ + "QtWidgets/Fridge Magnets Example" \ + "QtWidgets/Blur Picker Effect Example" \ + "QtWidgets/Fade Message Effect Example" \ + "QtWidgets/Lighting Effect Example" \ + "QtWidgets/Anchor Layout Example" \ + "QtWidgets/Basic Graphics Layouts Example" \ + "QtWidgets/40000 Chips" \ + "QtWidgets/Colliding Mice Example" \ + "QtWidgets/Diagram Scene Example" \ + "QtWidgets/Elastic Nodes Example" \ + "QtWidgets/Embedded Dialogs" \ + "QtWidgets/Graphics View Flow Layout Example" \ + "QtWidgets/Simple Anchor Layout Example" \ + "QtWidgets/Weather Anchor Layout Example" \ + "QtWidgets/Address Book Example" \ + "QtWidgets/Basic Sort/Filter Model Example" \ + "QtWidgets/Chart Example" \ + "QtWidgets/Custom Sort/Filter Model Example" \ + "QtWidgets/Dir View Example" \ + "QtWidgets/Editable Tree Model Example" \ + "QtWidgets/Frozen Column Example" \ + "QtWidgets/Interview" \ + "QtWidgets/Simple Tree Model Example" \ + "QtWidgets/Simple Widget Mapper Example" \ + "QtWidgets/Basic Layouts Example" \ + "QtWidgets/Border Layout Example" \ + "QtWidgets/Flow Layout Example" \ + "QtWidgets/Basic Drawing Example" \ + "QtWidgets/Concentric Circles Example" \ + "QtWidgets/Font Sampler Example" \ + "QtWidgets/Gradients" \ + "QtWidgets/Image Composition Example" \ + "QtWidgets/Painter Paths Example" \ + "QtWidgets/Transformations Example" \ + "QtWidgets/Calendar Example" \ + "QtWidgets/Order Form Example" \ + "QtWidgets/Syntax Highlighter Example" \ + "QtWidgets/Text Edit" \ + "QtWidgets/Traffic Light Example" \ + "QtWidgets/Two-way Button Example" \ + "QtWidgets/Completer Example" \ + "QtWidgets/Custom Completer Example" \ + "QtWidgets/Undo Framework" \ + "QtWidgets/Analog Clock Example" \ + "QtWidgets/Calculator Example" \ + "QtWidgets/Calendar Widget Example" \ + "QtWidgets/Character Map Example" \ + "QtWidgets/Code Editor Example" \ + "QtWidgets/Digital Clock Example" \ + "QtWidgets/Elided Label Example" \ + "QtWidgets/Line Edits Example" \ + "QtWidgets/Scribble Example" \ + "QtWidgets/Shaped Clock Example" \ + "QtWidgets/Sliders Example" \ + "QtWidgets/Validators Example" \ + "QtWidgets/Window Flags Example" \ + "QtWidgets/Wiggly Example" \ + "QtQuick/Qt Quick Examples - Animation" \ + "QtQuick/Qt Quick Examples - Canvas" \ + "QtQuick/Qt Quick Examples - Drag and Drop" \ + "QtQuick/Qt Quick Examples - Image Elements" \ + "QtQuick/Qt Quick Examples - MouseArea" \ + "QtQuick/Qt Quick Examples - Positioners" \ + "QtQuick/Qt Quick Examples - Right to Left" \ + "QtQuick/Scene Graph - OpenGL Under QML" \ + "QtQuick/Qt Quick Examples - Shader Effects" \ + "QtQuick/Qt Quick Examples - Text" \ + "QtQuick/Qt Quick Examples - Touch Interaction" \ + "QtQuick/Qt Quick Examples - Views" \ + "QtQuick/Qt Quick Examples - Window and Screen" + +manifestmeta.ios.tags = ios + +# add a generic thumbnail image to examples that do not have any images in their documentation +manifestmeta.thumbnail.attributes = "imageUrl:qthelp\://org.qt-project.qtdoc.$QT_VERSION_TAG/qtdoc/images/qt-codesample.png" + +manifestmeta.thumbnail.names = "QtCore/Contiguous Cache Example" \ + "QtCore/Custom Type Example" \ + "QtCore/JSON Save Game Example" \ + "QtCore/Semaphores Example" \ + "QtCore/Wait Conditions Example" \ + "QtConcurrent/Map Example" \ + "QtConcurrent/QtConcurrent Word Count Example" \ + "QtConcurrent/Run Function Example" \ + "QtGui/Raster Window Example" \ + "QtNetwork/Network Download*" \ + "QtWidgets/Dynamic Layouts Example" \ + "QtWidgets/Event Transitions Example" \ + "QtWidgets/Two-way Button Example" \ + "QtWidgets/Validators Example" \ + "QtDbus/*" \ + "QtHelp/*" \ + "QtMultimedia/AudioEngine Example" \ + "QtQml/Extending QML*" \ + "QtQuick/C++ Extensions: Image Response Provider Example" \ + "QtQuick/Qt Quick Examples - Accessibility" \ + "QtSensors/Qt Sensors - SensorGesture QML Type example" \ + "QtWinExtras/Icon Extractor" diff --git a/debian/usr/local/qt5raspi-5.12.5/doc/global/qt-cpp-defines.qdocconf b/debian/usr/local/qt5raspi-5.12.5/doc/global/qt-cpp-defines.qdocconf new file mode 100644 index 0000000..a486470 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/doc/global/qt-cpp-defines.qdocconf @@ -0,0 +1,240 @@ +versionsym = QT_VERSION_STR + +defines += Q_QDOC \ + Q_CLANG_QDOC \ + QT_.*_SUPPORT \ + QT_.*_LIB \ + QT_COMPAT \ + QT_KEYPAD_NAVIGATION \ + QT_NO_EGL \ + QT3_SUPPORT \ + Q_DEAD_CODE_FROM_QT4_.* \ + Q_BYTE_ORDER \ + QT_DEPRECATED \ + QT_DEPRECATED_* \ + Q_NO_USING_KEYWORD \ + Q_OS_.* \ + Q_STDLIB_UNICODE_STRINGS \ + Q_COMPILER_INITIALIZER_LISTS \ + Q_COMPILER_UNICODE_STRINGS \ + Q_COMPILER_UNIFORM_INIT \ + Q_COMPILER_RVALUE_REFS + +clangdefines += Q_QDOC \ + Q_CLANG_QDOC \ + QT_COMPAT \ + QT3_SUPPORT \ + QT_BUILD_CORE_LIB \ + QT_BUILD_EGL_DEVICE_LIB \ + QT_BUILD_LOCATION_LIB \ + QT_BUILD_SCRIPT_LIB \ + QT_BUILD_TESTLIB_LIB \ + QT_BUILD_WIDGETS_LIB \ + QT_CORE_LIB \ + QT_DEPRECATED \ + QT_GUI_LIB \ + QT_KEYPAD_NAVIGATION \ + QT_LARGEFILE_SUPPORT \ + QT_NETWORK_LIB \ + QT_NO_EGL \ + QT_OPENGL_SUPPORT \ + QT_SCRIPT_LIB \ + QT_SHARED_POINTER_BACKTRACE_SUPPORT \ + QT_WIDGETS_LIB \ + Q_BYTE_ORDER \ + Q_CC_CLANG \ + Q_COMPILER_CONSTEXPR \ + Q_COMPILER_DEFAULT_MEMBERS \ + Q_COMPILER_DELETE_MEMBERS \ + Q_COMPILER_EXPLICIT_OVERRIDES \ + Q_COMPILER_INITIALIZER_LISTS \ + Q_COMPILER_MANGLES_RETURN_TYPE \ + Q_COMPILER_NOEXCEPT \ + Q_COMPILER_NULLPTR \ + Q_COMPILER_RVALUE_REFS \ + Q_COMPILER_STATIC_ASSERT \ + Q_COMPILER_UNIFORM_INIT \ + Q_COMPILER_UNICODE_STRINGS \ + Q_COMPILER_VARIADIC_MACROS \ + Q_COMPILER_VARIADIC_TEMPLATES \ + Q_STDLIB_UNICODE_STRINGS \ + Q_ATOMIC_INT16_IS_SUPPORTED \ + Q_ATOMIC_INT64_IS_SUPPORTED \ + Q_ATOMIC_INT8_IS_SUPPORTED \ + Q_DEAD_CODE_FROM_QT4_MAC \ + Q_DEAD_CODE_FROM_QT4_WIN \ + Q_DEAD_CODE_FROM_QT4_X11 + +# Q_COMPILER_REF_QUALIFIERS is not yet supported by all compilers + +Cpp.ignoretokens += \ + ENGINIOCLIENT_EXPORT \ + PHONON_EXPORT \ + Q_ALWAYS_INLINE \ + Q_AUTOTEST_EXPORT \ + Q_BLUETOOTH_EXPORT \ + Q_COMPAT_EXPORT \ + Q_CORE_EXPORT \ + Q_CORE_EXPORT_INLINE \ + Q_DBUS_EXPORT \ + Q_DECL_CONSTEXPR \ + Q_DECL_RELAXED_CONSTEXPR \ + Q_DECL_CONST_FUNCTION \ + Q_DECL_DEPRECATED \ + Q_DECL_NOEXCEPT \ + Q_DECL_FINAL \ + Q_DECL_OVERRIDE \ + Q_DECL_NOTHROW \ + Q_DECL_PURE_FUNCTION \ + Q_DECL_UNUSED \ + Q_DECL_CF_RETURNS_RETAINED \ + Q_DECL_NS_RETURNS_AUTORELEASED \ + Q_DECL_EQ_DEFAULT \ + Q_DECLARATIVE_EXPORT \ + Q_EXPLICIT \ + Q_EXPORT \ + Q_EXPORT_CODECS_CN \ + Q_EXPORT_CODECS_JP \ + Q_EXPORT_CODECS_KR \ + Q_EXPORT_PLUGIN \ + Q_EXPORT_PLUGIN2 \ + Q_GADGET \ + Q_GFX_INLINE \ + Q_GUI_EXPORT \ + Q_GUI_EXPORT_INLINE \ + Q_GUI_EXPORT_STYLE_CDE \ + Q_GUI_EXPORT_STYLE_COMPACT \ + Q_GUI_EXPORT_STYLE_MAC \ + Q_GUI_EXPORT_STYLE_MOTIF \ + Q_GUI_EXPORT_STYLE_MOTIFPLUS \ + Q_GUI_EXPORT_STYLE_PLATINUM \ + Q_GUI_EXPORT_STYLE_POCKETPC \ + Q_GUI_EXPORT_STYLE_SGI \ + Q_GUI_EXPORT_STYLE_WINDOWS \ + Q_INLINE_TEMPLATE \ + Q_INTERNAL_WIN_NO_THROW \ + Q_INVOKABLE \ + Q_LOCATION_EXPORT \ + Q_POSITIONING_EXPORT \ + Q_MULTIMEDIA_EXPORT \ + Q_NAMESPACE \ + Q_NETWORK_EXPORT \ + Q_NEVER_INLINE \ + Q_NORETURN \ + Q_OPENGL_EXPORT \ + Q_OPENVG_EXPORT \ + Q_OUTOFLINE_TEMPLATE \ + Q_PRINTSUPPORT_EXPORT \ + Q_QML_EXPORT \ + Q_REQUIRED_RESULT \ + Q_SCRIPT_EXPORT \ + Q_SCRIPTTOOLS_EXPORT \ + Q_SERIALBUS_EXPORT \ + Q_SQL_EXPORT \ + Q_SVG_EXPORT \ + Q_TESTLIB_EXPORT \ + Q_TYPENAME \ + Q_WIDGETS_EXPORT \ + Q_WINEXTRAS_EXPORT \ + Q_XML_EXPORT \ + Q_XMLPATTERNS_EXPORT \ + Q_XMLSTREAM_EXPORT \ + QAXFACTORY_EXPORT \ + QDBUS_EXPORT \ + QDESIGNER_COMPONENTS_LIBRARY \ + QDESIGNER_EXTENSION_LIBRARY \ + QDESIGNER_SDK_LIBRARY \ + QDESIGNER_SHARED_LIBRARY \ + QDESIGNER_UILIB_LIBRARY \ + QHELP_EXPORT \ + QM_AUTOTEST_EXPORT \ + QM_EXPORT_CANVAS \ + QM_EXPORT_DNS \ + QM_EXPORT_DOM \ + QM_EXPORT_FTP \ + QM_EXPORT_HTTP \ + QM_EXPORT_ICONVIEW \ + QM_EXPORT_NETWORK \ + QM_EXPORT_OPENGL \ + QM_EXPORT_OPENVG \ + QM_EXPORT_SQL \ + QM_EXPORT_TABLE \ + QM_EXPORT_WORKSPACE \ + QM_EXPORT_XML \ + QT_ASCII_CAST_WARN \ + QT_ASCII_CAST_WARN_CONSTRUCTOR \ + QT_BEGIN_INCLUDE_NAMESPACE \ + QT_BEGIN_NAMESPACE \ + QT_BOOTSTRAPPED \ + QT_DESIGNER_STATIC \ + QT_END_INCLUDE_NAMESPACE \ + QT_END_NAMESPACE \ + QT_FASTCALL \ + QT_MUTEX_LOCK_NOEXCEPT \ + QT_POPCOUNT_CONSTEXPR \ + QT_SIZEPOLICY_CONSTEXPR \ + QT_WARNING_DISABLE_DEPRECATED \ + QT_WARNING_PUSH \ + QT_WARNING_POP \ + QT_WIDGET_PLUGIN_EXPORT \ + QWEBKIT_EXPORT + +Cpp.ignoredirectives += \ + __attribute__ \ + K_DECLARE_PRIVATE \ + PHONON_HEIR \ + PHONON_OBJECT \ + Q_CLASSINFO \ + Q_DECLARE_INTERFACE \ + Q_DECLARE_METATYPE \ + Q_DECLARE_OPERATORS_FOR_FLAGS \ + Q_DECLARE_PRIVATE \ + Q_DECLARE_PRIVATE_D \ + Q_DECLARE_PUBLIC \ + Q_DECLARE_SHARED \ + Q_DECLARE_SHARED_NOT_MOVABLE_UNTIL_QT6 \ + Q_DECLARE_TR_FUNCTIONS \ + Q_DECLARE_TYPEINFO \ + Q_DECL_NOEXCEPT_EXPR \ + QT_DEPRECATED_X \ + QT_SYSINFO_DEPRECATED_X \ + Q_DISABLE_COPY \ + Q_DUMMY_COMPARISON_OPERATOR \ + Q_ENUM \ + Q_ENUMS \ + Q_ENUM_NS \ + Q_FLAG \ + Q_FLAGS \ + Q_FLAG_NS \ + QT_HAS_INCLUDE \ + Q_INTERFACES \ + Q_PRIVATE_PROPERTY \ + QT_FORWARD_DECLARE_CLASS \ + Q_DECLARE_HANDLE \ + Q_REVISION \ + QT_WARNING_DISABLE_CLANG \ + QT_WARNING_DISABLE_GCC \ + QT_WARNING_DISABLE_INTEL \ + QT_WARNING_DISABLE_MSVC \ + Q_ATTRIBUTE_FORMAT_PRINTF \ + Q_MV_IOS + +# Qt 6: Remove +falsehoods += \ + "QT_VERSION >= QT_VERSION_CHECK\\(\\s*6\\s*,\\s*0\\s*,\\s*0\\s*\\)" + + +excludefiles += \ + "*_posix.cpp" \ + "*_android.cpp" \ + "*_win.cpp" \ + "*_icu.cpp" \ + "*_msvc.cpp" \ + "*_wince.cpp" \ + "*_winrt.cpp" \ + "*_mac.cpp" \ + "*_macx.cpp" \ + "*_unix.cpp" \ + "*_udev.cpp" \ + "*_vxworks.cpp" \ + "*_darwin.cpp" diff --git a/debian/usr/local/qt5raspi-5.12.5/doc/global/qt-html-templates-offline-simple.qdocconf b/debian/usr/local/qt5raspi-5.12.5/doc/global/qt-html-templates-offline-simple.qdocconf new file mode 100644 index 0000000..c3c2d3c --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/doc/global/qt-html-templates-offline-simple.qdocconf @@ -0,0 +1,45 @@ +# Specify a custom CSS file used by this template +HTML.stylesheets += template/style/offline-simple.css +qhp.extraFiles += style/offline-simple.css + +# Override the header styles +HTML.headerstyles = \ + " \n" \ + " \n" + +HTML.postheader = \ + "\n" \ + "
\n"\ + "
\n" \ + "
\n" \ + "
\n" \ + " \n" + +HTML.postpostheader = \ + "
\n"\ + "
\n" \ + "
\n" \ + "
\n" \ + "
\n" \ + "
\n" + +HTML.navigationseparator = \ + "\n" + +# Add some padding around code snippets, as we cannot +# currectly style them for QTextBrowser using only CSS. +codeindent = 2 +codeprefix = "\n\n" +codesuffix = "\n\n" diff --git a/debian/usr/local/qt5raspi-5.12.5/doc/global/qt-html-templates-offline.qdocconf b/debian/usr/local/qt5raspi-5.12.5/doc/global/qt-html-templates-offline.qdocconf new file mode 100644 index 0000000..0c012f1 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/doc/global/qt-html-templates-offline.qdocconf @@ -0,0 +1,35 @@ +#include standard set of HTML header and footer. +include(html-config.qdocconf) +include(html-header-offline.qdocconf) +include(html-footer.qdocconf) + +#uncomment if navigation bar is not wanted +#HTML.nonavigationbar = "true" + +HTML.stylesheets = template/style/offline.css +HTML.extraimages += template/images/ico_out.png \ + template/images/ico_note.png \ + template/images/ico_note_attention.png \ + template/images/btn_prev.png \ + template/images/btn_next.png \ + template/images/bullet_dn.png \ + template/images/bullet_sq.png \ + template/images/bgrContent.png + +sourcedirs += includes + +#specify which files in the output directory should be packed into the qch file. +qhp.extraFiles += style/offline.css \ + images/ico_out.png \ + images/ico_note.png \ + images/ico_note_attention.png \ + images/btn_prev.png \ + images/btn_next.png \ + images/bullet_dn.png \ + images/bullet_sq.png \ + images/bgrContent.png + +# By default, include override definitions for a simplified template/CSS, +# suited for rendering HTML with QTextBrowser. Comment out this line to +# select the standard CSS. +include(qt-html-templates-offline-simple.qdocconf) diff --git a/debian/usr/local/qt5raspi-5.12.5/doc/global/qt-html-templates-online.qdocconf b/debian/usr/local/qt5raspi-5.12.5/doc/global/qt-html-templates-online.qdocconf new file mode 100644 index 0000000..502c406 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/doc/global/qt-html-templates-online.qdocconf @@ -0,0 +1,11 @@ +#include standard set of HTML header and footer. +HTML.nonavigationbar = "false" +HTML.tocdepth = 2 +include(html-header-online.qdocconf) +include(html-footer-online.qdocconf) + +#uncomment if navigation bar is not wanted +#HTML.nonavigationbar = "true" + +sourcedirs += includes-online \ + includes diff --git a/debian/usr/local/qt5raspi-5.12.5/doc/global/qt-module-defaults-offline.qdocconf b/debian/usr/local/qt5raspi-5.12.5/doc/global/qt-module-defaults-offline.qdocconf new file mode 100644 index 0000000..ee9557f --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/doc/global/qt-module-defaults-offline.qdocconf @@ -0,0 +1,17 @@ +#The default configuration for a Qt 5 module, including Add-Ons and Tools. +#Include this file for a standard Qt 5 module; builds with the offline style. + +#include standard set of macros and C++ defines and ignores +include(macros.qdocconf) +include(qt-cpp-defines.qdocconf) +include(compat.qdocconf) +include(manifest-meta.qdocconf) +include(fileextensions.qdocconf) + +include(qt-html-templates-offline.qdocconf) + +#extra configuration data such as file extensions +include(config.qdocconf) + +# Show Qt version as part of the navigation bar +buildversion = "Qt $QT_VERSION Reference Documentation" diff --git a/debian/usr/local/qt5raspi-5.12.5/doc/global/qt-module-defaults-online-commercial.qdocconf b/debian/usr/local/qt5raspi-5.12.5/doc/global/qt-module-defaults-online-commercial.qdocconf new file mode 100644 index 0000000..c5bce13 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/doc/global/qt-module-defaults-online-commercial.qdocconf @@ -0,0 +1,27 @@ +# This template uses the default online template for qt.io +# and modifies it for a commercial Qt component + +# Start of footer - the rest is defined in the default template +HTML.footer = \ + "

Available under certain Qt licenses.
Find out more.

\n" \ + "
\n" + +include(macros.qdocconf) +include(qt-cpp-defines.qdocconf) +include(compat.qdocconf) +#include(manifest-meta.qdocconf) +include(fileextensions.qdocconf) +include(qt-html-templates-online.qdocconf) + +#extra configuration data DITA information +include(config.qdocconf) + +HTML.prologue = \ + "
\n" \ + "

C

\n" + +# Turn off single-directory output mode +HTML.nosubdirs = "false" + +# Set navigation homepage +navigation.homepage = "Qt Documentation" diff --git a/debian/usr/local/qt5raspi-5.12.5/doc/global/qt-module-defaults-online.qdocconf b/debian/usr/local/qt5raspi-5.12.5/doc/global/qt-module-defaults-online.qdocconf new file mode 100644 index 0000000..f2e897d --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/doc/global/qt-module-defaults-online.qdocconf @@ -0,0 +1,31 @@ +#The online onfiguration for a Qt 5 module, including Add-Ons and Tools. +#Include this file for a standard Qt 5 module; builds with the online style. + +# Start of footer - the rest is defined in qt-html-templates-online.qdocconf +HTML.footer = \ + "
\n" \ + "

\n" \ + " © 2019 The Qt Company Ltd.\n" \ + " Documentation contributions included herein are the copyrights of\n" \ + " their respective owners. " \ + " The documentation provided herein is licensed under the terms of the" \ + " GNU Free Documentation" \ + " License version 1.3 as published by the Free Software Foundation. " \ + " Qt and respective logos are trademarks of The Qt Company Ltd. " \ + " in Finland and/or other countries worldwide. All other trademarks are property\n" \ + " of their respective owners.

\n" + +#include standard set of macros and C++ defines and ignores +include(macros.qdocconf) +include(qt-cpp-defines.qdocconf) +include(compat.qdocconf) +include(manifest-meta.qdocconf) +include(fileextensions.qdocconf) +include(qt-html-templates-online.qdocconf) + +#extra configuration data DITA information +include(config.qdocconf) + +# single-directory output mode +HTML.nosubdirs = "true" +HTML.outputsubdir = "html" diff --git a/debian/usr/local/qt5raspi-5.12.5/doc/global/qt-module-defaults.qdocconf b/debian/usr/local/qt5raspi-5.12.5/doc/global/qt-module-defaults.qdocconf new file mode 100644 index 0000000..8d0665e --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/doc/global/qt-module-defaults.qdocconf @@ -0,0 +1,7 @@ +#The default configuration for a Qt 5 module, including Add-Ons and Tools. +#Include this file for a standard Qt 5 module. This file is provided for +#compatibility reasons. + +#The default is the offline style. The alternate style is in +#qt-module-defaults-online.qdocconf +include(qt-module-defaults-offline.qdocconf) diff --git a/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/Qt-dark_gradient.png b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/Qt-dark_gradient.png new file mode 100644 index 0000000..6ae10f3 Binary files /dev/null and b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/Qt-dark_gradient.png differ diff --git a/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/Qt-footer-bg.jpg b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/Qt-footer-bg.jpg new file mode 100644 index 0000000..c0ff209 Binary files /dev/null and b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/Qt-footer-bg.jpg differ diff --git a/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/Qt-footer_shadow.png b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/Qt-footer_shadow.png new file mode 100644 index 0000000..5a7063d Binary files /dev/null and b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/Qt-footer_shadow.png differ diff --git a/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/Qt-gradient.png b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/Qt-gradient.png new file mode 100644 index 0000000..aa38227 Binary files /dev/null and b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/Qt-gradient.png differ diff --git a/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/Qt-header-bg.jpg b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/Qt-header-bg.jpg new file mode 100644 index 0000000..c9a6d96 Binary files /dev/null and b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/Qt-header-bg.jpg differ diff --git a/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/Qt-logo.png b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/Qt-logo.png new file mode 100644 index 0000000..01256ab Binary files /dev/null and b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/Qt-logo.png differ diff --git a/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/arrow.png b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/arrow.png new file mode 100644 index 0000000..f2a83a5 Binary files /dev/null and b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/arrow.png differ diff --git a/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/arrow_bc.png b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/arrow_bc.png new file mode 100644 index 0000000..f2a83a5 Binary files /dev/null and b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/arrow_bc.png differ diff --git a/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/arrow_down.png b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/arrow_down.png new file mode 100644 index 0000000..9d01e97 Binary files /dev/null and b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/arrow_down.png differ diff --git a/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/bg_l.png b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/bg_l.png new file mode 100644 index 0000000..90b1da1 Binary files /dev/null and b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/bg_l.png differ diff --git a/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/bg_l_blank.png b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/bg_l_blank.png new file mode 100644 index 0000000..5a9673d Binary files /dev/null and b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/bg_l_blank.png differ diff --git a/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/bg_ll_blank.png b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/bg_ll_blank.png new file mode 100644 index 0000000..95a1c45 Binary files /dev/null and b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/bg_ll_blank.png differ diff --git a/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/bg_r.png b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/bg_r.png new file mode 100644 index 0000000..f0fb121 Binary files /dev/null and b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/bg_r.png differ diff --git a/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/bg_ul_blank.png b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/bg_ul_blank.png new file mode 100644 index 0000000..7051261 Binary files /dev/null and b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/bg_ul_blank.png differ diff --git a/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/bgrContent.png b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/bgrContent.png new file mode 100644 index 0000000..1a81b03 Binary files /dev/null and b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/bgrContent.png differ diff --git a/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/blu_dot.png b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/blu_dot.png new file mode 100644 index 0000000..c332148 Binary files /dev/null and b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/blu_dot.png differ diff --git a/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/box_bg.png b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/box_bg.png new file mode 100644 index 0000000..3322f92 Binary files /dev/null and b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/box_bg.png differ diff --git a/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/breadcrumb.png b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/breadcrumb.png new file mode 100644 index 0000000..0ded551 Binary files /dev/null and b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/breadcrumb.png differ diff --git a/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/btn_next.png b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/btn_next.png new file mode 100644 index 0000000..c649f18 Binary files /dev/null and b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/btn_next.png differ diff --git a/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/btn_prev.png b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/btn_prev.png new file mode 100644 index 0000000..d1d2989 Binary files /dev/null and b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/btn_prev.png differ diff --git a/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/bullet_dn.png b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/bullet_dn.png new file mode 100644 index 0000000..f776247 Binary files /dev/null and b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/bullet_dn.png differ diff --git a/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/bullet_gt.png b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/bullet_gt.png new file mode 100644 index 0000000..7561b4e Binary files /dev/null and b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/bullet_gt.png differ diff --git a/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/bullet_sq.png b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/bullet_sq.png new file mode 100644 index 0000000..a84845e Binary files /dev/null and b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/bullet_sq.png differ diff --git a/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/bullet_up.png b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/bullet_up.png new file mode 100644 index 0000000..7de2f06 Binary files /dev/null and b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/bullet_up.png differ diff --git a/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/feedbackground.png b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/feedbackground.png new file mode 100644 index 0000000..3a38d99 Binary files /dev/null and b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/feedbackground.png differ diff --git a/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/header_bg.png b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/header_bg.png new file mode 100644 index 0000000..a436aa6 Binary files /dev/null and b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/header_bg.png differ diff --git a/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/home.png b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/home.png new file mode 100644 index 0000000..8de6d0c Binary files /dev/null and b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/home.png differ diff --git a/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/horBar.png b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/horBar.png new file mode 100644 index 0000000..100fe91 Binary files /dev/null and b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/horBar.png differ diff --git a/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/ico_note.png b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/ico_note.png new file mode 100644 index 0000000..1379404 Binary files /dev/null and b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/ico_note.png differ diff --git a/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/ico_note_attention.png b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/ico_note_attention.png new file mode 100644 index 0000000..b85b696 Binary files /dev/null and b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/ico_note_attention.png differ diff --git a/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/ico_out.png b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/ico_out.png new file mode 100644 index 0000000..790a05e Binary files /dev/null and b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/ico_out.png differ diff --git a/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/logo.png b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/logo.png new file mode 100644 index 0000000..698dde9 Binary files /dev/null and b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/logo.png differ diff --git a/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/page.png b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/page.png new file mode 100644 index 0000000..1db151b Binary files /dev/null and b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/page.png differ diff --git a/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/page_bg.png b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/page_bg.png new file mode 100644 index 0000000..9b3bd99 Binary files /dev/null and b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/page_bg.png differ diff --git a/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/spinner.gif b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/spinner.gif new file mode 100644 index 0000000..1ed786f Binary files /dev/null and b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/spinner.gif differ diff --git a/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/sprites-combined.png b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/sprites-combined.png new file mode 100644 index 0000000..c4f01c4 Binary files /dev/null and b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/images/sprites-combined.png differ diff --git a/debian/usr/local/qt5raspi-5.12.5/doc/global/template/scripts/extras.js b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/scripts/extras.js new file mode 100644 index 0000000..ba7a4a5 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/scripts/extras.js @@ -0,0 +1,80 @@ +var vOffset_init = 65; +var vOffset = vOffset_init; +var c = 'collapsed'; + +function toggleList(toggle, content, maxItems) { + if (toggle.css('display') == 'none') { + vOffset = vOffset_init; + toggle.removeClass(c); + content.show(); + return; + } else + vOffset = 8; + + if (maxItems > content.children().length) + return; + content.hide(); + toggle.addClass(c); +} + +$(function () { + $('a[href*=#]:not([href=#])').on('click', function (e) { + if (e.which == 2 || e.metaKey || e.ctrlKey || e.shiftKey) + return true; + var target = $(this.hash.replace(/(\.)/g, "\\$1")); + target = target.length ? target : $('[name=' + this.hash.slice(1) + ']'); + if (target.length) { + setTimeout(function () { + $('html, body').animate({scrollTop: target.offset().top - vOffset}, 50);}, 50); + } + }); +}); + +$(window).load(function () { + var hashChanged = function() { + var h = window.location.hash; + var re = /[^a-z0-9_\.\#\-]/i + if (h.length > 1 && !re.test(h)) { + setTimeout(function () { + var tgt = $(h.replace(/(\.)/g, "\\$1")); + tgt = tgt.length ? tgt : $('[name=' + h.slice(1) + ']'); + $(window).scrollTop(tgt.offset().top - vOffset); + }, 0); + } + } + $(window).bind('hashchange', hashChanged); + hashChanged.call(); + + if (!$('.sidebar toc').is(':empty')) { + $('
').prependTo('.sidebar .toc'); + var toc = $('.sidebar .toc ul'); + var tocToggle = $('#toc-toggle'); + var tocCallback = function() { toggleList(tocToggle, toc, 4); }; + + $('#toc-toggle').on('click', function(e) { + e.stopPropagation(); + toc.toggle(); + tocToggle.toggleClass(c); + }); + + tocCallback.call(); + $(window).resize(tocCallback); + } + + if (!$('#sidebar-content').is(':empty')) { + $('#sidebar-content h2').first().clone().prependTo('#sidebar-content'); + $('').prependTo('#sidebar-content'); + var sb = $('#sidebar-content .sectionlist'); + var sbToggle = $('#sidebar-toggle'); + var sbCallback = function() { toggleList(sbToggle, sb, 0); }; + + $('#sidebar-toggle').on('click', function(e) { + e.stopPropagation(); + sb.toggle(); + sbToggle.toggleClass(c); + }); + + sbCallback.call(); + $(window).resize(sbCallback); + } +}); diff --git a/debian/usr/local/qt5raspi-5.12.5/doc/global/template/scripts/main.js b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/scripts/main.js new file mode 100644 index 0000000..823cebe --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/scripts/main.js @@ -0,0 +1,241 @@ +"use strict"; + +function createCookie(name, value, days) { + var expires; + if (days) { + var date = new Date(); + date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000)); + expires = "; expires=" + date.toGMTString(); + } else { + expires = ""; + } + document.cookie = escape(name) + "=" + escape(value) + expires + "; path=/"; + $('.cookies_yum').click(function() { + $(this).fadeOut() + }); +} +function readCookie(name) { + var nameEQ = escape(name) + "="; + var ca = document.cookie.split(';'); + for (var i = 0; i < ca.length; i++) { + var c = ca[i]; + while (c.charAt(0) === ' ') c = c.substring(1, c.length); + if (c.indexOf(nameEQ) === 0) return unescape(c.substring(nameEQ.length, c.length)); + } + return null; +} +function eraseCookie(name) { + createCookie(name, "", -1); +} +function load_sdk(s, id, src) { + var js, fjs = document.getElementsByTagName(s)[0]; + if (document.getElementById(id)) return; + js = document.createElement(s); + js.id = id; + js.src = src; + fjs.parentNode.insertBefore(js, fjs); +} +$(document).ready(function($) { + if (document.documentElement.clientWidth < 1280) { + oneQt.extraLinksToMain(); + } + + $('#menuextras .search').click(function(e){ + e.preventDefault(); + $('.big_bar.account').slideUp(); + $('.big_bar.search').slideToggle(); + $('.big_bar_search').focus(); + $(this).toggleClass('open'); + }); + $('.cookies_yum').click(function() { + $('.cookies_yum').fadeOut(); + createCookie("cookies_nom", "yum", 180); + var cookie_added = 1; + }); + if (!(readCookie('cookies_nom') == 'yum')) { + $('.cookies_yum').fadeIn(); + } else { + var cookie_added = 1; + } + + Modernizr.load({test: Modernizr.input.placeholder, + nope: wpThemeFolder + '/js/placeholders.min.js'}); + + $('#navbar .navbar-toggle').click(function(e) { + e.preventDefault(); + if ($(this).hasClass('opened')) { + $(this).removeClass('opened'); + $('#navbar .navbar-menu').css('max-height', '0px'); + } + else { + $(this).addClass('opened'); + $('#navbar .navbar-menu').css('max-height', $('#navbar .navbar-menu ul').outerHeight() + 'px'); + } + }); + + $(window).resize(function() { + oneQt.stickySidebar(); + oneQt.footerPosition(); + if (document.documentElement.clientWidth < 1280) { + oneQt.extraLinksToMain(); + } else { + oneQt.mainLinkstoExtra(); + } + }); + + $(window).scroll(function() { + oneQt.stickySidebar(); + oneQt.stickyHeader(); + }); + + oneQt.stickySidebar(); + oneQt.footerPosition(); + oneQt.tabContents(); +}); + +$( window ).load(function() { + load_sdk('script', 'facebook-jssdk','//connect.facebook.net/en_US/sdk.js#xfbml=1&appId=207346529386114&version=v2.0'); + load_sdk('script', 'twitter-wjs', '//platform.twitter.com/widgets.js'); + $.getScript("//www.google.com/jsapi", function(){ + google.load("feeds", "1", {"callback": oneQt.liveFeeds}); + }); +}); + +var oneQt = { + stickySidebar: function() { + if ($('#sidebar').length && $('#sidebar').outerHeight() > 20) { + var $sidebar = $('#sidebar'); + var $win = $(window); + var $sidebarContainer = $sidebar.parent(); + var headerHeight = $('#navbar').outerHeight(); + if ($win.outerHeight() - headerHeight > $sidebar.innerHeight() && + $win.scrollTop() > $sidebarContainer.offset().top) { + var newTop = headerHeight + $win.scrollTop() - $sidebarContainer.offset().top; + if (newTop + $sidebar.innerHeight() > $sidebarContainer.innerHeight()) + newTop = $sidebarContainer.innerHeight() - $sidebar.innerHeight(); + + $sidebar.css({top: newTop +'px'}) + } + else { + $sidebar.css({top: '0'}) + } + } + }, + + footerPosition: function () { + $('#footerbar').removeClass('fixed'); + if (($('.hbspt-form').length > 0) || ($('#customerInfo').length > 0) || ($('.purchase_bar').length > 0)) { + var footerBottomPos = $('#footerbar').offset().top + $('#footerbar').outerHeight(); + if (footerBottomPos < $(window).height()) + $('#footerbar').addClass('fixed'); + } + }, + + stickyHeader: function () { + var originalHeaderHeight = 79; + if ($(window).scrollTop() > originalHeaderHeight) { + $('#navbar').addClass('fixed'); + $('#bottom_header').fadeOut(); + + if (!(cookie_added == 1)) { + $('.cookies_yum').fadeOut(); + createCookie("cookies_nom", "yum", 180); + var cookie_added = 1; + } + } + else { + $('#navbar').removeClass('fixed'); + $('#bottom_header').fadeIn(); + } + }, + + tabContents: function () { + $('.tab-container').each(function(i) { + var $el = $(this); + $el.find('.tab-titles li:eq(0)').addClass('active'); + $el.find('.tab-contents .tab:eq(0)').addClass('active'); + $el.find('.tab-titles a').click(function(e) { + e.preventDefault(); + var index = $(this).parent().index(); + $el.find('.tab-titles li').removeClass('active'); + $el.find('.tab-contents .tab').removeClass('active'); + $(this).parent().addClass('active'); + $el.find('.tab-contents .tab').eq(index).addClass('active'); + }) + }); + }, + + liveFeeds: function () { + $('.feed-container').each(function(i) { + var feedUrl = $(this).data('url'); + if (feedUrl != "") oneQt.blogFeed($(this), feedUrl); + }); + }, + + blogFeed: function ($container, feedUrl) { + var feed = new google.feeds.Feed(feedUrl); + feed.setNumEntries(3); + feed.load(function(result) { + $container.html(''); + if (!result.error) { + for (var i = 0; i < result.feed.entries.length; i++) { + var entry = result.feed.entries[i]; + var $article = $('
'); + $container.append($article); + var html = '
'; + html += ' '; + html += '
'; + html += '
'; + html += '

' + html += '

' + html += '

'; + html += '
    '; + html += '
'; + html += '
'; + $article.append(html); + $article.find('h4 a').text(result.feed.title); + $article.find('h3 a').text(entry.title); + $article.find('p a').text(entry.author); + try { + for (var j=0; j'); + $li.find('a').text(entry.categories[j]); + $article.find('.taglist').append($li); + } + } catch(e) {} + } + if (result.feed.link && result.feed.link != "") { + var linkHtml = 'Show all'; + $container.append(linkHtml); + } + } + }); + }, + + extraLinksToMain: function() { + var extramenuLinks = $('#menuextras').find('li'); + var mainmenu = $('#mainmenu'); + var count = 0; + if ($(extramenuLinks).length > 2) { + $(extramenuLinks).each(function() { + if (count < 3) { + var newLink = $(this); + $(newLink).addClass('dynamic-add'); + $(mainmenu).append(newLink); + } + count++; + }); + } + }, + + mainLinkstoExtra: function() { + var mainmenuLinks = $('#mainmenu').find('.dynamic-add'); + var extramenu = $('#menuextras'); + var count = 0; + $(mainmenuLinks).each(function() { + var newLink = $(this); + $(extramenu).prepend(newLink); + count++; + }); + } +} diff --git a/debian/usr/local/qt5raspi-5.12.5/doc/global/template/style/cookie-confirm.css b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/style/cookie-confirm.css new file mode 100644 index 0000000..51e0e4a --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/style/cookie-confirm.css @@ -0,0 +1,219 @@ +body div#cookie-confirmation, +body div#cookie-confirmation.can-use-gradients { + background:#222840 !important; + position:fixed !important; + box-shadow:0 0 10px #222840 !important; + border-bottom:none; + top:auto; + bottom:0; +} +body div#cookie-confirmation div#cookie-confirmation-inner, +body div#cookie-confirmation.can-use-gradients div#cookie-confirmation-inner { + padding:0 30px !important; + overflow:hidden; + display:-ms-flexbox; + display:flex; + -ms-flex-direction:row; + flex-direction:row; + -ms-flex-align:center; + align-items:center; + height:60px; +} + +body div#cookie-confirmation div#cookie-confirmation-inner p, +body div#cookie-confirmation.can-use-gradients div#cookie-confirmation-inner p { + text-shadow:none !important; + font-family:"Titillium Web" !important; + font-size:inherit !important; + line-height:inherit !important; + float:left; + margin:0!important; +} + +body div#cookie-confirmation div#cookie-confirmation-inner p a, +body div#cookie-confirmation.can-use-gradients div#cookie-confirmation-inner p a { + font-family:inherit !important; + color:#41cd52 !important; + font-size:inherit !important; +} +body div#cookie-confirmation div#cookie-confirmation-inner #cookie-confirmation-buttons-area, +body div#cookie-confirmation.can-use-gradients div#cookie-confirmation-inner #cookie-confirmation-buttons-area { + display:-ms-flexbox; + display:flex; + float:left; + margin-left:50px; +} + +body div#cookie-confirmation div#cookie-confirmation-inner #cookie-confirmation-buttons-area a#confirmation-button, +body div#cookie-confirmation.can-use-gradients div#cookie-confirmation-inner #cookie-confirmation-buttons-area a#confirmation-button { + text-shadow:none !important; + border-radius:0; + border:0 !important; + box-shadow:none; + line-height:32px !important; + height:32px !important; + font-size:16px !important; + font-weight:400 !important; + color:#fff !important; + font-family:"Titillium Web" !important; + display:inline-block; + padding:0 15px !important; + position:relative; + background:#41cd52 !important; + transition:all .2s ease-in-out; +} +body div#cookie-confirmation div#cookie-confirmation-inner #cookie-confirmation-buttons-area a#confirmation-button:hover, +body div#cookie-confirmation.can-use-gradients div#cookie-confirmation-inner #cookie-confirmation-buttons-area a#confirmation-button:hover{ + background:#17a81a !important; +} + +body div#cookie-confirmation div#cookie-confirmation-inner #cookie-confirmation-buttons-area a#confirmation-button:after, +body div#cookie-confirmation div#cookie-confirmation-inner #cookie-confirmation-buttons-area a#confirmation-button:before, +body div#cookie-confirmation.can-use-gradients div#cookie-confirmation-inner #cookie-confirmation-buttons-area a#confirmation-button:after, +body div#cookie-confirmation.can-use-gradients div#cookie-confirmation-inner #cookie-confirmation-buttons-area a#confirmation-button:before { + content:''; + width:20px; + height:20px; + background:#222840; + position:absolute; +} + +body div#cookie-confirmation div#cookie-confirmation-inner #cookie-confirmation-buttons-area a#confirmation-button:before, +body div#cookie-confirmation.can-use-gradients div#cookie-confirmation-inner #cookie-confirmation-buttons-area a#confirmation-button:before { + -ms-transform:rotate(45deg); + transform:rotate(45deg); + top:-12px; + left:-13px; +} +body div#cookie-confirmation div#cookie-confirmation-inner #cookie-confirmation-buttons-area a#confirmation-button:after, +body div#cookie-confirmation.can-use-gradients div#cookie-confirmation-inner #cookie-confirmation-buttons-area a#confirmation-button:after { + -ms-transform:rotate(-135deg); + transform:rotate(-135deg); + top:auto; + right:-13px; + bottom:-12px; +} + +/*! CSS Used from: Embedded */ + div#cookie-confirmation{ + position:absolute; + left:0; + top:0; + width:100%; + height:auto; + background-color:#2d2d2d; + border-bottom:1px solid gray; + border-bottom:1px solid rgba(0,0,0,0.5); + -webkit-box-shadow:0 1px 2px rgba(0,0,0,0.2); + -moz-box-shadow:0 1px 2px rgba(0,0,0,0.2); + box-shadow:0 1px 2px rgba(0,0,0,0.2); + font-size:14px !important; + line-height:18px !important; + font-family:helvetica neue,helvetica,arial,sans !important; + color:#fff !important; + text-shadow:0 1px 0 rgba(0,0,0,0.7) !important; + text-align:left !important; + z-index:100000000 !important; +} +div#cookie-confirmation.can-use-gradients{ + background-color:rgba(0,0,0,0); + background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, rgba(0,0,0,0.9)), color-stop(100%, rgba(0,0,0,0.75))); + background-image:-webkit-linear-gradient(top, rgba(0,0,0,0.9),rgba(0,0,0,0.75)); + background-image:-moz-linear-gradient(top, rgba(0,0,0,0.9),rgba(0,0,0,0.75)); + background-image:-o-linear-gradient(top, rgba(0,0,0,0.9),rgba(0,0,0,0.75)); + background-image:linear-gradient(top, rgba(0,0,0,0.9),rgba(0,0,0,0.75)); + background-image:linear-gradient(to bottom, rgba(0,0,0,0.9),rgba(0,0,0,0.75)); +} + div#cookie-confirmation div#cookie-confirmation-inner{ + padding:12px 18px 18px; +} + div#cookie-confirmation div#cookie-confirmation-inner a{ + font-family:helvetica neue,helvetica,arial,sans !important; + color:#add8e6 !important; + font-size:14px !important; + text-decoration:none !important; + background:none !important; + border:none !important; + font-weight:normal !important; +} + div#cookie-confirmation div#cookie-confirmation-inner a:hover{ + text-decoration:underline !important; + background:none !important; + border:none !important; +} + div#cookie-confirmation div#cookie-confirmation-inner div#cookie-confirmation-buttons-area{ + text-align:center !important; +} + div#cookie-confirmation div#cookie-confirmation-inner a#confirmation-button{ + font-family:helvetica neue,helvetica,arial,sans!important; + font-size:14px !important; + font-weight:normal !important; + margin-right:16px !important; + padding:4px 12px !important; + background-color:green !important; + border:1px solid gray !important; + border:1px solid rgba(0,0,0,0.5) !important; + background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, transparent), color-stop(100%, rgba(0,0,0,0.2))); + background-image:-webkit-linear-gradient(top, transparent,rgba(0,0,0,0.2)); + background-image:-moz-linear-gradient(top, transparent,rgba(0,0,0,0.2)); + background-image:-o-linear-gradient(top, transparent,rgba(0,0,0,0.2)); + background-image:linear-gradient(top, transparent,rgba(0,0,0,0.2)); + -webkit-border-radius:4px; + -moz-border-radius:4px; + -ms-border-radius:4px; + -o-border-radius:4px; + border-radius:4px; + -webkit-box-shadow:0 1px 2px rgba(0,0,0,0.2),inset 0 1px 0 rgba(255,255,255,0.5); + -moz-box-shadow:0 1px 2px rgba(0,0,0,0.2),inset 0 1px 0 rgba(255,255,255,0.5); + box-shadow:0 1px 2px rgba(0,0,0,0.2),inset 0 1px 0 rgba(255,255,255,0.5); + line-height:14px !important; + color:#fff !important; + text-shadow:0 1px 0 rgba(0,0,0,0.5) !important; + text-decoration:none !important; +} + div#cookie-confirmation div#cookie-confirmation-inner a#confirmation-button:hover{ + background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, transparent), color-stop(100%, rgba(0,0,0,0.3))); + background-image:-webkit-linear-gradient(top, transparent,rgba(0,0,0,0.3)); + background-image:-moz-linear-gradient(top, transparent,rgba(0,0,0,0.3)); + background-image:-o-linear-gradient(top, transparent,rgba(0,0,0,0.3)); + background-image:linear-gradient(top, transparent,rgba(0,0,0,0.3)); +} + div#cookie-confirmation div#cookie-confirmation-inner a#confirmation-button:active{ + background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, rgba(0,0,0,0.3)), color-stop(100%, rgba(0,0,0,0.3))); + background-image:-webkit-linear-gradient(top, rgba(0,0,0,0.3),rgba(0,0,0,0.3)); + background-image:-moz-linear-gradient(top, rgba(0,0,0,0.3),rgba(0,0,0,0.3)); + background-image:-o-linear-gradient(top, rgba(0,0,0,0.3),rgba(0,0,0,0.3)); + background-image:linear-gradient(top, rgba(0,0,0,0.3),rgba(0,0,0,0.3)); + -webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,0.2); + -moz-box-shadow:inset 0 1px 2px rgba(0,0,0,0.2); + box-shadow:inset 0 1px 2px rgba(0,0,0,0.2); +} +div#cookie-confirmation div#cookie-confirmation-inner p{ + line-height:18px !important; + font-family:helvetica neue,helvetica,arial,sans !important; + font-weight:normal !important; + font-size:14px !important; + margin:0 0 16px !important; + padding:0 !important; + color:#fff !important; + text-align:left !important; +} +@media screen and (max-width: 480px) { + div#cookie-confirmation { + font-size:12px !important; + } + div#cookie-confirmation div#cookie-confirmation-inner { + padding:8px 14px 14px !important; + } + div#cookie-confirmation div#cookie-confirmation-inner a { + font-size:12px !important; + } + div#cookie-confirmation div#cookie-confirmation-inner a#confirmation-button { + font-size:12px !important; + } + div#cookie-confirmation div#cookie-confirmation-inner p { + font-size:12px !important; + margin-bottom:12px !important; + line-height:15px !important; + } +} diff --git a/debian/usr/local/qt5raspi-5.12.5/doc/global/template/style/cookiebar-x.png b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/style/cookiebar-x.png new file mode 100644 index 0000000..6aea1e6 Binary files /dev/null and b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/style/cookiebar-x.png differ diff --git a/debian/usr/local/qt5raspi-5.12.5/doc/global/template/style/doc_search.png b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/style/doc_search.png new file mode 100644 index 0000000..0d7bccd Binary files /dev/null and b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/style/doc_search.png differ diff --git a/debian/usr/local/qt5raspi-5.12.5/doc/global/template/style/gsc.css b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/style/gsc.css new file mode 100644 index 0000000..e3d6391 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/style/gsc.css @@ -0,0 +1,192 @@ +.gsc-control-cse table, table td, table th { + border: none !important; + margin-bottom: 10px !important +} +.gsc-control-cse { + width: 100% !important; + box-sizing: border-box !important +} +.gsc-control-cse * { + font-family: 'Open Sans', Arial, Helvetica, sans-serif !important; + line-height: 1.5 !important; + font-weight: 300 !important +} +.gsc-control-cse, +.gsc-control-cse .gsc-table-result { + width: 100% !important; + font-family: 'Open Sans', Arial, Helvetica, sans-serif !important; + font-weight: 300 !important; + font-size: 13px !important +} +.gsc-resultsHeader { + width: 100% !important; + clear: both !important +} +.gsc-resultsHeader td.gsc-twiddleRegionCell { + width: 75% !important +} +.gsc-resultsbox-visible { + display: block !important +} +.gsc-resultsbox-invisible { + display: none !important +} +.gsc-results { + padding-bottom: 2px !important; + width: 99% !important +} +.gsc-result { + margin-bottom: 10px !important +} +.gsc-result .gs-title { + height: 1.4em !important; + overflow: hidden !important +} +.gsc-result div.gs-watermark { + display: none !important +} +.gsc-results .gsc-result img.gs-ad-marker { + display: none !important +} +.gsc-webResult:after { + content: "." !important; + display: block !important; + height: 0 !important; + clear: both !important; + visibility: hidden !important +} +.gsc-webResult { + zoom: 1 !important +} +.gsc-webResult .gsc-result { + margin: 0 !important; + padding: .5em 0 !important; + border-bottom: 1px solid #ebebeb !important +} +.gsc-above-wrapper-area { + border-bottom: 1px solid #E9E9E9 !important; + padding: 5px 0 5px 0 !important +} +.gsc-above-wrapper-area-invisible { + display: none !important +} +.gsc-above-wrapper-area-container { + width: 100% !important +} +.gsc-result-info { + text-align: left !important; + color: #676767 !important; + font-size: 13px !important; + padding-left: 8px !important; + margin: 10px 0 10px 0 !important +} +.gsc-result-info-container { + text-align: left !important +} +.gsc-result-info-invisible { + display: none !important +} +.gsc-orderby-container { + text-align: right !important; + background: transparent !important +} +.gsc-orderby-invisible { + display: none !important +} +.gsc-orderby-label { + color: #676767 !important; + padding: 5px 5px 6px 0 !important +} +.gsc-selected-option-container { + background-color: transparent !important; + border: 1px solid #eee !important; + border: 1px solid rgba(0, 0, 0, 0.1) !important; + border-radius: 2px !important; + box-shadow: none !important; + color: #444 !important; + cursor: default !important; + font-size: 11px !important; + font-weight: bold !important; + height: 20px !important; + line-height: 20px !important; + max-width: 90% !important; + min-width: 54px !important; + outline: 0 !important; + padding: 0 28px 0 6px !important; + position: relative !important; + text-align: center !important; + width: 50px !important !important +} +.gsc-selected-option { + position: relative !important; + width: 100% !important; +} +.gsc-control-cse .gsc-option-selector { + border: none !important; + height: 11px !important; + margin-top: -4px !important; + position: absolute !important; + right: 5px !important; + top: 8px !important; + width: 7px !important; + padding: 0 5px 0 5px !important; + background: url(//ssl.gstatic.com/ui/v1/disclosure/small-grey-disclosure-arrow-down.png) center no-repeat +} +.gsc-results .gsc-cursor-box .gsc-trailing-more-results { + margin-bottom: 0 !important; + display: inline !important +} +.gsc-results .gsc-cursor { + display: inline !important +} +.gsc-results .gsc-cursor-box { + margin: 10px 5px 10px !important +} +.gsc-results .gsc-cursor-box .gsc-cursor-page { + cursor: pointer !important; + color: #000000 !important; + text-decoration: underline !important; + margin-right: 8px !important; + display: inline !important +} +.gsc-results .gsc-cursor-box .gsc-cursor-current-page { + cursor: default !important; + color: white !important; + background-color: #5caa15 !important; + font-weight: bold !important; + text-decoration: none !important; + padding: 0 3px 0 3px !important; + margin-top: 10px !important; + cursor: pointer !important +} +.gs-result .gs-title, +.gs-result .gs-title * { + color: #5caa15 !important; + text-decoration: underline !important +} +.gs-webResult div.gs-visibleUrl-long, +.gs-promotion div.gs-visibleUrl-long { + overflow: hidden !important; + display: none !important +} +.gs-webResult div.gs-per-result-labels a.gs-label { + text-decoration: underline !important; + cursor: pointer !important; + padding: 3px !important; + color: #26282a !important +} +.gs-webResult div.gs-per-result-labels a.gs-label.gs-labelActive { + cursor: default !important; + text-decoration: none !important +} +.gsc-control-cse:after { + content: "." !important; + display: block !important; + clear: both !important; + height: 0 !important; + visibility: hidden !important +} + +*:first-child + html .gsc-inline-block { + display: inline !important +} diff --git a/debian/usr/local/qt5raspi-5.12.5/doc/global/template/style/icomoon.eot b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/style/icomoon.eot new file mode 100644 index 0000000..68f0fa6 Binary files /dev/null and b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/style/icomoon.eot differ diff --git a/debian/usr/local/qt5raspi-5.12.5/doc/global/template/style/icomoon.svg b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/style/icomoon.svg new file mode 100644 index 0000000..3246f83 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/style/icomoon.svg @@ -0,0 +1,20 @@ + + + +Generated by IcoMoon + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/debian/usr/local/qt5raspi-5.12.5/doc/global/template/style/icomoon.ttf b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/style/icomoon.ttf new file mode 100644 index 0000000..4518527 Binary files /dev/null and b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/style/icomoon.ttf differ diff --git a/debian/usr/local/qt5raspi-5.12.5/doc/global/template/style/icomoon.woff b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/style/icomoon.woff new file mode 100644 index 0000000..5c8466c Binary files /dev/null and b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/style/icomoon.woff differ diff --git a/debian/usr/local/qt5raspi-5.12.5/doc/global/template/style/list_arrow.png b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/style/list_arrow.png new file mode 100644 index 0000000..7bb07b3 Binary files /dev/null and b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/style/list_arrow.png differ diff --git a/debian/usr/local/qt5raspi-5.12.5/doc/global/template/style/list_expand.png b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/style/list_expand.png new file mode 100644 index 0000000..d214514 Binary files /dev/null and b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/style/list_expand.png differ diff --git a/debian/usr/local/qt5raspi-5.12.5/doc/global/template/style/offline-simple.css b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/style/offline-simple.css new file mode 100644 index 0000000..b89ca5a --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/style/offline-simple.css @@ -0,0 +1,149 @@ +pre, .LegaleseLeft { + font-family: Courier, monospace; + font-weight: 600; + vertical-align: top; + margin: 15px 85px 15px 35px; + padding: 25px; + width: 90%; + overflow-x:auto; +} + +pre a[href] { + color: #5caa15; +} + +p { + width: 70%; + margin: 15px 0px 10px 15px; +} + +table p { + margin: 0px; + padding: 0px; +} + +a[href] { + color: #007330; + text-decoration: none; +} + +/* Different color for ext. links */ +a[href|="http://"], a[href|="https://"] { + color: #6bb8db; +} + +h1.title { + margin-top: 30px; + margin-left: 6px; + padding: 6px; +} + +h2, p.h2 { + padding: 4px; + margin: 30px 0px 20px 10px; +} + +h3 { + margin: 30px 0px 30px 6px; +} + +ul, ol { + margin-top: 4px; + margin-bottom: 0px; +} + +ul li, ol li { + margin-bottom: 8px; +} + +.mainContent li.level2 { + margin-left: 16px; +} + +.rightAlign { + text-align: right; +} + +h3.fn, span.fn { + word-spacing: 3px; + padding: 5px; + text-decoration: none; + font-weight: 400; + margin: 45px 0px 0px 6px; +} +.fngroup h3.fngroupitem { + margin-bottom: 5px; +} +table { + max-width: 80%; + padding: 15px 45px 15px 15px; +} + +table th { + text-align: left; + padding: 8px; +} + +table td { + padding: 6px 10px 6px 10px; +} + +table.qmlname td { + padding: 0px; + margin-left: 6px; +} + +table.qmlname p .name, +h3.fn .name, h3.fn .type { + font-weight: bold; +} + +.context h3.fn { + font-weight: 400; +} + +.qmlreadonly, .qmldefault { + font-family: Courier, monospace; + margin-right: 6px; +} + +code { + font-family: Courier, monospace; + font-weight: 400; +} + +p.naviNextPrevious { + text-align: right; + margin-right: 20px; +} + +span.naviSeparator { + white-space: pre; +} + +.toc h3 { + margin: 0px 0px 10px 6px; +} + +.toc ul { + list-style-type: none; +} + +.navigationbar table { + padding: 0; + margin: 0; +} + +.footer, .footer p { + padding: 5px 0px 5px 0px; + margin: 45px 15px 5px 15px; + font-size: 8.5pt; +} + +.footer p { + margin: 0px; +} + +.video { + margin: 15px 0 0 15px; +} diff --git a/debian/usr/local/qt5raspi-5.12.5/doc/global/template/style/offline.css b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/style/offline.css new file mode 100644 index 0000000..13c9427 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/style/offline.css @@ -0,0 +1,805 @@ +body { + font: normal 400 14px/1.2 Arial; + margin-top: 85px; + font-family: Arial, Helvetica; + text-align: left; + margin-left: 5px; + margin-right: 5px; + background-color: #fff; +} + +p { + line-height: 20px +} + +img { + margin-left: 0px; + max-width: 800px; + height: auto; +} + +.content .border img { + box-shadow:3px 3px 8px 3px rgba(200,200,200,0.5) +} + +.content .border .player { + box-shadow:3px 3px 8px 3px rgba(200,200,200,0.5) +} + +.content .indexboxcont li { + font: normal bold 13px/1 Verdana + } + +.content .normallist li { + font: normal 13px/1 Verdana + } + +.descr { + margin-top: 35px; + margin-bottom: 45px; + margin-left: 5px; + text-align: left; + vertical-align: top; +} + +.name { + max-width: 75%; + font-weight: 100; +} + +tt { + text-align: left +} + +/* +----------- +links +----------- +*/ + +a:link { + color: #007330; + text-decoration: none; + text-align: left; +} + +a.qa-mark:target:before { + content: "***"; + color: #ff0000; +} + +a:hover { + color: #44a51c; + text-align: left; +} + +a:visited { + color: #007330; + text-align: left; +} + +a:visited:hover { + color: #44a51c; + text-align: left; +} + +/* +----------- +offline viewing: HTML links display an icon +----------- +*/ + +a[href*="http://"], a[href*="ftp://"], a[href*="https://"] { + text-decoration: none; + background-image: url(../images/ico_out.png); + background-repeat: no-repeat; + background-position: left; + padding-left: 20px; + text-align: left; +} + +.flags { + text-decoration: none; + text-height: 24px; +} + +.flags:target { + background-color: #FFFFD6; +} + +/* +------------------------------- +NOTE styles +------------------------------- +*/ + +.notetitle, .tiptitle, .fastpathtitle { + font-weight: bold +} + +.attentiontitle, .cautiontitle, .dangertitle, .importanttitle, .remembertitle, .restrictiontitle { + font-weight: bold +} + +.note, .tip, .fastpath { + background: #F2F2F2 url(../images/ico_note.png); + background-repeat: no-repeat; + background-position: top left; + padding: 5px; + padding-left: 40px; + padding-bottom: 10px; + border: #999 1px dotted; + color: #666666; + margin: 5px; +} + +.attention, .caution, .danger, .important, .remember, .restriction { + background: #F2F2F2 url(../images/ico_note_attention.png); + background-repeat: no-repeat; + background-position: top left; + padding: 5px; + padding-left: 40px; + padding-bottom: 10px; + border: #999 1px dotted; + color: #666666; + margin: 5px; +} + +/* +------------------------------- +Top navigation +------------------------------- +*/ + +.qtref { + display: block; + position: relative; + height: 15px; + z-index: 1; + font-size: 11px; + padding-right: 10px; + float: right; +} + +.naviNextPrevious { + clear: both; + display: block; + position: relative; + text-align: right; + top: -47px; + float: right; + height: 20px; + z-index: 1; + padding-right: 10px; + padding-top: 2px; + vertical-align: top; + margin: 0px; +} + +.naviNextPrevious > a:first-child { + background-image: url(../images/btn_prev.png); + background-repeat: no-repeat; + background-position: left; + padding-left: 20px; + height: 20px; + padding-left: 20px; + } + +.naviNextPrevious > a:last-child { + background-image: url(../images/btn_next.png); + background-repeat: no-repeat; + background-position: right; + padding-right: 20px; + height: 20px; + margin-left: 30px; + } + +.naviSeparator { display: none } +/* +----------- +footer and license +----------- +*/ + +.footer { + text-align: left; + padding-top: 45px; + padding-left: 5px; + margin-top: 45px; + margin-bottom: 45px; + font-size: 10px; + border-top: 1px solid #999; +} + +.footer p { + line-height: 14px; + font-size: 11px; + padding: 0; + margin: 0; +} + +.footer a[href*="http://"], a[href*="ftp://"], a[href*="https://"] { + font-weight: bold; +} + +.footerNavi { + width: auto; + text-align: right; + margin-top: 50px; + z-index: 1; +} + +.navigationbar { + display: block; + position: relative; + top: -20px; + border-top: 1px solid #cecece; + border-bottom: 1px solid #cecece; + background-color: #F2F2F2; + z-index: 1; + height: 20px; + padding-left: 7px; + margin: 0px; + padding-top: 2px; + margin-left: -5px; + margin-right: -5px; +} + +.navigationbar .first { + background: url(../images/home.png); + background-position: left; + background-repeat: no-repeat; + padding-left: 20px; + } + +.navigationbar ul { + margin: 0px; + padding: 0px; + } + + .navigationbar ul li { + list-style-type: none; + padding-top: 2px; + padding-left: 4px; + margin: 0; + height: 20px; + } + +.navigationbar li { + float: left + } + + .navigationbar li a, .navigationbar td a { + display: block; + text-decoration: none; + background: url(../images/arrow_bc.png); + background-repeat: no-repeat; + background-position: right; + padding-right: 17px; + } + +table.buildversion { + float: right; + margin-top: -18px !important; +} + +.navigationbar table { + border-radius: 0; + border: 0 none; + background-color: #F2F2F2; + margin: 0; +} + +.navigationbar table td { + padding: 0; + border: 0 none; +} + +#buildversion { + font-style: italic; + font-size: small; + float: right; + margin-right: 5px; +} + +/* + +/* table of content +no display +*/ + +/* +----------- +headers +----------- +*/ + +@media screen { + .title { + color: #313131; + font-size: 24px; + font-weight: normal; + left: 0; + padding-bottom: 20px; + padding-left: 10px; + padding-top: 20px; + position: absolute; + right: 0; + top: 0; + background-color: #E6E6E6; + border-bottom: 1px #CCC solid; + border-top: 2px #CCC solid; + font-weight: bold; + margin-left: 0px; + margin-right: 0px; + } + .subtitle, .small-subtitle { + display: block; + clear: left; + } +} + +h1 { + margin: 0 +} + +h2, p.h2 { + font: 500 16px/1.2 Arial; + font-weight: 100; + background-color: #F2F3F4; + padding: 4px; + margin-bottom: 30px; + margin-top: 30px; + border-top: #E0E0DE 1px solid; + border-bottom: #E0E0DE 1px solid; + max-width: 99%; +} + +h2:target { + background-color: #F2F3D4; +} + +h3 { + font: 500 14px/1.2 Arial; + font-weight: 100; + text-decoration: underline; + margin-bottom: 30px; + margin-top: 30px; +} + +h3.fn, span.fn { + border-width: 1px; + border-style: solid; + border-color: #E6E6E6; + -moz-border-radius: 7px 7px 7px 7px; + -webkit-border-radius: 7px 7px 7px 7px; + border-radius: 7px 7px 7px 7px; + background-color: #F6F6F6; + word-spacing: 3px; + padding: 5px 5px; + text-decoration: none; + font-weight: bold; + max-width: 75%; + font-size: 14px; + margin: 0px; + margin-top: 45px; +} +.fngroup h3.fngroupitem { + margin-bottom: 5px; +} +h3.fn code { + float: right; +} +h3.fn:target { + background-color: #F6F6D6; +} + +.name { + color: #1A1A1A +} + +.type { + color: #808080 +} + +@media print { + .title { + color: #0066CB; + font-family: Arial, Helvetica; + font-size: 32px; + font-weight: normal; + left: 0; + position: absolute; + right: 0; + top: 0; + } +} + +/* +----------------- +table styles +----------------- +*/ + +.table img { + border: none; + margin-left: 0px; + -moz-box-shadow: 0px 0px 0px #fff; + -webkit-box-shadow: 0px 0px 0px #fff; + box-shadow: 0px 0px 0px #fff; +} + +/* table with border alternative colours*/ + +table, pre, .LegaleseLeft { + -moz-border-radius: 7px 7px 7px 7px; + -webkit-border-radius: 7px 7px 7px 7px; + border-radius: 7px 7px 7px 7px; + background-color: #F6F6F6; + border: 1px solid #E6E6E6; + border-collapse: separate; + margin-bottom: 25px; + margin-left: 15px; + font-size: 12px; + line-height: 1.2; +} + + table tr.even { + background-color: white; + color: #66666E; + } + + table tr.odd { + background-color: #F6F6F6; + color: #66666E; + } + + table tr:target { + background-color: #F6F6D6; + } + + table thead { + text-align: left; + padding-left: 20px; + background-color: #e1e0e0; + border-left: none; + border-right: none; + } + + table thead th { + padding-top: 5px; + padding-left: 10px; + padding-bottom: 5px; + border-bottom: 2px solid #D1D1D1; + padding-right: 10px; + } + + table th { + text-align: left; + padding-left: 20px; + } + + table td { + padding: 3px 15px 3px 20px; + border-bottom: #CCC dotted 1px; + } + + table p { + margin: 0px + } + +.LegaleseLeft { + font-family: monospace; + white-space: pre-wrap; +} +/* table bodless & white*/ + +.borderless { + border-radius: 0px 0px 0px 0px; + background-color: #fff; + border: 1px solid #fff; +} + +.borderless tr { + background-color: #FFF; + color: #66666E; + } + +.borderless td { + border: none; + border-bottom: #fff dotted 1px; + } + +/* +----------- +List +----------- +*/ + +ul { + margin-top: 10px; +} + +li { + margin-bottom: 10px; + padding-left: 8px; + list-style: outside; + text-align: left; +} + + ul > li { + list-style-type: square; + } + +ol { + margin: 10px; + padding: 0; +} + +ol.A > li { + list-style-type: upper-alpha; +} + +ol.a > li{ + list-style-type: lower-alpha; +} + + ol > li { + margin-left: 30px; + padding-left: 8px; + list-style: decimal; + } + +.centerAlign { + text-align: left +} + +.cpp, .LegaleseLeft { + display: block; + margin: 10px; + overflow: auto; + padding: 20px 20px 20px 20px; +} + +.js { + display: block; + margin: 10px; + overflow: auto; + padding: 20px 20px 20px 20px; +} + +.memItemLeft { + padding-right: 3px +} + +.memItemRight { + padding: 3px 15px 3px 0 +} + +.qml { + display: block; + margin: 10px; + overflow: auto; + padding: 20px 20px 20px 20px; +} + +.qmldefault { + padding-left: 5px; + float: right; + color: red; +} + +.qmlreadonly { + padding-left: 5px; + float: right; + color: #254117; +} + +.rightAlign { + padding: 3px 5px 3px 10px; + text-align: right; +} + +.qmldoc { + margin-left: 15px +} + +.flowList { + padding: 25px +} +.flowList dd { + display: inline-block; + margin-left: 10px; + width: 255px; + line-height: 1.15em; + overflow-x: hidden; + text-overflow: ellipsis +} +.alphaChar { + font-size: 2em; + position: relative +} +/* +----------- +Content table +----------- +*/ + +@media print { + .toc { + float: right; + clear: right; + padding-bottom: 10px; + padding-top: 50px; + width: 100%; + background-image: url(../images/bgrContent.png); + background-position: top; + background-repeat: no-repeat; + } +} + +@media screen { + .toc { + float: right; + clear: right; + vertical-align: top; + -moz-border-radius: 7px 7px 7px 7px; + -webkit-border-radius: 7px 7px 7px 7px; + border-radius: 7px 7px 7px 7px; + background: #FFF url('../images/bgrContent.png'); + background-position: top; + background-repeat: repeat-x; + border: 1px solid #E6E6E6; + padding-left: 5px; + padding-bottom: 10px; + height: auto; + width: 200px; + text-align: left; + margin-left: 20px; + } +} + + +.toc h3 { + text-decoration: none +} + +.toc h3 { + font: 500 14px/1.2 Arial; + font-weight: 100; + padding: 0px; + margin: 0px; + padding-top: 5px; + padding-left: 5px; +} + +.toc ul { + padding-left: 10px; + padding-right: 5px; +} + +.toc ul li { + margin-left: 15px; + list-style-image: url(../images/bullet_dn.png); + marker-offset: 0px; + margin-bottom: 8px; + padding-left: 0px; + } + +.toc .level1 { + border: none +} + +.toc .level2 { + border: none; + margin-left: 25px; +} + +.level3 { + border: none; + margin-left: 30px; +} + +.clearfix { + clear: both +} + +/* +----------- +Landing page +----------- +*/ + +.col-group { + white-space: nowrap; + vertical-align: top; +} + + +.landing h2 { + background-color: transparent; + border: none; + margin-bottom: 0px; + font-size: 18px; +} + +.landing a, .landing li { + font-size: 13px; + font-weight: bold !important; +} + +.col-1 { + display: inline-block; + white-space: normal; + width: 70%; + height: 100%; + float: left; +} + +.col-2 { + display: inline-block; + white-space: normal; + width: 20%; + margin-left: 5%; + position: relative; + top: -20px; +} + +.col-1 h1 { + margin: 20px 0 0 0; + } + +.col-1 h2 { + font-size: 18px; + font-weight: bold !important; +} + +.landingicons { + display: inline-block; + width: 100%; +} + +.icons1of3 { + display: inline-block; + width: 33.3333%; + float: left; +} + +.icons1of3 h2, .doc-column h2 { + font-size: 15px; + margin: 0px; + padding: 0px; +} + +div.multi-column { + position: relative; +} + +div.multi-column div { + display: -moz-inline-box; + display: inline-block; + vertical-align: top; + margin-top: 1em; + margin-right: 4em; + width: 24em; +} + +.mainContent .video { + width:40%; + max-width:640px; + margin: 15px 0 0 15px; + position:relative; + display:table +} + +.mainContent .video > .vspan { + padding-top:60%; + display:block +} +.mainContent .video iframe { + width:100%; + height:100%; + position:absolute; + top:0; + left:0 +} diff --git a/debian/usr/local/qt5raspi-5.12.5/doc/global/template/style/online.css b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/style/online.css new file mode 100644 index 0000000..4bccee7 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/style/online.css @@ -0,0 +1,1544 @@ +@import url('cookie-confirm.css') screen; + +#navbar { + position:fixed; + top:0; + left:0; + z-index:100; + background:#fff; + width:100% +} +#navbar .container, .fixed .container { + max-width:1280px; + margin:0 auto; + padding:0 3.9%; /* 0? */ + position:relative; + overflow:visible +} +#navbar .navbar-header { + position:relative +} +#menuextras li a:hover span { + color: #41cd52; +} +/* new header */ +#mm-wrap, #mm-wrap #mm-helper, +#mm-wrap #mm-helper li.mm-item, +#mm-wrap #mm-helper a.mm-link { + -moz-transition: none; + -o-transition: none; + -webkit-transition: none; + transition: none; + -webkit-border-radius: 0 0 0 0; + -moz-border-radius: 0 0 0 0; + -ms-border-radius: 0 0 0 0; + -o-border-radius: 0 0 0 0; + border-radius: 0 0 0 0; + -webkit-box-shadow: none; + -moz-box-shadow: none; + -ms-box-shadow: none; + -o-box-shadow: none; + box-shadow: none; + background: none; + border: 0; + bottom: auto; + box-sizing: border-box; + clip: auto; + color: #090e21; + display: block; + float: none; + font-family: inherit; + font-size: 14px; + height: auto; + left: auto; + line-height: 1.7; + list-style-type: none; + margin: 0; + min-height: 0; + opacity: 1; + outline: none; + overflow: visible; + padding: 0; + position: relative; + right: auto; + text-align: left; + text-decoration: none; + text-transform: none; + top: auto; + vertical-align: baseline; + visibility: inherit; + width: auto; +} +#mm-wrap #mm-helper { + visibility:visible; + text-align:right; + padding:0 0px 0 0px +} +#navbar #mm-wrap #mm-helper li.mm-item { + border-right:solid #f3f3f4 1px; + padding-right:30px; + padding-left:30px +} +#navbar #mm-wrap #mm-helper li.mm-item > a:hover { + opacity: .5 +} +#mm-wrap #mm-helper > li.mm-item { + margin:0 0 0 0; + display:inline-block; + height:auto; + vertical-align:middle +} +#navbar #mm-wrap #mm-helper li.mm-item:nth-child(3) { + border-right:0 +} +#mm-wrap #mm-helper a.mm-link { + cursor: pointer +} +@media (max-width: 1279px) { + #navbar { + padding:0; + position:relative; + } + #navbar .container { + max-width:100% + } + .container { + padding:0 2% + } +} +#navbar .navbar-oneQt { + display:inline; + float:left; + width:31px; + color:#41cd52 +} +#navbar .navbar-oneQt:before { + content:attr(data-icon); + position:absolute; + top:14px; + left:0; + color:#41cd52; + font-family:'Qt Icons'; + line-height:1; + font-size:40px; + transition:all 0.3s ease-in-out; +} +#mm-wrap { + clear:both; + background:rgba(255, 255, 255, 0.1); + -webkit-border-radius:0px 0px 0px 0px; + -moz-border-radius:0px 0px 0px 0px; + -ms-border-radius:0px 0px 0px 0px; + -o-border-radius:0px 0px 0px 0px; + border-radius:0px 0px 0px 0px +} +#mm-wrap #mm-helper li.mm-item:last-child a { + background:transparent url("icon_avatar.png") 50% 50% no-repeat !important; + background-size:24px !important; + width:24px !important; + height:24px !important; +} +#navbar #mm-wrap #mm-helper li.mm-item > a { + opacity:1; + -webkit-transition:all 0.3s ease-in-out; + -moz-transition:all 0.3s ease-in-out; + -ms-transition:all 0.3s ease-in-out; + -o-transition:all 0.3s ease-in-out; + transition:all 0.3s ease-in-out; +} +#mm-wrap #mm-helper > li.mm-item > a.mm-link { + border-top:0px solid #fff; + border-left:0px solid #fff; + border-right:0px solid #fff; + border-bottom:0px solid #fff; + outline:none; + text-decoration:none; + padding:0 0 0 0; + line-height:70px; + font-weight:normal; + height:70px; + vertical-align:baseline; + text-align:left; + width:auto; + display:block; + color:#090e21; + text-transform:none; + text-decoration:none; + background:rgba(0, 0, 0, 0); + -webkit-border-radius:0px 0px 0px 0px; + -moz-border-radius:0px 0px 0px 0px; + -ms-border-radius:0px 0px 0px 0px; + -o-border-radius:0px 0px 0px 0px; + border-radius:0px 0px 0px 0px; + font-family:inherit; + font-size:14px; +} +/* end new header */ +@media (min-width: 1320px) { + .context .flowListDiv dl.flowList { + -webkit-column-count:3; + -moz-column-count:3; + column-count:3 + } +} +@media (min-width: 1120px) { + #navbar.fixed { + -moz-box-shadow:0px 0px 8px rgba(0,0,0,0.23); + -webkit-box-shadow:0px 0px 8px rgba(0,0,0,0.23); + box-shadow:0px 0px 8px rgba(0,0,0,0.23) + } + #navbar.fixed #mm-wrap #mm-helper > li.mm-item > a.mm-link { + height:50px; + line-height:50px + } + #navbar.fixed .navbar-oneQt:before { + font-size:35px; + top:7px + } + + .flowListDiv dl.flowList { + -webkit-column-count:2; + -moz-column-count:2; + column-count:2 + } +} +@media (max-width: 1120px) { + #navbar { + padding:0; + position:relative + } + #navbar .navbar-oneQt:before { + left:10px + } + #navbar .container { + max-width:100%; + padding:0 + } + #footerbar .container { + padding:0 + } + body .main { + margin-top:0px + } + #footerbar .footer-main .footer-nav { + padding:3.9% 0 3.9% 3%; + border-bottom:1px solid #413d3b; + float:none; + display:block; + width:auto + } + #footerbar .footer-main .theqtcompany { + clear:both; + float:left; + margin:30px 0 8px 3% + } + #footerbar .footer-main .footer-social { + float:left; + padding:50px 0px 0px 3% + } + #footerbar #menu-footer-submenu { + clear:both; + float:none; + display:block; + padding:0px 0px 3.9% 3% + } + ul#menu-footer-submenu { + margin-left: 0 + } +} +#sidebar-toggle,#toc-toggle { + width:24px; + height:14px; + background-size:24px 28px; + cursor:pointer; + background-image:url("list_expand.png"); + float:right +} +#sidebar-toggle.collapsed, +#toc-toggle.collapsed { + background-position:bottom left +} +#sidebar-content > h2 { + display:none +} +#footerbar { + background:#222840; + color:#fff; + font-size: 0.9em; +} +#footerbar.fixed { + bottom:0; + left:0; + width:100% +} +#footerbar .footer-nav { + display:inline; + float:left +} +#footerbar .footer-main .footer-nav li { + float:left; + margin-right:1em +} +#footerbar .footer-main .footer-nav li a { + display:block; + padding:30px 0 10px 0; + line-height:20px; + height:20px; + color:#fff; + font-weight: 600; +} +#footerbar .footer-main .footer-nav li a:hover,#footerbar .footer-main .footer-nav li.current-menu-item a { + color:#eee +} +#footerbar .footer-main .footer-nav .sub-menu { + margin-left:0; + margin-bottom:0 +} +#footerbar .footer-main .footer-nav .sub-menu li { + float:none; + width: 100%; +} +#footerbar .footer-main .footer-nav .sub-menu ul { + padding:1px 1em; + font-size:0.786em; + line-height:8px; + float:none; + color:#5d5b59; + margin-bottom:0 +} +#footerbar .footer-main .footer-nav .sub-menu li a { + padding:2px 0; + font-size:1em; + float:none; + color:#cecfd5; + font-weight: 400; +} +#footerbar .footer-main .footer-nav .sub-menu li a:hover,#footerbar .footer-main .footer-nav .sub-menu li.current-menu-item a { + color:#eee +} +#footerbar .theqtcompany { + background:url("theqtcompany.png") no-repeat; + background-size:100%; + width:215px; + height:68px; + display:inline; + float:right; + margin:29px 0 28px 30px +} +#footerbar .footer-social { + display:inline; + float:right; + width:164px +} +#footerbar .footer-main .footer-social>div { + margin-left:0.1em; + margin-bottom:10px +} +#footerbar .disclaimer { + font-size:0.786em; + line-height:2.73; + color:#868584; + padding-top:20px; + padding-bottom:0.5% +} +#footerbar .disclaimer a { + color:#bdbebf +} +#footerbar .disclaimer a:hover { + color:#d6d6d6 +} +#footerbar .disclaimer ul li { + float:left; + vertical-align:middle; + margin-left:1.18em +} +#footerbar .disclaimer ul li:first-child { + margin-left:0 +} +#footerbar .disclaimer ul.lang-selector a { + color:#506a34; + color:rgba(128,195,66,0.3) +} +#footerbar .disclaimer ul.lang-selector a:hover { + color:#80c342; + color:rgba(128,195,66,0.7) +} +#menu-footer-menu, #menu-footer-menu ul { + margin-left:0; + margin-bottom:0 +} +@font-face { + font-family: 'Titillium Web'; + font-style: normal; + font-weight: 400; + src: url("//d33sqmjvzgs8hq.cloudfront.net/wp-content/themes/oneqt/assets/fonts/titillium-web-v4-latin_latin-ext-regular.eot"); + /* IE9 Compat Modes */ + src: local("Titillium Web"), local("TitilliumWeb-Regular"), url("//d33sqmjvzgs8hq.cloudfront.net/wp-content/themes/oneqt/assets/fonts/titillium-web-v4-latin_latin-ext-regular.eot?#iefix") format("embedded-opentype"), url("//d33sqmjvzgs8hq.cloudfront.net/wp-content/themes/oneqt/assets/fonts/titillium-web-v4-latin_latin-ext-regular.woff2") format("woff2"), url("//d33sqmjvzgs8hq.cloudfront.net/wp-content/themes/oneqt/assets/fonts/titillium-web-v4-latin_latin-ext-regular.woff") format("woff"), url("//d33sqmjvzgs8hq.cloudfront.net/wp-content/themes/oneqt/assets/fonts/titillium-web-v4-latin_latin-ext-regular.ttf") format("truetype"), url("//d33sqmjvzgs8hq.cloudfront.net/wp-content/themes/oneqt/assets/fonts/titillium-web-v4-latin_latin-ext-regular.svg#TitilliumWeb") format("svg"); + /* Legacy iOS */ +} +/* titillium-web-italic - latin_latin-ext */ +@font-face { + font-family: 'Titillium Web'; + font-style: italic; + font-weight: 400; + src: url("//d33sqmjvzgs8hq.cloudfront.net/wp-content/themes/oneqt/assets/fonts/titillium-web-v4-latin_latin-ext-italic.eot"); + /* IE9 Compat Modes */ + src: local("Titillium WebItalic"), local("TitilliumWeb-Italic"), url("//d33sqmjvzgs8hq.cloudfront.net/wp-content/themes/oneqt/assets/fonts/titillium-web-v4-latin_latin-ext-italic.eot?#iefix") format("embedded-opentype"), url("//d33sqmjvzgs8hq.cloudfront.net/wp-content/themes/oneqt/assets/fonts/titillium-web-v4-latin_latin-ext-italic.woff2") format("woff2"), url("//d33sqmjvzgs8hq.cloudfront.net/wp-content/themes/oneqt/assets/fonts/titillium-web-v4-latin_latin-ext-italic.woff") format("woff"), url("//d33sqmjvzgs8hq.cloudfront.net/wp-content/themes/oneqt/assets/fonts/titillium-web-v4-latin_latin-ext-italic.ttf") format("truetype"), url("//d33sqmjvzgs8hq.cloudfront.net/wp-content/themes/oneqt/assets/fonts/titillium-web-v4-latin_latin-ext-italic.svg#TitilliumWeb") format("svg"); + /* Legacy iOS */ +} +/* titillium-web-600 - latin_latin-ext */ +@font-face { + font-family: 'Titillium Web'; + font-style: normal; + font-weight: 600; + src: url("//d33sqmjvzgs8hq.cloudfront.net/wp-content/themes/oneqt/assets/fonts/titillium-web-v4-latin_latin-ext-600.eot"); + /* IE9 Compat Modes */ + src: local("Titillium WebSemiBold"), local("TitilliumWeb-SemiBold"), url("//d33sqmjvzgs8hq.cloudfront.net/wp-content/themes/oneqt/assets/fonts/titillium-web-v4-latin_latin-ext-600.eot?#iefix") format("embedded-opentype"), url("//d33sqmjvzgs8hq.cloudfront.net/wp-content/themes/oneqt/assets/fonts/titillium-web-v4-latin_latin-ext-600.woff2") format("woff2"), url("//d33sqmjvzgs8hq.cloudfront.net/wp-content/themes/oneqt/assets/fonts/titillium-web-v4-latin_latin-ext-600.woff") format("woff"), url("//d33sqmjvzgs8hq.cloudfront.net/wp-content/themes/oneqt/assets/fonts/titillium-web-v4-latin_latin-ext-600.ttf") format("truetype"), url("//d33sqmjvzgs8hq.cloudfront.net/wp-content/themes/oneqt/assets/fonts/titillium-web-v4-latin_latin-ext-600.svg#TitilliumWeb") format("svg"); + /* Legacy iOS */ +} +@font-face { + font-family:'Droid Sans Mono'; + font-style:normal; + font-weight:400; + src:local("Droid Sans Mono"),local("DroidSansMono"),url(//fonts.gstatic.com/s/droidsansmono/v7/ns-m2xQYezAtqh7ai59hJUYuTAAIFFn5GTWtryCmBQ4.woff) format("woff") +} +@font-face { + font-family:'Qt Icons'; + src:url("../style/icomoon.eot?-tgjuoj"); + src:url("../style/icomoon.eot?#iefix-tgjuoj") format("embedded-opentype"),url("../style/icomoon.woff?-tgjuoj") format("woff"),url("../style/icomoon.ttf?-tgjuoj") format("truetype"),url("../style/icomoon.svg?-tgjuoj#icomoon") format("svg"); + font-weight:normal; + font-style:normal +} +@font-face { + font-family:'social-icons'; + src:url("../style/social-icons.eot?54625607"); + src:url("../style/social-icons.eot?54625607#iefix") format("embedded-opentype"), + url("../style/social-icons.woff?54625607") format("woff"); + font-weight:normal; + font-style:normal +} +.clearfix:before,.clearfix:after { + content:" "; + display:table +} +.clearfix:after { + clear:both +} +.clearfix { + *zoom:1 +} +.clearfix .right { + float:right +} +html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video { + margin:0; + padding:0; + border:0; + font-size:100% +} +html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,caption,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video { + vertical-align:baseline +} +h1,h2,h3,h4,h5,h6 { + font-weight:300 +} +.context h2,.context h3,.context h4,.context h5,.context h6 { + margin:1.5em 0 0.75em +} +.context h1 { + margin-bottom:0.75em; + font-size:2.25em; +} +.context h3.fn,.context h3.flags { + color:#26282a; + font-size:1.46em; + padding:15px 0 15px 0; + border-bottom:2px #eee solid; + word-wrap:break-word +} +.context .fngroup { + border-bottom:2px #eee solid; + padding-bottom:15px; + margin-bottom:1.5em +} +.context .fngroup h3.fngroupitem { + margin:0; + padding-bottom:0; + border:none +} +.context h3.fn .name, +.context h3 span.type, +.qmlname span.name { + font-weight: 400 +} +.qmlname { + font-size:1.46em +} +.qmlproto table { + border:none; + border-bottom:2px #eee solid +} +.qmlproto table p { + max-width:100% +} +.qmlproto table tr { + background-color:#fff +} +.qmlname td, .qmlname th { + border:none; + text-align:left; + padding:5px 0 0 0 +} +.qmlreadonly,.qmldefault { + padding:0 5px 0 5px; + font-size:0.75em; + background-color:#eee; + float:right +} +.qmlreadonly { + color:#414141 +} +.qmldefault { + color:#D14141 +} +.rightAlign { + padding:3px 5px 3px 10px; + text-align:right +} +.centerAlign.functionIndex { + text-align:center; + font-size:150%; + margin-bottom: 1em +} +article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section { + display:block +} +body { + line-height:1; + font-family:'Titillium Web', Arial, Helvetica, sans-serif; + font-weight:400; + transition-duration:1s; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; + font-size: 16px; + background-color:#f3f3f4; + color:#404244; +} +ol,ul { + list-style:none +} +.context ol,.context ul { + margin-top:0.75em; + margin-left:20px +} +.mainContent ol>li { + list-style-type:decimal; + margin-left:15px +} +.mainContent ol.a >li { + list-style-type:lower-alpha; +} +.mainContent ol.A >li { + list-style-type:upper-alpha; +} +.mainContent ol.i >li { + list-style-type:lower-roman; +} +.mainContent ol.I >li { + list-style-type:upper-roman; +} +.context li p { + margin-top:1em +} +blockquote,q { + quotes:none; + border-left:10px solid #ddd; + padding-left:10px +} +blockquote:before,blockquote:after,q:before,q:after { + content:''; + content:none; + width:100% +} +table { + border-collapse:collapse; + border-spacing:0; + margin-bottom:5px; + width:100% +} +a { + color:#17a81a; + text-decoration:none; + transition-duration:0.3s +} +a:hover { + color:#17a81a +} +.main,#footerbar>div { + max-width:1280px; + width:95%; + margin:0 auto +} +.main { + margin-top:80px +} +@media (max-width: 1120px) { + .main,.navbar-header,#footerbar>div { + width: 100%; + margin: 0; + } + .main .main-rounded { + padding: 0 15px; + } +} +.main_index { + background-color:#fff +} +.sectionlist { + margin-bottom:2em +} +[class*="col-"] { + letter-spacing:normal +} +.landing,.main_index .row { + letter-spacing:-0.31em +} +.main_index .row>div { + letter-spacing:normal +} +.col-1,.context { + width:80%; + display:inline-block; + background-color:#fff; + padding: 25px 35px 20px 30px; + -webkit-box-sizing:border-box; + -moz-box-sizing:border-box; + -ms-box-sizing:border-box; + box-sizing:border-box +} +.col-1 h2 { + font-size:1.8em; + font-weight:300; + line-height:1.1; + margin-bottom:0.83em; + margin-top:1em +} +.icons1of3 img { + display:inline-block; + float:left; + margin-right:0.75em; + margin-top:-5px; + width:2.75em +} +div.multi-column { + position:relative +} +div.multi-column div { + display:-moz-inline-box; + display:inline-block; + vertical-align:top; + margin-top:1em; + margin-right:2em; + width:16em +} +.sidebar { + display:block; + position:relative; + position:sticky; + float:left; + -webkit-box-sizing:border-box; + -moz-box-sizing:border-box; + -ms-box-sizing:border-box; + box-sizing:border-box; + width:20%; + padding-right:20px +} +.sidebar li { + text-overflow:ellipsis; + overflow:hidden +} +.toc,.sectionlist { + padding:25px; + background-color:#fff; + margin-bottom:1.25em +} +.sidebar .sectionlist p { + margin-bottom:0 +} +.sectionlist.promo { + padding:0; + background-color:#f3f3f4 +} +.sidebar-content:empty { + display:none; + visibility:hidden +} +.col-2 h2,.toc h3,.sidebar-content h2,.sidebar-content h3,.sectionlist h2 { + font-weight:400; + margin-bottom:1em +} +.toc h3 a { + color:#404244 +} +.title { + font-size:2.25em; + font-weight:300; + letter-spacing:-1px; + line-height:1.15em; + margin-bottom:0.5em; + word-wrap:break-word +} +.navigationbar,col-1 h2 { + font-size:0.85em +} +.navigationbar h1 { + font-size:2.5em; + margin-bottom:0.85em; + margin-top:0.85em +} +.navigationbar li { + display:inline-block; + margin-right:5px; + position:relative; + padding-right:10px; + color:#585a5c +} +.navigationbar ul:last-of-type li a { + color:#404244 +} +.sectionlist li { + margin-bottom:5px +} +dd { + padding-bottom:0.25em; + padding-left:2em +} +.col-1 ul { + margin-bottom:1.56em +} +.mainContent li { + margin-top:0.5em; + line-height:1.25em +} +.mainContent li.level2 { + margin-left:10px; + margin-top:0.4em; + font-size:0.9375em; +} +.mainContent p { + line-height:1.25em; + margin-bottom:1.5em; + color:#404244 +} +.mainContent b { + font-weight:600 +} +.context ul,.context ol { + margin-bottom:1.5em +} +.mainContent ul ul { + margin-top:0.5em +} +.mainContent .naviNextPrevious { + margin-top:25px; + max-width:100% +} +.naviNextPrevious.headerNavi, +p.naviNextPrevious + p { + display:none +} +.nextPage { + float:right +} +.prevPage:before { + content:"< " +} +.nextPage:after { + content:" >" +} +.navigationbar li a { + color:#404244 +} +.navigationbar li:after { + color:#404244; + content:"›"; + display:inline-block; + font-size:1.5em; + line-height:1; + position:absolute; + right:-2px; + top:-4px +} +.sub-navigation { + margin-top:10px +} +.navigationbar li:last-child:after,.sub-navigation li:after { + content:none +} +.navigationbar { + margin-bottom:10px; + line-height:1em +} +#buildversion { + font-style:italic; + font-size:small; + float:right +} +.copy-notice { + width:75%; + font-size:0.75em; + margin:20px 35px 0 10px; + line-height:1.75em; + float:right; + color:#585a5c +} +.copy-notice.index { + margin-top:10px; + float:none +} +li a.active { + color:#585a5c +} +.flowList { + padding:25px +} +.flowListDiv dl { + -webkit-column-count:1; + -moz-column-count:1; + column-count:1 +} +.flowList dd { + display:inline-block; + margin-left:10px; + width:90%; + line-height:1.15em; + overflow-x:hidden; + text-overflow:ellipsis +} +.alphaChar { + font-size:2em; + position:absolute +} +.flowList.odd { + background-color:#f9f9f9 +} +.context ul>li,.doc-column ul>li { + list-style-image:url("list_arrow.png"); + margin-left:15px; + color:#404244; + margin-top:0.65em; + line-height:1em +} +.mainContent table p { + margin:0px; + padding:0px +} +.mainContent table p { + margin:0px; + padding:0px; + min-height:1.25em +} +.mainContent .qmldoc { + margin-top:0.75em +} +.context h2 { + margin-top: 1.5em; + font-size:1.75em +} +.context h3 { + font-size:1.35em +} +.context h4 { + font-size:1.15em +} +.context p img { + margin-top:0.75em; + max-width:100% +} +.context .table table img { + max-width:initial +} +.context .border img { + box-shadow:3px 3px 8px 3px rgba(200,200,200,0.5) +} +.context .border .player { + box-shadow:3px 3px 8px 3px rgba(200,200,200,0.5) +} +.context p.figCaption { + transform:translateY(-30px); + color:#606366; + font-size:95%; + margin-left:3px; + font-style:italic +} +.context table { + vertical-align:initial +} +table .odd { + background-color:#f9f9f9 +} +table thead { + text-align:left; + padding-left:20px +} +table,table td,table th { + border:1px solid #eee +} +table td,table th { + padding:5px 20px; + line-height:1.3 +} +.context .fixed table td { + min-width:50%; + width:50% +} +table.alignedsummary,table.propsummary { + width:initial +} +table.valuelist td.tblval { + font-size:0.75em +} +div.main_index .row { + border-bottom:10px solid #f3f3f4 +} +div.main_index .row { + position:relative +} +div.main_index .row>div { + display:inline-block; + width:50%; + vertical-align:top; + padding:2em 3em; + -webkit-box-sizing:border-box; + -moz-box-sizing:border-box; + -ms-box-sizing:border-box; + box-sizing:border-box +} +div.main_index h2 { + font-size:2.1875em; + margin-bottom:1em +} +#search_bar { + width:40%; + float:right +} +div.main_index .row:after { + content:""; + position:absolute; + top:0; + right:50%; + height:100%; + width:10px; + background-color:#f3f3f4 +} +div.table { + overflow-x:auto +} +.context tr > td > pre { + font-size:0.75em +} +p.qt_commercial { + border:3px solid #5caa15; + margin:0 auto; + padding:15px; + width:28%; + text-align:center; + clear:both +} +h1.qt_commercial { + padding:20px; + background-color:#5caa15; + display:inline; + float:right; + font-size:1.25em; + line-height:1.25em; + height:1.25em; + color:#fff +} +div.qt_commercial { + border-top:5px solid #5caa15; + margin-bottom:50px +} +div.pre { + position:relative; + height:auto +} +pre, .LegaleseLeft { + background-color:#3a4055; + color:#fff; + display:block; + font-family:"Droid Sans Mono"; + line-height:1.5; + overflow-x:auto; + margin-bottom:25px; + padding:25px; + margin-top:0.75em; + font-size: .8em; +} +.mainContent .LegaleseLeft p { + color:#fff; + white-space: pre-wrap +} +pre .str,code .str { + color:#aaaaaa +} +pre .kwd,code .kwd { + color:#ffff55 +} +pre .com,code .com { + color:#55ffff +} +pre .typ,code .typ { + color:#4f9d08 +} +pre a .typ,code a .typ { + color:#21be2b +} +pre .lit,code .lit { + color:#ff55ff +} +pre .pun,code .pun { + color:#fff +} +pre .pln,code .pln { + color:#fff +} +@media print { + pre { + background-color:#eee !important + } + pre .str,code .str { + color:#060 + } + pre .kwd,code .kwd{ + color:#006; + font-weight:bold + } + pre .com,code .com { + color:#600 + } + pre .typ,code .typ { + color:#404; + font-weight:bold + } + pre .lit,code .lit { + color:#044 + } + pre .pun,code .pun { + color:#440 + } + pre .pln,code .pln { + color:#000 + } +} +pre.wrap { + white-space:pre-wrap +} +pre span.wrap { + display:none; + background:url("wrap.png") no-repeat; + right:0; + top:2px; + position:absolute; + width:20px; + height:14px; + margin:4px; + opacity:0.65 +} +span.wrap:hover { + opacity:1 +} +span.wrap:active { + opacity:0.75 +} +.copy_text { + background-color:#46a2da; + color:#fff; + border:2px solid #46a2da; + padding:10px 16px; + margin-left:-10px; + margin-top:-50px; + position:absolute; + opacity:0; + cursor:pointer; + float:right +} +.copy_text:hover { + background-color:#fff; + color:#46a2da +} +code,.codelike { + font-family:"Droid Sans Mono" +} +h3.fn code { + font-size:0.75em; + float:right; + background-color:#eee; + padding:3px; + margin: 3px 0 0 20px +} +pre:hover>.copy_text { + display:inline-block; + opacity:1; + transition:0.5s ease +} +#main_title_bar { + letter-spacing:-0.31em +} +#main_title_bar .search_bar { + letter-spacing:normal; + width:50%; + display:inline-block; + -webkit-box-sizing:border-box; + -moz-box-sizing:border-box; + -ms-box-sizing:border-box; + box-sizing:border-box; + vertical-align:middle +} +#main_title_bar h1 { + letter-spacing:normal; + width:50%; + display:inline-block; + -webkit-box-sizing:border-box; + -moz-box-sizing:border-box; + -ms-box-sizing:border-box; + box-sizing:border-box; + vertical-align:middle +} +#main_title_bar .search_bar * { + letter-spacing:normal; + padding:0; + margin:0; + border:none +} +#sidebar-toggle,#toc-toggle { + display:none +} +@media (max-width: 980px) { + body { + font-size:calc-em(14px) + } + #main_title_bar { + letter-spacing:-0.31em; + width:100% + } + #main_title_bar>h1,#main_title_bar .search_bar { + display:block; + width:100% + } + #main_title_bar .search_bar { + margin-bottom:15px + } + .main { + margin-top:0px + } + .main_index .row { + border:none !important + } + .title { + font-size:1.5em; + font-weight:400; + word-wrap:break-word + } + .col-1,.context,.naviNextPrevious,.sidebar { + padding:10px + } + .sidebar { + position:relative; + padding-top:0 + } + .search .sidebar { + display:none; + visibility:hidden + } + .col-2 h2,.toc h3,.sidebar-content h2,.sidebar-content h3,.sectionlist h2 { + text-align:center; + margin-bottom:5px + } + div.main_index .row:after { + content:none + } + div.main_index .row>div { + display:block !important; + width:100%; + padding:15px; + margin:0 + } + .context,.sidebar,.col-1 { + width:100% + } + .sidebar-content,.col-2,.toc { + background-color:#fff; + margin-bottom:1em; + padding:20px + } + #sidebar-toggle,#toc-toggle { + display:block + } + #sidebar-toggle.collapsed + h2 { + display:block + } + .mainContent p { + margin-bottom:1em; + max-width:100% + } + table td,table th { + padding:5px 5px + } + .sectionlist { + padding:0 + } + .sidebar > .sectionlist { + padding:20px + } + .sectionlist.promo { + max-width:46%; + margin:0 auto 1em auto; + float:left; + padding:0 2% + } + .sidebar .sidebar-content { + clear:both + } + .copy-notice { + float:none; + width:initial + } +} +[id]:target,[name]:target,[name]:target+* { + -webkit-animation:highlighter 3s; + animation:highlighter 3s +} +@-webkit-keyframes highlighter { + 25% { + background-color:#d1e8f6; + color:#444 + } + 75% { + background-color:#d1e8f6; + color:#444 + } +} +@keyframes highlighter { + 25% { + background-color:#d1e8f6; + color:#444 + } + 75% { + background-color:#d1e8f6; + color:#444 + } +} +@-webkit-keyframes copypaste { + 25% { + opacity:1 + } + 100% { + border-radius:10px; + margin-top:-50px; + opacity:1 + } +} +@keyframes copypaste { + 25% { + opacity:1 + } + 100% { + border-radius:10px; + margin-top:-50px; + opacity:1 + } +} +#footer { + clear:both +} +.footer-social i { + font-family: "social-icons"; + font-style: normal; + font-size:150%; + margin: .55em; + color: #cecfd5 +} +.footer-social i:hover { + color: #eee +} +.footer-social .icon-twitter:before { + content: '\f099' +} +.footer-social .icon-facebook:before { + content: '\f09a' +} +.footer-social .icon-youtube:before { + content: '\f16a' +} +.menuextraslanguages { + display:none; + visibility:hidden +} +form.gsc-search-box { + font-size: 25px !important; + margin-top: 0 !important; + margin-right: 0 !important; + margin-bottom: 4px !important; + margin-left: 0 !important; + width: 102.5% !important; +} +table.gsc-search-box { + border-style: none !important; + border-width: 0 !important; + border-spacing: 0 0 !important; + width: 100% !important; + margin-bottom: 2px !important; +} + +table.gsc-search-box td { + vertical-align: middle !important; +} + +table.gsc-search-box td.gsc-input { + padding-right: 0px !important; +} +table.gsc-search-box td.gsc-input input { + background-position: 10px center !important; +} + +td.gsc-search-button { + line-height: 1.0; + position: relative; + left: -29px; + width: 1% !important; +} + +td.gsib_b { + display:none +} + +button.gsc-search-button { + background-color: #aaa; +} + +button.gsc-search-button svg { + height:20px; + width:12px; + padding:2px !important; +} + +td.gsc-clear-button { + width: 14px !important; + visibility:hidden !important; + display:none !important; +} +table.gsc-branding td, +table.gsc-branding { + margin: 0 0 0 0 !important; + padding: 0 0 0 0 !important; + border: none !important; +} + +table.gsc-branding { + border-style: none !important; + border-width: 0 !important; + border-spacing: 0 0 !important; + width: 100% !important; + display:none +} + +.gsc-branding-text { + color: #676767 !important; +} + +td.gsc-branding-text { + vertical-align: top !important; +} +td.gsc-branding-text div.gsc-branding-text { + padding-bottom: 2px !important; + text-align: right !important; + font-size: 11px !important; + margin-right: 2px !important; +} + +td.gsc-branding-img { + width: 65px !important; + vertical-align: bottom !important; +} + +img.gsc-branding-img { + padding-top: 1px !important; + margin: 0 0 0 0 !important; + padding-right: 0 !important; + padding-left: 0 !important; + padding-bottom: 0 !important; + border: none !important; + display: inline !important; +} + +input.gsc-search-button { + background-color: white !important; + height: 35px !important; + width: 25px !important; + color: transparent !important; + background-image: url("doc_search.png") !important; + background-size: 25px auto; + background-position: 0px 5px; + background-repeat: no-repeat; + margin-left: -43px !important; + overflow: hidden; + min-width: 20px !important; +} + +input.gsc-search-button:hover { + cursor: pointer; +} + +input.gsc-search-button:focus { + outline: none; + box-shadow: none; +} + +.gsc-search-box-tools .gsc-clear-button { + display: none !important; + visibility: none !important; +} + +.gsc-overflow-hidden { + overflow: hidden !important; +} + +input.gsc-input { + background-color: #fff !important; + border: 1px solid #d6d6d6 !important; + box-sizing: border-box !important; + -moz-box-sizing: border-box !important; + color: #868482 !important; + outline: 0 none !important; + padding: 9px 10px 10px !important; + transition: color 0.5s ease 0s, box-shadow 0.5s ease 0s, background-color 0.5s ease 0s !important; +} + +input { + font-family: 'Titillium Web', Arial, Helvetica, sans-serif !important; + line-height: 1.5 !important; + font-weight: 300 !important; + vertical-align:middle +} + +input:focus { + border-color: #46a2da; + box-shadow: 0 0 5px #46a2da; + color: #000; +} + +.animation { + width: 100%; + border-style: none; + border-width: 0 +} + +.player { + width: auto; + position: relative; + display: table; + margin-bottom:1.5em; +} + +.playcontrol { + display: none; + background: url("play_icon.svg") no-repeat center, + linear-gradient( + rgba(0,0,0,0.15), rgba(0,0,0,0.15) + ); + background-size: 25%; + width: 100%; + height: 100%; + position: absolute; + left: 0%; + right: 0%; + top: 0%; + bottom: 0%; + margin: auto +} + +.mainContent .video { + width:60%; + max-width:640px; + margin: 0.5em 0 1.5em 0.5em; + position:relative; + display:table +} + +.mainContent .video > .vspan { + padding-top:60%; + display:block +} + +.mainContent .video iframe { + width:100%; + height:100%; + position:absolute; + top:0; + left:0 +} + +/* expand/collapse code sections */ +pre input { + display:none; + visibility:hidden +} +pre label { + display:block; + margin:-3px 3px 0 -16px; + text-align:center; + color:#21be2b; + float:left; +} +pre label:hover { + color:#fff +} +pre label::before { + font-weight:600; + font-size:16px; + content:"+"; + display:inline-block; + width:16px; + height:16px +} +#ec_expand { + height:16px; + overflow:hidden; + transition:height 0.35s; +} +#ec_expand::before { + content:"...*/"; + color:#aaa; + background-color:#3a4055; + z-index:99 !important; + right:25px; + position:absolute +} +#ec_toggle:checked ~ #ec_expand { + height:initial +} +#ec_toggle:checked ~ #ec_expand::before { + content:"" +} +#ec_toggle:checked ~ label::before { + content:"-" +} + +/* permalinks */ +h2:hover > .plink, +h3:hover > .plink, +h4:hover > .plink, +h5:hover > .plink { + opacity:1 +} +a.plink { + opacity: 0; + padding-left: 8px; + font-size: 0.8em; + font-weight: 600; + transition: opacity 180ms ease-in-out; +} +a.plink::before { + content:'\00B6' +} diff --git a/debian/usr/local/qt5raspi-5.12.5/doc/global/template/style/theqtcompany.png b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/style/theqtcompany.png new file mode 100644 index 0000000..fee3d26 Binary files /dev/null and b/debian/usr/local/qt5raspi-5.12.5/doc/global/template/style/theqtcompany.png differ diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/additiveclipblend_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/additiveclipblend_p.h new file mode 100644 index 0000000..0cf74ad --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/additiveclipblend_p.h @@ -0,0 +1,110 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_ANIMATION_ADDITIVECLIPBLEND_P_H +#define QT3DANIMATION_ANIMATION_ADDITIVECLIPBLEND_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { + +namespace Animation { + +class Q_AUTOTEST_EXPORT AdditiveClipBlend : public ClipBlendNode +{ +public: + AdditiveClipBlend(); + ~AdditiveClipBlend(); + + inline Qt3DCore::QNodeId baseClipId() const { return m_baseClipId; } + void setBaseClipId(Qt3DCore::QNodeId baseClipId) { m_baseClipId = baseClipId; } // For unit tests + + inline Qt3DCore::QNodeId additiveClipId() const { return m_additiveClipId; } + void setAdditiveClipId(Qt3DCore::QNodeId additiveClipId) { m_additiveClipId = additiveClipId; } // For unit tests + + inline float additiveFactor() const { return m_additiveFactor; } + void setAdditiveFactor(float additiveFactor) { m_additiveFactor = additiveFactor; } // For unit tests + + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) final; + + inline QVector allDependencyIds() const override + { + return currentDependencyIds(); + } + + inline QVector currentDependencyIds() const override + { + return { m_baseClipId, m_additiveClipId }; + } + + inline double duration() const override + { + ClipBlendNode *node = clipBlendNodeManager()->lookupNode(m_baseClipId); + Q_ASSERT(node); + return node->duration(); + } + +protected: + ClipResults doBlend(const QVector &blendData) const final; + +private: + void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) final; + + Qt3DCore::QNodeId m_baseClipId; + Qt3DCore::QNodeId m_additiveClipId; + float m_additiveFactor; +}; + +} // Animation + +} // Qt3DAnimation + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_ANIMATION_ADDITIVECLIPBLEND_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/animationclip_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/animationclip_p.h new file mode 100644 index 0000000..0b82987 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/animationclip_p.h @@ -0,0 +1,153 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_ANIMATION_ANIMATIONCLIP_P_H +#define QT3DANIMATION_ANIMATION_ANIMATIONCLIP_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { +namespace Animation { + +class Handler; + +class Q_AUTOTEST_EXPORT AnimationClip : public BackendNode +{ +public: + AnimationClip(); + + void cleanup(); + void setSource(const QUrl &source) { m_source = source; } + QUrl source() const { return m_source; } + void setStatus(QAnimationClipLoader::Status status); + QAnimationClipLoader::Status status() const { return m_status; } + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) override; + + void addDependingClipAnimator(const Qt3DCore::QNodeId &id); + void addDependingBlendedClipAnimator(const Qt3DCore::QNodeId &id); + + QString name() const { return m_name; } + const QVector &channels() const { return m_channels; } + + // Called from jobs + void loadAnimation(); + void setDuration(float duration); + float duration() const { return m_duration; } + int channelIndex(const QString &channelName, int jointIndex) const; + int channelCount() const { return m_channelComponentCount; } + int channelComponentBaseIndex(int channelGroupIndex) const; + + // Allow unit tests to set the data type +#if !defined(QT_BUILD_INTERNAL) +private: +#endif + enum ClipDataType { + Unknown, + File, + Data + }; +#if defined(QT_BUILD_INTERNAL) +public: + void setDataType(ClipDataType dataType) { m_dataType = dataType; } +#endif + +private: + void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) final; + void loadAnimationFromUrl(); + void loadAnimationFromData(); + void clearData(); + float findDuration(); + int findChannelComponentCount(); + + QMutex m_mutex; + + QUrl m_source; + QAnimationClipLoader::Status m_status; + QAnimationClipData m_clipData; + ClipDataType m_dataType; + + QString m_name; + QVector m_channels; + float m_duration; + int m_channelComponentCount; + + Qt3DCore::QNodeIdVector m_dependingAnimators; + Qt3DCore::QNodeIdVector m_dependingBlendedAnimators; +}; + +#ifndef QT_NO_DEBUG_STREAM +inline QDebug operator<<(QDebug dbg, const AnimationClip &animationClip) +{ + QDebugStateSaver saver(dbg); + dbg << "QNodeId =" << animationClip.peerId() << endl + << "Name =" << animationClip.name() << endl + << "Duration: " << animationClip.duration() << endl + << "Channels:" << endl; + + const QVector channels = animationClip.channels(); + for (const auto &channel : channels) { + dbg << channel; + } + + return dbg; +} +#endif + +} // namespace Animation +} // namespace Qt3DAnimation + + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_ANIMATION_ANIMATIONCLIP_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/animationlogging_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/animationlogging_p.h new file mode 100644 index 0000000..73e3680 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/animationlogging_p.h @@ -0,0 +1,71 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_ANIMATION_ANIMATIONLOGGING_P_H +#define QT3DANIMATION_ANIMATION_ANIMATIONLOGGING_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { +namespace Animation { + +Q_DECLARE_LOGGING_CATEGORY(Backend) +Q_DECLARE_LOGGING_CATEGORY(Frontend) +Q_DECLARE_LOGGING_CATEGORY(Jobs) +Q_DECLARE_LOGGING_CATEGORY(HandlerLogic) + +} // namespace Animation +} // namespace Qt3DAnimation + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_ANIMATION_ANIMATIONLOGGING_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/animationutils_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/animationutils_p.h new file mode 100644 index 0000000..bded12b --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/animationutils_p.h @@ -0,0 +1,394 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_ANIMATION_ANIMATIONUTILS_P_H +#define QT3DANIMATION_ANIMATION_ANIMATIONUTILS_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include +#include + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { +class QAnimationCallback; +namespace Animation { + +struct Channel; +class BlendedClipAnimator; +class Handler; +class AnimationClip; +class ChannelMapper; +class ChannelMapping; + +typedef QVector ComponentIndices; + +enum JointTransformComponent { + NoTransformComponent = 0, + Scale, + Rotation, + Translation +}; + +struct MappingData +{ + Qt3DCore::QNodeId targetId; + Skeleton *skeleton = nullptr; + int jointIndex = -1; + JointTransformComponent jointTransformComponent = NoTransformComponent; + const char *propertyName; + QAnimationCallback *callback = nullptr; + QAnimationCallback::Flags callbackFlags; + int type; + ComponentIndices channelIndices; +}; + +#ifndef QT_NO_DEBUG_STREAM +inline QDebug operator<<(QDebug dbg, const MappingData &mapping) +{ + QDebugStateSaver saver(dbg); + dbg << "targetId =" << mapping.targetId << endl + << "jointIndex =" << mapping.jointIndex << endl + << "jointTransformComponent: " << mapping.jointTransformComponent << endl + << "propertyName:" << mapping.propertyName << endl + << "channelIndices:" << mapping.channelIndices; + return dbg; +} +#endif + +struct AnimatorEvaluationData +{ + double elapsedTime; + double currentTime; + int loopCount; + int currentLoop; + double playbackRate; + float normalizedLocalTime; +}; + +struct ClipEvaluationData +{ + int currentLoop; + float normalizedLocalTime; + double localTime; + bool isFinalFrame; +}; + +typedef QVector ClipResults; + +struct ChannelNameAndType +{ + QString jointName; + QString name; + int type; + int jointIndex; + Qt3DCore::QNodeId mappingId; + JointTransformComponent jointTransformComponent; + int componentCount; + + static const int invalidIndex = -1; + + ChannelNameAndType() + : jointName() + , name() + , type(-1) + , jointIndex(-1) + , mappingId() + , jointTransformComponent(NoTransformComponent) + , componentCount(-1) + {} + + ChannelNameAndType(const QString &_name, + int _type, + int componentCount, + Qt3DCore::QNodeId _mappingId = Qt3DCore::QNodeId(), + int _jointIndex = invalidIndex) + : jointName() + , name(_name) + , type(_type) + , jointIndex(_jointIndex) + , mappingId(_mappingId) + , jointTransformComponent(NoTransformComponent) + , componentCount(componentCount) + {} + + ChannelNameAndType(const QString &_name, + int _type, + JointTransformComponent _jointTransformComponent) + : jointName() + , name(_name) + , type(_type) + , jointIndex(invalidIndex) + , mappingId() + , jointTransformComponent(_jointTransformComponent) + , componentCount(-1) + { + switch (_jointTransformComponent) { + case NoTransformComponent: + break; + case Scale: + case Translation: + componentCount = 3; + break; + case Rotation: + componentCount = 4; + break; + }; + } + + bool operator==(const ChannelNameAndType &rhs) const + { + return name == rhs.name + && type == rhs.type + && jointIndex == rhs.jointIndex + && mappingId == rhs.mappingId + && jointTransformComponent == rhs.jointTransformComponent + && componentCount == rhs.componentCount; + } +}; + +#ifndef QT_NO_DEBUG_STREAM +inline QDebug operator<<(QDebug dbg, const ChannelNameAndType &nameAndType) +{ + QDebugStateSaver saver(dbg); + dbg << "name =" << nameAndType.name + << "type =" << nameAndType.type + << "mappingId =" << nameAndType.mappingId + << "jointIndex =" << nameAndType.jointIndex + << "jointName =" << nameAndType.jointName + << "jointTransformComponent =" << nameAndType.jointTransformComponent + << "componentCount =" << nameAndType.componentCount; + return dbg; +} +#endif + +struct ComponentValue +{ + int componentIndex; + float value; +}; +QT3D_DECLARE_TYPEINFO_2(Qt3DAnimation, Animation, ComponentValue, Q_PRIMITIVE_TYPE) + +struct ClipFormat +{ + // TODO: Remove the mask and store both the sourceClipIndices and + // formattedComponentIndices in flat vectors. This will require a + // way to look up the offset and number of elements for each channel. + ComponentIndices sourceClipIndices; + QVector sourceClipMask; + QVector formattedComponentIndices; + QVector namesAndTypes; + QVector defaultComponentValues; +}; + +#ifndef QT_NO_DEBUG_STREAM +inline QDebug operator<<(QDebug dbg, const ClipFormat &format) +{ + QDebugStateSaver saver(dbg); + int sourceIndex = 0; + for (int i = 0; i < format.namesAndTypes.size(); ++i) { + dbg << i + << format.namesAndTypes[i].jointIndex + << format.namesAndTypes[i].jointName + << format.namesAndTypes[i].name + << format.namesAndTypes[i].type + << "formatted results dst indices =" << format.formattedComponentIndices[i]; + const int componentCount = format.formattedComponentIndices[i].size(); + + dbg << "clip src indices ="; + for (int j = sourceIndex; j < sourceIndex + componentCount; ++j) + dbg << format.sourceClipIndices[j] << ""; + + dbg << "src clip mask =" << format.sourceClipMask[i]; + dbg << endl; + sourceIndex += componentCount; + } + return dbg; +} +#endif + +struct AnimationCallbackAndValue +{ + QAnimationCallback *callback; + QAnimationCallback::Flags flags; + QVariant value; +}; + +inline constexpr double toSecs(qint64 nsecs) { return nsecs / 1.0e9; } +inline qint64 toNsecs(double seconds) { return qRound64(seconds * 1.0e9); } + +template +AnimatorEvaluationData evaluationDataForAnimator(Animator animator, + Clock* clock, + qint64 nsSincePreviousFrame) +{ + const bool seeking = animator->isSeeking(); + AnimatorEvaluationData data; + data.loopCount = animator->loops(); + data.currentLoop = animator->currentLoop(); + // The playback-rate is always 1.0 when seeking + data.playbackRate = ((clock != nullptr) && !seeking) ? clock->playbackRate() : 1.0; + // Convert global time from nsec to sec + data.elapsedTime = toSecs(nsSincePreviousFrame); + // When seeking we base it on the current time being at the start of the clip + data.currentTime = seeking ? 0.0 : animator->lastLocalTime(); + // If we're not seeking the local normalized time will be calculate in + // evaluationDataForClip(). + data.normalizedLocalTime = seeking ? animator->normalizedLocalTime() : -1.0; + return data; +} + +inline bool isFinalFrame(double localTime, + double duration, + int currentLoop, + int loopCount) +{ + return (localTime >= duration && + loopCount != 0 && + currentLoop >= loopCount - 1); +} + +inline bool isValidNormalizedTime(float t) +{ + return !(t < 0.0f) && !(t > 1.0f); +} + +Q_AUTOTEST_EXPORT +ClipEvaluationData evaluationDataForClip(AnimationClip *clip, + const AnimatorEvaluationData &animatorData); + +Q_AUTOTEST_EXPORT +ComponentIndices channelComponentsToIndices(const Channel &channel, + int dataType, + int expectedComponentCount, + int offset); + +Q_AUTOTEST_EXPORT +ComponentIndices channelComponentsToIndicesHelper(const Channel &channelGroup, + int expectedComponentCount, + int offset, + const QVector &suffixes); + +Q_AUTOTEST_EXPORT +ClipResults evaluateClipAtLocalTime(AnimationClip *clip, + float localTime); + +Q_AUTOTEST_EXPORT +ClipResults evaluateClipAtPhase(AnimationClip *clip, + float phase); + +Q_AUTOTEST_EXPORT +QVector preparePropertyChanges(Qt3DCore::QNodeId animatorId, + const QVector &mappingDataVec, + const QVector &channelResults, + bool finalFrame, float normalizedLocalTime); + +Q_AUTOTEST_EXPORT +QVector prepareCallbacks(const QVector &mappingDataVec, + const QVector &channelResults); + +Q_AUTOTEST_EXPORT +QVector buildPropertyMappings(const QVector &channelMappings, + const QVector &channelNamesAndTypes, + const QVector &channelComponentIndices, + const QVector &sourceClipMask); + +Q_AUTOTEST_EXPORT +QVector buildRequiredChannelsAndTypes(Handler *handler, + const ChannelMapper *mapper); + +Q_AUTOTEST_EXPORT +QVector assignChannelComponentIndices(const QVector &namesAndTypes); + +Q_AUTOTEST_EXPORT +double localTimeFromElapsedTime(double t_current_local, double t_elapsed_global, + double playbackRate, double duration, + int loopCount, int ¤tLoop); + +Q_AUTOTEST_EXPORT +double phaseFromElapsedTime(double t_current_local, double t_elapsed_global, + double playbackRate, double duration, + int loopCount, int ¤tLoop); + +Q_AUTOTEST_EXPORT +QVector gatherValueNodesToEvaluate(Handler *handler, + Qt3DCore::QNodeId blendTreeRootId); + +Q_AUTOTEST_EXPORT +ClipFormat generateClipFormatIndices(const QVector &targetChannels, + const QVector &targetIndices, + const AnimationClip *clip); + +Q_AUTOTEST_EXPORT +ClipResults formatClipResults(const ClipResults &rawClipResults, + const ComponentIndices &format); + +Q_AUTOTEST_EXPORT +ClipResults evaluateBlendTree(Handler *handler, + BlendedClipAnimator *animator, + Qt3DCore::QNodeId blendNodeId); + +Q_AUTOTEST_EXPORT +QVector defaultValueForChannel(Handler *handler, const ChannelNameAndType &channelDescription); + +Q_AUTOTEST_EXPORT +void applyComponentDefaultValues(const QVector &componentDefaults, + ClipResults &formattedClipResults); + +} // Animation +} // Qt3DAnimation + +QT_END_NAMESPACE + + +#endif // QT3DANIMATION_ANIMATION_ANIMATIONUTILS_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/backendnode_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/backendnode_p.h new file mode 100644 index 0000000..d784251 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/backendnode_p.h @@ -0,0 +1,81 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_ANIMATION_BACKENDNODE_H +#define QT3DANIMATION_ANIMATION_BACKENDNODE_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { +namespace Animation { + +class Q_AUTOTEST_EXPORT BackendNode : public Qt3DCore::QBackendNode +{ +public: + BackendNode(Qt3DCore::QBackendNode::Mode mode = ReadOnly); + ~BackendNode(); + + void setHandler(Handler *handler); + +protected: + void setDirty(Handler::DirtyFlag flag); + Handler *m_handler; +}; + +} // namespace Animation +} // namespace Qt3DAnimation + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_ANIMATION_BACKENDNODE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/bezierevaluator_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/bezierevaluator_p.h new file mode 100644 index 0000000..5291405 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/bezierevaluator_p.h @@ -0,0 +1,92 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef BEZIEREVALUATOR_P_H +#define BEZIEREVALUATOR_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { +namespace Animation { + +struct Keyframe; + +class Q_AUTOTEST_EXPORT BezierEvaluator +{ +public: + explicit BezierEvaluator(float time0, const Keyframe &keyframe0, + float time1, const Keyframe &keyframe1) + : m_time0(time0) + , m_time1(time1) + , m_keyframe0(keyframe0) + , m_keyframe1(keyframe1) + { + } + + float valueForTime(float time) const; + float parameterForTime(float time) const; + + static int findCubicRoots(const float coefficients[], float roots[3]); + +private: + float m_time0; + float m_time1; + const Keyframe &m_keyframe0; + const Keyframe &m_keyframe1; +}; + +} // namespace Animation +} // namespace Qt3DAnimation + +QT_END_NAMESPACE + +#endif // BEZIEREVALUATOR_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/blendedclipanimator_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/blendedclipanimator_p.h new file mode 100644 index 0000000..09a071c --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/blendedclipanimator_p.h @@ -0,0 +1,139 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_ANIMATION_BLENDEDCLIPANIMATOR_P_H +#define QT3DANIMATION_ANIMATION_BLENDEDCLIPANIMATOR_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { +namespace Animation { + +class Handler; + +class Q_AUTOTEST_EXPORT BlendedClipAnimator : public BackendNode +{ +public: + BlendedClipAnimator(); + + void cleanup(); + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) override; + + Qt3DCore::QNodeId blendTreeRootId() const; + Qt3DCore::QNodeId mapperId() const { return m_mapperId; } + Qt3DCore::QNodeId clockId() const { return m_clockId; } + bool isRunning() const { return m_running; } + void setNormalizedLocalTime(float normalizedTime); + float normalizedLocalTime() const { return m_normalizedLocalTime; } + + // Called by BuildBlendTreeJob + bool canRun() const { return !m_mapperId.isNull() && !m_blendTreeRootId.isNull(); } + + void setBlendTreeRootId(Qt3DCore::QNodeId blendTreeRootId); + void setMapperId(Qt3DCore::QNodeId mapperId); + void setClockId(Qt3DCore::QNodeId clockId); + void setRunning(bool running); + + void setStartTime(qint64 globalTime) { m_lastGlobalTimeNS = globalTime; } + + void setLoops(int loops) { m_loops = loops; } + int loops() const { return m_loops; } + + int currentLoop() const { return m_currentLoop; } + void setCurrentLoop(int currentLoop) { m_currentLoop = currentLoop; } + + void setMappingData(const QVector &mappingData) { m_mappingData = mappingData; } + QVector mappingData() const { return m_mappingData; } + + void sendPropertyChanges(const QVector &changes); + void sendCallbacks(const QVector &callbacks); + + void animationClipMarkedDirty() { setDirty(Handler::BlendedClipAnimatorDirty); } + + qint64 nsSincePreviousFrame(qint64 currentGlobalTimeNS); + void setLastGlobalTimeNS(const qint64 &lastGlobalTimeNS); + + double lastLocalTime() const; + void setLastLocalTime(double lastLocalTime); + + float lastNormalizedLocalTime() { return m_lastNormalizedLocalTime; } + void setLastNormalizedLocalTime(float normalizedTime); + bool isSeeking() const + { + return isValidNormalizedTime(m_normalizedLocalTime) + && !qFuzzyCompare(m_lastNormalizedLocalTime, m_normalizedLocalTime); + } + +private: + void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) final; + Qt3DCore::QNodeId m_blendTreeRootId; + Qt3DCore::QNodeId m_mapperId; + Qt3DCore::QNodeId m_clockId; + bool m_running; + + qint64 m_lastGlobalTimeNS; + double m_lastLocalTime; + + int m_currentLoop; + int m_loops; + + float m_normalizedLocalTime; + float m_lastNormalizedLocalTime; + + QVector m_mappingData; +}; + +} // namespace Animation +} // namespace Qt3DAnimation + + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_ANIMATION_BLENDEDCLIPANIMATOR_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/buildblendtreesjob_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/buildblendtreesjob_p.h new file mode 100644 index 0000000..a14552c --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/buildblendtreesjob_p.h @@ -0,0 +1,86 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_ANIMATION_BUILDBLENDTREESJOB_P_H +#define QT3DANIMATION_ANIMATION_BUILDBLENDTREESJOB_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { +namespace Animation { + +class Handler; + +class BuildBlendTreesJob : public Qt3DCore::QAspectJob +{ +public: + BuildBlendTreesJob(); + + void setHandler(Handler *handler) { m_handler = handler; } + Handler *handler() const { return m_handler; } + + void setBlendedClipAnimators(const QVector &blendedClipAnimatorHandles); + +protected: + void run() override; + +private: + QVector m_blendedClipAnimatorHandles; + Handler *m_handler; +}; + +typedef QSharedPointer BuildBlendTreesJobPtr; + +} // Animation +} // Qt3DAnimation + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_ANIMATION_BUILDBLENDTREESJOB_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/channelmapper_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/channelmapper_p.h new file mode 100644 index 0000000..fd99c8d --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/channelmapper_p.h @@ -0,0 +1,101 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_ANIMATION_CHANNELMAPPER_P_H +#define QT3DANIMATION_ANIMATION_CHANNELMAPPER_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { +namespace Animation { + +class Handler; + +class Q_AUTOTEST_EXPORT ChannelMapper : public BackendNode +{ +public: + ChannelMapper(); + + void cleanup(); + + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) override; + + void setMappingIds(const QVector &mappingIds) { m_mappingIds = mappingIds; } + QVector mappingIds() const { return m_mappingIds; } + + QVector mappings() const + { + if (m_isDirty) + updateMappings(); + return m_mappings; + } + +private: + void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) final; + void updateMappings() const; + + QVector m_mappingIds; + + // Cached data + mutable QVector m_mappings; + mutable bool m_isDirty; +}; + +} // namespace Animation +} // namespace Qt3DAnimation + + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_ANIMATION_CHANNELMAPPER_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/channelmapping_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/channelmapping_p.h new file mode 100644 index 0000000..aa30e84 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/channelmapping_p.h @@ -0,0 +1,135 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_ANIMATION_CHANNELMAPPING_P_H +#define QT3DANIMATION_ANIMATION_CHANNELMAPPING_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { + +namespace Animation { + +class Handler; + +class Q_AUTOTEST_EXPORT ChannelMapping : public BackendNode +{ +public: + enum MappingType { + ChannelMappingType = 0, + SkeletonMappingType, + CallbackMappingType + }; + + ChannelMapping(); + + void cleanup(); + + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) override; + + void setChannelName(const QString &channelName) { m_channelName = channelName; } + QString channelName() const { return m_channelName; } + + void setTargetId(Qt3DCore::QNodeId targetId) { m_targetId = targetId; } + Qt3DCore::QNodeId targetId() const { return m_targetId; } + + void setType(int type) { m_type = type; } + int type() const { return m_type; } + + void setPropertyName(const char *propertyName) { m_propertyName = propertyName; } + const char *propertyName() const { return m_propertyName; } + + void setComponentCount(int componentCount) { m_componentCount = componentCount; } + int componentCount() const { return m_componentCount; } + + void setCallback(QAnimationCallback *callback) { m_callback = callback; } + QAnimationCallback *callback() const { return m_callback; } + + void setCallbackFlags(QAnimationCallback::Flags flags) { m_callbackFlags = flags; } + QAnimationCallback::Flags callbackFlags() const { return m_callbackFlags; } + + void setSkeletonId(Qt3DCore::QNodeId skeletonId) { m_skeletonId = skeletonId; } + Qt3DCore::QNodeId skeletonId() const { return m_skeletonId; } + Skeleton *skeleton() const; + + void setMappingType(MappingType mappingType) { m_mappingType = mappingType; } + MappingType mappingType() const { return m_mappingType; } + +private: + void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) final; + + // Properties from QChannelMapping + QString m_channelName; + Qt3DCore::QNodeId m_targetId; + int m_type; + int m_componentCount; + const char *m_propertyName; + + // TODO: Properties from QCallbackMapping + QAnimationCallback *m_callback; + QAnimationCallback::Flags m_callbackFlags; + + // Properties from QSkeletonMapping + Qt3DCore::QNodeId m_skeletonId; + + MappingType m_mappingType; +}; + +} // namespace Animation +} // namespace Qt3DAnimation + + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_ANIMATION_CHANNELMAPPING_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/clipanimator_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/clipanimator_p.h new file mode 100644 index 0000000..f4c04a4 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/clipanimator_p.h @@ -0,0 +1,145 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_ANIMATION_CLIPANIMATOR_P_H +#define QT3DANIMATION_ANIMATION_CLIPANIMATOR_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { +namespace Animation { + +struct Channel; +class Handler; + +class Q_AUTOTEST_EXPORT ClipAnimator : public BackendNode +{ +public: + ClipAnimator(); + + void cleanup(); + void setClipId(Qt3DCore::QNodeId clipId); + Qt3DCore::QNodeId clipId() const { return m_clipId; } + void setMapperId(Qt3DCore::QNodeId mapperId); + Qt3DCore::QNodeId mapperId() const { return m_mapperId; } + void setClockId(Qt3DCore::QNodeId clockId); + Qt3DCore::QNodeId clockId() const { return m_clockId; } + + void setRunning(bool running); + bool isRunning() const { return m_running; } + void setLoops(int loops) { m_loops = loops; } + int loops() const { return m_loops; } + void setNormalizedLocalTime(float normalizedLocalTime); + float normalizedLocalTime() const { return m_normalizedLocalTime; } + + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) override; + void setHandler(Handler *handler) { m_handler = handler; } + + // Called by jobs + bool canRun() const { return !m_clipId.isNull() && !m_mapperId.isNull(); } + void setMappingData(const QVector &mappingData) { m_mappingData = mappingData; } + QVector mappingData() const { return m_mappingData; } + + void setStartTime(qint64 globalTime) { m_lastGlobalTimeNS = globalTime; } + + int currentLoop() const { return m_currentLoop; } + void setCurrentLoop(int currentLoop) { m_currentLoop = currentLoop; } + + void sendPropertyChanges(const QVector &changes); + void sendCallbacks(const QVector &callbacks); + + void animationClipMarkedDirty() { setDirty(Handler::ClipAnimatorDirty); } + + void setClipFormat(const ClipFormat &clipFormat) { m_clipFormat = clipFormat; } + ClipFormat clipFormat() const { return m_clipFormat; } + + qint64 nsSincePreviousFrame(qint64 currentGlobalTimeNS); + void setLastGlobalTimeNS(qint64 lastGlobalTimeNS); + + double lastLocalTime() const; + void setLastLocalTime(double lastLocalTime); + + float lastNormalizedLocalTime() { return m_lastNormalizedLocalTime; } + void setLastNormalizedLocalTime(float normalizedLocalTime); + bool isSeeking() const + { + return isValidNormalizedTime(m_normalizedLocalTime) + && !qFuzzyCompare(m_lastNormalizedLocalTime, m_normalizedLocalTime); + } + +private: + void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) final; + + Qt3DCore::QNodeId m_clipId; + Qt3DCore::QNodeId m_mapperId; + Qt3DCore::QNodeId m_clockId; + bool m_running; + int m_loops; + + // Working state + qint64 m_lastGlobalTimeNS; + double m_lastLocalTime; + QVector m_mappingData; + + int m_currentLoop; + ClipFormat m_clipFormat; + + float m_normalizedLocalTime; + float m_lastNormalizedLocalTime; +}; + +} // namespace Animation +} // namespace Qt3DAnimation + + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_ANIMATION_CLIPANIMATOR_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/clipblendnode_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/clipblendnode_p.h new file mode 100644 index 0000000..9651106 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/clipblendnode_p.h @@ -0,0 +1,145 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_ANIMATION_CLIPBLENDNODE_P_H +#define QT3DANIMATION_ANIMATION_CLIPBLENDNODE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { + +namespace Animation { + +class ClipBlendNodeManager; + +class Q_AUTOTEST_EXPORT ClipBlendNode : public BackendNode +{ +public: + ~ClipBlendNode(); + + enum BlendType { + NoneBlendType, + LerpBlendType, + AdditiveBlendType, + ValueType + }; + + void setClipBlendNodeManager(ClipBlendNodeManager *manager); + inline ClipBlendNodeManager *clipBlendNodeManager() const { return m_manager; } + + BlendType blendType() const; + + void blend(Qt3DCore::QNodeId animatorId); + + void setClipResults(Qt3DCore::QNodeId animatorId, const ClipResults &clipResults); + ClipResults clipResults(Qt3DCore::QNodeId animatorId) const; + + virtual QVector allDependencyIds() const = 0; + virtual QVector currentDependencyIds() const = 0; + virtual double duration() const = 0; + +protected: + explicit ClipBlendNode(BlendType blendType); + void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) override; + virtual ClipResults doBlend(const QVector &blendData) const = 0; + +private: + ClipBlendNodeManager *m_manager; + BlendType m_blendType; + + // Store the results of evaluations indexed by animator id + QVector m_animatorIds; + QVector m_clipResults; +}; + +template +class ClipBlendNodeFunctor : public Qt3DCore::QBackendNodeMapper +{ +public: + explicit ClipBlendNodeFunctor(Handler *handler, ClipBlendNodeManager *manager) + : m_handler(handler) + , m_manager(manager) + { + } + + Qt3DCore::QBackendNode *create(const Qt3DCore::QNodeCreatedChangeBasePtr &change) const final + { + if (m_manager->containsNode(change->subjectId())) + return static_cast(m_manager->lookupNode(change->subjectId())); + Backend *backend = new Backend(); + backend->setClipBlendNodeManager(m_manager); + backend->setHandler(m_handler); + m_manager->appendNode(change->subjectId(), backend); + return backend; + } + + Qt3DCore::QBackendNode *get(Qt3DCore::QNodeId id) const final + { + return m_manager->lookupNode(id); + } + + void destroy(Qt3DCore::QNodeId id) const final + { + m_manager->releaseNode(id); + } + +private: + Handler *m_handler; + ClipBlendNodeManager *m_manager; +}; + +} // Animation + +} // Qt3DAnimation + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_ANIMATION_CLIPBLENDNODE_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/clipblendnodevisitor_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/clipblendnodevisitor_p.h new file mode 100644 index 0000000..1bedb20 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/clipblendnodevisitor_p.h @@ -0,0 +1,101 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_ANIMATION_CLIPBLENDNODEVISITOR_P_H +#define QT3DANIMATION_ANIMATION_CLIPBLENDNODEVISITOR_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { +namespace Animation { + +class ClipBlendNodeManager; +class ClipBlendNode; + +using VisitFunction = std::function; + +class Q_AUTOTEST_EXPORT ClipBlendNodeVisitor +{ +public: + enum TraversalOrder { + PreOrder, + PostOrder + }; + + enum NodeFilter { + VisitAllNodes, + VisitOnlyDependencies + }; + + explicit ClipBlendNodeVisitor(ClipBlendNodeManager *manager, + TraversalOrder order = PostOrder, + NodeFilter filter = VisitAllNodes); + + void traverse(Qt3DCore::QNodeId rootId, const VisitFunction &visitFunction) const; + +private: + void visitPreOrderAllNodes(ClipBlendNode *node, const VisitFunction &visitFunction) const; + void visitPostOrderAllNodes(ClipBlendNode *node, const VisitFunction &visitFunction) const; + + void visitPreOrderDependencyNodes(ClipBlendNode *node, const VisitFunction &visitFunction) const; + void visitPostOrderDependencyNodes(ClipBlendNode *node, const VisitFunction &visitFunction) const; + + ClipBlendNodeManager *m_manager; + TraversalOrder m_order; + NodeFilter m_filter; +}; + +} // Animation +} // Qt3DAnimation + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_ANIMATION_CLIPBLENDNODEVISITOR_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/clipblendvalue_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/clipblendvalue_p.h new file mode 100644 index 0000000..168989a --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/clipblendvalue_p.h @@ -0,0 +1,103 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_ANIMATION_CLIPBLENDVALUE_H +#define QT3DANIMATION_ANIMATION_CLIPBLENDVALUE_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { +namespace Animation { + +class Q_AUTOTEST_EXPORT ClipBlendValue : public ClipBlendNode +{ +public: + ClipBlendValue(); + ~ClipBlendValue(); + + inline Qt3DCore::QNodeId clipId() const { return m_clipId; } + void setClipId(Qt3DCore::QNodeId clipId) { m_clipId = clipId; } // For unit tests + + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) override; + + inline QVector allDependencyIds() const override + { + return currentDependencyIds(); + } + + inline QVector currentDependencyIds() const override + { + return {}; + } + + double duration() const override; + + void setClipFormat(Qt3DCore::QNodeId animatorId, const ClipFormat &formatIndices); + ClipFormat &clipFormat(Qt3DCore::QNodeId animatorId); + const ClipFormat &clipFormat(Qt3DCore::QNodeId animatorId) const; + +protected: + ClipResults doBlend(const QVector &blendData) const override; + +private: + void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) final; + + Qt3DCore::QNodeId m_clipId; + + QVector m_animatorIds; + QVector m_clipFormats; +}; + +} // namespace Animation +} // namespace Qt3DAnimation + + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_ANIMATION_CLIPBLENDVALUE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/clock_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/clock_p.h new file mode 100644 index 0000000..1098765 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/clock_p.h @@ -0,0 +1,82 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_ANIMATION_CLOCK_P_H +#define QT3DANIMATION_ANIMATION_CLOCK_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { +namespace Animation { + +class Q_AUTOTEST_EXPORT Clock : public BackendNode +{ +public: + Clock(); + + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e); + void cleanup(); + + void setPlaybackRate(double playbackRate) { m_playbackRate = playbackRate; } + double playbackRate() const { return m_playbackRate; } + +private: + void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) final; + + double m_playbackRate; +}; + +} // namespace Animation +} // namespace Qt3DAnimation + + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_ANIMATION_CLOCK_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/evaluateblendclipanimatorjob_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/evaluateblendclipanimatorjob_p.h new file mode 100644 index 0000000..7548168 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/evaluateblendclipanimatorjob_p.h @@ -0,0 +1,90 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_ANIMATION_EVALUATEBLENDCLIPANIMATORJOB_P_H +#define QT3DANIMATION_ANIMATION_EVALUATEBLENDCLIPANIMATORJOB_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { +namespace Animation { + +class Handler; +class ClipBlendNode; + +class EvaluateBlendClipAnimatorJob : public Qt3DCore::QAspectJob +{ +public: + EvaluateBlendClipAnimatorJob(); + + void setHandler(Handler *handler) { m_handler = handler; } + Handler *handler() const { return m_handler; } + + void setBlendClipAnimator(const HBlendedClipAnimator &blendClipAnimatorHandle) { m_blendClipAnimatorHandle = blendClipAnimatorHandle; } + HBlendedClipAnimator blendClipAnimator() const { return m_blendClipAnimatorHandle; } + +protected: + void run() override; + +private: + HBlendedClipAnimator m_blendClipAnimatorHandle; + Handler *m_handler; +}; + +typedef QSharedPointer EvaluateBlendClipAnimatorJobPtr; + +} // Animation +} // Qt3DAnimation + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_ANIMATION_EVALUATEBLENDCLIPANIMATORJOB_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/evaluateclipanimatorjob_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/evaluateclipanimatorjob_p.h new file mode 100644 index 0000000..c9b1a8f --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/evaluateclipanimatorjob_p.h @@ -0,0 +1,92 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_ANIMATION_EVALUATECLIPANIMATORJOB_P_H +#define QT3DANIMATION_ANIMATION_EVALUATECLIPANIMATORJOB_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { +namespace Animation { + +class Handler; + +class EvaluateClipAnimatorJob : public Qt3DCore::QAspectJob +{ +public: + EvaluateClipAnimatorJob(); + + void setHandler(Handler *handler) { m_handler = handler; } + Handler *handler() const { return m_handler; } + + void setClipAnimator(const HClipAnimator &clipAnimatorHandle) + { + m_clipAnimatorHandle = clipAnimatorHandle; + } + + void clearClipAnimator() + { + m_clipAnimatorHandle = HClipAnimator(); + } + +protected: + void run() override; + +private: + HClipAnimator m_clipAnimatorHandle; + Handler *m_handler; +}; + +} // namespace Animation +} // namespace Qt3DAnimation + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_ANIMATION_EVALUATECLIPANIMATORJOB_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/fcurve_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/fcurve_p.h new file mode 100644 index 0000000..935db59 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/fcurve_p.h @@ -0,0 +1,177 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_ANIMATION_FCURVE_P_H +#define QT3DANIMATION_ANIMATION_FCURVE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include "keyframe_p.h" +#include "functionrangefinder_p.h" + +#include +#include +#include +#include + +#ifndef QT_NO_DEBUG_STREAM +#include +#endif + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { +namespace Animation { + +class Q_AUTOTEST_EXPORT FCurve +{ +public: + FCurve(); + + int keyframeCount() const { return m_localTimes.size(); } + void appendKeyframe(float localTime, const Keyframe &keyframe); + void clearKeyframes() { m_localTimes.clear(); m_keyframes.clear(); } + + const float &localTime(int index) const { return m_localTimes[index]; } + float &localTime(int index) { return m_localTimes[index]; } + const Keyframe &keyframe(int index) const { return m_keyframes[index]; } + Keyframe &keyframe(int index) { return m_keyframes[index]; } + + float startTime() const; + float endTime() const; + + float evaluateAtTime(float localTime) const; + float evaluateAtTime(float localTime, int lowerBound) const; + float evaluateAtTimeAsSlerp(float localTime, int lowerBound, float halfTheta, float sinHalfTheta, float reverseQ1) const; + int lowerKeyframeBound(float localTime) const; + + void read(const QJsonObject &json); + void setFromQChannelComponent(const QChannelComponent &qcc); + +private: + QVector m_localTimes; + QVector m_keyframes; + + FunctionRangeFinder m_rangeFinder; +}; + +#ifndef QT_NO_DEBUG_STREAM +inline QDebug operator<<(QDebug dbg, const FCurve &fcurve) +{ + QDebugStateSaver saver(dbg); + dbg << "Keyframe Count = " << fcurve.keyframeCount() << endl; + for (int i = 0; i < fcurve.keyframeCount(); ++i) { + const Keyframe &kf = fcurve.keyframe(i); + switch (kf.interpolation) { + case QKeyFrame::BezierInterpolation: { + dbg << "t = " << fcurve.localTime(i) + << ", value = " << kf.value + << ", leftHandle = " << kf.leftControlPoint + << ", rightHandle = " << kf.rightControlPoint + << endl; + break; + } + case QKeyFrame::ConstantInterpolation: + case QKeyFrame::LinearInterpolation: { + dbg << "t = " << fcurve.localTime(i) + << ", value = " << kf.value + << endl; + break; + } + } + } + return dbg; +} +#endif + +struct ChannelComponent +{ + QString name; + FCurve fcurve; + + void read(const QJsonObject &json); + void setFromQChannelComponent(const QChannelComponent &qcc); +}; + +#ifndef QT_NO_DEBUG_STREAM +inline QDebug operator<<(QDebug dbg, const ChannelComponent &channelComponent) +{ + QDebugStateSaver saver(dbg); + dbg << "Channel Component Name: " << channelComponent.name << endl + << "FCurve:" << channelComponent.fcurve << endl; + return dbg; +} +#endif + +struct Channel +{ + QString name; + int jointIndex = -1; + QVector channelComponents; + + void read(const QJsonObject &json); + void setFromQChannel(const QChannel &qch); +}; + +#ifndef QT_NO_DEBUG_STREAM +inline QDebug operator<<(QDebug dbg, const Channel &channel) +{ + QDebugStateSaver saver(dbg); + dbg << "Channel Name: " << channel.name << endl + << "Channels:" << channel.channelComponents.size() << endl; + + for (const auto &channelComponent : qAsConst(channel.channelComponents)) { + dbg << channelComponent; + } + return dbg; +} +#endif + +} // namespace Animation +} // namespace Qt3DAnimation + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_ANIMATION_FCURVE_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/findrunningclipanimatorsjob_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/findrunningclipanimatorsjob_p.h new file mode 100644 index 0000000..f0e30e8 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/findrunningclipanimatorsjob_p.h @@ -0,0 +1,93 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_ANIMATION_FINDRUNNINGCLIPANIMATORSJOB_P_H +#define QT3DANIMATION_ANIMATION_FINDRUNNINGCLIPANIMATORSJOB_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +#if defined(QT_BUILD_INTERNAL) +class tst_FindRunningClipAnimatorsJob; +#endif + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { +namespace Animation { + +class Handler; + +class Q_AUTOTEST_EXPORT FindRunningClipAnimatorsJob : public Qt3DCore::QAspectJob +{ +public: + FindRunningClipAnimatorsJob(); + + void setHandler(Handler *handler) { m_handler = handler; } + Handler *handler() const { return m_handler; } + + void setDirtyClipAnimators(const QVector &animationClipHandles); + +protected: + void run() override; + +private: + QVector m_clipAnimatorHandles; + Handler *m_handler; + +#if defined(QT_BUILD_INTERNAL) + friend class ::tst_FindRunningClipAnimatorsJob; +#endif +}; + +} // namespace Animation +} // namespace Qt3DAnimation + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_ANIMATION_FINDRUNNINGCLIPANIMATORSJOB_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/functionrangefinder_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/functionrangefinder_p.h new file mode 100644 index 0000000..bea9a2e --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/functionrangefinder_p.h @@ -0,0 +1,97 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_ANIMATION_FUNCTIONRANGEFINDER_P_H +#define QT3DANIMATION_ANIMATION_FUNCTIONRANGEFINDER_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { +namespace Animation { + +class Q_AUTOTEST_EXPORT FunctionRangeFinder +{ +public: + FunctionRangeFinder(const QVector &x); + + inline int findLowerBound(float x) const { return m_correlated ? hunt(x) : locate(x); } + + int rangeSize() const { return m_rangeSize; } + void setRangeSize(int rangeSize) { m_rangeSize = rangeSize; } + + bool isAscending() const { return m_ascending; } + void setAscending(bool ascending) { m_ascending = ascending; } + + int correlationThreshold() const { return m_correlationThreshold; } + void updateAutomaticCorrelationThreshold() + { + m_correlationThreshold = std::max(1, int(std::pow(float(m_x.size()), 0.25))); + } + +private: + int locate(float x) const; + int hunt(float x) const; + + const QVector &m_x; + mutable int m_previousLowerBound; + mutable bool m_correlated; + int m_rangeSize; + int m_correlationThreshold; + bool m_ascending; +}; + +} // namespace Animation +} // namespace Qt3DAnimation + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_ANIMATION_FUNCTIONRANGEFINDER_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/gltfimporter_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/gltfimporter_p.h new file mode 100644 index 0000000..e31f8d0 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/gltfimporter_p.h @@ -0,0 +1,237 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_ANIMATION_GLTFIMPORTER_H +#define QT3DANIMATION_ANIMATION_GLTFIMPORTER_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include +#include + +#include +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +class QIODevice; + +namespace Qt3DAnimation { +namespace Animation { + +class GLTFImporter +{ +public: + class BufferData + { + public: + BufferData(); + explicit BufferData(const QJsonObject &json); + + quint64 byteLength; + QString path; + QByteArray data; + }; + + class BufferView + { + public: + BufferView(); + explicit BufferView(const QJsonObject &json); + + quint64 byteOffset; + quint64 byteLength; + int bufferIndex; + int target; // Only for per vertex attributes + }; + + class AccessorData + { + public: + AccessorData(); + explicit AccessorData(const QJsonObject &json); + + int bufferViewIndex; + Qt3DRender::QAttribute::VertexBaseType type; + uint dataSize; + int count; + int byteOffset; + int byteStride; // Only for per vertex attributes + + // TODO: Extend to support sparse accessors + }; + + class Skin + { + public: + Skin(); + explicit Skin(const QJsonObject &json); + + QString name; + int inverseBindAccessorIndex; + QVector jointNodeIndices; + }; + + class Channel + { + public: + Channel(); + explicit Channel(const QJsonObject &json); + + int samplerIndex; + int targetNodeIndex; + QString targetProperty; + }; + + class Sampler + { + public: + Sampler(); + explicit Sampler(const QJsonObject &json); + + enum InterpolationMode { + Linear, + Step, + CatmullRomSpline, + CubicSpline + }; + + QString interpolationModeString() const; + + int inputAccessorIndex; + int outputAccessorIndex; + InterpolationMode interpolationMode; + }; + + class Animation + { + public: + Animation(); + explicit Animation(const QJsonObject &json); + + QString name; + QVector channels; + QVector samplers; + }; + + class Node + { + public: + Node(); + explicit Node(const QJsonObject &json); + + Qt3DCore::Sqt localTransform; + QVector childNodeIndices; + QString name; + int parentNodeIndex; + int cameraIndex; + int meshIndex; + int skinIndex; + }; + + GLTFImporter(); + + bool load(QIODevice *ioDev); + const QVector animations() const { return m_animations; } + + struct AnimationNameAndChannels + { + QString name; + QVector channels; + }; + AnimationNameAndChannels createAnimationData(int animationIndex, const QString &animationName = QString()) const; + +private: + static Qt3DRender::QAttribute::VertexBaseType accessorTypeFromJSON(int componentType); + static uint accessorTypeSize(Qt3DRender::QAttribute::VertexBaseType componentType); + static uint accessorDataSizeFromJson(const QString &type); + + struct RawData + { + const char *data; + quint64 byteLength; + }; + + void setBasePath(const QString &path); + bool setJSON(const QJsonDocument &json); + + bool parse(); + bool parseGLTF2(); + void cleanup(); + QHash createNodeIndexToJointIndexMap(const Skin &skin) const; + + bool processJSONBuffer(const QJsonObject &json); + bool processJSONBufferView(const QJsonObject &json); + bool processJSONAccessor(const QJsonObject &json); + bool processJSONSkin(const QJsonObject &json); + bool processJSONAnimation(const QJsonObject &json); + bool processJSONNode(const QJsonObject &json); + void setupNodeParentLinks(); + QByteArray resolveLocalData(const QString &path) const; + + RawData accessorData(int accessorIndex, int index) const; + + QJsonDocument m_json; + QString m_basePath; + QVector m_bufferDatas; + QVector m_bufferViews; + QVector m_accessors; + QVector m_skins; + QVector m_animations; + QVector m_nodes; +}; + +} // namespace Animation +} // namespace Qt3DAnimation + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_ANIMATION_GLTFIMPORTER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/handle_types_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/handle_types_p.h new file mode 100644 index 0000000..5f80a54 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/handle_types_p.h @@ -0,0 +1,80 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_ANIMATION_HANDLE_TYPES_P_H +#define QT3DANIMATION_ANIMATION_HANDLE_TYPES_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { +namespace Animation { + +class AnimationClip; +class ClipAnimator; +class BlendedClipAnimator; +class ChannelMapping; +class ChannelMapper; +class Skeleton; + +typedef Qt3DCore::QHandle HAnimationClip; +typedef Qt3DCore::QHandle HClipAnimator; +typedef Qt3DCore::QHandle HBlendedClipAnimator; +typedef Qt3DCore::QHandle HChannelMapping; +typedef Qt3DCore::QHandle HChannelMapper; +typedef Qt3DCore::QHandle HSkeleton; + +} // namespace Animation +} // namespace Qt3DAnimation + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_ANIMATION_HANDLE_TYPES_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/handler_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/handler_p.h new file mode 100644 index 0000000..99e2ae1 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/handler_p.h @@ -0,0 +1,165 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_ANIMATION_HANDLER_H +#define QT3DANIMATION_ANIMATION_HANDLER_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +#if defined(QT_BUILD_INTERNAL) +class tst_Handler; +#endif + +namespace Qt3DAnimation { +namespace Animation { + +class AnimationClip; +class AnimationClipLoaderManager; +class ClockManager; +class ClipAnimator; +class ClipAnimatorManager; +class BlendedClipAnimator; +class BlendedClipAnimatorManager; +class ChannelMapping; +class ChannelMappingManager; +class ChannelMapper; +class ChannelMapperManager; +class ClipBlendNodeManager; +class SkeletonManager; + +class FindRunningClipAnimatorsJob; +class LoadAnimationClipJob; +class EvaluateClipAnimatorJob; +class BuildBlendTreesJob; +class EvaluateBlendClipAnimatorJob; + +using BuildBlendTreesJobPtr = QSharedPointer; +using EvaluateBlendClipAnimatorJobPtr = QSharedPointer; + +class Q_AUTOTEST_EXPORT Handler +{ +public: + Handler(); + ~Handler(); + + enum DirtyFlag { + AnimationClipDirty, + ChannelMappingsDirty, + ClipAnimatorDirty, + BlendedClipAnimatorDirty + }; + + qint64 simulationTime() const { return m_simulationTime; } + + void setDirty(DirtyFlag flag, Qt3DCore::QNodeId nodeId); + + void setClipAnimatorRunning(const HClipAnimator &handle, bool running); + QVector runningClipAnimators() const { return m_runningClipAnimators; } + + void setBlendedClipAnimatorRunning(const HBlendedClipAnimator &handle, bool running); + QVector runningBlenndedClipAnimators() const { return m_runningBlendedClipAnimators; } + + AnimationClipLoaderManager *animationClipLoaderManager() const Q_DECL_NOTHROW { return m_animationClipLoaderManager.data(); } + ClockManager *clockManager() const Q_DECL_NOTHROW { return m_clockManager.data(); } + ClipAnimatorManager *clipAnimatorManager() const Q_DECL_NOTHROW { return m_clipAnimatorManager.data(); } + BlendedClipAnimatorManager *blendedClipAnimatorManager() const Q_DECL_NOTHROW { return m_blendedClipAnimatorManager.data(); } + ChannelMappingManager *channelMappingManager() const Q_DECL_NOTHROW { return m_channelMappingManager.data(); } + ChannelMapperManager *channelMapperManager() const Q_DECL_NOTHROW { return m_channelMapperManager.data(); } + ClipBlendNodeManager *clipBlendNodeManager() const Q_DECL_NOTHROW { return m_clipBlendNodeManager.data(); } + SkeletonManager *skeletonManager() const Q_DECL_NOTHROW { return m_skeletonManager.data(); } + + QVector jobsToExecute(qint64 time); + + void cleanupHandleList(QVector *clips); + void cleanupHandleList(QVector *animators); + void cleanupHandleList(QVector *animators); + +private: + QMutex m_mutex; + QScopedPointer m_animationClipLoaderManager; + QScopedPointer m_clockManager; + QScopedPointer m_clipAnimatorManager; + QScopedPointer m_blendedClipAnimatorManager; + QScopedPointer m_channelMappingManager; + QScopedPointer m_channelMapperManager; + QScopedPointer m_clipBlendNodeManager; + QScopedPointer m_skeletonManager; + + QVector m_dirtyAnimationClips; + QVector m_dirtyChannelMappers; + QVector m_dirtyClipAnimators; + QVector m_dirtyBlendedAnimators; + + QVector m_runningClipAnimators; + QVector m_runningBlendedClipAnimators; + + QSharedPointer m_loadAnimationClipJob; + QSharedPointer m_findRunningClipAnimatorsJob; + QVector> m_evaluateClipAnimatorJobs; + QVector m_evaluateBlendClipAnimatorJobs; + BuildBlendTreesJobPtr m_buildBlendTreesJob; + + qint64 m_simulationTime; + +#if defined(QT_BUILD_INTERNAL) + friend class QT_PREPEND_NAMESPACE(tst_Handler); +#endif +}; + +} // namespace Animation +} // namespace Qt3DAnimation + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_ANIMATION_HANDLER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/job_common_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/job_common_p.h new file mode 100644 index 0000000..882246a --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/job_common_p.h @@ -0,0 +1,79 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ +#ifndef QT3DANIMATION_ANIMATION_JOB_COMMON_P_H +#define QT3DANIMATION_ANIMATION_JOB_COMMON_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { + +namespace Animation { + +namespace JobTypes { + +enum JobType { + BuildBlendTree = 8192, + EvaluateBlendClipAnimator, + EvaluateClipAnimator, + LoadAnimationClip, + FindRunningClipAnimator +}; + +} // JobTypes + +} // Animation + +} // Qt3DAnimation + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_ANIMATION_JOB_COMMON_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/keyframe_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/keyframe_p.h new file mode 100644 index 0000000..9d2c3bc --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/keyframe_p.h @@ -0,0 +1,80 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_ANIMATION_KEYFRAME_P_H +#define QT3DANIMATION_ANIMATION_KEYFRAME_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { +namespace Animation { + +struct Keyframe +{ + inline bool operator==(const Keyframe &rhs) const + { + return value == rhs.value + && leftControlPoint == rhs.leftControlPoint + && rightControlPoint == rhs.rightControlPoint + && interpolation == rhs.interpolation; + } + + float value; // Value (time is stored separately in FCurve) + QVector2D leftControlPoint; // Bezier control point (time, value) + QVector2D rightControlPoint; // Bezier control point (time, value) + QKeyFrame::InterpolationType interpolation; // Method to use for evaluation between this Keyframe and the next +}; + +} // namespace Animation +} // namespace Qt3DAnimation + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_ANIMATION_KEYFRAME_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/lerpclipblend_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/lerpclipblend_p.h new file mode 100644 index 0000000..6120f8a --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/lerpclipblend_p.h @@ -0,0 +1,105 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_ANIMATION_LERPCLIPBLEND_P_H +#define QT3DANIMATION_ANIMATION_LERPCLIPBLEND_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { + +namespace Animation { + +class Q_AUTOTEST_EXPORT LerpClipBlend : public ClipBlendNode +{ +public: + LerpClipBlend(); + ~LerpClipBlend(); + + inline float blendFactor() const { return m_blendFactor; } + void setBlendFactor(float blendFactor) { m_blendFactor = blendFactor; } // For unit tests + + inline Qt3DCore::QNodeId startClipId() const { return m_startClipId; } + void setStartClipId(Qt3DCore::QNodeId startClipId) { m_startClipId = startClipId; } // For unit tests + + inline Qt3DCore::QNodeId endClipId() const { return m_endClipId; } + void setEndClipId(Qt3DCore::QNodeId endClipId) { m_endClipId = endClipId; } // For unit tests + + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) final; + + inline QVector allDependencyIds() const override + { + return currentDependencyIds(); + } + + inline QVector currentDependencyIds() const override + { + return { m_startClipId, m_endClipId }; + } + + double duration() const override; + +protected: + ClipResults doBlend(const QVector &blendData) const final; + +private: + void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) final; + + Qt3DCore::QNodeId m_startClipId; + Qt3DCore::QNodeId m_endClipId; + float m_blendFactor; +}; + +} // Animation + +} // Qt3DAnimation + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_ANIMATION_LERPCLIPBLEND_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/loadanimationclipjob_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/loadanimationclipjob_p.h new file mode 100644 index 0000000..25de2c6 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/loadanimationclipjob_p.h @@ -0,0 +1,87 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_ANIMATION_LOADANIMATIONCLIPJOB_H +#define QT3DANIMATION_ANIMATION_LOADANIMATIONCLIPJOB_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { +namespace Animation { + +class Handler; +class FindGraphJob; + +class LoadAnimationClipJob : public Qt3DCore::QAspectJob +{ +public: + LoadAnimationClipJob(); + + void setHandler(Handler *handler) { m_handler = handler; } + Handler *handler() const { return m_handler; } + + void addDirtyAnimationClips(const QVector &animationClipHandles); + void clearDirtyAnimationClips(); + +protected: + void run() override; + +private: + QVector m_animationClipHandles; + Handler *m_handler; +}; + +} // namespace Animation +} // namespace Qt3DAnimation + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_ANIMATION_LOADANIMATIONCLIPJOB_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/managers_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/managers_p.h new file mode 100644 index 0000000..ba4bcf7 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/managers_p.h @@ -0,0 +1,155 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_ANIMATION_MANAGERS_P_H +#define QT3DANIMATION_ANIMATION_MANAGERS_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { +namespace Animation { + +class ClipBlendNode; + +class AnimationClipLoaderManager : public Qt3DCore::QResourceManager< + AnimationClip, + Qt3DCore::QNodeId> +{ +public: + AnimationClipLoaderManager() {} +}; + +class ClockManager : public Qt3DCore::QResourceManager< + Clock, + Qt3DCore::QNodeId> +{ +public: + ClockManager() {} +}; + +class ClipAnimatorManager : public Qt3DCore::QResourceManager< + ClipAnimator, + Qt3DCore::QNodeId> +{ +public: + ClipAnimatorManager() {} +}; + +class BlendedClipAnimatorManager : public Qt3DCore::QResourceManager< + BlendedClipAnimator, + Qt3DCore::QNodeId> +{ +public: + BlendedClipAnimatorManager() {} +}; + +class ChannelMappingManager : public Qt3DCore::QResourceManager< + ChannelMapping, + Qt3DCore::QNodeId> +{ +public: + ChannelMappingManager() {} +}; + +class ChannelMapperManager : public Qt3DCore::QResourceManager< + ChannelMapper, + Qt3DCore::QNodeId> +{ +public: + ChannelMapperManager() {} +}; + +class Q_AUTOTEST_EXPORT ClipBlendNodeManager +{ +public: + ClipBlendNodeManager(); + ~ClipBlendNodeManager(); + + bool containsNode(Qt3DCore::QNodeId id) const; + void appendNode(Qt3DCore::QNodeId id, ClipBlendNode *node); + ClipBlendNode *lookupNode(Qt3DCore::QNodeId id) const; + void releaseNode(Qt3DCore::QNodeId id); + +private: + QHash m_nodes; +}; + +class SkeletonManager : public Qt3DCore::QResourceManager< + Skeleton, + Qt3DCore::QNodeId> +{ +public: + SkeletonManager() {} +}; + +} // namespace Animation +} // namespace Qt3DAnimation + +Q_DECLARE_RESOURCE_INFO(Qt3DAnimation::Animation::AnimationClip, Q_REQUIRES_CLEANUP) +Q_DECLARE_RESOURCE_INFO(Qt3DAnimation::Animation::ClipAnimator, Q_REQUIRES_CLEANUP) +Q_DECLARE_RESOURCE_INFO(Qt3DAnimation::Animation::BlendedClipAnimator, Q_REQUIRES_CLEANUP) +Q_DECLARE_RESOURCE_INFO(Qt3DAnimation::Animation::ChannelMapping, Q_REQUIRES_CLEANUP) +Q_DECLARE_RESOURCE_INFO(Qt3DAnimation::Animation::ChannelMapper, Q_REQUIRES_CLEANUP) +Q_DECLARE_RESOURCE_INFO(Qt3DAnimation::Animation::Skeleton, Q_REQUIRES_CLEANUP) + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_ANIMATION_MANAGERS_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/nodefunctor_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/nodefunctor_p.h new file mode 100644 index 0000000..463205e --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/nodefunctor_p.h @@ -0,0 +1,101 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_ANIMATION_NODEFUNCTOR_P_H +#define QT3DANIMATION_ANIMATION_NODEFUNCTOR_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { +namespace Animation { + +class Handler; + +template +class NodeFunctor : public Qt3DCore::QBackendNodeMapper +{ +public: + explicit NodeFunctor(Handler *handler, Manager *manager) + : m_handler(handler) + , m_manager(manager) + { + } + + Qt3DCore::QBackendNode *create(const Qt3DCore::QNodeCreatedChangeBasePtr &change) const final + { + Backend *backend = m_manager->getOrCreateResource(change->subjectId()); + backend->setHandler(m_handler); + return backend; + } + + Qt3DCore::QBackendNode *get(Qt3DCore::QNodeId id) const final + { + return m_manager->lookupResource(id); + } + + void destroy(Qt3DCore::QNodeId id) const final + { + m_manager->releaseResource(id); + } + +private: + Handler *m_handler; + Manager *m_manager; +}; + +} // namespace Animation +} // namespace Qt3DAnimation + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_ANIMATION_NODEFUNCTOR_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qabstractanimation_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qabstractanimation_p.h new file mode 100644 index 0000000..e1c412b --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qabstractanimation_p.h @@ -0,0 +1,75 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: http://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_QABSTRACTANIMATION_P_H +#define QT3DANIMATION_QABSTRACTANIMATION_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { + +class Q_AUTOTEST_EXPORT QAbstractAnimationPrivate : public QObjectPrivate +{ +public: + QAbstractAnimationPrivate(QAbstractAnimation::AnimationType type); + + QString m_animationName; + QAbstractAnimation::AnimationType m_animationType; + float m_position; + float m_duration; + + Q_DECLARE_PUBLIC(QAbstractAnimation) +}; + +} // Qt3DAnimation + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_QANIMATIONCONTROLLER_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qabstractanimationclip_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qabstractanimationclip_p.h new file mode 100644 index 0000000..8b74bee --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qabstractanimationclip_p.h @@ -0,0 +1,76 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_QABSTRACTANIMATIONCLIP_P_H +#define QT3DANIMATION_QABSTRACTANIMATIONCLIP_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include "qabstractanimationclip.h" + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { + +class QAbstractAnimationClipPrivate : public Qt3DCore::QNodePrivate +{ +public: + QAbstractAnimationClipPrivate(); + + Q_DECLARE_PUBLIC(QAbstractAnimationClip) + + void setDuration(float duration); + + // Set from the backend + float m_duration; +}; + +} // namespace Qt3DAnimation + + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_QABSTRACTANIMATIONCLIP_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qabstractchannelmapping_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qabstractchannelmapping_p.h new file mode 100644 index 0000000..2d77ee2 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qabstractchannelmapping_p.h @@ -0,0 +1,85 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_QABSTRACTCHANNELMAPPING_P_H +#define QT3DANIMATION_QABSTRACTCHANNELMAPPING_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { + +class QAbstractChannelMapping; + +class Q_AUTOTEST_EXPORT QAbstractChannelMappingPrivate : public Qt3DCore::QNodePrivate +{ +public: + QAbstractChannelMappingPrivate(); + + static const QAbstractChannelMappingPrivate *get(const Qt3DAnimation::QAbstractChannelMapping *q); + + Q_DECLARE_PUBLIC(QAbstractChannelMapping) + + QChannelMappingCreatedChangeBase::MappingType m_mappingType; +}; + +struct QAbstractChannelMappingData +{ + // TODO: Add members that should be sent to the backend +}; + +} // namespace Qt3DAnimation + + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_QABSTRACTCHANNELMAPPING_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qabstractclipanimator_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qabstractclipanimator_p.h new file mode 100644 index 0000000..bf95049 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qabstractclipanimator_p.h @@ -0,0 +1,93 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_QABSTRACTCLIPANIMATOR_P_H +#define QT3DANIMATION_QABSTRACTCLIPANIMATOR_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { + +class QChannelMapper; +class QClock; + +class QAbstractClipAnimatorPrivate : public Qt3DCore::QComponentPrivate +{ +public: + QAbstractClipAnimatorPrivate(); + + virtual bool canPlay() const; + + Q_DECLARE_PUBLIC(QAbstractClipAnimator) + + Qt3DAnimation::QChannelMapper *m_mapper; + Qt3DAnimation::QClock *m_clock; + bool m_running; + int m_loops; + float m_normalizedTime; +}; + +struct QAbstractClipAnimatorData +{ + Qt3DCore::QNodeId mapperId; + Qt3DCore::QNodeId clockId; + bool running; + float normalizedTime; + int loops; +}; + +} // namespace Qt3DAnimation + + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_QABSTRACTCLIPANIMATOR_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qabstractclipblendnode_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qabstractclipblendnode_p.h new file mode 100644 index 0000000..3066682 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qabstractclipblendnode_p.h @@ -0,0 +1,74 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_QABSTRACTCLIPBLENDNODE_P_H +#define QT3DANIMATION_QABSTRACTCLIPBLENDNODE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { + +class QAbstractAnimationClip; +class QAbstractClipBlendNode; + +class QAbstractClipBlendNodePrivate : public Qt3DCore::QNodePrivate +{ +public: + QAbstractClipBlendNodePrivate(); + + Q_DECLARE_PUBLIC(QAbstractClipBlendNode) + QVector m_clips; +}; + +} // namespace Qt3DAnimation + + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_QABSTRACTCLIPBLENDNODE_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qadditiveclipblend_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qadditiveclipblend_p.h new file mode 100644 index 0000000..0c408c9 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qadditiveclipblend_p.h @@ -0,0 +1,82 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_QADDITIVEBLEND_P_H +#define QT3DANIMATION_QADDITIVEBLEND_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { + +class QAdditiveClipBlend; + +class QAdditiveClipBlendPrivate : public QAbstractClipBlendNodePrivate +{ +public: + QAdditiveClipBlendPrivate(); + + Q_DECLARE_PUBLIC(QAdditiveClipBlend) + Qt3DAnimation::QAbstractClipBlendNode *m_baseClip; + Qt3DAnimation::QAbstractClipBlendNode *m_additiveClip; + float m_additiveFactor; +}; + +struct QAdditiveClipBlendData +{ + Qt3DCore::QNodeId baseClipId; + Qt3DCore::QNodeId additiveClipId; + float additiveFactor; +}; + +} // Qt3DAnimation + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_QADDITIVEBLEND_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qanimationaspect_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qanimationaspect_p.h new file mode 100644 index 0000000..2ecc8fd --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qanimationaspect_p.h @@ -0,0 +1,80 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_QANIMATIONASPECT_P_H +#define QT3DANIMATION_QANIMATIONASPECT_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { + +class QAnimationAspect; + +namespace Animation { +class Handler; +} + +class QAnimationAspectPrivate : public Qt3DCore::QAbstractAspectPrivate +{ +public: + QAnimationAspectPrivate(); + + Q_DECLARE_PUBLIC(QAnimationAspect) + + QScopedPointer m_handler; +}; + +} // namespace Qt3DAnimation + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_QANIMATIONASPECT_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qanimationcallbacktrigger_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qanimationcallbacktrigger_p.h new file mode 100644 index 0000000..9a05d42 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qanimationcallbacktrigger_p.h @@ -0,0 +1,85 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_QANIMATIONCALLBACKTRIGGER_P_H +#define QT3DANIMATION_QANIMATIONCALLBACKTRIGGER_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { + +class Q_AUTOTEST_EXPORT QAnimationCallbackTrigger : public Qt3DCore::QSceneChange +{ +public: + QAnimationCallbackTrigger(Qt3DCore::QNodeId subjectId); + + void setCallback(QAnimationCallback *callback) { m_callback = callback; } + QAnimationCallback *callback() const { return m_callback; } + + void setValue(const QVariant &value) { m_value = value; } + QVariant value() const { return m_value; } + +private: + QAnimationCallback *m_callback; + QVariant m_value; +}; + +typedef QSharedPointer QAnimationCallbackTriggerPtr; + +} // namespace Qt3DAnimation + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_QANIMATIONCALLBACKTRIGGER_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qanimationclip_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qanimationclip_p.h new file mode 100644 index 0000000..514d568 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qanimationclip_p.h @@ -0,0 +1,81 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_QANIMATIONCLIP_P_H +#define QT3DANIMATION_QANIMATIONCLIP_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { + +class QAnimationClipPrivate : public QAbstractAnimationClipPrivate +{ +public: + QAnimationClipPrivate(); + + Q_DECLARE_PUBLIC(QAnimationClip) + + QAnimationClipData m_clipData; +}; + +struct QAnimationClipChangeData +{ + QAnimationClipData clipData; +}; + +} // namespace Qt3DAnimation + + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_QANIMATIONCLIP_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qanimationcliploader_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qanimationcliploader_p.h new file mode 100644 index 0000000..70b21db --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qanimationcliploader_p.h @@ -0,0 +1,81 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_QANIMATIONCLIPLOADER_P_H +#define QT3DANIMATION_QANIMATIONCLIPLOADER_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include "qanimationcliploader.h" + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { + +class QAnimationClipLoaderPrivate : public QAbstractAnimationClipPrivate +{ +public: + QAnimationClipLoaderPrivate(); + + void setStatus(QAnimationClipLoader::Status status); + + Q_DECLARE_PUBLIC(QAnimationClipLoader) + + QUrl m_source; + QAnimationClipLoader::Status m_status; +}; + +struct QAnimationClipLoaderData +{ + QUrl source; +}; + +} // namespace Qt3DAnimation + + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_QANIMATIONCLIPLOADER_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qanimationcontroller_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qanimationcontroller_p.h new file mode 100644 index 0000000..c064849 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qanimationcontroller_p.h @@ -0,0 +1,86 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: http://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_QANIMATIONCONTROLLER_P_H +#define QT3DANIMATION_QANIMATIONCONTROLLER_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { + +class QAnimationControllerPrivate : public QObjectPrivate +{ +public: + QAnimationControllerPrivate(); + + QString m_name; + int m_activeAnimationGroup; + QVector m_animationGroups; + float m_position; + float m_scaledPosition; + float m_positionScale; + float m_positionOffset; + Qt3DCore::QEntity *m_entity; + bool m_recursive; + + void updatePosition(float position); + void extractAnimations(); + void clearAnimations(); + QAnimationGroup *findGroup(const QString &name); + float scaledPosition(float position) const; + + Q_DECLARE_PUBLIC(QAnimationController) +}; + +} // Qt3DAnimation + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_QANIMATIONCONTROLLER_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qanimationgroup_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qanimationgroup_p.h new file mode 100644 index 0000000..1e13952 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qanimationgroup_p.h @@ -0,0 +1,77 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: http://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_QANIMATIONGROUP_P_H +#define QT3DANIMATION_QANIMATIONGROUP_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { + +class QAnimationGroupPrivate : public QObjectPrivate +{ +public: + QAnimationGroupPrivate(); + + QString m_name; + QVector m_animations; + float m_position; + float m_duration; + + void updatePosition(float position); + + Q_DECLARE_PUBLIC(QAnimationGroup) +}; + +} // Qt3DAnimation + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_QANIMATIONGROUP_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qblendedclipanimator_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qblendedclipanimator_p.h new file mode 100644 index 0000000..e874a52 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qblendedclipanimator_p.h @@ -0,0 +1,81 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_QBLENDEDCLIPANIMATOR_P_H +#define QT3DANIMATION_QBLENDEDCLIPANIMATOR_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { + +class QAbstractClipBlendNode; + +class QBlendedClipAnimatorPrivate : public Qt3DAnimation::QAbstractClipAnimatorPrivate +{ +public: + QBlendedClipAnimatorPrivate(); + + Q_DECLARE_PUBLIC(QBlendedClipAnimator) + QAbstractClipBlendNode *m_blendTreeRoot; +}; + +struct QBlendedClipAnimatorData : public QAbstractClipAnimatorData +{ + Qt3DCore::QNodeId blendTreeRootId; +}; + +} // namespace Qt3DAnimation + + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_QBLENDEDCLIPANIMATOR_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qcallbackmapping_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qcallbackmapping_p.h new file mode 100644 index 0000000..c966ca5 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qcallbackmapping_p.h @@ -0,0 +1,85 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_QCALLBACKMAPPING_P_H +#define QT3DANIMATION_QCALLBACKMAPPING_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { + +class QCallbackMappingPrivate : public QAbstractChannelMappingPrivate +{ +public: + QCallbackMappingPrivate(); + + Q_DECLARE_PUBLIC(QCallbackMapping) + + QString m_channelName; + int m_type; + QAnimationCallback *m_callback; + QAnimationCallback::Flags m_callbackFlags; +}; + +struct QCallbackMappingData +{ + QString channelName; + int type; + QAnimationCallback *callback; + QAnimationCallback::Flags callbackFlags; +}; + +} // namespace Qt3DAnimation + + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_QCALLBACKMAPPING_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qchannelmapper_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qchannelmapper_p.h new file mode 100644 index 0000000..45f8b04 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qchannelmapper_p.h @@ -0,0 +1,79 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_QCHANNELMAPPER_P_H +#define QT3DANIMATION_QCHANNELMAPPER_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { + +class QAbstractChannelMapping; + +class QChannelMapperPrivate : public Qt3DCore::QNodePrivate +{ +public: + QChannelMapperPrivate(); + + Q_DECLARE_PUBLIC(QChannelMapper) + + QVector m_mappings; +}; + +struct QChannelMapperData +{ + QVector mappingIds; +}; + +} // namespace Qt3DAnimation + + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_QCHANNELMAPPER_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qchannelmapping_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qchannelmapping_p.h new file mode 100644 index 0000000..0ab66a7 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qchannelmapping_p.h @@ -0,0 +1,93 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_QCHANNELMAPPING_P_H +#define QT3DANIMATION_QCHANNELMAPPING_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { + +class Q_AUTOTEST_EXPORT QChannelMappingPrivate : public QAbstractChannelMappingPrivate +{ +public: + QChannelMappingPrivate(); + + Q_DECLARE_PUBLIC(QChannelMapping) + + void updatePropertyNameTypeAndComponentCount(); + + QString m_channelName; + Qt3DCore::QNode *m_target; + QString m_property; + const char *m_propertyName; + int m_type; + int m_componentCount; +}; + +struct QChannelMappingData +{ + QString channelName; + Qt3DCore::QNodeId targetId; + int type; + int componentCount; + const char *propertyName; +}; + +} // namespace Qt3DAnimation + + +QT_END_NAMESPACE + +// Used to define the meta type id +Q_DECLARE_METATYPE(QVector) // LCOV_EXCL_LINE + +#endif // QT3DANIMATION_QCHANNELMAPPING_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qchannelmappingcreatedchange_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qchannelmappingcreatedchange_p.h new file mode 100644 index 0000000..b01a97a --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qchannelmappingcreatedchange_p.h @@ -0,0 +1,101 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_QCHANNELMAPPINGCREATEDCHANGE_P_H +#define QT3DANIMATION_QCHANNELMAPPINGCREATEDCHANGE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { + +class QChannelMappingCreatedChangeBasePrivate; + +class QT3DANIMATIONSHARED_PRIVATE_EXPORT QChannelMappingCreatedChangeBase : public Qt3DCore::QNodeCreatedChangeBase +{ +public: + explicit QChannelMappingCreatedChangeBase(const QAbstractChannelMapping *mapping); + ~QChannelMappingCreatedChangeBase(); + + enum MappingType { + ChannelMapping = 0, + SkeletonMapping, + CallbackMapping + }; + + MappingType type() const; + +private: + Q_DECLARE_PRIVATE(QChannelMappingCreatedChangeBase) +}; + +typedef QSharedPointer QChannelMappingCreatedChangeBasePtr; + +template +class QChannelMappingCreatedChange : public QChannelMappingCreatedChangeBase +{ +public: + explicit QChannelMappingCreatedChange(const QAbstractChannelMapping *_mapping) + : QChannelMappingCreatedChangeBase(_mapping) + , data() + { + } + + T data; +}; + +template +using QChannelMappingCreatedChangePtr = QSharedPointer>; + +} // namespace Qt3DAnimation + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_QCHANNELMAPPINGCREATEDCHANGE_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qchannelmappingcreatedchange_p_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qchannelmappingcreatedchange_p_p.h new file mode 100644 index 0000000..8a89104 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qchannelmappingcreatedchange_p_p.h @@ -0,0 +1,72 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_QCHANNELMAPPINGCREATEDCHANGE_P_P_H +#define QT3DANIMATION_QCHANNELMAPPINGCREATEDCHANGE_P_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { + +class QAbstractChannelMapping; + +class QChannelMappingCreatedChangeBasePrivate : public Qt3DCore::QNodeCreatedChangeBasePrivate +{ +public: + QChannelMappingCreatedChangeBasePrivate(const QAbstractChannelMapping *mapping); + + QChannelMappingCreatedChangeBase::MappingType m_mappingType; +}; + +} // namespace Qt3DAnimation + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_QCHANNELMAPPINGCREATEDCHANGE_P_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qclipanimator_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qclipanimator_p.h new file mode 100644 index 0000000..2f6d05b --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qclipanimator_p.h @@ -0,0 +1,84 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_QCLIPANIMATOR_P_H +#define QT3DANIMATION_QCLIPANIMATOR_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { + +class QAbstractAnimationClip; + +class QClipAnimatorPrivate : public Qt3DAnimation::QAbstractClipAnimatorPrivate +{ +public: + QClipAnimatorPrivate(); + + bool canPlay() const override; + + Q_DECLARE_PUBLIC(QClipAnimator) + + QAbstractAnimationClip *m_clip; +}; + +struct QClipAnimatorData : public QAbstractClipAnimatorData +{ + Qt3DCore::QNodeId clipId; +}; + +} // namespace Qt3DAnimation + + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_QCLIPANIMATOR_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qclipblendnodecreatedchange_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qclipblendnodecreatedchange_p.h new file mode 100644 index 0000000..31342d3 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qclipblendnodecreatedchange_p.h @@ -0,0 +1,69 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_QCLIPBLENDNODECREATEDCHANGE_P_H +#define QT3DANIMATION_QCLIPBLENDNODECREATEDCHANGE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { + +class QAbstractClipBlendNode; + +class QClipBlendNodeCreatedChangeBasePrivate : public Qt3DCore::QNodeCreatedChangeBasePrivate +{ +public: + QClipBlendNodeCreatedChangeBasePrivate(const QAbstractClipBlendNode *node); +}; + +} // Qt3DAnimation + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_QCLIPBLENDNODECREATEDCHANGE_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qclipblendvalue_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qclipblendvalue_p.h new file mode 100644 index 0000000..7a397a1 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qclipblendvalue_p.h @@ -0,0 +1,80 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_QCLIPBLENDNODE_P_H +#define QT3DANIMATION_QCLIPBLENDNODE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { + +class QClipBlendValuePrivate : public QAbstractClipBlendNodePrivate +{ +public: + QClipBlendValuePrivate(); + + Q_DECLARE_PUBLIC(QClipBlendValue) + + Qt3DAnimation::QAbstractAnimationClip *m_clip; +}; + +struct QClipBlendValueData +{ + Qt3DCore::QNodeId clipId; +}; + +} // namespace Qt3DAnimation + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_QCLIPBLENDNODE_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qclock_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qclock_p.h new file mode 100644 index 0000000..c862d90 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qclock_p.h @@ -0,0 +1,78 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_QCLOCK_P_H +#define QT3DANIMATION_QCLOCK_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include "qclock.h" + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { + +class QClockPrivate : public Qt3DCore::QNodePrivate +{ +public: + QClockPrivate(); + + Q_DECLARE_PUBLIC(QClock) + + double m_playbackRate; +}; + +struct QClockData +{ + double playbackRate; +}; + +} // namespace Qt3DAnimation + + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_QCLOCK_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qkeyframeanimation_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qkeyframeanimation_p.h new file mode 100644 index 0000000..b9b1f85 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qkeyframeanimation_p.h @@ -0,0 +1,88 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: http://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_QKEYFRAMEANIMATION_P_H +#define QT3DANIMATION_QKEYFRAMEANIMATION_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { + +class QKeyframeAnimationPrivate : public QAbstractAnimationPrivate +{ +public: + QKeyframeAnimationPrivate(); + + void calculateFrame(float position); + + QVector m_framePositions; + QVector m_keyframes; + Qt3DCore::QTransform *m_target; + QEasingCurve m_easing; + QString m_animationName; + QString m_targetName; + float m_minposition; + float m_maxposition; + QKeyframeAnimation::RepeatMode m_startMode; + QKeyframeAnimation::RepeatMode m_endMode; + QVector3D m_baseScale; + QVector3D m_baseTranslation; + QQuaternion m_baseRotation; + QMetaObject::Connection m_positionConnection; + + Q_DECLARE_PUBLIC(QKeyframeAnimation) +}; + +} // Qt3DAnimation + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_QKEYFRAMEANIMATION_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qlerpclipblend_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qlerpclipblend_p.h new file mode 100644 index 0000000..eee5970 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qlerpclipblend_p.h @@ -0,0 +1,83 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_QLERPBLEND_P_H +#define QT3DANIMATION_QLERPBLEND_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include "qlerpclipblend.h" + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { + +class QLerpClipBlend; + +class QLerpClipBlendPrivate : public QAbstractClipBlendNodePrivate +{ +public: + QLerpClipBlendPrivate(); + + Q_DECLARE_PUBLIC(QLerpClipBlend) + QAbstractClipBlendNode *m_startClip; + QAbstractClipBlendNode *m_endClip; + float m_blendFactor; +}; + +struct QLerpClipBlendData +{ + Qt3DCore::QNodeId startClipId; + Qt3DCore::QNodeId endClipId; + float blendFactor; +}; + +} // Qt3DAnimation + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_QLERPBLEND_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qmorphinganimation_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qmorphinganimation_p.h new file mode 100644 index 0000000..c306f33 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qmorphinganimation_p.h @@ -0,0 +1,95 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: http://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_QMORPHINGANIMATION_P_H +#define QT3DANIMATION_QMORPHINGANIMATION_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { + +class QMorphingAnimationPrivate : public QAbstractAnimationPrivate +{ +public: + QMorphingAnimationPrivate(); + ~QMorphingAnimationPrivate(); + + void updateAnimation(float position); + void setTargetInterpolated(int morphTarget); + + float m_minposition; + float m_maxposition; + QVector m_targetPositions; + QVector*> m_weights; + QVector m_morphKey; + QStringList m_attributeNames; + QVector m_morphTargets; + QMorphTarget *m_flattened; + QMorphingAnimation::Method m_method; + QEasingCurve m_easing; + float m_interpolator; + Qt3DRender::QGeometryRenderer *m_target; + QString m_targetName; + + QMorphTarget *m_currentTarget; + + QMetaObject::Connection m_positionConnection; + + Q_DECLARE_PUBLIC(QMorphingAnimation) +}; + +} // Qt3DAnimation + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_QMORPHINGANIMATION_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qmorphtarget_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qmorphtarget_p.h new file mode 100644 index 0000000..1fc3734 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qmorphtarget_p.h @@ -0,0 +1,76 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: http://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_QMORPHTARGET_P_H +#define QT3DANIMATION_QMORPHTARGET_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { + +class QMorphTargetPrivate : public QObjectPrivate +{ +public: + QMorphTargetPrivate(); + + void updateAttributeNames(); + + QStringList m_attributeNames; + QVector m_targetAttributes; + + Q_DECLARE_PUBLIC(QMorphTarget) +}; + +} // Qt3DAnimation + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_QMORPHTARGET_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qskeletonmapping_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qskeletonmapping_p.h new file mode 100644 index 0000000..af8382b --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qskeletonmapping_p.h @@ -0,0 +1,85 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_QSKELETONMAPPING_P_H +#define QT3DANIMATION_QSKELETONMAPPING_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { +class QAbstractSkeleton; +} + +namespace Qt3DAnimation { + +class QSkeletonMappingPrivate : public QAbstractChannelMappingPrivate +{ +public: + QSkeletonMappingPrivate(); + + Q_DECLARE_PUBLIC(QSkeletonMapping) + + Qt3DCore::QAbstractSkeleton *m_skeleton; +}; + +struct QSkeletonMappingData +{ + Qt3DCore::QNodeId skeletonId; +}; + +} // namespace Qt3DAnimation + + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_QSKELETONMAPPING_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qt3danimation_global_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qt3danimation_global_p.h new file mode 100644 index 0000000..e184222 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qt3danimation_global_p.h @@ -0,0 +1,59 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_GLOBAL_P_H +#define QT3DANIMATION_GLOBAL_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include "qt3danimation_global.h" + +#define QT3DANIMATIONSHARED_PRIVATE_EXPORT QT3DANIMATIONSHARED_EXPORT + +#endif // QT3DANIMATION_GLOBAL_P_H + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qvertexblendanimation_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qvertexblendanimation_p.h new file mode 100644 index 0000000..8f2609f --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/qvertexblendanimation_p.h @@ -0,0 +1,86 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: http://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_QVERTEXBLENDANIMATION_P_H +#define QT3DANIMATION_QVERTEXBLENDANIMATION_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + + +#include + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { + +class QVertexBlendAnimationPrivate : public QAbstractAnimationPrivate +{ +public: + QVertexBlendAnimationPrivate(); + + void getAttributesInPosition(float position, int *target0, int *target1, float *interpolator); + void updateAnimation(float position); + + QVector m_targetPositions; + QVector m_morphTargets; + float m_interpolator; + Qt3DRender::QGeometryRenderer *m_target; + QString m_targetName; + QMorphTarget *m_currentBase; + QMorphTarget *m_currentTarget; + + QMetaObject::Connection m_positionConnection; + + Q_DECLARE_PUBLIC(QVertexBlendAnimation) +}; + +} // Qt3DAnimation + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_QVertexBlendANIMATION_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/skeleton_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/skeleton_p.h new file mode 100644 index 0000000..f1ddb1e --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/5.12.5/Qt3DAnimation/private/skeleton_p.h @@ -0,0 +1,127 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_ANIMATION_SKELETON_H +#define QT3DANIMATION_ANIMATION_SKELETON_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { +namespace Animation { + +class Q_AUTOTEST_EXPORT Skeleton : public BackendNode +{ +public: + Skeleton(); + + void cleanup(); + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) Q_DECL_OVERRIDE; + + int jointCount() const { return m_jointLocalPoses.size(); } + QString jointName(int jointIndex) const { return m_jointNames.at(jointIndex); } + + void setJointScale(int jointIndex, const QVector3D &scale) + { + m_jointLocalPoses[jointIndex].scale = scale; + } + + QVector3D jointScale(int jointIndex) const + { + return m_jointLocalPoses[jointIndex].scale; + } + + void setJointRotation(int jointIndex, const QQuaternion &rotation) + { + m_jointLocalPoses[jointIndex].rotation = rotation; + } + + QQuaternion jointRotation(int jointIndex) const + { + return m_jointLocalPoses[jointIndex].rotation; + } + + void setJointTranslation(int jointIndex, const QVector3D &translation) + { + m_jointLocalPoses[jointIndex].translation = translation; + } + + QVector3D jointTranslation(int jointIndex) const + { + return m_jointLocalPoses[jointIndex].translation; + } + + void sendLocalPoses(); + +#if defined(QT_BUILD_INTERNAL) + void setJointCount(int jointCount) + { + m_jointNames.resize(jointCount); + m_jointLocalPoses.resize(jointCount); + } + void setJointNames(const QVector &names) { m_jointNames = names; } + QVector jointNames() const { return m_jointNames; } + void setJointLocalPoses(const QVector &localPoses) { m_jointLocalPoses = localPoses; } + QVector jointLocalPoses() const { return m_jointLocalPoses; } +#endif + +private: + void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) Q_DECL_FINAL; + + QVector m_jointNames; + QVector m_jointLocalPoses; +}; + +} // namespace Animation +} // namespace Qt3DAnimation + + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_ANIMATION_SKELETON_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QAbstractAnimation b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QAbstractAnimation new file mode 100644 index 0000000..6ab4d26 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QAbstractAnimation @@ -0,0 +1 @@ +#include "qabstractanimation.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QAbstractAnimationClip b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QAbstractAnimationClip new file mode 100644 index 0000000..c11a270 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QAbstractAnimationClip @@ -0,0 +1 @@ +#include "qabstractanimationclip.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QAbstractChannelMapping b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QAbstractChannelMapping new file mode 100644 index 0000000..ad34081 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QAbstractChannelMapping @@ -0,0 +1 @@ +#include "qabstractchannelmapping.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QAbstractClipAnimator b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QAbstractClipAnimator new file mode 100644 index 0000000..d318e04 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QAbstractClipAnimator @@ -0,0 +1 @@ +#include "qabstractclipanimator.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QAbstractClipBlendNode b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QAbstractClipBlendNode new file mode 100644 index 0000000..801081e --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QAbstractClipBlendNode @@ -0,0 +1 @@ +#include "qabstractclipblendnode.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QAdditiveClipBlend b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QAdditiveClipBlend new file mode 100644 index 0000000..f29925f --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QAdditiveClipBlend @@ -0,0 +1 @@ +#include "qadditiveclipblend.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QAnimationAspect b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QAnimationAspect new file mode 100644 index 0000000..90b1a30 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QAnimationAspect @@ -0,0 +1 @@ +#include "qanimationaspect.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QAnimationCallback b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QAnimationCallback new file mode 100644 index 0000000..725af41 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QAnimationCallback @@ -0,0 +1 @@ +#include "qanimationcallback.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QAnimationClip b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QAnimationClip new file mode 100644 index 0000000..860dce9 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QAnimationClip @@ -0,0 +1 @@ +#include "qanimationclip.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QAnimationClipData b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QAnimationClipData new file mode 100644 index 0000000..6145b20 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QAnimationClipData @@ -0,0 +1 @@ +#include "qanimationclipdata.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QAnimationClipLoader b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QAnimationClipLoader new file mode 100644 index 0000000..959a93b --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QAnimationClipLoader @@ -0,0 +1 @@ +#include "qanimationcliploader.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QAnimationController b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QAnimationController new file mode 100644 index 0000000..4403ed6 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QAnimationController @@ -0,0 +1 @@ +#include "qanimationcontroller.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QAnimationGroup b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QAnimationGroup new file mode 100644 index 0000000..fb385cb --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QAnimationGroup @@ -0,0 +1 @@ +#include "qanimationgroup.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QBlendedClipAnimator b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QBlendedClipAnimator new file mode 100644 index 0000000..f25e995 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QBlendedClipAnimator @@ -0,0 +1 @@ +#include "qblendedclipanimator.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QCallbackMapping b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QCallbackMapping new file mode 100644 index 0000000..bb48c04 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QCallbackMapping @@ -0,0 +1 @@ +#include "qcallbackmapping.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QChannel b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QChannel new file mode 100644 index 0000000..ad5a6fd --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QChannel @@ -0,0 +1 @@ +#include "qchannel.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QChannelComponent b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QChannelComponent new file mode 100644 index 0000000..d7d062b --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QChannelComponent @@ -0,0 +1 @@ +#include "qchannelcomponent.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QChannelMapper b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QChannelMapper new file mode 100644 index 0000000..feba8d8 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QChannelMapper @@ -0,0 +1 @@ +#include "qchannelmapper.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QChannelMapping b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QChannelMapping new file mode 100644 index 0000000..e087fe0 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QChannelMapping @@ -0,0 +1 @@ +#include "qchannelmapping.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QClipAnimator b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QClipAnimator new file mode 100644 index 0000000..d6d6aa0 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QClipAnimator @@ -0,0 +1 @@ +#include "qclipanimator.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QClipBlendNodeCreatedChange b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QClipBlendNodeCreatedChange new file mode 100644 index 0000000..805ccba --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QClipBlendNodeCreatedChange @@ -0,0 +1 @@ +#include "qclipblendnodecreatedchange.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QClipBlendNodeCreatedChangeBase b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QClipBlendNodeCreatedChangeBase new file mode 100644 index 0000000..805ccba --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QClipBlendNodeCreatedChangeBase @@ -0,0 +1 @@ +#include "qclipblendnodecreatedchange.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QClipBlendNodeCreatedChangeBasePtr b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QClipBlendNodeCreatedChangeBasePtr new file mode 100644 index 0000000..805ccba --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QClipBlendNodeCreatedChangeBasePtr @@ -0,0 +1 @@ +#include "qclipblendnodecreatedchange.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QClipBlendValue b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QClipBlendValue new file mode 100644 index 0000000..c76c3be --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QClipBlendValue @@ -0,0 +1 @@ +#include "qclipblendvalue.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QClock b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QClock new file mode 100644 index 0000000..eac4d42 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QClock @@ -0,0 +1 @@ +#include "qclock.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QKeyFrame b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QKeyFrame new file mode 100644 index 0000000..2fb8353 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QKeyFrame @@ -0,0 +1 @@ +#include "qkeyframe.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QKeyframeAnimation b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QKeyframeAnimation new file mode 100644 index 0000000..a75955a --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QKeyframeAnimation @@ -0,0 +1 @@ +#include "qkeyframeanimation.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QLerpClipBlend b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QLerpClipBlend new file mode 100644 index 0000000..564d831 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QLerpClipBlend @@ -0,0 +1 @@ +#include "qlerpclipblend.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QMorphTarget b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QMorphTarget new file mode 100644 index 0000000..5101241 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QMorphTarget @@ -0,0 +1 @@ +#include "qmorphtarget.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QMorphingAnimation b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QMorphingAnimation new file mode 100644 index 0000000..c5a0f09 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QMorphingAnimation @@ -0,0 +1 @@ +#include "qmorphinganimation.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QSkeletonMapping b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QSkeletonMapping new file mode 100644 index 0000000..6fa46bd --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QSkeletonMapping @@ -0,0 +1 @@ +#include "qskeletonmapping.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QVertexBlendAnimation b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QVertexBlendAnimation new file mode 100644 index 0000000..286aeff --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/QVertexBlendAnimation @@ -0,0 +1 @@ +#include "qvertexblendanimation.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/Qt3DAnimation b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/Qt3DAnimation new file mode 100644 index 0000000..a8fa60e --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/Qt3DAnimation @@ -0,0 +1,35 @@ +#ifndef QT_QT3DANIMATION_MODULE_H +#define QT_QT3DANIMATION_MODULE_H +#include +#include "qabstractanimation.h" +#include "qabstractanimationclip.h" +#include "qabstractchannelmapping.h" +#include "qabstractclipanimator.h" +#include "qabstractclipblendnode.h" +#include "qadditiveclipblend.h" +#include "qanimationaspect.h" +#include "qanimationcallback.h" +#include "qanimationclip.h" +#include "qanimationclipdata.h" +#include "qanimationcliploader.h" +#include "qanimationcontroller.h" +#include "qanimationgroup.h" +#include "qblendedclipanimator.h" +#include "qcallbackmapping.h" +#include "qchannel.h" +#include "qchannelcomponent.h" +#include "qchannelmapper.h" +#include "qchannelmapping.h" +#include "qclipanimator.h" +#include "qclipblendnodecreatedchange.h" +#include "qclipblendvalue.h" +#include "qclock.h" +#include "qkeyframe.h" +#include "qkeyframeanimation.h" +#include "qlerpclipblend.h" +#include "qmorphinganimation.h" +#include "qmorphtarget.h" +#include "qskeletonmapping.h" +#include "qvertexblendanimation.h" +#include "qt3danimationversion.h" +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/Qt3DAnimationDepends b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/Qt3DAnimationDepends new file mode 100644 index 0000000..427b4b9 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/Qt3DAnimationDepends @@ -0,0 +1,7 @@ +/* This file was generated by qmake with the info from /src/animation/animation.pro. */ +#ifdef __cplusplus /* create empty PCH in C mode */ +#include +#include +#include +#include +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/Qt3DAnimationVersion b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/Qt3DAnimationVersion new file mode 100644 index 0000000..3ba2041 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/Qt3DAnimationVersion @@ -0,0 +1 @@ +#include "qt3danimationversion.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qabstractanimation.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qabstractanimation.h new file mode 100644 index 0000000..951e2dd --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qabstractanimation.h @@ -0,0 +1,94 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: http://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_QABSTRACTANIMATION_H +#define QT3DANIMATION_QABSTRACTANIMATION_H + +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { + +class QAbstractAnimationPrivate; + +class QT3DANIMATIONSHARED_EXPORT QAbstractAnimation : public QObject +{ + Q_OBJECT + Q_PROPERTY(QString animationName READ animationName WRITE setAnimationName NOTIFY animationNameChanged) + Q_PROPERTY(AnimationType animationType READ animationType CONSTANT) + Q_PROPERTY(float position READ position WRITE setPosition NOTIFY positionChanged) + Q_PROPERTY(float duration READ duration NOTIFY durationChanged) + +public: + enum AnimationType { + KeyframeAnimation = 1, + MorphingAnimation = 2, + VertexBlendAnimation = 3, + }; + Q_ENUM(AnimationType) + + QString animationName() const; + QAbstractAnimation::AnimationType animationType() const; + float position() const; + float duration() const; + +public Q_SLOTS: + void setAnimationName(const QString &name); + void setPosition(float position); + +protected: + explicit QAbstractAnimation(QAbstractAnimationPrivate &dd, QObject *parent = nullptr); + + void setDuration(float duration); + +Q_SIGNALS: + void animationNameChanged(const QString &name); + void positionChanged(float position); + void durationChanged(float duration); + +private: + Q_DECLARE_PRIVATE(QAbstractAnimation) +}; + +} // Qt3DAnimation + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_QABSTRACTANIMATION_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qabstractanimationclip.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qabstractanimationclip.h new file mode 100644 index 0000000..6190550 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qabstractanimationclip.h @@ -0,0 +1,75 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_QABSTRACTANIMATIONCLIP_H +#define QT3DANIMATION_QABSTRACTANIMATIONCLIP_H + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { + +class QAbstractAnimationClipPrivate; + +class QT3DANIMATIONSHARED_EXPORT QAbstractAnimationClip : public Qt3DCore::QNode +{ + Q_OBJECT + Q_PROPERTY(float duration READ duration NOTIFY durationChanged) + +public: + ~QAbstractAnimationClip(); + + float duration() const; + +Q_SIGNALS: + void durationChanged(float duration); + +protected: + QAbstractAnimationClip(QAbstractAnimationClipPrivate &dd, Qt3DCore::QNode *parent = nullptr); + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &change) override; + +private: + Q_DECLARE_PRIVATE(QAbstractAnimationClip) +}; + +} // namespace Qt3DAnimation + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_QABSTRACTANIMATIONCLIP_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qabstractchannelmapping.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qabstractchannelmapping.h new file mode 100644 index 0000000..564f511 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qabstractchannelmapping.h @@ -0,0 +1,70 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_QABSTRACTCHANNELMAPPING_H +#define QT3DANIMATION_QABSTRACTCHANNELMAPPING_H + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { + +class QAbstractChannelMappingPrivate; + +class QT3DANIMATIONSHARED_EXPORT QAbstractChannelMapping : public Qt3DCore::QNode +{ + Q_OBJECT + +public: + ~QAbstractChannelMapping(); + +protected: + QAbstractChannelMapping(QAbstractChannelMappingPrivate &dd, Qt3DCore::QNode *parent = nullptr); + +private: + Q_DECLARE_PRIVATE(QAbstractChannelMapping) +}; + +} // namespace Qt3DAnimation + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_QABSTRACTCHANNELMAPPING_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qabstractclipanimator.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qabstractclipanimator.h new file mode 100644 index 0000000..08bf1f5 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qabstractclipanimator.h @@ -0,0 +1,107 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_QABSTRACTCLIPANIMATOR_H +#define QT3DANIMATION_QABSTRACTCLIPANIMATOR_H + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { + +class QAnimationClip; +class QChannelMapper; +class QClock; +class QAbstractClipAnimatorPrivate; + +class QT3DANIMATIONSHARED_EXPORT QAbstractClipAnimator : public Qt3DCore::QComponent +{ + Q_OBJECT + Q_PROPERTY(bool running READ isRunning WRITE setRunning NOTIFY runningChanged) + Q_PROPERTY(int loops READ loopCount WRITE setLoopCount NOTIFY loopCountChanged) + Q_PROPERTY(Qt3DAnimation::QChannelMapper *channelMapper READ channelMapper WRITE setChannelMapper NOTIFY channelMapperChanged) + Q_PROPERTY(Qt3DAnimation::QClock *clock READ clock WRITE setClock NOTIFY clockChanged) + Q_PROPERTY(float normalizedTime READ normalizedTime WRITE setNormalizedTime NOTIFY normalizedTimeChanged) + +public: + enum Loops { Infinite = -1 }; + Q_ENUM(Loops) + + ~QAbstractClipAnimator(); + + bool isRunning() const; + Qt3DAnimation::QChannelMapper *channelMapper() const; + int loopCount() const; + Qt3DAnimation::QClock *clock() const; + float normalizedTime() const; + +public Q_SLOTS: + void setRunning(bool running); + void setChannelMapper(Qt3DAnimation::QChannelMapper *channelMapper); + void setLoopCount(int loops); + void setClock(Qt3DAnimation::QClock *clock); + void setNormalizedTime(float timeFraction); + + void start(); + void stop(); + +Q_SIGNALS: + void runningChanged(bool running); + void channelMapperChanged(Qt3DAnimation::QChannelMapper *channelMapper); + void loopCountChanged(int loops); + void clockChanged(Qt3DAnimation::QClock *clock); + void normalizedTimeChanged(float index); + +protected: + explicit QAbstractClipAnimator(Qt3DCore::QNode *parent = nullptr); + QAbstractClipAnimator(QAbstractClipAnimatorPrivate &dd, Qt3DCore::QNode *parent = nullptr); + + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &change) override; + +private: + Q_DECLARE_PRIVATE(QAbstractClipAnimator) +}; + +} // namespace Qt3DAnimation + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_QABSTRACTCLIPANIMATOR_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qabstractclipblendnode.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qabstractclipblendnode.h new file mode 100644 index 0000000..d981bd7 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qabstractclipblendnode.h @@ -0,0 +1,70 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_QABSTRACTCLIPBLENDNODE_H +#define QT3DANIMATION_QABSTRACTCLIPBLENDNODE_H + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { + +class QAbstractAnimationClip; +class QAbstractClipBlendNodePrivate; + +class QT3DANIMATIONSHARED_EXPORT QAbstractClipBlendNode : public Qt3DCore::QNode +{ + Q_OBJECT +public: + ~QAbstractClipBlendNode(); + +protected: + explicit QAbstractClipBlendNode(Qt3DCore::QNode *parent = nullptr); + explicit QAbstractClipBlendNode(QAbstractClipBlendNodePrivate &dd, Qt3DCore::QNode *parent = nullptr); + +private: + Q_DECLARE_PRIVATE(QAbstractClipBlendNode) +}; + + +} // Qt3DAnimation + +QT_END_NAMESPACE + + +#endif // QT3DANIMATION_QABSTRACTCLIPBLENDNODE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qadditiveclipblend.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qadditiveclipblend.h new file mode 100644 index 0000000..0771bd0 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qadditiveclipblend.h @@ -0,0 +1,84 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_QADDITIVECLIPBLEND_H +#define QT3DANIMATION_QADDITIVECLIPBLEND_H + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { + +class QAdditiveClipBlendPrivate; + +class QT3DANIMATIONSHARED_EXPORT QAdditiveClipBlend : public QAbstractClipBlendNode +{ + Q_OBJECT + Q_PROPERTY(Qt3DAnimation::QAbstractClipBlendNode *baseClip READ baseClip WRITE setBaseClip NOTIFY baseClipChanged) + Q_PROPERTY(Qt3DAnimation::QAbstractClipBlendNode *additiveClip READ additiveClip WRITE setAdditiveClip NOTIFY additiveClipChanged) + Q_PROPERTY(float additiveFactor READ additiveFactor WRITE setAdditiveFactor NOTIFY additiveFactorChanged) +public: + explicit QAdditiveClipBlend(Qt3DCore::QNode *parent = nullptr); + ~QAdditiveClipBlend(); + + float additiveFactor() const; + Qt3DAnimation::QAbstractClipBlendNode *baseClip() const; + Qt3DAnimation::QAbstractClipBlendNode *additiveClip() const; + +public Q_SLOTS: + void setAdditiveFactor(float additiveFactor); + void setBaseClip(Qt3DAnimation::QAbstractClipBlendNode *baseClip); + void setAdditiveClip(Qt3DAnimation::QAbstractClipBlendNode *additiveClip); + +Q_SIGNALS: + void additiveFactorChanged(float additiveFactor); + void baseClipChanged(Qt3DAnimation::QAbstractClipBlendNode *baseClip); + void additiveClipChanged(Qt3DAnimation::QAbstractClipBlendNode *additiveClip); + +protected: + explicit QAdditiveClipBlend(QAdditiveClipBlendPrivate &dd, Qt3DCore::QNode *parent = nullptr); + +private: + Q_DECLARE_PRIVATE(QAdditiveClipBlend) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +} // Qt3DAnimation + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_QADDITIVECLIPBLEND_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qanimationaspect.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qanimationaspect.h new file mode 100644 index 0000000..bd3745f --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qanimationaspect.h @@ -0,0 +1,70 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_QANIMATIONASPECT_H +#define QT3DANIMATION_QANIMATIONASPECT_H + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { + +class QAnimationAspectPrivate; + +class QT3DANIMATIONSHARED_EXPORT QAnimationAspect : public Qt3DCore::QAbstractAspect +{ + Q_OBJECT +public: + explicit QAnimationAspect(QObject *parent = nullptr); + ~QAnimationAspect(); + +private: + QVector jobsToExecute(qint64 time) override; + + Q_DECLARE_PRIVATE(QAnimationAspect) + explicit QAnimationAspect(QAnimationAspectPrivate &dd, QObject *parent); +}; + +} // namespace Qt3DAnimation + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_QANIMATIONASPECT_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qanimationcallback.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qanimationcallback.h new file mode 100644 index 0000000..1fcbd65 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qanimationcallback.h @@ -0,0 +1,67 @@ +/**************************************************************************** +** +** Copyright (C) 2017 The Qt Company Ltd. +** Contact: http://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_QANIMATIONCALLBACK_H +#define QT3DANIMATION_QANIMATIONCALLBACK_H + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { + +class QT3DANIMATIONSHARED_EXPORT QAnimationCallback +{ +public: + enum Flag { + OnOwningThread = 0x0, + OnThreadPool = 0x01 + }; + Q_DECLARE_FLAGS(Flags, Flag) + + virtual ~QAnimationCallback() { } + + virtual void valueChanged(const QVariant &value) = 0; +}; + +} // namespace Qt3DAnimation + +Q_DECLARE_OPERATORS_FOR_FLAGS(Qt3DAnimation::QAnimationCallback::Flags) + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_QANIMATIONCALLBACK_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qanimationclip.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qanimationclip.h new file mode 100644 index 0000000..4781641 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qanimationclip.h @@ -0,0 +1,82 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_QANIMATIONCLIP_H +#define QT3DANIMATION_QANIMATIONCLIP_H + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { + +class QAnimationClipPrivate; + +class QT3DANIMATIONSHARED_EXPORT QAnimationClip : public QAbstractAnimationClip +{ + Q_OBJECT + Q_PROPERTY(Qt3DAnimation::QAnimationClipData clipData READ clipData WRITE setClipData NOTIFY clipDataChanged) + +public: + explicit QAnimationClip(Qt3DCore::QNode *parent = nullptr); + ~QAnimationClip(); + + Qt3DAnimation::QAnimationClipData clipData() const; + +public Q_SLOTS: + void setClipData(const Qt3DAnimation::QAnimationClipData &clipData); + +Q_SIGNALS: + void clipDataChanged(Qt3DAnimation::QAnimationClipData clipData); + +protected: + QAnimationClip(QAnimationClipPrivate &dd, Qt3DCore::QNode *parent = nullptr); + +private: + Q_DECLARE_PRIVATE(QAnimationClip) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +} // namespace Qt3DAnimation + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_QANIMATIONCLIP_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qanimationclipdata.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qanimationclipdata.h new file mode 100644 index 0000000..605b172 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qanimationclipdata.h @@ -0,0 +1,101 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_QANIMATIONCLIPDATA_H +#define QT3DANIMATION_QANIMATIONCLIPDATA_H + +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { + +class QAnimationClipDataPrivate; + +class QT3DANIMATIONSHARED_EXPORT QAnimationClipData +{ +public: + QAnimationClipData(); + QAnimationClipData(const QAnimationClipData &); + QAnimationClipData &operator=(const QAnimationClipData &); + ~QAnimationClipData(); + + void setName(const QString &name); + QString name() const; + + int channelCount() const; + void appendChannel(const QChannel &c); + void insertChannel(int index, const QChannel &c); + void removeChannel(int index); + void clearChannels(); + + bool isValid() const Q_DECL_NOTHROW; + + // Iterator API + typedef const QChannel *const_iterator; + typedef std::reverse_iterator const_reverse_iterator; + + const_iterator begin() const Q_DECL_NOTHROW; + const_iterator cbegin() const Q_DECL_NOTHROW { return begin(); } + const_iterator end() const Q_DECL_NOTHROW; + const_iterator cend() const Q_DECL_NOTHROW { return end(); } + const_reverse_iterator rbegin() const Q_DECL_NOTHROW { return const_reverse_iterator(end()); } + const_reverse_iterator crbegin() const Q_DECL_NOTHROW { return rbegin(); } + const_reverse_iterator rend() const Q_DECL_NOTHROW { return const_reverse_iterator(begin()); } + const_reverse_iterator crend() const Q_DECL_NOTHROW { return rend(); } + + friend bool operator==(const QAnimationClipData &, + const QAnimationClipData &) Q_DECL_NOTHROW; + friend bool operator!=(const QAnimationClipData &, + const QAnimationClipData &) Q_DECL_NOTHROW; + +private: + QScopedPointer d; +}; + +} // namespace Qt3DAnimation + +QT_END_NAMESPACE + +Q_DECLARE_METATYPE(Qt3DAnimation::QAnimationClipData) + +#endif // QT3DANIMATION_QANIMATIONCLIPDATA_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qanimationcliploader.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qanimationcliploader.h new file mode 100644 index 0000000..2106d0f --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qanimationcliploader.h @@ -0,0 +1,92 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_QANIMATIONCLIPLOADER_H +#define QT3DANIMATION_QANIMATIONCLIPLOADER_H + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { + +class QAnimationClipLoaderPrivate; + +class QT3DANIMATIONSHARED_EXPORT QAnimationClipLoader : public QAbstractAnimationClip +{ + Q_OBJECT + Q_PROPERTY(QUrl source READ source WRITE setSource NOTIFY sourceChanged) + Q_PROPERTY(Status status READ status NOTIFY statusChanged) + +public: + explicit QAnimationClipLoader(Qt3DCore::QNode *parent = nullptr); + explicit QAnimationClipLoader(const QUrl &source, + Qt3DCore::QNode *parent = nullptr); + ~QAnimationClipLoader(); + + enum Status { + NotReady = 0, + Ready, + Error + }; + Q_ENUM(Status) // LCOV_EXCL_LINE + + QUrl source() const; + Status status() const; + +public Q_SLOTS: + void setSource(const QUrl &source); + +Q_SIGNALS: + void sourceChanged(const QUrl &source); + void statusChanged(Status status); + +protected: + explicit QAnimationClipLoader(QAnimationClipLoaderPrivate &dd, Qt3DCore::QNode *parent = nullptr); + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &change) override; + +private: + Q_DECLARE_PRIVATE(QAnimationClipLoader) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +} // namespace Qt3DAnimation + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_QANIMATIONCLIPLOADER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qanimationcontroller.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qanimationcontroller.h new file mode 100644 index 0000000..ae32725 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qanimationcontroller.h @@ -0,0 +1,105 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: http://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_QANIMATIONCONTROLLER_H +#define QT3DANIMATION_QANIMATIONCONTROLLER_H + +#include +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { + +class QAnimationControllerPrivate; + +class QT3DANIMATIONSHARED_EXPORT QAnimationController : public QObject +{ + Q_OBJECT + Q_PROPERTY(int activeAnimationGroup READ activeAnimationGroup WRITE setActiveAnimationGroup NOTIFY activeAnimationGroupChanged) + Q_PROPERTY(float position READ position WRITE setPosition NOTIFY positionChanged) + Q_PROPERTY(float positionScale READ positionScale WRITE setPositionScale NOTIFY positionScaleChanged) + Q_PROPERTY(float positionOffset READ positionOffset WRITE setPositionOffset NOTIFY positionOffsetChanged) + Q_PROPERTY(Qt3DCore::QEntity *entity READ entity WRITE setEntity NOTIFY entityChanged) + Q_PROPERTY(bool recursive READ recursive WRITE setRecursive NOTIFY recursiveChanged) + +public: + QAnimationController(QObject *parent = nullptr); + + QVector animationGroupList(); + + int activeAnimationGroup() const; + float position() const; + float positionScale() const; + float positionOffset() const; + Qt3DCore::QEntity *entity() const; + bool recursive() const; + + void setAnimationGroups(const QVector &animationGroups); + void addAnimationGroup(Qt3DAnimation::QAnimationGroup *animationGroups); + void removeAnimationGroup(Qt3DAnimation::QAnimationGroup *animationGroups); + + Q_INVOKABLE int getAnimationIndex(const QString &name) const; + Q_INVOKABLE Qt3DAnimation::QAnimationGroup *getGroup(int index) const; + +public Q_SLOTS: + void setActiveAnimationGroup(int index); + void setPosition(float position); + void setPositionScale(float scale); + void setPositionOffset(float offset); + void setEntity(Qt3DCore::QEntity *entity); + void setRecursive(bool recursive); + +Q_SIGNALS: + void activeAnimationGroupChanged(int index); + void positionChanged(float position); + void positionScaleChanged(float scale); + void positionOffsetChanged(float offset); + void entityChanged(Qt3DCore::QEntity *entity); + void recursiveChanged(bool recursive); + +private: + Q_DECLARE_PRIVATE(QAnimationController) +}; + +} // Qt3DAnimation + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_QANIMATIONCONTROLLER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qanimationgroup.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qanimationgroup.h new file mode 100644 index 0000000..a4f34c8 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qanimationgroup.h @@ -0,0 +1,89 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: http://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_QANIMATIONGROUP_H +#define QT3DANIMATION_QANIMATIONGROUP_H + +#include + +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { + +class QAnimationGroupPrivate; + +class QT3DANIMATIONSHARED_EXPORT QAnimationGroup : public QObject +{ + Q_OBJECT + Q_PROPERTY(QString name READ name WRITE setName NOTIFY nameChanged) + Q_PROPERTY(float position READ position WRITE setPosition NOTIFY positionChanged) + Q_PROPERTY(float duration READ duration NOTIFY durationChanged) + +public: + explicit QAnimationGroup(QObject *parent = nullptr); + + QString name() const; + QVector animationList(); + float position() const; + float duration() const; + + void setAnimations(const QVector &animations); + void addAnimation(Qt3DAnimation::QAbstractAnimation *animation); + void removeAnimation(Qt3DAnimation::QAbstractAnimation *animation); + +public Q_SLOTS: + void setName(const QString &name); + void setPosition(float position); + +Q_SIGNALS: + void nameChanged(const QString &name); + void positionChanged(float position); + void durationChanged(float duration); + +private: + + Q_DECLARE_PRIVATE(QAnimationGroup) +}; + +} // Qt3DAnimation + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_QANIMATIONGROUP_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qblendedclipanimator.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qblendedclipanimator.h new file mode 100644 index 0000000..064a83d --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qblendedclipanimator.h @@ -0,0 +1,82 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_QBLENDEDCLIPANIMATOR_H +#define QT3DANIMATION_QBLENDEDCLIPANIMATOR_H + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { + +class QAbstractClipBlendNode; +class QBlendedClipAnimatorPrivate; + +class QT3DANIMATIONSHARED_EXPORT QBlendedClipAnimator : public Qt3DAnimation::QAbstractClipAnimator +{ + Q_OBJECT + Q_PROPERTY(Qt3DAnimation::QAbstractClipBlendNode *blendTree READ blendTree WRITE setBlendTree NOTIFY blendTreeChanged) + +public: + explicit QBlendedClipAnimator(Qt3DCore::QNode *parent = nullptr); + ~QBlendedClipAnimator(); + + QAbstractClipBlendNode *blendTree() const; + +public Q_SLOTS: + void setBlendTree(QAbstractClipBlendNode * blendTree); + +Q_SIGNALS: + void blendTreeChanged(QAbstractClipBlendNode * blendTree); + +protected: + explicit QBlendedClipAnimator(QBlendedClipAnimatorPrivate &dd, Qt3DCore::QNode *parent = nullptr); + +private: + Q_DECLARE_PRIVATE(QBlendedClipAnimator) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +} // namespace Qt3DAnimation + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_QBLENDEDCLIPANIMATOR_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qcallbackmapping.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qcallbackmapping.h new file mode 100644 index 0000000..c52e284 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qcallbackmapping.h @@ -0,0 +1,82 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_QCALLBACKMAPPING_H +#define QT3DANIMATION_QCALLBACKMAPPING_H + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { + +class QCallbackMappingPrivate; + +class QT3DANIMATIONSHARED_EXPORT QCallbackMapping : public QAbstractChannelMapping +{ + Q_OBJECT + Q_PROPERTY(QString channelName READ channelName WRITE setChannelName NOTIFY channelNameChanged) + +public: + explicit QCallbackMapping(Qt3DCore::QNode *parent = nullptr); + ~QCallbackMapping(); + + QString channelName() const; + QAnimationCallback *callback() const; + + void setCallback(int type, QAnimationCallback *callback, QAnimationCallback::Flags flags = QAnimationCallback::OnOwningThread); + +public Q_SLOTS: + void setChannelName(const QString &channelName); + +Q_SIGNALS: + void channelNameChanged(QString channelName); + +protected: + explicit QCallbackMapping(QCallbackMappingPrivate &dd, Qt3DCore::QNode *parent = nullptr); + +private: + Q_DECLARE_PRIVATE(QCallbackMapping) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const Q_DECL_OVERRIDE; +}; + +} // namespace Qt3DAnimation + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_QCALLBACKMAPPING_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qchannel.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qchannel.h new file mode 100644 index 0000000..50e5747 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qchannel.h @@ -0,0 +1,101 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_QCHANNEL_H +#define QT3DANIMATION_QCHANNEL_H + +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { + +class QChannelPrivate; + +class QT3DANIMATIONSHARED_EXPORT QChannel +{ +public: + QChannel(); + explicit QChannel(const QString &name); + QChannel(const QChannel &); + QChannel &operator=(const QChannel &); + ~QChannel(); + + void setName(const QString &name); + QString name() const; + + void setJointIndex(int jointIndex); + int jointIndex() const; + + int channelComponentCount() const; + void appendChannelComponent(const QChannelComponent &component); + void insertChannelComponent(int index, const QChannelComponent &component); + void removeChannelComponent(int index); + void clearChannelComponents(); + + // Iterator API + typedef const QChannelComponent *const_iterator; + typedef std::reverse_iterator const_reverse_iterator; + + const_iterator begin() const Q_DECL_NOTHROW; + const_iterator cbegin() const Q_DECL_NOTHROW { return begin(); } + const_iterator end() const Q_DECL_NOTHROW; + const_iterator cend() const Q_DECL_NOTHROW { return end(); } + const_reverse_iterator rbegin() const Q_DECL_NOTHROW { return const_reverse_iterator(end()); } + const_reverse_iterator crbegin() const Q_DECL_NOTHROW { return rbegin(); } + const_reverse_iterator rend() const Q_DECL_NOTHROW { return const_reverse_iterator(begin()); } + const_reverse_iterator crend() const Q_DECL_NOTHROW { return rend(); } + + friend bool operator==(const QChannel &, + const QChannel &) Q_DECL_NOTHROW; + friend bool operator!=(const QChannel &, + const QChannel &) Q_DECL_NOTHROW; + +private: + QScopedPointer d; +}; + +} // namespace Qt3DAnimation + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_QCHANNEL_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qchannelcomponent.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qchannelcomponent.h new file mode 100644 index 0000000..922073a --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qchannelcomponent.h @@ -0,0 +1,98 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_QCHANNELCOMPONENT_H +#define QT3DANIMATION_QCHANNELCOMPONENT_H + +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { + +class QChannelComponentPrivate; + +class QT3DANIMATIONSHARED_EXPORT QChannelComponent +{ +public: + QChannelComponent(); + explicit QChannelComponent(const QString &name); + QChannelComponent(const QChannelComponent &); + QChannelComponent &operator=(const QChannelComponent &); + ~QChannelComponent(); + + void setName(const QString &name); + QString name() const; + + int keyFrameCount() const; + void appendKeyFrame(const QKeyFrame &kf); + void insertKeyFrame(int index, const QKeyFrame &kf); + void removeKeyFrame(int index); + void clearKeyFrames(); + + // Iterator API + typedef const QKeyFrame *const_iterator; + typedef std::reverse_iterator const_reverse_iterator; + + const_iterator begin() const Q_DECL_NOTHROW; + const_iterator cbegin() const Q_DECL_NOTHROW { return begin(); } + const_iterator end() const Q_DECL_NOTHROW; + const_iterator cend() const Q_DECL_NOTHROW { return end(); } + const_reverse_iterator rbegin() const Q_DECL_NOTHROW { return const_reverse_iterator(end()); } + const_reverse_iterator crbegin() const Q_DECL_NOTHROW { return rbegin(); } + const_reverse_iterator rend() const Q_DECL_NOTHROW { return const_reverse_iterator(begin()); } + const_reverse_iterator crend() const Q_DECL_NOTHROW { return rend(); } + + friend bool operator==(const QChannelComponent &, + const QChannelComponent &) Q_DECL_NOTHROW; + friend bool operator!=(const QChannelComponent &, + const QChannelComponent &) Q_DECL_NOTHROW; + +private: + QScopedPointer d; +}; + +} // namespace Qt3DAnimation + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_QCHANNELCOMPONENT_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qchannelmapper.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qchannelmapper.h new file mode 100644 index 0000000..a14fbcd --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qchannelmapper.h @@ -0,0 +1,74 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_QCHANNELMAPPER_H +#define QT3DANIMATION_QCHANNELMAPPER_H + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { + +class QChannelMapperPrivate; +class QAbstractChannelMapping; + +class QT3DANIMATIONSHARED_EXPORT QChannelMapper : public Qt3DCore::QNode +{ + Q_OBJECT + +public: + explicit QChannelMapper(Qt3DCore::QNode *parent = nullptr); + ~QChannelMapper(); + + void addMapping(QAbstractChannelMapping *mapping); + void removeMapping(QAbstractChannelMapping *mapping); + QVector mappings() const; + +protected: + explicit QChannelMapper(QChannelMapperPrivate &dd, Qt3DCore::QNode *parent = nullptr); + +private: + Q_DECLARE_PRIVATE(QChannelMapper) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +} // namespace Qt3DAnimation + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_QCHANNELMAPPER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qchannelmapping.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qchannelmapping.h new file mode 100644 index 0000000..776a2f8 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qchannelmapping.h @@ -0,0 +1,87 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_QCHANNELMAPPING_H +#define QT3DANIMATION_QCHANNELMAPPING_H + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { + +class QChannelMappingPrivate; + +class QT3DANIMATIONSHARED_EXPORT QChannelMapping : public QAbstractChannelMapping +{ + Q_OBJECT + Q_PROPERTY(QString channelName READ channelName WRITE setChannelName NOTIFY channelNameChanged) + Q_PROPERTY(Qt3DCore::QNode *target READ target WRITE setTarget NOTIFY targetChanged) + Q_PROPERTY(QString property READ property WRITE setProperty NOTIFY propertyChanged) + +public: + explicit QChannelMapping(Qt3DCore::QNode *parent = nullptr); + ~QChannelMapping(); + + QString channelName() const; + Qt3DCore::QNode *target() const; + QString property() const; + +public Q_SLOTS: + void setChannelName(const QString &channelName); + void setTarget(Qt3DCore::QNode *target); + void setProperty(const QString &property); + +Q_SIGNALS: + void channelNameChanged(QString channelName); + void targetChanged(Qt3DCore::QNode *target); + void propertyChanged(QString property); + +protected: + explicit QChannelMapping(QChannelMappingPrivate &dd, Qt3DCore::QNode *parent = nullptr); + +private: + Q_DECLARE_PRIVATE(QChannelMapping) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +} // namespace Qt3DAnimation + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_QCHANNELMAPPING_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qclipanimator.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qclipanimator.h new file mode 100644 index 0000000..72f1ba9 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qclipanimator.h @@ -0,0 +1,83 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_QCLIPANIMATOR_H +#define QT3DANIMATION_QCLIPANIMATOR_H + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { + +class QAbstractAnimationClip; +class QChannelMapper; +class QClipAnimatorPrivate; + +class QT3DANIMATIONSHARED_EXPORT QClipAnimator : public Qt3DAnimation::QAbstractClipAnimator +{ + Q_OBJECT + Q_PROPERTY(Qt3DAnimation::QAbstractAnimationClip *clip READ clip WRITE setClip NOTIFY clipChanged) + +public: + explicit QClipAnimator(Qt3DCore::QNode *parent = nullptr); + ~QClipAnimator(); + + Qt3DAnimation::QAbstractAnimationClip *clip() const; + +public Q_SLOTS: + void setClip(Qt3DAnimation::QAbstractAnimationClip *clip); + +Q_SIGNALS: + void clipChanged(Qt3DAnimation::QAbstractAnimationClip *clip); + +protected: + QClipAnimator(QClipAnimatorPrivate &dd, Qt3DCore::QNode *parent = nullptr); + +private: + Q_DECLARE_PRIVATE(QClipAnimator) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +} // namespace Qt3DAnimation + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_QCLIPANIMATOR_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qclipblendnodecreatedchange.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qclipblendnodecreatedchange.h new file mode 100644 index 0000000..01f17d7 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qclipblendnodecreatedchange.h @@ -0,0 +1,83 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_QCLIPBLENDNODECREATEDCHANGE_H +#define QT3DANIMATION_QCLIPBLENDNODECREATEDCHANGE_H + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { + +class QAbstractClipBlendNode; +class QClipBlendNodeCreatedChangeBasePrivate; + +class QT3DANIMATIONSHARED_EXPORT QClipBlendNodeCreatedChangeBase : public Qt3DCore::QNodeCreatedChangeBase +{ +public: + explicit QClipBlendNodeCreatedChangeBase(const QAbstractClipBlendNode *node); + ~QClipBlendNodeCreatedChangeBase(); + +private: + Q_DECLARE_PRIVATE(QClipBlendNodeCreatedChangeBase) +}; + +typedef QSharedPointer QClipBlendNodeCreatedChangeBasePtr; + +template +class QClipBlendNodeCreatedChange : public QClipBlendNodeCreatedChangeBase +{ +public: + explicit QClipBlendNodeCreatedChange(const QAbstractClipBlendNode *node) + : QClipBlendNodeCreatedChangeBase(node) + , data() + { + } + + T data; +}; + +template +using QClipBlendNodeCreatedChangePtr = QSharedPointer>; + + +} // Qt3DAnimation + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_QCLIPBLENDNODECREATEDCHANGE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qclipblendvalue.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qclipblendvalue.h new file mode 100644 index 0000000..65ac0eb --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qclipblendvalue.h @@ -0,0 +1,83 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_QCLIPBLENDVALUE_H +#define QT3DANIMATION_QCLIPBLENDVALUE_H + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { + +class QClipBlendValuePrivate; + +class QT3DANIMATIONSHARED_EXPORT QClipBlendValue : public Qt3DAnimation::QAbstractClipBlendNode +{ + Q_OBJECT + Q_PROPERTY(Qt3DAnimation::QAbstractAnimationClip *clip READ clip WRITE setClip NOTIFY clipChanged) + +public: + explicit QClipBlendValue(Qt3DCore::QNode *parent = nullptr); + explicit QClipBlendValue(Qt3DAnimation::QAbstractAnimationClip *clip, + Qt3DCore::QNode *parent = nullptr); + ~QClipBlendValue(); + + Qt3DAnimation::QAbstractAnimationClip *clip() const; + +public Q_SLOTS: + void setClip(Qt3DAnimation::QAbstractAnimationClip *clip); + +Q_SIGNALS: + void clipChanged(Qt3DAnimation::QAbstractAnimationClip *clip); + +protected: + explicit QClipBlendValue(QClipBlendValuePrivate &dd, Qt3DCore::QNode *parent = nullptr); + +private: + Q_DECLARE_PRIVATE(QClipBlendValue) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +} // namespace Qt3DAnimation + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_QCLIPBLENDVALUE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qclock.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qclock.h new file mode 100644 index 0000000..ea0f294 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qclock.h @@ -0,0 +1,76 @@ +/**************************************************************************** + ** + ** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). + ** Contact: http://www.qt-project.org/legal + ** + ** This file is part of the Qt3D module of the Qt Toolkit. + ** + ** $QT_BEGIN_LICENSE:LGPL3$ + ** Commercial License Usage + ** Licensees holding valid commercial Qt licenses may use this file in + ** accordance with the commercial license agreement provided with the + ** Software or, alternatively, in accordance with the terms contained in + ** a written agreement between you and The Qt Company. For licensing terms + ** and conditions see http://www.qt.io/terms-conditions. For further + ** information use the contact form at http://www.qt.io/contact-us. + ** + ** GNU Lesser General Public License Usage + ** Alternatively, this file may be used under the terms of the GNU Lesser + ** General Public License version 3 as published by the Free Software + ** Foundation and appearing in the file LICENSE.LGPLv3 included in the + ** packaging of this file. Please review the following information to + ** ensure the GNU Lesser General Public License version 3 requirements + ** will be met: https://www.gnu.org/licenses/lgpl.html. + ** + ** GNU General Public License Usage + ** Alternatively, this file may be used under the terms of the GNU + ** General Public License version 2.0 or later as published by the Free + ** Software Foundation and appearing in the file LICENSE.GPL included in + ** the packaging of this file. Please review the following information to + ** ensure the GNU General Public License version 2.0 requirements will be + ** met: http://www.gnu.org/licenses/gpl-2.0.html. + ** + ** $QT_END_LICENSE$ + ** + ****************************************************************************/ + +#ifndef QT3DANIMATION_QCLOCK_H +#define QT3DANIMATION_QCLOCK_H + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { + +class QClockPrivate; + +class QT3DANIMATIONSHARED_EXPORT QClock : public Qt3DCore::QNode +{ + Q_OBJECT + Q_PROPERTY(double playbackRate READ playbackRate WRITE setPlaybackRate NOTIFY playbackRateChanged) + +public: + explicit QClock(Qt3DCore::QNode *parent = nullptr); + ~QClock(); + + double playbackRate() const; + void setPlaybackRate(double playbackRate); + +Q_SIGNALS: + void playbackRateChanged(double playbackRate); + +protected: + QClock(QClockPrivate &dd, Qt3DCore::QNode *parent = nullptr); + +private: + Q_DECLARE_PRIVATE(QClock) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +} // namespace Qt3DAnimation + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_QCLOCK_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qkeyframe.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qkeyframe.h new file mode 100644 index 0000000..7eabbeb --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qkeyframe.h @@ -0,0 +1,160 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_QKEYFRAME_H +#define QT3DANIMATION_QKEYFRAME_H + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { + +class QT3DANIMATIONSHARED_EXPORT QKeyFrame +{ +public: + enum InterpolationType : quint8 { + ConstantInterpolation, + LinearInterpolation, + BezierInterpolation + }; + + Q_DECL_CONSTEXPR QKeyFrame() Q_DECL_NOTHROW + : m_coordinates() + , m_leftControlPoint() + , m_rightControlPoint() + , m_interpolationType(BezierInterpolation) + { + } + + Q_DECL_CONSTEXPR explicit QKeyFrame(QVector2D coords) Q_DECL_NOTHROW + : m_coordinates(coords) + , m_leftControlPoint() + , m_rightControlPoint() + , m_interpolationType(LinearInterpolation) + { + } + + Q_DECL_CONSTEXPR explicit QKeyFrame(QVector2D coords, + QVector2D lh, + QVector2D rh) Q_DECL_NOTHROW + : m_coordinates(coords) + , m_leftControlPoint(lh) + , m_rightControlPoint(rh) + , m_interpolationType(BezierInterpolation) + { + } + + void setCoordinates(QVector2D coords) Q_DECL_NOTHROW + { + m_coordinates = coords; + } + + Q_DECL_CONSTEXPR QVector2D coordinates() const Q_DECL_NOTHROW + { + return m_coordinates; + } + + void setLeftControlPoint(QVector2D lh) Q_DECL_NOTHROW + { + m_leftControlPoint = lh; + } + + Q_DECL_CONSTEXPR QVector2D leftControlPoint() const Q_DECL_NOTHROW + { + return m_leftControlPoint; + } + + void setRightControlPoint(QVector2D rh) Q_DECL_NOTHROW + { + m_rightControlPoint = rh; + } + + Q_DECL_CONSTEXPR QVector2D rightControlPoint() const Q_DECL_NOTHROW + { + return m_rightControlPoint; + } + + void setInterpolationType(InterpolationType interp) Q_DECL_NOTHROW + { + m_interpolationType = interp; + } + + Q_DECL_CONSTEXPR InterpolationType interpolationType() const Q_DECL_NOTHROW + { + return m_interpolationType; + } + + friend inline bool operator==(const QKeyFrame &, const QKeyFrame &) Q_DECL_NOTHROW; + friend inline bool operator!=(const QKeyFrame &, const QKeyFrame &) Q_DECL_NOTHROW; + +private: + QVector2D m_coordinates; + QVector2D m_leftControlPoint; + QVector2D m_rightControlPoint; + InterpolationType m_interpolationType; +}; + +QT3D_DECLARE_TYPEINFO(Qt3DAnimation, QKeyFrame, Q_PRIMITIVE_TYPE) + +inline bool operator==(const QKeyFrame &lhs, const QKeyFrame &rhs) Q_DECL_NOTHROW +{ + if (lhs.m_interpolationType != rhs.m_interpolationType) + return false; + + if (lhs.m_interpolationType == QKeyFrame::BezierInterpolation) { + return lhs.m_coordinates == rhs.m_coordinates && + lhs.m_leftControlPoint == rhs.m_leftControlPoint && + lhs.m_rightControlPoint == rhs.m_rightControlPoint; + } + + return lhs.m_coordinates == rhs.m_coordinates; +} + +inline bool operator!=(const QKeyFrame &lhs, const QKeyFrame &rhs) Q_DECL_NOTHROW +{ + return !(lhs == rhs); +} + +} // namespace Qt3DAnimation + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_QKEYFRAME_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qkeyframeanimation.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qkeyframeanimation.h new file mode 100644 index 0000000..efc132c --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qkeyframeanimation.h @@ -0,0 +1,112 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: http://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_QKEYFRAMEANIMATION_H +#define QT3DANIMATION_QKEYFRAMEANIMATION_H + +#include + +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { + +class QKeyframeAnimationPrivate; + +class QT3DANIMATIONSHARED_EXPORT QKeyframeAnimation : public QAbstractAnimation +{ + Q_OBJECT + Q_PROPERTY(QVector framePositions READ framePositions WRITE setFramePositions NOTIFY framePositionsChanged) + Q_PROPERTY(Qt3DCore::QTransform *target READ target WRITE setTarget NOTIFY targetChanged) + Q_PROPERTY(QEasingCurve easing READ easing WRITE setEasing NOTIFY easingChanged) + Q_PROPERTY(QString targetName READ targetName WRITE setTargetName NOTIFY targetNameChanged) + Q_PROPERTY(RepeatMode startMode READ startMode WRITE setStartMode NOTIFY startModeChanged) + Q_PROPERTY(RepeatMode endMode READ endMode WRITE setEndMode NOTIFY endModeChanged) + +public: + explicit QKeyframeAnimation(QObject *parent = nullptr); + + enum RepeatMode + { + None, + Constant, + Repeat, + }; + Q_ENUM(RepeatMode) + + QVector framePositions() const; + QVector keyframeList() const; + Qt3DCore::QTransform *target() const; + QEasingCurve easing() const; + QString targetName() const; + RepeatMode startMode() const; + RepeatMode endMode() const; + + void setKeyframes(const QVector &keyframes); + void addKeyframe(Qt3DCore::QTransform *keyframe); + void removeKeyframe(Qt3DCore::QTransform *keyframe); + +public Q_SLOTS: + void setFramePositions(const QVector &positions); + void setTarget(Qt3DCore::QTransform *target); + void setEasing(const QEasingCurve &easing); + void setTargetName(const QString &name); + void setStartMode(RepeatMode mode); + void setEndMode(RepeatMode mode); + +Q_SIGNALS: + void framePositionsChanged(const QVector &positions); + void targetChanged(Qt3DCore::QTransform *target); + void easingChanged(const QEasingCurve &easing); + void targetNameChanged(const QString &name); + void startModeChanged(QKeyframeAnimation::RepeatMode startMode); + void endModeChanged(QKeyframeAnimation::RepeatMode endMode); + +private: + void updateAnimation(float position); + + Q_DECLARE_PRIVATE(QKeyframeAnimation) +}; + +} // Qt3DAnimation + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_QKEYFRAMEANIMATION_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qlerpclipblend.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qlerpclipblend.h new file mode 100644 index 0000000..225b52e --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qlerpclipblend.h @@ -0,0 +1,86 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_QLERPCLIPBLEND_H +#define QT3DANIMATION_QLERPCLIPBLEND_H + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { + +class QLerpClipBlendPrivate; + +class QT3DANIMATIONSHARED_EXPORT QLerpClipBlend : public QAbstractClipBlendNode +{ + Q_OBJECT + Q_PROPERTY(Qt3DAnimation::QAbstractClipBlendNode *startClip READ startClip WRITE setStartClip NOTIFY startClipChanged) + Q_PROPERTY(Qt3DAnimation::QAbstractClipBlendNode *endClip READ endClip WRITE setEndClip NOTIFY endClipChanged) + Q_PROPERTY(float blendFactor READ blendFactor WRITE setBlendFactor NOTIFY blendFactorChanged) + +public: + explicit QLerpClipBlend(Qt3DCore::QNode *parent = nullptr); + ~QLerpClipBlend(); + + float blendFactor() const; + Qt3DAnimation::QAbstractClipBlendNode *startClip() const; + Qt3DAnimation::QAbstractClipBlendNode *endClip() const; + +public Q_SLOTS: + void setBlendFactor(float blendFactor); + void setStartClip(Qt3DAnimation::QAbstractClipBlendNode * startClip); + void setEndClip(Qt3DAnimation::QAbstractClipBlendNode * endClip); + +Q_SIGNALS: + void blendFactorChanged(float blendFactor); + void startClipChanged(Qt3DAnimation::QAbstractClipBlendNode * startClip); + void endClipChanged(Qt3DAnimation::QAbstractClipBlendNode * endClip); + +protected: + explicit QLerpClipBlend(QLerpClipBlendPrivate &dd, Qt3DCore::QNode *parent = nullptr); + +private: + Q_DECLARE_PRIVATE(QLerpClipBlend) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +} // Qt3DAnimation + +QT_END_NAMESPACE + + +#endif // QT3DANIMATION_QLERPCLIPBLEND_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qmorphinganimation.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qmorphinganimation.h new file mode 100644 index 0000000..09d0054 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qmorphinganimation.h @@ -0,0 +1,116 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: http://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_QMORPHINGANIMATION_H +#define QT3DANIMATION_QMORPHINGANIMATION_H + +#include + +#include +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { + +class QMorphingAnimationPrivate; + +class QT3DANIMATIONSHARED_EXPORT QMorphingAnimation : public QAbstractAnimation +{ + Q_OBJECT + Q_PROPERTY(QVector targetPositions READ targetPositions WRITE setTargetPositions NOTIFY targetPositionsChanged) + Q_PROPERTY(float interpolator READ interpolator NOTIFY interpolatorChanged) + Q_PROPERTY(Qt3DRender::QGeometryRenderer *target READ target WRITE setTarget NOTIFY targetChanged) + Q_PROPERTY(QString targetName READ targetName WRITE setTargetName NOTIFY targetNameChanged) + Q_PROPERTY(Method method READ method WRITE setMethod NOTIFY methodChanged) + Q_PROPERTY(QEasingCurve easing READ easing WRITE setEasing NOTIFY easingChanged) + +public: + enum Method + { + Normalized, + Relative + }; + Q_ENUM(Method) + + explicit QMorphingAnimation(QObject *parent = nullptr); + + QVector targetPositions() const; + float interpolator() const; + Qt3DRender::QGeometryRenderer *target() const; + QString targetName() const; + QMorphingAnimation::Method method() const; + QEasingCurve easing() const; + + void setMorphTargets(const QVector &targets); + void addMorphTarget(Qt3DAnimation::QMorphTarget *target); + void removeMorphTarget(Qt3DAnimation::QMorphTarget *target); + + void setWeights(int positionIndex, const QVector &weights); + QVector getWeights(int positionIndex); + + QVector morphTargetList(); + +public Q_SLOTS: + void setTargetPositions(const QVector &targetPositions); + void setTarget(Qt3DRender::QGeometryRenderer *target); + void setTargetName(const QString name); + void setMethod(QMorphingAnimation::Method method); + void setEasing(const QEasingCurve &easing); + +Q_SIGNALS: + void targetPositionsChanged(const QVector &targetPositions); + void interpolatorChanged(float interpolator); + void targetChanged(Qt3DRender::QGeometryRenderer *target); + void targetNameChanged(const QString &name); + void methodChanged(QMorphingAnimation::Method method); + void easingChanged(const QEasingCurve &easing); + +private: + + void updateAnimation(float position); + + Q_DECLARE_PRIVATE(QMorphingAnimation) +}; + +} // Qt3DAnimation + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_QMORPHINGANIMATION_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qmorphtarget.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qmorphtarget.h new file mode 100644 index 0000000..0435924 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qmorphtarget.h @@ -0,0 +1,83 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: http://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_QMORPHTARGET_H +#define QT3DANIMATION_QMORPHTARGET_H + +#include +#include + +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { + +class QMorphTargetPrivate; + +class QT3DANIMATIONSHARED_EXPORT QMorphTarget : public QObject +{ + Q_OBJECT + Q_PROPERTY(QStringList attributeNames READ attributeNames NOTIFY attributeNamesChanged) + +public: + explicit QMorphTarget(QObject *parent = nullptr); + + QVector attributeList() const; + QStringList attributeNames() const; + + void setAttributes(const QVector &attributes); + void addAttribute(Qt3DRender::QAttribute *attribute); + void removeAttribute(Qt3DRender::QAttribute *attribute); + + Q_INVOKABLE static QMorphTarget *fromGeometry(Qt3DRender::QGeometry *geometry, + const QStringList &attributes); + +Q_SIGNALS: + void attributeNamesChanged(const QStringList &attributeNames); + +private: + + Q_DECLARE_PRIVATE(QMorphTarget) +}; + +} // Qt3DAnimation + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_QMORPHTARGET_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qskeletonmapping.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qskeletonmapping.h new file mode 100644 index 0000000..2c698da --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qskeletonmapping.h @@ -0,0 +1,85 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_QSKELETONMAPPING_H +#define QT3DANIMATION_QSKELETONMAPPING_H + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { +class QAbstractSkeleton; +} + +namespace Qt3DAnimation { + +class QSkeletonMappingPrivate; + +class QT3DANIMATIONSHARED_EXPORT QSkeletonMapping : public QAbstractChannelMapping +{ + Q_OBJECT + Q_PROPERTY(Qt3DCore::QAbstractSkeleton* skeleton READ skeleton WRITE setSkeleton NOTIFY skeletonChanged) + +public: + explicit QSkeletonMapping(Qt3DCore::QNode *parent = nullptr); + ~QSkeletonMapping(); + + Qt3DCore::QAbstractSkeleton *skeleton() const; + +public Q_SLOTS: + void setSkeleton(Qt3DCore::QAbstractSkeleton *skeleton); + +Q_SIGNALS: + void skeletonChanged(Qt3DCore::QAbstractSkeleton *skeleton); + +protected: + QSkeletonMapping(QSkeletonMappingPrivate &dd, Qt3DCore::QNode *parent = nullptr); + +private: + Q_DECLARE_PRIVATE(QSkeletonMapping) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const Q_DECL_OVERRIDE; +}; + +} // namespace Qt3DAnimation + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_QSKELETONMAPPING_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qt3danimation_global.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qt3danimation_global.h new file mode 100644 index 0000000..6b66e7e --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qt3danimation_global.h @@ -0,0 +1,59 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_GLOBAL_H +#define QT3DANIMATION_GLOBAL_H + +#include + +QT_BEGIN_NAMESPACE + +#if defined(QT_SHARED) || !defined(QT_STATIC) +# if defined(QT_BUILD_3DANIMATION_LIB) +# define QT3DANIMATIONSHARED_EXPORT Q_DECL_EXPORT +# else +# define QT3DANIMATIONSHARED_EXPORT Q_DECL_IMPORT +# endif +#else +# define QT3DANIMATIONSHARED_EXPORT +#endif + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_GLOBAL_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qt3danimationversion.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qt3danimationversion.h new file mode 100644 index 0000000..cf6d082 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qt3danimationversion.h @@ -0,0 +1,9 @@ +/* This file was generated by syncqt. */ +#ifndef QT_QT3DANIMATION_VERSION_H +#define QT_QT3DANIMATION_VERSION_H + +#define QT3DANIMATION_VERSION_STR "5.12.5" + +#define QT3DANIMATION_VERSION 0x050C05 + +#endif // QT_QT3DANIMATION_VERSION_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qvertexblendanimation.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qvertexblendanimation.h new file mode 100644 index 0000000..a7da2bc --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DAnimation/qvertexblendanimation.h @@ -0,0 +1,96 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: http://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_QVERTEXBLENDANIMATION_H +#define QT3DANIMATION_QVERTEXBLENDANIMATION_H + +#include +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { + +class QVertexBlendAnimationPrivate; + +class QT3DANIMATIONSHARED_EXPORT QVertexBlendAnimation : public QAbstractAnimation +{ + Q_OBJECT + Q_PROPERTY(QVector targetPositions READ targetPositions WRITE setTargetPositions NOTIFY targetPositionsChanged) + Q_PROPERTY(float interpolator READ interpolator NOTIFY interpolatorChanged) + Q_PROPERTY(Qt3DRender::QGeometryRenderer *target READ target WRITE setTarget NOTIFY targetChanged) + Q_PROPERTY(QString targetName READ targetName WRITE setTargetName NOTIFY targetNameChanged) + +public: + explicit QVertexBlendAnimation(QObject *parent = nullptr); + + QVector targetPositions() const; + float interpolator() const; + Qt3DRender::QGeometryRenderer *target() const; + QString targetName() const; + + void setMorphTargets(const QVector &targets); + void addMorphTarget(Qt3DAnimation::QMorphTarget *target); + void removeMorphTarget(Qt3DAnimation::QMorphTarget *target); + + QVector morphTargetList(); + +public Q_SLOTS: + void setTargetPositions(const QVector &targetPositions); + void setTarget(Qt3DRender::QGeometryRenderer *target); + void setTargetName(const QString name); + +Q_SIGNALS: + void targetPositionsChanged(const QVector &targetPositions); + void interpolatorChanged(float interpolator); + void targetChanged(Qt3DRender::QGeometryRenderer *target); + void targetNameChanged(const QString &name); + +private: + + void updateAnimation(float position); + + Q_DECLARE_PRIVATE(QVertexBlendAnimation) +}; + +} // Qt3DAnimation + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_QVERTEXBLENDANIMATION_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/aspectcommanddebugger_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/aspectcommanddebugger_p.h new file mode 100644 index 0000000..bb6100d --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/aspectcommanddebugger_p.h @@ -0,0 +1,110 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#include + +#ifndef QT3DCORE_DEBUG_ASPECTCOMMANDDEBUGGER_H +#define QT3DCORE_DEBUG_ASPECTCOMMANDDEBUGGER_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QAspectEngine; + +namespace Debug { + +class AsynchronousCommandReply; + +class Q_AUTOTEST_EXPORT AspectCommandDebugger : public QTcpServer +{ + Q_OBJECT +public: + explicit AspectCommandDebugger(QObject *parent = nullptr); + + void initialize(); + void setAspectEngine(QAspectEngine *engine); + + struct ReadBuffer { + ReadBuffer(); + + QByteArray buffer; + int startIdx; + int endIdx; + + inline int size() const { return endIdx - startIdx; } + void insert(const QByteArray &array); + void trim(); + }; + +private Q_SLOTS: + void asynchronousReplyFinished(AsynchronousCommandReply *reply); + +private: + void sendReply(QTcpSocket *socket, const QByteArray &data); + void onCommandReceived(QTcpSocket *socket); + void executeCommand(const QString &command, QTcpSocket *socket); + + QVector m_connections; + QAspectEngine *m_aspectEngine; + + ReadBuffer m_readBuffer; + QHash m_asyncCommandToSocketEntries; +}; + +} // Debug + +} // Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3DCORE_DEBUG_ASPECTCOMMANDDEBUGGER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/corelogging_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/corelogging_p.h new file mode 100644 index 0000000..5ddd6ea --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/corelogging_p.h @@ -0,0 +1,70 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_CORELOGGING_P_H +#define QT3DCORE_CORELOGGING_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +Q_DECLARE_LOGGING_CATEGORY(Resources) +Q_DECLARE_LOGGING_CATEGORY(Nodes) +Q_DECLARE_LOGGING_CATEGORY(Aspects) +Q_DECLARE_LOGGING_CATEGORY(ChangeArbiter) + + +} // Qt3D + +QT_END_NAMESPACE + +#endif // QT3DCORE_CORELOGGING_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/matrix4x4_avx2_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/matrix4x4_avx2_p.h new file mode 100644 index 0000000..329ff46 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/matrix4x4_avx2_p.h @@ -0,0 +1,574 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Paul Lemire +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_MATRIX4X4_AVX2_P_H +#define QT3DCORE_MATRIX4X4_AVX2_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt3D API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include + +#ifdef QT_COMPILER_SUPPORTS_AVX2 + +// Some GCC versions don't have _mm256_set_m128 available +// Work around that +#ifndef _mm256_set_m128 +#define _mm256_set_m128(va, vb) \ + _mm256_insertf128_ps(_mm256_castps128_ps256(vb), va, 1) +#endif + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class Matrix4x4_AVX2 +{ +public: + + Q_ALWAYS_INLINE Matrix4x4_AVX2() { setToIdentity(); } + explicit Q_ALWAYS_INLINE Matrix4x4_AVX2(Qt::Initialization) {} + + // Assumes data is 32 bytes aligned (and in column major order) + explicit Q_ALWAYS_INLINE Matrix4x4_AVX2(float *data) + { + m_col12 = _mm256_load_ps(data); + m_col34 = _mm256_load_ps(data + 8); + } + + // QMatrix4x4::constData returns in column major order + explicit Q_ALWAYS_INLINE Matrix4x4_AVX2(const QMatrix4x4 &mat) + { + // data may not be properly aligned, using unaligned loads + const float *data = mat.constData(); + m_col12 = _mm256_loadu_ps(data); + m_col34 = _mm256_loadu_ps(data + 8); + } + + // In (row major) but we store in column major order + explicit Q_ALWAYS_INLINE Matrix4x4_AVX2(float m11, float m12, float m13, float m14, + float m21, float m22, float m23, float m24, + float m31, float m32, float m33, float m34, + float m41, float m42, float m43, float m44) + { + m_col12 = _mm256_set_ps(m42, m32, m22, m12, m41, m31, m21, m11); + m_col34 = _mm256_set_ps(m44, m34, m24, m14, m43, m33, m23, m13); + } + + Q_ALWAYS_INLINE void setToIdentity() + { + // 23 instructions + m_col12 = _mm256_set_ps(0.0f, 0.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f); + m_col34 = _mm256_set_ps(1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f); + + // 23 instructions + // 1, 0, 0, 0 + // __m128 vec = _mm_set_ss(1.0f); + // // 0, 1, 0, 0 + // // 0b01010001 == 0x51 + // __m128 tmp = _mm_permute_ps(vec, 0x51); + + // // 1, 0, 0, 0, 0, 1, 0, 0 + // m_col12 = _mm256_set_m128(tmp, vec); + + // // 0, 0, 1, 0 + // // 0b01000101 == 0x45 + // tmp = _mm_permute_ps(vec, 0x45); + + // // 0, 0, 0, 1 + // // 0b00010101 == 0x15 + // vec = _mm_permute_ps(vec, 0x15); + + // // 0, 0, 1, 0, 0, 0, 0, 1 + // m_col34 = _mm256_set_m128(vec, tmp); + + // Using a static identity matrix and assigning it is 27 instructions + } + + Q_ALWAYS_INLINE Matrix4x4_AVX2 operator*(const Matrix4x4_AVX2 &other) const + { + // Shuffling: (Latency 1) + // (8 bits -> first two pairs used to select from the first vector, second pairs from second vector) + + // 00 01 10 11, 00 01 10 11 + // v1 = m11 m12 m13 m14 m21 m22 m23 m24 + // v2 = m11 m12 m13 m14 m21 m22 m23 m24 + + // shuffled with 00 00 00 00 + // v1[0] v1[0] v2[0] v2[0] v1[0] v1[0] v2[0] v2[0] + // -> m11 m11 m11 m11 m21 m21 m21 m21 + + // Broadcasting: (Latency 1) + // -> n11 n12 n13 n14 broadcasted + // n11 n12 n13 n14 n11 n12 n13 n14 + + // Multiplying (Latency 5): + // m11 m11 m11 m11 m21 m21 m21 m21 * n11 n12 n13 n14 n11 n12 n13 n14 + + // -> m11 n11, m11 n12, m11 n13, m11 n14 + // m21 n11, m21 n12, m21 n13, m21 n14 + + // 00 01 10 11, 00 01 10 11 + // v1 = m11 m12 m13 m14 m21 m22 m23 m24 + // v2 = m11 m12 m13 m14 m21 m22 m23 m24 + const __m256 otherCol12 = other.m_col12; + const __m256 otherCol34 = other.m_col34; + const __m128 col1 = _mm256_extractf128_ps(m_col12, 0); + const __m128 col2 = _mm256_extractf128_ps(m_col12, 1); + const __m128 col3 = _mm256_extractf128_ps(m_col34, 0); + const __m128 col4 = _mm256_extractf128_ps(m_col34, 1); + + // const __m256 col12 = _mm256_load_ps(m); + // const __m256 col34 = _mm256_load_ps(m + 8); + // const __m128 otherCol1 = _mm_load_ps(other.m); + // const __m128 otherCol2 = _mm_load_ps(other.m + 4); + // const __m128 otherCol3 = _mm_load_ps(other.m + 8); + // const __m128 otherCol4 = _mm_load_ps(other.m + 12); + + __m256 tmp = _mm256_mul_ps(_mm256_shuffle_ps(otherCol12, otherCol12, 0x00), _mm256_broadcast_ps(&col1)); + + // shuffled with 01 01 01 01 + // v1[1] v1[1] v2[1] v2[1] v1[1] v1[1] v2[1] v2[1] + // -> m12 m12 m12 m12 m22 m22 m22 m22 + + + // 00 01 10 11, 00 01 10 11 + // m11 m12 m13 m14, m21 m22 m23 m24 shuffled with 01 01 01 01 + // -> m12 m12 m12 m12 m22 m22 m22 m22 x n21 n22 n23 n24 n21 n22 n23 n24 + + // -> m12 n21, m12 n22, m12 n23, m12 n24, + // -> m22 n21, m22 n22, m22 n23, m22 n24 + tmp = _mm256_add_ps(_mm256_mul_ps(_mm256_shuffle_ps(otherCol12, otherCol12, 0x55), _mm256_broadcast_ps(&col2)), tmp); + + // m11 m12 m13 m14 m11 m12 m13 m14 shuffled with 10 10 10 10 + // m13 m13 m13 m13, m23 m23 m23 m23 + + // Multiplying with other.col3 + // -> m13 n31, m13 n32, m13 n33, m13 n34 + // -> m23 n31, m23 n32, m23 n33, m23 n34 + tmp = _mm256_add_ps(_mm256_mul_ps(_mm256_shuffle_ps(otherCol12, otherCol12, 0xaa), _mm256_broadcast_ps(&col3)), tmp); + + // m11 m12 m13 m14 m11 m12 m13 m14 shuffled with 11 11 11 11 + // m14 m14 m14 m14 m24 m24 m24 m24 + + // -> m14 n41, m14 n42, m14 n43, m14 n44 + // -> m24 n41, m24 n42, m24 n43, m24 n44 + tmp = _mm256_add_ps(_mm256_mul_ps(_mm256_shuffle_ps(otherCol12, otherCol12, 0xff), _mm256_broadcast_ps(&col4)), tmp); + + // Which finally gives + // c11 -> m11 n11 + m12 n21 + m13 n31 + m14 n41, + // c12 -> m11 n12 + m12 n22 + m13 n32 + m14 n42 + // c13 -> m11 n13 + m12 n23 + m13 n33 + m14 n43 + // c14 -> m11 n14 + m12 n24 + m13 n34 + m14 n44 + + // c21 -> m21 n11 + m22 n21 + m23 n31 + m24 n41, + // c12 -> m21 n12 + m22 n22 + m23 n32 + m24 n42 + // c13 -> m21 n13 + m22 n23 + m23 n33 + m24 n43 + // c14 -> m21 n14 + m22 n24 + m23 n34 + m24 n44 + + __m256 tmp2 = _mm256_mul_ps(_mm256_shuffle_ps(otherCol34, otherCol34, 0x00), _mm256_broadcast_ps(&col1)); + tmp2 = _mm256_add_ps(_mm256_mul_ps(_mm256_shuffle_ps(otherCol34, otherCol34, 0x55), _mm256_broadcast_ps(&col2)), tmp2); + tmp2 = _mm256_add_ps(_mm256_mul_ps(_mm256_shuffle_ps(otherCol34, otherCol34, 0xaa), _mm256_broadcast_ps(&col3)), tmp2); + tmp2 = _mm256_add_ps(_mm256_mul_ps(_mm256_shuffle_ps(otherCol34, otherCol34, 0xff), _mm256_broadcast_ps(&col4)), tmp2); + + Matrix4x4_AVX2 c(Qt::Uninitialized); + c.m_col12 = tmp; + c.m_col34 = tmp2; + return c; + } + + Q_ALWAYS_INLINE Matrix4x4_AVX2 operator-(const Matrix4x4_AVX2 &other) const + { + Matrix4x4_AVX2 c(Qt::Uninitialized); + + c.m_col12 = _mm256_sub_ps(m_col12, other.m_col12); + c.m_col34 = _mm256_sub_ps(m_col34, other.m_col34); + return c; + } + + Q_ALWAYS_INLINE Matrix4x4_AVX2 operator+(const Matrix4x4_AVX2 &other) const + { + Matrix4x4_AVX2 c(Qt::Uninitialized); + + c.m_col12 = _mm256_add_ps(m_col12, other.m_col12); + c.m_col34 = _mm256_add_ps(m_col34, other.m_col34); + return c; + } + + Q_ALWAYS_INLINE Matrix4x4_AVX2 &operator*=(const Matrix4x4_AVX2 &other) + { + *this = *this * other; + return *this; + } + + Q_ALWAYS_INLINE Matrix4x4_AVX2 &operator-=(const Matrix4x4_AVX2 &other) + { + *this = *this - other; + return *this; + } + + Q_ALWAYS_INLINE Matrix4x4_AVX2 &operator+=(const Matrix4x4_AVX2 &other) + { + *this = *this + other; + return *this; + } + + Q_ALWAYS_INLINE Matrix4x4_AVX2 transposed() const + { + Matrix4x4_AVX2 c(Qt::Uninitialized); + const __m128 col1 = _mm256_extractf128_ps(m_col12, 0); + const __m128 col2 = _mm256_extractf128_ps(m_col12, 1); + const __m128 col3 = _mm256_extractf128_ps(m_col34, 0); + const __m128 col4 = _mm256_extractf128_ps(m_col34, 1); + + // ~117 instructions + // Matrix4x4_AVX2 c = *this; + // _MM_TRANSPOSE4_PS(c.m_col1, c.m_col2, c.m_col3, c.m_col4); + + // ~131 instructions - AVX2 + // const __m256i indexes = _mm256_set_epi32(7, 3, 6, 2, 5, 1, 4, 0); + // c.m_col12 = _mm256_permutevar8x32_ps(_mm256_unpacklo_ps(m_col12, m_col34), indexes); + // c.m_col34 = _mm256_permutevar8x32_ps(_mm256_unpackhi_ps(m_col12, m_col34), indexes); + + // ~193 instructions + // c.m_col12 = _mm256_setr_ps(m_m11, m_m21, m_m31, m_m41, m_m12, m_m22, m_m32, m_m42); + // c.m_col34 = _mm256_setr_ps(m_m13, m_m23, m_m33, m_m43, m_m14, m_m24, m_m34, m_m44); + + // ~113 instructions + // union { + // struct + // { + // __m256 twin; + // }; + // struct + // { + // __m128 col1; + // __m128 col2; + // }; + // } u; + + // u.twin = _mm256_shuffle_ps(m_col12, m_col34, 0b01000100); + // c.m_col1 = _mm_permute_ps(_mm_shuffle_ps(u.col1, u.col2, 0b10001000), 0b11011000); + // c.m_col2 = _mm_permute_ps(_mm_shuffle_ps(u.col1, u.col2, 0b11011101), 0b11011000); + + // u.twin = _mm256_shuffle_ps(m_col12, m_col34, 0b11101110); + // c.m_col3 = _mm_permute_ps(_mm_shuffle_ps(u.col1, u.col2, 0b10001000), 0b11011000); + // c.m_col4 = _mm_permute_ps(_mm_shuffle_ps(u.col1, u.col2, 0b11011101), 0b11011000); + + // ~113 instructions + // 0b11011101 == 0xdd + // 0b10001000 == 0x88 + const __m128 tmp1 = _mm_shuffle_ps(col1, col2, 0xdd); + const __m128 tmp2 = _mm_shuffle_ps(col1, col2, 0x88); + const __m128 tmp3 = _mm_shuffle_ps(col3, col4, 0xdd); + const __m128 tmp4 = _mm_shuffle_ps(col3, col4, 0x88); + c.m_col12 = _mm256_set_m128(_mm_shuffle_ps(tmp1, tmp3, 0x88), _mm_shuffle_ps(tmp2, tmp4, 0x88)); + c.m_col34 = _mm256_set_m128(_mm_shuffle_ps(tmp1, tmp3, 0xdd), _mm_shuffle_ps(tmp2, tmp4, 0xdd)); + + return c; + } + + Q_ALWAYS_INLINE Matrix4x4_AVX2 inverted() const + { + // TO DO: Optimize + const QMatrix4x4 mat = toQMatrix4x4(); + return Matrix4x4_AVX2(mat.inverted()); + } + + Q_ALWAYS_INLINE bool operator==(const Matrix4x4_AVX2 &other) const + { + // cmp returns (-1, -1, -1, -1, -1, -1, -1, -1) if the two m256 are equals + // movemask takes the most significant bits (8x 1 in this case) which equals 0xff + return (_mm256_movemask_ps(_mm256_cmp_ps(m_col12, other.m_col12, _CMP_EQ_OQ)) == 0xff && + _mm256_movemask_ps(_mm256_cmp_ps(m_col34, other.m_col34, _CMP_EQ_OQ)) == 0xff); + + } + + Q_ALWAYS_INLINE bool operator!=(const Matrix4x4_AVX2 &other) const + { + return !(*this == other); + } + + // For some reason _mm256_cvtss_f32 doesn't seem to be defined + Q_ALWAYS_INLINE float m11() const { return _mm_cvtss_f32(_mm256_extractf128_ps(m_col12, 0)); } + Q_ALWAYS_INLINE float m12() const { return _mm_cvtss_f32(_mm256_extractf128_ps(m_col12, 1)); } + Q_ALWAYS_INLINE float m13() const { return _mm_cvtss_f32(_mm256_extractf128_ps(m_col34, 0)); } + Q_ALWAYS_INLINE float m14() const { return _mm_cvtss_f32(_mm256_extractf128_ps(m_col34, 1)); } + + Q_ALWAYS_INLINE float m21() const + { + // 0b01010101 = 0x55 + const __m128 v = _mm256_extractf128_ps(m_col12, 0); + return _mm_cvtss_f32(_mm_shuffle_ps(v, v, 0x55)); + } + Q_ALWAYS_INLINE float m22() const + { + // 0b01010101 = 0x55 + const __m128 v = _mm256_extractf128_ps(m_col12, 1); + return _mm_cvtss_f32(_mm_shuffle_ps(v, v, 0x55)); + } + Q_ALWAYS_INLINE float m23() const + { + // 0b01010101 = 0x55 + const __m128 v = _mm256_extractf128_ps(m_col34, 0); + return _mm_cvtss_f32(_mm_shuffle_ps(v, v, 0x55)); + } + Q_ALWAYS_INLINE float m24() const + { + // 0b01010101 = 0x55 + const __m128 v = _mm256_extractf128_ps(m_col34, 1); + return _mm_cvtss_f32(_mm_shuffle_ps(v, v, 0x55)); + } + + Q_ALWAYS_INLINE float m31() const + { + // 0b10101010 = 0xaa + const __m128 v = _mm256_extractf128_ps(m_col12, 0); + return _mm_cvtss_f32(_mm_shuffle_ps(v, v, 0xaa)); + } + Q_ALWAYS_INLINE float m32() const + { + // 0b10101010 = 0xaa + const __m128 v = _mm256_extractf128_ps(m_col12, 1); + return _mm_cvtss_f32(_mm_shuffle_ps(v, v, 0xaa)); + } + Q_ALWAYS_INLINE float m33() const + { + // 0b10101010 = 0xaa + const __m128 v = _mm256_extractf128_ps(m_col34, 0); + return _mm_cvtss_f32(_mm_shuffle_ps(v, v, 0xaa)); + } + Q_ALWAYS_INLINE float m34() const + { + // 0b10101010 = 0xaa + const __m128 v = _mm256_extractf128_ps(m_col34, 1); + return _mm_cvtss_f32(_mm_shuffle_ps(v, v, 0xaa)); + } + + Q_ALWAYS_INLINE float m41() const + { + // 0b11111111 = 0xff + const __m128 v = _mm256_extractf128_ps(m_col12, 0); + return _mm_cvtss_f32(_mm_shuffle_ps(v, v, 0xff)); + } + Q_ALWAYS_INLINE float m42() const + { + // 0b11111111 = 0xff + const __m128 v = _mm256_extractf128_ps(m_col12, 1); + return _mm_cvtss_f32(_mm_shuffle_ps(v, v, 0xff)); + } + Q_ALWAYS_INLINE float m43() const + { + // 0b11111111 = 0xff + const __m128 v = _mm256_extractf128_ps(m_col34, 0); + return _mm_cvtss_f32(_mm_shuffle_ps(v, v, 0xff)); + } + Q_ALWAYS_INLINE float m44() const + { + // 0b11111111 = 0xff + const __m128 v = _mm256_extractf128_ps(m_col34, 1); + return _mm_cvtss_f32(_mm_shuffle_ps(v, v, 0xff)); + } + Q_ALWAYS_INLINE QMatrix4x4 toQMatrix4x4() const { return QMatrix4x4(m11(), m12(), m13(), m14(), + m21(), m22(), m23(), m24(), + m31(), m32(), m33(), m34(), + m41(), m42(), m43(), m44()); } + + Q_ALWAYS_INLINE Vector4D row(int index) const + { + switch (index) { + case 0: + return Vector4D(m11(), m12(), m13(), m14()); + case 1: + return Vector4D(m21(), m22(), m23(), m24()); + case 2: + return Vector4D(m31(), m32(), m33(), m34()); + case 3: + return Vector4D(m41(), m42(), m43(), m44()); + default: + Q_UNREACHABLE(); + return Vector4D(); + } + } + + Q_ALWAYS_INLINE Vector4D column(int index) const + { + Vector4D c(Qt::Uninitialized); + switch (index) { + case 0: + c.m_xyzw = _mm256_extractf128_ps(m_col12, 0); + break; + case 1: + c.m_xyzw = _mm256_extractf128_ps(m_col12, 1); + break; + case 2: + c.m_xyzw = _mm256_extractf128_ps(m_col34, 0); + break; + case 3: + c.m_xyzw = _mm256_extractf128_ps(m_col34, 1); + break; + default: + Q_UNREACHABLE(); + return Vector4D(); + } + return c; + } + + Q_ALWAYS_INLINE Vector3D_SSE map(const Vector3D_SSE &point) const + { + return *this * point; + } + + Q_ALWAYS_INLINE Vector4D_SSE map(const Vector4D_SSE &point) const + { + return *this * point; + } + + Vector3D_SSE mapVector(const Vector3D_SSE &vector) const + { + const Vector3D_SSE row1(m11(), m12(), m13()); + const Vector3D_SSE row2(m21(), m22(), m23()); + const Vector3D_SSE row3(m31(), m32(), m33()); + + return Vector3D(Vector3D_SSE::dotProduct(row1, vector), + Vector3D_SSE::dotProduct(row2, vector), + Vector3D_SSE::dotProduct(row3, vector)); + } + + friend Vector4D operator*(const Vector4D &vector, const Matrix4x4_AVX2 &matrix); + friend Vector4D operator*(const Matrix4x4_AVX2 &matrix, const Vector4D &vector); + + friend QT3DCORE_PRIVATE_EXPORT Vector3D operator*(const Vector3D &vector, const Matrix4x4_AVX2 &matrix); + friend QT3DCORE_PRIVATE_EXPORT Vector3D operator*(const Matrix4x4_AVX2 &matrix, const Vector3D &vector); + + friend QT3DCORE_PRIVATE_EXPORT QDebug operator<<(QDebug dbg, const Matrix4x4_AVX2 &m); +private: + // column major order + // aligned on 32 bytes boundaries for AVX, compatible with 16 bytes boundary for SSE + // union Q_DECL_ALIGN(32) + // { + // float m[16]; + // struct + // { + // float m_m11, m_m21, m_m31, m_m41; + // float m_m12, m_m22, m_m32, m_m42; + // float m_m13, m_m23, m_m33, m_m43; + // float m_m14, m_m24, m_m34, m_m44; + // }; + // }; + __m256 m_col12; + __m256 m_col34; +}; + +Q_ALWAYS_INLINE Vector4D operator*(const Vector4D &vector, const Matrix4x4_AVX2 &matrix) +{ + const __m256 vecMultiplier = _mm256_broadcast_ps(&vector.m_xyzw); + // a1 a2 a3 a4 b1 b2 b3 b4, c1 c2 c3 c4 d1 d2 d3 d4 + // a1 + a2, a3 + a4, c1 + c2, c3 + c4 + // b1 + b2, b3 + b3, d1 + d2, d3 + d4 + + const __m256 partialSum = _mm256_hadd_ps(_mm256_mul_ps(matrix.m_col12, vecMultiplier), + _mm256_mul_ps(matrix.m_col34, vecMultiplier)); + + Vector4D v(Qt::Uninitialized); + // a12 + a34, b12 + b34, c12 + c34, d12 + d34 + // _mm256_permute4x64_pd is AVX2 + // 0b11011000 == 0xd8 + const __m256 shuffledSum = _mm256_castpd_ps(_mm256_permute4x64_pd(_mm256_castps_pd(partialSum), 0xd8)); + v.m_xyzw = _mm_hadd_ps(_mm256_extractf128_ps(shuffledSum, 0), _mm256_extractf128_ps(shuffledSum, 1)); + return v; +} + +Q_ALWAYS_INLINE Vector4D operator*(const Matrix4x4_AVX2 &matrix, const Vector4D &vector) +{ + const Matrix4x4_AVX2 transposed = matrix.transposed(); + return vector * transposed; +} + +Q_ALWAYS_INLINE Vector3D operator*(const Vector3D &vector, const Matrix4x4_AVX2 &matrix) +{ + const __m128 vec4 = _mm_set_ps(1.0f, vector.z(), vector.y(), vector.x()); + const __m256 vecMultiplier = _mm256_broadcast_ps(&vec4); + // a1 a2 a3 a4 b1 b2 b3 b4, c1 c2 c3 c4 d1 d2 d3 d4 + // a1 + a2, a3 + a4, c1 + c2, c3 + c4 + // b1 + b2, b3 + b3, d1 + d2, d3 + d4 + const __m256 partialSum = _mm256_hadd_ps(_mm256_mul_ps(matrix.m_col12, vecMultiplier), + _mm256_mul_ps(matrix.m_col34, vecMultiplier)); + + // _mm256_permute4x64_pd is AVX2 + // 0b11011000 == 0xd8 + const __m256 shuffledSum = _mm256_castpd_ps(_mm256_permute4x64_pd(_mm256_castps_pd(partialSum), 0xd8)); + // a12 + a34, b12 + b34, c12 + c34, d12 + d34 + const __m128 result = _mm_hadd_ps(_mm256_extractf128_ps(shuffledSum, 0), _mm256_extractf128_ps(shuffledSum, 1)); + // 0b11111111 = 0xff + const __m128 divisor = _mm_shuffle_ps(result, result, 0xff); + + Vector3D v(Qt::Uninitialized); + v.m_xyzw = _mm_div_ps(result, divisor);; + return v; +} + +Q_ALWAYS_INLINE Vector3D operator*(const Matrix4x4_AVX2 &matrix, const Vector3D &vector) +{ + const Matrix4x4_AVX2 transposed = matrix.transposed(); + return vector * transposed; +} + +} // Qt3DCore + +Q_DECLARE_TYPEINFO(Qt3DCore::Matrix4x4_AVX2, Q_PRIMITIVE_TYPE); + +QT_END_NAMESPACE + +Q_DECLARE_METATYPE(Qt3DCore::Matrix4x4_AVX2) + +#endif // QT_COMPILER_SUPPORTS_AVX + +#endif // QT3DCORE_MATRIX4X4_AVX2_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/matrix4x4_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/matrix4x4_p.h new file mode 100644 index 0000000..d100d3d --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/matrix4x4_p.h @@ -0,0 +1,98 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Paul Lemire +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_MATRIX4X4_P_H +#define QT3DCORE_MATRIX4X4_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt3D API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + + +// We check if sse or avx config option was enabled as it could +// be disabled even though a given platform supports SSE2 or AVX2 instructions +#if QT_CONFIG(qt3d_simd_avx2) && defined(__AVX2__) && defined(QT_COMPILER_SUPPORTS_AVX2) + +#include + +QT_BEGIN_NAMESPACE +using Matrix4x4 = Qt3DCore::Matrix4x4_AVX2; +QT_END_NAMESPACE + +#elif QT_CONFIG(qt3d_simd_sse2) && defined(__SSE2__) && defined(QT_COMPILER_SUPPORTS_SSE2) + +#include + +QT_BEGIN_NAMESPACE +using Matrix4x4 = Qt3DCore::Matrix4x4_SSE; +QT_END_NAMESPACE + +#else + +#include + +QT_BEGIN_NAMESPACE +using Matrix4x4 = QMatrix4x4; +QT_END_NAMESPACE + +#endif + +template +Q_ALWAYS_INLINE QMatrix4x4 convertToQMatrix4x4(const UsingType &v) +{ + return v.toQMatrix4x4(); +} + +template<> +Q_ALWAYS_INLINE QMatrix4x4 convertToQMatrix4x4(const QMatrix4x4 &v) +{ + return v; +} + +#endif // QT3DCORE_MATRIX4X4_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/matrix4x4_sse_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/matrix4x4_sse_p.h new file mode 100644 index 0000000..8ba7f8e --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/matrix4x4_sse_p.h @@ -0,0 +1,502 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Paul Lemire +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_MATRIX4X4_SSE_P_H +#define QT3DCORE_MATRIX4X4_SSE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt3D API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include + +#ifdef QT_COMPILER_SUPPORTS_SSE2 + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class Matrix4x4_SSE +{ +public: + + Q_ALWAYS_INLINE Matrix4x4_SSE() { setToIdentity(); } + explicit Q_ALWAYS_INLINE Matrix4x4_SSE(Qt::Initialization) {} + + // QMatrix4x4::constData returns in column major order + explicit Q_ALWAYS_INLINE Matrix4x4_SSE(const QMatrix4x4 &mat) + { + // data may not be properly aligned, using unaligned loads + const float *data = mat.constData(); + m_col1 = _mm_loadu_ps(data); + m_col2 = _mm_loadu_ps(data + 4); + m_col3 = _mm_loadu_ps(data + 8); + m_col4 = _mm_loadu_ps(data + 12); + } + + // Assumes data is 16 bytes aligned (and in column major order) + explicit Q_ALWAYS_INLINE Matrix4x4_SSE(float *data) + { + m_col1 = _mm_load_ps(data); + m_col2 = _mm_load_ps(data + 4); + m_col3 = _mm_load_ps(data + 8); + m_col4 = _mm_load_ps(data + 12); + } + + // In (row major) but we store in column major order + explicit Q_ALWAYS_INLINE Matrix4x4_SSE(float m11, float m12, float m13, float m14, + float m21, float m22, float m23, float m24, + float m31, float m32, float m33, float m34, + float m41, float m42, float m43, float m44) + { + m_col1 = _mm_set_ps(m41, m31, m21, m11); + m_col2 = _mm_set_ps(m42, m32, m22, m12); + m_col3 = _mm_set_ps(m43, m33, m23, m13); + m_col4 = _mm_set_ps(m44, m34, m24, m14); + } + + Q_ALWAYS_INLINE void setToIdentity() + { + m_col1 = _mm_set_ss(1.0f); + m_col2 = _mm_set_ps(0.0f, 0.0f, 1.0f, 0.0f); + m_col3 = _mm_set_ps(0.0f, 1.0f, 0.0f, 0.0f); + m_col4 = _mm_set_ps(1.0f, 0.0f, 0.0f, 0.0f); + } + + Q_ALWAYS_INLINE Matrix4x4_SSE operator*(const Matrix4x4_SSE &other) const + { + Matrix4x4_SSE c(Qt::Uninitialized); + + const __m128 c1 = m_col1; + const __m128 c2 = m_col2; + const __m128 c3 = m_col3; + const __m128 c4 = m_col4; + + // c11, c21, c31, c41 + // 1) (m11 x n11), (m11 x n21), (m11 x n31), (m11 x n41) + // 2) (m11 x n11) + (m21 x n12), (m11 x n21) + (m21 x n22), (m11 x n31) + (m21 x n32), (m11 x n41) + (m21 x n42) + // 3) (m11 x n11) + (m21 x n21) + (m31 x n13), (m11 x n21) + (m21 x n22) + (m31 x n 23), (m11 x n31) + (m21 x n32) + (m31 x n33), (m11 x n41) + (m21 x n42) (m31 x n43) + // 4) (m11 x n11) + (m21 x n21) + (m31 x n13) + (m41 x n14), (m11 x n21) + (m21 x n22) + (m31 x n 23) + (m41 x n24), (m11 x n31) + (m21 x n32) + (m31 x n33) + (m41 x n34), (m11 x n41) + (m21 x n42) (m31 x n43) + (m41 x n44) + __m128 tmp = _mm_mul_ps(_mm_set1_ps(other.m11()), c1); + tmp = _mm_add_ps(_mm_mul_ps(_mm_set1_ps(other.m21()), c2), tmp); + tmp = _mm_add_ps(_mm_mul_ps(_mm_set1_ps(other.m31()), c3), tmp); + c.m_col1 = _mm_add_ps(_mm_mul_ps(_mm_set1_ps(other.m41()), c4), tmp); + + // c21, c22, c23, c24 + tmp = _mm_mul_ps(_mm_set1_ps(other.m12()), c1); + tmp = _mm_add_ps(_mm_mul_ps(_mm_set1_ps(other.m22()), c2), tmp); + tmp = _mm_add_ps(_mm_mul_ps(_mm_set1_ps(other.m32()), c3), tmp); + c.m_col2 = _mm_add_ps(_mm_mul_ps(_mm_set1_ps(other.m42()), c4), tmp); + + // c31, c32, c33, c34 + tmp = _mm_mul_ps(_mm_set1_ps(other.m13()), c1); + tmp = _mm_add_ps(_mm_mul_ps(_mm_set1_ps(other.m23()), c2), tmp); + tmp = _mm_add_ps(_mm_mul_ps(_mm_set1_ps(other.m33()), c3), tmp); + c.m_col3 = _mm_add_ps(_mm_mul_ps(_mm_set1_ps(other.m43()), c4), tmp); + + // c41, c42, c43, c44 + tmp = _mm_mul_ps(_mm_set1_ps(other.m14()), c1); + tmp = _mm_add_ps(_mm_mul_ps(_mm_set1_ps(other.m24()), c2), tmp); + tmp = _mm_add_ps(_mm_mul_ps(_mm_set1_ps(other.m34()), c3), tmp); + c.m_col4 = _mm_add_ps(_mm_mul_ps(_mm_set1_ps(other.m44()), c4), tmp); + + return c; + } + + Q_ALWAYS_INLINE Matrix4x4_SSE operator-(const Matrix4x4_SSE &other) const + { + Matrix4x4_SSE c(Qt::Uninitialized); + + c.m_col1 = _mm_sub_ps(m_col1, other.m_col1); + c.m_col2 = _mm_sub_ps(m_col2, other.m_col2); + c.m_col3 = _mm_sub_ps(m_col3, other.m_col3); + c.m_col4 = _mm_sub_ps(m_col4, other.m_col4); + + return c; + } + + Q_ALWAYS_INLINE Matrix4x4_SSE operator+(const Matrix4x4_SSE &other) const + { + Matrix4x4_SSE c(Qt::Uninitialized); + + c.m_col1 = _mm_add_ps(m_col1, other.m_col1); + c.m_col2 = _mm_add_ps(m_col2, other.m_col2); + c.m_col3 = _mm_add_ps(m_col3, other.m_col3); + c.m_col4 = _mm_add_ps(m_col4, other.m_col4); + + return c; + } + + Q_ALWAYS_INLINE Matrix4x4_SSE &operator*=(const Matrix4x4_SSE &other) + { + *this = *this * other; + return *this; + } + + Q_ALWAYS_INLINE Matrix4x4_SSE &operator-=(const Matrix4x4_SSE &other) + { + *this = *this - other; + return *this; + } + + Q_ALWAYS_INLINE Matrix4x4_SSE &operator+=(const Matrix4x4_SSE &other) + { + *this = *this + other; + return *this; + } + + Q_ALWAYS_INLINE Matrix4x4_SSE transposed() const + { + Matrix4x4_SSE c(Qt::Uninitialized); + + // ~113 instructions + // 0b11011101 == 0xdd + // 0b10001000 == 0x88 + const __m128 tmp1 = _mm_shuffle_ps(m_col1, m_col2, 0xdd); + const __m128 tmp2 = _mm_shuffle_ps(m_col1, m_col2, 0x88); + const __m128 tmp3 = _mm_shuffle_ps(m_col3, m_col4, 0xdd); + const __m128 tmp4 = _mm_shuffle_ps(m_col3, m_col4, 0x88); + c.m_col1 = _mm_shuffle_ps(tmp2, tmp4, 0x88); + c.m_col2 = _mm_shuffle_ps(tmp1, tmp3, 0x88); + c.m_col3 = _mm_shuffle_ps(tmp2, tmp4, 0xdd); + c.m_col4 = _mm_shuffle_ps(tmp1, tmp3, 0xdd); + + return c; + } + + Q_ALWAYS_INLINE Matrix4x4_SSE inverted() const + { + // TO DO: Optimize + const QMatrix4x4 mat = toQMatrix4x4(); + return Matrix4x4_SSE(mat.inverted()); + } + + Q_ALWAYS_INLINE bool operator==(const Matrix4x4_SSE &other) const + { + // 0b1111 == 0xf + return (_mm_movemask_ps(_mm_cmpeq_ps(m_col1, other.m_col1)) == 0xf && + _mm_movemask_ps(_mm_cmpeq_ps(m_col2, other.m_col2)) == 0xf && + _mm_movemask_ps(_mm_cmpeq_ps(m_col3, other.m_col3)) == 0xf && + _mm_movemask_ps(_mm_cmpeq_ps(m_col4, other.m_col4)) == 0xf); + } + + Q_ALWAYS_INLINE bool operator!=(const Matrix4x4_SSE &other) const + { + return !(*this == other); + } + + Q_ALWAYS_INLINE float m11() const { return _mm_cvtss_f32(m_col1); } + Q_ALWAYS_INLINE float m12() const { return _mm_cvtss_f32(m_col2); } + Q_ALWAYS_INLINE float m13() const { return _mm_cvtss_f32(m_col3); } + Q_ALWAYS_INLINE float m14() const { return _mm_cvtss_f32(m_col4); } + + Q_ALWAYS_INLINE float m21() const + { + // 0b01010101 = 0x55 + return _mm_cvtss_f32(_mm_shuffle_ps(m_col1, m_col1, 0x55)); + } + Q_ALWAYS_INLINE float m22() const + { + // 0b01010101 = 0x55 + return _mm_cvtss_f32(_mm_shuffle_ps(m_col2, m_col2, 0x55)); + } + Q_ALWAYS_INLINE float m23() const + { + // 0b01010101 = 0x55 + return _mm_cvtss_f32(_mm_shuffle_ps(m_col3, m_col3, 0x55)); + } + Q_ALWAYS_INLINE float m24() const + { + // 0b01010101 = 0x55 + return _mm_cvtss_f32(_mm_shuffle_ps(m_col4, m_col4, 0x55)); + } + + Q_ALWAYS_INLINE float m31() const + { + // 0b10101010 = 0xaa + return _mm_cvtss_f32(_mm_shuffle_ps(m_col1, m_col1, 0xaa)); + } + Q_ALWAYS_INLINE float m32() const + { + // 0b10101010 = 0xaa + return _mm_cvtss_f32(_mm_shuffle_ps(m_col2, m_col2, 0xaa)); + } + Q_ALWAYS_INLINE float m33() const + { + // 0b10101010 = 0xaa + return _mm_cvtss_f32(_mm_shuffle_ps(m_col3, m_col3, 0xaa)); + } + Q_ALWAYS_INLINE float m34() const + { + // 0b10101010 = 0xaa + return _mm_cvtss_f32(_mm_shuffle_ps(m_col4, m_col4, 0xaa)); + } + + Q_ALWAYS_INLINE float m41() const + { + // 0b11111111 = 0xff + return _mm_cvtss_f32(_mm_shuffle_ps(m_col1, m_col1, 0xff)); + } + Q_ALWAYS_INLINE float m42() const + { + // 0b11111111 = 0xff + return _mm_cvtss_f32(_mm_shuffle_ps(m_col2, m_col2, 0xff)); + } + Q_ALWAYS_INLINE float m43() const + { + // 0b11111111 = 0xff + return _mm_cvtss_f32(_mm_shuffle_ps(m_col3, m_col3, 0xff)); + } + Q_ALWAYS_INLINE float m44() const + { + // 0b11111111 = 0xff + return _mm_cvtss_f32(_mm_shuffle_ps(m_col4, m_col4, 0xff)); + } + + Q_ALWAYS_INLINE Vector4D row(int index) const + { + switch (index) { + case 0: + return Vector4D(m11(), m12(), m13(), m14()); + case 1: + return Vector4D(m21(), m22(), m23(), m24()); + case 2: + return Vector4D(m31(), m32(), m33(), m34()); + case 3: + return Vector4D(m41(), m42(), m43(), m44()); + default: + Q_UNREACHABLE(); + return Vector4D(); + } + } + + Q_ALWAYS_INLINE Vector4D column(int index) const + { + Vector4D c(Qt::Uninitialized); + switch (index) { + case 0: + c.m_xyzw = m_col1; + break; + case 1: + c.m_xyzw = m_col2; + break; + case 2: + c.m_xyzw = m_col3; + break; + case 3: + c.m_xyzw = m_col4; + break; + default: + Q_UNREACHABLE(); + return Vector4D(); + } + return c; + } + + Q_ALWAYS_INLINE QMatrix4x4 toQMatrix4x4() const { return QMatrix4x4(m11(), m12(), m13(), m14(), + m21(), m22(), m23(), m24(), + m31(), m32(), m33(), m34(), + m41(), m42(), m43(), m44()); } + + Q_ALWAYS_INLINE Vector3D_SSE map(const Vector3D_SSE &point) const + { + return *this * point; + } + + Q_ALWAYS_INLINE Vector4D_SSE map(const Vector4D_SSE &point) const + { + return *this * point; + } + + Q_ALWAYS_INLINE Vector3D_SSE mapVector(const Vector3D_SSE &vector) const + { + const Vector3D_SSE row1(m11(), m12(), m13()); + const Vector3D_SSE row2(m21(), m22(), m23()); + const Vector3D_SSE row3(m31(), m32(), m33()); + + return Vector3D(Vector3D_SSE::dotProduct(row1, vector), + Vector3D_SSE::dotProduct(row2, vector), + Vector3D_SSE::dotProduct(row3, vector)); + } + + friend Q_ALWAYS_INLINE Vector4D operator*(const Vector4D &vector, const Matrix4x4_SSE &matrix); + friend Q_ALWAYS_INLINE Vector4D operator*(const Matrix4x4_SSE &matrix, const Vector4D &vector); + + friend Q_ALWAYS_INLINE Vector3D operator*(const Vector3D &vector, const Matrix4x4_SSE &matrix); + friend Q_ALWAYS_INLINE Vector3D operator*(const Matrix4x4_SSE &matrix, const Vector3D &vector); + + friend QT3DCORE_PRIVATE_EXPORT QDebug operator<<(QDebug dbg, const Matrix4x4_SSE &m); +private: + // Internally we will store the matrix as indicated below + // Q_DECL_ALIGN(16) // aligned on 16 bytes boundary for SSE (column major) + // struct + // { + // float m_m11, m_m21, m_m31, m_m41; + // float m_m12, m_m22, m_m32, m_m42; + // float m_m13, m_m23, m_m33, m_m43; + // float m_m14, m_m24, m_m34, m_m44; + // }; + // struct + // { + // float m[16]; + // }; + __m128 m_col1; + __m128 m_col2; + __m128 m_col3; + __m128 m_col4; +}; + +Q_ALWAYS_INLINE Vector4D operator*(const Vector4D &vector, const Matrix4x4_SSE &matrix) +{ + const __m128 vCol1 = _mm_mul_ps(matrix.m_col1, vector.m_xyzw); + const __m128 vCol2 = _mm_mul_ps(matrix.m_col2, vector.m_xyzw); + const __m128 vCol3 = _mm_mul_ps(matrix.m_col3, vector.m_xyzw); + const __m128 vCol4 = _mm_mul_ps(matrix.m_col4, vector.m_xyzw); + + + // 0b01000100 == 0x44 + // 0b11101110 == 0xee + + // vCol1.x, vCol1.y, vCol2.x, vCol2.y + __m128 tmp1 = _mm_shuffle_ps(vCol1, vCol2, 0x44); + // vCol1.z, vCol1.w, vCol2.z, vCol2.w + __m128 tmp2 = _mm_shuffle_ps(vCol1, vCol2, 0xee); + + // vCol1.x + vCol1.z, vCol1.y + vCol1.w, vCol2.x + vCol2.z, vCol2.y + vCol2.w, + const __m128 tmpSum01 = _mm_add_ps(tmp1, tmp2); + + // vCol3.x, vCol3.y, vCol4.x, vCol4.y + tmp1 = _mm_shuffle_ps(vCol3, vCol4, 0x44); + // vCol3.z, vCol3.w, vCol4.z, vCol4.w + tmp2 = _mm_shuffle_ps(vCol3, vCol4, 0xee); + + // vCol3.x + vCol3.z, vCol3.y + vCol3.w, vCol4.x + vCol4.z, vCol4.y + vCol4.w, + const __m128 tmpSum02 = _mm_add_ps(tmp1, tmp2); + + // 0b10001000 == 0x88 + // 0b11011101 == 0xdd + + // vCol1.x + vCol1.z, vCol2.x + vCol2.z, vCol3.x + vCol3.z, vCol4.x + vCol4.z, + tmp1 = _mm_shuffle_ps(tmpSum01, tmpSum02, 0x88); + // vCol1.y + vCol1.w, vCol2.y + vCol2.w, vCol3.y + vCol3.w, vCol4.y + vCol4.w, + tmp2 = _mm_shuffle_ps(tmpSum01, tmpSum02, 0xdd); + + Vector4D v(Qt::Uninitialized); + v.m_xyzw = _mm_add_ps(tmp1, tmp2); + return v; +} + +Q_ALWAYS_INLINE Vector4D operator*(const Matrix4x4_SSE &matrix, const Vector4D &vector) +{ + const Matrix4x4_SSE transposed = matrix.transposed(); + return vector * transposed; +} + +Q_ALWAYS_INLINE Vector3D operator*(const Vector3D &vector, const Matrix4x4_SSE &matrix) +{ + const __m128 vec4 = _mm_set_ps(1.0f, vector.z(), vector.y(), vector.x()); + + const __m128 vCol1 = _mm_mul_ps(matrix.m_col1, vec4); + const __m128 vCol2 = _mm_mul_ps(matrix.m_col2, vec4); + const __m128 vCol3 = _mm_mul_ps(matrix.m_col3, vec4); + const __m128 vCol4 = _mm_mul_ps(matrix.m_col4, vec4); + + // 0b01000100 == 0x44 + // 0b11101110 == 0xee + + // vCol1.x, vCol1.y, vCol2.x, vCol2.y + __m128 tmp1 = _mm_shuffle_ps(vCol1, vCol2, 0x44); + // vCol1.z, vCol1.w, vCol2.z, vCol2.w + __m128 tmp2 = _mm_shuffle_ps(vCol1, vCol2, 0xee); + + // vCol1.x + vCol1.z, vCol1.y + vCol1.w, vCol2.x + vCol2.z, vCol2.y + vCol2.w, + const __m128 tmpSum01 = _mm_add_ps(tmp1, tmp2); + + // vCol3.x, vCol3.y, vCol4.x, vCol4.y + tmp1 = _mm_shuffle_ps(vCol3, vCol4, 0x44); + // vCol3.z, vCol3.w, vCol4.z, vCol4.w + tmp2 = _mm_shuffle_ps(vCol3, vCol4, 0xee); + + // vCol3.x + vCol3.z, vCol3.y + vCol3.w, vCol4.x + vCol4.z, vCol4.y + vCol4.w, + const __m128 tmpSum02 = _mm_add_ps(tmp1, tmp2); + + // 0b10001000 == 0x88 + // 0b11011101 == 0xdd + + // vCol1.x + vCol1.z, vCol2.x + vCol2.z, vCol3.x + vCol3.z, vCol4.x + vCol4.z, + tmp1 = _mm_shuffle_ps(tmpSum01, tmpSum02, 0x88); + // vCol1.y + vCol1.w, vCol2.y + vCol2.w, vCol3.y + vCol3.w, vCol4.y + vCol4.w, + tmp2 = _mm_shuffle_ps(tmpSum01, tmpSum02, 0xdd); + + const __m128 result = _mm_add_ps(tmp1, tmp2); + // 0b11111111 = 0xff + const __m128 divisor = _mm_shuffle_ps(result, result, 0xff); + Vector3D v(Qt::Uninitialized); + v.m_xyzw = _mm_div_ps(result, divisor); + return v; +} + +QT3DCORE_PRIVATE_EXPORT Q_ALWAYS_INLINE Vector3D operator*(const Matrix4x4_SSE &matrix, const Vector3D &vector) +{ + const Matrix4x4_SSE transposed = matrix.transposed(); + return vector * transposed; +} + +} // Qt3DCore + + +Q_DECLARE_TYPEINFO(Qt3DCore::Matrix4x4_SSE, Q_PRIMITIVE_TYPE); + +QT_END_NAMESPACE + +Q_DECLARE_METATYPE(Qt3DCore::Matrix4x4_SSE) + +#endif // QT_COMPILER_SUPPORTS_SSE2 + +#endif // QT3DCORE_MATRIX4X4_SSE_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/nullservices_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/nullservices_p.h new file mode 100644 index 0000000..30dc2d5 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/nullservices_p.h @@ -0,0 +1,92 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_NULLSERVICES_P_H +#define QT3DCORE_NULLSERVICES_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class NullSystemInformationService : public QSystemInformationService +{ +public: + NullSystemInformationService() + : QSystemInformationService(QStringLiteral("Null System Information Service")) + {} + ~NullSystemInformationService() {} + + QStringList aspectNames() const final { return QStringList(); } + int threadPoolThreadCount() const final { return 0; } +}; + + +class NullOpenGLInformationService : public QOpenGLInformationService +{ +public: + NullOpenGLInformationService() + : QOpenGLInformationService(QStringLiteral("Null OpenGL Information Service")) + {} + ~NullOpenGLInformationService() {} + + QSurfaceFormat format() const final { return QSurfaceFormat(); } +}; + +} // namespace Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3DCORE_NULLSERVICES_P_H + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/propertychangehandler_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/propertychangehandler_p.h new file mode 100644 index 0000000..ff8d6d5 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/propertychangehandler_p.h @@ -0,0 +1,131 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klarälvdalens Datakonsult AB, a KDAB Group company, info@kdab.com, author Milian Wolff +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtWebChannel module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef SIGNALHANDLER_H +#define SIGNALHANDLER_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QT3DCORESHARED_EXPORT PropertyChangeHandlerBase : public QObject +{ + Q_OBJECT +public: + PropertyChangeHandlerBase(QObject *parent = nullptr); + + /** + * Connect to the change signal of @p property in @p object. + */ + void connectToPropertyChange(const QObject *object, int propertyIndex); + + /** + * Disconnect from the change signal of @p property in @p object. + */ + void disconnectFromPropertyChange(const QObject *object, int propertyIndex); +}; + +/** + * The property change handler is similar to QSignalSpy, but geared towards the usecase of Qt3D. + * + * It allows connecting to any number of property change signals of the receiver object and forwards + * the signal invocations to the Receiver by calling its propertyChanged function. + */ +template +class PropertyChangeHandler : public PropertyChangeHandlerBase +{ +public: + PropertyChangeHandler(Receiver *receiver, QObject *parent = nullptr); + + /** + * @internal + * + * Custom implementation of qt_metacall which calls propertyChanged() on the receiver for + * connected signals. + */ + int qt_metacall(QMetaObject::Call call, int methodId, void **args) override; + +private: + Receiver *m_receiver; +}; + +template +PropertyChangeHandler::PropertyChangeHandler(Receiver *receiver, QObject *parent) + : PropertyChangeHandlerBase(parent) + , m_receiver(receiver) +{ +} + +template +int PropertyChangeHandler::qt_metacall(QMetaObject::Call call, int methodId, void **args) +{ + methodId = QObject::qt_metacall(call, methodId, args); + if (methodId < 0) + return methodId; + + if (call == QMetaObject::InvokeMetaMethod) { + m_receiver->propertyChanged(methodId); + return -1; + } + return methodId; +} + +} + +QT_END_NAMESPACE + +#endif // SIGNALHANDLER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qabstractaspect_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qabstractaspect_p.h new file mode 100644 index 0000000..6b0490d --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qabstractaspect_p.h @@ -0,0 +1,159 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QABSTRACTASPECT_P_H +#define QT3DCORE_QABSTRACTASPECT_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +#include +#include +#include +#include +#include +#include + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QAbstractAspect; +class QBackendNode; +class QEntity; +class QAspectManager; +class QAbstractAspectJobManager; +class QChangeArbiter; +class QServiceLocator; + +namespace Debug { + +class QT3DCORE_PRIVATE_EXPORT AsynchronousCommandReply : public QObject +{ + Q_OBJECT +public: + explicit AsynchronousCommandReply(const QString &commandName, QObject *parent = nullptr); + + inline QByteArray data() const { return m_data; } + inline QString commandName() const { return m_commandName; } + inline bool isFinished() const { return m_finished; } + + void setFinished(bool finished); + void setData(const QByteArray &data); + +Q_SIGNALS: + void finished(AsynchronousCommandReply *reply); + +private: + QByteArray m_data; + QString m_commandName; + bool m_finished; +}; + +} // Debug + +class QT3DCORE_PRIVATE_EXPORT QAbstractAspectPrivate + : public QObjectPrivate + , public QBackendNodeFactory + , public QSceneObserverInterface + , public QAspectJobProviderInterface +{ +public: + QAbstractAspectPrivate(); + ~QAbstractAspectPrivate(); + + void setRootAndCreateNodes(QEntity *rootObject, const QVector &changes); + + QServiceLocator *services() const; + QAbstractAspectJobManager *jobManager() const; + + QVector jobsToExecute(qint64 time) override; + + QBackendNode *createBackendNode(const QNodeCreatedChangeBasePtr &change) const override; + void clearBackendNode(const QNodeDestroyedChangePtr &change) const; + + void sceneNodeAdded(Qt3DCore::QSceneChangePtr &e) override; + void sceneNodeRemoved(Qt3DCore::QSceneChangePtr &e) override; + + virtual void onEngineAboutToShutdown(); + + // TODO: Make these public in 5.8 + template + void unregisterBackendType(); + void unregisterBackendType(const QMetaObject &mo); + + Q_DECLARE_PUBLIC(QAbstractAspect) + + QEntity *m_root; + QNodeId m_rootId; + QAspectManager *m_aspectManager; + QAbstractAspectJobManager *m_jobManager; + QChangeArbiter *m_arbiter; + QHash m_backendCreatorFunctors; + QMutex m_singleShotMutex; + QVector m_singleShotJobs; + + static QAbstractAspectPrivate *get(QAbstractAspect *aspect); +}; + +template +void QAbstractAspectPrivate::unregisterBackendType() +{ + unregisterBackendType(Frontend::staticMetaObject); +} + +} // Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3DCORE_QABSTRACTASPECT_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qabstractaspectjobmanager_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qabstractaspectjobmanager_p.h new file mode 100644 index 0000000..5c4e9f6 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qabstractaspectjobmanager_p.h @@ -0,0 +1,80 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QABSTRACTASPECTJOBMANAGER_P_H +#define QABSTRACTASPECTJOBMANAGER_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QT3DCORESHARED_EXPORT QAbstractAspectJobManager : public QObject +{ + Q_OBJECT +public: + explicit QAbstractAspectJobManager(QObject *p = nullptr); + + virtual void initialize() {} + virtual void enqueueJobs(const QVector &jobQueue) = 0; + virtual void waitForAllJobs() = 0; + + // Callback signature for running SynchronizedJobs + typedef void (*JobFunction)(void *); + virtual void waitForPerThreadFunction(JobFunction func, void *arg) = 0; +}; + +} // namespace Qt3DCore + +QT_END_NAMESPACE + +#endif // QABSTRACTASPECTJOBMANAGER_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qabstractframeadvanceservice_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qabstractframeadvanceservice_p.h new file mode 100644 index 0000000..dac72a9 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qabstractframeadvanceservice_p.h @@ -0,0 +1,83 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Paul Lemire +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QABSTRACTFRAMEADVANCESERVICE_P_H +#define QT3DCORE_QABSTRACTFRAMEADVANCESERVICE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QAbstractFrameAdvanceServicePrivate; + +class QT3DCORESHARED_EXPORT QAbstractFrameAdvanceService : public QAbstractServiceProvider +{ + Q_OBJECT +public: + virtual qint64 waitForNextFrame() = 0; + virtual void start() = 0; + virtual void stop() = 0; + +protected: + QAbstractFrameAdvanceService(const QString &description = QString()); + QAbstractFrameAdvanceService(QAbstractFrameAdvanceServicePrivate &dd); +}; + +} // Qt3D + +QT_END_NAMESPACE + +#endif // QT3DCORE_QABSTRACTFRAMEADVANCESERVICE_P_H + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qabstractframeadvanceservice_p_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qabstractframeadvanceservice_p_p.h new file mode 100644 index 0000000..c49586b --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qabstractframeadvanceservice_p_p.h @@ -0,0 +1,76 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Paul Lemire +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QABSTRACTFRAMEADVANCESERVICE_P_P_H +#define QT3DCORE_QABSTRACTFRAMEADVANCESERVICE_P_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QAbstractFrameAdvanceServicePrivate : public QAbstractServiceProviderPrivate +{ +public: + QAbstractFrameAdvanceServicePrivate(const QString &description) + : QAbstractServiceProviderPrivate(QServiceLocator::FrameAdvanceService, description) + {} +}; + +} + +QT_END_NAMESPACE + +#endif // QT3DCORE_QABSTRACTFRAMEADVANCESERVICE_P_P_H + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qabstractnodefactory_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qabstractnodefactory_p.h new file mode 100644 index 0000000..dbe0adf --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qabstractnodefactory_p.h @@ -0,0 +1,88 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd and/or its subsidiary(-ies). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QABSTRACTNODEFACTORY_P_H +#define QABSTRACTNODEFACTORY_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QT3DCORE_PRIVATE_EXPORT QAbstractNodeFactory +{ +public: + virtual ~QAbstractNodeFactory(); + + virtual QNode *createNode(const char *type) = 0; + + static void registerNodeFactory(QAbstractNodeFactory *factory); + static QVector nodeFactories(); + + template static T *createNode(const char *type) + { + const auto factories = QAbstractNodeFactory::nodeFactories(); + for (QAbstractNodeFactory *f : factories) { + QNode *n = f->createNode(type); + if (n) + return qobject_cast(n); + } + return new T; + } +}; + +} // namespace Qt3DCore + +QT_END_NAMESPACE + +#endif // QABSTRACTNODEFACTORY_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qabstractserviceprovider_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qabstractserviceprovider_p.h new file mode 100644 index 0000000..cef6ef0 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qabstractserviceprovider_p.h @@ -0,0 +1,83 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QABSTRACTSERVICEPROVIDER_P_H +#define QT3DCORE_QABSTRACTSERVICEPROVIDER_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QAbstractServiceProviderPrivate : public QObjectPrivate +{ +public: + explicit QAbstractServiceProviderPrivate(int type, const QString &description = QString()) + : QObjectPrivate() + , m_type(type) + , m_description(description) + {} + + Q_DECLARE_PUBLIC(QAbstractServiceProvider) + + int m_type; + QString m_description; +}; + +} // namespace Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3DCORE_QABSTRACTSERVICEPROVIDER_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qabstractskeleton_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qabstractskeleton_p.h new file mode 100644 index 0000000..51d57f8 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qabstractskeleton_p.h @@ -0,0 +1,81 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QABSTRACTSKELETON_P_H +#define QT3DCORE_QABSTRACTSKELETON_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QAbstractSkeletonPrivate : public Qt3DCore::QNodePrivate +{ +public: + QAbstractSkeletonPrivate(); + + void setJointCount(int jointCount); + + Q_DECLARE_PUBLIC(QAbstractSkeleton) + static const QAbstractSkeletonPrivate *get(const QAbstractSkeleton *q); + + QSkeletonCreatedChangeBase::SkeletonType m_type; + + int m_jointCount; +}; + +} // namespace Qt3DCore + + +QT_END_NAMESPACE + +#endif // QT3DCORE_QABSTRACTSKELETON_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qarmature_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qarmature_p.h new file mode 100644 index 0000000..1fc241d --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qarmature_p.h @@ -0,0 +1,83 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QARMATURE_P_H +#define QT3DCORE_QARMATURE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QAbstractSkeleton; + +class QArmaturePrivate : public Qt3DCore::QComponentPrivate +{ +public: + QArmaturePrivate(); + + Q_DECLARE_PUBLIC(QArmature) + + QAbstractSkeleton *m_skeleton; +}; + +struct QArmatureData +{ + QNodeId skeletonId; +}; + +} // namespace Qt3DCore + + +QT_END_NAMESPACE + +#endif // QT3DCORE_QARMATURE_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qaspectengine_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qaspectengine_p.h new file mode 100644 index 0000000..6b0aae9 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qaspectengine_p.h @@ -0,0 +1,118 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QASPECTENGINE_P_H +#define QT3DCORE_QASPECTENGINE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QEntity; +class QNode; +class QAspectEngine; +class QAspectThread; +class QPostman; +class QScene; + +#if QT_CONFIG(qt3d_profile_jobs) +namespace Debug { +class AspectCommandDebugger; +} // Debug +#endif + +class QT3DCORE_PRIVATE_EXPORT QAspectEnginePrivate : public QObjectPrivate +{ +public: + QAspectEnginePrivate(); + ~QAspectEnginePrivate(); + + Q_DECLARE_PUBLIC(QAspectEngine) + + QAspectFactory m_factory; + QAspectThread *m_aspectThread; + QPostman *m_postman; + QScene *m_scene; + QSharedPointer m_root; + QVector m_aspects; + QHash m_namedAspects; + bool m_initialized; + +#if QT_CONFIG(qt3d_profile_jobs) + Debug::AspectCommandDebugger *m_commandDebugger; +#endif + + void initialize(); + void shutdown(); + + void exitSimulationLoop(); + + void initNodeTree(QNode *node); + void initNode(QNode *node); + void initEntity(QEntity *entity); + + void generateCreationChanges(QNode *rootNode); + QVector m_creationChanges; + + static QAspectEnginePrivate *get(QAspectEngine *engine); +}; + +} // Qt3D + +QT_END_NAMESPACE + +#endif // QT3DCORE_QASPECTENGINE_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qaspectfactory_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qaspectfactory_p.h new file mode 100644 index 0000000..67b5e0b --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qaspectfactory_p.h @@ -0,0 +1,105 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QASPECTFACTORY_P_H +#define QT3DCORE_QASPECTFACTORY_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +struct QMetaObject; +class QObject; + +namespace Qt3DCore { + +class QAbstractAspect; + +class QT3DCORE_PRIVATE_EXPORT QAspectFactory +{ +public: + typedef QAbstractAspect *(*CreateFunction)(QObject *); + + QAspectFactory(); + QAspectFactory(const QAspectFactory &other); + ~QAspectFactory(); + QAspectFactory &operator=(const QAspectFactory &other); +#ifdef Q_COMPILER_RVALUE_REFS + QAspectFactory &operator=(QAspectFactory &&other) Q_DECL_NOTHROW + { + m_factories.swap(other.m_factories); + m_aspectNames.swap(other.m_aspectNames); + return *this; + } +#endif + + inline void swap(QAspectFactory &other) Q_DECL_NOTHROW + { + m_factories.swap(other.m_factories); + m_aspectNames.swap(other.m_aspectNames); + } + + QList availableFactories() const; + QAbstractAspect *createAspect(const QLatin1String &aspect, QObject *parent = 0) const; + QLatin1String aspectName(QAbstractAspect *aspect) const; + +private: + QHash m_factories; + QHash m_aspectNames; +}; + +} // namespace Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3DCORE_QASPECTFACTORY_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qaspectjob_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qaspectjob_p.h new file mode 100644 index 0000000..ff70844 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qaspectjob_p.h @@ -0,0 +1,140 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QASPECTJOB_P_H +#define QT3DCORE_QASPECTJOB_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QAspectJob; + +#if QT_CONFIG(qt3d_profile_jobs) +struct FrameHeader +{ + FrameHeader() + : frameId(0) + , jobCount(0) + , frameType(WorkerJob) + { + } + + enum FrameType { + WorkerJob = 0, + Submission + }; + + quint32 frameId; + quint16 jobCount; + quint16 frameType; // Submission or worker job +}; + +union JobId +{ + quint32 typeAndInstance[2]; + quint64 id; +}; + +struct JobRunStats +{ + JobRunStats() + { + jobId.id = 0; + } + + qint64 startTime; + qint64 endTime; + JobId jobId; + // QAspectJob subclasses should properly populate the jobId + quint64 threadId; +}; +#endif + +class QT3DCORE_PRIVATE_EXPORT QAspectJobPrivate +{ +public: + QAspectJobPrivate(); + + static QAspectJobPrivate *get(QAspectJob *job); + + QVector > m_dependencies; +#if QT_CONFIG(qt3d_profile_jobs) + JobRunStats m_stats; +#endif +}; + +} // Qt3D + +#if QT_CONFIG(qt3d_profile_jobs) + +#include + +#define SET_JOB_RUN_STAT_TYPE(job, type, instance) \ + Qt3DCore::QAspectJobPrivate::get(job)->m_stats.jobId.typeAndInstance[0] = type; \ + Qt3DCore::QAspectJobPrivate::get(job)->m_stats.jobId.typeAndInstance[1] = instance; + +#else + +#define SET_JOB_RUN_STAT_TYPE(job, type, instance) \ + Q_UNUSED(job) \ + Q_UNUSED(type) \ + Q_UNUSED(instance) + +#endif + +QT_END_NAMESPACE + +#endif // QT3DCORE_QASPECTJOB_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qaspectjobmanager_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qaspectjobmanager_p.h new file mode 100644 index 0000000..d598600 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qaspectjobmanager_p.h @@ -0,0 +1,90 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QASPECTJOBMANAGER_P_H +#define QT3DCORE_QASPECTJOBMANAGER_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QThreadPooler; +class DependencyHandler; + +class QT3DCORE_PRIVATE_EXPORT QAspectJobManager : public QAbstractAspectJobManager +{ + Q_OBJECT +public: + explicit QAspectJobManager(QObject *parent = 0); + ~QAspectJobManager(); + + void initialize() override; + + void enqueueJobs(const QVector &jobQueue) override; + + void waitForAllJobs() override; + + void waitForPerThreadFunction(JobFunction func, void *arg) override; + +private: + QThreadPooler *m_threadPooler; +}; + +} // namespace Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3DCORE_QASPECTJOBMANAGER_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qaspectjobproviderinterface_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qaspectjobproviderinterface_p.h new file mode 100644 index 0000000..29b44b3 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qaspectjobproviderinterface_p.h @@ -0,0 +1,80 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QASPECTJOBPROVIDERINTERFACE_P_H +#define QT3DCORE_QASPECTJOBPROVIDERINTERFACE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QScheduler; + +class QAspectJobProviderInterface +{ +public: + virtual ~QAspectJobProviderInterface() {} + +private: + virtual QVector jobsToExecute(qint64 time) = 0; + + friend class QScheduler; +}; + +} + +QT_END_NAMESPACE + +#endif // QT3DCORE_QASPECTJOBPROVIDERINTERFACE_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qaspectmanager_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qaspectmanager_p.h new file mode 100644 index 0000000..0a703a7 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qaspectmanager_p.h @@ -0,0 +1,127 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QASPECTMANAGER_P_H +#define QT3DCORE_QASPECTMANAGER_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +class QSurface; + +namespace Qt3DCore { + +class QNode; +class QEntity; +class QScheduler; +class QChangeArbiter; +class QAbstractAspect; +class QAbstractAspectJobManager; +class QSceneObserverInterface; +class QServiceLocator; + +class QT3DCORE_PRIVATE_EXPORT QAspectManager : public QObject +{ + Q_OBJECT +public: + explicit QAspectManager(QObject *parent = 0); + ~QAspectManager(); + + void enterSimulationLoop(); + void exitSimulationLoop(); + + bool isShuttingDown() const; + +public Q_SLOTS: + void initialize(); + void shutdown(); + + void setRootEntity(Qt3DCore::QEntity *root, const QVector &changes); + void registerAspect(Qt3DCore::QAbstractAspect *aspect); + void unregisterAspect(Qt3DCore::QAbstractAspect *aspect); + + void exec(); + void quit(); + +public: + const QVector &aspects() const; + QAbstractAspectJobManager *jobManager() const; + QChangeArbiter *changeArbiter() const; + QServiceLocator *serviceLocator() const; + +private: + QVector m_aspects; + QEntity *m_root; + QVariantMap m_data; + QScheduler *m_scheduler; + QAbstractAspectJobManager *m_jobManager; + QChangeArbiter *m_changeArbiter; + QAtomicInt m_runSimulationLoop; + QAtomicInt m_runMainLoop; + QScopedPointer m_serviceLocator; + QSemaphore m_waitForEndOfSimulationLoop; + QSemaphore m_waitForStartOfSimulationLoop; + QSemaphore m_waitForEndOfExecLoop; + QSemaphore m_waitForQuit; +}; + +} // namespace Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3DCORE_QASPECTMANAGER_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qaspectthread_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qaspectthread_p.h new file mode 100644 index 0000000..8ae9ff8 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qaspectthread_p.h @@ -0,0 +1,88 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QASPECTTHREAD_P_H +#define QT3DCORE_QASPECTTHREAD_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QAspectManager; + +class QAspectThread : public QThread +{ + Q_OBJECT +public: + explicit QAspectThread(QObject *parent = 0); + ~QAspectThread(); + + void waitForStart(Priority priority); + + QAspectManager *aspectManager() const { return m_aspectManager; } + +protected: + void run() override; + +private: + QAspectManager *m_aspectManager; + QSemaphore m_semaphore; +}; + +} // namespace Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3DCORE_QASPECTTHREAD_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qbackendnode_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qbackendnode_p.h new file mode 100644 index 0000000..358b3ab --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qbackendnode_p.h @@ -0,0 +1,96 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QBACKENDNODE_P_H +#define QT3DCORE_QBACKENDNODE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QT3DCORE_PRIVATE_EXPORT QBackendNodePrivate + : public QObserverInterface + , public QObservableInterface +{ +public: + QBackendNodePrivate(QBackendNode::Mode mode); + + void setArbiter(QLockableObserverInterface *arbiter) override; + void notifyObservers(const QSceneChangePtr &e) override; + void sceneChangeEvent(const QSceneChangePtr &e) override; + void setEnabled(bool enabled); + + static QBackendNodePrivate *get(QBackendNode *n); + + Q_DECLARE_PUBLIC(QBackendNode) + QBackendNode *q_ptr; + QBackendNode::Mode m_mode; + + QLockableObserverInterface *m_arbiter; + QNodeId m_peerId; + bool m_enabled; + +private: + Q_DISABLE_COPY(QBackendNodePrivate) +}; + +} // Qt3D + +QT_END_NAMESPACE + +#endif // QT3DCORE_QBACKENDNODE_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qbackendnodefactory_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qbackendnodefactory_p.h new file mode 100644 index 0000000..46e6826 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qbackendnodefactory_p.h @@ -0,0 +1,75 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QBACKENDNODEFACTORY_P_H +#define QT3DCORE_QBACKENDNODEFACTORY_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QBackendNode; + +class QT3DCORE_PRIVATE_EXPORT QBackendNodeFactory +{ +public: + virtual ~QBackendNodeFactory(); + virtual QBackendNode *createBackendNode(const QNodeCreatedChangeBasePtr &change) const = 0; +}; + +} // namespace Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3DCORE_QBACKENDNODEFACTORY_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qboundedcircularbuffer_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qboundedcircularbuffer_p.h new file mode 100644 index 0000000..22299d7 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qboundedcircularbuffer_p.h @@ -0,0 +1,149 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QBOUNDEDCIRCULARBUFFER_P_H +#define QT3DCORE_QBOUNDEDCIRCULARBUFFER_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +template +class QBoundedCircularBuffer +{ +public: + explicit QBoundedCircularBuffer(int capacity_) + : m_free( capacity_ ), + m_used( capacity_ ), + m_buffer( capacity_ ) + { + m_used.acquire(capacity_); + } + + int capacity() const { return m_buffer.capacity(); } + int freeSize() const { return m_free.available(); } + int size() const { return m_used.available(); } + bool isFull() const { return m_free.available() == 0; } + bool isEmpty() const { return m_used.available() == 0; } + + void push_back(const T &value) + { + m_free.acquire(); + QWriteLocker locker(&m_lock); + m_buffer.append(value); + locker.unlock(); + m_used.release(); + } + + void push(const T &t) { push_back(t); } + void append(const T &t) { push_back(t); } + + T pop_front() + { + m_used.acquire(); + QWriteLocker locker(&m_lock); + T value = m_buffer.first(); + m_buffer.remove(0); + locker.unlock(); + m_free.release(); + return value; + } + + T pop() { return pop_front(); } + T takeFirst() { return pop_front(); } + + void clear() + { + QWriteLocker locker(&m_lock); + m_buffer.clear(); + int used = m_used.available(); + m_free.release(used); + m_used.acquire(used); + } + + T at(int i) const + { + QReadLocker readLocker(&m_lock); + return m_buffer.at(i); + } + + T front() const + { + QReadLocker readLocker(&m_lock); + return m_buffer.front(); + } + + T back() const + { + QReadLocker readLocker(&m_lock); + return m_buffer.back(); + } + +protected: + Q_DISABLE_COPY(QBoundedCircularBuffer) + + QSemaphore m_free; + QSemaphore m_used; + QCircularBuffer m_buffer; + mutable QReadWriteLock m_lock; +}; + +} //Qt3D + +QT_END_NAMESPACE + +#endif // QT3DCORE_QBOUNDEDCIRCULARBUFFER_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qchangearbiter_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qchangearbiter_p.h new file mode 100644 index 0000000..ef2c07d --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qchangearbiter_p.h @@ -0,0 +1,161 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QCHANGEARBITER_P_H +#define QT3DCORE_QCHANGEARBITER_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QNode; +class QObservableInterface; +class QAbstractAspectJobManager; +class QSceneObserverInterface; +class QAbstractPostman; +class QScene; + + +class QT3DCORE_PRIVATE_EXPORT QAbstractArbiter : public QLockableObserverInterface +{ +public: + virtual QAbstractPostman *postman() const = 0; +}; + +class QT3DCORE_PRIVATE_EXPORT QChangeArbiter final + : public QObject + , public QAbstractArbiter +{ + Q_OBJECT +public: + explicit QChangeArbiter(QObject *parent = 0); + ~QChangeArbiter(); + + void initialize(Qt3DCore::QAbstractAspectJobManager *jobManager); + + void syncChanges(); + + void registerObserver(QObserverInterface *observer, + QNodeId nodeId, + ChangeFlags changeFlags = AllChanges); + void unregisterObserver(QObserverInterface *observer, + QNodeId nodeId); + + void registerSceneObserver(QSceneObserverInterface *observer); + void unregisterSceneObserver(QSceneObserverInterface *observer); + + void sceneChangeEvent(const QSceneChangePtr &e) override; // QLockableObserverInterface impl + void sceneChangeEventWithLock(const QSceneChangePtr &e) override; // QLockableObserverInterface impl + void sceneChangeEventWithLock(const QSceneChangeList &e) override; // QLockableObserverInterface impl + + Q_INVOKABLE void setPostman(Qt3DCore::QAbstractPostman *postman); + Q_INVOKABLE void setScene(Qt3DCore::QScene *scene); + + QAbstractPostman *postman() const final; + QScene *scene() const; + + static void createUnmanagedThreadLocalChangeQueue(void *changeArbiter); + static void destroyUnmanagedThreadLocalChangeQueue(void *changeArbiter); + static void createThreadLocalChangeQueue(void *changeArbiter); + static void destroyThreadLocalChangeQueue(void *changeArbiter); + +protected: + typedef std::vector QChangeQueue; + typedef QPair QObserverPair; + typedef QVector QObserverList; + + void distributeQueueChanges(QChangeQueue *queue); + + QThreadStorage *tlsChangeQueue(); + void appendChangeQueue(QChangeQueue *queue); + void removeChangeQueue(QChangeQueue *queue); + void appendLockingChangeQueue(QChangeQueue *queue); + void removeLockingChangeQueue(QChangeQueue *queue); + +private: + QMutex m_mutex; + QAbstractAspectJobManager *m_jobManager; + + // The lists of observers indexed by observable (QNodeId). + // m_nodeObservations is for observables in the main thread's object tree + QHash m_nodeObservations; + QList m_sceneObservers; + + // Each thread has a TLS ChangeQueue so we never need to lock whilst + // receiving a QSceneChange. + QThreadStorage m_tlsChangeQueue; + + // We store a list of the ChangeQueue's from each thread. This will only + // be accessed from the aspect thread during the syncChanges() phase. + QList m_changeQueues; + QList m_lockingChangeQueues; + QAbstractPostman *m_postman; + QScene *m_scene; +}; + +} // namespace Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3DCORE_QCHANGEARBITER_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qcircularbuffer_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qcircularbuffer_p.h new file mode 100644 index 0000000..e10b723 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qcircularbuffer_p.h @@ -0,0 +1,1330 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QCIRCULARBUFFER_H +#define QT3DCORE_QCIRCULARBUFFER_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include +#include +#include + +#include +#include +#include +#include +#include + + +#ifdef Q_COMPILER_INITIALIZER_LISTS +# include +#endif + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class CircularBufferData : public QSharedData +{ +protected: + CircularBufferData() + : data(nullptr), + capacity(0), + size(0), + first(-1), + last(-1) + {} + + ~CircularBufferData() + { + // Release the raw memory + deallocate(data); + } + + int wraparound(int index) const + { + index = index < capacity ? index : (index - capacity); + Q_ASSERT(index < capacity); // make sure that wrapping around once was enough + return index; + } + + void *allocate(int count, size_t sizeOfT) + { return operator new[](count * sizeOfT); } + void deallocate(void *p) + { operator delete[](p); } + + void *data; // Array of the actual data +public: + int capacity; // Size of the m_data array + int size; // Number of elements of m_data actually used + int first; // Index in m_data of the first element of the circular buffer + int last; // Index in m_data of the last element of the circular buffer +}; + +template +class TypedCircularBufferData : public CircularBufferData +{ + template + explicit TypedCircularBufferData(InputIterator f, InputIterator l, std::input_iterator_tag) Q_DECL_EQ_DELETE; +public: + TypedCircularBufferData() : CircularBufferData() {} + template + explicit TypedCircularBufferData(ForwardIterator f, ForwardIterator l, std::forward_iterator_tag) + { + const int n = int(std::distance(f, l)); + CircularBufferData::data = allocate(n); + std::uninitialized_copy(f, l, data()); + first = 0; + last = n - 1; + size = capacity = n; + } + ~TypedCircularBufferData() + { + if (QTypeInfo::isComplex && size != 0) { + // The type is complex so we manually call the destructor for each item + // since we used the placement new operator to instantiate them + if (first <= last) { + // Destroy items from first to last + T *b = data() + first; + T *i = b + size; + while (i-- != b) + i->~T(); + } else { + // Destroy items at end of data array + T *b = data() + first; + T *i = data() + capacity; + while (i-- != b) + i->~T(); + + // Destroy items at beginning of data array + b = data(); + i = b + last; + while (i-- != b) + i->~T(); + } + } + + } + + using CircularBufferData::wraparound; + T *allocate(int count) { return static_cast(CircularBufferData::allocate(count, sizeof(T))); } + using CircularBufferData::deallocate; + T *data() const { return static_cast(CircularBufferData::data); } + void setData(T *newdata) { CircularBufferData::data = static_cast(newdata); } +}; + +template +class QCircularBuffer +{ + typedef TypedCircularBufferData Data; +public: + typedef QPair array_range; + typedef QPair const_array_range; + typedef array_range ArrayRange; + typedef const_array_range ConstArrayRange; + + QCircularBuffer() + : d(new Data()) + {} + + explicit QCircularBuffer(int amount); + explicit QCircularBuffer(int amount, const T &val); + explicit QCircularBuffer(int amount, int initialSize, const T &value); +#ifdef Q_COMPILER_INITIALIZER_LISTS + QCircularBuffer(std::initializer_list list) + : d(new Data(list.begin(), list.end(), std::random_access_iterator_tag())) + {} +#endif + template + explicit QCircularBuffer(ForwardIterator f, ForwardIterator l) + : d(new Data(f, l, typename std::iterator_traits::iterator_category())) + {} + + QCircularBuffer(const QCircularBuffer &other) + : d(other.d) + {} + + void swap(QCircularBuffer &other) { d.swap(other.d); } + + QCircularBuffer &operator = (const QCircularBuffer &other) + { + d = other.d; + return *this; + } + + ~QCircularBuffer() {} + + class iterator + { + public: + typedef std::random_access_iterator_tag iterator_category; + typedef ptrdiff_t difference_type; + typedef T value_type; + typedef T *pointer; + typedef T &reference; + + Q_DECL_CONSTEXPR iterator() : buffer(nullptr), index(-1) {} + iterator(QCircularBuffer *buf, int idx) + : buffer(buf), index(idx) + {} + + T &operator*() const { return (*buffer)[ index ]; } + T *operator->() const { return &(*buffer)[index]; } + T &operator[](int j) const { return (*buffer)[ index + j ]; } + + bool operator==(const iterator &other) const + { + return (buffer == other.buffer && index == other.index); + } + + bool operator!=(const iterator &other) const + { + return (buffer != other.buffer || index != other.index); + } + + bool operator<(const iterator &other) const + { + Q_ASSERT_X(buffer == other.buffer, "QCircularBuffer::iterator::operator<", "iterators use different buffers"); + return index < other.index; + } + + bool operator<=(const iterator &other) const + { + Q_ASSERT_X(buffer == other.buffer, "QCircularBuffer::iterator::operator<=", "iterators use different buffers"); + return index <= other.index; + } + + bool operator>(const iterator &other) const + { + Q_ASSERT_X(buffer == other.buffer, "QCircularBuffer::iterator::operator>", "iterators use different buffers"); + return index > other.index; + } + + bool operator>=(const iterator &other) const + { + Q_ASSERT_X(buffer == other.buffer, "QCircularBuffer::iterator::operator>=", "iterators use different buffers"); + return index >= other.index; + } + + iterator &operator++() { ++index; return *this; } + iterator operator++(int) + { + iterator ans = *this; + ++index; + return ans; + } + + iterator &operator--() { --index; return *this; } + iterator operator--(int) + { + iterator ans = *this; + --index; + return ans; + } + + iterator &operator+=(int j) { index += j; return *this; } + iterator &operator-=(int j) { index -= j; return *this; } + iterator operator+(int j) const { return iterator(buffer, index + j); } + iterator operator-(int j) const { return iterator(buffer, index - j); } + int operator-(iterator other) const + { + Q_ASSERT_X(buffer == other.buffer, "QCircularBuffer::iterator::operator-", "iterators use different buffers"); + return index - other.index; + } + + private: + QCircularBuffer *buffer; + int index; + friend class QCircularBuffer; + }; + friend class iterator; + + class const_iterator + { + public: + typedef std::random_access_iterator_tag iterator_category; + typedef ptrdiff_t difference_type; + typedef T value_type; + typedef const T *pointer; + typedef const T &reference; + + Q_DECL_CONSTEXPR const_iterator() : buffer(nullptr), index(-1) {} + const_iterator(const QCircularBuffer *buff, int idx) + : buffer(buff), index(idx) + {} + const_iterator(const iterator &other) + : buffer(other.buffer), index(other.index) + {} + + const T &operator*() const { return buffer->at(index); } + const T *operator->() const { return &buffer->at(index); } + const T &operator[](int j) const { return buffer->at(index + j); } + + bool operator==(const const_iterator &other) const + { + Q_ASSERT_X(buffer == other.buffer, "QCircularBuffer::const_iterator::operator==", "iterators use different buffers"); + return index == other.index; + } + + bool operator!=(const const_iterator &other) const + { + Q_ASSERT_X(buffer == other.buffer, "QCircularBuffer::const_iterator::operator!=", "iterators use different buffers"); + return index != other.index; + } + + bool operator<(const const_iterator &other) const + { + Q_ASSERT_X(buffer == other.buffer, "QCircularBuffer::const_iterator::operator<", "iterators use different buffers"); + return index < other.index; + } + + bool operator<=(const const_iterator &other) const + { + Q_ASSERT_X(buffer == other.buffer, "QCircularBuffer::const_iterator::operator<=", "iterators use different buffers"); + return index <= other.index; + } + + bool operator>(const const_iterator &other) const + { + Q_ASSERT_X(buffer == other.buffer, "QCircularBuffer::const_iterator::operator>", "iterators use different buffers"); + return index > other.index; + } + + bool operator>=(const const_iterator &other) const + { + Q_ASSERT_X(buffer == other.buffer, "QCircularBuffer::const_iterator::operator>=", "iterators use different buffers"); + return index >= other.index; + } + + const_iterator &operator++() { ++index; return *this; } + const_iterator operator++(int) + { + const_iterator ans = *this; + ++index; + return ans; + } + + const_iterator &operator--() { --index; return *this; } + const_iterator operator--(int) + { + const_iterator ans = *this; + --index; + return ans; + } + + const_iterator &operator+=(int j) { index += j; return *this; } + const_iterator &operator-=(int j) { index -= j; return *this; } + const_iterator operator+(int j) const { return const_iterator(buffer, index + j); } + const_iterator operator-(int j) const { return const_iterator(buffer, index - j); } + int operator-(const_iterator other) const + { + Q_ASSERT_X(buffer == other.buffer, "QCircularBuffer::const_iterator::operator-", "iterators use different buffers"); + return index - other.index; + } + + private: + const QCircularBuffer *buffer; + int index; + friend class QCircularBuffer; + }; + friend class const_iterator; + + typedef std::reverse_iterator reverse_iterator; + typedef std::reverse_iterator const_reverse_iterator; + + iterator begin() { return iterator(this, 0); } + const_iterator begin() const { return const_iterator(this, 0); } + const_iterator cbegin() const { return const_iterator(this, 0); } + reverse_iterator rbegin() { return reverse_iterator(end()); } + const_reverse_iterator rbegin() const { return const_reverse_iterator(end()); } + const_reverse_iterator crbegin() const { return const_reverse_iterator(end()); } + const_iterator constBegin() const { return const_iterator(this, 0); } + iterator end() { return iterator(this, d->size); } + const_iterator end() const { return const_iterator(this, d->size); } + const_iterator cend() const { return const_iterator(this, d->size); } + reverse_iterator rend() { return reverse_iterator(begin()); } + const_reverse_iterator rend() const { return const_reverse_iterator(begin()); } + const_reverse_iterator crend() const { return const_reverse_iterator(begin()); } + const_iterator constEnd() const { return const_iterator(this, d->size); } + iterator insert(const_iterator before, int number, const T &val) + { + insert(before.index, number, val); + return iterator(this, before.index); + } + iterator insert(const_iterator before, const T &val) { return insert(before, 1, val); } + iterator erase(const_iterator b, const_iterator e) + { + int number = e - b; + remove(b.index, number); + return iterator(this, e.index - number); + } + iterator erase(const_iterator pos) { return erase(pos, pos + 1); } + + // STL compatibility + typedef T value_type; + typedef value_type *pointer; + typedef const value_type *const_pointer; + typedef value_type &reference; + typedef const value_type &const_reference; + typedef ptrdiff_t difference_type; + typedef iterator Iterator; + typedef const_iterator ConstIterator; + typedef int size_type; + + void push_back(const T &t) { append(t); } + void push_front(const T &t) { prepend(t); } + void pop_back() { Q_ASSERT(!isEmpty()); erase(end() - 1); } + void pop_front() { Q_ASSERT(!isEmpty()); erase(begin()); } + bool empty() const { return isEmpty(); } + T &front() { return first(); } + const T &front() const { return first(); } + T &back() { return last(); } + const T &back() const { return last(); } + + QAtomicInt refCount() const { return d->ref; } + + void append(const T &val); + + const T &at(int i) const + { + Q_ASSERT_X(i >= 0 && i < d->size, "QCircularBuffer::at", "index out of range"); + return d->data()[d->wraparound(d->first + i)]; + } + + const T &operator[](int i) const + { + Q_ASSERT_X(i >= 0 && i < d->size, "QCircularBuffer::operator[]", "index out of range"); + return d->data()[d->wraparound(d->first + i)]; + } + + T &operator[](int i) + { + d.detach(); + Q_ASSERT_X(i >= 0 && i < d->size, "QCircularBuffer::operator[]", "index out of range"); + return d->data()[d->wraparound(d->first + i)]; + } + + int capacity() const { return d->capacity; } + + void clear() { *this = QCircularBuffer(d->capacity); } + + bool contains(const T &val) const; + int count(const T &val) const; + int count() const { return size(); } + + array_range data() + { + d.detach(); + if (d->size == 0) + return array_range(nullptr, 0); + if (!isLinearised()) + linearise(); + return array_range(d->data() + d->first, d->last - d->first + 1); + } + const_array_range data() const { return constData(); } + const_array_range constData() const + { + if (!isLinearised() || d->size == 0) + return const_array_range(nullptr, 0); + return const_array_range(d->data() + d->first, d->last - d->first + 1); + } + + array_range dataOne() + { + d.detach(); + if (d->size == 0) + return array_range(nullptr, 0); + if (isLinearised()) + return array_range(d->data() + d->first, d->last - d->first + 1); + else + return array_range(d->data() + d->first, d->capacity - d->first); + } + const_array_range dataOne() const { return constDataOne(); } + const_array_range constDataOne() const + { + if (d->size == 0) + return const_array_range(nullptr, 0); + if (isLinearised()) + return const_array_range(d->data() + d->first, d->last - d->first + 1); + else + return const_array_range(d->data() + d->first, d->capacity - d->first); + } + + array_range dataTwo() + { + d.detach(); + if (d->size == 0 || isLinearised()) + return array_range(nullptr, 0); + return array_range(d->data(), d->last + 1); + } + const_array_range dataTwo() const { return constDataTwo(); } + const_array_range constDataTwo() const + { + if (d->size == 0 || isLinearised()) + return const_array_range(nullptr, 0); + return const_array_range(d->data(), d->last + 1); + } + + bool endsWith(const T &val) const { return !isEmpty() && last() == val; } + QCircularBuffer &fill(const T &val, int number = -1); + T &first() { Q_ASSERT(!isEmpty()); d.detach(); return d->data()[ d->first ]; } + const T &first() const { Q_ASSERT(!isEmpty()); return d->data()[ d->first ]; } + int freeSize() const { return sizeAvailable(); } + + static QCircularBuffer fromList(const QList &list) + { return QCircularBuffer(list.begin(), list.end()); } + static QCircularBuffer fromVector(const QVector &vector) + { return QCircularBuffer(vector.begin(), vector.end()); } + + int indexOf(const T &val, int from = 0) const; + void insert(int i, const T &val) { insert(i, 1, val); } + void insert(int i, int number, const T &val); + bool isEmpty() const { return d->size == 0; } + bool isFull() const { return d->size == d->capacity; } + bool isLinearised() const { return (d->last >= d->first); } + T &last() { Q_ASSERT(!isEmpty()); return d->data()[ d->last ]; } + const T &last() const { Q_ASSERT(!isEmpty()); return d->data()[ d->last ]; } + int lastIndexOf(const T &val, int from = -1) const; + void linearise() + { + if (!isLinearised()) { + QCircularBuffer linearized(this->cbegin(), this->cend()); + swap(linearized); + } + } + + void prepend(const T &val); + void remove(int i) { remove(i, 1); } + void remove(int i, int number); + + void replace(int i, const T &val) + { + Q_ASSERT_X(i >= 0 && i < d->size, "QCircularBuffer::replace", "index out of range"); + const T copy(val); + (*this)[ i ] = copy; + } + + void reserve(int amount) { setCapacity(amount); } + void resize(int newSize); + void setCapacity(int amount); + int size() const { return d->size; } + Q_DECL_CONSTEXPR int max_size() const { return std::numeric_limits::max(); } + int sizeAvailable() const { return d->capacity - d->size; } + void squeeze() { setCapacity(size()); } + bool startsWith(const T &val) const { return !isEmpty() && first() == val; } + + QList toList() const; + QVector toVector() const; + + T value(int i) const + { + if (i < 0 || i >= d->size) + return T(); + return at(i); + } + + T value(int i, const T &defaultValue) const + { + if (i < 0 || i >= d->size) + return defaultValue; + return at(i); + } + + QCircularBuffer &operator+=(const T &other) { append(other); return *this; } + QCircularBuffer &operator+=(const QCircularBuffer &other); + QCircularBuffer &operator+=(const QVector &other); + QCircularBuffer &operator+=(const QList &other); + + QCircularBuffer &operator<<(const T &other) { append(other); return *this; } + QCircularBuffer &operator<<(const QCircularBuffer &other) { *this += other; return *this; } + QCircularBuffer &operator<<(const QVector &other) { *this += other; return *this; } + QCircularBuffer &operator<<(const QList &other) { *this += other; return *this; } + + inline bool isSharedWith(const QCircularBuffer &other) const { return d == other.d; } + +private: + QExplicitlySharedDataPointer d; +}; + +template +QCircularBuffer operator+(const QCircularBuffer &lhs, const QCircularBuffer &rhs); + +template +inline bool operator==(const QCircularBuffer &lhs, const QCircularBuffer &rhs) +{ return lhs.isSharedWith(rhs) || (lhs.size() == rhs.size() && std::equal(lhs.begin(), lhs.end(), rhs.begin())); } + +template +inline bool operator!=(const QCircularBuffer &lhs, const QCircularBuffer &rhs) +{ return !operator==(lhs, rhs); } + +template +inline void swap(QCircularBuffer &lhs, QCircularBuffer &rhs) +{ lhs.swap(rhs); } + +template +inline bool operator< (const QCircularBuffer &lhs, const QCircularBuffer &rhs) +{ return std::lexicographical_compare(lhs.begin(), lhs.end(), rhs.begin(), rhs.end()); } + +template +inline bool operator> (const QCircularBuffer &lhs, const QCircularBuffer &rhs) +{ return operator<(rhs, lhs); } + +template +inline bool operator>=(const QCircularBuffer &lhs, const QCircularBuffer &rhs) +{ return !operator<(lhs, rhs); } + +template +inline bool operator<=(const QCircularBuffer &lhs, const QCircularBuffer &rhs) +{ return !operator>(lhs, rhs); } + +// out-of-line function implementations: + +#ifndef Q_QDOC + +template +QCircularBuffer::QCircularBuffer(int amount) + : d(new Data()) +{ + // Allocate some raw memory + d->setData(d->allocate(amount)); + d->capacity = amount; + + // Initialize memory block to zero + memset(d->data(), 0, amount * sizeof(T)); +} + +template +QCircularBuffer::QCircularBuffer(int amount, const T &val) + : d(new Data()) +{ + // Allocate some raw memory + d->setData(d->allocate(amount)); + d->capacity = amount; + + // Initialize the objects. In this case we always use the placement new operator + T *b = d->data(); + T *i = b + d->capacity; + while (i != b) + new (--i) T(val); + d->first = 0; + d->last = d->capacity - 1; + d->size = d->capacity; +} + +template +QCircularBuffer::QCircularBuffer(int amount, int initialSize, const T &val) + : d(new Data()) +{ + Q_ASSERT_X(amount >= initialSize, "QCircularBuffer::QCircularBuffer(int capacity, int size, const T &value)", "size is greater than capacity"); + + // Allocate some raw memory + d->setData(d->allocate(amount)); + d->capacity = amount; + + // Initialize the objects that need to be set to the specified value. + // In this case we always use the placement new operator + T *b = d->data(); + T *i = b + initialSize; + while (i != b) + new (--i) T(val); + + // Initialize the remaining memory to zero + memset(d->data() + initialSize, 0, (amount - initialSize) * sizeof(T)); + + d->first = 0; + d->last = initialSize - 1; + d->size = initialSize; +} + +template +void QCircularBuffer::append(const T &val) +{ + // If we have no capacity we do nothing + if (!d->capacity) + return; + d.detach(); + if (d->size == d->capacity) { + // Buffer is full. Overwrite earliest item and rotate + d->data()[ d->first ] = val; + d->first = d->wraparound(++d->first); + d->last = d->wraparound(++d->last); + } else if (d->size != 0) { + // Buffer is partially full. Append data to end of array using appropriate method + int index = d->wraparound(d->first + d->size); + if (QTypeInfo::isComplex) + new (d->data() + index) T(val); + else + d->data()[ index ] = val; + ++d->size; + ++d->last; + } else { + // Buffer is empty. Append data to end of array using appropriate method + d->size = 1; + d->first = d->last = 0; + if (QTypeInfo::isComplex) + new (d->data() + d->first) T(val); + else + d->data()[ d->first ] = val; + } +} + +template +bool QCircularBuffer::contains(const T &val) const +{ + if (isLinearised()) { + T *b = d->data() + d->first; + T *i = b + d->size; + while (i != b) + if (*--i == val) + return true; + return false; + } else { + // Check the array from m_first to the end + T *b = d->data() + d->first; + T *i = d->data() + d->capacity; + while (i != b) + if (*--i == val) + return true; + + // Check array from 0 to m_end + b = d->data(); + i = d->data() + d->last + 1; + while (i != b) + if (*--i == val) + return true; + + return false; + } +} + +template +int QCircularBuffer::count(const T &val) const +{ + int c = 0; + if (isLinearised()) { + T *b = d->data() + d->first; + T *i = b + d->size; + while (i != b) + if (*--i == val) + ++c; + } else { + // Check the array from m_first to the end + T *b = d->data() + d->first; + T *i = d->data() + d->capacity; + while (i != b) + if (*--i == val) + ++c; + + // Check array from 0 to m_end + b = d->data(); + i = d->data() + d->last + 1; + while (i != b) + if (*--i == val) + ++c; + } + return c; +} + +template +QCircularBuffer &QCircularBuffer::fill(const T &val, int number) +{ + Q_ASSERT_X(d->capacity >= number, "QCircularBuffer::fill", "size is greater than capacity"); + const T copy(val); + d.detach(); + int oldSize = d->size; + d->size = (number < 0 ? d->size : number); + d->first = (number == 0 ? -1 : 0); + d->last = d->size - 1; + + // Copy item into array size times + if (d->size) { + T *b = d->data(); + T *i = d->data() + d->size; + while (i != b) + *--i = copy; + } + + if (d->size < oldSize) { + // Cleanup old items beyond end of new array + T *b = d->data() + d->size; + T *i = d->data() + oldSize; + while (i-- != b) { + i->~T(); + //TODO: Optimize to a single memset call + memset(i, 0, sizeof(T)); + } + } + + return *this; +} + +template +int QCircularBuffer::indexOf(const T &val, int from) const +{ + Q_ASSERT_X(from < d->size, "QCircularBuffer::indexOf", "from is greater than last valid index"); + if (from < 0) + from = qMax(from + d->size, 0); + else if (from >= d->size) + from = d->size - 1; + for (int i = from; i < d->size; ++i) + if (at(i) == val) + return i; + return -1; +} + +template +void QCircularBuffer::insert(int i, int number, const T &val) +{ + Q_ASSERT_X(i >= 0 && i <= d->size, "QCircularBuffer::insert", "index out of range"); + d.detach(); + int freeCapacity = d->capacity - d->size; + + // Calculate number of elements that will actually be inserted. This + // depends upon where the insertion has been requested and any spare + // capacity left in the buffer. This is because elements at higher + // indices will be pushed to the right and will potentially wrap around + // to overwrite earlier elements. + int numToInsert = qMin(number, i + freeCapacity); + + // Calculate the number of elements at the beginning of the buffer that + // will be overwritten + int numToOverwrite = qMin(i, qMax(0, number - freeCapacity)); + + // Decide which way to shift to minimize the amount of copying required. + if (i < d->size / 2) { + // Inserting in lower half of buffer so we shift earlier items down + + // Shift data at the bottom end down. This may only be a subset if some + // of the early data is to be overwritten. + if (QTypeInfo::isStatic) { + int b = d->first + numToOverwrite; + int e = d->first + i - 1; + for (int j = b; j <= e; ++j) { + int srcIndex = j % d->capacity; + int dstIndex = (j - numToInsert + d->capacity) % d->capacity; + T *src = d->data() + srcIndex; + T *dst = d->data() + dstIndex; + + new (dst) T(*src); + } + } else { + // We have a movable type so a simple memcopy (or maybe two or + // three) will suffice to shift the data at the bottom end + int numToMove = i - numToOverwrite; + if (numToMove > 0) { + int srcBegin = (d->first + numToOverwrite) % d->capacity; + int srcEnd = (d->first + i - 1) % d->capacity; + int dstBegin = (srcBegin - numToInsert + d->capacity) % d->capacity; + int dstEnd = (srcEnd - numToInsert + d->capacity) % d->capacity; + + // Do we have any wrap-around problems to deal with? + bool srcRegionWraps = (srcEnd < srcBegin); + bool dstRegionWraps = (dstEnd < dstBegin); + if (!srcRegionWraps && dstRegionWraps) { + // Destination region wraps so do the move in two steps + int wrapCount = abs(srcBegin - numToInsert); + memmove(d->data() + d->capacity - wrapCount, d->data() + srcBegin, wrapCount * sizeof(T)); + memmove(d->data(), d->data() + srcBegin + wrapCount, (numToMove - wrapCount) * sizeof(T)); + } else if (srcRegionWraps && !dstRegionWraps) { + // Source region wraps so do the move in two steps + int wrapCount = d->capacity - srcBegin; + memmove(d->data() + dstBegin, d->data() + d->capacity - wrapCount, wrapCount * sizeof(T)); + memmove(d->data() + dstBegin + numToInsert, d->data(), (numToMove - wrapCount) * sizeof(T)); + } else if (srcRegionWraps && dstRegionWraps) { + // Source and destination regions wrap so we have to do this in three steps + int srcWrapCount = d->capacity - srcBegin; + memmove(d->data() + dstBegin, d->data() + d->capacity - srcWrapCount, srcWrapCount * sizeof(T)); + memmove(d->data() + d->capacity - numToInsert, d->data(), numToInsert * sizeof(T)); + memmove(d->data(), d->data() + numToInsert, (numToMove - srcWrapCount - numToInsert) * sizeof(T)); + } else { + // No wrap around - do a single memmove + memmove(d->data() + dstBegin, d->data() + srcBegin, numToMove * sizeof(T)); + } + } + } + + // Insert the new items + int e = d->first + i; + int b = e - numToInsert; + for (int j = b; j < e; ++j) { + T *p = d->data() + ((j + d->capacity) % d->capacity); + new (p) T(val); + } + + // Adjust the first, last and size indices as needed. + // NB. The last index never changes in this regime. + d->size += qMin(number, freeCapacity); + d->first = (d->first - (numToInsert - numToOverwrite) + d->capacity) % d->capacity; + } else { + // Inserting in upper half of buffer so we shift later items up + + // Shift data at the top end up which may or may not overwrite some + // of the earliest data + if (QTypeInfo::isStatic) { + int b = d->first + d->size - 1; + int e = d->first + i; + for (int j = b; j >= e; j--) { + int srcIndex = j % d->capacity; + int dstIndex = (j + numToInsert) % d->capacity; + T *src = d->data() + srcIndex; + T *dst = d->data() + dstIndex; + + new (dst) T(*src); + } + } else { + // We have a movable type so a simple memcopy (or maybe two or + // three) will suffice to shift the data at the top end + int numToMove = d->size - i; + if (numToMove > 0) { + int srcBegin = (d->first + i) % d->capacity; + int srcEnd = d->last; + int dstBegin = (srcBegin + numToInsert) % d->capacity; + int dstEnd = (srcEnd + numToInsert) % d->capacity; + + // Do we have any wrap-around problems to deal with? + bool srcRegionWraps = (srcEnd < srcBegin); + bool dstRegionWraps = (dstEnd < dstBegin); + if (!srcRegionWraps && dstRegionWraps) { + // Destination region wraps so do the move in two steps + int wrapCount = srcEnd + numToInsert - d->capacity + 1; + memmove(d->data(), d->data() + srcEnd - wrapCount + 1, wrapCount * sizeof(T)); + memmove(d->data() + dstBegin, d->data() + srcBegin, (numToMove - wrapCount) * sizeof(T)); + } else if (srcRegionWraps && !dstRegionWraps) { + // Source region wraps so do the move in two steps + int wrapCount = d->last + 1; + memmove(d->data() + numToInsert, d->data(), wrapCount * sizeof(T)); + memmove(d->data() + dstBegin, d->data() + srcBegin, (numToMove - wrapCount) * sizeof(T)); + } else if (srcRegionWraps && dstRegionWraps) { + // Source and destination regions wrap so we have to do this in three steps + int srcWrapCount = d->last + 1; + memmove(d->data() + numToInsert, d->data(), srcWrapCount * sizeof(T)); + memmove(d->data(), d->data() + d->capacity - numToInsert, numToInsert * sizeof(T)); + memmove(d->data() + dstBegin, d->data() + srcBegin, (numToMove - srcWrapCount - numToInsert) * sizeof(T)); + } else { + // No wrap around - do a single memmove + memmove(d->data() + dstBegin, d->data() + srcBegin, numToMove * sizeof(T)); + } + } + } + + // Insert the new items + for (int j = d->first + i; j < d->first + i + numToInsert; ++j) { + T *p = d->data() + (j % d->capacity); + new (p) T(val); + } + + // Adjust the first, last and size indices as needed + d->size += qMin(number, freeCapacity); + d->first = (d->first + numToOverwrite) % d->capacity; + d->last = (d->last + numToInsert) % d->capacity; + } +} + +template +int QCircularBuffer::lastIndexOf(const T &val, int from) const +{ + if (from < 0) + from = qMax(from + d->size, 0); + else if (from >= d->size) + from = d->size - 1; + for (int i = from; i >= 0; --i) + if (at(i) == val) + return i; + return -1; +} + +template +void QCircularBuffer::prepend(const T &val) +{ + // If we have no capacity we do nothing + if (!d->capacity) + return; + + d.detach(); + if (d->size == d->capacity) { + // Buffer is full. Overwrite last item and rotate + d->data()[ d->last ] = val; + d->first = (--d->first + d->capacity) % d->capacity; + d->last = (--d->last + d->capacity) % d->capacity; + } else if (d->size != 0) { + // Buffer is partially full. Prepend data to start of array using appropriate method + d->first = (--d->first + d->capacity) % d->capacity; + ++d->size; + if (QTypeInfo::isComplex) + new (d->data() + d->first) T(val); + else + d->data()[ d->first ] = val; + } else { + // Buffer is empty. Prepend data to start of array using appropriate method + d->size = 1; + d->first = d->last = d->capacity - 1; + if (QTypeInfo::isComplex) + new (d->data() + d->first) T(val); + else + d->data()[ d->first ] = val; + } +} + +template +void QCircularBuffer::remove(int i, int number) +{ + Q_ASSERT_X(i >= 0 && number > 0 && i + number <= d->size, "QCircularBuffer::remove", "index out of range"); + d.detach(); + + // HACK (it actually makes sense, but requires some more thinking) + if ( i == 0 && !QTypeInfo::isComplex ) { + d->first = d->wraparound( d->first + number ); + d->size -= number; + return; + } + + // Calculate the number of items that need to be moved downward + int numToMoveDown = d->size - number - i; + int numToMoveUp = i; + + if (numToMoveDown < numToMoveUp) { + // Move higher items down + int numToMove = numToMoveDown; + + if (QTypeInfo::isComplex) { + // Copy items down from higher positions + int b = d->first + i; + int e = b + numToMove; + for (int j = b; j < e ; ++j) { + T *src = d->data() + ((j + number) % d->capacity); + T *dst = d->data() + (j % d->capacity); + new (dst) T(*src); + } + + // Clean up items at end of buffer + for (int j = d->last; j > d->last - number; --j) { + T *p = d->data() + ((j + d->capacity) % d->capacity); + p->~T(); + //TODO: Optimize to a single memset call + memset(p, 0, sizeof(T)); + } + } else { + if (isLinearised()) { + // With a linearised buffer we can do a simple move and removal of items + memmove(d->data() + d->last - numToMove - number + 1, d->data() + d->last - numToMove + 1, numToMove * sizeof(T)); + memset(d->data() + d->last - number + 1, 0, number * sizeof(T)); + } else { + // With a non-linearised buffer we need to be careful of wrapping issues + int srcBegin = (d->last - numToMove + 1 + d->capacity) % d->capacity; + int srcEnd = d->last; + int dstBegin = (d->first + i) % d->capacity; + int dstEnd = (dstBegin + numToMove - 1) % d->capacity; + + bool srcRegionWraps = (srcEnd < srcBegin); + bool dstRegionWraps = (dstEnd < dstBegin); + if (srcRegionWraps && !dstRegionWraps) { + // Source region wraps so do the move in two steps + int wrapCount = d->capacity - srcBegin; + memmove(d->data() + dstBegin, d->data() + srcBegin, wrapCount * sizeof(T)); + memmove(d->data() + dstBegin + wrapCount, d->data(), (numToMove - wrapCount) * sizeof(T)); + } else if (!srcRegionWraps && dstRegionWraps) { + // Destination region wraps so do the move in two steps + int wrapCount = number - srcBegin; + memmove(d->data() + d->capacity - wrapCount, d->data() + srcBegin, wrapCount * sizeof(T)); + memmove(d->data(), d->data() + srcBegin + wrapCount, (numToMove - wrapCount) * sizeof(T)); + } else if (srcRegionWraps && dstRegionWraps) { + // Source and destination regions wrap so we have to do this in three steps + int srcWrapCount = d->capacity - srcBegin; + memmove(d->data() + dstBegin, d->data() + srcBegin, srcWrapCount * sizeof(T)); + memmove(d->data() + dstBegin + srcWrapCount, d->data(), number * sizeof(T)); + memmove(d->data(), d->data() + number, (numToMove - srcWrapCount - number) * sizeof(T)); + } else { + // No wrap around, so we can do this in one hit + memmove(d->data() + dstBegin, d->data() + srcBegin, numToMove * sizeof(T)); + } + + // We potentially have a disjoint region that needs zeroing + int zeroStart = (d->last - number + d->capacity + 1) % d->capacity; + int zeroEnd = d->last; + if (zeroEnd < zeroStart) { + // Region to be zeroed wraps. Do it in two steps. + memset(d->data(), 0, (d->last + 1) * sizeof(T)); + memset(d->data() + zeroStart, 0, (number - d->last - 1) * sizeof(T)); + } else { + // Region to be zeroed is contiguous + memset(d->data() + zeroStart, 0, number * sizeof(T)); + } + } + } + + // Adjust the indices + d->size -= number; + d->last = (d->last - number + d->capacity) % d->capacity; + } else { + // Move lower items up + int numToMove = numToMoveUp; + + if (QTypeInfo::isComplex) { + // Copy items up from lower positions + int b = d->first + i - 1; + int e = b - numToMove; + for (int j = b; j > e ; --j) { + T *src = d->data() + ((j + d->capacity) % d->capacity); + T *dst = d->data() + ((j + d->capacity + number) % d->capacity); + new (dst) T(*src); + } + + // Clean up items at start of buffer + for (int j = d->first; j < d->first + number; ++j) { + T *p = d->data() + (j % d->capacity); + p->~T(); + //TODO: Optimize to a single memset call + memset(p, 0, sizeof(T)); + } + } else { + if (isLinearised()) { + // With a linearised buffer we can do a simple move and removal of items + memmove(d->data() + d->first + number, d->data() + d->first, numToMove * sizeof(T)); + memset(d->data() + d->first, 0, number * sizeof(T)); + } else { + // With a non-linearised buffer we need to be careful of wrapping issues + int srcBegin = d->first; + int srcEnd = (srcBegin + numToMove - 1) % d->capacity; + int dstBegin = (srcBegin + number) % d->capacity; + int dstEnd = (dstBegin + numToMove - 1) % d->capacity; + + bool srcRegionWraps = (srcEnd < srcBegin); + bool dstRegionWraps = (dstEnd < dstBegin); + if (srcRegionWraps && !dstRegionWraps) { + // Source region wraps so do the move in two steps + int wrapCount = srcEnd + 1; + memmove(d->data() + dstEnd - wrapCount + 1, d->data(), wrapCount * sizeof(T)); + memmove(d->data() + dstBegin, d->data() + srcBegin, (numToMove - wrapCount) * sizeof(T)); + } else if (!srcRegionWraps && dstRegionWraps) { + // Destination region wraps so do the move in two steps + int wrapCount = dstEnd + 1; + memmove(d->data(), d->data() + srcEnd - wrapCount + 1, wrapCount * sizeof(T)); + memmove(d->data() + dstBegin, d->data() + srcBegin, (numToMove - wrapCount) * sizeof(T)); + } else if (srcRegionWraps && dstRegionWraps) { + // Source and destination regions wrap so we have to do this in three steps + int srcWrapCount = srcEnd + 1; + memmove(d->data() + dstEnd - srcWrapCount + 1, d->data(), srcWrapCount * sizeof(T)); + memmove(d->data(), d->data() + d->capacity - number, number * sizeof(T)); + memmove(d->data() + dstBegin, d->data() + srcBegin, (numToMove - srcWrapCount - number) * sizeof(T)); + } else { + // No wrap around, so we can do this in one hit + memmove(d->data() + dstBegin, d->data() + srcBegin, numToMove * sizeof(T)); + } + + // We potentially have a disjoint region that needs zeroing + int zeroStart = d->first; + int zeroEnd = (zeroStart + number - 1) % d->capacity; + if (zeroEnd < zeroStart) { + // Region to be zeroed wraps. Do it in two steps. + memset(d->data() + zeroStart, 0, (d->capacity - d->first) * sizeof(T)); + memset(d->data(), 0, (number - d->capacity + d->first) * sizeof(T)); + } else { + // Region to be zeroed is contiguous + memset(d->data() + zeroStart, 0, number * sizeof(T)); + } + } + } + + // Adjust the indices + d->size -= number; + d->first = (d->first + number) % d->capacity; + } +} + +template +void QCircularBuffer::setCapacity(int amount) +{ + if (amount == d->capacity) + return; + + d.detach(); + // Allocate some new raw memory + T *newData = d->allocate(amount); + + // How many items can we copy across? + int newSize = qMin(d->size, amount); + + if (QTypeInfo::isComplex) { + // Copy across the elements from the original array + for (int i = 0; i < newSize; ++i) { + T *src = d->data() + ((d->first + i) % d->capacity); + T *dst = newData + i; + new (dst) T(*src); + } + + // Destroy the original items. + // The type is complex so we manually call the destructor for each item + // since we used the placement new operator to instantiate them + T *b = d->data(); + T *i = b + d->capacity; + while (i-- != b) + i->~T(); + } else { + // Copy across the elements from the original array. The source region + // potentially wraps so we may have to do this in one or two steps + if (isLinearised()) { + memmove(newData, d->data() + d->first, newSize * sizeof(T)); + } else { + int step1Size = qMin(newSize, d->capacity - d->first); + memmove(newData, d->data() + d->first, step1Size * sizeof(T)); + int step2Size = qMax(0, qMin(newSize - d->capacity + d->first, d->last + 1)); + memmove(newData + step1Size, d->data(), step2Size * sizeof(T)); + } + } + + // Initialize any memory outside of the valid buffer (ie the unused items) + memset(newData + newSize, 0, (amount - newSize) * sizeof(T)); + + // Release the raw memory for the old array + d->deallocate(d->data()); + + // Assign the new memory to be our buffer data and fix indices + d->setData(newData); + d->capacity = amount; + d->first = 0; + d->size = newSize; + d->last = d->size - 1; +} + +template +void QCircularBuffer::resize(int newSize) +{ + Q_ASSERT_X(newSize >= 0 && newSize <= d->capacity, "QCircularBuffer::resize", "size out of range"); + d.detach(); + if (newSize < d->size) { + remove(newSize, d->size - newSize); + } else if (newSize > d->size) { + const T t = T(); + insert(d->size, newSize - d->size, t); + } +} + +template +QCircularBuffer &QCircularBuffer::operator+=(const QCircularBuffer &other) +{ + d.detach(); + // How many items do we need to copy? No point in ever copying across a number + // greater than capacity + int numToCopy = qMin(other.size(), d->capacity); + int offset = other.size() - numToCopy; + for (int i = 0; i < numToCopy; ++i) + append(other.at(offset + i)); + return *this; +} + +template +QCircularBuffer &QCircularBuffer::operator+=(const QVector &other) +{ + d.detach(); + // How many items do we need to copy? No point in ever copying across a number + // greater than capacity + int numToCopy = qMin(other.size(), d->capacity); + int offset = other.size() - numToCopy; + for (int i = 0; i < numToCopy; ++i) + append(other.at(offset + i)); + return *this; +} + +template +QCircularBuffer &QCircularBuffer::operator+=(const QList &other) +{ + d.detach(); + // How many items do we need to copy? No point in ever copying across a number + // greater than capacity + int numToCopy = qMin(other.size(), d->capacity); + int offset = other.size() - numToCopy; + for (int i = 0; i < numToCopy; ++i) + append(other.at(offset + i)); + return *this; +} + +template +QList QCircularBuffer::toList() const +{ + QList list; + list.reserve(size()); + for (int i = 0; i < size(); ++i) + list.append(at(i)); + return list; +} + +template +QVector QCircularBuffer::toVector() const +{ + QVector vector; + vector.reserve(size()); + for (int i = 0; i < size(); ++i) + vector.append(at(i)); + return vector; +} + +template +QCircularBuffer operator+(const QCircularBuffer &lhs, const QCircularBuffer &rhs) +{ + QCircularBuffer circ(lhs.size() + rhs.size()); + for (int i = 0; i < lhs.size(); ++i) + circ.append(lhs.at(i)); + for (int i = 0; i < rhs.size(); ++i) + circ.append(rhs.at(i)); + return circ; +} + +#endif // Q_QDOC + +Q_DECLARE_SEQUENTIAL_ITERATOR(CircularBuffer) +Q_DECLARE_MUTABLE_SEQUENTIAL_ITERATOR(CircularBuffer) + +} //Qt3D + +QT_END_NAMESPACE + +#endif // QT3DCORE_QCIRCULARBUFFER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qcomponent_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qcomponent_p.h new file mode 100644 index 0000000..0b3a961 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qcomponent_p.h @@ -0,0 +1,80 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QCOMPONENT_P_H +#define QT3DCORE_QCOMPONENT_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QT3DCORE_PRIVATE_EXPORT QComponentPrivate : public QNodePrivate +{ +public: + QComponentPrivate(); + ~QComponentPrivate(); + + void addEntity(QEntity *entity); + void removeEntity(QEntity *entity); + + Q_DECLARE_PUBLIC(QComponent) + bool m_shareable; + QVector m_entities; +}; + +} + +QT_END_NAMESPACE + +#endif // QT3DCORE_QCOMPONENT_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qcomponentaddedchange_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qcomponentaddedchange_p.h new file mode 100644 index 0000000..5eb4533 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qcomponentaddedchange_p.h @@ -0,0 +1,83 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QCOMPONENTADDEDCHANGE_P_H +#define QT3DCORE_QCOMPONENTADDEDCHANGE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include +#include + +struct QMetaObject; + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QComponent; +class QEntity; + +class QT3DCORE_PRIVATE_EXPORT QComponentAddedChangePrivate : public QSceneChangePrivate +{ +public: + QComponentAddedChangePrivate(const QEntity *entity, const QComponent *component); + + QNodeId m_entityId; + QNodeId m_componentId; + const QMetaObject *m_componentMetaObject; +}; + +} // namespace Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3DCORE_QCOMPONENTADDEDCHANGE_P_H + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qcomponentremovedchange_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qcomponentremovedchange_p.h new file mode 100644 index 0000000..5284c7b --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qcomponentremovedchange_p.h @@ -0,0 +1,83 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QCOMPONENTREMOVEDCHANGE_P_H +#define QT3DCORE_QCOMPONENTREMOVEDCHANGE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include +#include + +struct QMetaObject; + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QComponent; +class QEntity; + +class QT3DCORE_PRIVATE_EXPORT QComponentRemovedChangePrivate : public QSceneChangePrivate +{ +public: + QComponentRemovedChangePrivate(const QEntity *entity, const QComponent *component); + + QNodeId m_entityId; + QNodeId m_componentId; + const QMetaObject *m_componentMetaObject; +}; + +} // namespace Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3DCORE_QCOMPONENTREMOVEDCHANGE_P_H + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qdestructionidandtypecollector_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qdestructionidandtypecollector_p.h new file mode 100644 index 0000000..8557c27 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qdestructionidandtypecollector_p.h @@ -0,0 +1,83 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QIDTYPEVISITOR_H +#define QT3DCORE_QIDTYPEVISITOR_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QDestructionIdAndTypeCollector +{ +public: + QDestructionIdAndTypeCollector(QNode *rootNode); + + QVector subtreeIdsAndTypes() const { return m_subtreeIdsAndTypes; } + +private: + void collectIdAndType(QNode *node) + { + QNodeIdTypePair idAndType(node->id(), QNodePrivate::get(node)->m_typeInfo); + m_subtreeIdsAndTypes.push_back(idAndType); + + // Mark this node as having been handled for destruction so we don't + // repeat it unnecessarily in an O(n^2) manner + QNodePrivate::get(node)->m_hasBackendNode = false; + } + + QVector m_subtreeIdsAndTypes; +}; + +} // namespace Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3DCORE_QIDTYPEVISITOR_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qdownloadhelperservice_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qdownloadhelperservice_p.h new file mode 100644 index 0000000..b74bcba --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qdownloadhelperservice_p.h @@ -0,0 +1,130 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QDOWNLOADHELPERSERVICE_P_H +#define QT3DCORE_QDOWNLOADHELPERSERVICE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +class QThread; +class QNetworkAccessManager; +class QNetworkReply; + +namespace Qt3DCore { + +class QAspectEngine; +class QDownloadNetworkWorker; +class QDownloadHelperService; +class QDownloadHelperServicePrivate; + +class QT3DCORESHARED_EXPORT QDownloadRequest +{ +public: + QDownloadRequest(const QUrl &url); + virtual ~QDownloadRequest(); + + QUrl url() const { return m_url; } + bool succeeded() const { return m_succeeded; } + bool cancelled() const { return m_cancelled; } + + virtual void onDownloaded(); // this is called in dl thread + virtual void onCompleted() = 0; // this is called in the aspect thread + +protected: + QUrl m_url; + QByteArray m_data; + +private: + friend class QDownloadNetworkWorker; + friend class QDownloadHelperService; + bool m_succeeded; + bool m_cancelled; +}; + +typedef QSharedPointer QDownloadRequestPtr; + + +class QT3DCORESHARED_EXPORT QDownloadHelperService : public QAbstractServiceProvider +{ + Q_OBJECT +public: + explicit QDownloadHelperService(const QString &description = QString()); + ~QDownloadHelperService(); + + void submitRequest(const QDownloadRequestPtr &request); + void cancelRequest(const QDownloadRequestPtr &request); + void cancelAllRequests(); + + static QString urlToLocalFileOrQrc(const QUrl &url); + static bool isLocal(const QUrl &url); + static QDownloadHelperService *getService(QAspectEngine *engine); + +private: + Q_DECLARE_PRIVATE(QDownloadHelperService) + Q_PRIVATE_SLOT(d_func(), void _q_onRequestCompleted(const Qt3DCore::QDownloadRequestPtr &)) +}; + +typedef QSharedPointer QDownloadHelperServicePtr; + +} // namespace Qt3DCore + +QT_END_NAMESPACE + +Q_DECLARE_METATYPE(Qt3DCore::QDownloadRequestPtr) // LCOV_EXCL_LINE + +#endif // QT3DCORE_QDOWNLOADHELPERSERVICE_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qdownloadhelperservice_p_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qdownloadhelperservice_p_p.h new file mode 100644 index 0000000..202ae52 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qdownloadhelperservice_p_p.h @@ -0,0 +1,76 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Paul Lemire +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QDOWNLOADHELPERSERVICE_P_P_H +#define QT3DCORE_QDOWNLOADHELPERSERVICE_P_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +class QThread; +class QNetworkAccessManager; +class QNetworkReply; + +namespace Qt3DCore { + + +} // namespace Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3DCORE_QDOWNLOADHELPERSERVICE_P_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qdownloadnetworkworker_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qdownloadnetworkworker_p.h new file mode 100644 index 0000000..faecbca --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qdownloadnetworkworker_p.h @@ -0,0 +1,101 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QDOWNLOADNETWORKWORKER_P_H +#define QT3DCORE_QDOWNLOADNETWORKWORKER_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +class QThread; +class QNetworkAccessManager; +class QNetworkReply; + +namespace Qt3DCore { + +class QDownloadRequest; +typedef QSharedPointer QDownloadRequestPtr; + +class QDownloadNetworkWorker : public QObject +{ + Q_OBJECT +public: + QDownloadNetworkWorker(QObject *parent = nullptr); + +signals: + void submitRequest(const Qt3DCore::QDownloadRequestPtr &request); + void cancelRequest(const Qt3DCore::QDownloadRequestPtr &request); + void cancelAllRequests(); + + void requestDownloaded(const Qt3DCore::QDownloadRequestPtr &request); + +private Q_SLOTS: + void onRequestSubmited(const Qt3DCore::QDownloadRequestPtr &request); + void onRequestCancelled(const Qt3DCore::QDownloadRequestPtr &request); + void onAllRequestsCancelled(); + void onRequestFinished(QNetworkReply *reply); + void onDownloadProgressed(qint64 bytesReceived, qint64 bytesTotal); + +private: + QNetworkAccessManager *m_networkManager; + QVector< QPair > m_requests; + QMutex m_mutex; +}; + +} // namespace Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3DCORE_QDOWNLOADNETWORKWORKER_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qdynamicpropertyupdatedchange_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qdynamicpropertyupdatedchange_p.h new file mode 100644 index 0000000..c71c2a7 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qdynamicpropertyupdatedchange_p.h @@ -0,0 +1,83 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QDYNAMICPROPERTYUPDATEDCHANGE_P_H +#define QT3DCORE_QDYNAMICPROPERTYUPDATEDCHANGE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QPropertyUpdatedChange; +class QFrameAllocator; + +class QT3DCORE_PRIVATE_EXPORT QDynamicPropertyUpdatedChangePrivate : public QPropertyUpdatedChangeBasePrivate +{ +public: + QDynamicPropertyUpdatedChangePrivate(); + virtual ~QDynamicPropertyUpdatedChangePrivate(); + + Q_DECLARE_PUBLIC(QDynamicPropertyUpdatedChange) + + QByteArray m_propertyName; + QVariant m_value; +}; + +} // Qt3D + +QT_END_NAMESPACE + +#endif // QT3DCORE_QDYNAMICPROPERTYUPDATEDCHANGE_P_H + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qentity_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qentity_p.h new file mode 100644 index 0000000..65c9278 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qentity_p.h @@ -0,0 +1,102 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QENTITY_P_H +#define QT3DCORE_QENTITY_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QT3DCORE_PRIVATE_EXPORT QEntityPrivate : public QNodePrivate +{ +public : + QEntityPrivate(); + ~QEntityPrivate(); + + Q_DECLARE_PUBLIC(QEntity) + + QNodeId parentEntityId() const; + + template + QVector componentsOfType() const + { + QVector typedComponents; + for (QComponent *comp : m_components) { + T *typedComponent = qobject_cast(comp); + if (typedComponent != nullptr) + typedComponents.append(typedComponent); + } + return typedComponents; + } + + void removeDestroyedComponent(QComponent *comp); + + QComponentVector m_components; + mutable QNodeId m_parentEntityId; +}; + +struct QEntityData +{ + Qt3DCore::QNodeId parentEntityId; + QVector componentIdsAndTypes; + Qt3DCore::QNodeIdVector childEntityIds; +}; + +} + +QT_END_NAMESPACE + +#endif // QT3DCORE_QENTITY_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qeventfilterservice_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qeventfilterservice_p.h new file mode 100644 index 0000000..58b87d9 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qeventfilterservice_p.h @@ -0,0 +1,84 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Paul Lemire (paul.lemire350@gmail.com) +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QEVENTFILTERSERVICE_H +#define QT3DCORE_QEVENTFILTERSERVICE_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QEventFilterServicePrivate; + +class QT3DCORESHARED_EXPORT QEventFilterService : public QAbstractServiceProvider +{ + Q_OBJECT +public: + QEventFilterService(); + ~QEventFilterService(); + + void initialize(QObject *eventSource); + void shutdown(QObject *eventSource); + void registerEventFilter(QObject *eventFilter, int priority); + void unregisterEventFilter(QObject *eventFilter); + +private: + Q_DECLARE_PRIVATE(QEventFilterService) +}; + +} // Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3DCORE_QEVENTFILTERSERVICE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qframeallocator_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qframeallocator_p.h new file mode 100644 index 0000000..b3ded07 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qframeallocator_p.h @@ -0,0 +1,112 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QFRAMEALLOCATOR_P_H +#define QT3DCORE_QFRAMEALLOCATOR_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#ifdef QFRAMEALLOCATOR_DEBUG +#include +#include +#endif + +#include +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QFrameAllocatorPrivate; + +class QT3DCORE_PRIVATE_EXPORT QFrameAllocator +{ +public: + explicit QFrameAllocator(uint maxObjectSize, uint alignment = 16, uint pageSize = 128); + ~QFrameAllocator(); + + template + T* allocate() + { + void* ptr = allocateRawMemory(sizeof(T)); + new (ptr) T(); // Don't forget to call the constructor of the object using the placement new operator + return static_cast(ptr); + } + + template + void deallocate(T *ptr) + { + ptr->~T(); // Call destructor + deallocateRawMemory(ptr, sizeof(T)); + } + + void* allocateRawMemory(size_t size); + + void deallocateRawMemory(void *ptr, size_t size); + + void clear(); + void trim(); + uint maxObjectSize() const; + uint totalChunkCount() const; + int allocatorPoolSize() const; + bool isEmpty() const; + +private: + Q_DECLARE_PRIVATE(QFrameAllocator) + const QScopedPointer d_ptr; +}; + +} // Qt3D + +QT_END_NAMESPACE + +#endif // QFRAMEALLOCATOR_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qframeallocator_p_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qframeallocator_p_p.h new file mode 100644 index 0000000..bf4e0a2 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qframeallocator_p_p.h @@ -0,0 +1,138 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QFRAMEALLOCATOR_P_P_H +#define QT3DCORE_QFRAMEALLOCATOR_P_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QFrameAllocator; + +struct Q_AUTOTEST_EXPORT QFrameChunk +{ + void init(uint blockSize, uchar blocks); + void *allocate(uint blockSize); + + void deallocate(void *p, uint blockSize); + bool contains(void *p, uint blockSize); + void clear(uint blockSize, uchar blocks); + void release(); + + inline bool isEmpty() const { return m_blocksAvailable == m_maxBlocksAvailable; } + + uchar *m_data; + uchar m_firstAvailableBlock; + uchar m_blocksAvailable; + uchar m_maxBlocksAvailable; +}; + +class Q_AUTOTEST_EXPORT QFixedFrameAllocator +{ +public: + QFixedFrameAllocator(); + ~QFixedFrameAllocator(); + + void init(uint blockSize, uchar pageSize = 128); + void *allocate(); + void deallocate(void *ptr); + void trim(); + void release(); + void clear(); + bool isEmpty() const; + + inline int chunkCount() const { return m_chunks.size(); } + inline uchar pageSize() const { return m_nbrBlock; } + inline uint blockSize() const { return m_blockSize; } + +private: + QFrameChunk &scan(); + +private: + uint m_blockSize; + uchar m_nbrBlock; + QVector m_chunks; + QFrameChunk *m_lastAllocatedChunck; + QFrameChunk *m_lastFreedChunck; +}; + +class QFrameAllocatorPrivate +{ +public: + QFrameAllocatorPrivate(); + + inline void *allocateAtChunk(uint allocatorIndex) + { + return m_allocatorPool[allocatorIndex].allocate(); + } + + inline void deallocateAtChunck(void *ptr, uint allocatorIndex) + { + m_allocatorPool[allocatorIndex].deallocate(ptr); + } + + inline uint allocatorIndexFromSize(uint targetSize) const + { + return (targetSize + m_alignment - 1) / m_alignment - 1; + } + + uint m_maxObjectSize; + uint m_alignment; + QVector m_allocatorPool; +}; + +} // Qt3D + +QT_END_NAMESPACE + +#endif // QT3DCORE_QFRAMEALLOCATOR_P_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qhandle_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qhandle_p.h new file mode 100644 index 0000000..46bd5f5 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qhandle_p.h @@ -0,0 +1,135 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QHANDLE_P_H +#define QT3DCORE_QHANDLE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +template +class QHandle +{ +public: + struct Data { + union { + quintptr counter; + Data *nextFree; + }; + }; + QHandle() + : d(nullptr), + counter(0) + {} + QHandle(Data *d) + : d(d), + counter(d->counter) + { + } + QHandle(const QHandle &other) + : d(other.d), + counter(other.counter) + { + } + QHandle &operator=(const QHandle &other) + { + d = other.d; + counter = other.counter; + return *this; + } + + inline T *operator->() const; + T *data() const; + + quintptr handle() const { return reinterpret_cast(d); } + bool isNull() const { return !d; } + + Data *data_ptr() const { return d; } + + bool operator==(const QHandle &other) const { return d == other.d && counter == other.counter; } + bool operator!=(const QHandle &other) const { return !operator==(other); } +private: + Data *d; + quintptr counter; +}; + + +template +QDebug operator<<(QDebug dbg, const QHandle &h) +{ + QDebugStateSaver saver(dbg); + QString binNumber = QString::number(h.handle(), 2).rightJustified(32, QChar::fromLatin1('0')); + dbg.nospace() << " m_handle = " << h.handle() + << " = " << binNumber; + return dbg; +} + +template +uint qHash(const QHandle &h, uint seed) +{ + using QT_PREPEND_NAMESPACE(qHash); + return qHash(h.handle(), seed); +} + +} // Qt3DCore + +// simpler than fighting the Q_DECLARE_TYPEINFO macro, use QString as a dummy to get movable semantics +template +class QTypeInfo > + : public QTypeInfoMerger, QString> {}; + +QT_END_NAMESPACE + +#endif // QT3DCORE_QRHANDLE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qjoint_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qjoint_p.h new file mode 100644 index 0000000..82439d5 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qjoint_p.h @@ -0,0 +1,95 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QJOINT_P_H +#define QT3DCORE_QJOINT_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QJoint; + +class QJointPrivate : public QNodePrivate +{ +public: + QJointPrivate(); + + Q_DECLARE_PUBLIC(QJoint) + + QMatrix4x4 m_inverseBindMatrix; + QVector m_childJoints; + QQuaternion m_rotation; + QVector3D m_translation; + QVector3D m_scale; + QString m_name; + + // Not sent to backend. Purely internal convenience + QVector3D m_eulerRotationAngles; +}; + +struct QJointData +{ + QMatrix4x4 inverseBindMatrix; + QNodeIdVector childJointIds; + QQuaternion rotation; + QVector3D translation; + QVector3D scale; + QString name; +}; + +} // namespace Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3DCORE_QJOINT_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qlockableobserverinterface_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qlockableobserverinterface_p.h new file mode 100644 index 0000000..b33a84e --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qlockableobserverinterface_p.h @@ -0,0 +1,77 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QLOCKABLEOBSERVERINTERFACE_P_H +#define QT3DCORE_QLOCKABLEOBSERVERINTERFACE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +typedef std::vector QSceneChangeList; + +class QT3DCORE_PRIVATE_EXPORT QLockableObserverInterface : public QObserverInterface +{ +public: + virtual ~QLockableObserverInterface(); + virtual void sceneChangeEventWithLock(const QSceneChangePtr &e) = 0; + virtual void sceneChangeEventWithLock(const QSceneChangeList &e) = 0; +}; + +} // namespace Qt3DCore + +QT_END_NAMESPACE + +Q_DECLARE_METATYPE(Qt3DCore::QLockableObserverInterface *) // LCOV_EXCL_LINE + +#endif // QT3DCORE_QLOCKABLEOBSERVERINTERFACE_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qmath3d_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qmath3d_p.h new file mode 100644 index 0000000..a4f33f0 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qmath3d_p.h @@ -0,0 +1,213 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Konstantin Ritt. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QMATH3D_P_H +#define QT3DCORE_QMATH3D_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt3D API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// +#include +#include +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +inline void composeQMatrix4x4(const QVector3D &position, const QQuaternion &orientation, const QVector3D &scale, QMatrix4x4 &m) +{ + const QMatrix3x3 rot3x3(orientation.toRotationMatrix()); + + // set up final matrix with scale, rotation and translation + m(0, 0) = scale.x() * rot3x3(0, 0); m(0, 1) = scale.y() * rot3x3(0, 1); m(0, 2) = scale.z() * rot3x3(0, 2); m(0, 3) = position.x(); + m(1, 0) = scale.x() * rot3x3(1, 0); m(1, 1) = scale.y() * rot3x3(1, 1); m(1, 2) = scale.z() * rot3x3(1, 2); m(1, 3) = position.y(); + m(2, 0) = scale.x() * rot3x3(2, 0); m(2, 1) = scale.y() * rot3x3(2, 1); m(2, 2) = scale.z() * rot3x3(2, 2); m(2, 3) = position.z(); + // no projection term + m(3, 0) = 0.0f; m(3, 1) = 0.0f; m(3, 2) = 0.0f; m(3, 3) = 1.0f; +} + +inline void decomposeQMatrix3x3(const QMatrix3x3 &m, QMatrix3x3 &Q, QVector3D &D, QVector3D &U) +{ + // Factor M = QR = QDU where Q is orthogonal, D is diagonal, + // and U is upper triangular with ones on its diagonal. + // Algorithm uses Gram-Schmidt orthogonalization (the QR algorithm). + // + // If M = [ m0 | m1 | m2 ] and Q = [ q0 | q1 | q2 ], then + // q0 = m0/|m0| + // q1 = (m1-(q0*m1)q0)/|m1-(q0*m1)q0| + // q2 = (m2-(q0*m2)q0-(q1*m2)q1)/|m2-(q0*m2)q0-(q1*m2)q1| + // + // where |V| indicates length of vector V and A*B indicates dot + // product of vectors A and B. The matrix R has entries + // + // r00 = q0*m0 r01 = q0*m1 r02 = q0*m2 + // r10 = 0 r11 = q1*m1 r12 = q1*m2 + // r20 = 0 r21 = 0 r22 = q2*m2 + // + // so D = diag(r00,r11,r22) and U has entries u01 = r01/r00, + // u02 = r02/r00, and u12 = r12/r11. + + // Q = rotation + // D = scaling + // U = shear + + // D stores the three diagonal entries r00, r11, r22 + // U stores the entries U[0] = u01, U[1] = u02, U[2] = u12 + + // build orthogonal matrix Q + float invLen = 1.0f / std::sqrt(m(0, 0) * m(0, 0) + m(1, 0) * m(1, 0) + m(2, 0) * m(2, 0)); + Q(0, 0) = m(0, 0) * invLen; + Q(1, 0) = m(1, 0) * invLen; + Q(2, 0) = m(2, 0) * invLen; + + float dot = Q(0, 0) * m(0, 1) + Q(1, 0) * m(1, 1) + Q(2, 0) * m(2, 1); + Q(0, 1) = m(0, 1) - dot * Q(0, 0); + Q(1, 1) = m(1, 1) - dot * Q(1, 0); + Q(2, 1) = m(2, 1) - dot * Q(2, 0); + invLen = 1.0f / std::sqrt(Q(0, 1) * Q(0, 1) + Q(1, 1) * Q(1, 1) + Q(2, 1) * Q(2, 1)); + Q(0, 1) *= invLen; + Q(1, 1) *= invLen; + Q(2, 1) *= invLen; + + dot = Q(0, 0) * m(0, 2) + Q(1, 0) * m(1, 2) + Q(2, 0) * m(2, 2); + Q(0, 2) = m(0, 2) - dot * Q(0, 0); + Q(1, 2) = m(1, 2) - dot * Q(1, 0); + Q(2, 2) = m(2, 2) - dot * Q(2, 0); + dot = Q(0, 1) * m(0, 2) + Q(1, 1) * m(1, 2) + Q(2, 1) * m(2, 2); + Q(0, 2) -= dot * Q(0, 1); + Q(1, 2) -= dot * Q(1, 1); + Q(2, 2) -= dot * Q(2, 1); + invLen = 1.0f / std::sqrt(Q(0, 2) * Q(0, 2) + Q(1, 2) * Q(1, 2) + Q(2, 2) * Q(2, 2)); + Q(0, 2) *= invLen; + Q(1, 2) *= invLen; + Q(2, 2) *= invLen; + + // guarantee that orthogonal matrix has determinant 1 (no reflections) + const float det = Q(0, 0) * Q(1, 1) * Q(2, 2) + Q(0, 1) * Q(1, 2) * Q(2, 0) + + Q(0, 2) * Q(1, 0) * Q(2, 1) - Q(0, 2) * Q(1, 1) * Q(2, 0) - + Q(0, 1) * Q(1, 0) * Q(2, 2) - Q(0, 0) * Q(1, 2) * Q(2, 1); + if (det < 0.0f) + Q *= -1.0f; + + // build "right" matrix R + QMatrix3x3 R(Qt::Uninitialized); + R(0, 0) = Q(0, 0) * m(0, 0) + Q(1, 0) * m(1, 0) + Q(2, 0) * m(2, 0); + R(0, 1) = Q(0, 0) * m(0, 1) + Q(1, 0) * m(1, 1) + Q(2, 0) * m(2, 1); + R(1, 1) = Q(0, 1) * m(0, 1) + Q(1, 1) * m(1, 1) + Q(2, 1) * m(2, 1); + R(0, 2) = Q(0, 0) * m(0, 2) + Q(1, 0) * m(1, 2) + Q(2, 0) * m(2, 2); + R(1, 2) = Q(0, 1) * m(0, 2) + Q(1, 1) * m(1, 2) + Q(2, 1) * m(2, 2); + R(2, 2) = Q(0, 2) * m(0, 2) + Q(1, 2) * m(1, 2) + Q(2, 2) * m(2, 2); + + // the scaling component + D[0] = R(0, 0); + D[1] = R(1, 1); + D[2] = R(2, 2); + + // the shear component + U[0] = R(0, 1) / D[0]; + U[1] = R(0, 2) / D[0]; + U[2] = R(1, 2) / D[1]; +} + +inline bool hasScale(const QMatrix4x4 &m) +{ + // If the columns are orthonormal and form a right-handed system, then there is no scale + float t(m.determinant()); + if (!qFuzzyIsNull(t - 1.0f)) + return true; + t = m(0, 0) * m(0, 0) + m(1, 0) * m(1, 0) + m(2, 0) * m(2, 0); + if (!qFuzzyIsNull(t - 1.0f)) + return true; + t = m(0, 1) * m(0, 1) + m(1, 1) * m(1, 1) + m(2, 1) * m(2, 1); + if (!qFuzzyIsNull(t - 1.0f)) + return true; + t = m(0, 2) * m(0, 2) + m(1, 2) * m(1, 2) + m(2, 2) * m(2, 2); + if (!qFuzzyIsNull(t - 1.0f)) + return true; + return false; +} + +inline void decomposeQMatrix4x4(const QMatrix4x4 &m, QVector3D &position, QQuaternion &orientation, QVector3D &scale) +{ + Q_ASSERT(m.isAffine()); + + const QMatrix3x3 m3x3(m.toGenericMatrix<3, 3>()); + + QMatrix3x3 rot3x3(Qt::Uninitialized); + if (hasScale(m)) { + decomposeQMatrix3x3(m3x3, rot3x3, scale, position); + } else { + // we know there is no scaling part; no need for QDU decomposition + scale = QVector3D(1.0f, 1.0f, 1.0f); + rot3x3 = m3x3; + } + orientation = QQuaternion::fromRotationMatrix(rot3x3); + position = QVector3D(m(0, 3), m(1, 3), m(2, 3)); +} + +inline void decomposeQMatrix4x4(const QMatrix4x4 &m, Qt3DCore::Sqt &sqt) +{ + Q_ASSERT(m.isAffine()); + + const QMatrix3x3 m3x3(m.toGenericMatrix<3, 3>()); + + QMatrix3x3 rot3x3(Qt::Uninitialized); + if (hasScale(m)) { + decomposeQMatrix3x3(m3x3, rot3x3, sqt.scale, sqt.translation); + } else { + // we know there is no scaling part; no need for QDU decomposition + sqt.scale = QVector3D(1.0f, 1.0f, 1.0f); + rot3x3 = m3x3; + } + sqt.rotation = QQuaternion::fromRotationMatrix(rot3x3); + sqt.translation = QVector3D(m(0, 3), m(1, 3), m(2, 3)); +} + +QT_END_NAMESPACE + +#endif // QT3DCORE_QMATH3D_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qnode_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qnode_p.h new file mode 100644 index 0000000..361a3b7 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qnode_p.h @@ -0,0 +1,207 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QNODE_P_H +#define QT3DCORE_QNODE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include + +#include +#include +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QNode; +class QAspectEngine; + +class QT3DCORE_PRIVATE_EXPORT QNodePrivate : public QObjectPrivate, public QObservableInterface +{ +public: + QNodePrivate(); + ~QNodePrivate(); + + void init(QNode *parent); + + virtual void setScene(QScene *scene); + QScene *scene() const; + + void setArbiter(QLockableObserverInterface *arbiter) override; + + void notifyPropertyChange(const char *name, const QVariant &value); + void notifyDynamicPropertyChange(const QByteArray &name, const QVariant &value); + void notifyObservers(const QSceneChangePtr &change) override; + + void insertTree(QNode *treeRoot, int depth = 0); + void updatePropertyTrackMode(); + + Q_DECLARE_PUBLIC(QNode) + + // For now this just protects access to the m_changeArbiter. + // Later on we may decide to extend support for multiple observers. + QAbstractArbiter *m_changeArbiter; + QMetaObject *m_typeInfo; + QScene *m_scene; + mutable QNodeId m_id; + QNodeId m_parentId; // Store this so we have it even in parent's QObject dtor + bool m_blockNotifications; + bool m_hasBackendNode; + bool m_enabled; + bool m_notifiedParent; + QNode::PropertyTrackingMode m_defaultPropertyTrackMode; + QHash m_trackedPropertiesOverrides; + + static QNodePrivate *get(QNode *q); + static void nodePtrDeleter(QNode *q); + + template + using DestructionFunctionPointer = void (Caller::*)(NodeType *); + + template + void registerDestructionHelper(NodeType *, DestructionFunctionPointer, PropertyType); + + template + void registerDestructionHelper(NodeType *node, DestructionFunctionPointer func, NodeType *&) + { + // If the node is destoyed, we make sure not to keep a dangling pointer to it + Q_Q(QNode); + auto f = [q, func]() { (static_cast(q)->*func)(nullptr); }; + m_destructionConnections.insert(node, QObject::connect(node, &QNode::nodeDestroyed, f)); + } + + template + void registerDestructionHelper(NodeType *node, DestructionFunctionPointer func, QVector &) + { + // If the node is destoyed, we make sure not to keep a dangling pointer to it + Q_Q(QNode); + auto f = [q, func, node]() { (static_cast(q)->*func)(node); }; + m_destructionConnections.insert(node, QObject::connect(node, &QNode::nodeDestroyed, f)); + } + + template + using DestructionFunctionValue = void (Caller::*)(const ValueType&); + + template + void registerDestructionHelper(NodeType *node, DestructionFunctionValue func, NodeType *&, + const ValueType &resetValue) + { + // If the node is destoyed, we make sure not to keep a dangling pointer to it + Q_Q(QNode); + auto f = [q, func, resetValue]() { (static_cast(q)->*func)(resetValue); }; + m_destructionConnections.insert(node, QObject::connect(node, &QNode::nodeDestroyed, f)); + } + + template + void registerPrivateDestructionHelper(NodeType *node, DestructionFunctionPointer func) + { + // If the node is destoyed, we make sure not to keep a dangling pointer to it + auto f = [this, func, node]() { (static_cast(this)->*func)(node); }; + m_destructionConnections.insert(node, QObject::connect(node, &QNode::nodeDestroyed, f)); + } + + void unregisterDestructionHelper(QNode *node) + { + QObject::disconnect(m_destructionConnections.take(node)); + } + + static const QMetaObject *findStaticMetaObject(const QMetaObject *metaObject); + + void _q_postConstructorInit(); + void _q_ensureBackendNodeCreated(); + +private: + void notifyCreationChange(); + void notifyDestructionChangesAndRemoveFromScene(); + void _q_addChild(QNode *childNode); + void _q_removeChild(QNode *childNode); + void _q_setParentHelper(QNode *parent); + void registerNotifiedProperties(); + void unregisterNotifiedProperties(); + void propertyChanged(int propertyIndex); + + void setSceneHelper(QNode *root); + void unsetSceneHelper(QNode *root); + void addEntityComponentToScene(QNode *root); + + friend class PropertyChangeHandler; + bool m_propertyChangesSetup; + PropertyChangeHandler m_signals; + QHash m_destructionConnections; +}; + +class NodePostConstructorInit : public QObject +{ + Q_OBJECT +public: + NodePostConstructorInit(QObject *parent = nullptr); + virtual ~NodePostConstructorInit(); + void removeNode(QNode *node); + void addNode(QNode *node); + +private Q_SLOTS: + void processNodes(); + +private: + QQueue m_nodesToConstruct; + bool m_requestedProcessing; +}; + +} // namespace Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3DCORE_NODE_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qnodecommand_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qnodecommand_p.h new file mode 100644 index 0000000..dd4259b --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qnodecommand_p.h @@ -0,0 +1,76 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QNODECOMMAND_P_H +#define QT3DCORE_QNODECOMMAND_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QT3DCORE_PRIVATE_EXPORT QNodeCommandPrivate : public QSceneChangePrivate +{ +public: + QNodeCommandPrivate(); + ~QNodeCommandPrivate(); + + static QNodeCommand::CommandId createId(); + + QNodeCommand::CommandId m_commandId; + QNodeCommand::CommandId m_replyToCommandId; + QString m_name; + QVariant m_data; +}; + +} // namespace Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3DCORE_QNODECOMMAND_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qnodecreatedchange_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qnodecreatedchange_p.h new file mode 100644 index 0000000..5e4c5b9 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qnodecreatedchange_p.h @@ -0,0 +1,78 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QNODECREATEDCHANGE_P_H +#define QT3DCORE_QNODECREATEDCHANGE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include +#include + +QT_BEGIN_NAMESPACE + +struct QMetaObject; + +namespace Qt3DCore { + +class QNode; + +class QT3DCORE_PRIVATE_EXPORT QNodeCreatedChangeBasePrivate : public QSceneChangePrivate +{ +public: + QNodeCreatedChangeBasePrivate(const QNode *node); + + QNodeId m_parentId; + const QMetaObject *m_metaObject; + bool m_nodeEnabled; +}; + +} // namespace Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3DCORE_QNODECREATEDCHANGE_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qnodecreatedchangegenerator_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qnodecreatedchangegenerator_p.h new file mode 100644 index 0000000..42c2847 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qnodecreatedchangegenerator_p.h @@ -0,0 +1,94 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QNODECREATEDCHANGEGENERATOR_H +#define QT3DCORE_QNODECREATEDCHANGEGENERATOR_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QT3DCORE_PRIVATE_EXPORT QNodeCreatedChangeGenerator +{ +public: + QNodeCreatedChangeGenerator(QNode *rootNode); + + QVector creationChanges() const { return m_creationChanges; } + +private: + void createCreationChange(QNode *node) + { + const auto creationChange = node->createNodeCreationChange(); + m_creationChanges.push_back(creationChange); + + // Store the metaobject of the node in the QNode so that we have it available + // to us during destruction in the QNode destructor. This allows us to send + // the QNodeId and the metaobject as typeinfo to the backend aspects so they + // in turn can find the correct QBackendNodeMapper object to handle the destruction + // of the corresponding backend nodes. + QNodePrivate *d = QNodePrivate::get(node); + d->m_typeInfo = const_cast(creationChange->metaObject()); + + // Mark this node as having been handled for creation so that it is picked up + d->m_hasBackendNode = true; + } + + QVector m_creationChanges; +}; + +} // namespace Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3DCORE_QNODECREATEDCHANGEGENERATOR_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qnodedestroyedchange_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qnodedestroyedchange_p.h new file mode 100644 index 0000000..081ca85 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qnodedestroyedchange_p.h @@ -0,0 +1,71 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QNODEDESTROYEDCHANGE_P_H +#define QT3DCORE_QNODEDESTROYEDCHANGE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QNodeDestroyedChange; + +class QNodeDestroyedChangePrivate : public QSceneChangePrivate +{ +public: + QVector m_subtreeIdsAndTypes; +}; + +} // namespace Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3DCORE_QNODEDESTROYEDCHANGE_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qnodevisitor_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qnodevisitor_p.h new file mode 100644 index 0000000..15bfa90 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qnodevisitor_p.h @@ -0,0 +1,273 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QNODEVISITOR_P_H +#define QT3DCORE_QNODEVISITOR_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore +{ + +class QT3DCORESHARED_EXPORT QNodeVisitor +{ +public: + QNodeVisitor(); + virtual ~QNodeVisitor(); + + template + void traverse(QNode *rootNode_, NodeVisitorFunc fN) + { + startTraversing(rootNode_, createFunctor(fN)); + } + + template + void traverse(QNode *rootNode_, Obj *instance, NodeVisitorFunc fN) + { + startTraversing(rootNode_, createFunctor(instance, fN)); + } + + template + void traverse(QNode *rootNode_, NodeVisitorFunc fN, EntityVisitorFunc fE) + { + startTraversing(rootNode_, createFunctor(fN), createFunctor(fE)); + } + + template + void traverse(QNode *rootNode_, Obj *instance, NodeVisitorFunc fN, EntityVisitorFunc fE) + { + startTraversing(rootNode_, createFunctor(instance, fN), createFunctor(instance, fE)); + } + + QNode *rootNode() const; + QNode *currentNode() const; + void setPath(QNodeVector path); + QNodeVector path() const; + void append(QNode *n); + void pop_back(); + +private: + Q_DISABLE_COPY(QNodeVisitor) + QNodeVector m_path; + + template + void startTraversing(QNode *rootNode_, NodeVisitorFunctor fN) + { + setPath(QNodeVector() << rootNode_); + if (rootNode_) + visitNode(rootNode_, fN); + } + + template + void startTraversing(QNode *rootNode_, NodeVisitorFunctor fN, EntityVisitorFunctor fE) + { + setPath(QNodeVector() << rootNode_); + QEntity* rootEntity = qobject_cast(rootNode_); + + if (rootEntity) + visitEntity(rootEntity, fN, fE); + else if (rootNode_) + visitNode(rootNode_, fN, fE); + } + + template + void visitNode(QNode *nd, NodeVisitorFunctor &fN) + { + fN(nd); + traverseChildren(fN); + } + + template + void visitNode(QNode *nd, NodeVisitorFunctor &fN, EntityVisitorFunctor &fE) + { + fN(nd); + traverseChildren(fN, fE); + } + + template + void visitEntity(QEntity *ent, NodeVisitorFunctor &fN, EntityVisitorFunctor &fE) + { + fE(ent); + visitNode(ent, fN, fE); + } + + template + void traverseChildren(NodeVisitorFunctor &fN, EntityVisitorFunctor &fE) + { + for (QObject *n : currentNode()->children()) { + QNode *node = qobject_cast(n); + if (node != nullptr) + outerVisitNode(node, fN, fE); + } // of children iteration + } + + template + void traverseChildren(NodeVisitorFunctor &fN) + { + for (QObject *n : currentNode()->children()) { + QNode *node = qobject_cast(n); + if (node != nullptr) + outerVisitNode(node, fN); + } // of children iteration + } + + template + void outerVisitNode(QNode *n, NodeVisitorFunctor &fN, EntityVisitorFunctor &fE) + { + append(n); + QEntity* e = qobject_cast(n); + if (e) { + visitEntity(e, fN, fE); + } else { + visitNode(n, fN, fE); + } + pop_back(); + } + + template + void outerVisitNode(QNode *n, NodeVisitorFunctor &fN) + { + append(n); + visitNode(n, fN); + pop_back(); + } + + template + class FunctionFunctor { + public: + typedef ReturnType (*functionPtr)(NodeType); + + FunctionFunctor(functionPtr fPtr) + : m_functionPointer(fPtr) + {} + + void operator()(NodeType node) + { + (*m_functionPointer)(node); + } + + private: + functionPtr m_functionPointer; + }; + + template + class MemberFunctionFunctor { + public: + typedef ReturnType (C::*functionPtr)(NodeType); + + MemberFunctionFunctor(C* instance, functionPtr fPtr) + : m_instance(instance) + , m_functionPointer(fPtr) + {} + + void operator()(NodeType node) + { + (*m_instance.*m_functionPointer)(node); + } + + private: + C *m_instance; + functionPtr m_functionPointer; + }; + + template + class ConstMemberFunctionFunctor { + public: + typedef ReturnType (C::*functionPtr)(NodeType) const; + + ConstMemberFunctionFunctor(C* instance, functionPtr fPtr) + : m_instance(instance) + , m_functionPointer(fPtr) + {} + + void operator()(NodeType node) const + { + (*m_instance.*m_functionPointer)(node); + } + + private: + C *m_instance; + functionPtr m_functionPointer; + }; + + template + const T& createFunctor(const T& t) + { + return t; + } + + template + FunctionFunctor createFunctor(ReturnType (*fPtr)(NodeType)) + { + return FunctionFunctor(fPtr); + } + + template + MemberFunctionFunctor createFunctor(C *instance, ReturnType (C::*fPtr)(NodeType)) + { + return MemberFunctionFunctor(instance, fPtr); + } + + template + ConstMemberFunctionFunctor createFunctor(C *instance, ReturnType (C::*fPtr)(NodeType) const) + { + return ConstMemberFunctionFunctor(instance, fPtr); + } +}; + +} // namespace Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3DCORE_QNODEVISITOR_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qobservableinterface_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qobservableinterface_p.h new file mode 100644 index 0000000..8b92168 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qobservableinterface_p.h @@ -0,0 +1,79 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QOBSERVABLEINTERFACE_P_H +#define QT3DCORE_QOBSERVABLEINTERFACE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QLockableObserverInterface; + +class QT3DCORE_PRIVATE_EXPORT QObservableInterface +{ +public: + virtual ~QObservableInterface(); + + virtual void setArbiter(QLockableObserverInterface *arbiter) = 0; + +protected: + virtual void notifyObservers(const QSceneChangePtr &e) = 0; +}; + +} // namespace Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3DCORE_QOBSERVABLEINTERFACE_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qobserverinterface_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qobserverinterface_p.h new file mode 100644 index 0000000..f2ed52a --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qobserverinterface_p.h @@ -0,0 +1,73 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QOBSERVERINTERFACE_P_H +#define QT3DCORE_QOBSERVERINTERFACE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QT3DCORESHARED_EXPORT QObserverInterface +{ +public: + virtual ~QObserverInterface(); + virtual void sceneChangeEvent(const QSceneChangePtr &e) = 0; +}; + +} // namespace Qt3DCore + +QT_END_NAMESPACE + +Q_DECLARE_METATYPE(Qt3DCore::QObserverInterface *) // LCOV_EXCL_LINE + +#endif // QT3DCORE_QOBSERVERINTERFACE_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qopenglinformationservice_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qopenglinformationservice_p.h new file mode 100644 index 0000000..2adf733 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qopenglinformationservice_p.h @@ -0,0 +1,81 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QOPENGLINFORMATIONSERVICE_P_H +#define QT3DCORE_QOPENGLINFORMATIONSERVICE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QOpenGLInformationServicePrivate; + +class QT3DCORESHARED_EXPORT QOpenGLInformationService : public QAbstractServiceProvider +{ + Q_OBJECT +public: + virtual QSurfaceFormat format() const = 0; + +protected: + QOpenGLInformationService(const QString &description = QString()); + QOpenGLInformationService(QOpenGLInformationServicePrivate &dd); +}; + +} // namespace Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3DCORE_QOPENGLINFORMATIONSERVICE_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qopenglinformationservice_p_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qopenglinformationservice_p_p.h new file mode 100644 index 0000000..d10d81d --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qopenglinformationservice_p_p.h @@ -0,0 +1,76 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QOPENGLINFORMATIONSERVICE_P_P_H +#define QT3DCORE_QOPENGLINFORMATIONSERVICE_P_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QOpenGLInformationServicePrivate : public QAbstractServiceProviderPrivate +{ +public: + QOpenGLInformationServicePrivate(const QString &description) + : QAbstractServiceProviderPrivate(QServiceLocator::OpenGLInformation, description) + {} +}; + +} + +QT_END_NAMESPACE + +#endif // QT3DCORE_QOPENGLINFORMATIONSERVICE_P_P_H + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qpostman_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qpostman_p.h new file mode 100644 index 0000000..ec00c50 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qpostman_p.h @@ -0,0 +1,101 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QPOSTMAN_P_H +#define QT3DCORE_QPOSTMAN_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QScene; +class QPostmanPrivate; + +class QT3DCORE_PRIVATE_EXPORT QAbstractPostman : public QObserverInterface +{ +public: + virtual void setScene(QScene *sceneLookup) = 0; + virtual void notifyBackend(const QSceneChangePtr &change) = 0; + virtual bool shouldNotifyFrontend(const QSceneChangePtr &change) = 0; +}; + +class Q_AUTOTEST_EXPORT QPostman final + : public QObject + , public QAbstractPostman +{ + Q_OBJECT +public: + explicit QPostman(QObject *parent = 0); + ~QPostman(); + + void setScene(QScene *sceneLookup) final; + void sceneChangeEvent(const QSceneChangePtr &e) final; + void notifyBackend(const QSceneChangePtr &change) final; + bool shouldNotifyFrontend(const QSceneChangePtr &e) final; + +public Q_SLOTS: + void submitChangeBatch(); + +private: + Q_DECLARE_PRIVATE(QPostman) + Q_INVOKABLE void notifyFrontendNode(const QSceneChangePtr &e); + +}; + +} // Qt3D + +QT_END_NAMESPACE + +Q_DECLARE_METATYPE(Qt3DCore::QAbstractPostman*) // LCOV_EXCL_LINE + +#endif // QT3DCORE_QPOSTMAN_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qpostman_p_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qpostman_p_p.h new file mode 100644 index 0000000..1b5cca3 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qpostman_p_p.h @@ -0,0 +1,85 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QPOSTMAN_P_P_H +#define QT3DCORE_QPOSTMAN_P_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QScene; +class QPostman; + +class QT3DCORE_PRIVATE_EXPORT QPostmanPrivate : public QObjectPrivate +{ +public: + QPostmanPrivate() + : QObjectPrivate() + , m_scene(nullptr) + { + } + + static QPostmanPrivate *get(QPostman *q); + + Q_DECLARE_PUBLIC(QPostman) + QScene *m_scene; + std::vector m_batch; +}; + +} // Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3DCORE_QPOSTMAN_P_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qpropertynodeaddedchange_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qpropertynodeaddedchange_p.h new file mode 100644 index 0000000..2930867 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qpropertynodeaddedchange_p.h @@ -0,0 +1,79 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QPROPERTYNODEADDEDCHANGE_P_H +#define QT3DCORE_QPROPERTYNODEADDEDCHANGE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QPropertyUpdatedChange; +class QFrameAllocator; + +class QPropertyNodeAddedChangePrivate : public QStaticPropertyValueAddedChangeBasePrivate +{ +public: + QPropertyNodeAddedChangePrivate(); + + Q_DECLARE_PUBLIC(QPropertyNodeAddedChange) + + QNodeIdTypePair m_addedNodeIdTypePair; +}; + +} // Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3DCORE_QPROPERTYNODEADDEDCHANGE_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qpropertynoderemovedchange_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qpropertynoderemovedchange_p.h new file mode 100644 index 0000000..0145cc5 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qpropertynoderemovedchange_p.h @@ -0,0 +1,80 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QPROPERTYNODEREMOVEDCHANGE_P_H +#define QT3DCORE_QPROPERTYNODEREMOVEDCHANGE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QPropertyUpdatedChange; +class QFrameAllocator; + +class QPropertyNodeRemovedChangePrivate : public QStaticPropertyValueRemovedChangeBasePrivate +{ +public: + QPropertyNodeRemovedChangePrivate(); + + Q_DECLARE_PUBLIC(QPropertyNodeRemovedChange) + + const char *m_propertyName; + QNodeIdTypePair m_removedNodeIdTypePair; +}; + +} // Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3DCORE_QPROPERTYNODEREMOVEDCHANGE_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qpropertyupdatedchange_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qpropertyupdatedchange_p.h new file mode 100644 index 0000000..ad908a8 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qpropertyupdatedchange_p.h @@ -0,0 +1,79 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QPROPERTYUPDATEDCHANGE_P_H +#define QT3DCORE_QPROPERTYUPDATEDCHANGE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QPropertyUpdatedChange; + +class QPropertyUpdatedChangePrivate : public QStaticPropertyUpdatedChangeBasePrivate +{ +public: + QPropertyUpdatedChangePrivate(); + virtual ~QPropertyUpdatedChangePrivate(); + + Q_DECLARE_PUBLIC(QPropertyUpdatedChange) + + QVariant m_value; +}; + +} // Qt3D + +QT_END_NAMESPACE + +#endif // QT3DCORE_QPROPERTYUPDATEDCHANGE_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qpropertyupdatedchangebase_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qpropertyupdatedchangebase_p.h new file mode 100644 index 0000000..7c66812 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qpropertyupdatedchangebase_p.h @@ -0,0 +1,85 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QPROPERTYUPDATEDCHANGEBASE_P_H +#define QT3DCORE_QPROPERTYUPDATEDCHANGEBASE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QPropertyUpdatedChangeBase; + +class QT3DCORE_PRIVATE_EXPORT QPropertyUpdatedChangeBasePrivate : public QSceneChangePrivate +{ +public: + QPropertyUpdatedChangeBasePrivate(); + virtual ~QPropertyUpdatedChangeBasePrivate(); + + static QPropertyUpdatedChangeBasePrivate *get(QPropertyUpdatedChangeBase *q); + + Q_DECLARE_PUBLIC(QPropertyUpdatedChangeBase) + + // Frontend nodes should not receive intermediate animated property + // updated by default. Only if they subscribe. The animation aspect + // will set this to true for animating properties apart from the final + // frame's update. + bool m_isIntermediate; +}; + +} // namespace Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3DCORE_QPROPERTYUPDATEDCHANGEBASE_P_H + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qpropertyvalueaddedchange_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qpropertyvalueaddedchange_p.h new file mode 100644 index 0000000..edd5948 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qpropertyvalueaddedchange_p.h @@ -0,0 +1,80 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QPROPERTYVALUEADDEDCHANGE_P_H +#define QT3DCORE_QPROPERTYVALUEADDEDCHANGE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QPropertyValueAddedChange; + +class QT3DCORE_PRIVATE_EXPORT QPropertyValueAddedChangePrivate : public QStaticPropertyValueAddedChangeBasePrivate +{ +public: + QPropertyValueAddedChangePrivate(); + + Q_DECLARE_PUBLIC(QPropertyValueAddedChange) + + QVariant m_addedValue; +}; + +} // Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3DCORE_QPROPERTYVALUEADDEDCHANGE_P_H + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qpropertyvalueaddedchangebase_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qpropertyvalueaddedchangebase_p.h new file mode 100644 index 0000000..be92e2d --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qpropertyvalueaddedchangebase_p.h @@ -0,0 +1,77 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QPROPERTYVALUEADDEDCHANGEBASE_P_H +#define QT3DCORE_QPROPERTYVALUEADDEDCHANGEBASE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QPropertyValueAddedChangeBase; + +class QT3DCORE_PRIVATE_EXPORT QPropertyValueAddedChangeBasePrivate : public QSceneChangePrivate +{ +public: + QPropertyValueAddedChangeBasePrivate(); + virtual ~QPropertyValueAddedChangeBasePrivate(); + + Q_DECLARE_PUBLIC(QPropertyValueAddedChangeBase) +}; + +} // namespace Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3DCORE_QPROPERTYVALUEADDEDCHANGEBASE_P_H + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qpropertyvalueremovedchange_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qpropertyvalueremovedchange_p.h new file mode 100644 index 0000000..b4e86bc --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qpropertyvalueremovedchange_p.h @@ -0,0 +1,80 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QPROPERTYVALUEREMOVEDCHANGE_P_H +#define QT3DCORE_QPROPERTYVALUEREMOVEDCHANGE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QPropertyValueRemovedChange; + +class QT3DCORE_PRIVATE_EXPORT QPropertyValueRemovedChangePrivate : public QStaticPropertyValueRemovedChangeBasePrivate +{ +public: + QPropertyValueRemovedChangePrivate(); + + Q_DECLARE_PUBLIC(QPropertyValueRemovedChange) + + QVariant m_RemovedValue; +}; + +} // Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3DCORE_QPROPERTYVALUEREMOVEDCHANGE_P_H + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qpropertyvalueremovedchangebase_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qpropertyvalueremovedchangebase_p.h new file mode 100644 index 0000000..f9c1b40 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qpropertyvalueremovedchangebase_p.h @@ -0,0 +1,77 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QPROPERTYVALUEREMOVEDCHANGEBASE_P_H +#define QT3DCORE_QPROPERTYVALUEREMOVEDCHANGEBASE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QPropertyValueRemovedChangeBase; + +class QT3DCORE_PRIVATE_EXPORT QPropertyValueRemovedChangeBasePrivate : public QSceneChangePrivate +{ +public: + QPropertyValueRemovedChangeBasePrivate(); + virtual ~QPropertyValueRemovedChangeBasePrivate(); + + Q_DECLARE_PUBLIC(QPropertyValueRemovedChangeBase) +}; + +} // namespace Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3DCORE_QPROPERTYVALUEREMOVEDCHANGEBASE_P_H + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qresourcemanager_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qresourcemanager_p.h new file mode 100644 index 0000000..d944c16 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qresourcemanager_p.h @@ -0,0 +1,500 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QABSTRACTRESOURCESMANAGER_H +#define QT3DCORE_QABSTRACTRESOURCESMANAGER_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include +#include +#include + +#include +#include + +// Silence complaints about unreferenced local variables in +// ArrayAllocatingPolicy::deallocateBuckets() when the compiler +// inlines the call to the dtor and it is empty. Default warning +// setting re-enabled at bottom of this file +#if defined(Q_CC_MSVC) +#pragma warning(disable : 4189) +#endif + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +template +struct NonLockingPolicy +{ + struct ReadLocker + { + ReadLocker(const NonLockingPolicy*) {} + void unlock() {} + void relock() {} + }; + + struct WriteLocker + { + WriteLocker(const NonLockingPolicy*) {} + void unlock() {} + void relock() {} + }; + + struct Locker + { + Locker(const NonLockingPolicy*) {} + void unlock() {} + void relock() {} + }; +}; + +template +class ObjectLevelLockingPolicy +{ +public : + ObjectLevelLockingPolicy() + {} + + class ReadLocker + { + public: + ReadLocker(const ObjectLevelLockingPolicy *host) + : m_locker(&host->m_readWritelock) + { } + + void unlock() + { + m_locker.unlock(); + } + + void relock() + { + m_locker.relock(); + } + + private: + QReadLocker m_locker; + }; + + class WriteLocker + { + public: + WriteLocker(const ObjectLevelLockingPolicy *host) + : m_locker(&host->m_readWritelock) + { } + + void unlock() + { + m_locker.unlock(); + } + + void relock() + { + m_locker.relock(); + } + + private: + QWriteLocker m_locker; + }; + + class Locker + { + public: + Locker(const ObjectLevelLockingPolicy *host) + : m_locker(&host->m_lock) + { } + + void unlock() + { + m_locker.unlock(); + } + + void relock() + { + m_locker.relock(); + } + + private: + QMutexLocker m_locker; + }; + +private: + friend class Locker; + friend class ReadLocker; + friend class WriteLocker; + mutable QReadWriteLock m_readWritelock; + mutable QMutex m_lock; +}; + +template +struct QResourceInfo +{ + enum + { + needsCleanup = false + }; +}; + +template <> +struct QResourceInfo +{ + enum + { + needsCleanup = false + }; +}; + +enum +{ + Q_REQUIRES_CLEANUP = 0 +}; + +#define Q_DECLARE_RESOURCE_INFO(TYPE, FLAGS) \ + namespace Qt3DCore { \ + template<> \ + struct QResourceInfo \ +{ \ + enum \ +{ \ + needsCleanup = ((FLAGS & Q_REQUIRES_CLEANUP) == 0) \ +}; \ +}; \ +} // namespace Qt3DCore + +template +struct Int2Type +{ + enum + { + value = v + }; +}; + +template +class QHandleData : public QHandle::Data +{ +public: + T data; +}; + +template +inline T *QHandle::operator->() const { return (d && counter == d->counter) ? &static_cast *>(d)->data : nullptr; } +template +inline T *QHandle::data() const { return (d && counter == d->counter) ? &static_cast *>(d)->data : nullptr; } + + +class QT3DCORE_PRIVATE_EXPORT AlignedAllocator +{ +public: + static void *allocate(uint size); + static void release(void *p); +}; + +template +class ArrayAllocatingPolicy +{ +public: + typedef QHandleData HandleData; + typedef QHandle Handle; + ArrayAllocatingPolicy() + { + } + + ~ArrayAllocatingPolicy() + { + m_activeHandles.clear(); + deallocateBuckets(); + } + + Handle allocateResource() + { + if (!freeList) + allocateBucket(); + typename Handle::Data *d = freeList; + freeList = freeList->nextFree; + d->counter = allocCounter; + allocCounter += 2; // ensure this will never clash with a pointer in nextFree by keeping the lowest bit set + Handle handle(d); + m_activeHandles.push_back(handle); + return handle; + } + + void releaseResource(const Handle &handle) + { + m_activeHandles.removeOne(handle); + typename Handle::Data *d = handle.data_ptr(); + d->nextFree = freeList; + freeList = d; + performCleanup(&static_cast *>(d)->data, Int2Type::needsCleanup>()); + } + + T *data(Handle h) + { + return h.operator->(); + } + + void for_each(std::function f) + { + Bucket *b = firstBucket; + while (b) { + for (int idx = 0; idx < Bucket::NumEntries; ++idx) { + T *t = &b->data[idx].data; + f(t); + } + b = b->header.next; + } + } + + int count() const { return m_activeHandles.size(); } + QVector activeHandles() const { return m_activeHandles; } + +private: + Q_DISABLE_COPY(ArrayAllocatingPolicy) + struct Bucket + { + struct Header + { + Bucket *next; + } header; + enum { + Size = 4096, + NumEntries = (Size - sizeof(Header)) / sizeof(HandleData) + }; + HandleData data[NumEntries]; + }; + + Bucket *firstBucket = 0; + QVector m_activeHandles; + typename Handle::Data *freeList = 0; + int allocCounter = 1; + + void allocateBucket() + { + // no free handle, allocate a new + // allocate aligned memory + Bucket *b = static_cast(AlignedAllocator::allocate(sizeof(Bucket))); + + // placement new + new (b) Bucket; + + b->header.next = firstBucket; + firstBucket = b; + for (int i = 0; i < Bucket::NumEntries - 1; ++i) { + b->data[i].nextFree = &b->data[i + 1]; + } + b->data[Bucket::NumEntries - 1].nextFree = nullptr; + freeList = &b->data[0]; + } + + void deallocateBuckets() + { + Bucket *b = firstBucket; + while (b) { + Bucket *n = b->header.next; + // Call dtor explicitly + b->~Bucket(); + // Release aligned memory + AlignedAllocator::release(b); + b = n; + } + } + + void performCleanup(T *r, Int2Type) + { + r->cleanup(); + } + + void performCleanup(T *, Int2Type) + {} + +}; + +#ifndef QT_NO_DEBUG_STREAM +template class LockingPolicy + > +class QResourceManager; + +template class LockingPolicy = NonLockingPolicy + > +QDebug operator<<(QDebug dbg, const QResourceManager &manager); +#endif + +template class LockingPolicy = NonLockingPolicy + > +class QResourceManager + : public ArrayAllocatingPolicy + , public LockingPolicy< QResourceManager > +{ +public: + typedef ArrayAllocatingPolicy Allocator; + typedef QHandle Handle; + + QResourceManager() : + Allocator() + { + } + + ~QResourceManager() + {} + + Handle acquire() + { + typename LockingPolicy::WriteLocker lock(this); + return Allocator::allocateResource(); + } + + ValueType* data(const Handle &handle) + { + return handle.operator->(); + } + + void release(const Handle &handle) + { + typename LockingPolicy::WriteLocker lock(this); + Allocator::releaseResource(handle); + } + + bool contains(const KeyType &id) const + { + typename LockingPolicy::ReadLocker lock(this); + return m_keyToHandleMap.contains(id); + } + + Handle getOrAcquireHandle(const KeyType &id) + { + typename LockingPolicy::ReadLocker lock(this); + Handle handle = m_keyToHandleMap.value(id); + if (handle.isNull()) { + lock.unlock(); + typename LockingPolicy::WriteLocker writeLock(this); + // Test that the handle hasn't been set (in the meantime between the read unlock and the write lock) + Handle &handleToSet = m_keyToHandleMap[id]; + if (handleToSet.isNull()) { + handleToSet = Allocator::allocateResource(); + } + return handleToSet; + } + return handle; + } + + Handle lookupHandle(const KeyType &id) + { + typename LockingPolicy::ReadLocker lock(this); + return m_keyToHandleMap.value(id); + } + + ValueType *lookupResource(const KeyType &id) + { + ValueType* ret = nullptr; + { + typename LockingPolicy::ReadLocker lock(this); + Handle handle = m_keyToHandleMap.value(id); + if (!handle.isNull()) + ret = Allocator::data(handle); + } + return ret; + } + + ValueType *getOrCreateResource(const KeyType &id) + { + const Handle handle = getOrAcquireHandle(id); + return handle.operator->(); + } + + void releaseResource(const KeyType &id) + { + typename LockingPolicy::WriteLocker lock(this); + Handle handle = m_keyToHandleMap.take(id); + if (!handle.isNull()) + Allocator::releaseResource(handle); + } + +protected: + QHash m_keyToHandleMap; + +private: + friend QDebug operator<< <>(QDebug dbg, const QResourceManager &manager); +}; + +#ifndef QT_NO_DEBUG_STREAM +template class LockingPolicy + > +QDebug operator<<(QDebug dbg, const QResourceManager &manager) +{ + QDebugStateSaver saver(dbg); + dbg << "Contains" << manager.count() << "items" << endl; + + dbg << "Key to Handle Map:" << endl; + const auto end = manager.m_keyToHandleMap.cend(); + for (auto it = manager.m_keyToHandleMap.cbegin(); it != end; ++it) + dbg << "QNodeId =" << it.key() << "Handle =" << it.value() << endl; + +// dbg << "Resources:" << endl; +// dbg << manager.m_handleManager; + return dbg; +} +#endif + +}// Qt3D + +QT_END_NAMESPACE + +#if defined(Q_CC_MSVC) +#pragma warning(default : 4189) +#endif + +#endif // QT3DCORE_QABSTRACTRESOURCESMANAGER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qscene_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qscene_p.h new file mode 100644 index 0000000..1de7e3d --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qscene_p.h @@ -0,0 +1,126 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QSCENE_P_H +#define QT3DCORE_QSCENE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QScenePrivate; +class QAspectEngine; +class NodePostConstructorInit; + +typedef QList QObservableList; + +class QT3DCORE_PRIVATE_EXPORT QScene +{ +public: + QScene(QAspectEngine *engine = nullptr); + ~QScene(); + + QAspectEngine *engine() const; + + void addObservable(QObservableInterface *observable, QNodeId id); + void addObservable(QNode *observable); + void removeObservable(QObservableInterface *observable, QNodeId id); + void removeObservable(QNode *observable); + QObservableList lookupObservables(QNodeId id) const; + + QNode *lookupNode(QNodeId id) const; + QVector lookupNodes(const QVector &ids) const; + QNodeId nodeIdFromObservable(QObservableInterface *observable) const; + + QNode *rootNode() const; + + void setArbiter(Qt3DCore::QLockableObserverInterface *arbiter); + Qt3DCore::QLockableObserverInterface *arbiter() const; + + // Component -> Entities + QVector entitiesForComponent(QNodeId id) const; + void addEntityForComponent(QNodeId componentUuid, QNodeId entityUuid); + void removeEntityForComponent(QNodeId componentUuid, QNodeId entityUuid); + bool hasEntityForComponent(QNodeId componentUuid, QNodeId entityUuid); + + // Node -> Property Update Data + struct NodePropertyTrackData + { + QNode::PropertyTrackingMode defaultTrackMode = QNode::TrackFinalValues; + QHash trackedPropertiesOverrides; + }; + NodePropertyTrackData lookupNodePropertyTrackData(QNodeId id) const; + void setPropertyTrackDataForNode(QNodeId id, const NodePropertyTrackData &data); + void removePropertyTrackDataForNode(QNodeId id); + + NodePostConstructorInit* postConstructorInit() const; + +private: + Q_DECLARE_PRIVATE(QScene) + QScopedPointer d_ptr; + + void setRootNode(QNode *root); + friend class QAspectEnginePrivate; +}; + +} // Qt3D + +QT_END_NAMESPACE + +Q_DECLARE_METATYPE(Qt3DCore::QScene*) // LCOV_EXCL_LINE + +#endif // QT3DCORE_QSCENE_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qscenechange_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qscenechange_p.h new file mode 100644 index 0000000..cd0194b --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qscenechange_p.h @@ -0,0 +1,85 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QSCENECHANGE_P_H +#define QT3DCORE_QSCENECHANGE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QSceneChange; +class QNodeId; + +class QT3DCORE_PRIVATE_EXPORT QSceneChangePrivate +{ +public : + QSceneChangePrivate(); + virtual ~QSceneChangePrivate(); + + Q_DECLARE_PUBLIC(QSceneChange) + + QSceneChange *q_ptr; + + QNodeId m_subjectId; + QSceneChange::DeliveryFlags m_deliveryFlags; + ChangeFlag m_type; +}; + +} // Qt3D + +QT_END_NAMESPACE + +#endif // QT3DCORE_QSCENECHANGE_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qsceneobserverinterface_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qsceneobserverinterface_p.h new file mode 100644 index 0000000..f183ab5 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qsceneobserverinterface_p.h @@ -0,0 +1,82 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QSCENEOBSERVERINTERFACE_P_H +#define QT3DCORE_QSCENEOBSERVERINTERFACE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QChangeArbiter; + +class QT3DCORE_PRIVATE_EXPORT QSceneObserverInterface +{ +public: + virtual ~QSceneObserverInterface(); + +private: + virtual void sceneNodeAdded(QSceneChangePtr &e) = 0; + virtual void sceneNodeRemoved(QSceneChangePtr &e) = 0; + + friend class QChangeArbiter; +}; + +} // Qt3D + +QT_END_NAMESPACE + +Q_DECLARE_METATYPE(Qt3DCore::QSceneObserverInterface *) // LCOV_EXCL_LINE + +#endif // QT3DCORE_QSCENEOBSERVERINTERFACE_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qscheduler_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qscheduler_p.h new file mode 100644 index 0000000..9b1685e --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qscheduler_p.h @@ -0,0 +1,83 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QSCHEDULER_P_H +#define QT3DCORE_QSCHEDULER_P_H + +#include +#include + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QAspectManager; + +class QScheduler : public QObject +{ + Q_OBJECT +public: + explicit QScheduler(QObject *parent = 0); + ~QScheduler(); + + void setAspectManager(QAspectManager *aspectManager); + QAspectManager *aspectManager() const; + + virtual void scheduleAndWaitForFrameAspectJobs(qint64 time); + +private: + QAspectManager *m_aspectManager; +}; + +} // namespace Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3DCORE_QSCHEDULER_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qservicelocator_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qservicelocator_p.h new file mode 100644 index 0000000..9534b33 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qservicelocator_p.h @@ -0,0 +1,139 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QSERVICELOCATOR_H +#define QT3DCORE_QSERVICELOCATOR_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QAbstractServiceProviderPrivate; + +class QT3DCORESHARED_EXPORT QAbstractServiceProvider : public QObject +{ + Q_OBJECT +public: + virtual ~QAbstractServiceProvider(); + + int type() const; + QString description() const; + +protected: + explicit QAbstractServiceProvider(int type, const QString &description, QObject* parent = nullptr); + explicit QAbstractServiceProvider(QAbstractServiceProviderPrivate &dd, QObject* parent = nullptr); + +private: + Q_DISABLE_COPY(QAbstractServiceProvider) + Q_DECLARE_PRIVATE(QAbstractServiceProvider) +}; + +class QAbstractFrameAdvanceService; +class QOpenGLInformationService; +class QSystemInformationService; +class QServiceLocatorPrivate; +class QEventFilterService; +class QDownloadHelperService; + +class QT3DCORESHARED_EXPORT QServiceLocator +{ +public: + QServiceLocator(); + ~QServiceLocator(); + + enum ServiceType { + SystemInformation, + OpenGLInformation, + CollisionService, + FrameAdvanceService, + EventFilterService, + DownloadHelperService, +#if !defined(Q_QDOC) + DefaultServiceCount, // Add additional default services before here +#endif + UserService = 256 + }; + + void registerServiceProvider(int serviceType, QAbstractServiceProvider *provider); + void unregisterServiceProvider(int serviceType); + + int serviceCount() const; + + template + T *service(int serviceType) + { + QAbstractServiceProvider *service_ = _q_getServiceHelper(serviceType); + return static_cast(service_); + } + + // Convenience accessors for Qt3D provided services + QSystemInformationService *systemInformation(); + QOpenGLInformationService *openGLInformation(); + QAbstractFrameAdvanceService *frameAdvanceService(); + QEventFilterService *eventFilterService(); + QDownloadHelperService *downloadHelperService(); + +private: + Q_DISABLE_COPY(QServiceLocator) + Q_DECLARE_PRIVATE(QServiceLocator) + QScopedPointer d_ptr; + + QAbstractServiceProvider *_q_getServiceHelper(int type); +}; + +} + +QT_END_NAMESPACE + +#endif // QT3DCORE_QSERVICELOCATOR_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qskeleton_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qskeleton_p.h new file mode 100644 index 0000000..c8b6554 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qskeleton_p.h @@ -0,0 +1,82 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QSKELETON_P_H +#define QT3DCORE_QSKELETON_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QJoint; + +class QSkeletonPrivate : public QAbstractSkeletonPrivate +{ +public: + QSkeletonPrivate(); + + Q_DECLARE_PUBLIC(QSkeleton) + + QJoint *m_rootJoint; +}; + +struct QSkeletonData +{ + QNodeId rootJointId; +}; + +} // namespace Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3DCORE_QSKELETON_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qskeletoncreatedchange_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qskeletoncreatedchange_p.h new file mode 100644 index 0000000..337a4bf --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qskeletoncreatedchange_p.h @@ -0,0 +1,99 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QSKELETONCREATEDCHANGE_P_H +#define QT3DCORE_QSKELETONCREATEDCHANGE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QSkeletonCreatedChangeBasePrivate; + +class QT3DCORESHARED_EXPORT QSkeletonCreatedChangeBase : public QNodeCreatedChangeBase +{ +public: + explicit QSkeletonCreatedChangeBase(const QAbstractSkeleton *skeleton); + ~QSkeletonCreatedChangeBase(); + + enum SkeletonType { + Skeleton = 0, + SkeletonLoader + }; + + SkeletonType type() const; + +private: + Q_DECLARE_PRIVATE(QSkeletonCreatedChangeBase) +}; + +typedef QSharedPointer QSkeletonCreatedChangeBasePtr; + +template +class QSkeletonCreatedChange : public QSkeletonCreatedChangeBase +{ +public: + explicit QSkeletonCreatedChange(const QAbstractSkeleton *_skeleton) + : QSkeletonCreatedChangeBase(_skeleton) + , data() + { + } + + T data; +}; + +template +using QSkeletonCreatedChangePtr = QSharedPointer>; + +} // namespace Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3DCORE_QSKELETONCREATEDCHANGE_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qskeletoncreatedchange_p_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qskeletoncreatedchange_p_p.h new file mode 100644 index 0000000..961458a --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qskeletoncreatedchange_p_p.h @@ -0,0 +1,72 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QSKELETONCREATEDCHANGE_P_P_H +#define QT3DCORE_QSKELETONCREATEDCHANGE_P_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QAbstractSkeleton; + +class QSkeletonCreatedChangeBasePrivate : public Qt3DCore::QNodeCreatedChangeBasePrivate +{ +public: + QSkeletonCreatedChangeBasePrivate(const QAbstractSkeleton *skeleton); + + QSkeletonCreatedChangeBase::SkeletonType m_type; +}; + +} // namespace Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3DCORE_QSKELETONCREATEDCHANGE_P_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qskeletonloader_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qskeletonloader_p.h new file mode 100644 index 0000000..ab0babe --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qskeletonloader_p.h @@ -0,0 +1,98 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QSKELETONLOADER_P_H +#define QT3DCORE_QSKELETONLOADER_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include "qskeletonloader.h" + +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QJoint; + +class QSkeletonLoaderPrivate : public QAbstractSkeletonPrivate +{ +public: + QSkeletonLoaderPrivate(); + + void setStatus(QSkeletonLoader::Status status); + + Q_DECLARE_PUBLIC(QSkeletonLoader) + + QUrl m_source; + bool m_createJoints; + + // Set by the backend + QSkeletonLoader::Status m_status; + Qt3DCore::QJoint* m_rootJoint; +}; + +struct QSkeletonLoaderData +{ + QUrl source; + bool createJoints; +}; + +class QJoint; +typedef QTypedPropertyUpdatedChange> QJointChange; +typedef QTypedPropertyUpdatedChangePtr> QJointChangePtr; + +} // namespace Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3DCORE_QSKELETONLOADER_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qstaticpropertyupdatedchangebase_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qstaticpropertyupdatedchangebase_p.h new file mode 100644 index 0000000..3f76e2f --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qstaticpropertyupdatedchangebase_p.h @@ -0,0 +1,81 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QSTATICPROPERTYUPDATEDCHANGEBASE_P_H +#define QT3DCORE_QSTATICPROPERTYUPDATEDCHANGEBASE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QPropertyUpdatedChange; +class QFrameAllocator; + +class QStaticPropertyUpdatedChangeBasePrivate : public QPropertyUpdatedChangeBasePrivate +{ +public: + QStaticPropertyUpdatedChangeBasePrivate(); + virtual ~QStaticPropertyUpdatedChangeBasePrivate(); + + Q_DECLARE_PUBLIC(QStaticPropertyUpdatedChangeBase) + + /// FIXME: use QMetaProperty here once the NodeDeleted etc. change events + /// get refactored to their own QSceneChange subclass + const char *m_propertyName; +}; + +} // Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3DCORE_QSTATICPROPERTYUPDATEDCHANGEBASE_P_H + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qstaticpropertyvalueaddedchangebase_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qstaticpropertyvalueaddedchangebase_p.h new file mode 100644 index 0000000..cd995d7 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qstaticpropertyvalueaddedchangebase_p.h @@ -0,0 +1,78 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QSTATICPROPERTYVALUEADDEDCHANGEBASE_P_H +#define QT3DCORE_QSTATICPROPERTYVALUEADDEDCHANGEBASE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QStaticPropertyValueAddedChangeBase; + +class QT3DCORE_PRIVATE_EXPORT QStaticPropertyValueAddedChangeBasePrivate : public QPropertyValueAddedChangeBasePrivate +{ +public: + QStaticPropertyValueAddedChangeBasePrivate(); + + Q_DECLARE_PUBLIC(QStaticPropertyValueAddedChangeBase) + + const char *m_propertyName; +}; + +} // Qt3D + +QT_END_NAMESPACE + +#endif // QT3DCORE_QSTATICPROPERTYVALUEADDEDCHANGEBASE_P_H + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qstaticpropertyvalueremovedchangebase_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qstaticpropertyvalueremovedchangebase_p.h new file mode 100644 index 0000000..ac4e1d8 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qstaticpropertyvalueremovedchangebase_p.h @@ -0,0 +1,78 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QSTATICPROPERTYVALUEREMOVEDCHANGEBASE_P_H +#define QT3DCORE_QSTATICPROPERTYVALUEREMOVEDCHANGEBASE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QStaticPropertyValueRemovedChangeBase; + +class QT3DCORE_PRIVATE_EXPORT QStaticPropertyValueRemovedChangeBasePrivate : public QPropertyValueRemovedChangeBasePrivate +{ +public: + QStaticPropertyValueRemovedChangeBasePrivate(); + + Q_DECLARE_PUBLIC(QStaticPropertyValueRemovedChangeBase) + + const char *m_propertyName; +}; + +} // Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3DCORE_QSTATICPROPERTYVALUEREMOVEDCHANGEBASE_P_H + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qsysteminformationservice_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qsysteminformationservice_p.h new file mode 100644 index 0000000..01e976b --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qsysteminformationservice_p.h @@ -0,0 +1,81 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QSYSTEMINFORMATIONSERVICE_P_H +#define QT3DCORE_QSYSTEMINFORMATIONSERVICE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QSystemInformationServicePrivate; + +class QT3DCORESHARED_EXPORT QSystemInformationService : public QAbstractServiceProvider +{ + Q_OBJECT +public: + virtual QStringList aspectNames() const = 0; + virtual int threadPoolThreadCount() const = 0; + +protected: + QSystemInformationService(const QString &description = QString()); + QSystemInformationService(QSystemInformationServicePrivate &dd); +}; + +} // namespace Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3DCORE_QSYSTEMINFORMATIONSERVICE_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qsysteminformationservice_p_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qsysteminformationservice_p_p.h new file mode 100644 index 0000000..e3ce9fe --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qsysteminformationservice_p_p.h @@ -0,0 +1,76 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QSYSTEMINFORMATIONSERVICE_P_P_H +#define QT3DCORE_QSYSTEMINFORMATIONSERVICE_P_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QSystemInformationServicePrivate : public QAbstractServiceProviderPrivate +{ +public: + QSystemInformationServicePrivate(const QString &description) + : QAbstractServiceProviderPrivate(QServiceLocator::SystemInformation, description) + {} +}; + +} + +QT_END_NAMESPACE + +#endif // QT3DCORE_QSYSTEMINFORMATIONSERVICE_P_P_H + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qt3dcore-config_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qt3dcore-config_p.h new file mode 100644 index 0000000..d76dd75 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qt3dcore-config_p.h @@ -0,0 +1,6 @@ +#define QT_FEATURE_assimp 1 +#define QT_FEATURE_qt3d_profile_gl -1 +#define QT_FEATURE_qt3d_profile_jobs -1 +#define QT_FEATURE_qt3d_simd_avx2 -1 +#define QT_FEATURE_qt3d_simd_sse2 -1 +#define QT_FEATURE_system_assimp -1 diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qt3dcore_global_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qt3dcore_global_p.h new file mode 100644 index 0000000..2d67937 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qt3dcore_global_p.h @@ -0,0 +1,59 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_GLOBAL_P_H +#define QT3DCORE_GLOBAL_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +#define QT3DCORE_PRIVATE_EXPORT QT3DCORESHARED_EXPORT + +#endif // QT3DCORE_GLOBAL_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qthreadpooler_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qthreadpooler_p.h new file mode 100644 index 0000000..00742f8 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qthreadpooler_p.h @@ -0,0 +1,113 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QTHREADPOOLER_H +#define QT3DCORE_QTHREADPOOLER_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include +#include + +#include +#include + +#if QT_CONFIG(qt3d_profile_jobs) +#include +#endif + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QT3DCORE_PRIVATE_EXPORT QThreadPooler : public QObject +{ + Q_OBJECT + +public: + explicit QThreadPooler(QObject *parent = 0); + ~QThreadPooler(); + + QFuture mapDependables(QVector &taskQueue); + void taskFinished(RunnableInterface *task); + QFuture future(); + + int maxThreadCount() const; +#if QT_CONFIG(qt3d_profile_jobs) + static QElapsedTimer m_jobsStatTimer; + + // Aspects + Job threads + static void addJobLogStatsEntry(JobRunStats &stats); + static void writeFrameJobLogStats(); + + // Submission thread + static void addSubmissionLogStatsEntry(JobRunStats &stats); + +#endif + +private: + void enqueueTasks(const QVector &tasks); + void acquire(int add); + void release(); + int currentCount() const; + +private: + QFutureInterface *m_futureInterface; + QMutex m_mutex; + QAtomicInt m_taskCount; + QThreadPool m_threadPool; +}; + +} // namespace Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3DCORE_QTHREADPOOLER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qtickclock_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qtickclock_p.h new file mode 100644 index 0000000..2b66867 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qtickclock_p.h @@ -0,0 +1,83 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QTICKCLOCK_P_H +#define QT3DCORE_QTICKCLOCK_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QTickClock +{ +public: + QTickClock(); + + void setTickFrequency(float frequency); + + void start(); + void reset(); + + qint64 waitForNextTick(); + +private: + QElapsedTimer m_timer; + qint64 m_tickInterval; + qint64 m_time; +}; + +} // namespace Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3DCORE_QTICKCLOCK_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qtickclockservice_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qtickclockservice_p.h new file mode 100644 index 0000000..18323ab --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qtickclockservice_p.h @@ -0,0 +1,80 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Paul Lemire +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QTICKCLOCKSERVICE_P_H +#define QT3DCORE_QTICKCLOCKSERVICE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QTickClockServicePrivate; + +class QTickClockService : public QAbstractFrameAdvanceService +{ + Q_OBJECT +public: + QTickClockService(); + ~QTickClockService(); + + qint64 waitForNextFrame() final; + void start() final; + void stop() final; + + Q_DECLARE_PRIVATE(QTickClockService) +}; + +} // Qt3D + +QT_END_NAMESPACE + +#endif // QT3DCORE_QTICKCLOCKSERVICE_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qtransform_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qtransform_p.h new file mode 100644 index 0000000..89bc554 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qtransform_p.h @@ -0,0 +1,91 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QTRANSFORM_P_H +#define QT3DCORE_QTRANSFORM_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QTransformPrivate : public QComponentPrivate +{ + Q_DECLARE_PUBLIC(QTransform) + +public: + QTransformPrivate(); + ~QTransformPrivate(); + + // Stored in this order as QQuaternion is bigger than QVector3D + // Operations are applied in the order of: + // scale, rotation, translation + QQuaternion m_rotation; + QVector3D m_scale; + QVector3D m_translation; + QVector3D m_eulerRotationAngles; + + mutable QMatrix4x4 m_matrix; + mutable bool m_matrixDirty; +}; + +struct QTransformData +{ + QQuaternion rotation; + QVector3D scale; + QVector3D translation; +}; + +} // namespace Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3DCORE_QTRANSFORM_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qtypedpropertyupdatechange_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qtypedpropertyupdatechange_p.h new file mode 100644 index 0000000..f196ee5 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/qtypedpropertyupdatechange_p.h @@ -0,0 +1,81 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QTYPEDPROPERTYUPDATECHANGE_P_H +#define QT3DCORE_QTYPEDPROPERTYUPDATECHANGE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +template +class QTypedPropertyUpdatedChange : public QStaticPropertyUpdatedChangeBase +{ +public: + explicit QTypedPropertyUpdatedChange(QNodeId _subjectId) + : QStaticPropertyUpdatedChangeBase(_subjectId) + , data() + { + } + + T data; +}; + +template +using QTypedPropertyUpdatedChangePtr = QSharedPointer>; + +} // namespace Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3DCORE_QTYPEDPROPERTYUPDATECHANGE_P_H + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/sqt_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/sqt_p.h new file mode 100644 index 0000000..5fdefcc --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/sqt_p.h @@ -0,0 +1,107 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_SQT_P_H +#define QT3DCORE_SQT_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +struct Sqt +{ + QQuaternion rotation; + QVector3D scale; + float pad1; + QVector3D translation; + float pad2; + + Sqt() + : rotation() + , scale(1.0f, 1.0f, 1.0f) + , translation() + {} + + inline QMatrix4x4 toMatrix() const + { + QMatrix4x4 m; + m.translate(translation); + m.rotate(rotation); + m.scale(scale); + return m; + } + + bool operator == (const Sqt &rhs) const + { + return rotation == rhs.rotation + && scale == rhs.scale + && translation == rhs.translation; + } +}; + +struct JointNamesAndLocalPoses +{ + QVector names; + QVector localPoses; +}; + +} // namespace Qt3DCore + +QT_END_NAMESPACE + +Q_DECLARE_METATYPE(QVector) +Q_DECLARE_METATYPE(Qt3DCore::JointNamesAndLocalPoses) + +#endif // QT3DCORE_SQT_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/task_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/task_p.h new file mode 100644 index 0000000..c818827 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/task_p.h @@ -0,0 +1,156 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_TASK_P_H +#define QT3DCORE_TASK_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class JobRunner; +class DependencyHandler; +class QThreadPooler; + +class RunnableInterface : public QRunnable +{ +public: + enum class RunnableType { + AspectTask, + SyncTask + }; + + virtual ~RunnableInterface(); + + virtual void run() = 0; + + virtual int id() = 0; + virtual void setId(int id) = 0; + + virtual void setReserved(bool reserved) = 0; + virtual bool reserved() = 0; + + virtual void setPooler(QThreadPooler *pooler) = 0; + + virtual RunnableType type() const = 0; +}; + +class AspectTaskRunnable : public RunnableInterface +{ +public: + AspectTaskRunnable(); + ~AspectTaskRunnable(); + + void run() override; + + void setPooler(QThreadPooler *pooler) override { m_pooler = pooler; } + + void setReserved(bool reserved) override { m_reserved = reserved; } + bool reserved() override { return m_reserved; } + + int id() override { return m_id; } + void setId(int id) override { m_id = id; } + + RunnableType type() const Q_DECL_OVERRIDE { return RunnableType::AspectTask; } + +public: + QSharedPointer m_job; + QVector m_dependers; + int m_dependerCount = 0; + +private: + QThreadPooler *m_pooler; + int m_id; // For testing purposes for now + bool m_reserved; +}; + +class SyncTaskRunnable : public RunnableInterface +{ +public: + explicit SyncTaskRunnable(QAbstractAspectJobManager::JobFunction func, void *arg, + QAtomicInt *atomicCount); + ~SyncTaskRunnable(); + + void run() override; + + void setPooler(QThreadPooler *pooler) override { m_pooler = pooler; } + + void setReserved(bool reserved) override { m_reserved = reserved; } + bool reserved() override { return m_reserved; } + + int id() override { return m_id; } + void setId(int id) override { m_id = id; } + + RunnableType type() const Q_DECL_OVERRIDE { return RunnableType::SyncTask; } + +private: + QAbstractAspectJobManager::JobFunction m_func; + void *m_arg; + QAtomicInt *m_atomicCount; + + QThreadPooler *m_pooler; + bool m_reserved; + + int m_id; +}; + +} // namespace Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3DCORE_TASK_P_H + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/vector3d_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/vector3d_p.h new file mode 100644 index 0000000..80e9369 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/vector3d_p.h @@ -0,0 +1,89 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Paul Lemire +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_VECTOR3D_P_H +#define QT3DCORE_VECTOR3D_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt3D API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +// We check if sse config option was enabled as it could +// be disabled even though a given platform supports SSE2 instructions +#if QT_CONFIG(qt3d_simd_sse2) && (defined(__AVX2__) || defined(__SSE2__)) && defined(QT_COMPILER_SUPPORTS_SSE2) + +#include + +QT_BEGIN_NAMESPACE +using Vector3D = Qt3DCore::Vector3D_SSE; +QT_END_NAMESPACE + +#else + +#include + +QT_BEGIN_NAMESPACE +using Vector3D = QVector3D; +QT_END_NAMESPACE + +#endif + +template +Q_ALWAYS_INLINE QVector3D convertToQVector3D(const UsingType &v) +{ + return v.toQVector3D(); +} + +template<> +Q_ALWAYS_INLINE QVector3D convertToQVector3D(const QVector3D &v) +{ + return v; +} + +#endif // QT3DCORE_VECTOR3D_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/vector3d_sse_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/vector3d_sse_p.h new file mode 100644 index 0000000..c7f9a40 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/vector3d_sse_p.h @@ -0,0 +1,401 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Paul Lemire +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_VECTOR3D_SSE_P_H +#define QT3DCORE_VECTOR3D_SSE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt3D API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include +#include +#include + +#ifdef QT_COMPILER_SUPPORTS_SSE2 + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class Matrix4x4_SSE; +class Matrix4x4_AVX2; +class Vector4D_SSE; + +class Vector3D_SSE +{ +public: + + Q_ALWAYS_INLINE Vector3D_SSE() + : m_xyzw(_mm_setzero_ps()) + { + } + + explicit Q_ALWAYS_INLINE Vector3D_SSE(Qt::Initialization) {} + + explicit Q_ALWAYS_INLINE Vector3D_SSE(float x, float y, float z) + : m_xyzw(_mm_set_ps(0.0f, z, y, x)) + { + } + + explicit Q_ALWAYS_INLINE Vector3D_SSE(QVector3D v) + : m_xyzw(_mm_set_ps(0.0f, v.z(), v.y(), v.x())) + { + } + + explicit QT3DCORE_PRIVATE_EXPORT Vector3D_SSE(const Vector4D_SSE &v); + + Q_ALWAYS_INLINE Vector3D_SSE &operator+=(Vector3D_SSE vector) + { + m_xyzw = _mm_add_ps(m_xyzw, vector.m_xyzw); + return *this; + } + + Q_ALWAYS_INLINE Vector3D_SSE &operator-=(Vector3D_SSE vector) + { + m_xyzw = _mm_sub_ps(m_xyzw, vector.m_xyzw); + return *this; + } + + Q_ALWAYS_INLINE Vector3D_SSE &operator*=(Vector3D_SSE vector) + { + m_xyzw = _mm_mul_ps(m_xyzw, vector.m_xyzw); + return *this; + } + + Q_ALWAYS_INLINE Vector3D_SSE &operator/=(Vector3D_SSE vector) + { + m_xyzw = _mm_div_ps(m_xyzw, vector.m_xyzw); + return *this; + } + + Q_ALWAYS_INLINE Vector3D_SSE &operator*=(float factor) + { + m_xyzw = _mm_mul_ps(m_xyzw, _mm_set1_ps(factor)); + return *this; + } + + Q_ALWAYS_INLINE Vector3D_SSE &operator/=(float factor) + { + m_xyzw = _mm_div_ps(m_xyzw, _mm_set1_ps(factor)); + return *this; + } + + Q_ALWAYS_INLINE bool operator==(Vector3D_SSE other) const + { + // 0b111 == 0x7 + return ((_mm_movemask_ps(_mm_cmpeq_ps(m_xyzw, other.m_xyzw)) & 0x7) == 0x7); + } + + Q_ALWAYS_INLINE bool operator!=(Vector3D_SSE other) const + { + return !(*this == other); + } + + Q_ALWAYS_INLINE QVector3D toQVector3D() const + { + return QVector3D(x(), y(), z()); + } + + Q_ALWAYS_INLINE float lengthSquared() const + { + return Qt3DCore::Vector3D_SSE::dotProduct(*this, *this); + } + + Q_ALWAYS_INLINE float length() const + { + return sqrt(Qt3DCore::Vector3D_SSE::dotProduct(*this, *this)); + } + + Q_ALWAYS_INLINE float distanceToPoint(const Vector3D_SSE &point) const + { + return (*this - point).length(); + } + + Q_ALWAYS_INLINE void normalize() + { + const float len = length(); + m_xyzw = _mm_div_ps(m_xyzw, _mm_set_ps1(len)); + } + + Q_ALWAYS_INLINE Vector3D_SSE normalized() const + { + Vector3D_SSE v = *this; + v.normalize(); + return v; + } + + Q_ALWAYS_INLINE bool isNull() const + { + // Ignore last bit + // 0b111 = 0x7 + return ((_mm_movemask_ps(_mm_cmpeq_ps(m_xyzw, _mm_set_ps1(0.0f))) & 0x7) == 0x7); + } + +#ifdef __AVX2__ + QT3DCORE_PRIVATE_EXPORT Vector3D_SSE unproject(const Matrix4x4_AVX2 &modelView, const Matrix4x4_AVX2 &projection, const QRect &viewport) const; + QT3DCORE_PRIVATE_EXPORT Vector3D_SSE project(const Matrix4x4_AVX2 &modelView, const Matrix4x4_AVX2 &projection, const QRect &viewport) const; +#else + QT3DCORE_PRIVATE_EXPORT Vector3D_SSE unproject(const Matrix4x4_SSE &modelView, const Matrix4x4_SSE &projection, const QRect &viewport) const; + QT3DCORE_PRIVATE_EXPORT Vector3D_SSE project(const Matrix4x4_SSE &modelView, const Matrix4x4_SSE &projection, const QRect &viewport) const; +#endif + + Q_ALWAYS_INLINE float x() const { return _mm_cvtss_f32(m_xyzw); } + + Q_ALWAYS_INLINE float y() const + { + // 0b01010101 = 0x55 + return _mm_cvtss_f32(_mm_shuffle_ps(m_xyzw, m_xyzw, 0x55)); + } + + Q_ALWAYS_INLINE float z() const + { + // 0b10101010 = 0xaa + return _mm_cvtss_f32(_mm_unpackhi_ps(m_xyzw, m_xyzw)); + } + + Q_ALWAYS_INLINE void setX(float x) + { + m_xyzw = _mm_move_ss(m_xyzw, _mm_set_ss(x)); + } + + Q_ALWAYS_INLINE void setY(float y) + { + // m_xyzw = a, b, c, d + + // y, y, y, y + const __m128 yVec = _mm_set_ps1(y); + + // y, y, a, a + // 0b00000000 == 0x0 + const __m128 yaVec = _mm_shuffle_ps(yVec, m_xyzw, 0x0); + + // a, y, c, d + // 0b11100010 == 0xe2 + m_xyzw = _mm_shuffle_ps(yaVec, m_xyzw, 0xe2); + } + + Q_ALWAYS_INLINE void setZ(float z) + { + // m_xyzw = a, b, c, d + + // z, z, z, z + const __m128 zVec = _mm_set_ps1(z); + + // z, z, d, d + // 0b11110000 == 0xf0 + const __m128 zdVec = _mm_shuffle_ps(zVec, m_xyzw, 0xf0); + + // a, b, z, d + // 0b10000100 == 0x84 + m_xyzw = _mm_shuffle_ps(m_xyzw, zdVec, 0x84); + } + + Q_ALWAYS_INLINE float operator[](int idx) const + { + switch (idx) { + case 0: + return x(); + case 1: + return y(); + case 2: + return z(); + default: + Q_UNREACHABLE(); + return 0.0f; + } + } + + struct DigitWrapper + { + explicit DigitWrapper(int idx, Vector3D_SSE *vec) + : m_vec(vec) + , m_idx(idx) + {} + + operator float() const + { + switch (m_idx) { + case 0: + return m_vec->x(); + case 1: + return m_vec->y(); + case 2: + return m_vec->z(); + default: + Q_UNREACHABLE(); + return 0.0f; + } + } + + void operator =(float value) + { + switch (m_idx) { + case 0: + m_vec->setX(value); + break; + case 1: + m_vec->setY(value); + break; + case 2: + m_vec->setZ(value); + break; + default: + Q_UNREACHABLE(); + } + } + + private: + Vector3D_SSE *m_vec; + const int m_idx; + }; + + Q_ALWAYS_INLINE DigitWrapper operator[](int idx) + { + return DigitWrapper(idx, this); + } + + static Q_ALWAYS_INLINE float dotProduct(Vector3D_SSE a, Vector3D_SSE b) + { +#if defined(__SSE4_1__) + // 0b01111111 = 0x7f + return _mm_cvtss_f32(_mm_dp_ps(a.m_xyzw, b.m_xyzw, 0x7f)); +#elif defined(__SSE3__) + const __m128 mult = _mm_mul_ps(a.m_xyzw, b.m_xyzw); + // a + b, c + d, a + d, c + d + const __m128 partialSum = _mm_hadd_ps(mult, mult); + // c + d, ...... + // 0x00000001 = + const __m128 partialSumShuffle = _mm_shuffle_ps(partialSum, partialSum, 0x1); + return _mm_cvtss_f32(_mm_hadd_ps(partialSum, partialSumShuffle)); +#else + const __m128 mult = _mm_mul_ps(a.m_xyzw, b.m_xyzw); + + // (multX, 0, 0, 0) + (multY, 0, 0, 0) -> (multX + multY, 0, 0, 0) + // 0b11111101 == 0xfd + const __m128 shuffled = _mm_shuffle_ps(mult, mult, 0xfd); + // (multX + multY, 0, 0, 0) + (multZ, 0, 0, 0); + // 0b11111110 == 0xfe + const __m128 shuffled2 = _mm_shuffle_ps(mult, mult, 0xfe); + const __m128 result = _mm_add_ps(_mm_add_ps(shuffled, mult), shuffled2); + return _mm_cvtss_f32(result); +#endif + } + + static Q_ALWAYS_INLINE Vector3D_SSE crossProduct(Vector3D_SSE a, Vector3D_SSE b) + { + // a.y * b.z - a.z * b.y, a.z * b.x - a.x * b.z, a.x * b.y - a.y * b.x + // (a.y, a.z, a.z, a.x, a.x, a.y) (b.z, b.y, b.x, b.z, b.y, b.x) + // (a.y, a.z, a.x) * (b.z, b.x, b.y) - (a.z, a.x, a.y) (b.y, b.z, b.x) + + // 0b11001001 == 0xc9 + const __m128 a1 = _mm_shuffle_ps(a.m_xyzw, a.m_xyzw, 0xc9); + const __m128 b2 = _mm_shuffle_ps(b.m_xyzw, b.m_xyzw, 0xc9); + // 0b11010010 == 0xd2 + const __m128 a2 = _mm_shuffle_ps(a.m_xyzw, a.m_xyzw, 0xd2); + const __m128 b1 = _mm_shuffle_ps(b.m_xyzw, b.m_xyzw, 0xd2); + + Vector3D_SSE v(Qt::Uninitialized); + v.m_xyzw = _mm_sub_ps(_mm_mul_ps(a1, b1), _mm_mul_ps(a2, b2)); + return v; + } + + friend class Vector4D_SSE; + +#ifdef __AVX2__ + friend class Matrix4x4_AVX2; + friend QT3DCORE_PRIVATE_EXPORT Vector3D_SSE operator*(const Vector3D_SSE &vector, const Matrix4x4_AVX2 &matrix); + friend QT3DCORE_PRIVATE_EXPORT Vector3D_SSE operator*(const Matrix4x4_AVX2 &matrix, const Vector3D_SSE &vector); +#endif + + friend class Matrix4x4_SSE; + friend QT3DCORE_PRIVATE_EXPORT Vector3D_SSE operator*(const Vector3D_SSE &vector, const Matrix4x4_SSE &matrix); + friend QT3DCORE_PRIVATE_EXPORT Vector3D_SSE operator*(const Matrix4x4_SSE &matrix, const Vector3D_SSE &vector); + + friend Q_ALWAYS_INLINE const Vector3D_SSE operator+(Vector3D_SSE v1, Vector3D_SSE v2) { return v1 += v2; } + friend Q_ALWAYS_INLINE const Vector3D_SSE operator-(Vector3D_SSE v1, Vector3D_SSE v2) { return v1 -= v2; } + friend Q_ALWAYS_INLINE const Vector3D_SSE operator*(float factor, Vector3D_SSE vector) { return vector *= factor; } + friend Q_ALWAYS_INLINE const Vector3D_SSE operator*(Vector3D_SSE vector, float factor) { return vector *= factor; } + friend Q_ALWAYS_INLINE const Vector3D_SSE operator*(Vector3D_SSE v1, Vector3D_SSE v2) { return v1 *= v2; } + friend Q_ALWAYS_INLINE const Vector3D_SSE operator-(Vector3D_SSE vector) + { + Vector3D_SSE c(Qt::Uninitialized); + + c.m_xyzw = _mm_xor_ps(vector.m_xyzw, _mm_set1_ps(-0.0f)); + + return c; + } + + friend Q_ALWAYS_INLINE const Vector3D_SSE operator/(Vector3D_SSE vector, float divisor) { return vector /= divisor; } + friend Q_ALWAYS_INLINE const Vector3D_SSE operator/(Vector3D_SSE vector, Vector3D_SSE divisor) { return vector /= divisor; } + + friend QT3DCORE_PRIVATE_EXPORT QDebug operator<<(QDebug dbg, const Vector3D_SSE &v); + friend Q_ALWAYS_INLINE bool qFuzzyCompare(const Vector3D_SSE& v1, const Vector3D_SSE& v2) + { + return ::qFuzzyCompare(v1.x(), v2.x()) && + ::qFuzzyCompare(v1.y(), v2.y()) && + ::qFuzzyCompare(v1.z(), v2.z()); + } + +private: + // Q_DECL_ALIGN(16) float m[4];// for SSE support + __m128 m_xyzw; +}; + +} // Qt3DCore + +Q_DECLARE_TYPEINFO(Qt3DCore::Vector3D_SSE, Q_PRIMITIVE_TYPE); + +QT_END_NAMESPACE + +Q_DECLARE_METATYPE(Qt3DCore::Vector3D_SSE) + +#endif // QT_COMPILER_SUPPORTS_SSE2 + +#endif // QT3DCORE_VECTOR3D_SSE_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/vector4d_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/vector4d_p.h new file mode 100644 index 0000000..dbfafff --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/vector4d_p.h @@ -0,0 +1,89 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Paul Lemire +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_VECTOR4D_P_H +#define QT3DCORE_VECTOR4D_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt3D API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +// We check if sse config option was enabled as it could +// be disabled even though a given platform supports SSE2 instructions +#if QT_CONFIG(qt3d_simd_sse2) && (defined(__AVX2__) || defined(__SSE2__)) && defined(QT_COMPILER_SUPPORTS_SSE2) + +#include + +QT_BEGIN_NAMESPACE +using Vector4D = Qt3DCore::Vector4D_SSE; +QT_END_NAMESPACE + +#else + +#include + +QT_BEGIN_NAMESPACE +using Vector4D = QVector4D; +QT_END_NAMESPACE + +#endif + +template +Q_ALWAYS_INLINE QVector4D convertToQVector4D(const UsingType &v) +{ + return v.toQVector4D(); +} + +template<> +Q_ALWAYS_INLINE QVector4D convertToQVector4D(const QVector4D &v) +{ + return v; +} + +#endif // QT3DCORE_VECTOR4D_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/vector4d_sse_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/vector4d_sse_p.h new file mode 100644 index 0000000..0be5e37 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/5.12.5/Qt3DCore/private/vector4d_sse_p.h @@ -0,0 +1,398 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Paul Lemire +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_VECTOR4D_SSE_P_H +#define QT3DCORE_VECTOR4D_SSE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt3D API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +#ifdef QT_COMPILER_SUPPORTS_SSE2 + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class Matrix4x4_SSE; +class Matrix4x4_AVX2; + +class Vector4D_SSE +{ +public: + Q_ALWAYS_INLINE Vector4D_SSE() + : m_xyzw(_mm_setzero_ps()) + { + } + + explicit Q_ALWAYS_INLINE Vector4D_SSE(Qt::Initialization) {} + + explicit Q_ALWAYS_INLINE Vector4D_SSE(float x, float y, float z, float w) + : m_xyzw(_mm_set_ps(w, z, y, x)) + { + } + + explicit Q_ALWAYS_INLINE Vector4D_SSE(QVector4D v) + : m_xyzw(_mm_set_ps(v.w(), v.z(), v.y(), v.x())) + { + } + + explicit Q_ALWAYS_INLINE Vector4D_SSE(const Vector3D_SSE &vec3, float w = 0.0f) + : m_xyzw(vec3.m_xyzw) + { + setW(w); + } + + explicit Q_ALWAYS_INLINE Vector4D_SSE(QVector3D v, float w = 0.0f) + : m_xyzw(_mm_set_ps(w, v.z(), v.y(), v.x())) + { + } + + Q_ALWAYS_INLINE Vector4D_SSE &operator+=(Vector4D_SSE vector) + { + m_xyzw = _mm_add_ps(m_xyzw, vector.m_xyzw); + return *this; + } + + Q_ALWAYS_INLINE Vector4D_SSE &operator-=(Vector4D_SSE vector) + { + m_xyzw = _mm_sub_ps(m_xyzw, vector.m_xyzw); + return *this; + } + + Q_ALWAYS_INLINE Vector4D_SSE &operator*=(Vector4D_SSE vector) + { + m_xyzw = _mm_mul_ps(m_xyzw, vector.m_xyzw); + return *this; + } + + Q_ALWAYS_INLINE Vector4D_SSE &operator/=(Vector4D_SSE vector) + { + m_xyzw = _mm_div_ps(m_xyzw, vector.m_xyzw); + return *this; + } + + Q_ALWAYS_INLINE Vector4D_SSE &operator*=(float factor) + { + m_xyzw = _mm_mul_ps(m_xyzw, _mm_set1_ps(factor)); + return *this; + } + + Q_ALWAYS_INLINE Vector4D_SSE &operator/=(float factor) + { + m_xyzw = _mm_div_ps(m_xyzw, _mm_set1_ps(factor)); + return *this; + } + + Q_ALWAYS_INLINE bool operator==(Vector4D_SSE other) const + { + // 0b1111 == 0xf + return (_mm_movemask_ps(_mm_cmpeq_ps(m_xyzw, other.m_xyzw)) == 0xf); + } + + Q_ALWAYS_INLINE bool operator!=(Vector4D_SSE other) const + { + return !(*this == other); + } + + Q_ALWAYS_INLINE QVector4D toQVector4D() const + { + return QVector4D(x(), y(), z(), w()); + } + + // TODO: Uncomment when we introduce Vector3D_SSE + //Q_ALWAYS_INLINE Vector3D_SSE toVector3D() const { return Vector3D_SSE(*this); } + + Q_ALWAYS_INLINE float lengthSquared() const + { + return dotProduct(*this, *this); + } + + Q_ALWAYS_INLINE float length() const + { + return sqrt(dotProduct(*this, *this)); + } + + Q_ALWAYS_INLINE void normalize() + { + const float len = length(); + m_xyzw = _mm_div_ps(m_xyzw, _mm_set_ps1(len)); + } + + Q_ALWAYS_INLINE Vector4D_SSE normalized() const + { + Vector4D_SSE v = *this; + v.normalize(); + return v; + } + + Q_ALWAYS_INLINE bool isNull() const + { + // 0b1111 == 0xf + return _mm_movemask_ps(_mm_cmpeq_ps(m_xyzw, _mm_setzero_ps())) == 0xf; + } + + Q_ALWAYS_INLINE float x() const { return _mm_cvtss_f32(m_xyzw); } + + Q_ALWAYS_INLINE float y() const + { + // 0b01010101 = 0x55 + return _mm_cvtss_f32(_mm_shuffle_ps(m_xyzw, m_xyzw, 0x55)); + } + + Q_ALWAYS_INLINE float z() const + { + // 0b10101010 = 0xaa + return _mm_cvtss_f32(_mm_unpackhi_ps(m_xyzw, m_xyzw)); + } + + Q_ALWAYS_INLINE float w() const + { + // 0b11111111 = 0xff + return _mm_cvtss_f32(_mm_shuffle_ps(m_xyzw, m_xyzw, 0xff)); + } + + Q_ALWAYS_INLINE void setX(float x) + { + m_xyzw = _mm_move_ss(m_xyzw, _mm_set_ss(x)); + } + + Q_ALWAYS_INLINE void setY(float y) + { + // m_xyzw = a, b, c, d + + // y, y, y, y + const __m128 yVec = _mm_set_ps1(y); + + // y, y, a, a + // 0b00000000 == 0x0 + const __m128 yaVec = _mm_shuffle_ps(yVec, m_xyzw, 0x0); + + // a, y, c, d + // 0b11100010 == 0xe2 + m_xyzw = _mm_shuffle_ps(yaVec, m_xyzw, 0xe2); + } + + Q_ALWAYS_INLINE void setZ(float z) + { + // m_xyzw = a, b, c, d + + // z, z, z, z + const __m128 zVec = _mm_set_ps1(z); + + // z, z, d, d + // 0b11110000 == 0xf0 + const __m128 zdVec = _mm_shuffle_ps(zVec, m_xyzw, 0xf0); + + // a, b, z, d + // 0b10000100 == 0x84 + m_xyzw = _mm_shuffle_ps(m_xyzw, zdVec, 0x84); + } + + Q_ALWAYS_INLINE void setW(float w) + { +#ifdef __SSE4_1__ + const __m128 wVec = _mm_set_ss(w); + // insert element 0 of wVec into position 3 in vec3, don't zero anything + m_xyzw = _mm_insert_ps(m_xyzw, wVec, 0x30); +#else + // m_xyzw = a, b, c, d + + // w, w, w, w + const __m128 wVec = _mm_set_ps1(w); + + // c, c, w, w + const __m128 cwVec = _mm_shuffle_ps(m_xyzw, wVec, _MM_SHUFFLE(0, 0, 2, 2)); + + // a, b, c, w + m_xyzw = _mm_shuffle_ps(m_xyzw, cwVec, _MM_SHUFFLE(2, 0, 1, 0)); +#endif + } + + Q_ALWAYS_INLINE float operator[](int idx) const + { + Q_DECL_ALIGN(16) float vec[4]; + _mm_store_ps(vec, m_xyzw); + return vec[idx]; + } + + struct DigitWrapper + { + explicit DigitWrapper(int idx, Vector4D_SSE *vec) + : m_vec(vec) + , m_idx(idx) + {} + + operator float() const + { + switch (m_idx) { + case 0: + return m_vec->x(); + case 1: + return m_vec->y(); + case 2: + return m_vec->z(); + case 3: + return m_vec->w(); + default: + Q_UNREACHABLE(); + return 0.0f; + } + } + void operator =(float value) + { + switch (m_idx) { + case 0: + m_vec->setX(value); + break; + case 1: + m_vec->setY(value); + break; + case 2: + m_vec->setZ(value); + break; + case 3: + m_vec->setW(value); + break; + default: + Q_UNREACHABLE(); + } + } + + private: + Vector4D_SSE *m_vec; + const int m_idx; + }; + + Q_ALWAYS_INLINE DigitWrapper operator[](int idx) + { + return DigitWrapper(idx, this); + } + + static Q_ALWAYS_INLINE float dotProduct(Vector4D_SSE a, Vector4D_SSE b) + { +#if defined(__SSE4_1__) + // 0b11111111 = 0xff + return _mm_cvtss_f32(_mm_dp_ps(a.m_xyzw, b.m_xyzw, 0xff)); +#elif defined(__SSE3__) + const __m128 mult = _mm_mul_ps(a.m_xyzw, b.m_xyzw); + // a + b, c + d, a + d, c + d + const __m128 partialSum = _mm_hadd_ps(mult, mult); + // c + d, ...... + // 0x00000001 = + const __m128 partialSumShuffle = _mm_shuffle_ps(partialSum, partialSum, 0x1); + return _mm_cvtss_f32(_mm_hadd_ps(partialSum, partialSumShuffle)); +#else + const __m128 mult = _mm_mul_ps(a.m_xyzw, b.m_xyzw); + // (multX, multY, 0, 0) + (multZ, multW, 0, 0) -> (multX + multZ, multY + multW, 0, 0) + // 0b00001110 == 0xe + const __m128 shuffled = _mm_shuffle_ps(mult, mult, 0xe); + __m128 result = _mm_add_ps(shuffled, mult); + // (multX + multZ, 0, 0, 0) + (multY + multW, 0, 0, 0); + // 0b00000001 == 0x1 + const __m128 shuffled2 = _mm_shuffle_ps(result, result, 0x1); + result = _mm_add_ps(result, shuffled2); + return _mm_cvtss_f32(result); +#endif + } + + friend class Matrix4x4_SSE; + +#ifdef __AVX2__ + friend class Matrix4x4_AVX2; + friend Vector4D_SSE operator*(const Vector4D_SSE &vector, const Matrix4x4_AVX2 &matrix); + friend Vector4D_SSE operator*(const Matrix4x4_AVX2 &matrix, const Vector4D_SSE &vector); +#endif + + friend class Vector3D_SSE; + friend Vector4D_SSE operator*(const Vector4D_SSE &vector, const Matrix4x4_SSE &matrix); + friend Vector4D_SSE operator*(const Matrix4x4_SSE &matrix, const Vector4D_SSE &vector); + + friend Q_ALWAYS_INLINE const Vector4D_SSE operator+(Vector4D_SSE v1, Vector4D_SSE v2) { return v1 += v2; } + friend Q_ALWAYS_INLINE const Vector4D_SSE operator-(Vector4D_SSE v1, Vector4D_SSE v2) { return v1 -= v2; } + friend Q_ALWAYS_INLINE const Vector4D_SSE operator*(float factor, Vector4D_SSE vector) { return vector *= factor; } + friend Q_ALWAYS_INLINE const Vector4D_SSE operator*(Vector4D_SSE vector, float factor) { return vector *= factor; } + friend Q_ALWAYS_INLINE const Vector4D_SSE operator*(Vector4D_SSE v1, Vector4D_SSE v2) { return v1 *= v2; } + friend Q_ALWAYS_INLINE const Vector4D_SSE operator-(Vector4D_SSE vector) + { + Vector4D_SSE c(Qt::Uninitialized); + + c.m_xyzw = _mm_xor_ps(vector.m_xyzw, _mm_set1_ps(-0.0f)); + + return c; + } + + friend Q_ALWAYS_INLINE const Vector4D_SSE operator/(Vector4D_SSE vector, float divisor) { return vector /= divisor; } + friend Q_ALWAYS_INLINE const Vector4D_SSE operator/(Vector4D_SSE vector, Vector4D_SSE divisor) { return vector /= divisor; } + + friend QT3DCORE_PRIVATE_EXPORT QDebug operator<<(QDebug dbg, const Vector4D_SSE &v); + friend Q_ALWAYS_INLINE bool qFuzzyCompare(const Vector4D_SSE& v1, const Vector4D_SSE& v2) + { + return ::qFuzzyCompare(v1.x(), v2.x()) && + ::qFuzzyCompare(v1.y(), v2.y()) && + ::qFuzzyCompare(v1.z(), v2.z()) && + ::qFuzzyCompare(v1.w(), v2.w()); + } + +private: + // Q_DECL_ALIGN(16) float m[4];// for SSE support + __m128 m_xyzw; +}; + +} // Qt3DCore + +Q_DECLARE_TYPEINFO(Qt3DCore::Vector4D_SSE, Q_PRIMITIVE_TYPE); + +QT_END_NAMESPACE + +Q_DECLARE_METATYPE(Qt3DCore::Vector4D_SSE) + +#endif // QT_COMPILER_SUPPORTS_SSE2 + +#endif // QT3DCORE_VECTOR4D_SSE_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QAbstractAspect b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QAbstractAspect new file mode 100644 index 0000000..3ecaa3c --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QAbstractAspect @@ -0,0 +1 @@ +#include "qabstractaspect.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QAbstractSkeleton b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QAbstractSkeleton new file mode 100644 index 0000000..fc63e98 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QAbstractSkeleton @@ -0,0 +1 @@ +#include "qabstractskeleton.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QArmature b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QArmature new file mode 100644 index 0000000..5dceb9d --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QArmature @@ -0,0 +1 @@ +#include "qarmature.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QAspectEngine b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QAspectEngine new file mode 100644 index 0000000..faeb6a0 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QAspectEngine @@ -0,0 +1 @@ +#include "qaspectengine.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QAspectJob b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QAspectJob new file mode 100644 index 0000000..eca5039 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QAspectJob @@ -0,0 +1 @@ +#include "qaspectjob.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QAspectJobPtr b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QAspectJobPtr new file mode 100644 index 0000000..3ecaa3c --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QAspectJobPtr @@ -0,0 +1 @@ +#include "qabstractaspect.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QBackendNode b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QBackendNode new file mode 100644 index 0000000..60b258e --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QBackendNode @@ -0,0 +1 @@ +#include "qbackendnode.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QBackendNodeMapper b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QBackendNodeMapper new file mode 100644 index 0000000..60b258e --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QBackendNodeMapper @@ -0,0 +1 @@ +#include "qbackendnode.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QBackendNodeMapperPtr b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QBackendNodeMapperPtr new file mode 100644 index 0000000..3ecaa3c --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QBackendNodeMapperPtr @@ -0,0 +1 @@ +#include "qabstractaspect.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QComponent b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QComponent new file mode 100644 index 0000000..2f3fc51 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QComponent @@ -0,0 +1 @@ +#include "qcomponent.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QComponentAddedChange b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QComponentAddedChange new file mode 100644 index 0000000..fb69cb7 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QComponentAddedChange @@ -0,0 +1 @@ +#include "qcomponentaddedchange.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QComponentAddedChangePtr b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QComponentAddedChangePtr new file mode 100644 index 0000000..fb69cb7 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QComponentAddedChangePtr @@ -0,0 +1 @@ +#include "qcomponentaddedchange.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QComponentRemovedChange b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QComponentRemovedChange new file mode 100644 index 0000000..e5ea743 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QComponentRemovedChange @@ -0,0 +1 @@ +#include "qcomponentremovedchange.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QComponentRemovedChangePtr b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QComponentRemovedChangePtr new file mode 100644 index 0000000..e5ea743 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QComponentRemovedChangePtr @@ -0,0 +1 @@ +#include "qcomponentremovedchange.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QComponentVector b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QComponentVector new file mode 100644 index 0000000..7556ee5 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QComponentVector @@ -0,0 +1 @@ +#include "qentity.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QDynamicPropertyUpdatedChange b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QDynamicPropertyUpdatedChange new file mode 100644 index 0000000..8c58243 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QDynamicPropertyUpdatedChange @@ -0,0 +1 @@ +#include "qdynamicpropertyupdatedchange.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QDynamicPropertyUpdatedChangePtr b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QDynamicPropertyUpdatedChangePtr new file mode 100644 index 0000000..8c58243 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QDynamicPropertyUpdatedChangePtr @@ -0,0 +1 @@ +#include "qdynamicpropertyupdatedchange.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QEntity b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QEntity new file mode 100644 index 0000000..7556ee5 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QEntity @@ -0,0 +1 @@ +#include "qentity.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QEntityPtr b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QEntityPtr new file mode 100644 index 0000000..faeb6a0 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QEntityPtr @@ -0,0 +1 @@ +#include "qaspectengine.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QJoint b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QJoint new file mode 100644 index 0000000..0f74180 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QJoint @@ -0,0 +1 @@ +#include "qjoint.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QNode b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QNode new file mode 100644 index 0000000..752559d --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QNode @@ -0,0 +1 @@ +#include "qnode.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QNodeCommand b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QNodeCommand new file mode 100644 index 0000000..1c19f99 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QNodeCommand @@ -0,0 +1 @@ +#include "qnodecommand.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QNodeCommandPtr b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QNodeCommandPtr new file mode 100644 index 0000000..1c19f99 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QNodeCommandPtr @@ -0,0 +1 @@ +#include "qnodecommand.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QNodeCreatedChange b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QNodeCreatedChange new file mode 100644 index 0000000..d88832a --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QNodeCreatedChange @@ -0,0 +1 @@ +#include "qnodecreatedchange.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QNodeCreatedChangeBase b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QNodeCreatedChangeBase new file mode 100644 index 0000000..d88832a --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QNodeCreatedChangeBase @@ -0,0 +1 @@ +#include "qnodecreatedchange.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QNodeCreatedChangeBasePtr b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QNodeCreatedChangeBasePtr new file mode 100644 index 0000000..d88832a --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QNodeCreatedChangeBasePtr @@ -0,0 +1 @@ +#include "qnodecreatedchange.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QNodeDestroyedChange b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QNodeDestroyedChange new file mode 100644 index 0000000..2e38a72 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QNodeDestroyedChange @@ -0,0 +1 @@ +#include "qnodedestroyedchange.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QNodeDestroyedChangePtr b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QNodeDestroyedChangePtr new file mode 100644 index 0000000..2e38a72 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QNodeDestroyedChangePtr @@ -0,0 +1 @@ +#include "qnodedestroyedchange.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QNodeId b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QNodeId new file mode 100644 index 0000000..5b0a0a7 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QNodeId @@ -0,0 +1 @@ +#include "qnodeid.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QNodeIdTypePair b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QNodeIdTypePair new file mode 100644 index 0000000..752559d --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QNodeIdTypePair @@ -0,0 +1 @@ +#include "qnode.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QNodePtr b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QNodePtr new file mode 100644 index 0000000..752559d --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QNodePtr @@ -0,0 +1 @@ +#include "qnode.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QNodeVector b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QNodeVector new file mode 100644 index 0000000..752559d --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QNodeVector @@ -0,0 +1 @@ +#include "qnode.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QPropertyNodeAddedChange b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QPropertyNodeAddedChange new file mode 100644 index 0000000..943722a --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QPropertyNodeAddedChange @@ -0,0 +1 @@ +#include "qpropertynodeaddedchange.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QPropertyNodeAddedChangePtr b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QPropertyNodeAddedChangePtr new file mode 100644 index 0000000..943722a --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QPropertyNodeAddedChangePtr @@ -0,0 +1 @@ +#include "qpropertynodeaddedchange.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QPropertyNodeRemovedChange b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QPropertyNodeRemovedChange new file mode 100644 index 0000000..818cb0e --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QPropertyNodeRemovedChange @@ -0,0 +1 @@ +#include "qpropertynoderemovedchange.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QPropertyNodeRemovedChangePtr b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QPropertyNodeRemovedChangePtr new file mode 100644 index 0000000..818cb0e --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QPropertyNodeRemovedChangePtr @@ -0,0 +1 @@ +#include "qpropertynoderemovedchange.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QPropertyUpdatedChange b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QPropertyUpdatedChange new file mode 100644 index 0000000..2c74b3d --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QPropertyUpdatedChange @@ -0,0 +1 @@ +#include "qpropertyupdatedchange.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QPropertyUpdatedChangeBase b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QPropertyUpdatedChangeBase new file mode 100644 index 0000000..74c4ff1 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QPropertyUpdatedChangeBase @@ -0,0 +1 @@ +#include "qpropertyupdatedchangebase.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QPropertyUpdatedChangeBasePtr b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QPropertyUpdatedChangeBasePtr new file mode 100644 index 0000000..74c4ff1 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QPropertyUpdatedChangeBasePtr @@ -0,0 +1 @@ +#include "qpropertyupdatedchangebase.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QPropertyUpdatedChangePtr b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QPropertyUpdatedChangePtr new file mode 100644 index 0000000..2c74b3d --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QPropertyUpdatedChangePtr @@ -0,0 +1 @@ +#include "qpropertyupdatedchange.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QPropertyValueAddedChange b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QPropertyValueAddedChange new file mode 100644 index 0000000..fc05fe8 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QPropertyValueAddedChange @@ -0,0 +1 @@ +#include "qpropertyvalueaddedchange.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QPropertyValueAddedChangeBase b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QPropertyValueAddedChangeBase new file mode 100644 index 0000000..da160dc --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QPropertyValueAddedChangeBase @@ -0,0 +1 @@ +#include "qpropertyvalueaddedchangebase.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QPropertyValueAddedChangeBasePtr b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QPropertyValueAddedChangeBasePtr new file mode 100644 index 0000000..da160dc --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QPropertyValueAddedChangeBasePtr @@ -0,0 +1 @@ +#include "qpropertyvalueaddedchangebase.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QPropertyValueAddedChangePtr b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QPropertyValueAddedChangePtr new file mode 100644 index 0000000..fc05fe8 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QPropertyValueAddedChangePtr @@ -0,0 +1 @@ +#include "qpropertyvalueaddedchange.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QPropertyValueRemovedChange b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QPropertyValueRemovedChange new file mode 100644 index 0000000..ca13057 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QPropertyValueRemovedChange @@ -0,0 +1 @@ +#include "qpropertyvalueremovedchange.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QPropertyValueRemovedChangeBase b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QPropertyValueRemovedChangeBase new file mode 100644 index 0000000..84a7206 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QPropertyValueRemovedChangeBase @@ -0,0 +1 @@ +#include "qpropertyvalueremovedchangebase.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QPropertyValueRemovedChangeBasePtr b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QPropertyValueRemovedChangeBasePtr new file mode 100644 index 0000000..84a7206 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QPropertyValueRemovedChangeBasePtr @@ -0,0 +1 @@ +#include "qpropertyvalueremovedchangebase.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QPropertyValueRemovedChangePtr b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QPropertyValueRemovedChangePtr new file mode 100644 index 0000000..ca13057 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QPropertyValueRemovedChangePtr @@ -0,0 +1 @@ +#include "qpropertyvalueremovedchange.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QSceneChange b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QSceneChange new file mode 100644 index 0000000..8102748 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QSceneChange @@ -0,0 +1 @@ +#include "qscenechange.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QSceneChangePtr b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QSceneChangePtr new file mode 100644 index 0000000..8102748 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QSceneChangePtr @@ -0,0 +1 @@ +#include "qscenechange.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QSkeleton b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QSkeleton new file mode 100644 index 0000000..160cc2d --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QSkeleton @@ -0,0 +1 @@ +#include "qskeleton.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QSkeletonLoader b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QSkeletonLoader new file mode 100644 index 0000000..ee6ff0a --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QSkeletonLoader @@ -0,0 +1 @@ +#include "qskeletonloader.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QStaticPropertyUpdatedChangeBase b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QStaticPropertyUpdatedChangeBase new file mode 100644 index 0000000..7dba3af --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QStaticPropertyUpdatedChangeBase @@ -0,0 +1 @@ +#include "qstaticpropertyupdatedchangebase.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QStaticPropertyUpdatedChangeBasePtr b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QStaticPropertyUpdatedChangeBasePtr new file mode 100644 index 0000000..7dba3af --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QStaticPropertyUpdatedChangeBasePtr @@ -0,0 +1 @@ +#include "qstaticpropertyupdatedchangebase.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QStaticPropertyValueAddedChangeBase b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QStaticPropertyValueAddedChangeBase new file mode 100644 index 0000000..f647ef0 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QStaticPropertyValueAddedChangeBase @@ -0,0 +1 @@ +#include "qstaticpropertyvalueaddedchangebase.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QStaticPropertyValueRemovedChangeBase b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QStaticPropertyValueRemovedChangeBase new file mode 100644 index 0000000..d72d1e6 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QStaticPropertyValueRemovedChangeBase @@ -0,0 +1 @@ +#include "qstaticpropertyvalueremovedchangebase.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QTransform b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QTransform new file mode 100644 index 0000000..3be1049 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/QTransform @@ -0,0 +1 @@ +#include "qtransform.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/Qt3DCore b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/Qt3DCore new file mode 100644 index 0000000..52ffa92 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/Qt3DCore @@ -0,0 +1,37 @@ +#ifndef QT_QT3DCORE_MODULE_H +#define QT_QT3DCORE_MODULE_H +#include +#include "qabstractaspect.h" +#include "qabstractskeleton.h" +#include "qarmature.h" +#include "qaspectengine.h" +#include "qaspectjob.h" +#include "qbackendnode.h" +#include "qcomponent.h" +#include "qcomponentaddedchange.h" +#include "qcomponentremovedchange.h" +#include "qdynamicpropertyupdatedchange.h" +#include "qentity.h" +#include "qjoint.h" +#include "qnode.h" +#include "qnodecommand.h" +#include "qnodecreatedchange.h" +#include "qnodedestroyedchange.h" +#include "qnodeid.h" +#include "qpropertynodeaddedchange.h" +#include "qpropertynoderemovedchange.h" +#include "qpropertyupdatedchange.h" +#include "qpropertyupdatedchangebase.h" +#include "qpropertyvalueaddedchange.h" +#include "qpropertyvalueaddedchangebase.h" +#include "qpropertyvalueremovedchange.h" +#include "qpropertyvalueremovedchangebase.h" +#include "qscenechange.h" +#include "qskeleton.h" +#include "qskeletonloader.h" +#include "qstaticpropertyupdatedchangebase.h" +#include "qstaticpropertyvalueaddedchangebase.h" +#include "qstaticpropertyvalueremovedchangebase.h" +#include "qtransform.h" +#include "qt3dcoreversion.h" +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/Qt3DCoreDepends b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/Qt3DCoreDepends new file mode 100644 index 0000000..493d304 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/Qt3DCoreDepends @@ -0,0 +1,6 @@ +/* This file was generated by qmake with the info from /src/core/core.pro. */ +#ifdef __cplusplus /* create empty PCH in C mode */ +#include +#include +#include +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/Qt3DCoreVersion b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/Qt3DCoreVersion new file mode 100644 index 0000000..1e9667b --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/Qt3DCoreVersion @@ -0,0 +1 @@ +#include "qt3dcoreversion.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qabstractaspect.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qabstractaspect.h new file mode 100644 index 0000000..8ac1b25 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qabstractaspect.h @@ -0,0 +1,144 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QABSTRACTASPECT_H +#define QT3DCORE_QABSTRACTASPECT_H + +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QAspectEngine; +class QAspectJob; +class QAspectManager; +class QNode; +class QEntity; +class QAbstractAspectPrivate; +class QBackendNodeMapper; + +typedef QSharedPointer QAspectJobPtr; +typedef QSharedPointer QBackendNodeMapperPtr; + +class QT3DCORESHARED_EXPORT QAbstractAspect : public QObject +{ + Q_OBJECT + +public: + explicit QAbstractAspect(QObject *parent = nullptr); + ~QAbstractAspect(); + + void scheduleSingleShotJob(const Qt3DCore::QAspectJobPtr &job); + +protected: + explicit QAbstractAspect(QAbstractAspectPrivate &dd, QObject *parent = nullptr); + + QNodeId rootEntityId() const Q_DECL_NOEXCEPT; + + template + void registerBackendType(const QBackendNodeMapperPtr &functor); + void registerBackendType(const QMetaObject &, const QBackendNodeMapperPtr &functor); + template + void unregisterBackendType(); + void unregisterBackendType(const QMetaObject &); + +private: + virtual QVariant executeCommand(const QStringList &args); + + virtual QVector jobsToExecute(qint64 time); + + virtual void onRegistered(); + virtual void onUnregistered(); + + virtual void onEngineStartup(); + virtual void onEngineShutdown(); + + Q_DECLARE_PRIVATE(QAbstractAspect) + friend class QAspectEngine; + friend class QAspectManager; +}; + +template +void QAbstractAspect::registerBackendType(const QBackendNodeMapperPtr &functor) +{ + registerBackendType(Frontend::staticMetaObject, functor); +} + +template +void QAbstractAspect::unregisterBackendType() +{ + unregisterBackendType(Frontend::staticMetaObject); +} + +} // namespace Qt3DCore + +QT_END_NAMESPACE + +#define QT3D_REGISTER_NAMESPACED_ASPECT(name, AspectNamespace, AspectType) \ + QT_BEGIN_NAMESPACE \ + namespace Qt3DCore { \ + typedef QAbstractAspect *(*AspectCreateFunction)(QObject *); \ + QT_DEPRECATED QT3DCORESHARED_EXPORT void qt3d_QAspectFactory_addDefaultFactory(const QString &, const QMetaObject *, AspectCreateFunction); \ + QT3DCORESHARED_EXPORT void qt3d_QAspectFactory_addDefaultFactory(const QLatin1String &, const QMetaObject *, AspectCreateFunction); \ + } \ + QT_END_NAMESPACE \ + namespace { \ + Qt3DCore::QAbstractAspect *qt3d_ ## AspectType ## _createFunction(QObject *parent) \ + { \ + using namespace AspectNamespace; \ + return new AspectType(parent); \ + } \ + \ + void qt3d_ ## AspectType ## _registerFunction() \ + { \ + using namespace AspectNamespace; \ + qt3d_QAspectFactory_addDefaultFactory(QLatin1String(name), &AspectType::staticMetaObject, qt3d_ ## AspectType ## _createFunction); \ + } \ + \ + Q_CONSTRUCTOR_FUNCTION(qt3d_ ## AspectType ## _registerFunction) \ + } + +#define QT3D_REGISTER_ASPECT(name, AspectType) \ + QT3D_REGISTER_NAMESPACED_ASPECT(name, QT_PREPEND_NAMESPACE(Qt3DCore), AspectType) + +#endif // QT3DCORE_ABSTRACTASPECT_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qabstractskeleton.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qabstractskeleton.h new file mode 100644 index 0000000..3fc13fb --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qabstractskeleton.h @@ -0,0 +1,77 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QABSTRACTSKELETON_H +#define QT3DCORE_QABSTRACTSKELETON_H + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QAbstractSkeletonPrivate; + +class QT3DCORESHARED_EXPORT QAbstractSkeleton : public Qt3DCore::QNode +{ + Q_OBJECT + Q_PROPERTY(int jointCount READ jointCount NOTIFY jointCountChanged) + +public: + ~QAbstractSkeleton(); + + int jointCount() const; + +Q_SIGNALS: + void jointCountChanged(int jointCount); + +protected: + QAbstractSkeleton(QAbstractSkeletonPrivate &dd, Qt3DCore::QNode *parent = nullptr); + void sceneChangeEvent(const QSceneChangePtr &change) override; + +private: + Q_DECLARE_PRIVATE(QAbstractSkeleton) +}; + +} // namespace Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3DCORE_QABSTRACTSKELETON_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qarmature.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qarmature.h new file mode 100644 index 0000000..a5ccc9d --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qarmature.h @@ -0,0 +1,82 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QARMATURE_H +#define QT3DCORE_QARMATURE_H + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QArmaturePrivate; +class QAbstractSkeleton; + +class QT3DCORESHARED_EXPORT QArmature : public Qt3DCore::QComponent +{ + Q_OBJECT + Q_PROPERTY(Qt3DCore::QAbstractSkeleton* skeleton READ skeleton WRITE setSkeleton NOTIFY skeletonChanged) + +public: + explicit QArmature(Qt3DCore::QNode *parent = nullptr); + ~QArmature(); + + QAbstractSkeleton* skeleton() const; + +public Q_SLOTS: + void setSkeleton(Qt3DCore::QAbstractSkeleton* skeleton); + +Q_SIGNALS: + void skeletonChanged(Qt3DCore::QAbstractSkeleton* skeleton); + +protected: + QArmature(QArmaturePrivate &dd, Qt3DCore::QNode *parent = nullptr); + +private: + Q_DECLARE_PRIVATE(QArmature) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +} // namespace Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3DCORE_QARMATURE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qaspectengine.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qaspectengine.h new file mode 100644 index 0000000..28b1504 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qaspectengine.h @@ -0,0 +1,87 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QASPECTENGINE_H +#define QT3DCORE_QASPECTENGINE_H + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QAbstractAspect; +class QAspectThread; +class QAspectEnginePrivate; +class QEntity; +class QNode; + +typedef QSharedPointer QEntityPtr; + +class QT3DCORESHARED_EXPORT QAspectEngine : public QObject +{ + Q_OBJECT +public: + explicit QAspectEngine(QObject *parent = nullptr); + ~QAspectEngine(); + + void setRootEntity(QEntityPtr root); + QEntityPtr rootEntity() const; + + void registerAspect(QAbstractAspect *aspect); + void registerAspect(const QString &name); + void unregisterAspect(QAbstractAspect *aspect); + void unregisterAspect(const QString &name); + + QVector aspects() const; + + QVariant executeCommand(const QString &command); + +private: + Q_DECLARE_PRIVATE(QAspectEngine) +}; + +} // namespace Qt3DCore + +QT_END_NAMESPACE + + +#endif // QT3DCORE_QASPECTENGINE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qaspectjob.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qaspectjob.h new file mode 100644 index 0000000..398cd88 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qaspectjob.h @@ -0,0 +1,81 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QASPECTJOB_H +#define QT3DCORE_QASPECTJOB_H + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QAspectJobPrivate; + +class QT3DCORESHARED_EXPORT QAspectJob +{ +public: + QAspectJob(); + virtual ~QAspectJob(); + + void addDependency(QWeakPointer dependency); + void removeDependency(QWeakPointer dependency); + + QVector > dependencies() const; + + virtual void run() = 0; + +protected: + explicit QAspectJob(QAspectJobPrivate &dd); + +private: + Q_DISABLE_COPY(QAspectJob) + Q_DECLARE_PRIVATE(QAspectJob) + QAspectJobPrivate *d_ptr; +}; + +typedef QSharedPointer QAspectJobPtr; + +} // namespace Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3DCORE_QASPECTJOB_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qbackendnode.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qbackendnode.h new file mode 100644 index 0000000..99e483c --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qbackendnode.h @@ -0,0 +1,117 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QBACKENDNODE_H +#define QT3DCORE_QBACKENDNODE_H + +#include +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QBackendNodePrivate; +class QBackendNode; +class QAspectEngine; + +#if defined(QT_BUILD_INTERNAL) +class QBackendNodeTester; +#endif + +class QT3DCORESHARED_EXPORT QBackendNodeMapper +{ +public: + virtual ~QBackendNodeMapper(); + virtual QBackendNode *create(const QNodeCreatedChangeBasePtr &change) const = 0; + virtual QBackendNode *get(QNodeId id) const = 0; + virtual void destroy(QNodeId id) const = 0; +}; + +typedef QSharedPointer QBackendNodeMapperPtr; + +class QT3DCORESHARED_EXPORT QBackendNode +{ +public: + enum Mode { + ReadOnly = 0, + ReadWrite + }; + + explicit QBackendNode(Mode mode = ReadOnly); + virtual ~QBackendNode(); + + QNodeId peerId() const Q_DECL_NOEXCEPT; + + void setEnabled(bool enabled) Q_DECL_NOEXCEPT; + bool isEnabled() const Q_DECL_NOEXCEPT; + + Mode mode() const Q_DECL_NOEXCEPT; + +protected: + Q_DECLARE_PRIVATE(QBackendNode) + explicit QBackendNode(QBackendNodePrivate &dd); + void notifyObservers(const QSceneChangePtr &e); + QNodeCommand::CommandId sendCommand(const QString &name, const QVariant &data, + QNodeCommand::CommandId replyTo = QNodeCommand::CommandId()); + void sendReply(const QNodeCommandPtr &command); + virtual void sceneChangeEvent(const QSceneChangePtr &e); + + QBackendNodePrivate *d_ptr; + +private: + Q_DISABLE_COPY(QBackendNode) + void setPeerId(QNodeId id) Q_DECL_NOEXCEPT; + virtual void initializeFromPeer(const QNodeCreatedChangeBasePtr &change); + + friend class QBackendNodePropertyChange; + friend class QAbstractAspectPrivate; +#if defined(QT_BUILD_INTERNAL) + friend class QBackendNodeTester; +#endif +}; + +} // namespace Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3DCORE_QBACKENDNODE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qcomponent.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qcomponent.h new file mode 100644 index 0000000..639f944 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qcomponent.h @@ -0,0 +1,84 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_COMPONENT_H +#define QT3DCORE_COMPONENT_H + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QComponentPrivate; + +class QT3DCORESHARED_EXPORT QComponent : public QNode +{ + Q_OBJECT + Q_PROPERTY(bool isShareable READ isShareable WRITE setShareable NOTIFY shareableChanged) + +public: + explicit QComponent(QNode *parent = nullptr); + ~QComponent(); + + bool isShareable() const; + + QVector entities() const; + +public Q_SLOTS: + void setShareable(bool isShareable); + +Q_SIGNALS: + void shareableChanged(bool isShareable); + void addedToEntity(QEntity *entity); + void removedFromEntity(QEntity *entity); + +protected: + explicit QComponent(QComponentPrivate &dd, QNode *parent = nullptr); + +private: + Q_DECLARE_PRIVATE(QComponent) +}; + +} // namespace Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3DCORE_COMPONENT_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qcomponentaddedchange.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qcomponentaddedchange.h new file mode 100644 index 0000000..e7676a0 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qcomponentaddedchange.h @@ -0,0 +1,76 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QCOMPONENTADDEDCHANGE_H +#define QT3DCORE_QCOMPONENTADDEDCHANGE_H + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QComponent; +class QEntity; +class QComponentAddedChangePrivate; + +class QT3DCORESHARED_EXPORT QComponentAddedChange : public QSceneChange +{ +public: + explicit QComponentAddedChange(const QEntity *entity, + const QComponent *component); + explicit QComponentAddedChange(const QComponent *component, + const QEntity *entity); + ~QComponentAddedChange(); + + QNodeId entityId() const Q_DECL_NOTHROW; + QNodeId componentId() const Q_DECL_NOTHROW; + const QMetaObject *componentMetaObject() const Q_DECL_NOTHROW; + +private: + Q_DECLARE_PRIVATE(QComponentAddedChange) +}; + +typedef QSharedPointer QComponentAddedChangePtr; + +} // namespace Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3DCORE_QCOMPONENTADDEDCHANGE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qcomponentremovedchange.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qcomponentremovedchange.h new file mode 100644 index 0000000..66743b1 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qcomponentremovedchange.h @@ -0,0 +1,76 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QCOMPONENTREMOVEDCHANGE_H +#define QT3DCORE_QCOMPONENTREMOVEDCHANGE_H + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QComponent; +class QEntity; +class QComponentRemovedChangePrivate; + +class QT3DCORESHARED_EXPORT QComponentRemovedChange : public QSceneChange +{ +public: + explicit QComponentRemovedChange(const QEntity *entity, + const QComponent *component); + explicit QComponentRemovedChange(const QComponent *component, + const QEntity *entity); + ~QComponentRemovedChange(); + + QNodeId entityId() const Q_DECL_NOTHROW; + QNodeId componentId() const Q_DECL_NOTHROW; + const QMetaObject *componentMetaObject() const Q_DECL_NOTHROW; + +private: + Q_DECLARE_PRIVATE(QComponentRemovedChange) +}; + +typedef QSharedPointer QComponentRemovedChangePtr; + +} // namespace Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3DCORE_QCOMPONENTREMOVEDCHANGE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qdynamicpropertyupdatedchange.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qdynamicpropertyupdatedchange.h new file mode 100644 index 0000000..2eee6d6 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qdynamicpropertyupdatedchange.h @@ -0,0 +1,74 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QDYNAMICPROPERTYUPDATEDCHANGE_H +#define QT3DCORE_QDYNAMICPROPERTYUPDATEDCHANGE_H + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QDynamicPropertyUpdatedChangePrivate; + +class QT3DCORESHARED_EXPORT QDynamicPropertyUpdatedChange : public QPropertyUpdatedChangeBase +{ +public: + explicit QDynamicPropertyUpdatedChange(QNodeId subjectId); + ~QDynamicPropertyUpdatedChange(); + + QByteArray propertyName() const; + void setPropertyName(const QByteArray &name); + + QVariant value() const; + void setValue(const QVariant &value); + +protected: + Q_DECLARE_PRIVATE(QDynamicPropertyUpdatedChange) + QDynamicPropertyUpdatedChange(QDynamicPropertyUpdatedChangePrivate &dd, QNodeId subjectId); +}; + +typedef QSharedPointer QDynamicPropertyUpdatedChangePtr; + +} // namespace Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3DCORE_QNODEDYNAMICPROPERTYUPDATEDCHANGE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qentity.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qentity.h new file mode 100644 index 0000000..f6044ce --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qentity.h @@ -0,0 +1,88 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QENTITY_H +#define QT3DCORE_QENTITY_H + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QComponent; +class QEntityPrivate; + +typedef QVector QComponentVector; + +class QT3DCORESHARED_EXPORT QEntity : public QNode +{ + Q_OBJECT +public: + explicit QEntity(QNode *parent = nullptr); + virtual ~QEntity(); + + QComponentVector components() const; + + void addComponent(QComponent *comp); + void removeComponent(QComponent *comp); + + QEntity *parentEntity() const; + +protected: + explicit QEntity(QEntityPrivate &dd, QNode *parent = nullptr); + +private Q_SLOTS: + void onParentChanged(QObject *); + +private: + Q_DECLARE_PRIVATE(QEntity) + + QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +typedef QSharedPointer QEntityPtr; + +} // namespace Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3DCORE_QENTITY_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qjoint.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qjoint.h new file mode 100644 index 0000000..fdc3d51 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qjoint.h @@ -0,0 +1,115 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QJOINT_H +#define QT3DCORE_QJOINT_H + +#include +#include + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QJointPrivate; + +class QT3DCORESHARED_EXPORT QJoint : public QNode +{ + Q_OBJECT + Q_PROPERTY(QVector3D scale READ scale WRITE setScale NOTIFY scaleChanged) + Q_PROPERTY(QQuaternion rotation READ rotation WRITE setRotation NOTIFY rotationChanged) + Q_PROPERTY(QVector3D translation READ translation WRITE setTranslation NOTIFY translationChanged) + Q_PROPERTY(QMatrix4x4 inverseBindMatrix READ inverseBindMatrix WRITE setInverseBindMatrix NOTIFY inverseBindMatrixChanged) + Q_PROPERTY(float rotationX READ rotationX WRITE setRotationX NOTIFY rotationXChanged) + Q_PROPERTY(float rotationY READ rotationY WRITE setRotationY NOTIFY rotationYChanged) + Q_PROPERTY(float rotationZ READ rotationZ WRITE setRotationZ NOTIFY rotationZChanged) + Q_PROPERTY(QString name READ name WRITE setName NOTIFY nameChanged) + +public: + explicit QJoint(Qt3DCore::QNode *parent = nullptr); + ~QJoint(); + + QVector3D scale() const; + QQuaternion rotation() const; + QVector3D translation() const; + QMatrix4x4 inverseBindMatrix() const; + float rotationX() const; + float rotationY() const; + float rotationZ() const; + QString name() const; + + void addChildJoint(QJoint *joint); + void removeChildJoint(QJoint *joint); + QVector childJoints() const; + +public Q_SLOTS: + void setScale(const QVector3D &scale); + void setRotation(const QQuaternion &rotation); + void setTranslation(const QVector3D &translation); + void setInverseBindMatrix(const QMatrix4x4 &inverseBindMatrix); + void setRotationX(float rotationX); + void setRotationY(float rotationY); + void setRotationZ(float rotationZ); + void setName(const QString &name); + void setToIdentity(); + +Q_SIGNALS: + void scaleChanged(const QVector3D &scale); + void rotationChanged(const QQuaternion &rotation); + void translationChanged(const QVector3D &translation); + void inverseBindMatrixChanged(const QMatrix4x4 &inverseBindMatrix); + void rotationXChanged(float rotationX); + void rotationYChanged(float rotationY); + void rotationZChanged(float rotationZ); + void nameChanged(const QString &name); + +private: + Q_DECLARE_PRIVATE(QJoint) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +} // namespace Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3DCORE_QJOINT_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qnode.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qnode.h new file mode 100644 index 0000000..1fe03f5 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qnode.h @@ -0,0 +1,179 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QNODE_H +#define QT3DCORE_QNODE_H + +#include +#include +#include +#include +#include +#include + +#define Q_NODE_NULLPTR static_cast(nullptr) + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QNode; +class QNodePrivate; +class QEntity; +class QAspectEngine; + +#if defined(QT_BUILD_INTERNAL) +class QBackendNodeTester; +#endif + +typedef QVector QNodeVector; +typedef QSharedPointer QNodePtr; + +class QT3DCORESHARED_EXPORT QNode : public QObject +{ + Q_OBJECT + Q_PROPERTY(Qt3DCore::QNode *parent READ parentNode WRITE setParent NOTIFY parentChanged) + Q_PROPERTY(bool enabled READ isEnabled WRITE setEnabled NOTIFY enabledChanged) + Q_PROPERTY(PropertyTrackingMode defaultPropertyTrackingMode READ defaultPropertyTrackingMode WRITE setDefaultPropertyTrackingMode NOTIFY defaultPropertyTrackingModeChanged REVISION 9) +public: + + enum PropertyTrackingMode : quint16 { + TrackFinalValues, + DontTrackValues, + TrackAllValues + }; + Q_ENUM(PropertyTrackingMode) + + explicit QNode(QNode *parent = nullptr); + virtual ~QNode(); + + QNodeId id() const; + QNode *parentNode() const; + + bool notificationsBlocked() const; + bool blockNotifications(bool block); + + QNodeVector childNodes() const; + + bool isEnabled() const; + PropertyTrackingMode defaultPropertyTrackingMode() const; + + void setPropertyTracking(const QString &propertyName, PropertyTrackingMode trackMode); + PropertyTrackingMode propertyTracking(const QString &propertyName) const; + void clearPropertyTracking(const QString &propertyName); + void clearPropertyTrackings(); + + QNodeCommand::CommandId sendCommand(const QString &name, const QVariant &data = QVariant(), + QNodeCommand::CommandId replyTo = QNodeCommand::CommandId()); + void sendReply(const QNodeCommandPtr &command); + +public Q_SLOTS: + void setParent(QNode *parent); + void setEnabled(bool isEnabled); + void setDefaultPropertyTrackingMode(PropertyTrackingMode mode); + +Q_SIGNALS: + void parentChanged(QObject *parent); + void enabledChanged(bool enabled); + void defaultPropertyTrackingModeChanged(PropertyTrackingMode mode); + void nodeDestroyed(); + +protected: + explicit QNode(QNodePrivate &dd, QNode *parent = nullptr); + void notifyObservers(const QSceneChangePtr &change); + virtual void sceneChangeEvent(const QSceneChangePtr &change); + +private: + Q_DECLARE_PRIVATE(QNode) + virtual QNodeCreatedChangeBasePtr createNodeCreationChange() const; + + // We only want setParent(QNode *) to be callable + // when dealing with QNode objects + void setParent(QObject *) Q_DECL_EQ_DELETE; + + Q_PRIVATE_SLOT(d_func(), void _q_postConstructorInit()) + Q_PRIVATE_SLOT(d_func(), void _q_addChild(Qt3DCore::QNode *)) + Q_PRIVATE_SLOT(d_func(), void _q_removeChild(Qt3DCore::QNode *)) + Q_PRIVATE_SLOT(d_func(), void _q_setParentHelper(Qt3DCore::QNode *)) + + friend class QAspectEngine; + friend class QAspectEnginePrivate; + friend class QNodeCreatedChangeGenerator; + friend class QPostman; + friend class QScene; + +#if defined(QT_BUILD_INTERNAL) + friend class QBackendNodeTester; +#endif +}; + +inline QNodeId qIdForNode(QNode *node){ return node ? node->id() : QNodeId(); } + +template +inline QNodeIdVector qIdsForNodes(const T &nodes) +{ + QNodeIdVector ids; + ids.reserve(nodes.size()); + for (const auto n : nodes) + ids.push_back(n->id()); + return ids; +} + +struct QNodeIdTypePair +{ + QNodeIdTypePair() Q_DECL_NOTHROW + : id() + , type(nullptr) + {} + + explicit QNodeIdTypePair(QNodeId _id, const QMetaObject *_type) Q_DECL_NOTHROW + : id(_id) + , type(_type) + {} + + QNodeId id; + const QMetaObject *type; +}; +QT3D_DECLARE_TYPEINFO(Qt3DCore, QNodeIdTypePair, Q_PRIMITIVE_TYPE) + +} // namespace Qt3DCore + +QT_END_NAMESPACE + +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qnodecommand.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qnodecommand.h new file mode 100644 index 0000000..f4371b0 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qnodecommand.h @@ -0,0 +1,85 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QNODECOMMAND_H +#define QT3DCORE_QNODECOMMAND_H + +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QNodeCommandPrivate; + +class QT3DCORESHARED_EXPORT QNodeCommand : public QSceneChange +{ +public: +#if defined(Q_ATOMIC_INT64_IS_SUPPORTED) + typedef quint64 CommandId; +#else + typedef quint32 CommandId; +#endif + + explicit QNodeCommand(QNodeId id); + ~QNodeCommand(); + + CommandId commandId() const; + + QString name() const; + void setName(const QString &name); + QVariant data() const; + void setData(const QVariant &data); + CommandId inReplyTo() const; + void setReplyToCommandId(CommandId id); + +protected: + explicit QNodeCommand(QNodeCommandPrivate &dd, QNodeId id); + +private: + Q_DECLARE_PRIVATE(QNodeCommand) +}; + +typedef QSharedPointer QNodeCommandPtr; + +} // namespace Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3DCORE_QNODECOMMAND_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qnodecreatedchange.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qnodecreatedchange.h new file mode 100644 index 0000000..85444e0 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qnodecreatedchange.h @@ -0,0 +1,90 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QNODECREATEDCHANGE_H +#define QT3DCORE_QNODECREATEDCHANGE_H + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QNode; +class QNodeCreatedChangeBasePrivate; + +class QT3DCORESHARED_EXPORT QNodeCreatedChangeBase : public QSceneChange +{ +public: + explicit QNodeCreatedChangeBase(const QNode *node); + ~QNodeCreatedChangeBase(); + + QNodeId parentId() const Q_DECL_NOTHROW; + const QMetaObject *metaObject() const Q_DECL_NOTHROW; + bool isNodeEnabled() const Q_DECL_NOTHROW; + +protected: + QNodeCreatedChangeBase(QNodeCreatedChangeBasePrivate &dd, const QNode *node); + +private: + Q_DECLARE_PRIVATE(QNodeCreatedChangeBase) +}; + +typedef QSharedPointer QNodeCreatedChangeBasePtr; + +template +class QNodeCreatedChange : public QNodeCreatedChangeBase +{ +public: + explicit QNodeCreatedChange(const QNode *_node) + : QNodeCreatedChangeBase(_node) + , data() + { + } + + T data; +}; + +template +using QNodeCreatedChangePtr = QSharedPointer>; + +} // namespace Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3DCORE_QNODECREATEDCHANGE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qnodedestroyedchange.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qnodedestroyedchange.h new file mode 100644 index 0000000..11a54f8 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qnodedestroyedchange.h @@ -0,0 +1,68 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QNODEDESTROYEDCHANGE_H +#define QT3DCORE_QNODEDESTROYEDCHANGE_H + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QNodeDestroyedChangePrivate; + +class QT3DCORESHARED_EXPORT QNodeDestroyedChange : public QSceneChange +{ +public: + explicit QNodeDestroyedChange(const QNode *node, const QVector &subtreeIdsAndTypes); + ~QNodeDestroyedChange(); + + QVector subtreeIdsAndTypes() const; + +private: + Q_DECLARE_PRIVATE(QNodeDestroyedChange) +}; + +typedef QSharedPointer QNodeDestroyedChangePtr; + +} // namespace Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3DCORE_QNODEDESTROYEDCHANGE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qnodeid.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qnodeid.h new file mode 100644 index 0000000..a00559d --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qnodeid.h @@ -0,0 +1,122 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QNODEID_H +#define QT3DCORE_QNODEID_H + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QNodeId +{ + Q_DECL_CONSTEXPR explicit QNodeId(quint64 i) Q_DECL_NOTHROW + : m_id(i) + {} +public: + Q_DECL_CONSTEXPR QNodeId() Q_DECL_NOTHROW + : m_id(0) + {} + + QT3DCORESHARED_EXPORT static QNodeId createId() Q_DECL_NOTHROW; + + Q_DECL_CONSTEXPR bool isNull() const Q_DECL_NOTHROW + { + return m_id == 0; + } + + Q_DECL_CONSTEXPR bool operator ==(QNodeId other) const Q_DECL_NOTHROW + { + return other.m_id == m_id; + } + + Q_DECL_CONSTEXPR bool operator !=(QNodeId other) const Q_DECL_NOTHROW + { + return !operator ==(other); + } + + Q_DECL_CONSTEXPR bool operator <(QNodeId other) const Q_DECL_NOTHROW + { + return m_id < other.m_id; + } + + Q_DECL_CONSTEXPR bool operator >(QNodeId other) const Q_DECL_NOTHROW + { + return m_id > other.m_id; + } + + Q_DECL_CONSTEXPR quint64 id() const Q_DECL_NOTHROW + { + return m_id; + } + + Q_DECL_CONSTEXPR operator bool() const Q_DECL_NOTHROW + { + return m_id != 0; + } + +private: + quint64 m_id; +}; +QT3D_DECLARE_TYPEINFO(Qt3DCore, QNodeId, Q_PRIMITIVE_TYPE) + +typedef QVector QNodeIdVector; + +#ifndef QT_NO_DEBUG_STREAM +QT3DCORESHARED_EXPORT QDebug operator<<(QDebug d, QNodeId id); +#endif + +inline Q_DECL_CONSTEXPR uint qHash(QNodeId id, uint seed = 0) Q_DECL_NOTHROW +{ + using QT_PREPEND_NAMESPACE(qHash); + return qHash(id.id(), seed); +} + +} // Qt3DCore + +QT_END_NAMESPACE + +Q_DECLARE_METATYPE(Qt3DCore::QNodeId) // LCOV_EXCL_LINE + + +#endif // QT3DCORE_QNODEID_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qpropertynodeaddedchange.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qpropertynodeaddedchange.h new file mode 100644 index 0000000..a816f71 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qpropertynodeaddedchange.h @@ -0,0 +1,72 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QPROPERTYNODEADDEDCHANGE_H +#define QT3DCORE_QPROPERTYNODEADDEDCHANGE_H + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QPropertyNodeAddedChangePrivate; + +class QT3DCORESHARED_EXPORT QPropertyNodeAddedChange : public QStaticPropertyValueAddedChangeBase +{ +public: + explicit QPropertyNodeAddedChange(QNodeId subjectId, QNode *node); + ~QPropertyNodeAddedChange(); + + QNodeId addedNodeId() const; + const QMetaObject *metaObject() const; + +private: + Q_DECLARE_PRIVATE(QPropertyNodeAddedChange) +}; + +typedef QSharedPointer QPropertyNodeAddedChangePtr; + +} // namespace Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3DCORE_QPROPERTYNODEADDEDCHANGE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qpropertynoderemovedchange.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qpropertynoderemovedchange.h new file mode 100644 index 0000000..d97bec6 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qpropertynoderemovedchange.h @@ -0,0 +1,72 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QPROPERTYNODEREMOVEDCHANGE_H +#define QT3DCORE_QPROPERTYNODEREMOVEDCHANGE_H + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QPropertyNodeRemovedChangePrivate; + +class QT3DCORESHARED_EXPORT QPropertyNodeRemovedChange : public QStaticPropertyValueRemovedChangeBase +{ +public: + explicit QPropertyNodeRemovedChange(QNodeId subjectId, QNode *node); + ~QPropertyNodeRemovedChange(); + + QNodeId removedNodeId() const; + const QMetaObject *metaObject() const; + +private: + Q_DECLARE_PRIVATE(QPropertyNodeRemovedChange) +}; + +typedef QSharedPointer QPropertyNodeRemovedChangePtr; + +} // namespace Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3DCORE_QPROPERTYNODEREMOVEDCHANGE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qpropertyupdatedchange.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qpropertyupdatedchange.h new file mode 100644 index 0000000..acec446 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qpropertyupdatedchange.h @@ -0,0 +1,71 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QPROPERTYUPDATEDCHANGE_H +#define QT3DCORE_QPROPERTYUPDATEDCHANGE_H + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QPropertyUpdatedChangePrivate; + +class QT3DCORESHARED_EXPORT QPropertyUpdatedChange : public QStaticPropertyUpdatedChangeBase +{ +public: + explicit QPropertyUpdatedChange(QNodeId subjectId); + virtual ~QPropertyUpdatedChange(); + + QVariant value() const; + void setValue(const QVariant &value); + +protected: + Q_DECLARE_PRIVATE(QPropertyUpdatedChange) + QPropertyUpdatedChange(QPropertyUpdatedChangePrivate &dd, QNodeId subjectId); +}; + +typedef QSharedPointer QPropertyUpdatedChangePtr; + +} // namespace Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3DCORE_QPROPERTYUPDATEDCHANGE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qpropertyupdatedchangebase.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qpropertyupdatedchangebase.h new file mode 100644 index 0000000..1abbd89 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qpropertyupdatedchangebase.h @@ -0,0 +1,70 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QPROPERTYUPDATEDCHANGEBASE_H +#define QT3DCORE_QPROPERTYUPDATEDCHANGEBASE_H + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QPropertyUpdatedChangeBasePrivate; + +class QT3DCORESHARED_EXPORT QPropertyUpdatedChangeBase : public QSceneChange +{ +public: + ~QPropertyUpdatedChangeBase(); + +protected: + explicit QPropertyUpdatedChangeBase(QNodeId subjectId); + QPropertyUpdatedChangeBase(QPropertyUpdatedChangeBasePrivate &dd, QNodeId subjectId); + Q_DECLARE_PRIVATE(QPropertyUpdatedChangeBase) +}; + +typedef QSharedPointer QPropertyUpdatedChangeBasePtr; + +} // namespace Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3DCORE_QPROPERTYUPDATEDCHANGEBASE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qpropertyvalueaddedchange.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qpropertyvalueaddedchange.h new file mode 100644 index 0000000..80b41c9 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qpropertyvalueaddedchange.h @@ -0,0 +1,72 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QPROPERTYVALUEADDEDCHANGE_H +#define QT3DCORE_QPROPERTYVALUEADDEDCHANGE_H + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QPropertyValueAddedChangePrivate; + +class QT3DCORESHARED_EXPORT QPropertyValueAddedChange : public QStaticPropertyValueAddedChangeBase +{ +public: + explicit QPropertyValueAddedChange(QNodeId subjectId); + ~QPropertyValueAddedChange(); + + void setAddedValue(const QVariant &value); + QVariant addedValue() const; + +private: + Q_DECLARE_PRIVATE(QPropertyValueAddedChange) +}; + +typedef QSharedPointer QPropertyValueAddedChangePtr; + +} // namespace Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3DCORE_QPROPERTYVALUEADDEDCHANGE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qpropertyvalueaddedchangebase.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qpropertyvalueaddedchangebase.h new file mode 100644 index 0000000..2ac4496 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qpropertyvalueaddedchangebase.h @@ -0,0 +1,70 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QPROPERTYVALUEADDEDCHANGEBASE_H +#define QT3DCORE_QPROPERTYVALUEADDEDCHANGEBASE_H + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QPropertyValueAddedChangeBasePrivate; + +class QT3DCORESHARED_EXPORT QPropertyValueAddedChangeBase : public QSceneChange +{ +public: + ~QPropertyValueAddedChangeBase(); + +protected: + explicit QPropertyValueAddedChangeBase(QNodeId subjectId); + explicit QPropertyValueAddedChangeBase(QPropertyValueAddedChangeBasePrivate &dd, QNodeId subjectId); + Q_DECLARE_PRIVATE(QPropertyValueAddedChangeBase) +}; + +typedef QSharedPointer QPropertyValueAddedChangeBasePtr; + +} // namespace Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3DCORE_QPROPERTYVALUEADDEDCHANGEBASE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qpropertyvalueremovedchange.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qpropertyvalueremovedchange.h new file mode 100644 index 0000000..06bb1dd --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qpropertyvalueremovedchange.h @@ -0,0 +1,72 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QPROPERTYVALUEREMOVEDCHANGE_H +#define QT3DCORE_QPROPERTYVALUEREMOVEDCHANGE_H + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QPropertyValueRemovedChangePrivate; + +class QT3DCORESHARED_EXPORT QPropertyValueRemovedChange : public QStaticPropertyValueRemovedChangeBase +{ +public: + explicit QPropertyValueRemovedChange(QNodeId subjectId); + ~QPropertyValueRemovedChange(); + + void setRemovedValue(const QVariant &value); + QVariant removedValue() const; + +private: + Q_DECLARE_PRIVATE(QPropertyValueRemovedChange) +}; + +typedef QSharedPointer QPropertyValueRemovedChangePtr; + +} // namespace Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3DCORE_QPROPERTYVALUEREMOVEDCHANGE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qpropertyvalueremovedchangebase.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qpropertyvalueremovedchangebase.h new file mode 100644 index 0000000..44bc577 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qpropertyvalueremovedchangebase.h @@ -0,0 +1,70 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QPROPERTYVALUEREMOVEDCHANGEBASE_H +#define QT3DCORE_QPROPERTYVALUEREMOVEDCHANGEBASE_H + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QPropertyValueRemovedChangeBasePrivate; + +class QT3DCORESHARED_EXPORT QPropertyValueRemovedChangeBase : public QSceneChange +{ +public: + ~QPropertyValueRemovedChangeBase(); + +protected: + Q_DECLARE_PRIVATE(QPropertyValueRemovedChangeBase) + explicit QPropertyValueRemovedChangeBase(QNodeId subjectId); + explicit QPropertyValueRemovedChangeBase(QPropertyValueRemovedChangeBasePrivate &dd, QNodeId subjectId); +}; + +typedef QSharedPointer QPropertyValueRemovedChangeBasePtr; + +} // namespace Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3DCORE_QPROPERTYVALUEREMOVEDCHANGEBASE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qscenechange.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qscenechange.h new file mode 100644 index 0000000..7679fb0 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qscenechange.h @@ -0,0 +1,106 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QSCENECHANGE_H +#define QT3DCORE_QSCENECHANGE_H + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +enum ChangeFlag { + NodeCreated = 1 << 0, + NodeDeleted = 1 << 1, + PropertyUpdated = 1 << 2, + PropertyValueAdded = 1 << 3, + PropertyValueRemoved = 1 << 4, + ComponentAdded = 1 << 5, + ComponentRemoved = 1 << 6, + CommandRequested = 1 << 7, + CallbackTriggered = 1 << 8, + AllChanges = 0xFFFFFFFF +}; +Q_DECLARE_FLAGS(ChangeFlags, ChangeFlag) +Q_DECLARE_OPERATORS_FOR_FLAGS(ChangeFlags) + +class QSceneChangePrivate; + +class QT3DCORESHARED_EXPORT QSceneChange +{ +public: + enum DeliveryFlag { + BackendNodes = 0x0001, + Nodes = 0x0010, + DeliverToAll = BackendNodes | Nodes + }; + Q_DECLARE_FLAGS(DeliveryFlags, DeliveryFlag) + + virtual ~QSceneChange(); + + ChangeFlag type() const Q_DECL_NOTHROW; + + void setDeliveryFlags(DeliveryFlags flags) Q_DECL_NOTHROW; + DeliveryFlags deliveryFlags() const Q_DECL_NOTHROW; + + QNodeId subjectId() const Q_DECL_NOTHROW; + +protected: + Q_DECLARE_PRIVATE(QSceneChange) + explicit QSceneChange(ChangeFlag type, QNodeId subjectId); + explicit QSceneChange(QSceneChangePrivate &dd, + ChangeFlag type, QNodeId subjectId); + QSceneChangePrivate *d_ptr; + +private: + Q_DISABLE_COPY(QSceneChange) +}; + +Q_DECLARE_OPERATORS_FOR_FLAGS(QSceneChange::DeliveryFlags) + +typedef QSharedPointer QSceneChangePtr; + +} // namespace Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3DCORE_QSCENECHANGE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qskeleton.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qskeleton.h new file mode 100644 index 0000000..e3c0c91 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qskeleton.h @@ -0,0 +1,79 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QSKELETON_H +#define QT3DCORE_QSKELETON_H + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QJoint; +class QSkeletonPrivate; + +class QT3DCORESHARED_EXPORT QSkeleton : public QAbstractSkeleton +{ + Q_OBJECT + Q_PROPERTY(Qt3DCore::QJoint* rootJoint READ rootJoint WRITE setRootJoint NOTIFY rootJointChanged) + +public: + QSkeleton(Qt3DCore::QNode *parent = nullptr); + ~QSkeleton(); + + Qt3DCore::QJoint *rootJoint() const; + +public Q_SLOTS: + void setRootJoint(Qt3DCore::QJoint *rootJoint); + +Q_SIGNALS: + void rootJointChanged(Qt3DCore::QJoint *rootJoint); + +private: + Q_DECLARE_PRIVATE(QSkeleton) + QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +} // namespace Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3DCORE_QSKELETON_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qskeletonloader.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qskeletonloader.h new file mode 100644 index 0000000..1185ba6 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qskeletonloader.h @@ -0,0 +1,104 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QSKELETONLOADER_H +#define QT3DCORE_QSKELETONLOADER_H + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QJoint; +class QSkeletonLoaderPrivate; + +class QT3DCORESHARED_EXPORT QSkeletonLoader : public QAbstractSkeleton +{ + Q_OBJECT + Q_PROPERTY(QUrl source READ source WRITE setSource NOTIFY sourceChanged) + Q_PROPERTY(Status status READ status NOTIFY statusChanged) + Q_PROPERTY(bool createJointsEnabled READ isCreateJointsEnabled WRITE setCreateJointsEnabled NOTIFY createJointsEnabledChanged) + Q_PROPERTY(Qt3DCore::QJoint* rootJoint READ rootJoint NOTIFY rootJointChanged) + +public: + explicit QSkeletonLoader(Qt3DCore::QNode *parent = nullptr); + explicit QSkeletonLoader(const QUrl &source, + Qt3DCore::QNode *parent = nullptr); + ~QSkeletonLoader(); + + enum Status { + NotReady = 0, + Ready, + Error + }; + Q_ENUM(Status) // LCOV_EXCL_LINE + + QUrl source() const; + Status status() const; + bool isCreateJointsEnabled() const; + Qt3DCore::QJoint* rootJoint() const; + +public Q_SLOTS: + void setSource(const QUrl &source); + void setCreateJointsEnabled(bool enabled); + +Q_SIGNALS: + void sourceChanged(const QUrl &source); + void statusChanged(Status status); + void createJointsEnabledChanged(bool createJointsEnabled); + void rootJointChanged(Qt3DCore::QJoint* rootJoint); + +protected: + explicit QSkeletonLoader(QSkeletonLoaderPrivate &dd, Qt3DCore::QNode *parent = nullptr); + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &change) override; + +private: + Q_DECLARE_PRIVATE(QSkeletonLoader) + QNodeCreatedChangeBasePtr createNodeCreationChange() const override; + void setRootJoint(QJoint *rootJoint); // Needed for lifetime management of created joints +}; + +} // namespace Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3DCORE_QSKELETONLOADER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qstaticpropertyupdatedchangebase.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qstaticpropertyupdatedchangebase.h new file mode 100644 index 0000000..ca145e9 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qstaticpropertyupdatedchangebase.h @@ -0,0 +1,71 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QSTATICPROPERTYUPDATEDCHANGEBASE_H +#define QT3DCORE_QSTATICPROPERTYUPDATEDCHANGEBASE_H + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QStaticPropertyUpdatedChangeBasePrivate; + +class QT3DCORESHARED_EXPORT QStaticPropertyUpdatedChangeBase : public QPropertyUpdatedChangeBase +{ +public: + ~QStaticPropertyUpdatedChangeBase(); + + const char *propertyName() const; + void setPropertyName(const char *name); + +protected: + explicit QStaticPropertyUpdatedChangeBase(QNodeId subjectId); + explicit QStaticPropertyUpdatedChangeBase(QStaticPropertyUpdatedChangeBasePrivate &dd, QNodeId subjectId); + Q_DECLARE_PRIVATE(QStaticPropertyUpdatedChangeBase) +}; + +typedef QSharedPointer QStaticPropertyUpdatedChangeBasePtr; + +} // namespace Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3DCORE_QSTATICPROPERTYUPDATEDCHANGEBASE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qstaticpropertyvalueaddedchangebase.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qstaticpropertyvalueaddedchangebase.h new file mode 100644 index 0000000..bf55ac3 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qstaticpropertyvalueaddedchangebase.h @@ -0,0 +1,71 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QSTATICPROPERTYVALUEADDEDCHANGEBASE_H +#define QT3DCORE_QSTATICPROPERTYVALUEADDEDCHANGEBASE_H + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QStaticPropertyValueAddedChangeBasePrivate; + +class QT3DCORESHARED_EXPORT QStaticPropertyValueAddedChangeBase : public QPropertyValueAddedChangeBase +{ +public: + ~QStaticPropertyValueAddedChangeBase(); + + const char *propertyName() const; + void setPropertyName(const char *name); + +protected: + Q_DECLARE_PRIVATE(QStaticPropertyValueAddedChangeBase) + explicit QStaticPropertyValueAddedChangeBase(QNodeId subjectId); + QStaticPropertyValueAddedChangeBase(QStaticPropertyValueAddedChangeBasePrivate &dd, + QNodeId subjectId); +}; + +} // namespace Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3DCORE_QSTATICPROPERTYVALUEADDEDCHANGEBASE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qstaticpropertyvalueremovedchangebase.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qstaticpropertyvalueremovedchangebase.h new file mode 100644 index 0000000..f6f5543 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qstaticpropertyvalueremovedchangebase.h @@ -0,0 +1,71 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QSTATICPROPERTYVALUEREMOVEDCHANGEBASE_H +#define QT3DCORE_QSTATICPROPERTYVALUEREMOVEDCHANGEBASE_H + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QStaticPropertyValueRemovedChangeBasePrivate; + +class QT3DCORESHARED_EXPORT QStaticPropertyValueRemovedChangeBase : public QPropertyValueRemovedChangeBase +{ +public: + ~QStaticPropertyValueRemovedChangeBase(); + + const char *propertyName() const; + void setPropertyName(const char *name); + +protected: + Q_DECLARE_PRIVATE(QStaticPropertyValueRemovedChangeBase) + explicit QStaticPropertyValueRemovedChangeBase(QNodeId subjectId); + QStaticPropertyValueRemovedChangeBase(QStaticPropertyValueRemovedChangeBasePrivate &dd, + QNodeId subjectId); +}; + +} // namespace Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3DCORE_QSTATICPROPERTYVALUEREMOVEDCHANGEBASE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qt3dcore-config.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qt3dcore-config.h new file mode 100644 index 0000000..dde5556 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qt3dcore-config.h @@ -0,0 +1,5 @@ +#define QT_FEATURE_qt3d_render 1 +#define QT_FEATURE_qt3d_animation 1 +#define QT_FEATURE_qt3d_input 1 +#define QT_FEATURE_qt3d_logic 1 +#define QT_FEATURE_qt3d_extras 1 diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qt3dcore_global.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qt3dcore_global.h new file mode 100644 index 0000000..a449a2e --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qt3dcore_global.h @@ -0,0 +1,92 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_GLOBAL_H +#define QT3DCORE_GLOBAL_H + +#include +#include + +QT_BEGIN_NAMESPACE + +#if defined(QT_SHARED) || !defined(QT_STATIC) +# if defined(QT_BUILD_3DCORE_LIB) +# define QT3DCORESHARED_EXPORT Q_DECL_EXPORT +# else +# define QT3DCORESHARED_EXPORT Q_DECL_IMPORT +# endif +#else +# define QT3DCORESHARED_EXPORT +#endif + +#define QT3D_DECLARE_TYPEINFO(NS, Class, Flags) \ + } /* NS */ \ + Q_DECLARE_TYPEINFO(NS :: Class, Flags); \ + namespace NS { \ + /*end*/ + +#define QT3D_DECLARE_TYPEINFO_2(OuterNS, InnerNS, Class, Flags) \ + } /* InnerNS */ \ + QT3D_DECLARE_TYPEINFO(OuterNS, InnerNS :: Class, Flags) \ + namespace InnerNS { \ + /*end*/ + +#define QT3D_DECLARE_TYPEINFO_3(OuterNS, InnerNS, InnerMostNS, Class, Flags) \ + } /* InnerMostNS */ \ + QT3D_DECLARE_TYPEINFO_2(OuterNS, InnerNS, InnerMostNS :: Class, Flags) \ + namespace InnerMostNS { \ + /*end*/ + +#define QT3D_DECLARE_SHARED(NS, Class) \ + inline void swap(Class &lhs, Class &rhs) \ + Q_DECL_NOEXCEPT_EXPR(noexcept(lhs.swap(rhs))) \ + { lhs.swap(rhs); } \ + QT3D_DECLARE_TYPEINFO(NS, Class, Q_MOVABLE_TYPE) \ + /*end*/ + +#define QT3D_DECLARE_SHARED_2(OuterNS, InnerNS, Class) \ + inline void swap(Class &lhs, Class &rhs) \ + Q_DECL_NOEXCEPT_EXPR(noexcept(lhs.swap(rhs))) \ + { lhs.swap(rhs); } \ + QT3D_DECLARE_TYPEINFO_2(OuterNS, InnerNS, Class, Q_MOVABLE_TYPE) \ + /*end*/ + +QT_END_NAMESPACE + +#endif // QT3DCORE_GLOBAL_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qt3dcoreversion.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qt3dcoreversion.h new file mode 100644 index 0000000..8efb3fb --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qt3dcoreversion.h @@ -0,0 +1,9 @@ +/* This file was generated by syncqt. */ +#ifndef QT_QT3DCORE_VERSION_H +#define QT_QT3DCORE_VERSION_H + +#define QT3DCORE_VERSION_STR "5.12.5" + +#define QT3DCORE_VERSION 0x050C05 + +#endif // QT_QT3DCORE_VERSION_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qtransform.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qtransform.h new file mode 100644 index 0000000..0a88cb4 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DCore/qtransform.h @@ -0,0 +1,129 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QTRANSFORM_H +#define QT3DCORE_QTRANSFORM_H + +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QTransformPrivate; +class QT3DCORESHARED_EXPORT QTransform : public QComponent +{ + Q_OBJECT + Q_PROPERTY(QMatrix4x4 matrix READ matrix WRITE setMatrix NOTIFY matrixChanged) + Q_PROPERTY(float scale READ scale WRITE setScale NOTIFY scaleChanged) + Q_PROPERTY(QVector3D scale3D READ scale3D WRITE setScale3D NOTIFY scale3DChanged) + Q_PROPERTY(QQuaternion rotation READ rotation WRITE setRotation NOTIFY rotationChanged) + Q_PROPERTY(QVector3D translation READ translation WRITE setTranslation NOTIFY translationChanged) + Q_PROPERTY(float rotationX READ rotationX WRITE setRotationX NOTIFY rotationXChanged) + Q_PROPERTY(float rotationY READ rotationY WRITE setRotationY NOTIFY rotationYChanged) + Q_PROPERTY(float rotationZ READ rotationZ WRITE setRotationZ NOTIFY rotationZChanged) + +public: + explicit QTransform(QNode *parent = nullptr); + ~QTransform(); + + float scale() const; + QVector3D scale3D() const; + QQuaternion rotation() const; + QVector3D translation() const; + + Q_INVOKABLE static QQuaternion fromAxisAndAngle(const QVector3D &axis, float angle); + Q_INVOKABLE static QQuaternion fromAxisAndAngle(float x, float y, float z, float angle); + + Q_INVOKABLE static QQuaternion fromAxesAndAngles(const QVector3D &axis1, float angle1, + const QVector3D &axis2, float angle2); + Q_INVOKABLE static QQuaternion fromAxesAndAngles(const QVector3D &axis1, float angle1, + const QVector3D &axis2, float angle2, + const QVector3D &axis3, float angle3); + Q_INVOKABLE static QQuaternion fromAxes(const QVector3D &xAxis, const QVector3D &yAxis, const QVector3D &zAxis); + + Q_INVOKABLE static QQuaternion fromEulerAngles(const QVector3D &eulerAngles); + Q_INVOKABLE static QQuaternion fromEulerAngles(float pitch, float yaw, float roll); + + Q_INVOKABLE static QMatrix4x4 rotateAround(const QVector3D &point, float angle, const QVector3D &axis); + Q_INVOKABLE static QMatrix4x4 rotateFromAxes(const QVector3D &xAxis, const QVector3D &yAxis, const QVector3D &zAxis); + + QMatrix4x4 matrix() const; + + float rotationX() const; + float rotationY() const; + float rotationZ() const; + +public Q_SLOTS: + void setScale(float scale); + void setScale3D(const QVector3D &scale); + void setRotation(const QQuaternion &rotation); + void setTranslation(const QVector3D &translation); + void setMatrix(const QMatrix4x4 &matrix); + + void setRotationX(float rotationX); + void setRotationY(float rotationY); + void setRotationZ(float rotationZ); + +Q_SIGNALS: + void scaleChanged(float scale); + void scale3DChanged(const QVector3D &scale); + void rotationChanged(const QQuaternion &rotation); + void translationChanged(const QVector3D &translation); + void matrixChanged(); + void rotationXChanged(float rotationX); + void rotationYChanged(float rotationY); + void rotationZChanged(float rotationZ); + +protected: + explicit QTransform(QTransformPrivate &dd, QNode *parent = nullptr); + +private: + Q_DECLARE_PRIVATE(QTransform) + QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +} // namespace Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3DCORE_QTRANSFORM_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/areaallocator_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/areaallocator_p.h new file mode 100644 index 0000000..809c5c6 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/areaallocator_p.h @@ -0,0 +1,92 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtQuick module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DEXTRAS_AREAALLOCATOR_P_H +#define QT3DEXTRAS_AREAALLOCATOR_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +// +// This file is copied from qtdeclarative/src/quick/scenegraph/util/qsgareaallocator_p.h +// + +#include + +QT_BEGIN_NAMESPACE + +class QRect; +class QPoint; + +namespace Qt3DExtras { + +struct AreaAllocatorNode; + +class AreaAllocator +{ +public: + AreaAllocator(const QSize &size); + ~AreaAllocator(); + + QRect allocate(const QSize &size); + bool deallocate(const QRect &rect); + bool isEmpty() const { return m_root == 0; } + QSize size() const { return m_size; } +private: + bool allocateInNode(const QSize &size, QPoint &result, const QRect ¤tRect, AreaAllocatorNode *node); + bool deallocateInNode(const QPoint &pos, AreaAllocatorNode *node); + void mergeNodeWithNeighbors(AreaAllocatorNode *node); + + AreaAllocatorNode *m_root; + QSize m_size; +}; + +} // namespace Qt3DExtras + +QT_END_NAMESPACE + +#endif // QT3DEXTRAS_AREAALLOCATOR_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/distancefieldtextrenderer_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/distancefieldtextrenderer_p.h new file mode 100644 index 0000000..fdb9a83 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/distancefieldtextrenderer_p.h @@ -0,0 +1,90 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DEXTRAS_DISTANCEFIELDTEXTRENDERER_P_H +#define QT3DEXTRAS_DISTANCEFIELDTEXTRENDERER_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { +class QAbstractTexture; +} + +namespace Qt3DExtras { + +class DistanceFieldTextRendererPrivate; + +class DistanceFieldTextRenderer : public Qt3DCore::QEntity +{ + Q_OBJECT + +public: + DistanceFieldTextRenderer(Qt3DCore::QNode *parent = nullptr); + ~DistanceFieldTextRenderer(); + + void setGlyphData(Qt3DRender::QAbstractTexture *glyphTexture, + const QVector &vertexData, + const QVector &indexData); + + void setColor(const QColor &color); + + Q_DECLARE_PRIVATE(DistanceFieldTextRenderer) +}; + +} // namespace Qt3DExtras + +QT_END_NAMESPACE + +#endif // QT3DEXTRAS_DISTANCEFIELDTEXTRENDERER_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/distancefieldtextrenderer_p_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/distancefieldtextrenderer_p_p.h new file mode 100644 index 0000000..af4bc47 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/distancefieldtextrenderer_p_p.h @@ -0,0 +1,95 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DEXTRAS_DISTANCEFIELDTEXTRENDERER_P_P_H +#define QT3DEXTRAS_DISTANCEFIELDTEXTRENDERER_P_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { +class QGeometryRenderer; +class QGeometry; +class QMaterial; +class QAttribute; +class QBuffer; +} + +namespace Qt3DExtras { + +class QText2DMaterial; + +class DistanceFieldTextRendererPrivate : public Qt3DCore::QEntityPrivate +{ +public: + DistanceFieldTextRendererPrivate(); + ~DistanceFieldTextRendererPrivate(); + + Q_DECLARE_PUBLIC(DistanceFieldTextRenderer) + + void init(); + + Qt3DRender::QGeometryRenderer *m_renderer; + Qt3DRender::QGeometry *m_geometry; + Qt3DRender::QAttribute *m_positionAttr; + Qt3DRender::QAttribute *m_texCoordAttr; + Qt3DRender::QAttribute *m_indexAttr; + Qt3DRender::QBuffer *m_vertexBuffer; + Qt3DRender::QBuffer *m_indexBuffer; + QText2DMaterial *m_material; +}; + +} // namespace Qt3DExtras + +QT_END_NAMESPACE + +#endif // QT3DEXTRAS_DISTANCEFIELDTEXTRENDERER_P_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qabstractcameracontroller_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qabstractcameracontroller_p.h new file mode 100644 index 0000000..51f66cb --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qabstractcameracontroller_p.h @@ -0,0 +1,143 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DEXTRAS_QABSTRACTCAMERACONTROLLER_P_H +#define QT3DEXTRAS_QABSTRACTCAMERACONTROLLER_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { +class QCamera; +} + +namespace Qt3DLogic { +class QFrameAction; +} + +namespace Qt3DInput { +class QKeyboardDevice; +class QMouseDevice; +class QLogicalDevice; +class QAction; +class QActionInput; +class QAxis; +class QAnalogAxisInput; +class QButtonAxisInput; +class QAxisActionHandler; +} + +namespace Qt3DExtras { + +class QAbstractCameraControllerPrivate : public Qt3DCore::QEntityPrivate +{ +public: + QAbstractCameraControllerPrivate(); + + void init(); + void applyInputAccelerations(); + + Qt3DRender::QCamera *m_camera; + + Qt3DInput::QAction *m_leftMouseButtonAction; + Qt3DInput::QAction *m_middleMouseButtonAction; + Qt3DInput::QAction *m_rightMouseButtonAction; + Qt3DInput::QAction *m_altButtonAction; + Qt3DInput::QAction *m_shiftButtonAction; + Qt3DInput::QAction *m_escapeButtonAction; + + Qt3DInput::QAxis *m_rxAxis; + Qt3DInput::QAxis *m_ryAxis; + Qt3DInput::QAxis *m_txAxis; + Qt3DInput::QAxis *m_tyAxis; + Qt3DInput::QAxis *m_tzAxis; + + Qt3DInput::QActionInput *m_leftMouseButtonInput; + Qt3DInput::QActionInput *m_middleMouseButtonInput; + Qt3DInput::QActionInput *m_rightMouseButtonInput; + Qt3DInput::QActionInput *m_altButtonInput; + Qt3DInput::QActionInput *m_shiftButtonInput; + Qt3DInput::QActionInput *m_escapeButtonInput; + + Qt3DInput::QAnalogAxisInput *m_mouseRxInput; + Qt3DInput::QAnalogAxisInput *m_mouseRyInput; + Qt3DInput::QAnalogAxisInput *m_mouseTzXInput; + Qt3DInput::QAnalogAxisInput *m_mouseTzYInput; + Qt3DInput::QButtonAxisInput *m_keyboardTxPosInput; + Qt3DInput::QButtonAxisInput *m_keyboardTyPosInput; + Qt3DInput::QButtonAxisInput *m_keyboardTzPosInput; + Qt3DInput::QButtonAxisInput *m_keyboardTxNegInput; + Qt3DInput::QButtonAxisInput *m_keyboardTyNegInput; + Qt3DInput::QButtonAxisInput *m_keyboardTzNegInput; + + Qt3DInput::QKeyboardDevice *m_keyboardDevice; + Qt3DInput::QMouseDevice *m_mouseDevice; + + Qt3DInput::QLogicalDevice *m_logicalDevice; + + Qt3DLogic::QFrameAction *m_frameAction; + + float m_linearSpeed; + float m_lookSpeed; + + float m_acceleration; + float m_deceleration; + + QVector3D m_sceneUp; + + Q_DECLARE_PUBLIC(QAbstractCameraController) +}; + +} // namespace Qt3DExtras + +QT_END_NAMESPACE + +#endif // QT3DEXTRAS_QABSTRACTCAMERACONTROLLER_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qabstractspritesheet_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qabstractspritesheet_p.h new file mode 100644 index 0000000..604fc3c --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qabstractspritesheet_p.h @@ -0,0 +1,101 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DEXTRAS_QABSTRACTSPRITESHEET_P_H +#define QT3DEXTRAS_QABSTRACTSPRITESHEET_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QFilterKey; +class QEffect; +class QAbstractTexture; +class QTechnique; +class QParameter; +class QShaderProgram; +class QRenderPass; + +} // namespace Qt3DRender + +namespace Qt3DExtras { + +class QAbstractSpriteSheet; + +class QAbstractSpriteSheetPrivate : public Qt3DCore::QNodePrivate +{ +public: + QAbstractSpriteSheetPrivate(); + + virtual void init(); + void updateTexture(Qt3DRender::QAbstractTexture *texture); + void updateIndex(int newIndex); + virtual int maxIndex() const = 0; + virtual void updateSizes() = 0; + virtual void updateTransform() = 0; + + Qt3DRender::QAbstractTexture *m_texture; + QMatrix3x3 m_textureTransform; + QSize m_textureSize; + int m_currentIndex; + + Q_DECLARE_PUBLIC(QAbstractSpriteSheet) +}; + +} // Qt3DExtras + +QT_END_NAMESPACE + +#endif // QT3DEXTRAS_QABSTRACTSPRITESHEET_P_H + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qconegeometry_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qconegeometry_p.h new file mode 100644 index 0000000..3987b43 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qconegeometry_p.h @@ -0,0 +1,97 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DEXTRAS_QCONEGEOMETRY_P_H +#define QT3DEXTRAS_QCONEGEOMETRY_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QAttribute; +class QBuffer; + +} // namespace Qt3DRender + +namespace Qt3DExtras { + +class QConeGeometryPrivate : public Qt3DRender::QGeometryPrivate +{ +public: + QConeGeometryPrivate(); + + void init(); + + Q_DECLARE_PUBLIC(QConeGeometry) + + bool m_hasTopEndcap; + bool m_hasBottomEndcap; + int m_rings; + int m_slices; + float m_topRadius; + float m_bottomRadius; + float m_length; + Qt3DRender::QAttribute *m_positionAttribute; + Qt3DRender::QAttribute *m_normalAttribute; + Qt3DRender::QAttribute *m_texCoordAttribute; + Qt3DRender::QAttribute *m_indexAttribute; + Qt3DRender::QBuffer *m_positionBuffer; + Qt3DRender::QBuffer *m_vertexBuffer; + Qt3DRender::QBuffer *m_indexBuffer; +}; + +} // Qt3DExtras + +QT_END_NAMESPACE + +#endif // QT3DEXTRAS_QCONEGEOMETRY_P_H + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qcuboidgeometry_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qcuboidgeometry_p.h new file mode 100644 index 0000000..cfabc03 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qcuboidgeometry_p.h @@ -0,0 +1,101 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DEXTRAS_QCUBOIDGEOMETRY_P_H +#define QT3DEXTRAS_QCUBOIDGEOMETRY_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QAttribute; +class QBuffer; + +} // Qt3DRender + +namespace Qt3DExtras { + +class QCuboidGeometryPrivate : public Qt3DRender::QGeometryPrivate +{ +public: + QCuboidGeometryPrivate(); + void init(); + + // Dimensions + float m_xExtent; + float m_yExtent; + float m_zExtent; + + // Resolutions of faces with normal x, y, and z + QSize m_yzFaceResolution; + QSize m_xzFaceResolution; + QSize m_xyFaceResolution; + + Qt3DRender::QAttribute *m_positionAttribute; + Qt3DRender::QAttribute *m_normalAttribute; + Qt3DRender::QAttribute *m_texCoordAttribute; + Qt3DRender::QAttribute *m_tangentAttribute; + Qt3DRender::QAttribute *m_indexAttribute; + Qt3DRender::QBuffer *m_vertexBuffer; + Qt3DRender::QBuffer *m_indexBuffer; + + Q_DECLARE_PUBLIC(QCuboidGeometry) +}; + +} // Qt3DExtras + +QT_END_NAMESPACE + +#endif // QT3DEXTRAS_QCUBOIDGEOMETRY_P_H + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qcylindergeometry_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qcylindergeometry_p.h new file mode 100644 index 0000000..50c37cb --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qcylindergeometry_p.h @@ -0,0 +1,93 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DEXTRAS_QCYLINDERGEOMETRY_P_H +#define QT3DEXTRAS_QCYLINDERGEOMETRY_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QAttribute; +class QBuffer; + +} // namespace Qt3DRender + +namespace Qt3DExtras { + +class QCylinderGeometryPrivate : public Qt3DRender::QGeometryPrivate +{ +public: + QCylinderGeometryPrivate(); + + void init(); + + Q_DECLARE_PUBLIC(QCylinderGeometry) + + int m_rings; + int m_slices; + float m_radius; + float m_length; + Qt3DRender::QAttribute *m_positionAttribute; + Qt3DRender::QAttribute *m_normalAttribute; + Qt3DRender::QAttribute *m_texCoordAttribute; + Qt3DRender::QAttribute *m_indexAttribute; + Qt3DRender::QBuffer *m_vertexBuffer; + Qt3DRender::QBuffer *m_indexBuffer; +}; + +} // Qt3DExtras + +QT_END_NAMESPACE + +#endif // QT3DEXTRAS_QCYLINDERGEOMETRY_P_H + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qdiffusemapmaterial_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qdiffusemapmaterial_p.h new file mode 100644 index 0000000..cef75a3 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qdiffusemapmaterial_p.h @@ -0,0 +1,114 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DEXTRAS_QDIFFUSEMAPMATERIAL_P_H +#define QT3DEXTRAS_QDIFFUSEMAPMATERIAL_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QFilterKey; +class QEffect; +class QAbstractTexture; +class QTechnique; +class QParameter; +class QShaderProgram; +class QShaderProgramBuilder; +class QRenderPass; + +} // namespace Qt3DRender + +namespace Qt3DExtras { + +class QDiffuseMapMaterial; + +class QDiffuseMapMaterialPrivate : public Qt3DRender::QMaterialPrivate +{ + QDiffuseMapMaterialPrivate(); + + void init(); + + void handleAmbientChanged(const QVariant &var); + void handleDiffuseChanged(const QVariant &var); + void handleSpecularChanged(const QVariant &var); + void handleShininessChanged(const QVariant &var); + void handleTextureScaleChanged(const QVariant &var); + + Qt3DRender::QEffect *m_diffuseMapEffect; + Qt3DRender::QAbstractTexture *m_diffuseTexture; + Qt3DRender::QParameter *m_ambientParameter; + Qt3DRender::QParameter *m_diffuseParameter; + Qt3DRender::QParameter *m_specularParameter; + Qt3DRender::QParameter *m_shininessParameter; + Qt3DRender::QParameter *m_textureScaleParameter; + Qt3DRender::QTechnique *m_diffuseMapGL3Technique; + Qt3DRender::QTechnique *m_diffuseMapGL2Technique; + Qt3DRender::QTechnique *m_diffuseMapES2Technique; + Qt3DRender::QRenderPass *m_diffuseMapGL3RenderPass; + Qt3DRender::QRenderPass *m_diffuseMapGL2RenderPass; + Qt3DRender::QRenderPass *m_diffuseMapES2RenderPass; + Qt3DRender::QShaderProgram *m_diffuseMapGL3Shader; + Qt3DRender::QShaderProgramBuilder *m_diffuseMapGL3ShaderBuilder; + Qt3DRender::QShaderProgram *m_diffuseMapGL2ES2Shader; + Qt3DRender::QShaderProgramBuilder *m_diffuseMapGL2ES2ShaderBuilder; + Qt3DRender::QFilterKey *m_filterKey; + + Q_DECLARE_PUBLIC(QDiffuseMapMaterial) +}; + +} // Qt3DExtras + +QT_END_NAMESPACE + +#endif // QT3DEXTRAS_QDIFFUSEAPMATERIAL_P_H + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qdiffusespecularmapmaterial_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qdiffusespecularmapmaterial_p.h new file mode 100644 index 0000000..f80922d --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qdiffusespecularmapmaterial_p.h @@ -0,0 +1,117 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DEXTRAS_QDIFFUSESPECULARMAPMATERIAL_P_H +#define QT3DEXTRAS_QDIFFUSESPECULARMAPMATERIAL_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QFilterKey; +class QEffect; +class QAbstractTexture; +class QTechnique; +class QParameter; +class QShaderProgram; +class QShaderProgramBuilder; +class QRenderPass; + +} // namespace Qt3DRender + +namespace Qt3DExtras { + +class QDiffuseSpecularMapMaterial; + +class QDiffuseSpecularMapMaterialPrivate : public Qt3DRender::QMaterialPrivate +{ +public: + QDiffuseSpecularMapMaterialPrivate(); + + void init(); + + void handleAmbientChanged(const QVariant &var); + void handleDiffuseChanged(const QVariant &var); + void handleSpecularChanged(const QVariant &var); + void handleShininessChanged(const QVariant &var); + void handleTextureScaleChanged(const QVariant &var); + + Qt3DRender::QEffect *m_diffuseSpecularMapEffect; + Qt3DRender::QAbstractTexture *m_diffuseTexture; + Qt3DRender::QAbstractTexture *m_specularTexture; + Qt3DRender::QParameter *m_ambientParameter; + Qt3DRender::QParameter *m_diffuseParameter; + Qt3DRender::QParameter *m_specularParameter; + Qt3DRender::QParameter *m_shininessParameter; + Qt3DRender::QParameter *m_textureScaleParameter; + Qt3DRender::QTechnique *m_diffuseSpecularMapGL3Technique; + Qt3DRender::QTechnique *m_diffuseSpecularMapGL2Technique; + Qt3DRender::QTechnique *m_diffuseSpecularMapES2Technique; + Qt3DRender::QRenderPass *m_diffuseSpecularMapGL3RenderPass; + Qt3DRender::QRenderPass *m_diffuseSpecularMapGL2RenderPass; + Qt3DRender::QRenderPass *m_diffuseSpecularMapES2RenderPass; + Qt3DRender::QShaderProgram *m_diffuseSpecularMapGL3Shader; + Qt3DRender::QShaderProgramBuilder *m_diffuseSpecularMapGL3ShaderBuilder; + Qt3DRender::QShaderProgram *m_diffuseSpecularMapGL2ES2Shader; + Qt3DRender::QShaderProgramBuilder *m_diffuseSpecularMapGL2ES2ShaderBuilder; + Qt3DRender::QFilterKey *m_filterKey; + + Q_DECLARE_PUBLIC(QDiffuseSpecularMapMaterial) +}; + +} // Qt3DExtras + + +QT_END_NAMESPACE + +#endif // QT3DEXTRAS_QDIFFUSESPECULARMAPMATERIAL_P_H + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qdiffusespecularmaterial_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qdiffusespecularmaterial_p.h new file mode 100644 index 0000000..2b0b218 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qdiffusespecularmaterial_p.h @@ -0,0 +1,120 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DEXTRAS_QDIFFUSESPECULARMATERIAL_P_H +#define QT3DEXTRAS_QDIFFUSESPECULARMATERIAL_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QFilterKey; +class QEffect; +class QTechnique; +class QParameter; +class QShaderProgram; +class QShaderProgramBuilder; +class QRenderPass; +class QNoDepthMask; +class QBlendEquationArguments; +class QBlendEquation; + +} // namespace Qt3DRender + +namespace Qt3DExtras { + +class QDiffuseSpecularMaterial; + +class QDiffuseSpecularMaterialPrivate : public Qt3DRender::QMaterialPrivate +{ +public: + QDiffuseSpecularMaterialPrivate(); + + void init(); + + void handleAmbientChanged(const QVariant &var); + void handleShininessChanged(const QVariant &var); + void handleTextureScaleChanged(const QVariant &var); + + Qt3DRender::QEffect *m_effect; + Qt3DRender::QParameter *m_ambientParameter; + Qt3DRender::QParameter *m_diffuseParameter; + Qt3DRender::QParameter *m_specularParameter; + Qt3DRender::QParameter *m_diffuseTextureParameter; + Qt3DRender::QParameter *m_specularTextureParameter; + Qt3DRender::QParameter *m_shininessParameter; + Qt3DRender::QParameter *m_normalTextureParameter; + Qt3DRender::QParameter *m_textureScaleParameter; + Qt3DRender::QTechnique *m_gl3Technique; + Qt3DRender::QTechnique *m_gl2Technique; + Qt3DRender::QTechnique *m_es2Technique; + Qt3DRender::QRenderPass *m_gl3RenderPass; + Qt3DRender::QRenderPass *m_gl2RenderPass; + Qt3DRender::QRenderPass *m_es2RenderPass; + Qt3DRender::QShaderProgram *m_gl3Shader; + Qt3DRender::QShaderProgramBuilder *m_gl3ShaderBuilder; + Qt3DRender::QShaderProgram *m_gl2es2Shader; + Qt3DRender::QShaderProgramBuilder *m_gl2es2ShaderBuilder; + Qt3DRender::QNoDepthMask *m_noDepthMask; + Qt3DRender::QBlendEquationArguments *m_blendState; + Qt3DRender::QBlendEquation *m_blendEquation; + Qt3DRender::QFilterKey *m_filterKey; + + Q_DECLARE_PUBLIC(QDiffuseSpecularMaterial) +}; + +} // Qt3DExtras + +QT_END_NAMESPACE + +#endif // QT3DEXTRAS_QDIFFUSESPECULARMATERIAL_P_H + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qdistancefieldglyphcache_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qdistancefieldglyphcache_p.h new file mode 100644 index 0000000..6ca011c --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qdistancefieldglyphcache_p.h @@ -0,0 +1,111 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DEXTRAS_QDISTANCEFIELDGLYPHCACHE_P_H +#define QT3DEXTRAS_QDISTANCEFIELDGLYPHCACHE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +class QRawFont; +class QGlyphRun; + +namespace Qt3DCore { +class QNode; +} + +namespace Qt3DRender { +class QAbstractTexture; +} + +namespace Qt3DExtras { + +class DistanceFieldFont; +class QDistanceFieldGlyphCachePrivate; + +class QDistanceFieldGlyphCache +{ +public: + QDistanceFieldGlyphCache(); + ~QDistanceFieldGlyphCache(); + + void setRootNode(Qt3DCore::QNode *rootNode); + Qt3DCore::QNode *rootNode() const; + + struct Glyph { + Qt3DRender::QAbstractTexture *texture = nullptr; + QRectF glyphPathBoundingRect; // bounding rect of the QPainterPath used to draw the glyph + QRectF texCoords; // texture coordinates within texture + }; + + bool doubleGlyphResolution(const QRawFont &font); + + QVector refGlyphs(const QGlyphRun &run); + Glyph refGlyph(const QRawFont &font, quint32 glyph); + + void derefGlyphs(const QGlyphRun &run); + void derefGlyph(const QRawFont &font, quint32 glyph); + +private: + DistanceFieldFont* getOrCreateDistanceFieldFont(const QRawFont &font); + static QString fontKey(const QRawFont &font); + + QHash m_fonts; + Qt3DCore::QNode *m_rootNode; +}; + +} // namespace Qt3DExtras + +QT_END_NAMESPACE + +#endif // QT3DEXTRAS_QDISTANCEFIELDGLYPHCACHE_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qextrudedtextgeometry_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qextrudedtextgeometry_p.h new file mode 100644 index 0000000..0bfa45e --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qextrudedtextgeometry_p.h @@ -0,0 +1,106 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:BSD$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** BSD License Usage +** Alternatively, you may use this file under the terms of the BSD license +** as follows: +** +** "Redistribution and use in source and binary forms, with or without +** modification, are permitted provided that the following conditions are +** met: +** * Redistributions of source code must retain the above copyright +** notice, this list of conditions and the following disclaimer. +** * Redistributions in binary form must reproduce the above copyright +** notice, this list of conditions and the following disclaimer in +** the documentation and/or other materials provided with the +** distribution. +** * Neither the name of The Qt Company Ltd nor the names of its +** contributors may be used to endorse or promote products derived +** from this software without specific prior written permission. +** +** +** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DEXTRAS_QEXTRUDEDTEXTGEOMETRY_P_H +#define QT3DEXTRAS_QEXTRUDEDTEXTGEOMETRY_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QAttribute; +class QBuffer; + +} // namespace Qt3DRender + +namespace Qt3DExtras { + +class QExtrudedTextGeometry; + +class QExtrudedTextGeometryPrivate : public Qt3DRender::QGeometryPrivate +{ +public: + QExtrudedTextGeometryPrivate(); + void init(); + void update(); + + QString m_text; + QFont m_font; + float m_depth; + float m_edgeSplitAngle; + + Qt3DRender::QAttribute *m_positionAttribute; + Qt3DRender::QAttribute *m_normalAttribute; + Qt3DRender::QAttribute *m_indexAttribute; + Qt3DRender::QBuffer *m_vertexBuffer; + Qt3DRender::QBuffer *m_indexBuffer; + + Q_DECLARE_PUBLIC(QExtrudedTextGeometry) +}; + +} // namespace Qt3DExtras + +QT_END_NAMESPACE + +#endif // QT3DEXTRAS_QEXTRUDEDTEXTGEOMETRY_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qforwardrenderer_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qforwardrenderer_p.h new file mode 100644 index 0000000..56d66a5 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qforwardrenderer_p.h @@ -0,0 +1,92 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DEXTRAS_QFORWARDRENDERER_P_H +#define QT3DEXTRAS_QFORWARDRENDERER_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QForwardRenderer; +class QViewport; +class QClearBuffers; +class QCameraSelector; +class QFrustumCulling; +class QRenderSurfaceSelector; + +} // namespace Qt3DRender + +namespace Qt3DExtras { + +class QForwardRendererPrivate: public Qt3DRender::QTechniqueFilterPrivate +{ +public: + QForwardRendererPrivate(); + + Qt3DRender::QRenderSurfaceSelector *m_surfaceSelector; + Qt3DRender::QViewport *m_viewport; + Qt3DRender::QCameraSelector *m_cameraSelector; + Qt3DRender::QClearBuffers *m_clearBuffer; + Qt3DRender::QFrustumCulling *m_frustumCulling; + + void init(); + + Q_DECLARE_PUBLIC(QForwardRenderer) +}; + +} // Qt3DExtras + +QT_END_NAMESPACE + +#endif // QT3DEXTRAS_QFORWARDRENDERER_P_H + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qgoochmaterial_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qgoochmaterial_p.h new file mode 100644 index 0000000..d4ef256 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qgoochmaterial_p.h @@ -0,0 +1,111 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DEXTRAS_QGOOCHMATERIAL_P_H +#define QT3DEXTRAS_QGOOCHMATERIAL_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QFilterKey; +class QEffect; +class QRenderPass; +class QShaderProgram; +class QTechnique; + +} + +namespace Qt3DExtras { + +class QGoochMaterialPrivate : public Qt3DRender::QMaterialPrivate +{ +public: + QGoochMaterialPrivate(); + + void init(); + + void handleDiffuseChanged(const QVariant &var); + void handleSpecularChanged(const QVariant &var); + void handleCoolChanged(const QVariant &var); + void handleWarmChanged(const QVariant &var); + void handleAlphaChanged(const QVariant &var); + void handleBetaChanged(const QVariant &var); + void handleShininessChanged(const QVariant &var); + + Qt3DRender::QEffect *m_effect; + Qt3DRender::QParameter *m_diffuseParameter; + Qt3DRender::QParameter *m_specularParameter; + Qt3DRender::QParameter *m_coolParameter; + Qt3DRender::QParameter *m_warmParameter; + Qt3DRender::QParameter *m_alphaParameter; + Qt3DRender::QParameter *m_betaParameter; + Qt3DRender::QParameter *m_shininessParameter; + Qt3DRender::QTechnique *m_gl3Technique; + Qt3DRender::QTechnique *m_gl2Technique; + Qt3DRender::QTechnique *m_es2Technique; + Qt3DRender::QRenderPass *m_gl3RenderPass; + Qt3DRender::QRenderPass *m_gl2RenderPass; + Qt3DRender::QRenderPass *m_es2RenderPass; + Qt3DRender::QShaderProgram *m_gl3Shader; + Qt3DRender::QShaderProgram *m_gl2ES2Shader; + Qt3DRender::QFilterKey *m_filterKey; + + Q_DECLARE_PUBLIC(QGoochMaterial) +}; + +} // namespace Qt3DExtras + +QT_END_NAMESPACE + +#endif // QT3DEXTRAS_QGOOCHMATERIAL_P_H + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qmetalroughmaterial_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qmetalroughmaterial_p.h new file mode 100644 index 0000000..4d8b683 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qmetalroughmaterial_p.h @@ -0,0 +1,112 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DEXTRAS_QMETALROUGHMATERIAL_P_H +#define QT3DEXTRAS_QMETALROUGHMATERIAL_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QFilterKey; +class QEffect; +class QAbstractTexture; +class QTechnique; +class QParameter; +class QShaderProgram; +class QShaderProgramBuilder; +class QRenderPass; + +} // namespace Qt3DRender + +namespace Qt3DExtras { + +class QMetalRoughMaterial; + +class QMetalRoughMaterialPrivate : public Qt3DRender::QMaterialPrivate +{ +public: + QMetalRoughMaterialPrivate(); + + void init(); + + void handleTextureScaleChanged(const QVariant &var); + + Qt3DRender::QParameter *m_baseColorParameter; + Qt3DRender::QParameter *m_metalnessParameter; + Qt3DRender::QParameter *m_roughnessParameter; + Qt3DRender::QParameter *m_baseColorMapParameter; + Qt3DRender::QParameter *m_metalnessMapParameter; + Qt3DRender::QParameter *m_roughnessMapParameter; + Qt3DRender::QParameter *m_ambientOcclusionMapParameter; + Qt3DRender::QParameter *m_normalMapParameter; + Qt3DRender::QParameter *m_textureScaleParameter; + Qt3DRender::QEffect *m_metalRoughEffect; + Qt3DRender::QTechnique *m_metalRoughGL3Technique; + Qt3DRender::QRenderPass *m_metalRoughGL3RenderPass; + Qt3DRender::QShaderProgram *m_metalRoughGL3Shader; + Qt3DRender::QShaderProgramBuilder *m_metalRoughGL3ShaderBuilder; + Qt3DRender::QTechnique *m_metalRoughES3Technique; + Qt3DRender::QRenderPass *m_metalRoughES3RenderPass; + Qt3DRender::QShaderProgram *m_metalRoughES3Shader; + Qt3DRender::QShaderProgramBuilder *m_metalRoughES3ShaderBuilder; + Qt3DRender::QFilterKey *m_filterKey; + + Q_DECLARE_PUBLIC(QMetalRoughMaterial) +}; + +} // Qt3DExtras + +QT_END_NAMESPACE + +#endif // QT3DEXTRAS_QMETALROUGHMATERIAL_P_H + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qmorphphongmaterial_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qmorphphongmaterial_p.h new file mode 100644 index 0000000..28b7750 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qmorphphongmaterial_p.h @@ -0,0 +1,111 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: http://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DEXTRAS_QMORPHPHONGMATERIAL_P_H +#define QT3DEXTRAS_QMORPHPHONGMATERIAL_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QFilterKey; +class QEffect; +class QTechnique; +class QParameter; +class QShaderProgram; +class QRenderPass; +class QShaderProgramBuilder; + +} // namespace Qt3DRender + +namespace Qt3DExtras { + +class QMorphPhongMaterial; + +class QMorphPhongMaterialPrivate : public Qt3DRender::QMaterialPrivate +{ +public: + QMorphPhongMaterialPrivate(); + + void init(); + + void handleAmbientChanged(const QVariant &var); + void handleDiffuseChanged(const QVariant &var); + void handleSpecularChanged(const QVariant &var); + void handleShininessChanged(const QVariant &var); + void handleInterpolatorChanged(const QVariant &var); + + Qt3DRender::QEffect *m_phongEffect; + Qt3DRender::QParameter *m_ambientParameter; + Qt3DRender::QParameter *m_diffuseParameter; + Qt3DRender::QParameter *m_specularParameter; + Qt3DRender::QParameter *m_shininessParameter; + Qt3DRender::QParameter *m_interpolatorParameter; + Qt3DRender::QTechnique *m_phongGL3Technique; + Qt3DRender::QTechnique *m_phongGL2Technique; + Qt3DRender::QTechnique *m_phongES2Technique; + Qt3DRender::QRenderPass *m_phongGL3RenderPass; + Qt3DRender::QRenderPass *m_phongGL2RenderPass; + Qt3DRender::QRenderPass *m_phongES2RenderPass; + Qt3DRender::QShaderProgram *m_phongGL3Shader; + Qt3DRender::QShaderProgram *m_phongGL2ES2Shader; + Qt3DRender::QShaderProgramBuilder *m_phongGL3ShaderBuilder; + Qt3DRender::QShaderProgramBuilder *m_phongGL2ES2ShaderBuilder; + Qt3DRender::QFilterKey *m_filterKey; + + Q_DECLARE_PUBLIC(QMorphPhongMaterial) +}; + +} // Qt3DExtras + +QT_END_NAMESPACE + +#endif // QT3DEXTRAS_QPHONGMATERIAL_P_H + + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qnormaldiffusemapalphamaterial_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qnormaldiffusemapalphamaterial_p.h new file mode 100644 index 0000000..d6dfe68 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qnormaldiffusemapalphamaterial_p.h @@ -0,0 +1,87 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DEXTRAS_QNORMALDIFFUSEMAPALPHAMATERIAL_P_H +#define QT3DEXTRAS_QNORMALDIFFUSEMAPALPHAMATERIAL_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + + +namespace Qt3DRender { + +class QAlphaCoverage; +class QDepthTest; + +} // namespace Qt3DRender + +namespace Qt3DExtras { + +class QNormalDiffuseMapAlphaMaterial; +class QNormalDiffuseMapAlphaMaterialPrivate: public QNormalDiffuseMapMaterialPrivate +{ +public: + QNormalDiffuseMapAlphaMaterialPrivate(); + + void init() override; + + Qt3DRender::QAlphaCoverage *m_alphaCoverage; + Qt3DRender::QDepthTest *m_depthTest; + + Q_DECLARE_PUBLIC(QNormalDiffuseMapAlphaMaterial) +}; + +} // Qt3DExtras + +QT_END_NAMESPACE + +#endif // QT3DEXTRAS_QNORMALDIFFUSEMAPALPHAMATERIAL_P_H + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qnormaldiffusemapmaterial_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qnormaldiffusemapmaterial_p.h new file mode 100644 index 0000000..1ac937b --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qnormaldiffusemapmaterial_p.h @@ -0,0 +1,118 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DEXTRAS_QNORMALDIFFUSEMAPMATERIAL_P_H +#define QT3DEXTRAS_QNORMALDIFFUSEMAPMATERIAL_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QFilterKey; +class QEffect; +class QAbstractTexture; +class QTechnique; +class QParameter; +class QShaderProgram; +class QShaderProgramBuilder; +class QRenderPass; + +} // namespace Qt3DRender + +namespace Qt3DExtras { + +class QNormalDiffuseMapMaterial; + +class QNormalDiffuseMapMaterialPrivate: public Qt3DRender::QMaterialPrivate +{ +public: + QNormalDiffuseMapMaterialPrivate(); + + virtual void init(); + + void handleAmbientChanged(const QVariant &var); + void handleDiffuseChanged(const QVariant &var); + void handleNormalChanged(const QVariant &var); + void handleSpecularChanged(const QVariant &var); + void handleShininessChanged(const QVariant &var); + void handleTextureScaleChanged(const QVariant &var); + + Qt3DRender::QEffect *m_normalDiffuseEffect; + Qt3DRender::QAbstractTexture *m_diffuseTexture; + Qt3DRender::QAbstractTexture *m_normalTexture; + Qt3DRender::QParameter *m_ambientParameter; + Qt3DRender::QParameter *m_diffuseParameter; + Qt3DRender::QParameter *m_normalParameter; + Qt3DRender::QParameter *m_specularParameter; + Qt3DRender::QParameter *m_shininessParameter; + Qt3DRender::QParameter *m_textureScaleParameter; + Qt3DRender::QTechnique *m_normalDiffuseGL3Technique; + Qt3DRender::QTechnique *m_normalDiffuseGL2Technique; + Qt3DRender::QTechnique *m_normalDiffuseES2Technique; + Qt3DRender::QRenderPass *m_normalDiffuseGL3RenderPass; + Qt3DRender::QRenderPass *m_normalDiffuseGL2RenderPass; + Qt3DRender::QRenderPass *m_normalDiffuseES2RenderPass; + Qt3DRender::QShaderProgram *m_normalDiffuseGL3Shader; + Qt3DRender::QShaderProgramBuilder *m_normalDiffuseGL3ShaderBuilder; + Qt3DRender::QShaderProgram *m_normalDiffuseGL2ES2Shader; + Qt3DRender::QShaderProgramBuilder *m_normalDiffuseGL2ES2ShaderBuilder; + Qt3DRender::QFilterKey *m_filterKey; + + Q_DECLARE_PUBLIC(QNormalDiffuseMapMaterial) +}; + +} // Qt3DExtras + +QT_END_NAMESPACE + +#endif // QT3DEXTRAS_QNORMALDIFFUSEMAPMATERIAL_P_H + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qnormaldiffusespecularmapmaterial_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qnormaldiffusespecularmapmaterial_p.h new file mode 100644 index 0000000..e02451c --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qnormaldiffusespecularmapmaterial_p.h @@ -0,0 +1,119 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DEXTRAS_QNORMALDIFFUSESPECULARMAPMATERIAL_P_H +#define QT3DEXTRAS_QNORMALDIFFUSESPECULARMAPMATERIAL_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QFilterKey; +class QEffect; +class QAbstractTexture; +class QTechnique; +class QParameter; +class QShaderProgram; +class QShaderProgramBuilder; +class QRenderPass; + +} // namespace Qt3DRender + +namespace Qt3DExtras { + +class QNormalDiffuseSpecularMapMaterial; + +class QNormalDiffuseSpecularMapMaterialPrivate : public Qt3DRender::QMaterialPrivate +{ +public: + QNormalDiffuseSpecularMapMaterialPrivate(); + + void init(); + + void handleAmbientChanged(const QVariant &var); + void handleDiffuseChanged(const QVariant &var); + void handleNormalChanged(const QVariant &var); + void handleSpecularChanged(const QVariant &var); + void handleShininessChanged(const QVariant &var); + void handleTextureScaleChanged(const QVariant &var); + + Qt3DRender::QEffect *m_normalDiffuseSpecularEffect; + Qt3DRender::QAbstractTexture *m_diffuseTexture; + Qt3DRender::QAbstractTexture *m_normalTexture; + Qt3DRender::QAbstractTexture *m_specularTexture; + Qt3DRender::QParameter *m_ambientParameter; + Qt3DRender::QParameter *m_diffuseParameter; + Qt3DRender::QParameter *m_normalParameter; + Qt3DRender::QParameter *m_specularParameter; + Qt3DRender::QParameter *m_shininessParameter; + Qt3DRender::QParameter *m_textureScaleParameter; + Qt3DRender::QTechnique *m_normalDiffuseSpecularGL3Technique; + Qt3DRender::QTechnique *m_normalDiffuseSpecularGL2Technique; + Qt3DRender::QTechnique *m_normalDiffuseSpecularES2Technique; + Qt3DRender::QRenderPass *m_normalDiffuseSpecularGL3RenderPass; + Qt3DRender::QRenderPass *m_normalDiffuseSpecularGL2RenderPass; + Qt3DRender::QRenderPass *m_normalDiffuseSpecularES2RenderPass; + Qt3DRender::QShaderProgram *m_normalDiffuseSpecularGL3Shader; + Qt3DRender::QShaderProgramBuilder *m_normalDiffuseSpecularGL3ShaderBuilder; + Qt3DRender::QShaderProgram *m_normalDiffuseSpecularGL2ES2Shader; + Qt3DRender::QShaderProgramBuilder *m_normalDiffuseSpecularGL2ES2ShaderBuilder; + Qt3DRender::QFilterKey *m_filterKey; + + Q_DECLARE_PUBLIC(QNormalDiffuseSpecularMapMaterial) +}; + +} // Qt3DExtras + +QT_END_NAMESPACE + +#endif // QT3DEXTRAS_QNORMALDIFFUSESPECULARMAPMATERIAL_P_H + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qorbitcameracontroller_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qorbitcameracontroller_p.h new file mode 100644 index 0000000..1e4e3d4 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qorbitcameracontroller_p.h @@ -0,0 +1,76 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DEXTRAS_QORBITCAMERACONTROLLER_P_H +#define QT3DEXTRAS_QORBITCAMERACONTROLLER_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DExtras { + +class QOrbitCameraControllerPrivate : public QAbstractCameraControllerPrivate +{ + Q_DECLARE_PUBLIC(QOrbitCameraController) + +public: + QOrbitCameraControllerPrivate(); + + void init(); + + float m_zoomInLimit; + +private: + QOrbitCameraController *q_ptr; +}; + +} // namespace Qt3DExtras + +QT_END_NAMESPACE + +#endif // QT3DEXTRAS_QORBITCAMERACONTROLLER_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qpervertexcolormaterial_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qpervertexcolormaterial_p.h new file mode 100644 index 0000000..6783535 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qpervertexcolormaterial_p.h @@ -0,0 +1,99 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Lorenz Esch (TU Ilmenau). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DEXTRAS_QPERVERTEXCOLORMATERIAL_P_H +#define QT3DEXTRAS_QPERVERTEXCOLORMATERIAL_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QFilterKey; +class QEffect; +class QTechnique; +class QParameter; +class QShaderProgram; +class QRenderPass; + +} // namespace Qt3DRender + +namespace Qt3DExtras { + +class QPerVertexColorMaterial; + +class QPerVertexColorMaterialPrivate : public Qt3DRender::QMaterialPrivate +{ +public: + QPerVertexColorMaterialPrivate(); + + void init(); + + Qt3DRender::QEffect *m_vertexEffect; + Qt3DRender::QTechnique *m_vertexGL3Technique; + Qt3DRender::QTechnique *m_vertexGL2Technique; + Qt3DRender::QTechnique *m_vertexES2Technique; + Qt3DRender::QRenderPass *m_vertexGL3RenderPass; + Qt3DRender::QRenderPass *m_vertexGL2RenderPass; + Qt3DRender::QRenderPass *m_vertexES2RenderPass; + Qt3DRender::QShaderProgram *m_vertexGL3Shader; + Qt3DRender::QShaderProgram *m_vertexGL2ES2Shader; + Qt3DRender::QFilterKey *m_filterKey; + + Q_DECLARE_PUBLIC(QPerVertexColorMaterial) +}; + +} // Qt3DExtras + +QT_END_NAMESPACE + +#endif // QT3DEXTRAS_QPERVERTEXCOLORMATERIAL_P_H + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qphongalphamaterial_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qphongalphamaterial_p.h new file mode 100644 index 0000000..97eaf7b --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qphongalphamaterial_p.h @@ -0,0 +1,117 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DEXTRAS_QPHONGALPHAMATERIAL_P_H +#define QT3DEXTRAS_QPHONGALPHAMATERIAL_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QFilterKey; +class QEffect; +class QTechnique; +class QParameter; +class QShaderProgram; +class QShaderProgramBuilder; +class QRenderPass; +class QNoDepthMask; +class QBlendEquationArguments; +class QBlendEquation; + +} // namespace Qt3DRender + +namespace Qt3DExtras { + +class QPhongAlphaMaterial; + +class QPhongAlphaMaterialPrivate : public Qt3DRender::QMaterialPrivate +{ +public: + QPhongAlphaMaterialPrivate(); + + void init(); + + void handleAmbientChanged(const QVariant &var); + void handleDiffuseChanged(const QVariant &var); + void handleSpecularChanged(const QVariant &var); + void handleShininessChanged(const QVariant &var); + + Qt3DRender::QEffect *m_phongEffect; + Qt3DRender::QParameter *m_ambientParameter; + Qt3DRender::QParameter *m_diffuseParameter; + Qt3DRender::QParameter *m_specularParameter; + Qt3DRender::QParameter *m_shininessParameter; + Qt3DRender::QTechnique *m_phongAlphaGL3Technique; + Qt3DRender::QTechnique *m_phongAlphaGL2Technique; + Qt3DRender::QTechnique *m_phongAlphaES2Technique; + Qt3DRender::QRenderPass *m_phongAlphaGL3RenderPass; + Qt3DRender::QRenderPass *m_phongAlphaGL2RenderPass; + Qt3DRender::QRenderPass *m_phongAlphaES2RenderPass; + Qt3DRender::QShaderProgram *m_phongAlphaGL3Shader; + Qt3DRender::QShaderProgramBuilder *m_phongAlphaGL3ShaderBuilder; + Qt3DRender::QShaderProgram *m_phongAlphaGL2ES2Shader; + Qt3DRender::QShaderProgramBuilder *m_phongAlphaGL2ES2ShaderBuilder; + Qt3DRender::QNoDepthMask *m_noDepthMask; + Qt3DRender::QBlendEquationArguments *m_blendState; + Qt3DRender::QBlendEquation *m_blendEquation; + Qt3DRender::QFilterKey *m_filterKey; + + Q_DECLARE_PUBLIC(QPhongAlphaMaterial) +}; + +} // Qt3DExtras + +QT_END_NAMESPACE + +#endif // QT3DEXTRAS_QPHONGALPHAMATERIAL_P_H + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qphongmaterial_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qphongmaterial_p.h new file mode 100644 index 0000000..f1e5524 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qphongmaterial_p.h @@ -0,0 +1,111 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DEXTRAS_QPHONGMATERIAL_P_H +#define QT3DEXTRAS_QPHONGMATERIAL_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QFilterKey; +class QEffect; +class QTechnique; +class QParameter; +class QShaderProgram; +class QShaderProgramBuilder; +class QRenderPass; + +} // namespace Qt3DRender + +namespace Qt3DExtras { + +class QPhongMaterial; + +class QPhongMaterialPrivate : public Qt3DRender::QMaterialPrivate +{ +public: + QPhongMaterialPrivate(); + + void init(); + + void handleAmbientChanged(const QVariant &var); + void handleDiffuseChanged(const QVariant &var); + void handleSpecularChanged(const QVariant &var); + void handleShininessChanged(const QVariant &var); + + Qt3DRender::QEffect *m_phongEffect; + Qt3DRender::QParameter *m_ambientParameter; + Qt3DRender::QParameter *m_diffuseParameter; + Qt3DRender::QParameter *m_specularParameter; + Qt3DRender::QParameter *m_shininessParameter; + Qt3DRender::QTechnique *m_phongGL3Technique; + Qt3DRender::QTechnique *m_phongGL2Technique; + Qt3DRender::QTechnique *m_phongES2Technique; + Qt3DRender::QRenderPass *m_phongGL3RenderPass; + Qt3DRender::QRenderPass *m_phongGL2RenderPass; + Qt3DRender::QRenderPass *m_phongES2RenderPass; + Qt3DRender::QShaderProgram *m_phongGL3Shader; + Qt3DRender::QShaderProgramBuilder *m_phongGL3ShaderBuilder; + Qt3DRender::QShaderProgram *m_phongGL2ES2Shader; + Qt3DRender::QShaderProgramBuilder *m_phongGL2ES2ShaderBuilder; + Qt3DRender::QFilterKey *m_filterKey; + + Q_DECLARE_PUBLIC(QPhongMaterial) +}; + +} // Qt3DExtras + +QT_END_NAMESPACE + +#endif // QT3DEXTRAS_QPHONGMATERIAL_P_H + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qplanegeometry_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qplanegeometry_p.h new file mode 100644 index 0000000..68d9798 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qplanegeometry_p.h @@ -0,0 +1,95 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DEXTRAS_QPLANEGEOMETRY_P_H +#define QT3DEXTRAS_QPLANEGEOMETRY_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QAttribute; +class QBuffer; + +} // Qt3DRender + +namespace Qt3DExtras { + +class QPlaneGeometryPrivate : public Qt3DRender::QGeometryPrivate +{ +public: + QPlaneGeometryPrivate(); + void init(); + + float m_width; + float m_height; + QSize m_meshResolution; + bool m_mirrored; + Qt3DRender::QAttribute *m_positionAttribute; + Qt3DRender::QAttribute *m_normalAttribute; + Qt3DRender::QAttribute *m_texCoordAttribute; + Qt3DRender::QAttribute *m_tangentAttribute; + Qt3DRender::QAttribute *m_indexAttribute; + Qt3DRender::QBuffer *m_vertexBuffer; + Qt3DRender::QBuffer *m_indexBuffer; + + Q_DECLARE_PUBLIC(QPlaneGeometry) +}; + +} // Qt3DExtras + +QT_END_NAMESPACE + +#endif // QT3DEXTRAS_QPLANEGEOMETRY_P_H + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qskyboxentity_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qskyboxentity_p.h new file mode 100644 index 0000000..945b42b --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qskyboxentity_p.h @@ -0,0 +1,122 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DEXTRAS_QSKYBOXENTITY_P_H +#define QT3DEXTRAS_QSKYBOXENTITY_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QFilterKey; +class QTextureCubeMap; +class QTextureLoader; +class QShaderProgram; +class QSkyboxEntity; +class QTextureImage; +class QRenderPass; +class QTechnique; +class QParameter; +class QMaterial; +class QEffect; + +} // namespace Qt3DRender + +namespace Qt3DExtras { + +class QCuboidMesh; + +class QSkyboxEntityPrivate : public Qt3DCore::QEntityPrivate +{ + QSkyboxEntityPrivate(); + + void init(); + void reloadTexture(); + + Q_DECLARE_PUBLIC(QSkyboxEntity) + + Qt3DRender::QEffect *m_effect; + Qt3DRender::QMaterial *m_material; + Qt3DRender::QTextureCubeMap *m_skyboxTexture; + Qt3DRender::QTextureLoader *m_loadedTexture; + Qt3DRender::QShaderProgram *m_gl3Shader; + Qt3DRender::QShaderProgram *m_gl2es2Shader; + Qt3DRender::QTechnique *m_gl2Technique; + Qt3DRender::QTechnique *m_es2Technique; + Qt3DRender::QTechnique *m_gl3Technique; + Qt3DRender::QFilterKey *m_filterKey; + Qt3DRender::QRenderPass *m_gl2RenderPass; + Qt3DRender::QRenderPass *m_es2RenderPass; + Qt3DRender::QRenderPass *m_gl3RenderPass; + QCuboidMesh *m_mesh; + Qt3DRender::QParameter *m_gammaStrengthParameter; + Qt3DRender::QParameter *m_textureParameter; + Qt3DRender::QTextureImage *m_posXImage; + Qt3DRender:: QTextureImage *m_posYImage; + Qt3DRender::QTextureImage *m_posZImage; + Qt3DRender::QTextureImage *m_negXImage; + Qt3DRender::QTextureImage *m_negYImage; + Qt3DRender::QTextureImage *m_negZImage; + QString m_extension; + QString m_baseName; + QVector3D m_position; + bool m_hasPendingReloadTextureCall; +}; + +} // Qt3DExtras + +QT_END_NAMESPACE + +#endif // QT3DEXTRAS_QSKYBOXENTITY_P_H + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qspheregeometry_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qspheregeometry_p.h new file mode 100644 index 0000000..dc96766 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qspheregeometry_p.h @@ -0,0 +1,93 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Paul Lemire paul.lemire350@gmail.com +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DEXTRAS_QSPHEREGEOMETRY_P_H +#define QT3DEXTRAS_QSPHEREGEOMETRY_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QAttribute; +class QBuffer; + +} // Qt3DRender + +namespace Qt3DExtras { + +class QSphereGeometryPrivate : public Qt3DRender::QGeometryPrivate +{ +public: + QSphereGeometryPrivate(); + void init(); + + bool m_generateTangents; + int m_rings; + int m_slices; + float m_radius; + Qt3DRender::QAttribute *m_positionAttribute; + Qt3DRender::QAttribute *m_normalAttribute; + Qt3DRender::QAttribute *m_texCoordAttribute; + Qt3DRender::QAttribute *m_tangentAttribute; + Qt3DRender::QAttribute *m_indexAttribute; + Qt3DRender::QBuffer *m_vertexBuffer; + Qt3DRender::QBuffer *m_indexBuffer; + + Q_DECLARE_PUBLIC(QSphereGeometry); +}; + +} // Qt3DExtras + +QT_END_NAMESPACE + +#endif //QT3DEXTRAS_QSPHEREGEOMETRY_P_H + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qspritegrid_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qspritegrid_p.h new file mode 100644 index 0000000..6135ebf --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qspritegrid_p.h @@ -0,0 +1,82 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DEXTRAS_QSPRITEGRID_P_H +#define QT3DEXTRAS_QSPRITEGRID_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DExtras { + +class QSpriteGrid; + +class QSpriteGridPrivate : public QAbstractSpriteSheetPrivate +{ + QSpriteGridPrivate(); + + int maxIndex() const override; + void updateSizes() override; + void updateTransform() override; + + int m_numColumns; + int m_numRows; + QSize m_cellSize; + + Q_DECLARE_PUBLIC(QSpriteGrid) +}; + +} // Qt3DExtras + +QT_END_NAMESPACE + +#endif // QT3DEXTRAS_QSPRITEGRID_P_H + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qspritesheet_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qspritesheet_p.h new file mode 100644 index 0000000..5091800 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qspritesheet_p.h @@ -0,0 +1,83 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DEXTRAS_QSPRITESHEET_P_H +#define QT3DEXTRAS_QSPRITESHEET_P_H +#include +#include + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DExtras { + +class QSpriteSheetItem; +class QSpriteSheet; + +class QSpriteSheetPrivate : public QAbstractSpriteSheetPrivate +{ + QSpriteSheetPrivate(); + + int maxIndex() const override; + void updateSizes() override; + void updateTransform() override; + + QVector m_sprites; + + Q_DECLARE_PUBLIC(QSpriteSheet) +}; + +} // Qt3DExtras + +QT_END_NAMESPACE + +#endif // QT3DEXTRAS_QSPRITESHEET_P_H + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qspritesheetitem_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qspritesheetitem_p.h new file mode 100644 index 0000000..f23d71c --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qspritesheetitem_p.h @@ -0,0 +1,81 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DEXTRAS_QSPRITESHEET_P_H +#define QT3DEXTRAS_QSPRITESHEET_P_H +#include +#include + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DExtras { + +class QSpriteSheetItem; + +class QSpriteSheetItemPrivate: public Qt3DCore::QNodePrivate +{ + QSpriteSheetItemPrivate(); + + int m_x; + int m_y; + int m_width; + int m_height; + + Q_DECLARE_PUBLIC(QSpriteSheetItem) +}; + +} // Qt3DExtras + +QT_END_NAMESPACE + +#endif // QT3DEXTRAS_QSPRITESHEET_P_H + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qt3dwindow_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qt3dwindow_p.h new file mode 100644 index 0000000..731d529 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qt3dwindow_p.h @@ -0,0 +1,92 @@ +/**************************************************************************** +** +** Copyright (C) 2017 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DWINDOW_P_H +#define QT3DWINDOW_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DExtras { + +class Qt3DWindowPrivate : public QWindowPrivate +{ +public: + Qt3DWindowPrivate(); + + Qt3DCore::QAspectEngine *m_aspectEngine; + + // Aspects + Qt3DRender::QRenderAspect *m_renderAspect; + Qt3DInput::QInputAspect *m_inputAspect; + Qt3DLogic::QLogicAspect *m_logicAspect; + + // Renderer configuration + Qt3DRender::QRenderSettings *m_renderSettings; + Qt3DExtras::QForwardRenderer *m_forwardRenderer; + Qt3DRender::QCamera *m_defaultCamera; + + // Input configuration + Qt3DInput::QInputSettings *m_inputSettings; + + // Logic configuration + + // Scene + Qt3DCore::QEntity *m_root; + Qt3DCore::QEntity *m_userRoot; + + bool m_initialized; + + Q_DECLARE_PUBLIC(Qt3DWindow) +}; + +} // Qt3DExtras + +QT_END_NAMESPACE + +#endif // QT3DWINDOW_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qtext2dentity_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qtext2dentity_p.h new file mode 100644 index 0000000..b98c62c --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qtext2dentity_p.h @@ -0,0 +1,123 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DEXTRAS_QTEXT2DENTITY_P_H +#define QT3DEXTRAS_QTEXT2DENTITY_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { +class QScene; +} + +namespace Qt3DRender { +class QGeometryRenderer; +class QGeometry; +class QMaterial; +class QAttribute; +class QBuffer; +} + +namespace Qt3DExtras { + +class QText2DMaterial; +class QText2DEntity; + +class QText2DEntityPrivate : public Qt3DCore::QEntityPrivate +{ +public: + QText2DEntityPrivate(); + ~QText2DEntityPrivate(); + + Q_DECLARE_PUBLIC(QText2DEntity) + + // keep track of the glyphs currently being displayed, + // to guarantee proper glyph ref-counting in the + // QDistanceFieldGlyphCache + QVector m_currentGlyphRuns; + QDistanceFieldGlyphCache *m_glyphCache; + + void setScene(Qt3DCore::QScene *scene) override; + + QFont m_font; + QFont m_scaledFont; // ignore point or pixel size, set to default value + + QColor m_color; + QString m_text; + float m_width; + float m_height; + + QVector m_renderers; + + float computeActualScale() const; + + void setCurrentGlyphRuns(const QVector &runs); + void clearCurrentGlyphRuns(); + void update(); + + struct CacheEntry + { + QDistanceFieldGlyphCache *glyphCache = nullptr; + int count = 0; + }; + + static QHash m_glyphCacheInstances; +}; + +} // namespace Qt3DExtras + +QT_END_NAMESPACE + +#endif // QT3DEXTRAS_QTEXT2DENTITY_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qtext2dmaterial_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qtext2dmaterial_p.h new file mode 100644 index 0000000..cf967b0 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qtext2dmaterial_p.h @@ -0,0 +1,83 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DEXTRAS_QTEXT2DMATERIAL_P_H +#define QT3DEXTRAS_QTEXT2DMATERIAL_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DExtras { + +class QText2DMaterialPrivate; + +class QText2DMaterial : public Qt3DRender::QMaterial +{ + Q_OBJECT + +public: + explicit QText2DMaterial(Qt3DCore::QNode *parent = nullptr); + ~QText2DMaterial(); + + void setColor(const QColor &color); + void setDistanceFieldTexture(Qt3DRender::QAbstractTexture *tex); + +private: + Q_DECLARE_PRIVATE(QText2DMaterial) +}; + +} // namespace Qt3DExtras + +QT_END_NAMESPACE + +#endif // QT3DEXTRAS_QTEXT2DMATERIAL_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qtext2dmaterial_p_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qtext2dmaterial_p_p.h new file mode 100644 index 0000000..90f0a71 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qtext2dmaterial_p_p.h @@ -0,0 +1,106 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DEXTRAS_QTEXT2DMATERIAL_P_P_H +#define QT3DEXTRAS_QTEXT2DMATERIAL_P_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { +class QAbstractTexture; +class QEffect; +class QTechnique; +class QParameter; +class QRenderPass; +class QShaderProgram; +class QBlendEquation; +class QBlendEquationArguments; +class QDepthTest; + +} // namespace Qt3DRender + +namespace Qt3DExtras { + +class QText2DMaterial; + +class QText2DMaterialPrivate : public Qt3DRender::QMaterialPrivate +{ +public: + QText2DMaterialPrivate(); + + Qt3DRender::QEffect *m_effect; + Qt3DRender::QAbstractTexture *m_distanceFieldTexture; + Qt3DRender::QParameter *m_textureParameter; + Qt3DRender::QParameter *m_textureSizeParameter; + Qt3DRender::QParameter *m_colorParameter; + Qt3DRender::QTechnique *m_gl3Technique; + Qt3DRender::QTechnique *m_gl2Technique; + Qt3DRender::QTechnique *m_es2Technique; + Qt3DRender::QRenderPass *m_gl3RenderPass; + Qt3DRender::QRenderPass *m_gl2RenderPass; + Qt3DRender::QRenderPass *m_es2RenderPass; + Qt3DRender::QShaderProgram *m_gl3ShaderProgram; + Qt3DRender::QShaderProgram *m_gl2es2ShaderProgram; + Qt3DRender::QBlendEquation *m_blend; + Qt3DRender::QBlendEquationArguments *m_blendArgs; + Qt3DRender::QDepthTest *m_depthTest; + + void init(); + + Q_DECLARE_PUBLIC(QText2DMaterial) +}; + +} // Qt3DExtras + +QT_END_NAMESPACE + +#endif // QT3DEXTRAS_QTEXT2DMATERIAL_P_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qtextureatlas_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qtextureatlas_p.h new file mode 100644 index 0000000..8dc9e19 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qtextureatlas_p.h @@ -0,0 +1,95 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DEXTRAS_QTEXTUREATLAS_P_H +#define QT3DEXTRAS_QTEXTUREATLAS_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DExtras { + +class QTextureAtlasPrivate; + +class QTextureAtlas : public Qt3DRender::QAbstractTexture +{ + Q_OBJECT + +public: + typedef int TextureId; + static Q_CONSTEXPR TextureId InvalidTexture = -1; + + QTextureAtlas(Qt3DCore::QNode *parent = nullptr); + ~QTextureAtlas(); + + QOpenGLTexture::PixelFormat pixelFormat() const; + void setPixelFormat(QOpenGLTexture::PixelFormat fmt); + + TextureId addImage(const QImage &image, int padding); + void removeImage(TextureId id); + + int imageCount() const; + + bool hasImage(TextureId id) const; + QRect imagePosition(TextureId id) const; + QRectF imageTexCoords(TextureId id) const; + int imagePadding(TextureId id) const; + +private: + Q_DECLARE_PRIVATE(QTextureAtlas) +}; + +} // namespace Qt3DExtras + +QT_END_NAMESPACE + +#endif // QT3DEXTRAS_QTEXTUREATLAS_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qtextureatlas_p_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qtextureatlas_p_p.h new file mode 100644 index 0000000..5a1021b --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qtextureatlas_p_p.h @@ -0,0 +1,139 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DEXTRAS_QTEXTUREATLAS_P_P_H +#define QT3DEXTRAS_QTEXTUREATLAS_P_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DExtras { + +// Used to store texture info within atlas +struct AtlasTexture +{ + QRect position; + int padding = 0; +}; + +// data shared between QTextureAtlasPrivate and the QTextureGenerators +// we use this extra indirection so we can lazily copy the sub-images +// into the actual texture image in the backend texture loader thread. +class QTextureAtlasData +{ +public: + QTextureAtlasData(int w, int h, QImage::Format fmt); + ~QTextureAtlasData(); + + int width() const { return m_image.width(); } + int height() const { return m_image.height(); } + + void addImage(const AtlasTexture &texture, const QImage &image); + QByteArray createUpdatedImageData(); + +private: + struct Update { + AtlasTexture textureInfo; + QImage image; + }; + + QMutex m_mutex; + QImage m_image; + QVector m_updates; +}; + +typedef QSharedPointer QTextureAtlasDataPtr; + +class QTextureAtlasPrivate : public Qt3DRender::QAbstractTexturePrivate +{ +public: + QTextureAtlasPrivate(); + ~QTextureAtlasPrivate(); + + Q_DECLARE_PUBLIC(QTextureAtlas) + + QTextureAtlas::TextureId m_currId = 1; // IDs for new sub-textures + int m_currGen = 0; + + QTextureAtlasDataPtr m_data; + QScopedPointer m_allocator; + QOpenGLTexture::PixelFormat m_pixelFormat; + QHash m_textures; +}; + +class QTextureAtlasGenerator : public Qt3DRender::QTextureGenerator +{ +public: + QTextureAtlasGenerator(const QTextureAtlasPrivate *texAtlas); + ~QTextureAtlasGenerator(); + Qt3DRender::QTextureDataPtr operator()() override; + bool operator==(const QTextureGenerator &other) const override; + + QT3D_FUNCTOR(QTextureAtlasGenerator) + +private: + QTextureAtlasDataPtr m_data; + Qt3DRender::QAbstractTexture::TextureFormat m_format; + QOpenGLTexture::PixelFormat m_pixelFormat; + int m_generation; + Qt3DCore::QNodeId m_atlasId; +}; +typedef QSharedPointer QTextureAtlasGeneratorPtr; + +} // namespace Qt3DExtras + +QT_END_NAMESPACE + +#endif // QT3DEXTRAS_QTEXTUREATLAS_P_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qtexturematerial_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qtexturematerial_p.h new file mode 100644 index 0000000..09d5e23 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qtexturematerial_p.h @@ -0,0 +1,112 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DEXTRAS_QTEXTUREMATERIAL_P_H +#define QT3DEXTRAS_QTEXTUREMATERIAL_P_H + +#include + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QFilterKey; +class QEffect; +class QAbstractTexture; +class QTechnique; +class QParameter; +class QShaderProgram; +class QRenderPass; +class QNoDepthMask; +class QBlendEquationArguments; +class QBlendEquation; + +} // namespace Qt3DRender + +namespace Qt3DExtras { + +class QTextureMaterial; + +class QTextureMaterialPrivate : public Qt3DRender::QMaterialPrivate +{ + QTextureMaterialPrivate(); + + void init(); + + void handleTextureChanged(const QVariant &var); + void handleTextureTransformChanged(const QVariant &var); + + Qt3DRender::QEffect *m_textureEffect; + Qt3DRender::QParameter *m_textureParameter; + Qt3DRender::QParameter *m_textureTransformParameter; + Qt3DRender::QTechnique *m_textureGL3Technique; + Qt3DRender::QTechnique *m_textureGL2Technique; + Qt3DRender::QTechnique *m_textureES2Technique; + Qt3DRender::QRenderPass *m_textureGL3RenderPass; + Qt3DRender::QRenderPass *m_textureGL2RenderPass; + Qt3DRender::QRenderPass *m_textureES2RenderPass; + Qt3DRender::QShaderProgram *m_textureGL3Shader; + Qt3DRender::QShaderProgram *m_textureGL2ES2Shader; + Qt3DRender::QNoDepthMask *m_noDepthMask; + Qt3DRender::QBlendEquationArguments *m_blendState; + Qt3DRender::QBlendEquation *m_blendEquation; + Qt3DRender::QFilterKey *m_filterKey; + + Q_DECLARE_PUBLIC(QTextureMaterial) +}; + +} // Qt3DExtras + +QT_END_NAMESPACE + +#endif // QT3DEXTRAS_QTEXTUREMATERIAL_P_H + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qtorusgeometry_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qtorusgeometry_p.h new file mode 100644 index 0000000..7506a95 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/5.12.5/Qt3DExtras/private/qtorusgeometry_p.h @@ -0,0 +1,94 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DEXTRAS_QTORUSGEOMETRY_P_H +#define QT3DEXTRAS_QTORUSGEOMETRY_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QAttribute; +class QBuffer; + +} // Qt3DRender + +namespace Qt3DExtras { + +class QTorusGeometryPrivate : public Qt3DRender::QGeometryPrivate +{ +public: + QTorusGeometryPrivate(); + void init(); + + int m_rings; + int m_slices; + float m_radius; + float m_minorRadius; + Qt3DRender::QAttribute *m_positionAttribute; + Qt3DRender::QAttribute *m_normalAttribute; + Qt3DRender::QAttribute *m_texCoordAttribute; + Qt3DRender::QAttribute *m_tangentAttribute; + Qt3DRender::QAttribute *m_indexAttribute; + Qt3DRender::QBuffer *m_vertexBuffer; + Qt3DRender::QBuffer *m_indexBuffer; + + Q_DECLARE_PUBLIC(QTorusGeometry) +}; + +} // Qt3DExtras + + +QT_END_NAMESPACE + +#endif // QT3DEXTRAS_QTORUSGEOMETRY_P_H + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QAbstractCameraController b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QAbstractCameraController new file mode 100644 index 0000000..2c29e5c --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QAbstractCameraController @@ -0,0 +1 @@ +#include "qabstractcameracontroller.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QAbstractSpriteSheet b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QAbstractSpriteSheet new file mode 100644 index 0000000..360c18b --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QAbstractSpriteSheet @@ -0,0 +1 @@ +#include "qabstractspritesheet.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QConeGeometry b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QConeGeometry new file mode 100644 index 0000000..aa66c48 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QConeGeometry @@ -0,0 +1 @@ +#include "qconegeometry.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QConeMesh b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QConeMesh new file mode 100644 index 0000000..005f183 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QConeMesh @@ -0,0 +1 @@ +#include "qconemesh.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QCuboidGeometry b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QCuboidGeometry new file mode 100644 index 0000000..10a6ac0 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QCuboidGeometry @@ -0,0 +1 @@ +#include "qcuboidgeometry.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QCuboidMesh b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QCuboidMesh new file mode 100644 index 0000000..9caa23d --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QCuboidMesh @@ -0,0 +1 @@ +#include "qcuboidmesh.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QCylinderGeometry b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QCylinderGeometry new file mode 100644 index 0000000..6c6eeb5 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QCylinderGeometry @@ -0,0 +1 @@ +#include "qcylindergeometry.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QCylinderMesh b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QCylinderMesh new file mode 100644 index 0000000..9c98727 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QCylinderMesh @@ -0,0 +1 @@ +#include "qcylindermesh.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QDiffuseMapMaterial b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QDiffuseMapMaterial new file mode 100644 index 0000000..8d7d878 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QDiffuseMapMaterial @@ -0,0 +1 @@ +#include "qdiffusemapmaterial.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QDiffuseSpecularMapMaterial b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QDiffuseSpecularMapMaterial new file mode 100644 index 0000000..d23494f --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QDiffuseSpecularMapMaterial @@ -0,0 +1 @@ +#include "qdiffusespecularmapmaterial.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QDiffuseSpecularMaterial b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QDiffuseSpecularMaterial new file mode 100644 index 0000000..baf677b --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QDiffuseSpecularMaterial @@ -0,0 +1 @@ +#include "qdiffusespecularmaterial.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QExtrudedTextGeometry b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QExtrudedTextGeometry new file mode 100644 index 0000000..700626c --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QExtrudedTextGeometry @@ -0,0 +1 @@ +#include "qextrudedtextgeometry.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QExtrudedTextMesh b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QExtrudedTextMesh new file mode 100644 index 0000000..7d45bd0 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QExtrudedTextMesh @@ -0,0 +1 @@ +#include "qextrudedtextmesh.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QFirstPersonCameraController b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QFirstPersonCameraController new file mode 100644 index 0000000..70ba276 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QFirstPersonCameraController @@ -0,0 +1 @@ +#include "qfirstpersoncameracontroller.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QForwardRenderer b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QForwardRenderer new file mode 100644 index 0000000..6e9b445 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QForwardRenderer @@ -0,0 +1 @@ +#include "qforwardrenderer.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QGoochMaterial b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QGoochMaterial new file mode 100644 index 0000000..8444f67 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QGoochMaterial @@ -0,0 +1 @@ +#include "qgoochmaterial.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QMetalRoughMaterial b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QMetalRoughMaterial new file mode 100644 index 0000000..c5cd6dd --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QMetalRoughMaterial @@ -0,0 +1 @@ +#include "qmetalroughmaterial.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QMorphPhongMaterial b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QMorphPhongMaterial new file mode 100644 index 0000000..d970f49 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QMorphPhongMaterial @@ -0,0 +1 @@ +#include "qmorphphongmaterial.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QNormalDiffuseMapAlphaMaterial b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QNormalDiffuseMapAlphaMaterial new file mode 100644 index 0000000..1b4fc87 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QNormalDiffuseMapAlphaMaterial @@ -0,0 +1 @@ +#include "qnormaldiffusemapalphamaterial.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QNormalDiffuseMapMaterial b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QNormalDiffuseMapMaterial new file mode 100644 index 0000000..f0d4a92 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QNormalDiffuseMapMaterial @@ -0,0 +1 @@ +#include "qnormaldiffusemapmaterial.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QNormalDiffuseSpecularMapMaterial b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QNormalDiffuseSpecularMapMaterial new file mode 100644 index 0000000..8d7359e --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QNormalDiffuseSpecularMapMaterial @@ -0,0 +1 @@ +#include "qnormaldiffusespecularmapmaterial.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QOrbitCameraController b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QOrbitCameraController new file mode 100644 index 0000000..3b3b235 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QOrbitCameraController @@ -0,0 +1 @@ +#include "qorbitcameracontroller.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QPerVertexColorMaterial b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QPerVertexColorMaterial new file mode 100644 index 0000000..cb5c86f --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QPerVertexColorMaterial @@ -0,0 +1 @@ +#include "qpervertexcolormaterial.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QPhongAlphaMaterial b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QPhongAlphaMaterial new file mode 100644 index 0000000..6e0a5d4 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QPhongAlphaMaterial @@ -0,0 +1 @@ +#include "qphongalphamaterial.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QPhongMaterial b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QPhongMaterial new file mode 100644 index 0000000..6b7b7d7 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QPhongMaterial @@ -0,0 +1 @@ +#include "qphongmaterial.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QPlaneGeometry b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QPlaneGeometry new file mode 100644 index 0000000..2698a22 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QPlaneGeometry @@ -0,0 +1 @@ +#include "qplanegeometry.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QPlaneMesh b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QPlaneMesh new file mode 100644 index 0000000..f175d13 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QPlaneMesh @@ -0,0 +1 @@ +#include "qplanemesh.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QSkyboxEntity b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QSkyboxEntity new file mode 100644 index 0000000..9268af8 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QSkyboxEntity @@ -0,0 +1 @@ +#include "qskyboxentity.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QSphereGeometry b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QSphereGeometry new file mode 100644 index 0000000..a971d7f --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QSphereGeometry @@ -0,0 +1 @@ +#include "qspheregeometry.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QSphereMesh b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QSphereMesh new file mode 100644 index 0000000..f81d8ac --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QSphereMesh @@ -0,0 +1 @@ +#include "qspheremesh.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QSpriteGrid b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QSpriteGrid new file mode 100644 index 0000000..5444c16 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QSpriteGrid @@ -0,0 +1 @@ +#include "qspritegrid.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QSpriteSheet b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QSpriteSheet new file mode 100644 index 0000000..60b267a --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QSpriteSheet @@ -0,0 +1 @@ +#include "qspritesheet.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QSpriteSheetItem b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QSpriteSheetItem new file mode 100644 index 0000000..cd1df79 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QSpriteSheetItem @@ -0,0 +1 @@ +#include "qspritesheetitem.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QText2DEntity b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QText2DEntity new file mode 100644 index 0000000..9753417 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QText2DEntity @@ -0,0 +1 @@ +#include "qtext2dentity.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QTextureMaterial b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QTextureMaterial new file mode 100644 index 0000000..399e250 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QTextureMaterial @@ -0,0 +1 @@ +#include "qtexturematerial.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QTorusGeometry b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QTorusGeometry new file mode 100644 index 0000000..87e8909 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QTorusGeometry @@ -0,0 +1 @@ +#include "qtorusgeometry.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QTorusMesh b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QTorusMesh new file mode 100644 index 0000000..ed530c1 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/QTorusMesh @@ -0,0 +1 @@ +#include "qtorusmesh.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/Qt3DExtras b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/Qt3DExtras new file mode 100644 index 0000000..1fad3c4 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/Qt3DExtras @@ -0,0 +1,44 @@ +#ifndef QT_QT3DEXTRAS_MODULE_H +#define QT_QT3DEXTRAS_MODULE_H +#include +#include "qabstractcameracontroller.h" +#include "qabstractspritesheet.h" +#include "qconegeometry.h" +#include "qconemesh.h" +#include "qcuboidgeometry.h" +#include "qcuboidmesh.h" +#include "qcylindergeometry.h" +#include "qcylindermesh.h" +#include "qdiffusemapmaterial.h" +#include "qdiffusespecularmapmaterial.h" +#include "qdiffusespecularmaterial.h" +#include "qextrudedtextgeometry.h" +#include "qextrudedtextmesh.h" +#include "qfirstpersoncameracontroller.h" +#include "qforwardrenderer.h" +#include "qgoochmaterial.h" +#include "qmetalroughmaterial.h" +#include "qmorphphongmaterial.h" +#include "qnormaldiffusemapalphamaterial.h" +#include "qnormaldiffusemapmaterial.h" +#include "qnormaldiffusespecularmapmaterial.h" +#include "qorbitcameracontroller.h" +#include "qpervertexcolormaterial.h" +#include "qphongalphamaterial.h" +#include "qphongmaterial.h" +#include "qplanegeometry.h" +#include "qplanemesh.h" +#include "qskyboxentity.h" +#include "qspheregeometry.h" +#include "qspheremesh.h" +#include "qspritegrid.h" +#include "qspritesheet.h" +#include "qspritesheetitem.h" +#include "qt3dwindow.h" +#include "qtext2dentity.h" +#include "qtexturedmetalroughmaterial.h" +#include "qtexturematerial.h" +#include "qtorusgeometry.h" +#include "qtorusmesh.h" +#include "qt3dextrasversion.h" +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/Qt3DExtrasDepends b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/Qt3DExtrasDepends new file mode 100644 index 0000000..99fde2a --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/Qt3DExtrasDepends @@ -0,0 +1,9 @@ +/* This file was generated by qmake with the info from /src/extras/extras.pro. */ +#ifdef __cplusplus /* create empty PCH in C mode */ +#include +#include +#include +#include +#include +#include +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/Qt3DExtrasVersion b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/Qt3DExtrasVersion new file mode 100644 index 0000000..aa3c151 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/Qt3DExtrasVersion @@ -0,0 +1 @@ +#include "qt3dextrasversion.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/Qt3DWindow b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/Qt3DWindow new file mode 100644 index 0000000..113fae0 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/Qt3DWindow @@ -0,0 +1 @@ +#include "qt3dwindow.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qabstractcameracontroller.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qabstractcameracontroller.h new file mode 100644 index 0000000..e5d1474 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qabstractcameracontroller.h @@ -0,0 +1,127 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DEXTRAS_QABSTRACTCAMERACONTROLLER_H +#define QT3DEXTRAS_QABSTRACTCAMERACONTROLLER_H + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { +class QKeyboardDevice; +class QMouseDevice; +} + +namespace Qt3DRender { +class QCamera; +} + +namespace Qt3DExtras { + +class QAbstractCameraControllerPrivate; + +class QT3DEXTRASSHARED_EXPORT QAbstractCameraController : public Qt3DCore::QEntity +{ + Q_OBJECT + Q_PROPERTY(Qt3DRender::QCamera *camera READ camera WRITE setCamera NOTIFY cameraChanged) + Q_PROPERTY(float linearSpeed READ linearSpeed WRITE setLinearSpeed NOTIFY linearSpeedChanged) + Q_PROPERTY(float lookSpeed READ lookSpeed WRITE setLookSpeed NOTIFY lookSpeedChanged) + Q_PROPERTY(float acceleration READ acceleration WRITE setAcceleration NOTIFY accelerationChanged) + Q_PROPERTY(float deceleration READ deceleration WRITE setDeceleration NOTIFY decelerationChanged) + +public: + ~QAbstractCameraController(); + + Qt3DRender::QCamera *camera() const; + float linearSpeed() const; + float lookSpeed() const; + + float acceleration() const; + float deceleration() const; + + void setCamera(Qt3DRender::QCamera *camera); + void setLinearSpeed(float linearSpeed); + void setLookSpeed(float lookSpeed); + + void setAcceleration(float acceleration); + void setDeceleration(float deceleration); + +Q_SIGNALS: + void cameraChanged(); + void linearSpeedChanged(); + void lookSpeedChanged(); + + void accelerationChanged(float acceleration); + void decelerationChanged(float deceleration); + +protected: + explicit QAbstractCameraController(Qt3DCore::QNode *parent = nullptr); + QAbstractCameraController(QAbstractCameraControllerPrivate &dd, Qt3DCore::QNode *parent = nullptr); + + Qt3DInput::QKeyboardDevice *keyboardDevice() const; + Qt3DInput::QMouseDevice *mouseDevice() const; + +public: + struct InputState + { + float rxAxisValue; + float ryAxisValue; + float txAxisValue; + float tyAxisValue; + float tzAxisValue; + + bool leftMouseButtonActive; + bool middleMouseButtonActive; + bool rightMouseButtonActive; + + bool altKeyActive; + bool shiftKeyActive; + }; + +private: + virtual void moveCamera(const InputState &state, float dt) = 0; + +private: + Q_DECLARE_PRIVATE(QAbstractCameraController) +}; + +} // Qt3DExtras + +QT_END_NAMESPACE + +#endif // QT3DEXTRAS_QABSTRACTCAMERACONTROLLER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qabstractspritesheet.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qabstractspritesheet.h new file mode 100644 index 0000000..bbef657 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qabstractspritesheet.h @@ -0,0 +1,93 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DEXTRAS_QABSTRACTSPRITESHEET_H +#define QT3DEXTRAS_QABSTRACTSPRITESHEET_H + +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QAbstractTexture; + +} // namespace Qt3DRender + +namespace Qt3DExtras { + +class QAbstractSpriteSheetPrivate; + +class QT3DEXTRASSHARED_EXPORT QAbstractSpriteSheet : public Qt3DCore::QNode +{ + Q_OBJECT + Q_PROPERTY(Qt3DRender::QAbstractTexture *texture READ texture WRITE setTexture NOTIFY textureChanged) + Q_PROPERTY(QMatrix3x3 textureTransform READ textureTransform NOTIFY textureTransformChanged) + Q_PROPERTY(int currentIndex READ currentIndex WRITE setCurrentIndex NOTIFY currentIndexChanged) +public: + ~QAbstractSpriteSheet(); + + Qt3DRender::QAbstractTexture *texture() const; + QMatrix3x3 textureTransform() const; + int currentIndex() const; + +public Q_SLOTS: + void setTexture(Qt3DRender::QAbstractTexture *texture); + void setCurrentIndex(int currentIndex); + +Q_SIGNALS: + void textureChanged(Qt3DRender::QAbstractTexture *texture); + void textureTransformChanged(const QMatrix3x3 &textureTransform); + void currentIndexChanged(int currentIndex); + +protected: + explicit QAbstractSpriteSheet(QAbstractSpriteSheetPrivate &d, Qt3DCore::QNode *parent = nullptr); + +private: + Q_DECLARE_PRIVATE(QAbstractSpriteSheet) +}; + +} // Qt3DExtras + +QT_END_NAMESPACE + +#endif // QT3DEXTRAS_QABSTRACTSPRITESHEET_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qconegeometry.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qconegeometry.h new file mode 100644 index 0000000..4f1dc94 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qconegeometry.h @@ -0,0 +1,120 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DEXTRAS_QCONEGEOMETRY_H +#define QT3DEXTRAS_QCONEGEOMETRY_H + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { +class QAttribute; +} // Render + +namespace Qt3DExtras { + +class QConeGeometryPrivate; + +class QT3DEXTRASSHARED_EXPORT QConeGeometry : public Qt3DRender::QGeometry +{ + Q_OBJECT + Q_PROPERTY( bool hasTopEndcap READ hasTopEndcap WRITE setHasTopEndcap NOTIFY hasTopEndcapChanged ) + Q_PROPERTY( bool hasBottomEndcap READ hasBottomEndcap WRITE setHasBottomEndcap NOTIFY hasBottomEndcapChanged ) + Q_PROPERTY(int rings READ rings WRITE setRings NOTIFY ringsChanged) + Q_PROPERTY(int slices READ slices WRITE setSlices NOTIFY slicesChanged) + Q_PROPERTY( float topRadius READ topRadius WRITE setTopRadius NOTIFY topRadiusChanged ) + Q_PROPERTY( float bottomRadius READ bottomRadius WRITE setBottomRadius NOTIFY bottomRadiusChanged ) + Q_PROPERTY(float length READ length WRITE setLength NOTIFY lengthChanged) + Q_PROPERTY(Qt3DRender::QAttribute *positionAttribute READ positionAttribute CONSTANT) + Q_PROPERTY(Qt3DRender::QAttribute *normalAttribute READ normalAttribute CONSTANT) + Q_PROPERTY(Qt3DRender::QAttribute *texCoordAttribute READ texCoordAttribute CONSTANT) + Q_PROPERTY(Qt3DRender::QAttribute *indexAttribute READ indexAttribute CONSTANT) + +public: + explicit QConeGeometry(QNode *parent = nullptr); + ~QConeGeometry(); + + void updateVertices(); + void updateIndices(); + + bool hasTopEndcap() const; + bool hasBottomEndcap() const; + float topRadius() const; + float bottomRadius() const; + int rings() const; + int slices() const; + float length() const; + + Qt3DRender::QAttribute *positionAttribute() const; + Qt3DRender::QAttribute *normalAttribute() const; + Qt3DRender::QAttribute *texCoordAttribute() const; + Qt3DRender::QAttribute *indexAttribute() const; + +public Q_SLOTS: + void setHasTopEndcap( bool hasTopEndcap ); + void setHasBottomEndcap( bool hasBottomEndcap ); + void setTopRadius( float topRadius ); + void setBottomRadius( float bottomRadius ); + void setRings( int rings ); + void setSlices( int slices ); + void setLength( float length ); + +Q_SIGNALS: + void hasTopEndcapChanged( bool hasTopEndcap ); + void hasBottomEndcapChanged( bool hasBottomEndcap ); + void topRadiusChanged( float topRadius ); + void bottomRadiusChanged( float bottomRadius ); + void ringsChanged( int rings ); + void slicesChanged( int slices ); + void lengthChanged( float length ); + +protected: + QConeGeometry(QConeGeometryPrivate &dd, QNode *parent = nullptr); + +private: + Q_DECLARE_PRIVATE(QConeGeometry) +}; + +} // namespace Qt3DExtras + +QT_END_NAMESPACE + +#endif // QT3DEXTRAS_QCONEGEOMETRY_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qconemesh.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qconemesh.h new file mode 100644 index 0000000..c32070e --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qconemesh.h @@ -0,0 +1,108 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DEXTRAS_QCONEMESH_H +#define QT3DEXTRAS_QCONEMESH_H + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DExtras { + +class QT3DEXTRASSHARED_EXPORT QConeMesh : public Qt3DRender::QGeometryRenderer +{ + Q_OBJECT + Q_PROPERTY(int rings READ rings WRITE setRings NOTIFY ringsChanged) + Q_PROPERTY(int slices READ slices WRITE setSlices NOTIFY slicesChanged) + Q_PROPERTY( bool hasTopEndcap READ hasTopEndcap WRITE setHasTopEndcap NOTIFY hasTopEndcapChanged ) + Q_PROPERTY( bool hasBottomEndcap READ hasBottomEndcap WRITE setHasBottomEndcap NOTIFY hasBottomEndcapChanged ) + Q_PROPERTY( float topRadius READ topRadius WRITE setTopRadius NOTIFY topRadiusChanged ) + Q_PROPERTY( float bottomRadius READ bottomRadius WRITE setBottomRadius NOTIFY bottomRadiusChanged ) + Q_PROPERTY(float length READ length WRITE setLength NOTIFY lengthChanged) +public: + explicit QConeMesh(Qt3DCore::QNode *parent = nullptr); + ~QConeMesh(); + + int rings() const; + int slices() const; + bool hasTopEndcap() const; + bool hasBottomEndcap() const; + float topRadius() const; + float bottomRadius() const; + float length() const; + +public Q_SLOTS: + void setHasTopEndcap( bool hasTopEndcap ); + void setHasBottomEndcap( bool hasBottomEndcap ); + void setTopRadius( float topRadius ); + void setBottomRadius( float bottomRadius ); + void setRings( int rings ); + void setSlices( int slices ); + void setLength( float length ); + +Q_SIGNALS: + void hasTopEndcapChanged( bool hasTopEndcap ); + void hasBottomEndcapChanged( bool hasBottomEndcap ); + void topRadiusChanged( float topRadius ); + void bottomRadiusChanged( float bottomRadius ); + void ringsChanged( int rings ); + void slicesChanged( int slices ); + void lengthChanged( float length ); + +private: + // As this is a default provided geometry renderer, no one should be able + // to modify the QGeometryRenderer's properties + + void setInstanceCount(int instanceCount); + void setVertexCount(int vertexCount); + void setIndexOffset(int indexOffset); + void setFirstInstance(int firstInstance); + void setRestartIndexValue(int index); + void setPrimitiveRestartEnabled(bool enabled); + void setGeometry(Qt3DRender::QGeometry *geometry); + void setPrimitiveType(PrimitiveType primitiveType); +}; + +} // namespace Qt3DExtras + +QT_END_NAMESPACE + +#endif // QT3DEXTRAS_QCONEMESH_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qcuboidgeometry.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qcuboidgeometry.h new file mode 100644 index 0000000..2c295d6 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qcuboidgeometry.h @@ -0,0 +1,122 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DEXTRAS_QCUBOIDGEOMETRY_H +#define QT3DEXTRAS_QCUBOIDGEOMETRY_H + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QAttribute; + +} // Qt3DRender + +namespace Qt3DExtras { + +class QCuboidGeometryPrivate; + +class QT3DEXTRASSHARED_EXPORT QCuboidGeometry : public Qt3DRender::QGeometry +{ + Q_OBJECT + Q_PROPERTY(float xExtent READ xExtent WRITE setXExtent NOTIFY xExtentChanged) + Q_PROPERTY(float yExtent READ yExtent WRITE setYExtent NOTIFY yExtentChanged) + Q_PROPERTY(float zExtent READ zExtent WRITE setZExtent NOTIFY zExtentChanged) + Q_PROPERTY(QSize xyMeshResolution READ xyMeshResolution WRITE setXYMeshResolution NOTIFY xyMeshResolutionChanged) + Q_PROPERTY(QSize yzMeshResolution READ yzMeshResolution WRITE setYZMeshResolution NOTIFY yzMeshResolutionChanged) + Q_PROPERTY(QSize xzMeshResolution READ xzMeshResolution WRITE setXZMeshResolution NOTIFY xzMeshResolutionChanged) + Q_PROPERTY(Qt3DRender::QAttribute *positionAttribute READ positionAttribute CONSTANT) + Q_PROPERTY(Qt3DRender::QAttribute *normalAttribute READ normalAttribute CONSTANT) + Q_PROPERTY(Qt3DRender::QAttribute *texCoordAttribute READ texCoordAttribute CONSTANT) + Q_PROPERTY(Qt3DRender::QAttribute *tangentAttribute READ tangentAttribute CONSTANT) + Q_PROPERTY(Qt3DRender::QAttribute *indexAttribute READ indexAttribute CONSTANT) + +public: + explicit QCuboidGeometry(QNode *parent = nullptr); + ~QCuboidGeometry(); + + void updateIndices(); + void updateVertices(); + + float xExtent() const; + float yExtent() const; + float zExtent() const; + QSize yzMeshResolution() const; + QSize xyMeshResolution() const; + QSize xzMeshResolution() const; + + Qt3DRender::QAttribute *positionAttribute() const; + Qt3DRender::QAttribute *normalAttribute() const; + Qt3DRender::QAttribute *texCoordAttribute() const; + Qt3DRender::QAttribute *tangentAttribute() const; + Qt3DRender::QAttribute *indexAttribute() const; + +public Q_SLOTS: + void setXExtent(float xExtent); + void setYExtent(float yExtent); + void setZExtent(float zExtent); + void setYZMeshResolution(const QSize &resolution); + void setXZMeshResolution(const QSize &resolution); + void setXYMeshResolution(const QSize &resolution); + +Q_SIGNALS: + void xExtentChanged(float xExtent); + void yExtentChanged(float yExtent); + void zExtentChanged(float zExtent); + + void yzMeshResolutionChanged(const QSize &yzMeshResolution); + void xzMeshResolutionChanged(const QSize &xzMeshResolution); + void xyMeshResolutionChanged(const QSize &xyMeshResolution); + +protected: + QCuboidGeometry(QCuboidGeometryPrivate &dd, QNode *parent = nullptr); + +private: + Q_DECLARE_PRIVATE(QCuboidGeometry) +}; + +} // Qt3DExtras + +QT_END_NAMESPACE + +#endif // QT3DEXTRAS_QCUBOIDGEOMETRY_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qcuboidmesh.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qcuboidmesh.h new file mode 100644 index 0000000..ca33c5f --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qcuboidmesh.h @@ -0,0 +1,108 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DEXTRAS_CUBOIDMESH_H +#define QT3DEXTRAS_CUBOIDMESH_H + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DExtras { + +class QT3DEXTRASSHARED_EXPORT QCuboidMesh : public Qt3DRender::QGeometryRenderer +{ + Q_OBJECT + + Q_PROPERTY(float xExtent READ xExtent WRITE setXExtent NOTIFY xExtentChanged) + Q_PROPERTY(float yExtent READ yExtent WRITE setYExtent NOTIFY yExtentChanged) + Q_PROPERTY(float zExtent READ zExtent WRITE setZExtent NOTIFY zExtentChanged) + Q_PROPERTY(QSize yzMeshResolution READ yzMeshResolution WRITE setYZMeshResolution NOTIFY yzMeshResolutionChanged) + Q_PROPERTY(QSize xzMeshResolution READ xzMeshResolution WRITE setXZMeshResolution NOTIFY xzMeshResolutionChanged) + Q_PROPERTY(QSize xyMeshResolution READ xyMeshResolution WRITE setXYMeshResolution NOTIFY xyMeshResolutionChanged) + +public: + explicit QCuboidMesh(Qt3DCore::QNode *parent = nullptr); + ~QCuboidMesh(); + + float xExtent() const; + float yExtent() const; + float zExtent() const; + QSize yzMeshResolution() const; + QSize xzMeshResolution() const; + QSize xyMeshResolution() const; + +public Q_SLOTS: + void setXExtent(float xExtent); + void setYExtent(float yExtent); + void setZExtent(float zExtent); + void setYZMeshResolution(const QSize &resolution); + void setXZMeshResolution(const QSize &resolution); + void setXYMeshResolution(const QSize &resolution); + +Q_SIGNALS: + void xExtentChanged(float xExtent); + void yExtentChanged(float yExtent); + void zExtentChanged(float zExtent); + + void yzMeshResolutionChanged(const QSize &yzMeshResolution); + void xzMeshResolutionChanged(const QSize &xzMeshResolution); + void xyMeshResolutionChanged(const QSize &xyMeshResolution); + +private: + // As this is a default provided geometry renderer, no one should be able + // to modify the QGeometryRenderer's properties + + void setInstanceCount(int instanceCount); + void setVertexCount(int vertexCount); + void setIndexOffset(int indexOffset); + void setFirstInstance(int firstInstance); + void setRestartIndexValue(int index); + void setPrimitiveRestartEnabled(bool enabled); + void setGeometry(Qt3DRender::QGeometry *geometry); + void setPrimitiveType(PrimitiveType primitiveType); +}; + +} // namespace Qt3DExtras + +QT_END_NAMESPACE + +#endif // QT3DEXTRAS_CUBOIDMESH_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qcylindergeometry.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qcylindergeometry.h new file mode 100644 index 0000000..add4a7d --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qcylindergeometry.h @@ -0,0 +1,109 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DEXTRAS_QCYLINDERGEOMETRY_H +#define QT3DEXTRAS_QCYLINDERGEOMETRY_H + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QAttribute; + +} // namespace Qt3DRender + +namespace Qt3DExtras { + +class QCylinderGeometryPrivate; +class QT3DEXTRASSHARED_EXPORT QCylinderGeometry : public Qt3DRender::QGeometry +{ + Q_OBJECT + Q_PROPERTY(int rings READ rings WRITE setRings NOTIFY ringsChanged) + Q_PROPERTY(int slices READ slices WRITE setSlices NOTIFY slicesChanged) + Q_PROPERTY(float radius READ radius WRITE setRadius NOTIFY radiusChanged) + Q_PROPERTY(float length READ length WRITE setLength NOTIFY lengthChanged) + Q_PROPERTY(Qt3DRender::QAttribute *positionAttribute READ positionAttribute CONSTANT) + Q_PROPERTY(Qt3DRender::QAttribute *normalAttribute READ normalAttribute CONSTANT) + Q_PROPERTY(Qt3DRender::QAttribute *texCoordAttribute READ texCoordAttribute CONSTANT) + Q_PROPERTY(Qt3DRender::QAttribute *indexAttribute READ indexAttribute CONSTANT) + +public: + explicit QCylinderGeometry(QNode *parent = nullptr); + ~QCylinderGeometry(); + + void updateVertices(); + void updateIndices(); + + int rings() const; + int slices() const; + float radius() const; + float length() const; + + Qt3DRender::QAttribute *positionAttribute() const; + Qt3DRender::QAttribute *normalAttribute() const; + Qt3DRender::QAttribute *texCoordAttribute() const; + Qt3DRender::QAttribute *indexAttribute() const; + +public Q_SLOTS: + void setRings(int rings); + void setSlices(int slices); + void setRadius(float radius); + void setLength(float length); + +Q_SIGNALS: + void radiusChanged(float radius); + void ringsChanged(int rings); + void slicesChanged(int slices); + void lengthChanged(float length); + +protected: + QCylinderGeometry(QCylinderGeometryPrivate &dd, QNode *parent = nullptr); + +private: + Q_DECLARE_PRIVATE(QCylinderGeometry) +}; + +} // Qt3DExtras + +QT_END_NAMESPACE + +#endif // QT3DEXTRAS_QCYLINDERGEOMETRY_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qcylindermesh.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qcylindermesh.h new file mode 100644 index 0000000..3083ed8 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qcylindermesh.h @@ -0,0 +1,97 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DEXTRAS_QCYLINDERMESH_H +#define QT3DEXTRAS_QCYLINDERMESH_H + +#include +#include + +QT_BEGIN_NAMESPACE + + +namespace Qt3DExtras { + +class QT3DEXTRASSHARED_EXPORT QCylinderMesh : public Qt3DRender::QGeometryRenderer +{ + Q_OBJECT + Q_PROPERTY(int rings READ rings WRITE setRings NOTIFY ringsChanged) + Q_PROPERTY(int slices READ slices WRITE setSlices NOTIFY slicesChanged) + Q_PROPERTY(float radius READ radius WRITE setRadius NOTIFY radiusChanged) + Q_PROPERTY(float length READ length WRITE setLength NOTIFY lengthChanged) +public: + explicit QCylinderMesh(Qt3DCore::QNode *parent = nullptr); + ~QCylinderMesh(); + + int rings() const; + int slices() const; + float radius() const; + float length() const; + +public Q_SLOTS: + void setRings(int rings); + void setSlices(int slices); + void setRadius(float radius); + void setLength(float length); + +Q_SIGNALS: + void radiusChanged(float radius); + void ringsChanged(int rings); + void slicesChanged(int slices); + void lengthChanged(float length); + +private: + // As this is a default provided geometry renderer, no one should be able + // to modify the QGeometryRenderer's properties + + void setInstanceCount(int instanceCount); + void setVertexCount(int vertexCount); + void setIndexOffset(int indexOffset); + void setFirstInstance(int firstInstance); + void setRestartIndexValue(int index); + void setPrimitiveRestartEnabled(bool enabled); + void setGeometry(Qt3DRender::QGeometry *geometry); + void setPrimitiveType(PrimitiveType primitiveType); +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DEXTRAS_QCYLINDERMESH_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qdiffusemapmaterial.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qdiffusemapmaterial.h new file mode 100644 index 0000000..e6c632e --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qdiffusemapmaterial.h @@ -0,0 +1,100 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DEXTRAS_QDIFFUSEMAPMATERIAL_H +#define QT3DEXTRAS_QDIFFUSEMAPMATERIAL_H + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QAbstractTexture; + +} // namespace Qt3DRender + +namespace Qt3DExtras { + +class QDiffuseMapMaterialPrivate; + +class QT3DEXTRASSHARED_EXPORT QDiffuseMapMaterial : public Qt3DRender::QMaterial +{ + Q_OBJECT + Q_PROPERTY(QColor ambient READ ambient WRITE setAmbient NOTIFY ambientChanged) + Q_PROPERTY(QColor specular READ specular WRITE setSpecular NOTIFY specularChanged) + Q_PROPERTY(float shininess READ shininess WRITE setShininess NOTIFY shininessChanged) + Q_PROPERTY(Qt3DRender::QAbstractTexture *diffuse READ diffuse WRITE setDiffuse NOTIFY diffuseChanged) + Q_PROPERTY(float textureScale READ textureScale WRITE setTextureScale NOTIFY textureScaleChanged) + +public: + explicit QDiffuseMapMaterial(Qt3DCore::QNode *parent = nullptr); + ~QDiffuseMapMaterial(); + + QColor ambient() const; + QColor specular() const; + float shininess() const; + Qt3DRender::QAbstractTexture *diffuse() const; + float textureScale() const; + +public Q_SLOTS: + void setAmbient(const QColor &color); + void setSpecular(const QColor &specular); + void setShininess(float shininess); + void setDiffuse(Qt3DRender::QAbstractTexture *diffuse); + void setTextureScale(float textureScale); + +Q_SIGNALS: + void ambientChanged(const QColor &ambient); + void diffuseChanged(Qt3DRender::QAbstractTexture *diffuse); + void specularChanged(const QColor &specular); + void shininessChanged(float shininess); + void textureScaleChanged(float textureScale); + +private: + Q_DECLARE_PRIVATE(QDiffuseMapMaterial) +}; + +} // Qt3DExtras + +QT_END_NAMESPACE + +#endif // QT3DEXTRASQDIFFUSEMAPMATERIAL_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qdiffusespecularmapmaterial.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qdiffusespecularmapmaterial.h new file mode 100644 index 0000000..d869486 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qdiffusespecularmapmaterial.h @@ -0,0 +1,99 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DEXTRAS_QDIFFUSESPECULARMAPMATERIAL_H +#define QT3DEXTRAS_QDIFFUSESPECULARMAPMATERIAL_H + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QAbstractTexture; +} // namespace Qt3DRender + +namespace Qt3DExtras { + +class QDiffuseSpecularMapMaterialPrivate; + +class QT3DEXTRASSHARED_EXPORT QDiffuseSpecularMapMaterial : public Qt3DRender::QMaterial +{ + Q_OBJECT + Q_PROPERTY(QColor ambient READ ambient WRITE setAmbient NOTIFY ambientChanged) + Q_PROPERTY(float shininess READ shininess WRITE setShininess NOTIFY shininessChanged) + Q_PROPERTY(Qt3DRender::QAbstractTexture *specular READ specular WRITE setSpecular NOTIFY specularChanged) + Q_PROPERTY(Qt3DRender::QAbstractTexture *diffuse READ diffuse WRITE setDiffuse NOTIFY diffuseChanged) + Q_PROPERTY(float textureScale READ textureScale WRITE setTextureScale NOTIFY textureScaleChanged) + +public: + explicit QDiffuseSpecularMapMaterial(Qt3DCore::QNode *parent = nullptr); + ~QDiffuseSpecularMapMaterial(); + + QColor ambient() const; + Qt3DRender::QAbstractTexture *diffuse() const; + Qt3DRender::QAbstractTexture *specular() const; + float shininess() const; + float textureScale() const; + +public Q_SLOTS: + void setAmbient(const QColor &ambient); + void setDiffuse(Qt3DRender::QAbstractTexture *diffuse); + void setSpecular(Qt3DRender::QAbstractTexture *specular); + void setShininess(float shininess); + void setTextureScale(float textureScale); + +Q_SIGNALS: + void ambientChanged(const QColor &ambient); + void diffuseChanged(Qt3DRender::QAbstractTexture *diffuse); + void specularChanged(Qt3DRender::QAbstractTexture *specular); + void shininessChanged(float shininess); + void textureScaleChanged(float textureScale); + +private: + Q_DECLARE_PRIVATE(QDiffuseSpecularMapMaterial) +}; + +} // Qt3DExtras + +QT_END_NAMESPACE + +#endif // QT3DEXTRAS_QDIFFUSESPECULARMAPMATERIAL_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qdiffusespecularmaterial.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qdiffusespecularmaterial.h new file mode 100644 index 0000000..5f21da0 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qdiffusespecularmaterial.h @@ -0,0 +1,102 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DEXTRAS_QDIFFUSESPECULARMATERIAL_H +#define QT3DEXTRAS_QDIFFUSESPECULARMATERIAL_H + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DExtras { + +class QDiffuseSpecularMaterialPrivate; + +class QT3DEXTRASSHARED_EXPORT QDiffuseSpecularMaterial : public Qt3DRender::QMaterial +{ + Q_OBJECT + Q_PROPERTY(QColor ambient READ ambient WRITE setAmbient NOTIFY ambientChanged) + Q_PROPERTY(QVariant diffuse READ diffuse WRITE setDiffuse NOTIFY diffuseChanged) + Q_PROPERTY(QVariant specular READ specular WRITE setSpecular NOTIFY specularChanged) + Q_PROPERTY(float shininess READ shininess WRITE setShininess NOTIFY shininessChanged) + Q_PROPERTY(QVariant normal READ normal WRITE setNormal NOTIFY normalChanged) + Q_PROPERTY(float textureScale READ textureScale WRITE setTextureScale NOTIFY textureScaleChanged) + Q_PROPERTY(bool alphaBlending READ isAlphaBlendingEnabled WRITE setAlphaBlendingEnabled NOTIFY alphaBlendingEnabledChanged) + +public: + explicit QDiffuseSpecularMaterial(Qt3DCore::QNode *parent = nullptr); + ~QDiffuseSpecularMaterial(); + + QColor ambient() const; + QVariant diffuse() const; + QVariant specular() const; + float shininess() const; + QVariant normal() const; + float textureScale() const; + bool isAlphaBlendingEnabled() const; + +public Q_SLOTS: + void setAmbient(const QColor &ambient); + void setDiffuse(const QVariant &diffuse); + void setSpecular(const QVariant &specular); + void setShininess(float shininess); + void setNormal(const QVariant &normal); + void setTextureScale(float textureScale); + void setAlphaBlendingEnabled(bool enabled); + +Q_SIGNALS: + void ambientChanged(const QColor &ambient); + void diffuseChanged(const QVariant &diffuse); + void specularChanged(const QVariant &specular); + void shininessChanged(float shininess); + void normalChanged(const QVariant &normal); + void textureScaleChanged(float textureScale); + void alphaBlendingEnabledChanged(bool enabled); + +private: + Q_DECLARE_PRIVATE(QDiffuseSpecularMaterial) +}; + +} // namespace Qt3DExtras + +QT_END_NAMESPACE + +#endif // QT3DEXTRAS_QDIFFUSESPECULARMATERIAL_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qextrudedtextgeometry.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qextrudedtextgeometry.h new file mode 100644 index 0000000..d6e682d --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qextrudedtextgeometry.h @@ -0,0 +1,113 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:BSD$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** BSD License Usage +** Alternatively, you may use this file under the terms of the BSD license +** as follows: +** +** "Redistribution and use in source and binary forms, with or without +** modification, are permitted provided that the following conditions are +** met: +** * Redistributions of source code must retain the above copyright +** notice, this list of conditions and the following disclaimer. +** * Redistributions in binary form must reproduce the above copyright +** notice, this list of conditions and the following disclaimer in +** the documentation and/or other materials provided with the +** distribution. +** * Neither the name of The Qt Company Ltd nor the names of its +** contributors may be used to endorse or promote products derived +** from this software without specific prior written permission. +** +** +** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DEXTRAS_QEXTRUDEDTEXTGEOMETRY_H +#define QT3DEXTRAS_QEXTRUDEDTEXTGEOMETRY_H + +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QAttribute; + +} // namespace Qt3DRender + +namespace Qt3DExtras { + +class QExtrudedTextGeometryPrivate; + +class QT3DEXTRASSHARED_EXPORT QExtrudedTextGeometry : public Qt3DRender::QGeometry +{ + Q_OBJECT + Q_PROPERTY(QString text READ text WRITE setText NOTIFY textChanged) + Q_PROPERTY(QFont font READ font WRITE setFont NOTIFY fontChanged) + Q_PROPERTY(float extrusionLength READ extrusionLength WRITE setDepth NOTIFY depthChanged) + Q_PROPERTY(Qt3DRender::QAttribute *positionAttribute READ positionAttribute CONSTANT) + Q_PROPERTY(Qt3DRender::QAttribute *normalAttribute READ normalAttribute CONSTANT) + Q_PROPERTY(Qt3DRender::QAttribute *indexAttribute READ indexAttribute CONSTANT) + +public: + explicit QExtrudedTextGeometry(Qt3DCore::QNode *parent = nullptr); + ~QExtrudedTextGeometry(); + + Qt3DRender::QAttribute *positionAttribute() const; + Qt3DRender::QAttribute *normalAttribute() const; + Qt3DRender::QAttribute *indexAttribute() const; + QString text() const; + QFont font() const; + float extrusionLength() const; + +public Q_SLOTS: + void setText(const QString &text); + void setFont(const QFont &font); + void setDepth(float extrusionLength); + +Q_SIGNALS: + void textChanged(const QString &text); + void fontChanged(const QFont &font); + void depthChanged(float extrusionLength); + +protected: + explicit QExtrudedTextGeometry(QExtrudedTextGeometryPrivate &dd, QNode *parent = nullptr); + +private: + Q_DECLARE_PRIVATE(QExtrudedTextGeometry) +}; + +} // namespace Qt3DExtras + +QT_END_NAMESPACE + +#endif // QT3DEXTRAS_QEXTRUDEDTEXTGEOMETRY_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qextrudedtextmesh.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qextrudedtextmesh.h new file mode 100644 index 0000000..ea30540 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qextrudedtextmesh.h @@ -0,0 +1,93 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:BSD$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** BSD License Usage +** Alternatively, you may use this file under the terms of the BSD license +** as follows: +** +** "Redistribution and use in source and binary forms, with or without +** modification, are permitted provided that the following conditions are +** met: +** * Redistributions of source code must retain the above copyright +** notice, this list of conditions and the following disclaimer. +** * Redistributions in binary form must reproduce the above copyright +** notice, this list of conditions and the following disclaimer in +** the documentation and/or other materials provided with the +** distribution. +** * Neither the name of The Qt Company Ltd nor the names of its +** contributors may be used to endorse or promote products derived +** from this software without specific prior written permission. +** +** +** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DEXTRAS_QEXTRUDEDTEXTMESH_H +#define QT3DEXTRAS_QEXTRUDEDTEXTMESH_H + +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DExtras { + +class QT3DEXTRASSHARED_EXPORT QExtrudedTextMesh : public Qt3DRender::QGeometryRenderer +{ + Q_OBJECT + Q_PROPERTY(QString text READ text WRITE setText NOTIFY textChanged) + Q_PROPERTY(QFont font READ font WRITE setFont NOTIFY fontChanged) + Q_PROPERTY(float depth READ depth WRITE setDepth NOTIFY depthChanged) + +public: + explicit QExtrudedTextMesh(Qt3DCore::QNode *parent = nullptr); + ~QExtrudedTextMesh(); + + QString text() const; + QFont font() const; + float depth() const; + +public Q_SLOTS: + void setText(const QString &text); + void setFont(const QFont &font); + void setDepth(float depth); + +Q_SIGNALS: + void textChanged(const QString &text); + void fontChanged(const QFont &font); + void depthChanged(float depth); +}; + +} // namespace Qt3DExtras + +QT_END_NAMESPACE + +#endif // QT3DEXTRAS_QEXTRUDEDTEXTMESH_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qfirstpersoncameracontroller.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qfirstpersoncameracontroller.h new file mode 100644 index 0000000..60edf7c --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qfirstpersoncameracontroller.h @@ -0,0 +1,62 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DEXTRAS_QFIRSTPERSONCAMERACONTROLLER_H +#define QT3DEXTRAS_QFIRSTPERSONCAMERACONTROLLER_H + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DExtras { + +class QT3DEXTRASSHARED_EXPORT QFirstPersonCameraController : public QAbstractCameraController +{ + Q_OBJECT + +public: + explicit QFirstPersonCameraController(Qt3DCore::QNode *parent = nullptr); + ~QFirstPersonCameraController(); + +private: + void moveCamera(const QAbstractCameraController::InputState &state, float dt) override; +}; + +} // Qt3DExtras + +QT_END_NAMESPACE + +#endif // QT3DEXTRAS_QFIRSTPERSONCAMERACONTROLLER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qforwardrenderer.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qforwardrenderer.h new file mode 100644 index 0000000..7b60781 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qforwardrenderer.h @@ -0,0 +1,106 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DEXTRAS_QFORWARDRENDERER_H +#define QT3DEXTRAS_QFORWARDRENDERER_H + +#include +#include +#include +#include + + +QT_BEGIN_NAMESPACE + +class QSurface; + +namespace Qt3DExtras { + +class QForwardRendererPrivate; + +class QT3DEXTRASSHARED_EXPORT QForwardRenderer : public Qt3DRender::QTechniqueFilter +{ + Q_OBJECT + Q_PROPERTY(QObject *surface READ surface WRITE setSurface NOTIFY surfaceChanged) + Q_PROPERTY(QObject *window READ surface WRITE setSurface NOTIFY surfaceChanged) + Q_PROPERTY(QRectF viewportRect READ viewportRect WRITE setViewportRect NOTIFY viewportRectChanged) + Q_PROPERTY(QColor clearColor READ clearColor WRITE setClearColor NOTIFY clearColorChanged) + Q_PROPERTY(Qt3DCore::QEntity *camera READ camera WRITE setCamera NOTIFY cameraChanged) + Q_PROPERTY(QSize externalRenderTargetSize READ externalRenderTargetSize WRITE setExternalRenderTargetSize NOTIFY externalRenderTargetSizeChanged) + Q_PROPERTY(bool frustumCulling READ isFrustumCullingEnabled WRITE setFrustumCullingEnabled NOTIFY frustumCullingEnabledChanged) + Q_PROPERTY(float gamma READ gamma WRITE setGamma NOTIFY gammaChanged REVISION 9) +public: + explicit QForwardRenderer(Qt3DCore::QNode *parent = nullptr); + ~QForwardRenderer(); + + QRectF viewportRect() const; + QColor clearColor() const; + Qt3DCore::QEntity *camera() const; + QObject *surface() const; + QSize externalRenderTargetSize() const; + bool isFrustumCullingEnabled() const; + float gamma() const; + +public Q_SLOTS: + void setViewportRect(const QRectF &viewportRect); + void setClearColor(const QColor &clearColor); + void setCamera(Qt3DCore::QEntity *camera); + void setSurface(QObject * surface); + void setExternalRenderTargetSize(const QSize &size); + void setFrustumCullingEnabled(bool enabled); + void setGamma(float gamma); + +Q_SIGNALS: + void viewportRectChanged(const QRectF &viewportRect); + void clearColorChanged(const QColor &clearColor); + void cameraChanged(Qt3DCore::QEntity *camera); + void surfaceChanged(QObject *surface); + void externalRenderTargetSizeChanged(const QSize &size); + void frustumCullingEnabledChanged(bool enabled); + void gammaChanged(float gamma); + +private: + Q_DECLARE_PRIVATE(QForwardRenderer) +}; + +} // namespace Qt3DExtras + +QT_END_NAMESPACE + +#endif // QT3DEXTRAS_QFORWARDRENDERER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qgoochmaterial.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qgoochmaterial.h new file mode 100644 index 0000000..6afddfe --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qgoochmaterial.h @@ -0,0 +1,105 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DEXTRAS_QGOOCHMATERIAL_H +#define QT3DEXTRAS_QGOOCHMATERIAL_H + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DExtras { + +class QGoochMaterialPrivate; + +class QT3DEXTRASSHARED_EXPORT QGoochMaterial : public Qt3DRender::QMaterial +{ + Q_OBJECT + Q_PROPERTY(QColor diffuse READ diffuse WRITE setDiffuse NOTIFY diffuseChanged) + Q_PROPERTY(QColor specular READ specular WRITE setSpecular NOTIFY specularChanged) + Q_PROPERTY(QColor cool READ cool WRITE setCool NOTIFY coolChanged) + Q_PROPERTY(QColor warm READ warm WRITE setWarm NOTIFY warmChanged) + Q_PROPERTY(float alpha READ alpha WRITE setAlpha NOTIFY alphaChanged) + Q_PROPERTY(float beta READ beta WRITE setBeta NOTIFY betaChanged) + Q_PROPERTY(float shininess READ shininess WRITE setShininess NOTIFY shininessChanged) + +public: + explicit QGoochMaterial(Qt3DCore::QNode *parent = nullptr); + ~QGoochMaterial(); + + QColor diffuse() const; + QColor specular() const; + QColor cool() const; + QColor warm() const; + float alpha() const; + float beta() const; + float shininess() const; + +public Q_SLOTS: + void setDiffuse(const QColor &diffuse); + void setSpecular(const QColor &specular); + void setCool(const QColor &cool); + void setWarm(const QColor &warm); + void setAlpha(float alpha); + void setBeta(float beta); + void setShininess(float shininess); + +Q_SIGNALS: + void diffuseChanged(const QColor &diffuse); + void specularChanged(const QColor &specular); + void coolChanged(const QColor &cool); + void warmChanged(const QColor &warm); + void alphaChanged(float alpha); + void betaChanged(float beta); + void shininessChanged(float shininess); + +protected: + explicit QGoochMaterial(QGoochMaterialPrivate &dd, Qt3DCore::QNode *parent = nullptr); + +private: + Q_DECLARE_PRIVATE(QGoochMaterial) +}; + +} // namespace Qt3DExtras + +QT_END_NAMESPACE + +#endif // QT3DEXTRAS_QGOOCHMATERIAL_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qmetalroughmaterial.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qmetalroughmaterial.h new file mode 100644 index 0000000..4004373 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qmetalroughmaterial.h @@ -0,0 +1,105 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DEXTRAS_QMETALROUGHMATERIAL_H +#define QT3DEXTRAS_QMETALROUGHMATERIAL_H + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { +class QAbstractTexture; +} + +namespace Qt3DExtras { + +class QMetalRoughMaterialPrivate; + +class QT3DEXTRASSHARED_EXPORT QMetalRoughMaterial : public Qt3DRender::QMaterial +{ + Q_OBJECT + Q_PROPERTY(QVariant baseColor READ baseColor WRITE setBaseColor NOTIFY baseColorChanged) + Q_PROPERTY(QVariant metalness READ metalness WRITE setMetalness NOTIFY metalnessChanged) + Q_PROPERTY(QVariant roughness READ roughness WRITE setRoughness NOTIFY roughnessChanged) + Q_PROPERTY(QVariant ambientOcclusion READ ambientOcclusion WRITE setAmbientOcclusion NOTIFY ambientOcclusionChanged REVISION 10) + Q_PROPERTY(QVariant normal READ normal WRITE setNormal NOTIFY normalChanged REVISION 10) + Q_PROPERTY(float textureScale READ textureScale WRITE setTextureScale NOTIFY textureScaleChanged REVISION 10) + +public: + explicit QMetalRoughMaterial(Qt3DCore::QNode *parent = nullptr); + ~QMetalRoughMaterial(); + + QVariant baseColor() const; + QVariant metalness() const; + QVariant roughness() const; + QVariant ambientOcclusion() const; + QVariant normal() const; + float textureScale() const; + +public Q_SLOTS: + void setBaseColor(const QVariant &baseColor); + void setMetalness(const QVariant &metalness); + void setRoughness(const QVariant &roughness); + void setAmbientOcclusion(const QVariant &ambientOcclusion); + void setNormal(const QVariant &normal); + void setTextureScale(float textureScale); + +Q_SIGNALS: + void baseColorChanged(const QVariant &baseColor); + void metalnessChanged(const QVariant &metalness); + void roughnessChanged(const QVariant &roughness); + void ambientOcclusionChanged(const QVariant &ambientOcclusion); + void normalChanged(const QVariant &normal); + void textureScaleChanged(float textureScale); + +protected: + explicit QMetalRoughMaterial(QMetalRoughMaterialPrivate &dd, Qt3DCore::QNode *parent = nullptr); + +private: + Q_DECLARE_PRIVATE(QMetalRoughMaterial) +}; + +} // namespace Qt3DExtras + +QT_END_NAMESPACE + +#endif // QT3DEXTRAS_QMETALROUGHMATERIAL_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qmorphphongmaterial.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qmorphphongmaterial.h new file mode 100644 index 0000000..235426f --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qmorphphongmaterial.h @@ -0,0 +1,92 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: http://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DEXTRAS_QMORPHPHONGMATERIAL_H +#define QT3DEXTRAS_QMORPHPHONGMATERIAL_H + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DExtras { + +class QMorphPhongMaterialPrivate; + +class QT3DEXTRASSHARED_EXPORT QMorphPhongMaterial : public Qt3DRender::QMaterial +{ + Q_OBJECT + Q_PROPERTY(QColor ambient READ ambient WRITE setAmbient NOTIFY ambientChanged) + Q_PROPERTY(QColor diffuse READ diffuse WRITE setDiffuse NOTIFY diffuseChanged) + Q_PROPERTY(QColor specular READ specular WRITE setSpecular NOTIFY specularChanged) + Q_PROPERTY(float shininess READ shininess WRITE setShininess NOTIFY shininessChanged) + Q_PROPERTY(float interpolator READ interpolator WRITE setInterpolator NOTIFY interpolatorChanged) + +public: + explicit QMorphPhongMaterial(Qt3DCore::QNode *parent = nullptr); + ~QMorphPhongMaterial(); + + QColor ambient() const; + QColor diffuse() const; + QColor specular() const; + float shininess() const; + float interpolator() const; + +public Q_SLOTS: + void setAmbient(const QColor &ambient); + void setDiffuse(const QColor &diffuse); + void setSpecular(const QColor &specular); + void setShininess(float shininess); + void setInterpolator(float interpolator); + +Q_SIGNALS: + void ambientChanged(const QColor &ambient); + void diffuseChanged(const QColor &diffuse); + void specularChanged(const QColor &specular); + void shininessChanged(float shininess); + void interpolatorChanged(float interpolator); + +private: + Q_DECLARE_PRIVATE(QMorphPhongMaterial) +}; + +} // namespace Qt3DExtras + +QT_END_NAMESPACE + +#endif // QT3DEXTRAS_QMORPHPHONGMATERIAL_H + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qnormaldiffusemapalphamaterial.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qnormaldiffusemapalphamaterial.h new file mode 100644 index 0000000..040199b --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qnormaldiffusemapalphamaterial.h @@ -0,0 +1,67 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DEXTRAS_QNORMALDIFFUSEMAPALPHAMATERIAL_H +#define QT3DEXTRAS_QNORMALDIFFUSEMAPALPHAMATERIAL_H + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DExtras { + +class QNormalDiffuseMapAlphaMaterialPrivate; + +class QT3DEXTRASSHARED_EXPORT QNormalDiffuseMapAlphaMaterial : public QNormalDiffuseMapMaterial +{ + Q_OBJECT +public: + explicit QNormalDiffuseMapAlphaMaterial(Qt3DCore::QNode *parent = nullptr); + ~QNormalDiffuseMapAlphaMaterial(); + +private: + Q_DECLARE_PRIVATE(QNormalDiffuseMapAlphaMaterial) +}; + +} // namespace Qt3DExtras + +QT_END_NAMESPACE + +#endif // QT3DEXTRAS_QNORMALDIFFUSEMAPALPHAMATERIAL_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qnormaldiffusemapmaterial.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qnormaldiffusemapmaterial.h new file mode 100644 index 0000000..c38d533 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qnormaldiffusemapmaterial.h @@ -0,0 +1,107 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DEXTRAS_QNORMALDIFFUSEMAPMATERIAL_H +#define QT3DEXTRAS_QNORMALDIFFUSEMAPMATERIAL_H + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QAbstractTexture; + +} // namespace Qt3DRender + +namespace Qt3DExtras { + +class QNormalDiffuseMapMaterialPrivate; + +class QT3DEXTRASSHARED_EXPORT QNormalDiffuseMapMaterial : public Qt3DRender::QMaterial +{ + Q_OBJECT + Q_PROPERTY(QColor ambient READ ambient WRITE setAmbient NOTIFY ambientChanged) + Q_PROPERTY(QColor specular READ specular WRITE setSpecular NOTIFY specularChanged) + Q_PROPERTY(Qt3DRender::QAbstractTexture *diffuse READ diffuse WRITE setDiffuse NOTIFY diffuseChanged) + Q_PROPERTY(Qt3DRender::QAbstractTexture *normal READ normal WRITE setNormal NOTIFY normalChanged) + Q_PROPERTY(float shininess READ shininess WRITE setShininess NOTIFY shininessChanged) + Q_PROPERTY(float textureScale READ textureScale WRITE setTextureScale NOTIFY textureScaleChanged) + +public: + explicit QNormalDiffuseMapMaterial(Qt3DCore::QNode *parent = nullptr); + ~QNormalDiffuseMapMaterial(); + + QColor ambient() const; + QColor specular() const; + Qt3DRender::QAbstractTexture *diffuse() const; + Qt3DRender::QAbstractTexture *normal() const; + float shininess() const; + float textureScale() const; + +public Q_SLOTS: + void setAmbient(const QColor &ambient); + void setSpecular(const QColor &specular); + void setDiffuse(Qt3DRender::QAbstractTexture *diffuse); + void setNormal(Qt3DRender::QAbstractTexture *normal); + void setShininess(float shininess); + void setTextureScale(float textureScale); + +Q_SIGNALS: + void ambientChanged(const QColor &ambient); + void diffuseChanged(Qt3DRender::QAbstractTexture *diffuse); + void normalChanged(Qt3DRender::QAbstractTexture *normal); + void specularChanged(const QColor &specular); + void shininessChanged(float shininess); + void textureScaleChanged(float textureScale); + +protected: + QNormalDiffuseMapMaterial(QNormalDiffuseMapMaterialPrivate &dd, Qt3DCore::QNode *parent = nullptr); + +private: + Q_DECLARE_PRIVATE(QNormalDiffuseMapMaterial) +}; + +} // Qt3DExtras + +QT_END_NAMESPACE + +#endif // QT3DEXTRAS_QNORMALDIFFUSEMAPMATERIAL_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qnormaldiffusespecularmapmaterial.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qnormaldiffusespecularmapmaterial.h new file mode 100644 index 0000000..164b077 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qnormaldiffusespecularmapmaterial.h @@ -0,0 +1,101 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DEXTRAS_QNORMALDIFFUSESPECULARMAPMATERIAL_H +#define QT3DEXTRAS_QNORMALDIFFUSESPECULARMAPMATERIAL_H + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DExtras { + +class QNormalDiffuseSpecularMapMaterialPrivate; + +class QT3DEXTRASSHARED_EXPORT QNormalDiffuseSpecularMapMaterial : public Qt3DRender::QMaterial +{ + Q_OBJECT + Q_PROPERTY(QColor ambient READ ambient WRITE setAmbient NOTIFY ambientChanged) + Q_PROPERTY(Qt3DRender::QAbstractTexture *diffuse READ diffuse WRITE setDiffuse NOTIFY diffuseChanged) + Q_PROPERTY(Qt3DRender::QAbstractTexture *normal READ normal WRITE setNormal NOTIFY normalChanged) + Q_PROPERTY(Qt3DRender::QAbstractTexture *specular READ specular WRITE setSpecular NOTIFY specularChanged) + Q_PROPERTY(float shininess READ shininess WRITE setShininess NOTIFY shininessChanged) + Q_PROPERTY(float textureScale READ textureScale WRITE setTextureScale NOTIFY textureScaleChanged) + +public: + explicit QNormalDiffuseSpecularMapMaterial(Qt3DCore::QNode *parent = nullptr); + ~QNormalDiffuseSpecularMapMaterial(); + + QColor ambient() const; + Qt3DRender::QAbstractTexture *diffuse() const; + Qt3DRender::QAbstractTexture *normal() const; + Qt3DRender::QAbstractTexture *specular() const; + float shininess() const; + float textureScale() const; + +public Q_SLOTS: + void setAmbient(const QColor &ambient); + void setDiffuse(Qt3DRender::QAbstractTexture *diffuse); + void setNormal(Qt3DRender::QAbstractTexture *normal); + void setSpecular(Qt3DRender::QAbstractTexture *specular); + void setShininess(float shininess); + void setTextureScale(float textureScale); + +Q_SIGNALS: + void ambientChanged(const QColor &ambient); + void diffuseChanged(Qt3DRender::QAbstractTexture *diffuse); + void normalChanged(Qt3DRender::QAbstractTexture *normal); + void specularChanged(Qt3DRender::QAbstractTexture *specular); + void shininessChanged(float shininess); + void textureScaleChanged(float textureScale); + +protected: + QNormalDiffuseSpecularMapMaterial(QNormalDiffuseSpecularMapMaterialPrivate &dd, Qt3DCore::QNode *parent = nullptr); + +private: + Q_DECLARE_PRIVATE(QNormalDiffuseSpecularMapMaterial) +}; + +} // namespace Qt3DExtras + +QT_END_NAMESPACE + +#endif // QT3DEXTRAS_QNORMALDIFFUSESPECULARMAPMATERIAL_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qorbitcameracontroller.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qorbitcameracontroller.h new file mode 100644 index 0000000..684bfdd --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qorbitcameracontroller.h @@ -0,0 +1,78 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DEXTRAS_QORBITCAMERACONTROLLER_H +#define QT3DEXTRAS_QORBITCAMERACONTROLLER_H + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DExtras { + +class QOrbitCameraControllerPrivate; + +class QT3DEXTRASSHARED_EXPORT QOrbitCameraController : public QAbstractCameraController +{ + Q_OBJECT + Q_PROPERTY(float zoomInLimit READ zoomInLimit WRITE setZoomInLimit NOTIFY zoomInLimitChanged) + +public: + explicit QOrbitCameraController(Qt3DCore::QNode *parent = nullptr); + ~QOrbitCameraController(); + + float zoomInLimit() const; + + void setZoomInLimit(float zoomInLimit); + +Q_SIGNALS: + void zoomInLimitChanged(); + +protected: + QOrbitCameraController(QOrbitCameraControllerPrivate &dd, Qt3DCore::QNode *parent = nullptr); + +private: + void moveCamera(const QAbstractCameraController::InputState &state, float dt) override; + +private: + Q_DECLARE_PRIVATE(QOrbitCameraController) +}; + +} // Qt3DExtras + +QT_END_NAMESPACE + +#endif // QT3DEXTRAS_QORBITCAMERACONTROLLER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qpervertexcolormaterial.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qpervertexcolormaterial.h new file mode 100644 index 0000000..8b64eb2 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qpervertexcolormaterial.h @@ -0,0 +1,69 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Lorenz Esch (TU Ilmenau). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DEXTRAS_QPERVERTEXCOLORMATERIAL_H +#define QT3DEXTRAS_QPERVERTEXCOLORMATERIAL_H + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DExtras { + +class QPerVertexColorMaterialPrivate; + +class QT3DEXTRASSHARED_EXPORT QPerVertexColorMaterial : public Qt3DRender::QMaterial +{ + Q_OBJECT + +public: + explicit QPerVertexColorMaterial(Qt3DCore::QNode *parent = nullptr); + ~QPerVertexColorMaterial(); + +private: + Q_DECLARE_PRIVATE(QPerVertexColorMaterial) +}; + +} // namespace Qt3DExtras + +QT_END_NAMESPACE + +#endif // QT3DEXTRAS_QPERVERTEXCOLORMATERIAL_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qphongalphamaterial.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qphongalphamaterial.h new file mode 100644 index 0000000..667c5b2 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qphongalphamaterial.h @@ -0,0 +1,117 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DEXTRAS_QPHONGALPHAMATERIAL_H +#define QT3DEXTRAS_QPHONGALPHAMATERIAL_H + +#include +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DExtras { + +class QPhongAlphaMaterialPrivate; + +class QT3DEXTRASSHARED_EXPORT QPhongAlphaMaterial : public Qt3DRender::QMaterial +{ + Q_OBJECT + Q_PROPERTY(QColor ambient READ ambient WRITE setAmbient NOTIFY ambientChanged) + Q_PROPERTY(QColor diffuse READ diffuse WRITE setDiffuse NOTIFY diffuseChanged) + Q_PROPERTY(QColor specular READ specular WRITE setSpecular NOTIFY specularChanged) + Q_PROPERTY(float shininess READ shininess WRITE setShininess NOTIFY shininessChanged) + Q_PROPERTY(float alpha READ alpha WRITE setAlpha NOTIFY alphaChanged) + Q_PROPERTY(Qt3DRender::QBlendEquationArguments::Blending sourceRgbArg READ sourceRgbArg WRITE setSourceRgbArg NOTIFY sourceRgbArgChanged) + Q_PROPERTY(Qt3DRender::QBlendEquationArguments::Blending destinationRgbArg READ destinationRgbArg WRITE setDestinationRgbArg NOTIFY destinationRgbArgChanged) + Q_PROPERTY(Qt3DRender::QBlendEquationArguments::Blending sourceAlphaArg READ sourceAlphaArg WRITE setSourceAlphaArg NOTIFY sourceAlphaArgChanged) + Q_PROPERTY(Qt3DRender::QBlendEquationArguments::Blending destinationAlphaArg READ destinationAlphaArg WRITE setDestinationAlphaArg NOTIFY destinationAlphaArgChanged) + Q_PROPERTY(Qt3DRender::QBlendEquation::BlendFunction blendFunctionArg READ blendFunctionArg WRITE setBlendFunctionArg NOTIFY blendFunctionArgChanged) + +public: + explicit QPhongAlphaMaterial(Qt3DCore::QNode *parent = nullptr); + ~QPhongAlphaMaterial(); + + QColor ambient() const; + QColor diffuse() const; + QColor specular() const; + float shininess() const; + float alpha() const; + + Qt3DRender::QBlendEquationArguments::Blending sourceRgbArg() const; + Qt3DRender::QBlendEquationArguments::Blending destinationRgbArg() const; + Qt3DRender::QBlendEquationArguments::Blending sourceAlphaArg() const; + Qt3DRender::QBlendEquationArguments::Blending destinationAlphaArg() const; + Qt3DRender::QBlendEquation::BlendFunction blendFunctionArg() const; + +public Q_SLOTS: + void setAmbient(const QColor &ambient); + void setDiffuse(const QColor &diffuse); + void setSpecular(const QColor &specular); + void setShininess(float shininess); + void setAlpha(float alpha); + void setSourceRgbArg(Qt3DRender::QBlendEquationArguments::Blending sourceRgbArg); + void setDestinationRgbArg(Qt3DRender::QBlendEquationArguments::Blending destinationRgbArg); + void setSourceAlphaArg(Qt3DRender::QBlendEquationArguments::Blending sourceAlphaArg); + void setDestinationAlphaArg(Qt3DRender::QBlendEquationArguments::Blending destinationAlphaArg); + void setBlendFunctionArg(Qt3DRender::QBlendEquation::BlendFunction blendFunctionArg); + +Q_SIGNALS: + void ambientChanged(const QColor &ambient); + void diffuseChanged(const QColor &diffuse); + void specularChanged(const QColor &specular); + void shininessChanged(float shininess); + void alphaChanged(float alpha); + void sourceRgbArgChanged(Qt3DRender::QBlendEquationArguments::Blending sourceRgbArg); + void destinationRgbArgChanged(Qt3DRender::QBlendEquationArguments::Blending destinationRgbArg); + void sourceAlphaArgChanged(Qt3DRender::QBlendEquationArguments::Blending sourceAlphaArg); + void destinationAlphaArgChanged(Qt3DRender::QBlendEquationArguments::Blending destinationAlphaArg); + void blendFunctionArgChanged(Qt3DRender::QBlendEquation::BlendFunction blendFunctionArg); + +private: + Q_DECLARE_PRIVATE(QPhongAlphaMaterial) +}; + +} // namespace Qt3DExtras + +QT_END_NAMESPACE + +#endif // QT3DEXTRAS_QPHONGALPHAMATERIAL_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qphongmaterial.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qphongmaterial.h new file mode 100644 index 0000000..d78c8c2 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qphongmaterial.h @@ -0,0 +1,90 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DEXTRAS_QPHONGMATERIAL_H +#define QT3DEXTRAS_QPHONGMATERIAL_H + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DExtras { + +class QPhongMaterialPrivate; + +class QT3DEXTRASSHARED_EXPORT QPhongMaterial : public Qt3DRender::QMaterial +{ + Q_OBJECT + Q_PROPERTY(QColor ambient READ ambient WRITE setAmbient NOTIFY ambientChanged) + Q_PROPERTY(QColor diffuse READ diffuse WRITE setDiffuse NOTIFY diffuseChanged) + Q_PROPERTY(QColor specular READ specular WRITE setSpecular NOTIFY specularChanged) + Q_PROPERTY(float shininess READ shininess WRITE setShininess NOTIFY shininessChanged) + +public: + explicit QPhongMaterial(Qt3DCore::QNode *parent = nullptr); + ~QPhongMaterial(); + + QColor ambient() const; + QColor diffuse() const; + QColor specular() const; + float shininess() const; + +public Q_SLOTS: + void setAmbient(const QColor &ambient); + void setDiffuse(const QColor &diffuse); + void setSpecular(const QColor &specular); + void setShininess(float shininess); + +Q_SIGNALS: + void ambientChanged(const QColor &ambient); + void diffuseChanged(const QColor &diffuse); + void specularChanged(const QColor &specular); + void shininessChanged(float shininess); + +private: + Q_DECLARE_PRIVATE(QPhongMaterial) +}; + +} // namespace Qt3DExtras + +QT_END_NAMESPACE + +#endif // QT3DEXTRAS_QPHONGMATERIAL_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qplanegeometry.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qplanegeometry.h new file mode 100644 index 0000000..4a4efe6 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qplanegeometry.h @@ -0,0 +1,113 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DEXTRAS_QPLANEGEOMETRY_H +#define QT3DEXTRAS_QPLANEGEOMETRY_H + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QAttribute; + +} // Qt3DRender + +namespace Qt3DExtras { + +class QPlaneGeometryPrivate; + +class QT3DEXTRASSHARED_EXPORT QPlaneGeometry : public Qt3DRender::QGeometry +{ + Q_OBJECT + Q_PROPERTY(float width READ width WRITE setWidth NOTIFY widthChanged) + Q_PROPERTY(float height READ height WRITE setHeight NOTIFY heightChanged) + Q_PROPERTY(QSize resolution READ resolution WRITE setResolution NOTIFY resolutionChanged) + Q_PROPERTY(bool mirrored READ mirrored WRITE setMirrored NOTIFY mirroredChanged REVISION 9) + Q_PROPERTY(Qt3DRender::QAttribute *positionAttribute READ positionAttribute CONSTANT) + Q_PROPERTY(Qt3DRender::QAttribute *normalAttribute READ normalAttribute CONSTANT) + Q_PROPERTY(Qt3DRender::QAttribute *texCoordAttribute READ texCoordAttribute CONSTANT) + Q_PROPERTY(Qt3DRender::QAttribute *tangentAttribute READ tangentAttribute CONSTANT) + Q_PROPERTY(Qt3DRender::QAttribute *indexAttribute READ indexAttribute CONSTANT) + +public: + explicit QPlaneGeometry(QNode *parent = nullptr); + ~QPlaneGeometry(); + + void updateVertices(); + void updateIndices(); + + QSize resolution() const; + float width() const; + float height() const; + bool mirrored() const; + + Qt3DRender::QAttribute *positionAttribute() const; + Qt3DRender::QAttribute *normalAttribute() const; + Qt3DRender::QAttribute *texCoordAttribute() const; + Qt3DRender::QAttribute *tangentAttribute() const; + Qt3DRender::QAttribute *indexAttribute() const; + +public Q_SLOTS: + void setResolution(const QSize &resolution); + void setWidth(float width); + void setHeight(float height); + void setMirrored(bool mirrored); + +Q_SIGNALS: + void resolutionChanged(const QSize &resolution); + void widthChanged(float width); + void heightChanged(float height); + void mirroredChanged(bool mirrored); + +protected: + QPlaneGeometry(QPlaneGeometryPrivate &dd, QNode *parent = nullptr); + +private: + Q_DECLARE_PRIVATE(QPlaneGeometry) +}; + +} // Qt3DExpoerimental + +QT_END_NAMESPACE + +#endif // QT3DEXTRAS_QPLANEGEOMETRY_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qplanemesh.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qplanemesh.h new file mode 100644 index 0000000..1cf2ae7 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qplanemesh.h @@ -0,0 +1,98 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DEXTRAS_QPLANEMESH_H +#define QT3DEXTRAS_QPLANEMESH_H + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DExtras { + +class QT3DEXTRASSHARED_EXPORT QPlaneMesh : public Qt3DRender::QGeometryRenderer +{ + Q_OBJECT + Q_PROPERTY(float width READ width WRITE setWidth NOTIFY widthChanged) + Q_PROPERTY(float height READ height WRITE setHeight NOTIFY heightChanged) + Q_PROPERTY(QSize meshResolution READ meshResolution WRITE setMeshResolution NOTIFY meshResolutionChanged) + Q_PROPERTY(bool mirrored READ mirrored WRITE setMirrored NOTIFY mirroredChanged REVISION 9) + +public: + explicit QPlaneMesh(Qt3DCore::QNode *parent = nullptr); + ~QPlaneMesh(); + + float width() const; + float height() const; + QSize meshResolution() const; + bool mirrored() const; + +public Q_SLOTS: + void setWidth(float width); + void setHeight(float height); + void setMeshResolution(const QSize &resolution); + void setMirrored(bool mirrored); + +Q_SIGNALS: + void meshResolutionChanged(const QSize &meshResolution); + void widthChanged(float width); + void heightChanged(float height); + void mirroredChanged(bool mirrored); + +private: + // As this is a default provided geometry renderer, no one should be able + // to modify the QGeometryRenderer's properties + + void setInstanceCount(int instanceCount); + void setVertexCount(int vertexCount); + void setIndexOffset(int indexOffset); + void setFirstInstance(int firstInstance); + void setRestartIndexValue(int index); + void setPrimitiveRestartEnabled(bool enabled); + void setGeometry(Qt3DRender::QGeometry *geometry); + void setPrimitiveType(PrimitiveType primitiveType); +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DEXTRAS_QPLANEMESH_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qskyboxentity.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qskyboxentity.h new file mode 100644 index 0000000..e49782d --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qskyboxentity.h @@ -0,0 +1,84 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DEXTRAS_QSKYBOXENTITY_H +#define QT3DEXTRAS_QSKYBOXENTITY_H + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DExtras { + +class QSkyboxEntityPrivate; + +class QT3DEXTRASSHARED_EXPORT QSkyboxEntity : public Qt3DCore::QEntity +{ + Q_OBJECT + Q_PROPERTY(QString baseName READ baseName WRITE setBaseName NOTIFY baseNameChanged) + Q_PROPERTY(QString extension READ extension WRITE setExtension NOTIFY extensionChanged) + Q_PROPERTY(bool gammaCorrect READ isGammaCorrectEnabled WRITE setGammaCorrectEnabled NOTIFY gammaCorrectEnabledChanged REVISION 9) +public: + explicit QSkyboxEntity(Qt3DCore::QNode *parent = nullptr); + ~QSkyboxEntity(); + + QString baseName() const; + QString extension() const; + bool isGammaCorrectEnabled() const; + +public Q_SLOTS: + void setBaseName(const QString &path); + void setExtension(const QString &extension); + void setGammaCorrectEnabled(bool enabled); + +Q_SIGNALS: + void baseNameChanged(const QString &path); + void extensionChanged(const QString &extension); + void gammaCorrectEnabledChanged(bool enabled); + +private: + Q_DECLARE_PRIVATE(QSkyboxEntity) +}; + +} // namespace Qt3DExtras + +QT_END_NAMESPACE + +#endif // QT3DEXTRAS_QSKYBOXENTITY_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qspheregeometry.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qspheregeometry.h new file mode 100644 index 0000000..d657c0c --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qspheregeometry.h @@ -0,0 +1,112 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DEXTRAS_QSPHEREGEOMETRY_H +#define QT3DEXTRAS_QSPHEREGEOMETRY_H + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QAttribute; + +} // Qt3DRender + +namespace Qt3DExtras { + +class QSphereGeometryPrivate; + +class QT3DEXTRASSHARED_EXPORT QSphereGeometry : public Qt3DRender::QGeometry +{ + Q_OBJECT + Q_PROPERTY(int rings READ rings WRITE setRings NOTIFY ringsChanged) + Q_PROPERTY(int slices READ slices WRITE setSlices NOTIFY slicesChanged) + Q_PROPERTY(float radius READ radius WRITE setRadius NOTIFY radiusChanged) + Q_PROPERTY(bool generateTangents READ generateTangents WRITE setGenerateTangents NOTIFY generateTangentsChanged) + Q_PROPERTY(Qt3DRender::QAttribute *positionAttribute READ positionAttribute CONSTANT) + Q_PROPERTY(Qt3DRender::QAttribute *normalAttribute READ normalAttribute CONSTANT) + Q_PROPERTY(Qt3DRender::QAttribute *texCoordAttribute READ texCoordAttribute CONSTANT) + Q_PROPERTY(Qt3DRender::QAttribute *tangentAttribute READ tangentAttribute CONSTANT) + Q_PROPERTY(Qt3DRender::QAttribute *indexAttribute READ indexAttribute CONSTANT) + +public: + explicit QSphereGeometry(QNode *parent = nullptr); + ~QSphereGeometry(); + + void updateVertices(); + void updateIndices(); + + bool generateTangents() const; + int rings() const; + int slices() const; + float radius() const; + + Qt3DRender::QAttribute *positionAttribute() const; + Qt3DRender::QAttribute *normalAttribute() const; + Qt3DRender::QAttribute *texCoordAttribute() const; + Qt3DRender::QAttribute *tangentAttribute() const; + Qt3DRender::QAttribute *indexAttribute() const; + +public Q_SLOTS: + void setRings(int rings); + void setSlices(int slices); + void setRadius(float radius); + void setGenerateTangents(bool gen); + +Q_SIGNALS: + void radiusChanged(float radius); + void ringsChanged(int rings); + void slicesChanged(int slices); + void generateTangentsChanged(bool generateTangents); + +protected: + QSphereGeometry(QSphereGeometryPrivate &dd, QNode *parent = nullptr); + +private: + Q_DECLARE_PRIVATE(QSphereGeometry) +}; + +} // Qt3DExtras + +QT_END_NAMESPACE + +#endif // QT3DEXTRAS_QSPHEREGEOMETRY_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qspheremesh.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qspheremesh.h new file mode 100644 index 0000000..58e77dc --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qspheremesh.h @@ -0,0 +1,98 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DEXTRAS_QSPHEREMESH_H +#define QT3DEXTRAS_QSPHEREMESH_H + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DExtras { + +class QSphereMeshPrivate; + +class QT3DEXTRASSHARED_EXPORT QSphereMesh : public Qt3DRender::QGeometryRenderer +{ + Q_OBJECT + Q_PROPERTY(int rings READ rings WRITE setRings NOTIFY ringsChanged) + Q_PROPERTY(int slices READ slices WRITE setSlices NOTIFY slicesChanged) + Q_PROPERTY(float radius READ radius WRITE setRadius NOTIFY radiusChanged) + Q_PROPERTY(bool generateTangents READ generateTangents WRITE setGenerateTangents NOTIFY generateTangentsChanged) + +public: + explicit QSphereMesh(Qt3DCore::QNode *parent = nullptr); + ~QSphereMesh(); + + int rings() const; + int slices() const; + float radius() const; + bool generateTangents() const; + +public Q_SLOTS: + void setRings(int rings); + void setSlices(int slices); + void setRadius(float radius); + void setGenerateTangents(bool gen); + +Q_SIGNALS: + void radiusChanged(float radius); + void ringsChanged(int rings); + void slicesChanged(int slices); + void generateTangentsChanged(bool generateTangents); + +private: + // As this is a default provided geometry renderer, no one should be able + // to modify the QGeometryRenderer's properties + + void setVertexCount(int vertexCount); + void setIndexOffset(int indexOffset); + void setFirstInstance(int firstInstance); + void setRestartIndexValue(int index); + void setPrimitiveRestartEnabled(bool enabled); + void setGeometry(Qt3DRender::QGeometry *geometry); + void setPrimitiveType(PrimitiveType primitiveType); +}; + +} // namespace Qt3DExtras + +QT_END_NAMESPACE + +#endif // QT3DEXTRAS_QSPHEREMESH_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qspritegrid.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qspritegrid.h new file mode 100644 index 0000000..a0e73ab --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qspritegrid.h @@ -0,0 +1,82 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DEXTRAS_QSPRITEGRID_H +#define QT3DEXTRAS_QSPRITEGRID_H + +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DExtras { + +class QSpriteGridPrivate; + +class QT3DEXTRASSHARED_EXPORT QSpriteGrid : public QAbstractSpriteSheet +{ + Q_OBJECT + Q_PROPERTY(int rows READ rows WRITE setRows NOTIFY rowsChanged) + Q_PROPERTY(int columns READ columns WRITE setColumns NOTIFY columnsChanged) +public: + explicit QSpriteGrid(Qt3DCore::QNode *parent = nullptr); + ~QSpriteGrid(); + + int rows() const; + int columns() const; + +public Q_SLOTS: + void setRows(int rows); + void setColumns(int columns); + +Q_SIGNALS: + void rowsChanged(int rows); + void columnsChanged(int columns); + +private: + Q_DECLARE_PRIVATE(QSpriteGrid) +}; + +} // Qt3DExtras + +QT_END_NAMESPACE + +#endif // QT3DEXTRAS_QSPRITEGRID_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qspritesheet.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qspritesheet.h new file mode 100644 index 0000000..0e78c0e --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qspritesheet.h @@ -0,0 +1,81 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DEXTRAS_QSPRITESHEET_H +#define QT3DEXTRAS_QSPRITESHEET_H + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DExtras { + +class QSpriteSheetItem; +class QSpriteSheetPrivate; + +class QT3DEXTRASSHARED_EXPORT QSpriteSheet : public QAbstractSpriteSheet +{ + Q_OBJECT + Q_PROPERTY(QVector sprites READ sprites WRITE setSprites NOTIFY spritesChanged) +public: + explicit QSpriteSheet(Qt3DCore::QNode *parent = nullptr); + ~QSpriteSheet(); + + QVector sprites() const; + QSpriteSheetItem *addSprite(int x, int y, int width, int height); + void addSprite(QSpriteSheetItem *sprite); + void removeSprite(QSpriteSheetItem *sprite); + +public Q_SLOTS: + void setSprites(QVector sprites); + +Q_SIGNALS: + void spritesChanged(QVector sprites); + +private: + Q_DECLARE_PRIVATE(QSpriteSheet) +}; + +} // Qt3DExtras + +QT_END_NAMESPACE + +#endif // QT3DEXTRAS_QSPRITESHEET_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qspritesheetitem.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qspritesheetitem.h new file mode 100644 index 0000000..f478460 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qspritesheetitem.h @@ -0,0 +1,86 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DEXTRAS_QSPRITESHEETITEM_H +#define QT3DEXTRAS_QSPRITESHEETITEM_H + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DExtras { + +class QSpriteSheetItemPrivate; + +class QT3DEXTRASSHARED_EXPORT QSpriteSheetItem : public Qt3DCore::QNode +{ + Q_OBJECT + Q_PROPERTY(int x READ x WRITE setX NOTIFY xChanged) + Q_PROPERTY(int y READ y WRITE setY NOTIFY yChanged) + Q_PROPERTY(int width READ width WRITE setWidth NOTIFY widthChanged) + Q_PROPERTY(int height READ height WRITE setHeight NOTIFY heightChanged) +public: + explicit QSpriteSheetItem(Qt3DCore::QNode *parent = nullptr); + + int x() const; + int y() const; + int width() const; + int height() const; + +public Q_SLOTS: + void setX(int x); + void setY(int y); + void setWidth(int width); + void setHeight(int height); + +Q_SIGNALS: + void xChanged(int x); + void yChanged(int y); + void widthChanged(int width); + void heightChanged(int height); + +private: + Q_DECLARE_PRIVATE(QSpriteSheetItem) +}; + +} // Qt3DExtras + +QT_END_NAMESPACE + +#endif // QT3DEXTRAS_QSPRITESHEETITEM_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qt3dextras_global.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qt3dextras_global.h new file mode 100644 index 0000000..ee2111b --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qt3dextras_global.h @@ -0,0 +1,59 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DEXTRAS_GLOBAL_H +#define QT3DEXTRAS_GLOBAL_H + +#include + +QT_BEGIN_NAMESPACE + +#if defined(QT_SHARED) || !defined(QT_STATIC) +# if defined(QT3DEXTRAS_LIBRARY) +# define QT3DEXTRASSHARED_EXPORT Q_DECL_EXPORT +# else +# define QT3DEXTRASSHARED_EXPORT Q_DECL_IMPORT +# endif +#else +# define QT3DEXTRASSHARED_EXPORT +#endif + +QT_END_NAMESPACE + +#endif // QT3DEXTRAS_GLOBAL_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qt3dextrasversion.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qt3dextrasversion.h new file mode 100644 index 0000000..46c2364 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qt3dextrasversion.h @@ -0,0 +1,9 @@ +/* This file was generated by syncqt. */ +#ifndef QT_QT3DEXTRAS_VERSION_H +#define QT_QT3DEXTRAS_VERSION_H + +#define QT3DEXTRAS_VERSION_STR "5.12.5" + +#define QT3DEXTRAS_VERSION 0x050C05 + +#endif // QT_QT3DEXTRAS_VERSION_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qt3dwindow.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qt3dwindow.h new file mode 100644 index 0000000..7020a2b --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qt3dwindow.h @@ -0,0 +1,125 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:BSD$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** BSD License Usage +** Alternatively, you may use this file under the terms of the BSD license +** as follows: +** +** "Redistribution and use in source and binary forms, with or without +** modification, are permitted provided that the following conditions are +** met: +** * Redistributions of source code must retain the above copyright +** notice, this list of conditions and the following disclaimer. +** * Redistributions in binary form must reproduce the above copyright +** notice, this list of conditions and the following disclaimer in +** the documentation and/or other materials provided with the +** distribution. +** * Neither the name of The Qt Company Ltd nor the names of its +** contributors may be used to endorse or promote products derived +** from this software without specific prior written permission. +** +** +** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DWINDOW_H +#define QT3DWINDOW_H + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { +class QAspectEngine; +class QAbstractAspect; +class QEntity; +} + +namespace Qt3DRender { +class QCamera; +class QFrameGraphNode; +class QRenderAspect; +class QRenderSettings; +} + +namespace Qt3DExtras { +class QForwardRenderer; +} + +namespace Qt3DInput { +class QInputAspect; +class QInputSettings; +} + +namespace Qt3DLogic { +class QLogicAspect; +} + +namespace Qt3DExtras { + +class Qt3DWindowPrivate; + +class QT3DEXTRASSHARED_EXPORT Qt3DWindow : public QWindow +{ + Q_OBJECT +public: + Qt3DWindow(QScreen *screen = nullptr); + ~Qt3DWindow(); + + void registerAspect(Qt3DCore::QAbstractAspect *aspect); + void registerAspect(const QString &name); + + void setRootEntity(Qt3DCore::QEntity *root); + + void setActiveFrameGraph(Qt3DRender::QFrameGraphNode *activeFrameGraph); + Qt3DRender::QFrameGraphNode *activeFrameGraph() const; + Qt3DExtras::QForwardRenderer *defaultFrameGraph() const; + + Qt3DRender::QCamera *camera() const; + Qt3DRender::QRenderSettings *renderSettings() const; + +public Q_SLOTS: + +Q_SIGNALS: + +protected: + void showEvent(QShowEvent *e) override; + void resizeEvent(QResizeEvent *) override; + bool event(QEvent *e) override; + +private: + Q_DECLARE_PRIVATE(Qt3DWindow) +}; + +} // Qt3DExtras + +QT_END_NAMESPACE + +#endif // QT3DWINDOW_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qtext2dentity.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qtext2dentity.h new file mode 100644 index 0000000..39be91a --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qtext2dentity.h @@ -0,0 +1,98 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DEXTRAS_QTEXT2DENTITY_H +#define QT3DEXTRAS_QTEXT2DENTITY_H + +#include +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DExtras { + +class QText2DEntityPrivate; + +class QT3DEXTRASSHARED_EXPORT QText2DEntity : public Qt3DCore::QEntity +{ + Q_OBJECT + Q_PROPERTY(QFont font READ font WRITE setFont NOTIFY fontChanged) + Q_PROPERTY(QString text READ text WRITE setText NOTIFY textChanged) + Q_PROPERTY(QColor color READ color WRITE setColor NOTIFY colorChanged) + Q_PROPERTY(float width READ width WRITE setWidth NOTIFY widthChanged) + Q_PROPERTY(float height READ height WRITE setHeight NOTIFY heightChanged) + +public: + explicit QText2DEntity(Qt3DCore::QNode *parent = nullptr); + ~QText2DEntity(); + + QFont font() const; + void setFont(const QFont &font); + + QColor color() const; + void setColor(const QColor &color); + + QString text() const; + void setText(const QString &text); + + float width() const; + float height() const; + + void setWidth(float width); + void setHeight(float height); + +Q_SIGNALS: + void fontChanged(const QFont &font); + void colorChanged(const QColor &color); + void textChanged(const QString &text); + void widthChanged(float width); + void heightChanged(float height); + +private: + Q_DECLARE_PRIVATE(QText2DEntity) +}; + +} // namespace Qt3DExtras + +QT_END_NAMESPACE + +#endif // QT3DEXTRAS_QTEXT2DENTITY_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qtexturedmetalroughmaterial.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qtexturedmetalroughmaterial.h new file mode 100644 index 0000000..60f41b2 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qtexturedmetalroughmaterial.h @@ -0,0 +1,67 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DEXTRAS_QTEXTUREDMETALROUGHMATERIAL_H +#define QT3DEXTRAS_QTEXTUREDMETALROUGHMATERIAL_H + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DExtras { + +class QT_DEPRECATED_X("Use Qt3DExtras::QMetalRoughMaterial") QT3DEXTRASSHARED_EXPORT QTexturedMetalRoughMaterial : public QMetalRoughMaterial +{ + Q_OBJECT + Q_PROPERTY(QVariant ambientOcclusion READ ambientOcclusion WRITE setAmbientOcclusion NOTIFY ambientOcclusionChanged) + Q_PROPERTY(QVariant normal READ normal WRITE setNormal NOTIFY normalChanged) + +public: + explicit QTexturedMetalRoughMaterial(Qt3DCore::QNode *parent = nullptr); + +Q_SIGNALS: + void ambientOcclusionChanged(const QVariant &ambientOcclusion); + void normalChanged(const QVariant &normal); +}; + +} // namespace Qt3DExtras + +QT_END_NAMESPACE + +#endif // QT3DEXTRAS_QTEXTUREDMETALROUGHMATERIAL_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qtexturematerial.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qtexturematerial.h new file mode 100644 index 0000000..4e36b18 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qtexturematerial.h @@ -0,0 +1,97 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DEXTRAS_QTEXTUREMATERIAL_H +#define QT3DEXTRAS_QTEXTUREMATERIAL_H + +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QAbstractTexture; + +} // namespace Qt3DRender + +namespace Qt3DExtras { + +class QTextureMaterialPrivate; + +class QT3DEXTRASSHARED_EXPORT QTextureMaterial : public Qt3DRender::QMaterial +{ + Q_OBJECT + Q_PROPERTY(Qt3DRender::QAbstractTexture *texture READ texture WRITE setTexture NOTIFY textureChanged) + Q_PROPERTY(QVector2D textureOffset READ textureOffset WRITE setTextureOffset NOTIFY textureOffsetChanged) + Q_PROPERTY(QMatrix3x3 textureTransform READ textureTransform WRITE setTextureTransform NOTIFY textureTransformChanged REVISION 10) + Q_PROPERTY(bool alphaBlending READ isAlphaBlendingEnabled WRITE setAlphaBlendingEnabled NOTIFY alphaBlendingEnabledChanged REVISION 11) + +public: + explicit QTextureMaterial(Qt3DCore::QNode *parent = nullptr); + ~QTextureMaterial(); + + Qt3DRender::QAbstractTexture *texture() const; + QVector2D textureOffset() const; + QMatrix3x3 textureTransform() const; + bool isAlphaBlendingEnabled() const; + +public Q_SLOTS: + void setTexture(Qt3DRender::QAbstractTexture *texture); + void setTextureOffset(QVector2D textureOffset); + void setTextureTransform(const QMatrix3x3 &matrix); + void setAlphaBlendingEnabled(bool enabled); + +Q_SIGNALS: + void textureChanged(Qt3DRender::QAbstractTexture *texture); + void textureOffsetChanged(QVector2D textureOffset); + void textureTransformChanged(const QMatrix3x3 &textureTransform); + void alphaBlendingEnabledChanged(bool enabled); + +private: + Q_DECLARE_PRIVATE(QTextureMaterial) +}; + +} // Qt3DExtras + +QT_END_NAMESPACE + +#endif // QT3DEXTRAS_QTEXTUREMATERIAL_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qtorusgeometry.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qtorusgeometry.h new file mode 100644 index 0000000..ebde32b --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qtorusgeometry.h @@ -0,0 +1,111 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DEXTRAS_QTORUSGEOMETRY_H +#define QT3DEXTRAS_QTORUSGEOMETRY_H + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QAttribute; + +} // Qt3DRender + +namespace Qt3DExtras { + +class QTorusGeometryPrivate; + +class QT3DEXTRASSHARED_EXPORT QTorusGeometry : public Qt3DRender::QGeometry +{ + Q_OBJECT + Q_PROPERTY(int rings READ rings WRITE setRings NOTIFY ringsChanged) + Q_PROPERTY(int slices READ slices WRITE setSlices NOTIFY slicesChanged) + Q_PROPERTY(float radius READ radius WRITE setRadius NOTIFY radiusChanged) + Q_PROPERTY(float minorRadius READ minorRadius WRITE setMinorRadius NOTIFY minorRadiusChanged) + Q_PROPERTY(Qt3DRender::QAttribute *positionAttribute READ positionAttribute CONSTANT) + Q_PROPERTY(Qt3DRender::QAttribute *normalAttribute READ normalAttribute CONSTANT) + Q_PROPERTY(Qt3DRender::QAttribute *texCoordAttribute READ texCoordAttribute CONSTANT) + Q_PROPERTY(Qt3DRender::QAttribute *indexAttribute READ indexAttribute CONSTANT) + +public: + explicit QTorusGeometry(QNode *parent = nullptr); + ~QTorusGeometry(); + + void updateVertices(); + void updateIndices(); + + int rings() const; + int slices() const; + float radius() const; + float minorRadius() const; + + Qt3DRender::QAttribute *positionAttribute() const; + Qt3DRender::QAttribute *normalAttribute() const; + Qt3DRender::QAttribute *texCoordAttribute() const; + Qt3DRender::QAttribute *indexAttribute() const; + +public Q_SLOTS: + void setRings(int rings); + void setSlices(int slices); + void setRadius(float radius); + void setMinorRadius(float minorRadius); + +Q_SIGNALS: + void radiusChanged(float radius); + void ringsChanged(int rings); + void slicesChanged(int slices); + void minorRadiusChanged(float minorRadius); + + +protected: + QTorusGeometry(QTorusGeometryPrivate &dd, QNode *parent = nullptr); + +private: + Q_DECLARE_PRIVATE(QTorusGeometry) +}; + +} // Qt3DExtras + +QT_END_NAMESPACE + +#endif // QT3DEXTRAS_QTORUSGEOMETRY_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qtorusmesh.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qtorusmesh.h new file mode 100644 index 0000000..69ad00e --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DExtras/qtorusmesh.h @@ -0,0 +1,96 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DEXTRAS_QTORUSMESH_H +#define QT3DEXTRAS_QTORUSMESH_H + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DExtras { + +class QT3DEXTRASSHARED_EXPORT QTorusMesh : public Qt3DRender::QGeometryRenderer +{ + Q_OBJECT + Q_PROPERTY(int rings READ rings WRITE setRings NOTIFY ringsChanged) + Q_PROPERTY(int slices READ slices WRITE setSlices NOTIFY slicesChanged) + Q_PROPERTY(float radius READ radius WRITE setRadius NOTIFY radiusChanged) + Q_PROPERTY(float minorRadius READ minorRadius WRITE setMinorRadius NOTIFY minorRadiusChanged) +public: + explicit QTorusMesh(Qt3DCore::QNode *parent = nullptr); + ~QTorusMesh(); + + int rings() const; + int slices() const; + float radius() const; + float minorRadius() const; + +public Q_SLOTS: + void setRings(int rings); + void setSlices(int slices); + void setRadius(float radius); + void setMinorRadius(float minorRadius); + +Q_SIGNALS: + void radiusChanged(float radius); + void ringsChanged(int rings); + void slicesChanged(int slices); + void minorRadiusChanged(float minorRadius); + +private: + // As this is a default provided geometry renderer, no one should be able + // to modify the QGeometryRenderer's properties + + void setInstanceCount(int instanceCount); + void setVertexCount(int vertexCount); + void setIndexOffset(int indexOffset); + void setFirstInstance(int firstInstance); + void setRestartIndexValue(int index); + void setPrimitiveRestartEnabled(bool enabled); + void setGeometry(Qt3DRender::QGeometry *geometry); + void setPrimitiveType(PrimitiveType primitiveType); +}; + +} // namespace Qt3DExtras + +QT_END_NAMESPACE + +#endif // QT3DEXTRAS_QTORUSMESH_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/abstractactioninput_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/abstractactioninput_p.h new file mode 100644 index 0000000..267d276 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/abstractactioninput_p.h @@ -0,0 +1,81 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_INPUT_ABSTRACTACTIONINPUT_H +#define QT3DINPUT_INPUT_ABSTRACTACTIONINPUT_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { + +namespace Input { + +class InputHandler; + +class Q_AUTOTEST_EXPORT AbstractActionInput : public Qt3DCore::QBackendNode +{ +public: + AbstractActionInput(); + + inline static qint64 milliToNano(qint64 milli) { return milli * 1000000; } + + virtual bool process(InputHandler *inputHandler, qint64 currentTime) = 0; +}; + +} // namespace Input + +} // namespace Qt3DInput + +QT_END_NAMESPACE + +#endif // QT3DINPUT_INPUT_ABSTRACTACTIONINPUT_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/abstractaxisinput_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/abstractaxisinput_p.h new file mode 100644 index 0000000..765e221 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/abstractaxisinput_p.h @@ -0,0 +1,90 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_INPUT_AXISINPUT_H +#define QT3DINPUT_INPUT_AXISINPUT_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { + +class QAbstractPhysicalDeviceBackendNode; + +namespace Input { + +class InputHandler; + +class Q_AUTOTEST_EXPORT AbstractAxisInput : public Qt3DCore::QBackendNode +{ +public: + virtual void cleanup(); + + inline Qt3DCore::QNodeId sourceDevice() const { return m_sourceDevice; } + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) override; + + virtual float process(InputHandler *inputHandler, qint64 currentTime) = 0; + +protected: + AbstractAxisInput(); + void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) override; + + Qt3DCore::QNodeId m_sourceDevice; +}; + +} // namespace Input + +} // namespace Qt3DInput + +QT_END_NAMESPACE + +#endif // QT3DINPUT_INPUT_AXISINPUT_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/action_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/action_p.h new file mode 100644 index 0000000..8fe2759 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/action_p.h @@ -0,0 +1,86 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_INPUT_ACTION_H +#define QT3DINPUT_INPUT_ACTION_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { + +namespace Input { + +class Q_AUTOTEST_EXPORT Action : public Qt3DCore::QBackendNode +{ +public: + Action(); + void cleanup(); + inline QVector inputs() const { return m_inputs; } + inline bool actionTriggered() const { return m_actionTriggered; } + void setActionTriggered(bool actionTriggered); + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) override; + +private: + void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) final; + + QVector m_inputs; + bool m_actionTriggered; +}; + +} // Input + +} // Qt3DInput + +QT_END_NAMESPACE + +#endif // QT3DINPUT_INPUT_ACTION_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/actioninput_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/actioninput_p.h new file mode 100644 index 0000000..00fb047 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/actioninput_p.h @@ -0,0 +1,89 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_INPUT_ACTIONINPUT_H +#define QT3DINPUT_INPUT_ACTIONINPUT_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { + +namespace Input { + +class Q_AUTOTEST_EXPORT ActionInput : public AbstractActionInput +{ +public: + ActionInput(); + void cleanup(); + + inline QVector buttons() const { return m_buttons; } + inline Qt3DCore::QNodeId sourceDevice() const { return m_sourceDevice; } + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) override; + + bool process(InputHandler *inputHandler, qint64 currentTime) override; + +private: + void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) final; + + QVector m_buttons; + Qt3DCore::QNodeId m_sourceDevice; +}; + +} // namespace Input + +} // namespace Qt3DInput + +QT_END_NAMESPACE + +#endif // QT3DINPUT_INPUT_ACTIONINPUT_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/analogaxisinput_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/analogaxisinput_p.h new file mode 100644 index 0000000..cd43e7d --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/analogaxisinput_p.h @@ -0,0 +1,85 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_INPUT_ANALOGAXISINPUT_H +#define QT3DINPUT_INPUT_ANALOGAXISINPUT_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { + +namespace Input { + +class Q_AUTOTEST_EXPORT AnalogAxisInput : public AbstractAxisInput +{ +public: + AnalogAxisInput(); + void cleanup() final; + + inline int axis() const { return m_axis; } + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) final; + + float process(InputHandler *inputHandler, qint64 currentTime) override; + +private: + void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) final; + + int m_axis; +}; + +} // namespace Input + +} // namespace Qt3DInput + +QT_END_NAMESPACE + +#endif // QT3DINPUT_INPUT_ANALOGAXISINPUT_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/assignkeyboardfocusjob_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/assignkeyboardfocusjob_p.h new file mode 100644 index 0000000..8a74de8 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/assignkeyboardfocusjob_p.h @@ -0,0 +1,81 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_INPUT_ASSIGNKEYBOARDFOCUSJOB_P_H +#define QT3DINPUT_INPUT_ASSIGNKEYBOARDFOCUSJOB_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { +namespace Input { + +class InputHandler; + +class AssignKeyboardFocusJob : public Qt3DCore::QAspectJob +{ +public: + explicit AssignKeyboardFocusJob(Qt3DCore::QNodeId keyboardDevice); + void setInputHandler(InputHandler *handler); + void run() override; + +private: + InputHandler *m_inputHandler; + const Qt3DCore::QNodeId m_keyboardDevice; +}; + +} // namespace Input +} // namespace Qt3DInput + +QT_END_NAMESPACE + +#endif // QT3DINPUT_INPUT_ASSIGNKEYBOARDFOCUSJOB_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/axis_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/axis_p.h new file mode 100644 index 0000000..b834050 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/axis_p.h @@ -0,0 +1,86 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_INPUT_AXIS_H +#define QT3DINPUT_INPUT_AXIS_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { + +namespace Input { + +class Q_AUTOTEST_EXPORT Axis : public Qt3DCore::QBackendNode +{ +public: + Axis(); + void cleanup(); + inline QVector inputs() const { return m_inputs; } + inline float axisValue() const { return m_axisValue; } + void setAxisValue(float axisValue); + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) override; + +private: + void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) final; + + QVector m_inputs; + float m_axisValue; +}; + +} // namespace Input + +} // namespace Qt3DInput + +QT_END_NAMESPACE + +#endif // QT3DINPUT_INPUT_AXIS_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/axisaccumulator_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/axisaccumulator_p.h new file mode 100644 index 0000000..bb1a358 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/axisaccumulator_p.h @@ -0,0 +1,100 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_INPUT_AXISACCUMULATOR_H +#define QT3DINPUT_INPUT_AXISACCUMULATOR_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { +namespace Input { + +class AxisManager; + +class Q_AUTOTEST_EXPORT AxisAccumulator : public Qt3DCore::QBackendNode +{ +public: + AxisAccumulator(); + void cleanup(); + + Qt3DCore::QNodeId sourceAxisId() const { return m_sourceAxisId; } + QAxisAccumulator::SourceAxisType sourceAxisType() const { return m_sourceAxisType; } + float scale() const { return m_scale; } + + float value() const Q_DECL_NOTHROW { return m_value; } + void setValue(float value); + + float velocity() const Q_DECL_NOTHROW { return m_velocity; } + void setVelocity(float velocity); + + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) override; + + void stepIntegration(AxisManager *axisManager, float dt); + +private: + void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) final; + + Qt3DCore::QNodeId m_sourceAxisId; + QAxisAccumulator::SourceAxisType m_sourceAxisType; + float m_scale; + float m_value; + float m_velocity; +}; + +} // namespace Input +} // namespace Qt3DInput + +QT_END_NAMESPACE + +#endif // QT3DINPUT_INPUT_AXISACCUMULATOR_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/axisaccumulatorjob_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/axisaccumulatorjob_p.h new file mode 100644 index 0000000..4d38fd7 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/axisaccumulatorjob_p.h @@ -0,0 +1,89 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_INPUT_AXISACCUMULATORJOB_H +#define QT3DINPUT_INPUT_AXISACCUMULATORJOB_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { +namespace Input { + +class AxisAccumulatorManager; +class AxisManager; + +class Q_AUTOTEST_EXPORT AxisAccumulatorJob : public Qt3DCore::QAspectJob +{ +public: + AxisAccumulatorJob(AxisAccumulatorManager *axisAccumulatormanager, + AxisManager *axisManager); + + void setDeltaTime(float dt) { m_dt = dt; } + + void run() override; + +private: + AxisAccumulatorManager *m_axisAccumulatorManager; + AxisManager *m_axisManager; + float m_dt; +}; + +typedef QSharedPointer AxisAccumulatorJobPtr; + +} // namespace Input +} // namespace Qt3DInput + +QT_END_NAMESPACE + +#endif // QT3DINPUT_INPUT_AXISACCUMULATORJOB_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/axissetting_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/axissetting_p.h new file mode 100644 index 0000000..42e1010 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/axissetting_p.h @@ -0,0 +1,87 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_INPUT_AXISSETTING_H +#define QT3DINPUT_INPUT_AXISSETTING_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { +namespace Input { + +class Q_AUTOTEST_EXPORT AxisSetting : public Qt3DCore::QBackendNode +{ +public: + AxisSetting(); + void cleanup(); + + inline float deadZoneRadius() const { return m_deadZoneRadius; } + inline QVector axes() const { return m_axes; } + inline bool isSmoothEnabled() const { return m_smooth; } + +protected: + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) override; + +private: + void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) final; + + float m_deadZoneRadius; + QVector m_axes; + bool m_smooth; +}; + +} // namespace Input +} // namespace Qt3DInput + +QT_END_NAMESPACE + +#endif // QT3DINPUT_INPUT_AXISSETTING_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/buttonaxisinput_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/buttonaxisinput_p.h new file mode 100644 index 0000000..f47a9b5 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/buttonaxisinput_p.h @@ -0,0 +1,103 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_INPUT_BUTTONAXISINPUT_H +#define QT3DINPUT_INPUT_BUTTONAXISINPUT_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { + +namespace Input { + +class Q_AUTOTEST_EXPORT ButtonAxisInput : public AbstractAxisInput +{ +public: + enum UpdateType { + Accelerate, + Decelerate + }; + + ButtonAxisInput(); + void cleanup() final; + + inline float scale() const { return m_scale; } + inline QVector buttons() const { return m_buttons; } + + inline float acceleration() const { return m_acceleration < 0.0f ? qInf() : m_acceleration; } + inline float deceleration() const { return m_deceleration < 0.0f ? qInf() : m_deceleration; } + inline float speedRatio() const { return m_speedRatio; } + inline qint64 lastUpdateTime() const { return m_lastUpdateTime; } + + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) final; + + float process(InputHandler *inputHandler, qint64 currentTime) override; + +private: + void updateSpeedRatio(qint64 currentTime, UpdateType type); + void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) final; + + QVector m_buttons; + float m_scale; + float m_acceleration; + float m_deceleration; + float m_speedRatio; + qint64 m_lastUpdateTime; +}; + +} // namespace Input + +} // namespace Qt3DInput + +QT_END_NAMESPACE + +#endif // QT3DINPUT_INPUT_BUTTONAXISINPUT_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/eventsourcesetterhelper_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/eventsourcesetterhelper_p.h new file mode 100644 index 0000000..48418f1 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/eventsourcesetterhelper_p.h @@ -0,0 +1,99 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef EVENTSOURCESETTERHELPER_H +#define EVENTSOURCESETTERHELPER_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { +class QEventFilterService; +} + +namespace Qt3DInput { + +namespace Input { + +class InputHandler; + +class EventSourceSetterHelper : public QObject +{ + Q_OBJECT +public: + explicit EventSourceSetterHelper(InputHandler *inputHandler); + + // Called from aspect thread + void setEventFilterService(Qt3DCore::QEventFilterService *service); + + // Called from any thread + void setEventSource(QObject *eventSource); + void unsetEventSource(QObject *eventSource); + +private Q_SLOTS: + // Called in main thread + void setEventSourceHelper(QObject *); + +private: + Qt3DCore::QEventFilterService *m_service; + InputHandler *m_inputHandler; + QObject *m_lastEventSource; + QMutex m_mutex; +}; + +} // Input + +} // Qt3DInput + +QT_END_NAMESPACE + +#endif // EVENTSOURCESETTERHELPER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/genericdevicebackendnode_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/genericdevicebackendnode_p.h new file mode 100644 index 0000000..c3ee1e4 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/genericdevicebackendnode_p.h @@ -0,0 +1,106 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef GENERICDEVICEBACKENDNODE_H +#define GENERICDEVICEBACKENDNODE_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { + +class QAbstractPhysicalDevice; + +namespace Input { +class InputHandler; +class GenericDeviceBackendNodeData; +class GenericDeviceBackendNode : public QAbstractPhysicalDeviceBackendNode +{ +public: + explicit GenericDeviceBackendNode(QBackendNode::Mode mode = QBackendNode::ReadWrite); + ~GenericDeviceBackendNode(); + void updateEvents(); + + // QAbstractPhysicalDeviceBackendNode interface + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) override; + void cleanup() override; + float axisValue(int axisIdentifier) const override; + bool isButtonPressed(int buttonIdentifier) const override; + +private: + QHash m_axesValues; + QHash m_buttonsValues; + mutable QMutex m_mutex; +}; + +class GenericDeviceBackendFunctor : public Qt3DCore::QBackendNodeMapper +{ +public: + explicit GenericDeviceBackendFunctor(QInputAspect *inputaspect, InputHandler *handler); + + Qt3DCore::QBackendNode *create(const Qt3DCore::QNodeCreatedChangeBasePtr &change) const override; + Qt3DCore::QBackendNode *get(Qt3DCore::QNodeId id) const override; + void destroy(Qt3DCore::QNodeId id) const override; + +private: + QInputAspect *m_inputAspect; + InputHandler *m_handler; +}; + +} // namespace Input +} // namespace Qt3DInput + +QT_END_NAMESPACE + +#endif // GENERICDEVICEBACKENDNODE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/handle_types_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/handle_types_p.h new file mode 100644 index 0000000..cfe4e66 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/handle_types_p.h @@ -0,0 +1,100 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_INPUT_HANDLE_TYPES_P_H +#define QT3DINPUT_INPUT_HANDLE_TYPES_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { +namespace Input { + +class KeyboardDevice; +class KeyboardHandler; +class MouseHandler; +class MouseDevice; +class Axis; +class AxisActionHandler; +class AbstractAxisInput; +class AxisSetting; +class Action; +class ActionInput; +class InputSequence; +class InputChord; +class LogicalDevice; +class GenericDeviceBackendNode; +class PhysicalDeviceProxy; +class AxisAccumulator; + +typedef Qt3DCore::QHandle HKeyboardDevice; +typedef Qt3DCore::QHandle HKeyboardHandler; +typedef Qt3DCore::QHandle HMouseHandler; +typedef Qt3DCore::QHandle HMouseDevice; +typedef Qt3DCore::QHandle HAxis; +typedef Qt3DCore::QHandle HAxisActionHandler; +typedef Qt3DCore::QHandle HAxisSetting; +typedef Qt3DCore::QHandle HAction; +typedef Qt3DCore::QHandle HAxisInput; +typedef Qt3DCore::QHandle HActionInput; +typedef Qt3DCore::QHandle HInputSequence; +typedef Qt3DCore::QHandle HInputChord; +typedef Qt3DCore::QHandle HLogicalDevice; +typedef Qt3DCore::QHandle HGenericDeviceBackendNode; +typedef Qt3DCore::QHandle HPhysicalDeviceProxy; +typedef Qt3DCore::QHandle HAxisAccumulator; + +} // namespace Input +} // namespace Qt3DInput + +QT_END_NAMESPACE + +#endif // QT3DINPUT_INPUT_HANDLE_TYPES_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/inputbackendnodefunctor_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/inputbackendnodefunctor_p.h new file mode 100644 index 0000000..629e599 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/inputbackendnodefunctor_p.h @@ -0,0 +1,99 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_INPUT_INPUTBACKENDNODEFUNCTOR_P_H +#define QT3DINPUT_INPUT_INPUTBACKENDNODEFUNCTOR_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { + +namespace Input { + +template +class InputNodeFunctor : public Qt3DCore::QBackendNodeMapper +{ +public: + explicit InputNodeFunctor(Manager *manager) + : m_manager(manager) + { + } + + Qt3DCore::QBackendNode *create(const Qt3DCore::QNodeCreatedChangeBasePtr &change) const final + { + Backend *backend = m_manager->getOrCreateResource(change->subjectId()); + return backend; + } + + Qt3DCore::QBackendNode *get(Qt3DCore::QNodeId id) const final + { + return m_manager->lookupResource(id); + } + + void destroy(Qt3DCore::QNodeId id) const final + { + m_manager->releaseResource(id); + } + +private: + Manager *m_manager; +}; + +} // Input + +} // Qt3DInput + +QT_END_NAMESPACE + +#endif // QT3DINPUT_INPUT_INPUTBACKENDNODEFUNCTOR_P_H + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/inputchord_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/inputchord_p.h new file mode 100644 index 0000000..efad2c4 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/inputchord_p.h @@ -0,0 +1,95 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_INPUT_INPUTCHORD_H +#define QT3DINPUT_INPUT_INPUTCHORD_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { + +namespace Input { + +class Q_AUTOTEST_EXPORT InputChord : public AbstractActionInput +{ +public: + InputChord(); + void cleanup(); + + inline QVector chords() const { return m_chords; } + inline qint64 timeout() const { return m_timeout; } + inline qint64 startTime() const { return m_startTime; } + void setStartTime(qint64 time); + void reset(); + bool actionTriggered(Qt3DCore::QNodeId input); + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) override; + + bool process(InputHandler *inputHandler, qint64 currentTime) override; + +private: + void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) final; + + QVector m_chords; + QVector m_inputsToTrigger; + qint64 m_timeout; + qint64 m_startTime; +}; + +} // namespace Input + +} // namespace Qt3DInput + +QT_END_NAMESPACE + +#endif // QT3DINPUT_INPUT_INPUTCHORD_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/inputhandler_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/inputhandler_p.h new file mode 100644 index 0000000..a2a3826 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/inputhandler_p.h @@ -0,0 +1,206 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_INPUT_INPUTHANDLER_P_H +#define QT3DINPUT_INPUT_INPUTHANDLER_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { +class QEventFilterService; +class QNodeId; +} + +namespace Qt3DInput { + +class QInputDeviceIntegration; +class QAbstractPhysicalDevice; + +namespace Input { + +class AbstractActionInput; +class KeyboardInputManager; +class KeyboardDeviceManager; +class KeyboardEventFilter; +class MouseDeviceManager; +class MouseInputManager; +class MouseEventFilter; +class AxisManager; +class AxisAccumulatorManager; +class ActionManager; +class AxisSettingManager; +class ActionInputManager; +class AnalogAxisInputManager; +class ButtonAxisInputManager; +class InputChordManager; +class InputSequenceManager; +class LogicalDeviceManager; +class GenericPhysicalDeviceManager; +class GenericDeviceBackendNodeManager; +class PhysicalDeviceProxyManager; +class InputSettings; +class EventSourceSetterHelper; + +class Q_AUTOTEST_EXPORT InputHandler +{ +public: + InputHandler(); + ~InputHandler(); + + inline KeyboardDeviceManager *keyboardDeviceManager() const { return m_keyboardDeviceManager; } + inline KeyboardInputManager *keyboardInputManager() const { return m_keyboardInputManager; } + inline MouseDeviceManager *mouseDeviceManager() const { return m_mouseDeviceManager; } + inline MouseInputManager *mouseInputManager() const { return m_mouseInputManager; } + inline AxisManager *axisManager() const { return m_axisManager; } + inline AxisAccumulatorManager *axisAccumulatorManager() const { return m_axisAccumulatorManager; } + inline ActionManager *actionManager() const { return m_actionManager; } + inline AxisSettingManager *axisSettingManager() const { return m_axisSettingManager; } + inline ActionInputManager *actionInputManager() const { return m_actionInputManager; } + inline AnalogAxisInputManager *analogAxisInputManager() const { return m_analogAxisInputManager; } + inline ButtonAxisInputManager *buttonAxisInputManager() const { return m_buttonAxisInputManager; } + inline InputChordManager *inputChordManager() const { return m_inputChordManager; } + inline InputSequenceManager *inputSequenceManager() const { return m_inputSequenceManager; } + inline LogicalDeviceManager *logicalDeviceManager() const { return m_logicalDeviceManager; } + inline GenericDeviceBackendNodeManager *genericDeviceBackendNodeManager() const { return m_genericPhysicalDeviceBackendNodeManager; } + inline PhysicalDeviceProxyManager *physicalDeviceProxyManager() const { return m_physicalDeviceProxyManager; } + inline InputSettings *inputSettings() const { return m_settings; } + + void appendKeyEvent(const QT_PREPEND_NAMESPACE(QKeyEvent) &event); + QList pendingKeyEvents(); + void clearPendingKeyEvents(); + + void appendMouseEvent(const QT_PREPEND_NAMESPACE(QMouseEvent) &event); + QList pendingMouseEvents(); + void clearPendingMouseEvents(); + +#if QT_CONFIG(wheelevent) + void appendWheelEvent(const QT_PREPEND_NAMESPACE(QWheelEvent) &event); + QList pendingWheelEvents(); + void clearPendingWheelEvents(); +#endif + + void appendKeyboardDevice(HKeyboardDevice device); + void removeKeyboardDevice(HKeyboardDevice device); + + void appendMouseDevice(HMouseDevice device); + void removeMouseDevice(HMouseDevice device); + + void appendGenericDevice(HGenericDeviceBackendNode device); + void removeGenericDevice(HGenericDeviceBackendNode device); + + QVector keyboardJobs(); + QVector mouseJobs(); + + QVector inputDeviceIntegrations() const; + void addInputDeviceIntegration(QInputDeviceIntegration *inputIntegration); + + void setInputSettings(InputSettings *settings); + void setEventSourceHelper(EventSourceSetterHelper *helper); + EventSourceSetterHelper *eventSourceHelper() const; + + QAbstractPhysicalDevice *createPhysicalDevice(const QString &name); + + void updateEventSource(); + + AbstractActionInput *lookupActionInput(Qt3DCore::QNodeId id) const; + +private: + KeyboardDeviceManager *m_keyboardDeviceManager; + KeyboardInputManager *m_keyboardInputManager; + MouseDeviceManager *m_mouseDeviceManager; + MouseInputManager *m_mouseInputManager; + + QVector m_activeKeyboardDevices; + QVector m_activeMouseDevices; + QVector m_activeGenericPhysicalDevices; + KeyboardEventFilter *m_keyboardEventFilter; + MouseEventFilter *m_mouseEventFilter; + + QList m_pendingKeyEvents; + QList m_pendingMouseEvents; +#if QT_CONFIG(wheelevent) + QList m_pendingWheelEvents; +#endif + mutable QMutex m_mutex; + + AxisManager *m_axisManager; + AxisAccumulatorManager *m_axisAccumulatorManager; + ActionManager *m_actionManager; + AxisSettingManager *m_axisSettingManager; + ActionInputManager *m_actionInputManager; + AnalogAxisInputManager *m_analogAxisInputManager; + ButtonAxisInputManager *m_buttonAxisInputManager; + InputChordManager *m_inputChordManager; + InputSequenceManager *m_inputSequenceManager; + LogicalDeviceManager *m_logicalDeviceManager; + GenericDeviceBackendNodeManager *m_genericPhysicalDeviceBackendNodeManager; + PhysicalDeviceProxyManager *m_physicalDeviceProxyManager; + QVector m_inputDeviceIntegrations; + InputSettings *m_settings; + QScopedPointer m_eventSourceSetter; + + void registerEventFilters(Qt3DCore::QEventFilterService *service); + void unregisterEventFilters(Qt3DCore::QEventFilterService *service); + friend class EventSourceSetterHelper; +}; + +} // namespace Input +} // namespace Qt3DInput + +QT_END_NAMESPACE + +#endif // QT3DINPUT_INPUT_INPUTHANDLER_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/inputmanagers_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/inputmanagers_p.h new file mode 100644 index 0000000..eee8b27 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/inputmanagers_p.h @@ -0,0 +1,226 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_INPUT_INPUTMANAGERS_P_H +#define QT3DINPUT_INPUT_INPUTMANAGERS_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { +namespace Input { + +class KeyboardInputManager : public Qt3DCore::QResourceManager< + KeyboardHandler, + Qt3DCore::QNodeId> +{ +public: + KeyboardInputManager() {} +}; + +class KeyboardDeviceManager : public Qt3DCore::QResourceManager< + KeyboardDevice, + Qt3DCore::QNodeId> +{ +public: + KeyboardDeviceManager() {} +}; + +class MouseDeviceManager : public Qt3DCore::QResourceManager< + MouseDevice, + Qt3DCore::QNodeId> +{ +public: + MouseDeviceManager() {} +}; + +class MouseInputManager : public Qt3DCore::QResourceManager< + MouseHandler, + Qt3DCore::QNodeId> +{ +public: + MouseInputManager() {} +}; + +class AxisManager : public Qt3DCore::QResourceManager< + Axis, + Qt3DCore::QNodeId> +{ +public: + AxisManager() {} +}; + +class AxisSettingManager : public Qt3DCore::QResourceManager< + AxisSetting, + Qt3DCore::QNodeId> +{ +public: + AxisSettingManager() {} +}; + +class ActionManager : public Qt3DCore::QResourceManager< + Action, + Qt3DCore::QNodeId> +{ +public: + ActionManager() {} +}; + +class ActionInputManager : public Qt3DCore::QResourceManager< + ActionInput, + Qt3DCore::QNodeId> +{ +public: + ActionInputManager() {} +}; + +class AnalogAxisInputManager : public Qt3DCore::QResourceManager< + AnalogAxisInput, + Qt3DCore::QNodeId> +{ +public: + AnalogAxisInputManager() {} +}; + +class ButtonAxisInputManager : public Qt3DCore::QResourceManager< + ButtonAxisInput, + Qt3DCore::QNodeId> +{ +public: + ButtonAxisInputManager() {} +}; + +class InputChordManager : public Qt3DCore::QResourceManager< + InputChord, + Qt3DCore::QNodeId> +{ +public: + InputChordManager() {} +}; + +class InputSequenceManager : public Qt3DCore::QResourceManager< + InputSequence, + Qt3DCore::QNodeId> +{ +public: + InputSequenceManager() {} +}; + +class LogicalDeviceManager : public Qt3DCore::QResourceManager< + LogicalDevice, + Qt3DCore::QNodeId> +{ +public: + LogicalDeviceManager() {} + + QVector activeDevices() const { return m_activeDevices; } + void addActiveDevice(HLogicalDevice device) { m_activeDevices.push_back(device); } + void removeActiveDevice(HLogicalDevice device) { m_activeDevices.removeOne(device); } + +private: + QVector m_activeDevices; +}; + +class GenericDeviceBackendNodeManager : public Qt3DCore::QResourceManager< + GenericDeviceBackendNode, + Qt3DCore::QNodeId> +{ +public: + GenericDeviceBackendNodeManager() {} +}; + +class Q_AUTOTEST_EXPORT PhysicalDeviceProxyManager : public Qt3DCore::QResourceManager< + PhysicalDeviceProxy, + Qt3DCore::QNodeId> +{ +public: + PhysicalDeviceProxyManager() {} + + void addPendingProxyToLoad(Qt3DCore::QNodeId id) { m_pendingProxies.push_back(id); } + QVector takePendingProxiesToLoad() { return std::move(m_pendingProxies); } + +private: + QVector m_pendingProxies; +}; + +class AxisAccumulatorManager : public Qt3DCore::QResourceManager< + AxisAccumulator, + Qt3DCore::QNodeId> +{ +public: + AxisAccumulatorManager() {} +}; + +} // namespace Input +} // namespace Qt3DInput + +QT_END_NAMESPACE + +#endif // QT3DINPUT_INPUT_INPUTMANAGERS_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/inputsequence_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/inputsequence_p.h new file mode 100644 index 0000000..3950210 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/inputsequence_p.h @@ -0,0 +1,100 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_INPUT_INPUTSEQUENCE_H +#define QT3DINPUT_INPUT_INPUTSEQUENCE_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { + +namespace Input { + +class Q_AUTOTEST_EXPORT InputSequence : public AbstractActionInput +{ +public: + InputSequence(); + void cleanup(); + + inline QVector sequences() const { return m_sequences; } + inline qint64 timeout() const { return m_timeout; } + inline qint64 buttonInterval() const { return m_buttonInterval; } + inline qint64 startTime() const { return m_startTime; } + void setStartTime(qint64 time); + bool sequenceTriggered() const; + void reset(); + bool actionTriggered(Qt3DCore::QNodeId input, const qint64 currentTime); + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) override; + + bool process(InputHandler *inputHandler, qint64 currentTime) override; + +private: + void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) final; + + QVector m_sequences; + QVector m_inputsToTrigger; + qint64 m_timeout; + qint64 m_buttonInterval; + qint64 m_startTime; + qint64 m_lastInputTime; + Qt3DCore::QNodeId m_lastInputId; +}; + +} // namespace Input + +} // namespace Qt3DInput + +QT_END_NAMESPACE + +#endif // QT3DINPUT_INPUT_INPUTSEQUENCE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/inputsettings_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/inputsettings_p.h new file mode 100644 index 0000000..87cb4de --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/inputsettings_p.h @@ -0,0 +1,99 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_INPUT_INPUTSETTINGS_H +#define QT3DINPUT_INPUT_INPUTSETTINGS_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { + +namespace Input { + +class InputHandler; + +class InputSettings : public Qt3DCore::QBackendNode +{ +public: + InputSettings(); + inline QObject *eventSource() const { return m_eventSource; } + +protected: + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) override; + +private: + void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) final; + + QPointer m_eventSource; +}; + +class InputSettingsFunctor : public Qt3DCore::QBackendNodeMapper +{ +public: + explicit InputSettingsFunctor(InputHandler *handler); + + Qt3DCore::QBackendNode *create(const Qt3DCore::QNodeCreatedChangeBasePtr &change) const override; + Qt3DCore::QBackendNode *get(Qt3DCore::QNodeId id) const override; + void destroy(Qt3DCore::QNodeId id) const override; + +private: + InputHandler *m_handler; +}; + +} // Input + +} // Qt3DInput + +QT_END_NAMESPACE + +#endif // QT3DINPUT_INPUT_INPUTSETTINGS_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/job_common_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/job_common_p.h new file mode 100644 index 0000000..7377e47 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/job_common_p.h @@ -0,0 +1,81 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Paul Lemire +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#ifndef QT3DINPUT_INPUT_JOB_COMMON_P_H +#define QT3DINPUT_INPUT_JOB_COMMON_P_H + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { + +namespace Input { + +namespace JobTypes { + + enum JobType { + AssignKeyboardFocus = 1024, + KeyEventDispatcher, + MouseEventDispatcher, + UpdateAxisAction, + DeviceProxyLoading, + AxisAccumulatorIntegration + }; + +} // JobTypes + +} // Input + +} // Qt3DInput + +QT_END_NAMESPACE + +#endif // QT3DINPUT_INPUT_JOB_COMMON_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/keyboarddevice_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/keyboarddevice_p.h new file mode 100644 index 0000000..781e8ea --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/keyboarddevice_p.h @@ -0,0 +1,285 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_INPUT_KEYBOARDDEVICE_P_H +#define QT3DINPUT_INPUT_KEYBOARDDEVICE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { + +class QInputAspect; + +namespace Input { + +class InputHandler; + +class Q_AUTOTEST_EXPORT KeyboardDevice : public Qt3DInput::QAbstractPhysicalDeviceBackendNode +{ +public: + KeyboardDevice(); + void cleanup() override; + + void requestFocusForInput(Qt3DCore::QNodeId inputId); + void setInputHandler(InputHandler *handler); + + void setCurrentFocusItem(Qt3DCore::QNodeId input); + + float axisValue(int axisIdentifier) const override; + bool isButtonPressed(int buttonIdentifier) const override; + + void updateKeyEvents(const QList &events); + + inline Qt3DCore::QNodeId currentFocusItem() const { return m_currentFocusItem; } + inline Qt3DCore::QNodeId lastKeyboardInputRequester() const { return m_lastRequester; } + +protected: + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &) override; + +private: + void setButtonValue(int key, bool value); + + InputHandler *m_inputHandler; + QVector m_keyboardInputs; + Qt3DCore::QNodeId m_lastRequester; + Qt3DCore::QNodeId m_currentFocusItem; + + union KeyStates { + + struct Buttons + { + // first 4 bytes + bool keyEscape:1; // 0 + bool keyTab:1; // 1 + bool keyBacktab:1; // 2 + bool keyBackspace:1; // 3 + bool keyReturn:1; // 4 + bool keyEnter:1; // 5 + bool keyInsert:1; // 6 + bool keyDelete:1; // 7 + bool keyPause:1; // 8 + bool keyPrint:1; // 9 + bool keySysReq:1; // 10 + bool keyClear:1; // 11 + bool keyHome:1; // 12 + bool keyEnd:1; // 13 + bool keyLeft:1; // 14 + bool keyUp:1; // 15 + bool keyRight:1; // 16 + bool keyDown:1; // 17 + bool keyPageUp:1; // 18 + bool keyPageDown:1; // 19 + bool keyShift:1; // 20 + bool keyControl:1; // 21 + bool keyMeta:1; // 22 + bool keyAlt:1; // 23 + bool keyCapsLock:1; // 24 + bool keyNumLock:1; // 25 + bool keyScrollLock:1; // 26 + bool keyF1:1; // 27 + bool keyF2:1; // 28 + bool keyF3:1; // 29 + bool keyF4:1; // 30 + bool keyF5:1; // 31 + + // second 4 bytes + bool keyF6:1; // 0 + bool keyF7:1; // 1 + bool keyF8:1; // 2 + bool keyF9:1; // 3 + bool keyF10:1; // 4 + bool keyF11:1; // 5 + bool keyF12:1; // 6 + bool keyF13:1; // 7 + bool keyF14:1; // 8 + bool keyF15:1; // 9 + bool keyF16:1; // 10 + bool keyF17:1; // 11 + bool keyF18:1; // 12 + bool keyF19:1; // 13 + bool keyF20:1; // 14 + bool keyF21:1; // 15 + bool keyF22:1; // 16 + bool keyF23:1; // 17 + bool keyF24:1; // 18 + bool keyF25:1; // 19 + bool keyF26:1; // 20 + bool keyF27:1; // 21 + bool keyF28:1; // 22 + bool keyF29:1; // 23 + bool keyF30:1; // 24 + bool keyF31:1; // 25 + bool keyF32:1; // 26 + bool keyF33:1; // 27 + bool keyF34:1; // 28 + bool keyF35:1; // 29 + bool keySuper_L:1; // 30 + bool keySuper_R:1; // 31 + + // third 4 bytes + // unused // 0 + bool keyMenu:1; // 1 + bool keyHyper_L:1; // 2 + bool keyHyper_R:1; // 3 + bool keyHelp:1; // 4 + bool keyDirection_L:1; // 5 + bool keyDirection_R:1; // 6 + bool keySpace:1; // 7 + bool keyAny:1; // 8 + bool keyExclam:1; // 9 + bool keyQuoteDbl:1; // 10 + bool keyNumberSign:1; // 11 + bool keyDollar:1; // 12 + bool keyPercent:1; // 13 + bool keyAmpersand:1; // 14 + bool keyApostrophe:1; // 15 + bool keyParenLeft:1; // 16 + bool keyParenRight:1; // 17 + bool keyAsterisk:1; // 18 + bool keyPlus:1; // 19 + bool keyComma:1; // 20 + bool keyMinus:1; // 21 + bool keyPeriod:1; // 22 + bool keySlash:1; // 23 + bool key0:1; // 24 + bool key1:1; // 25 + bool key2:1; // 26 + bool key3:1; // 27 + bool key4:1; // 28 + bool key5:1; // 29 + bool key6:1; // 30 + bool key7:1; // 31 + + // fourth 4 bytes + bool key8:1; // 0 + bool key9:1; // 1 + bool keyColon:1; // 2 + bool keySemicolon:1; // 3 + bool keyLess:1; // 4 + bool keyEqual:1; // 5 + bool keyGreater:1; // 6 + bool keyQuestion:1; // 7 + bool keyAt:1; // 8 + bool keyA:1; // 9 + bool keyB:1; // 10 + bool keyC:1; // 11 + bool keyD:1; // 12 + bool keyE:1; // 13 + bool keyF:1; // 14 + bool keyG:1; // 15 + bool keyH:1; // 16 + bool keyI:1; // 17 + bool keyJ:1; // 18 + bool keyK:1; // 19 + bool keyL:1; // 20 + bool keyM:1; // 21 + bool keyN:1; // 22 + bool keyO:1; // 23 + bool keyP:1; // 24 + bool keyQ:1; // 25 + bool keyR:1; // 26 + bool keyS:1; // 27 + bool keyT:1; // 28 + bool keyU:1; // 29 + bool keyV:1; // 30 + bool keyW:1; // 31 + + // fifth 4 bytes + bool keyX:1; // 0 + bool keyY:1; // 1 + bool keyZ:1; // 2 + bool keyBracketLeft:1; // 3 + bool keyBackslash:1; // 4 + bool keyBracketRight:1; // 5 + bool keyAsciiCircum:1; // 6 + bool keyUnderscore:1; // 7 + bool keyQuoteLeft:1; // 8 + bool keyBraceLeft:1; // 9 + bool keyBar:1; // 10 + bool keyBraceRight:1; // 11 + bool keyAsciiTilde:1; // 12 + bool keyplusminus:1; // 13 + bool keyonesuperior:1; // 14 + bool keymultiply:1; // 15 + bool keydivision:1; // 16 + bool keyydiaeresis:1; // 17 + }; + qint32 keys[5]; + }; + + KeyStates m_keyStates; +}; + +class KeyboardDeviceFunctor : public Qt3DCore::QBackendNodeMapper +{ +public: + explicit KeyboardDeviceFunctor(QInputAspect *inputaspect, InputHandler *handler); + + Qt3DCore::QBackendNode *create(const Qt3DCore::QNodeCreatedChangeBasePtr &change) const override; + Qt3DCore::QBackendNode *get(Qt3DCore::QNodeId id) const override; + void destroy(Qt3DCore::QNodeId id) const override; + +private: + QInputAspect *m_inputAspect; + InputHandler *m_handler; +}; + +} // namespace Input +} // namespace Qt3DInput + +QT_END_NAMESPACE + +#endif // QT3DINPUT_INPUT_KEYBOARDDEVICE_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/keyboardeventfilter_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/keyboardeventfilter_p.h new file mode 100644 index 0000000..bcf0625 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/keyboardeventfilter_p.h @@ -0,0 +1,83 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_INPUT_KEYBOARDEVENTFILTER_P_H +#define QT3DINPUT_INPUT_KEYBOARDEVENTFILTER_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { +namespace Input { + +class InputHandler; + +class KeyboardEventFilter : public QObject +{ + Q_OBJECT +public: + explicit KeyboardEventFilter(QObject *parent = 0); + void setInputHandler(InputHandler *handler); + inline InputHandler *inputHandler() const { return m_inputHandler; } + +protected: + bool eventFilter(QObject *obj, QEvent *e) override; + +private: + InputHandler *m_inputHandler; +}; + +} // namespace Input +} // namespace Qt3DInput + +QT_END_NAMESPACE + +#endif // QT3DINPUT_INPUT_KEYBOARDEVENTFILTER_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/keyboardhandler_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/keyboardhandler_p.h new file mode 100644 index 0000000..317c337 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/keyboardhandler_p.h @@ -0,0 +1,110 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_INPUT_KEYBOARDHANDLER_P_H +#define QT3DINPUT_INPUT_KEYBOARDHANDLER_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { + +namespace Input { + +class InputHandler; + +class Q_AUTOTEST_EXPORT KeyboardHandler : public Qt3DCore::QBackendNode +{ +public: + KeyboardHandler(); + + Qt3DCore::QNodeId keyboardDevice() const; + void setInputHandler(InputHandler *handler); + void setFocus(bool focus); + void keyEvent(const QKeyEventPtr &event); + + inline bool focus() const { return m_focus; } + + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) override; + +protected: + void requestFocus(); + void setSourcerDevice(Qt3DCore::QNodeId device); + +private: + void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) final; + + InputHandler *m_inputHandler; + Qt3DCore::QNodeId m_keyboardDevice; + bool m_focus; +}; + +class KeyboardHandlerFunctor : public Qt3DCore::QBackendNodeMapper +{ +public: + explicit KeyboardHandlerFunctor(InputHandler *handler); + + Qt3DCore::QBackendNode *create(const Qt3DCore::QNodeCreatedChangeBasePtr &change) const override; + Qt3DCore::QBackendNode *get(Qt3DCore::QNodeId id) const override; + void destroy(Qt3DCore::QNodeId id) const override; + +private: + InputHandler *m_handler; +}; + +} // namespace Input +} // namespace Qt3DInput + +QT_END_NAMESPACE + +#endif // QT3DINPUT_INPUT_KEYBOARDHANDLER_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/keyboardmousegenericdeviceintegration_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/keyboardmousegenericdeviceintegration_p.h new file mode 100644 index 0000000..dd7c5fc --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/keyboardmousegenericdeviceintegration_p.h @@ -0,0 +1,89 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_INPUT_KEYBOARDMOUSEGENERICDEVICEINTEGRATION_P_H +#define QT3DINPUT_INPUT_KEYBOARDMOUSEGENERICDEVICEINTEGRATION_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { + +namespace Input { + +class InputHandler; + +class KeyboardMouseGenericDeviceIntegration : public Qt3DInput::QInputDeviceIntegration +{ + Q_OBJECT +public: + explicit KeyboardMouseGenericDeviceIntegration(InputHandler *handleer); + ~KeyboardMouseGenericDeviceIntegration(); + + QVector jobsToExecute(qint64 time) final; + QAbstractPhysicalDevice *createPhysicalDevice(const QString &name) final; + QVector physicalDevices() const final; + QAbstractPhysicalDeviceBackendNode *physicalDevice(Qt3DCore::QNodeId id) const final; + QStringList deviceNames() const final; + +private: + void onInitialize() final; + + InputHandler *m_handler; +}; + +} // Input + +} // Qt3DInput + +QT_END_NAMESPACE + +#endif // QT3DINPUT_INPUT_KEYBOARDMOUSEGENERICDEVICEINTEGRATION_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/keyeventdispatcherjob_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/keyeventdispatcherjob_p.h new file mode 100644 index 0000000..be2364a --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/keyeventdispatcherjob_p.h @@ -0,0 +1,83 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_INPUT_KEYEVENTDISPATCHERJOB_P_H +#define QT3DINPUT_INPUT_KEYEVENTDISPATCHERJOB_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { +namespace Input { + +class InputHandler; + +class KeyEventDispatcherJob : public Qt3DCore::QAspectJob +{ +public: + explicit KeyEventDispatcherJob(Qt3DCore::QNodeId input, const QList &events); + void setInputHandler(InputHandler *handler); + void run() override; + +private: + InputHandler *m_inputHandler; + const Qt3DCore::QNodeId m_keyboardHandler; + const QList m_events; +}; + +} // namespace Input +} // namespace Qt3DInput + +QT_END_NAMESPACE + +#endif // QT3DINPUT_INPUT_KEYEVENTDISPATCHERJOB_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/loadproxydevicejob_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/loadproxydevicejob_p.h new file mode 100644 index 0000000..f9b343b --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/loadproxydevicejob_p.h @@ -0,0 +1,89 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_INPUT_LOADPROXYDEVICEJOB_P_H +#define QT3DINPUT_INPUT_LOADPROXYDEVICEJOB_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { +namespace Input { + +class InputHandler; + +class Q_AUTOTEST_EXPORT LoadProxyDeviceJob : public Qt3DCore::QAspectJob +{ +public: + LoadProxyDeviceJob(); + ~LoadProxyDeviceJob(); + + void setProxiesToLoad(const QVector &proxies); + void setInputHandler(InputHandler *handler); + + InputHandler *inputHandler() const; + QVector proxies() const; + + void run() final; +private: + InputHandler *m_inputHandler; + QVector m_proxies; +}; + +typedef QSharedPointer LoadProxyDeviceJobPtr; + +} // namespace Input +} // namespace Qt3DInput + +QT_END_NAMESPACE + +#endif // QT3DINPUT_INPUT_LOADPROXYDEVICEJOB_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/logicaldevice_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/logicaldevice_p.h new file mode 100644 index 0000000..138a547 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/logicaldevice_p.h @@ -0,0 +1,104 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_INPUT_LOGICALDEVICE_H +#define QT3DINPUT_INPUT_LOGICALDEVICE_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { + +namespace Input { + +class LogicalDeviceManager; + +class Q_AUTOTEST_EXPORT LogicalDevice : public Qt3DCore::QBackendNode +{ +public: + LogicalDevice(); + void cleanup(); + + inline QVector axes() const { return m_axes; } + inline QVector actions() const { return m_actions; } + + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) override; + +private: + void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) final; + + QVector m_axes; + QVector m_actions; +}; + + +class LogicalDeviceNodeFunctor : public Qt3DCore::QBackendNodeMapper +{ +public: + explicit LogicalDeviceNodeFunctor(LogicalDeviceManager *manager); + + Qt3DCore::QBackendNode *create(const Qt3DCore::QNodeCreatedChangeBasePtr &change) const final; + Qt3DCore::QBackendNode *get(Qt3DCore::QNodeId id) const final; + void destroy(Qt3DCore::QNodeId id) const final; + +private: + LogicalDeviceManager *m_manager; +}; + + +} // namespace Input + +} // namespace Qt3DInput + +QT_END_NAMESPACE + +#endif // QT3DINPUT_INPUT_LOGICALDEVICE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/mousedevice_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/mousedevice_p.h new file mode 100644 index 0000000..d49ea25 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/mousedevice_p.h @@ -0,0 +1,143 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_INPUT_MOUSEDEVICE_H +#define QT3DINPUT_INPUT_MOUSEDEVICE_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { + +class QInputAspect; + +namespace Input { + +class InputHandler; + +class Q_AUTOTEST_EXPORT MouseDevice : public Qt3DInput::QAbstractPhysicalDeviceBackendNode +{ +public: + struct MouseState { + + MouseState() + : xAxis(0.0f) + , yAxis(0.0f) + , wXAxis(0.0f) + , wYAxis(0.0f) + , leftPressed(false) + , rightPressed(false) + , centerPressed(false) + {} + + float xAxis; + float yAxis; + float wXAxis; + float wYAxis; + bool leftPressed; + bool rightPressed; + bool centerPressed; + }; + + MouseDevice(); + ~MouseDevice(); + + void setInputHandler(InputHandler *handler); + InputHandler *inputHandler() const; + + float axisValue(int axisIdentifier) const override; + bool isButtonPressed(int buttonIdentifier) const override; + + void updateMouseEvents(const QList &events); +#if QT_CONFIG(wheelevent) + void updateWheelEvents(const QList &events); +#endif + + MouseState mouseState() const; + QPointF previousPos() const; + bool wasPressed() const; + float sensitivity() const; + + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) override; + +private: + void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) final; + + InputHandler *m_inputHandler; + + MouseState m_mouseState; + QPointF m_previousPos; + bool m_wasPressed; + float m_sensitivity; +}; + +class MouseDeviceFunctor : public Qt3DCore::QBackendNodeMapper +{ +public: + explicit MouseDeviceFunctor(Qt3DInput::QInputAspect *inputAspect, InputHandler *handler); + + Qt3DCore::QBackendNode *create(const Qt3DCore::QNodeCreatedChangeBasePtr &change) const override; + Qt3DCore::QBackendNode *get(Qt3DCore::QNodeId id) const override; + void destroy(Qt3DCore::QNodeId id) const override; + +private: + QInputAspect *m_inputAspect; + InputHandler *m_handler; +}; + +} // namespace Input +} // namespace Qt3DInput + +QT_END_NAMESPACE + +#endif // MOUSEDEVICE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/mouseeventdispatcherjob_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/mouseeventdispatcherjob_p.h new file mode 100644 index 0000000..8abeccf --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/mouseeventdispatcherjob_p.h @@ -0,0 +1,91 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_INPUT_MOUSEEVENTDISPATCHERJOB_P_H +#define QT3DINPUT_INPUT_MOUSEEVENTDISPATCHERJOB_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { +namespace Input { + +class InputHandler; + +class MouseEventDispatcherJob : public Qt3DCore::QAspectJob +{ +public: + explicit MouseEventDispatcherJob(Qt3DCore::QNodeId input, + const QList &mouseEvents +#if QT_CONFIG(wheelevent) + , const QList &wheelEvents +#endif + ); + void setInputHandler(InputHandler *handler); + void run() final; + +private: + InputHandler *m_inputHandler; + const Qt3DCore::QNodeId m_mouseInput; + const QList m_mouseEvents; +#if QT_CONFIG(wheelevent) + const QList m_wheelEvents; +#endif +}; + +} // namespace Input +} // namespace Qt3DInput + +QT_END_NAMESPACE + +#endif // QT3DINPUT_INPUT_MOUSEEVENTDISPATCHERJOB_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/mouseeventfilter_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/mouseeventfilter_p.h new file mode 100644 index 0000000..135b1af --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/mouseeventfilter_p.h @@ -0,0 +1,83 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_INPUT_MOUSEEVENTFILTER_P_H +#define QT3DINPUT_INPUT_MOUSEEVENTFILTER_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { +namespace Input { + +class InputHandler; + +class MouseEventFilter : public QObject +{ + Q_OBJECT +public: + explicit MouseEventFilter(QObject *parent = 0); + void setInputHandler(InputHandler *handler); + inline InputHandler *inputHandler() const { return m_inputHandler; } + +protected: + bool eventFilter(QObject *obj, QEvent *e) override; + +private: + InputHandler *m_inputHandler; +}; + +} // namespace Input +} // namespace Qt3DInput + +QT_END_NAMESPACE + +#endif // QT3DINPUT_INPUT_MOUSEEVENTFILTER_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/mousehandler_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/mousehandler_p.h new file mode 100644 index 0000000..6d748c0 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/mousehandler_p.h @@ -0,0 +1,106 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_INPUT_MOUSEHANDLER_H +#define QT3DINPUT_INPUT_MOUSEHANDLER_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { +namespace Input { + +class InputHandler; + +class MouseHandler : public Qt3DCore::QBackendNode +{ +public: + MouseHandler(); + ~MouseHandler(); + + Qt3DCore::QNodeId mouseDevice() const; + void setInputHandler(InputHandler *handler); + void mouseEvent(const QMouseEventPtr &event); +#if QT_CONFIG(wheelevent) + void wheelEvent(const QWheelEventPtr &event); +#endif + +protected: + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) override; + void setDevice(Qt3DCore::QNodeId device); + +private: + void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) final; + + Qt3DCore::QNodeId m_mouseDevice; + InputHandler *m_inputHandler; +}; + +class MouseHandlerFunctor : public Qt3DCore::QBackendNodeMapper +{ +public: + explicit MouseHandlerFunctor(InputHandler *handler); + + Qt3DCore::QBackendNode *create(const Qt3DCore::QNodeCreatedChangeBasePtr &change) const override; + Qt3DCore::QBackendNode *get(Qt3DCore::QNodeId id) const override; + void destroy(Qt3DCore::QNodeId id) const override; + +private: + InputHandler *m_handler; +}; + +} // namespace Input +} // namespace Qt3DInput + +QT_END_NAMESPACE + +#endif // QT3DINPUT_INPUT_MOUSEHANDLER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/movingaverage_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/movingaverage_p.h new file mode 100644 index 0000000..096f359 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/movingaverage_p.h @@ -0,0 +1,84 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_MOVINGAVERAGE_P_H +#define QT3DINPUT_MOVINGAVERAGE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { +namespace Input { + +class MovingAverage +{ +public: + MovingAverage(unsigned int samples = 3); + + void addSample(float sample); + + float average() const; + +private: + unsigned int m_maxSampleCount; + unsigned int m_sampleCount; + unsigned int m_currentSample; + float m_total; + QVector m_samples; +}; + +} // Input +} // Qt3DInput + +QT_END_NAMESPACE + +#endif // QT3DINPUT_MOVINGAVERAGE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/physicaldeviceproxy_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/physicaldeviceproxy_p.h new file mode 100644 index 0000000..9500a4a --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/physicaldeviceproxy_p.h @@ -0,0 +1,109 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_INPUT_PHYSICALDEVICEPROXY_P_H +#define QT3DINPUT_INPUT_PHYSICALDEVICEPROXY_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { + +class QAbstractPhysicalDevice; + +namespace Input { + +class PhysicalDeviceProxyManager; + +class Q_AUTOTEST_EXPORT PhysicalDeviceProxy : public Qt3DCore::QBackendNode +{ +public: + PhysicalDeviceProxy(); + void cleanup(); + + QString deviceName() const; + + void setManager(PhysicalDeviceProxyManager *manager); + PhysicalDeviceProxyManager *manager() const; + + // Called from a job to update the frontend + void setDevice(QAbstractPhysicalDevice *device); + Qt3DCore::QNodeId physicalDeviceId() const; + +private: + void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) final; + + QString m_deviceName; + PhysicalDeviceProxyManager *m_manager; + Qt3DCore::QNodeId m_physicalDeviceId; +}; + +class PhysicalDeviceProxyNodeFunctor: public Qt3DCore::QBackendNodeMapper +{ +public: + explicit PhysicalDeviceProxyNodeFunctor(PhysicalDeviceProxyManager *manager); + + Qt3DCore::QBackendNode *create(const Qt3DCore::QNodeCreatedChangeBasePtr &change) const final; + Qt3DCore::QBackendNode *get(Qt3DCore::QNodeId id) const final; + void destroy(Qt3DCore::QNodeId id) const final; + +private: + PhysicalDeviceProxyManager *m_manager; +}; + +} // namespace Input + +} // namespace Qt3DInput + +QT_END_NAMESPACE + +#endif // QT3DINPUT_INPUT_PHYSICALDEVICEPROXY_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qabstractactioninput_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qabstractactioninput_p.h new file mode 100644 index 0000000..b7494ee --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qabstractactioninput_p.h @@ -0,0 +1,69 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +****************************************************************************/ + +#ifndef QT3DINPUT_QABSTRACTACTIONINPUT_P_H +#define QT3DINPUT_QABSTRACTACTIONINPUT_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include "qabstractactioninput.h" + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { + +class QAbstractActionInputPrivate : public Qt3DCore::QNodePrivate +{ +}; + +} // Qt3DInput + +QT_END_NAMESPACE + +#endif // QT3DINPUT_QABSTRACTACTIONINPUT_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qabstractaxisinput_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qabstractaxisinput_p.h new file mode 100644 index 0000000..91e0271 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qabstractaxisinput_p.h @@ -0,0 +1,86 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_QABSTRACTAXISINPUT_P_H +#define QT3DINPUT_QABSTRACTAXISINPUT_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { + +class QAbstractPhysicalDevice; + +class QAbstractAxisInputPrivate : public Qt3DCore::QNodePrivate +{ +public: + QAbstractAxisInputPrivate() + : Qt3DCore::QNodePrivate() + , m_sourceDevice(nullptr) + {} + + QAbstractPhysicalDevice *m_sourceDevice; +}; + +struct QAbstractAxisInputData +{ + Qt3DCore::QNodeId sourceDeviceId; +}; + +} // Qt3DInput + +QT_END_NAMESPACE + +#endif // QT3DINPUT_QABSTRACTAXISINPUT_P_H + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qabstractphysicaldevice_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qabstractphysicaldevice_p.h new file mode 100644 index 0000000..e2b67a8 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qabstractphysicaldevice_p.h @@ -0,0 +1,88 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_QABSTRACTPHYSICALDEVICE_P_H +#define QT3DINPUT_QABSTRACTPHYSICALDEVICE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { + +class QAxisSetting; + +class QT3DINPUTSHARED_PRIVATE_EXPORT QAbstractPhysicalDevicePrivate : public Qt3DCore::QNodePrivate +{ +public: + QAbstractPhysicalDevicePrivate(); + ~QAbstractPhysicalDevicePrivate(); + + Q_DECLARE_PUBLIC(QAbstractPhysicalDevice) + QVector m_axisSettings; + QHash m_axesHash; + QHash m_buttonsHash; + + void postAxisEvent(int axis, qreal value); + void postButtonEvent(int button, qreal value); +}; + +} + +QT_END_NAMESPACE + +#endif // QT3DINPUT_QABSTRACTPHYSICALDEVICE_P_H + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qabstractphysicaldevicebackendnode_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qabstractphysicaldevicebackendnode_p.h new file mode 100644 index 0000000..339ad73 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qabstractphysicaldevicebackendnode_p.h @@ -0,0 +1,95 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_QABSTRACTPHYSICALDEVICEBACKENDNODE_P_H +#define QT3DINPUT_QABSTRACTPHYSICALDEVICEBACKENDNODE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { +class QBackendNodePrivate; +} + +namespace Qt3DInput { + +class QInputAspect; +class QAbstractPhysicalDeviceBackendNodePrivate; + +class QT3DINPUTSHARED_PRIVATE_EXPORT QAbstractPhysicalDeviceBackendNode : public Qt3DCore::QBackendNode +{ +public: + explicit QAbstractPhysicalDeviceBackendNode(QBackendNode::Mode mode); + virtual void cleanup(); + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) override; + + void setInputAspect(QInputAspect *aspect); + QInputAspect *inputAspect() const; + + float processedAxisValue(int axisIdentifier); + virtual float axisValue(int axisIdentifier) const = 0; + virtual bool isButtonPressed(int buttonIdentifier) const = 0; + +protected: + QAbstractPhysicalDeviceBackendNode(QAbstractPhysicalDeviceBackendNodePrivate &dd); + + void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) override; + + Q_DECLARE_PRIVATE(QAbstractPhysicalDeviceBackendNode) +}; + +} // Qt3DInput + +QT_END_NAMESPACE + +#endif // QT3DINPUT_QABSTRACTPHYSICALDEVICEBACKENDNODE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qabstractphysicaldevicebackendnode_p_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qabstractphysicaldevicebackendnode_p_p.h new file mode 100644 index 0000000..d6928ac --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qabstractphysicaldevicebackendnode_p_p.h @@ -0,0 +1,114 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_QABSTRACTPHYSICALDEVICEBACKENDNODE_P_P_H +#define QT3DINPUT_QABSTRACTPHYSICALDEVICEBACKENDNODE_P_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { + +class QAxisSetting; +class QInputAspect; + +namespace Input { + +struct AxisIdSetting +{ + int m_axisIdentifier; + Qt3DCore::QNodeId m_axisSettingsId; +}; + +struct AxisIdFilter +{ + int m_axisIdentifier; + MovingAverage m_filter; +}; + +class AxisSetting; + +} + +class QT3DINPUTSHARED_PRIVATE_EXPORT QAbstractPhysicalDeviceBackendNodePrivate : public Qt3DCore::QBackendNodePrivate +{ +public: + explicit QAbstractPhysicalDeviceBackendNodePrivate(Qt3DCore::QBackendNode::Mode mode = Qt3DCore::QBackendNode::ReadOnly); + + Q_DECLARE_PUBLIC(QAbstractPhysicalDeviceBackendNode) + + void addAxisSetting(int axisIdentifier, Qt3DCore::QNodeId axisSettingId); + void removeAxisSetting(Qt3DCore::QNodeId axisSettingsId); + + Input::MovingAverage &getOrCreateFilter(int axisIdentifier); + + Input::AxisSetting *getAxisSetting(Qt3DCore::QNodeId axisSettingId) const; + + QVector convertToAxisIdSettingVector(Qt3DCore::QNodeId axisSettingId) const; + void updatePendingAxisSettings(); + + Qt3DCore::QNodeIdVector m_pendingAxisSettingIds; + QVector m_axisSettings; + QVector m_axisFilters; + QInputAspect *m_inputAspect; +}; + +} + +QT_END_NAMESPACE + +#endif // QT3DINPUT_QABSTRACTPHYSICALDEVICEBACKENDNODE_P_P_H + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qabstractphysicaldeviceproxy_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qabstractphysicaldeviceproxy_p.h new file mode 100644 index 0000000..64c6347 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qabstractphysicaldeviceproxy_p.h @@ -0,0 +1,106 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_QABSTRACTPHYSICALDEVICEPROXY_P_H +#define QT3DINPUT_QABSTRACTPHYSICALDEVICEPROXY_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { + +class QAbstractPhysicalDeviceProxyPrivate; + +class QT3DINPUTSHARED_PRIVATE_EXPORT QAbstractPhysicalDeviceProxy : public QAbstractPhysicalDevice +{ + Q_OBJECT + Q_PROPERTY(QString deviceName READ deviceName CONSTANT) + Q_PROPERTY(QAbstractPhysicalDeviceProxy::DeviceStatus status READ status NOTIFY statusChanged) + +public: + enum DeviceStatus { + Ready = 0, + NotFound + }; + Q_ENUM(DeviceStatus) // LCOV_EXCL_LINE + + QString deviceName() const; + DeviceStatus status() const; + + int axisCount() const override; + int buttonCount() const override; + QStringList axisNames() const override; + QStringList buttonNames() const override; + int axisIdentifier(const QString &name) const override; + int buttonIdentifier(const QString &name) const override; + +Q_SIGNALS: + void statusChanged(QAbstractPhysicalDeviceProxy::DeviceStatus status); + +protected: + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &change) override; + + QAbstractPhysicalDeviceProxy(QAbstractPhysicalDeviceProxyPrivate &dd, Qt3DCore::QNode *parent = nullptr); + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; + +private: + void setDevice(QAbstractPhysicalDevice *device); + Q_DECLARE_PRIVATE(QAbstractPhysicalDeviceProxy) + +}; + +} // Qt3DInput + +QT_END_NAMESPACE + +#endif // QT3DINPUT_QABSTRACTPHYSICALDEVICEPROXY_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qabstractphysicaldeviceproxy_p_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qabstractphysicaldeviceproxy_p_p.h new file mode 100644 index 0000000..2ba8f3b --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qabstractphysicaldeviceproxy_p_p.h @@ -0,0 +1,88 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_QABSTRACTPHYSICALDEVICEPROXY_P_P_H +#define QT3DINPUT_QABSTRACTPHYSICALDEVICEPROXY_P_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { + +class QAbstractPhysicalDeviceProxy; +class QAbstractPhysicalDevice; + +class QT3DINPUTSHARED_PRIVATE_EXPORT QAbstractPhysicalDeviceProxyPrivate : public QAbstractPhysicalDevicePrivate +{ +public: + explicit QAbstractPhysicalDeviceProxyPrivate(const QString &deviceName); + ~QAbstractPhysicalDeviceProxyPrivate(); + + Q_DECLARE_PUBLIC(QAbstractPhysicalDeviceProxy) + QString m_deviceName; + QAbstractPhysicalDeviceProxy::DeviceStatus m_status; + QAbstractPhysicalDevice *m_device; + + void setStatus(QAbstractPhysicalDeviceProxy::DeviceStatus status); +}; + +struct QAbstractPhysicalDeviceProxyData +{ + QString deviceName; +}; + +} // Qt3DInput + +QT_END_NAMESPACE + +#endif // QT3DINPUT_QABSTRACTPHYSICALDEVICEPROXY_P_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qaction_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qaction_p.h new file mode 100644 index 0000000..89c2632 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qaction_p.h @@ -0,0 +1,96 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_QACTION_P_H +#define QT3DINPUT_QACTION_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { + +/*! + \class Qt3DInput::QActionPrivate + \internal +*/ +class QActionPrivate : public Qt3DCore::QNodePrivate +{ +public: + QActionPrivate() + : Qt3DCore::QNodePrivate() + , m_active(false) + {} + + Q_DECLARE_PUBLIC(QAction) + + QVector m_inputs; + bool m_active; + + void setActive(bool active) + { + if (active != m_active) { + m_active = active; + Q_EMIT q_func()->activeChanged(active); + } + } +}; + +struct QActionData +{ + QVector inputIds; +}; + +} // namespace Qt3DInput + +QT_END_NAMESPACE + +#endif // QT3DINPUT_QACTION_P_H + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qactioninput_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qactioninput_p.h new file mode 100644 index 0000000..74a69d6 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qactioninput_p.h @@ -0,0 +1,88 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_QACTIONINPUT_P_H +#define QT3DINPUT_QACTIONINPUT_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { + +class QAbstractPhysicalDevice; + +/*! + \class Qt3DInput::QActionInputPrivate + \internal +*/ +class QActionInputPrivate : public QAbstractActionInputPrivate +{ +public: + QActionInputPrivate(); + + QVector m_buttons; + QAbstractPhysicalDevice *m_sourceDevice; +}; + +struct QActionInputData +{ + Qt3DCore::QNodeId sourceDeviceId; + QVector buttons; +}; + +} // Qt3DInput + +QT_END_NAMESPACE + +#endif // QT3DINPUT_QACTIONINPUT_P_H + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qanalogaxisinput_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qanalogaxisinput_p.h new file mode 100644 index 0000000..1dbe58a --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qanalogaxisinput_p.h @@ -0,0 +1,81 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_QANALOGAXISINPUT_P_H +#define QT3DINPUT_QANALOGAXISINPUT_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { + +class QAnalogAxisInputPrivate : public QAbstractAxisInputPrivate +{ +public: + QAnalogAxisInputPrivate() + : QAbstractAxisInputPrivate() + , m_axis(-1) + {} + + int m_axis; +}; + +struct QAnalogAxisInputData : public QAbstractAxisInputData +{ + int axis; +}; + +} // Qt3DInput + +QT_END_NAMESPACE + +#endif // QT3DINPUT_QBUTTONAXISINPUT_P_H + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qaxis_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qaxis_p.h new file mode 100644 index 0000000..8d0582a --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qaxis_p.h @@ -0,0 +1,94 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_QAXIS_P_H +#define QT3DINPUT_QAXIS_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { + +class QAbstractAxisInput; + +class QAxisPrivate : public Qt3DCore::QNodePrivate +{ +public: + QAxisPrivate() + : Qt3DCore::QNodePrivate() + , m_value(0.0f) + {} + + Q_DECLARE_PUBLIC(QAxis) + + QVector m_inputs; + float m_value; + + void setValue(float value) + { + if (value != m_value) { + m_value = value; + Q_EMIT q_func()->valueChanged(m_value); + } + } +}; + +struct QAxisData +{ + QVector inputIds; +}; + +} // Qt3DInput + +QT_END_NAMESPACE + +#endif // QT3DINPUT_QAXIS_P_H + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qaxisaccumulator_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qaxisaccumulator_p.h new file mode 100644 index 0000000..a936f54 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qaxisaccumulator_p.h @@ -0,0 +1,90 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_QAXISACCUMULATOR_P_H +#define QT3DINPUT_QAXISACCUMULATOR_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { + +class QAxisAccumulatorPrivate : public Qt3DCore::QComponentPrivate +{ +public: + QAxisAccumulatorPrivate(); + + Q_DECLARE_PUBLIC(QAxisAccumulator) + + void setValue(float value); + void setVelocity(float velocity); + + QAxis *m_sourceAxis; + QAxisAccumulator::SourceAxisType m_sourceAxisType; + float m_scale; + float m_value; + float m_velocity; +}; + +struct QAxisAccumulatorData +{ + Qt3DCore::QNodeId sourceAxisId; + QAxisAccumulator::SourceAxisType sourceAxisType; + float scale; +}; + +} // Qt3DInput + +QT_END_NAMESPACE + +#endif // QT3DINPUT_QAXISACCUMULATOR_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qaxissetting_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qaxissetting_p.h new file mode 100644 index 0000000..b3d162e --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qaxissetting_p.h @@ -0,0 +1,87 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_QAXISSETTING_P_H +#define QT3DINPUT_QAXISSETTING_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { + +class QAxisSettingPrivate : public Qt3DCore::QNodePrivate +{ +public: + QAxisSettingPrivate() + : Qt3DCore::QNodePrivate() + , m_deadZoneRadius(0.0f) + , m_axes() + , m_smooth(false) + {} + + float m_deadZoneRadius; + QVector m_axes; + bool m_smooth; +}; + +struct QAxisSettingData +{ + float deadZoneRadius; + QVector axes; + bool smooth; +}; + +} // Qt3DInput + +QT_END_NAMESPACE + +#endif // QT3DINPUT_QAXISSETTING_P_H + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qbuttonaxisinput_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qbuttonaxisinput_p.h new file mode 100644 index 0000000..849498f --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qbuttonaxisinput_p.h @@ -0,0 +1,89 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_QBUTTONAXISINPUT_P_H +#define QT3DINPUT_QBUTTONAXISINPUT_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { + +class QButtonAxisInputPrivate : public QAbstractAxisInputPrivate +{ +public: + QButtonAxisInputPrivate() + : QAbstractAxisInputPrivate() + , m_scale(1.0f) + , m_acceleration(-1.0f) + , m_deceleration(-1.0f) + {} + + QVector m_buttons; + float m_scale; + float m_acceleration; + float m_deceleration; +}; + +struct QButtonAxisInputData : public QAbstractAxisInputData +{ + QVector buttons; + float scale; + float acceleration; + float deceleration; +}; + +} // Qt3DInput + +QT_END_NAMESPACE + +#endif // QT3DINPUT_QBUTTONAXISINPUT_P_H + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qgamepadinput_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qgamepadinput_p.h new file mode 100644 index 0000000..c064f1c --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qgamepadinput_p.h @@ -0,0 +1,80 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QGAMEPADINPUT_P_H +#define QGAMEPADINPUT_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { +class QGamepadInputPrivate; + +class QT3DINPUTSHARED_PRIVATE_EXPORT QGamepadInput : public QAbstractPhysicalDevice +{ + Q_OBJECT + Q_PROPERTY(int deviceId READ deviceId WRITE setDeviceId NOTIFY deviceIdChanged) +public: + explicit QGamepadInput(Qt3DCore::QNode *parent = nullptr); + + int deviceId() const; + void setDeviceId(int deviceId); + +Q_SIGNALS: + void deviceIdChanged(); + +private: + Q_DECLARE_PRIVATE(QGamepadInput) +}; + +} // Qt3DInput +QT_END_NAMESPACE + +#endif // QGAMEPADINPUT_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qgenericinputdevice_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qgenericinputdevice_p.h new file mode 100644 index 0000000..b46eada --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qgenericinputdevice_p.h @@ -0,0 +1,84 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef GENERICDEVICE_P_H +#define GENERICDEVICE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { + +class QT3DINPUTSHARED_PRIVATE_EXPORT QGenericInputDevice : public QAbstractPhysicalDevice +{ + Q_OBJECT + Q_PROPERTY(QVariantMap axesMap READ axesMap WRITE setAxesMap NOTIFY axesMapChanged) + Q_PROPERTY(QVariantMap buttonsMap READ buttonsMap WRITE setButtonsMap NOTIFY buttonsMapChanged) +public: + QGenericInputDevice(Qt3DCore::QNode *parent = nullptr); + + QVariantMap axesMap() const; + void setAxesMap(const QVariantMap &axesMap); + QVariantMap buttonsMap() const; + void setButtonsMap(const QVariantMap &buttonsMap); + +Q_SIGNALS: + void axesMapChanged(); + void buttonsMapChanged(); +}; + +} // Qt3DInput + +QT_END_NAMESPACE + +#endif // GENERICDEVICE_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qinputaspect_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qinputaspect_p.h new file mode 100644 index 0000000..bcdd8d4 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qinputaspect_p.h @@ -0,0 +1,83 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_QINPUTASPECT_P_H +#define QT3DINPUT_QINPUTASPECT_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { + +class QInputAspect; + +namespace Input { +class InputHandler; +class KeyboardMouseGenericDeviceIntegration; +} + +class QInputAspectPrivate : public Qt3DCore::QAbstractAspectPrivate +{ +public: + QInputAspectPrivate(); + void loadInputDevicePlugins(); + + Q_DECLARE_PUBLIC(QInputAspect) + QScopedPointer m_inputHandler; + QScopedPointer m_keyboardMouseIntegration; + qint64 m_time; +}; + +} // namespace Qt3DInput + +QT_END_NAMESPACE + +#endif // QT3DINPUT_QINPUTASPECT_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qinputchord_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qinputchord_p.h new file mode 100644 index 0000000..37cbbd9 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qinputchord_p.h @@ -0,0 +1,88 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_QINPUTCHORD_P_H +#define QT3DINPUT_QINPUTCHORD_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { + +class QAbstractActionInput; + +/*! + \class Qt3DInput::QInputChordPrivate + \internal +*/ +class QInputChordPrivate : public QAbstractActionInputPrivate +{ +public: + QInputChordPrivate(); + + int m_timeout; + QVector m_chords; +}; + +struct QInputChordData +{ + Qt3DCore::QNodeIdVector chordIds; + int timeout; +}; + +} // Qt3DInput + +QT_END_NAMESPACE + +#endif // QT3DINPUT_QINPUTCHORD_P_H + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qinputdeviceintegration_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qinputdeviceintegration_p.h new file mode 100644 index 0000000..a066d76 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qinputdeviceintegration_p.h @@ -0,0 +1,112 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_QINPUTDEVICEINTEGRATION_P_H +#define QT3DINPUT_QINPUTDEVICEINTEGRATION_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { +class QBackendNodeMapper; +typedef QSharedPointer QBackendNodeMapperPtr; +} + + +namespace Qt3DInput { + +class QInputAspect; +class QAbstractPhysicalDevice; +class QInputDeviceIntegrationPrivate; + +class QT3DINPUTSHARED_PRIVATE_EXPORT QInputDeviceIntegration : public QObject +{ + Q_OBJECT +protected: + explicit QInputDeviceIntegration(QObject *parent = nullptr); + explicit QInputDeviceIntegration(QInputDeviceIntegrationPrivate &dd, QObject *parent = nullptr); + + template + void registerBackendType(const Qt3DCore::QBackendNodeMapperPtr &functor) + { + registerBackendType(Frontend::staticMetaObject, functor); + } + + void registerBackendType(const QMetaObject &metaObject, const Qt3DCore::QBackendNodeMapperPtr &functor); + +public: + void initialize(Qt3DInput::QInputAspect *aspect); + + virtual QVector jobsToExecute(qint64 time) = 0; + virtual QAbstractPhysicalDevice *createPhysicalDevice(const QString &name) = 0; + virtual QVector physicalDevices() const = 0; + virtual QAbstractPhysicalDeviceBackendNode *physicalDevice(Qt3DCore::QNodeId id) const = 0; + virtual QStringList deviceNames() const = 0; + +protected: + QInputAspect *inputAspect() const; + +private: + virtual void onInitialize() = 0; + + Q_DECLARE_PRIVATE(QInputDeviceIntegration) +}; + +} // namespace Qt3DInput + +QT_END_NAMESPACE + +#endif // QT3DINPUT_QINPUTDEVICEINTEGRATION_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qinputdeviceintegration_p_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qinputdeviceintegration_p_p.h new file mode 100644 index 0000000..31eea4c --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qinputdeviceintegration_p_p.h @@ -0,0 +1,78 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_QINPUTDEVICEINTEGRATION_P_P_H +#define QT3DINPUT_QINPUTDEVICEINTEGRATION_P_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { + +class QInputAspect; +class QInputDeviceIntegration; + +class QT3DINPUTSHARED_PRIVATE_EXPORT QInputDeviceIntegrationPrivate : public QObjectPrivate +{ +public: + QInputDeviceIntegrationPrivate(); + + Q_DECLARE_PUBLIC(QInputDeviceIntegration) + + QInputAspect *m_aspect; +}; + +} // Qt3DInput + +QT_END_NAMESPACE + +#endif // QT3DINPUT_QINPUTDEVICEINTEGRATION_P_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qinputdeviceintegrationfactory_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qinputdeviceintegrationfactory_p.h new file mode 100644 index 0000000..e3d7759 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qinputdeviceintegrationfactory_p.h @@ -0,0 +1,74 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_QINPUTDEVICEINTEGRATIONFACTORY_P_H +#define QT3DINPUT_QINPUTDEVICEINTEGRATIONFACTORY_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { + +class QInputDeviceIntegration; + +class QInputDeviceIntegrationFactory +{ +public: + static QStringList keys(const QString &pluginPath = QString()); + static QInputDeviceIntegration *create(const QString &name, const QStringList &args, const QString &pluginPath = QString()); +}; + +} // Qt3DInput + +QT_END_NAMESPACE + +#endif // QT3DINPUT_QINPUTDEVICEINTEGRATIONFACTORY_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qinputdeviceplugin_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qinputdeviceplugin_p.h new file mode 100644 index 0000000..a2f93eb --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qinputdeviceplugin_p.h @@ -0,0 +1,82 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_QINPUTDEVICEPLUGIN_P_H +#define QT3DINPUT_QINPUTDEVICEPLUGIN_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { + +class QInputDeviceIntegration; + +class QT3DINPUTSHARED_PRIVATE_EXPORT QInputDevicePlugin : public QObject +{ + Q_OBJECT +public: + explicit QInputDevicePlugin(QObject *parent = nullptr); + ~QInputDevicePlugin(); + + virtual QInputDeviceIntegration *create(const QString &key, const QStringList ¶mList); +}; + +} // Qt3DInput + +#define QInputDevicePlugin_iid "org.qt-project.Qt3DInput.QInputDevicePlugin 5.6" + +QT_END_NAMESPACE + +#endif // QT3DINPUT_QINPUTDEVICEPLUGIN_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qinputsequence_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qinputsequence_p.h new file mode 100644 index 0000000..b2807b2 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qinputsequence_p.h @@ -0,0 +1,90 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_QINPUTSEQUENCE_P_H +#define QT3DINPUT_QINPUTSEQUENCE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { + +class QAbstractActionInput; + +/*! + \class Qt3DInput::QInputChordSequence + \internal +*/ +class QInputSequencePrivate : public QAbstractActionInputPrivate +{ +public: + QInputSequencePrivate(); + + int m_timeout; + int m_buttonInterval; + QVector m_sequences; +}; + +struct QInputSequenceData +{ + Qt3DCore::QNodeIdVector sequenceIds; + int timeout; + int buttonInterval; +}; + +} // Qt3DInput + +QT_END_NAMESPACE + +#endif // QT3DINPUT_QINPUTSEQUENCE_P_H + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qinputsettings_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qinputsettings_p.h new file mode 100644 index 0000000..584e597 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qinputsettings_p.h @@ -0,0 +1,80 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_QINPUTSETTINGS_P_H +#define QT3DINPUT_QINPUTSETTINGS_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { + +class QInputSettingsPrivate : public Qt3DCore::QComponentPrivate +{ +public: + QInputSettingsPrivate(); + + QObject *m_eventSource; + QMetaObject::Connection m_connection; +}; + +struct QInputSettingsData +{ + QPointer eventSource; +}; + +} // Qt3DInput + +QT_END_NAMESPACE + +#endif // QT3DINPUT_QINPUTSETTINGS_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qkeyboarddevice_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qkeyboarddevice_p.h new file mode 100644 index 0000000..8399b06 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qkeyboarddevice_p.h @@ -0,0 +1,82 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_INPUT_QKEYBOARDDEVICE_P_H +#define QT3DINPUT_INPUT_QKEYBOARDDEVICE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { + +class QKeyboardDevice; +class QKeyboardHandler; + +class QKeyboardDevicePrivate : public Qt3DInput::QAbstractPhysicalDevicePrivate +{ +public: + QKeyboardDevicePrivate(); + + Q_DECLARE_PUBLIC(QKeyboardDevice) + QKeyboardHandler *m_activeInput; + QHash m_keyMap; + QStringList m_keyNames; +}; + +} // namespace Qt3DInput + +QT_END_NAMESPACE + +#endif // QT3DINPUT_INPUT_QKEYBOARDDEVICE_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qkeyboardhandler_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qkeyboardhandler_p.h new file mode 100644 index 0000000..9de55f9 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qkeyboardhandler_p.h @@ -0,0 +1,86 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_INPUT_QKEYBOARDHANDLER_P_H +#define QT3DINPUT_INPUT_QKEYBOARDHANDLER_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { + +class QKeyboardHandler; +class QKeyboardDevice; + +class QKeyboardHandlerPrivate : public Qt3DCore::QComponentPrivate +{ +public: + QKeyboardHandlerPrivate(); + ~QKeyboardHandlerPrivate(); + + void keyEvent(QKeyEvent *event); + + Q_DECLARE_PUBLIC(QKeyboardHandler) + QKeyboardDevice *m_keyboardDevice; + bool m_focus; +}; + +struct QKeyboardHandlerData +{ + Qt3DCore::QNodeId keyboardDeviceId; + bool focus; +}; + +} // namespace Qt3DInput + +QT_END_NAMESPACE + +#endif // QT3DINPUT_INPUT_QKEYBOARDHANDLER_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qlogicaldevice_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qlogicaldevice_p.h new file mode 100644 index 0000000..e04d238 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qlogicaldevice_p.h @@ -0,0 +1,86 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_QLOGICALDEVICE_P_H +#define QT3DINPUT_QLOGICALDEVICE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { + +/*! + \internal +*/ +class QLogicalDevicePrivate : public Qt3DCore::QComponentPrivate +{ +public: + QLogicalDevicePrivate(); + ~QLogicalDevicePrivate(); + + QVector m_actions; + QVector m_axes; +}; + +struct QLogicalDeviceData +{ + QVector actionIds; + QVector axisIds; +}; + +} // namespace Qt3DInput + +QT_END_NAMESPACE + +#endif // QT3DINPUT_QLOGICALDEVICE_P_H + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qmousedevice_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qmousedevice_p.h new file mode 100644 index 0000000..49c1c61 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qmousedevice_p.h @@ -0,0 +1,82 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_QMOUSEDEVICE_P_H +#define QT3DINPUT_QMOUSEDEVICE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { + +class QMouseDevice; + +class QMouseDevicePrivate : public Qt3DInput::QAbstractPhysicalDevicePrivate +{ +public: + QMouseDevicePrivate(); + + Q_DECLARE_PUBLIC(QMouseDevice) + + float m_sensitivity; +}; + +struct QMouseDeviceData +{ + float sensitivity; +}; + +} // namespace Qt3DInput + +QT_END_NAMESPACE + +#endif // QT3DINPUT_QMOUSEDEVICE_P_H + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qmousehandler_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qmousehandler_p.h new file mode 100644 index 0000000..6c7f8b2 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qmousehandler_p.h @@ -0,0 +1,95 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_QMOUSEHANDLER_P_H +#define QT3DINPUT_QMOUSEHANDLER_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include + +QT_BEGIN_NAMESPACE + +class QTimer; + +namespace Qt3DInput { + +class QMouseHandler; +class QMouseDevice; + +class QMouseHandlerPrivate : public Qt3DCore::QComponentPrivate +{ +public: + QMouseHandlerPrivate(); + ~QMouseHandlerPrivate(); + + void init(QObject *parent); + + QMouseDevice *m_mouseDevice; + bool m_containsMouse; + QTimer *m_pressAndHoldTimer = nullptr; + QMouseEventPtr m_lastPressedEvent; + + void mouseEvent(const QMouseEventPtr &event); + + Q_DECLARE_PUBLIC(QMouseHandler) +}; + +struct QMouseHandlerData +{ + Qt3DCore::QNodeId mouseDeviceId; +}; + +} // namespace Qt3DInput + +QT_END_NAMESPACE + +#endif // QT3DINPUT_QMOUSEHANDLER_P_H + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qphysicaldevicecreatedchange_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qphysicaldevicecreatedchange_p.h new file mode 100644 index 0000000..7dcc7eb --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qphysicaldevicecreatedchange_p.h @@ -0,0 +1,71 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_QPHYSICALDEVICECREATEDCHANGEBASE_P_H +#define QT3DINPUT_QPHYSICALDEVICECREATEDCHANGEBASE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { + +class QAbstractPhysicalDevice; + +class QPhysicalDeviceCreatedChangeBasePrivate : public Qt3DCore::QNodeCreatedChangeBasePrivate +{ +public: + QPhysicalDeviceCreatedChangeBasePrivate(const QAbstractPhysicalDevice *device); + + Qt3DCore::QNodeIdVector m_axisSettingIds; +}; + +} // namespace Qt3DInput + +QT_END_NAMESPACE + +#endif // QT3DINPUT_QPHYSICALDEVICECREATEDCHANGEBASE_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qt3dinput_global_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qt3dinput_global_p.h new file mode 100644 index 0000000..1bbc488 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/qt3dinput_global_p.h @@ -0,0 +1,59 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_GLOBAL_P_H +#define QT3DINPUT_GLOBAL_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include "qt3dinput_global.h" + +#define QT3DINPUTSHARED_PRIVATE_EXPORT QT3DINPUTSHARED_EXPORT + +#endif // QT3DINPUT_GLOBAL_P_H + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/updateaxisactionjob_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/updateaxisactionjob_p.h new file mode 100644 index 0000000..719923a --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/updateaxisactionjob_p.h @@ -0,0 +1,96 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_INPUT_UPDATEAXISACTIONJOB_H +#define QT3DINPUT_INPUT_UPDATEAXISACTIONJOB_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { + +class QAbstractPhysicalDeviceBackendNode; + +namespace Input { + +class AbstractAxisInput; +class ButtonAxisInput; +class InputHandler; + +class UpdateAxisActionJob : public Qt3DCore::QAspectJob +{ +public: + explicit UpdateAxisActionJob(qint64 currentTime, InputHandler *handler, HLogicalDevice handle); + void run() final; + +private: + void updateAction(LogicalDevice *device); + bool processActionInput(const Qt3DCore::QNodeId actionInputId); + void updateAxis(LogicalDevice *device); + float processAxisInput(const Qt3DCore::QNodeId axisInputId); + + const qint64 m_currentTime; + InputHandler *m_handler; + HLogicalDevice m_handle; +}; + +typedef QSharedPointer UpdateAxisActionJobPtr; + +} // Input + +} // Qt3DInput + +QT_END_NAMESPACE + +#endif // QT3DINPUT_INPUT_UPDATEAXISACTIONJOB_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/utils_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/utils_p.h new file mode 100644 index 0000000..65363ab --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/5.12.5/Qt3DInput/private/utils_p.h @@ -0,0 +1,103 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_INPUT_UTILS_P_H +#define QT3DINPUT_INPUT_UTILS_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { + +namespace Input { + +namespace Utils { + +template +QAbstractPhysicalDeviceBackendNode *physicalDeviceForInput(InputClass *input, InputHandler *handler) +{ + // Note: the source device can be a proxy + // in which case sourceDeviceId should be the proxy's device id + Qt3DCore::QNodeId sourceDeviceId = input->sourceDevice(); + + { + PhysicalDeviceProxy *deviceProxy = nullptr; + if ((deviceProxy = handler->physicalDeviceProxyManager()->lookupResource(sourceDeviceId)) != nullptr) + sourceDeviceId = deviceProxy->physicalDeviceId(); + } + + // Early return if the sourceDeviceId is null + if (!sourceDeviceId.isNull()) { + const auto integrations = handler->inputDeviceIntegrations(); + for (QInputDeviceIntegration *integration : integrations) { + QAbstractPhysicalDeviceBackendNode *physicalDeviceBackend = integration->physicalDevice(sourceDeviceId); + if (physicalDeviceBackend) + return physicalDeviceBackend; + } + } + + return nullptr; +} + +} // Utils + +} // Input + +} // Qt3DInput + +QT_END_NAMESPACE + + +#endif // QT3DINPUT_INPUT_UTILS_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QAbstractActionInput b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QAbstractActionInput new file mode 100644 index 0000000..06d68f2 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QAbstractActionInput @@ -0,0 +1 @@ +#include "qabstractactioninput.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QAbstractAxisInput b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QAbstractAxisInput new file mode 100644 index 0000000..b06089d --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QAbstractAxisInput @@ -0,0 +1 @@ +#include "qabstractaxisinput.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QAbstractPhysicalDevice b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QAbstractPhysicalDevice new file mode 100644 index 0000000..c0ac161 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QAbstractPhysicalDevice @@ -0,0 +1 @@ +#include "qabstractphysicaldevice.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QAction b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QAction new file mode 100644 index 0000000..43a5a8e --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QAction @@ -0,0 +1 @@ +#include "qaction.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QActionInput b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QActionInput new file mode 100644 index 0000000..935ed59 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QActionInput @@ -0,0 +1 @@ +#include "qactioninput.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QAnalogAxisInput b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QAnalogAxisInput new file mode 100644 index 0000000..1152e9c --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QAnalogAxisInput @@ -0,0 +1 @@ +#include "qanalogaxisinput.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QAxis b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QAxis new file mode 100644 index 0000000..cde34f7 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QAxis @@ -0,0 +1 @@ +#include "qaxis.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QAxisAccumulator b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QAxisAccumulator new file mode 100644 index 0000000..35b7fc9 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QAxisAccumulator @@ -0,0 +1 @@ +#include "qaxisaccumulator.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QAxisSetting b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QAxisSetting new file mode 100644 index 0000000..57a831e --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QAxisSetting @@ -0,0 +1 @@ +#include "qaxissetting.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QButtonAxisInput b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QButtonAxisInput new file mode 100644 index 0000000..6c301d2 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QButtonAxisInput @@ -0,0 +1 @@ +#include "qbuttonaxisinput.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QInputAspect b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QInputAspect new file mode 100644 index 0000000..79cdd51 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QInputAspect @@ -0,0 +1 @@ +#include "qinputaspect.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QInputChord b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QInputChord new file mode 100644 index 0000000..b1daa06 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QInputChord @@ -0,0 +1 @@ +#include "qinputchord.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QInputSequence b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QInputSequence new file mode 100644 index 0000000..09f6f3f --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QInputSequence @@ -0,0 +1 @@ +#include "qinputsequence.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QInputSettings b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QInputSettings new file mode 100644 index 0000000..a2fd9dc --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QInputSettings @@ -0,0 +1 @@ +#include "qinputsettings.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QKeyEvent b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QKeyEvent new file mode 100644 index 0000000..9af01ae --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QKeyEvent @@ -0,0 +1 @@ +#include "qkeyevent.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QKeyEventPtr b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QKeyEventPtr new file mode 100644 index 0000000..9af01ae --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QKeyEventPtr @@ -0,0 +1 @@ +#include "qkeyevent.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QKeyboardDevice b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QKeyboardDevice new file mode 100644 index 0000000..9c1af37 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QKeyboardDevice @@ -0,0 +1 @@ +#include "qkeyboarddevice.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QKeyboardHandler b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QKeyboardHandler new file mode 100644 index 0000000..383b647 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QKeyboardHandler @@ -0,0 +1 @@ +#include "qkeyboardhandler.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QLogicalDevice b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QLogicalDevice new file mode 100644 index 0000000..67fb9fc --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QLogicalDevice @@ -0,0 +1 @@ +#include "qlogicaldevice.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QMouseDevice b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QMouseDevice new file mode 100644 index 0000000..67390e9 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QMouseDevice @@ -0,0 +1 @@ +#include "qmousedevice.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QMouseEvent b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QMouseEvent new file mode 100644 index 0000000..2ae2943 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QMouseEvent @@ -0,0 +1 @@ +#include "qmouseevent.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QMouseEventPtr b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QMouseEventPtr new file mode 100644 index 0000000..2ae2943 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QMouseEventPtr @@ -0,0 +1 @@ +#include "qmouseevent.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QMouseHandler b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QMouseHandler new file mode 100644 index 0000000..c027b26 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QMouseHandler @@ -0,0 +1 @@ +#include "qmousehandler.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QPhysicalDeviceCreatedChange b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QPhysicalDeviceCreatedChange new file mode 100644 index 0000000..16feccb --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QPhysicalDeviceCreatedChange @@ -0,0 +1 @@ +#include "qphysicaldevicecreatedchange.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QPhysicalDeviceCreatedChangeBase b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QPhysicalDeviceCreatedChangeBase new file mode 100644 index 0000000..16feccb --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QPhysicalDeviceCreatedChangeBase @@ -0,0 +1 @@ +#include "qphysicaldevicecreatedchange.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QPhysicalDeviceCreatedChangeBasePtr b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QPhysicalDeviceCreatedChangeBasePtr new file mode 100644 index 0000000..16feccb --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QPhysicalDeviceCreatedChangeBasePtr @@ -0,0 +1 @@ +#include "qphysicaldevicecreatedchange.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QWheelEvent b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QWheelEvent new file mode 100644 index 0000000..2ae2943 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QWheelEvent @@ -0,0 +1 @@ +#include "qmouseevent.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QWheelEventPtr b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QWheelEventPtr new file mode 100644 index 0000000..2ae2943 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/QWheelEventPtr @@ -0,0 +1 @@ +#include "qmouseevent.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/Qt3DInput b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/Qt3DInput new file mode 100644 index 0000000..a5377b7 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/Qt3DInput @@ -0,0 +1,27 @@ +#ifndef QT_QT3DINPUT_MODULE_H +#define QT_QT3DINPUT_MODULE_H +#include +#include "qabstractactioninput.h" +#include "qabstractaxisinput.h" +#include "qabstractphysicaldevice.h" +#include "qaction.h" +#include "qactioninput.h" +#include "qanalogaxisinput.h" +#include "qaxis.h" +#include "qaxisaccumulator.h" +#include "qaxissetting.h" +#include "qbuttonaxisinput.h" +#include "qinputaspect.h" +#include "qinputchord.h" +#include "qinputsequence.h" +#include "qinputsettings.h" +#include "qkeyboarddevice.h" +#include "qkeyboardhandler.h" +#include "qkeyevent.h" +#include "qlogicaldevice.h" +#include "qmousedevice.h" +#include "qmouseevent.h" +#include "qmousehandler.h" +#include "qphysicaldevicecreatedchange.h" +#include "qt3dinputversion.h" +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/Qt3DInputDepends b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/Qt3DInputDepends new file mode 100644 index 0000000..441398e --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/Qt3DInputDepends @@ -0,0 +1,7 @@ +/* This file was generated by qmake with the info from /src/input/input.pro. */ +#ifdef __cplusplus /* create empty PCH in C mode */ +#include +#include +#include +#include +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/Qt3DInputVersion b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/Qt3DInputVersion new file mode 100644 index 0000000..c42b173 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/Qt3DInputVersion @@ -0,0 +1 @@ +#include "qt3dinputversion.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/qabstractactioninput.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/qabstractactioninput.h new file mode 100644 index 0000000..a0c18cb --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/qabstractactioninput.h @@ -0,0 +1,65 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +****************************************************************************/ + +#ifndef QT3DINPUT_QABSTRACTACTIONINPUT_H +#define QT3DINPUT_QABSTRACTACTIONINPUT_H + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { + +class QAbstractActionInputPrivate; + +class QT3DINPUTSHARED_EXPORT QAbstractActionInput : public Qt3DCore::QNode +{ + Q_OBJECT +public: + ~QAbstractActionInput(); + +protected: + explicit QAbstractActionInput(QAbstractActionInputPrivate &dd, Qt3DCore::QNode *parent = nullptr); +}; + +} // Qt3DInput + +QT_END_NAMESPACE + +#endif // QT3DINPUT_QABSTRACTACTIONINPUT_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/qabstractaxisinput.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/qabstractaxisinput.h new file mode 100644 index 0000000..c0a93da --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/qabstractaxisinput.h @@ -0,0 +1,81 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_QABSTRACTAXISINPUT_H +#define QT3DINPUT_QABSTRACTAXISINPUT_H + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { + +class QAbstractPhysicalDevice; +class QAbstractAxisInputPrivate; + +class QT3DINPUTSHARED_EXPORT QAbstractAxisInput : public Qt3DCore::QNode +{ + Q_OBJECT + Q_PROPERTY(Qt3DInput::QAbstractPhysicalDevice *sourceDevice READ sourceDevice WRITE setSourceDevice NOTIFY sourceDeviceChanged) + +public: + ~QAbstractAxisInput(); + + QAbstractPhysicalDevice *sourceDevice() const; + +public Q_SLOTS: + void setSourceDevice(QAbstractPhysicalDevice *sourceDevice); + +Q_SIGNALS: + void sourceDeviceChanged(QAbstractPhysicalDevice *sourceDevice); + +protected: + QAbstractAxisInput(QAbstractAxisInputPrivate &dd, QNode *parent = nullptr); + +private: + Q_DECLARE_PRIVATE(QAbstractAxisInput) +}; + +} // Qt3DInput + +QT_END_NAMESPACE + +#endif // QQT3DINPUT_ABSTRACTAXISINPUT_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/qabstractphysicaldevice.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/qabstractphysicaldevice.h new file mode 100644 index 0000000..bf93bc9 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/qabstractphysicaldevice.h @@ -0,0 +1,87 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_QABSTRACTPHYSICALDEVICE +#define QT3DINPUT_QABSTRACTPHYSICALDEVICE + +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { + +class QAxisSetting; +class QInputAspect; +class QAbstractPhysicalDevicePrivate; + +class QT3DINPUTSHARED_EXPORT QAbstractPhysicalDevice : public Qt3DCore::QNode +{ + Q_OBJECT +public: + explicit QAbstractPhysicalDevice(Qt3DCore::QNode *parent = nullptr); + ~QAbstractPhysicalDevice(); + + virtual int axisCount() const; + virtual int buttonCount() const; + virtual QStringList axisNames() const; + virtual QStringList buttonNames() const; + + virtual int axisIdentifier(const QString &name) const; + virtual int buttonIdentifier(const QString &name) const; + + void addAxisSetting(QAxisSetting *axisSetting); + void removeAxisSetting(QAxisSetting *axisSetting); + QVector axisSettings() const; + +protected: + QAbstractPhysicalDevice(QAbstractPhysicalDevicePrivate &dd, Qt3DCore::QNode *parent = nullptr); + Q_DECLARE_PRIVATE(QAbstractPhysicalDevice) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +} // Qt3DInput + +QT_END_NAMESPACE + + +#endif // QT3DINPUT_QABSTRACTPHYSICALDEVICE + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/qaction.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/qaction.h new file mode 100644 index 0000000..4b282e0 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/qaction.h @@ -0,0 +1,82 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_QACTION_H +#define QT3DINPUT_QACTION_H + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { + +class QActionPrivate; +class QAbstractActionInput; + +class QT3DINPUTSHARED_EXPORT QAction : public Qt3DCore::QNode +{ + Q_OBJECT + Q_PROPERTY(bool active READ isActive NOTIFY activeChanged) +public: + explicit QAction(Qt3DCore::QNode *parent = nullptr); + ~QAction(); + + bool isActive() const; + + void addInput(QAbstractActionInput *input); + void removeInput(QAbstractActionInput *input); + QVector inputs() const; + +Q_SIGNALS: + void activeChanged(bool isActive); + +protected: + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &change) override; + +private: + Q_DECLARE_PRIVATE(QAction) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +} // Qt3DInput + +QT_END_NAMESPACE + +#endif // QT3DINPUT_QACTION_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/qactioninput.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/qactioninput.h new file mode 100644 index 0000000..c4c2c93 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/qactioninput.h @@ -0,0 +1,84 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_QACTIONINPUT_H +#define QT3DINPUT_QACTIONINPUT_H + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { + +class QAbstractPhysicalDevice; +class QActionInputPrivate; + +class QT3DINPUTSHARED_EXPORT QActionInput : public Qt3DInput::QAbstractActionInput +{ + Q_OBJECT + Q_PROPERTY(Qt3DInput::QAbstractPhysicalDevice *sourceDevice READ sourceDevice WRITE setSourceDevice NOTIFY sourceDeviceChanged) + Q_PROPERTY(QVector buttons READ buttons WRITE setButtons NOTIFY buttonsChanged) + +public: + explicit QActionInput(Qt3DCore::QNode *parent = nullptr); + ~QActionInput(); + + QAbstractPhysicalDevice *sourceDevice() const; + QVector buttons() const; + +public Q_SLOTS: + void setSourceDevice(QAbstractPhysicalDevice *sourceDevice); + void setButtons(const QVector &buttons); + +Q_SIGNALS: + void sourceDeviceChanged(QAbstractPhysicalDevice *sourceDevice); + void buttonsChanged(const QVector &buttons); + +private: + Q_DECLARE_PRIVATE(QActionInput) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +} // Qt3DInput + +QT_END_NAMESPACE + +#endif // QT3DINPUT_QACTIONINPUT_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/qanalogaxisinput.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/qanalogaxisinput.h new file mode 100644 index 0000000..9fe221b --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/qanalogaxisinput.h @@ -0,0 +1,78 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_QANALOGAXISINPUT_H +#define QT3DINPUT_QANALOGAXISINPUT_H + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { + +class QAnalogAxisInputPrivate; + +class QT3DINPUTSHARED_EXPORT QAnalogAxisInput : public QAbstractAxisInput +{ + Q_OBJECT + Q_PROPERTY(int axis READ axis WRITE setAxis NOTIFY axisChanged) + +public: + explicit QAnalogAxisInput(Qt3DCore::QNode *parent = nullptr); + ~QAnalogAxisInput(); + + int axis() const; + +public Q_SLOTS: + void setAxis(int axis); + +Q_SIGNALS: + void axisChanged(int axis); + +private: + Q_DECLARE_PRIVATE(QAnalogAxisInput) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +} // Qt3DInput + +QT_END_NAMESPACE + +#endif // QT3DINPUT_QANALOGAXISINPUT_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/qaxis.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/qaxis.h new file mode 100644 index 0000000..a6d0b3b --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/qaxis.h @@ -0,0 +1,81 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +****************************************************************************/ + +#ifndef QT3DINPUT_QAXIS_H +#define QT3DINPUT_QAXIS_H + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { + +class QAxisPrivate; +class QAbstractAxisInput; + +class QT3DINPUTSHARED_EXPORT QAxis : public Qt3DCore::QNode +{ + Q_OBJECT + Q_PROPERTY(float value READ value NOTIFY valueChanged) +public: + explicit QAxis(Qt3DCore::QNode *parent = nullptr); + ~QAxis(); + + void addInput(QAbstractAxisInput *input); + void removeInput(QAbstractAxisInput *input); + QVector inputs() const; + + float value() const; + +Q_SIGNALS: + void valueChanged(float value); + +protected: + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &change) override; + +private: + Q_DECLARE_PRIVATE(QAxis) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +} // Qt3DInput + +QT_END_NAMESPACE + +#endif // QT3DINPUT_QAXIS_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/qaxisaccumulator.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/qaxisaccumulator.h new file mode 100644 index 0000000..633713b --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/qaxisaccumulator.h @@ -0,0 +1,102 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_QAXISACCUMULATOR_H +#define QT3DINPUT_QAXISACCUMULATOR_H + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { + +class QAxis; +class QAxisAccumulatorPrivate; + +class QT3DINPUTSHARED_EXPORT QAxisAccumulator : public Qt3DCore::QComponent +{ + Q_OBJECT + Q_PROPERTY(Qt3DInput::QAxis *sourceAxis READ sourceAxis WRITE setSourceAxis NOTIFY sourceAxisChanged) + Q_PROPERTY(SourceAxisType sourceAxisType READ sourceAxisType WRITE setSourceAxisType NOTIFY sourceAxisTypeChanged) + Q_PROPERTY(float scale READ scale WRITE setScale NOTIFY scaleChanged) + Q_PROPERTY(float value READ value NOTIFY valueChanged) + Q_PROPERTY(float velocity READ velocity NOTIFY velocityChanged) + +public: + enum SourceAxisType { + Velocity, + Acceleration + }; + Q_ENUM(SourceAxisType) // LCOV_EXCL_LINE + + QAxisAccumulator(Qt3DCore::QNode *parent = nullptr); + ~QAxisAccumulator(); + + Qt3DInput::QAxis *sourceAxis() const; + SourceAxisType sourceAxisType() const; + float value() const; + float velocity() const; + float scale() const; + +public Q_SLOTS: + void setSourceAxis(Qt3DInput::QAxis *sourceAxis); + void setSourceAxisType(QAxisAccumulator::SourceAxisType sourceAxisType); + void setScale(float scale); + +Q_SIGNALS: + void sourceAxisChanged(Qt3DInput::QAxis *sourceAxis); + void sourceAxisTypeChanged(QAxisAccumulator::SourceAxisType sourceAxisType); + void valueChanged(float value); + void velocityChanged(float value); + void scaleChanged(float scale); + +protected: + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &change) override; + +private: + Q_DECLARE_PRIVATE(QAxisAccumulator) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +} // namespace Qt3DInput + +QT_END_NAMESPACE + +#endif // QT3DINPUT_QAXISACCUMULATOR_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/qaxissetting.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/qaxissetting.h new file mode 100644 index 0000000..196dec7 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/qaxissetting.h @@ -0,0 +1,87 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_QAXISSETTING_H +#define QT3DINPUT_QAXISSETTING_H + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { + +class QAxisSettingPrivate; + +class QT3DINPUTSHARED_EXPORT QAxisSetting : public Qt3DCore::QNode +{ + Q_OBJECT + Q_PROPERTY(float deadZoneRadius READ deadZoneRadius WRITE setDeadZoneRadius NOTIFY deadZoneRadiusChanged) + Q_PROPERTY(QVector axes READ axes WRITE setAxes NOTIFY axesChanged) + Q_PROPERTY(bool smooth READ isSmoothEnabled WRITE setSmoothEnabled NOTIFY smoothChanged) + +public: + explicit QAxisSetting(Qt3DCore::QNode *parent = nullptr); + ~QAxisSetting(); + + float deadZoneRadius() const; + QVector axes() const; + bool isSmoothEnabled() const; + +public Q_SLOTS: + void setDeadZoneRadius(float deadZoneRadius); + void setAxes(const QVector &axes); + void setSmoothEnabled(bool enabled); + +Q_SIGNALS: + void deadZoneRadiusChanged(float deadZoneRadius); + void axesChanged(const QVector &axes); + void smoothChanged(bool smooth); + +private: + Q_DECLARE_PRIVATE(QAxisSetting) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +} // namespace Qt3DInput + +QT_END_NAMESPACE + +#endif // QT3DINPUT_QAXISSETTING_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/qbuttonaxisinput.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/qbuttonaxisinput.h new file mode 100644 index 0000000..38223b6 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/qbuttonaxisinput.h @@ -0,0 +1,93 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_QBUTTONAXISINPUT_H +#define QT3DINPUT_QBUTTONAXISINPUT_H + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { + +class QButtonAxisInputPrivate; + +class QT3DINPUTSHARED_EXPORT QButtonAxisInput : public QAbstractAxisInput +{ + Q_OBJECT + Q_PROPERTY(float scale READ scale WRITE setScale NOTIFY scaleChanged) + Q_PROPERTY(QVector buttons READ buttons WRITE setButtons NOTIFY buttonsChanged) + Q_PROPERTY(float acceleration READ acceleration WRITE setAcceleration NOTIFY accelerationChanged) + Q_PROPERTY(float deceleration READ deceleration WRITE setDeceleration NOTIFY decelerationChanged) + +public: + explicit QButtonAxisInput(Qt3DCore::QNode *parent = nullptr); + ~QButtonAxisInput(); + + float scale() const; + QVector buttons() const; + + float acceleration() const; + float deceleration() const; + +public Q_SLOTS: + void setScale(float scale); + void setButtons(const QVector &buttons); + + void setAcceleration(float acceleration); + void setDeceleration(float deceleration); + +Q_SIGNALS: + void scaleChanged(float scale); + void buttonsChanged(const QVector &buttons); + + void accelerationChanged(float acceleration); + void decelerationChanged(float deceleration); + +private: + Q_DECLARE_PRIVATE(QButtonAxisInput) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +} // Qt3DInput + +QT_END_NAMESPACE + +#endif // QT3DINPUT_QBUTTONAXISINPUT_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/qinputaspect.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/qinputaspect.h new file mode 100644 index 0000000..90781d2 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/qinputaspect.h @@ -0,0 +1,79 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_QINPUTASPECT_H +#define QT3DINPUT_QINPUTASPECT_H + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { + +class QAbstractPhysicalDevice; +class QInputAspectPrivate; +class QInputDeviceIntegration; + +class QT3DINPUTSHARED_EXPORT QInputAspect : public Qt3DCore::QAbstractAspect +{ + Q_OBJECT +public: + explicit QInputAspect(QObject *parent = nullptr); + ~QInputAspect(); + + QAbstractPhysicalDevice *createPhysicalDevice(const QString &name); + QStringList availablePhysicalDevices() const; + +private: + QVector jobsToExecute(qint64 time) override; + + void onRegistered() override; + void onUnregistered() override; + + Q_DECLARE_PRIVATE(QInputAspect) + explicit QInputAspect(QInputAspectPrivate &dd, QObject *parent); + friend class QInputDeviceIntegration; +}; + +} // namespace Qt3DInput + +QT_END_NAMESPACE + +#endif // QT3DINPUT_QINPUTASPECT_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/qinputchord.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/qinputchord.h new file mode 100644 index 0000000..cfc5806 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/qinputchord.h @@ -0,0 +1,84 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_QINPUTCHORD_H +#define QT3DINPUT_QINPUTCHORD_H + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { + +class QAbstractPhysicalDevice; +class QInputChordPrivate; + +class QT3DINPUTSHARED_EXPORT QInputChord : public Qt3DInput::QAbstractActionInput +{ + Q_OBJECT + Q_PROPERTY(int timeout READ timeout WRITE setTimeout NOTIFY timeoutChanged) + +public: + explicit QInputChord(Qt3DCore::QNode *parent = nullptr); + ~QInputChord(); + + int timeout() const; + + void addChord(QAbstractActionInput *input); + void removeChord(QAbstractActionInput *input); + QVector chords() const; + +public Q_SLOTS: + void setTimeout(int timeout); + +Q_SIGNALS: + void timeoutChanged(int timeout); + +private: + Q_DECLARE_PRIVATE(QInputChord) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +} // Qt3DInput + +QT_END_NAMESPACE + +#endif // QT3DINPUT_QINPUTCHORD_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/qinputsequence.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/qinputsequence.h new file mode 100644 index 0000000..acdad12 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/qinputsequence.h @@ -0,0 +1,88 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_QINPUTSEQUENCE_H +#define QT3DINPUT_QINPUTSEQUENCE_H + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { + +class QAbstractPhysicalDevice; +class QInputSequencePrivate; + +class QT3DINPUTSHARED_EXPORT QInputSequence : public Qt3DInput::QAbstractActionInput +{ + Q_OBJECT + Q_PROPERTY(int timeout READ timeout WRITE setTimeout NOTIFY timeoutChanged) + Q_PROPERTY(int buttonInterval READ buttonInterval WRITE setButtonInterval NOTIFY buttonIntervalChanged) + +public: + explicit QInputSequence(Qt3DCore::QNode *parent = nullptr); + ~QInputSequence(); + + int timeout() const; + int buttonInterval() const; + + void addSequence(QAbstractActionInput *input); + void removeSequence(QAbstractActionInput *input); + QVector sequences() const; + +public Q_SLOTS: + void setTimeout(int timeout); + void setButtonInterval(int buttonInterval); + +Q_SIGNALS: + void timeoutChanged(int timeout); + void buttonIntervalChanged(int buttonInterval); + +private: + Q_DECLARE_PRIVATE(QInputSequence) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +} // Qt3DInput + +QT_END_NAMESPACE + +#endif // QT3DINPUT_QINPUTSEQUENCE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/qinputsettings.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/qinputsettings.h new file mode 100644 index 0000000..10f25d6 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/qinputsettings.h @@ -0,0 +1,78 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_QINPUTSETTINGS_H +#define QT3DINPUT_QINPUTSETTINGS_H + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { + +class QInputSettingsPrivate; + +class QT3DINPUTSHARED_EXPORT QInputSettings : public Qt3DCore::QComponent +{ + Q_OBJECT + Q_PROPERTY(QObject *eventSource READ eventSource WRITE setEventSource NOTIFY eventSourceChanged) +public: + explicit QInputSettings(Qt3DCore::QNode *parent = nullptr); + ~QInputSettings(); + + QObject *eventSource() const; + +public Q_SLOTS: + void setEventSource(QObject *eventSource); + +Q_SIGNALS: + void eventSourceChanged(QObject *); + +private: + Q_DECLARE_PRIVATE(QInputSettings) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; + void eventSourceDestroyed(); +}; + +} // Qt3DInput + +QT_END_NAMESPACE + +#endif // QINPUTSETTINGS_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/qkeyboarddevice.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/qkeyboarddevice.h new file mode 100644 index 0000000..b418be5 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/qkeyboarddevice.h @@ -0,0 +1,88 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_INPUT_QKEYBOARDDEVICE_H +#define QT3DINPUT_INPUT_QKEYBOARDDEVICE_H + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { + +class QKeyboardDevicePrivate; +class QKeyboardHandler; + +class QT3DINPUTSHARED_EXPORT QKeyboardDevice : public Qt3DInput::QAbstractPhysicalDevice +{ + Q_OBJECT + Q_PROPERTY(Qt3DInput::QKeyboardHandler *activeInput READ activeInput NOTIFY activeInputChanged) + +public: + explicit QKeyboardDevice(QNode *parent = nullptr); + ~QKeyboardDevice(); + + QKeyboardHandler *activeInput() const; + + int axisCount() const final; + int buttonCount() const final; + QStringList axisNames() const final; + QStringList buttonNames() const final; + int axisIdentifier(const QString &name) const final; + int buttonIdentifier(const QString &name) const final; + +protected: + explicit QKeyboardDevice(QKeyboardDevicePrivate &dd, QNode *parent = nullptr); + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &change) override; + +Q_SIGNALS: + void activeInputChanged(QKeyboardHandler *activeInput); + +private: + Q_DECLARE_PRIVATE(QKeyboardDevice) + void setActiveInput(QKeyboardHandler *activeInput); +}; + +} // namespace Qt3DInput + +QT_END_NAMESPACE + +#endif // QT3DINPUT_INPUT_QKEYBOARDDEVICE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/qkeyboardhandler.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/qkeyboardhandler.h new file mode 100644 index 0000000..02b4fe1 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/qkeyboardhandler.h @@ -0,0 +1,130 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_INPUT_QKEYBOARDHANDLER_H +#define QT3DINPUT_INPUT_QKEYBOARDHANDLER_H + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { + +class QKeyboardDevice; +class QKeyboardHandlerPrivate; + +class QT3DINPUTSHARED_EXPORT QKeyboardHandler : public Qt3DCore::QComponent +{ + Q_OBJECT + Q_PROPERTY(Qt3DInput::QKeyboardDevice *sourceDevice READ sourceDevice WRITE setSourceDevice NOTIFY sourceDeviceChanged) + Q_PROPERTY(bool focus READ focus WRITE setFocus NOTIFY focusChanged) +public: + explicit QKeyboardHandler(QNode *parent = nullptr); + ~QKeyboardHandler(); + + Qt3DInput::QKeyboardDevice *sourceDevice() const; + bool focus() const; + +public Q_SLOTS: + void setSourceDevice(Qt3DInput::QKeyboardDevice *keyboardDevice); + void setFocus(bool focus); + +Q_SIGNALS: + void sourceDeviceChanged(QKeyboardDevice *keyboardDevice); + void focusChanged(bool focus); + + void digit0Pressed(Qt3DInput::QKeyEvent *event); + void digit1Pressed(Qt3DInput::QKeyEvent *event); + void digit2Pressed(Qt3DInput::QKeyEvent *event); + void digit3Pressed(Qt3DInput::QKeyEvent *event); + void digit4Pressed(Qt3DInput::QKeyEvent *event); + void digit5Pressed(Qt3DInput::QKeyEvent *event); + void digit6Pressed(Qt3DInput::QKeyEvent *event); + void digit7Pressed(Qt3DInput::QKeyEvent *event); + void digit8Pressed(Qt3DInput::QKeyEvent *event); + void digit9Pressed(Qt3DInput::QKeyEvent *event); + + void leftPressed(Qt3DInput::QKeyEvent *event); + void rightPressed(Qt3DInput::QKeyEvent *event); + void upPressed(Qt3DInput::QKeyEvent *event); + void downPressed(Qt3DInput::QKeyEvent *event); + void tabPressed(Qt3DInput::QKeyEvent *event); + void backtabPressed(Qt3DInput::QKeyEvent *event); + + void asteriskPressed(Qt3DInput::QKeyEvent *event); + void numberSignPressed(Qt3DInput::QKeyEvent *event); + void escapePressed(Qt3DInput::QKeyEvent *event); + void returnPressed(Qt3DInput::QKeyEvent *event); + void enterPressed(Qt3DInput::QKeyEvent *event); + void deletePressed(Qt3DInput::QKeyEvent *event); + void spacePressed(Qt3DInput::QKeyEvent *event); + void backPressed(Qt3DInput::QKeyEvent *event); + void cancelPressed(Qt3DInput::QKeyEvent *event); + void selectPressed(Qt3DInput::QKeyEvent *event); + void yesPressed(Qt3DInput::QKeyEvent *event); + void noPressed(Qt3DInput::QKeyEvent *event); + void context1Pressed(Qt3DInput::QKeyEvent *event); + void context2Pressed(Qt3DInput::QKeyEvent *event); + void context3Pressed(Qt3DInput::QKeyEvent *event); + void context4Pressed(Qt3DInput::QKeyEvent *event); + void callPressed(Qt3DInput::QKeyEvent *event); + void hangupPressed(Qt3DInput::QKeyEvent *event); + void flipPressed(Qt3DInput::QKeyEvent *event); + void menuPressed(Qt3DInput::QKeyEvent *event); + void volumeUpPressed(Qt3DInput::QKeyEvent *event); + void volumeDownPressed(Qt3DInput::QKeyEvent *event); + + void pressed(Qt3DInput::QKeyEvent *event); + void released(Qt3DInput::QKeyEvent *event); + +protected: + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &change) override; + +private: + Q_DECLARE_PRIVATE(QKeyboardHandler) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +} // namespace Qt3DInput + +QT_END_NAMESPACE + +#endif // QT3DINPUT_INPUT_QKEYBOARDHANDLER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/qkeyevent.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/qkeyevent.h new file mode 100644 index 0000000..e028438 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/qkeyevent.h @@ -0,0 +1,93 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_QKEYEVENT_H +#define QT3DINPUT_QKEYEVENT_H + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { + +class QKeyEventPrivate; +class QKeyEvent; + +typedef QSharedPointer QKeyEventPtr; + +class QT3DINPUTSHARED_EXPORT QKeyEvent : public QObject +{ + Q_OBJECT + Q_PROPERTY(int key READ key CONSTANT) + Q_PROPERTY(QString text READ text CONSTANT) + Q_PROPERTY(int modifiers READ modifiers CONSTANT) + Q_PROPERTY(bool isAutoRepeat READ isAutoRepeat CONSTANT) + Q_PROPERTY(int count READ count CONSTANT) + Q_PROPERTY(quint32 nativeScanCode READ nativeScanCode CONSTANT) + Q_PROPERTY(bool accepted READ isAccepted WRITE setAccepted) + +public: + explicit QKeyEvent(QEvent::Type type, int key, Qt::KeyboardModifiers modifiers, const QString &text=QString(), bool autorep=false, ushort count=1); + explicit QKeyEvent(const QT_PREPEND_NAMESPACE(QKeyEvent) &ke); + ~QKeyEvent(); + + inline int key() const { return m_event.key(); } + inline QString text() const { return m_event.text(); } + inline int modifiers() const { return m_event.modifiers(); } + inline bool isAutoRepeat() const { return m_event.isAutoRepeat(); } + inline int count() const { return m_event.count(); } + inline quint32 nativeScanCode() const { return m_event.nativeScanCode(); } + inline bool isAccepted() const { return m_event.isAccepted(); } + inline void setAccepted(bool accepted) { m_event.setAccepted(accepted); } + inline QEvent::Type type() const { return m_event.type(); } +#if QT_CONFIG(shortcut) + Q_INVOKABLE bool matches(QKeySequence::StandardKey key_) const { return m_event.matches(key_); } +#endif + +private: + QT_PREPEND_NAMESPACE(QKeyEvent) m_event; +}; + +} // namespace Qt3DInput + +QT_END_NAMESPACE + +#endif // QT3DINPUT_QKEYEVENT_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/qlogicaldevice.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/qlogicaldevice.h new file mode 100644 index 0000000..4b32a0c --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/qlogicaldevice.h @@ -0,0 +1,78 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_QLOGICALDEVICE_H +#define QT3DINPUT_QLOGICALDEVICE_H + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { + +class QLogicalDevicePrivate; +class QAction; +class QAxis; + +class QT3DINPUTSHARED_EXPORT QLogicalDevice : public Qt3DCore::QComponent +{ + Q_OBJECT +public: + explicit QLogicalDevice(Qt3DCore::QNode *parent = nullptr); + ~QLogicalDevice(); + + void addAction(QAction *action); + void removeAction(QAction *action); + QVector actions() const; + + void addAxis(QAxis *axis); + void removeAxis(QAxis *axis); + QVector axes() const; + +private: + Q_DECLARE_PRIVATE(QLogicalDevice) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +} // Qt3DInput + +QT_END_NAMESPACE + +#endif // QT3DINPUT_QLOGICALDEVICE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/qmousedevice.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/qmousedevice.h new file mode 100644 index 0000000..9e6d2c5 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/qmousedevice.h @@ -0,0 +1,101 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_QMOUSEDEVICE_H +#define QT3DINPUT_QMOUSEDEVICE_H + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { + +class QMouseDevicePrivate; +class QMouseHandler; + +class QMouseInput; + + +class QT3DINPUTSHARED_EXPORT QMouseDevice : public Qt3DInput::QAbstractPhysicalDevice +{ + Q_OBJECT + Q_PROPERTY(float sensitivity READ sensitivity WRITE setSensitivity NOTIFY sensitivityChanged) +public: + explicit QMouseDevice(Qt3DCore::QNode *parent = nullptr); + ~QMouseDevice(); + + enum Axis { + X, + Y, + WheelX, + WheelY + }; + Q_ENUM(Axis) // LCOV_EXCL_LINE + + int axisCount() const final; + int buttonCount() const final; + QStringList axisNames() const final; + QStringList buttonNames() const final; + int axisIdentifier(const QString &name) const final; + int buttonIdentifier(const QString &name) const final; + + float sensitivity() const; + +public Q_SLOTS: + void setSensitivity(float value); + +Q_SIGNALS: + void sensitivityChanged(float value); + +protected: + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &change) override; + +private: + Q_DECLARE_PRIVATE(QMouseDevice) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +} // namespace Qt3DInput + +QT_END_NAMESPACE + +Q_DECLARE_METATYPE(Qt3DInput::QMouseDevice*) // LCOV_EXCL_LINE + +#endif // QT3DINPUT_QMOUSEDEVICE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/qmouseevent.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/qmouseevent.h new file mode 100644 index 0000000..63786ac --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/qmouseevent.h @@ -0,0 +1,170 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_QMOUSEEVENT_H +#define QT3DINPUT_QMOUSEEVENT_H + +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { + +class QT3DINPUTSHARED_EXPORT QMouseEvent : public QObject +{ + Q_OBJECT + Q_PROPERTY(int x READ x CONSTANT) + Q_PROPERTY(int y READ y CONSTANT) + Q_PROPERTY(bool wasHeld READ wasHeld CONSTANT) + Q_PROPERTY(Qt3DInput::QMouseEvent::Buttons button READ button CONSTANT) + Q_PROPERTY(int buttons READ buttons CONSTANT) + Q_PROPERTY(Qt3DInput::QMouseEvent::Modifiers modifiers READ modifiers CONSTANT) + Q_PROPERTY(bool accepted READ isAccepted WRITE setAccepted) + +public: + enum Buttons { + LeftButton = Qt::LeftButton, + RightButton = Qt::RightButton, + MiddleButton = Qt::MiddleButton, + BackButton = Qt::BackButton, + NoButton = Qt::NoButton + }; + Q_ENUM(Buttons) // LCOV_EXCL_LINE + + enum Modifiers { + NoModifier = Qt::NoModifier, + ShiftModifier = Qt::ShiftModifier, + ControlModifier = Qt::ControlModifier, + AltModifier = Qt::AltModifier, + MetaModifier = Qt::MetaModifier, + KeypadModifier = Qt::KeypadModifier + }; + Q_ENUM(Modifiers) // LCOV_EXCL_LINE + + explicit QMouseEvent(const QT_PREPEND_NAMESPACE(QMouseEvent) &e); + ~QMouseEvent(); + + inline int x() const { return m_event.x(); } + inline int y() const { return m_event.y(); } + inline bool wasHeld() const { +#if QT_CONFIG(gestures) + return static_cast(m_event.type()) == Qt::TapAndHoldGesture; +#else + return false; +#endif + } + Buttons button() const; + int buttons() const; + Modifiers modifiers() const; + + inline bool isAccepted() const { return m_event.isAccepted(); } + inline void setAccepted(bool accepted) { m_event.setAccepted(accepted); } + inline QEvent::Type type() const { return m_event.type(); } + +private: + QT_PREPEND_NAMESPACE(QMouseEvent) m_event; +}; + +typedef QSharedPointer QMouseEventPtr; + +#if QT_CONFIG(wheelevent) +class QT3DINPUTSHARED_EXPORT QWheelEvent : public QObject +{ + Q_OBJECT + Q_PROPERTY(int x READ x CONSTANT) + Q_PROPERTY(int y READ y CONSTANT) + Q_PROPERTY(QPoint angleDelta READ angleDelta CONSTANT) + Q_PROPERTY(int buttons READ buttons CONSTANT) + Q_PROPERTY(Qt3DInput::QWheelEvent::Modifiers modifiers READ modifiers CONSTANT) + Q_PROPERTY(bool accepted READ isAccepted WRITE setAccepted) + +public: + enum Buttons { + LeftButton = Qt::LeftButton, + RightButton = Qt::RightButton, + MiddleButton = Qt::MiddleButton, + BackButton = Qt::BackButton, + NoButton = Qt::NoButton + }; + Q_ENUM(Buttons) // LCOV_EXCL_LINE + + enum Modifiers { + NoModifier = Qt::NoModifier, + ShiftModifier = Qt::ShiftModifier, + ControlModifier = Qt::ControlModifier, + AltModifier = Qt::AltModifier, + MetaModifier = Qt::MetaModifier, + KeypadModifier = Qt::KeypadModifier + }; + Q_ENUM(Modifiers) // LCOV_EXCL_LINE + + explicit QWheelEvent(const QT_PREPEND_NAMESPACE(QWheelEvent) &e); + ~QWheelEvent(); + + inline int x() const { return m_event.x(); } + inline int y() const { return m_event.y(); } + inline QPoint angleDelta() const { return m_event.angleDelta(); } + int buttons() const; + Modifiers modifiers() const; + + inline bool isAccepted() const { return m_event.isAccepted(); } + inline void setAccepted(bool accepted) { m_event.setAccepted(accepted); } + inline QEvent::Type type() const { return m_event.type(); } + +private: + QT_PREPEND_NAMESPACE(QWheelEvent) m_event; +}; + +typedef QSharedPointer QWheelEventPtr; +#endif + +} // namespace Qt3DInput + +QT_END_NAMESPACE + +Q_DECLARE_METATYPE(Qt3DInput::QMouseEvent*) // LCOV_EXCL_LINE + +#if QT_CONFIG(wheelevent) +Q_DECLARE_METATYPE(Qt3DInput::QWheelEvent*) // LCOV_EXCL_LINE +#endif + +#endif // QT3DINPUT_QMOUSEEVENT_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/qmousehandler.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/qmousehandler.h new file mode 100644 index 0000000..50f7b02 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/qmousehandler.h @@ -0,0 +1,102 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_QMOUSEHANDLER_H +#define QT3DINPUT_QMOUSEHANDLER_H + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { + +class QMouseDevice; +class QMouseHandlerPrivate; + +class QT3DINPUTSHARED_EXPORT QMouseHandler : public Qt3DCore::QComponent +{ + Q_OBJECT + Q_PROPERTY(Qt3DInput::QMouseDevice *sourceDevice READ sourceDevice WRITE setSourceDevice NOTIFY sourceDeviceChanged) + Q_PROPERTY(bool containsMouse READ containsMouse NOTIFY containsMouseChanged) + +public: + explicit QMouseHandler(QNode *parent = nullptr); + ~QMouseHandler(); + + QMouseDevice *sourceDevice() const; + bool containsMouse() const; + +public Q_SLOTS: + void setSourceDevice(QMouseDevice *mouseDevice); + +Q_SIGNALS: + void sourceDeviceChanged(QMouseDevice *mouseDevice); + void containsMouseChanged(bool containsMouse); + + void clicked(Qt3DInput::QMouseEvent *mouse); + void doubleClicked(Qt3DInput::QMouseEvent *mouse); + + void entered(); + void exited(); + + void pressed(Qt3DInput::QMouseEvent *mouse); + void released(Qt3DInput::QMouseEvent *mouse); + void pressAndHold(Qt3DInput::QMouseEvent *mouse); + void positionChanged(Qt3DInput::QMouseEvent *mouse); + +#if QT_CONFIG(wheelevent) + void wheel(Qt3DInput::QWheelEvent *wheel); +#endif + +protected: + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &change) override; + void setContainsMouse(bool contains); + +private: + Q_DECLARE_PRIVATE(QMouseHandler) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +} // namespace Qt3DInput + +QT_END_NAMESPACE + +#endif // QT3DINPUT_QMOUSEHANDLER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/qphysicaldevicecreatedchange.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/qphysicaldevicecreatedchange.h new file mode 100644 index 0000000..65cc400 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/qphysicaldevicecreatedchange.h @@ -0,0 +1,84 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_QPHYSICALDEVICECREATIONCHANGEBASE_H +#define QT3DINPUT_QPHYSICALDEVICECREATIONCHANGEBASE_H + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { + +class QAbstractPhysicalDevice; +class QPhysicalDeviceCreatedChangeBasePrivate; + +class QT3DINPUTSHARED_EXPORT QPhysicalDeviceCreatedChangeBase : public Qt3DCore::QNodeCreatedChangeBase +{ +public: + explicit QPhysicalDeviceCreatedChangeBase(const QAbstractPhysicalDevice *device); + ~QPhysicalDeviceCreatedChangeBase(); + + Qt3DCore::QNodeIdVector axisSettingIds() const; + +private: + Q_DECLARE_PRIVATE(QPhysicalDeviceCreatedChangeBase) +}; + +typedef QSharedPointer QPhysicalDeviceCreatedChangeBasePtr; + +template +class QPhysicalDeviceCreatedChange : public QPhysicalDeviceCreatedChangeBase +{ +public: + explicit QPhysicalDeviceCreatedChange(const QAbstractPhysicalDevice *_device) + : QPhysicalDeviceCreatedChangeBase(_device) + , data() + { + } + + T data; +}; + +template +using QPhysicalDeviceCreatedChangePtr = QSharedPointer>; + +} // namespace Qt3DInput + +QT_END_NAMESPACE + +#endif // QT3DINPUT_QPHYSICALDEVICECREATIONCHANGEBASE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/qt3dinput_global.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/qt3dinput_global.h new file mode 100644 index 0000000..9c76435 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/qt3dinput_global.h @@ -0,0 +1,59 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_GLOBAL_H +#define QT3DINPUT_GLOBAL_H + +#include + +QT_BEGIN_NAMESPACE + +#if defined(QT_SHARED) || !defined(QT_STATIC) +# if defined(QT_BUILD_3DINPUT_LIB) +# define QT3DINPUTSHARED_EXPORT Q_DECL_EXPORT +# else +# define QT3DINPUTSHARED_EXPORT Q_DECL_IMPORT +# endif +#else +# define QT3DINPUTSHARED_EXPORT +#endif + +QT_END_NAMESPACE + +#endif // QT3DINPUT_GLOBAL_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/qt3dinputversion.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/qt3dinputversion.h new file mode 100644 index 0000000..da196e9 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DInput/qt3dinputversion.h @@ -0,0 +1,9 @@ +/* This file was generated by syncqt. */ +#ifndef QT_QT3DINPUT_VERSION_H +#define QT_QT3DINPUT_VERSION_H + +#define QT3DINPUT_VERSION_STR "5.12.5" + +#define QT3DINPUT_VERSION 0x050C05 + +#endif // QT_QT3DINPUT_VERSION_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DLogic/5.12.5/Qt3DLogic/private/callbackjob_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DLogic/5.12.5/Qt3DLogic/private/callbackjob_p.h new file mode 100644 index 0000000..2dabc77 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DLogic/5.12.5/Qt3DLogic/private/callbackjob_p.h @@ -0,0 +1,80 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DLOGIC_LOGIC_CALLBACKJOB_P_H +#define QT3DLOGIC_LOGIC_CALLBACKJOB_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DLogic { +namespace Logic { + +class Manager; + +class CallbackJob : public Qt3DCore::QAspectJob +{ +public: + CallbackJob(); + void setManager(Manager *manager); + + void run() override; + +private: + Manager *m_logicManager; +}; + +} // namespace Logic +} // namespace Qt3DLogic + +QT_END_NAMESPACE + +#endif // QT3DLOGIC_LOGIC_CALLBACKJOB_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DLogic/5.12.5/Qt3DLogic/private/executor_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DLogic/5.12.5/Qt3DLogic/private/executor_p.h new file mode 100644 index 0000000..e33ff84 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DLogic/5.12.5/Qt3DLogic/private/executor_p.h @@ -0,0 +1,111 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DLOGIC_LOGIC_EXECUTOR_P_H +#define QT3DLOGIC_LOGIC_EXECUTOR_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +class QSemaphore; + +namespace Qt3DCore { +class QScene; +} + +namespace Qt3DLogic { +namespace Logic { + +class FrameUpdateEvent : public QEvent +{ +public: + FrameUpdateEvent(float dt) + : QEvent(QEvent::User) + , m_dt(dt) + {} + + float deltaTime() const { return m_dt; } + +private: + float m_dt; +}; + +class Executor : public QObject +{ + Q_OBJECT +public: + explicit Executor(QObject *parent = 0); + + void setScene(Qt3DCore::QScene *scene) { m_scene = scene; } + void setSemephore(QSemaphore *semaphore) { m_semaphore = semaphore; } + void clearQueueAndProceed(); + +public Q_SLOTS: + void enqueueLogicFrameUpdates(const QVector &nodeIds); + +protected: + bool event(QEvent *e); + void processLogicFrameUpdates(float dt); + +private: + QVector m_nodeIds; + Qt3DCore::QScene *m_scene; + QSemaphore *m_semaphore; +}; + +} // namespace Logic +} // namespace Qt3DLogic + +QT_END_NAMESPACE + +#endif // QT3DLOGIC_LOGIC_EXECUTOR_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DLogic/5.12.5/Qt3DLogic/private/handle_types_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DLogic/5.12.5/Qt3DLogic/private/handle_types_p.h new file mode 100644 index 0000000..106241e --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DLogic/5.12.5/Qt3DLogic/private/handle_types_p.h @@ -0,0 +1,70 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DLOGIC_LOGIC_HANDLE_TYPES_P_H +#define QT3DLOGIC_LOGIC_HANDLE_TYPES_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DLogic { +namespace Logic { + +class Handler; +typedef Qt3DCore::QHandle HHandler; + +} // namespace Logic +} // namespace Qt3DLogic + +QT_END_NAMESPACE + +#endif // QT3DLOGIC_LOGIC_HANDLE_TYPES_P_H + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DLogic/5.12.5/Qt3DLogic/private/handler_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DLogic/5.12.5/Qt3DLogic/private/handler_p.h new file mode 100644 index 0000000..91b625e --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DLogic/5.12.5/Qt3DLogic/private/handler_p.h @@ -0,0 +1,101 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DLOGIC_LOGIC_HANDLER_H +#define QT3DLOGIC_LOGIC_HANDLER_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DLogic { +namespace Logic { + +class Manager; + +class Handler : public Qt3DCore::QBackendNode +{ +public: + Handler(); + + void setManager(Manager *manager) { m_logicManager = manager; } + Manager *logicManager() const { return m_logicManager; } + +protected: + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) override; + +private: + void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) final; + + Manager *m_logicManager; +}; + + +class HandlerFunctor : public Qt3DCore::QBackendNodeMapper +{ +public: + explicit HandlerFunctor(Manager *handler); + + Qt3DCore::QBackendNode *create(const Qt3DCore::QNodeCreatedChangeBasePtr &change) const override; + Qt3DCore::QBackendNode *get(Qt3DCore::QNodeId id) const override; + void destroy(Qt3DCore::QNodeId id) const override; + +private: + Manager *m_manager; +}; + +} // namespace Logic +} // namespace Qt3DLogic + +QT_END_NAMESPACE + +#endif // QT3DLOGIC_LOGIC_HANDLER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DLogic/5.12.5/Qt3DLogic/private/job_common_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DLogic/5.12.5/Qt3DLogic/private/job_common_p.h new file mode 100644 index 0000000..3e78f4d --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DLogic/5.12.5/Qt3DLogic/private/job_common_p.h @@ -0,0 +1,76 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Paul Lemire +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#ifndef QT3DLOGIC_LOGIC_JOB_COMMON_P_H +#define QT3DLOGIC_LOGIC_JOB_COMMON_P_H + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DLogic { + +namespace Logic { + +namespace JobTypes { + + enum JobType { + Callback = 2048 + }; + +} // JobTypes + +} // Logic + +} // Qt3DLogic + +QT_END_NAMESPACE + +#endif // QT3DLOGIC_LOGIC_JOB_COMMON_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DLogic/5.12.5/Qt3DLogic/private/manager_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DLogic/5.12.5/Qt3DLogic/private/manager_p.h new file mode 100644 index 0000000..918bd57 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DLogic/5.12.5/Qt3DLogic/private/manager_p.h @@ -0,0 +1,107 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DLOGIC_LOGIC_MANAGER_H +#define QT3DLOGIC_LOGIC_MANAGER_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DLogic { + +class QLogicAspect; + +namespace Logic { + +class Executor; +class HandlerManager; + +class Manager +{ +public: + Manager(); + ~Manager(); + + void setLogicAspect(QLogicAspect *logicAspect) { m_logicAspect = logicAspect; } + void setExecutor(Executor *executor); + + HandlerManager *logicHandlerManager() const { return m_logicHandlerManager.data(); } + + void appendHandler(Handler *handler); + void removeHandler(Qt3DCore::QNodeId id); + bool hasFrameActions() const; + + void triggerLogicFrameUpdates(); + + void setDeltaTime(float dt) { m_dt = dt; } + +private: + QScopedPointer m_logicHandlerManager; + QVector m_logicHandlers; + QVector m_logicComponentIds; + QLogicAspect *m_logicAspect; + Executor *m_executor; + QSemaphore m_semaphore; + float m_dt; +}; + +} // namespace Logic +} // namespace Qt3DLogic + +QT_END_NAMESPACE + +#endif // QT3DLOGIC_LOGIC_MANAGER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DLogic/5.12.5/Qt3DLogic/private/managers_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DLogic/5.12.5/Qt3DLogic/private/managers_p.h new file mode 100644 index 0000000..17c230d --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DLogic/5.12.5/Qt3DLogic/private/managers_p.h @@ -0,0 +1,79 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DLOGIC_LOGIC_MANAGERS_P_H +#define QT3DLOGIC_LOGIC_MANAGERS_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DLogic { +namespace Logic { + +class HandlerManager : public Qt3DCore::QResourceManager< + Handler, + Qt3DCore::QNodeId> +{ +public: + HandlerManager() {} +}; + +} // namespace Logic +} // namespace Qt3DLogic + +QT_END_NAMESPACE + +#endif // QT3DLOGIC_LOGIC_MANAGERS_P_H + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DLogic/5.12.5/Qt3DLogic/private/qframeaction_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DLogic/5.12.5/Qt3DLogic/private/qframeaction_p.h new file mode 100644 index 0000000..a83efe7 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DLogic/5.12.5/Qt3DLogic/private/qframeaction_p.h @@ -0,0 +1,74 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DLOGIC_QFRAMEACTION_P_H +#define QT3DLOGIC_QFRAMEACTION_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DLogic { + +class QFrameAction; + +class QFrameActionPrivate : public Qt3DCore::QComponentPrivate +{ +public: + QFrameActionPrivate(); + + Q_DECLARE_PUBLIC(QFrameAction) +}; + +} // namespace Qt3DLogic + +QT_END_NAMESPACE + +#endif // QT3DLOGIC_QFRAMEACTION_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DLogic/5.12.5/Qt3DLogic/private/qlogicaspect_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DLogic/5.12.5/Qt3DLogic/private/qlogicaspect_p.h new file mode 100644 index 0000000..2a6a725 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DLogic/5.12.5/Qt3DLogic/private/qlogicaspect_p.h @@ -0,0 +1,89 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DLOGIC_QLOGICASPECT_P_H +#define QT3DLOGIC_QLOGICASPECT_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DLogic { + +namespace Logic { +class Executor; +class Manager; +} + +class QLogicAspectPrivate : public Qt3DCore::QAbstractAspectPrivate +{ + QLogicAspectPrivate(); + + Q_DECLARE_PUBLIC(QLogicAspect) + + void onEngineAboutToShutdown() override; + void registerBackendTypes(); + + qint64 m_time; + bool m_initialized; + QScopedPointer m_manager; + QScopedPointer m_executor; + QSharedPointer m_callbackJob; +}; + +} // namespace Qt3DLogic + +QT_END_NAMESPACE + +#endif // QT3DLOGIC_QLOGICASPECT_P_H + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DLogic/QFrameAction b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DLogic/QFrameAction new file mode 100644 index 0000000..a5c33bb --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DLogic/QFrameAction @@ -0,0 +1 @@ +#include "qframeaction.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DLogic/QLogicAspect b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DLogic/QLogicAspect new file mode 100644 index 0000000..41d5b33 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DLogic/QLogicAspect @@ -0,0 +1 @@ +#include "qlogicaspect.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DLogic/Qt3DLogic b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DLogic/Qt3DLogic new file mode 100644 index 0000000..c88d71c --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DLogic/Qt3DLogic @@ -0,0 +1,7 @@ +#ifndef QT_QT3DLOGIC_MODULE_H +#define QT_QT3DLOGIC_MODULE_H +#include +#include "qframeaction.h" +#include "qlogicaspect.h" +#include "qt3dlogicversion.h" +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DLogic/Qt3DLogicDepends b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DLogic/Qt3DLogicDepends new file mode 100644 index 0000000..bf91605 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DLogic/Qt3DLogicDepends @@ -0,0 +1,6 @@ +/* This file was generated by qmake with the info from /src/logic/logic.pro. */ +#ifdef __cplusplus /* create empty PCH in C mode */ +#include +#include +#include +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DLogic/Qt3DLogicVersion b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DLogic/Qt3DLogicVersion new file mode 100644 index 0000000..1304d46 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DLogic/Qt3DLogicVersion @@ -0,0 +1 @@ +#include "qt3dlogicversion.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DLogic/qframeaction.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DLogic/qframeaction.h new file mode 100644 index 0000000..f67bb96 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DLogic/qframeaction.h @@ -0,0 +1,82 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DLOGIC_QFRAMEACTION_H +#define QT3DLOGIC_QFRAMEACTION_H + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DLogic { + +class QLogicAspect; +class QFrameActionPrivate; + +namespace Logic { +class Executor; +} + +class QT3DLOGICSHARED_EXPORT QFrameAction : public Qt3DCore::QComponent +{ + Q_OBJECT + +public: + explicit QFrameAction(Qt3DCore::QNode *parent = nullptr); + ~QFrameAction(); + +protected: + QFrameAction(QFrameActionPrivate &dd, QNode *parent = nullptr); + +Q_SIGNALS: + void triggered(float dt); + +private: + Q_DECLARE_PRIVATE(QFrameAction) + void onTriggered(float dt); + + friend class Logic::Executor; +}; + +} // namespace Qt3DLogic + +QT_END_NAMESPACE + +#endif // QT3DLOGIC_QFRAMEACTION_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DLogic/qlogicaspect.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DLogic/qlogicaspect.h new file mode 100644 index 0000000..958c0ce --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DLogic/qlogicaspect.h @@ -0,0 +1,72 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DLOGIC_QLOGICASPECT_H +#define QT3DLOGIC_QLOGICASPECT_H + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DLogic { + +class QLogicAspectPrivate; + +class QT3DLOGICSHARED_EXPORT QLogicAspect : public Qt3DCore::QAbstractAspect +{ + Q_OBJECT +public: + explicit QLogicAspect(QObject *parent = nullptr); + ~QLogicAspect(); + +private: + QVector jobsToExecute(qint64 time) override; + void onRegistered() override; + void onEngineStartup() override; + + Q_DECLARE_PRIVATE(QLogicAspect) + explicit QLogicAspect(QLogicAspectPrivate &dd, QObject *parent); +}; + +} // namespace Qt3DLogic + +QT_END_NAMESPACE + +#endif // QT3DLOGIC_QLOGICASPECT_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DLogic/qt3dlogic_global.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DLogic/qt3dlogic_global.h new file mode 100644 index 0000000..1e66100 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DLogic/qt3dlogic_global.h @@ -0,0 +1,59 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DLOGIC_GLOBAL_H +#define QT3DLOGIC_GLOBAL_H + +#include + +QT_BEGIN_NAMESPACE + +#if defined(QT_SHARED) || !defined(QT_STATIC) +# if defined(QT_BUILD_3DLOGIC_LIB) +# define QT3DLOGICSHARED_EXPORT Q_DECL_EXPORT +# else +# define QT3DLOGICSHARED_EXPORT Q_DECL_IMPORT +# endif +#else +# define QT3DLOGICSHARED_EXPORT +#endif + +QT_END_NAMESPACE + +#endif // QT3DLOGIC_GLOBAL_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DLogic/qt3dlogicversion.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DLogic/qt3dlogicversion.h new file mode 100644 index 0000000..2faed9f --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DLogic/qt3dlogicversion.h @@ -0,0 +1,9 @@ +/* This file was generated by syncqt. */ +#ifndef QT_QT3DLOGIC_VERSION_H +#define QT_QT3DLOGIC_VERSION_H + +#define QT3DLOGIC_VERSION_STR "5.12.5" + +#define QT3DLOGIC_VERSION 0x050C05 + +#endif // QT_QT3DLOGIC_VERSION_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuick/5.12.5/Qt3DQuick/private/qqmlaspectengine_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuick/5.12.5/Qt3DQuick/private/qqmlaspectengine_p.h new file mode 100644 index 0000000..960ecb3 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuick/5.12.5/Qt3DQuick/private/qqmlaspectengine_p.h @@ -0,0 +1,85 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3D_QUICK_QQMLASPECTENGINE_P_H +#define QT3D_QUICK_QQMLASPECTENGINE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { +namespace Quick { + +class QQmlAspectEnginePrivate : public QObjectPrivate +{ +public: + QQmlAspectEnginePrivate(); + + Q_DECLARE_PUBLIC(QQmlAspectEngine) + + QScopedPointer m_qmlEngine; + QScopedPointer m_aspectEngine; + QQmlComponent *m_component; + +private: + void _q_continueExecute(); +}; + +} // namespace Quick +} // namespace Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3D_QUICK_QQMLASPECTENGINE_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuick/5.12.5/Qt3DQuick/private/qquaternionanimation_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuick/5.12.5/Qt3DQuick/private/qquaternionanimation_p.h new file mode 100644 index 0000000..172d3bc --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuick/5.12.5/Qt3DQuick/private/qquaternionanimation_p.h @@ -0,0 +1,137 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt 3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QQUATERNIONANIMATION_P_H +#define QQUATERNIONANIMATION_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { +namespace Quick { + +class QQuaternionAnimationPrivate; + +class QT3DQUICKSHARED_PRIVATE_EXPORT QQuaternionAnimation : public QQuickPropertyAnimation +{ + Q_OBJECT + Q_DECLARE_PRIVATE(QQuaternionAnimation) + + Q_PROPERTY(QQuaternion from READ from WRITE setFrom) + Q_PROPERTY(QQuaternion to READ to WRITE setTo) + Q_PROPERTY(Type type READ type WRITE setType NOTIFY typeChanged) + + Q_PROPERTY(float fromXRotation READ fromXRotation WRITE setFromXRotation NOTIFY fromXRotationChanged) + Q_PROPERTY(float fromYRotation READ fromYRotation WRITE setFromYRotation NOTIFY fromYRotationChanged) + Q_PROPERTY(float fromZRotation READ fromZRotation WRITE setFromZRotation NOTIFY fromZRotationChanged) + Q_PROPERTY(float toXRotation READ toXRotation WRITE setToXRotation NOTIFY toXRotationChanged) + Q_PROPERTY(float toYRotation READ toYRotation WRITE setToYRotation NOTIFY toYRotationChanged) + Q_PROPERTY(float toZRotation READ toZRotation WRITE setToZRotation NOTIFY toZRotationChanged) + +public: + enum Type { + Slerp = 0, + Nlerp + }; + Q_ENUM(Type) // LCOV_EXCL_LINE + + QQuaternionAnimation(QObject *parent = 0); + + QQuaternion from() const; + void setFrom(const QQuaternion &f); + + QQuaternion to() const; + void setTo(const QQuaternion &t); + + Type type() const; + void setType(Type type); + + float fromXRotation() const; + void setFromXRotation(float f); + + float fromYRotation() const; + void setFromYRotation(float f); + + float fromZRotation() const; + void setFromZRotation(float f); + + float toXRotation() const; + void setToXRotation(float f); + + float toYRotation() const; + void setToYRotation(float f); + + float toZRotation() const; + void setToZRotation(float f); + +Q_SIGNALS: + void typeChanged(Type type); + void fromXRotationChanged(float value); + void fromYRotationChanged(float value); + void fromZRotationChanged(float value); + void toXRotationChanged(float value); + void toYRotationChanged(float value); + void toZRotationChanged(float value); +}; + +QT3DQUICKSHARED_PRIVATE_EXPORT QVariant q_quaternionInterpolator(const QQuaternion &from, const QQuaternion &to, qreal progress); + +} // namespace Quick +} // namespace Qt3DCore + +QT_END_NAMESPACE + +QML_DECLARE_TYPE(Qt3DCore::Quick::QQuaternionAnimation) + +#endif // QQUATERNIONANIMATION_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuick/5.12.5/Qt3DQuick/private/qt3dquick_global_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuick/5.12.5/Qt3DQuick/private/qt3dquick_global_p.h new file mode 100644 index 0000000..ffc603f --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuick/5.12.5/Qt3DQuick/private/qt3dquick_global_p.h @@ -0,0 +1,80 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DQUICK_GLOBAL_P_H +#define QT3DQUICK_GLOBAL_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +#define QT3DQUICKSHARED_PRIVATE_EXPORT QT3DQUICKSHARED_EXPORT + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { +namespace Quick { + +QT3DQUICKSHARED_PRIVATE_EXPORT void Quick3D_initialize(); +QT3DQUICKSHARED_PRIVATE_EXPORT void Quick3D_uninitialize(); +QT3DQUICKSHARED_PRIVATE_EXPORT void Quick3D_registerType(const char *className, const char *quickName, int major, int minor); + +template void registerExtendedType(const char *className, const char *quickName, + const char *uri, int major, int minor, const char *name) +{ + qmlRegisterExtendedType(uri, major, minor, name); + Quick3D_registerType(className, quickName, major, minor); +} + +} // namespace Quick +} // namespace Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3DQUICK_GLOBAL_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuick/5.12.5/Qt3DQuick/private/qt3dquicknodefactory_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuick/5.12.5/Qt3DQuick/private/qt3dquicknodefactory_p.h new file mode 100644 index 0000000..e363ca2 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuick/5.12.5/Qt3DQuick/private/qt3dquicknodefactory_p.h @@ -0,0 +1,90 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd and/or its subsidiary(-ies). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QUICKNODEFACTORY_H +#define QUICKNODEFACTORY_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +class QQmlType; + +namespace Qt3DCore { + +class QuickNodeFactory : public QAbstractNodeFactory +{ +public: + QNode *createNode(const char *type) override; + + void registerType(const char *className, const char *quickName, int major, int minor); + + static QuickNodeFactory *instance(); + +private: + struct Type { + Type() : t(nullptr), resolved(false) { } + Type(const char *quickName, int major, int minor) + : quickName(quickName), version(major, minor), t(nullptr), resolved(false) { } + QByteArray quickName; + QPair version; + QQmlType t; + bool resolved; + }; + QHash m_types; +}; + +} // namespace Qt3DCore + +QT_END_NAMESPACE + +#endif // QUICKNODEFACTORY_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuick/5.12.5/Qt3DQuick/private/qt3dquickvaluetypes_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuick/5.12.5/Qt3DQuick/private/qt3dquickvaluetypes_p.h new file mode 100644 index 0000000..d1b4a4d --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuick/5.12.5/Qt3DQuick/private/qt3dquickvaluetypes_p.h @@ -0,0 +1,316 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd and/or its subsidiary(-ies). +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DQUICKVALUETYPES_P_H +#define QT3DQUICKVALUETYPES_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include +#include +#include + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { +namespace Quick { +namespace Quick3DValueTypes { + +QT3DQUICKSHARED_PRIVATE_EXPORT void registerValueTypes(); + +} + +class QT3DQUICKSHARED_PRIVATE_EXPORT Quick3DColorValueType +{ + QColor v; + Q_PROPERTY(qreal r READ r WRITE setR FINAL) + Q_PROPERTY(qreal g READ g WRITE setG FINAL) + Q_PROPERTY(qreal b READ b WRITE setB FINAL) + Q_PROPERTY(qreal a READ a WRITE setA FINAL) + Q_PROPERTY(qreal hsvHue READ hsvHue WRITE setHsvHue FINAL) + Q_PROPERTY(qreal hsvSaturation READ hsvSaturation WRITE setHsvSaturation FINAL) + Q_PROPERTY(qreal hsvValue READ hsvValue WRITE setHsvValue FINAL) + Q_PROPERTY(qreal hslHue READ hslHue WRITE setHslHue FINAL) + Q_PROPERTY(qreal hslSaturation READ hslSaturation WRITE setHslSaturation FINAL) + Q_PROPERTY(qreal hslLightness READ hslLightness WRITE setHslLightness FINAL) + Q_GADGET +public: + Q_INVOKABLE QString toString() const; + + qreal r() const; + qreal g() const; + qreal b() const; + qreal a() const; + qreal hsvHue() const; + qreal hsvSaturation() const; + qreal hsvValue() const; + qreal hslHue() const; + qreal hslSaturation() const; + qreal hslLightness() const; + void setR(qreal); + void setG(qreal); + void setB(qreal); + void setA(qreal); + void setHsvHue(qreal); + void setHsvSaturation(qreal); + void setHsvValue(qreal); + void setHslHue(qreal); + void setHslSaturation(qreal); + void setHslLightness(qreal); +}; + +class QT3DQUICKSHARED_PRIVATE_EXPORT Quick3DVector2DValueType +{ + QVector2D v; + Q_PROPERTY(qreal x READ x WRITE setX FINAL) + Q_PROPERTY(qreal y READ y WRITE setY FINAL) + Q_GADGET +public: + Q_INVOKABLE QString toString() const; + + qreal x() const; + qreal y() const; + void setX(qreal); + void setY(qreal); + + Q_INVOKABLE qreal dotProduct(const QVector2D &vec) const; + Q_INVOKABLE QVector2D times(const QVector2D &vec) const; + Q_INVOKABLE QVector2D times(qreal scalar) const; + Q_INVOKABLE QVector2D plus(const QVector2D &vec) const; + Q_INVOKABLE QVector2D minus(const QVector2D &vec) const; + Q_INVOKABLE QVector2D normalized() const; + Q_INVOKABLE qreal length() const; + Q_INVOKABLE QVector3D toVector3d() const; + Q_INVOKABLE QVector4D toVector4d() const; + Q_INVOKABLE bool fuzzyEquals(const QVector2D &vec, qreal epsilon) const; + Q_INVOKABLE bool fuzzyEquals(const QVector2D &vec) const; +}; + +class QT3DQUICKSHARED_PRIVATE_EXPORT Quick3DVector3DValueType +{ + QVector3D v; + Q_PROPERTY(qreal x READ x WRITE setX FINAL) + Q_PROPERTY(qreal y READ y WRITE setY FINAL) + Q_PROPERTY(qreal z READ z WRITE setZ FINAL) + Q_GADGET +public: + Q_INVOKABLE QString toString() const; + + qreal x() const; + qreal y() const; + qreal z() const; + void setX(qreal); + void setY(qreal); + void setZ(qreal); + + Q_INVOKABLE QVector3D crossProduct(const QVector3D &vec) const; + Q_INVOKABLE qreal dotProduct(const QVector3D &vec) const; + Q_INVOKABLE QVector3D times(const QMatrix4x4 &m) const; + Q_INVOKABLE QVector3D times(const QVector3D &vec) const; + Q_INVOKABLE QVector3D times(qreal scalar) const; + Q_INVOKABLE QVector3D plus(const QVector3D &vec) const; + Q_INVOKABLE QVector3D minus(const QVector3D &vec) const; + Q_INVOKABLE QVector3D normalized() const; + Q_INVOKABLE qreal length() const; + Q_INVOKABLE QVector2D toVector2d() const; + Q_INVOKABLE QVector4D toVector4d() const; + Q_INVOKABLE bool fuzzyEquals(const QVector3D &vec, qreal epsilon) const; + Q_INVOKABLE bool fuzzyEquals(const QVector3D &vec) const; +}; + +class QT3DQUICKSHARED_PRIVATE_EXPORT Quick3DVector4DValueType +{ + QVector4D v; + Q_PROPERTY(qreal x READ x WRITE setX FINAL) + Q_PROPERTY(qreal y READ y WRITE setY FINAL) + Q_PROPERTY(qreal z READ z WRITE setZ FINAL) + Q_PROPERTY(qreal w READ w WRITE setW FINAL) + Q_GADGET +public: + Q_INVOKABLE QString toString() const; + + qreal x() const; + qreal y() const; + qreal z() const; + qreal w() const; + void setX(qreal); + void setY(qreal); + void setZ(qreal); + void setW(qreal); + + Q_INVOKABLE qreal dotProduct(const QVector4D &vec) const; + Q_INVOKABLE QVector4D times(const QVector4D &vec) const; + Q_INVOKABLE QVector4D times(const QMatrix4x4 &m) const; + Q_INVOKABLE QVector4D times(qreal scalar) const; + Q_INVOKABLE QVector4D plus(const QVector4D &vec) const; + Q_INVOKABLE QVector4D minus(const QVector4D &vec) const; + Q_INVOKABLE QVector4D normalized() const; + Q_INVOKABLE qreal length() const; + Q_INVOKABLE QVector2D toVector2d() const; + Q_INVOKABLE QVector3D toVector3d() const; + Q_INVOKABLE bool fuzzyEquals(const QVector4D &vec, qreal epsilon) const; + Q_INVOKABLE bool fuzzyEquals(const QVector4D &vec) const; +}; + +class QT3DQUICKSHARED_PRIVATE_EXPORT Quick3DQuaternionValueType +{ + QQuaternion v; + Q_PROPERTY(qreal scalar READ scalar WRITE setScalar) + Q_PROPERTY(qreal x READ x WRITE setX) + Q_PROPERTY(qreal y READ y WRITE setY) + Q_PROPERTY(qreal z READ z WRITE setZ) + Q_GADGET +public: + Q_INVOKABLE QString toString() const; + + qreal scalar() const; + qreal x() const; + qreal y() const; + qreal z() const; + void setScalar(qreal); + void setX(qreal); + void setY(qreal); + void setZ(qreal); +}; + +class QT3DQUICKSHARED_PRIVATE_EXPORT Quick3DMatrix4x4ValueType +{ + QMatrix4x4 v; + Q_PROPERTY(qreal m11 READ m11 WRITE setM11 FINAL) + Q_PROPERTY(qreal m12 READ m12 WRITE setM12 FINAL) + Q_PROPERTY(qreal m13 READ m13 WRITE setM13 FINAL) + Q_PROPERTY(qreal m14 READ m14 WRITE setM14 FINAL) + Q_PROPERTY(qreal m21 READ m21 WRITE setM21 FINAL) + Q_PROPERTY(qreal m22 READ m22 WRITE setM22 FINAL) + Q_PROPERTY(qreal m23 READ m23 WRITE setM23 FINAL) + Q_PROPERTY(qreal m24 READ m24 WRITE setM24 FINAL) + Q_PROPERTY(qreal m31 READ m31 WRITE setM31 FINAL) + Q_PROPERTY(qreal m32 READ m32 WRITE setM32 FINAL) + Q_PROPERTY(qreal m33 READ m33 WRITE setM33 FINAL) + Q_PROPERTY(qreal m34 READ m34 WRITE setM34 FINAL) + Q_PROPERTY(qreal m41 READ m41 WRITE setM41 FINAL) + Q_PROPERTY(qreal m42 READ m42 WRITE setM42 FINAL) + Q_PROPERTY(qreal m43 READ m43 WRITE setM43 FINAL) + Q_PROPERTY(qreal m44 READ m44 WRITE setM44 FINAL) + Q_GADGET +public: + Q_INVOKABLE QString toString() const; + + qreal m11() const { return v(0, 0); } + qreal m12() const { return v(0, 1); } + qreal m13() const { return v(0, 2); } + qreal m14() const { return v(0, 3); } + qreal m21() const { return v(1, 0); } + qreal m22() const { return v(1, 1); } + qreal m23() const { return v(1, 2); } + qreal m24() const { return v(1, 3); } + qreal m31() const { return v(2, 0); } + qreal m32() const { return v(2, 1); } + qreal m33() const { return v(2, 2); } + qreal m34() const { return v(2, 3); } + qreal m41() const { return v(3, 0); } + qreal m42() const { return v(3, 1); } + qreal m43() const { return v(3, 2); } + qreal m44() const { return v(3, 3); } + + void setM11(qreal value) { v(0, 0) = value; } + void setM12(qreal value) { v(0, 1) = value; } + void setM13(qreal value) { v(0, 2) = value; } + void setM14(qreal value) { v(0, 3) = value; } + void setM21(qreal value) { v(1, 0) = value; } + void setM22(qreal value) { v(1, 1) = value; } + void setM23(qreal value) { v(1, 2) = value; } + void setM24(qreal value) { v(1, 3) = value; } + void setM31(qreal value) { v(2, 0) = value; } + void setM32(qreal value) { v(2, 1) = value; } + void setM33(qreal value) { v(2, 2) = value; } + void setM34(qreal value) { v(2, 3) = value; } + void setM41(qreal value) { v(3, 0) = value; } + void setM42(qreal value) { v(3, 1) = value; } + void setM43(qreal value) { v(3, 2) = value; } + void setM44(qreal value) { v(3, 3) = value; } + + Q_INVOKABLE void translate(float x, float y, float z) { v.translate(x, y, z); } + Q_INVOKABLE void translate(const QVector3D &t) { v.translate(t); } + Q_INVOKABLE void rotate(float angle, const QVector3D &axis) { v.rotate(angle, axis); } + Q_INVOKABLE void scale(float s) { v.scale(s); } + Q_INVOKABLE void scale(float sx, float sy, float sz) { v.scale(sx, sy, sz); } + Q_INVOKABLE void scale(const QVector3D &s) { v.scale(s); } + Q_INVOKABLE void lookAt(const QVector3D &eye, const QVector3D ¢er, const QVector3D &up) { v.lookAt(eye, center, up); } + + Q_INVOKABLE QMatrix4x4 times(const QMatrix4x4 &m) const; + Q_INVOKABLE QVector4D times(const QVector4D &vec) const; + Q_INVOKABLE QVector3D times(const QVector3D &vec) const; + Q_INVOKABLE QMatrix4x4 times(qreal factor) const; + Q_INVOKABLE QMatrix4x4 plus(const QMatrix4x4 &m) const; + Q_INVOKABLE QMatrix4x4 minus(const QMatrix4x4 &m) const; + + Q_INVOKABLE QVector4D row(int n) const; + Q_INVOKABLE QVector4D column(int m) const; + + Q_INVOKABLE qreal determinant() const; + Q_INVOKABLE QMatrix4x4 inverted() const; + Q_INVOKABLE QMatrix4x4 transposed() const; + + Q_INVOKABLE bool fuzzyEquals(const QMatrix4x4 &m, qreal epsilon) const; + Q_INVOKABLE bool fuzzyEquals(const QMatrix4x4 &m) const; +}; + +} // namespace Quick +} // namespace Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3DQUICKVALUETYPES_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuick/5.12.5/Qt3DQuick/private/quick3dentity_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuick/5.12.5/Qt3DQuick/private/quick3dentity_p.h new file mode 100644 index 0000000..7ba5c62 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuick/5.12.5/Qt3DQuick/private/quick3dentity_p.h @@ -0,0 +1,95 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3D_QUICK_QUICK3DENTITY_P_H +#define QT3D_QUICK_QUICK3DENTITY_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +class QEntity; +class QComponent; + +namespace Quick { + +class QT3DQUICKSHARED_PRIVATE_EXPORT Quick3DEntity : public QObject +{ + Q_OBJECT + Q_PROPERTY(QQmlListProperty components READ componentList) + +public: + explicit Quick3DEntity(QObject *parent = 0); + QQmlListProperty componentList(); + + inline QEntity *parentEntity() const { return qobject_cast(parent()); } + +private: + + static void qmlAppendComponent(QQmlListProperty *list, Qt3DCore::QComponent *comp); + static QComponent *qmlComponentAt(QQmlListProperty *list, int index); + static int qmlComponentsCount(QQmlListProperty *list); + static void qmlClearComponents(QQmlListProperty *list); + + QVector m_managedComponents; +}; + +} // namespace Quick +} // namespace Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3D_QUICK_QUICK3DENTITY_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuick/5.12.5/Qt3DQuick/private/quick3dentityloader_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuick/5.12.5/Qt3DQuick/private/quick3dentityloader_p.h new file mode 100644 index 0000000..611d86c --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuick/5.12.5/Qt3DQuick/private/quick3dentityloader_p.h @@ -0,0 +1,118 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3D_QUICK_QUICK3DENTITYLOADER_P_H +#define QT3D_QUICK_QUICK3DENTITYLOADER_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +#include + + +QT_BEGIN_NAMESPACE + +class QQmlComponent; + +namespace Qt3DCore { + +class QEntity; + +namespace Quick { + +class Quick3DEntityLoaderPrivate; + +class QT3DQUICKSHARED_PRIVATE_EXPORT Quick3DEntityLoader : public QEntity +{ + Q_OBJECT + Q_PROPERTY(QObject *entity READ entity NOTIFY entityChanged) + Q_PROPERTY(QUrl source READ source WRITE setSource NOTIFY sourceChanged) + Q_PROPERTY(Status status READ status NOTIFY statusChanged) + Q_PROPERTY(QQmlComponent *sourceComponent READ sourceComponent WRITE setSourceComponent NOTIFY sourceComponentChanged REVISION 12) +public: + enum Status { + Null = 0, + Loading, + Ready, + Error + }; + Q_ENUM(Status) + + explicit Quick3DEntityLoader(QNode *parent = 0); + ~Quick3DEntityLoader(); + + QObject *entity() const; + + QUrl source() const; + void setSource(const QUrl &url); + + QQmlComponent *sourceComponent() const; + void setSourceComponent(QQmlComponent *components); + + Status status() const; + +Q_SIGNALS: + void entityChanged(); + void sourceChanged(); + void sourceComponentChanged(); + void statusChanged(Status status); + +private: + Q_DECLARE_PRIVATE(Quick3DEntityLoader) + Q_PRIVATE_SLOT(d_func(), void _q_componentStatusChanged(QQmlComponent::Status)) +}; + +} // namespace Quick +} // namespace Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3D_QUICK_QUICK3DENTITYLOADER_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuick/5.12.5/Qt3DQuick/private/quick3dentityloader_p_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuick/5.12.5/Qt3DQuick/private/quick3dentityloader_p_p.h new file mode 100644 index 0000000..b37990d --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuick/5.12.5/Qt3DQuick/private/quick3dentityloader_p_p.h @@ -0,0 +1,103 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3D_QUICK_QUICK3DENTITYLOADER_P_P_H +#define QT3D_QUICK_QUICK3DENTITYLOADER_P_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include +#include + +QT_BEGIN_NAMESPACE + +class QQmlIncubator; +class QQmlContext; + +namespace Qt3DCore { + +class QEntity; + +namespace Quick { + +class Quick3DEntityLoaderIncubator; + +class Quick3DEntityLoaderPrivate : public QEntityPrivate +{ +public: + Quick3DEntityLoaderPrivate(); + + Q_DECLARE_PUBLIC(Quick3DEntityLoader) + + void clear(); + void loadFromSource(); + void loadComponent(const QUrl &source); + void loadComponent(QQmlComponent *component); + + void _q_componentStatusChanged(QQmlComponent::Status status); + void setStatus(Quick3DEntityLoader::Status status); + + static inline Quick3DEntityLoaderPrivate *get(Quick3DEntityLoader *q) { return q->d_func(); } + + QUrl m_source; + Quick3DEntityLoaderIncubator *m_incubator; + QQmlContext *m_context; + QQmlComponent *m_component; + QQmlComponent *m_sourceComponent; + QEntity *m_entity; + Quick3DEntityLoader::Status m_status; +}; + +} // namespace Quick +} // namespace Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3D_QUICK_QUICK3DENTITYLOADER_P_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuick/5.12.5/Qt3DQuick/private/quick3djoint_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuick/5.12.5/Qt3DQuick/private/quick3djoint_p.h new file mode 100644 index 0000000..bef1616 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuick/5.12.5/Qt3DQuick/private/quick3djoint_p.h @@ -0,0 +1,88 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DCORE_QUICK_QUICK3DJOINT_P_H +#define QT3DCORE_QUICK_QUICK3DJOINT_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { +namespace Quick { + +class QT3DQUICKSHARED_PRIVATE_EXPORT Quick3DJoint : public QObject +{ + Q_OBJECT + Q_PROPERTY(QQmlListProperty childJoints READ childJoints) +public: + explicit Quick3DJoint(QObject *parent = nullptr); + + QQmlListProperty childJoints(); + + inline QJoint *parentJoint() const { return qobject_cast(parent()); } + +private: + static void appendJoint(QQmlListProperty *list, Qt3DCore::QJoint *obj); + static QJoint *jointAt(QQmlListProperty *list, int index); + static int jointCount(QQmlListProperty *list); + static void clearJoints(QQmlListProperty *list); +}; + +} // namespace Quick +} // namespace Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3DCORE_QUICK_QUICK3DJOINT_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuick/5.12.5/Qt3DQuick/private/quick3dnode_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuick/5.12.5/Qt3DQuick/private/quick3dnode_p.h new file mode 100644 index 0000000..640a581 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuick/5.12.5/Qt3DQuick/private/quick3dnode_p.h @@ -0,0 +1,99 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3D_QUICK_QUICK3DNODE_P_H +#define QT3D_QUICK_QUICK3DNODE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { +namespace Quick { + +class QT3DQUICKSHARED_PRIVATE_EXPORT Quick3DNode : public QObject +{ + Q_OBJECT + Q_PROPERTY(QQmlListProperty data READ data) + Q_PROPERTY(QQmlListProperty childNodes READ childNodes) + Q_CLASSINFO("DefaultProperty", "data") +public: + explicit Quick3DNode(QObject *parent = 0); + + QQmlListProperty data(); + QQmlListProperty childNodes(); + + inline QNode *parentNode() const { return qobject_cast(parent()); } + +private: + static void appendData(QQmlListProperty *list, QObject *obj); + static QObject *dataAt(QQmlListProperty *list, int index); + static int dataCount(QQmlListProperty *list); + static void clearData(QQmlListProperty *list); + + static void appendChild(QQmlListProperty *list, Qt3DCore::QNode *obj); + static QNode *childAt(QQmlListProperty *list, int index); + static int childCount(QQmlListProperty *list); + static void clearChildren(QQmlListProperty *list); + +private Q_SLOTS: + void childAppended(int idx, QObject *child); + void childRemoved(int idx, QObject *child); +}; + +} // namespace Quick +} // namespace Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3D_QUICK_QUICK3DNODE_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuick/5.12.5/Qt3DQuick/private/quick3dnodeinstantiator_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuick/5.12.5/Qt3DQuick/private/quick3dnodeinstantiator_p.h new file mode 100644 index 0000000..b92c981 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuick/5.12.5/Qt3DQuick/private/quick3dnodeinstantiator_p.h @@ -0,0 +1,131 @@ +/**************************************************************************** +** +** Copyright (C) 2013 Research In Motion. +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3D_QUICK_NODEINSTANTIATOR_P_H +#define QT3D_QUICK_NODEINSTANTIATOR_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { +namespace Quick { + +class Quick3DNodeInstantiatorPrivate; + +class QT3DQUICKSHARED_PRIVATE_EXPORT Quick3DNodeInstantiator : public QNode, public QQmlParserStatus +{ + Q_OBJECT + + Q_INTERFACES(QQmlParserStatus) + + Q_PROPERTY(bool active READ isActive WRITE setActive NOTIFY activeChanged) + Q_PROPERTY(bool asynchronous READ isAsync WRITE setAsync NOTIFY asynchronousChanged) + Q_PROPERTY(QVariant model READ model WRITE setModel NOTIFY modelChanged) + Q_PROPERTY(int count READ count NOTIFY countChanged) + Q_PROPERTY(QQmlComponent *delegate READ delegate WRITE setDelegate NOTIFY delegateChanged) + Q_PROPERTY(QObject *object READ object NOTIFY objectChanged) + Q_CLASSINFO("DefaultProperty", "delegate") + +public: + Quick3DNodeInstantiator(QNode *parent = 0); + + bool isActive() const; + void setActive(bool newVal); + + bool isAsync() const; + void setAsync(bool newVal); + + int count() const; + + QQmlComponent *delegate(); + void setDelegate(QQmlComponent *c); + + QVariant model() const; + void setModel(const QVariant &v); + + QObject *object() const; + Q_INVOKABLE QObject *objectAt(int index) const; + + void classBegin() override; + void componentComplete() override; + +Q_SIGNALS: + void modelChanged(); + void delegateChanged(); + void countChanged(); + void objectChanged(); + void activeChanged(); + void asynchronousChanged(); + + void objectAdded(int index, QObject *object); + void objectRemoved(int index, QObject *object); + +private slots: + void onParentChanged(QObject *parent); + +private: + Q_DISABLE_COPY(Quick3DNodeInstantiator) + Q_DECLARE_PRIVATE(Quick3DNodeInstantiator) + Q_PRIVATE_SLOT(d_func(), void _q_createdItem(int, QObject *)) + Q_PRIVATE_SLOT(d_func(), void _q_modelUpdated(const QQmlChangeSet &, bool)) +}; + +} // namespace Quick +} // namespace Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3D_QUICK_NODEINSTANTIATOR_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuick/5.12.5/Qt3DQuick/private/quick3dnodev9_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuick/5.12.5/Qt3DQuick/private/quick3dnodev9_p.h new file mode 100644 index 0000000..d969c4b --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuick/5.12.5/Qt3DQuick/private/quick3dnodev9_p.h @@ -0,0 +1,109 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3D_QUICK_QUICK3DNODEV9_P_H +#define QT3D_QUICK_QUICK3DNODEV9_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { +namespace Quick { + +class QT3DQUICKSHARED_PRIVATE_EXPORT Quick3DNodeV9 : public QObject +{ + Q_OBJECT + Q_PROPERTY(QJSValue propertyTrackingOverrides READ propertyTrackingOverrides WRITE setPropertyTrackingOverrides NOTIFY propertyTrackingOverridesChanged) + Q_PROPERTY(QQmlListProperty data READ data) + Q_PROPERTY(QQmlListProperty childNodes READ childNodes) + Q_CLASSINFO("DefaultProperty", "data") + +public: + explicit Quick3DNodeV9(QObject *parent = nullptr); + + QJSValue propertyTrackingOverrides() const; + QQmlListProperty data(); + QQmlListProperty childNodes(); + + inline QNode *parentNode() const { return qobject_cast(parent()); } + +Q_SIGNALS: + void propertyTrackingOverridesChanged(const QJSValue &value); + +private Q_SLOTS: + void setPropertyTrackingOverrides(const QJSValue &value); + void childAppended(int idx, QObject *child); + void childRemoved(int idx, QObject *child); + +private: + static void appendData(QQmlListProperty *list, QObject *obj); + static QObject *dataAt(QQmlListProperty *list, int index); + static int dataCount(QQmlListProperty *list); + static void clearData(QQmlListProperty *list); + + static void appendChild(QQmlListProperty *list, Qt3DCore::QNode *obj); + static QNode *childAt(QQmlListProperty *list, int index); + static int childCount(QQmlListProperty *list); + static void clearChildren(QQmlListProperty *list); + + QJSValue m_propertyTrackingOverrides; +}; + +} // namespace Quick +} // namespace Qt3DCore + +QT_END_NAMESPACE + + +#endif // QT3D_QUICK_QUICK3DNODEV9_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuick/QQmlAspectEngine b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuick/QQmlAspectEngine new file mode 100644 index 0000000..080cdc0 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuick/QQmlAspectEngine @@ -0,0 +1 @@ +#include "qqmlaspectengine.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuick/Qt3DQuick b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuick/Qt3DQuick new file mode 100644 index 0000000..4997bf4 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuick/Qt3DQuick @@ -0,0 +1,6 @@ +#ifndef QT_QT3DQUICK_MODULE_H +#define QT_QT3DQUICK_MODULE_H +#include +#include "qqmlaspectengine.h" +#include "qt3dquickversion.h" +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuick/Qt3DQuickDepends b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuick/Qt3DQuickDepends new file mode 100644 index 0000000..1f99e34 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuick/Qt3DQuickDepends @@ -0,0 +1,8 @@ +/* This file was generated by qmake with the info from /src/quick3d/quick3d/quick3d.pro. */ +#ifdef __cplusplus /* create empty PCH in C mode */ +#include +#include +#include +#include +#include +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuick/Qt3DQuickVersion b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuick/Qt3DQuickVersion new file mode 100644 index 0000000..edcd8ca --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuick/Qt3DQuickVersion @@ -0,0 +1 @@ +#include "qt3dquickversion.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuick/qqmlaspectengine.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuick/qqmlaspectengine.h new file mode 100644 index 0000000..a7b09ec --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuick/qqmlaspectengine.h @@ -0,0 +1,83 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3D_QUICK_QQMLASPECTENGINE_H +#define QT3D_QUICK_QQMLASPECTENGINE_H + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { +namespace Quick { + +class QQmlAspectEnginePrivate; + +class QT3DQUICKSHARED_EXPORT QQmlAspectEngine: public QObject +{ + Q_OBJECT +public: + enum Status { Null, Ready, Loading, Error }; + + explicit QQmlAspectEngine(QObject *parent = nullptr); + ~QQmlAspectEngine(); + + Status status() const; + void setSource(const QUrl &source); + + QQmlEngine *qmlEngine() const; + QAspectEngine *aspectEngine() const; + +Q_SIGNALS: + void statusChanged(Status); + void sceneCreated(QObject* rootObject); + +private: + Q_DECLARE_PRIVATE(QQmlAspectEngine) + Q_PRIVATE_SLOT(d_func(), void _q_continueExecute()) +}; + +} // namespace Quick +} // namespace Qt3DCore + +QT_END_NAMESPACE + +#endif // QT3D_QUICK_QQMLASPECTENGINE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuick/qt3dquick_global.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuick/qt3dquick_global.h new file mode 100644 index 0000000..b2f5803 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuick/qt3dquick_global.h @@ -0,0 +1,59 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DQUICK_GLOBAL_H +#define QT3DQUICK_GLOBAL_H + +#include + +QT_BEGIN_NAMESPACE + +#if defined(QT_SHARED) || !defined(QT_STATIC) +# if defined(QT_BUILD_3DQUICK_LIB) +# define QT3DQUICKSHARED_EXPORT Q_DECL_EXPORT +# else +# define QT3DQUICKSHARED_EXPORT Q_DECL_IMPORT +# endif +#else +# define QT3DQUICKSHARED_EXPORT +#endif + +QT_END_NAMESPACE + +#endif // QT3DQUICK_GLOBAL_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuick/qt3dquickversion.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuick/qt3dquickversion.h new file mode 100644 index 0000000..e18f490 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuick/qt3dquickversion.h @@ -0,0 +1,9 @@ +/* This file was generated by syncqt. */ +#ifndef QT_QT3DQUICK_VERSION_H +#define QT_QT3DQUICK_VERSION_H + +#define QT3DQUICK_VERSION_STR "5.12.5" + +#define QT3DQUICK_VERSION 0x050C05 + +#endif // QT_QT3DQUICK_VERSION_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickAnimation/5.12.5/Qt3DQuickAnimation/private/qt3dquickanimation_global_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickAnimation/5.12.5/Qt3DQuickAnimation/private/qt3dquickanimation_global_p.h new file mode 100644 index 0000000..89d7559 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickAnimation/5.12.5/Qt3DQuickAnimation/private/qt3dquickanimation_global_p.h @@ -0,0 +1,86 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DQUICKANIMATION_GLOBAL_P_H +#define QT3DQUICKANIMATION_GLOBAL_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +#define QT3DQUICKANIMATIONSHARED_PRIVATE_EXPORT QT3DQUICKANIMATIONSHARED_EXPORT + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { +namespace Quick { + +QT3DQUICKANIMATIONSHARED_PRIVATE_EXPORT void Quick3DAnimation_initialize(); +QT3DQUICKANIMATIONSHARED_PRIVATE_EXPORT void Quick3DAnimation_registerType(const char *className, const char *quickName, int major, int minor); + +template void registerExtendedType(const char *className, const char *quickName, + const char *uri, int major, int minor, const char *name) +{ + qmlRegisterExtendedType(uri, major, minor, name); + Quick3DAnimation_registerType(className, quickName, major, minor); +} + +template void registerType(const char *className, const char *quickName, + const char *uri, int major, int minor, const char *name) +{ + qmlRegisterType(uri, major, minor, name); + Quick3DAnimation_registerType(className, quickName, major, minor); +} + +} // Quick +} // Qt3DAnimation + +QT_END_NAMESPACE + +#endif // QT3DQUICKANIMATION_GLOBAL_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickAnimation/5.12.5/Qt3DQuickAnimation/private/qt3dquickanimationnodefactory_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickAnimation/5.12.5/Qt3DQuickAnimation/private/qt3dquickanimationnodefactory_p.h new file mode 100644 index 0000000..a4efd03 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickAnimation/5.12.5/Qt3DQuickAnimation/private/qt3dquickanimationnodefactory_p.h @@ -0,0 +1,90 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QUICKANIMATIONERNODEFACTORY_H +#define QUICKANIMATIONERNODEFACTORY_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +class QQmlType; + +namespace Qt3DAnimation { + +class QuickAnimationNodeFactory : public Qt3DCore::QAbstractNodeFactory +{ +public: + Qt3DCore::QNode *createNode(const char *type) override; + + void registerType(const char *className, const char *quickName, int major, int minor); + + static QuickAnimationNodeFactory *instance(); + +private: + struct Type { + Type() : t(nullptr), resolved(false) { } + Type(const char *quickName, int major, int minor) + : quickName(quickName), version(major, minor), t(nullptr), resolved(false) { } + QByteArray quickName; + QPair version; + QQmlType t; + bool resolved; + }; + QHash m_types; +}; + +} // namespace Qt3DAnimation + +QT_END_NAMESPACE + +#endif // QUICKANIMATIONERNODEFACTORY_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickAnimation/5.12.5/Qt3DQuickAnimation/private/quick3danimationcontroller_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickAnimation/5.12.5/Qt3DQuickAnimation/private/quick3danimationcontroller_p.h new file mode 100644 index 0000000..a3033e5 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickAnimation/5.12.5/Qt3DQuickAnimation/private/quick3danimationcontroller_p.h @@ -0,0 +1,89 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: http://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_QUICK_QUICK3DANIMATIONCONTROLLER_P_H +#define QT3DANIMATION_QUICK_QUICK3DANIMATIONCONTROLLER_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { +namespace Quick { + +class QT3DQUICKANIMATIONSHARED_PRIVATE_EXPORT QQuick3DAnimationController : public QObject +{ + Q_OBJECT + Q_PROPERTY(QQmlListProperty animationGroups READ animationGroups) + +public: + + explicit QQuick3DAnimationController(QObject *parent = nullptr); + + inline Qt3DAnimation::QAnimationController *parentAnimationController() const + { + return qobject_cast(parent()); + } + + QQmlListProperty animationGroups(); + +private: + + static void appendAnimationGroup(QQmlListProperty *list, Qt3DAnimation::QAnimationGroup *bar); + static QAnimationGroup *animationGroupAt(QQmlListProperty *list, int index); + static int animationGroupCount(QQmlListProperty *list); + static void clearAnimationGroups(QQmlListProperty *list); +}; + +} // namespace Quick +} // namespace Qt3DAnimation + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_QUICK_QUICK3DEFFECT_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickAnimation/5.12.5/Qt3DQuickAnimation/private/quick3danimationgroup_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickAnimation/5.12.5/Qt3DQuickAnimation/private/quick3danimationgroup_p.h new file mode 100644 index 0000000..aef2024 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickAnimation/5.12.5/Qt3DQuickAnimation/private/quick3danimationgroup_p.h @@ -0,0 +1,91 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: http://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_QUICK_QUICK3DANIMATIONGROUP_P_H +#define QT3DANIMATION_QUICK_QUICK3DANIMATIONGROUP_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { +namespace Quick { + +class QT3DQUICKANIMATIONSHARED_PRIVATE_EXPORT QQuick3DAnimationGroup : public QObject +{ + Q_OBJECT + Q_PROPERTY(QQmlListProperty animations READ animations) + +public: + + explicit QQuick3DAnimationGroup(QObject *parent = nullptr); + + inline Qt3DAnimation::QAnimationGroup *parentAnimationGroup() const + { + return qobject_cast(parent()); + } + + QQmlListProperty animations(); + +private: + + static void appendAnimation(QQmlListProperty *list, Qt3DAnimation::QAbstractAnimation *animation); + static Qt3DAnimation::QAbstractAnimation *animationAt(QQmlListProperty *list, int index); + static int animationCount(QQmlListProperty *list); + static void clearAnimation(QQmlListProperty *list); +}; + +} // namespace Quick +} // namespace Qt3DAnimation + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_QUICK_QUICK3DEFFECT_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickAnimation/5.12.5/Qt3DQuickAnimation/private/quick3dchannelmapper_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickAnimation/5.12.5/Qt3DQuickAnimation/private/quick3dchannelmapper_p.h new file mode 100644 index 0000000..c3ec577 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickAnimation/5.12.5/Qt3DQuickAnimation/private/quick3dchannelmapper_p.h @@ -0,0 +1,90 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_ANIMATION_QUICK_QUICK3DBASICANIMATION_H +#define QT3DANIMATION_ANIMATION_QUICK_QUICK3DBASICANIMATION_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { +namespace Animation { +namespace Quick { + +class QT3DQUICKANIMATIONSHARED_PRIVATE_EXPORT Quick3DChannelMapper : public QObject +{ + Q_OBJECT + Q_PROPERTY(QQmlListProperty mappings READ qmlMappings CONSTANT) + Q_CLASSINFO("DefaultProperty", "mappings") + +public: + explicit Quick3DChannelMapper(QObject *parent = nullptr); + + inline QChannelMapper *parentMapper() const { return qobject_cast(parent()); } + QQmlListProperty qmlMappings(); + +private: + static void appendMapping(QQmlListProperty *list, QAbstractChannelMapping *mapping); + static QAbstractChannelMapping *mappingAt(QQmlListProperty *list, int index); + static int mappingCount(QQmlListProperty *list); + static void clearMappings(QQmlListProperty *list); +}; + +} // namespace Quick +} // namespace Animation +} // namespace Qt3DAnimation + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_ANIMATION_QUICK_QUICK3DBASICANIMATION_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickAnimation/5.12.5/Qt3DQuickAnimation/private/quick3dkeyframeanimation_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickAnimation/5.12.5/Qt3DQuickAnimation/private/quick3dkeyframeanimation_p.h new file mode 100644 index 0000000..944cdbe --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickAnimation/5.12.5/Qt3DQuickAnimation/private/quick3dkeyframeanimation_p.h @@ -0,0 +1,92 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: http://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_QUICK_QUICK3DKEYFRAMEANIMATION_P_H +#define QT3DANIMATION_QUICK_QUICK3DKEYFRAMEANIMATION_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { +namespace Quick { + +class QT3DQUICKANIMATIONSHARED_PRIVATE_EXPORT QQuick3DKeyframeAnimation : public QObject +{ + Q_OBJECT + Q_PROPERTY(QQmlListProperty keyframes READ keyframes) + +public: + QQuick3DKeyframeAnimation(QObject *parent = nullptr); + + inline QKeyframeAnimation *parentKeyframeAnimation() const + { + return qobject_cast(parent()); + } + + QQmlListProperty keyframes(); + +private: + + static void appendKeyframe(QQmlListProperty *list, + Qt3DCore::QTransform *transform); + static Qt3DCore::QTransform *keyframeAt(QQmlListProperty *list, + int index); + static int keyframeCount(QQmlListProperty *list); + static void clearKeyframes(QQmlListProperty *list); +}; + +} // namespace Quick +} // namespace Qt3DAnimation + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_QUICK_QUICK3DKEYFRAMEANIMATION_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickAnimation/5.12.5/Qt3DQuickAnimation/private/quick3dmorphinganimation_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickAnimation/5.12.5/Qt3DQuickAnimation/private/quick3dmorphinganimation_p.h new file mode 100644 index 0000000..31d008a --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickAnimation/5.12.5/Qt3DQuickAnimation/private/quick3dmorphinganimation_p.h @@ -0,0 +1,92 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: http://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_QUICK_QUICK3DMORPHINGANIMATION_P_H +#define QT3DANIMATION_QUICK_QUICK3DMORPHINGANIMATION_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { +namespace Quick { + +class QT3DQUICKANIMATIONSHARED_PRIVATE_EXPORT QQuick3DMorphingAnimation : public QObject +{ + Q_OBJECT + Q_PROPERTY(QQmlListProperty morphTargets READ morphTargets) + +public: + QQuick3DMorphingAnimation(QObject *parent = nullptr); + + inline QMorphingAnimation *parentMorphingAnimation() const + { + return qobject_cast(parent()); + } + + QQmlListProperty morphTargets(); + +private: + + static void appendMorphTarget(QQmlListProperty *list, + Qt3DAnimation::QMorphTarget *morphTarget); + static Qt3DAnimation::QMorphTarget *morphTargetAt(QQmlListProperty *list, + int index); + static int morphTargetCount(QQmlListProperty *list); + static void clearMorphTargets(QQmlListProperty *list); +}; + +} // namespace Quick +} // namespace Qt3DAnimation + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_QUICK_QUICK3DMORPHINGANIMATION_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickAnimation/5.12.5/Qt3DQuickAnimation/private/quick3dmorphtarget_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickAnimation/5.12.5/Qt3DQuickAnimation/private/quick3dmorphtarget_p.h new file mode 100644 index 0000000..03b52df --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickAnimation/5.12.5/Qt3DQuickAnimation/private/quick3dmorphtarget_p.h @@ -0,0 +1,85 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: http://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_QUICK_QUICK3DMORPHTARGET_P_H +#define QT3DANIMATION_QUICK_QUICK3DMORPHTARGET_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { +namespace Quick { + +class QT3DQUICKANIMATIONSHARED_PRIVATE_EXPORT QQuick3DMorphTarget : public QObject +{ + Q_OBJECT + Q_PROPERTY(QQmlListProperty attributes READ attributes) + +public: + QQuick3DMorphTarget(QObject *parent = nullptr); + + inline QMorphTarget *parentMorphTarget() const { return qobject_cast(parent()); } + + QQmlListProperty attributes(); + +private: + + static void appendAttribute(QQmlListProperty *list, Qt3DRender::QAttribute *bar); + static Qt3DRender::QAttribute *attributeAt(QQmlListProperty *list, int index); + static int attributeCount(QQmlListProperty *list); + static void clearAttributes(QQmlListProperty *list); +}; + +} // namespace Quick +} // namespace Qt3DAnimation + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_QUICK_QUICK3DMORPHTARGET_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickAnimation/5.12.5/Qt3DQuickAnimation/private/quick3dvertexblendanimation_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickAnimation/5.12.5/Qt3DQuickAnimation/private/quick3dvertexblendanimation_p.h new file mode 100644 index 0000000..6be2d66 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickAnimation/5.12.5/Qt3DQuickAnimation/private/quick3dvertexblendanimation_p.h @@ -0,0 +1,93 @@ +/**************************************************************************** +** +** Copyright (C) 2017 The Qt Company Ltd. +** Contact: http://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_QUICK_QUICK3DVERTEXBLENDANIMATION_P_H +#define QT3DANIMATION_QUICK_QUICK3DVERTEXBLENDANIMATION_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { +namespace Quick { + +class QT3DQUICKANIMATIONSHARED_PRIVATE_EXPORT QQuick3DVertexBlendAnimation : public QObject +{ + Q_OBJECT + Q_PROPERTY(QQmlListProperty morphTargets READ morphTargets) + +public: + QQuick3DVertexBlendAnimation(QObject *parent = nullptr); + + inline QVertexBlendAnimation *parentVertexBlendAnimation() const + { + return qobject_cast(parent()); + } + + QQmlListProperty morphTargets(); + +private: + + static void appendMorphTarget(QQmlListProperty *list, + Qt3DAnimation::QMorphTarget *morphTarget); + static Qt3DAnimation::QMorphTarget *morphTargetAt( + QQmlListProperty *list, + int index); + static int morphTargetCount(QQmlListProperty *list); + static void clearMorphTargets(QQmlListProperty *list); +}; + +} // namespace Quick +} // namespace Qt3DAnimation + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_QUICK_QUICK3DMORPHINGANIMATION_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickAnimation/Qt3DQuickAnimation b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickAnimation/Qt3DQuickAnimation new file mode 100644 index 0000000..40b7be7 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickAnimation/Qt3DQuickAnimation @@ -0,0 +1,5 @@ +#ifndef QT_QT3DQUICKANIMATION_MODULE_H +#define QT_QT3DQUICKANIMATION_MODULE_H +#include +#include "qt3dquickanimationversion.h" +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickAnimation/Qt3DQuickAnimationDepends b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickAnimation/Qt3DQuickAnimationDepends new file mode 100644 index 0000000..10023f1 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickAnimation/Qt3DQuickAnimationDepends @@ -0,0 +1,10 @@ +/* This file was generated by qmake with the info from /src/quick3d/quick3danimation/quick3danimation.pro. */ +#ifdef __cplusplus /* create empty PCH in C mode */ +#include +#include +#include +#include +#include +#include +#include +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickAnimation/Qt3DQuickAnimationVersion b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickAnimation/Qt3DQuickAnimationVersion new file mode 100644 index 0000000..8f7fb63 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickAnimation/Qt3DQuickAnimationVersion @@ -0,0 +1 @@ +#include "qt3dquickanimationversion.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickAnimation/qt3dquickanimation_global.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickAnimation/qt3dquickanimation_global.h new file mode 100644 index 0000000..962321b --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickAnimation/qt3dquickanimation_global.h @@ -0,0 +1,59 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DQUICKANIMATION_GLOBAL_H +#define QT3DQUICKANIMATION_GLOBAL_H + +#include + +QT_BEGIN_NAMESPACE + +#if defined(QT_SHARED) || !defined(QT_STATIC) +# if defined(QT_BUILD_3DQUICKANIMATION_LIB) +# define QT3DQUICKANIMATIONSHARED_EXPORT Q_DECL_EXPORT +# else +# define QT3DQUICKANIMATIONSHARED_EXPORT Q_DECL_IMPORT +# endif +#else +# define QT3DQUICKANIMATIONSHARED_EXPORT +#endif + +QT_END_NAMESPACE + +#endif // QT3DQUICKANIMATION_GLOBAL_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickAnimation/qt3dquickanimationversion.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickAnimation/qt3dquickanimationversion.h new file mode 100644 index 0000000..daf9332 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickAnimation/qt3dquickanimationversion.h @@ -0,0 +1,9 @@ +/* This file was generated by syncqt. */ +#ifndef QT_QT3DQUICKANIMATION_VERSION_H +#define QT_QT3DQUICKANIMATION_VERSION_H + +#define QT3DQUICKANIMATION_VERSION_STR "5.12.5" + +#define QT3DQUICKANIMATION_VERSION 0x050C05 + +#endif // QT_QT3DQUICKANIMATION_VERSION_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickExtras/5.12.5/Qt3DQuickExtras/private/qt3dquickextras_global_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickExtras/5.12.5/Qt3DQuickExtras/private/qt3dquickextras_global_p.h new file mode 100644 index 0000000..a275335 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickExtras/5.12.5/Qt3DQuickExtras/private/qt3dquickextras_global_p.h @@ -0,0 +1,79 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DQUICKEXTRAS_GLOBAL_P_H +#define QT3DQUICKEXTRAS_GLOBAL_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +#define QT3DQUICKEXTRASSHARED_PRIVATE_EXPORT QT3DQUICKEXTRASSHARED_EXPORT + +QT_BEGIN_NAMESPACE + +namespace Qt3DExtras { +namespace Quick { + +QT3DQUICKEXTRASSHARED_PRIVATE_EXPORT void Quick3DExtras_initialize(); +QT3DQUICKEXTRASSHARED_PRIVATE_EXPORT void Quick3DExtras_registerType(const char *className, const char *quickName, int major, int minor); + +template void registerExtendedType(const char *className, const char *quickName, + const char *uri, int major, int minor, const char *name) +{ + qmlRegisterExtendedType(uri, major, minor, name); + Quick3DExtras_registerType(className, quickName, major, minor); +} + +} // Quick +} // Qt3DExtras + +QT_END_NAMESPACE + +#endif // QT3DQUICKEXTRAS_GLOBAL_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickExtras/5.12.5/Qt3DQuickExtras/private/qt3dquickextrasnodefactory_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickExtras/5.12.5/Qt3DQuickExtras/private/qt3dquickextrasnodefactory_p.h new file mode 100644 index 0000000..a40d73a --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickExtras/5.12.5/Qt3DQuickExtras/private/qt3dquickextrasnodefactory_p.h @@ -0,0 +1,90 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QUICKEXTRASERNODEFACTORY_H +#define QUICKEXTRASERNODEFACTORY_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +class QQmlType; + +namespace Qt3DExtras { + +class QuickExtrasNodeFactory : public Qt3DCore::QAbstractNodeFactory +{ +public: + Qt3DCore::QNode *createNode(const char *type) override; + + void registerType(const char *className, const char *quickName, int major, int minor); + + static QuickExtrasNodeFactory *instance(); + +private: + struct Type { + Type() : t(nullptr), resolved(false) { } + Type(const char *quickName, int major, int minor) + : quickName(quickName), version(major, minor), t(nullptr), resolved(false) { } + QByteArray quickName; + QPair version; + QQmlType t; + bool resolved; + }; + QHash m_types; +}; + +} // namespace Qt3DExtras + +QT_END_NAMESPACE + +#endif // QUICKEXTRASERNODEFACTORY_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickExtras/5.12.5/Qt3DQuickExtras/private/qt3dquickwindow_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickExtras/5.12.5/Qt3DQuickExtras/private/qt3dquickwindow_p.h new file mode 100644 index 0000000..f2f8d04 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickExtras/5.12.5/Qt3DQuickExtras/private/qt3dquickwindow_p.h @@ -0,0 +1,86 @@ +/**************************************************************************** +** +** Copyright (C) 2017 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DQUICKWINDOW_P_H +#define QT3DQUICKWINDOW_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DExtras { + +namespace Quick { + +class Qt3DQuickWindowPrivate : public QWindowPrivate +{ +public: + Qt3DQuickWindowPrivate(); + + Qt3DCore::Quick::QQmlAspectEngine *m_engine; + + // Aspects + Qt3DRender::QRenderAspect *m_renderAspect; + Qt3DInput::QInputAspect *m_inputAspect; + Qt3DLogic::QLogicAspect *m_logicAspect; + + QUrl m_source; + bool m_initialized; + QPointer m_camera; + Qt3DQuickWindow::CameraAspectRatioMode m_cameraAspectRatioMode; + QQmlIncubationController *m_incubationController; + + Q_DECLARE_PUBLIC(Qt3DQuickWindow) +}; + +} // Quick + +} // Qt3DExtras + +QT_END_NAMESPACE + +#endif // QT3DQUICKWINDOW_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickExtras/5.12.5/Qt3DQuickExtras/private/qt3dquickwindowlogging_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickExtras/5.12.5/Qt3DQuickExtras/private/qt3dquickwindowlogging_p.h new file mode 100644 index 0000000..75a774d --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickExtras/5.12.5/Qt3DQuickExtras/private/qt3dquickwindowlogging_p.h @@ -0,0 +1,66 @@ +/**************************************************************************** +** +** Copyright (C) 2017 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtGui module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3D_QUICKWINDOWLOGGING_P_H +#define QT3D_QUICKWINDOWLOGGING_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DExtras { + +Q_DECLARE_LOGGING_CATEGORY(QuickWindow) + +} // Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3D_QUICKWINDOWLOGGING_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickExtras/5.12.5/Qt3DQuickExtras/private/quick3dlevelofdetailloader_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickExtras/5.12.5/Qt3DQuickExtras/private/quick3dlevelofdetailloader_p.h new file mode 100644 index 0000000..445e7bc --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickExtras/5.12.5/Qt3DQuickExtras/private/quick3dlevelofdetailloader_p.h @@ -0,0 +1,121 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DEXTRAS_EXTRAS_QUICK_QUICK3DLEVELOFDETAILLOADER_P_H +#define QT3DEXTRAS_EXTRAS_QUICK_QUICK3DLEVELOFDETAILLOADER_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DExtras { +namespace Extras { +namespace Quick { + +class Quick3DLevelOfDetailLoaderPrivate; + +class QT3DQUICKEXTRASSHARED_PRIVATE_EXPORT Quick3DLevelOfDetailLoader : public Qt3DCore::QEntity +{ + Q_OBJECT + Q_PROPERTY(QVariantList sources READ sources WRITE setSources NOTIFY sourcesChanged) + + Q_PROPERTY(Qt3DRender::QCamera *camera READ camera WRITE setCamera NOTIFY cameraChanged) + Q_PROPERTY(int currentIndex READ currentIndex WRITE setCurrentIndex NOTIFY currentIndexChanged) + Q_PROPERTY(Qt3DRender::QLevelOfDetail::ThresholdType thresholdType READ thresholdType WRITE setThresholdType NOTIFY thresholdTypeChanged) + Q_PROPERTY(QVector thresholds READ thresholds WRITE setThresholds NOTIFY thresholdsChanged) + Q_PROPERTY(Qt3DRender::QLevelOfDetailBoundingSphere volumeOverride READ volumeOverride WRITE setVolumeOverride NOTIFY volumeOverrideChanged) + + Q_PROPERTY(QObject *entity READ entity NOTIFY entityChanged) + Q_PROPERTY(QUrl source READ source NOTIFY sourceChanged) +public: + explicit Quick3DLevelOfDetailLoader(QNode *parent = 0); + + QVariantList sources() const; + void setSources(const QVariantList &sources); + + Qt3DRender::QCamera *camera() const; + void setCamera(Qt3DRender::QCamera *camera); + int currentIndex() const; + void setCurrentIndex(int currentIndex); + Qt3DRender::QLevelOfDetail::ThresholdType thresholdType() const; + void setThresholdType(Qt3DRender::QLevelOfDetail::ThresholdType thresholdType); + QVector thresholds() const; + void setThresholds(const QVector &thresholds); + Qt3DRender::QLevelOfDetailBoundingSphere volumeOverride() const; + void setVolumeOverride(const Qt3DRender::QLevelOfDetailBoundingSphere &volumeOverride); + + Q_INVOKABLE Qt3DRender::QLevelOfDetailBoundingSphere createBoundingSphere(const QVector3D ¢er, float radius); + + QObject *entity() const; + QUrl source() const; + +Q_SIGNALS: + void sourcesChanged(); + void cameraChanged(); + void currentIndexChanged(); + void thresholdTypeChanged(); + void thresholdsChanged(); + void volumeOverrideChanged(); + void entityChanged(); + void sourceChanged(); + +private: + Q_DECLARE_PRIVATE(Quick3DLevelOfDetailLoader) +}; + +} // namespace Quick +} // namespace Extras +} // namespace Qt3DExtras + +QT_END_NAMESPACE + +#endif // QT3DEXTRAS_EXTRAS_QUICK_QUICK3DLEVELOFDETAILLOADER_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickExtras/5.12.5/Qt3DQuickExtras/private/quick3dlevelofdetailloader_p_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickExtras/5.12.5/Qt3DQuickExtras/private/quick3dlevelofdetailloader_p_p.h new file mode 100644 index 0000000..b123ea3 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickExtras/5.12.5/Qt3DQuickExtras/private/quick3dlevelofdetailloader_p_p.h @@ -0,0 +1,87 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DEXTRAS_EXTRAS_QUICK_QUICK3DLEVELOFDETAILLOADER_P_P_H +#define QT3DEXTRAS_EXTRAS_QUICK_QUICK3DLEVELOFDETAILLOADER_P_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include "quick3dlevelofdetailloader_p.h" +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { +namespace Quick { +class Quick3DEntityLoader; +} +} + +namespace Qt3DExtras { +namespace Extras { +namespace Quick { + +class Quick3DLevelOfDetailLoaderPrivate : public Qt3DCore::QEntityPrivate +{ +public: + Quick3DLevelOfDetailLoaderPrivate(); + + Q_DECLARE_PUBLIC(Quick3DLevelOfDetailLoader) + + QVariantList m_sources; + Qt3DCore::Quick::Quick3DEntityLoader *m_loader; + Qt3DRender::QLevelOfDetail *m_lod; +}; + +} // namespace Quick +} // namespace Extras +} // namespace Qt3DExtras + +QT_END_NAMESPACE + +#endif // QT3DEXTRAS_EXTRAS_QUICK_QUICK3DLEVELOFDETAILLOADER_P_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickExtras/5.12.5/Qt3DQuickExtras/private/quick3dspritesheet_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickExtras/5.12.5/Qt3DQuickExtras/private/quick3dspritesheet_p.h new file mode 100644 index 0000000..38a92dd --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickExtras/5.12.5/Qt3DQuickExtras/private/quick3dspritesheet_p.h @@ -0,0 +1,89 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DEXTRAS_EXTRAS_QUICK_QUICK3DSPRITESHEET_P_H +#define QT3DEXTRAS_EXTRAS_QUICK_QUICK3DSPRITESHEET_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DExtras { +namespace Extras { +namespace Quick { + +class QT3DQUICKEXTRASSHARED_EXPORT Quick3DSpriteSheet : public QObject +{ + Q_OBJECT + Q_PROPERTY(QQmlListProperty sprites READ sprites CONSTANT) + Q_CLASSINFO("DefaultProperty", "sprites") +public: + explicit Quick3DSpriteSheet(QObject *parent = 0); + ~Quick3DSpriteSheet(); + + QQmlListProperty sprites(); + inline QSpriteSheet *parentSpriteSheet() const { return qobject_cast(parent()); } + +private: + static void appendSprite(QQmlListProperty *list, Qt3DExtras::QSpriteSheetItem *state); + static Qt3DExtras::QSpriteSheetItem *spriteAt(QQmlListProperty *list, int index); + static int spriteCount(QQmlListProperty *list); + static void clearSprites(QQmlListProperty *list); +}; + +} // namespace Quick +} // namespace Extras +} // namespace Qt3DExtras + +QT_END_NAMESPACE + +#endif // QT3DEXTRAS_EXTRAS_QUICK_QUICK3DSPRITESHEET_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickExtras/Qt3DQuickExtras b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickExtras/Qt3DQuickExtras new file mode 100644 index 0000000..49026ab --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickExtras/Qt3DQuickExtras @@ -0,0 +1,6 @@ +#ifndef QT_QT3DQUICKEXTRAS_MODULE_H +#define QT_QT3DQUICKEXTRAS_MODULE_H +#include +#include "qt3dquickwindow.h" +#include "qt3dquickextrasversion.h" +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickExtras/Qt3DQuickExtrasDepends b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickExtras/Qt3DQuickExtrasDepends new file mode 100644 index 0000000..6bbce9e --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickExtras/Qt3DQuickExtrasDepends @@ -0,0 +1,12 @@ +/* This file was generated by qmake with the info from /src/quick3d/quick3dextras/quick3dextras.pro. */ +#ifdef __cplusplus /* create empty PCH in C mode */ +#include +#include +#include +#include +#include +#include +#include +#include +#include +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickExtras/Qt3DQuickExtrasVersion b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickExtras/Qt3DQuickExtrasVersion new file mode 100644 index 0000000..668f6ba --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickExtras/Qt3DQuickExtrasVersion @@ -0,0 +1 @@ +#include "qt3dquickextrasversion.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickExtras/Qt3DQuickWindow b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickExtras/Qt3DQuickWindow new file mode 100644 index 0000000..2f07f96 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickExtras/Qt3DQuickWindow @@ -0,0 +1 @@ +#include "qt3dquickwindow.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickExtras/qt3dquickextras_global.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickExtras/qt3dquickextras_global.h new file mode 100644 index 0000000..d9277ba --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickExtras/qt3dquickextras_global.h @@ -0,0 +1,59 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DQUICKEXTRAS_GLOBAL_H +#define QT3DQUICKEXTRAS_GLOBAL_H + +#include + +QT_BEGIN_NAMESPACE + +#if defined(QT_SHARED) || !defined(QT_STATIC) +# if defined(QT_BUILD_3DQUICKEXTRAS_LIB) +# define QT3DQUICKEXTRASSHARED_EXPORT Q_DECL_EXPORT +# else +# define QT3DQUICKEXTRASSHARED_EXPORT Q_DECL_IMPORT +# endif +#else +# define QT3DQUICKEXTRASSHARED_EXPORT +#endif + +QT_END_NAMESPACE + +#endif // QT3DQUICKEXTRAS_GLOBAL_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickExtras/qt3dquickextrasversion.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickExtras/qt3dquickextrasversion.h new file mode 100644 index 0000000..999626a --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickExtras/qt3dquickextrasversion.h @@ -0,0 +1,9 @@ +/* This file was generated by syncqt. */ +#ifndef QT_QT3DQUICKEXTRAS_VERSION_H +#define QT_QT3DQUICKEXTRAS_VERSION_H + +#define QT3DQUICKEXTRAS_VERSION_STR "5.12.5" + +#define QT3DQUICKEXTRAS_VERSION 0x050C05 + +#endif // QT_QT3DQUICKEXTRAS_VERSION_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickExtras/qt3dquickwindow.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickExtras/qt3dquickwindow.h new file mode 100644 index 0000000..30f9019 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickExtras/qt3dquickwindow.h @@ -0,0 +1,134 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:BSD$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** BSD License Usage +** Alternatively, you may use this file under the terms of the BSD license +** as follows: +** +** "Redistribution and use in source and binary forms, with or without +** modification, are permitted provided that the following conditions are +** met: +** * Redistributions of source code must retain the above copyright +** notice, this list of conditions and the following disclaimer. +** * Redistributions in binary form must reproduce the above copyright +** notice, this list of conditions and the following disclaimer in +** the documentation and/or other materials provided with the +** distribution. +** * Neither the name of The Qt Company Ltd nor the names of its +** contributors may be used to endorse or promote products derived +** from this software without specific prior written permission. +** +** +** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DEXTRAS_QUICK_QT3DQUICKWINDOW_H +#define QT3DEXTRAS_QUICK_QT3DQUICKWINDOW_H + +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +class QQmlIncubationController; + +namespace Qt3DCore { +class QAbstractAspect; +namespace Quick { +class QQmlAspectEngine; +} +} + +namespace Qt3DRender { +class QRenderAspect; +class QCamera; +} + +namespace Qt3DInput { +class QInputAspect; +} + +namespace Qt3DLogic { +class QLogicAspect; +} + +namespace Qt3DExtras { + +namespace Quick { + +class Qt3DQuickWindowPrivate; + +class QT3DQUICKEXTRASSHARED_EXPORT Qt3DQuickWindow : public QWindow +{ + Q_OBJECT + Q_PROPERTY(CameraAspectRatioMode cameraAspectRatioMode READ cameraAspectRatioMode WRITE setCameraAspectRatioMode NOTIFY cameraAspectRatioModeChanged) + +public: + explicit Qt3DQuickWindow(QWindow *parent = nullptr); + ~Qt3DQuickWindow(); + + void registerAspect(Qt3DCore::QAbstractAspect *aspect); + void registerAspect(const QString &name); + + void setSource(const QUrl &source); + Qt3DCore::Quick::QQmlAspectEngine *engine() const; + + enum CameraAspectRatioMode { + AutomaticAspectRatio, + UserAspectRatio + }; + Q_ENUM(CameraAspectRatioMode); // LCOV_EXCL_LINE + + void setCameraAspectRatioMode(CameraAspectRatioMode mode); + CameraAspectRatioMode cameraAspectRatioMode() const; + +Q_SIGNALS: + void cameraAspectRatioModeChanged(CameraAspectRatioMode mode); + +protected: + void showEvent(QShowEvent *e) override; + +private: + void onSceneCreated(QObject *rootObject); + void setWindowSurface(QObject *rootObject); + void setCameraAspectModeHelper(); + void updateCameraAspectRatio(); + + Q_DECLARE_PRIVATE(Qt3DQuickWindow) +}; + +} // Quick + +} // Qt3DExtras + +QT_END_NAMESPACE + +#endif // QT3DEXTRAS_QUICK_QT3DQUICKWINDOW_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickInput/5.12.5/Qt3DQuickInput/private/qt3dquickinput_global_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickInput/5.12.5/Qt3DQuickInput/private/qt3dquickinput_global_p.h new file mode 100644 index 0000000..a5d9adc --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickInput/5.12.5/Qt3DQuickInput/private/qt3dquickinput_global_p.h @@ -0,0 +1,88 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DQUICKINPUT_GLOBAL_P_H +#define QT3DQUICKINPUT_GLOBAL_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +#define QT3DQUICKINPUTSHARED_PRIVATE_EXPORT QT3DQUICKINPUTSHARED_EXPORT + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { + +namespace Quick { + +QT3DQUICKINPUTSHARED_PRIVATE_EXPORT void Quick3DInput_initialize(); +QT3DQUICKINPUTSHARED_PRIVATE_EXPORT void Quick3DInput_registerType(const char *className, const char *quickName, int major, int minor); + +template void registerExtendedType(const char *className, const char *quickName, + const char *uri, int major, int minor, const char *name) +{ + qmlRegisterExtendedType(uri, major, minor, name); + Quick3DInput_registerType(className, quickName, major, minor); +} + +template void registerType(const char *className, const char *quickName, + const char *uri, int major, int minor, const char *name) +{ + qmlRegisterType(uri, major, minor, name); + Quick3DInput_registerType(className, quickName, major, minor); +} + +} // Quick + +} // Qt3D + +QT_END_NAMESPACE + +#endif // QT3DQUICKINPUT_GLOBAL_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickInput/5.12.5/Qt3DQuickInput/private/qt3dquickinputnodefactory_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickInput/5.12.5/Qt3DQuickInput/private/qt3dquickinputnodefactory_p.h new file mode 100644 index 0000000..c50b4e4 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickInput/5.12.5/Qt3DQuickInput/private/qt3dquickinputnodefactory_p.h @@ -0,0 +1,90 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QUICKINPUTNODEFACTORY_H +#define QUICKINPUTNODEFACTORY_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +class QQmlType; + +namespace Qt3DInput { + +class QuickInputNodeFactory : public Qt3DCore::QAbstractNodeFactory +{ +public: + Qt3DCore::QNode *createNode(const char *type) override; + + void registerType(const char *className, const char *quickName, int major, int minor); + + static QuickInputNodeFactory *instance(); + +private: + struct Type { + Type() : t(nullptr), resolved(false) { } + Type(const char *quickName, int major, int minor) + : quickName(quickName), version(major, minor), t(nullptr), resolved(false) { } + QByteArray quickName; + QPair version; + QQmlType t; + bool resolved; + }; + QHash m_types; +}; + +} // namespace Qt3DInput + +QT_END_NAMESPACE + +#endif // QUICKINPUTNODEFACTORY_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickInput/5.12.5/Qt3DQuickInput/private/quick3daction_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickInput/5.12.5/Qt3DQuickInput/private/quick3daction_p.h new file mode 100644 index 0000000..86e52eb --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickInput/5.12.5/Qt3DQuickInput/private/quick3daction_p.h @@ -0,0 +1,91 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_INPUT_QUICK_QUICK3DACTION_H +#define QT3DINPUT_INPUT_QUICK_QUICK3DACTION_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { +namespace Input { +namespace Quick { + +class QT3DQUICKINPUTSHARED_PRIVATE_EXPORT Quick3DAction : public QObject +{ + Q_OBJECT + Q_PROPERTY(QQmlListProperty inputs READ qmlActionInputs CONSTANT) + Q_CLASSINFO("DefaultProperty", "inputs") +public: + explicit Quick3DAction(QObject *parent = nullptr); + + inline QAction *parentAction() const { return qobject_cast(parent()); } + QQmlListProperty qmlActionInputs(); + +private: + static void appendActionInput(QQmlListProperty *list, QAbstractActionInput *input); + static QAbstractActionInput *actionInputAt(QQmlListProperty *list, int index); + static int actionInputCount(QQmlListProperty *list); + static void clearActionInputs(QQmlListProperty *list); +}; + +} // namespace Quick +} // namespace Input +} // namespace Qt3DInput + +QT_END_NAMESPACE + + +#endif // QT3DINPUT_INPUT_QUICK_QUICK3DACTION_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickInput/5.12.5/Qt3DQuickInput/private/quick3daxis_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickInput/5.12.5/Qt3DQuickInput/private/quick3daxis_p.h new file mode 100644 index 0000000..58ba32a --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickInput/5.12.5/Qt3DQuickInput/private/quick3daxis_p.h @@ -0,0 +1,91 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_INPUT_QUICK_QUICK3DAXIS_H +#define QT3DINPUT_INPUT_QUICK_QUICK3DAXIS_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { +namespace Input { +namespace Quick { + +class QT3DQUICKINPUTSHARED_PRIVATE_EXPORT Quick3DAxis : public QObject +{ + Q_OBJECT + Q_PROPERTY(QQmlListProperty inputs READ qmlAxisInputs CONSTANT) + Q_CLASSINFO("DefaultProperty", "inputs") +public: + explicit Quick3DAxis(QObject *parent = nullptr); + + inline QAxis *parentAxis() const { return qobject_cast(parent()); } + QQmlListProperty qmlAxisInputs(); + +private: + static void appendAxisInput(QQmlListProperty *list, QAbstractAxisInput *input); + static QAbstractAxisInput *axisInputAt(QQmlListProperty *list, int index); + static int axesInputCount(QQmlListProperty *list); + static void clearAxisInputs(QQmlListProperty *list); +}; + +} // namespace Quick +} // namespace Input +} // namespace Qt3DInput + +QT_END_NAMESPACE + + +#endif // QT3DINPUT_INPUT_QUICK_QUICK3DAXIS_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickInput/5.12.5/Qt3DQuickInput/private/quick3dinputchord_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickInput/5.12.5/Qt3DQuickInput/private/quick3dinputchord_p.h new file mode 100644 index 0000000..3380fef --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickInput/5.12.5/Qt3DQuickInput/private/quick3dinputchord_p.h @@ -0,0 +1,89 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_INPUT_QUICK_QUICK3DINPUTCHORD_H +#define QT3DINPUT_INPUT_QUICK_QUICK3DINPUTCHORD_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { +namespace Input { +namespace Quick { + +class QT3DQUICKINPUTSHARED_PRIVATE_EXPORT Quick3DInputChord : public QObject +{ + Q_OBJECT + Q_PROPERTY(QQmlListProperty chords READ qmlActionInputs CONSTANT) +public: + explicit Quick3DInputChord(QObject *parent = nullptr); + + inline QInputChord *parentChord() const { return qobject_cast(parent()); } + QQmlListProperty qmlActionInputs(); + +private: + static void appendActionInput(QQmlListProperty *list, QAbstractActionInput *input); + static QAbstractActionInput *actionInputAt(QQmlListProperty *list, int index); + static int actionInputCount(QQmlListProperty *list); + static void clearActionInputs(QQmlListProperty *list); +}; + +} // namespace Quick +} // namespace Input +} // namespace Qt3DInput + +QT_END_NAMESPACE + + +#endif // QT3DINPUT_INPUT_QUICK_QUICK3DINPUTCHORD_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickInput/5.12.5/Qt3DQuickInput/private/quick3dinputsequence_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickInput/5.12.5/Qt3DQuickInput/private/quick3dinputsequence_p.h new file mode 100644 index 0000000..aea671f --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickInput/5.12.5/Qt3DQuickInput/private/quick3dinputsequence_p.h @@ -0,0 +1,89 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_INPUT_QUICK_QUICK3DINPUTSEQUENCE_H +#define QT3DINPUT_INPUT_QUICK_QUICK3DINPUTSEQUENCE_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { +namespace Input { +namespace Quick { + +class QT3DQUICKINPUTSHARED_PRIVATE_EXPORT Quick3DInputSequence : public QObject +{ + Q_OBJECT + Q_PROPERTY(QQmlListProperty sequences READ qmlActionInputs CONSTANT) +public: + explicit Quick3DInputSequence(QObject *parent = nullptr); + + inline QInputSequence *parentSequence() const { return qobject_cast(parent()); } + QQmlListProperty qmlActionInputs(); + +private: + static void appendActionInput(QQmlListProperty *list, QAbstractActionInput *input); + static QAbstractActionInput *actionInputAt(QQmlListProperty *list, int index); + static int actionInputCount(QQmlListProperty *list); + static void clearActionInputs(QQmlListProperty *list); +}; + +} // namespace Quick +} // namespace Input +} // namespace Qt3DInput + +QT_END_NAMESPACE + + +#endif // QT3DINPUT_INPUT_QUICK_QUICK3DINPUTSEQUENCE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickInput/5.12.5/Qt3DQuickInput/private/quick3dlogicaldevice_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickInput/5.12.5/Qt3DQuickInput/private/quick3dlogicaldevice_p.h new file mode 100644 index 0000000..050d81a --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickInput/5.12.5/Qt3DQuickInput/private/quick3dlogicaldevice_p.h @@ -0,0 +1,97 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_INPUT_QUICK_QUICK3DLOGICALDEVICE_H +#define QT3DINPUT_INPUT_QUICK_QUICK3DLOGICALDEVICE_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { +namespace Input { +namespace Quick { + +class QT3DQUICKINPUTSHARED_PRIVATE_EXPORT Quick3DLogicalDevice : public QObject +{ + Q_OBJECT + Q_PROPERTY(QQmlListProperty axes READ qmlAxes CONSTANT) + Q_PROPERTY(QQmlListProperty actions READ qmlActions CONSTANT) +public: + explicit Quick3DLogicalDevice(QObject *parent = nullptr); + + inline QLogicalDevice *parentLogicalDevice() const { return qobject_cast(parent()); } + QQmlListProperty qmlAxes(); + QQmlListProperty qmlActions(); + +private: + static void appendAxis(QQmlListProperty *list, QAxis *axes); + static QAxis *axisAt(QQmlListProperty *list, int index); + static int axesCount(QQmlListProperty *list); + static void clearAxes(QQmlListProperty *list); + + static void appendAction(QQmlListProperty *list, QAction *action); + static QAction *actionAt(QQmlListProperty *list, int index); + static int actionCount(QQmlListProperty *list); + static void clearActions(QQmlListProperty *list); +}; + +} // namespace Quick +} // namespace Input +} // namespace Qt3DInput + +QT_END_NAMESPACE + +#endif // QT3DINPUT_INPUT_QUICK_QUICK3DLOGICALDEVICE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickInput/5.12.5/Qt3DQuickInput/private/quick3dphysicaldevice_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickInput/5.12.5/Qt3DQuickInput/private/quick3dphysicaldevice_p.h new file mode 100644 index 0000000..b4c96ac --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickInput/5.12.5/Qt3DQuickInput/private/quick3dphysicaldevice_p.h @@ -0,0 +1,90 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DINPUT_INPUT_QUICK_QUICK3DPHYSICALDEVICE_H +#define QT3DINPUT_INPUT_QUICK_QUICK3DPHYSICALDEVICE_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DInput { +namespace Input { +namespace Quick { + +class QT3DQUICKINPUTSHARED_PRIVATE_EXPORT Quick3DPhysicalDevice : public QObject +{ + Q_OBJECT + Q_PROPERTY(QQmlListProperty axisSettings READ axisSettings CONSTANT) +public: + explicit Quick3DPhysicalDevice(QObject *parent = 0); + + inline QAbstractPhysicalDevice *parentPhysicalDevice() const { return qobject_cast(parent()); } + QQmlListProperty axisSettings(); + +private: + static void appendAxisSetting(QQmlListProperty *list, QAxisSetting *axes); + static QAxisSetting *axisSettingAt(QQmlListProperty *list, int index); + static int axisSettingsCount(QQmlListProperty *list); + static void clearAxisSettings(QQmlListProperty *list); +}; + +} // namespace Quick +} // namespace Input +} // namespace Qt3DInput + +QT_END_NAMESPACE + +#endif // QT3DINPUT_INPUT_QUICK_QUICK3DPHYSICALDEVICE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickInput/Qt3DQuickInput b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickInput/Qt3DQuickInput new file mode 100644 index 0000000..8d792cd --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickInput/Qt3DQuickInput @@ -0,0 +1,5 @@ +#ifndef QT_QT3DQUICKINPUT_MODULE_H +#define QT_QT3DQUICKINPUT_MODULE_H +#include +#include "qt3dquickinputversion.h" +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickInput/Qt3DQuickInputDepends b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickInput/Qt3DQuickInputDepends new file mode 100644 index 0000000..b1fc2b8 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickInput/Qt3DQuickInputDepends @@ -0,0 +1,9 @@ +/* This file was generated by qmake with the info from /src/quick3d/quick3dinput/quick3dinput.pro. */ +#ifdef __cplusplus /* create empty PCH in C mode */ +#include +#include +#include +#include +#include +#include +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickInput/Qt3DQuickInputVersion b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickInput/Qt3DQuickInputVersion new file mode 100644 index 0000000..de5adc4 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickInput/Qt3DQuickInputVersion @@ -0,0 +1 @@ +#include "qt3dquickinputversion.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickInput/qt3dquickinput_global.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickInput/qt3dquickinput_global.h new file mode 100644 index 0000000..d34667d --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickInput/qt3dquickinput_global.h @@ -0,0 +1,59 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DQUICKINPUT_GLOBAL_H +#define QT3DQUICKINPUT_GLOBAL_H + +#include + +QT_BEGIN_NAMESPACE + +#if defined(QT_SHARED) || !defined(QT_STATIC) +# if defined(QT_BUILD_3DQUICKINPUT_LIB) +# define QT3DQUICKINPUTSHARED_EXPORT Q_DECL_EXPORT +# else +# define QT3DQUICKINPUTSHARED_EXPORT Q_DECL_IMPORT +# endif +#else +# define QT3DQUICKINPUTSHARED_EXPORT +#endif + +QT_END_NAMESPACE + +#endif // QT3DQUICKINPUT_GLOBAL_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickInput/qt3dquickinputversion.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickInput/qt3dquickinputversion.h new file mode 100644 index 0000000..3aa4cf5 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickInput/qt3dquickinputversion.h @@ -0,0 +1,9 @@ +/* This file was generated by syncqt. */ +#ifndef QT_QT3DQUICKINPUT_VERSION_H +#define QT_QT3DQUICKINPUT_VERSION_H + +#define QT3DQUICKINPUT_VERSION_STR "5.12.5" + +#define QT3DQUICKINPUT_VERSION 0x050C05 + +#endif // QT_QT3DQUICKINPUT_VERSION_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/5.12.5/Qt3DQuickRender/private/qt3dquickrender_global_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/5.12.5/Qt3DQuickRender/private/qt3dquickrender_global_p.h new file mode 100644 index 0000000..77378f4 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/5.12.5/Qt3DQuickRender/private/qt3dquickrender_global_p.h @@ -0,0 +1,89 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Copyright (C) 2016 The Qt Company Ltd and/or its subsidiary(-ies). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DQUICKRENDER_GLOBAL_P_H +#define QT3DQUICKRENDER_GLOBAL_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +#define QT3DQUICKRENDERSHARED_PRIVATE_EXPORT QT3DQUICKRENDERSHARED_EXPORT + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +namespace Quick { + +QT3DQUICKRENDERSHARED_PRIVATE_EXPORT void Quick3DRender_initialize(); +QT3DQUICKRENDERSHARED_PRIVATE_EXPORT void Quick3DRender_registerType(const char *className, const char *quickName, int major, int minor); + +template void registerExtendedType(const char *className, const char *quickName, + const char *uri, int major, int minor, const char *name) +{ + qmlRegisterExtendedType(uri, major, minor, name); + Quick3DRender_registerType(className, quickName, major, minor); +} + +template void registerType(const char *className, const char *quickName, + const char *uri, int major, int minor, const char *name) +{ + qmlRegisterType(uri, major, minor, name); + Quick3DRender_registerType(className, quickName, major, minor); +} + +} // Quick + +} // Qt3D + +QT_END_NAMESPACE + +#endif // QT3DQUICKRENDER_GLOBAL_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/5.12.5/Qt3DQuickRender/private/qt3dquickrendernodefactory_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/5.12.5/Qt3DQuickRender/private/qt3dquickrendernodefactory_p.h new file mode 100644 index 0000000..121c642 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/5.12.5/Qt3DQuickRender/private/qt3dquickrendernodefactory_p.h @@ -0,0 +1,90 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd and/or its subsidiary(-ies). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QUICKRENDERERNODEFACTORY_H +#define QUICKRENDERERNODEFACTORY_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +class QQmlType; + +namespace Qt3DRender { + +class QuickRenderNodeFactory : public Qt3DCore::QAbstractNodeFactory +{ +public: + Qt3DCore::QNode *createNode(const char *type) override; + + void registerType(const char *className, const char *quickName, int major, int minor); + + static QuickRenderNodeFactory *instance(); + +private: + struct Type { + Type() : t(nullptr), resolved(false) { } + Type(const char *quickName, int major, int minor) + : quickName(quickName), version(major, minor), t(nullptr), resolved(false) { } + QByteArray quickName; + QPair version; + QQmlType t; + bool resolved; + }; + QHash m_types; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QUICKRENDERERNODEFACTORY_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/5.12.5/Qt3DQuickRender/private/quick3dbuffer_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/5.12.5/Qt3DQuickRender/private/quick3dbuffer_p.h new file mode 100644 index 0000000..712e110 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/5.12.5/Qt3DQuickRender/private/quick3dbuffer_p.h @@ -0,0 +1,106 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_QUICK_QUICK3DBUFFER_P_H +#define QT3DRENDER_RENDER_QUICK_QUICK3DBUFFER_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include + +QT_BEGIN_NAMESPACE + +class QQmlEngine; +class QJSValue; + +namespace QV4 { +struct ExecutionEngine; +} + +namespace Qt3DRender { + +namespace Render { + +namespace Quick { + +class QT3DQUICKRENDERSHARED_PRIVATE_EXPORT Quick3DBuffer : public Qt3DRender::QBuffer +{ + Q_OBJECT + Q_PROPERTY(QVariant data READ bufferData WRITE setBufferData NOTIFY bufferDataChanged) +public: + explicit Quick3DBuffer(Qt3DCore::QNode *parent = nullptr); + + QVariant bufferData() const; + void setBufferData(const QVariant &bufferData); + + Q_INVOKABLE QVariant readBinaryFile(const QUrl &fileUrl); + +public Q_SLOTS: + void updateData(int offset, const QVariant &bytes); + +Q_SIGNALS: + void bufferDataChanged(); + +private: + QQmlEngine *m_engine; + QV4::ExecutionEngine *m_v4engine; + void initEngines(); + QByteArray convertToRawData(const QJSValue &jsValue); +}; + +} // Quick + +} // Render + +} // Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_QUICK_QUICK3DBUFFER_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/5.12.5/Qt3DQuickRender/private/quick3deffect_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/5.12.5/Qt3DQuickRender/private/quick3deffect_p.h new file mode 100644 index 0000000..3b77856 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/5.12.5/Qt3DQuickRender/private/quick3deffect_p.h @@ -0,0 +1,98 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_QUICK_QUICK3DEFFECT_P_H +#define QT3DRENDER_RENDER_QUICK_QUICK3DEFFECT_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { +namespace Render { +namespace Quick { + +class QT3DQUICKRENDERSHARED_PRIVATE_EXPORT Quick3DEffect : public QObject +{ + Q_OBJECT + Q_PROPERTY(QQmlListProperty techniques READ techniqueList) + Q_PROPERTY(QQmlListProperty parameters READ parameterList) + +public: + explicit Quick3DEffect(QObject *parent = 0); + + inline QEffect *parentEffect() const { return qobject_cast(parent()); } + + QQmlListProperty techniqueList(); + QQmlListProperty parameterList(); + +private: + static void appendTechnique(QQmlListProperty *list, QTechnique *bar); + static QTechnique *techniqueAt(QQmlListProperty *list, int index); + static int techniqueCount(QQmlListProperty *list); + static void clearTechniqueList(QQmlListProperty *list); + + static void appendParameter(QQmlListProperty *list, QParameter *param); + static QParameter *parameterAt(QQmlListProperty *list, int index); + static int parametersCount(QQmlListProperty *list); + static void clearParameterList(QQmlListProperty *list); +}; + +} // namespace Quick +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_QUICK_QUICK3DEFFECT_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/5.12.5/Qt3DQuickRender/private/quick3dgeometry_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/5.12.5/Qt3DQuickRender/private/quick3dgeometry_p.h new file mode 100644 index 0000000..6bf7faf --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/5.12.5/Qt3DQuickRender/private/quick3dgeometry_p.h @@ -0,0 +1,92 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3D_QUICK3DGEOMETRY_P_H +#define QT3D_QUICK3DGEOMETRY_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { +namespace Render { +namespace Quick { + +class QT3DQUICKRENDERSHARED_PRIVATE_EXPORT Quick3DGeometry : public QObject +{ + Q_OBJECT + Q_PROPERTY(QQmlListProperty attributes READ attributeList) + Q_CLASSINFO("DefaultProperty", "attributes") + +public: + explicit Quick3DGeometry(QObject *parent = 0); + inline QGeometry *parentGeometry() const { return qobject_cast(parent()); } + + QQmlListProperty attributeList(); + +private: + static void appendAttribute(QQmlListProperty *list, Qt3DRender::QAttribute *provider); + static Qt3DRender::QAttribute *attributeAt(QQmlListProperty *list, int index); + static int attributesCount(QQmlListProperty *list); + static void clearAttributes(QQmlListProperty *list); + + QVector m_managedAttributes; +}; + +} // namespace Quick +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3D_QUICK3DGEOMETRY_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/5.12.5/Qt3DQuickRender/private/quick3dlayerfilter_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/5.12.5/Qt3DQuickRender/private/quick3dlayerfilter_p.h new file mode 100644 index 0000000..f59be27 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/5.12.5/Qt3DQuickRender/private/quick3dlayerfilter_p.h @@ -0,0 +1,91 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_QUICK_QUICK3DLAYERFILTER_P_H +#define QT3DRENDER_RENDER_QUICK_QUICK3DLAYERFILTER_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { +namespace Render { +namespace Quick { + +class QT3DQUICKRENDERSHARED_PRIVATE_EXPORT Quick3DLayerFilter : public QObject +{ + Q_OBJECT + Q_PROPERTY(QQmlListProperty layers READ qmlLayers) + +public: + explicit Quick3DLayerFilter(QObject *parent = 0); + + inline QLayerFilter *parentFilter() const { return qobject_cast(parent()); } + + QQmlListProperty qmlLayers(); + +private: + static void appendLayer(QQmlListProperty *list, QLayer *bar); + static QLayer *layerAt(QQmlListProperty *list, int index); + static int layerCount(QQmlListProperty *list); + static void clearLayers(QQmlListProperty *list); +}; + +} // namespace Quick +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_QUICK_QUICK3DLAYERFILTER_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/5.12.5/Qt3DQuickRender/private/quick3dmaterial_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/5.12.5/Qt3DQuickRender/private/quick3dmaterial_p.h new file mode 100644 index 0000000..646e3b1 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/5.12.5/Qt3DQuickRender/private/quick3dmaterial_p.h @@ -0,0 +1,97 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_QUICK_QUICK3DMATERIAL_P_H +#define QT3DRENDER_RENDER_QUICK_QUICK3DMATERIAL_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { +namespace Render { +namespace Quick { + +// FIXME - write a custom QML parser and stop mis-using Tag +// Tags could be replaced by Parameters directly + +class QT3DQUICKRENDERSHARED_PRIVATE_EXPORT Quick3DMaterial : public QObject +{ + Q_OBJECT + Q_PROPERTY(QQmlListProperty parameters READ qmlParameters) + +public: + explicit Quick3DMaterial(QObject *parent = 0); + + // TO DO : replace by QAbstractMaterial later on + inline QMaterial *parentMaterial() const { return qobject_cast(parent()); } + + QQmlListProperty qmlParameters(); + + +private: + // FIXME - remove when we have a custom QML parser + static void appendParameter(QQmlListProperty *list, QParameter *bar); + static QParameter *parameterAt(QQmlListProperty *list, int index); + static int parameterCount(QQmlListProperty *list); + static void clearParameters(QQmlListProperty *list); +}; + +} // namespace Quick +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_QUICK_QUICK3DMATERIAL_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/5.12.5/Qt3DQuickRender/private/quick3dmemorybarrier_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/5.12.5/Qt3DQuickRender/private/quick3dmemorybarrier_p.h new file mode 100644 index 0000000..ab8f72a --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/5.12.5/Qt3DQuickRender/private/quick3dmemorybarrier_p.h @@ -0,0 +1,85 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_QUICK_QUICK3DMEMORYBARRIER_P_H +#define QT3DRENDER_RENDER_QUICK_QUICK3DMEMORYBARRIER_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { +namespace Render { +namespace Quick { + +// Qt6: Handle QFlags as Q_PROPERTY in QML + +class QT3DQUICKRENDERSHARED_PRIVATE_EXPORT Quick3DMemoryBarrier : public QObject +{ + Q_OBJECT + Q_PROPERTY(int waitFor READ waitFor WRITE setWaitFor) +public: + explicit Quick3DMemoryBarrier(QObject *parent = nullptr); + ~Quick3DMemoryBarrier(); + + inline QMemoryBarrier *parentBarrier() const { return qobject_cast(parent()); } + + void setWaitFor(int waitOperations); + int waitFor() const; +}; + +} // namespace Quick +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_QUICK_QUICK3DMEMORYBARRIER_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/5.12.5/Qt3DQuickRender/private/quick3dparameter_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/5.12.5/Qt3DQuickRender/private/quick3dparameter_p.h new file mode 100644 index 0000000..948df22 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/5.12.5/Qt3DQuickRender/private/quick3dparameter_p.h @@ -0,0 +1,85 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_QUICK_QUICK3DPARAMETER_P_H +#define QT3DRENDER_RENDER_QUICK_QUICK3DPARAMETER_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { +namespace Render { +namespace Quick { + +class Quick3DParameterPrivate; + +class QT3DQUICKRENDERSHARED_PRIVATE_EXPORT Quick3DParameter : public QParameter +{ + Q_OBJECT +public: + explicit Quick3DParameter(QNode *parent = 0); + +private: + Q_DECLARE_PRIVATE(Quick3DParameter) + +protected: + Quick3DParameter(Quick3DParameterPrivate &dd, QNode *parent = 0); +}; + +} // namespace Quick +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_QUICK_QUICK3DPARAMETER_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/5.12.5/Qt3DQuickRender/private/quick3dparameter_p_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/5.12.5/Qt3DQuickRender/private/quick3dparameter_p_p.h new file mode 100644 index 0000000..0590338 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/5.12.5/Qt3DQuickRender/private/quick3dparameter_p_p.h @@ -0,0 +1,82 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_QUICK_QUICK3DPARAMETER_P_P_H +#define QT3DRENDER_RENDER_QUICK_QUICK3DPARAMETER_P_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { +namespace Render { +namespace Quick { + +class Quick3DParameter; + +class Quick3DParameterPrivate : public QParameterPrivate +{ +public: + Quick3DParameterPrivate(); + + Q_DECLARE_PUBLIC(Quick3DParameter) + + void setValue(const QVariant &value) override; +}; + +} // namespace Quick +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_QUICK_QUICK3DPARAMETER_P_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/5.12.5/Qt3DQuickRender/private/quick3draycaster_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/5.12.5/Qt3DQuickRender/private/quick3draycaster_p.h new file mode 100644 index 0000000..9be11f5 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/5.12.5/Qt3DQuickRender/private/quick3draycaster_p.h @@ -0,0 +1,94 @@ +/**************************************************************************** +** +** Copyright (C) 2018 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_QUICK_QUICKRAYCASTER_P_H +#define QT3DRENDER_RENDER_QUICK_QUICKRAYCASTER_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { +namespace Render { +namespace Quick { + +class Quick3DRayCasterPrivate; + +class QT3DQUICKRENDERSHARED_PRIVATE_EXPORT Quick3DRayCaster : public QRayCaster +{ + Q_OBJECT + Q_PROPERTY(QJSValue hits READ hits NOTIFY hitsChanged) + Q_PROPERTY(QQmlListProperty layers READ qmlLayers) +public: + explicit Quick3DRayCaster(QObject *parent = 0); + + QJSValue hits() const; + QQmlListProperty qmlLayers(); + +Q_SIGNALS: + void hitsChanged(const QJSValue &hits); + +private: + Q_DECLARE_PRIVATE(Quick3DRayCaster) +}; + +} // namespace Quick +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_QUICK_QUICKRAYCASTER_P_H + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/5.12.5/Qt3DQuickRender/private/quick3draycaster_p_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/5.12.5/Qt3DQuickRender/private/quick3draycaster_p_p.h new file mode 100644 index 0000000..0098634 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/5.12.5/Qt3DQuickRender/private/quick3draycaster_p_p.h @@ -0,0 +1,93 @@ +/**************************************************************************** +** +** Copyright (C) 2018 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_QUICK_QUICKRAYCASTER_P_P_H +#define QT3DRENDER_RENDER_QUICK_QUICKRAYCASTER_P_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { +namespace Render { +namespace Quick { + +class QT3DQUICKRENDERSHARED_PRIVATE_EXPORT Quick3DRayCasterPrivate : public QAbstractRayCasterPrivate +{ +public: + explicit Quick3DRayCasterPrivate() : QAbstractRayCasterPrivate() { } + + QJSValue m_jsHits; + QQmlEngine *m_engine = nullptr; + + void dispatchHits(const QAbstractRayCaster::Hits &hits) override; + static QJSValue convertHits(const QAbstractRayCaster::Hits &hits, QQmlEngine *engine); + static void appendLayer(QQmlListProperty *list, QLayer *bar); + static QLayer *layerAt(QQmlListProperty *list, int index); + static int layerCount(QQmlListProperty *list); + static void clearLayers(QQmlListProperty *list); + + Q_DECLARE_PUBLIC(Quick3DRayCaster) +}; + +} // namespace Quick +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_QUICK_QUICKRAYCASTER_P_P_H + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/5.12.5/Qt3DQuickRender/private/quick3drenderpass_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/5.12.5/Qt3DQuickRender/private/quick3drenderpass_p.h new file mode 100644 index 0000000..c9d2fce --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/5.12.5/Qt3DQuickRender/private/quick3drenderpass_p.h @@ -0,0 +1,104 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Copyright (C) 2016 The Qt Company Ltd and/or its subsidiary(-ies). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_QUICK_QUICK3DRENDERPASS_P_H +#define QT3DRENDER_RENDER_QUICK_QUICK3DRENDERPASS_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { +namespace Render { +namespace Quick { + +class QT3DQUICKRENDERSHARED_PRIVATE_EXPORT Quick3DRenderPass : public QObject +{ + Q_OBJECT + Q_PROPERTY(QQmlListProperty filterKeys READ filterKeyList) + Q_PROPERTY(QQmlListProperty renderStates READ renderStateList) + Q_PROPERTY(QQmlListProperty parameters READ parameterList) +public: + explicit Quick3DRenderPass(QObject *parent = 0); + + QQmlListProperty filterKeyList(); + QQmlListProperty renderStateList(); + QQmlListProperty parameterList(); + + inline QRenderPass *parentRenderPass() const { return qobject_cast(parent()); } + +private: + static void appendFilterKey(QQmlListProperty *list, QFilterKey *filterKey); + static QFilterKey *filterKeyAt(QQmlListProperty *list, int index); + static int filterKeysCount(QQmlListProperty *list); + static void clearFilterKey(QQmlListProperty *list); + + static void appendRenderState(QQmlListProperty *list, QRenderState *state); + static QRenderState *renderStateAt(QQmlListProperty *list, int index); + static int renderStateCount(QQmlListProperty *list); + static void clearRenderStates(QQmlListProperty *list); + + static void appendParameter(QQmlListProperty *list, QParameter *param); + static QParameter *parameterAt(QQmlListProperty *list, int index); + static int parametersCount(QQmlListProperty *list); + static void clearParameterList(QQmlListProperty *list); +}; + +} // namespace Quick +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_QUICK_QUICK3DRENDERPASS_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/5.12.5/Qt3DQuickRender/private/quick3drenderpassfilter_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/5.12.5/Qt3DQuickRender/private/quick3drenderpassfilter_p.h new file mode 100644 index 0000000..cab75f4 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/5.12.5/Qt3DQuickRender/private/quick3drenderpassfilter_p.h @@ -0,0 +1,99 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_QUICK_QUICK3DRENDERPASSFILTER_P_H +#define QT3DRENDER_RENDER_QUICK_QUICK3DRENDERPASSFILTER_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { +namespace Render { +namespace Quick { + +class QT3DQUICKRENDERSHARED_PRIVATE_EXPORT Quick3DRenderPassFilter : public QObject +{ + Q_OBJECT + Q_PROPERTY(QQmlListProperty matchAny READ includeList) + Q_PROPERTY(QQmlListProperty parameters READ parameterList) + +public: + explicit Quick3DRenderPassFilter(QObject *parent = 0); + + QQmlListProperty includeList(); + QQmlListProperty parameterList(); + + inline QRenderPassFilter *parentRenderPassFilter() const { return qobject_cast(parent()); } + +private: + static void appendInclude(QQmlListProperty *list, QFilterKey *criterion); + static QFilterKey *includeAt(QQmlListProperty *list, int index); + static int includesCount(QQmlListProperty *list); + static void clearIncludes(QQmlListProperty *list); + + static void appendParameter(QQmlListProperty *list, QParameter *param); + static QParameter *parameterAt(QQmlListProperty *list, int index); + static int parametersCount(QQmlListProperty *list); + static void clearParameterList(QQmlListProperty *list); +}; + +} // namespace Quick +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_QUICK_QUICK3DRENDERPASSFILTER_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/5.12.5/Qt3DQuickRender/private/quick3drendertargetoutput_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/5.12.5/Qt3DQuickRender/private/quick3drendertargetoutput_p.h new file mode 100644 index 0000000..7626a2d --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/5.12.5/Qt3DQuickRender/private/quick3drendertargetoutput_p.h @@ -0,0 +1,89 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_QUICK_QUICK3DRENDERTARGETOUTPUT_P_H +#define QT3DRENDER_RENDER_QUICK_QUICK3DRENDERTARGETOUTPUT_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { +namespace Render { +namespace Quick { + +class QT3DQUICKRENDERSHARED_PRIVATE_EXPORT Quick3DRenderTargetOutput : public QObject +{ + Q_OBJECT + Q_PROPERTY(QQmlListProperty attachments READ qmlAttachments) +public: + explicit Quick3DRenderTargetOutput(QObject *parent = 0); + + inline QRenderTarget *parentRenderTarget() const { return qobject_cast(parent()); } + QQmlListProperty qmlAttachments(); + +private: + static void appendRenderAttachment(QQmlListProperty *list, QRenderTargetOutput *attachment); + static QRenderTargetOutput *renderAttachmentAt(QQmlListProperty *list, int index); + static int renderAttachmentCount(QQmlListProperty *list); + static void clearRenderAttachments(QQmlListProperty *list); +}; + +} // namespace Quick +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_QUICK_QUICK3DRENDERTARGETOUTPUT_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/5.12.5/Qt3DQuickRender/private/quick3drendertargetselector_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/5.12.5/Qt3DQuickRender/private/quick3drendertargetselector_p.h new file mode 100644 index 0000000..610ea1a --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/5.12.5/Qt3DQuickRender/private/quick3drendertargetselector_p.h @@ -0,0 +1,90 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_QUICK_QUICK3DRENDERTARGETSELECTOR_P_H +#define QT3DRENDER_RENDER_QUICK_QUICK3DRENDERTARGETSELECTOR_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { +namespace Render { +namespace Quick { + +class QT3DQUICKRENDERSHARED_PRIVATE_EXPORT Quick3DRenderTargetSelector : public QObject +{ + Q_OBJECT + Q_PROPERTY(QVariantList drawBuffers READ drawBuffers WRITE setDrawBuffers NOTIFY drawBuffersChanged) +public: + explicit Quick3DRenderTargetSelector(QObject *parent = 0); + ~Quick3DRenderTargetSelector(); + + inline QRenderTargetSelector *parentRenderTargetSelector() const { return qobject_cast(parent()); } + + QVariantList drawBuffers() const; + void setDrawBuffers(const QVariantList &drawBuffers); + +Q_SIGNALS: + void drawBuffersChanged(); +}; + +} // namespace Quick +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_QUICK_QUICK3DRENDERTARGETSELECTOR_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/5.12.5/Qt3DQuickRender/private/quick3dscene_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/5.12.5/Qt3DQuickRender/private/quick3dscene_p.h new file mode 100644 index 0000000..a7173a6 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/5.12.5/Qt3DQuickRender/private/quick3dscene_p.h @@ -0,0 +1,80 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_QUICK_QUICK3DSCENE_P_H +#define QT3DRENDER_RENDER_QUICK_QUICK3DSCENE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { +namespace Render { +namespace Quick { + +class QT3DQUICKRENDERSHARED_PRIVATE_EXPORT Quick3DScene : public QObject +{ + Q_OBJECT +public: + explicit Quick3DScene(QObject *parent = 0); + + inline QSceneLoader *parentScene() const { return qobject_cast(parent()); } +}; + +} // namespace Quick +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_QUICK_QUICK3DSCENE_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/5.12.5/Qt3DQuickRender/private/quick3dscreenraycaster_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/5.12.5/Qt3DQuickRender/private/quick3dscreenraycaster_p.h new file mode 100644 index 0000000..b337163 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/5.12.5/Qt3DQuickRender/private/quick3dscreenraycaster_p.h @@ -0,0 +1,94 @@ +/**************************************************************************** +** +** Copyright (C) 2018 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_QUICK_QUICKSCREENRAYCASTER_P_H +#define QT3DRENDER_RENDER_QUICK_QUICKSCREENRAYCASTER_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { +namespace Render { +namespace Quick { + +class Quick3DScreenRayCasterPrivate; + +class QT3DQUICKRENDERSHARED_PRIVATE_EXPORT Quick3DScreenRayCaster : public QScreenRayCaster +{ + Q_OBJECT + Q_PROPERTY(QJSValue hits READ hits NOTIFY hitsChanged) + Q_PROPERTY(QQmlListProperty layers READ qmlLayers) +public: + explicit Quick3DScreenRayCaster(QObject *parent = 0); + + QJSValue hits() const; + QQmlListProperty qmlLayers(); + +Q_SIGNALS: + void hitsChanged(const QJSValue &hits); + +private: + Q_DECLARE_PRIVATE(Quick3DScreenRayCaster) +}; + +} // namespace Quick +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_QUICK_QUICKSCREENRAYCASTER_P_H + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/5.12.5/Qt3DQuickRender/private/quick3dscreenraycaster_p_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/5.12.5/Qt3DQuickRender/private/quick3dscreenraycaster_p_p.h new file mode 100644 index 0000000..5c58e50 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/5.12.5/Qt3DQuickRender/private/quick3dscreenraycaster_p_p.h @@ -0,0 +1,89 @@ +/**************************************************************************** +** +** Copyright (C) 2018 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_QUICK_QUICKSCREENRAYCASTER_P_P_H +#define QT3DRENDER_RENDER_QUICK_QUICKSCREENRAYCASTER_P_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { +namespace Render { +namespace Quick { + +class Quick3DScreenRayCaster; + +class QT3DQUICKRENDERSHARED_PRIVATE_EXPORT Quick3DScreenRayCasterPrivate : public QAbstractRayCasterPrivate +{ +public: + explicit Quick3DScreenRayCasterPrivate() : QAbstractRayCasterPrivate() { } + + QJSValue m_jsHits; + QQmlEngine *m_engine = nullptr; + + void dispatchHits(const QAbstractRayCaster::Hits &hits) override; + + Q_DECLARE_PUBLIC(Quick3DScreenRayCaster) +}; + +} // namespace Quick +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_QUICK_QUICKSCREENRAYCASTER_P_P_H + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/5.12.5/Qt3DQuickRender/private/quick3dshaderdata_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/5.12.5/Qt3DQuickRender/private/quick3dshaderdata_p.h new file mode 100644 index 0000000..2070961 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/5.12.5/Qt3DQuickRender/private/quick3dshaderdata_p.h @@ -0,0 +1,81 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_QUICK_QUICK3DSHADERDATA_P_H +#define QT3DRENDER_RENDER_QUICK_QUICK3DSHADERDATA_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { +namespace Render { +namespace Quick { + +class QT3DQUICKRENDERSHARED_PRIVATE_EXPORT Quick3DShaderData : public QShaderData +{ + Q_OBJECT +public: + explicit Quick3DShaderData(QNode *parent = 0); +}; + +} // namespace Quick +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +Q_DECLARE_METATYPE(Qt3DRender::Render::Quick::Quick3DShaderData*) // LCOV_EXCL_LINE + +#endif // QT3DRENDER_RENDER_QUICK_QUICK3DSHADERDATA_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/5.12.5/Qt3DQuickRender/private/quick3dshaderdataarray_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/5.12.5/Qt3DQuickRender/private/quick3dshaderdataarray_p.h new file mode 100644 index 0000000..162f402 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/5.12.5/Qt3DQuickRender/private/quick3dshaderdataarray_p.h @@ -0,0 +1,99 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_QUICK_QUICK3DSHADERDATAARRAY_P_H +#define QT3DRENDER_RENDER_QUICK_QUICK3DSHADERDATAARRAY_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QShaderData; + +namespace Render { +namespace Quick { + +class Quick3DShaderDataArrayPrivate; +class Quick3DShaderData; + +class QT3DQUICKRENDERSHARED_PRIVATE_EXPORT Quick3DShaderDataArray : public Qt3DCore::QNode +{ + Q_OBJECT + Q_PROPERTY(QQmlListProperty values READ valuesList) + Q_CLASSINFO("DefaultProperty", "values") + +public: + explicit Quick3DShaderDataArray(Qt3DCore::QNode *parent = 0); + QQmlListProperty valuesList(); + QVector values() const; + +private: + static void appendValue(QQmlListProperty *list, QShaderData *bar); + static QShaderData *valueAt(QQmlListProperty *list, int index); + static int valueCount(QQmlListProperty *list); + static void clearValues(QQmlListProperty *list); + Q_DECLARE_PRIVATE(Quick3DShaderDataArray) +}; + +} // namespace Quick +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +Q_DECLARE_METATYPE(Qt3DRender::Render::Quick::Quick3DShaderDataArray*) // LCOV_EXCL_LINE + +#endif // QT3DRENDER_RENDER_QUICK_QUICK3DSHADERDATAARRAY_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/5.12.5/Qt3DQuickRender/private/quick3dstateset_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/5.12.5/Qt3DQuickRender/private/quick3dstateset_p.h new file mode 100644 index 0000000..b2e63c0 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/5.12.5/Qt3DQuickRender/private/quick3dstateset_p.h @@ -0,0 +1,89 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_QUICK_QUICK3DSTATESET_P_H +#define QT3DRENDER_RENDER_QUICK_QUICK3DSTATESET_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { +namespace Render { +namespace Quick { + +class QT3DQUICKRENDERSHARED_PRIVATE_EXPORT Quick3DStateSet : public QObject +{ + Q_OBJECT + Q_PROPERTY(QQmlListProperty renderStates READ renderStateList CONSTANT) +public: + explicit Quick3DStateSet(QObject *parent = 0); + ~Quick3DStateSet(); + + QQmlListProperty renderStateList(); + inline QRenderStateSet *parentStateSet() const { return qobject_cast(parent()); } + +private: + static void appendRenderState(QQmlListProperty *list, QRenderState *state); + static QRenderState *renderStateAt(QQmlListProperty *list, int index); + static int renderStateCount(QQmlListProperty *list); + static void clearRenderStates(QQmlListProperty *list); +}; + +} // namespace Quick +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_QUICK_QUICK3DSTATESET_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/5.12.5/Qt3DQuickRender/private/quick3dtechnique_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/5.12.5/Qt3DQuickRender/private/quick3dtechnique_p.h new file mode 100644 index 0000000..9cdfdfe --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/5.12.5/Qt3DQuickRender/private/quick3dtechnique_p.h @@ -0,0 +1,105 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_QUICK_QUICK3DTECHNIQUE_P_H +#define QT3DRENDER_RENDER_QUICK_QUICK3DTECHNIQUE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { +namespace Render { +namespace Quick { + +class QT3DQUICKRENDERSHARED_PRIVATE_EXPORT Quick3DTechnique : public QObject +{ + Q_OBJECT + Q_PROPERTY(QQmlListProperty filterKeys READ filterKeyList) + Q_PROPERTY(QQmlListProperty renderPasses READ renderPassList) + Q_PROPERTY(QQmlListProperty parameters READ parameterList) +public: + explicit Quick3DTechnique(QObject *parent = 0); + + QQmlListProperty filterKeyList(); + QQmlListProperty renderPassList(); + QQmlListProperty parameterList(); + + // Use QAbstractTechnique when it has been properly defined + inline QTechnique *parentTechnique() const { return qobject_cast(parent()); } + +private: + + static void appendParameter(QQmlListProperty *list, QParameter *param); + static QParameter *parameterAt(QQmlListProperty *list, int index); + static int parametersCount(QQmlListProperty *list); + static void clearParameterList(QQmlListProperty *list); + + static void appendFilterKey(QQmlListProperty *list, QFilterKey *filterKey); + static QFilterKey *filterKeyAt(QQmlListProperty *list, int index); + static int filterKeyCount(QQmlListProperty *list); + static void clearFilterKeyList(QQmlListProperty *list); + + static void appendRenderPass(QQmlListProperty *list, QRenderPass* renderPass); + static QRenderPass *renderPassAt(QQmlListProperty *list, int index); + static int renderPassCount(QQmlListProperty *list); + static void clearRenderPasses( QQmlListProperty *list); +}; + +} // namespace Quick +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_QUICK_QUICK3DTECHNIQUE_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/5.12.5/Qt3DQuickRender/private/quick3dtechniquefilter_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/5.12.5/Qt3DQuickRender/private/quick3dtechniquefilter_p.h new file mode 100644 index 0000000..2b10bc1 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/5.12.5/Qt3DQuickRender/private/quick3dtechniquefilter_p.h @@ -0,0 +1,99 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_QUICK_QUICK3DTECHNIQUEFILTER_P_H +#define QT3DRENDER_RENDER_QUICK_QUICK3DTECHNIQUEFILTER_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { +namespace Render { +namespace Quick { + +class QT3DQUICKRENDERSHARED_PRIVATE_EXPORT Quick3DTechniqueFilter : public QObject +{ + Q_OBJECT + Q_PROPERTY(QQmlListProperty matchAll READ matchList) + Q_PROPERTY(QQmlListProperty parameters READ parameterList) + +public: + explicit Quick3DTechniqueFilter(QObject *parent = 0); + + QQmlListProperty matchList(); + QQmlListProperty parameterList(); + + inline QTechniqueFilter *parentTechniqueFilter() const { return qobject_cast(parent()); } + +private: + static void appendRequire(QQmlListProperty *list, QFilterKey *criterion); + static QFilterKey *requireAt(QQmlListProperty *list, int index); + static int requiresCount(QQmlListProperty *list); + static void clearRequires(QQmlListProperty *list); + + static void appendParameter(QQmlListProperty *list, QParameter *param); + static QParameter *parameterAt(QQmlListProperty *list, int index); + static int parametersCount(QQmlListProperty *list); + static void clearParameterList(QQmlListProperty *list); +}; + +} // namespace Quick +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_QUICK_QUICK3DTECHNIQUEFILTER_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/5.12.5/Qt3DQuickRender/private/quick3dtexture_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/5.12.5/Qt3DQuickRender/private/quick3dtexture_p.h new file mode 100644 index 0000000..6b04302 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/5.12.5/Qt3DQuickRender/private/quick3dtexture_p.h @@ -0,0 +1,91 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_QUICK_QUICK3DTEXTURE_P_H +#define QT3DRENDER_RENDER_QUICK_QUICK3DTEXTURE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { +namespace Render { +namespace Quick { + +class QT3DQUICKRENDERSHARED_PRIVATE_EXPORT Quick3DTextureExtension : public QObject +{ + Q_OBJECT + Q_PROPERTY(QQmlListProperty textureImages READ textureImages) + Q_CLASSINFO("DefaultProperty", "textureImages") + +public: + explicit Quick3DTextureExtension(QObject *parent = 0); + + QQmlListProperty textureImages(); + inline QAbstractTexture *parentTexture() const { return qobject_cast(parent()); } + +private: + static void appendTextureImage(QQmlListProperty *list, QAbstractTextureImage *textureImage); + static QAbstractTextureImage *textureImageAt(QQmlListProperty *list, int index); + static int textureImageCount(QQmlListProperty *list); + static void clearTextureImageList(QQmlListProperty *list); +}; + +} // namespace Quick +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_QUICK_QUICK3DTEXTURE_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/5.12.5/Qt3DQuickRender/private/quick3dviewport_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/5.12.5/Qt3DQuickRender/private/quick3dviewport_p.h new file mode 100644 index 0000000..adf0c98 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/5.12.5/Qt3DQuickRender/private/quick3dviewport_p.h @@ -0,0 +1,81 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_QUICK_QUICK3DVIEWPORT_P_H +#define QT3DRENDER_RENDER_QUICK_QUICK3DVIEWPORT_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { +namespace Render { +namespace Quick { + +// TO DO : Check if this is required or if this might as well be removed + +class QT3DQUICKRENDERSHARED_PRIVATE_EXPORT Quick3DViewport : public QObject +{ + Q_OBJECT +public: + explicit Quick3DViewport(QObject *parent = 0); +}; + +} // namespace Quick +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_QUICK_QUICK3DVIEWPORT_P_H + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/Qt3DQuickRender b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/Qt3DQuickRender new file mode 100644 index 0000000..f6dbc6e --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/Qt3DQuickRender @@ -0,0 +1,5 @@ +#ifndef QT_QT3DQUICKRENDER_MODULE_H +#define QT_QT3DQUICKRENDER_MODULE_H +#include +#include "qt3dquickrenderversion.h" +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/Qt3DQuickRenderDepends b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/Qt3DQuickRenderDepends new file mode 100644 index 0000000..5fa5494 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/Qt3DQuickRenderDepends @@ -0,0 +1,9 @@ +/* This file was generated by qmake with the info from /src/quick3d/quick3drender/quick3drender.pro. */ +#ifdef __cplusplus /* create empty PCH in C mode */ +#include +#include +#include +#include +#include +#include +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/Qt3DQuickRenderVersion b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/Qt3DQuickRenderVersion new file mode 100644 index 0000000..c8a00d8 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/Qt3DQuickRenderVersion @@ -0,0 +1 @@ +#include "qt3dquickrenderversion.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/qt3dquickrender_global.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/qt3dquickrender_global.h new file mode 100644 index 0000000..7c21243 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/qt3dquickrender_global.h @@ -0,0 +1,59 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DQUICKRENDER_GLOBAL_H +#define QT3DQUICKRENDER_GLOBAL_H + +#include + +QT_BEGIN_NAMESPACE + +#if defined(QT_SHARED) || !defined(QT_STATIC) +# if defined(QT_BUILD_3DQUICKRENDER_LIB) +# define QT3DQUICKRENDERSHARED_EXPORT Q_DECL_EXPORT +# else +# define QT3DQUICKRENDERSHARED_EXPORT Q_DECL_IMPORT +# endif +#else +# define QT3DQUICKRENDERSHARED_EXPORT +#endif + +QT_END_NAMESPACE + +#endif // QT3DQUICKRENDER_GLOBAL_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/qt3dquickrenderversion.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/qt3dquickrenderversion.h new file mode 100644 index 0000000..f7f8f6d --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickRender/qt3dquickrenderversion.h @@ -0,0 +1,9 @@ +/* This file was generated by syncqt. */ +#ifndef QT_QT3DQUICKRENDER_VERSION_H +#define QT_QT3DQUICKRENDER_VERSION_H + +#define QT3DQUICKRENDER_VERSION_STR "5.12.5" + +#define QT3DQUICKRENDER_VERSION 0x050C05 + +#endif // QT_QT3DQUICKRENDER_VERSION_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickScene2D/5.12.5/Qt3DQuickScene2D/private/qscene2d_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickScene2D/5.12.5/Qt3DQuickScene2D/private/qscene2d_p.h new file mode 100644 index 0000000..ce35484 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickScene2D/5.12.5/Qt3DQuickScene2D/private/qscene2d_p.h @@ -0,0 +1,99 @@ +/**************************************************************************** +** +** Copyright (C) 2017 The Qt Company Ltd. +** Contact: http://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QUICK3DSCENE2D_QSCENE2D_P_H +#define QT3DRENDER_QUICK3DSCENE2D_QSCENE2D_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { +class QScene; +} + +namespace Qt3DRender { + +namespace Quick { + +class QScene2D; +class Scene2DManager; + +class Q_AUTOTEST_EXPORT QScene2DPrivate : public Qt3DCore::QNodePrivate +{ +public: + Q_DECLARE_PUBLIC(QScene2D) + + QScene2DPrivate(); + ~QScene2DPrivate(); + + void setScene(Qt3DCore::QScene *scene) override; + + Scene2DManager *m_renderManager; + QMetaObject::Connection m_textureDestroyedConnection; + Qt3DRender::QRenderTargetOutput *m_output; + QVector m_entities; +}; + +struct QScene2DData +{ + QScene2D::RenderPolicy renderPolicy; + Scene2DSharedObjectPtr sharedObject; + Qt3DCore::QNodeId output; + QVector entityIds; + bool mouseEnabled; +}; + +} // namespace Quick +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QUICK3DSCENE2D_QSCENE2D_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickScene2D/5.12.5/Qt3DQuickScene2D/private/qt3dquick3dscene2d_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickScene2D/5.12.5/Qt3DQuickScene2D/private/qt3dquick3dscene2d_p.h new file mode 100644 index 0000000..5773422 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickScene2D/5.12.5/Qt3DQuickScene2D/private/qt3dquick3dscene2d_p.h @@ -0,0 +1,93 @@ +/**************************************************************************** +** +** Copyright (C) 2017 The Qt Company Ltd. +** Contact: http://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DSCENE2D_QUICK_QUICK3DSCENE2D_P_H +#define QT3DSCENE2D_QUICK_QUICK3DSCENE2D_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { +namespace Render { +namespace Quick { + +class QT3DQUICKSCENE2DSHARED_EXPORT QQuick3DScene2D : public QObject +{ + Q_OBJECT + Q_PROPERTY(QQmlListProperty entities READ entities) + +public: + QQuick3DScene2D(QObject *parent = nullptr); + + inline Qt3DRender::Quick::QScene2D *parentScene2D() const + { + return qobject_cast(parent()); + } + + QQmlListProperty entities(); + +private: + + static void appendEntity(QQmlListProperty *list, Qt3DCore::QEntity *entity); + static Qt3DCore::QEntity *entityAt(QQmlListProperty *list, int index); + static int entityCount(QQmlListProperty *list); + static void clearEntities(QQmlListProperty *list); +}; + +} // namespace Quick +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_QUICK_QUICK3DMORPHINGANIMATION_P_H + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickScene2D/5.12.5/Qt3DQuickScene2D/private/qt3dquickscene2d_global_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickScene2D/5.12.5/Qt3DQuickScene2D/private/qt3dquickscene2d_global_p.h new file mode 100644 index 0000000..e115e3d --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickScene2D/5.12.5/Qt3DQuickScene2D/private/qt3dquickscene2d_global_p.h @@ -0,0 +1,88 @@ +/**************************************************************************** +** +** Copyright (C) 2017 The Qt Company Ltd. +** Contact: http://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DQUICKSCENE2D_GLOBAL_P_H +#define QT3DQUICKSCENE2D_GLOBAL_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +#define QT3DQUICKSCENE2DSHARED_PRIVATE_EXPORT QT3DQUICKSCENE2DSHARED_EXPORT + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +namespace Quick { + +QT3DQUICKSCENE2DSHARED_PRIVATE_EXPORT void Quick3DScene2D_initialize(); +QT3DQUICKSCENE2DSHARED_PRIVATE_EXPORT void Quick3DScene2D_registerType(const char *className, + const char *quickName, + int major, int minor); + +template void registerExtendedType(const char *className, const char *quickName, + const char *uri, int major, int minor, + const char *name) +{ + qmlRegisterExtendedType(uri, major, minor, name); + Quick3DScene2D_registerType(className, quickName, major, minor); +} + +template void registerType(const char *className, const char *quickName, + const char *uri, int major, int minor, const char *name) +{ + qmlRegisterType(uri, major, minor, name); + Quick3DScene2D_registerType(className, quickName, major, minor); +} + +} // Quick + +} // Qt3D + +QT_END_NAMESPACE + +#endif // QT3DQUICKSCENE2D_GLOBAL_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickScene2D/5.12.5/Qt3DQuickScene2D/private/qt3dquickscene2d_logging_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickScene2D/5.12.5/Qt3DQuickScene2D/private/qt3dquickscene2d_logging_p.h new file mode 100644 index 0000000..3120e99 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickScene2D/5.12.5/Qt3DQuickScene2D/private/qt3dquickscene2d_logging_p.h @@ -0,0 +1,65 @@ +/**************************************************************************** +** +** Copyright (C) 2017 The Qt Company Ltd. +** Contact: http://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DQUICKSCENE2D_LOGGING_P_H +#define QT3DQUICKSCENE2D_LOGGING_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { +namespace Quick { + +Q_DECLARE_LOGGING_CATEGORY(Scene2D) + +} // Quick +} // Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DQUICKRENDER_LOGGING_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickScene2D/5.12.5/Qt3DQuickScene2D/private/qt3dquickscene2dnodefactory_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickScene2D/5.12.5/Qt3DQuickScene2D/private/qt3dquickscene2dnodefactory_p.h new file mode 100644 index 0000000..dd8d127 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickScene2D/5.12.5/Qt3DQuickScene2D/private/qt3dquickscene2dnodefactory_p.h @@ -0,0 +1,90 @@ +/**************************************************************************** +** +** Copyright (C) 2017 The Qt Company Ltd and/or its subsidiary(-ies). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QUICKSCENENODEFACTORY_H +#define QUICKSCENENODEFACTORY_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +class QQmlType; + +namespace Qt3DRender { + +class QuickScene2DNodeFactory : public Qt3DCore::QAbstractNodeFactory +{ +public: + Qt3DCore::QNode *createNode(const char *type) override; + + void registerType(const char *className, const char *quickName, int major, int minor); + + static QuickScene2DNodeFactory *instance(); + +private: + struct Type { + Type() : t(nullptr), resolved(false) { } + Type(const char *quickName, int major, int minor) + : quickName(quickName), version(major, minor), t(nullptr), resolved(false) { } + QByteArray quickName; + QPair version; + QQmlType t; + bool resolved; + }; + QHash m_types; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QUICKRENDERERNODEFACTORY_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickScene2D/5.12.5/Qt3DQuickScene2D/private/scene2d_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickScene2D/5.12.5/Qt3DQuickScene2D/private/scene2d_p.h new file mode 100644 index 0000000..b899988 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickScene2D/5.12.5/Qt3DQuickScene2D/private/scene2d_p.h @@ -0,0 +1,137 @@ +/**************************************************************************** +** +** Copyright (C) 2017 The Qt Company Ltd. +** Contact: http://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_QUICK3DSCENE2D_SCENE2D_P_H +#define QT3DRENDER_RENDER_QUICK3DSCENE2D_SCENE2D_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include + +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +namespace Render { + +class GraphicsContext; + +namespace Quick { + +class Scene2D; + +class RenderQmlEventHandler : public QObject +{ + Q_OBJECT +public: + RenderQmlEventHandler(Scene2D *node); + bool event(QEvent *e) override; + +private: + Scene2D *m_node; +}; + +class QT3DQUICKSCENE2DSHARED_EXPORT Scene2D : public Qt3DRender::Render::BackendNode +{ +public: + Scene2D(); + ~Scene2D(); + + void render(); + void initializeRender(); + void setSharedObject(Qt3DRender::Quick::Scene2DSharedObjectPtr sharedObject); + void cleanup(); + void setOutput(Qt3DCore::QNodeId outputId); + void initializeSharedObject(); + + void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) override; + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) override; + + bool updateFbo(QOpenGLTexture *texture); + void syncRenderControl(); + void startGrabbing(); + void stopGrabbing(); + bool registerObjectPickerEvents(Qt3DCore::QNodeId entityId); + void unregisterObjectPickerEvents(Qt3DCore::QNodeId entityId); + void handlePickEvent(int type, const Qt3DRender::QPickEventPtr &ev); + + QOpenGLContext *m_context; + QOpenGLContext *m_shareContext; + QThread *m_renderThread; + Qt3DCore::QNodeId m_outputId; + QSharedPointer m_sharedObject; + Qt3DCore::QNodeId m_peerId; + Qt3DRender::Render::Attachment m_attachmentData; + + GLuint m_fbo; + GLuint m_rbo; + QSize m_textureSize; + + bool m_initialized; + bool m_renderInitialized; + bool m_mouseEnabled; + Qt3DRender::Quick::QScene2D::RenderPolicy m_renderPolicy; + QVector m_entities; + Qt3DRender::QPickEventPtr m_cachedPickEvent; +#ifdef QT_OPENGL_ES_2_ANGLE + bool m_usingAngle; +#endif +}; + +} // Quick +} // Render +} // Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_QUICK3DSCENE2D_SCENE2D_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickScene2D/5.12.5/Qt3DQuickScene2D/private/scene2devent_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickScene2D/5.12.5/Qt3DQuickScene2D/private/scene2devent_p.h new file mode 100644 index 0000000..bcc808a --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickScene2D/5.12.5/Qt3DQuickScene2D/private/scene2devent_p.h @@ -0,0 +1,84 @@ +/**************************************************************************** +** +** Copyright (C) 2017 The Qt Company Ltd. +** Contact: http://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QUICK3DRENDER_SCENE2DEVENT_P_H +#define QT3DRENDER_QUICK3DRENDER_SCENE2DEVENT_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +namespace Quick { + +class Scene2DEvent : public QEvent +{ +public: + enum Type { + Initialize = QEvent::User + 1, + Render, + RenderSync, + Prepare, + Initialized, + Rendered, + Quit + }; + Scene2DEvent(Type type) + : QEvent(static_cast(type)) + { + } +}; + +} // namespace Quick +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QUICK3DRENDER_SCENE2DEVENT_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickScene2D/5.12.5/Qt3DQuickScene2D/private/scene2dmanager_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickScene2D/5.12.5/Qt3DQuickScene2D/private/scene2dmanager_p.h new file mode 100644 index 0000000..ececf96 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickScene2D/5.12.5/Qt3DQuickScene2D/private/scene2dmanager_p.h @@ -0,0 +1,112 @@ +/**************************************************************************** +** +** Copyright (C) 2017 The Qt Company Ltd. +** Contact: http://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QUICK3DRENDER_SCENE2DMANAGER_P_H +#define QT3DRENDER_QUICK3DRENDER_SCENE2DMANAGER_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +#include +#include +#include + +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +namespace Quick { + +class QScene2DPrivate; +class Scene2DSharedObject; + +class Scene2DManager : public QObject +{ + Q_OBJECT +public: + Scene2DManager(QScene2DPrivate *priv); + ~Scene2DManager(); + + QQuickItem *m_rootItem; + QQuickItem *m_item; + + QScene2DPrivate *m_priv; + QSharedPointer m_sharedObject; + + Qt3DCore::QNodeId m_id; + QScene2D::RenderPolicy m_renderPolicy; + + bool m_requested; + bool m_initialized; + bool m_renderSyncRequested; + bool m_backendInitialized; + bool m_mouseEnabled; + + void requestRender(); + void requestRenderSync(); + void doRenderSync(); + void startIfInitialized(); + void stopAndClean(); + void updateSizes(); + + void setItem(QQuickItem *item); + + bool event(QEvent *e) override; + + void cleanup(); +}; + +} // namespace Quick +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QUICK3DRENDER_SCENE2DMANAGER_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickScene2D/5.12.5/Qt3DQuickScene2D/private/scene2dsharedobject_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickScene2D/5.12.5/Qt3DQuickScene2D/private/scene2dsharedobject_p.h new file mode 100644 index 0000000..416a228 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickScene2D/5.12.5/Qt3DQuickScene2D/private/scene2dsharedobject_p.h @@ -0,0 +1,130 @@ +/**************************************************************************** +** +** Copyright (C) 2017 The Qt Company Ltd. +** Contact: http://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QUICK3DRENDER_SCENE2DSHAREDOBJECT_P_H +#define QT3DRENDER_QUICK3DRENDER_SCENE2DSHAREDOBJECT_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +#include +#include +#include +#include +#include +#include + +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +namespace Quick { + +class Scene2DManager; + +class QT3DQUICKSCENE2DSHARED_EXPORT Scene2DSharedObject +{ +public: + Scene2DSharedObject(Scene2DManager *manager); + ~Scene2DSharedObject(); + + QQuickRenderControl *m_renderControl; + QQuickWindow *m_quickWindow; + Scene2DManager *m_renderManager; + QOffscreenSurface *m_surface; + + QThread *m_renderThread; + QObject *m_renderObject; + + QWaitCondition m_cond; + QMutex m_mutex; + + bool isInitialized() const; + void setInitialized(); + + void requestQuit(); + bool isQuit() const; + + void requestRender(bool sync); + + bool isSyncRequested() const; + void clearSyncRequest(); + + void wait(); + void wake(); + + bool isPrepared() const; + void setPrepared(); + + void disallowRender(); + bool canRender() const; + + void cleanup(); + +private: + + bool m_disallowed; + bool m_quit; + bool m_requestSync; + bool m_prepared; + bool m_initialized; +}; + +typedef QSharedPointer Scene2DSharedObjectPtr; + +} // namespace Quick +} // namespace Qt3DRender + +QT_END_NAMESPACE + +Q_DECLARE_METATYPE(Qt3DRender::Quick::Scene2DSharedObjectPtr) + +#endif // QT3DRENDER_QUICK3DRENDER_SCENE2DSHAREDOBJECT_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickScene2D/QScene2D b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickScene2D/QScene2D new file mode 100644 index 0000000..f8c7f45 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickScene2D/QScene2D @@ -0,0 +1 @@ +#include "qscene2d.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickScene2D/Qt3DQuickScene2D b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickScene2D/Qt3DQuickScene2D new file mode 100644 index 0000000..e0b7251 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickScene2D/Qt3DQuickScene2D @@ -0,0 +1,6 @@ +#ifndef QT_QT3DQUICKSCENE2D_MODULE_H +#define QT_QT3DQUICKSCENE2D_MODULE_H +#include +#include "qscene2d.h" +#include "qt3dquickscene2dversion.h" +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickScene2D/Qt3DQuickScene2DDepends b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickScene2D/Qt3DQuickScene2DDepends new file mode 100644 index 0000000..469ce3e --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickScene2D/Qt3DQuickScene2DDepends @@ -0,0 +1,9 @@ +/* This file was generated by qmake with the info from /src/quick3d/quick3dscene2d/quick3dscene2d.pro. */ +#ifdef __cplusplus /* create empty PCH in C mode */ +#include +#include +#include +#include +#include +#include +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickScene2D/Qt3DQuickScene2DVersion b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickScene2D/Qt3DQuickScene2DVersion new file mode 100644 index 0000000..03e6644 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickScene2D/Qt3DQuickScene2DVersion @@ -0,0 +1 @@ +#include "qt3dquickscene2dversion.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickScene2D/qscene2d.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickScene2D/qscene2d.h new file mode 100644 index 0000000..c309fc8 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickScene2D/qscene2d.h @@ -0,0 +1,117 @@ +/**************************************************************************** +** +** Copyright (C) 2017 The Qt Company Ltd. +** Contact: http://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QUICK3DSCENE2D_QSCENE2D_H +#define QT3DRENDER_QUICK3DSCENE2D_QSCENE2D_H + +#include +#include + +#include +#include + +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +/*! + \namespace Qt3DRender::Quick + + \brief Internal namespace to import QML types. +*/ +namespace Quick { + +class QScene2DPrivate; + +class QT3DQUICKSCENE2DSHARED_EXPORT QScene2D : public Qt3DCore::QNode +{ + Q_OBJECT + + Q_PROPERTY(Qt3DRender::QRenderTargetOutput *output READ output WRITE setOutput NOTIFY outputChanged) + Q_PROPERTY(QScene2D::RenderPolicy renderPolicy READ renderPolicy WRITE setRenderPolicy NOTIFY renderPolicyChanged) + Q_PROPERTY(QQuickItem *item READ item WRITE setItem NOTIFY itemChanged) + Q_PROPERTY(bool mouseEnabled READ isMouseEnabled WRITE setMouseEnabled NOTIFY mouseEnabledChanged) + + Q_CLASSINFO("DefaultProperty", "item") + +public: + + enum RenderPolicy { + Continuous, + SingleShot + }; + Q_ENUM(RenderPolicy) + + explicit QScene2D(Qt3DCore::QNode *parent = nullptr); + + Qt3DRender::QRenderTargetOutput *output() const; + QScene2D::RenderPolicy renderPolicy() const; + QQuickItem *item() const; + bool isMouseEnabled() const; + + QVector entities(); + void addEntity(Qt3DCore::QEntity *entity); + void removeEntity(Qt3DCore::QEntity *entity); + +public Q_SLOTS: + void setOutput(Qt3DRender::QRenderTargetOutput *output); + void setRenderPolicy(QScene2D::RenderPolicy policy); + void setItem(QQuickItem *item); + void setMouseEnabled(bool enabled); + +Q_SIGNALS: + void outputChanged(Qt3DRender::QRenderTargetOutput *output); + void renderPolicyChanged(QScene2D::RenderPolicy policy); + void itemChanged(QQuickItem *item); + void mouseEnabledChanged(bool enabled); + +protected: + Q_DECLARE_PRIVATE(QScene2D) + +private: + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +} // namespace Quick +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QUICK3DSCENE2D_QSCENE2D_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickScene2D/qt3dquickscene2d_global.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickScene2D/qt3dquickscene2d_global.h new file mode 100644 index 0000000..509a620 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickScene2D/qt3dquickscene2d_global.h @@ -0,0 +1,56 @@ +/**************************************************************************** +** +** Copyright (C) 2017 The Qt Company Ltd. +** Contact: http://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DQUICKSCENE2D_GLOBAL_H +#define QT3DQUICKSCENE2D_GLOBAL_H + +#include + +QT_BEGIN_NAMESPACE + +#if defined(QT_SHARED) || !defined(QT_STATIC) +# if defined(QT_BUILD_3DQUICKSCENE2D_LIB) +# define QT3DQUICKSCENE2DSHARED_EXPORT Q_DECL_EXPORT +# else +# define QT3DQUICKSCENE2DSHARED_EXPORT Q_DECL_IMPORT +# endif +#else +# define QT3DQUICKSCENE2DSHARED_EXPORT +#endif + +QT_END_NAMESPACE + +#endif // QT3DQUICKSCENE2D_GLOBAL_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickScene2D/qt3dquickscene2dversion.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickScene2D/qt3dquickscene2dversion.h new file mode 100644 index 0000000..c136a35 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DQuickScene2D/qt3dquickscene2dversion.h @@ -0,0 +1,9 @@ +/* This file was generated by syncqt. */ +#ifndef QT_QT3DQUICKSCENE2D_VERSION_H +#define QT_QT3DQUICKSCENE2D_VERSION_H + +#define QT3DQUICKSCENE2D_VERSION_STR "5.12.5" + +#define QT3DQUICKSCENE2D_VERSION 0x050C05 + +#endif // QT_QT3DQUICKSCENE2D_VERSION_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/abstractpickingjob_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/abstractpickingjob_p.h new file mode 100644 index 0000000..059c87a --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/abstractpickingjob_p.h @@ -0,0 +1,114 @@ +/**************************************************************************** +** +** Copyright (C) 2018 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_ABSTRACTPICKINGJOB_P_H +#define QT3DRENDER_RENDER_ABSTRACTPICKINGJOB_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { +class QNodeId; +} + +namespace Qt3DRender { +namespace Render { + +class Entity; +class Renderer; +class NodeManagers; +class RenderSettings; + +class Q_AUTOTEST_EXPORT AbstractPickingJob : public Qt3DCore::QAspectJob +{ +public: + AbstractPickingJob(); + + void setRoot(Entity *root); + void setFrameGraphRoot(FrameGraphNode *frameGraphRoot); + void setRenderSettings(RenderSettings *settings); + void setManagers(NodeManagers *manager); + + // public for unit tests + virtual bool runHelper() = 0; + static RayCasting::QRay3D intersectionRay(const QPoint &pos, + const Matrix4x4 &viewMatrix, + const Matrix4x4 &projectionMatrix, + const QRect &viewport); + +protected: + void run() final; + + NodeManagers *m_manager; + Entity *m_node; + FrameGraphNode *m_frameGraphRoot; + RenderSettings *m_renderSettings; + + bool m_oneEnabledAtLeast; + + QRect windowViewport(const QSize &area, const QRectF &relativeViewport) const; + RayCasting::QRay3D rayForViewportAndCamera(const PickingUtils::ViewportCameraAreaDetails &vca, + QObject *eventSource, + const QPoint &pos) const; +}; + +} // namespace Render + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_ABSTRACTPICKINGJOB_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/abstractrenderer_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/abstractrenderer_p.h new file mode 100644 index 0000000..cd662b8 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/abstractrenderer_p.h @@ -0,0 +1,199 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ +#ifndef QT3DRENDER_RENDER_ABSTRACTRENDERER_P_H +#define QT3DRENDER_RENDER_ABSTRACTRENDERER_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include +#include +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +class QSurface; +class QSize; + +namespace Qt3DCore { +class QAbstractFrameAdvanceService; +class QBackendNodeFactory; +class QEventFilterService; +class QAbstractAspectJobManager; +class QServiceLocator; +} + +namespace Qt3DRender { + +class QRenderAspect; + +namespace Render { + +class NodeManagers; +class Entity; +class FrameGraphNode; +class RenderSettings; +class BackendNode; +class OffscreenSurfaceHelper; +class Shader; + +class QT3DRENDERSHARED_PRIVATE_EXPORT AbstractRenderer +{ +public: + virtual ~AbstractRenderer() {} + + enum API { + OpenGL, + Vulkan, + DirectX + }; + + // Changes made to backend nodes are reported to the Renderer + enum BackendNodeDirtyFlag { + TransformDirty = 1 << 0, + MaterialDirty = 1 << 1, + GeometryDirty = 1 << 2, + ComputeDirty = 1 << 3, + ParameterDirty = 1 << 4, + FrameGraphDirty = 1 << 5, + EntityEnabledDirty = 1 << 6, + BuffersDirty = 1 << 7, + TexturesDirty = 1 << 8, + ShadersDirty = 1 << 9, + SkeletonDataDirty = 1 << 10, + JointDirty = 1 << 11, + LayersDirty = 1 << 12, + TechniquesDirty = 1 << 13, + EntityHierarchyDirty= 1 << 14, + LightsDirty = 1 << 15, + AllDirty = 0xffffff + }; + Q_DECLARE_FLAGS(BackendNodeDirtySet, BackendNodeDirtyFlag) + + virtual void dumpInfo() const = 0; + + virtual API api() const = 0; + + virtual qint64 time() const = 0; + virtual void setTime(qint64 time) = 0; + + virtual void setNodeManagers(NodeManagers *managers) = 0; + virtual void setServices(Qt3DCore::QServiceLocator *services) = 0; + virtual void setSurfaceExposed(bool exposed) = 0; + + virtual NodeManagers *nodeManagers() const = 0; + virtual Qt3DCore::QServiceLocator *services() const = 0; + + virtual void initialize() = 0; + virtual void shutdown() = 0; + virtual void releaseGraphicsResources() = 0; + + // Threaded renderer + virtual void render() = 0; + // Synchronous renderer + virtual void doRender(bool scene3dBlocking = false) = 0; + + virtual void cleanGraphicsResources() = 0; + + virtual bool isRunning() const = 0; + + virtual void markDirty(BackendNodeDirtySet changes, BackendNode *node) = 0; + virtual BackendNodeDirtySet dirtyBits() = 0; +#if defined(QT_BUILD_INTERNAL) + virtual void clearDirtyBits(BackendNodeDirtySet changes) = 0; +#endif + virtual bool shouldRender() = 0; + virtual void skipNextFrame() = 0; + + virtual QVector renderBinJobs() = 0; + virtual Qt3DCore::QAspectJobPtr pickBoundingVolumeJob() = 0; + virtual Qt3DCore::QAspectJobPtr rayCastingJob() = 0; + virtual Qt3DCore::QAspectJobPtr syncTextureLoadingJob() = 0; + virtual Qt3DCore::QAspectJobPtr expandBoundingVolumeJob() = 0; + + virtual void setSceneRoot(Qt3DCore::QBackendNodeFactory *factory, Entity *root) = 0; + + virtual Entity *sceneRoot() const = 0; + virtual FrameGraphNode *frameGraphRoot() const = 0; + + virtual Qt3DCore::QAbstractFrameAdvanceService *frameAdvanceService() const = 0; + virtual void registerEventFilter(Qt3DCore::QEventFilterService *service) = 0; + + virtual void setSettings(RenderSettings *settings) = 0; + virtual RenderSettings *settings() const = 0; + + virtual QVariant executeCommand(const QStringList &args) = 0; + + // For QtQuick rendering + virtual void setOpenGLContext(QOpenGLContext *ctx) = 0; + + virtual void setOffscreenSurfaceHelper(OffscreenSurfaceHelper *helper) = 0; + virtual QSurfaceFormat format() = 0; + virtual QOpenGLContext *shareContext() const = 0; + + + // These commands are executed in a dedicated command thread + // More will be added later + virtual void loadShader(Shader *shader, Qt3DRender::Render::HShader shaderHandle) = 0; +}; + +Q_DECLARE_OPERATORS_FOR_FLAGS(AbstractRenderer::BackendNodeDirtySet) + +} // Render + +} // Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_ABSTRACTRENDERER_P_H + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/aligned_malloc_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/aligned_malloc_p.h new file mode 100644 index 0000000..a2a619b --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/aligned_malloc_p.h @@ -0,0 +1,81 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_ALIGNED_MALLOC_P_H +#define QT3DRENDER_RENDER_ALIGNED_MALLOC_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +#if QT_CONFIG(qt3d_simd_avx2) && defined(__AVX2__) && defined(QT_COMPILER_SUPPORTS_AVX2) +# define QT3D_ALIGNED_MALLOC(s) _mm_malloc(s, 32) +#elif QT_CONFIG(qt3d_simd_sse2) && defined(__SSE2__) && defined(QT_COMPILER_SUPPORTS_SSE2) +# define QT3D_ALIGNED_MALLOC(s) _mm_malloc(s, 16) +#else + #define QT3D_ALIGNED_MALLOC(s) malloc(s) +#endif + +#if (QT_CONFIG(qt3d_simd_avx2) && defined(__AVX2__) && defined(QT_COMPILER_SUPPORTS_AVX2)) || (QT_CONFIG(qt3d_simd_sse2) && defined(__SSE2__) && defined(QT_COMPILER_SUPPORTS_SSE2)) +# define QT3D_ALIGNED_FREE(ptr) _mm_free(ptr) +#else +# define QT3D_ALIGNED_FREE(ptr) free(ptr) +#endif + +#define QT3D_ALIGNED_MALLOC_AND_FREE() \ + static void *operator new(size_t s) \ + { \ + return QT3D_ALIGNED_MALLOC(s); \ + } \ + static void operator delete(void *ptr) \ + { \ + QT3D_ALIGNED_FREE(ptr); \ + } + +#endif // QT3DRENDER_RENDER_ALIGNED_MALLOC_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/apitexturemanager_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/apitexturemanager_p.h new file mode 100644 index 0000000..58e6e64 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/apitexturemanager_p.h @@ -0,0 +1,397 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_APITEXTUREMANAGER_P_H +#define QT3DRENDER_RENDER_APITEXTUREMANAGER_P_H + +#include +#include +#include +#include +#include +#include + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +namespace Render { + +// Manages instances of APITexture. This includes sharing between multiple +// Texture nodes, updating APITextures and deleting abandoned instances. +template +class APITextureManager +{ +public: + + explicit APITextureManager(TextureImageManager *textureImageManager, + TextureDataManager *textureDataManager, + TextureImageDataManager *textureImageDataManager) + : m_textureImageManager(textureImageManager) + , m_textureDataManager(textureDataManager) + , m_textureImageDataManager(textureImageDataManager) + { + } + + ~APITextureManager() + { + qDeleteAll(activeResources()); + m_nodeIdToGLTexture.clear(); + m_sharedTextures.clear(); + m_updatedTextures.clear(); + } + + // Used to retrieve all resources that needs to be destroyed on the GPU + QVector activeResources() const + { + // Active Resources are + // all shared textures + // all unique textures + // all textures that haven't yet been destroyed + // Note: updatedTextures only referenced textures in one of these 3 vectors + return m_sharedTextures.keys().toVector() + m_uniqueTextures + m_abandonedTextures; + } + + APITexture *lookupResource(Qt3DCore::QNodeId textureId) const + { + return m_nodeIdToGLTexture.value(textureId); + } + + Qt3DCore::QNodeIdVector referencedTextureIds(APITexture *apiTexture) const + { + return m_sharedTextures.value(apiTexture); + } + + // Returns a APITexture that matches the given QTexture node. Will make sure + // that texture data generator jobs are launched, if necessary. The APITexture + // may be shared between multiple texture backend nodes + APITexture *getOrCreateShared(const Texture *node) + { + Q_ASSERT(node); + + APITexture *shared = findMatchingShared(node); + + // no matching shared texture was found; create a new one: + if (shared == nullptr) + shared = createTexture(node, false); + + // store texture node to shared texture relationship + adoptShared(shared, node); + + return shared; + } + + // Store that the shared texture references node + void adoptShared(APITexture *sharedApiTexture, const Texture *node) + { + if (!m_sharedTextures[sharedApiTexture].contains(node->peerId())) { + m_sharedTextures[sharedApiTexture].push_back(node->peerId()); + m_nodeIdToGLTexture.insert(node->peerId(), sharedApiTexture); + } + } + + // If there is already a shared texture with the properties of the given + // texture node, return this instance, else NULL. + // Note: the reference to the texture node is added if the shared texture + // wasn't referencing it already + APITexture *findMatchingShared(const Texture *node) + { + Q_ASSERT(node); + + // search for existing texture + const auto end = m_sharedTextures.end(); + for (auto it = m_sharedTextures.begin(); it != end; ++it) + if (isSameTexture(it.key(), node)) + return it.key(); + return nullptr; + } + + // Returns a APITexture that matches the given QTexture node. Will make sure + // that texture data generator jobs are launched, if necessary. + APITexture *createUnique(const Texture *node) + { + Q_ASSERT(node); + APITexture *uniqueTex = createTexture(node, true); + m_uniqueTextures.push_back(uniqueTex); + m_nodeIdToGLTexture.insert(node->peerId(), uniqueTex); + return uniqueTex; + } + + // De-associate the given APITexture from the backend node. If the texture + // is no longer referenced by any other node, it will be deleted. + void abandon(APITexture *tex, const Qt3DCore::QNodeId nodeId) + { + APITexture *apiTexture = m_nodeIdToGLTexture.take(nodeId); + Q_ASSERT(tex == apiTexture); + + if (Q_UNLIKELY(!apiTexture)) { + qWarning() << "[Qt3DRender::TextureManager] abandon: could not find Texture"; + return; + } + + if (tex->isUnique()) { + m_uniqueTextures.removeAll(apiTexture); + m_abandonedTextures.push_back(apiTexture); + } else { + QVector &referencedTextureNodes = m_sharedTextures[apiTexture]; + referencedTextureNodes.removeAll(nodeId); + + // If no texture nodes is referencing the shared APITexture, remove it + if (referencedTextureNodes.empty()) { + m_abandonedTextures.push_back(apiTexture); + m_sharedTextures.remove(apiTexture); + tex->destroyResources(); + } + } + } + + // Change the properties of the given texture, if it is a non-shared texture + // Returns true, if it was changed successfully, false otherwise + bool setProperties(APITexture *tex, const TextureProperties &props) + { + Q_ASSERT(tex); + + if (isShared(tex)) + return false; + + tex->setProperties(props); + m_updatedTextures.push_back(tex); + + return true; + } + + // Change the parameters of the given texture, if it is a non-shared texture + // Returns true, if it was changed successfully, false otherwise + bool setParameters(APITexture *tex, const TextureParameters ¶ms) + { + Q_ASSERT(tex); + + if (isShared(tex)) + return false; + + tex->setParameters(params); + m_updatedTextures.push_back(tex); + + return true; + } + + // Change the texture images of the given texture, if it is a non-shared texture + // Return true, if it was changed successfully, false otherwise + bool setImages(APITexture *tex, const Qt3DCore::QNodeIdVector &imageIds) + { + Q_ASSERT(tex); + + if (isShared(tex)) + return false; + + // create Image structs + QVector texImgs = texImgsFromNodes(imageIds); + if (texImgs.size() != imageIds.size()) + return false; + + tex->setImages(texImgs); + m_updatedTextures.push_back(tex); + + return true; + } + + // Change the texture data generator for given texture, if it is a non-shared texture + // Return true, if it was changed successfully, false otherwise + bool setGenerator(APITexture *tex, const QTextureGeneratorPtr &generator) + { + Q_ASSERT(tex); + + if (isShared(tex)) + return false; + + tex->setGenerator(generator); + m_updatedTextures.push_back(tex); + + return true; + } + + // Retrieves abandoned textures. This should be regularly called from the OpenGL thread + // to make sure needed GL resources are de-allocated. + QVector takeAbandonedTextures() + { + return std::move(m_abandonedTextures); + } + + // Retrieves textures that have been modified + QVector takeUpdatedTextures() + { + return std::move(m_updatedTextures); + } + + // Returns whether the given APITexture is shared between multiple TextureNodes + bool isShared(APITexture *impl) + { + Q_ASSERT(impl); + + if (impl->isUnique()) + return false; + + auto it = m_sharedTextures.constFind(impl); + if (it == m_sharedTextures.cend()) + return false; + + return it.value().size() > 1; + } + +private: + + // Check if the given APITexture matches the TextureNode + bool isSameTexture(const APITexture *tex, const Texture *texNode) + { + // make sure there either are no texture generators, or the two are the same + if (tex->textureGenerator().isNull() != texNode->dataGenerator().isNull()) + return false; + if (!tex->textureGenerator().isNull() && !(*tex->textureGenerator() == *texNode->dataGenerator())) + return false; + + // make sure the image generators are the same + const QVector texImgGens = tex->images(); + const Qt3DCore::QNodeIdVector texImgs = texNode->textureImageIds(); + if (texImgGens.size() != texImgs.size()) + return false; + for (int i = 0; i < texImgGens.size(); ++i) { + const TextureImage *img = m_textureImageManager->lookupResource(texImgs[i]); + Q_ASSERT(img != nullptr); + if (!(*img->dataGenerator() == *texImgGens[i].generator) + || img->layer() != texImgGens[i].layer + || img->face() != texImgGens[i].face + || img->mipLevel() != texImgGens[i].mipLevel) + return false; + } + + // if the texture has a texture generator, this generator will mostly determine + // the properties of the texture. + if (!tex->textureGenerator().isNull()) + return (tex->properties().generateMipMaps == texNode->properties().generateMipMaps + && tex->parameters() == texNode->parameters()); + + // if it doesn't have a texture generator, but texture image generators, + // few more properties will influence the texture type + if (!texImgGens.empty()) + return (tex->properties().target == texNode->properties().target + && tex->properties().format == texNode->properties().format + && tex->properties().generateMipMaps == texNode->properties().generateMipMaps + && tex->parameters() == texNode->parameters()); + + // texture without images + return tex->properties() == texNode->properties() + && tex->parameters() == texNode->parameters(); + } + + // Create APITexture from given TextureNode. Also make sure the generators + // will be executed by jobs soon. + APITexture *createTexture(const Texture *node, bool unique) + { + // create Image structs + const QVector texImgs = texImgsFromNodes(node->textureImageIds()); + if (texImgs.empty() && !node->textureImageIds().empty()) + return nullptr; + + // no matching shared texture was found, create a new one + APITexture *newTex = new APITexture(m_textureDataManager, m_textureImageDataManager, node->dataGenerator(), unique); + newTex->setProperties(node->properties()); + newTex->setParameters(node->parameters()); + newTex->setImages(texImgs); + + m_updatedTextures.push_back(newTex); + + return newTex; + } + + QVector texImgsFromNodes(const Qt3DCore::QNodeIdVector &imageIds) const + { + QVector ret; + ret.resize(imageIds.size()); + + for (int i = 0; i < imageIds.size(); ++i) { + const TextureImage *img = m_textureImageManager->lookupResource(imageIds[i]); + if (!img) { + qWarning() << "[Qt3DRender::TextureManager] invalid TextureImage handle"; + return QVector(); + } + + ret[i].generator = img->dataGenerator(); + ret[i].face = img->face(); + ret[i].layer = img->layer(); + ret[i].mipLevel = img->mipLevel(); + } + + return ret; + } + + TextureImageManager *m_textureImageManager; + TextureDataManager *m_textureDataManager; + TextureImageDataManager *m_textureImageDataManager; + + /* each non-unique texture is associated with a number of Texture nodes referencing it */ + QHash> m_sharedTextures; + + // Texture id -> APITexture (both shared and unique ones) + QHash m_nodeIdToGLTexture; + + QVector m_uniqueTextures; + QVector m_abandonedTextures; + QVector m_updatedTextures; +}; + + +} // Render + +} // Qt3DRender + +QT_END_NAMESPACE + + +#endif // QT3DRENDER_RENDER_APITEXTUREMANAGER_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/armature_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/armature_p.h new file mode 100644 index 0000000..3e6e52a --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/armature_p.h @@ -0,0 +1,87 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_ARMATURE_H +#define QT3DRENDER_RENDER_ARMATURE_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { +namespace Render { + +class Q_AUTOTEST_EXPORT Armature : public BackendNode +{ +public: + Armature(); + + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) override; + void cleanup(); + + Qt3DCore::QNodeId skeletonId() const { return m_skeletonId; } + + // Called from jobs + UniformValue &skinningPaletteUniform() { return m_skinningPaletteUniform; } + const UniformValue &skinningPaletteUniform() const { return m_skinningPaletteUniform; } + +private: + void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) final; + + Qt3DCore::QNodeId m_skeletonId; + UniformValue m_skinningPaletteUniform; +}; + +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_ARMATURE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/attachmentpack_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/attachmentpack_p.h new file mode 100644 index 0000000..a3a2586 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/attachmentpack_p.h @@ -0,0 +1,107 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_ATTACHMENTPACK_P_H +#define QT3DRENDER_RENDER_ATTACHMENTPACK_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { +namespace Render { + +struct Attachment +{ + Attachment() + : m_mipLevel(0) + , m_layer(0) + , m_point(QRenderTargetOutput::Color0) + , m_face(QAbstractTexture::CubeMapNegativeX) + {} + + QString m_name; + int m_mipLevel; + int m_layer; + Qt3DCore::QNodeId m_textureUuid; + QRenderTargetOutput::AttachmentPoint m_point; + QAbstractTexture::CubeMapFace m_face; +}; + +class RenderTarget; +class RenderTargetSelector; +class AttachmentManager; + +class AttachmentPack +{ +public: + AttachmentPack(); + AttachmentPack(const RenderTarget *target, + AttachmentManager *attachmentManager, + const QVector &drawBuffers = QVector()); + + QVector attachments() const { return m_attachments; } + QVector getGlDrawBuffers() const { return m_drawBuffers; } + + // return index of given attachment within actual draw buffers list + int getDrawBufferIndex(QRenderTargetOutput::AttachmentPoint attachmentPoint) const; + +private: + QVector m_attachments; + QVector m_drawBuffers; +}; + +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_ATTACHMENTPACK_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/attribute_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/attribute_p.h new file mode 100644 index 0000000..e015376 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/attribute_p.h @@ -0,0 +1,108 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_RENDERATTRIBUTE_H +#define QT3DRENDER_RENDER_RENDERATTRIBUTE_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +namespace Render { + +class Q_AUTOTEST_EXPORT Attribute : public BackendNode +{ +public: + Attribute(); + ~Attribute(); + + void cleanup(); + + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) override; + + inline Qt3DCore::QNodeId bufferId() const { return m_bufferId; } + inline QString name() const { return m_name; } + inline int nameId() const { return m_nameId; } + inline QAttribute::VertexBaseType vertexBaseType() const { return m_vertexBaseType; } + inline uint vertexSize() const { return m_vertexSize; } + inline uint count() const { return m_count; } + inline uint byteStride() const { return m_byteStride; } + inline uint byteOffset() const { return m_byteOffset; } + inline uint divisor() const { return m_divisor; } + inline QAttribute::AttributeType attributeType() const { return m_attributeType; } + inline bool isDirty() const { return m_attributeDirty; } + void unsetDirty(); + +private: + void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) final; + + Qt3DCore::QNodeId m_bufferId; + QString m_name; + int m_nameId; + QAttribute::VertexBaseType m_vertexBaseType; + uint m_vertexSize; + uint m_count; + uint m_byteStride; + uint m_byteOffset; + uint m_divisor; + QAttribute::AttributeType m_attributeType; + bool m_attributeDirty; +}; + +} // namespace Render + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_RENDERATTRIBUTE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/backendnode_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/backendnode_p.h new file mode 100644 index 0000000..8db68b1 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/backendnode_p.h @@ -0,0 +1,89 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_BACKENDNODE_H +#define QT3DRENDER_RENDER_BACKENDNODE_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +namespace Render { + +class RenderBackendResourceAccessor; + +class QT3DRENDERSHARED_PRIVATE_EXPORT BackendNode : public Qt3DCore::QBackendNode +{ +public: + BackendNode(Qt3DCore::QBackendNode::Mode mode = ReadOnly); + ~BackendNode(); + + void setRenderer(AbstractRenderer *renderer); + AbstractRenderer *renderer() const; + + QSharedPointer resourceAccessor(); + +protected: + void markDirty(AbstractRenderer::BackendNodeDirtySet changes); + AbstractRenderer *m_renderer; +}; + +} // namespace Render + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_BACKENDNODE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/blitframebuffer_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/blitframebuffer_p.h new file mode 100644 index 0000000..796c223 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/blitframebuffer_p.h @@ -0,0 +1,102 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_BLITFRAMEBUFFER_P_H +#define QT3DRENDER_RENDER_BLITFRAMEBUFFER_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +namespace Render { + +class Q_AUTOTEST_EXPORT BlitFramebuffer : public FrameGraphNode +{ +public: + BlitFramebuffer(); + + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) override; + + Qt3DCore::QNodeId sourceRenderTargetId() const; + + Qt3DCore::QNodeId destinationRenderTargetId() const; + + QRect sourceRect() const; + + QRect destinationRect() const; + + Qt3DRender::QRenderTargetOutput::AttachmentPoint sourceAttachmentPoint() const; + + Qt3DRender::QRenderTargetOutput::AttachmentPoint destinationAttachmentPoint() const; + + QBlitFramebuffer::InterpolationMethod interpolationMethod() const; + +private: + void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) final; + + Qt3DCore::QNodeId m_sourceRenderTargetId; + Qt3DCore::QNodeId m_destinationRenderTargetId; + QRect m_sourceRect; + QRect m_destinationRect; + Qt3DRender::QRenderTargetOutput::AttachmentPoint m_sourceAttachmentPoint; + Qt3DRender::QRenderTargetOutput::AttachmentPoint m_destinationAttachmentPoint; + QBlitFramebuffer::InterpolationMethod m_interpolationMethod; +}; + +} // namespace Render + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_BLITFRAMEBUFFER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/boundingsphere_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/boundingsphere_p.h new file mode 100644 index 0000000..bcffbaa --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/boundingsphere_p.h @@ -0,0 +1,78 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_BOUNDINGSPHERE_P_H +#define QT3DRENDER_BOUNDINGSPHERE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { +namespace RayCasting { + +class QT3DRENDERSHARED_EXPORT BoundingSphere : public QBoundingVolume +{ +public: + BoundingSphere(); + ~BoundingSphere(); + + virtual Vector3D center() const = 0; + virtual float radius() const = 0; +}; + +} // namespace RayCasting +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_BOUNDINGSPHERE_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/boundingvolumedebug_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/boundingvolumedebug_p.h new file mode 100644 index 0000000..d4d881c --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/boundingvolumedebug_p.h @@ -0,0 +1,96 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_BOUNDINGVOLUMEDEBUG_H +#define QT3DRENDER_RENDER_BOUNDINGVOLUMEDEBUG_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#if 0 + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +namespace Render { + +class Q_AUTOTEST_EXPORT BoundingVolumeDebug : public BackendNode +{ +public: + BoundingVolumeDebug(); + ~BoundingVolumeDebug(); + + void cleanup(); + void updateFromPeer(Qt3DCore::QNode *peer) final; + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) final; + + inline bool isRecursive() const { return m_recursive; } + inline float radius() const { return m_radius; } + inline QVector3D center() const { return m_center; } + + void setRadius(float radius); + void setCenter(const QVector3D ¢er); + +private: + bool m_recursive; + float m_radius; + QVector3D m_center; +}; + +} // Render + +} // Qt3DRender + +QT_END_NAMESPACE + +#endif + +#endif // QT3DRENDER_RENDER_BOUNDINGVOLUMEDEBUG_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/buffer_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/buffer_p.h new file mode 100644 index 0000000..9a17159 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/buffer_p.h @@ -0,0 +1,122 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_BUFFER_H +#define QT3DRENDER_RENDER_BUFFER_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +struct QBufferUpdate; + +namespace Render { + +class BufferManager; + +class Q_AUTOTEST_EXPORT Buffer : public BackendNode +{ +public: + Buffer(); + ~Buffer(); + void cleanup(); + + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) override; + + void setManager(BufferManager *manager); + void executeFunctor(); + void updateDataFromGPUToCPU(QByteArray data); + inline QBuffer::UsageType usage() const { return m_usage; } + inline QByteArray data() const { return m_data; } + inline QVector &pendingBufferUpdates() { return m_bufferUpdates; } + inline bool isDirty() const { return m_bufferDirty; } + inline QBufferDataGeneratorPtr dataGenerator() const { return m_functor; } + inline bool isSyncData() const { return m_syncData; } + inline QBuffer::AccessType access() const { return m_access; } + void unsetDirty(); + +private: + void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) final; + void forceDataUpload(); + + QBuffer::UsageType m_usage; + QByteArray m_data; + QVector m_bufferUpdates; + bool m_bufferDirty; + bool m_syncData; + QBuffer::AccessType m_access; + QBufferDataGeneratorPtr m_functor; + BufferManager *m_manager; +}; + +class BufferFunctor : public Qt3DCore::QBackendNodeMapper +{ +public: + explicit BufferFunctor(AbstractRenderer *renderer, BufferManager *manager); + Qt3DCore::QBackendNode *create(const Qt3DCore::QNodeCreatedChangeBasePtr &change) const override; + Qt3DCore::QBackendNode *get(Qt3DCore::QNodeId id) const override; + void destroy(Qt3DCore::QNodeId id) const override; +private: + BufferManager *m_manager; + AbstractRenderer *m_renderer; +}; + +} // namespace Render + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_BUFFER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/buffercapture_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/buffercapture_p.h new file mode 100644 index 0000000..d638f35 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/buffercapture_p.h @@ -0,0 +1,75 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Juan José Casafranca +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef BUFFERCAPTURE_P_H +#define BUFFERCAPTURE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +namespace Render { + +class Q_AUTOTEST_EXPORT BufferCapture : public FrameGraphNode +{ +public: + BufferCapture(); +}; + +} //Render + +} //Qt3DRender + +QT_END_NAMESPACE + +#endif // BUFFERCAPTURE_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/buffermanager_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/buffermanager_p.h new file mode 100644 index 0000000..df97a51 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/buffermanager_p.h @@ -0,0 +1,97 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Paul Lemire +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_BUFFERMANAGER_H +#define QT3DRENDER_RENDER_BUFFERMANAGER_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +namespace Render { + +class Q_AUTOTEST_EXPORT BufferManager : public Qt3DCore::QResourceManager< + Buffer, + Qt3DCore::QNodeId, + Qt3DCore::ObjectLevelLockingPolicy> +{ +public: + BufferManager(); + ~BufferManager(); + + // Aspect Thread + void addDirtyBuffer(Qt3DCore::QNodeId bufferId); + QVector takeDirtyBuffers(); + + // Aspect Thread + void addBufferReference(Qt3DCore::QNodeId bufferId); + void removeBufferReference(Qt3DCore::QNodeId bufferId); + + // Render Thread (no concurrent access) + QVector takeBuffersToRelease(); + +private: + QVector m_dirtyBuffers; + QHash m_bufferReferences; + QMutex m_mutex; +}; + +} // namespace Render +} // namespace Qt3DRender + +Q_DECLARE_RESOURCE_INFO(Qt3DRender::Render::Buffer, Q_REQUIRES_CLEANUP) + +QT_END_NAMESPACE + + +#endif // QT3DRENDER_RENDER_BUFFERMANAGER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/bufferutils_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/bufferutils_p.h new file mode 100644 index 0000000..2bb35fa --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/bufferutils_p.h @@ -0,0 +1,115 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Paul Lemire paul.lemire350@gmail.com +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_BUFFERUTILS_P_H +#define QT3DRENDER_RENDER_BUFFERUTILS_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + + +namespace Qt3DRender { + +namespace Render { + +class GeometryRenderer; +class NodeManagers; +class Attribute; +class Buffer; + +struct BufferInfo +{ + BufferInfo() + : type(QAttribute::VertexBaseType::Float) + , dataSize(0) + , count(0) + , byteStride(0) + , byteOffset(0) + {} + + QByteArray data; + QAttribute::VertexBaseType type; + uint dataSize; + uint count; + uint byteStride; + uint byteOffset; +}; + + +namespace BufferTypeInfo { + + template struct EnumToType; + template <> struct EnumToType { typedef const char type; }; + template <> struct EnumToType { typedef const uchar type; }; + template <> struct EnumToType { typedef const short type; }; + template <> struct EnumToType { typedef const ushort type; }; + template <> struct EnumToType { typedef const int type; }; + template <> struct EnumToType { typedef const uint type; }; + template <> struct EnumToType { typedef const float type; }; + template <> struct EnumToType { typedef const double type; }; + + template + typename EnumToType::type *castToType(const QByteArray &u, uint byteOffset) + { + return reinterpret_cast< typename EnumToType::type *>(u.constData() + byteOffset); + } + +} // namespace BufferTypeInfo + +} // namespace Render + +} // namespace Qt3DRender + +QT_END_NAMESPACE + + +#endif // QT3DRENDER_RENDER_BUFFERUTILS_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/buffervisitor_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/buffervisitor_p.h new file mode 100644 index 0000000..f3863f0 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/buffervisitor_p.h @@ -0,0 +1,304 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_BUFFERVISITOR_P_H +#define QT3DRENDER_RENDER_BUFFERVISITOR_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { +class QEntity; +} + +namespace Qt3DRender { +namespace Render { + + +template +class Q_AUTOTEST_EXPORT BufferVisitor +{ +public: + explicit BufferVisitor(NodeManagers *manager) + : m_manager(manager) + { + } + virtual ~BufferVisitor() { } + + virtual void visit(uint ndx, ValueType x) { + Q_UNUSED(ndx); Q_UNUSED(x); + } + virtual void visit(uint ndx, ValueType x, ValueType y) { + Q_UNUSED(ndx); Q_UNUSED(x); Q_UNUSED(y); + } + virtual void visit(uint ndx, ValueType x, ValueType y, ValueType z) { + Q_UNUSED(ndx); Q_UNUSED(x); Q_UNUSED(y); Q_UNUSED(z); + } + virtual void visit(uint ndx, ValueType x, ValueType y, ValueType z, ValueType w) { + Q_UNUSED(ndx); Q_UNUSED(x); Q_UNUSED(y); Q_UNUSED(z); Q_UNUSED(w); + } + + template + void traverseCoordinateIndexed(VertexBufferType *vertexBuffer, + IndexBufferType *indexBuffer, + int vertexByteStride, + int drawVertexCount, + bool primitiveRestartEnabled, + int primitiveRestartIndex) + { + switch (dataSize) { + case 1: traverseCoordinates1Indexed(vertexBuffer, vertexByteStride, indexBuffer, drawVertexCount, + primitiveRestartEnabled, primitiveRestartIndex); + break; + case 2: traverseCoordinates2Indexed(vertexBuffer, vertexByteStride, indexBuffer, drawVertexCount, + primitiveRestartEnabled, primitiveRestartIndex); + break; + case 3: traverseCoordinates3Indexed(vertexBuffer, vertexByteStride, indexBuffer, drawVertexCount, + primitiveRestartEnabled, primitiveRestartIndex); + break; + case 4: traverseCoordinates4Indexed(vertexBuffer, vertexByteStride, indexBuffer, drawVertexCount, + primitiveRestartEnabled, primitiveRestartIndex); + break; + default: Q_UNREACHABLE(); + } + } + + bool apply(Qt3DRender::Render::Attribute *attribute, + Qt3DRender::Render::Attribute *indexAttribute, + int drawVertexCount, + bool primitiveRestartEnabled, + int primitiveRestartIndex) + { + if (attribute->vertexBaseType() != VertexBaseType) + return false; + if (attribute->vertexSize() < dataSize) + return false; + + auto data = m_manager->lookupResource(attribute->bufferId())->data(); + auto vertexBuffer = BufferTypeInfo::castToType(data, attribute->byteOffset()); + + if (indexAttribute) { + auto indexData = m_manager->lookupResource(indexAttribute->bufferId())->data(); + switch (indexAttribute->vertexBaseType()) { + case QAttribute::UnsignedShort: { + auto indexBuffer = BufferTypeInfo::castToType(indexData, indexAttribute->byteOffset()); + traverseCoordinateIndexed(vertexBuffer, indexBuffer, attribute->byteStride(), drawVertexCount, + primitiveRestartEnabled, primitiveRestartIndex); + break; + } + case QAttribute::UnsignedInt: { + auto indexBuffer = BufferTypeInfo::castToType(indexData, indexAttribute->byteOffset()); + traverseCoordinateIndexed(vertexBuffer, indexBuffer, attribute->byteStride(), drawVertexCount, + primitiveRestartEnabled, primitiveRestartIndex); + break; + } + case QAttribute::UnsignedByte: { + auto indexBuffer = BufferTypeInfo::castToType(indexData, indexAttribute->byteOffset()); + traverseCoordinateIndexed(vertexBuffer, indexBuffer, attribute->byteStride(), drawVertexCount, + primitiveRestartEnabled, primitiveRestartIndex); + break; + } + default: Q_UNREACHABLE(); + } + } else { + switch (dataSize) { + case 1: traverseCoordinates1(vertexBuffer, attribute->byteStride(), drawVertexCount); break; + case 2: traverseCoordinates2(vertexBuffer, attribute->byteStride(), drawVertexCount); break; + case 3: traverseCoordinates3(vertexBuffer, attribute->byteStride(), drawVertexCount); break; + case 4: traverseCoordinates4(vertexBuffer, attribute->byteStride(), drawVertexCount); break; + default: Q_UNREACHABLE(); + } + } + + return true; + } + +protected: + + template + void traverseCoordinates1(Coordinate *coordinates, + const uint byteStride, + const uint count) + { + const uint stride = byteStride / sizeof(Coordinate); + for (uint ndx = 0; ndx < count; ++ndx) { + visit(ndx, coordinates[0]); + coordinates += stride; + } + } + + template + void traverseCoordinates1Indexed(Coordinate *coordinates, + const uint byteStride, + IndexElem *indices, + const uint count, + bool primitiveRestartEnabled, + int primitiveRestartIndex) + { + const uint stride = byteStride / sizeof(Coordinate); + for (uint i = 0; i < count; ++i) { + if (!primitiveRestartEnabled || (int) indices[i] != primitiveRestartIndex) { + const uint n = stride * indices[i]; + visit(i, coordinates[n]); + } + } + } + + template + void traverseCoordinates2(Coordinate *coordinates, + const uint byteStride, + const uint count) + { + const uint stride = byteStride ? byteStride / sizeof(Coordinate) : 2; + for (uint ndx = 0; ndx < count; ++ndx) { + visit(ndx, coordinates[0], coordinates[1]); + coordinates += stride; + } + } + + + template + void traverseCoordinates2Indexed(Coordinate *coordinates, + const uint byteStride, + IndexElem *indices, + const uint count, + bool primitiveRestartEnabled, + int primitiveRestartIndex) + { + const uint stride = byteStride ? byteStride / sizeof(Coordinate) : 2; + for (uint i = 0; i < count; ++i) { + if (!primitiveRestartEnabled || (int) indices[i] != primitiveRestartIndex) { + const uint n = stride * indices[i]; + visit(i, coordinates[n], coordinates[n + 1]); + } + } + } + + template + void traverseCoordinates3(Coordinate *coordinates, + const uint byteStride, + const uint count) + { + const uint stride = byteStride ? byteStride / sizeof(Coordinate) : 3; + for (uint ndx = 0; ndx < count; ++ndx) { + visit(ndx, coordinates[0], coordinates[1], coordinates[2]); + coordinates += stride; + } + } + + template + void traverseCoordinates3Indexed(Coordinate *coordinates, + const uint byteStride, + IndexElem *indices, + const uint count, + bool primitiveRestartEnabled, + int primitiveRestartIndex) + { + const uint stride = byteStride ? byteStride / sizeof(Coordinate) : 3; + for (uint i = 0; i < count; ++i) { + if (!primitiveRestartEnabled || (int) indices[i] != primitiveRestartIndex) { + const uint n = stride * indices[i]; + visit(i, coordinates[n], coordinates[n + 1], coordinates[n + 2]); + } + } + } + + template + void traverseCoordinates4(Coordinate *coordinates, + const uint byteStride, + const uint count) + { + const uint stride = byteStride ? byteStride / sizeof(Coordinate) : 4; + for (uint ndx = 0; ndx < count; ++ndx) { + visit(ndx, coordinates[0], coordinates[1], coordinates[2], coordinates[3]); + coordinates += stride; + } + } + + template + void traverseCoordinates4Indexed(Coordinate *coordinates, + const uint byteStride, + IndexElem *indices, + const uint count, + bool primitiveRestartEnabled, + int primitiveRestartIndex) + { + const uint stride = byteStride ? byteStride / sizeof(Coordinate) : 4; + for (uint i = 0; i < count; ++i) { + if (!primitiveRestartEnabled || (int) indices[i] != primitiveRestartIndex) { + const uint n = stride * indices[i]; + visit(i, coordinates[n], coordinates[n + 1], coordinates[n + 2], coordinates[n + 3]); + } + } + } + + NodeManagers *m_manager; +}; + +typedef BufferVisitor Buffer3fVisitor; + +} // namespace Render + +} // namespace Qt3DRender + +QT_END_NAMESPACE + + +#endif // QT3DRENDER_RENDER_BUFFERVISITOR_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/calcboundingvolumejob_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/calcboundingvolumejob_p.h new file mode 100644 index 0000000..41a8bd6 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/calcboundingvolumejob_p.h @@ -0,0 +1,89 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Copyright (C) 2016 The Qt Company Ltd and/or its subsidiary(-ies). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_CALCBOUNDINGVOLUMEJOB_H +#define QT3DRENDER_RENDER_CALCBOUNDINGVOLUMEJOB_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { +namespace Render { + +class NodeManagers; +class Entity; + +class QT3DRENDERSHARED_PRIVATE_EXPORT CalculateBoundingVolumeJob : public Qt3DCore::QAspectJob +{ +public: + explicit CalculateBoundingVolumeJob(); + + void setRoot(Entity *node); + void setManagers(NodeManagers *manager); + void run() override; + +private: + NodeManagers *m_manager; + Entity *m_node; +}; + +typedef QSharedPointer CalculateBoundingVolumeJobPtr; + +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_CALCBOUNDINGVOLUMEJOB_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/calcgeometrytrianglevolumes_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/calcgeometrytrianglevolumes_p.h new file mode 100644 index 0000000..205a23b --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/calcgeometrytrianglevolumes_p.h @@ -0,0 +1,84 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_CALCGEOMETRYTRIANGLEVOLUMES_P_H +#define QT3DRENDER_RENDER_CALCGEOMETRYTRIANGLEVOLUMES_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { +namespace Render { + +class Geometry; +class NodeManagers; + +class Q_AUTOTEST_EXPORT CalcGeometryTriangleVolumes : public Qt3DCore::QAspectJob +{ +public: + explicit CalcGeometryTriangleVolumes(const Qt3DCore::QNodeId geometryRendererId, NodeManagers *manager); + void run() override; + +private: + Qt3DCore::QNodeId m_geometryRendererId; + NodeManagers *m_manager; +}; + +typedef QSharedPointer CalcGeometryTriangleVolumesPtr; + +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_CALCGEOMETRYTRIANGLEVOLUMES_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/cameralens_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/cameralens_p.h new file mode 100644 index 0000000..d00358f --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/cameralens_p.h @@ -0,0 +1,123 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_CAMERALENS_H +#define QT3DRENDER_RENDER_CAMERALENS_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +namespace Render { + +class EntityManager; +class CameraManager; +class Sphere; + +class CameraLensFunctor : public Qt3DCore::QBackendNodeMapper +{ +public: + explicit CameraLensFunctor(AbstractRenderer *renderer, QRenderAspect *renderAspect); + Qt3DCore::QBackendNode *create(const Qt3DCore::QNodeCreatedChangeBasePtr &change) const override; + Qt3DCore::QBackendNode *get(Qt3DCore::QNodeId id) const override; + void destroy(Qt3DCore::QNodeId id) const override; + +private: + CameraManager *m_manager; + AbstractRenderer *m_renderer; + QRenderAspect *m_renderAspect; +}; + +class QT3DRENDERSHARED_PRIVATE_EXPORT CameraLens : public BackendNode +{ +public: + CameraLens(); + ~CameraLens(); + void cleanup(); + + void setRenderAspect(QRenderAspect* renderAspect); + + Matrix4x4 viewMatrix(const Matrix4x4 &worldTransform); + + void setProjection(const Matrix4x4 &projection); + inline Matrix4x4 projection() const { return m_projection; } + + void setExposure(float exposure); + inline float exposure() const { return m_exposure; } + + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) override; + void notifySceneBoundingVolume(const Sphere &sphere, Qt3DCore::QNodeCommand::CommandId commandId); + + static bool viewMatrixForCamera(EntityManager *manager, Qt3DCore::QNodeId cameraId, + Matrix4x4 &viewMatrix, Matrix4x4 &projectionMatrix); + +private: + void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) final; + void computeSceneBoundingVolume(Qt3DCore::QNodeId entityId, + Qt3DCore::QNodeId cameraId, + Qt3DCore::QNodeCommand::CommandId commandId); + + QRenderAspect *m_renderAspect; + Qt3DCore::QNodeCommand::CommandId m_pendingViewAllCommand; + Matrix4x4 m_projection; + float m_exposure; +}; + +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_CAMERALENS_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/cameraselectornode_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/cameraselectornode_p.h new file mode 100644 index 0000000..0e532d6 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/cameraselectornode_p.h @@ -0,0 +1,86 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_CAMERASELECTOR_H +#define QT3DRENDER_RENDER_CAMERASELECTOR_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QEntity; +class QCameraSelector; + +namespace Render { + +class Renderer; + +class CameraSelector : public FrameGraphNode +{ +public: + CameraSelector(); + + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) override; + Qt3DCore::QNodeId cameraUuid() const; + +private: + void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) final; + + Qt3DCore::QNodeId m_cameraUuid; +}; + +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_CAMERASELECTOR_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/clearbuffers_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/clearbuffers_p.h new file mode 100644 index 0000000..e3c56c1 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/clearbuffers_p.h @@ -0,0 +1,106 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_CLEARBUFFERS_P_H +#define QT3DRENDER_RENDER_CLEARBUFFERS_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +namespace Render { + +class FrameGraphManager; + +class ClearBuffers : public FrameGraphNode +{ +public: + ClearBuffers(); + + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) override; + + QClearBuffers::BufferType type() const; + float clearDepthValue() const; + int clearStencilValue() const; + Qt3DCore::QNodeId bufferId() const; + + // in the backend we store this as a QVector4D, as the clearBuffer + // functions do support all float values (also those not clamped to [0,1]) + // (for non-clamped float or int buffer types) + // we don't support this in the frontend yet, but let's keep our options for now + // and avoid QColor->QVector4D conversion every frame. + QVector4D clearColor() const; + + // some clear operations only accept clamped values + QColor clearColorAsColor() const; + + bool clearsAllColorBuffers() const; + +private: + void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) final; + + QClearBuffers::BufferType m_type; + QVector4D m_clearColor; + QColor m_clearColorAsColor; + float m_clearDepthValue; + int m_clearStencilValue; + Qt3DCore::QNodeId m_colorBufferId; +}; + +} // namespace Render + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_CLEARBUFFERS_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/commandexecuter_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/commandexecuter_p.h new file mode 100644 index 0000000..2d90bf4 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/commandexecuter_p.h @@ -0,0 +1,95 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Paul Lemire +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_DEBUG_COMMANDEXECUTER_H +#define QT3DRENDER_DEBUG_COMMANDEXECUTER_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { + +namespace Debug { +class AsynchronousCommandReply; +} // Debug + +} // Qt3DCore + +namespace Qt3DRender { + +namespace Render { +class Renderer; +class RenderView; +} // Render + +namespace Debug { + +class CommandExecuter +{ +public: + explicit CommandExecuter(Render::Renderer *renderer); + + void performAsynchronousCommandExecution(const QVector &views); + + QVariant executeCommand(const QStringList &args); + +private: + Render::Renderer *m_renderer; + QVector m_pendingCommands; + QMutex m_pendingCommandsMutex; +}; + +} // Debug + +} // Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_DEBUG_COMMANDEXECUTER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/commandthread_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/commandthread_p.h new file mode 100644 index 0000000..0508675 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/commandthread_p.h @@ -0,0 +1,115 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_COMMANDTHREAD_P_H +#define QT3DRENDER_RENDER_COMMANDTHREAD_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +class QOpenGLContext; + +namespace Qt3DRender { + +namespace Render { + +class Renderer; +class GLCommand; +class OffscreenSurfaceHelper; +class GraphicsContext; +class ShaderCache; + +class CommandThread : public QThread +{ + Q_OBJECT +public: + explicit CommandThread(Renderer *renderer); + ~CommandThread(); + + Render::Renderer* renderer() const { return m_renderer; } + + void setShaderCache(ShaderCache *shaderCache); + ShaderCache *shaderCache() const { return m_shaderCache; } + + void initialize(QOpenGLContext *mainContext, OffscreenSurfaceHelper *offsreenSurfaceHelper); + void shutdown(); + + void executeCommand(GLCommand *command); + +private: + void run() override; + void executeCommandInternal(Qt3DRender::Render::GLCommand *command); + +private: + Renderer* m_renderer; + QSemaphore m_waitForStartSemaphore; + QSemaphore m_initializedSemaphore; + QSemaphore m_commandRequestedSemaphore; + QSemaphore m_commandExecutionSemaphore; + QMutex m_blockingCallerMutex; + QOpenGLContext *m_mainContext; + ShaderCache *m_shaderCache; + OffscreenSurfaceHelper *m_offsreenSurfaceHelper; + QScopedPointer m_localContext; + QScopedPointer m_graphicsContext; + GLCommand *m_currentCommand; + QAtomicInt m_running; +}; + +} // Render + +} // Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_COMMANDTHREAD_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/computecommand_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/computecommand_p.h new file mode 100644 index 0000000..fb8ca39 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/computecommand_p.h @@ -0,0 +1,88 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_COMPUTECOMMAND_P_H +#define QT3DRENDER_RENDER_COMPUTECOMMAND_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +namespace Render { + +class ComputeJobPrivate; + +class Q_AUTOTEST_EXPORT ComputeCommand : public BackendNode +{ +public: + ComputeCommand(); + ~ComputeCommand(); + + void cleanup(); + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) override; + + inline int x() const Q_DECL_NOTHROW { return m_workGroups[0]; } + inline int y() const Q_DECL_NOTHROW { return m_workGroups[1]; } + inline int z() const Q_DECL_NOTHROW { return m_workGroups[2]; } + +private: + void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) override; + int m_workGroups[3]; +}; + +} // Render + +} // Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_COMPUTECOMMAND_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/computefilteredboundingvolumejob_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/computefilteredboundingvolumejob_p.h new file mode 100644 index 0000000..ed336fe --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/computefilteredboundingvolumejob_p.h @@ -0,0 +1,91 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_COMPUTEFILTEREDBOUNDINGVOLUMEJOB_H +#define QT3DRENDER_RENDER_COMPUTEFILTEREDBOUNDINGVOLUMEJOB_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { +namespace Render { + +class Entity; +class Sphere; + +class QT3DRENDERSHARED_PRIVATE_EXPORT ComputeFilteredBoundingVolumeJob : public Qt3DCore::QAspectJob +{ +public: + ComputeFilteredBoundingVolumeJob(); + + void setRoot(Entity *root); + void ignoreSubTree(Entity *node); + void run() override; + +protected: + virtual void finished(const Qt3DRender::Render::Sphere &sphere); + +private: + Entity *m_root; + Entity *m_ignoreSubTree; +}; + +typedef QSharedPointer ComputeFilteredBoundingVolumeJobPtr; + +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_COMPUTEFILTEREDBOUNDINGVOLUMEJOB_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/dispatchcompute_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/dispatchcompute_p.h new file mode 100644 index 0000000..aa88a35 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/dispatchcompute_p.h @@ -0,0 +1,88 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_DISPATCHCOMPUTE_H +#define QT3DRENDER_RENDER_DISPATCHCOMPUTE_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +namespace Render { + +class DispatchCompute : public FrameGraphNode +{ +public: + DispatchCompute(); + ~DispatchCompute(); + + void cleanup(); + + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) override; + inline int x() const Q_DECL_NOTHROW { return m_workGroups[0]; } + inline int y() const Q_DECL_NOTHROW { return m_workGroups[1]; } + inline int z() const Q_DECL_NOTHROW { return m_workGroups[2]; } + +private: + void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) final; + + int m_workGroups[3]; +}; + +} // Render + +} // Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_DISPATCHCOMPUTE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/effect_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/effect_p.h new file mode 100644 index 0000000..87ff4a8 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/effect_p.h @@ -0,0 +1,92 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_EFFECT_H +#define QT3DRENDER_RENDER_EFFECT_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QTechnique; + +namespace Render { + +class Q_AUTOTEST_EXPORT Effect : public BackendNode +{ +public: + Effect(); + ~Effect(); + void cleanup(); + + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) override; + void appendRenderTechnique(Qt3DCore::QNodeId t); + + QVector techniques() const; + QVector parameters() const; + +private: + void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) final; + + QVector m_techniques; + ParameterPack m_parameterPack; +}; + +} // namespace Render + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_EFFECT_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/entity_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/entity_p.h new file mode 100644 index 0000000..afa7dbf --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/entity_p.h @@ -0,0 +1,325 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Copyright (C) 2016 The Qt Company Ltd and/or its subsidiary(-ies). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_ENTITY_H +#define QT3DRENDER_RENDER_ENTITY_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +class QMatrix4x4; + +namespace Qt3DCore { +class QNode; +class QEntity; +class QComponent; +} + +namespace Qt3DRender { + +class QRenderAspect; + +namespace Render { + +class Sphere; +class Renderer; +class NodeManagers; + +class Q_AUTOTEST_EXPORT Entity : public BackendNode +{ +public: + Entity(); + ~Entity(); + void cleanup(); + + void setParentHandle(HEntity parentHandle); + void setNodeManagers(NodeManagers *manager); + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) override; + + void dump() const; + + void setHandle(HEntity handle); + HEntity handle() const { return m_handle; } + Entity *parent() const; + HEntity parentHandle() const { return m_parentHandle; } + Qt3DCore::QNodeId parentEntityId() const { return m_parentEntityId; } + + void clearEntityHierarchy(); + void rebuildEntityHierarchy(); + + void appendChildHandle(HEntity childHandle); + void removeChildHandle(HEntity childHandle) { m_childrenHandles.removeOne(childHandle); } + QVector childrenHandles() const { return m_childrenHandles; } + QVector children() const; + bool hasChildren() const { return !m_childrenHandles.empty(); } + + Matrix4x4 *worldTransform(); + const Matrix4x4 *worldTransform() const; + Sphere *localBoundingVolume() const { return m_localBoundingVolume.data(); } + Sphere *worldBoundingVolume() const { return m_worldBoundingVolume.data(); } + Sphere *worldBoundingVolumeWithChildren() const { return m_worldBoundingVolumeWithChildren.data(); } + + void addComponent(Qt3DCore::QNodeIdTypePair idAndType); + void removeComponent(Qt3DCore::QNodeId nodeId); + + bool isBoundingVolumeDirty() const; + void unsetBoundingVolumeDirty(); + + void setTreeEnabled(bool enabled) { m_treeEnabled = enabled; } + bool isTreeEnabled() const { return m_treeEnabled; } + + Qt3DCore::QNodeIdVector layerIds() const { return m_layerComponents + m_recursiveLayerComponents; } + void addRecursiveLayerId(const Qt3DCore::QNodeId layerId); + void removeRecursiveLayerId(const Qt3DCore::QNodeId layerId); + void clearRecursiveLayerIds() { m_recursiveLayerComponents.clear(); } + + template + Qt3DCore::QHandle componentHandle() const + { + return Qt3DCore::QHandle(); + } + + template + QVector > componentsHandle() const + { + return QVector >(); + } + + template + Backend *renderComponent() const + { + return nullptr; + } + + template + QVector renderComponents() const + { + return QVector(); + } + + template + Qt3DCore::QNodeId componentUuid() const + { + return Qt3DCore::QNodeId(); + } + + template + QVector componentsUuid() const + { + return QVector(); + } + + template + bool containsComponentsOfType() const + { + return !componentUuid().isNull(); + } + + template + bool containsComponentsOfType() const + { + return containsComponentsOfType() && containsComponentsOfType(); + } + + +private: + void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) final; + + NodeManagers *m_nodeManagers; + HEntity m_handle; + HEntity m_parentHandle; + QVector m_childrenHandles; + + Qt3DCore::QNodeId m_parentEntityId; + + HMatrix m_worldTransform; + QSharedPointer m_localBoundingVolume; + QSharedPointer m_worldBoundingVolume; + QSharedPointer m_worldBoundingVolumeWithChildren; + + // Handles to Components + Qt3DCore::QNodeId m_transformComponent; + Qt3DCore::QNodeId m_materialComponent; + Qt3DCore::QNodeId m_cameraComponent; + QVector m_layerComponents; + QVector m_levelOfDetailComponents; + QVector m_rayCasterComponents; + QVector m_shaderDataComponents; + QVector m_lightComponents; + QVector m_environmentLightComponents; + Qt3DCore::QNodeId m_geometryRendererComponent; + Qt3DCore::QNodeId m_objectPickerComponent; + Qt3DCore::QNodeId m_boundingVolumeDebugComponent; + Qt3DCore::QNodeId m_computeComponent; + Qt3DCore::QNodeId m_armatureComponent; + + // Includes recursive layers + Qt3DCore::QNodeIdVector m_recursiveLayerComponents; + + QString m_objectName; + bool m_boundingDirty; + // true only if this and all parent nodes are enabled + bool m_treeEnabled; +}; + +#define ENTITY_COMPONENT_TEMPLATE_SPECIALIZATION(Type, Handle) \ + /* Handle */ \ + template<> \ + QT3DRENDERSHARED_PRIVATE_EXPORT Handle Entity::componentHandle() const; \ + /* Component */ \ + template<> \ + QT3DRENDERSHARED_PRIVATE_EXPORT Type *Entity::renderComponent() const; \ + /* Uuid */ \ + template<> \ + QT3DRENDERSHARED_PRIVATE_EXPORT Qt3DCore::QNodeId Entity::componentUuid() const; + + +#define ENTITY_COMPONENT_LIST_TEMPLATE_SPECIALIZATION(Type, Handle) \ + /* Handle */ \ + template<> \ + QT3DRENDERSHARED_PRIVATE_EXPORT QVector Entity::componentsHandle() const; \ + /* Component */ \ + template<> \ + QT3DRENDERSHARED_PRIVATE_EXPORT QVector Entity::renderComponents() const; \ + /* Uuid */ \ + template<> \ + QT3DRENDERSHARED_PRIVATE_EXPORT Qt3DCore::QNodeIdVector Entity::componentsUuid() const; + +#define ENTITY_COMPONENT_TEMPLATE_IMPL(Type, Handle, Manager, variable) \ + /* Handle */ \ + template<> \ + Handle Entity::componentHandle() const \ + { \ + return m_nodeManagers->lookupHandle(variable); \ + } \ + /* Component */ \ + template<> \ + Type *Entity::renderComponent() const \ + { \ + return m_nodeManagers->lookupResource(variable); \ + } \ + /* Uuid */ \ + template<> \ + Qt3DCore::QNodeId Entity::componentUuid() const \ + { \ + return variable; \ + } + +#define ENTITY_COMPONENT_LIST_TEMPLATE_IMPL(Type, Handle, Manager, variable) \ + /* Handle */ \ + template<> \ + QVector Entity::componentsHandle() const \ + { \ + Manager *manager = m_nodeManagers->manager(); \ + QVector entries; \ + entries.reserve(variable.size()); \ + for (const QNodeId id : variable) \ + entries.push_back(manager->lookupHandle(id)); \ + return entries; \ + } \ + /* Component */ \ + template<> \ + QVector Entity::renderComponents() const \ + { \ + Manager *manager = m_nodeManagers->manager(); \ + QVector entries; \ + entries.reserve(variable.size()); \ + for (const QNodeId id : variable) \ + entries.push_back(manager->lookupResource(id)); \ + return entries; \ + } \ + /* Uuid */ \ + template<> \ + Qt3DCore::QNodeIdVector Entity::componentsUuid() const \ + { \ + return variable; \ + } + +ENTITY_COMPONENT_TEMPLATE_SPECIALIZATION(Material, HMaterial) +ENTITY_COMPONENT_TEMPLATE_SPECIALIZATION(CameraLens, HCamera) +ENTITY_COMPONENT_TEMPLATE_SPECIALIZATION(Transform, HTransform) +ENTITY_COMPONENT_TEMPLATE_SPECIALIZATION(GeometryRenderer, HGeometryRenderer) +ENTITY_COMPONENT_TEMPLATE_SPECIALIZATION(ObjectPicker, HObjectPicker) +ENTITY_COMPONENT_TEMPLATE_SPECIALIZATION(ComputeCommand, HComputeCommand) +ENTITY_COMPONENT_TEMPLATE_SPECIALIZATION(Armature, HArmature) +ENTITY_COMPONENT_LIST_TEMPLATE_SPECIALIZATION(Layer, HLayer) +ENTITY_COMPONENT_LIST_TEMPLATE_SPECIALIZATION(LevelOfDetail, HLevelOfDetail) +ENTITY_COMPONENT_LIST_TEMPLATE_SPECIALIZATION(RayCaster, HRayCaster) +ENTITY_COMPONENT_LIST_TEMPLATE_SPECIALIZATION(ShaderData, HShaderData) +ENTITY_COMPONENT_LIST_TEMPLATE_SPECIALIZATION(Light, HLight) +ENTITY_COMPONENT_LIST_TEMPLATE_SPECIALIZATION(EnvironmentLight, HEnvironmentLight) + +class RenderEntityFunctor : public Qt3DCore::QBackendNodeMapper +{ +public: + explicit RenderEntityFunctor(AbstractRenderer *renderer, NodeManagers *manager); + Qt3DCore::QBackendNode *create(const Qt3DCore::QNodeCreatedChangeBasePtr &change) const override; + Qt3DCore::QBackendNode *get(Qt3DCore::QNodeId id) const override; + void destroy(Qt3DCore::QNodeId id) const override; + +private: + NodeManagers *m_nodeManagers; + AbstractRenderer *m_renderer; +}; + +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_ENTITY_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/environmentlight_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/environmentlight_p.h new file mode 100644 index 0000000..00d49d2 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/environmentlight_p.h @@ -0,0 +1,81 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_ENVIRONMENTLIGHT_P_H +#define QT3DRENDER_RENDER_ENVIRONMENTLIGHT_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +namespace Render { + +class Q_AUTOTEST_EXPORT EnvironmentLight : public BackendNode +{ +public: + Qt3DCore::QNodeId shaderData() const; + +private: + void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) final; + + Qt3DCore::QNodeId m_shaderDataId; +}; + +} // namespace Render + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +Q_DECLARE_METATYPE(Qt3DRender::Render::EnvironmentLight*) // LCOV_EXCL_LINE + +#endif // QT3DRENDER_RENDER_ENVIRONMENTLIGHT_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/expandboundingvolumejob_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/expandboundingvolumejob_p.h new file mode 100644 index 0000000..f468cf8 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/expandboundingvolumejob_p.h @@ -0,0 +1,85 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_EXPANDBOUNDINGVOLUMEJOB_H +#define QT3DRENDER_RENDER_EXPANDBOUNDINGVOLUMEJOB_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { +namespace Render { + +class Entity; + +class QT3DRENDERSHARED_PRIVATE_EXPORT ExpandBoundingVolumeJob : public Qt3DCore::QAspectJob +{ +public: + ExpandBoundingVolumeJob(); + + void setRoot(Entity *root); + void run() override; + +private: + Entity *m_node; +}; + +typedef QSharedPointer ExpandBoundingVolumeJobPtr; + +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_EXPANDBOUNDINGVOLUMEJOB_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/filtercompatibletechniquejob_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/filtercompatibletechniquejob_p.h new file mode 100644 index 0000000..4f7a714 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/filtercompatibletechniquejob_p.h @@ -0,0 +1,92 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_FILTERCOMPATIBLETECHNIQUEJOB_H +#define QT3DRENDER_RENDER_FILTERCOMPATIBLETECHNIQUEJOB_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { +namespace Render { + +class TechniqueManager; +class Renderer; + +class QT3DRENDERSHARED_PRIVATE_EXPORT FilterCompatibleTechniqueJob : public Qt3DCore::QAspectJob +{ +public: + FilterCompatibleTechniqueJob(); + + void setManager(TechniqueManager *managers); + TechniqueManager *manager() const; + + void setRenderer(Renderer *renderer); + Renderer *renderer() const; + + void run() override; + +private: + TechniqueManager *m_manager; + Renderer *m_renderer; +}; + +typedef QSharedPointer FilterCompatibleTechniqueJobPtr; + +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_FILTERCOMPATIBLETECHNIQUEJOB_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/filterentitybycomponentjob_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/filterentitybycomponentjob_p.h new file mode 100644 index 0000000..dd64e50 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/filterentitybycomponentjob_p.h @@ -0,0 +1,109 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Paul Lemire +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_FILTERENTITYBYCOMPONENTJOB_H +#define QT3DRENDER_RENDER_FILTERENTITYBYCOMPONENTJOB_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +namespace Render { + +class Entity; +class EntityManager; + +template +class FilterEntityByComponentJob : public Qt3DCore::QAspectJob +{ +public: + FilterEntityByComponentJob() + : Qt3DCore::QAspectJob() + , m_manager(nullptr) + { + SET_JOB_RUN_STAT_TYPE(this, JobTypes::EntityComponentTypeFiltering, 0); + } + + inline void setManager(EntityManager *manager) Q_DECL_NOTHROW { m_manager = manager; } + inline QVector &filteredEntities() Q_DECL_NOTHROW { return m_filteredEntities; } + + void run() final + { + m_filteredEntities.clear(); + const QVector handles = m_manager->activeHandles(); + m_filteredEntities.reserve(handles.size()); + for (const HEntity handle : handles) { + Entity *e = m_manager->data(handle); + if (e->containsComponentsOfType()) + m_filteredEntities.push_back(e); + } + } + +private: + EntityManager *m_manager; + QVector m_filteredEntities; +}; + +template +using FilterEntityByComponentJobPtr = QSharedPointer>; + + +} // Render + +} // Qt3DRender + +QT_END_NAMESPACE +#endif // QT3DRENDER_RENDER_FILTERENTITYBYCOMPONENTJOB_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/filterkey_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/filterkey_p.h new file mode 100644 index 0000000..69d2985 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/filterkey_p.h @@ -0,0 +1,91 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_RENDERFILTERKEY_P_H +#define QT3DRENDER_RENDER_RENDERFILTERKEY_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QFilterKey; + +namespace Render { + +class Q_AUTOTEST_EXPORT FilterKey : public BackendNode +{ +public: + FilterKey(); + ~FilterKey(); + void cleanup(); + + const QVariant &value() const { return m_value; } + const QString &name() const { return m_name; } + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) override; + bool operator ==(const FilterKey &other); + bool operator !=(const FilterKey &other); + +private: + void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) final; + + QVariant m_value; + QString m_name; +}; + +} // namespace Render + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_RENDERFILTERKEY_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/filterlayerentityjob_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/filterlayerentityjob_p.h new file mode 100644 index 0000000..418f3ff --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/filterlayerentityjob_p.h @@ -0,0 +1,105 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Paul Lemire +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_FILTERLAYERENTITYJOB_H +#define QT3DRENDER_RENDER_FILTERLAYERENTITYJOB_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +namespace Render { + +class Entity; +class NodeManagers; + +class QT3DRENDERSHARED_PRIVATE_EXPORT FilterLayerEntityJob : public Qt3DCore::QAspectJob +{ +public: + FilterLayerEntityJob(); + + inline void setManager(NodeManagers *manager) Q_DECL_NOEXCEPT { m_manager = manager; } + inline void setLayerFilters(const Qt3DCore::QNodeIdVector &layerIds) Q_DECL_NOEXCEPT { m_layerFilterIds = layerIds; } + inline QVector filteredEntities() const Q_DECL_NOEXCEPT { return m_filteredEntities; } + + inline bool hasLayerFilter() const Q_DECL_NOTHROW { return !m_layerFilterIds.isEmpty(); } + inline Qt3DCore::QNodeIdVector layerFilters() const { return m_layerFilterIds; } + + // QAspectJob interface + void run() final; + + void filterAcceptAnyMatchingLayers(Entity *entity, const Qt3DCore::QNodeIdVector &layerIds); + void filterAcceptAllMatchingLayers(Entity *entity, const Qt3DCore::QNodeIdVector &layerIds); + void filterDiscardAnyMatchingLayers(Entity *entity, const Qt3DCore::QNodeIdVector &layerIds); + void filterDiscardAllMatchingLayers(Entity *entity, const Qt3DCore::QNodeIdVector &layerIds); + +private: + void filterLayerAndEntity(); + void selectAllEntities(); + + NodeManagers *m_manager; + Qt3DCore::QNodeIdVector m_layerFilterIds; + QVector m_filteredEntities; +}; + +typedef QSharedPointer FilterLayerEntityJobPtr; + +} // Render + +} // Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_FILTERLAYERENTITYJOB_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/filterproximitydistancejob_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/filterproximitydistancejob_p.h new file mode 100644 index 0000000..935d403 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/filterproximitydistancejob_p.h @@ -0,0 +1,93 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL-EXCEPT$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 as published by the Free Software +** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_FILTERPROXIMITYDISTANCEJOB_P_H +#define QT3DRENDER_RENDER_FILTERPROXIMITYDISTANCEJOB_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +namespace Render { + +class Entity; +class NodeManagers; + +class Q_AUTOTEST_EXPORT FilterProximityDistanceJob : public Qt3DCore::QAspectJob +{ +public: + FilterProximityDistanceJob(); + + inline void setManager(NodeManagers *manager) { m_manager = manager; } + inline void setProximityFilterIds(const Qt3DCore::QNodeIdVector &proximityFilterIds) { m_proximityFilterIds = proximityFilterIds; } + inline bool hasProximityFilter() const { return !m_proximityFilterIds.empty(); } + + // QAspectJob interface + void run() final; + QVector filteredEntities() const { return m_filteredEntities; } + +#if defined (QT_BUILD_INTERNAL) + // For unit testing + inline Qt3DCore::QNodeIdVector proximityFilterIds() const { return m_proximityFilterIds; } + inline NodeManagers *manager() const { return m_manager; } +#endif + +private: + void selectAllEntities(); + void filterEntities(const QVector &entitiesToFilter); + + NodeManagers *m_manager; + Qt3DCore::QNodeIdVector m_proximityFilterIds; + Entity *m_targetEntity; + float m_distanceThresholdSquared; + QVector m_filteredEntities; +}; + +typedef QSharedPointer FilterProximityDistanceJobPtr; + +} // Render + +} // Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_FILTERPROXIMITYDISTANCEJOB_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/framecleanupjob_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/framecleanupjob_p.h new file mode 100644 index 0000000..e3700fe --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/framecleanupjob_p.h @@ -0,0 +1,93 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_FRAMECLEANUPJOB_H +#define QT3DRENDER_RENDER_FRAMECLEANUPJOB_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +namespace Render { + +class NodeManagers; +class Entity; + +class QT3DRENDERSHARED_PRIVATE_EXPORT FrameCleanupJob : public Qt3DCore::QAspectJob +{ +public: + explicit FrameCleanupJob(); + ~FrameCleanupJob(); + + void setRoot(Entity *root); + void setManagers(NodeManagers *managers); + +protected: + void run() final; + +private: + NodeManagers *m_managers; + Entity *m_root; + void updateBoundingVolumesDebug(Entity *node); +}; + +typedef QSharedPointer FrameCleanupJobPtr; + +} // namespace Render + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_FRAMECLEANUPJOB_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/framegraphnode_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/framegraphnode_p.h new file mode 100644 index 0000000..0efd391 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/framegraphnode_p.h @@ -0,0 +1,184 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_FRAMEGRAPHNODE_H +#define QT3DRENDER_RENDER_FRAMEGRAPHNODE_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include +#include +#include +#include +#include + +// Windows had the smart idea of using a #define MemoryBarrier +// https://msdn.microsoft.com/en-us/library/windows/desktop/ms684208(v=vs.85).aspx +#if defined(Q_OS_WIN) && defined(MemoryBarrier) +#undef MemoryBarrier +#endif + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +namespace Render { + +class FrameGraphManager; + +class Q_AUTOTEST_EXPORT FrameGraphNode : public BackendNode +{ +public: + FrameGraphNode(); + virtual ~FrameGraphNode(); + + enum FrameGraphNodeType { + InvalidNodeType = 0, + CameraSelector, + LayerFilter, + RenderPassFilter, + RenderTarget, + TechniqueFilter, + Viewport, + ClearBuffers, + SortMethod, + SubtreeSelector, + StateSet, + NoDraw, + FrustumCulling, + Lighting, + ComputeDispatch, + Surface, + RenderCapture, + BufferCapture, + MemoryBarrier, + ProximityFilter, + BlitFramebuffer + }; + FrameGraphNodeType nodeType() const { return m_nodeType; } + + void setFrameGraphManager(FrameGraphManager *manager); + FrameGraphManager *manager() const; + + void setParentId(Qt3DCore::QNodeId parentId); + + Qt3DCore::QNodeId parentId() const; + QVector childrenIds() const; + + FrameGraphNode *parent() const; + QVector children() const; + + void cleanup(); + + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) override; + +protected: + FrameGraphNode(FrameGraphNodeType nodeType, QBackendNode::Mode mode = QBackendNode::ReadOnly); + void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) override; + +private: + FrameGraphNodeType m_nodeType; + Qt3DCore::QNodeId m_parentId; + QVector m_childrenIds; + FrameGraphManager *m_manager; + + friend class FrameGraphVisitor; +}; + +template +class FrameGraphNodeFunctor : public Qt3DCore::QBackendNodeMapper +{ +public: + explicit FrameGraphNodeFunctor(AbstractRenderer *renderer) + : m_manager(renderer->nodeManagers()->frameGraphManager()) + , m_renderer(renderer) + { + } + + Qt3DCore::QBackendNode *create(const Qt3DCore::QNodeCreatedChangeBasePtr &change) const override + { + return createBackendFrameGraphNode(change); + } + + Qt3DCore::QBackendNode *get(Qt3DCore::QNodeId id) const override + { + return m_manager->lookupNode(id); + } + + void destroy(Qt3DCore::QNodeId id) const override + { + m_manager->releaseNode(id); + } + +protected: + Backend *createBackendFrameGraphNode(const Qt3DCore::QNodeCreatedChangeBasePtr &change) const + { + if (!m_manager->containsNode(change->subjectId())) { + Backend *backend = new Backend(); + backend->setFrameGraphManager(m_manager); + backend->setRenderer(m_renderer); + m_manager->appendNode(change->subjectId(), backend); + return backend; + } + return static_cast(m_manager->lookupNode(change->subjectId())); + } + +private: + FrameGraphManager *m_manager; + AbstractRenderer *m_renderer; +}; + +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_FRAMEGRAPHNODE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/framegraphvisitor_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/framegraphvisitor_p.h new file mode 100644 index 0000000..f4c0d77 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/framegraphvisitor_p.h @@ -0,0 +1,88 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_FRAMEGRAPHVISITOR_H +#define QT3DRENDER_RENDER_FRAMEGRAPHVISITOR_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { +namespace Render { + +class FrameGraphNode; +class Renderer; +class FrameGraphManager; + +class Q_AUTOTEST_EXPORT FrameGraphVisitor +{ +public: + explicit FrameGraphVisitor(const FrameGraphManager *nodeManager); + + QVector traverse(FrameGraphNode *root); + +private: + void visit(Render::FrameGraphNode *node); + + const FrameGraphManager *m_manager; + QVector m_leaves; +}; + +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_FRAMEGRAPHVISITOR_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/frameprofiler_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/frameprofiler_p.h new file mode 100644 index 0000000..06204a7 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/frameprofiler_p.h @@ -0,0 +1,262 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL-EXCEPT$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 as published by the Free Software +** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_FRAMEPROFILER_P_H +#define QT3DRENDER_RENDER_FRAMEPROFILER_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +namespace Render { + +namespace Profiling { + +enum RecordingType +{ + DrawArray = 512, + DrawElement, + DispatchCompute, + StateUpdate, + UniformUpdate, + ShaderUpdate, + TextureUpload, + BufferUpload, + ShaderUpload, + ClearBuffer, + VAOUpdate, + VAOUpload, + RenderTargetUpdate +}; + +#if QT_CONFIG(qt3d_profile_gl) + +class FrameTimeRecorder +{ +public: + FrameTimeRecorder() + {} + + ~FrameTimeRecorder() + { + } + + void init(int eventCount) + { + if (m_monitor.isCreated()) { + m_remainingEvents = m_monitor.sampleCount(); + reset(); + } else { + m_monitor.setSampleCount(eventCount * 2); + m_monitor.create(); + m_remainingEvents = eventCount; + } + } + + void startRecordEvent() + { + m_monitor.recordSample(); + --m_remainingEvents; + } + + void recordEvent(RecordingType type) + { + m_monitor.recordSample(); + --m_remainingEvents; + + GLRecording rec; + rec.type = type; + rec.startTime = Qt3DCore::QThreadPooler::m_jobsStatTimer.nsecsElapsed(); + m_recordings.push_back(rec); + } + + void reset() + { + m_monitor.reset(); + m_recordings.clear(); + } + + inline bool canStillRecord() { return m_remainingEvents > 0; } + + bool tryWriteResults() + { + if (m_monitor.isResultAvailable()) { + const QVector samples = m_monitor.waitForSamples(); + Q_ASSERT(samples.count() >= 2 * m_recordings.count()); + + int j = 0; + for (int i = 0, m = m_recordings.size(); i < m; ++i) { + const GLRecording rec = m_recordings.at(i); + Qt3DCore::JobRunStats glRecordingStat; + + glRecordingStat.jobId.typeAndInstance[0] = rec.type; + glRecordingStat.jobId.typeAndInstance[1] = 0; + glRecordingStat.threadId = FrameTimeRecorder::GLThreadID; + glRecordingStat.startTime = rec.startTime; + glRecordingStat.endTime = rec.startTime + (samples.at(j + 1) - (samples.at(j))); + + Qt3DCore::QThreadPooler::addSubmissionLogStatsEntry(glRecordingStat); + j += 2; + } + return true; + } + return false; + } + +private: + struct GLRecording + { + RecordingType type; + qint64 startTime; + }; + + static const int GLThreadID = 0x454; + + QOpenGLTimeMonitor m_monitor; + QVector m_recordings; + int m_remainingEvents = 0; +}; + +class FrameProfiler +{ +public: + FrameProfiler() + : m_currentRecorder(nullptr) + {} + + ~FrameProfiler() + { + qDeleteAll(m_recorders); + } + + void startRecordEvent() + { + if (m_currentRecorder == nullptr) { + if (!m_availableRecorders.empty()) { + m_currentRecorder = m_availableRecorders.takeFirst(); + } else { + m_recorders.push_back(new FrameTimeRecorder()); + m_currentRecorder = m_recorders.last(); + } + // We record events 10 by 10 + m_currentRecorder->init(10); + } + m_currentRecorder->startRecordEvent(); + } + + void recordEvent(RecordingType type) + { + m_currentRecorder->recordEvent(type); + if (!m_currentRecorder->canStillRecord()) { + m_busyRecorders.push_back(m_currentRecorder); + m_currentRecorder = nullptr; + } + } + + void writeResults() + { + for (int i = m_busyRecorders.size() - 1; i >= 0; --i) { + FrameTimeRecorder *recorder = m_busyRecorders.at(i); + if (recorder->tryWriteResults()) { + m_availableRecorders.push_back(m_busyRecorders.takeAt(i)); + } + } + } + +private: + QVector m_recorders; + QVector m_availableRecorders; + QVector m_busyRecorders; + FrameTimeRecorder *m_currentRecorder; +}; + +#endif + +class GLTimeRecorder +{ +public: + explicit GLTimeRecorder(RecordingType type) + : m_type(type) + { +#if QT_CONFIG(qt3d_profile_gl) + frameProfiler.startRecordEvent(); +#endif + } + + ~GLTimeRecorder() + { +#if QT_CONFIG(qt3d_profile_gl) + frameProfiler.recordEvent(m_type); +#else + Q_UNUSED(m_type); +#endif + } + + static void writeResults() + { +#if QT_CONFIG(qt3d_profile_gl) + frameProfiler.writeResults(); +#endif + } + +private: +#if QT_CONFIG(qt3d_profile_gl) + static FrameProfiler frameProfiler; +#endif + RecordingType m_type; +}; + +#if QT_CONFIG(qt3d_profile_gl) +FrameProfiler GLTimeRecorder::frameProfiler; +#endif + +} // Profiling + +} // Render + +} // Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_FRAMEPROFILER_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/frustumculling_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/frustumculling_p.h new file mode 100644 index 0000000..7f9959c --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/frustumculling_p.h @@ -0,0 +1,75 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_FRUSTUMCULLING_H +#define QT3DRENDER_RENDER_FRUSTUMCULLING_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +namespace Render { + +class FrustumCulling : public FrameGraphNode +{ +public: + FrustumCulling(); + ~FrustumCulling(); +}; + +} // namespace Render + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_FRUSTUMCULLING_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/frustumcullingjob_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/frustumcullingjob_p.h new file mode 100644 index 0000000..f81e4c5 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/frustumcullingjob_p.h @@ -0,0 +1,101 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Paul Lemire +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_FRUSTUMCULLINGJOB_P_H +#define QT3DRENDER_RENDER_FRUSTUMCULLINGJOB_P_H + +#include +#include +#include + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +namespace Render { + +class Entity; +class EntityManager; +struct Plane; + +class FrustumCullingJob : public Qt3DCore::QAspectJob +{ +public: + FrustumCullingJob(); + + QT3D_ALIGNED_MALLOC_AND_FREE() + + inline void setRoot(Entity *root) Q_DECL_NOTHROW { m_root = root; } + inline void setActive(bool active) Q_DECL_NOTHROW { m_active = active; } + inline bool isActive() const Q_DECL_NOTHROW { return m_active; } + inline void setViewProjection(const Matrix4x4 &viewProjection) Q_DECL_NOTHROW { m_viewProjection = viewProjection; } + inline Matrix4x4 viewProjection() const Q_DECL_NOTHROW { return m_viewProjection; } + + QVector visibleEntities() const Q_DECL_NOTHROW { return m_visibleEntities; } + + void run() final; + +private: + void cullScene(Entity *e, const Plane *planes); + Matrix4x4 m_viewProjection; + Entity *m_root; + QVector m_visibleEntities; + bool m_active; +}; + +typedef QSharedPointer FrustumCullingJobPtr; + +} // Render + +} // Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_FRUSTUMCULLINGJOB_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/genericlambdajob_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/genericlambdajob_p.h new file mode 100644 index 0000000..d729757 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/genericlambdajob_p.h @@ -0,0 +1,93 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Paul Lemire +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_GENERICLAMBDAJOB_H +#define QT3DRENDER_RENDER_GENERICLAMBDAJOB_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +namespace Render { + +template +class GenericLambdaJob : public Qt3DCore::QAspectJob +{ +public: + explicit GenericLambdaJob(T callable, JobTypes::JobType type = JobTypes::GenericLambda) + : Qt3DCore::QAspectJob() + , m_callable(callable) + { + SET_JOB_RUN_STAT_TYPE(this, type, 0); + } + + // QAspectJob interface + void run() final + { + m_callable(); + } + +private: + T m_callable; +}; + +template +using GenericLambdaJobPtr = QSharedPointer>; + +} // Render + +} // Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_GENERICLAMBDAJOB_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/genericstate_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/genericstate_p.h new file mode 100644 index 0000000..b07487d --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/genericstate_p.h @@ -0,0 +1,126 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Copyright (C) 2016 The Qt Company Ltd and/or its subsidiary(-ies). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_GENERICSTATE_H +#define QT3DRENDER_RENDER_GENERICSTATE_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include +//#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QRenderState; + +namespace Render { + +class GraphicsContext; + +typedef quint64 StateMaskSet; + +class RenderStateImpl +{ +public: + virtual ~RenderStateImpl() {} + + virtual StateMask mask() const = 0; + virtual bool equalTo(const RenderStateImpl &renderState) const = 0; + virtual void updateProperty(const char *name, const QVariant &value); +}; + +template +class GenericState : public RenderStateImpl +{ +public: + GenericState *set(T... values) + { + m_values = std::tuple(values...); + return this; + } + + bool equalTo(const RenderStateImpl &renderState) const override + { + const GenericState *other = static_cast(&renderState); + return (other != nullptr && other->m_values == m_values); + } + + StateMask mask() const override + { + return GenericState::type(); + } + + static StateMask type() + { + return stateMask; + } + + std::tuple values() const + { + return m_values; + } + +protected: + std::tuple m_values; +}; + +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_GENERICSTATE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/geometry_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/geometry_p.h new file mode 100644 index 0000000..b158648 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/geometry_p.h @@ -0,0 +1,92 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_GEOMETRY_H +#define QT3DRENDER_RENDER_GEOMETRY_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +namespace Render { + +class Q_AUTOTEST_EXPORT Geometry : public BackendNode +{ +public: + Geometry(); + ~Geometry(); + + void cleanup(); + + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) override; + + inline QVector attributes() const { return m_attributes; } + inline bool isDirty() const { return m_geometryDirty; } + inline Qt3DCore::QNodeId boundingPositionAttribute() const { return m_boundingPositionAttribute; } + void unsetDirty(); + +private: + void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) final; + + QVector m_attributes; + bool m_geometryDirty; + Qt3DCore::QNodeId m_boundingPositionAttribute; +}; + +} // namespace Render + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_GEOMETRY_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/geometryrenderer_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/geometryrenderer_p.h new file mode 100644 index 0000000..57d1ca0 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/geometryrenderer_p.h @@ -0,0 +1,138 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_GEOMETRYRENDERER_H +#define QT3DRENDER_RENDER_GEOMETRYRENDERER_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { +namespace RayCasting { +class QBoundingVolume; +} + +namespace Render { + +class GeometryRendererManager; + +class Q_AUTOTEST_EXPORT GeometryRenderer : public BackendNode +{ +public: + GeometryRenderer(); + ~GeometryRenderer(); + + void cleanup(); + void setManager(GeometryRendererManager *manager); + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) override; + void executeFunctor(); + + inline Qt3DCore::QNodeId geometryId() const { return m_geometryId; } + inline int instanceCount() const { return m_instanceCount; } + inline int vertexCount() const { return m_vertexCount; } + inline int indexOffset() const { return m_indexOffset; } + inline int firstInstance() const { return m_firstInstance; } + inline int firstVertex() const { return m_firstVertex; } + inline int indexBufferByteOffset() const { return m_indexBufferByteOffset; } + inline int restartIndexValue() const { return m_restartIndexValue; } + inline int verticesPerPatch() const { return m_verticesPerPatch; } + inline bool primitiveRestartEnabled() const { return m_primitiveRestartEnabled; } + inline QGeometryRenderer::PrimitiveType primitiveType() const { return m_primitiveType; } + inline bool isDirty() const { return m_dirty; } + inline QGeometryFactoryPtr geometryFactory() const { return m_geometryFactory; } + void unsetDirty(); + + // Build triangle data Job thread + void setTriangleVolumes(const QVector &volumes); + // Pick volumes job + QVector triangleData() const; + +private: + void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) final; + + Qt3DCore::QNodeId m_geometryId; + int m_instanceCount; + int m_vertexCount; + int m_indexOffset; + int m_firstInstance; + int m_firstVertex; + int m_indexBufferByteOffset; + int m_restartIndexValue; + int m_verticesPerPatch; + bool m_primitiveRestartEnabled; + QGeometryRenderer::PrimitiveType m_primitiveType; + bool m_dirty; + QGeometryFactoryPtr m_geometryFactory; + GeometryRendererManager *m_manager; + QVector m_triangleVolumes; +}; + +class GeometryRendererFunctor : public Qt3DCore::QBackendNodeMapper +{ +public: + explicit GeometryRendererFunctor(AbstractRenderer *renderer, GeometryRendererManager *manager); + Qt3DCore::QBackendNode *create(const Qt3DCore::QNodeCreatedChangeBasePtr &change) const override; + Qt3DCore::QBackendNode *get(Qt3DCore::QNodeId id) const override; + void destroy(Qt3DCore::QNodeId id) const override; +private: + GeometryRendererManager *m_manager; + AbstractRenderer *m_renderer; +}; + +} // namespace Render + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_RENDERGEOMETRYRENDERER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/geometryrenderermanager_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/geometryrenderermanager_p.h new file mode 100644 index 0000000..becf1bc --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/geometryrenderermanager_p.h @@ -0,0 +1,94 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Paul Lemire +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_GEOMETRYRENDERERMANAGER_H +#define QT3DRENDER_RENDER_GEOMETRYRENDERERMANAGER_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +namespace Render { + +class Q_AUTOTEST_EXPORT GeometryRendererManager : public Qt3DCore::QResourceManager< + GeometryRenderer, + Qt3DCore::QNodeId, + Qt3DCore::ObjectLevelLockingPolicy> +{ +public: + GeometryRendererManager(); + ~GeometryRendererManager(); + + // Aspect Thread + void addDirtyGeometryRenderer(Qt3DCore::QNodeId bufferId); + QVector dirtyGeometryRenderers(); + + void requestTriangleDataRefreshForGeometryRenderer(const Qt3DCore::QNodeId geometryRenderer); + bool isGeometryRendererScheduledForTriangleDataRefresh(const Qt3DCore::QNodeId geometryRenderer); + QVector geometryRenderersRequiringTriangleDataRefresh(); + + +private: + QVector m_dirtyGeometryRenderers; + QVector m_geometryRenderersRequiringTriangleRefresh; +}; + +} // namespace Render +} // namespace Qt3DRender + +Q_DECLARE_RESOURCE_INFO(Qt3DRender::Render::GeometryRenderer, Q_REQUIRES_CLEANUP) + +QT_END_NAMESPACE + + +#endif // QT3DRENDER_RENDER_GEOMETRYRENDERERMANAGER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/glbuffer_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/glbuffer_p.h new file mode 100644 index 0000000..731634b --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/glbuffer_p.h @@ -0,0 +1,110 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_GLBUFFER_P_H +#define QT3DRENDER_RENDER_GLBUFFER_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +namespace Render { + +class GraphicsContext; + +class GLBuffer +{ +public: + GLBuffer(); + + enum Type + { + ArrayBuffer = 0, + UniformBuffer, + IndexBuffer, + ShaderStorageBuffer, + PixelPackBuffer, + PixelUnpackBuffer, + DrawIndirectBuffer + }; + + bool bind(GraphicsContext *ctx, Type t); + bool release(GraphicsContext *ctx); + bool create(GraphicsContext *ctx); + void destroy(GraphicsContext *ctx); + void allocate(GraphicsContext *ctx, uint size, bool dynamic = true); + void allocate(GraphicsContext *ctx, const void *data, uint size, bool dynamic = true); + void update(GraphicsContext *ctx, const void *data, uint size, int offset = 0); + QByteArray download(GraphicsContext *ctx, uint size); + void bindBufferBase(GraphicsContext *ctx, int bindingPoint, Type t); + void bindBufferBase(GraphicsContext *ctx, int bindingPoint); + + inline GLuint bufferId() const { return m_bufferId; } + inline bool isCreated() const { return m_isCreated; } + inline bool isBound() const { return m_bound; } + +private: + GLuint m_bufferId; + bool m_isCreated; + bool m_bound; + GLenum m_lastTarget; +}; + +} // namespace Render + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_GLBUFFER_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/glcommands_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/glcommands_p.h new file mode 100644 index 0000000..5ed3607 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/glcommands_p.h @@ -0,0 +1,89 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_GLCOMMANDS_P_H +#define QT3DRENDER_RENDER_GLCOMMANDS_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + + +namespace Qt3DRender { + +namespace Render { + +class GraphicsContext; +class Renderer; +class Shader; + +class GLCommand +{ +public: + virtual void execute(Renderer *renderer, GraphicsContext *ctx) = 0; +}; + +class Q_AUTOTEST_EXPORT LoadShaderCommand : public GLCommand +{ +public: + explicit LoadShaderCommand(Shader *shader); + Shader *shader() const { return m_shader; } + void execute(Renderer *renderer, GraphicsContext *ctx) Q_DECL_OVERRIDE; + +private: + Shader *m_shader = nullptr; +}; +} // Render + +} // Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_GLCOMMANDS_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/gltexture_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/gltexture_p.h new file mode 100644 index 0000000..ca9c0d5 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/gltexture_p.h @@ -0,0 +1,268 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_GLTEXTURE_H +#define QT3DRENDER_RENDER_GLTEXTURE_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +class QOpenGLTexture; + +namespace Qt3DRender { +namespace Render { + +class TextureImageManager; +class TextureDataManager; +class TextureImageDataManager; +class RenderBuffer; + +/** + * @brief + * Actual implementation of the OpenGL texture object. Makes sure the + * QOpenGLTexture is up-to-date with the generators, properties and parameters + * that were set for this GLTexture. + * + * Can be shared among multiple QTexture backend nodes through the + * GLTextureManager, which will make sure that there are no two GLTextures + * sharing the same texture data. + * + * A GLTexture can be unique though. In that case, it will not be shared + * between QTextures, but private to one QTexture only. + * + * A GLTexture can also represent an OpenGL renderbuffer object. This is used + * only in certain special cases, mainly to provide a packed depth-stencil + * renderbuffer suitable as an FBO attachment with OpenGL ES 3.1 and earlier. + * Such a GLTexture will have no texture object under the hood, and therefore + * the only valid operation is getOrCreateRenderBuffer(). + */ +class Q_AUTOTEST_EXPORT GLTexture +{ +public: + GLTexture(TextureDataManager *texDataMgr, + TextureImageDataManager *texImgDataMgr, + const QTextureGeneratorPtr &texGen, + bool unique); + + ~GLTexture(); + + /** + * Helper class to hold the defining properties of TextureImages + */ + struct Image { + QTextureImageDataGeneratorPtr generator; + int layer; + int mipLevel; + QAbstractTexture::CubeMapFace face; + + inline bool operator==(const Image &o) const { + bool sameGenerators = (generator == o.generator) + || (!generator.isNull() && !o.generator.isNull() && *generator == *o.generator); + return sameGenerators && layer == o.layer && mipLevel == o.mipLevel && face == o.face; + } + inline bool operator!=(const Image &o) const { return !(*this == o); } + }; + + inline bool isUnique() const { return m_unique; } + + inline TextureProperties properties() const { return m_properties; } + inline TextureParameters parameters() const { return m_parameters; } + inline QTextureGeneratorPtr textureGenerator() const { return m_dataFunctor; } + inline QVector images() const { return m_images; } + + inline QSize size() const { return QSize(m_properties.width, m_properties.height); } + inline QOpenGLTexture *getGLTexture() const { return m_gl; } + + /** + * @brief + * Returns the QOpenGLTexture for this GLTexture. If necessary, + * the GL texture will be created from the TextureImageDatas associated + * with the texture and image functors. If no functors are provided, + * the texture will be created without images. + * + * If the texture properties or parameters have changed, these changes + * will be applied to the resulting OpenGL texture. + */ + struct TextureUpdateInfo + { + QOpenGLTexture *texture = nullptr; + bool wasUpdated = false; + TextureProperties properties; + }; + + TextureUpdateInfo createOrUpdateGLTexture(); + + /** + * @brief + * Returns the RenderBuffer for this GLTexture. If this is the first + * call, the OpenGL renderbuffer object will be created. + */ + RenderBuffer *getOrCreateRenderBuffer(); + + /** + * @brief Make sure to call this before calling the dtor + */ + void destroyGLTexture(); + + // Called by TextureDataManager when it has new texture data from + // a generator that needs to be uploaded. + void requestUpload() + { + setDirtyFlag(TextureData, true); + } + + bool isDirty() + { + return m_dirtyFlags.load() != 0; + } + + QMutex *externalRenderingLock() + { + return &m_externalRenderingMutex; + } + + void setExternalRenderingEnabled(bool enable) + { + m_externalRendering = enable; + } + + bool isExternalRenderingEnabled() const + { + return m_externalRendering; + } + +protected: + template + friend class APITextureManager; + + /* + * These methods are to be accessed from the GLTextureManager. + * The renderer and the texture backend nodes can only modify Textures + * through the GLTextureManager. + * + * The methods should only be called for unique textures, or textures + * that are not shared between multiple nodes. + */ + void setParameters(const TextureParameters ¶ms); + void setProperties(const TextureProperties &props); + void setImages(const QVector &images); + void setGenerator(const QTextureGeneratorPtr &generator); + +private: + + enum DirtyFlag { + TextureData = 0x01, // one or more image generators have been executed, data needs uploading to GPU + Properties = 0x02, // texture needs to be (re-)created + Parameters = 0x04 // texture parameters need to be (re-)set + + }; + + bool testDirtyFlag(DirtyFlag flag) + { + return m_dirtyFlags.load() & flag; + } + + void setDirtyFlag(DirtyFlag flag, bool value = true) + { + if (value) + m_dirtyFlags |= flag; + else + m_dirtyFlags &= ~static_cast(flag); + } + + QOpenGLTexture *buildGLTexture(); + bool loadTextureDataFromGenerator(); + void loadTextureDataFromImages(); + void uploadGLTextureData(); + void updateGLTextureParameters(); + void destroyResources(); + + bool m_unique; + QAtomicInt m_dirtyFlags; + QMutex m_textureMutex; + QMutex m_externalRenderingMutex; + QOpenGLTexture *m_gl; + RenderBuffer *m_renderBuffer; + + TextureDataManager *m_textureDataManager; + TextureImageDataManager *m_textureImageDataManager; + + // target which is actually used for GL texture + QAbstractTexture::Target m_actualTarget; + TextureProperties m_properties; + TextureParameters m_parameters; + + QTextureGeneratorPtr m_dataFunctor; + QTextureGenerator *m_pendingDataFunctor; + QVector m_images; + + // cache actual image data generated by the functors + QTextureDataPtr m_textureData; + QVector m_imageData; + + bool m_externalRendering; +}; + +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_GLTEXTURE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/gltexturemanager_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/gltexturemanager_p.h new file mode 100644 index 0000000..1c8b499 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/gltexturemanager_p.h @@ -0,0 +1,79 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_GLTEXTUREMANAGER_H +#define QT3DRENDER_RENDER_GLTEXTUREMANAGER_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { +namespace Render { + +class Q_AUTOTEST_EXPORT GLTextureManager : public APITextureManager +{ +public: + explicit GLTextureManager(TextureImageManager *textureImageManager, + TextureDataManager *textureDataManager, + TextureImageDataManager *textureImageDataManager) + : APITextureManager(textureImageManager, + textureDataManager, + textureImageDataManager) + {} +}; + +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_GLTEXTUREMANAGER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/gltfskeletonloader_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/gltfskeletonloader_p.h new file mode 100644 index 0000000..b2a175e --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/gltfskeletonloader_p.h @@ -0,0 +1,185 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_GLTFSKELETONLOADER_P_H +#define QT3DRENDER_RENDER_GLTFSKELETONLOADER_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +#include +#include + +#include +#include + +QT_BEGIN_NAMESPACE + +class QJsonObject; + +namespace Qt3DRender { +namespace Render { + +class GLTFSkeletonLoader +{ + class BufferData + { + public: + BufferData(); + explicit BufferData(const QJsonObject &json); + + quint64 byteLength; + QString path; + QByteArray data; + }; + + class BufferView + { + public: + BufferView(); + explicit BufferView(const QJsonObject &json); + + int bufferIndex; + quint64 byteOffset; + quint64 byteLength; + int target; // Only for per vertex attributes + }; + + class AccessorData + { + public: + AccessorData(); + explicit AccessorData(const QJsonObject &json); + + int bufferViewIndex; + QAttribute::VertexBaseType type; + uint dataSize; + int count; + int byteOffset; + int byteStride; // Only for per vertex attributes + + // TODO: Extend to support sparse accessors + }; + + class Skin + { + public: + Skin(); + explicit Skin(const QJsonObject &json); + + QString name; + int inverseBindAccessorIndex; + QVector jointNodeIndices; + }; + + class Node + { + public: + Node(); + explicit Node(const QJsonObject &json); + + Qt3DCore::Sqt localTransform; + QVector childNodeIndices; + QString name; + int parentNodeIndex; + int cameraIndex; + int meshIndex; + int skinIndex; + }; + +public: + GLTFSkeletonLoader(); + + bool load(QIODevice *ioDev); + + SkeletonData createSkeleton(const QString &skeletonName); + +private: + static QAttribute::VertexBaseType accessorTypeFromJSON(int componentType); + static uint accessorTypeSize(QAttribute::VertexBaseType componentType); + static uint accessorDataSizeFromJson(const QString &type); + + struct RawData + { + const char *data; + quint64 byteLength; + }; + + void setBasePath(const QString &path); + bool setJSON(const QJsonDocument &json); + + bool parse(); + bool parseGLTF2(); + void cleanup(); + + bool processJSONBuffer(const QJsonObject &json); + bool processJSONBufferView(const QJsonObject &json); + bool processJSONAccessor(const QJsonObject &json); + bool processJSONSkin(const QJsonObject &json); + bool processJSONNode(const QJsonObject &json); + void setupNodeParentLinks(); + QByteArray resolveLocalData(const QString &path) const; + + SkeletonData createSkeletonFromSkin(Skin *skin) const; + QMatrix4x4 inverseBindMatrix(Skin *skin, int jointIndex) const; + RawData accessorData(int accessorIndex, int index) const; + + QJsonDocument m_json; + QString m_basePath; + QVector m_bufferDatas; + QVector m_bufferViews; + QVector m_accessors; + QVector m_skins; + QVector m_nodes; +}; + +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_GLTFSKELETONLOADER_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/graphicscontext_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/graphicscontext_p.h new file mode 100644 index 0000000..73d1f31 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/graphicscontext_p.h @@ -0,0 +1,256 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Copyright (C) 2016 The Qt Company Ltd and/or its subsidiary(-ies). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_GRAPHICSCONTEXT_H +#define QT3DRENDER_RENDER_GRAPHICSCONTEXT_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +class QOpenGLShaderProgram; +class QAbstractOpenGLFunctions; +class QOpenGLDebugLogger; + +namespace Qt3DRender { + +namespace Render { + +class GraphicsHelperInterface; +class RenderTarget; +class AttachmentPack; +class ShaderManager; + +typedef QPair NamedUniformLocation; + +class Q_AUTOTEST_EXPORT GraphicsContext +{ +public: + GraphicsContext(); + ~GraphicsContext(); + + void setShaderCache(ShaderCache *shaderCache) { m_shaderCache = shaderCache; } + ShaderCache *shaderCache() const { return m_shaderCache; } + + void setOpenGLContext(QOpenGLContext* ctx); + QOpenGLContext *openGLContext() { return m_gl; } + bool makeCurrent(QSurface *surface); + void doneCurrent(); + bool hasValidGLHelper() const; + bool isInitialized() const; + + // Shaders + QOpenGLShaderProgram *createShaderProgram(Shader *shaderNode); + void introspectShaderInterface(Shader *shader, QOpenGLShaderProgram *shaderProgram); + void loadShader(Shader* shader, ShaderManager *manager); + void removeShaderProgramReference(Shader *shaderNode); + + GLuint defaultFBO() const { return m_defaultFBO; } + + const GraphicsApiFilterData *contextInfo() const; + + // Wrapper methods + void clearBackBuffer(QClearBuffers::BufferTypeFlags buffers); + void alphaTest(GLenum mode1, GLenum mode2); + void bindFramebuffer(GLuint fbo, GraphicsHelperInterface::FBOBindMode mode); + void bindBufferBase(GLenum target, GLuint bindingIndex, GLuint buffer); + void bindFragOutputs(GLuint shader, const QHash &outputs); + void bindUniformBlock(GLuint programId, GLuint uniformBlockIndex, GLuint uniformBlockBinding); + void bindShaderStorageBlock(GLuint programId, GLuint shaderStorageBlockIndex, GLuint shaderStorageBlockBinding); + void blendEquation(GLenum mode); + void blendFunci(GLuint buf, GLenum sfactor, GLenum dfactor); + void blendFuncSeparatei(GLuint buf, GLenum sRGB, GLenum dRGB, GLenum sAlpha, GLenum dAlpha); + GLuint boundFrameBufferObject(); + void buildUniformBuffer(const QVariant &v, const ShaderUniform &description, QByteArray &buffer); + void clearBufferf(GLint drawbuffer, const QVector4D &values); + void clearColor(const QColor &color); + void clearDepthValue(float depth); + void clearStencilValue(int stencil); + void depthMask(GLenum mode); + void depthTest(GLenum mode); + void disableClipPlane(int clipPlane); + void disablei(GLenum cap, GLuint index); + void disablePrimitiveRestart(); + void dispatchCompute(int x, int y, int z); + char * mapBuffer(GLenum target, GLsizeiptr size); + GLboolean unmapBuffer(GLenum target); + void drawArrays(GLenum primitiveType, GLint first, GLsizei count); + void drawArraysIndirect(GLenum mode,void *indirect); + void drawArraysInstanced(GLenum primitiveType, GLint first, GLsizei count, GLsizei instances); + void drawArraysInstancedBaseInstance(GLenum primitiveType, GLint first, GLsizei count, GLsizei instances, GLsizei baseinstance); + void drawElements(GLenum primitiveType, GLsizei primitiveCount, GLint indexType, void * indices, GLint baseVertex); + void drawElementsIndirect(GLenum mode, GLenum type, void *indirect); + void drawElementsInstancedBaseVertexBaseInstance(GLenum primitiveType, GLsizei primitiveCount, GLint indexType, void * indices, GLsizei instances, GLint baseVertex, GLint baseInstance); + void enableClipPlane(int clipPlane); + void enablei(GLenum cap, GLuint index); + void enablePrimitiveRestart(int restartIndex); + void frontFace(GLenum mode); + GLint maxClipPlaneCount(); + GLint maxTextureUnitsCount(); + void pointSize(bool programmable, GLfloat value); + void readBuffer(GLenum mode); + void drawBuffer(GLenum mode); + void drawBuffers(GLsizei n, const int *bufs); + void setMSAAEnabled(bool enabled); + void setAlphaCoverageEnabled(bool enabled); + void setClipPlane(int clipPlane, const QVector3D &normal, float distance); + void setSeamlessCubemap(bool enable); + void setVerticesPerPatch(GLint verticesPerPatch); + void memoryBarrier(QMemoryBarrier::Operations barriers); + void activateDrawBuffers(const AttachmentPack &attachments); + + // Helper methods + static GLint elementType(GLint type); + static GLint tupleSizeFromType(GLint type); + static GLuint byteSizeFromType(GLint type); + static GLint glDataTypeFromAttributeDataType(QAttribute::VertexBaseType dataType); + + bool supportsDrawBuffersBlend() const; + bool supportsVAO() const { return m_supportsVAO; } + + void initialize(); + void initializeHelpers(QSurface *surface); + GraphicsHelperInterface *resolveHighestOpenGLFunctions(); + + bool m_initialized; + bool m_supportsVAO; + GLint m_maxTextureUnits; + GLuint m_defaultFBO; + QOpenGLContext *m_gl; + GraphicsHelperInterface *m_glHelper; + + QHash m_glHelpers; + GraphicsApiFilterData m_contextInfo; + ShaderCache *m_shaderCache; + QScopedPointer m_debugLogger; + + friend class OpenGLVertexArrayObject; + OpenGLVertexArrayObject *m_currentVAO; + + void applyUniform(const ShaderUniform &description, const UniformValue &v); + + template + void applyUniformHelper(const ShaderUniform &, const UniformValue &) const + { + Q_ASSERT_X(false, Q_FUNC_INFO, "Uniform: Didn't provide specialized apply() implementation"); + } +}; + +#define QT3D_UNIFORM_TYPE_PROTO(UniformTypeEnum, BaseType, Func) \ +template<> \ +void GraphicsContext::applyUniformHelper(const ShaderUniform &description, const UniformValue &value) const; + +#define QT3D_UNIFORM_TYPE_IMPL(UniformTypeEnum, BaseType, Func) \ + template<> \ + void GraphicsContext::applyUniformHelper(const ShaderUniform &description, const UniformValue &value) const \ +{ \ + const int count = qMin(description.m_size, int(value.byteSize() / description.m_rawByteSize)); \ + m_glHelper->Func(description.m_location, count, value.constData()); \ +} + + +QT3D_UNIFORM_TYPE_PROTO(UniformType::Float, float, glUniform1fv) +QT3D_UNIFORM_TYPE_PROTO(UniformType::Vec2, float, glUniform2fv) +QT3D_UNIFORM_TYPE_PROTO(UniformType::Vec3, float, glUniform3fv) +QT3D_UNIFORM_TYPE_PROTO(UniformType::Vec4, float, glUniform4fv) + +// OpenGL expects int* as values for booleans +QT3D_UNIFORM_TYPE_PROTO(UniformType::Bool, int, glUniform1iv) +QT3D_UNIFORM_TYPE_PROTO(UniformType::BVec2, int, glUniform2iv) +QT3D_UNIFORM_TYPE_PROTO(UniformType::BVec3, int, glUniform3iv) +QT3D_UNIFORM_TYPE_PROTO(UniformType::BVec4, int, glUniform4iv) + +QT3D_UNIFORM_TYPE_PROTO(UniformType::Int, int, glUniform1iv) +QT3D_UNIFORM_TYPE_PROTO(UniformType::IVec2, int, glUniform2iv) +QT3D_UNIFORM_TYPE_PROTO(UniformType::IVec3, int, glUniform3iv) +QT3D_UNIFORM_TYPE_PROTO(UniformType::IVec4, int, glUniform4iv) + +QT3D_UNIFORM_TYPE_PROTO(UniformType::UInt, uint, glUniform1uiv) +QT3D_UNIFORM_TYPE_PROTO(UniformType::UIVec2, uint, glUniform2uiv) +QT3D_UNIFORM_TYPE_PROTO(UniformType::UIVec3, uint, glUniform3uiv) +QT3D_UNIFORM_TYPE_PROTO(UniformType::UIVec4, uint, glUniform4uiv) + +QT3D_UNIFORM_TYPE_PROTO(UniformType::Mat2, float, glUniformMatrix2fv) +QT3D_UNIFORM_TYPE_PROTO(UniformType::Mat3, float, glUniformMatrix3fv) +QT3D_UNIFORM_TYPE_PROTO(UniformType::Mat4, float, glUniformMatrix4fv) +QT3D_UNIFORM_TYPE_PROTO(UniformType::Mat2x3, float, glUniformMatrix2x3fv) +QT3D_UNIFORM_TYPE_PROTO(UniformType::Mat3x2, float, glUniformMatrix3x2fv) +QT3D_UNIFORM_TYPE_PROTO(UniformType::Mat2x4, float, glUniformMatrix2x4fv) +QT3D_UNIFORM_TYPE_PROTO(UniformType::Mat4x2, float, glUniformMatrix4x2fv) +QT3D_UNIFORM_TYPE_PROTO(UniformType::Mat3x4, float, glUniformMatrix3x4fv) +QT3D_UNIFORM_TYPE_PROTO(UniformType::Mat4x3, float, glUniformMatrix4x3fv) + +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_GRAPHICSCONTEXT_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/graphicshelperes2_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/graphicshelperes2_p.h new file mode 100644 index 0000000..1c6df41 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/graphicshelperes2_p.h @@ -0,0 +1,173 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_GRAPHICSHELPERES2_H +#define QT3DRENDER_RENDER_GRAPHICSHELPERES2_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +class QOpenGLExtensions; + +namespace Qt3DRender { +namespace Render { + +class GraphicsHelperES2 : public GraphicsHelperInterface +{ +public: + GraphicsHelperES2(); + virtual ~GraphicsHelperES2(); + + // QGraphicHelperInterface interface + void alphaTest(GLenum mode1, GLenum mode2) override; + void bindBufferBase(GLenum target, GLuint index, GLuint buffer) override; + void bindFragDataLocation(GLuint shader, const QHash &outputs) override; + bool frameBufferNeedsRenderBuffer(const Attachment &attachment) override; + void bindFrameBufferAttachment(QOpenGLTexture *texture, const Attachment &attachment) override; + void bindFrameBufferAttachment(RenderBuffer *renderBuffer, const Attachment &attachment) override; + void bindFrameBufferObject(GLuint frameBufferId, FBOBindMode mode) override; + void bindShaderStorageBlock(GLuint programId, GLuint shaderStorageBlockIndex, GLuint shaderStorageBlockBinding) override; + void bindUniformBlock(GLuint programId, GLuint uniformBlockIndex, GLuint uniformBlockBinding) override; + void blendEquation(GLenum mode) override; + void blendFunci(GLuint buf, GLenum sfactor, GLenum dfactor) override; + void blendFuncSeparatei(GLuint buf, GLenum sRGB, GLenum dRGB, GLenum sAlpha, GLenum dAlpha) override; + void blitFramebuffer(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter) override; + GLuint boundFrameBufferObject() override; + void buildUniformBuffer(const QVariant &v, const ShaderUniform &description, QByteArray &buffer) override; + bool checkFrameBufferComplete() override; + void clearBufferf(GLint drawbuffer, const QVector4D &values) override; + GLuint createFrameBufferObject() override; + void depthMask(GLenum mode) override; + void depthTest(GLenum mode) override; + void disableClipPlane(int clipPlane) override; + void disablei(GLenum cap, GLuint index) override; + void disablePrimitiveRestart() override; + void dispatchCompute(GLuint wx, GLuint wy, GLuint wz) override; + char *mapBuffer(GLenum target, GLsizeiptr size) override; + GLboolean unmapBuffer(GLenum target) override; + void drawArrays(GLenum primitiveType, GLint first, GLsizei count) override; + void drawArraysIndirect(GLenum mode,void *indirect) override; + void drawArraysInstanced(GLenum primitiveType, GLint first, GLsizei count, GLsizei instances) override; + void drawArraysInstancedBaseInstance(GLenum primitiveType, GLint first, GLsizei count, GLsizei instances, GLsizei baseInstance) override; + void drawBuffers(GLsizei n, const int *bufs) override; + void drawElements(GLenum primitiveType, GLsizei primitiveCount, GLint indexType, void *indices, GLint baseVertex = 0) override; + void drawElementsIndirect(GLenum mode, GLenum type, void *indirect) override; + void drawElementsInstancedBaseVertexBaseInstance(GLenum primitiveType, GLsizei primitiveCount, GLint indexType, void *indices, GLsizei instances, GLint baseVertex = 0, GLint baseInstance = 0) override; + void enableClipPlane(int clipPlane) override; + void enablei(GLenum cap, GLuint index) override; + void enablePrimitiveRestart(int primitiveRestartIndex) override; + void enableVertexAttributeArray(int location) override; + void frontFace(GLenum mode) override; + QSize getRenderBufferDimensions(GLuint renderBufferId) override; + QSize getTextureDimensions(GLuint textureId, GLenum target, uint level = 0) override; + void initializeHelper(QOpenGLContext *context, QAbstractOpenGLFunctions *functions) override; + void pointSize(bool programmable, GLfloat value) override; + GLint maxClipPlaneCount() override; + void memoryBarrier(QMemoryBarrier::Operations barriers) override; + QVector programUniformBlocks(GLuint programId) override; + QVector programAttributesAndLocations(GLuint programId) override; + QVector programUniformsAndLocations(GLuint programId) override; + QVector programShaderStorageBlocks(GLuint programId) override; + void releaseFrameBufferObject(GLuint frameBufferId) override; + void setMSAAEnabled(bool enable) override; + void setAlphaCoverageEnabled(bool enable) override; + void setClipPlane(int clipPlane, const QVector3D &normal, float distance) override; + void setSeamlessCubemap(bool enable) override; + void setVerticesPerPatch(GLint verticesPerPatch) override; + bool supportsFeature(Feature feature) const override; + uint uniformByteSize(const ShaderUniform &description) override; + void useProgram(GLuint programId) override; + void vertexAttribDivisor(GLuint index, GLuint divisor) override; + void vertexAttributePointer(GLenum shaderDataType, GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid *pointer) override; + void readBuffer(GLenum mode) override; + void drawBuffer(GLenum mode) override; + + void glUniform1fv(GLint location, GLsizei count, const GLfloat *value) override; + void glUniform2fv(GLint location, GLsizei count, const GLfloat *value) override; + void glUniform3fv(GLint location, GLsizei count, const GLfloat *value) override; + void glUniform4fv(GLint location, GLsizei count, const GLfloat *value) override; + + void glUniform1iv(GLint location, GLsizei count, const GLint *value) override; + void glUniform2iv(GLint location, GLsizei count, const GLint *value) override; + void glUniform3iv(GLint location, GLsizei count, const GLint *value) override; + void glUniform4iv(GLint location, GLsizei count, const GLint *value) override; + + void glUniform1uiv(GLint location, GLsizei count, const GLuint *value) override; + void glUniform2uiv(GLint location, GLsizei count, const GLuint *value) override; + void glUniform3uiv(GLint location, GLsizei count, const GLuint *value) override; + void glUniform4uiv(GLint location, GLsizei count, const GLuint *value) override; + + void glUniformMatrix2fv(GLint location, GLsizei count, const GLfloat *value) override; + void glUniformMatrix3fv(GLint location, GLsizei count, const GLfloat *value) override; + void glUniformMatrix4fv(GLint location, GLsizei count, const GLfloat *value) override; + void glUniformMatrix2x3fv(GLint location, GLsizei count, const GLfloat *value) override; + void glUniformMatrix3x2fv(GLint location, GLsizei count, const GLfloat *value) override; + void glUniformMatrix2x4fv(GLint location, GLsizei count, const GLfloat *value) override; + void glUniformMatrix4x2fv(GLint location, GLsizei count, const GLfloat *value) override; + void glUniformMatrix3x4fv(GLint location, GLsizei count, const GLfloat *value) override; + void glUniformMatrix4x3fv(GLint location, GLsizei count, const GLfloat *value) override; + + UniformType uniformTypeFromGLType(GLenum glType) override; + +protected: + QOpenGLFunctions *m_funcs; + bool m_supportFramebufferBlit; + QScopedPointer m_ext; +}; + +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_GRAPHICSHELPERES2_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/graphicshelperes3_1_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/graphicshelperes3_1_p.h new file mode 100644 index 0000000..2c130fb --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/graphicshelperes3_1_p.h @@ -0,0 +1,86 @@ +/**************************************************************************** +** +** Copyright (C) 2018 The Qt Company Ltd. +** Contact: http://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_GRAPHICSHELPERES3_1_H +#define QT3DRENDER_RENDER_GRAPHICSHELPERES3_1_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { +namespace Render { + +class GraphicsHelperES3_1 : public GraphicsHelperES3 +{ +public: + GraphicsHelperES3_1(); + ~GraphicsHelperES3_1(); + + bool supportsFeature(Feature feature) const override; + void dispatchCompute(GLuint wx, GLuint wy, GLuint wz) override; + void memoryBarrier(QMemoryBarrier::Operations barriers) override; + void drawArraysIndirect(GLenum mode,void *indirect) override; + void drawElementsIndirect(GLenum mode, GLenum type, void *indirect) override; + void bindShaderStorageBlock(GLuint programId, GLuint shaderStorageBlockIndex, GLuint shaderStorageBlockBinding) override; + QVector programShaderStorageBlocks(GLuint programId) override; + + // QGraphicHelperInterface interface + UniformType uniformTypeFromGLType(GLenum glType) override; + uint uniformByteSize(const ShaderUniform &description) override; + void buildUniformBuffer(const QVariant &v, const ShaderUniform &description, QByteArray &buffer) override; +}; + +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_GRAPHICSHELPERES3_1_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/graphicshelperes3_2_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/graphicshelperes3_2_p.h new file mode 100644 index 0000000..2598643 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/graphicshelperes3_2_p.h @@ -0,0 +1,81 @@ +/**************************************************************************** +** +** Copyright (C) 2017 The Qt Company Ltd. +** Contact: http://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_GRAPHICSHELPERES3_2_H +#define QT3DRENDER_RENDER_GRAPHICSHELPERES3_2_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { +namespace Render { + +class GraphicsHelperES3_2 : public GraphicsHelperES3_1 +{ +public: + GraphicsHelperES3_2(); + ~GraphicsHelperES3_2(); + + bool supportsFeature(Feature feature) const override; + + // QGraphicHelperInterface interface + void bindFrameBufferAttachment(QOpenGLTexture *texture, const Attachment &attachment) override; + bool frameBufferNeedsRenderBuffer(const Attachment &attachment) override; + void setVerticesPerPatch(GLint verticesPerPatch) override; + void drawElementsInstancedBaseVertexBaseInstance(GLenum primitiveType, GLsizei primitiveCount, GLint indexType, void *indices, GLsizei instances, GLint baseVertex = 0, GLint baseInstance = 0) override; +}; + +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_GRAPHICSHELPERES3_2_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/graphicshelperes3_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/graphicshelperes3_p.h new file mode 100644 index 0000000..d4467cf --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/graphicshelperes3_p.h @@ -0,0 +1,102 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Copyright (C) 2016 Svenn-Arne Dragly. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_GRAPHICSHELPERES3_H +#define QT3DRENDER_RENDER_GRAPHICSHELPERES3_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { +namespace Render { + +class GraphicsHelperES3 : public GraphicsHelperES2 +{ +public: + GraphicsHelperES3(); + ~GraphicsHelperES3(); + + // QGraphicHelperInterface interface + void bindBufferBase(GLenum target, GLuint index, GLuint buffer) override; + bool frameBufferNeedsRenderBuffer(const Attachment &attachment) override; + void bindFrameBufferAttachment(QOpenGLTexture *texture, const Attachment &attachment) override; + void bindFrameBufferObject(GLuint frameBufferId, FBOBindMode mode) override; + void bindUniformBlock(GLuint programId, GLuint uniformBlockIndex, GLuint uniformBlockBinding) override; + void blitFramebuffer(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter) override; + void buildUniformBuffer(const QVariant &v, const ShaderUniform &description, QByteArray &buffer) override; + void drawBuffers(GLsizei n, const int *bufs) override; + void drawArraysInstanced(GLenum primitiveType, GLint first, GLsizei count, GLsizei instances) override; + void drawElementsInstancedBaseVertexBaseInstance(GLenum primitiveType, GLsizei primitiveCount, GLint indexType, void *indices, GLsizei instances, GLint baseVertex = 0, GLint baseInstance = 0) override; + void readBuffer(GLenum mode) override; + void drawBuffer(GLenum mode) override; + void initializeHelper(QOpenGLContext *context, QAbstractOpenGLFunctions *functions) override; + char *mapBuffer(GLenum target, GLsizeiptr size) override; + QVector programUniformsAndLocations(GLuint programId) override; + QVector programUniformBlocks(GLuint programId) override; + bool supportsFeature(Feature feature) const override; + GLboolean unmapBuffer(GLenum target) override; + void vertexAttribDivisor(GLuint index, GLuint divisor) override; + void vertexAttributePointer(GLenum shaderDataType, GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid *pointer) override; + + UniformType uniformTypeFromGLType(GLenum glType) override; + uint uniformByteSize(const ShaderUniform &description) override; + +protected: + QOpenGLExtraFunctions *m_extraFuncs = nullptr; +}; + +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_GRAPHICSHELPERES3_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/graphicshelpergl2_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/graphicshelpergl2_p.h new file mode 100644 index 0000000..2db7500 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/graphicshelpergl2_p.h @@ -0,0 +1,174 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_GRAPHICSHELPERGL2_H +#define QT3DRENDER_RENDER_GRAPHICSHELPERGL2_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#ifndef QT_OPENGL_ES_2 + +QT_BEGIN_NAMESPACE + +class QOpenGLFunctions_2_0; +class QOpenGLExtension_ARB_framebuffer_object; + +namespace Qt3DRender { +namespace Render { + +class Q_AUTOTEST_EXPORT GraphicsHelperGL2 : public GraphicsHelperInterface +{ +public: + GraphicsHelperGL2(); + + // QGraphicHelperInterface interface + void alphaTest(GLenum mode1, GLenum mode2) override; + void bindBufferBase(GLenum target, GLuint index, GLuint buffer) override; + void bindFragDataLocation(GLuint shader, const QHash &outputs) override; + bool frameBufferNeedsRenderBuffer(const Attachment &attachment) override; + void bindFrameBufferAttachment(QOpenGLTexture *texture, const Attachment &attachment) override; + void bindFrameBufferAttachment(RenderBuffer *renderBuffer, const Attachment &attachment) override; + void bindFrameBufferObject(GLuint frameBufferId, FBOBindMode mode) override; + void bindShaderStorageBlock(GLuint programId, GLuint shaderStorageBlockIndex, GLuint shaderStorageBlockBinding) override; + void bindUniformBlock(GLuint programId, GLuint uniformBlockIndex, GLuint uniformBlockBinding) override; + void blendEquation(GLenum mode) override; + void blendFunci(GLuint buf, GLenum sfactor, GLenum dfactor) override; + void blendFuncSeparatei(GLuint buf, GLenum sRGB, GLenum dRGB, GLenum sAlpha, GLenum dAlpha) override; + void blitFramebuffer(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter) override; + GLuint boundFrameBufferObject() override; + void buildUniformBuffer(const QVariant &v, const ShaderUniform &description, QByteArray &buffer) override; + bool checkFrameBufferComplete() override; + void clearBufferf(GLint drawbuffer, const QVector4D &values) override; + GLuint createFrameBufferObject() override; + void depthMask(GLenum mode) override; + void depthTest(GLenum mode) override; + void disableClipPlane(int clipPlane) override; + void disablei(GLenum cap, GLuint index) override; + void disablePrimitiveRestart() override; + void dispatchCompute(GLuint wx, GLuint wy, GLuint wz) override; + char *mapBuffer(GLenum target, GLsizeiptr size) override; + GLboolean unmapBuffer(GLenum target) override; + void drawArrays(GLenum primitiveType, GLint first, GLsizei count) override; + void drawArraysIndirect(GLenum mode,void *indirect) override; + void drawArraysInstanced(GLenum primitiveType, GLint first, GLsizei count, GLsizei instances) override; + void drawArraysInstancedBaseInstance(GLenum primitiveType, GLint first, GLsizei count, GLsizei instances, GLsizei baseInstance) override; + void drawBuffers(GLsizei n, const int *bufs) override; + void drawElements(GLenum primitiveType, GLsizei primitiveCount, GLint indexType, void *indices, GLint baseVertex = 0) override; + void drawElementsIndirect(GLenum mode, GLenum type, void *indirect) override; + void drawElementsInstancedBaseVertexBaseInstance(GLenum primitiveType, GLsizei primitiveCount, GLint indexType, void *indices, GLsizei instances, GLint baseVertex = 0, GLint baseInstance = 0) override; + void enableClipPlane(int clipPlane) override; + void enablei(GLenum cap, GLuint index) override; + void enablePrimitiveRestart(int primitiveRestartIndex) override; + void enableVertexAttributeArray(int location) override; + void frontFace(GLenum mode) override; + QSize getRenderBufferDimensions(GLuint renderBufferId) override; + QSize getTextureDimensions(GLuint textureId, GLenum target, uint level = 0) override; + void initializeHelper(QOpenGLContext *context, QAbstractOpenGLFunctions *functions) override; + void pointSize(bool programmable, GLfloat value) override; + GLint maxClipPlaneCount() override; + void memoryBarrier(QMemoryBarrier::Operations barriers) override; + QVector programUniformBlocks(GLuint programId) override; + QVector programAttributesAndLocations(GLuint programId) override; + QVector programUniformsAndLocations(GLuint programId) override; + QVector programShaderStorageBlocks(GLuint programId) override; + void releaseFrameBufferObject(GLuint frameBufferId) override; + void setMSAAEnabled(bool enable) override; + void setAlphaCoverageEnabled(bool enable) override; + void setClipPlane(int clipPlane, const QVector3D &normal, float distance) override; + void setSeamlessCubemap(bool enable) override; + void setVerticesPerPatch(GLint verticesPerPatch) override; + bool supportsFeature(Feature feature) const override; + uint uniformByteSize(const ShaderUniform &description) override; + void useProgram(GLuint programId) override; + void vertexAttribDivisor(GLuint index, GLuint divisor) override; + void vertexAttributePointer(GLenum shaderDataType, GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid *pointer) override; + void readBuffer(GLenum mode) override; + void drawBuffer(GLenum mode) override; + + void glUniform1fv(GLint location, GLsizei count, const GLfloat *value) override; + void glUniform2fv(GLint location, GLsizei count, const GLfloat *value) override; + void glUniform3fv(GLint location, GLsizei count, const GLfloat *value) override; + void glUniform4fv(GLint location, GLsizei count, const GLfloat *value) override; + + void glUniform1iv(GLint location, GLsizei count, const GLint *value) override; + void glUniform2iv(GLint location, GLsizei count, const GLint *value) override; + void glUniform3iv(GLint location, GLsizei count, const GLint *value) override; + void glUniform4iv(GLint location, GLsizei count, const GLint *value) override; + + void glUniform1uiv(GLint location, GLsizei count, const GLuint *value) override; + void glUniform2uiv(GLint location, GLsizei count, const GLuint *value) override; + void glUniform3uiv(GLint location, GLsizei count, const GLuint *value) override; + void glUniform4uiv(GLint location, GLsizei count, const GLuint *value) override; + + void glUniformMatrix2fv(GLint location, GLsizei count, const GLfloat *value) override; + void glUniformMatrix3fv(GLint location, GLsizei count, const GLfloat *value) override; + void glUniformMatrix4fv(GLint location, GLsizei count, const GLfloat *value) override; + void glUniformMatrix2x3fv(GLint location, GLsizei count, const GLfloat *value) override; + void glUniformMatrix3x2fv(GLint location, GLsizei count, const GLfloat *value) override; + void glUniformMatrix2x4fv(GLint location, GLsizei count, const GLfloat *value) override; + void glUniformMatrix4x2fv(GLint location, GLsizei count, const GLfloat *value) override; + void glUniformMatrix3x4fv(GLint location, GLsizei count, const GLfloat *value) override; + void glUniformMatrix4x3fv(GLint location, GLsizei count, const GLfloat *value) override; + + UniformType uniformTypeFromGLType(GLenum glType) override; + +private: + QOpenGLFunctions_2_0 *m_funcs; + QOpenGLExtension_ARB_framebuffer_object *m_fboFuncs; +}; + +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // !QT_OPENGL_ES_2 + +#endif // QT3DRENDER_RENDER_GRAPHICSHELPERGL2_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/graphicshelpergl3_2_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/graphicshelpergl3_2_p.h new file mode 100644 index 0000000..133295f --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/graphicshelpergl3_2_p.h @@ -0,0 +1,176 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_GRAPHICSHELPERGL3_H +#define QT3DRENDER_RENDER_GRAPHICSHELPERGL3_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +#ifndef QT_OPENGL_ES_2 + +QT_BEGIN_NAMESPACE + +class QOpenGLFunctions_3_2_Core; +class QOpenGLExtension_ARB_tessellation_shader; + +namespace Qt3DRender { +namespace Render { + +class Q_AUTOTEST_EXPORT GraphicsHelperGL3_2 : public GraphicsHelperInterface +{ +public: + GraphicsHelperGL3_2(); + ~GraphicsHelperGL3_2(); + + // QGraphicHelperInterface interface + void alphaTest(GLenum mode1, GLenum mode2) override; + void bindBufferBase(GLenum target, GLuint index, GLuint buffer) override; + void bindFragDataLocation(GLuint shader, const QHash &outputs) override; + bool frameBufferNeedsRenderBuffer(const Attachment &attachment) override; + void bindFrameBufferAttachment(QOpenGLTexture *texture, const Attachment &attachment) override; + void bindFrameBufferAttachment(RenderBuffer *renderBuffer, const Attachment &attachment) override; + void bindFrameBufferObject(GLuint frameBufferId, FBOBindMode mode) override; + void bindShaderStorageBlock(GLuint programId, GLuint shaderStorageBlockIndex, GLuint shaderStorageBlockBinding) override; + void bindUniformBlock(GLuint programId, GLuint uniformBlockIndex, GLuint uniformBlockBinding) override; + void blendEquation(GLenum mode) override; + void blendFunci(GLuint buf, GLenum sfactor, GLenum dfactor) override; + void blendFuncSeparatei(GLuint buf, GLenum sRGB, GLenum dRGB, GLenum sAlpha, GLenum dAlpha) override; + void blitFramebuffer(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter) override; + GLuint boundFrameBufferObject() override; + void buildUniformBuffer(const QVariant &v, const ShaderUniform &description, QByteArray &buffer) override; + bool checkFrameBufferComplete() override; + void clearBufferf(GLint drawbuffer, const QVector4D &values) override; + GLuint createFrameBufferObject() override; + void depthMask(GLenum mode) override; + void depthTest(GLenum mode) override; + void disableClipPlane(int clipPlane) override; + void disablei(GLenum cap, GLuint index) override; + void disablePrimitiveRestart() override; + void dispatchCompute(GLuint wx, GLuint wy, GLuint wz) override; + char *mapBuffer(GLenum target, GLsizeiptr size) override; + GLboolean unmapBuffer(GLenum target) override; + void drawArrays(GLenum primitiveType, GLint first, GLsizei count) override; + void drawArraysIndirect(GLenum mode,void *indirect) override; + void drawArraysInstanced(GLenum primitiveType, GLint first, GLsizei count, GLsizei instances) override; + void drawArraysInstancedBaseInstance(GLenum primitiveType, GLint first, GLsizei count, GLsizei instances, GLsizei baseInstance) override; + void drawBuffers(GLsizei n, const int *bufs) override; + void drawElements(GLenum primitiveType, GLsizei primitiveCount, GLint indexType, void *indices, GLint baseVertex = 0) override; + void drawElementsIndirect(GLenum mode, GLenum type, void *indirect) override; + void drawElementsInstancedBaseVertexBaseInstance(GLenum primitiveType, GLsizei primitiveCount, GLint indexType, void *indices, GLsizei instances, GLint baseVertex = 0, GLint baseInstance = 0) override; + void enableClipPlane(int clipPlane) override; + void enablei(GLenum cap, GLuint index) override; + void enablePrimitiveRestart(int primitiveRestartIndex) override; + void enableVertexAttributeArray(int location) override; + void frontFace(GLenum mode) override; + QSize getRenderBufferDimensions(GLuint renderBufferId) override; + QSize getTextureDimensions(GLuint textureId, GLenum target, uint level = 0) override; + void initializeHelper(QOpenGLContext *context, QAbstractOpenGLFunctions *functions) override; + void pointSize(bool programmable, GLfloat value) override; + GLint maxClipPlaneCount() override; + void memoryBarrier(QMemoryBarrier::Operations barriers) override; + QVector programUniformBlocks(GLuint programId) override; + QVector programAttributesAndLocations(GLuint programId) override; + QVector programUniformsAndLocations(GLuint programId) override; + QVector programShaderStorageBlocks(GLuint programId) override; + void releaseFrameBufferObject(GLuint frameBufferId) override; + void setMSAAEnabled(bool enable) override; + void setAlphaCoverageEnabled(bool enable) override; + void setClipPlane(int clipPlane, const QVector3D &normal, float distance) override; + void setSeamlessCubemap(bool enable) override; + void setVerticesPerPatch(GLint verticesPerPatch) override; + bool supportsFeature(Feature feature) const override; + uint uniformByteSize(const ShaderUniform &description) override; + void useProgram(GLuint programId) override; + void vertexAttribDivisor(GLuint index, GLuint divisor) override; + void vertexAttributePointer(GLenum shaderDataType, GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid *pointer) override; + void readBuffer(GLenum mode) override; + void drawBuffer(GLenum mode) override; + + void glUniform1fv(GLint location, GLsizei count, const GLfloat *value) override; + void glUniform2fv(GLint location, GLsizei count, const GLfloat *value) override; + void glUniform3fv(GLint location, GLsizei count, const GLfloat *value) override; + void glUniform4fv(GLint location, GLsizei count, const GLfloat *value) override; + + void glUniform1iv(GLint location, GLsizei count, const GLint *value) override; + void glUniform2iv(GLint location, GLsizei count, const GLint *value) override; + void glUniform3iv(GLint location, GLsizei count, const GLint *value) override; + void glUniform4iv(GLint location, GLsizei count, const GLint *value) override; + + void glUniform1uiv(GLint location, GLsizei count, const GLuint *value) override; + void glUniform2uiv(GLint location, GLsizei count, const GLuint *value) override; + void glUniform3uiv(GLint location, GLsizei count, const GLuint *value) override; + void glUniform4uiv(GLint location, GLsizei count, const GLuint *value) override; + + void glUniformMatrix2fv(GLint location, GLsizei count, const GLfloat *value) override; + void glUniformMatrix3fv(GLint location, GLsizei count, const GLfloat *value) override; + void glUniformMatrix4fv(GLint location, GLsizei count, const GLfloat *value) override; + void glUniformMatrix2x3fv(GLint location, GLsizei count, const GLfloat *value) override; + void glUniformMatrix3x2fv(GLint location, GLsizei count, const GLfloat *value) override; + void glUniformMatrix2x4fv(GLint location, GLsizei count, const GLfloat *value) override; + void glUniformMatrix4x2fv(GLint location, GLsizei count, const GLfloat *value) override; + void glUniformMatrix3x4fv(GLint location, GLsizei count, const GLfloat *value) override; + void glUniformMatrix4x3fv(GLint location, GLsizei count, const GLfloat *value) override; + + UniformType uniformTypeFromGLType(GLenum glType) override; + +private: + QOpenGLFunctions_3_2_Core *m_funcs; + QScopedPointer m_tessFuncs; +}; + +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // !QT_OPENGL_ES_2 + +#endif // QT3DRENDER_RENDER_GRAPHICSHELPERGL3_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/graphicshelpergl3_3_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/graphicshelpergl3_3_p.h new file mode 100644 index 0000000..0ecdd36 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/graphicshelpergl3_3_p.h @@ -0,0 +1,176 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_GRAPHICSHELPERGL3_3_P_H +#define QT3DRENDER_RENDER_GRAPHICSHELPERGL3_3_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +#ifndef QT_OPENGL_ES_2 + +QT_BEGIN_NAMESPACE + +class QOpenGLFunctions_3_3_Core; +class QOpenGLExtension_ARB_tessellation_shader; + +namespace Qt3DRender { +namespace Render { + +class Q_AUTOTEST_EXPORT GraphicsHelperGL3_3 : public GraphicsHelperInterface +{ +public: + GraphicsHelperGL3_3(); + ~GraphicsHelperGL3_3(); + + // QGraphicHelperInterface interface + void alphaTest(GLenum mode1, GLenum mode2) override; + void bindBufferBase(GLenum target, GLuint index, GLuint buffer) override; + void bindFragDataLocation(GLuint shader, const QHash &outputs) override; + bool frameBufferNeedsRenderBuffer(const Attachment &attachment) override; + void bindFrameBufferAttachment(QOpenGLTexture *texture, const Attachment &attachment) override; + void bindFrameBufferAttachment(RenderBuffer *renderBuffer, const Attachment &attachment) override; + void bindFrameBufferObject(GLuint frameBufferId, FBOBindMode mode) override; + void bindShaderStorageBlock(GLuint programId, GLuint shaderStorageBlockIndex, GLuint shaderStorageBlockBinding) override; + void bindUniformBlock(GLuint programId, GLuint uniformBlockIndex, GLuint uniformBlockBinding) override; + void blendEquation(GLenum mode) override; + void blendFunci(GLuint buf, GLenum sfactor, GLenum dfactor) override; + void blendFuncSeparatei(GLuint buf, GLenum sRGB, GLenum dRGB, GLenum sAlpha, GLenum dAlpha) override; + void blitFramebuffer(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter) override; + GLuint boundFrameBufferObject() override; + void buildUniformBuffer(const QVariant &v, const ShaderUniform &description, QByteArray &buffer) override; + bool checkFrameBufferComplete() override; + void clearBufferf(GLint drawbuffer, const QVector4D &values) override; + GLuint createFrameBufferObject() override; + void depthMask(GLenum mode) override; + void depthTest(GLenum mode) override; + void disableClipPlane(int clipPlane) override; + void disablei(GLenum cap, GLuint index) override; + void disablePrimitiveRestart() override; + void dispatchCompute(GLuint wx, GLuint wy, GLuint wz) override; + char *mapBuffer(GLenum target, GLsizeiptr size) override; + GLboolean unmapBuffer(GLenum target) override; + void drawArrays(GLenum primitiveType, GLint first, GLsizei count) override; + void drawArraysIndirect(GLenum mode,void *indirect) override; + void drawArraysInstanced(GLenum primitiveType, GLint first, GLsizei count, GLsizei instances) override; + void drawArraysInstancedBaseInstance(GLenum primitiveType, GLint first, GLsizei count, GLsizei instances, GLsizei baseInstance) override; + void drawBuffers(GLsizei n, const int *bufs) override; + void drawElements(GLenum primitiveType, GLsizei primitiveCount, GLint indexType, void *indices, GLint baseVertex = 0) override; + void drawElementsIndirect(GLenum mode, GLenum type, void *indirect) override; + void drawElementsInstancedBaseVertexBaseInstance(GLenum primitiveType, GLsizei primitiveCount, GLint indexType, void *indices, GLsizei instances, GLint baseVertex = 0, GLint baseInstance = 0) override; + void enableClipPlane(int clipPlane) override; + void enablei(GLenum cap, GLuint index) override; + void enablePrimitiveRestart(int primitiveRestartIndex) override; + void enableVertexAttributeArray(int location) override; + void frontFace(GLenum mode) override; + QSize getRenderBufferDimensions(GLuint renderBufferId) override; + QSize getTextureDimensions(GLuint textureId, GLenum target, uint level = 0) override; + void initializeHelper(QOpenGLContext *context, QAbstractOpenGLFunctions *functions) override; + void pointSize(bool programmable, GLfloat value) override; + GLint maxClipPlaneCount() override; + void memoryBarrier(QMemoryBarrier::Operations barriers) override; + QVector programUniformBlocks(GLuint programId) override; + QVector programAttributesAndLocations(GLuint programId) override; + QVector programUniformsAndLocations(GLuint programId) override; + QVector programShaderStorageBlocks(GLuint programId) override; + void releaseFrameBufferObject(GLuint frameBufferId) override; + void setMSAAEnabled(bool enable) override; + void setAlphaCoverageEnabled(bool enable) override; + void setClipPlane(int clipPlane, const QVector3D &normal, float distance) override; + void setSeamlessCubemap(bool enable) override; + void setVerticesPerPatch(GLint verticesPerPatch) override; + bool supportsFeature(Feature feature) const override; + uint uniformByteSize(const ShaderUniform &description) override; + void useProgram(GLuint programId) override; + void vertexAttribDivisor(GLuint index, GLuint divisor) override; + void vertexAttributePointer(GLenum shaderDataType, GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid *pointer) override; + void readBuffer(GLenum mode) override; + void drawBuffer(GLenum mode) override; + + void glUniform1fv(GLint location, GLsizei count, const GLfloat *value) override; + void glUniform2fv(GLint location, GLsizei count, const GLfloat *value) override; + void glUniform3fv(GLint location, GLsizei count, const GLfloat *value) override; + void glUniform4fv(GLint location, GLsizei count, const GLfloat *value) override; + + void glUniform1iv(GLint location, GLsizei count, const GLint *value) override; + void glUniform2iv(GLint location, GLsizei count, const GLint *value) override; + void glUniform3iv(GLint location, GLsizei count, const GLint *value) override; + void glUniform4iv(GLint location, GLsizei count, const GLint *value) override; + + void glUniform1uiv(GLint location, GLsizei count, const GLuint *value) override; + void glUniform2uiv(GLint location, GLsizei count, const GLuint *value) override; + void glUniform3uiv(GLint location, GLsizei count, const GLuint *value) override; + void glUniform4uiv(GLint location, GLsizei count, const GLuint *value) override; + + void glUniformMatrix2fv(GLint location, GLsizei count, const GLfloat *value) override; + void glUniformMatrix3fv(GLint location, GLsizei count, const GLfloat *value) override; + void glUniformMatrix4fv(GLint location, GLsizei count, const GLfloat *value) override; + void glUniformMatrix2x3fv(GLint location, GLsizei count, const GLfloat *value) override; + void glUniformMatrix3x2fv(GLint location, GLsizei count, const GLfloat *value) override; + void glUniformMatrix2x4fv(GLint location, GLsizei count, const GLfloat *value) override; + void glUniformMatrix4x2fv(GLint location, GLsizei count, const GLfloat *value) override; + void glUniformMatrix3x4fv(GLint location, GLsizei count, const GLfloat *value) override; + void glUniformMatrix4x3fv(GLint location, GLsizei count, const GLfloat *value) override; + + UniformType uniformTypeFromGLType(GLenum glType) override; + +private: + QOpenGLFunctions_3_3_Core *m_funcs; + QScopedPointer m_tessFuncs; +}; + +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // !QT_OPENGL_ES_2 + +#endif // QT3DRENDER_RENDER_GRAPHICSHELPERGL3_3_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/graphicshelpergl4_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/graphicshelpergl4_p.h new file mode 100644 index 0000000..3020b16 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/graphicshelpergl4_p.h @@ -0,0 +1,173 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_GRAPHICSHELPERGL4_H +#define QT3DRENDER_RENDER_GRAPHICSHELPERGL4_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +#ifndef QT_OPENGL_ES_2 + +QT_BEGIN_NAMESPACE + +class QOpenGLFunctions_4_3_Core; + +namespace Qt3DRender { +namespace Render { + +class Q_AUTOTEST_EXPORT GraphicsHelperGL4 : public GraphicsHelperInterface +{ +public: + GraphicsHelperGL4(); + + // QGraphicHelperInterface interface + void alphaTest(GLenum mode1, GLenum mode2) override; + void bindBufferBase(GLenum target, GLuint index, GLuint buffer) override; + void bindFragDataLocation(GLuint shader, const QHash &outputs) override; + bool frameBufferNeedsRenderBuffer(const Attachment &attachment) override; + void bindFrameBufferAttachment(QOpenGLTexture *texture, const Attachment &attachment) override; + void bindFrameBufferAttachment(RenderBuffer *renderBuffer, const Attachment &attachment) override; + void bindFrameBufferObject(GLuint frameBufferId, FBOBindMode mode) override; + void bindShaderStorageBlock(GLuint programId, GLuint shaderStorageBlockIndex, GLuint shaderStorageBlockBinding) override; + void bindUniformBlock(GLuint programId, GLuint uniformBlockIndex, GLuint uniformBlockBinding) override; + void blendEquation(GLenum mode) override; + void blendFunci(GLuint buf, GLenum sfactor, GLenum dfactor) override; + void blendFuncSeparatei(GLuint buf, GLenum sRGB, GLenum dRGB, GLenum sAlpha, GLenum dAlpha) override; + void blitFramebuffer(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter) override; + GLuint boundFrameBufferObject() override; + void buildUniformBuffer(const QVariant &v, const ShaderUniform &description, QByteArray &buffer) override; + bool checkFrameBufferComplete() override; + void clearBufferf(GLint drawbuffer, const QVector4D &values) override; + GLuint createFrameBufferObject() override; + void depthMask(GLenum mode) override; + void depthTest(GLenum mode) override; + void disableClipPlane(int clipPlane) override; + void disablei(GLenum cap, GLuint index) override; + void disablePrimitiveRestart() override; + void dispatchCompute(GLuint wx, GLuint wy, GLuint wz) override; + char *mapBuffer(GLenum target, GLsizeiptr size) override; + GLboolean unmapBuffer(GLenum target) override; + void drawArrays(GLenum primitiveType, GLint first, GLsizei count) override; + void drawArraysIndirect(GLenum mode,void *indirect) override; + void drawArraysInstanced(GLenum primitiveType, GLint first, GLsizei count, GLsizei instances) override; + void drawArraysInstancedBaseInstance(GLenum primitiveType, GLint first, GLsizei count, GLsizei instances, GLsizei baseInstance) override; + void drawBuffers(GLsizei n, const int *bufs) override; + void drawElements(GLenum primitiveType, GLsizei primitiveCount, GLint indexType, void *indices, GLint baseVertex = 0) override; + void drawElementsIndirect(GLenum mode, GLenum type, void *indirect) override; + void drawElementsInstancedBaseVertexBaseInstance(GLenum primitiveType, GLsizei primitiveCount, GLint indexType, void *indices, GLsizei instances, GLint baseVertex = 0, GLint baseInstance = 0) override; + void enableClipPlane(int clipPlane) override; + void enablei(GLenum cap, GLuint index) override; + void enablePrimitiveRestart(int primitiveRestartIndex) override; + void enableVertexAttributeArray(int location) override; + void frontFace(GLenum mode) override; + QSize getRenderBufferDimensions(GLuint renderBufferId) override; + QSize getTextureDimensions(GLuint textureId, GLenum target, uint level = 0) override; + void initializeHelper(QOpenGLContext *context, QAbstractOpenGLFunctions *functions) override; + void pointSize(bool programmable, GLfloat value) override; + GLint maxClipPlaneCount() override; + void memoryBarrier(QMemoryBarrier::Operations barriers) override; + QVector programUniformBlocks(GLuint programId) override; + QVector programAttributesAndLocations(GLuint programId) override; + QVector programUniformsAndLocations(GLuint programId) override; + QVector programShaderStorageBlocks(GLuint programId) override; + void releaseFrameBufferObject(GLuint frameBufferId) override; + void setMSAAEnabled(bool enable) override; + void setAlphaCoverageEnabled(bool enable) override; + void setClipPlane(int clipPlane, const QVector3D &normal, float distance) override; + void setSeamlessCubemap(bool enable) override; + void setVerticesPerPatch(GLint verticesPerPatch) override; + bool supportsFeature(Feature feature) const override; + uint uniformByteSize(const ShaderUniform &description) override; + void useProgram(GLuint programId) override; + void vertexAttribDivisor(GLuint index, GLuint divisor) override; + void vertexAttributePointer(GLenum shaderDataType, GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid *pointer) override; + void readBuffer(GLenum mode) override; + void drawBuffer(GLenum mode) override; + + void glUniform1fv(GLint location, GLsizei count, const GLfloat *value) override; + void glUniform2fv(GLint location, GLsizei count, const GLfloat *value) override; + void glUniform3fv(GLint location, GLsizei count, const GLfloat *value) override; + void glUniform4fv(GLint location, GLsizei count, const GLfloat *value) override; + + void glUniform1iv(GLint location, GLsizei count, const GLint *value) override; + void glUniform2iv(GLint location, GLsizei count, const GLint *value) override; + void glUniform3iv(GLint location, GLsizei count, const GLint *value) override; + void glUniform4iv(GLint location, GLsizei count, const GLint *value) override; + + void glUniform1uiv(GLint location, GLsizei count, const GLuint *value) override; + void glUniform2uiv(GLint location, GLsizei count, const GLuint *value) override; + void glUniform3uiv(GLint location, GLsizei count, const GLuint *value) override; + void glUniform4uiv(GLint location, GLsizei count, const GLuint *value) override; + + void glUniformMatrix2fv(GLint location, GLsizei count, const GLfloat *value) override; + void glUniformMatrix3fv(GLint location, GLsizei count, const GLfloat *value) override; + void glUniformMatrix4fv(GLint location, GLsizei count, const GLfloat *value) override; + void glUniformMatrix2x3fv(GLint location, GLsizei count, const GLfloat *value) override; + void glUniformMatrix3x2fv(GLint location, GLsizei count, const GLfloat *value) override; + void glUniformMatrix2x4fv(GLint location, GLsizei count, const GLfloat *value) override; + void glUniformMatrix4x2fv(GLint location, GLsizei count, const GLfloat *value) override; + void glUniformMatrix3x4fv(GLint location, GLsizei count, const GLfloat *value) override; + void glUniformMatrix4x3fv(GLint location, GLsizei count, const GLfloat *value) override; + + UniformType uniformTypeFromGLType(GLenum glType) override; + +private: + QOpenGLFunctions_4_3_Core *m_funcs; +}; + +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // !QT_OPENGL_ES_2 + +#endif // QT3DRENDER_RENDER_GRAPHICSHELPERGL4_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/graphicshelperinterface_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/graphicshelperinterface_p.h new file mode 100644 index 0000000..e41325c --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/graphicshelperinterface_p.h @@ -0,0 +1,192 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_GRAPHICSHELPERINTERFACE_H +#define QT3DRENDER_RENDER_GRAPHICSHELPERINTERFACE_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { +namespace Render { + +struct Attachment; +class RenderBuffer; + +class GraphicsHelperInterface +{ +public: + enum Feature { + MRT = 0, + Tessellation, + UniformBufferObject, + BindableFragmentOutputs, + PrimitiveRestart, + RenderBufferDimensionRetrieval, + TextureDimensionRetrieval, + ShaderStorageObject, + Compute, + DrawBuffersBlend, + BlitFramebuffer, + IndirectDrawing, + MapBuffer + }; + + enum FBOBindMode { + FBODraw, + FBORead, + FBOReadAndDraw + }; + + virtual ~GraphicsHelperInterface() {} + virtual void alphaTest(GLenum mode1, GLenum mode2) = 0; + virtual void bindBufferBase(GLenum target, GLuint index, GLuint buffer) = 0; + virtual void bindFragDataLocation(GLuint shader, const QHash &outputs) = 0; + virtual bool frameBufferNeedsRenderBuffer(const Attachment &attachment) = 0; + virtual void bindFrameBufferAttachment(QOpenGLTexture *texture, const Attachment &attachment) = 0; + virtual void bindFrameBufferAttachment(RenderBuffer *renderBuffer, const Attachment &attachment) = 0; + virtual void bindFrameBufferObject(GLuint frameBufferId, FBOBindMode mode) = 0; + virtual void bindShaderStorageBlock(GLuint programId, GLuint shaderStorageBlockIndex, GLuint shaderStorageBlockBinding) = 0; + virtual void bindUniformBlock(GLuint programId, GLuint uniformBlockIndex, GLuint uniformBlockBinding) = 0; + virtual void blendEquation(GLenum mode) = 0; + virtual void blendFunci(GLuint buf, GLenum sfactor, GLenum dfactor) = 0; + virtual void blendFuncSeparatei(GLuint buf, GLenum sRGB, GLenum dRGB, GLenum sAlpha, GLenum dAlpha) = 0; + virtual void blitFramebuffer(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter) = 0; + virtual GLuint boundFrameBufferObject() = 0; + virtual void buildUniformBuffer(const QVariant &v, const ShaderUniform &description, QByteArray &buffer) = 0; + virtual bool checkFrameBufferComplete() = 0; + virtual void clearBufferf(GLint drawbuffer, const QVector4D &values) = 0; + virtual GLuint createFrameBufferObject() = 0; + virtual void depthMask(GLenum mode) = 0; + virtual void depthTest(GLenum mode) = 0; + virtual void disableClipPlane(int clipPlane) = 0; + virtual void disablei(GLenum cap, GLuint index) = 0; + virtual void disablePrimitiveRestart() = 0; + virtual void dispatchCompute(GLuint wx, GLuint wy, GLuint wz) = 0; + virtual char *mapBuffer(GLenum target, GLsizeiptr size) = 0; + virtual GLboolean unmapBuffer(GLenum target) = 0; + virtual void drawArrays(GLenum primitiveType, GLint first, GLsizei count) = 0; + virtual void drawArraysIndirect(GLenum mode,void *indirect) = 0; + virtual void drawArraysInstanced(GLenum primitiveType, GLint first, GLsizei count, GLsizei instances) = 0; + virtual void drawArraysInstancedBaseInstance(GLenum primitiveType, GLint first, GLsizei count, GLsizei instances, GLsizei baseinstance) = 0; + virtual void drawBuffers(GLsizei n, const int *bufs) = 0; + virtual void drawElements(GLenum primitiveType, GLsizei primitiveCount, GLint indexType, void * indices, GLint baseVertex) = 0; + virtual void drawElementsIndirect(GLenum mode, GLenum type, void *indirect) = 0; + virtual void drawElementsInstancedBaseVertexBaseInstance(GLenum primitiveType, GLsizei primitiveCount, GLint indexType, void * indices, GLsizei instances, GLint baseVertex, GLint baseInstance) = 0; + virtual void enableClipPlane(int clipPlane) = 0; + virtual void enablei(GLenum cap, GLuint index) = 0; + virtual void enablePrimitiveRestart(int primitiveRestartIndex) = 0; + virtual void enableVertexAttributeArray(int location) = 0; + virtual void frontFace(GLenum mode) = 0; + virtual QSize getRenderBufferDimensions(GLuint renderBufferId) = 0; + virtual QSize getTextureDimensions(GLuint textureId, GLenum target, uint level = 0) = 0; + virtual void initializeHelper(QOpenGLContext *context, QAbstractOpenGLFunctions *functions) = 0; + virtual GLint maxClipPlaneCount() = 0; + virtual void memoryBarrier(QMemoryBarrier::Operations barriers) = 0; + virtual void pointSize(bool programmable, GLfloat value) = 0; + virtual QVector programAttributesAndLocations(GLuint programId) = 0; + virtual QVector programUniformsAndLocations(GLuint programId) = 0; + virtual QVector programUniformBlocks(GLuint programId) = 0; + virtual QVector programShaderStorageBlocks(GLuint programId) = 0; + virtual void releaseFrameBufferObject(GLuint frameBufferId) = 0; + virtual void setAlphaCoverageEnabled(bool enable) = 0; + virtual void setClipPlane(int clipPlane, const QVector3D &normal, float distance) = 0; + virtual void setMSAAEnabled(bool enable) = 0; + virtual void setSeamlessCubemap(bool enable) = 0; + virtual void setVerticesPerPatch(GLint verticesPerPatch) = 0; + virtual bool supportsFeature(Feature feature) const = 0; + virtual uint uniformByteSize(const ShaderUniform &description) = 0; + virtual void useProgram(GLuint programId) = 0; + virtual void vertexAttribDivisor(GLuint index, GLuint divisor) = 0; + virtual void vertexAttributePointer(GLenum shaderDataType, GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid *pointer) = 0; + virtual void readBuffer(GLenum mode) = 0; + virtual void drawBuffer(GLenum mode) = 0; + + virtual void glUniform1fv(GLint location, GLsizei count, const GLfloat *value) = 0; + virtual void glUniform2fv(GLint location, GLsizei count, const GLfloat *value) = 0; + virtual void glUniform3fv(GLint location, GLsizei count, const GLfloat *value) = 0; + virtual void glUniform4fv(GLint location, GLsizei count, const GLfloat *value) = 0; + + virtual void glUniform1iv(GLint location, GLsizei count, const GLint *value) = 0; + virtual void glUniform2iv(GLint location, GLsizei count, const GLint *value) = 0; + virtual void glUniform3iv(GLint location, GLsizei count, const GLint *value) = 0; + virtual void glUniform4iv(GLint location, GLsizei count, const GLint *value) = 0; + + virtual void glUniform1uiv(GLint location, GLsizei count, const GLuint *value) = 0; + virtual void glUniform2uiv(GLint location, GLsizei count, const GLuint *value) = 0; + virtual void glUniform3uiv(GLint location, GLsizei count, const GLuint *value) = 0; + virtual void glUniform4uiv(GLint location, GLsizei count, const GLuint *value) = 0; + + virtual void glUniformMatrix2fv(GLint location, GLsizei count, const GLfloat *value) = 0; + virtual void glUniformMatrix3fv(GLint location, GLsizei count, const GLfloat *value) = 0; + virtual void glUniformMatrix4fv(GLint location, GLsizei count, const GLfloat *value) = 0; + virtual void glUniformMatrix2x3fv(GLint location, GLsizei count, const GLfloat *value) = 0; + virtual void glUniformMatrix3x2fv(GLint location, GLsizei count, const GLfloat *value) = 0; + virtual void glUniformMatrix2x4fv(GLint location, GLsizei count, const GLfloat *value) = 0; + virtual void glUniformMatrix4x2fv(GLint location, GLsizei count, const GLfloat *value) = 0; + virtual void glUniformMatrix3x4fv(GLint location, GLsizei count, const GLfloat *value) = 0; + virtual void glUniformMatrix4x3fv(GLint location, GLsizei count, const GLfloat *value) = 0; + + virtual UniformType uniformTypeFromGLType(GLenum glType) = 0; +}; + + +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_GRAPHICSHELPERINTERFACE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/handle_types_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/handle_types_p.h new file mode 100644 index 0000000..035bbfc --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/handle_types_p.h @@ -0,0 +1,146 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_HANDLE_TYPES_P_H +#define QT3DRENDER_RENDER_HANDLE_TYPES_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QTextureImageData; + +namespace Render { + +class RenderTargetOutput; +class CameraLens; +class FilterKey; +class Effect; +class Entity; +class Shader; +class ShaderBuilder; +class FrameGraphNode; +class Layer; +class LevelOfDetail; +class Material; +class Technique; +class Texture; +class Transform; +class RenderTarget; +class RenderPass; +class Parameter; +class ShaderData; +class TextureImage; +class Buffer; +class Attribute; +class Geometry; +class GeometryRenderer; +class ObjectPicker; +class RayCaster; +class BoundingVolumeDebug; +class OpenGLVertexArrayObject; +class Light; +class EnvironmentLight; +class ComputeCommand; +class GLBuffer; +class RenderStateNode; +class Armature; +class Skeleton; +class Joint; + +typedef Qt3DCore::QHandle HAttachment; +typedef Qt3DCore::QHandle HCamera; +typedef Qt3DCore::QHandle HFilterKey; +typedef Qt3DCore::QHandle HEffect; +typedef Qt3DCore::QHandle HEntity; +typedef Qt3DCore::QHandle HFrameGraphNode; +typedef Qt3DCore::QHandle HLayer; +typedef Qt3DCore::QHandle HLevelOfDetail; +typedef Qt3DCore::QHandle HMaterial; +typedef Qt3DCore::QHandle HMatrix; +typedef Qt3DCore::QHandle HVao; +typedef Qt3DCore::QHandle HShader; +typedef Qt3DCore::QHandle HShaderBuilder; +typedef Qt3DCore::QHandle HTechnique; +typedef Qt3DCore::QHandle HTexture; +typedef Qt3DCore::QHandle HTransform; +typedef Qt3DCore::QHandle HTarget; +typedef Qt3DCore::QHandle HRenderPass; +typedef Qt3DCore::QHandle HTextureData; +typedef Qt3DCore::QHandle HParameter; +typedef Qt3DCore::QHandle HShaderData; +typedef Qt3DCore::QHandle HTextureImage; +typedef Qt3DCore::QHandle HBuffer; +typedef Qt3DCore::QHandle HAttribute; +typedef Qt3DCore::QHandle HGeometry; +typedef Qt3DCore::QHandle HGeometryRenderer; +typedef Qt3DCore::QHandle HObjectPicker; +typedef Qt3DCore::QHandle HRayCaster; +typedef Qt3DCore::QHandle HBoundingVolumeDebug; +typedef Qt3DCore::QHandle HLight; +typedef Qt3DCore::QHandle HEnvironmentLight; +typedef Qt3DCore::QHandle HComputeCommand; +typedef Qt3DCore::QHandle HGLBuffer; +typedef Qt3DCore::QHandle HRenderState; +typedef Qt3DCore::QHandle HArmature; +typedef Qt3DCore::QHandle HSkeleton; +typedef Qt3DCore::QHandle HJoint; + +} // namespace Render + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_HANDLE_TYPES_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/job_common_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/job_common_p.h new file mode 100644 index 0000000..8f8242e --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/job_common_p.h @@ -0,0 +1,122 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Paul Lemire +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_JOB_COMMON_P_H +#define QT3DRENDER_RENDER_JOB_COMMON_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +namespace Render { + +namespace JobTypes { + + enum JobType { + LoadBuffer = 1, + FrameCleanup, + UpdateShaderDataTransform, + CalcBoundingVolume, + CalcTriangleVolume, + LoadGeometry, + LoadScene, + LoadTextureData, + PickBoundingVolume, + RayCasting, + RenderView, + UpdateTransform, + UpdateTreeEnabled, + ExpandBoundingVolume, + FrameSubmissionPart1, + LayerFiltering, + EntityComponentTypeFiltering, + MaterialParameterGathering, + RenderViewBuilder, + GenericLambda, + FrustumCulling, + LightGathering, + UpdateWorldBoundingVolume, + FrameSubmissionPart2, + DirtyBufferGathering, + DirtyVaoGathering, + DirtyTextureGathering, + DirtyShaderGathering, + SendRenderCapture, + SendBufferCapture, + SyncRenderViewCommandBuilding, + SyncRenderViewInitialization, + SyncRenderViewCommandBuilder, + SyncFrustumCulling, + ClearBufferDrawIndex, + UpdateMeshTriangleList, + FilterCompatibleTechniques, + UpdateLevelOfDetail, + SyncTextureLoading, + LoadSkeleton, + UpdateSkinningPalette, + ProximityFiltering, + SyncFilterEntityByLayer, + SyncMaterialGatherer, + UpdateLayerEntity, + UpdateEntityHierarchy, + SendTextureChangesToFrontend + }; + +} // JobTypes + +} // Render + +} // Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_JOB_COMMON_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/joint_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/joint_p.h new file mode 100644 index 0000000..e144ac4 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/joint_p.h @@ -0,0 +1,126 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_JOINT_H +#define QT3DRENDER_RENDER_JOINT_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { +namespace Render { + +class JointManager; +class SkeletonManager; + +class Q_AUTOTEST_EXPORT Joint : public BackendNode +{ +public: + Joint(); + + void cleanup(); + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) override; + + Qt3DCore::Sqt localPose() const { return m_localPose; } + QMatrix4x4 inverseBindMatrix() const { return m_inverseBindMatrix; } + QString name() const { return m_name; } + QVector childJointIds() const { return m_childJointIds; } + + QVector3D translation() const { return m_localPose.translation; } + QQuaternion rotation() const { return m_localPose.rotation; } + QVector3D scale() const { return m_localPose.scale; } + + void setOwningSkeleton(HSkeleton skeletonHandle) { m_owningSkeleton = skeletonHandle; } + HSkeleton owningSkeleton() const { return m_owningSkeleton; } + + void setJointManager(JointManager *jointManager) { m_jointManager = jointManager; } + JointManager *jointManager() const { return m_jointManager; } + + void setSkeletonManager(SkeletonManager *skeletonManager) { m_skeletonManager = skeletonManager; } + SkeletonManager *skeletonManager() const { return m_skeletonManager; } + +private: + void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) final; + + QMatrix4x4 m_inverseBindMatrix; + Qt3DCore::Sqt m_localPose; + QVector m_childJointIds; + QString m_name; + JointManager *m_jointManager; + SkeletonManager *m_skeletonManager; + HSkeleton m_owningSkeleton; +}; + +class JointFunctor : public Qt3DCore::QBackendNodeMapper +{ +public: + explicit JointFunctor(AbstractRenderer *renderer, + JointManager *jointManager, + SkeletonManager *skeletonManager); + Qt3DCore::QBackendNode *create(const Qt3DCore::QNodeCreatedChangeBasePtr &change) const final; + Qt3DCore::QBackendNode *get(Qt3DCore::QNodeId id) const final; + void destroy(Qt3DCore::QNodeId id) const final; + +private: + AbstractRenderer *m_renderer; + JointManager *m_jointManager; + SkeletonManager *m_skeletonManager; +}; + +} // namespace Render +} // namespace Qt3DRender + + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_JOINT_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/layer_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/layer_p.h new file mode 100644 index 0000000..1513157 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/layer_p.h @@ -0,0 +1,93 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_LAYER_H +#define QT3DRENDER_RENDER_LAYER_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QLayer; + +namespace Render { + +class LayerManager; + +class Layer : public BackendNode +{ +public: + Layer(); + ~Layer(); + void cleanup(); + + // QBackendNode interface + bool recursive() const; + void setRecursive(bool recursive); + +protected: + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) override; + +private: + void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) override; + bool m_recursive; +}; + +} // namespace Render + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_LAYER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/layerfilternode_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/layerfilternode_p.h new file mode 100644 index 0000000..18ba4ee --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/layerfilternode_p.h @@ -0,0 +1,90 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_LAYERFILTERNODE_H +#define QT3DRENDER_RENDER_LAYERFILTERNODE_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +namespace Render { + +class Renderer; + +class LayerFilterNode : public FrameGraphNode +{ +public: + LayerFilterNode(); + + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) override; + Qt3DCore::QNodeIdVector layerIds() const; + void setLayerIds(const Qt3DCore::QNodeIdVector &list); + + QLayerFilter::FilterMode filterMode() const; + +private: + void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) final; + + Qt3DCore::QNodeIdVector m_layerIds; + QLayerFilter::FilterMode m_filterMode; +}; + +} // namespace Render + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_LAYERFILTERNODE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/levelofdetail_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/levelofdetail_p.h new file mode 100644 index 0000000..4cf835d --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/levelofdetail_p.h @@ -0,0 +1,103 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_LEVELOFDETAIL_H +#define QT3DRENDER_RENDER_LEVELOFDETAIL_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QLevelOfDetail; + +namespace Render { + +class LevelOfDetailManager; + +class Q_AUTOTEST_EXPORT LevelOfDetail : public BackendNode +{ +public: + LevelOfDetail(); + ~LevelOfDetail(); + void cleanup(); + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) final; + + Qt3DCore::QNodeId camera() const { return m_camera; } + int currentIndex() const { return m_currentIndex; } + QLevelOfDetail::ThresholdType thresholdType() const { return m_thresholdType; } + QVector thresholds() const { return m_thresholds; } + float radius() const { return m_volumeOverride.radius(); } + QVector3D center() const { return m_volumeOverride.center(); } + bool hasBoundingVolumeOverride() const { return !m_volumeOverride.isEmpty(); } + + void setCurrentIndex(int currentIndex); + +private: + void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) final; + Qt3DCore::QNodeId m_camera; + int m_currentIndex; + QLevelOfDetail::ThresholdType m_thresholdType; + QVector m_thresholds; + QLevelOfDetailBoundingSphere m_volumeOverride; +}; + +} // namespace Render + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_LEVELOFDETAIL_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/light_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/light_p.h new file mode 100644 index 0000000..8ecc875 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/light_p.h @@ -0,0 +1,97 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_LIGHT_P_H +#define QT3DRENDER_RENDER_LIGHT_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +namespace Render { + +class NodeManagers; + +class Q_AUTOTEST_EXPORT Light : public BackendNode +{ +public: + Qt3DCore::QNodeId shaderData() const; + +private: + void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) final; + + Qt3DCore::QNodeId m_shaderDataId; +}; + +class RenderLightFunctor : public Qt3DCore::QBackendNodeMapper +{ +public: + explicit RenderLightFunctor(AbstractRenderer *renderer, NodeManagers *managers); + + Qt3DCore::QBackendNode *create(const Qt3DCore::QNodeCreatedChangeBasePtr &change) const override; + Qt3DCore::QBackendNode *get(Qt3DCore::QNodeId id) const final; + void destroy(Qt3DCore::QNodeId id) const final; + +private: + NodeManagers *m_managers; + AbstractRenderer *m_renderer; +}; + +} // namespace Render + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +Q_DECLARE_METATYPE(Qt3DRender::Render::Light*) // LCOV_EXCL_LINE + +#endif // QT3DRENDER_RENDER_LIGHT_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/lightgatherer_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/lightgatherer_p.h new file mode 100644 index 0000000..d0090cc --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/lightgatherer_p.h @@ -0,0 +1,96 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Paul Lemire +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_LIGHTGATHERER_P_H +#define QT3DRENDER_RENDER_LIGHTGATHERER_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +namespace Render { + +class EntityManager; +class EnvironmentLight; + +class Q_AUTOTEST_EXPORT LightGatherer : public Qt3DCore::QAspectJob +{ +public: + LightGatherer(); + + inline void setManager(EntityManager *manager) Q_DECL_NOTHROW { m_manager = manager; } + inline QVector &lights() { return m_lights; } + inline EnvironmentLight *takeEnvironmentLight() + { + auto envLight = m_environmentLight; + m_environmentLight = nullptr; + return envLight; + } + + void run() final; + +private: + EntityManager *m_manager; + QVector m_lights; + EnvironmentLight *m_environmentLight; +}; + +typedef QSharedPointer LightGathererPtr; + +} // Render + +} // Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_LIGHTGATHERER_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/lightsource_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/lightsource_p.h new file mode 100644 index 0000000..9e56dc7 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/lightsource_p.h @@ -0,0 +1,81 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Paul Lemire +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_LIGHTSOURCE_P_H +#define QT3DRENDER_RENDER_LIGHTSOURCE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +namespace Render { + +class Entity; +class Light; + +struct LightSource { + LightSource(); + LightSource(Entity *entity, const QVector &lights); + + Entity *entity; + QVector lights; +}; + +} // Render + +} // Qt3DRender + +QT_END_NAMESPACE + + +#endif // QT3DRENDER_RENDER_LIGHTSOURCE_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/loadbufferjob_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/loadbufferjob_p.h new file mode 100644 index 0000000..6a221c7 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/loadbufferjob_p.h @@ -0,0 +1,89 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Paul Lemire +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_LOADBUFFERJOB_H +#define QT3DRENDER_RENDER_LOADBUFFERJOB_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +namespace Render { + +class NodeManagers; + +class Q_AUTOTEST_EXPORT LoadBufferJob : public Qt3DCore::QAspectJob +{ +public: + explicit LoadBufferJob(const HBuffer &handle); + ~LoadBufferJob(); + + void setNodeManager(NodeManagers *nodeManagers) { m_nodeManagers = nodeManagers; } + void run() override; + +protected: + HBuffer m_handle; + NodeManagers *m_nodeManagers; +}; + +typedef QSharedPointer LoadBufferJobPtr; + +} // namespace Render + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_LOADBUFFERJOB_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/loadgeometryjob_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/loadgeometryjob_p.h new file mode 100644 index 0000000..c027396 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/loadgeometryjob_p.h @@ -0,0 +1,88 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Paul Lemire +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_LOADGEOMETRYJOB_H +#define QT3DRENDER_RENDER_LOADGEOMETRYJOB_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +namespace Render { + +class NodeManagers; + +class Q_AUTOTEST_EXPORT LoadGeometryJob : public Qt3DCore::QAspectJob +{ +public: + explicit LoadGeometryJob(const HGeometryRenderer &handle); + ~LoadGeometryJob(); + + void setNodeManagers(NodeManagers *nodeManagers) { m_nodeManagers = nodeManagers; } + +protected: + void run() override; + HGeometryRenderer m_handle; + NodeManagers *m_nodeManagers; +}; + +typedef QSharedPointer LoadGeometryJobPtr; + +} // namespace Render + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_LOADGEOMETRYJOB_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/loadscenejob_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/loadscenejob_p.h new file mode 100644 index 0000000..0c77dc6 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/loadscenejob_p.h @@ -0,0 +1,108 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_LOADSCENEJOB_H +#define QT3DRENDER_RENDER_LOADSCENEJOB_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QSceneImporter; + +namespace Render { + +class Scene; +class NodeManagers; + +class Q_AUTOTEST_EXPORT LoadSceneJob : public Qt3DCore::QAspectJob +{ +public: + explicit LoadSceneJob(const QUrl &source, Qt3DCore::QNodeId sceneComponent); + void setData(const QByteArray &data); + void setNodeManagers(NodeManagers *managers) { m_managers = managers; } + void setSceneImporters(const QList sceneImporters) { m_sceneImporters = sceneImporters; } + + NodeManagers *nodeManagers() const; + QList sceneImporters() const; + QUrl source() const; + Qt3DCore::QNodeId sceneComponentId() const; + + void run() override; + +private: + QUrl m_source; + QByteArray m_data; + Qt3DCore::QNodeId m_sceneComponent; + NodeManagers *m_managers; + QList m_sceneImporters; + + Qt3DCore::QEntity *tryLoadScene(Scene *scene, + QSceneLoader::Status &finalStatus, + const QStringList &extensions, + const std::function &importerSetupFunc); +}; + +typedef QSharedPointer LoadSceneJobPtr; + +} // namespace Render + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // LOADSCENEJOB_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/loadskeletonjob_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/loadskeletonjob_p.h new file mode 100644 index 0000000..2cd9fa8 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/loadskeletonjob_p.h @@ -0,0 +1,85 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_LOADSKELETONJOB_P_H +#define QT3DRENDER_RENDER_LOADSKELETONJOB_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { +namespace Render { + +class NodeManagers; + +class LoadSkeletonJob : public Qt3DCore::QAspectJob +{ +public: + explicit LoadSkeletonJob(const HSkeleton &handle); + ~LoadSkeletonJob(); + + void setNodeManagers(NodeManagers *nodeManagers) { m_nodeManagers = nodeManagers; } + +protected: + void run() override; + HSkeleton m_handle; + NodeManagers *m_nodeManagers; +}; + +typedef QSharedPointer LoadSkeletonJobPtr; + +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_LOADSKELETONJOB_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/loadtexturedatajob_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/loadtexturedatajob_p.h new file mode 100644 index 0000000..6070687 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/loadtexturedatajob_p.h @@ -0,0 +1,94 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_LOADTEXTUREDATAJOB_H +#define QT3DRENDER_RENDER_LOADTEXTUREDATAJOB_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +namespace Render { + +class NodeManagers; + +class LoadTextureDataJob : public Qt3DCore::QAspectJob +{ +public: + LoadTextureDataJob(const QTextureGeneratorPtr &texGen); + LoadTextureDataJob(const QTextureImageDataGeneratorPtr &imgDataGen); + ~LoadTextureDataJob(); + + inline void setNodeManagers(NodeManagers *manager) { m_manager = manager; } + +protected: + void run() final; + +private: + QTextureGeneratorPtr m_texGen; + QTextureImageDataGeneratorPtr m_imgDataGen; + + NodeManagers *m_manager; +}; + +typedef QSharedPointer LoadTextureDataJobPtr; + +} // namespace Render + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_LOADTEXTUREDATAJOB_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/managers_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/managers_p.h new file mode 100644 index 0000000..fc2a0b4 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/managers_p.h @@ -0,0 +1,468 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_MANAGERS_P_H +#define QT3DRENDER_RENDER_MANAGERS_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +namespace Render { + +class AttachmentManager : public Qt3DCore::QResourceManager< + RenderTargetOutput, + Qt3DCore::QNodeId, + Qt3DCore::NonLockingPolicy> +{ +public: + AttachmentManager() {} +}; + +class CameraManager : public Qt3DCore::QResourceManager< + CameraLens, + Qt3DCore::QNodeId, + Qt3DCore::NonLockingPolicy> +{ +public: + CameraManager() {} +}; + +class FilterKeyManager : public Qt3DCore::QResourceManager< + FilterKey, + Qt3DCore::QNodeId, + Qt3DCore::NonLockingPolicy> + +{ +public: + FilterKeyManager() {} +}; + +class EffectManager : public Qt3DCore::QResourceManager< + Effect, + Qt3DCore::QNodeId, + Qt3DCore::NonLockingPolicy> +{ +public: + EffectManager() {} +}; + +class Q_AUTOTEST_EXPORT EntityManager : public Qt3DCore::QResourceManager< + Entity, + Qt3DCore::QNodeId, + Qt3DCore::NonLockingPolicy> +{ +public: + EntityManager() {} + ~EntityManager() + { + Allocator::for_each([](Entity *e) { + if (e) + e->setNodeManagers(nullptr); + }); + } +}; + +class FrameGraphNode; + +class Q_AUTOTEST_EXPORT FrameGraphManager +{ +public: + FrameGraphManager() {} + ~FrameGraphManager(); + + bool containsNode(Qt3DCore::QNodeId id) const; + void appendNode(Qt3DCore::QNodeId id, FrameGraphNode *node); + FrameGraphNode* lookupNode(Qt3DCore::QNodeId id) const; + void releaseNode(Qt3DCore::QNodeId id); + +private: + QHash m_nodes; +}; + +class LayerManager : public Qt3DCore::QResourceManager< + Layer, + Qt3DCore::QNodeId, + Qt3DCore::NonLockingPolicy> +{ +public: + LayerManager() {} +}; + +class LevelOfDetailManager : public Qt3DCore::QResourceManager< + LevelOfDetail, + Qt3DCore::QNodeId, + Qt3DCore::NonLockingPolicy> +{ +public: + LevelOfDetailManager() {} +}; + +class MaterialManager : public Qt3DCore::QResourceManager< + Material, + Qt3DCore::QNodeId, + Qt3DCore::NonLockingPolicy> +{ +public: + MaterialManager() {} +}; + +class MatrixManager : public Qt3DCore::QResourceManager< + Matrix4x4, + Qt3DCore::QNodeId, + Qt3DCore::NonLockingPolicy> +{ +public: + MatrixManager() {} +}; + +class ShaderManager : public Qt3DCore::QResourceManager< + Shader, + Qt3DCore::QNodeId, + Qt3DCore::NonLockingPolicy> +{ +public: + ShaderManager() {} +}; + +class ShaderBuilderManager : public Qt3DCore::QResourceManager< + ShaderBuilder, + Qt3DCore::QNodeId, + Qt3DCore::NonLockingPolicy> +{ +public: + ShaderBuilderManager() {} +}; + +class TextureManager : public Qt3DCore::QResourceManager< + Texture, + Qt3DCore::QNodeId, + Qt3DCore::NonLockingPolicy> +{ +public: + TextureManager() {} + + // Called in AspectThread by Texture node functor destroy + void addTextureIdToCleanup(Qt3DCore::QNodeId id) + { + m_textureIdsToCleanup.push_back(id); + } + + // Called in AspectThread by Texture node functor create + void removeTextureIdToCleanup(Qt3DCore::QNodeId id) + { + m_textureIdsToCleanup.removeAll(id); + } + + // Called by RenderThread in updateGLResources (locked) + QVector takeTexturesIdsToCleanup() + { + return std::move(m_textureIdsToCleanup); + } + +#ifdef QT_BUILD_INTERNAL + // For unit testing purposes only + QVector textureIdsToCleanup() const + { + return m_textureIdsToCleanup; + } + +#endif + +private: + QVector m_textureIdsToCleanup; +}; + +class TransformManager : public Qt3DCore::QResourceManager< + Transform, + Qt3DCore::QNodeId, + Qt3DCore::NonLockingPolicy> +{ +public: + TransformManager() {} +}; + +class VAOManager : public Qt3DCore::QResourceManager< + OpenGLVertexArrayObject, + VAOIdentifier, + Qt3DCore::NonLockingPolicy> +{ +public: + VAOManager() {} +}; + +class RenderTargetManager : public Qt3DCore::QResourceManager< + RenderTarget, + Qt3DCore::QNodeId, + Qt3DCore::NonLockingPolicy> +{ +public: + RenderTargetManager() {} +}; + +class RenderPassManager : public Qt3DCore::QResourceManager< + RenderPass, + Qt3DCore::QNodeId, + Qt3DCore::NonLockingPolicy> +{ +public: + RenderPassManager() {} +}; + + +class ParameterManager : public Qt3DCore::QResourceManager< + Parameter, + Qt3DCore::QNodeId, + Qt3DCore::NonLockingPolicy> +{ +public: + ParameterManager() {} +}; + +class ShaderDataManager : public Qt3DCore::QResourceManager< + ShaderData, + Qt3DCore::QNodeId, + Qt3DCore::NonLockingPolicy> +{ +public: + ShaderDataManager() {} +}; + +class GLBufferManager : public Qt3DCore::QResourceManager< + GLBuffer, + Qt3DCore::QNodeId, + Qt3DCore::NonLockingPolicy> +{ +}; + +class TextureImageManager : public Qt3DCore::QResourceManager< + TextureImage, + Qt3DCore::QNodeId, + Qt3DCore::NonLockingPolicy> +{ +}; + +class AttributeManager : public Qt3DCore::QResourceManager< + Attribute, + Qt3DCore::QNodeId, + Qt3DCore::NonLockingPolicy> +{ +}; + +class GeometryManager : public Qt3DCore::QResourceManager< + Geometry, + Qt3DCore::QNodeId, + Qt3DCore::NonLockingPolicy> +{ +}; + +class ObjectPickerManager : public Qt3DCore::QResourceManager< + ObjectPicker, + Qt3DCore::QNodeId, + Qt3DCore::NonLockingPolicy> +{ +}; + +class RayCasterManager : public Qt3DCore::QResourceManager< + RayCaster, + Qt3DCore::QNodeId, + Qt3DCore::NonLockingPolicy> +{ +}; + +#if 0 +class BoundingVolumeDebugManager : public Qt3DCore::QResourceManager< + BoundingVolumeDebug, + Qt3DCore::QNodeId, + Qt3DCore::ObjectLevelLockingPolicy> +{ +}; +#endif + +class LightManager : public Qt3DCore::QResourceManager< + Light, + Qt3DCore::QNodeId, + Qt3DCore::NonLockingPolicy> +{ +public: + LightManager() {} +}; + +class EnvironmentLightManager : public Qt3DCore::QResourceManager< + EnvironmentLight, + Qt3DCore::QNodeId, + Qt3DCore::NonLockingPolicy> +{ +public: + EnvironmentLightManager() {} +}; + +class ComputeCommandManager : public Qt3DCore::QResourceManager< + ComputeCommand, + Qt3DCore::QNodeId, + Qt3DCore::NonLockingPolicy> +{ +public: + ComputeCommandManager() {} +}; + +class RenderStateManager : public Qt3DCore::QResourceManager< + RenderStateNode, + Qt3DCore::QNodeId, + Qt3DCore::NonLockingPolicy> +{ +}; + +class ArmatureManager : public Qt3DCore::QResourceManager< + Armature, + Qt3DCore::QNodeId, + Qt3DCore::NonLockingPolicy> +{ +}; + +class SkeletonManager : public Qt3DCore::QResourceManager< + Skeleton, + Qt3DCore::QNodeId, + Qt3DCore::NonLockingPolicy> +{ +public: + enum DirtyFlag { + SkeletonDataDirty, + SkeletonTransformsDirty + }; + + void addDirtySkeleton(DirtyFlag dirtyFlag, HSkeleton skeletonHandle); + QVector takeDirtySkeletons(DirtyFlag dirtyFlag); + +private: + QVector m_dirtyDataSkeletons; + QVector m_dirtyTransformSkeletons; +}; + +class JointManager : public Qt3DCore::QResourceManager< + Joint, + Qt3DCore::QNodeId, + Qt3DCore::NonLockingPolicy> +{ +public: + void addDirtyJoint(Qt3DCore::QNodeId jointId); + void removeDirtyJoint(Qt3DCore::QNodeId jointId); + QVector dirtyJoints(); + +private: + QVector m_dirtyJoints; +}; + +} // namespace Render +} // namespace Qt3DRender + +Q_DECLARE_RESOURCE_INFO(Qt3DRender::Render::FilterKey, Q_REQUIRES_CLEANUP) +Q_DECLARE_RESOURCE_INFO(Qt3DRender::Render::Effect, Q_REQUIRES_CLEANUP) +Q_DECLARE_RESOURCE_INFO(Qt3DRender::Render::Entity, Q_REQUIRES_CLEANUP) +Q_DECLARE_RESOURCE_INFO(Qt3DRender::Render::Layer, Q_REQUIRES_CLEANUP) +Q_DECLARE_RESOURCE_INFO(Qt3DRender::Render::Material, Q_REQUIRES_CLEANUP) +Q_DECLARE_RESOURCE_INFO(Qt3DRender::Render::Shader, Q_REQUIRES_CLEANUP) +Q_DECLARE_RESOURCE_INFO(Qt3DRender::Render::RenderTarget, Q_REQUIRES_CLEANUP) +Q_DECLARE_RESOURCE_INFO(Qt3DRender::Render::Texture, Q_REQUIRES_CLEANUP) +Q_DECLARE_RESOURCE_INFO(Qt3DRender::Render::RenderPass, Q_REQUIRES_CLEANUP) +Q_DECLARE_RESOURCE_INFO(Qt3DRender::Render::TextureImage, Q_REQUIRES_CLEANUP) +Q_DECLARE_RESOURCE_INFO(Qt3DRender::Render::Attribute, Q_REQUIRES_CLEANUP) +Q_DECLARE_RESOURCE_INFO(Qt3DRender::Render::Geometry, Q_REQUIRES_CLEANUP) +Q_DECLARE_RESOURCE_INFO(Qt3DRender::Render::ObjectPicker, Q_REQUIRES_CLEANUP) +Q_DECLARE_RESOURCE_INFO(Qt3DRender::Render::RayCaster, Q_REQUIRES_CLEANUP) +Q_DECLARE_RESOURCE_INFO(Qt3DRender::Render::BoundingVolumeDebug, Q_REQUIRES_CLEANUP) +Q_DECLARE_RESOURCE_INFO(Qt3DRender::Render::ComputeCommand, Q_REQUIRES_CLEANUP) +Q_DECLARE_RESOURCE_INFO(Qt3DRender::Render::Parameter, Q_REQUIRES_CLEANUP) +Q_DECLARE_RESOURCE_INFO(Qt3DRender::Render::Transform, Q_REQUIRES_CLEANUP) +Q_DECLARE_RESOURCE_INFO(Qt3DRender::Render::OpenGLVertexArrayObject, Q_REQUIRES_CLEANUP) +Q_DECLARE_RESOURCE_INFO(Qt3DRender::Render::Armature, Q_REQUIRES_CLEANUP) +Q_DECLARE_RESOURCE_INFO(Qt3DRender::Render::Skeleton, Q_REQUIRES_CLEANUP) +Q_DECLARE_RESOURCE_INFO(Qt3DRender::Render::Joint, Q_REQUIRES_CLEANUP) +Q_DECLARE_RESOURCE_INFO(Qt3DRender::Render::ShaderBuilder, Q_REQUIRES_CLEANUP) + +QT_END_NAMESPACE + + +#endif // QT3DRENDER_RENDER_MANAGERS_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/material_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/material_p.h new file mode 100644 index 0000000..3b55dc6 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/material_p.h @@ -0,0 +1,99 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_MATERIAL_H +#define QT3DRENDER_RENDER_MATERIAL_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QMaterial; +class QParameter; + +namespace Render { + +class Renderer; +class GraphicsContext; +class Technique; +class Effect; +class MaterialManager; + +class Q_AUTOTEST_EXPORT Material : public BackendNode +{ +public: + Material(); + ~Material(); + void cleanup(); + + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) override; + + QVector parameters() const; + Qt3DCore::QNodeId effect() const; + +private: + void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) final; + + ParameterPack m_parameterPack; + Qt3DCore::QNodeId m_effectUuid; +}; + +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_MATERIAL_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/materialparametergathererjob_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/materialparametergathererjob_p.h new file mode 100644 index 0000000..fbfac33 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/materialparametergathererjob_p.h @@ -0,0 +1,107 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Paul Lemire +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_MATERIALPARAMETERGATHERERJOB_P_H +#define QT3DRENDER_RENDER_MATERIALPARAMETERGATHERERJOB_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +namespace Render { + +class NodeManagers; +class TechniqueFilter; +class RenderPassFilter; +class Renderer; + +// TO be executed for each FrameGraph branch with a given RenderPassFilter/TechniqueFilter + +class QT3DRENDERSHARED_PRIVATE_EXPORT MaterialParameterGathererJob : public Qt3DCore::QAspectJob +{ +public: + MaterialParameterGathererJob(); + + inline void setNodeManagers(NodeManagers *manager) Q_DECL_NOTHROW { m_manager = manager; } + inline void setTechniqueFilter(TechniqueFilter *techniqueFilter) Q_DECL_NOTHROW { m_techniqueFilter = techniqueFilter; } + inline void setRenderPassFilter(RenderPassFilter *renderPassFilter) Q_DECL_NOTHROW { m_renderPassFilter = renderPassFilter; } + inline const QHash> &materialToPassAndParameter() Q_DECL_NOTHROW { return m_parameters; } + inline void setHandles(const QVector &handles) Q_DECL_NOTHROW { m_handles = handles; } + + inline TechniqueFilter *techniqueFilter() const Q_DECL_NOTHROW { return m_techniqueFilter; } + inline RenderPassFilter *renderPassFilter() const Q_DECL_NOTHROW { return m_renderPassFilter; } + + void run() final; + +private: + NodeManagers *m_manager; + TechniqueFilter *m_techniqueFilter; + RenderPassFilter *m_renderPassFilter; + + // Material id to array of RenderPasse with parameters + MaterialParameterGathererData m_parameters; + QVector m_handles; +}; + +typedef QSharedPointer MaterialParameterGathererJobPtr; + +} // Render + +} // Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_MATERIALPARAMETERGATHERERJOB_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/memorybarrier_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/memorybarrier_p.h new file mode 100644 index 0000000..e0fd3e9 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/memorybarrier_p.h @@ -0,0 +1,83 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_MEMORYBARRIER_H +#define QT3DRENDER_RENDER_MEMORYBARRIER_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +namespace Render { + +class Q_AUTOTEST_EXPORT MemoryBarrier : public FrameGraphNode +{ +public: + MemoryBarrier(); + ~MemoryBarrier(); + + QMemoryBarrier::Operations waitOperations() const; + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) override; + +private: + void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) final; + QMemoryBarrier::Operations m_waitOperations; +}; + +} // Render + +} // Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_MEMORYBARRIER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/nodefunctor_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/nodefunctor_p.h new file mode 100644 index 0000000..2c47963 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/nodefunctor_p.h @@ -0,0 +1,103 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_NODEFUNCTOR_P_H +#define QT3DRENDER_RENDER_NODEFUNCTOR_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +namespace Render { + +class AbstractRenderer; + +template +class NodeFunctor : public Qt3DCore::QBackendNodeMapper +{ +public: + explicit NodeFunctor(AbstractRenderer *renderer) + : m_manager(renderer->nodeManagers()->manager()) + , m_renderer(renderer) + { + } + + Qt3DCore::QBackendNode *create(const Qt3DCore::QNodeCreatedChangeBasePtr &change) const final + { + Backend *backend = m_manager->getOrCreateResource(change->subjectId()); + backend->setRenderer(m_renderer); + return backend; + } + + Qt3DCore::QBackendNode *get(Qt3DCore::QNodeId id) const final + { + return m_manager->lookupResource(id); + } + + void destroy(Qt3DCore::QNodeId id) const final + { + m_manager->releaseResource(id); + } + +private: + Manager *m_manager; + AbstractRenderer *m_renderer; +}; + +} // namespace Render + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_NODEFUNCTOR_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/nodemanagers_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/nodemanagers_p.h new file mode 100644 index 0000000..9277d43 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/nodemanagers_p.h @@ -0,0 +1,399 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_NODEMANAGERS_H +#define QT3DRENDER_RENDER_NODEMANAGERS_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +class QMatrix4x4; + +namespace Qt3DRender { + +class QTextureImageData; + +namespace Render { + +class CameraManager; +class EntityManager; +class BufferManager; +class AttributeManager; +class GeometryManager; +class GeometryRendererManager; +class ObjectPickerManager; +class RayCasterManager; +class BoundingVolumeDebugManager; +class MaterialManager; +class MatrixManager; +class VAOManager; +class ShaderManager; +class ShaderBuilderManager; +class TechniqueManager; +class EffectManager; +class RenderPassManager; +class RenderTargetManager; +class SceneManager; +class AttachmentManager; +class ParameterManager; +class ShaderDataManager; +class GLBufferManager; +class TextureImageManager; +class FilterKeyManager; +class FrameGraphManager; +class TransformManager; +class GLTextureManager; +class TextureManager; +class TextureDataManager; +class TextureImageDataManager; +class LayerManager; +class LevelOfDetailManager; +class LightManager; +class EnvironmentLightManager; +class ComputeCommandManager; +class RenderStateManager; +class ArmatureManager; +class SkeletonManager; +class JointManager; + +class FrameGraphNode; +class Entity; +class CameraLens; +class Material; +class Shader; +class ShaderBuilder; +class Technique; +class Effect; +class RenderPass; +class Texture; +class Layer; +class LevelOfDetail; +class FilterKey; +class FrameGraphNode; +class Transform; +class Scene; +class RenderTargetOutput; +class RenderTarget; +class ShaderData; +class Parameter; +class GLBuffer; +class TextureImage; +class Buffer; +class Attribute; +class Geometry; +class GeometryRenderer; +class ObjectPicker; +class RayCaster; +//class BoundingVolumeDebug; +class Light; +class EnvironmentLight; +class ComputeCommand; +class RenderStateNode; +class Armature; +class Skeleton; +class Joint; +class OpenGLVertexArrayObject; + +class ResourceAccessor; + +class QT3DRENDERSHARED_PRIVATE_EXPORT NodeManagers +{ +public: + NodeManagers(); + ~NodeManagers(); + + template + Manager *manager() const Q_DECL_NOEXCEPT + { + return nullptr; + } + + template + Backend *lookupResource(const Key &id) const + { + Manager *mgr = manager(); + if (mgr != nullptr) + return mgr->lookupResource(id); + return nullptr; + } + + template + Handle lookupHandle(const Key &id) const + { + Manager *mgr = manager(); + if (mgr != nullptr) + return mgr->lookupHandle(id); + return Handle(); + } + + template + Backend *data(Handle handle) + { + Manager *mgr = manager(); + if (mgr != nullptr) + return mgr->data(handle); + return nullptr; + } + + + inline CameraManager *cameraManager() const Q_DECL_NOEXCEPT { return m_cameraManager; } + inline EntityManager *renderNodesManager() const Q_DECL_NOEXCEPT { return m_renderNodesManager; } + inline MaterialManager *materialManager() const Q_DECL_NOEXCEPT { return m_materialManager; } + inline MatrixManager *worldMatrixManager() const Q_DECL_NOEXCEPT { return m_worldMatrixManager; } + inline VAOManager *vaoManager() const Q_DECL_NOEXCEPT { return m_vaoManager; } + inline ShaderManager *shaderManager() const Q_DECL_NOEXCEPT { return m_shaderManager; } + inline ShaderBuilderManager *shaderBuilderManager() const Q_DECL_NOEXCEPT { return m_shaderBuilderManager; } + inline TechniqueManager *techniqueManager() const Q_DECL_NOEXCEPT { return m_techniqueManager; } + inline EffectManager *effectManager() const Q_DECL_NOEXCEPT { return m_effectManager; } + inline RenderPassManager *renderPassManager() const Q_DECL_NOEXCEPT { return m_renderPassManager; } + inline GLTextureManager *glTextureManager() const Q_DECL_NOEXCEPT { return m_glTextureManager; } + inline TextureManager *textureManager() const Q_DECL_NOEXCEPT { return m_textureManager; } + inline TextureDataManager *textureDataManager() const Q_DECL_NOEXCEPT { return m_textureDataManager; } + inline TextureImageDataManager *textureImageDataManager() const Q_DECL_NOEXCEPT { return m_textureImageDataManager; } + inline LayerManager *layerManager() const Q_DECL_NOEXCEPT { return m_layerManager; } + inline LevelOfDetailManager *levelOfDetailManager() const Q_DECL_NOEXCEPT { return m_levelOfDetailManager; } + inline FilterKeyManager *filterKeyManager() const Q_DECL_NOEXCEPT { return m_filterKeyManager; } + inline FrameGraphManager *frameGraphManager() const Q_DECL_NOEXCEPT { return m_frameGraphManager; } + inline TransformManager *transformManager() const Q_DECL_NOEXCEPT { return m_transformManager; } + inline RenderTargetManager *renderTargetManager() const Q_DECL_NOEXCEPT { return m_renderTargetManager; } + inline SceneManager *sceneManager() const Q_DECL_NOEXCEPT { return m_sceneManager; } + inline AttachmentManager *attachmentManager() const Q_DECL_NOEXCEPT { return m_attachmentManager; } + inline ParameterManager *parameterManager() const Q_DECL_NOEXCEPT { return m_parameterManager; } + inline ShaderDataManager *shaderDataManager() const Q_DECL_NOEXCEPT { return m_shaderDataManager; } + inline GLBufferManager *glBufferManager() const Q_DECL_NOEXCEPT { return m_glBufferManager; } + inline TextureImageManager *textureImageManager() const Q_DECL_NOEXCEPT { return m_textureImageManager; } + inline BufferManager *bufferManager() const Q_DECL_NOEXCEPT { return m_bufferManager; } + inline AttributeManager *attributeManager() const Q_DECL_NOEXCEPT { return m_attributeManager; } + inline GeometryManager *geometryManager() const Q_DECL_NOEXCEPT { return m_geometryManager; } + inline GeometryRendererManager *geometryRendererManager() const Q_DECL_NOEXCEPT { return m_geometryRendererManager; } + inline ObjectPickerManager *objectPickerManager() const Q_DECL_NOEXCEPT { return m_objectPickerManager; } + inline RayCasterManager *rayCasterManager() const Q_DECL_NOEXCEPT { return m_rayCasterManager; } + // inline BoundingVolumeDebugManager *boundingVolumeDebugManager() const Q_DECL_NOEXCEPT { return m_boundingVolumeDebugManager; } + inline LightManager *lightManager() const Q_DECL_NOEXCEPT { return m_lightManager; } + inline EnvironmentLightManager *environmentLightManager() const Q_DECL_NOEXCEPT { return m_environmentLightManager; } + inline ComputeCommandManager *computeJobManager() const Q_DECL_NOEXCEPT { return m_computeJobManager; } + inline RenderStateManager *renderStateManager() const Q_DECL_NOEXCEPT { return m_renderStateManager; } + inline ArmatureManager *armatureManager() const Q_DECL_NOEXCEPT { return m_armatureManager; } + inline SkeletonManager *skeletonManager() const Q_DECL_NOEXCEPT { return m_skeletonManager; } + inline JointManager *jointManager() const Q_DECL_NOEXCEPT { return m_jointManager; } + + QSharedPointer resourceAccessor(); + +private: + CameraManager *m_cameraManager; + EntityManager *m_renderNodesManager; + MaterialManager *m_materialManager; + MatrixManager *m_worldMatrixManager; + VAOManager *m_vaoManager; + ShaderManager *m_shaderManager; + ShaderBuilderManager *m_shaderBuilderManager; + TechniqueManager *m_techniqueManager; + EffectManager *m_effectManager; + RenderPassManager *m_renderPassManager; + TextureManager *m_textureManager; + TextureImageManager *m_textureImageManager; + TextureDataManager *m_textureDataManager; + TextureImageDataManager *m_textureImageDataManager; + GLTextureManager *m_glTextureManager; + LayerManager *m_layerManager; + LevelOfDetailManager *m_levelOfDetailManager; + FilterKeyManager *m_filterKeyManager; + FrameGraphManager *m_frameGraphManager; + TransformManager *m_transformManager; + RenderTargetManager *m_renderTargetManager; + SceneManager *m_sceneManager; + AttachmentManager *m_attachmentManager; + ParameterManager *m_parameterManager; + ShaderDataManager *m_shaderDataManager; + GLBufferManager *m_glBufferManager; + BufferManager *m_bufferManager; + AttributeManager *m_attributeManager; + GeometryManager *m_geometryManager; + GeometryRendererManager *m_geometryRendererManager; + ObjectPickerManager *m_objectPickerManager; + RayCasterManager *m_rayCasterManager; + // BoundingVolumeDebugManager *m_boundingVolumeDebugManager; + LightManager *m_lightManager; + EnvironmentLightManager *m_environmentLightManager; + ComputeCommandManager *m_computeJobManager; + RenderStateManager *m_renderStateManager; + ArmatureManager *m_armatureManager; + SkeletonManager *m_skeletonManager; + JointManager *m_jointManager; + + QSharedPointer m_resourceAccessor; +}; + +// Specializations + +template<> +QT3DRENDERSHARED_PRIVATE_EXPORT CameraManager *NodeManagers::manager() const Q_DECL_NOEXCEPT; + +template<> +QT3DRENDERSHARED_PRIVATE_EXPORT EntityManager *NodeManagers::manager() const Q_DECL_NOEXCEPT; + +template<> +QT3DRENDERSHARED_PRIVATE_EXPORT MaterialManager *NodeManagers::manager() const Q_DECL_NOEXCEPT; + +template<> +QT3DRENDERSHARED_PRIVATE_EXPORT MatrixManager *NodeManagers::manager() const Q_DECL_NOEXCEPT; + +template<> +QT3DRENDERSHARED_PRIVATE_EXPORT VAOManager *NodeManagers::manager() const Q_DECL_NOEXCEPT; + +template<> +QT3DRENDERSHARED_PRIVATE_EXPORT ShaderManager *NodeManagers::manager() const Q_DECL_NOEXCEPT; + +template<> +QT3DRENDERSHARED_PRIVATE_EXPORT ShaderBuilderManager *NodeManagers::manager() const Q_DECL_NOEXCEPT; + +template<> +QT3DRENDERSHARED_PRIVATE_EXPORT TechniqueManager *NodeManagers::manager() const Q_DECL_NOEXCEPT; + +template<> +QT3DRENDERSHARED_PRIVATE_EXPORT EffectManager *NodeManagers::manager() const Q_DECL_NOEXCEPT; + +template<> +QT3DRENDERSHARED_PRIVATE_EXPORT RenderPassManager *NodeManagers::manager() const Q_DECL_NOEXCEPT; + +template<> +QT3DRENDERSHARED_PRIVATE_EXPORT TextureManager *NodeManagers::manager() const Q_DECL_NOEXCEPT; + +template<> +QT3DRENDERSHARED_PRIVATE_EXPORT TextureDataManager *NodeManagers::manager() const Q_DECL_NOEXCEPT; + +template<> +QT3DRENDERSHARED_PRIVATE_EXPORT LayerManager *NodeManagers::manager() const Q_DECL_NOEXCEPT; + +template<> +QT3DRENDERSHARED_PRIVATE_EXPORT LevelOfDetailManager *NodeManagers::manager() const Q_DECL_NOEXCEPT; + +template<> +QT3DRENDERSHARED_PRIVATE_EXPORT FilterKeyManager *NodeManagers::manager() const Q_DECL_NOEXCEPT; + +template<> +QT3DRENDERSHARED_PRIVATE_EXPORT FrameGraphManager *NodeManagers::manager() const Q_DECL_NOEXCEPT; + +template<> +QT3DRENDERSHARED_PRIVATE_EXPORT TransformManager *NodeManagers::manager() const Q_DECL_NOEXCEPT; + +template<> +QT3DRENDERSHARED_PRIVATE_EXPORT RenderTargetManager *NodeManagers::manager() const Q_DECL_NOEXCEPT; + +template<> +QT3DRENDERSHARED_PRIVATE_EXPORT SceneManager *NodeManagers::manager() const Q_DECL_NOEXCEPT; + +template<> +QT3DRENDERSHARED_PRIVATE_EXPORT AttachmentManager *NodeManagers::manager() const Q_DECL_NOEXCEPT; + +template<> +QT3DRENDERSHARED_PRIVATE_EXPORT ParameterManager *NodeManagers::manager() const Q_DECL_NOEXCEPT; + +template<> +QT3DRENDERSHARED_PRIVATE_EXPORT ShaderDataManager *NodeManagers::manager() const Q_DECL_NOEXCEPT; + +template<> +QT3DRENDERSHARED_PRIVATE_EXPORT GLBufferManager *NodeManagers::manager() const Q_DECL_NOEXCEPT; + +template<> +QT3DRENDERSHARED_PRIVATE_EXPORT TextureImageManager *NodeManagers::manager() const Q_DECL_NOEXCEPT; + +template<> +QT3DRENDERSHARED_PRIVATE_EXPORT BufferManager *NodeManagers::manager() const Q_DECL_NOEXCEPT; + +template<> +QT3DRENDERSHARED_PRIVATE_EXPORT AttributeManager *NodeManagers::manager() const Q_DECL_NOEXCEPT; + +template<> +QT3DRENDERSHARED_PRIVATE_EXPORT GeometryManager *NodeManagers::manager() const Q_DECL_NOEXCEPT; + +template<> +QT3DRENDERSHARED_PRIVATE_EXPORT GeometryRendererManager *NodeManagers::manager() const Q_DECL_NOEXCEPT; + +template<> +QT3DRENDERSHARED_PRIVATE_EXPORT ObjectPickerManager *NodeManagers::manager() const Q_DECL_NOEXCEPT; + +template<> +QT3DRENDERSHARED_PRIVATE_EXPORT RayCasterManager *NodeManagers::manager() const Q_DECL_NOEXCEPT; + +//template<> +//QT3DRENDERSHARED_PRIVATE_EXPORT BoundingVolumeDebugManager *NodeManagers::manager() const Q_DECL_NOEXCEPT; + +template<> +LightManager *NodeManagers::manager() const Q_DECL_NOEXCEPT; + +template<> +EnvironmentLightManager *NodeManagers::manager() const Q_DECL_NOEXCEPT; + +template<> +QT3DRENDERSHARED_PRIVATE_EXPORT ComputeCommandManager *NodeManagers::manager() const Q_DECL_NOEXCEPT; + +template<> +QT3DRENDERSHARED_PRIVATE_EXPORT RenderStateManager *NodeManagers::manager() const Q_DECL_NOEXCEPT; + +template<> +QT3DRENDERSHARED_PRIVATE_EXPORT ArmatureManager *NodeManagers::manager() const Q_DECL_NOEXCEPT; + +template<> +QT3DRENDERSHARED_PRIVATE_EXPORT SkeletonManager *NodeManagers::manager() const Q_DECL_NOEXCEPT; + +template<> +QT3DRENDERSHARED_PRIVATE_EXPORT JointManager *NodeManagers::manager() const Q_DECL_NOEXCEPT; + +} // Render + +} // Qt3DRender + +QT_END_NAMESPACE + + +#endif // NODEMANAGERS_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/nodraw_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/nodraw_p.h new file mode 100644 index 0000000..ae9fa67 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/nodraw_p.h @@ -0,0 +1,75 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_NODRAW_H +#define QT3DRENDER_RENDER_NODRAW_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +namespace Render { + +class NoDraw : public FrameGraphNode +{ +public: + NoDraw(); + ~NoDraw(); +}; + +} // namespace Render + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_NODRAW_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/objectpicker_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/objectpicker_p.h new file mode 100644 index 0000000..b9c308a --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/objectpicker_p.h @@ -0,0 +1,99 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Paul Lemire paul.lemire350@gmail.com +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_OBJECTPICKER_P_H +#define QT3DRENDER_RENDER_OBJECTPICKER_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QPickEvent; +typedef QSharedPointer QPickEventPtr; + +namespace Render { + +class Q_AUTOTEST_EXPORT ObjectPicker : public BackendNode +{ +public: + ObjectPicker(); + ~ObjectPicker(); + + void cleanup(); + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) final; + bool isPressed() const; + bool isHoverEnabled() const; + bool isDragEnabled() const; + + void onClicked(QPickEventPtr event); + void onMoved(QPickEventPtr event); + void onPressed(QPickEventPtr event); + void onReleased(QPickEventPtr event); + void onEntered(); + void onExited(); + +private: + void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) final; + void notifyJob(); + + bool m_isPressed; + bool m_hoverEnabled; + bool m_dragEnabled; +}; + +} // Render + +} // Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_OBJECTPICKER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/offscreensurfacehelper_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/offscreensurfacehelper_p.h new file mode 100644 index 0000000..8dc86d9 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/offscreensurfacehelper_p.h @@ -0,0 +1,86 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_OFFSCREENSURFACEHELPER_H +#define QT3DRENDER_RENDER_OFFSCREENSURFACEHELPER_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +class QOffscreenSurface; + +namespace Qt3DRender { +namespace Render { + +class AbstractRenderer; + +class Q_AUTOTEST_EXPORT OffscreenSurfaceHelper : public QObject +{ + Q_OBJECT +public: + OffscreenSurfaceHelper(AbstractRenderer *renderer, + QObject *parent = nullptr); + inline QOffscreenSurface *offscreenSurface() const { return m_offscreenSurface; } + +public slots: + void createOffscreenSurface(); + +private: + Render::AbstractRenderer *m_renderer; + QOffscreenSurface *m_offscreenSurface; +}; + +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_OFFSCREENSURFACEHELPER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/openglvertexarrayobject_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/openglvertexarrayobject_p.h new file mode 100644 index 0000000..4896df9 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/openglvertexarrayobject_p.h @@ -0,0 +1,111 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef OPENGLVERTEXARRAYOBJECT_H +#define OPENGLVERTEXARRAYOBJECT_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { +namespace Render { + +class GeometryManager; +class ShaderManager; + +typedef QPair VAOIdentifier; + +class OpenGLVertexArrayObject +{ +public: + OpenGLVertexArrayObject(); + + void bind(); + void release(); + + void create(SubmissionContext *ctx, const VAOIdentifier &key); + VAOIdentifier key() const; + void destroy(); + void cleanup(); + + bool isAbandoned(GeometryManager *geomMgr, ShaderManager *shaderMgr); + + QOpenGLVertexArrayObject *vao() { return m_vao.data(); } + const QOpenGLVertexArrayObject *vao() const { return m_vao.data(); } + + void setSpecified(bool b) { m_specified = b; } + bool isSpecified() const { return m_specified; } + + +private: + QMutex m_mutex; + SubmissionContext *m_ctx; + QScopedPointer m_vao; + bool m_specified; + bool m_supportsVao; + VAOIdentifier m_owners; + + friend class SubmissionContext; + + void saveVertexAttribute(const SubmissionContext::VAOVertexAttribute &attr); + inline void saveIndexAttribute(HGLBuffer glBufferHandle) { m_indexAttribute = glBufferHandle; } + + QVector m_vertexAttributes; + SubmissionContext::VAOIndexAttribute m_indexAttribute; +}; + +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // OPENGLVERTEXARRAYOBJECT_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/parameter_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/parameter_p.h new file mode 100644 index 0000000..4ab04bc --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/parameter_p.h @@ -0,0 +1,94 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_PARAMETER_P_H +#define QT3DRENDER_RENDER_PARAMETER_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +namespace Render { + +class ParameterManager; +class ShaderDataManager; + +class Q_AUTOTEST_EXPORT Parameter : public BackendNode +{ +public: + Parameter(); + + void cleanup(); + + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) override; + + QString name() const; + int nameId() const Q_DECL_NOTHROW { return m_nameId; } + const UniformValue &uniformValue() const { return m_uniformValue; } + +private: + void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) final; + + QString m_name; + UniformValue m_uniformValue; + int m_nameId; +}; + +} // namespace Render + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_PARAMETER_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/parameterpack_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/parameterpack_p.h new file mode 100644 index 0000000..d09f2b7 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/parameterpack_p.h @@ -0,0 +1,88 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_PARAMETERPACK_H +#define QT3DRENDER_RENDER_PARAMETERPACK_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +namespace Render { + +class ParameterPack +{ +public: + ParameterPack(); + ~ParameterPack(); + void clear(); + void appendParameter(Qt3DCore::QNodeId parameterId); + void removeParameter(Qt3DCore::QNodeId parameterId); + QVector parameters() const; + + void setParameters(const Qt3DCore::QNodeIdVector ¶meterIds) + { + m_peers = parameterIds; + } + +private: + QVector m_peers; +}; + +} // namespace Render + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_PARAMETERPACK_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/pickboundingvolumejob_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/pickboundingvolumejob_p.h new file mode 100644 index 0000000..2c38c40 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/pickboundingvolumejob_p.h @@ -0,0 +1,119 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Paul Lemire paul.lemire350@gmail.com +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_PICKBOUNDINGVOLUMEJOB_H +#define QT3DRENDER_RENDER_PICKBOUNDINGVOLUMEJOB_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include "abstractpickingjob_p.h" +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { +namespace Render { + +namespace PickingUtils { +typedef QVector HitList; +} + +class Q_AUTOTEST_EXPORT PickBoundingVolumeJob : public AbstractPickingJob +{ +public: + PickBoundingVolumeJob(); + + void setRoot(Entity *root); + void setMouseEvents(const QList> &pendingEvents); + void setKeyEvents(const QList &pendingEvents); + void markPickersDirty(); + bool pickersDirty() const { return m_pickersDirty; } + + // For unit tests + inline HObjectPicker currentPicker() const { return m_currentPicker; } + inline QVector hoveredPickers() const { return m_hoveredPickers; } + bool runHelper() override; + +protected: + void dispatchPickEvents(const QMouseEvent &event, + const PickingUtils::HitList &sphereHits, + QPickEvent::Buttons eventButton, + int eventButtons, + int eventModifiers, + bool allHitsRequested); + +private: + void clearPreviouslyHoveredPickers(); + + QList> m_pendingMouseEvents; + QList m_pendingKeyEvents; + bool m_pickersDirty; + bool m_oneHoverAtLeast; + HObjectPicker m_currentPicker; + QVector m_hoveredPickers; + QVector m_hoveredPickersToClear; +}; + +typedef QSharedPointer PickBoundingVolumeJobPtr; + +} // namespace Render + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_PICKBOUNDINGVOLUMEJOB_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/pickboundingvolumeutils_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/pickboundingvolumeutils_p.h new file mode 100644 index 0000000..780c16c --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/pickboundingvolumeutils_p.h @@ -0,0 +1,196 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_PICKBOUNDINGVOLUMEUTILS_H +#define QT3DRENDER_RENDER_PICKBOUNDINGVOLUMEUTILS_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include + + +QT_BEGIN_NAMESPACE + +class QSurface; + +namespace Qt3DRender { +namespace RayCasting { +class QAbstractCollisionQueryService; +} + +namespace Render { + +class Entity; +class Renderer; +class FrameGraphNode; +class NodeManagers; + +namespace PickingUtils { + +struct Q_AUTOTEST_EXPORT ViewportCameraAreaDetails +{ + Qt3DCore::QNodeId cameraId; + QRectF viewport; + QSize area; + QSurface *surface = nullptr; +}; +QT3D_DECLARE_TYPEINFO_3(Qt3DRender, Render, PickingUtils, ViewportCameraAreaDetails, Q_PRIMITIVE_TYPE) + +class Q_AUTOTEST_EXPORT ViewportCameraAreaGatherer +{ +public: + ViewportCameraAreaGatherer(const Qt3DCore::QNodeId &nodeId = Qt3DCore::QNodeId()) : m_targetCamera(nodeId) { } + QVector gather(FrameGraphNode *root); + +private: + Qt3DCore::QNodeId m_targetCamera; + QVector m_leaves; + + void visit(FrameGraphNode *node); + ViewportCameraAreaDetails gatherUpViewportCameraAreas(Render::FrameGraphNode *node) const; + bool isUnique(const QVector &vcaList, const ViewportCameraAreaDetails &vca) const; +}; + +class Q_AUTOTEST_EXPORT EntityGatherer +{ +public: + explicit EntityGatherer(Entity *root); + + QVector entities() const; + +private: + Entity *m_root; + mutable QVector m_entities; + mutable bool m_needsRefresh; +}; + +typedef QVector HitList; + +class Q_AUTOTEST_EXPORT HierarchicalEntityPicker +{ +public: + explicit HierarchicalEntityPicker(const RayCasting::QRay3D &ray, bool requireObjectPicker = true); + + void setFilterLayers(const Qt3DCore::QNodeIdVector &layerIds, QAbstractRayCaster::FilterMode mode); + + bool collectHits(NodeManagers *manager, Entity *root); + inline HitList hits() const { return m_hits; } + inline QVector entities() const { return m_entities; } + +private: + RayCasting::QRay3D m_ray; + HitList m_hits; + QVector m_entities; + bool m_objectPickersRequired; + Qt3DCore::QNodeIdVector m_layerIds; + QAbstractRayCaster::FilterMode m_filterMode; +}; + +struct Q_AUTOTEST_EXPORT AbstractCollisionGathererFunctor +{ + AbstractCollisionGathererFunctor(); + virtual ~AbstractCollisionGathererFunctor(); + + bool m_objectPickersRequired = true; + NodeManagers *m_manager = nullptr; + RayCasting::QRay3D m_ray; + + virtual HitList computeHits(const QVector &entities, bool allHitsRequested) = 0; + + // This define is required to work with QtConcurrent + typedef HitList result_type; + HitList operator ()(const Entity *entity) const; + virtual HitList pick(const Entity *entity) const = 0; + + bool rayHitsEntity(const Entity *entity) const; + static void sortHits(HitList &results); +}; + +struct Q_AUTOTEST_EXPORT EntityCollisionGathererFunctor : public AbstractCollisionGathererFunctor +{ + HitList computeHits(const QVector &entities, bool allHitsRequested) override; + HitList pick(const Entity *entity) const override; +}; + +struct Q_AUTOTEST_EXPORT TriangleCollisionGathererFunctor : public AbstractCollisionGathererFunctor +{ + bool m_frontFaceRequested; + bool m_backFaceRequested; + + HitList computeHits(const QVector &entities, bool allHitsRequested) override; + HitList pick(const Entity *entity) const override; +}; + +struct Q_AUTOTEST_EXPORT LineCollisionGathererFunctor : public AbstractCollisionGathererFunctor +{ + float m_pickWorldSpaceTolerance; + + HitList computeHits(const QVector &entities, bool allHitsRequested) override; + HitList pick(const Entity *entity) const override; +}; + +struct Q_AUTOTEST_EXPORT PointCollisionGathererFunctor : public AbstractCollisionGathererFunctor +{ + float m_pickWorldSpaceTolerance; + + HitList computeHits(const QVector &entities, bool allHitsRequested) override; + HitList pick(const Entity *entity) const override; +}; + +} // PickingUtils + +} // Render + +} // Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_PICKBOUNDINGVOLUMEUTILS_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/pickeventfilter_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/pickeventfilter_p.h new file mode 100644 index 0000000..dfd8c1b --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/pickeventfilter_p.h @@ -0,0 +1,90 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Paul Lemire paul.lemire350@gmail.com +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_PICKEVENTFILTER_H +#define QT3DRENDER_RENDER_PICKEVENTFILTER_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +namespace Render { + +class PickEventFilter : public QObject +{ + Q_OBJECT +public: + explicit PickEventFilter(QObject *parent = nullptr); + ~PickEventFilter(); + + QList> pendingMouseEvents(); + QList pendingKeyEvents(); + +protected: + bool eventFilter(QObject *obj, QEvent *e) final; + +private: + QList> m_pendingMouseEvents; + QList m_pendingKeyEvents; + QMutex m_mutex; +}; + +} // Render + +} // Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_PICKEVENTFILTER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/platformsurfacefilter_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/platformsurfacefilter_p.h new file mode 100644 index 0000000..425ef30 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/platformsurfacefilter_p.h @@ -0,0 +1,127 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_PLATFORMSURFACEFILTER_H +#define QT3DRENDER_RENDER_PLATFORMSURFACEFILTER_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +class QOffscreenSurface; +class QWindow; + +namespace Qt3DRender { +namespace Render { + +class AbstractRenderer; + +class PlatformSurfaceFilter : public QObject +{ + Q_OBJECT + +public: + explicit PlatformSurfaceFilter(QObject *parent = 0); + ~PlatformSurfaceFilter(); + + bool eventFilter(QObject *obj, QEvent *e) override; + + static void lockSurface(); + static void releaseSurface(); + static bool isSurfaceValid(QSurface *surface); + + template + void setSurface(T *surface) + { + if (m_obj == surface) + return; + + if (m_obj) + m_obj->removeEventFilter(this); + + // Surface is offset from QWindow/QOffscreenSurface due to multiple inheritance + m_surface = static_cast(surface); + m_obj = surface; + + if (m_obj) { + m_obj->installEventFilter(this); + markSurfaceAsValid(); + } + } +private: + QObject *m_obj; + QSurface *m_surface; + + static QSemaphore m_surfacesSemaphore; + static QHash m_surfacesValidity; + void markSurfaceAsValid(); +}; + +class QT3DRENDERSHARED_PRIVATE_EXPORT SurfaceLocker +{ +public: + explicit SurfaceLocker(QSurface *surface); + ~SurfaceLocker(); + bool isSurfaceValid() const; + +private: + QSurface *m_surface; +}; + +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_PLATFORMSURFACEFILTER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/pointsvisitor_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/pointsvisitor_p.h new file mode 100644 index 0000000..1614f18 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/pointsvisitor_p.h @@ -0,0 +1,93 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_COORDINATESVISITOR_P_H +#define QT3DRENDER_RENDER_COORDINATESVISITOR_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { +class QEntity; +} + +namespace Qt3DRender { + +namespace Render { + +class GeometryRenderer; +class NodeManagers; + +class Q_AUTOTEST_EXPORT PointsVisitor +{ +public: + explicit PointsVisitor(NodeManagers *manager) : m_manager(manager) { } + virtual ~PointsVisitor(); + + void apply(const Qt3DCore::QEntity *entity); + void apply(const GeometryRenderer *renderer, const Qt3DCore::QNodeId id); + + virtual void visit(uint ndx, const Vector3D &c) = 0; + +protected: + NodeManagers *m_manager; + Qt3DCore::QNodeId m_nodeId; +}; + +} // namespace Render + +} // namespace Qt3DRender + +QT_END_NAMESPACE + + +#endif // QT3DRENDER_RENDER_COORDINATESVISITOR_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/proximityfilter_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/proximityfilter_p.h new file mode 100644 index 0000000..e57b53d --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/proximityfilter_p.h @@ -0,0 +1,90 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_PROXIMITYFILTER_P_H +#define QT3DRENDER_RENDER_PROXIMITYFILTER_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +namespace Render { + +class Q_AUTOTEST_EXPORT ProximityFilter : public FrameGraphNode +{ +public: + ProximityFilter(); + + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) override; + + float distanceThreshold() const { return m_distanceThreshold; } + Qt3DCore::QNodeId entityId() const { return m_entityId; } + +#if defined(QT_BUILD_INTERNAL) + // For unit testing + void setDistanceThreshold(float distanceThreshold) { m_distanceThreshold = distanceThreshold; } + void setEntityId(Qt3DCore::QNodeId entityId) { m_entityId = entityId; } +#endif + +private: + void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) final; + + float m_distanceThreshold; + Qt3DCore::QNodeId m_entityId; +}; + +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_PROXIMITYFILTER_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qabstractcollisionqueryservice_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qabstractcollisionqueryservice_p.h new file mode 100644 index 0000000..fa35792 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qabstractcollisionqueryservice_p.h @@ -0,0 +1,114 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QABSTRACTCOLLISIONQUERYSERVICE_P_H +#define QT3DRENDER_QABSTRACTCOLLISIONQUERYSERVICE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +class QAbstractCollisionQueryServicePrivate; +namespace Qt3DRender { +namespace RayCasting { + +class QRay3D; +class QBoundingVolume; +class QBoundingVolumeProvider; + +class QAbstractCollisionQueryServicePrivate : public Qt3DCore::QAbstractServiceProviderPrivate +{ +public: + QAbstractCollisionQueryServicePrivate(const QString &description) + : QAbstractServiceProviderPrivate(Qt3DCore::QServiceLocator::CollisionService, description) + {} +}; + +class QT3DRENDERSHARED_EXPORT QAbstractCollisionQueryService : public Qt3DCore::QAbstractServiceProvider +{ + Q_OBJECT +public: + enum QueryMode { + FirstHit, + AllHits + }; + + virtual QQueryHandle query(const QRay3D &ray, QueryMode mode, QBoundingVolumeProvider *provider) = 0; + virtual QCollisionQueryResult::Hit query(const QRay3D &ray, const QBoundingVolume* volume) = 0; + + virtual QCollisionQueryResult fetchResult(const QQueryHandle &handle) = 0; + virtual QVector fetchAllResults() const = 0; + +protected: + QAbstractCollisionQueryService(const QString &description = QString()); + QAbstractCollisionQueryService(QAbstractCollisionQueryServicePrivate &dd); + + void setResultHandle(QCollisionQueryResult &result, const QQueryHandle &handle); + void addEntityHit(QCollisionQueryResult &result, Qt3DCore::QNodeId entity, const Vector3D &intersection, + float distance, const Vector3D &uvw); + +private: + Q_DECLARE_PRIVATE(QAbstractCollisionQueryService) +}; + +} // RayCasting +} // Qt3DRender + +QT_END_NAMESPACE + +Q_DECLARE_METATYPE(Qt3DRender::RayCasting::QAbstractCollisionQueryService::QueryMode) // LCOV_EXCL_LINE + +#endif // QT3DRENDER_QABSTRACTCOLLISIONQUERYSERVICE_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qabstractlight_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qabstractlight_p.h new file mode 100644 index 0000000..f7831dc --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qabstractlight_p.h @@ -0,0 +1,84 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QABSTRACTLIGHT_P_H +#define QT3DRENDER_QABSTRACTLIGHT_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QAbstractLight; + +class QT3DRENDERSHARED_PRIVATE_EXPORT QAbstractLightPrivate : public Qt3DCore::QComponentPrivate +{ +public: + explicit QAbstractLightPrivate(QAbstractLight::Type type); + ~QAbstractLightPrivate(); + + Q_DECLARE_PUBLIC(QAbstractLight) + QAbstractLight::Type m_type; + QShaderData *m_shaderData; +}; + +struct QAbstractLightData +{ + Qt3DCore::QNodeId shaderDataId; +}; + +} + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QABSTRACTLIGHT_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qabstractraycaster_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qabstractraycaster_p.h new file mode 100644 index 0000000..2c4006e --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qabstractraycaster_p.h @@ -0,0 +1,112 @@ +/**************************************************************************** +** +** Copyright (C) 2018 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QABSTRACTRAYCASTER_P_H +#define QT3DRENDER_QABSTRACTRAYCASTER_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QLayer; + +/*! + \internal +*/ +class QT3DRENDERSHARED_PRIVATE_EXPORT QAbstractRayCasterPrivate : public Qt3DCore::QComponentPrivate +{ +public: + QAbstractRayCasterPrivate(); + + enum RayCasterType { + WorldSpaceRayCaster, + ScreenScapeRayCaster + }; + + static QAbstractRayCasterPrivate *get(QAbstractRayCaster *obj); + static const QAbstractRayCasterPrivate *get(const QAbstractRayCaster *obj); + static void updateHitEntites(QAbstractRayCaster::Hits &hits, Qt3DCore::QScene *scene); + + RayCasterType m_rayCasterType = WorldSpaceRayCaster; + QAbstractRayCaster::RunMode m_runMode = QAbstractRayCaster::SingleShot; + QAbstractRayCaster::Hits m_hits; + QPoint m_position; + QVector3D m_origin; + QVector3D m_direction = QVector3D(0., 0., 1.f); + float m_length = 1.f; + QAbstractRayCaster::FilterMode m_filterMode = QAbstractRayCaster::AcceptAnyMatchingLayers; + QVector m_layers; + + virtual void dispatchHits(const QAbstractRayCaster::Hits &hits); + + Q_DECLARE_PUBLIC(QAbstractRayCaster) +}; + +struct QAbstractRayCasterData +{ + QAbstractRayCaster::RunMode runMode; + QAbstractRayCasterPrivate::RayCasterType casterType; + QPoint position; + QVector3D origin; + QVector3D direction; + float length = 1.f; + QAbstractRayCaster::FilterMode filterMode; + Qt3DCore::QNodeIdVector layerIds; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QABSTRACTRAYCASTER_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qabstracttexture_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qabstracttexture_p.h new file mode 100644 index 0000000..a27ae37 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qabstracttexture_p.h @@ -0,0 +1,124 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QABSTRACTTEXTURE_P_H +#define QT3DRENDER_QABSTRACTTEXTURE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QT3DRENDERSHARED_PRIVATE_EXPORT QAbstractTexturePrivate : public Qt3DCore::QNodePrivate +{ +public : + QAbstractTexturePrivate(); + + Q_DECLARE_PUBLIC(QAbstractTexture) + + QAbstractTexture::Target m_target; + QAbstractTexture::TextureFormat m_format; + int m_width, m_height, m_depth; + bool m_autoMipMap; + + QVector m_data; + + QAbstractTexture::Filter m_minFilter, m_magFilter; + // FIXME, store per direction + QTextureWrapMode m_wrapMode; + QAbstractTexture::Status m_status; + float m_maximumAnisotropy; + QAbstractTexture::ComparisonFunction m_comparisonFunction; + QAbstractTexture::ComparisonMode m_comparisonMode; + QVector m_textureImages; + int m_layers; + int m_samples; + + QTextureGeneratorPtr dataFunctor() const; + void setDataFunctor(const QTextureGeneratorPtr &generator); + +private: + QTextureGeneratorPtr m_dataFunctor; +}; + +struct QAbstractTextureData +{ + QAbstractTexture::Target target; + QAbstractTexture::TextureFormat format; + int width; + int height; + int depth; + bool autoMipMap; + QAbstractTexture::Filter minFilter; + QAbstractTexture::Filter magFilter; + QTextureWrapMode::WrapMode wrapModeX; + QTextureWrapMode::WrapMode wrapModeY; + QTextureWrapMode::WrapMode wrapModeZ; + float maximumAnisotropy; + QAbstractTexture::ComparisonFunction comparisonFunction; + QAbstractTexture::ComparisonMode comparisonMode; + Qt3DCore::QNodeIdVector textureImageIds; + int layers; + int samples; + QTextureGeneratorPtr dataFunctor; +}; + +} // QT3D + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QABSTRACTTEXTURE_P_H + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qabstracttextureimage_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qabstracttextureimage_p.h new file mode 100644 index 0000000..f0d8360 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qabstracttextureimage_p.h @@ -0,0 +1,90 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QABSTRACTTEXTUREIMAGE_P_H +#define QT3DRENDER_QABSTRACTTEXTUREIMAGE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QAbstractTextureImage; + +class QT3DRENDERSHARED_PRIVATE_EXPORT QAbstractTextureImagePrivate : public Qt3DCore::QNodePrivate +{ +public: + QAbstractTextureImagePrivate(); + ~QAbstractTextureImagePrivate(); + + Q_DECLARE_PUBLIC(QAbstractTextureImage) + + int m_mipLevel; + int m_layer; + QAbstractTexture::CubeMapFace m_face; +}; + +struct QAbstractTextureImageData +{ + int mipLevel; + int layer; + QAbstractTexture::CubeMapFace face; + QTextureImageDataGeneratorPtr generator; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QABSTRACTTEXTUREIMAGE_P_H + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qalphatest_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qalphatest_p.h new file mode 100644 index 0000000..e0b703f --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qalphatest_p.h @@ -0,0 +1,83 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QALPHATEST_P_H +#define QT3DRENDER_QALPHATEST_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QAlphaTestPrivate : public QRenderStatePrivate +{ +public: + QAlphaTestPrivate() + : QRenderStatePrivate(Render::AlphaTestMask) + , m_alphaFunction(QAlphaTest::Never) + , m_referenceValue(0.0f) + { + } + + Q_DECLARE_PUBLIC(QAlphaTest) + QAlphaTest::AlphaFunction m_alphaFunction; + float m_referenceValue; +}; + +struct QAlphaTestData +{ + QAlphaTest::AlphaFunction alphaFunction; + float referenceValue; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QALPHATEST_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qattribute_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qattribute_p.h new file mode 100644 index 0000000..d338534 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qattribute_p.h @@ -0,0 +1,100 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QATTRIBUTE_P_H +#define QT3DRENDER_QATTRIBUTE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QAttribute; + +class QT3DRENDERSHARED_PRIVATE_EXPORT QAttributePrivate : public Qt3DCore::QNodePrivate +{ +public: + Q_DECLARE_PUBLIC(QAttribute) + + QAttributePrivate(); + + QBuffer *m_buffer; + QString m_name; + QAttribute::VertexBaseType m_vertexBaseType; + uint m_vertexSize; + uint m_count; + uint m_byteStride; + uint m_byteOffset; + uint m_divisor; + QAttribute::AttributeType m_attributeType; +}; + +struct QAttributeData +{ + Qt3DCore::QNodeId bufferId; + QString name; + QAttribute::VertexBaseType vertexBaseType; + uint vertexSize; + uint count; + uint byteStride; + uint byteOffset; + uint divisor; + QAttribute::AttributeType attributeType; +}; + +} // Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QATTRIBUTE_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qaxisalignedboundingbox_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qaxisalignedboundingbox_p.h new file mode 100644 index 0000000..7a88190 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qaxisalignedboundingbox_p.h @@ -0,0 +1,171 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QAXISALIGNEDBOUNDINGBOX_P_H +#define QT3DRENDER_QAXISALIGNEDBOUNDINGBOX_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +class QDebug; + +namespace Qt3DRender { + +class QAxisAlignedBoundingBox +{ +public: + inline QAxisAlignedBoundingBox() + : m_center(), + m_radii() + {} + + inline explicit QAxisAlignedBoundingBox(const QVector &points) + : m_center(), + m_radii() + { + update(points); + } + + void clear() + { + m_center = QVector3D(); + m_radii = QVector3D(); + } + + bool isNull() const { return m_center.isNull() && m_radii.isNull(); } + + void QT3DRENDERSHARED_PRIVATE_EXPORT update(const QVector &points); + + inline QVector3D center() const { return m_center; } + inline QVector3D radii() const { return m_radii; } + + inline QVector3D minPoint() const { return m_center - m_radii; } + inline QVector3D maxPoint() const { return m_center + m_radii; } + + inline float xExtent() const { return 2.0f * m_radii.x(); } + inline float yExtent() const { return 2.0f * m_radii.y(); } + inline float zExtent() const { return 2.0f * m_radii.z(); } + + inline float maxExtent() const { return qMax( xExtent(), qMax( yExtent(), zExtent() ) ); } + inline float minExtent() const { return qMin( xExtent(), qMin( yExtent(), zExtent() ) ); } + + inline bool contains( const QVector3D& pt ) const + { + QVector3D minP(minPoint()), maxP(maxPoint()); + if ((pt.x() < minP.x()) || (pt.x() > maxP.x()) || + (pt.y() < minP.y()) || (pt.y() > maxP.y()) || + (pt.z() < minP.z()) || (pt.z() > maxP.z()) ) + { + return false; + } + return true; + } + + inline void expandToContain(const QVector3D &pt) + { + QVector pts = QVector() << pt; + update(pts); + } + + inline void expandToContain(const QAxisAlignedBoundingBox &other) + { + QVector pts = QVector() << other.minPoint() << other.maxPoint(); + update(pts); + } + + inline QAxisAlignedBoundingBox transformBy(const QMatrix4x4 &mat) const + { + QAxisAlignedBoundingBox r; + r.m_center = mat.map(m_center); + r.m_radii = mat.map(m_radii); + return r; + } + + inline QAxisAlignedBoundingBox &transform(const QMatrix4x4 &mat) + { + m_center = mat.map(m_center); + m_radii = mat.map(m_radii); + return *this; + } + +private: + QVector3D m_center; + QVector3D m_radii; + + friend bool intersects(const QAxisAlignedBoundingBox &a, + const QAxisAlignedBoundingBox &b); +}; + +QDebug operator<<(QDebug dbg, const QAxisAlignedBoundingBox &c); + +inline bool intersects(const QAxisAlignedBoundingBox &a, + const QAxisAlignedBoundingBox &b) +{ + // Test y axis last as this is often the least discriminatory in OpenGL applications + // where worlds tend to be mostly in the xz-plane + if (qAbs(a.m_center[0] - b.m_center[0]) > a.m_radii[0] + b.m_radii[0]) + return false; + if (qAbs(a.m_center[2] - b.m_center[2]) > a.m_radii[2] + b.m_radii[2]) + return false; + if (qAbs(a.m_center[1] - b.m_center[1]) > a.m_radii[1] + b.m_radii[1]) + return false; + return true; +} + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QAXISALIGNEDBOUNDINGBOX_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qblendequation_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qblendequation_p.h new file mode 100644 index 0000000..228e61f --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qblendequation_p.h @@ -0,0 +1,81 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QBLENDEQUATION_P_H +#define QT3DRENDER_QBLENDEQUATION_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QT3DRENDERSHARED_PRIVATE_EXPORT QBlendEquationPrivate : public QRenderStatePrivate +{ +public: + QBlendEquationPrivate() + : QRenderStatePrivate(Render::BlendStateMask) + , m_blendFunction(QBlendEquation::Add) + { + } + + Q_DECLARE_PUBLIC(QBlendEquation) + QBlendEquation::BlendFunction m_blendFunction; +}; + +struct QBlendEquationData +{ + QBlendEquation::BlendFunction blendFunction; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QBLENDEQUATION_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qblendequationarguments_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qblendequationarguments_p.h new file mode 100644 index 0000000..1100392 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qblendequationarguments_p.h @@ -0,0 +1,94 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QBLENDEQUATIONARGUMENTS_P_H +#define QT3DRENDER_QBLENDEQUATIONARGUMENTS_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QT3DRENDERSHARED_PRIVATE_EXPORT QBlendEquationArgumentsPrivate : public QRenderStatePrivate +{ +public: + QBlendEquationArgumentsPrivate(Render::StateMask type = Render::BlendEquationArgumentsMask) + : QRenderStatePrivate(type) + , m_sourceRgb(QBlendEquationArguments::Zero) + , m_sourceAlpha(QBlendEquationArguments::One) + , m_destinationRgb(QBlendEquationArguments::Zero) + , m_destinationAlpha(QBlendEquationArguments::Zero) + , m_bufferIndex(-1) + { + } + + Q_DECLARE_PUBLIC(QBlendEquationArguments) + + QBlendEquationArguments::Blending m_sourceRgb; + QBlendEquationArguments::Blending m_sourceAlpha; + QBlendEquationArguments::Blending m_destinationRgb; + QBlendEquationArguments::Blending m_destinationAlpha; + int m_bufferIndex; +}; + +struct QBlendEquationArgumentsData +{ + QBlendEquationArguments::Blending sourceRgb; + QBlendEquationArguments::Blending sourceAlpha; + QBlendEquationArguments::Blending destinationRgb; + QBlendEquationArguments::Blending destinationAlpha; + int bufferIndex; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QBLENDEQUATIONARGUMENTS_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qblitframebuffer_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qblitframebuffer_p.h new file mode 100644 index 0000000..8b5dc21 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qblitframebuffer_p.h @@ -0,0 +1,95 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QBLITFRAMEBUFFER_P_H +#define QT3DRENDER_QBLITFRAMEBUFFER_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QBlitFramebufferPrivate : public QFrameGraphNodePrivate +{ +public: + QBlitFramebufferPrivate(); + + QRenderTarget *m_source; + QRenderTarget *m_destination; + QRect m_sourceRect; + QRect m_destinationRect; + Qt3DRender::QRenderTargetOutput::AttachmentPoint m_sourceAttachmentPoint; + Qt3DRender::QRenderTargetOutput::AttachmentPoint m_destinationAttachmentPoint; + QBlitFramebuffer::InterpolationMethod m_interpolationMethod; + + Q_DECLARE_PUBLIC(QBlitFramebuffer) +}; + +struct QBlitFramebufferData +{ + Qt3DCore::QNodeId m_sourceRenderTargetId; + Qt3DCore::QNodeId m_destinationRenderTargetId; + QRect m_sourceRect; + QRect m_destinationRect; + Qt3DRender::QRenderTargetOutput::AttachmentPoint m_sourceAttachmentPoint; + Qt3DRender::QRenderTargetOutput::AttachmentPoint m_destinationAttachmentPoint; + QBlitFramebuffer::InterpolationMethod m_interpolationMethod; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QBLITFRAMEBUFFER_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qboundingvolume_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qboundingvolume_p.h new file mode 100644 index 0000000..b63463f --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qboundingvolume_p.h @@ -0,0 +1,89 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QBOUNDINGVOLUME_P_H +#define QT3DRENDER_QBOUNDINGVOLUME_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE +namespace Qt3DRender { +namespace RayCasting { + +class QRay3D; + +class QT3DRENDERSHARED_EXPORT QBoundingVolume +{ +public: + QBoundingVolume(); + virtual ~QBoundingVolume(); + + enum Type { + Sphere = 0, + Triangle + }; + + virtual Qt3DCore::QNodeId id() const = 0; + virtual bool intersects(const QRay3D &ray, Vector3D *q = nullptr, + Vector3D *uvw = nullptr) const = 0; + + virtual Type type() const = 0; +}; + +} // namespace RayCasting +} // namespace Qt3DRender + +QT_END_NAMESPACE + +Q_DECLARE_METATYPE(Qt3DRender::RayCasting::QBoundingVolume*) // LCOV_EXCL_LINE + +#endif // QT3DRENDER_QBOUNDINGVOLUME_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qboundingvolumeprovider_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qboundingvolumeprovider_p.h new file mode 100644 index 0000000..ae9fd65 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qboundingvolumeprovider_p.h @@ -0,0 +1,75 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QBOUNDINGVOLUMEPROVIDER_P_H +#define QT3DRENDER_QBOUNDINGVOLUMEPROVIDER_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { +namespace RayCasting { + +class QBoundingVolume; + +class QT3DRENDERSHARED_EXPORT QBoundingVolumeProvider +{ +public: + virtual ~QBoundingVolumeProvider(); + virtual QVector boundingVolumes() const = 0; +}; + +} // namespace RayCasting +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QBOUNDINGVOLUMEPROVIDER_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qbuffer_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qbuffer_p.h new file mode 100644 index 0000000..a342518 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qbuffer_p.h @@ -0,0 +1,100 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QBUFFER_P_H +#define QT3DRENDER_QBUFFER_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QT3DRENDERSHARED_EXPORT QBufferPrivate : public Qt3DCore::QNodePrivate +{ +public: + Q_DECLARE_PUBLIC(QBuffer) + + QBufferPrivate(); + + QByteArray m_data; + QBuffer::BufferType m_type; + QBuffer::UsageType m_usage; + QBufferDataGeneratorPtr m_functor; + bool m_syncData; + QBuffer::AccessType m_access; +}; + +struct QBufferData +{ + QByteArray data; + QBuffer::UsageType usage; + QBufferDataGeneratorPtr functor; + bool syncData; + QBuffer::AccessType access; +}; + +struct QBufferUpdate +{ + int offset; + QByteArray data; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE +Q_DECLARE_METATYPE(Qt3DRender::QBufferUpdate) // LCOV_EXCL_LINE + +#endif // QT3DRENDER_QBUFFER_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qbuffercapture_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qbuffercapture_p.h new file mode 100644 index 0000000..5e642ac --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qbuffercapture_p.h @@ -0,0 +1,74 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Juan José Casafranca +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QBUFFERCAPTURE_P_H +#define QT3DRENDER_QBUFFERCAPTURE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender +{ + +class QBufferCapturePrivate : public QFrameGraphNodePrivate +{ +public: + QBufferCapturePrivate(); + + Q_DECLARE_PUBLIC(QBufferCapture) +}; + +} //Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QBUFFERCAPTURE_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qcamera_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qcamera_p.h new file mode 100644 index 0000000..1e8464d --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qcamera_p.h @@ -0,0 +1,89 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_CAMERA_P_H +#define QT3DRENDER_CAMERA_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QT3DRENDERSHARED_PRIVATE_EXPORT QCameraPrivate : public Qt3DCore::QEntityPrivate +{ +public: + QCameraPrivate(); + + Q_DECLARE_PUBLIC(QCamera) + + void updateViewMatrixAndTransform(bool doEmit = true); + + QVector3D m_position; + QVector3D m_viewCenter; + QVector3D m_upVector; + + QVector3D m_cameraToCenter; // The vector from the camera position to the view center + bool m_viewMatrixDirty; + + // Components + QCameraLens *m_lens; + Qt3DCore::QTransform *m_transform; + QMatrix4x4 m_viewMatrix; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_CAMERA_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qcameralens_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qcameralens_p.h new file mode 100644 index 0000000..0ec1979 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qcameralens_p.h @@ -0,0 +1,148 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_CAMERALENS_P_H +#define QT3DRENDER_CAMERALENS_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +#include "qcameralens.h" + +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QT3DRENDERSHARED_PRIVATE_EXPORT QCameraLensPrivate : public Qt3DCore::QComponentPrivate +{ +public: + QCameraLensPrivate(); + + inline void updateProjectionMatrix() + { + switch (m_projectionType) { + case QCameraLens::OrthographicProjection: + updateOrthographicProjection(); + break; + case QCameraLens::PerspectiveProjection: + updatePerpectiveProjection(); + break; + case QCameraLens::FrustumProjection: + updateFrustumProjection(); + break; + case QCameraLens::CustomProjection: + break; + } + } + + Q_DECLARE_PUBLIC(QCameraLens) + + QCameraLens::ProjectionType m_projectionType; + + float m_nearPlane; + float m_farPlane; + + float m_fieldOfView; + float m_aspectRatio; + + float m_left; + float m_right; + float m_bottom; + float m_top; + + mutable QMatrix4x4 m_projectionMatrix; + + float m_exposure; + + Qt3DCore::QNodeCommand::CommandId m_pendingViewAllCommand; + void processViewAllCommand(Qt3DCore::QNodeCommand::CommandId commandId, const QVariant &data); + +private: + inline void updatePerpectiveProjection() + { + Q_Q(QCameraLens); + m_projectionMatrix.setToIdentity(); + m_projectionMatrix.perspective(m_fieldOfView, m_aspectRatio, m_nearPlane, m_farPlane); + Q_EMIT q->projectionMatrixChanged(m_projectionMatrix); + } + + inline void updateOrthographicProjection() + { + Q_Q(QCameraLens); + m_projectionMatrix.setToIdentity(); + m_projectionMatrix.ortho(m_left, m_right, m_bottom, m_top, m_nearPlane, m_farPlane); + Q_EMIT q->projectionMatrixChanged(m_projectionMatrix); + } + + inline void updateFrustumProjection() + { + Q_Q(QCameraLens); + m_projectionMatrix.setToIdentity(); + m_projectionMatrix.frustum(m_left, m_right, m_bottom, m_top, m_nearPlane, m_farPlane); + Q_EMIT q->projectionMatrixChanged(m_projectionMatrix); + } +}; + +struct QCameraLensData +{ + QMatrix4x4 projectionMatrix; + float exposure; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_CAMERALENS_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qcameraselector_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qcameraselector_p.h new file mode 100644 index 0000000..9e30a54 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qcameraselector_p.h @@ -0,0 +1,81 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QCAMERASELECTOR_P_H +#define QT3DRENDER_QCAMERASELECTOR_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QCameraSelector; + +class QCameraSelectorPrivate : public QFrameGraphNodePrivate +{ +public: + QCameraSelectorPrivate(); + + Q_DECLARE_PUBLIC(QCameraSelector) + Qt3DCore::QEntity *m_camera; +}; + +struct QCameraSelectorData +{ + Qt3DCore::QNodeId cameraId; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QCAMERASELECTOR_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qclearbuffers_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qclearbuffers_p.h new file mode 100644 index 0000000..55e7d2f --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qclearbuffers_p.h @@ -0,0 +1,87 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QCLEARBUFFERS_P_H +#define QT3DRENDER_QCLEARBUFFERS_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QClearBuffersPrivate : public QFrameGraphNodePrivate +{ +public: + QClearBuffersPrivate(); + + Q_DECLARE_PUBLIC(QClearBuffers) + QClearBuffers::BufferType m_buffersType; + QColor m_clearColor; + float m_clearDepthValue; + int m_clearStencilValue; + QRenderTargetOutput *m_buffer; +}; + +struct QClearBuffersData +{ + QClearBuffers::BufferType buffersType; + QColor clearColor; + float clearDepthValue; + int clearStencilValue; + Qt3DCore::QNodeId bufferId; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QCLEARBUFFERS_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qclipplane_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qclipplane_p.h new file mode 100644 index 0000000..517831e --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qclipplane_p.h @@ -0,0 +1,85 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QCLIPPLANE_P_H +#define QT3DRENDER_QCLIPPLANE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QT3DRENDERSHARED_PRIVATE_EXPORT QClipPlanePrivate : public QRenderStatePrivate +{ +public: + QClipPlanePrivate() + : QRenderStatePrivate(Render::ClipPlaneMask) + , m_planeIndex(0) + , m_normal() + , m_distance(0.0f) + {} + + int m_planeIndex; + QVector3D m_normal; + float m_distance; +}; + +struct QClipPlaneData +{ + QVector3D normal; + float distance; + int planeIndex; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QCLIPPLANE_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qcollisionqueryresult_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qcollisionqueryresult_p.h new file mode 100644 index 0000000..24371d3 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qcollisionqueryresult_p.h @@ -0,0 +1,166 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QCOLLISIONQUERYRESULT_P_H +#define QT3DRENDER_QCOLLISIONQUERYRESULT_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { +namespace RayCasting { + +typedef int QQueryHandle; +class QCollisionQueryResultPrivate; + +class QT3DRENDERSHARED_EXPORT QCollisionQueryResult +{ +public: + struct Hit { + enum HitType { + Entity, + Point, + Edge, + Triangle + }; + + Hit() + : m_type(Entity) + , m_distance(-1.f) + , m_primitiveIndex(0) + { + m_vertexIndex[0] = m_vertexIndex[1] = m_vertexIndex[2] = 0; + } + + Hit(Qt3DCore::QNodeId entity, const Vector3D &intersection, float distance, const Vector3D &uvw) + : m_entityId(entity) + , m_intersection(intersection) + , m_distance(distance) + , m_uvw(uvw) + { + } + + Qt3DCore::QNodeId m_entityId; + HitType m_type; + Vector3D m_intersection; + float m_distance; + uint m_primitiveIndex; + uint m_vertexIndex[3]; + Vector3D m_uvw; + }; + + QCollisionQueryResult(); + QCollisionQueryResult(const QCollisionQueryResult &); + ~QCollisionQueryResult(); + + QCollisionQueryResult &operator=(const QCollisionQueryResult &); +#ifdef Q_COMPILER_RVALUE_REFS + QCollisionQueryResult &operator=(QCollisionQueryResult &&other) Q_DECL_NOTHROW + { + swap(other); + return *this; + } +#endif + + void swap(QCollisionQueryResult &other) Q_DECL_NOTHROW + { + qSwap(d_ptr, other.d_ptr); + } + + QQueryHandle handle() const; + QVector hits() const; + QVector entitiesHit() const; + +private: + friend class QAbstractCollisionQueryService; + + explicit QCollisionQueryResult(QCollisionQueryResultPrivate &p); + + QSharedDataPointer d_ptr; + // Q_DECLARE_PRIVATE equivalent for shared data pointers + QCollisionQueryResultPrivate *d_func(); + inline const QCollisionQueryResultPrivate *d_func() const + { + return d_ptr.constData(); + } +}; +QT3D_DECLARE_TYPEINFO_2(Qt3DRender, RayCasting, QCollisionQueryResult::Hit, Q_PRIMITIVE_TYPE) +QT3D_DECLARE_SHARED_2(Qt3DRender, RayCasting, QCollisionQueryResult) + +class QCollisionQueryResultPrivate : public QSharedData +{ +public: + explicit QCollisionQueryResultPrivate(); + explicit QCollisionQueryResultPrivate(const QCollisionQueryResultPrivate ©); + + void setHandle(const QQueryHandle &handle); + void addEntityHit(Qt3DCore::QNodeId entity, const Vector3D& intersection, float distance, + const Vector3D& uvw); + + QQueryHandle m_handle; + QVector m_hits; +}; + +inline bool operator==(const QCollisionQueryResult::Hit& left, const QCollisionQueryResult::Hit& right) +{ + return left.m_entityId == right.m_entityId; +} + +} // RayCasting +} // Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QCOLLISIONQUERYRESULT_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qcolormask_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qcolormask_p.h new file mode 100644 index 0000000..1e2386e --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qcolormask_p.h @@ -0,0 +1,89 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QCOLORMASK_P_H +#define QT3DRENDER_QCOLORMASK_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QT3DRENDERSHARED_PRIVATE_EXPORT QColorMaskPrivate : public QRenderStatePrivate +{ +public: + QColorMaskPrivate() + : QRenderStatePrivate(Render::ColorStateMask) + , m_redMasked(true) + , m_greenMasked(true) + , m_blueMasked(true) + , m_alphaMasked(true) + {} + + bool m_redMasked; + bool m_greenMasked; + bool m_blueMasked; + bool m_alphaMasked; + + Q_DECLARE_PUBLIC(QColorMask) +}; + +struct QColorMaskData +{ + bool redMasked; + bool greenMasked; + bool blueMasked; + bool alphaMasked; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QCOLORMASK_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qcomputecommand_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qcomputecommand_p.h new file mode 100644 index 0000000..874edb1 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qcomputecommand_p.h @@ -0,0 +1,82 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QCOMPUTECOMMAND_P_H +#define QT3DRENDER_QCOMPUTECOMMAND_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QT3DRENDERSHARED_PRIVATE_EXPORT QComputeCommandPrivate : public Qt3DCore::QComponentPrivate +{ +public: + QComputeCommandPrivate(); + + int m_workGroupX; + int m_workGroupY; + int m_workGroupZ; +}; + +struct QComputeCommandData +{ + int workGroupX; + int workGroupY; + int workGroupZ; +}; + +} // Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QCOMPUTECOMMAND_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qcullface_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qcullface_p.h new file mode 100644 index 0000000..98cf994 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qcullface_p.h @@ -0,0 +1,81 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QCULLFACE_P_H +#define QT3DRENDER_QCULLFACE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QT3DRENDERSHARED_PRIVATE_EXPORT QCullFacePrivate : public QRenderStatePrivate +{ +public: + QCullFacePrivate() + : QRenderStatePrivate(Render::CullFaceStateMask) + , m_mode(QCullFace::Back) + { + } + + Q_DECLARE_PUBLIC(QCullFace) + QCullFace::CullingMode m_mode; +}; + +struct QCullFaceData +{ + QCullFace::CullingMode mode; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QCULLFACE_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qdepthtest_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qdepthtest_p.h new file mode 100644 index 0000000..555be2d --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qdepthtest_p.h @@ -0,0 +1,81 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QDEPTHTEST_P_H +#define QT3DRENDER_QDEPTHTEST_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QT3DRENDERSHARED_PRIVATE_EXPORT QDepthTestPrivate : public QRenderStatePrivate +{ +public : + QDepthTestPrivate() + : QRenderStatePrivate(Render::DepthTestStateMask) + , m_depthFunction(QDepthTest::Never) + { + } + + Q_DECLARE_PUBLIC(QDepthTest) + QDepthTest::DepthFunction m_depthFunction; +}; + +struct QDepthTestData +{ + QDepthTest::DepthFunction depthFunction; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QDEPTHTEST_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qdirectionallight_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qdirectionallight_p.h new file mode 100644 index 0000000..ea80913 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qdirectionallight_p.h @@ -0,0 +1,75 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QDIRECTIONALLIGHT_P_H +#define QT3DRENDER_QDIRECTIONALLIGHT_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QDirectionalLight; + +class QT3DRENDERSHARED_PRIVATE_EXPORT QDirectionalLightPrivate : QAbstractLightPrivate +{ +public: + QDirectionalLightPrivate(); + + Q_DECLARE_PUBLIC(QDirectionalLight) +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QDIRECTIONALLIGHT_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qdispatchcompute_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qdispatchcompute_p.h new file mode 100644 index 0000000..d64f265 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qdispatchcompute_p.h @@ -0,0 +1,83 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QDISPATCHCOMPUTE_P_H +#define QT3DRENDER_QDISPATCHCOMPUTE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QDispatchComputePrivate : public QFrameGraphNodePrivate +{ +public: + QDispatchComputePrivate() + : QFrameGraphNodePrivate() + , m_workGroupX(1) + , m_workGroupY(1) + , m_workGroupZ(1) + {} + + int m_workGroupX; + int m_workGroupY; + int m_workGroupZ; +}; + +struct QDispatchComputeData +{ + int workGroupX; + int workGroupY; + int workGroupZ; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QDISPATCHCOMPUTE_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qeffect_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qeffect_p.h new file mode 100644 index 0000000..39c7d1e --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qeffect_p.h @@ -0,0 +1,86 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QEFFECT_P_H +#define QT3DRENDER_QEFFECT_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QEffect; +class QParameter; +class QTechnique; + +class QT3DRENDERSHARED_PRIVATE_EXPORT QEffectPrivate : public Qt3DCore::QNodePrivate +{ +public : + QEffectPrivate(); + + Q_DECLARE_PUBLIC(QEffect) + QVector m_parameters; + QVector m_techniques; +}; + +struct QEffectData +{ + Qt3DCore::QNodeIdVector parameterIds; + Qt3DCore::QNodeIdVector techniqueIds; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QEFFECT_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qenvironmentlight_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qenvironmentlight_p.h new file mode 100644 index 0000000..f4fa97b --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qenvironmentlight_p.h @@ -0,0 +1,89 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QENVIRONMENTLIGHT_P_H +#define QT3DRENDER_QENVIRONMENTLIGHT_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QAbstractTexture; +class QEnvironmentLight; + +class QT3DRENDERSHARED_PRIVATE_EXPORT QEnvironmentLightPrivate : public Qt3DCore::QComponentPrivate +{ +public: + explicit QEnvironmentLightPrivate(); + ~QEnvironmentLightPrivate(); + + Q_DECLARE_PUBLIC(QEnvironmentLight) + QShaderData *m_shaderData; + QAbstractTexture *m_irradiance; + QAbstractTexture *m_specular; + +private: + void _q_updateEnvMapsSize(); +}; + +struct QEnvironmentLightData +{ + Qt3DCore::QNodeId shaderDataId; +}; + +} + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QENVIRONMENTLIGHT_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qfilterkey_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qfilterkey_p.h new file mode 100644 index 0000000..4050bc2 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qfilterkey_p.h @@ -0,0 +1,82 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QFILTERKEY_P_H +#define QT3DRENDER_QFILTERKEY_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QT3DRENDERSHARED_PRIVATE_EXPORT QFilterKeyPrivate : public Qt3DCore::QNodePrivate +{ +public: + QFilterKeyPrivate(); + + Q_DECLARE_PUBLIC(QFilterKey) + QString m_name; + QVariant m_value; +}; + +struct QFilterKeyData +{ + QString name; + QVariant value; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QFILTERKEY_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qframegraphnode_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qframegraphnode_p.h new file mode 100644 index 0000000..c030176 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qframegraphnode_p.h @@ -0,0 +1,80 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QFRAMEGRAPHNODE_P_H +#define QT3DRENDER_QFRAMEGRAPHNODE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QFrameGraphNode; + +class QFrameGraphNodePrivate : public Qt3DCore::QNodePrivate +{ +public: + QFrameGraphNodePrivate(); + QVector childFrameGraphNodes() const; + + static QFrameGraphNodePrivate *get(QFrameGraphNode *node) { return node->d_func(); } + static const QFrameGraphNodePrivate *get(const QFrameGraphNode *node) { return node->d_func(); } + + Q_DECLARE_PUBLIC(QFrameGraphNode) +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QFRAMEGRAPHNODE_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qframegraphnodecreatedchange_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qframegraphnodecreatedchange_p.h new file mode 100644 index 0000000..c0437af --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qframegraphnodecreatedchange_p.h @@ -0,0 +1,82 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_QFRAMEGRAPHNODECREATEDCHANGE_P_H +#define QT3DRENDER_RENDER_QFRAMEGRAPHNODECREATEDCHANGE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QFrameGraphNode; + +class QFrameGraphNodeCreatedChangeBasePrivate : public Qt3DCore::QNodeCreatedChangeBasePrivate +{ +public: + QFrameGraphNodeCreatedChangeBasePrivate(const QFrameGraphNode *node); + + Qt3DCore::QNodeId m_parentFrameGraphNodeId; + Qt3DCore::QNodeIdVector m_childFrameGraphNodeIds; + + static QFrameGraphNodeCreatedChangeBasePrivate *get(QFrameGraphNodeCreatedChangeBase *change) + { + return change->d_func(); + } + static const QFrameGraphNodeCreatedChangeBasePrivate *get(const QFrameGraphNodeCreatedChangeBase *change) + { + return change->d_func(); + } +}; + +} // Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_QFRAMEGRAPHNODECREATEDCHANGE_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qfrontface_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qfrontface_p.h new file mode 100644 index 0000000..3849714 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qfrontface_p.h @@ -0,0 +1,81 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QFRONTFACE_P_H +#define QT3DRENDER_QFRONTFACE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QT3DRENDERSHARED_PRIVATE_EXPORT QFrontFacePrivate : public QRenderStatePrivate +{ +public: + QFrontFacePrivate() + : QRenderStatePrivate(Render::FrontFaceStateMask) + , m_direction(QFrontFace::ClockWise) + { + } + + Q_DECLARE_PUBLIC(QFrontFace) + QFrontFace::WindingDirection m_direction; +}; + +struct QFrontFaceData +{ + QFrontFace::WindingDirection direction; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QFRONTFACE_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qgeometry_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qgeometry_p.h new file mode 100644 index 0000000..e07b9ff --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qgeometry_p.h @@ -0,0 +1,84 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3D_QGEOMETRY_P_H +#define QT3D_QGEOMETRY_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QT3DRENDERSHARED_PRIVATE_EXPORT QGeometryPrivate : public Qt3DCore::QNodePrivate +{ +public: + Q_DECLARE_PUBLIC(QGeometry) + QGeometryPrivate(); + ~QGeometryPrivate(); + + + QVector m_attributes; + QAttribute *m_boundingVolumePositionAttribute; +}; + +struct QGeometryData +{ + Qt3DCore::QNodeIdVector attributeIds; + Qt3DCore::QNodeId boundingVolumePositionAttributeId; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3D_QGEOMETRY_P_H + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qgeometryloaderfactory_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qgeometryloaderfactory_p.h new file mode 100644 index 0000000..6e0044c --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qgeometryloaderfactory_p.h @@ -0,0 +1,83 @@ +/**************************************************************************** +** +** Copyright (C) 2017 The Qt Company Ltd and/or its subsidiary(-ies). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QGEOMETRYLOADERFACTORY_P_H +#define QT3DRENDER_QGEOMETRYLOADERFACTORY_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +#define QGeometryLoaderFactory_iid "org.qt-project.Qt3DRender.QGeometryLoaderFactory 5.8" + +class QGeometryLoaderInterface; + +class QT3DRENDERSHARED_PRIVATE_EXPORT QGeometryLoaderFactory : public QObject, public QFactoryInterface +{ + Q_OBJECT + Q_INTERFACES(QFactoryInterface) +public: + explicit QGeometryLoaderFactory(QObject *parent = nullptr); + virtual ~QGeometryLoaderFactory(); + + virtual QGeometryLoaderInterface *create(const QString &ext) = 0; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QGEOMETRYLOADERFACTORY_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qgeometryloaderinterface_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qgeometryloaderinterface_p.h new file mode 100644 index 0000000..22d4f8b --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qgeometryloaderinterface_p.h @@ -0,0 +1,78 @@ +/**************************************************************************** +** +** Copyright (C) 2017 The Qt Company Ltd and/or its subsidiary(-ies). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QGEOMETRYLOADERINTERFACE_P_H +#define QT3DRENDER_QGEOMETRYLOADERINTERFACE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include + +QT_BEGIN_NAMESPACE + +class QIODevice; + +namespace Qt3DRender { + +class QGeometry; + +class QT3DRENDERSHARED_PRIVATE_EXPORT QGeometryLoaderInterface : public QObject +{ +public: + virtual QGeometry *geometry() const = 0; + + virtual bool load(QIODevice *ioDev, const QString &subMesh = QString()) = 0; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QGEOMETRYLOADERINTERFACE_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qgeometryrenderer_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qgeometryrenderer_p.h new file mode 100644 index 0000000..8096b4a --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qgeometryrenderer_p.h @@ -0,0 +1,113 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QGEOMETRYRENDERER_P_H +#define QT3DRENDER_QGEOMETRYRENDERER_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QT3DRENDERSHARED_PRIVATE_EXPORT QGeometryRendererPrivate : public Qt3DCore::QComponentPrivate +{ +public: + QGeometryRendererPrivate(); + ~QGeometryRendererPrivate(); + + Q_DECLARE_PUBLIC(QGeometryRenderer) + + int m_instanceCount; + int m_vertexCount; + int m_indexOffset; + int m_firstInstance; + int m_firstVertex; + int m_indexBufferByteOffset; + int m_restartIndexValue; + int m_verticesPerPatch; + bool m_primitiveRestart; + QGeometry *m_geometry; + QGeometryRenderer::PrimitiveType m_primitiveType; + QGeometryFactoryPtr m_geometryFactory; +}; + +struct QGeometryRendererData +{ + int instanceCount; + int vertexCount; + int indexOffset; + int firstInstance; + int firstVertex; + int indexBufferByteOffset; + int restartIndexValue; + int verticesPerPatch; + bool primitiveRestart; + Qt3DCore::QNodeId geometryId; + QGeometryRenderer::PrimitiveType primitiveType; + QGeometryFactoryPtr geometryFactory; +}; + +class QGeometry; +typedef Qt3DCore::QTypedPropertyUpdatedChange> QGeometryChange; +typedef Qt3DCore::QTypedPropertyUpdatedChangePtr> QGeometryChangePtr; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + + +#endif // QT3DRENDER_QGEOMETRYRENDERER_P_H + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qgraphicsapifilter_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qgraphicsapifilter_p.h new file mode 100644 index 0000000..f4581ac --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qgraphicsapifilter_p.h @@ -0,0 +1,98 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QGRAPHICSAPIFILTER_P_H +#define QT3DRENDER_QGRAPHICSAPIFILTER_P_H + +#include +#include +#include + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +struct QT3DRENDERSHARED_PRIVATE_EXPORT GraphicsApiFilterData +{ + GraphicsApiFilterData(); + + QGraphicsApiFilter::Api m_api; + QGraphicsApiFilter::OpenGLProfile m_profile; + int m_minor; + int m_major; + QStringList m_extensions; + QString m_vendor; + + bool operator ==(const GraphicsApiFilterData &other) const; + bool operator !=(const GraphicsApiFilterData &other) const; + bool operator <(const GraphicsApiFilterData &other) const; +}; + +class QT3DRENDERSHARED_PRIVATE_EXPORT QGraphicsApiFilterPrivate : public QObjectPrivate +{ +public: + QGraphicsApiFilterPrivate() + : QObjectPrivate() + { + } + + static QGraphicsApiFilterPrivate *get(QGraphicsApiFilter *q); + + Q_DECLARE_PUBLIC(QGraphicsApiFilter) + GraphicsApiFilterData m_data; +}; + +} // Qt3DRender + +QT_END_NAMESPACE + +Q_DECLARE_METATYPE(Qt3DRender::GraphicsApiFilterData); // LCOV_EXCL_LINE + +#endif // QT3DRENDER_QGRAPHICSAPIFILTER_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qgraphicsutils_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qgraphicsutils_p.h new file mode 100644 index 0000000..40ff99f --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qgraphicsutils_p.h @@ -0,0 +1,410 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_QGRAPHICSUTILS_P_H +#define QT3DRENDER_RENDER_QGRAPHICSUTILS_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include +#include +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +namespace Render { + +namespace { + +const int QMatrix2x2Type = qMetaTypeId(); +const int QMatrix2x3Type = qMetaTypeId(); +const int QMatrix2x4Type = qMetaTypeId(); +const int QMatrix3x2Type = qMetaTypeId(); +const int QMatrix3x3Type = qMetaTypeId(); +const int QMatrix3x4Type = qMetaTypeId(); +const int QMatrix4x2Type = qMetaTypeId(); +const int QMatrix4x3Type = qMetaTypeId(); + +} + +class QGraphicsUtils +{ + +public: + + template + static const char *bytesFromVariant(const QVariant &v) + { + uint byteSize = sizeof(T); + // Max 16 float that we may want as doubles + // 64 should be best for most cases + static QVarLengthArray array(16 * byteSize); + memset(array.data(), 0, array.size()); + + switch (static_cast(v.type())) { + + // 1 byte + case QMetaType::Bool: { + T data = v.value(); + memcpy(array.data(), &data, byteSize); + break; + } + case QMetaType::Char: { + T data = v.value(); + memcpy(array.data(), &data, byteSize); + break; + } + + // 4 bytes + case QMetaType::Float: { + T data = v.value(); + memcpy(array.data(), &data, byteSize); + break; + } + case QMetaType::Int: { + T data = v.value(); + memcpy(array.data(), &data, byteSize); + break; + + } + case QMetaType::UInt: { + qDebug() << "UINT"; + T data = v.value(); + memcpy(array.data(), &data, byteSize); + break; + } + + // 8 bytes + case QMetaType::Double: { + T data = v.value(); + memcpy(array.data(), &data, byteSize); + break; + } + + // 2 floats + case QMetaType::QPointF: { + QPointF vv = v.value(); + T data = vv.x(); + memcpy(array.data(), &data, byteSize); + data = vv.y(); + memcpy(array.data() + byteSize, &data, byteSize); + break; + } + case QMetaType::QSizeF: { + QSizeF vv = v.value(); + T data = vv.width(); + memcpy(array.data(), &data, byteSize); + data = vv.height(); + memcpy(array.data() + byteSize, &data, byteSize); + break; + } + + case QMetaType::QVector2D: { + QVector2D vv = v.value(); + T data = vv.x(); + memcpy(array.data(), &data, byteSize); + data = vv.y(); + memcpy(array.data() + byteSize, &data, byteSize); + break; + } + + // 2 ints + case QMetaType::QPoint: { + QPointF vv = v.value(); + T data = vv.x(); + memcpy(array.data(), &data, byteSize); + data = vv.y(); + memcpy(array.data() + byteSize, &data, byteSize); + break; + } + + case QMetaType::QSize: { + QSize vv = v.value(); + T data = vv.width(); + memcpy(array.data(), &data, byteSize); + data = vv.height(); + memcpy(array.data() + byteSize, &data, byteSize); + break; + } + + // 3 floats + case QMetaType::QVector3D: { + QVector3D vv = v.value(); + T data = vv.x(); + memcpy(array.data(), &data, byteSize); + data = vv.y(); + memcpy(array.data() + byteSize, &data, byteSize); + data = vv.z(); + memcpy(array.data() + 2 * byteSize, &data, byteSize); + break; + } + + // 4 floats + case QMetaType::QVector4D: { + QVector4D vv = v.value(); + T data = vv.x(); + memcpy(array.data(), &data, byteSize); + data = vv.y(); + memcpy(array.data() + byteSize, &data, byteSize); + data = vv.z(); + memcpy(array.data() + 2 * byteSize, &data, byteSize); + data = vv.w(); + memcpy(array.data() + 3 * byteSize, &data, byteSize); + break; + } + + case QMetaType::QQuaternion: { + + break; + } + + case QMetaType::QRectF: { + QRectF vv = v.value(); + T data = vv.x(); + memcpy(array.data(), &data, byteSize); + data = vv.y(); + memcpy(array.data() + byteSize, &data, byteSize); + data = vv.width(); + memcpy(array.data() + 2 * byteSize, &data, byteSize); + data = vv.height(); + memcpy(array.data() + 3 * byteSize, &data, byteSize); + break; + } + + case QMetaType::QColor: { + QColor vv = v.value(); + T data = vv.redF(); + memcpy(array.data(), &data, byteSize); + data = vv.greenF(); + memcpy(array.data() + byteSize, &data, byteSize); + data = vv.blueF(); + memcpy(array.data() + 2 * byteSize, &data, byteSize); + data = vv.alphaF(); + memcpy(array.data() + 3 * byteSize, &data, byteSize); + break; + } + + // 4 ints + case QMetaType::QRect: { + QRectF vv = v.value(); + T data = vv.x(); + memcpy(array.data(), &data, byteSize); + data = vv.y(); + memcpy(array.data() + byteSize, &data, byteSize); + data = vv.width(); + memcpy(array.data() + 2 * byteSize, &data, byteSize); + data = vv.height(); + memcpy(array.data() + 3 * byteSize, &data, byteSize); + break; + } + + // 16 floats + case QMetaType::QMatrix4x4: { + QMatrix4x4 mat = v.value(); + float *data = mat.data(); + for (int i = 0; i < 16; i++) { + T d = data[i]; + memcpy(array.data() + i * byteSize, &d, byteSize); + } + break; + } + + default: { + + float *data = nullptr; + if (v.userType() == QMatrix3x3Type) { + QMatrix3x3 mat = v.value(); + data = mat.data(); + for (int i = 0; i < 9; i++) { + T d = data[i]; + memcpy(array.data() + i * byteSize, &d, byteSize); + } + } + else if (v.userType() == QMatrix2x2Type) { + QMatrix2x2 mat = v.value(); + data = mat.data(); + for (int i = 0; i < 4; i++) { + T d = data[i]; + memcpy(array.data() + i * byteSize, &d, byteSize); + } + } + else if (v.userType() == QMatrix2x3Type) { + QMatrix2x3 mat = v.value(); + data = mat.data(); + for (int i = 0; i < 6; i++) { + T d = data[i]; + memcpy(array.data() + i * byteSize, &d, byteSize); + } + } + else if (v.userType() == QMatrix3x2Type) { + QMatrix3x2 mat = v.value(); + data = mat.data(); + for (int i = 0; i < 6; i++) { + T d = data[i]; + memcpy(array.data() + i * byteSize, &d, byteSize); + } + } + else if (v.userType() == QMatrix2x4Type) { + QMatrix2x4 mat = v.value(); + data = mat.data(); + for (int i = 0; i < 8; i++) { + T d = data[i]; + memcpy(array.data() + i * byteSize, &d, byteSize); + } + } + else if (v.userType() == QMatrix4x2Type) { + QMatrix4x2 mat = v.value(); + data = mat.data(); + for (int i = 0; i < 8; i++) { + T d = data[i]; + memcpy(array.data() + i * byteSize, &d, byteSize); + } + } + else if (v.userType() == QMatrix3x4Type) { + QMatrix3x4 mat = v.value(); + data = mat.data(); + for (int i = 0; i < 12; i++) { + T d = data[i]; + memcpy(array.data() + i * byteSize, &d, byteSize); + } + } + else if (v.userType() == QMatrix4x3Type) { + QMatrix4x3 mat = v.value(); + data = mat.data(); + for (int i = 0; i < 12; i++) { + T d = data[i]; + memcpy(array.data() + i * byteSize, &d, byteSize); + } + } + else + qWarning() << Q_FUNC_INFO << "QVariant type conversion not handled for " << v.type(); + break; + } + + } + return array.constData(); + } + + + template + static const T *valueArrayFromVariant(const QVariant &v, int count, int tupleSize) + { + uint byteSize = sizeof(T); + uint offset = byteSize * tupleSize; + static QVarLengthArray uniformValuesArray(1024); + uniformValuesArray.resize(count * offset); + char *data = uniformValuesArray.data(); + memset(data, 0, uniformValuesArray.size()); + + QVariantList vList = v.toList(); + // Handles list of QVariant: usually arrays of float + if (!vList.isEmpty()) { + for (int i = 0; i < vList.length() && uint(i) * offset < uint(uniformValuesArray.size()); i++) { + const char *subBuffer = QGraphicsUtils::bytesFromVariant(vList.at(i)); + memcpy(data + i * offset, subBuffer, offset); + } + } + else { + memcpy(data, QGraphicsUtils::bytesFromVariant(v), offset); + } + return reinterpret_cast(uniformValuesArray.constData()); + } + + template + static void fillDataArray(void *buffer, const T *data, const ShaderUniform &description, int tupleSize) + { + uint offset = description.m_offset / sizeof(T); + uint stride = description.m_arrayStride / sizeof(T); + T *bufferData = (T*)buffer; + + for (int i = 0; i < description.m_size; ++i) { + for (int j = 0; j < tupleSize; j++) { + int idx = i * tupleSize + j; + bufferData[offset + j] = data[idx]; + } + offset += stride; + } + } + + template + static void fillDataMatrixArray(void *buffer, const T *data, const ShaderUniform &description, int cols, int rows) + { + uint offset = description.m_offset / sizeof(T); + uint arrayStride = description.m_arrayStride / sizeof(T); + uint matrixStride = description.m_matrixStride / sizeof(T); + T *bufferData = (T*)buffer; + + for (int i = 0; i < description.m_size; ++i) { + for (int col = 0; col < cols; ++col) { + for (int row = 0; row < rows; ++row) { + int idx = i * cols * rows + rows * col + row; + bufferData[offset + row] = data[idx]; + } + offset += matrixStride; + } + offset += arrayStride; + } + } + +}; + +} // namespace Render + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_QGRAPHICSUTILS_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qlayer_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qlayer_p.h new file mode 100644 index 0000000..1c01955 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qlayer_p.h @@ -0,0 +1,80 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QLAYER_P_H +#define QT3DRENDER_QLAYER_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QT3DRENDERSHARED_PRIVATE_EXPORT QLayerPrivate : public Qt3DCore::QComponentPrivate +{ +public: + QLayerPrivate(); + + bool m_recursive; + + Q_DECLARE_PUBLIC(QLayer) +}; + +struct QLayerData { + bool m_recursive; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QLAYER_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qlayerfilter_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qlayerfilter_p.h new file mode 100644 index 0000000..97469bd --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qlayerfilter_p.h @@ -0,0 +1,83 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QLAYERFILTER_P_H +#define QT3DRENDER_QLAYERFILTER_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QLayer; + +class QLayerFilterPrivate : public QFrameGraphNodePrivate +{ +public: + QLayerFilterPrivate(); + + Q_DECLARE_PUBLIC(QLayerFilter) + QVector m_layers; + QLayerFilter::FilterMode m_filterMode; +}; + +struct QLayerFilterData +{ + Qt3DCore::QNodeIdVector layerIds; + QLayerFilter::FilterMode filterMode; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QLAYERFILTER_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qlevelofdetail_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qlevelofdetail_p.h new file mode 100644 index 0000000..136d2ff --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qlevelofdetail_p.h @@ -0,0 +1,95 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QLEVELOFDETAIL_P_H +#define QT3DRENDER_QLEVELOFDETAIL_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QT3DRENDERSHARED_PRIVATE_EXPORT QLevelOfDetailPrivate : public Qt3DCore::QComponentPrivate +{ +public: + QLevelOfDetailPrivate(); + + Q_DECLARE_PUBLIC(QLevelOfDetail) + + void _q_radiusChanged(float radius); + void _q_centerChanged(const QVector3D ¢er); + + QCamera *m_camera; + int m_currentIndex; + QLevelOfDetail::ThresholdType m_thresholdType; + QVector m_thresholds; + QLevelOfDetailBoundingSphere m_volumeOverride; +}; + +struct QLevelOfDetailData +{ + Qt3DCore::QNodeId camera; + int currentIndex; + QLevelOfDetail::ThresholdType thresholdType; + QVector thresholds; + QLevelOfDetailBoundingSphere volumeOverride; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QLEVELOFDETAIL_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qlinewidth_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qlinewidth_p.h new file mode 100644 index 0000000..bffa9ac --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qlinewidth_p.h @@ -0,0 +1,83 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QLINEWIDTH_P_H +#define QT3DRENDER_QLINEWIDTH_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QLineWidthPrivate : public QRenderStatePrivate +{ +public: + QLineWidthPrivate(float value) + : QRenderStatePrivate(Render::LineWidthMask) + , m_value(value) + , m_smooth(false) + {} + + float m_value; + bool m_smooth; + + Q_DECLARE_PUBLIC(QLineWidth) +}; + +struct QLineWidthData +{ + float value; + bool smooth; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QLINEWIDTH_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qmaterial_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qmaterial_p.h new file mode 100644 index 0000000..9fb8d5d --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qmaterial_p.h @@ -0,0 +1,85 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QMATERIAL_P_H +#define QT3DRENDER_QMATERIAL_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QParameter; +class QEffect; + +class QT3DRENDERSHARED_PRIVATE_EXPORT QMaterialPrivate : public Qt3DCore::QComponentPrivate +{ +public: + QMaterialPrivate(); + ~QMaterialPrivate(); + + Q_DECLARE_PUBLIC(QMaterial) + QVector m_parameters; + QEffect *m_effect; +}; + +struct QMaterialData +{ + Qt3DCore::QNodeIdVector parameterIds; + Qt3DCore::QNodeId effectId; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QMATERIAL_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qmemorybarrier_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qmemorybarrier_p.h new file mode 100644 index 0000000..384dbee --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qmemorybarrier_p.h @@ -0,0 +1,77 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QMEMORYBARRIER_P_H +#define QT3DRENDER_QMEMORYBARRIER_P_H +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QMemoryBarrierPrivate : public QFrameGraphNodePrivate +{ +public: + QMemoryBarrierPrivate(); + + Q_DECLARE_PUBLIC(QMemoryBarrier) + QMemoryBarrier::Operations m_waitOperations; +}; + +struct QMemoryBarrierData +{ + QMemoryBarrier::Operations waitOperations; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE +#endif // QT3DRENDER_QMEMORYBARRIER_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qmesh_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qmesh_p.h new file mode 100644 index 0000000..2d03e78 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qmesh_p.h @@ -0,0 +1,140 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QMESH_P_H +#define QT3DRENDER_QMESH_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { +class QDownloadHelperService; +} + +namespace Qt3DRender { + +namespace Render { +class NodeManagers; +} + +class QT3DRENDERSHARED_PRIVATE_EXPORT QMeshPrivate : public QGeometryRendererPrivate +{ +public: + QMeshPrivate(); + + Q_DECLARE_PUBLIC(QMesh) + static QMeshPrivate *get(QMesh *q); + + void setScene(Qt3DCore::QScene *scene) override; + void updateFunctor(); + void setStatus(QMesh::Status status); + + QUrl m_source; + QString m_meshName; + QMesh::Status m_status; +}; + +class Q_AUTOTEST_EXPORT MeshDownloadRequest : public Qt3DCore::QDownloadRequest +{ +public: + MeshDownloadRequest(Qt3DCore::QNodeId mesh, QUrl source, Render::NodeManagers *managers); + + void onCompleted() override; + +private: + Qt3DCore::QNodeId m_mesh; + Render::NodeManagers *m_nodeManagers; +}; + +class Q_AUTOTEST_EXPORT MeshLoaderFunctor : public QGeometryFactory +{ +public : + MeshLoaderFunctor(QMesh *mesh, const QByteArray &sourceData = QByteArray()); + + void setNodeManagers(Render::NodeManagers *managers) { m_nodeManagers = managers; } + Render::NodeManagers *nodeManagers() const { return m_nodeManagers; } + + void setDownloaderService(Qt3DCore::QDownloadHelperService *service) { m_downloaderService = service; } + Qt3DCore::QDownloadHelperService *downloaderService() const { return m_downloaderService; } + + void setSourceData(const QByteArray &data) { m_sourceData = data; } + QByteArray sourceData() const { return m_sourceData; } + + QUrl sourcePath() const { return m_sourcePath; } + Qt3DCore::QNodeId mesh() const { return m_mesh; } + QString meshName() const { return m_meshName; } + + QMesh::Status status() const { return m_status; } + + QGeometry *operator()() override; + bool operator ==(const QGeometryFactory &other) const override; + QT3D_FUNCTOR(MeshLoaderFunctor) + +private: + Qt3DCore::QNodeId m_mesh; + QUrl m_sourcePath; + QString m_meshName; + QByteArray m_sourceData; + Render::NodeManagers *m_nodeManagers; + Qt3DCore::QDownloadHelperService *m_downloaderService; + QMesh::Status m_status; +}; + + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QMESH_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qobjectpicker_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qobjectpicker_p.h new file mode 100644 index 0000000..3c48b94 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qobjectpicker_p.h @@ -0,0 +1,111 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QOBJECTPICKER_P_H +#define QT3DRENDER_QOBJECTPICKER_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +/*! + \internal +*/ +class QT3DRENDERSHARED_PRIVATE_EXPORT QObjectPickerPrivate : public Qt3DCore::QComponentPrivate +{ +public: + QObjectPickerPrivate() + : QComponentPrivate() + , m_hoverEnabled(false) + , m_dragEnabled(false) + , m_pressed(false) + , m_containsMouse(false) + , m_acceptedLastPressedEvent(true) + { + m_shareable = false; + } + + Q_DECLARE_PUBLIC(QObjectPicker) + bool m_hoverEnabled; + bool m_dragEnabled; + bool m_pressed; + bool m_containsMouse; + bool m_acceptedLastPressedEvent; + + enum EventType { + Pressed, + Released, + Clicked, + Moved + }; + + void propagateEvent(QPickEvent *event, EventType type); + + void pressedEvent(QPickEvent *event); + void clickedEvent(QPickEvent *event); + void movedEvent(QPickEvent *event); + void releasedEvent(QPickEvent *event); + + void setPressed(bool pressed); + void setContainsMouse(bool containsMouse); +}; + +struct QObjectPickerData +{ + bool hoverEnabled; + bool dragEnabled; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QOBJECTPICKER_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qpaintedtextureimage_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qpaintedtextureimage_p.h new file mode 100644 index 0000000..4e554f1 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qpaintedtextureimage_p.h @@ -0,0 +1,108 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QPAINTEDTEXTURE_P_H +#define QT3DRENDER_QPAINTEDTEXTURE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +class QImage; +class QPainter; + +namespace Qt3DRender { + +class QT3DRENDERSHARED_PRIVATE_EXPORT QPaintedTextureImagePrivate : public QAbstractTextureImagePrivate +{ +public: + QPaintedTextureImagePrivate(); + ~QPaintedTextureImagePrivate(); + + Q_DECLARE_PUBLIC(QPaintedTextureImage) + + QSize m_imageSize; + qreal m_devicePixelRatio; + QScopedPointer m_image; + QTextureImageDataGeneratorPtr m_currentGenerator; + + // gets increased each time the image is re-painted. + // used to distinguish between different generators + quint64 m_generation; + + void repaint(); +}; + +class QPaintedTextureImageDataGenerator : public QTextureImageDataGenerator +{ +public: + QPaintedTextureImageDataGenerator(const QImage &image, int gen, Qt3DCore::QNodeId texId); + ~QPaintedTextureImageDataGenerator(); + + // Will be executed from within a QAspectJob + QTextureImageDataPtr operator ()() final; + bool operator ==(const QTextureImageDataGenerator &other) const final; + + QT3D_FUNCTOR(QPaintedTextureImageDataGenerator) + +private: + QImage m_image; + quint64 m_generation; + Qt3DCore::QNodeId m_paintedTextureImageId; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QPAINTEDTEXTURE_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qparameter_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qparameter_p.h new file mode 100644 index 0000000..a56a63a --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qparameter_p.h @@ -0,0 +1,87 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QPARAMETER_P_H +#define QT3DRENDER_QPARAMETER_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QParameter; + +class QT3DRENDERSHARED_PRIVATE_EXPORT QParameterPrivate : public Qt3DCore::QNodePrivate +{ +public: + QParameterPrivate(); + + Q_DECLARE_PUBLIC(QParameter) + + virtual void setValue(const QVariant &v); + + QString m_name; + QVariant m_value; + QVariant m_backendValue; +}; + +struct QParameterData +{ + QString name; + QVariant backendValue; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QPARAMETER_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qpickevent_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qpickevent_p.h new file mode 100644 index 0000000..ced36c9 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qpickevent_p.h @@ -0,0 +1,92 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include +#include + + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QPickEvent; + +class QT3DRENDERSHARED_PRIVATE_EXPORT QPickEventPrivate : public QObjectPrivate +{ +public: + QPickEventPrivate() + : QObjectPrivate() + , m_accepted(true) + , m_distance(-1.f) + , m_button(QPickEvent::NoButton) + , m_buttons(QPickEvent::NoButton) + , m_modifiers(QPickEvent::NoModifier) + { + } + + bool m_accepted; + QPointF m_position; + QVector3D m_worldIntersection; + QVector3D m_localIntersection; + float m_distance; + QPickEvent::Buttons m_button; + int m_buttons; + int m_modifiers; + Qt3DCore::QNodeId m_entity; + + static QPickEventPrivate *get(QPickEvent *object); +}; + +} // Qt3DRender + +QT_END_NAMESPACE + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qpickingsettings_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qpickingsettings_p.h new file mode 100644 index 0000000..780a8b6 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qpickingsettings_p.h @@ -0,0 +1,77 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QPICKINGSETTINGS_P_H +#define QT3DRENDER_QPICKINGSETTINGS_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QT3DRENDERSHARED_PRIVATE_EXPORT QPickingSettingsPrivate : public Qt3DCore::QNodePrivate +{ +public: + QPickingSettingsPrivate(); + + QPickingSettings::PickMethod m_pickMethod; + QPickingSettings::PickResultMode m_pickResultMode; + QPickingSettings::FaceOrientationPickingMode m_faceOrientationPickingMode; + float m_worldSpaceTolerance; +}; + +} // namespace Qt3Drender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QPICKINGSETTINGS_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qpointlight_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qpointlight_p.h new file mode 100644 index 0000000..1478676 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qpointlight_p.h @@ -0,0 +1,75 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QPOINTLIGHT_P_H +#define QT3DRENDER_QPOINTLIGHT_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QPointLight; + +class QT3DRENDERSHARED_PRIVATE_EXPORT QPointLightPrivate : public QAbstractLightPrivate +{ +public: + QPointLightPrivate(); + + Q_DECLARE_PUBLIC(QPointLight) +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QPOINTLIGHT_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qpointsize_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qpointsize_p.h new file mode 100644 index 0000000..eb669b1 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qpointsize_p.h @@ -0,0 +1,84 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QPOINTSIZE_P_H +#define QT3DRENDER_QPOINTSIZE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QT3DRENDERSHARED_PRIVATE_EXPORT QPointSizePrivate : public QRenderStatePrivate +{ +public: + QPointSizePrivate(QPointSize::SizeMode sizeMode, float value) + : QRenderStatePrivate(Render::PointSizeMask) + , m_sizeMode(sizeMode) + , m_value(value) + {} + + QPointSize::SizeMode m_sizeMode; + float m_value; + + Q_DECLARE_PUBLIC(QPointSize) +}; + +struct QPointSizeData +{ + QPointSize::SizeMode sizeMode; + float value; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QPOINTSIZE_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qpolygonoffset_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qpolygonoffset_p.h new file mode 100644 index 0000000..66a6267 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qpolygonoffset_p.h @@ -0,0 +1,85 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QPOLYGONOFFSET_P_H +#define QT3DRENDER_QPOLYGONOFFSET_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QT3DRENDERSHARED_PRIVATE_EXPORT QPolygonOffsetPrivate : public QRenderStatePrivate +{ +public: + QPolygonOffsetPrivate() + : QRenderStatePrivate(Render::PolygonOffsetStateMask) + , m_scaleFactor(0) + , m_depthSteps(0) + { + } + + float m_scaleFactor; + float m_depthSteps; + + Q_DECLARE_PUBLIC(QPolygonOffset) +}; + +struct QPolygonOffsetData +{ + float scaleFactor; + float depthSteps; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QPOLYGONOFFSET_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qproximityfilter_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qproximityfilter_p.h new file mode 100644 index 0000000..8f8bba8 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qproximityfilter_p.h @@ -0,0 +1,82 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QPROXIMITYFILTER_P_H +#define QT3DRENDER_QPROXIMITYFILTER_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QProximityFilterPrivate : public QFrameGraphNodePrivate +{ +public: + QProximityFilterPrivate(); + + Q_DECLARE_PUBLIC(QProximityFilter) + + Qt3DCore::QEntity *m_entity; + float m_distanceThreshold; +}; + +struct QProximityFilterData +{ + Qt3DCore::QNodeId entityId; + float distanceThreshold; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QPROXIMITYFILTER_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qray3d_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qray3d_p.h new file mode 100644 index 0000000..8b7852c --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qray3d_p.h @@ -0,0 +1,127 @@ +/**************************************************************************** +** +** Copyright (C) 2012 Digia Plc and/or its subsidiary(-ies). +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QRAY3D_H +#define QT3DRENDER_QRAY3D_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { +namespace RayCasting { + +class QT3DRENDERSHARED_EXPORT QRay3D +{ +public: + QRay3D(); + explicit QRay3D(const Vector3D &origin, const Vector3D &direction = Vector3D(0.0f, 0.0f, 1.0f), float distance = 1.0f); + ~QRay3D(); + + Vector3D origin() const; + void setOrigin(const Vector3D &value); + + Vector3D direction() const; + void setDirection(const Vector3D &value); + + float distance() const; + void setDistance(float distance); + + bool contains(const Vector3D &point) const; + bool contains(const QRay3D &ray) const; + + Vector3D point(float t) const; + float projectedDistance(const Vector3D &point) const; + + Vector3D project(const Vector3D &vector) const; + + float distance(const Vector3D &point) const; + + QRay3D &transform(const Matrix4x4 &matrix); + QRay3D transformed(const Matrix4x4 &matrix) const; + + bool operator==(const QRay3D &other) const; + bool operator!=(const QRay3D &other) const; + + bool isValid() const { return !m_direction.isNull() && !qFuzzyIsNull(m_distance); } + +private: + Vector3D m_origin; + Vector3D m_direction; + float m_distance; +}; +QT3D_DECLARE_TYPEINFO_2(Qt3DRender, RayCasting, QRay3D, Q_MOVABLE_TYPE) + + +#ifndef QT_NO_DEBUG_STREAM +QT3DRENDERSHARED_EXPORT QDebug operator<<(QDebug dbg, const QRay3D &ray); +#endif + +#ifndef QT_NO_DATASTREAM +QT3DRENDERSHARED_EXPORT QDataStream &operator<<(QDataStream &stream, const QRay3D &ray); +QT3DRENDERSHARED_EXPORT QDataStream &operator>>(QDataStream &stream, QRay3D &ray); +#endif + +} // namespace RayCasting +} // namespace Qt3DRender +QT_END_NAMESPACE + +inline bool qFuzzyCompare(const Qt3DRender::RayCasting::QRay3D &ray1, const Qt3DRender::RayCasting::QRay3D &ray2) +{ + return qFuzzyCompare(ray1.origin(), ray2.origin()) && + qFuzzyCompare(ray1.direction(), ray2.direction()); +} + +Q_DECLARE_METATYPE(Qt3DRender::RayCasting::QRay3D) // LCOV_EXCL_LINE + +#endif // QT3DRENDER_QRAY3D_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qraycastingservice_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qraycastingservice_p.h new file mode 100644 index 0000000..b77c8af --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qraycastingservice_p.h @@ -0,0 +1,125 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QRAYCASTINGSERVICE_P_H +#define QT3DRENDER_QRAYCASTINGSERVICE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { +namespace RayCasting { + +class QBoundingVolumeProvider; +class QRayCastingServicePrivate; + +typedef QFuture FutureQueryResult; + +class QT3DRENDERSHARED_EXPORT QRayCastingService : public QAbstractCollisionQueryService +{ +public: + QRayCastingService(); + + QQueryHandle query(const QRay3D &ray, QueryMode mode, QBoundingVolumeProvider *provider) override; + QCollisionQueryResult::Hit query(const QRay3D &ray, const QBoundingVolume *volume) override; + + QCollisionQueryResult fetchResult(const QQueryHandle &handle) override; + QVector fetchAllResults() const override; + +protected: + QRayCastingService(QRayCastingServicePrivate &dd); + +private: + Q_DISABLE_COPY(QRayCastingService) + Q_DECLARE_PRIVATE(QRayCastingService) +}; + +class QRayCastingServicePrivate : public QAbstractCollisionQueryServicePrivate +{ +public: + QRayCastingServicePrivate(const QString &description); + + QCollisionQueryResult collides(const QRay3D &ray, + QBoundingVolumeProvider *provider, + QAbstractCollisionQueryService::QueryMode mode, + const QQueryHandle &handle); + QCollisionQueryResult::Hit collides(const QRay3D &ray, + const QBoundingVolume *volume); + + Q_DECLARE_PUBLIC(QRayCastingService) + + struct Query + { + QQueryHandle handle; + QRay3D ray; + QRayCastingService::QueryMode mode; + }; + +#if QT_CONFIG(concurrent) + QHash m_results; +#else + QHash m_results; +#endif + QAtomicInt m_handlesCount; +}; + +} // namespace RayCasting +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QRAYCASTINGSERVICE_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qrenderaspect_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qrenderaspect_p.h new file mode 100644 index 0000000..26ca091 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qrenderaspect_p.h @@ -0,0 +1,118 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QRENDERASPECT_P_H +#define QT3DRENDER_QRENDERASPECT_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +class QSurface; + +namespace Qt3DRender { + +class QSceneImporter; + +namespace Render { +class AbstractRenderer; +class NodeManagers; +class QRenderPlugin; +} + +namespace Render { +class OffscreenSurfaceHelper; +} + +class QT3DRENDERSHARED_PRIVATE_EXPORT QRenderAspectPrivate : public Qt3DCore::QAbstractAspectPrivate +{ +public: + QRenderAspectPrivate(QRenderAspect::RenderType type); + ~QRenderAspectPrivate(); + + Q_DECLARE_PUBLIC(QRenderAspect) + + static QRenderAspectPrivate* findPrivate(Qt3DCore::QAspectEngine *engine); + + void registerBackendTypes(); + void unregisterBackendTypes(); + void loadSceneParsers(); + void loadRenderPlugin(const QString &pluginName); + void renderInitialize(QOpenGLContext *context); + void renderSynchronous(bool blocking = false); + void renderShutdown(); + void registerBackendType(const QMetaObject &, const Qt3DCore::QBackendNodeMapperPtr &functor); + QVector createGeometryRendererJobs(); + + Render::NodeManagers *m_nodeManagers; + Render::AbstractRenderer *m_renderer; + + bool m_initialized; + QList m_sceneImporter; + QVector m_loadedPlugins; + QVector m_renderPlugins; + QRenderAspect::RenderType m_renderType; + Render::OffscreenSurfaceHelper *m_offscreenHelper; + + static QMutex m_pluginLock; + static QVector m_pluginConfig; + static QVector m_instances; + static void configurePlugin(const QString &plugin); +}; + +} + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QRENDERASPECT_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qrendercapture_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qrendercapture_p.h new file mode 100644 index 0000000..4e509cc --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qrendercapture_p.h @@ -0,0 +1,116 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: http://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QRENDERCAPTURE_P_H +#define QRENDERCAPTURE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QRenderCapturePrivate : public QFrameGraphNodePrivate +{ +public: + QRenderCapturePrivate(); + ~QRenderCapturePrivate(); + QVector m_waitingReplies; + QMutex m_mutex; + + QRenderCaptureReply *createReply(int captureId); + QRenderCaptureReply *takeReply(int captureId); + void setImage(QRenderCaptureReply *reply, const QImage &image); + void replyDestroyed(QRenderCaptureReply *reply); + + Q_DECLARE_PUBLIC(QRenderCapture) +}; + +class QRenderCaptureReplyPrivate : public QObjectPrivate +{ +public: + QRenderCaptureReplyPrivate(); + + QImage m_image; + int m_captureId; + bool m_complete; + + Q_DECLARE_PUBLIC(QRenderCaptureReply) +}; + +// used by initializeFromPeer +struct QRenderCaptureInitData +{ + int captureId; +}; + +// used by backend to send render capture to frontend +struct RenderCaptureData +{ + QImage image; + int captureId; +}; + +typedef QSharedPointer RenderCaptureDataPtr; + +struct QRenderCaptureRequest +{ + int captureId; + QRect rect; +}; + +} // Qt3DRender + +QT_END_NAMESPACE + +Q_DECLARE_METATYPE(Qt3DRender::RenderCaptureDataPtr) // LCOV_EXCL_LINE +Q_DECLARE_METATYPE(Qt3DRender::QRenderCaptureRequest); // LCOV_EXCL_LINE + +#endif // QRENDERCAPTURE_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qrenderpass_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qrenderpass_p.h new file mode 100644 index 0000000..79e0ae0 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qrenderpass_p.h @@ -0,0 +1,91 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Copyright (C) 2016 The Qt Company Ltd and/or its subsidiary(-ies). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QRENDERPASS_P_H +#define QT3DRENDER_QRENDERPASS_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QParameter; +class QRenderState; +class QFilterKey; + +class QRenderPassPrivate : public Qt3DCore::QNodePrivate +{ +public: + QRenderPassPrivate(); + + Q_DECLARE_PUBLIC(QRenderPass) + + QVector m_filterKeyList; + QVector m_renderStates; + QVector m_parameters; + QShaderProgram *m_shader; +}; + +struct QRenderPassData +{ + Qt3DCore::QNodeIdVector filterKeyIds; + Qt3DCore::QNodeIdVector parameterIds; + Qt3DCore::QNodeIdVector renderStateIds; + Qt3DCore::QNodeId shaderId; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QRENDERPASS_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qrenderpassfilter_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qrenderpassfilter_p.h new file mode 100644 index 0000000..d4b68ea --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qrenderpassfilter_p.h @@ -0,0 +1,85 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QRENDERPASSFILTER_P_H +#define QT3DRENDER_QRENDERPASSFILTER_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QRenderPassFilter; + +class QRenderPassFilterPrivate : public QFrameGraphNodePrivate +{ +public: + QRenderPassFilterPrivate() + : QFrameGraphNodePrivate() + {} + + Q_DECLARE_PUBLIC(QRenderPassFilter) + QString m_renderPassName; + QVector m_matchList; + QVector m_parameters; +}; + +struct QRenderPassFilterData +{ + Qt3DCore::QNodeIdVector matchIds; + Qt3DCore::QNodeIdVector parameterIds; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QRENDERPASSFILTER_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qrenderplugin_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qrenderplugin_p.h new file mode 100644 index 0000000..5144448 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qrenderplugin_p.h @@ -0,0 +1,89 @@ +/**************************************************************************** +** +** Copyright (C) 2017 The Qt Company Ltd. +** Contact: http://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_QRENDERPLUGIN_P_H +#define QT3DRENDER_RENDER_QRENDERPLUGIN_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include +#include + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +namespace Render { + +class AbstractRenderer; + +class QT3DRENDERSHARED_PRIVATE_EXPORT QRenderPlugin +{ +public: + virtual bool registerBackendTypes(QRenderAspect *aspect, AbstractRenderer *renderer) = 0; + virtual bool unregisterBackendTypes(QRenderAspect *aspect) = 0; + +protected: + void registerBackendType(QRenderAspect *aspect, const QMetaObject &obj, const Qt3DCore::QBackendNodeMapperPtr &functor) + { + aspect->registerBackendType(obj, functor); + } + void unregisterBackendType(QRenderAspect *aspect, const QMetaObject &obj) + { + aspect->unregisterBackendType(obj); + } +}; + +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_QRENDERPLUGIN_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qrenderpluginfactory_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qrenderpluginfactory_p.h new file mode 100644 index 0000000..9cffd50 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qrenderpluginfactory_p.h @@ -0,0 +1,75 @@ +/**************************************************************************** +** +** Copyright (C) 2017 The Qt Company Ltd. +** Contact: http://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_QRENDERPLUGINFACTORY_P_H +#define QT3DRENDER_RENDER_QRENDERPLUGINFACTORY_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { +namespace Render { + +class QRenderPlugin; + +class QT3DRENDERSHARED_PRIVATE_EXPORT QRenderPluginFactory +{ +public: + static QStringList keys(const QString &pluginPath = QString()); + static QRenderPlugin *create(const QString &name, const QStringList &args, + const QString &pluginPath = QString()); +}; + +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_QRENDERPLUGINFACTORY_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qrenderpluginfactoryif_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qrenderpluginfactoryif_p.h new file mode 100644 index 0000000..d5f0008 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qrenderpluginfactoryif_p.h @@ -0,0 +1,82 @@ +/**************************************************************************** +** +** Copyright (C) 2017 The Qt Company Ltd. +** Contact: http://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_QRENDERPLUGINFACTORYIF_P_H +#define QT3DRENDER_RENDER_QRENDERPLUGINFACTORYIF_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +#include + + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { +namespace Render { + +#define QRenderPluginFactoryInterface_iid "org.qt-project.Qt3DRender.QRenderPluginFactoryInterface 5.9" + +class QRenderPlugin; + +class QT3DRENDERSHARED_PRIVATE_EXPORT QRenderPluginFactoryIf : public QObject +{ + Q_OBJECT +public: + explicit QRenderPluginFactoryIf(QObject *parent = nullptr); + ~QRenderPluginFactoryIf(); + + virtual QRenderPlugin *create(const QString &key, const QStringList ¶mList); +}; + +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QRENDERPLUGINFACTORYIF_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qrendersettings_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qrendersettings_p.h new file mode 100644 index 0000000..60ebd0f --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qrendersettings_p.h @@ -0,0 +1,96 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QRENDERSETTINGS_P_H +#define QT3DRENDER_QRENDERSETTINGS_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QT3DRENDERSHARED_PRIVATE_EXPORT QRenderSettingsPrivate : public Qt3DCore::QComponentPrivate +{ +public: + QRenderSettingsPrivate(); + + void init(); + + QPickingSettings m_pickingSettings; + QFrameGraphNode *m_activeFrameGraph; + QRenderSettings::RenderPolicy m_renderPolicy; + + void _q_onPickingMethodChanged(QPickingSettings::PickMethod pickMethod); + void _q_onPickResultModeChanged(QPickingSettings::PickResultMode pickResultMode); + void _q_onFaceOrientationPickingModeChanged(QPickingSettings::FaceOrientationPickingMode faceOrientationPickingMode); + void _q_onWorldSpaceToleranceChanged(float worldSpaceTolerance); + + Q_DECLARE_PUBLIC(QRenderSettings) +}; + +struct QRenderSettingsData +{ + Qt3DCore::QNodeId activeFrameGraphId; + QRenderSettings::RenderPolicy renderPolicy; + QPickingSettings::PickMethod pickMethod; + QPickingSettings::PickResultMode pickResultMode; + QPickingSettings::FaceOrientationPickingMode faceOrientationPickingMode; + float pickWorldSpaceTolerance; +}; + +} // namespace Qt3Drender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QRENDERSETTINGS_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qrenderstate_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qrenderstate_p.h new file mode 100644 index 0000000..c3457af --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qrenderstate_p.h @@ -0,0 +1,84 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Copyright (C) 2016 The Qt Company Ltd and/or its subsidiary(-ies). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QRENDERSTATE_P_H +#define QT3DRENDER_QRENDERSTATE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QT3DRENDERSHARED_PRIVATE_EXPORT QRenderStatePrivate : public Qt3DCore::QNodePrivate +{ +public: + explicit QRenderStatePrivate(Render::StateMask type); + ~QRenderStatePrivate(); + + + Q_DECLARE_PUBLIC(QRenderState) + + + const Render::StateMask m_type; + + static QRenderStatePrivate *get(QRenderState *state); + static const QRenderStatePrivate *get(const QRenderState *state); +}; + +} + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QRENDERSTATE_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qrenderstatecreatedchange_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qrenderstatecreatedchange_p.h new file mode 100644 index 0000000..32c307c --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qrenderstatecreatedchange_p.h @@ -0,0 +1,94 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QRENDERSTATECREATIONCHANGEBASE_H +#define QT3DRENDER_QRENDERSTATECREATIONCHANGEBASE_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QRenderState; +class QRenderStateCreatedChangeBasePrivate; + +class QRenderStateCreatedChangeBase : public Qt3DCore::QNodeCreatedChangeBase +{ +public: + explicit QRenderStateCreatedChangeBase(const QRenderState *renderState); + + Render::StateMask renderStateType() const; + +private: + Q_DECLARE_PRIVATE(QRenderStateCreatedChangeBase) +}; + +typedef QSharedPointer QRenderStateCreatedChangeBasePtr; + +template +class QRenderStateCreatedChange : public QRenderStateCreatedChangeBase +{ +public: + explicit QRenderStateCreatedChange(const QRenderState *_renderState) + : QRenderStateCreatedChangeBase(_renderState) + , data() + { + } + + T data; +}; + +template +using QRenderStateCreatedChangePtr = QSharedPointer>; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QRENDERSTATECREATIONCHANGEBASE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qrenderstateset_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qrenderstateset_p.h new file mode 100644 index 0000000..2ac1db4 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qrenderstateset_p.h @@ -0,0 +1,82 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QRENDERSTATESET_P_H +#define QT3DRENDER_QRENDERSTATESET_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QRenderStateSet; +class QRenderState; + +class QRenderStateSetPrivate : public QFrameGraphNodePrivate +{ +public: + QRenderStateSetPrivate(); + + Q_DECLARE_PUBLIC(QRenderStateSet) + QVector m_renderStates; +}; + +struct QRenderStateSetData +{ + Qt3DCore::QNodeIdVector renderStateIds; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QRENDERSTATESET_P_H + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qrendersurfaceselector_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qrendersurfaceselector_p.h new file mode 100644 index 0000000..899387b --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qrendersurfaceselector_p.h @@ -0,0 +1,99 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QRENDERSURFACESELECTOR_P_H +#define QRENDERSURFACESELECTOR_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QRenderSurfaceSelector; + +class QT3DRENDERSHARED_PRIVATE_EXPORT QRenderSurfaceSelectorPrivate : public Qt3DRender::QFrameGraphNodePrivate +{ +public: + QRenderSurfaceSelectorPrivate(); + ~QRenderSurfaceSelectorPrivate(); + + // TODO: Qt 5.8, make it public + static QRenderSurfaceSelector *find(QObject *rootObject); + + void setExternalRenderTargetSize(const QSize &size); + QSize externalRenderTargetSize() const { return m_externalRenderTargetSize; } + + QSurface *m_surface; + QSize m_externalRenderTargetSize; + QScopedPointer m_surfaceEventFilter; + float m_surfacePixelRatio; + QMetaObject::Connection m_heightConn; + QMetaObject::Connection m_widthConn; + QMetaObject::Connection m_screenConn; +}; + +struct QRenderSurfaceSelectorData +{ + QPointer surface; + QSize externalRenderTargetSize; + float surfacePixelRatio; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QRENDERSURFACESELECTOR_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qrendertarget_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qrendertarget_p.h new file mode 100644 index 0000000..f1035e8 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qrendertarget_p.h @@ -0,0 +1,82 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QRENDERTARGET_P_H +#define QT3DRENDER_QRENDERTARGET_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QRenderTargetOutput; +class QRenderTarget; + +class QT3DRENDERSHARED_PRIVATE_EXPORT QRenderTargetPrivate : public Qt3DCore::QComponentPrivate +{ +public: + QRenderTargetPrivate(); + + Q_DECLARE_PUBLIC(QRenderTarget) + QVector m_outputs; +}; + +struct QRenderTargetData +{ + Qt3DCore::QNodeIdVector outputIds; +}; + +} + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QRENDERTARGET_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qrendertargetoutput_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qrendertargetoutput_p.h new file mode 100644 index 0000000..df855f1 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qrendertargetoutput_p.h @@ -0,0 +1,91 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QRENDERTARGETOUTPUT_P_H +#define QT3DRENDER_QRENDERTARGETOUTPUT_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QAbstractTexture; + +class QT3DRENDERSHARED_PRIVATE_EXPORT QRenderTargetOutputPrivate : public Qt3DCore::QNodePrivate +{ +public: + QRenderTargetOutputPrivate(); + + Q_DECLARE_PUBLIC(QRenderTargetOutput) + + QAbstractTexture *m_texture; + QRenderTargetOutput::AttachmentPoint m_attachmentPoint; + int m_mipLevel; + int m_layer; + QAbstractTexture::CubeMapFace m_face; +}; + +struct QRenderTargetOutputData +{ + Qt3DCore::QNodeId textureId; + QRenderTargetOutput::AttachmentPoint attachmentPoint; + int mipLevel; + int layer; + QAbstractTexture::CubeMapFace face; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QRENDERTARGETOUTPUT_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qrendertargetselector_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qrendertargetselector_p.h new file mode 100644 index 0000000..be3ebea --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qrendertargetselector_p.h @@ -0,0 +1,83 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QRENDERTARGETSELECTOR_P_H +#define QT3DRENDER_QRENDERTARGETSELECTOR_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QRenderTargetSelector; +class QRenderTarget; + +class QRenderTargetSelectorPrivate : public QFrameGraphNodePrivate +{ +public: + QRenderTargetSelectorPrivate(); + + Q_DECLARE_PUBLIC(QRenderTargetSelector) + QRenderTarget *m_target; + QVector m_outputs; +}; + +struct QRenderTargetSelectorData +{ + Qt3DCore::QNodeId targetId; + QVector outputs; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QRENDERTARGETSELECTOR_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qsceneexporter_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qsceneexporter_p.h new file mode 100644 index 0000000..3c8b92c --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qsceneexporter_p.h @@ -0,0 +1,98 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd and/or its subsidiary(-ies). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QSCENE_EXPORTER_P_H +#define QT3DRENDER_QSCENE_EXPORTER_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { +class QEntity; +} + +namespace Qt3DRender { + +Q_DECLARE_LOGGING_CATEGORY(SceneParsers) + +class QT3DRENDERSHARED_PRIVATE_EXPORT QSceneExporter : public QObject +{ + Q_OBJECT + Q_PROPERTY(QStringList errors READ errors NOTIFY errorsChanged) + +public: + QSceneExporter(); + virtual ~QSceneExporter(); + + virtual bool exportScene(Qt3DCore::QEntity *sceneRoot, const QString &outDir, + const QString &exportName, const QVariantHash &options) = 0; + QStringList errors() const; + +Q_SIGNALS: + void errorsChanged(const QStringList &errors); + +protected: + void logError(const QString &error); + void logInfo(const QString &info); + +private: + QStringList m_errors; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QSCENE_EXPORTER_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qsceneexportfactory_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qsceneexportfactory_p.h new file mode 100644 index 0000000..5ff6149 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qsceneexportfactory_p.h @@ -0,0 +1,76 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd and/or its subsidiary(-ies). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QSCENEEXPORTFACTORY_P_H +#define QT3DRENDER_QSCENEEXPORTFACTORY_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QSceneExporter; + +class QT3DRENDERSHARED_PRIVATE_EXPORT QSceneExportFactory +{ +public: + static QStringList keys(const QString &pluginPath = QString()); + static QSceneExporter *create(const QString &name, const QStringList &args, + const QString &pluginPath = QString()); +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QSCENEEXPORTFACTORY_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qsceneexportplugin_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qsceneexportplugin_p.h new file mode 100644 index 0000000..3515cd4 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qsceneexportplugin_p.h @@ -0,0 +1,82 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd and/or its subsidiary(-ies). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QSCENEEXPORTPLUGIN_P_H +#define QT3DRENDER_QSCENEEXPORTPLUGIN_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +#define QSceneExportFactoryInterface_iid "org.qt-project.Qt3DRender.QSceneExportFactoryInterface 5.9" + +class QSceneExporter; + +class QT3DRENDERSHARED_PRIVATE_EXPORT QSceneExportPlugin : public QObject +{ + Q_OBJECT +public: + explicit QSceneExportPlugin(QObject *parent = nullptr); + ~QSceneExportPlugin(); + + virtual QSceneExporter *create(const QString &key, const QStringList ¶mList); +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QSCENEEXPORTPLUGIN_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qsceneimporter_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qsceneimporter_p.h new file mode 100644 index 0000000..8f83231 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qsceneimporter_p.h @@ -0,0 +1,115 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QSCENE_IMPORTER_P_H +#define QT3DRENDER_QSCENE_IMPORTER_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { +class QEntity; +} + +namespace Qt3DRender { + +Q_DECLARE_LOGGING_CATEGORY(SceneParsers) + +class QT3DRENDERSHARED_PRIVATE_EXPORT QSceneImporter : public QObject +{ + Q_OBJECT + Q_PROPERTY(ParserStatus status READ status NOTIFY statusChanged) + Q_PROPERTY(QStringList errors READ errors NOTIFY errorsChanged) + +public: + enum ParserStatus { + Empty, + Loading, + Loaded, + Error + }; + Q_ENUM(ParserStatus) // LCOV_EXCL_LINE + + QSceneImporter(); + virtual ~QSceneImporter(); + + virtual void setSource(const QUrl &source) = 0; + virtual void setData(const QByteArray& data, const QString &basePath) = 0; + virtual bool areFileTypesSupported(const QStringList &extensions) const = 0; + virtual Qt3DCore::QEntity *scene(const QString &id = QString()) = 0; + virtual Qt3DCore::QEntity *node(const QString &id) = 0; + + ParserStatus status() const; + QStringList errors() const; + +Q_SIGNALS: + void statusChanged(ParserStatus status); + void errorsChanged(const QStringList &errors); + +protected: + void setStatus(ParserStatus status); + void logError(const QString &error); + void logInfo(const QString &info); + +private: + ParserStatus m_status; + QStringList m_errors; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QSCENE_IMPORTER_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qsceneimportfactory_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qsceneimportfactory_p.h new file mode 100644 index 0000000..c66937f --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qsceneimportfactory_p.h @@ -0,0 +1,74 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd and/or its subsidiary(-ies). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QSCENEIMPORTFACTORY_P_H +#define QSCENEIMPORTFACTORY_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QSceneImporter; + +class QT3DRENDERSHARED_PRIVATE_EXPORT QSceneImportFactory +{ +public: + static QStringList keys(const QString &pluginPath = QString()); + static QSceneImporter *create(const QString &name, const QStringList &args, const QString &pluginPath = QString()); +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QSCENEIMPORTFACTORY_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qsceneimportplugin_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qsceneimportplugin_p.h new file mode 100644 index 0000000..01ab840 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qsceneimportplugin_p.h @@ -0,0 +1,82 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd and/or its subsidiary(-ies). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QSCENEIMPORTPLUGIN_P_H +#define QSCENEIMPORTPLUGIN_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +#define QSceneImportFactoryInterface_iid "org.qt-project.Qt3DRender.QSceneImportFactoryInterface 5.7" + +class QSceneImporter; + +class QT3DRENDERSHARED_PRIVATE_EXPORT QSceneImportPlugin : public QObject +{ + Q_OBJECT +public: + explicit QSceneImportPlugin(QObject *parent = nullptr); + ~QSceneImportPlugin(); + + virtual QSceneImporter *create(const QString &key, const QStringList ¶mList); +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QSCENEIMPORTPLUGIN_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qsceneloader_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qsceneloader_p.h new file mode 100644 index 0000000..45a6a1a --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qsceneloader_p.h @@ -0,0 +1,90 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QSCENELOADER_P_H +#define QT3DRENDER_QSCENELOADER_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QSceneImporter; + +class QT3DRENDERSHARED_PRIVATE_EXPORT QSceneLoaderPrivate : public Qt3DCore::QComponentPrivate +{ +public: + QSceneLoaderPrivate(); + + void setStatus(QSceneLoader::Status status); + + Q_DECLARE_PUBLIC(QSceneLoader) + + void populateEntityMap(Qt3DCore::QEntity *parentEntity); + + QUrl m_source; + QSceneLoader::Status m_status; + Qt3DCore::QEntity *m_subTreeRoot; + QHash m_entityMap; +}; + +struct QSceneLoaderData +{ + QUrl source; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QSCENELOADER_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qscissortest_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qscissortest_p.h new file mode 100644 index 0000000..7c7bfdf --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qscissortest_p.h @@ -0,0 +1,90 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QSCISSORTEST_P_H +#define QT3DRENDER_QSCISSORTEST_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QT3DRENDERSHARED_PRIVATE_EXPORT QScissorTestPrivate : public QRenderStatePrivate +{ +public: + QScissorTestPrivate() + : QRenderStatePrivate(Render::ScissorStateMask) + , m_left(0) + , m_bottom(0) + , m_width(0) + , m_height(0) + { + } + + Q_DECLARE_PUBLIC(QScissorTest) + int m_left; + int m_bottom; + int m_width; + int m_height; +}; + +struct QScissorTestData +{ + int left; + int bottom; + int width; + int height; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QSCISSORTEST_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qshaderdata_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qshaderdata_p.h new file mode 100644 index 0000000..258c962 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qshaderdata_p.h @@ -0,0 +1,109 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QSHADERDATA_P_H +#define QT3DRENDER_QSHADERDATA_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +namespace { + +const int qVectorShaderDataTypeId = qMetaTypeId >(); + +} + +class QShaderDataPropertyReader: public PropertyReaderInterface +{ + QVariant readProperty(const QVariant &v) override + { + const auto node = v.value(); + + if (node) { + return QVariant::fromValue(node->id()); + } else if (v.userType() == qVectorShaderDataTypeId) { + QVariantList vlist; + const auto data_ = v.value >(); + for (QShaderData *data : data_) { + if (data) + vlist.append(QVariant::fromValue(data->id())); + } + return vlist; + } + return v; + } +}; + +class QT3DRENDERSHARED_PRIVATE_EXPORT QShaderDataPrivate : public Qt3DCore::QComponentPrivate +{ +public: + QShaderDataPrivate(); + QShaderDataPrivate(PropertyReaderInterfacePtr reader); + PropertyReaderInterfacePtr m_propertyReader; + + Q_DECLARE_PUBLIC(QShaderData) +}; + +struct QShaderDataData +{ + QVector> properties; + PropertyReaderInterfacePtr propertyReader; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QSHADERDATA_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qshaderprogram_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qshaderprogram_p.h new file mode 100644 index 0000000..f09b2a3 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qshaderprogram_p.h @@ -0,0 +1,97 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QSHADERPROGRAM_P_H +#define QT3DRENDER_QSHADERPROGRAM_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QShaderProgramPrivate : public Qt3DCore::QNodePrivate +{ +public: + QShaderProgramPrivate(); + + Q_DECLARE_PUBLIC(QShaderProgram) + QByteArray m_vertexShaderCode; + QByteArray m_tessControlShaderCode; + QByteArray m_tessEvalShaderCode; + QByteArray m_geometryShaderCode; + QByteArray m_fragmentShaderCode; + QByteArray m_computeShaderCode; + QString m_log; + QShaderProgram::Status m_status; + + void setLog(const QString &log); + void setStatus(QShaderProgram::Status status); + + static QByteArray deincludify(const QByteArray &contents, const QString &filePath); + static QByteArray deincludify(const QString &filePath); +}; + +struct QShaderProgramData +{ + QByteArray vertexShaderCode; + QByteArray tessellationControlShaderCode; + QByteArray tessellationEvaluationShaderCode; + QByteArray geometryShaderCode; + QByteArray fragmentShaderCode; + QByteArray computeShaderCode; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QSHADERPROGRAM_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qshaderprogrambuilder_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qshaderprogrambuilder_p.h new file mode 100644 index 0000000..e1b4702 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qshaderprogrambuilder_p.h @@ -0,0 +1,95 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QSHADERPROGRAMBUILDER_P_H +#define QT3DRENDER_QSHADERPROGRAMBUILDER_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QShaderProgramBuilderPrivate : public Qt3DCore::QNodePrivate +{ +public: + QShaderProgramBuilderPrivate(); + + Q_DECLARE_PUBLIC(QShaderProgramBuilder) + QShaderProgram *m_shaderProgram; + QStringList m_enabledLayers; + QUrl m_vertexShaderGraph; + QUrl m_tessControlShaderGraph; + QUrl m_tessEvalShaderGraph; + QUrl m_geometryShaderGraph; + QUrl m_fragmentShaderGraph; + QUrl m_computeShaderGraph; +}; + +struct QShaderProgramBuilderData +{ + Qt3DCore::QNodeId shaderProgramId; + QStringList enabledLayers; + QUrl vertexShaderGraph; + QUrl tessellationControlShaderGraph; + QUrl tessellationEvaluationShaderGraph; + QUrl geometryShaderGraph; + QUrl fragmentShaderGraph; + QUrl computeShaderGraph; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QSHADERPROGRAMBUILDER_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qsortpolicy_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qsortpolicy_p.h new file mode 100644 index 0000000..484f7a2 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qsortpolicy_p.h @@ -0,0 +1,99 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QSORTPOLICY_P_H +#define QT3DRENDER_QSORTPOLICY_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include "qsortpolicy.h" + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + + +class QSortPolicyPrivate : public QFrameGraphNodePrivate +{ +public: + QSortPolicyPrivate(); + Q_DECLARE_PUBLIC(QSortPolicy) + QVector m_sortTypes; +}; + + +struct QSortPolicyData +{ + QVector sortTypes; +}; + +} // namespace Qt3DRender + +namespace { + template + To typeCastHelper(From type) + { + return static_cast(type); + } + + template + void transformVector(const QVector &input, QVector &output) + { + Q_ASSERT(output.isEmpty()); + + output.reserve(input.size()); + std::transform(input.constBegin(), input.constEnd(), + std::back_inserter(output), + typeCastHelper); + } +} + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QSORTPOLICY_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qspotlight_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qspotlight_p.h new file mode 100644 index 0000000..eabc003 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qspotlight_p.h @@ -0,0 +1,75 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QSPOTLIGHT_P_H +#define QT3DRENDER_QSPOTLIGHT_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QSpotLight; + +class QT3DRENDERSHARED_PRIVATE_EXPORT QSpotLightPrivate : public QAbstractLightPrivate +{ +public: + QSpotLightPrivate(); + + Q_DECLARE_PUBLIC(QSpotLight) +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QSPOTLIGHT_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qstencilmask_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qstencilmask_p.h new file mode 100644 index 0000000..762b249 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qstencilmask_p.h @@ -0,0 +1,82 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QSTENCILMASK_P_H +#define QT3DRENDER_QSTENCILMASK_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QT3DRENDERSHARED_PRIVATE_EXPORT QStencilMaskPrivate : public QRenderStatePrivate +{ +public: + QStencilMaskPrivate() + : QRenderStatePrivate(Render::StencilWriteStateMask) + , m_frontOutputMask(0) + , m_backOutputMask(0) + {} + + uint m_frontOutputMask; + uint m_backOutputMask; +}; + +struct QStencilMaskData +{ + uint frontOutputMask; + uint backOutputMask; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QSTENCILMASK_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qstenciloperation_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qstenciloperation_p.h new file mode 100644 index 0000000..dbce734 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qstenciloperation_p.h @@ -0,0 +1,89 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QSTENCILOPERATION_P_H +#define QT3DRENDER_QSTENCILOPERATION_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +struct QStencilOperationData +{ + QStencilOperationArgumentsData front; + QStencilOperationArgumentsData back; +}; + +class QT3DRENDERSHARED_PRIVATE_EXPORT QStencilOperationPrivate : public QRenderStatePrivate +{ +public: + QStencilOperationPrivate() + : QRenderStatePrivate(Render::StencilOpMask) + , m_front(new QStencilOperationArguments(QStencilOperationArguments::Front, q_ptr)) + , m_back(new QStencilOperationArguments(QStencilOperationArguments::Back, q_ptr)) + {} + + QStencilOperationArguments *m_front; + QStencilOperationArguments *m_back; + + void resendArguments(); + void fillData(QStencilOperationData &data) const; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +Q_DECLARE_METATYPE(Qt3DRender::QStencilOperationData) + +#endif // QT3DRENDER_QSTENCILOPERATION_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qstenciloperationarguments_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qstenciloperationarguments_p.h new file mode 100644 index 0000000..3babd33 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qstenciloperationarguments_p.h @@ -0,0 +1,90 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QSTENCILOPERATIONARGUMENTS_P_H +#define QT3DRENDER_QSTENCILOPERATIONARGUMENTS_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QT3DRENDERSHARED_PRIVATE_EXPORT QStencilOperationArgumentsPrivate : public QObjectPrivate +{ +public: + QStencilOperationArgumentsPrivate(QStencilOperationArguments::FaceMode mode) + : QObjectPrivate() + , m_face(mode) + , m_stencilTestFailureOperation(QStencilOperationArguments::Keep) + , m_depthTestFailureOperation(QStencilOperationArguments::Keep) + , m_allTestsPassOperation(QStencilOperationArguments::Keep) + { + + } + + QStencilOperationArguments::FaceMode m_face; + QStencilOperationArguments::Operation m_stencilTestFailureOperation; + QStencilOperationArguments::Operation m_depthTestFailureOperation; + QStencilOperationArguments::Operation m_allTestsPassOperation; +}; + +struct QStencilOperationArgumentsData +{ + QStencilOperationArguments::FaceMode face; + QStencilOperationArguments::Operation stencilTestFailureOperation; + QStencilOperationArguments::Operation depthTestFailureOperation; + QStencilOperationArguments::Operation allTestsPassOperation; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QSTENCILOPERATIONARGUMENTS_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qstenciltest_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qstenciltest_p.h new file mode 100644 index 0000000..838ba5b --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qstenciltest_p.h @@ -0,0 +1,91 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QSTENCILTEST_P_H +#define QT3DRENDER_QSTENCILTEST_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +struct QStencilTestData +{ + QStencilTestArgumentsData front; + QStencilTestArgumentsData back; +}; + +class QT3DRENDERSHARED_PRIVATE_EXPORT QStencilTestPrivate : public QRenderStatePrivate +{ +public: + QStencilTestPrivate() + : QRenderStatePrivate(Render::StencilTestStateMask) + , m_front(new QStencilTestArguments(QStencilTestArguments::Front)) + , m_back(new QStencilTestArguments(QStencilTestArguments::Back)) + { + } + + Q_DECLARE_PUBLIC(QStencilTest) + QStencilTestArguments *m_front; + QStencilTestArguments *m_back; + + void resendArguments(); + void fillData(QStencilTestData &data) const; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +Q_DECLARE_METATYPE(Qt3DRender::QStencilTestData) + +#endif // QT3DRENDER_QSTENCILTEST_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qstenciltestarguments_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qstenciltestarguments_p.h new file mode 100644 index 0000000..6623018 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qstenciltestarguments_p.h @@ -0,0 +1,90 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QSTENCILTESTARGUMENTS_P_H +#define QT3DRENDER_QSTENCILTESTARGUMENTS_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QT3DRENDERSHARED_PRIVATE_EXPORT QStencilTestArgumentsPrivate : public QObjectPrivate +{ +public: + QStencilTestArgumentsPrivate(QStencilTestArguments::StencilFaceMode face) + : QObjectPrivate() + , m_face(face) + , m_comparisonMask(0) + , m_referenceValue(0) + , m_stencilFunction(QStencilTestArguments::Never) + { + } + + Q_DECLARE_PUBLIC(QStencilTestArguments) + QStencilTestArguments::StencilFaceMode m_face; + uint m_comparisonMask; + int m_referenceValue; + QStencilTestArguments::StencilFunction m_stencilFunction; +}; + +struct QStencilTestArgumentsData +{ + QStencilTestArguments::StencilFaceMode face; + uint comparisonMask; + int referenceValue; + QStencilTestArguments::StencilFunction stencilFunction; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QSTENCILTESTARGUMENTS_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qt3drender-config_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qt3drender-config_p.h new file mode 100644 index 0000000..3aefa25 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qt3drender-config_p.h @@ -0,0 +1 @@ +#define QT_FEATURE_qt3d_opengl_renderer 1 diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qt3drender_global_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qt3drender_global_p.h new file mode 100644 index 0000000..bdc35fd --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qt3drender_global_p.h @@ -0,0 +1,59 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_GLOBAL_P_H +#define QT3DRENDER_GLOBAL_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include "qt3drender_global.h" +#include + +#define QT3DRENDERSHARED_PRIVATE_EXPORT QT3DRENDERSHARED_EXPORT + +#endif // QT3DRENDER_GLOBAL_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qtechnique_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qtechnique_p.h new file mode 100644 index 0000000..48891c9 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qtechnique_p.h @@ -0,0 +1,96 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QTECHNIQUE_P_H +#define QT3DRENDER_QTECHNIQUE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QTechnique; +class QFilterKey; +class QParameter; +class QRenderPass; + +class QTechniquePrivate : public Qt3DCore::QNodePrivate +{ +public: + QTechniquePrivate(); + ~QTechniquePrivate(); + + Q_DECLARE_PUBLIC(QTechnique) + QVector m_filterKeys; + QVector m_parameters; + QVector m_renderPasses; + QGraphicsApiFilter m_graphicsApiFilter; + +private: + void _q_graphicsApiFilterChanged(); +}; + +struct QTechniqueData +{ + GraphicsApiFilterData graphicsApiFilterData; + + Qt3DCore::QNodeIdVector filterKeyIds; + Qt3DCore::QNodeIdVector parameterIds; + Qt3DCore::QNodeIdVector renderPassIds; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QTECHNIQUE_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qtechniquefilter_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qtechniquefilter_p.h new file mode 100644 index 0000000..d25f10a --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qtechniquefilter_p.h @@ -0,0 +1,83 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QTECHNIQUEFILTER_P_H +#define QT3DRENDER_QTECHNIQUEFILTER_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QTechniqueFilter; + +class QT3DRENDERSHARED_PRIVATE_EXPORT QTechniqueFilterPrivate : public QFrameGraphNodePrivate +{ +public : + QTechniqueFilterPrivate(); + + Q_DECLARE_PUBLIC(QTechniqueFilter) + QVector m_matchList; + QVector m_parameters; +}; + +struct QTechniqueFilterData +{ + Qt3DCore::QNodeIdVector matchIds; + Qt3DCore::QNodeIdVector parameterIds; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QTECHNIQUEFILTER_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qtexture_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qtexture_p.h new file mode 100644 index 0000000..0874803 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qtexture_p.h @@ -0,0 +1,142 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QTEXTURE_P_H +#define QT3DRENDER_QTEXTURE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QT3DRENDERSHARED_PRIVATE_EXPORT QTextureLoaderPrivate : public QAbstractTexturePrivate +{ +public: + QTextureLoaderPrivate(); + + Q_DECLARE_PUBLIC(QTextureLoader) + + void setScene(Qt3DCore::QScene *scene) override; + void updateGenerator(); + + QUrl m_source; + bool m_mirrored; +}; + +class QTextureFromSourceGenerator; +typedef QSharedPointer QTextureFromSourceGeneratorPtr; + +class Q_AUTOTEST_EXPORT TextureDownloadRequest : public Qt3DCore::QDownloadRequest +{ +public: + TextureDownloadRequest(const QTextureFromSourceGeneratorPtr &functor, + const QUrl &url, + Qt3DCore::QAspectEngine *engine); + + void onCompleted() override; + +private: + QTextureFromSourceGeneratorPtr m_functor; + Qt3DCore::QAspectEngine *m_engine; +}; + +class Q_AUTOTEST_EXPORT QTextureFromSourceGenerator : public QTextureGenerator, + public QEnableSharedFromThis +{ +public: + explicit QTextureFromSourceGenerator(QTextureLoader *textureLoader, + Qt3DCore::QAspectEngine *engine, + Qt3DCore::QNodeId textureId); + + QTextureFromSourceGenerator(const QTextureFromSourceGenerator &other); + + QTextureDataPtr operator ()() override; + bool operator ==(const QTextureGenerator &other) const override; + inline QAbstractTexture::Status status() const { return m_status; } + + QT3D_FUNCTOR(QTextureFromSourceGenerator) + + QUrl url() const; + bool isMirrored() const; + +private: + friend class TextureDownloadRequest; + + QUrl m_url; + QAbstractTexture::Status m_status; + bool m_mirrored; + + QByteArray m_sourceData; + Qt3DCore::QNodeId m_texture; + Qt3DCore::QAspectEngine *m_engine; + + // Options that can be overridden on TextureLoader when loading + QAbstractTexture::TextureFormat m_format; +}; + +class Q_AUTOTEST_EXPORT TextureLoadingHelper +{ +public: + static QTextureImageDataPtr loadTextureData(const QUrl &source, bool allow3D, bool mirrored); + static QTextureImageDataPtr loadTextureData(QIODevice *data, const QString& suffix, + bool allow3D, bool mirrored); +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QTEXTURE_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qtextureimage_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qtextureimage_p.h new file mode 100644 index 0000000..5a4ea8f --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qtextureimage_p.h @@ -0,0 +1,109 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QTEXTUREIMAGE_P_H +#define QT3DRENDER_QTEXTUREIMAGE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QT3DRENDERSHARED_PRIVATE_EXPORT QTextureImagePrivate : public QAbstractTextureImagePrivate +{ +public: + QTextureImagePrivate() + : QAbstractTextureImagePrivate() + , m_status(QTextureImage::None) + , m_mirrored(true) + { + } + + Q_DECLARE_PUBLIC(QTextureImage) + + QUrl m_source; + QTextureImage::Status m_status; + bool m_mirrored; +}; + +class Q_AUTOTEST_EXPORT QImageTextureDataFunctor : public QTextureImageDataGenerator +{ +public: + explicit QImageTextureDataFunctor(const QUrl &url, bool mirrored); + // Will be executed from within a QAspectJob + QTextureImageDataPtr operator ()() final; + bool operator ==(const QTextureImageDataGenerator &other) const final; + inline QTextureImage::Status status() const { return m_status; } + QT3D_FUNCTOR(QImageTextureDataFunctor) + + QUrl url() const; + bool isMirrored() const; + +private: + QUrl m_url; + QDateTime m_lastModified; + QTextureImage::Status m_status; + bool m_mirrored; +}; + +typedef QSharedPointer QImageTextureDataFunctorPtr; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QTEXTUREIMAGE_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qtextureimagedata_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qtextureimagedata_p.h new file mode 100644 index 0000000..8bb836d --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qtextureimagedata_p.h @@ -0,0 +1,103 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_TEXTUREDATA_P_H +#define QT3DRENDER_TEXTUREDATA_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include "qtextureimagedata.h" + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QTextureImageDataPrivate +{ +public: + QTextureImageDataPrivate(); + + void setData(const QByteArray &data, int blockSize, bool isCompressed); + + bool setCompressedFile(const QString &source); + + QByteArray data(int layer, int face, int mipmapLevel) const; + + int m_width; + int m_height; + int m_depth; + int m_layers; + int m_faces; + int m_mipLevels; + int m_blockSize; + + QOpenGLTexture::Target m_target; + QOpenGLTexture::TextureFormat m_format; + QOpenGLTexture::PixelFormat m_pixelFormat; + QOpenGLTexture::PixelType m_pixelType; + + bool m_isCompressed; + QByteArray m_data; + + static QTextureImageDataPrivate *get(QTextureImageData *imageData); + +private: + int layerSize() const; + int faceSize() const; + int mipmapLevelSize(int level) const; + + bool setPkmFile(const QString &source); + bool setDdsFile(const QString &source); +}; + +} // namespace Qt3DRender + + +QT_END_NAMESPACE + +#endif // QT3DRENDER_TEXTUREDATA_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qurlhelper_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qurlhelper_p.h new file mode 100644 index 0000000..c9c4cfd --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qurlhelper_p.h @@ -0,0 +1,71 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QURLHELPER_P_H +#define QT3DRENDER_QURLHELPER_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QT3DRENDERSHARED_EXPORT QUrlHelper +{ +public: + static QString urlToLocalFileOrQrc(const QUrl &url); +}; + +} // Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QURLHELPER_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qviewport_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qviewport_p.h new file mode 100644 index 0000000..4c82f38 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/qviewport_p.h @@ -0,0 +1,83 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QVIEWPORT_P_H +#define QT3DRENDER_QVIEWPORT_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QViewport; + +class QViewportPrivate : public QFrameGraphNodePrivate +{ +public : + QViewportPrivate(); + + Q_DECLARE_PUBLIC(QViewport) + QRectF m_normalizedRect; + QColor m_clearColor; + float m_gamma; +}; + +struct QViewportData +{ + QRectF normalizedRect; + float gamma; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QVIEWPORT_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/raycaster_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/raycaster_p.h new file mode 100644 index 0000000..6fe6ee3 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/raycaster_p.h @@ -0,0 +1,108 @@ +/**************************************************************************** +** +** Copyright (C) 2018 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_RAYCASTER_P_H +#define QT3DRENDER_RENDER_RAYCASTER_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + + +QT_BEGIN_NAMESPACE + +#include + +namespace Qt3DRender { + +namespace Render { + +class Q_AUTOTEST_EXPORT RayCaster : public BackendNode +{ +public: + RayCaster(); + ~RayCaster(); + + QAbstractRayCasterPrivate::RayCasterType type() const; + QAbstractRayCaster::RunMode runMode() const; + QVector3D origin() const; + QVector3D direction() const; + float length() const; + QPoint position() const; + + Qt3DCore::QNodeIdVector layerIds() const; + QAbstractRayCaster::FilterMode filterMode() const; + + void cleanup(); + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) final; + + void dispatchHits(const QAbstractRayCaster::Hits &hits); + +private: + void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) final; + void notifyJob(); + + QAbstractRayCasterPrivate::RayCasterType m_type = QAbstractRayCasterPrivate::WorldSpaceRayCaster; + QAbstractRayCaster::RunMode m_runMode = QAbstractRayCaster::SingleShot; + QVector3D m_origin; + QVector3D m_direction = {0.f, 0.f, 1.f}; + float m_length = 1.f; + QPoint m_position; + Qt3DCore::QNodeIdVector m_layerIds; + QAbstractRayCaster::FilterMode m_filterMode = QAbstractRayCaster::AcceptAnyMatchingLayers; +}; + +} // Render + +} // Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_RAYCASTER_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/raycastingjob_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/raycastingjob_p.h new file mode 100644 index 0000000..0bd8d44 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/raycastingjob_p.h @@ -0,0 +1,95 @@ +/**************************************************************************** +** +** Copyright (C) 2018 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_RAYCASTINGJOB_H +#define QT3DRENDER_RENDER_RAYCASTINGJOB_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include "abstractpickingjob_p.h" +#include +#include +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { +namespace Render { + +namespace PickingUtils { +typedef QVector HitList; +} + +class Q_AUTOTEST_EXPORT RayCastingJob : public AbstractPickingJob +{ +public: + RayCastingJob(); + + void markCastersDirty(); + bool runHelper() override; + +protected: + void dispatchHits(RayCaster *rayCaster, const PickingUtils::HitList &sphereHits); + +private: + bool m_castersDirty; + bool m_oneEnabledAtLeast; +}; + +typedef QSharedPointer RayCastingJobPtr; + +} // namespace Render + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_RAYCASTINGJOB_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/renderbuffer_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/renderbuffer_p.h new file mode 100644 index 0000000..7dc6249 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/renderbuffer_p.h @@ -0,0 +1,90 @@ +/**************************************************************************** +** +** Copyright (C) 2017 The Qt Company Ltd. +** Contact: http://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_RENDERBUFFER_P_H +#define QT3DRENDER_RENDER_RENDERBUFFER_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +class QOpenGLContext; + +namespace Qt3DRender { +namespace Render { + +class Q_AUTOTEST_EXPORT RenderBuffer +{ +public: + RenderBuffer(int width, int height, QAbstractTexture::TextureFormat format); + ~RenderBuffer(); + + int width() const { return m_size.width(); } + int height() const { return m_size.height(); } + QSize size() const { return m_size; } + QAbstractTexture::TextureFormat format() const { return m_format; } + GLuint renderBufferId() const { return m_renderBuffer; } + + void bind(); + void release(); + +private: + QSize m_size; + QAbstractTexture::TextureFormat m_format; + GLuint m_renderBuffer; + QOpenGLContext *m_context; +}; + +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_RENDERBUFFER_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/rendercapture_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/rendercapture_p.h new file mode 100644 index 0000000..71fa01e --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/rendercapture_p.h @@ -0,0 +1,87 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: http://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef RENDERCAPTURE_P_H +#define RENDERCAPTURE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +namespace Render { + +class Q_AUTOTEST_EXPORT RenderCapture : public FrameGraphNode +{ +public: + RenderCapture(); + + void requestCapture(const QRenderCaptureRequest &request); + bool wasCaptureRequested() const; + QRenderCaptureRequest takeCaptureRequest(); + void addRenderCapture(int captureId, const QImage &image); + void sendRenderCaptures(); + +protected: + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) final; + +private: + + QVector m_requestedCaptures; + QVector m_renderCaptureData; + mutable QMutex m_mutex; +}; + +} // Render + +} // Qt3DRender + +QT_END_NAMESPACE + +#endif // RENDERCAPTURE_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/rendercommand_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/rendercommand_p.h new file mode 100644 index 0000000..67e02d3 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/rendercommand_p.h @@ -0,0 +1,130 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Copyright (C) 2016 The Qt Company Ltd and/or its subsidiary(-ies). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_RENDERCOMMAND_H +#define QT3DRENDER_RENDER_RENDERCOMMAND_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +class QOpenGLVertexArrayObject; + +namespace Qt3DRender { + +namespace Render { + +class RenderStateSet; + +class Q_AUTOTEST_EXPORT RenderCommand +{ +public: + RenderCommand(); + + HVao m_vao; // VAO used during the submission step to store all states and VBOs + HShader m_shader; // Shader for given pass and mesh + HMaterial m_material; // Purely used to ease sorting (minimize stage changes, binding changes ....) + ShaderParameterPack m_parameterPack; // Might need to be reworked so as to be able to destroy the + // Texture while submission is happening. + RenderStateSet *m_stateSet; + + HGeometry m_geometry; + HGeometryRenderer m_geometryRenderer; + + HBuffer m_indirectDrawBuffer; // Reference to indirect draw buffer (valid only m_drawIndirect == true) + + // A QAttribute pack might be interesting + // This is a temporary fix in the meantime, to remove the hacked methods in Technique + QVector m_attributes; + + float m_depth; + int m_changeCost; + uint m_shaderDna; + + enum CommandType { + Draw, + Compute + }; + + CommandType m_type; + int m_workGroups[3]; + + // Values filled for draw calls + GLsizei m_primitiveCount; + QGeometryRenderer::PrimitiveType m_primitiveType; + int m_restartIndexValue; + int m_firstInstance; + int m_firstVertex; + int m_verticesPerPatch; + int m_instanceCount; + int m_indexOffset; + uint m_indexAttributeByteOffset; + GLint m_indexAttributeDataType; + uint m_indirectAttributeByteOffset; + bool m_drawIndexed; + bool m_drawIndirect; + bool m_primitiveRestartEnabled; + bool m_isValid; +}; + +} // namespace Render + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_RENDERCOMMAND_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/renderer_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/renderer_p.h new file mode 100644 index 0000000..6443215 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/renderer_p.h @@ -0,0 +1,418 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Copyright (C) 2016 The Qt Company Ltd and/or its subsidiary(-ies). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_RENDERER_H +#define QT3DRENDER_RENDER_RENDERER_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include +#include + +#include +#include +#include +#include +#include +#include +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +class QSurface; +class QMouseEvent; + +namespace Qt3DCore { +class QEntity; +class QFrameAllocator; +class QEventFilterService; +} + +namespace Qt3DRender { + +class QCamera; +class QMaterial; +class QShaderProgram; +class QMesh; +class QRenderPass; +class QAbstractShapeMesh; +struct GraphicsApiFilterData; +class QSceneImporter; + +#if QT_CONFIG(qt3d_profile_jobs) +namespace Debug { +class CommandExecuter; +} +#endif + +namespace Render { + +class CameraLens; +class SubmissionContext; +class FrameGraphNode; +class Material; +class Technique; +class Shader; +class Entity; +class RenderCommand; +class RenderQueue; +class RenderView; +class Effect; +class RenderPass; +class RenderThread; +class CommandThread; +class RenderStateSet; +class VSyncFrameAdvanceService; +class PickEventFilter; +class NodeManagers; +class ShaderCache; + +class UpdateLevelOfDetailJob; +typedef QSharedPointer UpdateLevelOfDetailJobPtr; + +using SynchronizerJobPtr = GenericLambdaJobPtr>; +using IntrospectShadersJobPtr = GenericLambdaJobPtr>; + +class QT3DRENDERSHARED_PRIVATE_EXPORT Renderer : public AbstractRenderer +{ +public: + explicit Renderer(QRenderAspect::RenderType type); + ~Renderer(); + + void dumpInfo() const override; + API api() const override { return AbstractRenderer::OpenGL; } + + qint64 time() const override; + void setTime(qint64 time) override; + + void setNodeManagers(NodeManagers *managers) override; + void setServices(Qt3DCore::QServiceLocator *services) override; + void setSurfaceExposed(bool exposed) override; + + NodeManagers *nodeManagers() const override; + Qt3DCore::QServiceLocator *services() const override { return m_services; } + + void initialize() override; + void shutdown() override; + void releaseGraphicsResources() override; + + void render() override; + void doRender(bool scene3dBlocking = false) override; + void cleanGraphicsResources() override; + + bool isRunning() const override { return m_running.load(); } + + void setSceneRoot(Qt3DCore::QBackendNodeFactory *factory, Entity *sgRoot) override; + Entity *sceneRoot() const override { return m_renderSceneRoot; } + + FrameGraphNode *frameGraphRoot() const override; + RenderQueue *renderQueue() const { return m_renderQueue; } + + void markDirty(BackendNodeDirtySet changes, BackendNode *node) override; + BackendNodeDirtySet dirtyBits() override; + +#if defined(QT_BUILD_INTERNAL) + void clearDirtyBits(BackendNodeDirtySet changes) override; +#endif + bool shouldRender() override; + void skipNextFrame() override; + + QVector renderBinJobs() override; + Qt3DCore::QAspectJobPtr pickBoundingVolumeJob() override; + Qt3DCore::QAspectJobPtr rayCastingJob() override; + Qt3DCore::QAspectJobPtr syncTextureLoadingJob() override; + Qt3DCore::QAspectJobPtr expandBoundingVolumeJob() override; + + QVector createRenderBufferJobs() const; + + inline FrameCleanupJobPtr frameCleanupJob() const { return m_cleanupJob; } + inline UpdateShaderDataTransformJobPtr updateShaderDataTransformJob() const { return m_updateShaderDataTransformJob; } + inline CalculateBoundingVolumeJobPtr calculateBoundingVolumeJob() const { return m_calculateBoundingVolumeJob; } + inline UpdateTreeEnabledJobPtr updateTreeEnabledJob() const { return m_updateTreeEnabledJob; } + inline UpdateWorldTransformJobPtr updateWorldTransformJob() const { return m_worldTransformJob; } + inline UpdateWorldBoundingVolumeJobPtr updateWorldBoundingVolumeJob() const { return m_updateWorldBoundingVolumeJob; } + inline UpdateLevelOfDetailJobPtr updateLevelOfDetailJob() const { return m_updateLevelOfDetailJob; } + inline UpdateMeshTriangleListJobPtr updateMeshTriangleListJob() const { return m_updateMeshTriangleListJob; } + inline FilterCompatibleTechniqueJobPtr filterCompatibleTechniqueJob() const { return m_filterCompatibleTechniqueJob; } + inline SynchronizerJobPtr textureLoadSyncJob() const { return m_syncTextureLoadingJob; } + inline UpdateSkinningPaletteJobPtr updateSkinningPaletteJob() const { return m_updateSkinningPaletteJob; } + inline IntrospectShadersJobPtr introspectShadersJob() const { return m_introspectShaderJob; } + inline Qt3DCore::QAspectJobPtr bufferGathererJob() const { return m_bufferGathererJob; } + inline Qt3DCore::QAspectJobPtr textureGathererJob() const { return m_textureGathererJob; } + inline Qt3DCore::QAspectJobPtr sendTextureChangesToFrontendJob() const { return m_sendTextureChangesToFrontendJob; } + inline UpdateEntityLayersJobPtr updateEntityLayersJob() const { return m_updateEntityLayersJob; } + + Qt3DCore::QAbstractFrameAdvanceService *frameAdvanceService() const override; + + void registerEventFilter(Qt3DCore::QEventFilterService *service) override; + + void setSettings(RenderSettings *settings) override; + RenderSettings *settings() const override; + QOpenGLContext *shareContext() const override; + + + // Executed in secondary GL thread + void loadShader(Shader *shader, Qt3DRender::Render::HShader shaderHandle) override; + + + void updateGLResources(); + void updateTexture(Texture *texture); + void cleanupTexture(Qt3DCore::QNodeId cleanedUpTextureId); + void downloadGLBuffers(); + void blitFramebuffer(Qt3DCore::QNodeId inputRenderTargetId, + Qt3DCore::QNodeId outputRenderTargetId, + QRect inputRect, + QRect outputRect, + GLuint defaultFramebuffer); + + void prepareCommandsSubmission(const QVector &renderViews); + bool executeCommandsSubmission(const RenderView *rv); + bool updateVAOWithAttributes(Geometry *geometry, + RenderCommand *command, + Shader *shader, + bool forceUpdate); + + bool requiresVAOAttributeUpdate(Geometry *geometry, + RenderCommand *command) const; + + void setOpenGLContext(QOpenGLContext *context) override; + const GraphicsApiFilterData *contextInfo() const; + SubmissionContext *submissionContext() const; + + inline RenderStateSet *defaultRenderState() const { return m_defaultRenderStateSet; } + + QList> pendingPickingEvents() const; + QList pendingKeyEvents() const; + + void addRenderCaptureSendRequest(Qt3DCore::QNodeId nodeId); + const QVector takePendingRenderCaptureSendRequests(); + + void enqueueRenderView(RenderView *renderView, int submitOrder); + bool isReadyToSubmit(); + + QVariant executeCommand(const QStringList &args) override; + void setOffscreenSurfaceHelper(OffscreenSurfaceHelper *helper) override; + QSurfaceFormat format() override; + + struct ViewSubmissionResultData + { + ViewSubmissionResultData() + : lastBoundFBOId(0) + , surface(nullptr) + {} + + uint lastBoundFBOId; + QSurface *surface; + }; + + ViewSubmissionResultData submitRenderViews(const QVector &renderViews); + + RendererCache *cache() { return &m_cache; } + +#ifdef QT3D_RENDER_UNIT_TESTS +public: +#else + +private: +#endif + bool canRender() const; + + Qt3DCore::QServiceLocator *m_services; + NodeManagers *m_nodesManager; + + // Frame graph root + Qt3DCore::QNodeId m_frameGraphRootUuid; + + Entity *m_renderSceneRoot; + + // Fail safe values that we can use if a RenderCommand + // is missing a shader + RenderStateSet *m_defaultRenderStateSet; + ShaderParameterPack m_defaultUniformPack; + + QScopedPointer m_submissionContext; + QSurfaceFormat m_format; + + RenderQueue *m_renderQueue; + QScopedPointer m_renderThread; + QScopedPointer m_commandThread; + QScopedPointer m_vsyncFrameAdvanceService; + + QSemaphore m_submitRenderViewsSemaphore; + QSemaphore m_waitForInitializationToBeCompleted; + QMutex m_hasBeenInitializedMutex; + + QAtomicInt m_running; + + QScopedPointer m_pickEventFilter; + + QVector m_dirtyAttributes; + QVector m_dirtyGeometry; + QAtomicInt m_exposed; + + struct DirtyBits { + BackendNodeDirtySet marked = 0; // marked dirty since last job build + BackendNodeDirtySet remaining = 0; // remaining dirty after jobs have finished + }; + DirtyBits m_dirtyBits; + + QAtomicInt m_lastFrameCorrect; + QOpenGLContext *m_glContext; + QOpenGLContext *m_shareContext; + mutable QMutex m_shareContextMutex; + ShaderCache *m_shaderCache; + PickBoundingVolumeJobPtr m_pickBoundingVolumeJob; + RayCastingJobPtr m_rayCastingJob; + + qint64 m_time; + + RenderSettings *m_settings; + + UpdateShaderDataTransformJobPtr m_updateShaderDataTransformJob; + FrameCleanupJobPtr m_cleanupJob; + UpdateWorldTransformJobPtr m_worldTransformJob; + ExpandBoundingVolumeJobPtr m_expandBoundingVolumeJob; + CalculateBoundingVolumeJobPtr m_calculateBoundingVolumeJob; + UpdateWorldBoundingVolumeJobPtr m_updateWorldBoundingVolumeJob; + UpdateTreeEnabledJobPtr m_updateTreeEnabledJob; + SendRenderCaptureJobPtr m_sendRenderCaptureJob; + SendBufferCaptureJobPtr m_sendBufferCaptureJob; + UpdateSkinningPaletteJobPtr m_updateSkinningPaletteJob; + UpdateLevelOfDetailJobPtr m_updateLevelOfDetailJob; + UpdateMeshTriangleListJobPtr m_updateMeshTriangleListJob; + FilterCompatibleTechniqueJobPtr m_filterCompatibleTechniqueJob; + UpdateEntityLayersJobPtr m_updateEntityLayersJob; + UpdateEntityHierarchyJobPtr m_updateEntityHierarchyJob; + + QVector m_pendingRenderCaptureSendRequests; + + void performDraw(RenderCommand *command); + void performCompute(const RenderView *rv, RenderCommand *command); + void createOrUpdateVAO(RenderCommand *command, + HVao *previousVAOHandle, + OpenGLVertexArrayObject **vao); + + GenericLambdaJobPtr> m_bufferGathererJob; + GenericLambdaJobPtr> m_vaoGathererJob; + GenericLambdaJobPtr> m_textureGathererJob; + GenericLambdaJobPtr> m_sendTextureChangesToFrontendJob; + IntrospectShadersJobPtr m_introspectShaderJob; + + SynchronizerJobPtr m_syncTextureLoadingJob; + + void lookForAbandonedVaos(); + void lookForDirtyBuffers(); + void lookForDownloadableBuffers(); + void lookForDirtyTextures(); + void reloadDirtyShaders(); + void sendTextureChangesToFrontend(); + + QMutex m_abandonedVaosMutex; + QVector m_abandonedVaos; + + QVector m_dirtyBuffers; + QVector m_downloadableBuffers; + QVector m_dirtyShaders; + QVector m_dirtyTextures; + QVector> m_updatedTextureProperties; + + bool m_ownedContext; + + OffscreenSurfaceHelper *m_offscreenHelper; + QMutex m_offscreenSurfaceMutex; + +#if QT_CONFIG(qt3d_profile_jobs) + QScopedPointer m_commandExecuter; + friend class Qt3DRender::Debug::CommandExecuter; +#endif + + QMetaObject::Connection m_contextConnection; + RendererCache m_cache; +}; + +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_RENDERER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/renderercache_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/renderercache_p.h new file mode 100644 index 0000000..0e9c5d3 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/renderercache_p.h @@ -0,0 +1,92 @@ +/**************************************************************************** +** +** Copyright (C) 2017 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_RENDERERCACHE_P_H +#define QT3DRENDER_RENDER_RENDERERCACHE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +namespace Render { + +struct RendererCache +{ + struct LeafNodeData + { + QVector filterEntitiesByLayer; + MaterialParameterGathererData materialParameterGatherer; + QVector gatheredLights; + QVector renderableEntities; + QVector computeEntities; + EnvironmentLight* environmentLight; + }; + + QHash leafNodeCache; + + QMutex *mutex() { return &m_mutex; } + +private: + QMutex m_mutex; +}; + +} // namespace Render + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_RENDERERCACHE_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/renderlogging_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/renderlogging_p.h new file mode 100644 index 0000000..00ae572 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/renderlogging_p.h @@ -0,0 +1,81 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_RENDERLOGGING_P_H +#define QT3DRENDER_RENDER_RENDERLOGGING_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +namespace Render { + +Q_DECLARE_LOGGING_CATEGORY(Backend) +Q_DECLARE_LOGGING_CATEGORY(Frontend) +Q_DECLARE_LOGGING_CATEGORY(Io) +Q_DECLARE_LOGGING_CATEGORY(Jobs) +Q_DECLARE_LOGGING_CATEGORY(SceneLoaders) +Q_DECLARE_LOGGING_CATEGORY(Framegraph) +Q_DECLARE_LOGGING_CATEGORY(RenderNodes) +Q_DECLARE_LOGGING_CATEGORY(Rendering) +Q_DECLARE_LOGGING_CATEGORY(Memory) +Q_DECLARE_LOGGING_CATEGORY(Shaders) +Q_DECLARE_LOGGING_CATEGORY(RenderStates) +Q_DECLARE_LOGGING_CATEGORY(VSyncAdvanceService) + +} // namespace Render + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_RENDERLOGGING_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/renderpass_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/renderpass_p.h new file mode 100644 index 0000000..1ca02b1 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/renderpass_p.h @@ -0,0 +1,112 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Copyright (C) 2016 The Qt Company Ltd and/or its subsidiary(-ies). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_RENDERPASS_H +#define QT3DRENDER_RENDER_RENDERPASS_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QRenderPass; +class QAbstractShader; +class QFilterKey; +class QRenderState; + +namespace Render { + +class RenderPassManager; +class RenderState; + +class Q_AUTOTEST_EXPORT RenderPass : public BackendNode +{ +public: + RenderPass(); + ~RenderPass(); + + void cleanup(); + + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) override; + + Qt3DCore::QNodeId shaderProgram() const; + QVector filterKeys() const; + QVector parameters() const; + QVector renderStates() const; + + inline bool hasRenderStates() const { return !m_renderStates.empty(); } + +private: + void appendFilterKey(Qt3DCore::QNodeId filterKeyId); + void removeFilterKey(Qt3DCore::QNodeId filterKeyId); + + void addRenderState(Qt3DCore::QNodeId renderStateId); + void removeRenderState(Qt3DCore::QNodeId renderStateId); + + void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) final; + + Qt3DCore::QNodeId m_shaderUuid; + QVector m_filterKeyList; + ParameterPack m_parameterPack; + QVector m_renderStates; +}; + +} // namespace Render + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_RENDERPASS_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/renderpassfilternode_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/renderpassfilternode_p.h new file mode 100644 index 0000000..398d420 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/renderpassfilternode_p.h @@ -0,0 +1,93 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_RENDERPASSFILTER_H +#define QT3DRENDER_RENDER_RENDERPASSFILTER_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QFilterKey; +class QRenderPassFilter; + +template +class QHandle; + +namespace Render { + +class RenderPassFilter : public Render::FrameGraphNode +{ +public: + RenderPassFilter(); + + QVector filters() const; + QVector parameters() const; + void appendFilter(Qt3DCore::QNodeId criterionId); + void removeFilter(Qt3DCore::QNodeId criterionId); + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) override; + +private: + void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) final; + + QVector m_filters; + ParameterPack m_parameterPack; +}; + +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_RENDERPASSFILTER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/renderqueue_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/renderqueue_p.h new file mode 100644 index 0000000..e565115 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/renderqueue_p.h @@ -0,0 +1,102 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_RENDERQUEUE_H +#define QT3DRENDER_RENDER_RENDERQUEUE_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +namespace Render { + +class RenderView; + +class Q_AUTOTEST_EXPORT RenderQueue +{ +public: + RenderQueue(); + + void setTargetRenderViewCount(int targetRenderViewCount); + int targetRenderViewCount() const { return m_targetRenderViewCount; } + int currentRenderViewCount() const; + bool isFrameQueueComplete() const; + + bool queueRenderView(RenderView *renderView, uint submissionOrderIndex); + QVector nextFrameQueue(); + void reset(); + + void setNoRender(); + inline bool isNoRender() const { return m_noRender; } + + inline bool wasReset() const { return m_wasReset; } + + inline QMutex *mutex() { return &m_mutex; } + +private: + bool m_noRender; + bool m_wasReset; + int m_targetRenderViewCount; + int m_currentRenderViewCount; + QVector m_currentWorkQueue; + QMutex m_mutex; +}; + +} // namespace Render + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_RENDERQUEUE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/rendersettings_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/rendersettings_p.h new file mode 100644 index 0000000..d2880c1 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/rendersettings_p.h @@ -0,0 +1,110 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_RENDERSETTINGS_H +#define QT3DRENDER_RENDER_RENDERSETTINGS_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { +namespace Render { + +class AbstractRenderer; + +class Q_AUTOTEST_EXPORT RenderSettings : public BackendNode +{ +public: + RenderSettings(); + + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) override; + + Qt3DCore::QNodeId activeFrameGraphID() const { return m_activeFrameGraph; } + QRenderSettings::RenderPolicy renderPolicy() const { return m_renderPolicy; } + QPickingSettings::PickMethod pickMethod() const { return m_pickMethod; } + QPickingSettings::PickResultMode pickResultMode() const { return m_pickResultMode; } + QPickingSettings::FaceOrientationPickingMode faceOrientationPickingMode() const { return m_faceOrientationPickingMode; } + float pickWorldSpaceTolerance() const { return m_pickWorldSpaceTolerance; } + + // For unit test purposes + void setActiveFrameGraphId(Qt3DCore::QNodeId frameGraphNodeId) { m_activeFrameGraph = frameGraphNodeId; } + +private: + void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) final; + + QRenderSettings::RenderPolicy m_renderPolicy; + QPickingSettings::PickMethod m_pickMethod; + QPickingSettings::PickResultMode m_pickResultMode; + QPickingSettings::FaceOrientationPickingMode m_faceOrientationPickingMode; + float m_pickWorldSpaceTolerance; + Qt3DCore::QNodeId m_activeFrameGraph; +}; + +class RenderSettingsFunctor : public Qt3DCore::QBackendNodeMapper +{ +public: + explicit RenderSettingsFunctor(AbstractRenderer *renderer); + Qt3DCore::QBackendNode *create(const Qt3DCore::QNodeCreatedChangeBasePtr &change) const override; + Qt3DCore::QBackendNode *get(Qt3DCore::QNodeId id) const override; + void destroy(Qt3DCore::QNodeId id) const override; + +private: + AbstractRenderer *m_renderer; +}; + +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_RENDERSETTINGS_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/renderstatenode_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/renderstatenode_p.h new file mode 100644 index 0000000..277b8a7 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/renderstatenode_p.h @@ -0,0 +1,85 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_RENDERSTATENODE_H +#define QT3DRENDER_RENDER_RENDERSTATENODE_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { +namespace Render { + +class Q_AUTOTEST_EXPORT RenderStateNode : public BackendNode +{ +public: + RenderStateNode(); + virtual ~RenderStateNode(); + + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) override; + + StateMask type() const { return m_impl.type; } + StateVariant impl() const { return m_impl; } + +protected: + void cleanup(); + +private: + void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) final; + + StateVariant m_impl; +}; + +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_RENDERSTATENODE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/renderstates_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/renderstates_p.h new file mode 100644 index 0000000..eafaeb2 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/renderstates_p.h @@ -0,0 +1,182 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Copyright (C) 2016 The Qt Company Ltd and/or its subsidiary(-ies). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_RENDERSTATES_H +#define QT3DRENDER_RENDER_RENDERSTATES_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { +namespace Render { + +class Q_AUTOTEST_EXPORT BlendEquationArguments : public GenericState +{ +public: + void updateProperty(const char *name, const QVariant &value) override; +}; + +class Q_AUTOTEST_EXPORT BlendEquation : public GenericState +{ +public: + void updateProperty(const char *name, const QVariant &value) override; +}; + +class Q_AUTOTEST_EXPORT AlphaFunc : public GenericState +{ +public: + void updateProperty(const char *name, const QVariant &value) override; +}; + +class Q_AUTOTEST_EXPORT MSAAEnabled : public GenericState +{ +public: + void updateProperty(const char *name, const QVariant &value) override; +}; + +class Q_AUTOTEST_EXPORT DepthTest : public GenericState +{ +public: + void updateProperty(const char *name, const QVariant &value) override; +}; + +class Q_AUTOTEST_EXPORT NoDepthMask : public GenericState +{ +public: + void updateProperty(const char *name, const QVariant &value) override; +}; + +class Q_AUTOTEST_EXPORT CullFace : public GenericState +{ +public: + void updateProperty(const char *name, const QVariant &value) override; +}; + +class Q_AUTOTEST_EXPORT FrontFace : public GenericState +{ +public: + void updateProperty(const char *name, const QVariant &value) override; +}; + +class Q_AUTOTEST_EXPORT Dithering : public GenericState +{ +}; + +class Q_AUTOTEST_EXPORT ScissorTest : public GenericState +{ +public: + void updateProperty(const char *name, const QVariant &value) override; +}; + +class Q_AUTOTEST_EXPORT StencilTest : public GenericState +{ +public: + void updateProperty(const char *name, const QVariant &value) override; +}; + +class Q_AUTOTEST_EXPORT AlphaCoverage : public GenericState +{ +}; + +class Q_AUTOTEST_EXPORT PointSize : public GenericState +{ +public: + void updateProperty(const char *name, const QVariant &value) override; +}; + +class Q_AUTOTEST_EXPORT PolygonOffset : public GenericState +{ +public: + + void updateProperty(const char *name, const QVariant &value) override; +}; + +class Q_AUTOTEST_EXPORT ColorMask : public GenericState +{ +public: + void updateProperty(const char *name, const QVariant &value) override; +}; + +class Q_AUTOTEST_EXPORT ClipPlane : public GenericState +{ +public: + void updateProperty(const char *name, const QVariant &value) override; +}; + +class Q_AUTOTEST_EXPORT SeamlessCubemap : public GenericState +{ +}; + +class Q_AUTOTEST_EXPORT StencilOp : public GenericState +{ +public: + void updateProperty(const char *name, const QVariant &value) override; +}; + +class Q_AUTOTEST_EXPORT StencilMask : public GenericState +{ +public: + void updateProperty(const char *name, const QVariant &value) override; +}; + +class Q_AUTOTEST_EXPORT LineWidth : public GenericState +{ +public: + void updateProperty(const char *name, const QVariant &value) override; +}; + +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_RENDERSTATES_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/renderstateset_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/renderstateset_p.h new file mode 100644 index 0000000..29be4d2 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/renderstateset_p.h @@ -0,0 +1,118 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Copyright (C) 2016 The Qt Company Ltd and/or its subsidiary(-ies). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_RENDERSTATE_H +#define QT3DRENDER_RENDER_RENDERSTATE_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QRenderState; + +namespace Render { + +class RenderState; + +class RenderStateSet +{ +public: + RenderStateSet(); + ~RenderStateSet(); + + template + void addState(const GenericState &state) + { + addState(StateVariant::fromValue(state)); + } + + /** + * @brief changeCost - metric of cost to change to this state-set from + * a candidate previous state-set. This is used to find an optimal + * ordering of state-sets when sending draw commands. + * @param previousState + * @return + */ + int changeCost(RenderStateSet* previousState); + + StateMaskSet stateMask() const; + void merge(RenderStateSet *other); + + QVector states() const { return m_states; } + + bool hasStateOfType(StateMask type) const; + + + /** + * @brief contains - check if this set contains a matching piece of state + * @param ds + * @return + */ + bool contains(const StateVariant &ds) const; +private: + StateMaskSet m_stateMask; + QVector m_states; +}; + +template<> +void RenderStateSet::addState(const StateVariant &state); + +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_RENDERSTATE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/rendersurfaceselector_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/rendersurfaceselector_p.h new file mode 100644 index 0000000..74863aa --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/rendersurfaceselector_p.h @@ -0,0 +1,93 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_RENDERSURFACENODE_H +#define QT3DRENDER_RENDER_RENDERSURFACENODE_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +class QSurface; + +namespace Qt3DRender { +namespace Render { + +class RenderSurfaceSelector : public Qt3DRender::Render::FrameGraphNode +{ +public: + RenderSurfaceSelector(); + + QSize renderTargetSize() const; + void setRenderTargetSize(const QSize &size) { m_renderTargetSize = size; } + + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) override; + + QSurface *surface() const { return m_surface; } + inline int width() const Q_DECL_NOTHROW { return m_width; } + inline int height() const Q_DECL_NOTHROW { return m_height; } + inline float devicePixelRatio() const Q_DECL_NOTHROW { return m_devicePixelRatio; } + +private: + void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) final; + + QSurface *m_surface; + QSize m_renderTargetSize; + int m_width; + int m_height; + float m_devicePixelRatio; +}; + +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_RENDERSURFACENODE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/rendertarget_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/rendertarget_p.h new file mode 100644 index 0000000..5e3e635 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/rendertarget_p.h @@ -0,0 +1,93 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_RENDERTARGET_H +#define QT3DRENDER_RENDER_RENDERTARGET_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QRenderTarget; +class QRenderTargetOutput; + +namespace Render { + +class RenderTargetManager; + +class Q_AUTOTEST_EXPORT RenderTarget : public BackendNode +{ +public: + RenderTarget(); + void cleanup(); + + void appendRenderOutput(Qt3DCore::QNodeId outputId); + void removeRenderOutput(Qt3DCore::QNodeId outputId); + + QVector renderOutputs() const; + + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) override; + +private: + void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) final; + + QVector m_renderOutputs; +}; + +} // namespace Render + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_RENDERTARGET_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/rendertargetoutput_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/rendertargetoutput_p.h new file mode 100644 index 0000000..2047654 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/rendertargetoutput_p.h @@ -0,0 +1,95 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_RENDERTARGETOUTPUT_H +#define QT3DRENDER_RENDER_RENDERTARGETOUTPUT_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QRenderTargetOutput; + +namespace Render { + +class AttachmentManager; + +class RenderTargetOutput : public BackendNode +{ +public: + RenderTargetOutput(); + + Qt3DCore::QNodeId textureUuid() const; + int mipLevel() const; + int layer() const; + QString name() const; + QAbstractTexture::CubeMapFace face() const; + QRenderTargetOutput::AttachmentPoint point() const; + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) override; + Attachment *attachment(); + const Attachment *attachment() const; + +private: + void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) final; + Qt3DCore::QNodeId m_attachmentUuid; + Attachment m_attachmentData; +}; + +} // namespace Render + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_RENDERTARGETOUTPUT_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/rendertargetselectornode_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/rendertargetselectornode_p.h new file mode 100644 index 0000000..81ac8a3 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/rendertargetselectornode_p.h @@ -0,0 +1,86 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_RENDERTARGETSELECTOR_H +#define QT3DRENDER_RENDER_RENDERTARGETSELECTOR_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QRenderTargetSelector; + +namespace Render { + +class RenderTargetSelector : public FrameGraphNode +{ +public: + RenderTargetSelector(); + + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) override; + + Qt3DCore::QNodeId renderTargetUuid() const { return m_renderTargetUuid; } + QVector outputs() const { return m_outputs; } + +private: + void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) final; + + Qt3DCore::QNodeId m_renderTargetUuid; + QVector m_outputs; +}; + +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_RENDERTARGETSELECTOR_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/renderthread_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/renderthread_p.h new file mode 100644 index 0000000..56a7ec3 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/renderthread_p.h @@ -0,0 +1,91 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_RENDERTHREAD_H +#define QT3DRENDER_RENDER_RENDERTHREAD_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +namespace Render { + +class AbstractRenderer; + +class Q_AUTOTEST_EXPORT RenderThread : public QThread +{ + Q_OBJECT +public: + explicit RenderThread(AbstractRenderer *renderer); + ~RenderThread(); + + void waitForStart( Priority priority = InheritPriority ); + + Render::AbstractRenderer* renderer() const { return m_renderer; } + +protected: + void run() override; + +private: + AbstractRenderer* m_renderer; + QSemaphore m_semaphore; +}; + +} // namespace Render + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_RENDERTHREAD_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/renderview_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/renderview_p.h new file mode 100644 index 0000000..cb3c749 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/renderview_p.h @@ -0,0 +1,392 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Copyright (C) 2016 The Qt Company Ltd and/or its subsidiary(-ies). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_RENDERVIEW_H +#define QT3DRENDER_RENDER_RENDERVIEW_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include + +// TODO: Move out once this is all refactored +#include + +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QRenderPass; + +namespace Render { + +class Renderer; +class NodeManagers; +class RenderCommand; +class RenderPassFilter; +class TechniqueFilter; +class ViewportNode; +class Effect; +class RenderPass; + +typedef QPair ActivePropertyContent; +typedef QPair ActiveProperty; + +struct Q_AUTOTEST_EXPORT Plane +{ + explicit Plane(const Vector4D &planeEquation) + : planeEquation(planeEquation) + , normal(Vector3D(planeEquation).normalized()) + , d(planeEquation.w() / Vector3D(planeEquation).length()) + {} + + const Vector4D planeEquation; + const Vector3D normal; + const float d; +}; + +struct Q_AUTOTEST_EXPORT ClearBufferInfo +{ + int drawBufferIndex = 0; + QRenderTargetOutput::AttachmentPoint attchmentPoint = QRenderTargetOutput::Color0; + QVector4D clearColor; +}; + +struct Q_AUTOTEST_EXPORT BlitFramebufferInfo +{ + Qt3DCore::QNodeId sourceRenderTargetId; + Qt3DCore::QNodeId destinationRenderTargetId; + QRect sourceRect; + QRect destinationRect; + Qt3DRender::QRenderTargetOutput::AttachmentPoint sourceAttachmentPoint; + Qt3DRender::QRenderTargetOutput::AttachmentPoint destinationAttachmentPoint; + QBlitFramebuffer::InterpolationMethod interpolationMethod; +}; + +// This class is kind of analogous to RenderBin but I want to avoid trampling +// on that until we get this working + +class Q_AUTOTEST_EXPORT RenderView +{ +public: + RenderView(); + ~RenderView(); + + QT3D_ALIGNED_MALLOC_AND_FREE() + + // TODO: Add a way to specify a sort predicate for the RenderCommands + void sort(); + + void setRenderer(Renderer *renderer); + inline void setSurfaceSize(const QSize &size) Q_DECL_NOTHROW { m_surfaceSize = size; } + inline Renderer *renderer() const Q_DECL_NOTHROW { return m_renderer; } + inline NodeManagers *nodeManagers() const Q_DECL_NOTHROW { return m_manager; } + inline const QSize &surfaceSize() const Q_DECL_NOTHROW { return m_surfaceSize; } + inline void setDevicePixelRatio(qreal r) Q_DECL_NOTHROW { m_devicePixelRatio = r; } + inline qreal devicePixelRatio() const Q_DECL_NOTHROW { return m_devicePixelRatio; } + + inline void setRenderCameraLens(CameraLens *renderCameraLens) Q_DECL_NOTHROW { m_data.m_renderCameraLens = renderCameraLens; } + inline CameraLens *renderCameraLens() const Q_DECL_NOTHROW { return m_data.m_renderCameraLens; } + + inline void setRenderCameraEntity(Entity *renderCameraNode) Q_DECL_NOTHROW { m_data.m_renderCameraNode = renderCameraNode; } + inline Entity *renderCameraEntity() const Q_DECL_NOTHROW { return m_data.m_renderCameraNode; } + + inline void setViewMatrix(const Matrix4x4 &viewMatrix) Q_DECL_NOTHROW { m_data.m_viewMatrix = viewMatrix; } + inline Matrix4x4 viewMatrix() const Q_DECL_NOTHROW { return m_data.m_viewMatrix; } + + inline void setViewProjectionMatrix(const Matrix4x4 &viewProjectionMatrix) Q_DECL_NOTHROW { m_data.m_viewProjectionMatrix = viewProjectionMatrix; } + inline Matrix4x4 viewProjectionMatrix() const Q_DECL_NOTHROW { return m_data.m_viewProjectionMatrix; } + + inline void setEyePosition(const Vector3D &eyePos) Q_DECL_NOTHROW { m_data.m_eyePos = eyePos; } + inline Vector3D eyePosition() const Q_DECL_NOTHROW { return m_data.m_eyePos; } + + inline void setEyeViewDirection(const Vector3D &dir) Q_DECL_NOTHROW { m_data.m_eyeViewDir = dir; } + inline Vector3D eyeViewDirection() const Q_DECL_NOTHROW { return m_data.m_eyeViewDir; } + + inline void appendLayerFilter(const Qt3DCore::QNodeId layerFilterId) Q_DECL_NOTHROW { m_data.m_layerFilterIds.push_back(layerFilterId); } + inline Qt3DCore::QNodeIdVector layerFilters() const Q_DECL_NOTHROW { return m_data.m_layerFilterIds; } + + inline void appendProximityFilterId(const Qt3DCore::QNodeId proximityFilterId) { m_data.m_proximityFilterIds.push_back(proximityFilterId); } + inline Qt3DCore::QNodeIdVector proximityFilterIds() const { return m_data.m_proximityFilterIds; } + + inline void setRenderPassFilter(const RenderPassFilter *rpFilter) Q_DECL_NOTHROW { m_data.m_passFilter = rpFilter; } + inline const RenderPassFilter *renderPassFilter() const Q_DECL_NOTHROW { return m_data.m_passFilter; } + + inline void setTechniqueFilter(const TechniqueFilter *filter) Q_DECL_NOTHROW { m_data.m_techniqueFilter = filter; } + inline const TechniqueFilter *techniqueFilter() const Q_DECL_NOTHROW { return m_data.m_techniqueFilter; } + + inline RenderStateSet *stateSet() const Q_DECL_NOTHROW { return m_stateSet; } + void setStateSet(RenderStateSet *stateSet) Q_DECL_NOTHROW { m_stateSet = stateSet; } + + inline bool noDraw() const Q_DECL_NOTHROW { return m_noDraw; } + void setNoDraw(bool noDraw) Q_DECL_NOTHROW { m_noDraw = noDraw; } + + inline bool isCompute() const Q_DECL_NOTHROW { return m_compute; } + void setCompute(bool compute) Q_DECL_NOTHROW { m_compute = compute; } + + void setComputeWorkgroups(int x, int y, int z) Q_DECL_NOTHROW { m_workGroups[0] = x; m_workGroups[1] = y; m_workGroups[2] = z; } + const int *computeWorkGroups() const Q_DECL_NOTHROW { return m_workGroups; } + inline bool frustumCulling() const Q_DECL_NOTHROW { return m_frustumCulling; } + void setFrustumCulling(bool frustumCulling) Q_DECL_NOTHROW { m_frustumCulling = frustumCulling; } + + inline void setMaterialParameterTable(const MaterialParameterGathererData ¶meters) Q_DECL_NOTHROW { m_parameters = parameters; } + + // TODO: Get rid of this overly complex memory management by splitting out the + // InnerData as a RenderViewConfig struct. This can be created by setRenderViewConfigFromFrameGraphLeafNode + // and passed along with the RenderView to the functions that populate the renderview + inline void setViewport(const QRectF &vp) Q_DECL_NOTHROW { m_viewport = vp; } + inline QRectF viewport() const Q_DECL_NOTHROW { return m_viewport; } + + inline float gamma() const Q_DECL_NOTHROW { return m_gamma; } + inline void setGamma(float gamma) Q_DECL_NOTHROW { m_gamma = gamma; } + + // depth and stencil ClearBuffers are cached locally + // color ClearBuffers are collected, as there may be multiple + // color buffers to be cleared. we need to apply all these at rendering + void addClearBuffers(const ClearBuffers *cb); + inline QVector specificClearColorBufferInfo() const { return m_specificClearColorBuffers; } + inline QVector &specificClearColorBufferInfo() { return m_specificClearColorBuffers; } + inline ClearBufferInfo globalClearColorBufferInfo() const { return m_globalClearColorBuffer; } + + inline QClearBuffers::BufferTypeFlags clearTypes() const { return m_clearBuffer; } + inline float clearDepthValue() const { return m_clearDepthValue; } + inline int clearStencilValue() const { return m_clearStencilValue; } + + RenderPassList passesAndParameters(ParameterInfoList *parameter, Entity *node, bool useDefaultMaterials = true); + + QVector buildDrawRenderCommands(const QVector &entities) const; + QVector buildComputeRenderCommands(const QVector &entities) const; + void setCommands(QVector &commands) Q_DECL_NOTHROW { m_commands = commands; } + QVector commands() const Q_DECL_NOTHROW { return m_commands; } + + void setAttachmentPack(const AttachmentPack &pack) { m_attachmentPack = pack; } + const AttachmentPack &attachmentPack() const { return m_attachmentPack; } + + void setRenderTargetId(Qt3DCore::QNodeId renderTargetId) Q_DECL_NOTHROW { m_renderTarget = renderTargetId; } + Qt3DCore::QNodeId renderTargetId() const Q_DECL_NOTHROW { return m_renderTarget; } + + void addSortType(const QVector &sortTypes) { m_data.m_sortingTypes.append(sortTypes); } + + void setSurface(QSurface *surface) { m_surface = surface; } + QSurface *surface() const { return m_surface; } + + void setLightSources(const QVector &lightSources) Q_DECL_NOTHROW { m_lightSources = lightSources; } + void setEnvironmentLight(EnvironmentLight *environmentLight) Q_DECL_NOTHROW { m_environmentLight = environmentLight; } + + void updateMatrices(); + + inline void setRenderCaptureNodeId(const Qt3DCore::QNodeId nodeId) Q_DECL_NOTHROW { m_renderCaptureNodeId = nodeId; } + inline const Qt3DCore::QNodeId renderCaptureNodeId() const Q_DECL_NOTHROW { return m_renderCaptureNodeId; } + inline void setRenderCaptureRequest(const QRenderCaptureRequest& request) Q_DECL_NOTHROW { m_renderCaptureRequest = request; } + inline const QRenderCaptureRequest renderCaptureRequest() const Q_DECL_NOTHROW { return m_renderCaptureRequest; } + + void setMemoryBarrier(QMemoryBarrier::Operations barrier) Q_DECL_NOTHROW { m_memoryBarrier = barrier; } + QMemoryBarrier::Operations memoryBarrier() const Q_DECL_NOTHROW { return m_memoryBarrier; } + + // Helps making the size of RenderView smaller + // Contains all the data needed for the actual building of the RenderView + // But that aren't used later by the Renderer + struct InnerData { + InnerData() + : m_renderCameraLens(nullptr) + , m_renderCameraNode(nullptr) + , m_techniqueFilter(nullptr) + , m_passFilter(nullptr) + { + } + CameraLens *m_renderCameraLens; + Entity *m_renderCameraNode; + const TechniqueFilter *m_techniqueFilter; + const RenderPassFilter *m_passFilter; + Matrix4x4 m_viewMatrix; + Matrix4x4 m_viewProjectionMatrix; + Qt3DCore::QNodeIdVector m_layerFilterIds; + QVector m_sortingTypes; + Vector3D m_eyePos; + Vector3D m_eyeViewDir; + Qt3DCore::QNodeIdVector m_proximityFilterIds; + }; + + bool isDownloadBuffersEnable() const; + void setIsDownloadBuffersEnable(bool isDownloadBuffersEnable); + + BlitFramebufferInfo blitFrameBufferInfo() const; + void setBlitFrameBufferInfo(const BlitFramebufferInfo &blitFrameBufferInfo); + + bool hasBlitFramebufferInfo() const; + void setHasBlitFramebufferInfo(bool hasBlitFramebufferInfo); + +private: + void setShaderAndUniforms(RenderCommand *command, + RenderPass *pass, + ParameterInfoList ¶meters, + Entity *entity, + const QVector &activeLightSources, + EnvironmentLight *environmentLight) const; + mutable QThreadStorage m_localData; + + Qt3DCore::QNodeId m_renderCaptureNodeId; + QRenderCaptureRequest m_renderCaptureRequest; + bool m_isDownloadBuffersEnable; + + bool m_hasBlitFramebufferInfo; + BlitFramebufferInfo m_blitFrameBufferInfo; + + Renderer *m_renderer; + NodeManagers *m_manager; + QSize m_surfaceSize; + qreal m_devicePixelRatio; + + InnerData m_data; + + QRectF m_viewport; + float m_gamma; + Qt3DCore::QNodeId m_renderTarget; + QSurface *m_surface; + AttachmentPack m_attachmentPack; + QClearBuffers::BufferTypeFlags m_clearBuffer; + float m_clearDepthValue; + int m_clearStencilValue; + ClearBufferInfo m_globalClearColorBuffer; // global ClearColor + QVector m_specificClearColorBuffers; // different draw buffers with distinct colors + RenderStateSet *m_stateSet; + bool m_noDraw:1; + bool m_compute:1; + bool m_frustumCulling:1; + int m_workGroups[3]; + QMemoryBarrier::Operations m_memoryBarrier; + + // We do not use pointers to RenderNodes or Drawable's here so that the + // render aspect is free to change the drawables on the next frame whilst + // the render thread is submitting these commands. + QVector m_commands; + mutable QVector m_lightSources; + EnvironmentLight *m_environmentLight; + + MaterialParameterGathererData m_parameters; + + enum StandardUniform + { + ModelMatrix, + ViewMatrix, + ProjectionMatrix, + ModelViewMatrix, + ViewProjectionMatrix, + ModelViewProjectionMatrix, + InverseModelMatrix, + InverseViewMatrix, + InverseProjectionMatrix, + InverseModelViewMatrix, + InverseViewProjectionMatrix, + InverseModelViewProjectionMatrix, + ModelNormalMatrix, + ModelViewNormalMatrix, + ViewportMatrix, + InverseViewportMatrix, + AspectRatio, + Time, + Exposure, + Gamma, + EyePosition, + SkinningPalette + }; + + typedef QHash StandardUniformsNameToTypeHash; + static StandardUniformsNameToTypeHash ms_standardUniformSetters; + static StandardUniformsNameToTypeHash initializeStandardUniformSetters(); + + UniformValue standardUniformValue(StandardUniform standardUniformType, + Entity *entity, + const Matrix4x4 &model) const; + + void setUniformValue(ShaderParameterPack &uniformPack, int nameId, const UniformValue &value) const; + void setStandardUniformValue(ShaderParameterPack &uniformPack, + int glslNameId, + int nameId, + Entity *entity, + const Matrix4x4 &worldTransform) const; + void setUniformBlockValue(ShaderParameterPack &uniformPack, + Shader *shader, + const ShaderUniformBlock &block, + const UniformValue &value) const; + void setShaderStorageValue(ShaderParameterPack &uniformPack, + Shader *shader, + const ShaderStorageBlock &block, + const UniformValue &value) const; + void setDefaultUniformBlockShaderDataValue(ShaderParameterPack &uniformPack, + Shader *shader, + ShaderData *shaderData, + const QString &structName) const; +}; + +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_RENDERVIEW_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/renderviewbuilder_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/renderviewbuilder_p.h new file mode 100644 index 0000000..e223a5f --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/renderviewbuilder_p.h @@ -0,0 +1,165 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_RENDERVIEWBUILDER_H +#define QT3DRENDER_RENDER_RENDERVIEWBUILDER_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +namespace Render { + +class Renderer; + +using SynchronizerJobPtr = GenericLambdaJobPtr>; +using ComputableEntityFilterPtr = FilterEntityByComponentJobPtr; +using RenderableEntityFilterPtr = FilterEntityByComponentJobPtr; + +class Q_AUTOTEST_EXPORT RenderViewBuilder +{ +public: + explicit RenderViewBuilder(Render::FrameGraphNode *leafNode, int renderViewIndex, Renderer *renderer); + + RenderViewInitializerJobPtr renderViewJob() const; + FilterLayerEntityJobPtr filterEntityByLayerJob() const; + LightGathererPtr lightGathererJob() const; + RenderableEntityFilterPtr renderableEntityFilterJob() const; + ComputableEntityFilterPtr computableEntityFilterJob() const; + FrustumCullingJobPtr frustumCullingJob() const; + QVector renderViewBuilderJobs() const; + QVector materialGathererJobs() const; + SynchronizerJobPtr syncRenderViewInitializationJob() const; + SynchronizerJobPtr syncFrustumCullingJob() const; + SynchronizerJobPtr syncRenderCommandBuildingJob() const; + SynchronizerJobPtr syncRenderViewCommandBuildersJob() const; + SynchronizerJobPtr setClearDrawBufferIndexJob() const; + SynchronizerJobPtr syncFilterEntityByLayerJob() const; + FilterProximityDistanceJobPtr filterProximityJob() const; + SynchronizerJobPtr syncMaterialGathererJob() const; + + void prepareJobs(); + QVector buildJobHierachy() const; + + Renderer *renderer() const; + int renderViewIndex() const; + + void setLayerCacheNeedsToBeRebuilt(bool needsToBeRebuilt); + bool layerCacheNeedsToBeRebuilt() const; + void setMaterialGathererCacheNeedsToBeRebuilt(bool needsToBeRebuilt); + bool materialGathererCacheNeedsToBeRebuilt() const; + + void setRenderableCacheNeedsToBeRebuilt(bool needsToBeRebuilt); + bool renderableCacheNeedsToBeRebuilt() const; + + void setComputableCacheNeedsToBeRebuilt(bool needsToBeRebuilt); + bool computableCacheNeedsToBeRebuilt() const; + + void setLightGathererCacheNeedsToBeRebuilt(bool needsToBeRebuilt); + bool lightGathererCacheNeedsToBeRebuilt() const; + + static int optimalJobCount(); + static QVector entitiesInSubset(const QVector &entities, const QVector &subset); + +private: + Render::FrameGraphNode *m_leafNode; + const int m_renderViewIndex; + Renderer *m_renderer; + bool m_layerCacheNeedsToBeRebuilt; + bool m_materialGathererCacheNeedsToBeRebuilt; + bool m_lightsCacheNeedsToBeRebuilt; + bool m_renderableCacheNeedsToBeRebuilt; + bool m_computableCacheNeedsToBeRebuilt; + + RenderViewInitializerJobPtr m_renderViewJob; + FilterLayerEntityJobPtr m_filterEntityByLayerJob; + LightGathererPtr m_lightGathererJob; + RenderableEntityFilterPtr m_renderableEntityFilterJob; + ComputableEntityFilterPtr m_computableEntityFilterJob; + FrustumCullingJobPtr m_frustumCullingJob; + QVector m_renderViewBuilderJobs; + QVector m_materialGathererJobs; + + SynchronizerJobPtr m_syncRenderViewInitializationJob; + SynchronizerJobPtr m_syncFrustumCullingJob; + SynchronizerJobPtr m_syncRenderCommandBuildingJob; + SynchronizerJobPtr m_syncRenderViewCommandBuildersJob; + SynchronizerJobPtr m_setClearDrawBufferIndexJob; + SynchronizerJobPtr m_syncFilterEntityByLayerJob; + SynchronizerJobPtr m_syncMaterialGathererJob; + FilterProximityDistanceJobPtr m_filterProximityJob; + + SynchronizerJobPtr m_cacheRenderableEntitiesJob; + SynchronizerJobPtr m_cacheComputableEntitiesJob; + SynchronizerJobPtr m_cacheLightsJob; + + static const int m_optimalParallelJobCount; +}; + +} // Render + +} // Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_RENDERVIEWBUILDER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/renderviewbuilderjob_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/renderviewbuilderjob_p.h new file mode 100644 index 0000000..c38f788 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/renderviewbuilderjob_p.h @@ -0,0 +1,96 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Paul Lemire +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_RENDERVIEWBUILDERJOB_P_H +#define QT3DRENDER_RENDER_RENDERVIEWBUILDERJOB_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +namespace Render { + +class RenderView; +class Renderer; +class RenderCommand; + +class Q_AUTOTEST_EXPORT RenderViewBuilderJob : public Qt3DCore::QAspectJob +{ +public: + RenderViewBuilderJob(); + + inline void setRenderView(RenderView *rv) Q_DECL_NOTHROW { m_renderView = rv; } + inline void setRenderer(Renderer *renderer) Q_DECL_NOTHROW { m_renderer = renderer; } + inline void setIndex(int index) Q_DECL_NOTHROW { m_index = index; } + inline void setRenderables(const QVector &renderables) Q_DECL_NOTHROW { m_renderables = renderables; } + QVector &commands() Q_DECL_NOTHROW { return m_commands; } + + void run() final; + +private: + RenderView *m_renderView; + Renderer *m_renderer; + int m_index; + QVector m_renderables; + QVector m_commands; +}; + +typedef QSharedPointer RenderViewBuilderJobPtr; + +} // Render + +} // Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_RENDERVIEWBUILDERJOB_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/renderviewinitializerjob_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/renderviewinitializerjob_p.h new file mode 100644 index 0000000..fb4e2c6 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/renderviewinitializerjob_p.h @@ -0,0 +1,107 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Paul Lemire +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_RENDERVIEWINITIALIZERJOB_H +#define QT3DRENDER_RENDER_RENDERVIEWINITIALIZERJOB_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +namespace Render { + +class Renderer; +class FrameGraphNode; +class RenderView; + +class Q_AUTOTEST_EXPORT RenderViewInitializerJob : public Qt3DCore::QAspectJob +{ +public: + RenderViewInitializerJob(); + ~RenderViewInitializerJob(); + + inline void setRenderer(Renderer *renderer) { m_renderer = renderer; } + inline RenderView *renderView() const Q_DECL_NOTHROW { return m_renderView; } + + inline void setFrameGraphLeafNode(FrameGraphNode *fgLeaf) + { + m_fgLeaf = fgLeaf; + } + + // Sets the position in the queue of RenderViews that the + // RenderView generated by this job should be inserted. This is + // used to ensure that for example a RenderView for creating + // a shadow map texture is submitted before the RenderView that + // contains commands making use of the shadow map + inline void setSubmitOrderIndex(int index) { m_index = index; } + inline int submitOrderIndex() const { return m_index; } + + void run() override; + +private: + Renderer *m_renderer; + FrameGraphNode *m_fgLeaf; + int m_index; + RenderView *m_renderView; +}; + +typedef QSharedPointer RenderViewInitializerJobPtr; + +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_RENDERVIEWINITIALIZERJOB_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/renderviewjobutils_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/renderviewjobutils_p.h new file mode 100644 index 0000000..bd2e125 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/renderviewjobutils_p.h @@ -0,0 +1,187 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDERVIEWJOBUTILS_P_H +#define QT3DRENDER_RENDERVIEWJOBUTILS_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { +class QFrameAllocator; +} + +namespace Qt3DRender { +namespace Render { + +class FrameGraphNode; +class ParameterManager; +class Effect; +class Entity; +class Material; +class RenderPass; +class RenderStateSet; +class Technique; +class RenderView; +class TechniqueFilter; +class RenderPassFilter; +class Renderer; +class NodeManagers; +class ShaderDataManager; +struct ShaderUniform; +class ShaderData; +class TextureManager; +class RenderStateManager; +class RenderStateCollection; + +Q_AUTOTEST_EXPORT void setRenderViewConfigFromFrameGraphLeafNode(RenderView *rv, + const FrameGraphNode *fgLeaf); + +Q_AUTOTEST_EXPORT Technique *findTechniqueForEffect(NodeManagers *manager, + const TechniqueFilter *techniqueFilter, + Effect *effect); + +typedef QVarLengthArray RenderPassList; +Q_AUTOTEST_EXPORT RenderPassList findRenderPassesForTechnique(NodeManagers *manager, + const RenderPassFilter *passFilter, + Technique *technique); + +// Extracts the type T from a QVariant v without using QVariant::value which is slow +// Note: Assumes you are 100% sure about the type you requested +template +inline T variant_value(const QVariant &v) +{ + return *reinterpret_cast(v.data()); +} + +struct ParameterInfo +{ + explicit ParameterInfo(const int nameId = -1, const HParameter &handle = HParameter()); + + int nameId; + HParameter handle; + + bool operator<(const int otherNameId) const Q_DECL_NOEXCEPT; + bool operator<(const ParameterInfo &other) const Q_DECL_NOEXCEPT; +}; +typedef QVector ParameterInfoList; + +struct RenderPassParameterData +{ + RenderPass *pass; + ParameterInfoList parameterInfo; +}; +QT3D_DECLARE_TYPEINFO_2(Qt3DRender, Render, RenderPassParameterData, Q_MOVABLE_TYPE) + +using MaterialParameterGathererData = QHash>; + +Q_AUTOTEST_EXPORT void parametersFromMaterialEffectTechnique(ParameterInfoList *infoList, + ParameterManager *manager, + Material *material, + Effect *effect, + Technique *technique); + +Q_AUTOTEST_EXPORT void addParametersForIds(ParameterInfoList *params, ParameterManager *manager, + const QVector ¶meterIds); + +template +void parametersFromParametersProvider(ParameterInfoList *infoList, + ParameterManager *manager, + T *provider) +{ + addParametersForIds(infoList, manager, provider->parameters()); +} + +Q_AUTOTEST_EXPORT ParameterInfoList::const_iterator findParamInfo(ParameterInfoList *infoList, + const int nameId); + +Q_AUTOTEST_EXPORT void addUniqueStatesToRenderStateSet(RenderStateSet *stateSet, + const QVector stateIds, + RenderStateManager *manager); + +typedef QHash UniformBlockValueBuilderHash; + +struct Q_AUTOTEST_EXPORT UniformBlockValueBuilder +{ + UniformBlockValueBuilder(); + ~UniformBlockValueBuilder(); + + QT3D_ALIGNED_MALLOC_AND_FREE() + + void buildActiveUniformNameValueMapHelper(ShaderData *currentShaderData, + const QString &blockName, + const QString &qmlPropertyName, + const QVariant &value); + void buildActiveUniformNameValueMapStructHelper(ShaderData *rShaderData, + const QString &blockName, + const QString &qmlPropertyName = QString()); + + bool updatedPropertiesOnly; + QHash uniforms; + UniformBlockValueBuilderHash activeUniformNamesToValue; + ShaderDataManager *shaderDataManager; + TextureManager *textureManager; + Matrix4x4 viewMatrix; +}; + +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDERVIEWJOBUTILS_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/resourceaccessor_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/resourceaccessor_p.h new file mode 100644 index 0000000..627efcb --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/resourceaccessor_p.h @@ -0,0 +1,103 @@ +/**************************************************************************** +** +** Copyright (C) 2017 The Qt Company Ltd and/or its subsidiary(-ies). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_RESOURCEACCESSOR_P_H +#define QT3DRENDER_RENDER_RESOURCEACCESSOR_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include + +QT_BEGIN_NAMESPACE + +class QMutex; + +namespace Qt3DRender +{ +namespace Render { + +class TextureManager; +class AttachmentManager; +class GLTextureManager; +class EntityManager; +class NodeManagers; + +class RenderBackendResourceAccessor +{ +public: + enum ResourceType { + OGLTextureWrite, + OGLTextureRead, + OutputAttachment, + EntityHandle, + }; + + virtual ~RenderBackendResourceAccessor(); + virtual bool accessResource(ResourceType type, Qt3DCore::QNodeId nodeId, void **handle, QMutex **lock) = 0; +}; + +class QT3DRENDERSHARED_PRIVATE_EXPORT ResourceAccessor : public RenderBackendResourceAccessor +{ +public: + ResourceAccessor(NodeManagers *mgr); + bool accessResource(ResourceType type, Qt3DCore::QNodeId nodeId, void **handle, QMutex **lock) final; +private: + GLTextureManager *m_glTextureManager; + TextureManager *m_textureManager; + AttachmentManager *m_attachmentManager; + EntityManager *m_entityManager; +}; + +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_RESOURCEACCESSOR_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/scene_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/scene_p.h new file mode 100644 index 0000000..631f231 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/scene_p.h @@ -0,0 +1,108 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_SCENE_P_H +#define QT3DRENDER_RENDER_SCENE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { +class QEntity; +} + +namespace Qt3DRender { +namespace Render { + +class SceneManager; + +class Q_AUTOTEST_EXPORT Scene : public BackendNode +{ +public: + Scene(); + + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) override; + QUrl source() const; + void setSceneSubtree(Qt3DCore::QEntity *subTree); + void setSceneManager(SceneManager *manager); + + void cleanup(); + void setStatus(QSceneLoader::Status status); + +private: + void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) final; + + SceneManager *m_sceneManager; + QUrl m_source; +}; + +class RenderSceneFunctor : public Qt3DCore::QBackendNodeMapper +{ +public: + explicit RenderSceneFunctor(AbstractRenderer *renderer, SceneManager *sceneManager); + Qt3DCore::QBackendNode *create(const Qt3DCore::QNodeCreatedChangeBasePtr &change) const override; + Qt3DCore::QBackendNode *get(Qt3DCore::QNodeId id) const override; + void destroy(Qt3DCore::QNodeId id) const override; + +private: + SceneManager *m_sceneManager; + AbstractRenderer *m_renderer; +}; + +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_SCENE_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/scenemanager_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/scenemanager_p.h new file mode 100644 index 0000000..470846b --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/scenemanager_p.h @@ -0,0 +1,116 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_SCENEMANAGER_P_H +#define QT3DRENDER_RENDER_SCENEMANAGER_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { +class QEntity; +} + +namespace Qt3DRender { +namespace Render { + +class SceneManager; + +class SceneDownloader : public Qt3DCore::QDownloadRequest { +public: + SceneDownloader(const QUrl &source, Qt3DCore::QNodeId sceneComponent, SceneManager* manager); + + void onCompleted() override; + +private: + Qt3DCore::QNodeId m_sceneComponent; + SceneManager* m_manager; +}; + +typedef QSharedPointer SceneDownloaderPtr; + + +class Q_AUTOTEST_EXPORT SceneManager : public Qt3DCore::QResourceManager< + Scene, + Qt3DCore::QNodeId, + Qt3DCore::ObjectLevelLockingPolicy> +{ +public: + SceneManager(); + ~SceneManager(); + + void setDownloadService(Qt3DCore::QDownloadHelperService *service); + + void addSceneData(const QUrl &source, Qt3DCore::QNodeId sceneUuid, + const QByteArray &data = QByteArray()); + QVector takePendingSceneLoaderJobs(); + + void startSceneDownload(const QUrl &source, Qt3DCore::QNodeId sceneUuid); + void clearSceneDownload(SceneDownloader *downloader); + +private: + Qt3DCore::QDownloadHelperService *m_service; + QVector m_pendingJobs; + QVector m_pendingDownloads; +}; + +} // namespace Render +} // namespace Qt3DRender + +Q_DECLARE_RESOURCE_INFO(Qt3DRender::Render::Scene, Q_REQUIRES_CLEANUP) + +QT_END_NAMESPACE + +#endif // SCENEMANAGER_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/segmentsvisitor_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/segmentsvisitor_p.h new file mode 100644 index 0000000..cd5df12 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/segmentsvisitor_p.h @@ -0,0 +1,94 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_SEGMENTSVISITOR_P_H +#define QT3DRENDER_RENDER_SEGMENTSVISITOR_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { +class QEntity; +} + +namespace Qt3DRender { + +namespace Render { + +class GeometryRenderer; +class NodeManagers; + +class Q_AUTOTEST_EXPORT SegmentsVisitor +{ +public: + explicit SegmentsVisitor(NodeManagers *manager) : m_manager(manager) { } + virtual ~SegmentsVisitor(); + + void apply(const Qt3DCore::QEntity *entity); + void apply(const GeometryRenderer *renderer, const Qt3DCore::QNodeId id); + + virtual void visit(uint andx, const Vector3D &a, + uint bndx, const Vector3D &b) = 0; + +protected: + NodeManagers *m_manager; + Qt3DCore::QNodeId m_nodeId; +}; + +} // namespace Render + +} // namespace Qt3DRender + +QT_END_NAMESPACE + + +#endif // QT3DRENDER_RENDER_SEGMENTSVISITOR_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/sendbuffercapturejob_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/sendbuffercapturejob_p.h new file mode 100644 index 0000000..771497e --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/sendbuffercapturejob_p.h @@ -0,0 +1,96 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Juan José Casafranca +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_SENDBUFFERCAPTUREJOB_P_H +#define QT3DRENDER_SENDBUFFERCAPTUREJOB_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include + + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +namespace Render { + +class NodeManagers; +class Entity; +class Renderer; +class Buffer; + +class QT3DRENDERSHARED_PRIVATE_EXPORT SendBufferCaptureJob : public Qt3DCore::QAspectJob +{ +public: + explicit SendBufferCaptureJob(); + ~SendBufferCaptureJob(); + + void addRequest(QPair request); + + void run() final; + +private: + QMutex m_mutex; + + QVector > m_pendingSendBufferCaptures; +}; + +typedef QSharedPointer SendBufferCaptureJobPtr; + +} //Render + +} //Qt3DRender + +QT_END_NAMESPACE + + +#endif // QT3DRENDER_SENDBUFFERCAPTUREJOB_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/sendrendercapturejob_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/sendrendercapturejob_p.h new file mode 100644 index 0000000..53b111b --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/sendrendercapturejob_p.h @@ -0,0 +1,90 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: http://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef SENDRENDERCAPTUREJOB_P_H +#define SENDRENDERCAPTUREJOB_P_H + + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +namespace Render { + +class NodeManagers; +class Entity; + +class QT3DRENDERSHARED_PRIVATE_EXPORT SendRenderCaptureJob : public Qt3DCore::QAspectJob +{ +public: + SendRenderCaptureJob(); + ~SendRenderCaptureJob(); + + void setPendingCaptureRequests(const QVector &requests); + void setManagers(NodeManagers *managers); + + void run() final; + +private: + NodeManagers *m_managers; + QVector m_pendingCaptures; +}; + +typedef QSharedPointer SendRenderCaptureJobPtr; + +} // namespace Render + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // SENDRENDERCAPTUREJOB_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/shader_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/shader_p.h new file mode 100644 index 0000000..9eb2490 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/shader_p.h @@ -0,0 +1,192 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_SHADER_H +#define QT3DRENDER_RENDER_SHADER_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +class QOpenGLShaderProgram; + +namespace Qt3DRender { + +namespace Render { + +class ShaderManager; +class AttachmentPack; + +typedef uint ProgramDNA; + +class Q_AUTOTEST_EXPORT Shader : public BackendNode +{ +public: + Shader(); + ~Shader(); + + void cleanup(); + + void setGraphicsContext(GraphicsContext *context); + GraphicsContext *graphicsContext(); + + void prepareUniforms(ShaderParameterPack &pack); + void setFragOutputs(const QHash &fragOutputs); + const QHash fragOutputs() const; + + inline QVector uniformsNamesIds() const { return m_uniformsNamesIds; } + inline QVector uniformBlockNamesIds() const { return m_uniformBlockNamesIds; } + inline QVector storageBlockNamesIds() const { return m_shaderStorageBlockNamesIds; } + inline QVector attributeNamesIds() const { return m_attributeNamesIds; } + + QVector uniformsNames() const; + QVector attributesNames() const; + QVector uniformBlockNames() const; + QVector storageBlockNames() const; + QVector shaderCode() const; + void setShaderCode(QShaderProgram::ShaderType type, const QByteArray &code); + + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) override; + bool isLoaded() const { QMutexLocker lock(&m_mutex); return m_isLoaded; } + void setLoaded(bool loaded) { QMutexLocker lock(&m_mutex); m_isLoaded = loaded; } + ProgramDNA dna() const Q_DECL_NOTHROW { return m_dna; } + + inline QVector uniforms() const { return m_uniforms; } + inline QVector attributes() const { return m_attributes; } + inline QVector uniformBlocks() const { return m_uniformBlocks; } + inline QVector storageBlocks() const { return m_shaderStorageBlocks; } + + QHash activeUniformsForUniformBlock(int blockIndex) const; + + ShaderUniformBlock uniformBlockForBlockIndex(int blockNameId); + ShaderUniformBlock uniformBlockForBlockNameId(int blockIndex); + ShaderUniformBlock uniformBlockForBlockName(const QString &blockName); + + ShaderStorageBlock storageBlockForBlockIndex(int blockIndex); + ShaderStorageBlock storageBlockForBlockNameId(int blockNameId); + ShaderStorageBlock storageBlockForBlockName(const QString &blockName); + + inline QString log() const { return m_log; } + inline QShaderProgram::Status status() const { return m_status; } + + void submitPendingNotifications(); + inline bool hasPendingNotifications() const { return !m_pendingNotifications.empty(); } + +private: + void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) final; + + QVector m_uniformsNames; + QVector m_uniformsNamesIds; + QVector m_uniforms; + + QVector m_attributesNames; + QVector m_attributeNamesIds; + QVector m_attributes; + + QVector m_uniformBlockNames; + QVector m_uniformBlockNamesIds; + QVector m_uniformBlocks; + QHash > m_uniformBlockIndexToShaderUniforms; + + QVector m_shaderStorageBlockNames; + QVector m_shaderStorageBlockNamesIds; + QVector m_shaderStorageBlocks; + + QHash m_fragOutputs; + + QVector m_shaderCode; + + bool m_isLoaded; + ProgramDNA m_dna; + ProgramDNA m_oldDna; + mutable QMutex m_mutex; + GraphicsContext *m_graphicsContext; + QMetaObject::Connection m_contextConnection; + QString m_log; + QShaderProgram::Status m_status; + + QVector m_pendingNotifications; + + void updateDNA(); + + // Private so that only GraphicContext can call it + void initializeUniforms(const QVector &uniformsDescription); + void initializeAttributes(const QVector &attributesDescription); + void initializeUniformBlocks(const QVector &uniformBlockDescription); + void initializeShaderStorageBlocks(const QVector &shaderStorageBlockDescription); + + void initializeFromReference(const Shader &other); + void setLog(const QString &log); + void setStatus(QShaderProgram::Status status); + + friend class GraphicsContext; +}; + +#ifndef QT_NO_DEBUG_STREAM +inline QDebug operator<<(QDebug dbg, const Shader &shader) +{ + QDebugStateSaver saver(dbg); + dbg << "QNodeId =" << shader.peerId() << "dna =" << shader.dna() << endl; + return dbg; +} +#endif + +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_SHADER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/shaderbuilder_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/shaderbuilder_p.h new file mode 100644 index 0000000..e9378e3 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/shaderbuilder_p.h @@ -0,0 +1,117 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_SHADERBUILDER_H +#define QT3DRENDER_RENDER_SHADERBUILDER_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +namespace Render { + +class QT3DRENDERSHARED_PRIVATE_EXPORT ShaderBuilder : public BackendNode +{ +public: + enum ShaderType { + Vertex = 0, + TessellationControl, + TessellationEvaluation, + Geometry, + Fragment, + Compute + }; + + static QString getPrototypesFile(); + static void setPrototypesFile(const QString &file); + static QStringList getPrototypeNames(); + + ShaderBuilder(); + ~ShaderBuilder(); + void cleanup(); + + Qt3DCore::QNodeId shaderProgramId() const; + QStringList enabledLayers() const; + + GraphicsApiFilterData graphicsApi() const; + void setGraphicsApi(const GraphicsApiFilterData &graphicsApi); + + QUrl shaderGraph(ShaderType type) const; + void setShaderGraph(ShaderType type, const QUrl &url); + + QByteArray shaderCode(ShaderType type) const; + bool isShaderCodeDirty(ShaderType type) const; + + void generateCode(ShaderType type); + + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) override; + +private: + void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) final; + void setEnabledLayers(const QStringList &layers); + + GraphicsApiFilterData m_graphicsApi; + Qt3DCore::QNodeId m_shaderProgramId; + QStringList m_enabledLayers; + QHash m_graphs; + QHash m_codes; + QSet m_dirtyTypes; +}; + +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_SHADERBUILDER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/shadercache_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/shadercache_p.h new file mode 100644 index 0000000..bda629e --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/shadercache_p.h @@ -0,0 +1,103 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_SHADERCACHE_H +#define QT3DRENDER_RENDER_SHADERCACHE_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +class QOpenGLShaderProgram; + +namespace Qt3DRender { +namespace Render { + +#if defined(QT_BUILD_INTERNAL) +class tst_ShaderCache; +#endif + +class QT3DRENDERSHARED_PRIVATE_EXPORT ShaderCache +{ +public: + ~ShaderCache(); + + QOpenGLShaderProgram *getShaderProgramAndAddRef(ProgramDNA dna, Qt3DCore::QNodeId shaderPeerId, bool *wasPresent = nullptr); + void insert(ProgramDNA dna, Qt3DCore::QNodeId shaderPeerId, QOpenGLShaderProgram *program); + void removeRef(ProgramDNA dna, Qt3DCore::QNodeId shaderPeerId); + void purge(); + void clear(); + + // Only ever used from the OpenGL submission thread + QOpenGLShaderProgram *getShaderProgramForDNA(ProgramDNA dna) const; + QVector shaderIdsForProgram(ProgramDNA dna) const; + +private: + // Only ever used from the OpenGL submission thread + QHash m_programHash; + + // Accessed from both the OpenGL submission thread and the aspect thread + QHash> m_programRefs; + QVector m_pendingRemoval; + QMutex m_refsMutex; + +#if defined(QT_BUILD_INTERNAL) + friend class tst_ShaderCache; +#endif +}; + +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_SHADERCACHE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/shaderdata_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/shaderdata_p.h new file mode 100644 index 0000000..f9c3ecc --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/shaderdata_p.h @@ -0,0 +1,150 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_SHADERDATA_P_H +#define QT3DRENDER_RENDER_SHADERDATA_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +namespace Render { + +class GraphicsContext; +class GLBuffer; +class NodeManagers; + +class Q_AUTOTEST_EXPORT ShaderData : public BackendNode +{ +public: + enum TransformType { + NoTransform = -1, + ModelToEye = 0, + ModelToWorld, + ModelToWorldDirection + }; + + ShaderData(); + ~ShaderData(); + + QHash properties() const { return m_originalProperties; } + + // Called by FramePreparationJob + void updateWorldTransform(const Matrix4x4 &worldMatrix); + + // Call by RenderViewJob + void markDirty(); + + TransformType propertyTransformType(const QString &name) const; + QVariant getTransformedProperty(const QString &name, const Matrix4x4 &viewMatrix); + + // Called by FrameCleanupJob + static void cleanup(NodeManagers *managers); + + void setManagers(NodeManagers *managers); + +protected: + void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) override; + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) override; + + PropertyReaderInterfacePtr m_propertyReader; + + // 1 to 1 match with frontend properties, modified only by sceneChangeEvent + QHash m_originalProperties; + + // Contains properties thar are of type ShaderData + QHash m_nestedShaderDataProperties; + + // Contains property that are defined like: postionTransformed: ModelToEye + QHash m_transformedProperties; + + + QMutex m_mutex; + static QVector m_updatedShaderData; + Matrix4x4 m_worldMatrix; + Matrix4x4 m_viewMatrix; + NodeManagers *m_managers; + + void clearUpdatedProperties(); + static ShaderData *lookupResource(NodeManagers *managers, Qt3DCore::QNodeId id); + ShaderData *lookupResource(Qt3DCore::QNodeId id); + + friend class RenderShaderDataFunctor; +}; + +class RenderShaderDataFunctor : public Qt3DCore::QBackendNodeMapper +{ +public: + explicit RenderShaderDataFunctor(AbstractRenderer *renderer, NodeManagers *managers); + + Qt3DCore::QBackendNode *create(const Qt3DCore::QNodeCreatedChangeBasePtr &change) const final; + Qt3DCore::QBackendNode *get(Qt3DCore::QNodeId id) const final; + void destroy(Qt3DCore::QNodeId id) const final; + +private: + NodeManagers *m_managers; + AbstractRenderer *m_renderer; +}; + +} // namespace Render + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +Q_DECLARE_METATYPE(Qt3DRender::Render::ShaderData*) // LCOV_EXCL_LINE + +#endif // QT3DRENDER_RENDER_SHADERDATA_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/shaderparameterpack_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/shaderparameterpack_p.h new file mode 100644 index 0000000..fe9ab39 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/shaderparameterpack_p.h @@ -0,0 +1,146 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_SHADERPARAMETERPACK_P_H +#define QT3DRENDER_RENDER_SHADERPARAMETERPACK_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +class QOpenGLShaderProgram; + +namespace Qt3DCore { +class QFrameAllocator; +} + +namespace Qt3DRender { +namespace Render { + +class GraphicsContext; + +struct BlockToUBO { + int m_blockIndex; + Qt3DCore::QNodeId m_bufferID; + bool m_needsUpdate; + QHash m_updatedProperties; +}; +QT3D_DECLARE_TYPEINFO_2(Qt3DRender, Render, BlockToUBO, Q_MOVABLE_TYPE) + +struct BlockToSSBO { + int m_blockIndex; + int m_bindingIndex; + Qt3DCore::QNodeId m_bufferID; +}; +QT3D_DECLARE_TYPEINFO_2(Qt3DRender, Render, BlockToSSBO, Q_PRIMITIVE_TYPE) + + +typedef QHash PackUniformHash; + +class Q_AUTOTEST_EXPORT ShaderParameterPack +{ +public: + ~ShaderParameterPack(); + + void setUniform(const int glslNameId, const UniformValue &val); + void setTexture(const int glslNameId, int uniformArrayIndex, Qt3DCore::QNodeId id); + void setUniformBuffer(BlockToUBO blockToUBO); + void setShaderStorageBuffer(BlockToSSBO blockToSSBO); + void setSubmissionUniform(const ShaderUniform &uniform); + + inline PackUniformHash &uniforms() { return m_uniforms; } + inline const PackUniformHash &uniforms() const { return m_uniforms; } + UniformValue uniform(const int glslNameId) const { return m_uniforms.value(glslNameId); } + + struct NamedTexture + { + NamedTexture() {} + NamedTexture(const int glslNameId, Qt3DCore::QNodeId texId, int uniformArrayIndex) + : glslNameId(glslNameId) + , texId(texId) + , uniformArrayIndex(uniformArrayIndex) + { } + + int glslNameId; + Qt3DCore::QNodeId texId; + int uniformArrayIndex; + }; + + inline QVector textures() const { return m_textures; } + inline QVector uniformBuffers() const { return m_uniformBuffers; } + inline QVector shaderStorageBuffers() const { return m_shaderStorageBuffers; } + inline QVector submissionUniforms() const { return m_submissionUniforms; } +private: + PackUniformHash m_uniforms; + + QVector m_textures; + QVector m_uniformBuffers; + QVector m_shaderStorageBuffers; + QVector m_submissionUniforms; + + friend class RenderView; +}; +QT3D_DECLARE_TYPEINFO_2(Qt3DRender, Render, ShaderParameterPack::NamedTexture, Q_PRIMITIVE_TYPE) + +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +Q_DECLARE_METATYPE(Qt3DRender::Render::ShaderParameterPack) + +#endif // QT3DRENDER_RENDER_SHADERPARAMETERPACK_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/shadervariables_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/shadervariables_p.h new file mode 100644 index 0000000..e0fa07d --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/shadervariables_p.h @@ -0,0 +1,152 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_SHADERVARIABLES_P_H +#define QT3DRENDER_RENDER_SHADERVARIABLES_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +namespace Render { + +struct ShaderAttribute +{ + ShaderAttribute() + : m_nameId(-1) + , m_type(0) + , m_size(0) + , m_location(-1) + {} + + QString m_name; + int m_nameId; + GLenum m_type; + int m_size; + int m_location; +}; +QT3D_DECLARE_TYPEINFO_2(Qt3DRender, Render, ShaderAttribute, Q_MOVABLE_TYPE) + +struct ShaderUniform +{ + ShaderUniform() + : m_nameId(-1) + , m_type(GL_NONE) + , m_size(0) + , m_offset(-1) + , m_location(-1) + , m_blockIndex(-1) + , m_arrayStride(-1) + , m_matrixStride(-1) + , m_rawByteSize(0) + {} + + QString m_name; + int m_nameId; + GLenum m_type; + int m_size; + int m_offset; // -1 default, >= 0 if uniform defined in uniform block + int m_location; // -1 if uniform defined in a uniform block + int m_blockIndex; // -1 is the default, >= 0 if uniform defined in uniform block + int m_arrayStride; // -1 is the default, >= 0 if uniform defined in uniform block and if it's an array + int m_matrixStride; // -1 is the default, >= 0 uniform defined in uniform block and is a matrix + uint m_rawByteSize; // contains byte size (size / type / strides) + // size, offset and strides are in bytes +}; +QT3D_DECLARE_TYPEINFO_2(Qt3DRender, Render, ShaderUniform, Q_MOVABLE_TYPE) + +struct ShaderUniformBlock +{ + ShaderUniformBlock() + : m_nameId(-1) + , m_index(-1) + , m_binding(-1) + , m_activeUniformsCount(0) + , m_size(0) + {} + + QString m_name; + int m_nameId; + int m_index; + int m_binding; + int m_activeUniformsCount; + int m_size; +}; +QT3D_DECLARE_TYPEINFO_2(Qt3DRender, Render, ShaderUniformBlock, Q_MOVABLE_TYPE) + +struct ShaderStorageBlock +{ + ShaderStorageBlock() + : m_nameId(-1) + , m_index(-1) + , m_binding(-1) + , m_size(0) + , m_activeVariablesCount(0) + {} + + QString m_name; + int m_nameId; + int m_index; + int m_binding; + int m_size; + int m_activeVariablesCount; +}; +QT3D_DECLARE_TYPEINFO_2(Qt3DRender, Render, ShaderStorageBlock, Q_MOVABLE_TYPE) + +} // namespace Render + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_SHADERVARIABLES_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/skeleton_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/skeleton_p.h new file mode 100644 index 0000000..4a14e5c --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/skeleton_p.h @@ -0,0 +1,188 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_SKELETON_H +#define QT3DRENDER_RENDER_SKELETON_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include + +#include +#include + +#if defined(QT_BUILD_INTERNAL) +class tst_Skeleton; +#endif + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { +class QJoint; +} + +namespace Qt3DRender { +namespace Render { + +class JointManager; +class SkeletonManager; + +class Q_AUTOTEST_EXPORT Skeleton : public BackendNode +{ +public: + Skeleton(); + + void setSkeletonManager(SkeletonManager *skeletonManager) { m_skeletonManager = skeletonManager; } + SkeletonManager *skeletonManager() const { return m_skeletonManager; } + + void setJointManager(JointManager *jointManager) { m_jointManager = jointManager; } + JointManager *jointManager() const { return m_jointManager; } + + void cleanup(); + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) override; + void setStatus(Qt3DCore::QSkeletonLoader::Status status); + Qt3DCore::QSkeletonLoader::Status status() const { return m_status; } + + QUrl source() const { return m_source; } + + void setName(const QString &name) { m_name = name; } + QString name() const { return m_name; } + + int jointCount() const { return m_skeletonData.joints.size(); } + void notifyJointCount(); + void notifyJointNamesAndPoses(); + QVector joints() const { return m_skeletonData.joints; } + + Qt3DCore::QNodeId rootJointId() const { return m_rootJointId; } + + // Called from jobs + void loadSkeleton(); + void setLocalPose(HJoint jointHandle, const Qt3DCore::Sqt &localPose); + QVector calculateSkinningMatrixPalette(); + + // Allow unit tests to set the data type +#if !defined(QT_BUILD_INTERNAL) +private: +#endif + enum SkeletonDataType { + Unknown, + File, + Data + }; +#if defined(QT_BUILD_INTERNAL) +public: + void setDataType(SkeletonDataType dataType) { m_dataType = dataType; } +#endif + +private: + void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) final; + void loadSkeletonFromUrl(); + void loadSkeletonFromData(); + Qt3DCore::QJoint *createFrontendJoints(const SkeletonData &skeletonData) const; + Qt3DCore::QJoint *createFrontendJoint(const QString &jointName, + const Qt3DCore::Sqt &localPose, + const QMatrix4x4 &inverseBindMatrix) const; + void processJointHierarchy(Qt3DCore::QNodeId jointId, int parentJointIndex, SkeletonData &skeletonData); + void clearData(); + + QVector m_skinningPalette; + + // QSkeletonLoader Properties + QUrl m_source; + Qt3DCore::QSkeletonLoader::Status m_status; + bool m_createJoints; + + // QSkeleton properties + Qt3DCore::QNodeId m_rootJointId; + + SkeletonDataType m_dataType; + + QString m_name; + SkeletonData m_skeletonData; + SkeletonManager *m_skeletonManager; + JointManager *m_jointManager; + HSkeleton m_skeletonHandle; // Our own handle to set on joints + +#if defined(QT_BUILD_INTERNAL) + friend class ::tst_Skeleton; +#endif +}; + +#ifndef QT_NO_DEBUG_STREAM +inline QDebug operator<<(QDebug dbg, const Skeleton &skeleton) +{ + QDebugStateSaver saver(dbg); + dbg << "QNodeId =" << skeleton.peerId() << endl + << "Name =" << skeleton.name() << endl; + return dbg; +} +#endif + +class SkeletonFunctor : public Qt3DCore::QBackendNodeMapper +{ +public: + explicit SkeletonFunctor(AbstractRenderer *renderer, + SkeletonManager *skeletonManager, + JointManager *jointManager); + Qt3DCore::QBackendNode *create(const Qt3DCore::QNodeCreatedChangeBasePtr &change) const final; + Qt3DCore::QBackendNode *get(Qt3DCore::QNodeId id) const final; + void destroy(Qt3DCore::QNodeId id) const final; + +private: + AbstractRenderer *m_renderer; + SkeletonManager *m_skeletonManager; + JointManager *m_jointManager; +}; + +} // namespace Render +} // namespace Qt3DRender + + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_SKELETON_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/skeletondata_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/skeletondata_p.h new file mode 100644 index 0000000..b30a3c6 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/skeletondata_p.h @@ -0,0 +1,100 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_SKELETONDATA_P_H +#define QT3DRENDER_RENDER_SKELETONDATA_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include +#include + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { +namespace Render { + +struct Q_AUTOTEST_EXPORT JointInfo +{ + JointInfo() + : parentIndex(-1) + { + } + + explicit JointInfo(Joint *joint, int parentJointIndex) + : inverseBindPose(joint->inverseBindMatrix()) + , parentIndex(parentJointIndex) + { + } + + QMatrix4x4 inverseBindPose; + QMatrix4x4 globalPose; + int parentIndex; +}; + +struct Q_AUTOTEST_EXPORT SkeletonData +{ + SkeletonData(); + + void reserve(int size); + + QVector joints; + QVector localPoses; + QVector jointNames; + QHash jointIndices; +}; + +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_SKELETONDATA_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/sortpolicy_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/sortpolicy_p.h new file mode 100644 index 0000000..ef928af --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/sortpolicy_p.h @@ -0,0 +1,84 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_SORTPOLICY_P_H +#define QT3DRENDER_RENDER_SORTPOLICY_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +namespace Render { + +class Q_AUTOTEST_EXPORT SortPolicy : public FrameGraphNode +{ +public: + SortPolicy(); + + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) override; + + QVector sortTypes() const; + +private: + void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) final; + + QVector m_sortTypes; +}; + +} // namespace Render + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_SORTPOLICY_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/sphere_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/sphere_p.h new file mode 100644 index 0000000..14b6f14 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/sphere_p.h @@ -0,0 +1,172 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_SPHERE_H +#define QT3DRENDER_RENDER_SPHERE_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +namespace Render { + +class QT3DRENDERSHARED_PRIVATE_EXPORT Sphere : public RayCasting::BoundingSphere +{ +public: + inline Sphere(Qt3DCore::QNodeId i = Qt3DCore::QNodeId()) + : m_center() + , m_radius(0.0f) + , m_id(i) + {} + + inline Sphere(const Vector3D &c, float r, Qt3DCore::QNodeId i = Qt3DCore::QNodeId()) + : m_center(c) + , m_radius(r) + , m_id(i) + {} + + void setCenter(const Vector3D &c); + Vector3D center() const override; + + inline bool isNull() { return m_center == Vector3D() && m_radius == 0.0f; } + + void setRadius(float r); + float radius() const override; + + void clear(); + void initializeFromPoints(const QVector &points); + void expandToContain(const Vector3D &point); + inline void expandToContain(const QVector &points) + { + for (const Vector3D &p : points) + expandToContain(p); + } + + void expandToContain(const Sphere &sphere); + + Sphere transformed(const Matrix4x4 &mat) const; + inline Sphere &transform(const Matrix4x4 &mat) + { + *this = transformed(mat); + return *this; + } + + Qt3DCore::QNodeId id() const final; + bool intersects(const RayCasting::QRay3D &ray, Vector3D *q, Vector3D *uvw = nullptr) const final; + Type type() const final; + + static Sphere fromPoints(const QVector &points); + +private: + Vector3D m_center; + float m_radius; + Qt3DCore::QNodeId m_id; + + static const float ms_epsilon; +}; + +inline void Sphere::setCenter(const Vector3D &c) +{ + m_center = c; +} + +inline Vector3D Sphere::center() const +{ + return m_center; +} + +inline void Sphere::setRadius(float r) +{ + m_radius = r; +} + +inline float Sphere::radius() const +{ + return m_radius; +} + +inline void Sphere::clear() +{ + m_center = Vector3D(); + m_radius = 0.0f; +} + +inline bool intersects(const Sphere &a, const Sphere &b) +{ + // Calculate squared distance between sphere centers + const Vector3D d = a.center() - b.center(); + const float distSq = Vector3D::dotProduct(d, d); + + // Spheres intersect if squared distance is less than squared + // sum of radii + const float sumRadii = a.radius() + b.radius(); + return distSq <= sumRadii * sumRadii; +} + +#ifndef QT_NO_DEBUG_STREAM +QT3DRENDERSHARED_EXPORT QDebug operator<<(QDebug dbg, const Sphere &sphere); +#endif + +} // Render + +} // Qt3DRender + +QT_END_NAMESPACE + +Q_DECLARE_METATYPE(Qt3DRender::Render::Sphere) // LCOV_EXCL_LINE + +#endif // QT3DRENDER_RENDER_SPHERE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/statemask_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/statemask_p.h new file mode 100644 index 0000000..1f33057 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/statemask_p.h @@ -0,0 +1,91 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_STATEMASK_P_H +#define QT3DRENDER_RENDER_STATEMASK_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +namespace Render { + +enum StateMask +{ + BlendStateMask = 1 << 0, + StencilWriteStateMask = 1 << 1, + StencilTestStateMask = 1 << 2, + ScissorStateMask = 1 << 3, + DepthTestStateMask = 1 << 4, + DepthWriteStateMask = 1 << 5, + CullFaceStateMask = 1 << 6, + AlphaTestMask = 1 << 7, + FrontFaceStateMask = 1 << 8, + DitheringStateMask = 1 << 9, + AlphaCoverageStateMask = 1 << 10, + PolygonOffsetStateMask = 1 << 11, + ColorStateMask = 1 << 12, + ClipPlaneMask = 1 << 13, + StencilOpMask = 1 << 14, + PointSizeMask = 1 << 15, + SeamlessCubemapMask = 1 << 16, + MSAAEnabledStateMask = 1 << 17, + BlendEquationArgumentsMask = 1 << 18, + LineWidthMask = 1 << 19, +}; + +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_STATEMASK_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/statesetnode_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/statesetnode_p.h new file mode 100644 index 0000000..d33e118 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/statesetnode_p.h @@ -0,0 +1,87 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_STATESETNODE_H +#define QT3DRENDER_RENDER_STATESETNODE_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +namespace Render { + +class StateSetNode : public FrameGraphNode +{ +public: + StateSetNode(); + ~StateSetNode(); + + inline bool hasRenderStates() const { return !m_renderStates.empty(); } + QVector renderStates() const; + +protected: + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) override; + void addRenderState(Qt3DCore::QNodeId renderStateId); + void removeRenderState(Qt3DCore::QNodeId renderStateId); + +private: + void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) final; + QVector m_renderStates; +}; + +} // namespace Render + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_STATESETNODE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/statevariant_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/statevariant_p.h new file mode 100644 index 0000000..ac3c126 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/statevariant_p.h @@ -0,0 +1,141 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_STATEVARIANT_P_H +#define QT3DRENDER_RENDER_STATEVARIANT_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { +namespace Render { + +struct Q_AUTOTEST_EXPORT StateVariant +{ + StateMask type; + + union u_Data { + BlendEquationArguments blendEquationArguments; + BlendEquation blendEquation; + AlphaFunc alphaFunc; + MSAAEnabled msaaEnabled; + DepthTest depthTest; + NoDepthMask noDepthMask; + CullFace cullFace; + FrontFace frontFace; + Dithering dithering; + ScissorTest scissorTest; + StencilTest stencilTest; + AlphaCoverage alphaCoverage; + PointSize pointSize; + PolygonOffset polygonOffset; + ColorMask colorMask; + ClipPlane clipPlane; + SeamlessCubemap seamlessCubemap; + StencilOp stencilOp; + StencilMask stencilMask; + LineWidth lineWidth; + + u_Data() + { + // Assumes the above types don't need to have their ctor called + memset(static_cast(this), 0, sizeof(u_Data)); + } + + u_Data(const u_Data &other) + { + memcpy(static_cast(this), static_cast(&other), sizeof(u_Data)); + } + + u_Data& operator=(const u_Data &other) + { + memcpy(static_cast(this), static_cast(&other), sizeof(u_Data)); + return *this; + } + + ~u_Data() + { + // Assumes the above types don't need to have their dtor called + } + } data; + + template + static StateVariant createState(Args... values) + { + State state; + state.set(values...); + return StateVariant::fromValue(state); + } + + template + static StateVariant fromValue(const GenericState &state) + { + StateVariant v; + v.type = GenericState::type(); + // all union members start at the same memory address + // so we can just write into whichever we want + memcpy(static_cast(&v.data), static_cast(&state), sizeof(state)); + return v; + } + + RenderStateImpl *state(); + const RenderStateImpl *constState() const; + + bool operator ==(const StateVariant &other) const; + bool operator !=(const StateVariant &other) const; +}; + +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_STATEVARIANT_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/stringtoint_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/stringtoint_p.h new file mode 100644 index 0000000..996cecf --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/stringtoint_p.h @@ -0,0 +1,78 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_STRINGTOINT_P_H +#define QT3DRENDER_RENDER_STRINGTOINT_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +namespace Render { + +class Q_AUTOTEST_EXPORT StringToInt +{ +public: + static int lookupId(const QString &str); + static int lookupId(QLatin1String str); + static QString lookupString(int idx); +}; + +} // Render + +} // Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_STRINGTOINT_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/submissioncontext_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/submissioncontext_p.h new file mode 100644 index 0000000..9b9bd7f --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/submissioncontext_p.h @@ -0,0 +1,225 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Copyright (C) 2016 The Qt Company Ltd and/or its subsidiary(-ies). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_SUBMISSIONCONTEXT_H +#define QT3DRENDER_RENDER_SUBMISSIONCONTEXT_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + + +#include +#include +#include +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +class QAbstractOpenGLFunctions; + +namespace Qt3DRender { + +namespace Render { + +class Renderer; +class GraphicsHelperInterface; +class RenderStateSet; +class Material; +class GLTexture; +class RenderCommand; +class RenderTarget; +class AttachmentPack; +class Attribute; +class Buffer; +class ShaderManager; +struct StateVariant; + +typedef QPair NamedUniformLocation; + +class Q_AUTOTEST_EXPORT SubmissionContext : public GraphicsContext +{ +public: + SubmissionContext(); + ~SubmissionContext(); + + int id() const; // unique, small integer ID of this context + void setRenderer(Renderer *renderer) { m_renderer = renderer; } + + bool beginDrawing(QSurface *surface); + void endDrawing(bool swapBuffers); + void releaseOpenGL(); + void setOpenGLContext(QOpenGLContext* ctx); + + // Viewport + void setViewport(const QRectF &viewport, const QSize &surfaceSize); + QRectF viewport() const { return m_viewport; } + + // Shaders + bool activateShader(ProgramDNA shaderDNA); + QOpenGLShaderProgram *activeShader() const { return m_activeShader; } + + // FBO + GLuint activeFBO() const { return m_activeFBO; } + void activateRenderTarget(const Qt3DCore::QNodeId id, const AttachmentPack &attachments, GLuint defaultFboId); + QSize renderTargetSize(const QSize &surfaceSize) const; + QImage readFramebuffer(const QRect &rect); + void blitFramebuffer(Qt3DCore::QNodeId outputRenderTargetId, Qt3DCore::QNodeId inputRenderTargetId, + QRect inputRect, + QRect outputRect, uint defaultFboId, + QRenderTargetOutput::AttachmentPoint inputAttachmentPoint, + QRenderTargetOutput::AttachmentPoint outputAttachmentPoint, + QBlitFramebuffer::InterpolationMethod interpolationMethod); + + // Attributes + void specifyAttribute(const Attribute *attribute, + Buffer *buffer, + const ShaderAttribute *attributeDescription); + void specifyIndices(Buffer *buffer); + + // Buffer + void updateBuffer(Buffer *buffer); + QByteArray downloadBufferContent(Buffer *buffer); + void releaseBuffer(Qt3DCore::QNodeId bufferId); + bool hasGLBufferForBuffer(Buffer *buffer); + GLBuffer *glBufferForRenderBuffer(Buffer *buf, GLBuffer::Type type); + + // Parameters + bool setParameters(ShaderParameterPack ¶meterPack); + + // RenderState + void setCurrentStateSet(RenderStateSet* ss); + RenderStateSet *currentStateSet() const; + void applyState(const StateVariant &state); + + void resetMasked(qint64 maskOfStatesToReset); + void applyStateSet(RenderStateSet *ss); + + // Wrappers + void clearColor(const QColor &color); + void clearDepthValue(float depth); + void clearStencilValue(int stencil); + +private: + void initialize(); + + // Material + Material* activeMaterial() const { return m_material; } + void setActiveMaterial(Material* rmat); + + // FBO + void bindFrameBufferAttachmentHelper(GLuint fboId, const AttachmentPack &attachments); + void activateDrawBuffers(const AttachmentPack &attachments); + void resolveRenderTargetFormat(); + GLuint createRenderTarget(Qt3DCore::QNodeId renderTargetNodeId, const AttachmentPack &attachments); + GLuint updateRenderTarget(Qt3DCore::QNodeId renderTargetNodeId, const AttachmentPack &attachments, bool isActiveRenderTarget); + + // Buffers + HGLBuffer createGLBufferFor(Buffer *buffer, GLBuffer::Type type); + void uploadDataToGLBuffer(Buffer *buffer, GLBuffer *b, bool releaseBuffer = false); + QByteArray downloadDataFromGLBuffer(Buffer *buffer, GLBuffer *b); + bool bindGLBuffer(GLBuffer *buffer, GLBuffer::Type type); + + bool m_ownCurrent; + const unsigned int m_id; + QSurface *m_surface; + QSize m_surfaceSize; + + QOpenGLShaderProgram *m_activeShader; + ProgramDNA m_activeShaderDNA; + + QHash m_renderBufferHash; + QHash m_renderTargets; + QHash m_renderTargetsSize; + QAbstractTexture::TextureFormat m_renderTargetFormat; + + // cache some current state, to make sure we don't issue unnecessary GL calls + int m_currClearStencilValue; + float m_currClearDepthValue; + QColor m_currClearColorValue; + + Material* m_material; + QRectF m_viewport; + GLuint m_activeFBO; + + GLBuffer *m_boundArrayBuffer; + RenderStateSet* m_stateSet; + Renderer *m_renderer; + QByteArray m_uboTempArray; + + TextureSubmissionContext m_textureContext; + + // Attributes + friend class OpenGLVertexArrayObject; + + struct VAOVertexAttribute + { + HGLBuffer bufferHandle; + GLBuffer::Type attributeType; + int location; + GLint dataType; + uint byteOffset; + uint vertexSize; + uint byteStride; + uint divisor; + GLenum shaderDataType; + }; + + using VAOIndexAttribute = HGLBuffer; + void enableAttribute(const VAOVertexAttribute &attr); + void disableAttribute(const VAOVertexAttribute &attr); +}; + +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_SUBMISSIONCONTEXT_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/technique_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/technique_p.h new file mode 100644 index 0000000..0ca9d3a --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/technique_p.h @@ -0,0 +1,132 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Copyright (C) 2016 The Qt Company Ltd and/or its subsidiary(-ies). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_TECHNIQUE_H +#define QT3DRENDER_RENDER_TECHNIQUE_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QTechnique; +class QParameter; +class QGraphicsApiFilter; +class QFilterKey; +class QRenderPass; + +namespace Render { + +class TechniqueManager; + +class QT3DRENDERSHARED_PRIVATE_EXPORT Technique : public BackendNode +{ +public: + Technique(); + ~Technique(); + void cleanup(); + + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) override; + QVector parameters() const; + + void appendRenderPass(Qt3DCore::QNodeId renderPassId); + void removeRenderPass(Qt3DCore::QNodeId renderPassId); + + void appendFilterKey(Qt3DCore::QNodeId criterionId); + void removeFilterKey(Qt3DCore::QNodeId criterionId); + + QVector filterKeys() const; + QVector renderPasses() const; + const GraphicsApiFilterData *graphicsApiFilter() const; + + bool isCompatibleWithRenderer() const; + void setCompatibleWithRenderer(bool compatible); + + bool isCompatibleWithFilters(const Qt3DCore::QNodeIdVector &filterKeyIds); + + void setNodeManager(NodeManagers *nodeManager); + NodeManagers *nodeManager() const; + +private: + void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) final; + + GraphicsApiFilterData m_graphicsApiFilterData; + ParameterPack m_parameterPack; + QVector m_filterKeyList; + QVector m_renderPasses; + bool m_isCompatibleWithRenderer; + NodeManagers *m_nodeManager; +}; + +class TechniqueFunctor : public Qt3DCore::QBackendNodeMapper +{ +public: + explicit TechniqueFunctor(AbstractRenderer *renderer, NodeManagers *manager); + Qt3DCore::QBackendNode *create(const Qt3DCore::QNodeCreatedChangeBasePtr &change) const override; + Qt3DCore::QBackendNode *get(Qt3DCore::QNodeId id) const override; + void destroy(Qt3DCore::QNodeId id) const override; +private: + NodeManagers *m_manager; + AbstractRenderer *m_renderer; +}; + +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_TECHNIQUE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/techniquefilternode_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/techniquefilternode_p.h new file mode 100644 index 0000000..d7e6c15 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/techniquefilternode_p.h @@ -0,0 +1,100 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_TECHNIQUEFILTER_H +#define QT3DRENDER_RENDER_TECHNIQUEFILTER_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QFilterKey; +class QTechniqueFilter; + +template +class QHandle; + +namespace Render { + +class TechniqueFilter + : public FrameGraphNode +{ +public: + TechniqueFilter(); + + QVector parameters() const; + + QVector filters() const; + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) override; + +private: + void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) final; + + void appendFilter(Qt3DCore::QNodeId criterionId); + void removeFilter(Qt3DCore::QNodeId criterionId); + + QVector m_filters; + ParameterPack m_parameterPack; +}; + +} // namespace Render + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_TECHNIQUEFILTER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/techniquemanager_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/techniquemanager_p.h new file mode 100644 index 0000000..8108d5f --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/techniquemanager_p.h @@ -0,0 +1,85 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_TECHNIQUEMANAGER_H +#define QT3DRENDER_RENDER_TECHNIQUEMANAGER_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +namespace Render { + +class Q_AUTOTEST_EXPORT TechniqueManager : public Qt3DCore::QResourceManager< + Technique, + Qt3DCore::QNodeId, + Qt3DCore::NonLockingPolicy> +{ +public: + TechniqueManager(); + + void addDirtyTechnique(Qt3DCore::QNodeId techniqueId); + QVector takeDirtyTechniques(); + +private: + QVector m_dirtyTechniques; +}; + +} // Render +} // Qt3DRender + +Q_DECLARE_RESOURCE_INFO(Qt3DRender::Render::Technique, Q_REQUIRES_CLEANUP) + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_TECHNIQUEMANAGER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/texture_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/texture_p.h new file mode 100644 index 0000000..86c49f6 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/texture_p.h @@ -0,0 +1,205 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_TEXTURE_H +#define QT3DRENDER_RENDER_TEXTURE_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +class QOpenGLTexture; + +namespace Qt3DRender { + +class QAbstractTexture; + +namespace Render { + +class TextureManager; +class TextureImageManager; + +/** + * General, constant properties of a texture + */ +struct TextureProperties +{ + int width = 1; + int height = 1; + int depth = 1; + int layers = 1; + int mipLevels = 1; + int samples = 1; + QAbstractTexture::Target target = QAbstractTexture::Target2D; + QAbstractTexture::TextureFormat format = QAbstractTexture::NoFormat; + bool generateMipMaps = false; + QAbstractTexture::Status status = QAbstractTexture::None; + + bool operator==(const TextureProperties &o) const { + return (width == o.width) && (height == o.height) && (depth == o.depth) + && (layers == o.layers) && (mipLevels == o.mipLevels) && (target == o.target) + && (format == o.format) && (generateMipMaps == o.generateMipMaps) + && (samples == o.samples) && (status == o.status); + } + inline bool operator!=(const TextureProperties &o) const { return !(*this == o); } +}; + +/** + * Texture parameters that are independent of texture data and that may + * change without the re-uploading the texture + */ +struct TextureParameters +{ + QAbstractTexture::Filter magnificationFilter = QAbstractTexture::Nearest; + QAbstractTexture::Filter minificationFilter = QAbstractTexture::Nearest; + QTextureWrapMode::WrapMode wrapModeX = QTextureWrapMode::ClampToEdge; + QTextureWrapMode::WrapMode wrapModeY = QTextureWrapMode::ClampToEdge; + QTextureWrapMode::WrapMode wrapModeZ = QTextureWrapMode::ClampToEdge; + float maximumAnisotropy = 1.0f; + QAbstractTexture::ComparisonFunction comparisonFunction = QAbstractTexture::CompareLessEqual; + QAbstractTexture::ComparisonMode comparisonMode = QAbstractTexture::CompareNone; + + bool operator==(const TextureParameters &o) const { + return (magnificationFilter == o.magnificationFilter) && (minificationFilter == o.minificationFilter) + && (wrapModeX == o.wrapModeX) && (wrapModeY == o.wrapModeY) && (wrapModeZ == o.wrapModeZ) + && (maximumAnisotropy == o.maximumAnisotropy) + && (comparisonFunction == o.comparisonFunction) && (comparisonMode == o.comparisonMode); + } + inline bool operator!=(const TextureParameters &o) const { return !(*this == o); } +}; + +/** + * Backend object for QAbstractTexture. Just holds texture properties and parameters. + * Will query the TextureImplManager for an instance of TextureImpl that matches it's + * properties. + */ +class Q_AUTOTEST_EXPORT Texture : public BackendNode +{ +public: + Texture(); + ~Texture(); + + enum DirtyFlag { + NotDirty = 0, + DirtyProperties = 0x1, + DirtyParameters = 0x2, + DirtyImageGenerators = 0x4, + DirtyDataGenerator = 0x8 + }; + Q_DECLARE_FLAGS(DirtyFlags, DirtyFlag) + + void addDirtyFlag(DirtyFlags flags); + DirtyFlags dirtyFlags(); + void unsetDirty(); + + void addTextureImage(Qt3DCore::QNodeId id); + void removeTextureImage(Qt3DCore::QNodeId id); + void cleanup(); + + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) override; + + inline const TextureProperties& properties() const { return m_properties; } + inline const TextureParameters& parameters() const { return m_parameters; } + inline const Qt3DCore::QNodeIdVector textureImageIds() const { return m_textureImageIds; } + inline const QTextureGeneratorPtr& dataGenerator() const { return m_dataFunctor; } + + void setDataGenerator(const QTextureGeneratorPtr &generator); + void updatePropertiesAndNotify(const TextureProperties &propreties); + bool isValid(TextureImageManager *manager) const; +private: + void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) final; + + DirtyFlags m_dirty; + TextureProperties m_properties; + TextureParameters m_parameters; + + QTextureGeneratorPtr m_dataFunctor; + Qt3DCore::QNodeIdVector m_textureImageIds; + + QMutex m_flagsMutex; +}; + +class Q_AUTOTEST_EXPORT TextureFunctor : public Qt3DCore::QBackendNodeMapper +{ +public: + explicit TextureFunctor(AbstractRenderer *renderer, + TextureManager *textureNodeManager); + Qt3DCore::QBackendNode *create(const Qt3DCore::QNodeCreatedChangeBasePtr &change) const final; + Qt3DCore::QBackendNode *get(Qt3DCore::QNodeId id) const final; + void destroy(Qt3DCore::QNodeId id) const final; + +private: + AbstractRenderer *m_renderer; + TextureManager *m_textureNodeManager; +}; + +#ifndef QT_NO_DEBUG_STREAM +inline QDebug operator<<(QDebug dbg, const Texture &texture) +{ + QDebugStateSaver saver(dbg); + dbg << "QNodeId =" << texture.peerId() << "imageCount =" << texture.textureImageIds().size() << endl; + return dbg; +} +#endif + +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +Q_DECLARE_METATYPE(Qt3DRender::Render::Texture*) // LCOV_EXCL_LINE + +#endif // QT3DRENDER_RENDER_TEXTURE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/texturedatamanager_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/texturedatamanager_p.h new file mode 100644 index 0000000..9319a64 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/texturedatamanager_p.h @@ -0,0 +1,238 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_TEXTUREDATAMANAGER_H +#define QT3DRENDER_RENDER_TEXTUREDATAMANAGER_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { +namespace Render { + +/** + * The texture data managers associates each texture data generator + * with the data objects generated by them. That is, either + * + * QTextureImageDataGenerator -> QTextureImageData, or + * QTextureGenerator -> QTextureData + * + * This way, texture classes only need to refer to the texture functors used. + * Aspect jobs will make sure that at the start of each frame, all generators + * registered with the GeneratorDataManagers have been executed. + * + * This guarantees that no texture data generator is executed twice. + * + * Each Generator is associated with a number of textures that reference it. + * If the last texture disassociates from a generator, the QTextureData will + * be deleted. + */ +template +class GeneratorDataManager +{ +public: + GeneratorDataManager() {} + + /*! + * If no data for the given generator exists, make sure that the + * generators are executed the next frame. Reference generator by + * given texture + * + * Returns true if the Entry for a given generator had to be created + */ + bool requestData(const GeneratorPtr &generator, ReferencedType r) + { + QMutexLocker lock(&m_mutex); + + Entry *entry = findEntry(generator); + const bool needsToBeCreated = (entry == nullptr); + if (needsToBeCreated) + entry = createEntry(generator); + Q_ASSERT(entry); + if (!entry->referencingObjects.contains(r)) + entry->referencingObjects.push_back(r); + return needsToBeCreated; + } + + QVector referencesForGenerator(const GeneratorPtr &generator) + { + QMutexLocker lock(&m_mutex); + + Entry *entry = findEntry(generator); + if (entry == nullptr) + return {}; + return entry->referencingObjects; + } + + + /*! + * Dereference given generator from texture. If no other textures still reference + * the generator, the associated data will be deleted + */ + void releaseData(const GeneratorPtr &generator, ReferencedType r) + { + QMutexLocker lock(&m_mutex); + + const auto end = m_data.end(); + for (auto it = m_data.begin(); it != end; ++it) { + Entry &entry = *it; + if (*entry.generator == *generator) { + entry.referencingObjects.removeAll(r); + // delete, if that was the last reference + if (entry.referencingObjects.empty()) { + m_data.erase(it); + return; + } + } + } + } + + /*! + * Return data associated with given generator, if existent + */ + DataPtr getData(const GeneratorPtr &generator) + { + QMutexLocker lock(&m_mutex); + + const Entry *entry = findEntry(generator); + return entry ? entry->data : DataPtr(); + } + + /*! + * Returns all generators that were not yet executed + */ + QVector pendingGenerators() + { + QMutexLocker lock(&m_mutex); + + QVector ret; + for (const Entry &entry : m_data) + if (!entry.data && !ret.contains(entry.generator)) + ret.push_back(entry.generator); + return ret; + } + + /*! + * Assigns a piece of data to the generator that was used to + * create it. + */ + void assignData(const GeneratorPtr &generator, const DataPtr &data) + { + QMutexLocker lock(&m_mutex); + + Entry *entry = findEntry(generator); + if (!entry) { + qWarning() << "[TextureDataManager] assignData() called with non-existent generator"; + return; + } + entry->data = data; + } + + bool contains(const GeneratorPtr &generator) + { + return findEntry(generator) != nullptr; + } + +private: + + struct Entry { + GeneratorPtr generator; + QVector referencingObjects; + DataPtr data; + }; + + /*! + * Helper function: return entry for given generator if it exists, nullptr + * otherwise. + */ + Entry* findEntry(const GeneratorPtr &generator) + { + for (int i = 0, sz = m_data.size(); i < sz; ++i) + if (*m_data[i].generator == *generator) + return &m_data[i]; + return nullptr; + } + + Entry *createEntry(const GeneratorPtr &generator) + { + Entry newEntry; + newEntry.generator = generator; + + m_data.push_back(newEntry); + return &m_data.back(); + } + + QMutex m_mutex; + QVector m_data; +}; + +class Q_AUTOTEST_EXPORT TextureDataManager + : public GeneratorDataManager +{ +}; + +class Q_AUTOTEST_EXPORT TextureImageDataManager + : public GeneratorDataManager +{ +}; + +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // TEXTUREDATAMANAGER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/textureimage_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/textureimage_p.h new file mode 100644 index 0000000..19801ee --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/textureimage_p.h @@ -0,0 +1,143 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_TEXTUREIMAGE_H +#define QT3DRENDER_RENDER_TEXTUREIMAGE_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +namespace Render { + +class TextureManager; +class TextureImageManager; +class TextureImageDataManager; + +/** + * Backend class for QAbstractTextureImage. + * Will only hold the generator and some info values. + */ +class Q_AUTOTEST_EXPORT TextureImage : public BackendNode +{ +public: + TextureImage(); + ~TextureImage(); + + void cleanup(); + + void setTextureImageDataManager(TextureImageDataManager *dataManager) { m_textureImageDataManager = dataManager; } + + TextureImageDataManager *textureImageDataManager() const { return m_textureImageDataManager; } + + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) override; + + inline int layer() const { return m_layer; } + inline int mipLevel() const { return m_mipLevel; } + inline QAbstractTexture::CubeMapFace face() const { return m_face; } + inline QTextureImageDataGeneratorPtr dataGenerator() const { return m_generator; } + inline bool isDirty() const { return m_dirty; } + void unsetDirty(); + +private: + void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) final; + + bool m_dirty; + int m_layer; + int m_mipLevel; + QAbstractTexture::CubeMapFace m_face; + QTextureImageDataGeneratorPtr m_generator; + + TextureImageDataManager *m_textureImageDataManager; +}; + +class TextureImageFunctor : public Qt3DCore::QBackendNodeMapper +{ +public: + explicit TextureImageFunctor(AbstractRenderer *renderer, + TextureImageManager *textureImageManager, + TextureImageDataManager *textureImageDataManager); + + Qt3DCore::QBackendNode *create(const Qt3DCore::QNodeCreatedChangeBasePtr &change) const final; + Qt3DCore::QBackendNode *get(Qt3DCore::QNodeId id) const final; + void destroy(Qt3DCore::QNodeId id) const final; + +private: + AbstractRenderer *m_renderer; + TextureImageManager *m_textureImageManager; + TextureImageDataManager *m_textureImageDataManager; +}; + +#ifndef QT_NO_DEBUG_STREAM +inline QDebug operator<<(QDebug dbg, const TextureImage &textureImage) +{ + QDebugStateSaver saver(dbg); + dbg << "QNodeId =" << textureImage.peerId() + << "mip level =" << textureImage.mipLevel() + << "layer =" << textureImage.layer() + << "cube face =" << textureImage.face() + << "dataGenerator =" << textureImage.dataGenerator() << endl; + return dbg; +} +#endif + + +} // namespace Render + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_TEXTUREIMAGE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/texturesubmissioncontext_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/texturesubmissioncontext_p.h new file mode 100644 index 0000000..d0c1565 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/texturesubmissioncontext_p.h @@ -0,0 +1,104 @@ +/**************************************************************************** +** +** Copyright (C) 2019 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_TEXTURESUBMISSIONCONTEXT_H +#define QT3DRENDER_RENDER_TEXTURESUBMISSIONCONTEXT_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { +namespace Render { + +class GraphicsContext; +class GLTexture; + +class Q_AUTOTEST_EXPORT TextureSubmissionContext +{ +public: + enum TextureScope + { + TextureScopeMaterial = 0, + TextureScopeTechnique + // per-pass for deferred rendering? + }; + + TextureSubmissionContext(); + ~TextureSubmissionContext(); + + void initialize(GraphicsContext *context); + void endDrawing(); + int activateTexture(TextureScope scope, GLTexture* tex); + void deactivateTexture(GLTexture *tex); + void deactivateTexturesWithScope(TextureScope ts); + +private: + void decayTextureScores(); + int assignUnitForTexture(GLTexture* tex); + + // active textures, indexed by texture unit + struct ActiveTexture { + GLTexture *texture = nullptr; + int score = 0; + TextureScope scope = TextureScopeMaterial; + bool pinned = false; + }; + QVector m_activeTextures; +}; + +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_TEXTURESUBMISSIONCONTEXT_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/transform_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/transform_p.h new file mode 100644 index 0000000..8e3e9d6 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/transform_p.h @@ -0,0 +1,98 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_TRANSFORM_H +#define QT3DRENDER_RENDER_TRANSFORM_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +namespace Render { + +class Renderer; +class TransformManager; + +class Q_AUTOTEST_EXPORT Transform : public BackendNode +{ +public: + Transform(); + void cleanup(); + + Matrix4x4 transformMatrix() const; + QVector3D scale() const; + QQuaternion rotation() const; + QVector3D translation() const; + + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) override; + + void updateMatrix(); + +private: + void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) final; + + Matrix4x4 m_transformMatrix; + QQuaternion m_rotation; + QVector3D m_scale; + QVector3D m_translation; +}; + +} // namespace Render + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_TRANSFORM_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/triangleboundingvolume_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/triangleboundingvolume_p.h new file mode 100644 index 0000000..a45a5ed --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/triangleboundingvolume_p.h @@ -0,0 +1,114 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_TRIANGLEBOUNDINGVOLUME_P_H +#define QT3DRENDER_RENDER_TRIANGLEBOUNDINGVOLUME_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +namespace Render { + +Q_AUTOTEST_EXPORT bool intersectsSegmentTriangle(const RayCasting::QRay3D &ray, + const Vector3D &a, + const Vector3D &b, + const Vector3D &c, + Vector3D &uvw, + float &t); + +class Q_AUTOTEST_EXPORT TriangleBoundingVolume : public RayCasting::QBoundingVolume +{ +public: + TriangleBoundingVolume(); + explicit TriangleBoundingVolume(Qt3DCore::QNodeId id, + const Vector3D &a, + const Vector3D &b, + const Vector3D &c); + + Qt3DCore::QNodeId id() const final; + bool intersects(const RayCasting::QRay3D &ray, Vector3D *q, Vector3D *uvw) const final; + Type type() const final; + + Vector3D a() const; + Vector3D b() const; + Vector3D c() const; + + void setA(const Vector3D &a); + void setB(const Vector3D &b); + void setC(const Vector3D &c); + + TriangleBoundingVolume transformed(const Matrix4x4 &mat) const; + + inline TriangleBoundingVolume &transform(const Matrix4x4 &mat) + { + *this = transformed(mat); + return *this; + } + +private: + Qt3DCore::QNodeId m_id; + Vector3D m_a, m_b, m_c; +}; + +} // namespace Render + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +Q_DECLARE_METATYPE(Qt3DRender::Render::TriangleBoundingVolume*) // LCOV_EXCL_LINE + +#endif // QT3DRENDER_RENDER_TRIANGLEBOUNDINGVOLUME_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/trianglesextractor_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/trianglesextractor_p.h new file mode 100644 index 0000000..df4c204 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/trianglesextractor_p.h @@ -0,0 +1,89 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Paul Lemire paul.lemire350@gmail.com +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_TRIANGLESEXTRACTOR_P_H +#define QT3DRENDER_RENDER_TRIANGLESEXTRACTOR_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include "trianglesvisitor_p.h" + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { +namespace RayCasting { +class QBoundingVolume; +} + +namespace Render { + +class Q_AUTOTEST_EXPORT TrianglesExtractor : private TrianglesVisitor +{ +public: + explicit TrianglesExtractor(GeometryRenderer *renderer, + NodeManagers *manager); + + QVector extract(const Qt3DCore::QNodeId id); + +private: + void visit(uint andx, const Vector3D &a, + uint bndx, const Vector3D &b, + uint cndx, const Vector3D &c) override; + + GeometryRenderer *m_renderer; + QVector m_volumes; +}; + +} // namespace Render + +} // namespace Qt3DRender + +QT_END_NAMESPACE + + +#endif // QT3DRENDER_RENDER_TRIANGLESEXTRACTOR_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/trianglesvisitor_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/trianglesvisitor_p.h new file mode 100644 index 0000000..ee206f1 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/trianglesvisitor_p.h @@ -0,0 +1,123 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Paul Lemire paul.lemire350@gmail.com +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_TRIANGLESVISITOR_P_H +#define QT3DRENDER_RENDER_TRIANGLESVISITOR_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { +class QEntity; +} + +namespace Qt3DRender { + +namespace Render { + +class GeometryRenderer; +class NodeManagers; +class Attribute; +class Buffer; + +class Q_AUTOTEST_EXPORT TrianglesVisitor +{ +public: + explicit TrianglesVisitor(NodeManagers *manager) : m_manager(manager) { } + virtual ~TrianglesVisitor(); + + void apply(const Qt3DCore::QEntity *entity); + void apply(const GeometryRenderer *renderer, const Qt3DCore::QNodeId id); + + virtual void visit(uint andx, const Vector3D &a, + uint bndx, const Vector3D &b, + uint cndx, const Vector3D &c) = 0; + +protected: + NodeManagers *m_manager; + Qt3DCore::QNodeId m_nodeId; +}; + +class QT3DRENDERSHARED_PRIVATE_EXPORT CoordinateReader +{ +public: + explicit CoordinateReader(NodeManagers *manager) + : m_manager(manager) + , m_attribute(nullptr) + , m_buffer(nullptr) + { + } + + bool setGeometry(const GeometryRenderer *renderer, const QString &attributeName); + + Vector4D getCoordinate(uint vertexIndex); + +protected: + NodeManagers *m_manager; + Attribute *m_attribute; + Buffer *m_buffer; + BufferInfo m_bufferInfo; +}; + +} // namespace Render + +} // namespace Qt3DRender + +QT_END_NAMESPACE + + +#endif // QT3DRENDER_RENDER_TRIANGLESVISITOR_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/uniform_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/uniform_p.h new file mode 100644 index 0000000..7f27356 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/uniform_p.h @@ -0,0 +1,248 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_UNIFORM_P_H +#define QT3DRENDER_RENDER_UNIFORM_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include +#include + +#include +#include +#include +#include + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { +namespace Render { + +enum UniformType { + Float = 0, + Vec2, + Vec3, + Vec4, + Double, + DVec2, + DVec3, + DVec4, + Int, + IVec2, + IVec3, + IVec4, + UInt, + UIVec2, + UIVec3, + UIVec4, + Bool, + BVec2, + BVec3, + BVec4, + Mat2, + Mat3, + Mat4, + Mat2x3, + Mat3x2, + Mat2x4, + Mat4x2, + Mat3x4, + Mat4x3, + Sampler, + Unknown +}; + +class Q_AUTOTEST_EXPORT UniformValue +{ +public: + enum ValueType { + ScalarValue, + NodeId, + TextureValue, + BufferValue + }; + + // UniformValue implicitely converts doubles to floats to ensure + // correct rendering behavior for the cases where Qt3D parameters created from + // a double or QVariant(double) are used to fill uniform values that in reality + // should be floats. This occur especially with QML where qreal might be double + // and not float. Otherwise, at when filling the uniforms, calling constData + // on something that contains a double will result in wrong values + + UniformValue() + : m_data(4) + { + memset(m_data.data(), 0, m_data.size() * sizeof(float)); + } + + UniformValue(int i) : UniformValue() { data()[0] = i; } + UniformValue(uint i) : UniformValue() { data()[0] = i; } + UniformValue(float f) : UniformValue() { data()[0] = f; } + UniformValue(double d) : UniformValue() { data()[0] = d; } // Double to float conversion + UniformValue(bool b) : UniformValue() { data()[0] = b; } + UniformValue(const QVector2D &vec2) : UniformValue() { memcpy(m_data.data(), &vec2, sizeof(QVector2D)); } + UniformValue(const Vector3D &vec3) : UniformValue() { memcpy(m_data.data(), &vec3, sizeof(Vector3D)); } + UniformValue(const Vector4D &vec4) : m_data(sizeof(Vector4D) / sizeof(float)) { memcpy(m_data.data(), &vec4, sizeof(Vector4D)); } + + UniformValue(const QMatrix3x3 &mat33) + : m_data(9) + { + // Use constData because we want column-major layout + memcpy(m_data.data(), mat33.constData(), 9 * sizeof(float)); + } + + // We don t want the QMatrix4x4 builder to use sizeof since QMatrix4x4 contains a type flag +#if defined(__SSE2__) || defined(__AVX2__) + UniformValue(const Matrix4x4 &mat44) + : m_data(sizeof(Matrix4x4) / sizeof(float)) + { + // Use constData because we want column-major layout + memcpy(m_data.data(), &mat44, sizeof(Matrix4x4)); + } +#else + UniformValue(const QMatrix4x4 &mat44) + : m_data(16) + { + // Use constData because we want column-major layout + memcpy(m_data.data(), mat44.constData(), 16 * sizeof(float)); + } +#endif + + UniformValue(const QVector &v) + : m_data(16 * v.size()) + { + int offset = 0; + const int byteSize = 16 * sizeof(float); + float *data = m_data.data(); + for (const auto m : v) { + memcpy(data + offset, m.constData(), byteSize); + offset += 16; + } + } + + // Reserve data to be filled in later + UniformValue(int byteSize, ValueType valueType) + : m_data(byteSize / sizeof(float)) + , m_valueType(valueType) + { + } + + // For nodes which will later be replaced by a Texture or Buffer + UniformValue(Qt3DCore::QNodeId id) + : m_data(sizeof(Qt3DCore::QNodeId) / sizeof(float)) + { + m_valueType = NodeId; + memcpy(m_data.data(), &id, sizeof(Qt3DCore::QNodeId)); + } + + ValueType valueType() const { return m_valueType; } + UniformType storedType() const { return m_storedType; } + + template + void setData(const QVector &v) + { + m_data.resize(v.size() * sizeof(T) / sizeof(float)); + m_valueType = ScalarValue; + float *data = m_data.data(); + memcpy(data, v.constData(), v.size() * sizeof(T)); + } + + static UniformValue fromVariant(const QVariant &variant); + + int byteSize() const { return m_data.size() * sizeof(float); } + + template + const T *constData() const + { + return reinterpret_cast(m_data.constData()); + } + + template + T *data() + { + return reinterpret_cast(m_data.data()); + } + + bool operator==(const UniformValue &other) const + { + return other.m_data == m_data; + } + + bool operator!=(const UniformValue &other) const + { + return !(*this == other); + } +private: + // Allocate 4 floats on stack + // For larger elements, heap allocation will be used + QVarLengthArray m_data; + + ValueType m_valueType = ScalarValue; + + // TODO: Replace this hack see QTBUG-57510 + UniformType m_storedType = Unknown; +}; + +template<> +Q_AUTOTEST_EXPORT void UniformValue::setData(const QVector &v); + +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +Q_DECLARE_METATYPE(Qt3DRender::Render::UniformType) // LCOV_EXCL_LINE + +#endif // QT3DRENDER_RENDER_UNIFORM_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/updateentityhierarchyjob_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/updateentityhierarchyjob_p.h new file mode 100644 index 0000000..f6ba2d5 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/updateentityhierarchyjob_p.h @@ -0,0 +1,91 @@ +/**************************************************************************** +** +** Copyright (C) 2019 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + + +#ifndef QT3DRENDER_RENDER_UPDATEENTITYHIERARCHYJOB_P_H +#define QT3DRENDER_RENDER_UPDATEENTITYHIERARCHYJOB_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +namespace Render { + +class Entity; +class NodeManagers; + +class QT3DRENDERSHARED_PRIVATE_EXPORT UpdateEntityHierarchyJob: public Qt3DCore::QAspectJob +{ +public: + UpdateEntityHierarchyJob(); + + inline void setManager(NodeManagers *manager) { m_manager = manager; } + inline NodeManagers *manager() const { return m_manager; } + + // QAspectJob interface + void run() final; + +private: + NodeManagers *m_manager; +}; + + +using UpdateEntityHierarchyJobPtr = QSharedPointer; + +} // Render + +} // Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_UPDATEENTITYHIERARCHYJOB_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/updateentitylayersjob_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/updateentitylayersjob_p.h new file mode 100644 index 0000000..f2e63e3 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/updateentitylayersjob_p.h @@ -0,0 +1,92 @@ +/**************************************************************************** +** +** Copyright (C) 2019 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + + +#ifndef QT3DRENDER_RENDER_UPDATEENTITYLAYERSJOB_P_H +#define QT3DRENDER_RENDER_UPDATEENTITYLAYERSJOB_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +namespace Render { + +class Entity; +class NodeManagers; + + +class QT3DRENDERSHARED_PRIVATE_EXPORT UpdateEntityLayersJob: public Qt3DCore::QAspectJob +{ +public: + UpdateEntityLayersJob(); + + inline void setManager(NodeManagers *manager) { m_manager = manager; } + inline NodeManagers *manager() const { return m_manager; } + + // QAspectJob interface + void run() final; + +private: + NodeManagers *m_manager; +}; + + +typedef QSharedPointer UpdateEntityLayersJobPtr; + +} // Render + +} // Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_UPDATEENTITYLAYERSJOB_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/updatelevelofdetailjob_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/updatelevelofdetailjob_p.h new file mode 100644 index 0000000..4c80a32 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/updatelevelofdetailjob_p.h @@ -0,0 +1,104 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_UPDATELEVELOFDETAILJOB_H +#define QT3DRENDER_RENDER_UPDATELEVELOFDETAILJOB_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +namespace Render { + +class Entity; +class NodeManagers; +class LevelOfDetail; +class FrameGraphNode; + +class QT3DRENDERSHARED_PRIVATE_EXPORT UpdateLevelOfDetailJob : public Qt3DCore::QAspectJob +{ +public: + UpdateLevelOfDetailJob(); + ~UpdateLevelOfDetailJob(); + + void setManagers(NodeManagers *manager); + void setFrameGraphRoot(FrameGraphNode *frameGraphRoot); + void setRoot(Entity *root); + void run() final; + + NodeManagers *managers() const { return m_manager; } + Entity *root() const { return m_root; } + +private: + void updateEntityLod(Entity *entity); + void updateEntityLodByDistance(Entity *entity, LevelOfDetail *lod); + void updateEntityLodByScreenArea(Entity *entity, LevelOfDetail *lod); + + QRect windowViewport(const QSize &area, const QRectF &relativeViewport) const; + + NodeManagers *m_manager; + FrameGraphNode *m_frameGraphRoot; + Entity *m_root; + double m_filterValue; +}; + +typedef QSharedPointer UpdateLevelOfDetailJobPtr; + +} // Render + +} // Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_UPDATELEVELOFDETAILJOB_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/updatemeshtrianglelistjob_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/updatemeshtrianglelistjob_p.h new file mode 100644 index 0000000..9b67b9f --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/updatemeshtrianglelistjob_p.h @@ -0,0 +1,88 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_UPDATEMESHTRIANGLELISTJOB_H +#define QT3DRENDER_RENDER_UPDATEMESHTRIANGLELISTJOB_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +namespace Render { + +class NodeManagers; + +class QT3DRENDERSHARED_PRIVATE_EXPORT UpdateMeshTriangleListJob : public Qt3DCore::QAspectJob +{ +public: + UpdateMeshTriangleListJob(); + ~UpdateMeshTriangleListJob(); + + void setManagers(NodeManagers *manager); + void run() final; + + NodeManagers *managers() const; + +private: + NodeManagers *m_manager; +}; + +typedef QSharedPointer UpdateMeshTriangleListJobPtr; + +} // Render + +} // Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_UPDATEMESHTRIANGLELISTJOB_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/updateshaderdatatransformjob_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/updateshaderdatatransformjob_p.h new file mode 100644 index 0000000..2fc06b8 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/updateshaderdatatransformjob_p.h @@ -0,0 +1,88 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_UPDATESHADERDATATRANSFORMJOB_H +#define QT3DRENDER_RENDER_UPDATESHADERDATATRANSFORMJOB_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +namespace Render { + +class NodeManagers; + +class QT3DRENDERSHARED_PRIVATE_EXPORT UpdateShaderDataTransformJob : public Qt3DCore::QAspectJob +{ +public: + UpdateShaderDataTransformJob(); + ~UpdateShaderDataTransformJob(); + + void setManagers(NodeManagers *manager); + NodeManagers *managers() const; + + void run() final; + +private: + NodeManagers *m_manager; +}; + +typedef QSharedPointer UpdateShaderDataTransformJobPtr; + +} // namespace Render + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_UPDATESHADERDATATRANSFORMJOB_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/updateskinningpalettejob_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/updateskinningpalettejob_p.h new file mode 100644 index 0000000..9e230f1 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/updateskinningpalettejob_p.h @@ -0,0 +1,91 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_UPDATESKINNINGPALETTEJOB_P_H +#define QT3DRENDER_RENDER_UPDATESKINNINGPALETTEJOB_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { +namespace Render { + +class NodeManagers; + +class UpdateSkinningPaletteJob : public Qt3DCore::QAspectJob +{ +public: + explicit UpdateSkinningPaletteJob(); + ~UpdateSkinningPaletteJob(); + + void setRoot(Entity *root) { m_root = root; } + void setManagers(NodeManagers *nodeManagers) { m_nodeManagers = nodeManagers; } + + void setDirtyJoints(const QVector dirtyJoints) { m_dirtyJoints = dirtyJoints; } + void clearDirtyJoints() { m_dirtyJoints.clear(); } + +protected: + void run() override; + void findDirtyArmatures(Entity *entity, QVector &armatures) const; + NodeManagers *m_nodeManagers; + Entity *m_root; + QVector m_dirtyJoints; +}; + +typedef QSharedPointer UpdateSkinningPaletteJobPtr; + +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_UPDATESKINNINGPALETTEJOB_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/updatetreeenabledjob_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/updatetreeenabledjob_p.h new file mode 100644 index 0000000..132271e --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/updatetreeenabledjob_p.h @@ -0,0 +1,85 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_UPDATETREEENABLEDJOB_H +#define QT3DRENDER_RENDER_UPDATETREEENABLEDJOB_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { +namespace Render { + +class Entity; + +class QT3DRENDERSHARED_PRIVATE_EXPORT UpdateTreeEnabledJob : public Qt3DCore::QAspectJob +{ +public: + UpdateTreeEnabledJob(); + + void setRoot(Entity *root); + void run() override; + +private: + Entity *m_node; +}; + +typedef QSharedPointer UpdateTreeEnabledJobPtr; + +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_UPDATETREEENABLEDJOB_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/updateworldboundingvolumejob_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/updateworldboundingvolumejob_p.h new file mode 100644 index 0000000..affe780 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/updateworldboundingvolumejob_p.h @@ -0,0 +1,84 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_UPDATEWORLDBOUNDINGVOLUMEJOB_H +#define QT3DRENDER_RENDER_UPDATEWORLDBOUNDINGVOLUMEJOB_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { +namespace Render { + +class EntityManager; + +class QT3DRENDERSHARED_PRIVATE_EXPORT UpdateWorldBoundingVolumeJob : public Qt3DCore::QAspectJob +{ +public: + UpdateWorldBoundingVolumeJob(); + + inline void setManager(EntityManager *manager) Q_DECL_NOTHROW { m_manager = manager; } + void run() override; + +private: + EntityManager *m_manager; +}; + +typedef QSharedPointer UpdateWorldBoundingVolumeJobPtr; + +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_UPDATEWORLDBOUNDINGVOLUMEJOB_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/updateworldtransformjob_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/updateworldtransformjob_p.h new file mode 100644 index 0000000..a85310e --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/updateworldtransformjob_p.h @@ -0,0 +1,85 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_UPDATEWORLDTRANSFORMJOB_H +#define QT3DRENDER_RENDER_UPDATEWORLDTRANSFORMJOB_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { +namespace Render { + +class Entity; + +class QT3DRENDERSHARED_PRIVATE_EXPORT UpdateWorldTransformJob : public Qt3DCore::QAspectJob +{ +public: + UpdateWorldTransformJob(); + + void setRoot(Entity *root); + void run() override; + +private: + Entity *m_node; +}; + +typedef QSharedPointer UpdateWorldTransformJobPtr; + +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_UPDATEWORLDTRANSFORMJOB_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/viewportnode_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/viewportnode_p.h new file mode 100644 index 0000000..799b9b3 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/viewportnode_p.h @@ -0,0 +1,107 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_VIEWPORTNODE_H +#define QT3DRENDER_RENDER_VIEWPORTNODE_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QViewport; + +namespace Render { + +class Renderer; + +class Q_AUTOTEST_EXPORT ViewportNode : public FrameGraphNode +{ +public: + ViewportNode(); + + float xMin() const; + void setXMin(float xMin); + + float yMin() const; + void setYMin(float yMin); + + float xMax() const; + void setXMax(float xMax); + + float yMax() const; + void setYMax(float yMax); + + float gamma() const; + void setGamma(float gamma); + + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) override; + + static QRectF computeViewport(const QRectF &childViewport, const ViewportNode *parentViewport); + +private: + void initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) final; + + float m_xMin; + float m_yMin; + float m_xMax; + float m_yMax; + float m_gamma; +}; + + +} // namespace Render +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_VIEWPORTNODE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/visitorutils_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/visitorutils_p.h new file mode 100644 index 0000000..6a5c7b4 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/visitorutils_p.h @@ -0,0 +1,181 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Paul Lemire paul.lemire350@gmail.com +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_VISITORUTILS_P_H +#define QT3DRENDER_RENDER_VISITORUTILS_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +namespace Render { + +namespace Visitor { + +template struct EnumToType; +template <> struct EnumToType { typedef const char type; }; +template <> struct EnumToType { typedef const uchar type; }; +template <> struct EnumToType { typedef const short type; }; +template <> struct EnumToType { typedef const ushort type; }; +template <> struct EnumToType { typedef const int type; }; +template <> struct EnumToType { typedef const uint type; }; +template <> struct EnumToType { typedef const float type; }; +template <> struct EnumToType { typedef const double type; }; + +template +inline typename EnumToType::type *castToType(const QByteArray &u, uint byteOffset) +{ + return reinterpret_cast< typename EnumToType::type *>(u.constData() + byteOffset); +} + +template +void processBuffer(const BufferInfo &info, Func &f) +{ + switch (info.type) { + case QAttribute::Byte: f(info, castToType(info.data, info.byteOffset)); + return; + case QAttribute::UnsignedByte: f(info, castToType(info.data, info.byteOffset)); + return; + case QAttribute::Short: f(info, castToType(info.data, info.byteOffset)); + return; + case QAttribute::UnsignedShort: f(info, castToType(info.data, info.byteOffset)); + return; + case QAttribute::Int: f(info, castToType(info.data, info.byteOffset)); + return; + case QAttribute::UnsignedInt: f(info, castToType(info.data, info.byteOffset)); + return; + case QAttribute::Float: f(info, castToType(info.data, info.byteOffset)); + return; + case QAttribute::Double: f(info, castToType(info.data, info.byteOffset)); + return; + default: + return; + } +} + +template +void visitPrimitives(NodeManagers *manager, const GeometryRenderer *renderer, Visitor* visitor) +{ + Geometry *geom = manager->lookupResource(renderer->geometryId()); + Attribute *positionAttribute = nullptr; + Attribute *indexAttribute = nullptr; + Buffer *positionBuffer = nullptr; + Buffer *indexBuffer = nullptr; + + if (geom) { + positionAttribute = manager->lookupResource(geom->boundingPositionAttribute()); + + Qt3DRender::Render::Attribute *attribute = nullptr; + const auto attrIds = geom->attributes(); + for (const Qt3DCore::QNodeId attrId : attrIds) { + attribute = manager->lookupResource(attrId); + if (attribute){ + if (!positionAttribute && attribute->name() == QAttribute::defaultPositionAttributeName()) + positionAttribute = attribute; + else if (attribute->attributeType() == QAttribute::IndexAttribute) + indexAttribute = attribute; + } + } + + if (positionAttribute) + positionBuffer = manager->lookupResource(positionAttribute->bufferId()); + if (indexAttribute) + indexBuffer = manager->lookupResource(indexAttribute->bufferId()); + + if (positionBuffer) { + + BufferInfo vertexBufferInfo; + vertexBufferInfo.data = positionBuffer->data(); + vertexBufferInfo.type = positionAttribute->vertexBaseType(); + vertexBufferInfo.byteOffset = positionAttribute->byteOffset(); + vertexBufferInfo.byteStride = positionAttribute->byteStride(); + vertexBufferInfo.dataSize = positionAttribute->vertexSize(); + vertexBufferInfo.count = positionAttribute->count(); + + if (indexBuffer) { // Indexed + + BufferInfo indexBufferInfo; + indexBufferInfo.data = indexBuffer->data(); + indexBufferInfo.type = indexAttribute->vertexBaseType(); + indexBufferInfo.byteOffset = indexAttribute->byteOffset(); + indexBufferInfo.byteStride = indexAttribute->byteStride(); + indexBufferInfo.count = indexAttribute->count(); + + IndexExecutor executor; + executor.m_vertexBufferInfo = vertexBufferInfo; + executor.m_primitiveType = renderer->primitiveType(); + executor.m_visitor = visitor; + + return processBuffer(indexBufferInfo, executor); + + } else { // Non Indexed + + // Check into which type the buffer needs to be casted + VertexExecutor executor; + executor.m_primitiveType = renderer->primitiveType(); + executor.m_visitor = visitor; + + return processBuffer(vertexBufferInfo, executor); + } + } + } +} + +} // namespace Visitor + +} // namespace Render + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_VISITORUTILS_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/vsyncframeadvanceservice_p.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/vsyncframeadvanceservice_p.h new file mode 100644 index 0000000..c57c81a --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/5.12.5/Qt3DRender/private/vsyncframeadvanceservice_p.h @@ -0,0 +1,86 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Paul Lemire +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_VSYNCFRAMEADVANCESERVICE_H +#define QT3DRENDER_RENDER_VSYNCFRAMEADVANCESERVICE_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +namespace Render { + +class VSyncFrameAdvanceServicePrivate; + +class Q_AUTOTEST_EXPORT VSyncFrameAdvanceService final : public Qt3DCore::QAbstractFrameAdvanceService +{ +public: + explicit VSyncFrameAdvanceService(bool drivenByRenderThread); + ~VSyncFrameAdvanceService(); + + qint64 waitForNextFrame() final; + void start() final; + void stop() final; + + void proceedToNextFrame(); + +private: + Q_DECLARE_PRIVATE(VSyncFrameAdvanceService) +}; + +} // namespace Render + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_VSYNCFRAMEADVANCESERVICE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/FunctorType b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/FunctorType new file mode 100644 index 0000000..dc24ee5 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/FunctorType @@ -0,0 +1 @@ +#include "qabstractfunctor.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/ParameterList b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/ParameterList new file mode 100644 index 0000000..b13e4d9 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/ParameterList @@ -0,0 +1 @@ +#include "qrenderpass.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/PropertyReaderInterface b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/PropertyReaderInterface new file mode 100644 index 0000000..dc248b5 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/PropertyReaderInterface @@ -0,0 +1 @@ +#include "qshaderdata.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/PropertyReaderInterfacePtr b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/PropertyReaderInterfacePtr new file mode 100644 index 0000000..dc248b5 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/PropertyReaderInterfacePtr @@ -0,0 +1 @@ +#include "qshaderdata.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QAbstractFunctor b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QAbstractFunctor new file mode 100644 index 0000000..dc24ee5 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QAbstractFunctor @@ -0,0 +1 @@ +#include "qabstractfunctor.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QAbstractLight b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QAbstractLight new file mode 100644 index 0000000..9e228ff --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QAbstractLight @@ -0,0 +1 @@ +#include "qabstractlight.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QAbstractRayCaster b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QAbstractRayCaster new file mode 100644 index 0000000..25fd65f --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QAbstractRayCaster @@ -0,0 +1 @@ +#include "qabstractraycaster.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QAbstractTexture b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QAbstractTexture new file mode 100644 index 0000000..409aa3d --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QAbstractTexture @@ -0,0 +1 @@ +#include "qabstracttexture.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QAbstractTextureImage b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QAbstractTextureImage new file mode 100644 index 0000000..966c1d5 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QAbstractTextureImage @@ -0,0 +1 @@ +#include "qabstracttextureimage.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QAlphaCoverage b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QAlphaCoverage new file mode 100644 index 0000000..8e72c56 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QAlphaCoverage @@ -0,0 +1 @@ +#include "qalphacoverage.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QAlphaTest b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QAlphaTest new file mode 100644 index 0000000..c1e0cb3 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QAlphaTest @@ -0,0 +1 @@ +#include "qalphatest.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QAttribute b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QAttribute new file mode 100644 index 0000000..93948e6 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QAttribute @@ -0,0 +1 @@ +#include "qattribute.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QBlendEquation b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QBlendEquation new file mode 100644 index 0000000..b04fe87 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QBlendEquation @@ -0,0 +1 @@ +#include "qblendequation.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QBlendEquationArguments b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QBlendEquationArguments new file mode 100644 index 0000000..dc2fba6 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QBlendEquationArguments @@ -0,0 +1 @@ +#include "qblendequationarguments.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QBlitFramebuffer b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QBlitFramebuffer new file mode 100644 index 0000000..6481882 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QBlitFramebuffer @@ -0,0 +1 @@ +#include "qblitframebuffer.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QBuffer b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QBuffer new file mode 100644 index 0000000..2f1c95a --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QBuffer @@ -0,0 +1 @@ +#include "qbuffer.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QBufferCapture b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QBufferCapture new file mode 100644 index 0000000..22f3674 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QBufferCapture @@ -0,0 +1 @@ +#include "qbuffercapture.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QBufferDataGenerator b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QBufferDataGenerator new file mode 100644 index 0000000..3cd8305 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QBufferDataGenerator @@ -0,0 +1 @@ +#include "qbufferdatagenerator.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QBufferDataGeneratorPtr b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QBufferDataGeneratorPtr new file mode 100644 index 0000000..2f1c95a --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QBufferDataGeneratorPtr @@ -0,0 +1 @@ +#include "qbuffer.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QBufferPtr b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QBufferPtr new file mode 100644 index 0000000..93948e6 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QBufferPtr @@ -0,0 +1 @@ +#include "qattribute.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QCamera b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QCamera new file mode 100644 index 0000000..6294f61 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QCamera @@ -0,0 +1 @@ +#include "qcamera.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QCameraLens b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QCameraLens new file mode 100644 index 0000000..1358aba --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QCameraLens @@ -0,0 +1 @@ +#include "qcameralens.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QCameraSelector b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QCameraSelector new file mode 100644 index 0000000..069a039 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QCameraSelector @@ -0,0 +1 @@ +#include "qcameraselector.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QClearBuffers b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QClearBuffers new file mode 100644 index 0000000..8b9b7c5 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QClearBuffers @@ -0,0 +1 @@ +#include "qclearbuffers.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QClipPlane b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QClipPlane new file mode 100644 index 0000000..bec942e --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QClipPlane @@ -0,0 +1 @@ +#include "qclipplane.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QColorMask b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QColorMask new file mode 100644 index 0000000..f585aac --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QColorMask @@ -0,0 +1 @@ +#include "qcolormask.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QComputeCommand b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QComputeCommand new file mode 100644 index 0000000..3860d64 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QComputeCommand @@ -0,0 +1 @@ +#include "qcomputecommand.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QCullFace b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QCullFace new file mode 100644 index 0000000..218ff95 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QCullFace @@ -0,0 +1 @@ +#include "qcullface.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QDepthTest b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QDepthTest new file mode 100644 index 0000000..d5f572b --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QDepthTest @@ -0,0 +1 @@ +#include "qdepthtest.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QDirectionalLight b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QDirectionalLight new file mode 100644 index 0000000..fe48584 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QDirectionalLight @@ -0,0 +1 @@ +#include "qdirectionallight.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QDispatchCompute b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QDispatchCompute new file mode 100644 index 0000000..bb0d4dc --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QDispatchCompute @@ -0,0 +1 @@ +#include "qdispatchcompute.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QDithering b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QDithering new file mode 100644 index 0000000..ee23ca1 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QDithering @@ -0,0 +1 @@ +#include "qdithering.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QEffect b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QEffect new file mode 100644 index 0000000..50113cf --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QEffect @@ -0,0 +1 @@ +#include "qeffect.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QEnvironmentLight b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QEnvironmentLight new file mode 100644 index 0000000..989f104 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QEnvironmentLight @@ -0,0 +1 @@ +#include "qenvironmentlight.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QFilterKey b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QFilterKey new file mode 100644 index 0000000..4ce5f7e --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QFilterKey @@ -0,0 +1 @@ +#include "qfilterkey.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QFrameGraphNode b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QFrameGraphNode new file mode 100644 index 0000000..fed3dc4 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QFrameGraphNode @@ -0,0 +1 @@ +#include "qframegraphnode.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QFrameGraphNodeCreatedChange b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QFrameGraphNodeCreatedChange new file mode 100644 index 0000000..ae0b212 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QFrameGraphNodeCreatedChange @@ -0,0 +1 @@ +#include "qframegraphnodecreatedchange.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QFrameGraphNodeCreatedChangeBase b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QFrameGraphNodeCreatedChangeBase new file mode 100644 index 0000000..ae0b212 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QFrameGraphNodeCreatedChangeBase @@ -0,0 +1 @@ +#include "qframegraphnodecreatedchange.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QFrameGraphNodeCreatedChangeBasePtr b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QFrameGraphNodeCreatedChangeBasePtr new file mode 100644 index 0000000..ae0b212 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QFrameGraphNodeCreatedChangeBasePtr @@ -0,0 +1 @@ +#include "qframegraphnodecreatedchange.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QFrontFace b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QFrontFace new file mode 100644 index 0000000..7884218 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QFrontFace @@ -0,0 +1 @@ +#include "qfrontface.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QFrustumCulling b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QFrustumCulling new file mode 100644 index 0000000..9c725fb --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QFrustumCulling @@ -0,0 +1 @@ +#include "qfrustumculling.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QGeometry b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QGeometry new file mode 100644 index 0000000..d4c679c --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QGeometry @@ -0,0 +1 @@ +#include "qgeometry.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QGeometryFactory b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QGeometryFactory new file mode 100644 index 0000000..fceb179 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QGeometryFactory @@ -0,0 +1 @@ +#include "qgeometryfactory.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QGeometryFactoryPtr b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QGeometryFactoryPtr new file mode 100644 index 0000000..fceb179 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QGeometryFactoryPtr @@ -0,0 +1 @@ +#include "qgeometryfactory.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QGeometryRenderer b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QGeometryRenderer new file mode 100644 index 0000000..255b897 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QGeometryRenderer @@ -0,0 +1 @@ +#include "qgeometryrenderer.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QGraphicsApiFilter b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QGraphicsApiFilter new file mode 100644 index 0000000..c247b5f --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QGraphicsApiFilter @@ -0,0 +1 @@ +#include "qgraphicsapifilter.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QLayer b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QLayer new file mode 100644 index 0000000..eae7020 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QLayer @@ -0,0 +1 @@ +#include "qlayer.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QLayerFilter b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QLayerFilter new file mode 100644 index 0000000..ebc4c1c --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QLayerFilter @@ -0,0 +1 @@ +#include "qlayerfilter.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QLevelOfDetail b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QLevelOfDetail new file mode 100644 index 0000000..e69e1b0 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QLevelOfDetail @@ -0,0 +1 @@ +#include "qlevelofdetail.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QLevelOfDetailBoundingSphere b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QLevelOfDetailBoundingSphere new file mode 100644 index 0000000..c2f5871 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QLevelOfDetailBoundingSphere @@ -0,0 +1 @@ +#include "qlevelofdetailboundingsphere.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QLevelOfDetailSwitch b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QLevelOfDetailSwitch new file mode 100644 index 0000000..ec74025 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QLevelOfDetailSwitch @@ -0,0 +1 @@ +#include "qlevelofdetailswitch.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QLineWidth b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QLineWidth new file mode 100644 index 0000000..13436ee --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QLineWidth @@ -0,0 +1 @@ +#include "qlinewidth.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QMaterial b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QMaterial new file mode 100644 index 0000000..3765a2c --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QMaterial @@ -0,0 +1 @@ +#include "qmaterial.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QMemoryBarrier b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QMemoryBarrier new file mode 100644 index 0000000..fca5747 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QMemoryBarrier @@ -0,0 +1 @@ +#include "qmemorybarrier.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QMesh b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QMesh new file mode 100644 index 0000000..220697f --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QMesh @@ -0,0 +1 @@ +#include "qmesh.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QMultiSampleAntiAliasing b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QMultiSampleAntiAliasing new file mode 100644 index 0000000..6ebf219 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QMultiSampleAntiAliasing @@ -0,0 +1 @@ +#include "qmultisampleantialiasing.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QNoDepthMask b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QNoDepthMask new file mode 100644 index 0000000..a7bfef5 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QNoDepthMask @@ -0,0 +1 @@ +#include "qnodepthmask.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QNoDraw b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QNoDraw new file mode 100644 index 0000000..e330d59 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QNoDraw @@ -0,0 +1 @@ +#include "qnodraw.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QObjectPicker b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QObjectPicker new file mode 100644 index 0000000..6df1f2d --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QObjectPicker @@ -0,0 +1 @@ +#include "qobjectpicker.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QPaintedTextureImage b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QPaintedTextureImage new file mode 100644 index 0000000..cf9ac8e --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QPaintedTextureImage @@ -0,0 +1 @@ +#include "qpaintedtextureimage.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QParameter b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QParameter new file mode 100644 index 0000000..be5c1a9 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QParameter @@ -0,0 +1 @@ +#include "qparameter.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QPickEvent b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QPickEvent new file mode 100644 index 0000000..a1a2e05 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QPickEvent @@ -0,0 +1 @@ +#include "qpickevent.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QPickEventPtr b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QPickEventPtr new file mode 100644 index 0000000..a1a2e05 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QPickEventPtr @@ -0,0 +1 @@ +#include "qpickevent.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QPickLineEvent b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QPickLineEvent new file mode 100644 index 0000000..35e2638 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QPickLineEvent @@ -0,0 +1 @@ +#include "qpicklineevent.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QPickLineEventPtr b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QPickLineEventPtr new file mode 100644 index 0000000..35e2638 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QPickLineEventPtr @@ -0,0 +1 @@ +#include "qpicklineevent.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QPickPointEvent b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QPickPointEvent new file mode 100644 index 0000000..63e160a --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QPickPointEvent @@ -0,0 +1 @@ +#include "qpickpointevent.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QPickPointEventPtr b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QPickPointEventPtr new file mode 100644 index 0000000..63e160a --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QPickPointEventPtr @@ -0,0 +1 @@ +#include "qpickpointevent.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QPickTriangleEvent b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QPickTriangleEvent new file mode 100644 index 0000000..e0ccde2 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QPickTriangleEvent @@ -0,0 +1 @@ +#include "qpicktriangleevent.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QPickTriangleEventPtr b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QPickTriangleEventPtr new file mode 100644 index 0000000..e0ccde2 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QPickTriangleEventPtr @@ -0,0 +1 @@ +#include "qpicktriangleevent.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QPickingSettings b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QPickingSettings new file mode 100644 index 0000000..7ba74b8 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QPickingSettings @@ -0,0 +1 @@ +#include "qpickingsettings.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QPointLight b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QPointLight new file mode 100644 index 0000000..9076cab --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QPointLight @@ -0,0 +1 @@ +#include "qpointlight.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QPointSize b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QPointSize new file mode 100644 index 0000000..5c60f87 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QPointSize @@ -0,0 +1 @@ +#include "qpointsize.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QPolygonOffset b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QPolygonOffset new file mode 100644 index 0000000..5f1c499 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QPolygonOffset @@ -0,0 +1 @@ +#include "qpolygonoffset.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QProximityFilter b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QProximityFilter new file mode 100644 index 0000000..30bb56b --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QProximityFilter @@ -0,0 +1 @@ +#include "qproximityfilter.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QRayCaster b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QRayCaster new file mode 100644 index 0000000..5d452b3 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QRayCaster @@ -0,0 +1 @@ +#include "qraycaster.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QRayCasterHit b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QRayCasterHit new file mode 100644 index 0000000..e5d278c --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QRayCasterHit @@ -0,0 +1 @@ +#include "qraycasterhit.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QRenderAspect b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QRenderAspect new file mode 100644 index 0000000..018379d --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QRenderAspect @@ -0,0 +1 @@ +#include "qrenderaspect.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QRenderCapture b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QRenderCapture new file mode 100644 index 0000000..0ad3729 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QRenderCapture @@ -0,0 +1 @@ +#include "qrendercapture.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QRenderCaptureReply b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QRenderCaptureReply new file mode 100644 index 0000000..0ad3729 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QRenderCaptureReply @@ -0,0 +1 @@ +#include "qrendercapture.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QRenderPass b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QRenderPass new file mode 100644 index 0000000..b13e4d9 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QRenderPass @@ -0,0 +1 @@ +#include "qrenderpass.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QRenderPassFilter b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QRenderPassFilter new file mode 100644 index 0000000..a4137a5 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QRenderPassFilter @@ -0,0 +1 @@ +#include "qrenderpassfilter.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QRenderSettings b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QRenderSettings new file mode 100644 index 0000000..cdf6dbc --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QRenderSettings @@ -0,0 +1 @@ +#include "qrendersettings.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QRenderState b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QRenderState new file mode 100644 index 0000000..db34c85 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QRenderState @@ -0,0 +1 @@ +#include "qrenderstate.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QRenderStateSet b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QRenderStateSet new file mode 100644 index 0000000..be5eee8 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QRenderStateSet @@ -0,0 +1 @@ +#include "qrenderstateset.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QRenderSurfaceSelector b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QRenderSurfaceSelector new file mode 100644 index 0000000..00437d7 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QRenderSurfaceSelector @@ -0,0 +1 @@ +#include "qrendersurfaceselector.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QRenderTarget b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QRenderTarget new file mode 100644 index 0000000..16a9498 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QRenderTarget @@ -0,0 +1 @@ +#include "qrendertarget.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QRenderTargetOutput b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QRenderTargetOutput new file mode 100644 index 0000000..2eae3e8 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QRenderTargetOutput @@ -0,0 +1 @@ +#include "qrendertargetoutput.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QRenderTargetSelector b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QRenderTargetSelector new file mode 100644 index 0000000..97e13e8 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QRenderTargetSelector @@ -0,0 +1 @@ +#include "qrendertargetselector.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QSceneLoader b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QSceneLoader new file mode 100644 index 0000000..a8d405c --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QSceneLoader @@ -0,0 +1 @@ +#include "qsceneloader.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QScissorTest b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QScissorTest new file mode 100644 index 0000000..92c7614 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QScissorTest @@ -0,0 +1 @@ +#include "qscissortest.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QScreenRayCaster b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QScreenRayCaster new file mode 100644 index 0000000..3bbbc81 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QScreenRayCaster @@ -0,0 +1 @@ +#include "qscreenraycaster.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QSeamlessCubemap b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QSeamlessCubemap new file mode 100644 index 0000000..054d21e --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QSeamlessCubemap @@ -0,0 +1 @@ +#include "qseamlesscubemap.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QShaderData b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QShaderData new file mode 100644 index 0000000..dc248b5 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QShaderData @@ -0,0 +1 @@ +#include "qshaderdata.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QShaderProgram b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QShaderProgram new file mode 100644 index 0000000..1288ea7 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QShaderProgram @@ -0,0 +1 @@ +#include "qshaderprogram.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QShaderProgramBuilder b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QShaderProgramBuilder new file mode 100644 index 0000000..d14d808 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QShaderProgramBuilder @@ -0,0 +1 @@ +#include "qshaderprogrambuilder.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QSortPolicy b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QSortPolicy new file mode 100644 index 0000000..0aae161 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QSortPolicy @@ -0,0 +1 @@ +#include "qsortpolicy.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QSpotLight b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QSpotLight new file mode 100644 index 0000000..a205d44 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QSpotLight @@ -0,0 +1 @@ +#include "qspotlight.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QStencilMask b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QStencilMask new file mode 100644 index 0000000..dd0c824 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QStencilMask @@ -0,0 +1 @@ +#include "qstencilmask.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QStencilOperation b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QStencilOperation new file mode 100644 index 0000000..a195a86 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QStencilOperation @@ -0,0 +1 @@ +#include "qstenciloperation.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QStencilOperationArguments b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QStencilOperationArguments new file mode 100644 index 0000000..056e75e --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QStencilOperationArguments @@ -0,0 +1 @@ +#include "qstenciloperationarguments.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QStencilTest b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QStencilTest new file mode 100644 index 0000000..3b35d98 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QStencilTest @@ -0,0 +1 @@ +#include "qstenciltest.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QStencilTestArguments b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QStencilTestArguments new file mode 100644 index 0000000..5f983cb --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QStencilTestArguments @@ -0,0 +1 @@ +#include "qstenciltestarguments.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QTechnique b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QTechnique new file mode 100644 index 0000000..55ebf68 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QTechnique @@ -0,0 +1 @@ +#include "qtechnique.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QTechniqueFilter b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QTechniqueFilter new file mode 100644 index 0000000..06c26ea --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QTechniqueFilter @@ -0,0 +1 @@ +#include "qtechniquefilter.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QTexture b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QTexture new file mode 100644 index 0000000..9729b42 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QTexture @@ -0,0 +1 @@ +#include "qtexture.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QTextureData b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QTextureData new file mode 100644 index 0000000..507d82e --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QTextureData @@ -0,0 +1 @@ +#include "qtexturedata.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QTextureDataPtr b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QTextureDataPtr new file mode 100644 index 0000000..507d82e --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QTextureDataPtr @@ -0,0 +1 @@ +#include "qtexturedata.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QTextureGenerator b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QTextureGenerator new file mode 100644 index 0000000..9469a36 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QTextureGenerator @@ -0,0 +1 @@ +#include "qtexturegenerator.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QTextureGeneratorPtr b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QTextureGeneratorPtr new file mode 100644 index 0000000..409aa3d --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QTextureGeneratorPtr @@ -0,0 +1 @@ +#include "qabstracttexture.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QTextureImage b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QTextureImage new file mode 100644 index 0000000..6439404 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QTextureImage @@ -0,0 +1 @@ +#include "qtextureimage.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QTextureImageData b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QTextureImageData new file mode 100644 index 0000000..1455165 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QTextureImageData @@ -0,0 +1 @@ +#include "qtextureimagedata.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QTextureImageDataGenerator b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QTextureImageDataGenerator new file mode 100644 index 0000000..899e068 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QTextureImageDataGenerator @@ -0,0 +1 @@ +#include "qtextureimagedatagenerator.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QTextureImageDataGeneratorPtr b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QTextureImageDataGeneratorPtr new file mode 100644 index 0000000..899e068 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QTextureImageDataGeneratorPtr @@ -0,0 +1 @@ +#include "qtextureimagedatagenerator.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QTextureImageDataPtr b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QTextureImageDataPtr new file mode 100644 index 0000000..1455165 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QTextureImageDataPtr @@ -0,0 +1 @@ +#include "qtextureimagedata.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QTextureWrapMode b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QTextureWrapMode new file mode 100644 index 0000000..4732ed9 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QTextureWrapMode @@ -0,0 +1 @@ +#include "qtexturewrapmode.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QViewport b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QViewport new file mode 100644 index 0000000..2531116 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/QViewport @@ -0,0 +1 @@ +#include "qviewport.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/Qt3DRender b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/Qt3DRender new file mode 100644 index 0000000..428c920 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/Qt3DRender @@ -0,0 +1,103 @@ +#ifndef QT_QT3DRENDER_MODULE_H +#define QT_QT3DRENDER_MODULE_H +#include +#include "qabstractfunctor.h" +#include "qabstractlight.h" +#include "qabstractraycaster.h" +#include "qabstracttexture.h" +#include "qabstracttextureimage.h" +#include "qalphacoverage.h" +#include "qalphatest.h" +#include "qattribute.h" +#include "qblendequation.h" +#include "qblendequationarguments.h" +#include "qblitframebuffer.h" +#include "qbuffer.h" +#include "qbuffercapture.h" +#include "qbufferdatagenerator.h" +#include "qcamera.h" +#include "qcameralens.h" +#include "qcameraselector.h" +#include "qclearbuffers.h" +#include "qclipplane.h" +#include "qcolormask.h" +#include "qcomputecommand.h" +#include "qcullface.h" +#include "qdepthtest.h" +#include "qdirectionallight.h" +#include "qdispatchcompute.h" +#include "qdithering.h" +#include "qeffect.h" +#include "qenvironmentlight.h" +#include "qfilterkey.h" +#include "qframegraphnode.h" +#include "qframegraphnodecreatedchange.h" +#include "qfrontface.h" +#include "qfrustumculling.h" +#include "qgeometry.h" +#include "qgeometryfactory.h" +#include "qgeometryrenderer.h" +#include "qgraphicsapifilter.h" +#include "qlayer.h" +#include "qlayerfilter.h" +#include "qlevelofdetail.h" +#include "qlevelofdetailboundingsphere.h" +#include "qlevelofdetailswitch.h" +#include "qlinewidth.h" +#include "qmaterial.h" +#include "qmemorybarrier.h" +#include "qmesh.h" +#include "qmultisampleantialiasing.h" +#include "qnodepthmask.h" +#include "qnodraw.h" +#include "qobjectpicker.h" +#include "qpaintedtextureimage.h" +#include "qparameter.h" +#include "qpickevent.h" +#include "qpickingsettings.h" +#include "qpicklineevent.h" +#include "qpickpointevent.h" +#include "qpicktriangleevent.h" +#include "qpointlight.h" +#include "qpointsize.h" +#include "qpolygonoffset.h" +#include "qproximityfilter.h" +#include "qraycaster.h" +#include "qraycasterhit.h" +#include "qrenderaspect.h" +#include "qrendercapture.h" +#include "qrenderpass.h" +#include "qrenderpassfilter.h" +#include "qrendersettings.h" +#include "qrenderstate.h" +#include "qrenderstateset.h" +#include "qrendersurfaceselector.h" +#include "qrendertarget.h" +#include "qrendertargetoutput.h" +#include "qrendertargetselector.h" +#include "qsceneloader.h" +#include "qscissortest.h" +#include "qscreenraycaster.h" +#include "qseamlesscubemap.h" +#include "qshaderdata.h" +#include "qshaderprogram.h" +#include "qshaderprogrambuilder.h" +#include "qsortpolicy.h" +#include "qspotlight.h" +#include "qstencilmask.h" +#include "qstenciloperation.h" +#include "qstenciloperationarguments.h" +#include "qstenciltest.h" +#include "qstenciltestarguments.h" +#include "qtechnique.h" +#include "qtechniquefilter.h" +#include "qtexture.h" +#include "qtexturedata.h" +#include "qtexturegenerator.h" +#include "qtextureimage.h" +#include "qtextureimagedata.h" +#include "qtextureimagedatagenerator.h" +#include "qtexturewrapmode.h" +#include "qviewport.h" +#include "qt3drenderversion.h" +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/Qt3DRenderDepends b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/Qt3DRenderDepends new file mode 100644 index 0000000..637e91e --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/Qt3DRenderDepends @@ -0,0 +1,6 @@ +/* This file was generated by qmake with the info from /src/render/render.pro. */ +#ifdef __cplusplus /* create empty PCH in C mode */ +#include +#include +#include +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/Qt3DRenderVersion b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/Qt3DRenderVersion new file mode 100644 index 0000000..7de870c --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/Qt3DRenderVersion @@ -0,0 +1 @@ +#include "qt3drenderversion.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qabstractfunctor.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qabstractfunctor.h new file mode 100644 index 0000000..e285350 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qabstractfunctor.h @@ -0,0 +1,107 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QABSTRACTFUNCTOR_H +#define QT3DRENDER_QABSTRACTFUNCTOR_H + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +// This will generate a unique id() function per type +// <=> 1 unique function address per type +template +struct FunctorType +{ + static qintptr id() + { + // The MSVC linker can under some cases optimize all the template + // functions into a single function. The code below is there to ensure + // that the linker won't collapse all these distincts functions into one + static T *t = nullptr; + return reinterpret_cast(t); + } +}; + +template +qintptr functorTypeId() +{ + return reinterpret_cast(&FunctorType::id); +} + +#define QT3D_FUNCTOR(Class) \ + qintptr id() const override { \ + return Qt3DRender::functorTypeId(); \ + } + + +class QT3DRENDERSHARED_EXPORT QAbstractFunctor +{ +public: + QAbstractFunctor() = default; + virtual ~QAbstractFunctor(); + virtual qintptr id() const = 0; + + // TODO: Remove when moving a copy of this to Qt3DCore + template + const T *functor_cast(const QAbstractFunctor *other) const + { + if (other->id() == functorTypeId()) + return static_cast(other); + return nullptr; + } +private: + Q_DISABLE_COPY(QAbstractFunctor) +}; + +template +const T *functor_cast(const QAbstractFunctor *other) +{ + if (other->id() == functorTypeId()) + return static_cast(other); + return nullptr; +} + +} // Qt3D + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QABSTRACTFUNCTOR_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qabstractlight.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qabstractlight.h new file mode 100644 index 0000000..b5dd892 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qabstractlight.h @@ -0,0 +1,96 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QABSTRACTLIGHT_H +#define QT3DRENDER_QABSTRACTLIGHT_H + +#include +#include + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QAbstractLightPrivate; + +class QT3DRENDERSHARED_EXPORT QAbstractLight : public Qt3DCore::QComponent +{ + Q_OBJECT + Q_PROPERTY(Type type READ type) + Q_PROPERTY(QColor color READ color WRITE setColor NOTIFY colorChanged) + Q_PROPERTY(float intensity READ intensity WRITE setIntensity NOTIFY intensityChanged) + +public: + ~QAbstractLight(); + + enum Type { + PointLight = 0, + DirectionalLight, + SpotLight + }; + Q_ENUM(Type) // LCOV_EXCL_LINE + + Type type() const; + QColor color() const; + float intensity() const; + +public Q_SLOTS: + void setColor(const QColor &color); + void setIntensity(float intensity); + +protected: + explicit QAbstractLight(QAbstractLightPrivate &dd, Qt3DCore::QNode *parent = nullptr); + +Q_SIGNALS: + void colorChanged(const QColor &color); + void intensityChanged(float intensity); + +private: + Q_DECLARE_PRIVATE(QAbstractLight) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QABSTRACTLIGHT_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qabstractraycaster.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qabstractraycaster.h new file mode 100644 index 0000000..c706a7b --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qabstractraycaster.h @@ -0,0 +1,114 @@ +/**************************************************************************** +** +** Copyright (C) 2018 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QABSTRACTRAYCASTER_H +#define QT3DRENDER_QABSTRACTRAYCASTER_H + +#include +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QAbstractRayCasterPrivate; +class QLayer; + +class QT3DRENDERSHARED_EXPORT QAbstractRayCaster : public Qt3DCore::QComponent +{ + Q_OBJECT + Q_PROPERTY(RunMode runMode READ runMode WRITE setRunMode NOTIFY runModeChanged) + Q_PROPERTY(FilterMode filterMode READ filterMode WRITE setFilterMode NOTIFY filterModeChanged) + Q_PROPERTY(Hits hits READ hits NOTIFY hitsChanged) +public: + enum RunMode { + Continuous, + SingleShot + }; + Q_ENUM(RunMode) + + enum FilterMode { + AcceptAnyMatchingLayers = 0, + AcceptAllMatchingLayers, + DiscardAnyMatchingLayers, + DiscardAllMatchingLayers, + }; + Q_ENUM(FilterMode) // LOVC_EXLC_LINE + + using Hits = QVector; + + explicit QAbstractRayCaster(QNode *parent = nullptr); + ~QAbstractRayCaster(); + + RunMode runMode() const; + FilterMode filterMode() const; + Hits hits() const; + + void addLayer(QLayer *layer); + void removeLayer(QLayer *layer); + QVector layers() const; + +public Q_SLOTS: + void setRunMode(RunMode runMode); + void setFilterMode(FilterMode filterMode); + +Q_SIGNALS: + void runModeChanged(Qt3DRender::QAbstractRayCaster::RunMode runMode); + void hitsChanged(const Qt3DRender::QAbstractRayCaster::Hits &hits); + void filterModeChanged(Qt3DRender::QAbstractRayCaster::FilterMode filterMode); + +protected: + explicit QAbstractRayCaster(QAbstractRayCasterPrivate &dd, QNode *parent = nullptr); + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &change) override; + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; + +private: + Q_DECLARE_PRIVATE(QAbstractRayCaster) +}; + +} // Qt3D + +QT_END_NAMESPACE + +Q_DECLARE_METATYPE(Qt3DRender::QAbstractRayCaster::Hits) // LCOV_EXCL_LINE + +#endif // QT3DRENDER_QABSTRACTRAYCASTER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qabstracttexture.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qabstracttexture.h new file mode 100644 index 0000000..f176337 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qabstracttexture.h @@ -0,0 +1,350 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QABSTRACTTEXTURE_H +#define QT3DRENDER_QABSTRACTTEXTURE_H + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QAbstractTexturePrivate; +class QTextureWrapMode; +class QAbstractTextureImage; +class QTextureGenerator; + +typedef QSharedPointer QTextureGeneratorPtr; + +class QT3DRENDERSHARED_EXPORT QAbstractTexture : public Qt3DCore::QNode +{ + Q_OBJECT + Q_PROPERTY(Target target READ target CONSTANT) + Q_PROPERTY(TextureFormat format READ format WRITE setFormat NOTIFY formatChanged) + Q_PROPERTY(bool generateMipMaps READ generateMipMaps WRITE setGenerateMipMaps NOTIFY generateMipMapsChanged) + Q_PROPERTY(Qt3DRender::QTextureWrapMode *wrapMode READ wrapMode CONSTANT) + Q_PROPERTY(Status status READ status NOTIFY statusChanged) + Q_PROPERTY(int width READ width WRITE setWidth NOTIFY widthChanged) + Q_PROPERTY(int height READ height WRITE setHeight NOTIFY heightChanged) + Q_PROPERTY(int depth READ depth WRITE setDepth NOTIFY depthChanged) + Q_PROPERTY(Filter magnificationFilter READ magnificationFilter WRITE setMagnificationFilter NOTIFY magnificationFilterChanged) + Q_PROPERTY(Filter minificationFilter READ minificationFilter WRITE setMinificationFilter NOTIFY minificationFilterChanged) + Q_PROPERTY(float maximumAnisotropy READ maximumAnisotropy WRITE setMaximumAnisotropy NOTIFY maximumAnisotropyChanged) + Q_PROPERTY(ComparisonFunction comparisonFunction READ comparisonFunction WRITE setComparisonFunction NOTIFY comparisonFunctionChanged) + Q_PROPERTY(ComparisonMode comparisonMode READ comparisonMode WRITE setComparisonMode NOTIFY comparisonModeChanged) + Q_PROPERTY(int layers READ layers WRITE setLayers NOTIFY layersChanged) + Q_PROPERTY(int samples READ samples WRITE setSamples NOTIFY samplesChanged) + +public: + + enum Status { + None = 0, + Loading, + Ready, + Error + }; + Q_ENUM(Status) // LCOV_EXCL_LINE + + enum Target { + TargetAutomatic = 0, // Target will be determined by the Qt3D engine + Target1D = 0x0DE0, // GL_TEXTURE_1D + Target1DArray = 0x8C18, // GL_TEXTURE_1D_ARRAY + Target2D = 0x0DE1, // GL_TEXTURE_2D + Target2DArray = 0x8C1A, // GL_TEXTURE_2D_ARRAY + Target3D = 0x806F, // GL_TEXTURE_3D + TargetCubeMap = 0x8513, // GL_TEXTURE_CUBE_MAP + TargetCubeMapArray = 0x9009, // GL_TEXTURE_CUBE_MAP_ARRAY + Target2DMultisample = 0x9100, // GL_TEXTURE_2D_MULTISAMPLE + Target2DMultisampleArray = 0x9102, // GL_TEXTURE_2D_MULTISAMPLE_ARRAY + TargetRectangle = 0x84F5, // GL_TEXTURE_RECTANGLE + TargetBuffer = 0x8C2A // GL_TEXTURE_BUFFER + }; + Q_ENUM(Target) // LCOV_EXCL_LINE + + enum TextureFormat { + NoFormat = 0, // GL_NONE + Automatic = 1, // The Qt3D engine automatically determines the best format + + // Unsigned normalized formats + R8_UNorm = 0x8229, // GL_R8 + RG8_UNorm = 0x822B, // GL_RG8 + RGB8_UNorm = 0x8051, // GL_RGB8 + RGBA8_UNorm = 0x8058, // GL_RGBA8 + + R16_UNorm = 0x822A, // GL_R16 + RG16_UNorm = 0x822C, // GL_RG16 + RGB16_UNorm = 0x8054, // GL_RGB16 + RGBA16_UNorm = 0x805B, // GL_RGBA16 + + // Signed normalized formats + R8_SNorm = 0x8F94, // GL_R8_SNORM + RG8_SNorm = 0x8F95, // GL_RG8_SNORM + RGB8_SNorm = 0x8F96, // GL_RGB8_SNORM + RGBA8_SNorm = 0x8F97, // GL_RGBA8_SNORM + + R16_SNorm = 0x8F98, // GL_R16_SNORM + RG16_SNorm = 0x8F99, // GL_RG16_SNORM + RGB16_SNorm = 0x8F9A, // GL_RGB16_SNORM + RGBA16_SNorm = 0x8F9B, // GL_RGBA16_SNORM + + // Unsigned integer formats + R8U = 0x8232, // GL_R8UI + RG8U = 0x8238, // GL_RG8UI + RGB8U = 0x8D7D, // GL_RGB8UI + RGBA8U = 0x8D7C, // GL_RGBA8UI + + R16U = 0x8234, // GL_R16UI + RG16U = 0x823A, // GL_RG16UI + RGB16U = 0x8D77, // GL_RGB16UI + RGBA16U = 0x8D76, // GL_RGBA16UI + + R32U = 0x8236, // GL_R32UI + RG32U = 0x823C, // GL_RG32UI + RGB32U = 0x8D71, // GL_RGB32UI + RGBA32U = 0x8D70, // GL_RGBA32UI + + // Signed integer formats + R8I = 0x8231, // GL_R8I + RG8I = 0x8237, // GL_RG8I + RGB8I = 0x8D8F, // GL_RGB8I + RGBA8I = 0x8D8E, // GL_RGBA8I + + R16I = 0x8233, // GL_R16I + RG16I = 0x8239, // GL_RG16I + RGB16I = 0x8D89, // GL_RGB16I + RGBA16I = 0x8D88, // GL_RGBA16I + + R32I = 0x8235, // GL_R32I + RG32I = 0x823B, // GL_RG32I + RGB32I = 0x8D83, // GL_RGB32I + RGBA32I = 0x8D82, // GL_RGBA32I + + // Floating point formats + R16F = 0x822D, // GL_R16F + RG16F = 0x822F, // GL_RG16F + RGB16F = 0x881B, // GL_RGB16F + RGBA16F = 0x881A, // GL_RGBA16F + + R32F = 0x822E, // GL_R32F + RG32F = 0x8230, // GL_RG32F + RGB32F = 0x8815, // GL_RGB32F + RGBA32F = 0x8814, // GL_RGBA32F + + // Packed formats + RGB9E5 = 0x8C3D, // GL_RGB9_E5 + RG11B10F = 0x8C3A, // GL_R11F_G11F_B10F + RG3B2 = 0x2A10, // GL_R3_G3_B2 + R5G6B5 = 0x8D62, // GL_RGB565 + RGB5A1 = 0x8057, // GL_RGB5_A1 + RGBA4 = 0x8056, // GL_RGBA4 + RGB10A2 = 0x906F, // GL_RGB10_A2UI + + // Depth formats + D16 = 0x81A5, // GL_DEPTH_COMPONENT16 + D24 = 0x81A6, // GL_DEPTH_COMPONENT24 + D24S8 = 0x88F0, // GL_DEPTH24_STENCIL8 + D32 = 0x81A7, // GL_DEPTH_COMPONENT32 + D32F = 0x8CAC, // GL_DEPTH_COMPONENT32F + D32FS8X24 = 0x8CAD, // GL_DEPTH32F_STENCIL8 + + // Compressed formats + RGB_DXT1 = 0x83F0, // GL_COMPRESSED_RGB_S3TC_DXT1_EXT + RGBA_DXT1 = 0x83F1, // GL_COMPRESSED_RGBA_S3TC_DXT1_EXT + RGBA_DXT3 = 0x83F2, // GL_COMPRESSED_RGBA_S3TC_DXT3_EXT + RGBA_DXT5 = 0x83F3, // GL_COMPRESSED_RGBA_S3TC_DXT5_EXT + R_ATI1N_UNorm = 0x8DBB, // GL_COMPRESSED_RED_RGTC1 + R_ATI1N_SNorm = 0x8DBC, // GL_COMPRESSED_SIGNED_RED_RGTC1 + RG_ATI2N_UNorm = 0x8DBD, // GL_COMPRESSED_RG_RGTC2 + RG_ATI2N_SNorm = 0x8DBE, // GL_COMPRESSED_SIGNED_RG_RGTC2 + RGB_BP_UNSIGNED_FLOAT = 0x8E8F, // GL_COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT_ARB + RGB_BP_SIGNED_FLOAT = 0x8E8E, // GL_COMPRESSED_RGB_BPTC_SIGNED_FLOAT_ARB + RGB_BP_UNorm = 0x8E8C, // GL_COMPRESSED_RGBA_BPTC_UNORM_ARB + R11_EAC_UNorm = 0x9270, // GL_COMPRESSED_R11_EAC + R11_EAC_SNorm = 0x9271, // GL_COMPRESSED_SIGNED_R11_EAC + RG11_EAC_UNorm = 0x9272, // GL_COMPRESSED_RG11_EAC + RG11_EAC_SNorm = 0x9273, // GL_COMPRESSED_SIGNED_RG11_EAC + RGB8_ETC2 = 0x9274, // GL_COMPRESSED_RGB8_ETC2 + SRGB8_ETC2 = 0x9275, // GL_COMPRESSED_SRGB8_ETC2 + RGB8_PunchThrough_Alpha1_ETC2 = 0x9276, // GL_COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2 + SRGB8_PunchThrough_Alpha1_ETC2 = 0x9277, // GL_COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2 + RGBA8_ETC2_EAC = 0x9278, // GL_COMPRESSED_RGBA8_ETC2_EAC + SRGB8_Alpha8_ETC2_EAC = 0x9279, // GL_COMPRESSED_SRGB8_ALPHA8_ETC2_EAC + RGB8_ETC1 = 0x8D64, // GL_ETC1_RGB8_OES + + // sRGB formats + SRGB8 = 0x8C41, // GL_SRGB8 + SRGB8_Alpha8 = 0x8C43, // GL_SRGB8_ALPHA8 + SRGB_DXT1 = 0x8C4C, // GL_COMPRESSED_SRGB_S3TC_DXT1_EXT + SRGB_Alpha_DXT1 = 0x8C4D, // GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT + SRGB_Alpha_DXT3 = 0x8C4E, // GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT + SRGB_Alpha_DXT5 = 0x8C4F, // GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT + SRGB_BP_UNorm = 0x8E8D, // GL_COMPRESSED_SRGB_ALPHA_BPTC_UNORM_ARB + + // ES 2 formats + DepthFormat = 0x1902, // GL_DEPTH_COMPONENT + AlphaFormat = 0x1906, // GL_ALPHA + RGBFormat = 0x1907, // GL_RGB + RGBAFormat = 0x1908, // GL_RGBA + LuminanceFormat = 0x1909, // GL_LUMINANCE + LuminanceAlphaFormat = 0x190A + }; + Q_ENUM(TextureFormat) // LCOV_EXCL_LINE + + enum Filter { + Nearest = 0x2600, // GL_NEAREST + Linear = 0x2601, // GL_LINEAR + NearestMipMapNearest = 0x2700, // GL_NEAREST_MIPMAP_NEAREST + NearestMipMapLinear = 0x2702, // GL_NEAREST_MIPMAP_LINEAR + LinearMipMapNearest = 0x2701, // GL_LINEAR_MIPMAP_NEAREST + LinearMipMapLinear = 0x2703 // GL_LINEAR_MIPMAP_LINEAR + }; + Q_ENUM(Filter) // LCOV_EXCL_LINE + + enum CubeMapFace { + CubeMapPositiveX = 0x8515, // GL_TEXTURE_CUBE_MAP_POSITIVE_X + CubeMapNegativeX = 0x8516, // GL_TEXTURE_CUBE_MAP_NEGATIVE_X + CubeMapPositiveY = 0x8517, // GL_TEXTURE_CUBE_MAP_POSITIVE_Y + CubeMapNegativeY = 0x8518, // GL_TEXTURE_CUBE_MAP_NEGATIVE_Y + CubeMapPositiveZ = 0x8519, // GL_TEXTURE_CUBE_MAP_POSITIVE_Z + CubeMapNegativeZ = 0x851A, // GL_TEXTURE_CUBE_MAP_NEGATIVE_Z + AllFaces + }; + Q_ENUM(CubeMapFace) // LCOV_EXCL_LINE + + enum ComparisonFunction { + CompareLessEqual = 0x0203, // GL_LEQUAL + CompareGreaterEqual = 0x0206, // GL_GEQUAL + CompareLess = 0x0201, // GL_LESS + CompareGreater = 0x0204, // GL_GREATER + CompareEqual = 0x0202, // GL_EQUAL + CommpareNotEqual = 0x0205, // GL_NOTEQUAL + CompareAlways = 0x0207, // GL_ALWAYS + CompareNever = 0x0200 // GL_NEVER + }; + Q_ENUM(ComparisonFunction) // LCOV_EXCL_LINE + + enum ComparisonMode { + CompareRefToTexture = 0x884E, // GL_COMPARE_REF_TO_TEXTURE + CompareNone = 0x0000 // GL_NONE + }; + Q_ENUM(ComparisonMode) // LCOV_EXCL_LINE + + ~QAbstractTexture(); + + Target target() const; + + TextureFormat format() const; + bool generateMipMaps() const; + + Status status() const; + + void addTextureImage(QAbstractTextureImage *textureImage); + void removeTextureImage(QAbstractTextureImage *textureImage); + QVector textureImages() const; + + // sampler data - in the future proxy to a Sampler helper + void setWrapMode(const QTextureWrapMode &wrapMode); + QTextureWrapMode *wrapMode(); + + void setSize(int width, int height=1, int depth=1); + + Filter minificationFilter() const; + Filter magnificationFilter() const; + float maximumAnisotropy() const; + ComparisonFunction comparisonFunction() const; + ComparisonMode comparisonMode() const; + int width() const; + int height() const; + int depth() const; + int layers() const; + int samples() const; + QTextureGeneratorPtr dataGenerator() const; + +public Q_SLOTS: + void setFormat(TextureFormat format); + void setGenerateMipMaps(bool gen); + void setWidth(int width); + void setHeight(int height); + void setDepth(int depth); + void setMinificationFilter(Filter f); + void setMagnificationFilter(Filter f); + void setMaximumAnisotropy(float anisotropy); + void setComparisonFunction(ComparisonFunction function); + void setComparisonMode(ComparisonMode mode); + void setLayers(int layers); + void setSamples(int samples); + +Q_SIGNALS: + void formatChanged(TextureFormat format); + void statusChanged(Status status); + void generateMipMapsChanged(bool generateMipMaps); + void widthChanged(int width); + void heightChanged(int height); + void depthChanged(int depth); + void magnificationFilterChanged(Filter magnificationFilter); + void minificationFilterChanged(Filter minificationFilter); + void maximumAnisotropyChanged(float maximumAnisotropy); + void comparisonFunctionChanged(ComparisonFunction comparisonFunction); + void comparisonModeChanged(ComparisonMode comparisonMode); + void layersChanged(int layers); + void samplesChanged(int samples); + +protected: + explicit QAbstractTexture(Qt3DCore::QNode *parent = nullptr); + explicit QAbstractTexture(Target target, Qt3DCore::QNode *parent = nullptr); + explicit QAbstractTexture(QAbstractTexturePrivate &dd, Qt3DCore::QNode *parent = nullptr); + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &change) override; + + void setStatus(Status status); + +private: + Q_DECLARE_PRIVATE(QAbstractTexture) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +Q_DECLARE_METATYPE(Qt3DRender::QAbstractTexture *) // LCOV_EXCL_LINE + +#endif // QT3DRENDER_QABSTRACTTEXTURE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qabstracttextureimage.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qabstracttextureimage.h new file mode 100644 index 0000000..7e840fd --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qabstracttextureimage.h @@ -0,0 +1,90 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QABSTRACTTEXTUREIMAGE_H +#define QT3DRENDER_QABSTRACTTEXTUREIMAGE_H + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QAbstractTextureImagePrivate; + +class QT3DRENDERSHARED_EXPORT QAbstractTextureImage : public Qt3DCore::QNode +{ + Q_OBJECT + Q_PROPERTY(int mipLevel READ mipLevel WRITE setMipLevel NOTIFY mipLevelChanged) + Q_PROPERTY(int layer READ layer WRITE setLayer NOTIFY layerChanged) + Q_PROPERTY(Qt3DRender::QAbstractTexture::CubeMapFace face READ face WRITE setFace NOTIFY faceChanged) +public: + explicit QAbstractTextureImage(Qt3DCore::QNode *parent = nullptr); + virtual ~QAbstractTextureImage(); + + int mipLevel() const; + int layer() const; + QAbstractTexture::CubeMapFace face() const; + +public Q_SLOTS: + void setMipLevel(int level); + void setLayer(int layer); + void setFace(QAbstractTexture::CubeMapFace face); + +Q_SIGNALS: + void mipLevelChanged(int mipLevel); + void layerChanged(int layer); + void faceChanged(QAbstractTexture::CubeMapFace face); + +protected: + void notifyDataGeneratorChanged(); + virtual QTextureImageDataGeneratorPtr dataGenerator() const = 0; + explicit QAbstractTextureImage(QAbstractTextureImagePrivate &dd, Qt3DCore::QNode *parent = nullptr); + +private: + Q_DECLARE_PRIVATE(QAbstractTextureImage) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QABSTRACTTEXTUREIMAGE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qalphacoverage.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qalphacoverage.h new file mode 100644 index 0000000..53636d3 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qalphacoverage.h @@ -0,0 +1,67 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Copyright (C) 2016 The Qt Company Ltd and/or its subsidiary(-ies). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QALPHACOVERAGE_H +#define QT3DRENDER_QALPHACOVERAGE_H + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QAlphaCoveragePrivate; + +class QT3DRENDERSHARED_EXPORT QAlphaCoverage : public QRenderState +{ + Q_OBJECT +public: + explicit QAlphaCoverage(Qt3DCore::QNode *parent = nullptr); + ~QAlphaCoverage(); + +private: + Q_DECLARE_PRIVATE(QAlphaCoverage) +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QALPHACOVERAGE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qalphatest.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qalphatest.h new file mode 100644 index 0000000..8545d20 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qalphatest.h @@ -0,0 +1,94 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Copyright (C) 2016 The Qt Company Ltd and/or its subsidiary(-ies). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QALPHATEST_H +#define QT3DRENDER_QALPHATEST_H + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QAlphaTestPrivate; + +class QT3DRENDERSHARED_EXPORT QAlphaTest : public QRenderState +{ + Q_OBJECT + Q_PROPERTY(AlphaFunction alphaFunction READ alphaFunction WRITE setAlphaFunction NOTIFY alphaFunctionChanged) + Q_PROPERTY(float referenceValue READ referenceValue WRITE setReferenceValue NOTIFY referenceValueChanged) +public: + + enum AlphaFunction { + Never = 0x0200, + Always = 0x0207, + Less = 0x0201, + LessOrEqual = 0x0203, + Equal = 0x0202, + GreaterOrEqual = 0x0206, + Greater = 0x0204, + NotEqual = 0x0205 + }; + Q_ENUM(AlphaFunction) // LCOV_EXCL_LINE + + explicit QAlphaTest(Qt3DCore::QNode *parent = nullptr); + ~QAlphaTest(); + + AlphaFunction alphaFunction() const; + float referenceValue() const; + +public Q_SLOTS: + void setAlphaFunction(AlphaFunction alphaFunction); + void setReferenceValue(float referenceValue); + +Q_SIGNALS: + void alphaFunctionChanged(AlphaFunction alphaFunction); + void referenceValueChanged(float referenceValue); + +private: + Q_DECLARE_PRIVATE(QAlphaTest) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QALPHATEST_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qattribute.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qattribute.h new file mode 100644 index 0000000..13a0319 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qattribute.h @@ -0,0 +1,160 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QATTRIBUTE_H +#define QT3DRENDER_QATTRIBUTE_H + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QBuffer; +class QAttributePrivate; + +typedef QSharedPointer QBufferPtr; + +class QT3DRENDERSHARED_EXPORT QAttribute : public Qt3DCore::QNode +{ + Q_OBJECT + Q_PROPERTY(Qt3DRender::QBuffer *buffer READ buffer WRITE setBuffer NOTIFY bufferChanged) + Q_PROPERTY(QString name READ name WRITE setName NOTIFY nameChanged) + Q_PROPERTY(VertexBaseType vertexBaseType READ vertexBaseType WRITE setVertexBaseType NOTIFY vertexBaseTypeChanged) + Q_PROPERTY(uint vertexSize READ vertexSize WRITE setVertexSize NOTIFY vertexSizeChanged) + Q_PROPERTY(uint count READ count WRITE setCount NOTIFY countChanged) + Q_PROPERTY(uint byteStride READ byteStride WRITE setByteStride NOTIFY byteStrideChanged) + Q_PROPERTY(uint byteOffset READ byteOffset WRITE setByteOffset NOTIFY byteOffsetChanged) + Q_PROPERTY(uint divisor READ divisor WRITE setDivisor NOTIFY divisorChanged) + Q_PROPERTY(AttributeType attributeType READ attributeType WRITE setAttributeType NOTIFY attributeTypeChanged) + Q_PROPERTY(QString defaultPositionAttributeName READ defaultPositionAttributeName CONSTANT) + Q_PROPERTY(QString defaultNormalAttributeName READ defaultNormalAttributeName CONSTANT) + Q_PROPERTY(QString defaultColorAttributeName READ defaultColorAttributeName CONSTANT) + Q_PROPERTY(QString defaultTextureCoordinateAttributeName READ defaultTextureCoordinateAttributeName CONSTANT) + Q_PROPERTY(QString defaultTextureCoordinate1AttributeName READ defaultTextureCoordinate1AttributeName CONSTANT REVISION 11) + Q_PROPERTY(QString defaultTextureCoordinate2AttributeName READ defaultTextureCoordinate2AttributeName CONSTANT REVISION 11) + Q_PROPERTY(QString defaultTangentAttributeName READ defaultTangentAttributeName CONSTANT) + Q_PROPERTY(QString defaultJointIndicesAttributeName READ defaultJointIndicesAttributeName CONSTANT REVISION 10) + Q_PROPERTY(QString defaultJointWeightsAttributeName READ defaultJointWeightsAttributeName CONSTANT REVISION 10) + +public: + enum AttributeType { + VertexAttribute, + IndexAttribute, + DrawIndirectAttribute + }; + + Q_ENUM(AttributeType) // LCOV_EXCL_LINE + + enum VertexBaseType { + Byte = 0, + UnsignedByte, + Short, + UnsignedShort, + Int, + UnsignedInt, + HalfFloat, + Float, + Double + }; + Q_ENUM(VertexBaseType) // LCOV_EXCL_LINE + + explicit QAttribute(QNode *parent = nullptr); + explicit QAttribute(QBuffer *buf, VertexBaseType vertexBaseType, uint vertexSize, uint count, uint offset = 0, uint stride = 0, QNode *parent = nullptr); + explicit QAttribute(QBuffer *buf, const QString &name, VertexBaseType vertexBaseType, uint vertexSize, uint count, uint offset = 0, uint stride = 0, QNode *parent = nullptr); + ~QAttribute(); + + QBuffer *buffer() const; + QString name() const; + VertexBaseType vertexBaseType() const; + uint vertexSize() const; + uint count() const; + uint byteStride() const; + uint byteOffset() const; + uint divisor() const; + AttributeType attributeType() const; + + Q_INVOKABLE static QString defaultPositionAttributeName(); + Q_INVOKABLE static QString defaultNormalAttributeName(); + Q_INVOKABLE static QString defaultColorAttributeName(); + Q_INVOKABLE static QString defaultTextureCoordinateAttributeName(); + Q_INVOKABLE static QString defaultTangentAttributeName(); + static QString defaultJointIndicesAttributeName(); + static QString defaultJointWeightsAttributeName(); + static QString defaultTextureCoordinate1AttributeName(); + static QString defaultTextureCoordinate2AttributeName(); + +public Q_SLOTS: + void setBuffer(QBuffer *buffer); + void setName(const QString &name); + void setVertexBaseType(VertexBaseType type); + void setVertexSize(uint size); + QT_DEPRECATED void setDataType(VertexBaseType type); + QT_DEPRECATED void setDataSize(uint size); + void setCount(uint count); + void setByteStride(uint byteStride); + void setByteOffset(uint byteOffset); + void setDivisor(uint divisor); + void setAttributeType(AttributeType attributeType); + +Q_SIGNALS: + void bufferChanged(QBuffer *buffer); + void nameChanged(const QString &name); + void vertexBaseTypeChanged(VertexBaseType vertexBaseType); + void vertexSizeChanged(uint vertexSize); + void dataTypeChanged(VertexBaseType vertexBaseType); + void dataSizeChanged(uint vertexSize); + void countChanged(uint count); + void byteStrideChanged(uint byteStride); + void byteOffsetChanged(uint byteOffset); + void divisorChanged(uint divisor); + void attributeTypeChanged(AttributeType attributeType); + +private: + Q_DECLARE_PRIVATE(QAttribute) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +} // Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QATTRIBUTE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qblendequation.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qblendequation.h new file mode 100644 index 0000000..d084113 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qblendequation.h @@ -0,0 +1,88 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Copyright (C) 2016 The Qt Company Ltd and/or its subsidiary(-ies). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QBLENDEQUATION_H +#define QT3DRENDER_QBLENDEQUATION_H + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QBlendEquationPrivate; + +class QT3DRENDERSHARED_EXPORT QBlendEquation : public QRenderState +{ + Q_OBJECT + Q_PROPERTY(BlendFunction blendFunction READ blendFunction WRITE setBlendFunction NOTIFY blendFunctionChanged) +public: + + enum BlendFunction + { + Add = 0x8006, + Subtract = 0x800A, + ReverseSubtract = 0x800B, + Min = 0x8007, + Max = 0x8008 + }; + Q_ENUM(BlendFunction) // LCOV_EXCL_LINE + + explicit QBlendEquation(Qt3DCore::QNode *parent = nullptr); + ~QBlendEquation(); + + BlendFunction blendFunction() const; + +public Q_SLOTS: + void setBlendFunction(BlendFunction blendFunction); + +Q_SIGNALS: + void blendFunctionChanged(BlendFunction blendFunction); + +private: + Q_DECLARE_PRIVATE(QBlendEquation) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QBLENDEQUATION_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qblendequationarguments.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qblendequationarguments.h new file mode 100644 index 0000000..1b2e039 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qblendequationarguments.h @@ -0,0 +1,127 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Copyright (C) 2016 The Qt Company Ltd and/or its subsidiary(-ies). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QBLENDEQUATIONARGUMENTS_H +#define QT3DRENDER_QBLENDEQUATIONARGUMENTS_H + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QBlendEquationArgumentsPrivate; + +class QT3DRENDERSHARED_EXPORT QBlendEquationArguments : public QRenderState +{ + Q_OBJECT + Q_PROPERTY(Blending sourceRgb READ sourceRgb WRITE setSourceRgb NOTIFY sourceRgbChanged) + Q_PROPERTY(Blending sourceAlpha READ sourceAlpha WRITE setSourceAlpha NOTIFY sourceAlphaChanged) + Q_PROPERTY(Blending destinationRgb READ destinationRgb WRITE setDestinationRgb NOTIFY destinationRgbChanged) + Q_PROPERTY(Blending destinationAlpha READ destinationAlpha WRITE setDestinationAlpha NOTIFY destinationAlphaChanged) + Q_PROPERTY(int bufferIndex READ bufferIndex WRITE setBufferIndex NOTIFY bufferIndexChanged) + +public: + + enum Blending + { + Zero = 0, + One = 1, + SourceColor = 0x0300, + SourceAlpha = 0x0302, + Source1Alpha, + Source1Color, + DestinationColor = 0x0306, + DestinationAlpha = 0x0304, + SourceAlphaSaturate = 0x0308, + ConstantColor = 0x8001, + ConstantAlpha = 0x8003, + OneMinusSourceColor = 0x0301, + OneMinusSourceAlpha = 0x0303, + OneMinusDestinationAlpha = 0x0305, + OneMinusDestinationColor = 0x0307, + OneMinusConstantColor = 0x8002, + OneMinusConstantAlpha = 0x8004, + OneMinusSource1Alpha, + OneMinusSource1Color, + OneMinusSource1Color0 = OneMinusSource1Color // ### Qt 6: Remove + }; + Q_ENUM(Blending) // LCOV_EXCL_LINE + + explicit QBlendEquationArguments(Qt3DCore::QNode *parent = nullptr); + ~QBlendEquationArguments(); + + Blending sourceRgb() const; + Blending destinationRgb() const; + Blending sourceAlpha() const; + Blending destinationAlpha() const; + int bufferIndex() const; + +public Q_SLOTS: + void setSourceRgb(Blending sourceRgb); + void setDestinationRgb(Blending destinationRgb); + void setSourceAlpha(Blending sourceAlpha); + void setDestinationAlpha(Blending destinationAlpha); + void setSourceRgba(Blending sourceRgba); + void setDestinationRgba(Blending destinationRgba); + void setBufferIndex(int index); + +Q_SIGNALS: + void sourceRgbChanged(Blending sourceRgb); + void sourceAlphaChanged(Blending sourceAlpha); + void destinationRgbChanged(Blending destinationRgb); + void destinationAlphaChanged(Blending destinationAlpha); + void sourceRgbaChanged(Blending sourceRgba); + void destinationRgbaChanged(Blending destinationRgba); + void bufferIndexChanged(int index); + +protected: + explicit QBlendEquationArguments(QBlendEquationArgumentsPrivate &dd, Qt3DCore::QNode *parent = nullptr); + +private: + Q_DECLARE_PRIVATE(QBlendEquationArguments) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QBLENDEQUATIONARGUMENTS_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qblitframebuffer.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qblitframebuffer.h new file mode 100644 index 0000000..77b74ab --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qblitframebuffer.h @@ -0,0 +1,111 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QBLITFRAMEBUFFER_H +#define QT3DRENDER_QBLITFRAMEBUFFER_H + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QBlitFramebufferPrivate; +class QRenderTarget; + +class QT3DRENDERSHARED_EXPORT QBlitFramebuffer : public QFrameGraphNode +{ + Q_OBJECT + Q_PROPERTY(Qt3DRender::QRenderTarget *source READ source WRITE setSource NOTIFY sourceChanged) + Q_PROPERTY(Qt3DRender::QRenderTarget *destination READ destination WRITE setDestination NOTIFY destinationChanged) + Q_PROPERTY(QRectF sourceRect READ sourceRect WRITE setSourceRect NOTIFY sourceRectChanged) + Q_PROPERTY(QRectF destinationRect READ destinationRect WRITE setDestinationRect NOTIFY destinationRectChanged) + Q_PROPERTY(Qt3DRender::QRenderTargetOutput::AttachmentPoint sourceAttachmentPoint READ sourceAttachmentPoint WRITE setSourceAttachmentPoint NOTIFY sourceAttachmentPointChanged) + Q_PROPERTY(Qt3DRender::QRenderTargetOutput::AttachmentPoint destinationAttachmentPoint READ destinationAttachmentPoint WRITE setDestinationAttachmentPoint NOTIFY destinationAttachmentPointChanged) + Q_PROPERTY(InterpolationMethod interpolationMethod READ interpolationMethod WRITE setInterpolationMethod NOTIFY interpolationMethodChanged) +public: + enum InterpolationMethod { + Nearest = 0, + Linear, + }; + Q_ENUM(InterpolationMethod) // LCOV_EXCL_LINE + + explicit QBlitFramebuffer(Qt3DCore::QNode *parent = nullptr); + ~QBlitFramebuffer(); + + QRenderTarget *source() const; + QRenderTarget *destination() const; + QRectF sourceRect() const; + QRectF destinationRect() const; + Qt3DRender::QRenderTargetOutput::AttachmentPoint sourceAttachmentPoint() const; + Qt3DRender::QRenderTargetOutput::AttachmentPoint destinationAttachmentPoint() const; + InterpolationMethod interpolationMethod() const; + + void setSource(QRenderTarget *source); + void setDestination(QRenderTarget *destination); + void setSourceRect(const QRectF &sourceRect); + void setDestinationRect(const QRectF &destinationRect); + void setSourceAttachmentPoint(Qt3DRender::QRenderTargetOutput::AttachmentPoint sourceAttachmentPoint); + void setDestinationAttachmentPoint(Qt3DRender::QRenderTargetOutput::AttachmentPoint destinationAttachmentPoint); + void setInterpolationMethod(InterpolationMethod interpolationMethod); + +Q_SIGNALS: + void sourceChanged(); + void destinationChanged(); + void sourceRectChanged(); + void destinationRectChanged(); + void sourceAttachmentPointChanged(); + void destinationAttachmentPointChanged(); + void interpolationMethodChanged(); + +protected: + explicit QBlitFramebuffer(QBlitFramebufferPrivate &dd, Qt3DCore::QNode *parent = nullptr); + +private: + Q_DECLARE_PRIVATE(QBlitFramebuffer) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QBLITFRAMEBUFFER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qbuffer.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qbuffer.h new file mode 100644 index 0000000..f04c98a --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qbuffer.h @@ -0,0 +1,141 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QBUFFER_H +#define QT3DRENDER_QBUFFER_H + +#include +#include +#include + + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QBufferPrivate; +class QBufferDataGenerator; +typedef QSharedPointer QBufferDataGeneratorPtr; + +class QT3DRENDERSHARED_EXPORT QBuffer : public Qt3DCore::QNode +{ + Q_OBJECT + Q_PROPERTY(BufferType type READ type WRITE setType NOTIFY typeChanged) + Q_PROPERTY(UsageType usage READ usage WRITE setUsage NOTIFY usageChanged) + Q_PROPERTY(bool syncData READ isSyncData WRITE setSyncData NOTIFY syncDataChanged) + Q_PROPERTY(AccessType accessType READ accessType WRITE setAccessType NOTIFY accessTypeChanged REVISION 9) + +public: + enum BufferType + { + VertexBuffer = 0x8892, // GL_ARRAY_BUFFER + IndexBuffer = 0x8893, // GL_ELEMENT_ARRAY_BUFFER + PixelPackBuffer = 0x88EB, // GL_PIXEL_PACK_BUFFER + PixelUnpackBuffer = 0x88EC, // GL_PIXEL_UNPACK_BUFFER + UniformBuffer = 0x8A11, // GL_UNIFORM_BUFFER + ShaderStorageBuffer = 0x90D2, // GL_SHADER_STORAGE_BUFFER + DrawIndirectBuffer = 0x8F3F // GL_DRAW_INDIRECT_BUFFER + }; + Q_ENUM(BufferType) // LCOV_EXCL_LINE + + enum UsageType + { + StreamDraw = 0x88E0, // GL_STREAM_DRAW + StreamRead = 0x88E1, // GL_STREAM_READ + StreamCopy = 0x88E2, // GL_STREAM_COPY + StaticDraw = 0x88E4, // GL_STATIC_DRAW + StaticRead = 0x88E5, // GL_STATIC_READ + StaticCopy = 0x88E6, // GL_STATIC_COPY + DynamicDraw = 0x88E8, // GL_DYNAMIC_DRAW + DynamicRead = 0x88E9, // GL_DYNAMIC_READ + DynamicCopy = 0x88EA // GL_DYNAMIC_COPY + }; + Q_ENUM(UsageType) // LCOV_EXCL_LINE + + enum AccessType { + Write = 0x1, + Read = 0x2, + ReadWrite = Write|Read + }; + Q_ENUM(AccessType) // LCOV_EXCL_LINE + + explicit QBuffer(Qt3DCore::QNode *parent = nullptr); + QT_DEPRECATED explicit QBuffer(BufferType ty, Qt3DCore::QNode *parent = nullptr); + ~QBuffer(); + + UsageType usage() const; + QT_DEPRECATED BufferType type() const; + bool isSyncData() const; + AccessType accessType() const; + + void setData(const QByteArray &bytes); + QByteArray data() const; + + void setDataGenerator(const QBufferDataGeneratorPtr &functor); + QBufferDataGeneratorPtr dataGenerator() const; + + Q_INVOKABLE void updateData(int offset, const QByteArray &bytes); + +public Q_SLOTS: + QT_DEPRECATED void setType(BufferType type); + void setUsage(UsageType usage); + void setSyncData(bool syncData); + void setAccessType(AccessType access); + +protected: + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &change) override; + +Q_SIGNALS: + void dataChanged(const QByteArray &bytes); + void typeChanged(BufferType type); + void usageChanged(UsageType usage); + void syncDataChanged(bool syncData); + void accessTypeChanged(AccessType access); + void dataAvailable(); + +private: + Q_DECLARE_PRIVATE(QBuffer) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QBUFFER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qbuffercapture.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qbuffercapture.h new file mode 100644 index 0000000..ab8c7d2 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qbuffercapture.h @@ -0,0 +1,69 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Juan José Casafranca +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QBUFFERCAPTURE_H +#define QT3DRENDER_QBUFFERCAPTURE_H + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender +{ + +class QBufferCapturePrivate; + +class QT3DRENDERSHARED_EXPORT QBufferCapture : public QFrameGraphNode +{ + Q_OBJECT +public: + explicit QBufferCapture(Qt3DCore::QNode *parent = nullptr); + ~QBufferCapture(); + +private: + Q_DECLARE_PRIVATE(QBufferCapture) +}; + +} //Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QBUFFERCAPTURE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qbufferdatagenerator.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qbufferdatagenerator.h new file mode 100644 index 0000000..004eb26 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qbufferdatagenerator.h @@ -0,0 +1,68 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QBUFFERDATAGENERATOR +#define QT3DRENDER_QBUFFERDATAGENERATOR + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QT3DRENDERSHARED_EXPORT QBufferDataGenerator : public QAbstractFunctor +{ +public: + virtual ~QBufferDataGenerator() {} + virtual QByteArray operator()() = 0; + virtual bool operator ==(const QBufferDataGenerator &other) const = 0; +}; + +typedef QSharedPointer QBufferDataGeneratorPtr; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +Q_DECLARE_METATYPE(Qt3DRender::QBufferDataGeneratorPtr) // LCOV_EXCL_LINE + +#endif // QT3DRENDER_QBUFFERDATAGENERATOR + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qcamera.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qcamera.h new file mode 100644 index 0000000..e316157 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qcamera.h @@ -0,0 +1,184 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_CAMERA_H +#define QT3DRENDER_CAMERA_H + +#include +#include +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DCore { +class QEntity; +class QTransform; +} + +namespace Qt3DRender { + +class QCameraPrivate; + +class QT3DRENDERSHARED_EXPORT QCamera : public Qt3DCore::QEntity +{ + Q_OBJECT + // CameraLens + Q_PROPERTY(Qt3DRender::QCameraLens::ProjectionType projectionType READ projectionType WRITE setProjectionType NOTIFY projectionTypeChanged) + Q_PROPERTY(float nearPlane READ nearPlane WRITE setNearPlane NOTIFY nearPlaneChanged) + Q_PROPERTY(float farPlane READ farPlane WRITE setFarPlane NOTIFY farPlaneChanged) + Q_PROPERTY(float fieldOfView READ fieldOfView WRITE setFieldOfView NOTIFY fieldOfViewChanged) + Q_PROPERTY(float aspectRatio READ aspectRatio WRITE setAspectRatio NOTIFY aspectRatioChanged) + Q_PROPERTY(float left READ left WRITE setLeft NOTIFY leftChanged) + Q_PROPERTY(float right READ right WRITE setRight NOTIFY rightChanged) + Q_PROPERTY(float bottom READ bottom WRITE setBottom NOTIFY bottomChanged) + Q_PROPERTY(float top READ top WRITE setTop NOTIFY topChanged) + Q_PROPERTY(QMatrix4x4 projectionMatrix READ projectionMatrix WRITE setProjectionMatrix NOTIFY projectionMatrixChanged) + Q_PROPERTY(float exposure READ exposure WRITE setExposure NOTIFY exposureChanged REVISION 9) + // LookAt + Q_PROPERTY(QVector3D position READ position WRITE setPosition NOTIFY positionChanged) + Q_PROPERTY(QVector3D upVector READ upVector WRITE setUpVector NOTIFY upVectorChanged) + Q_PROPERTY(QVector3D viewCenter READ viewCenter WRITE setViewCenter NOTIFY viewCenterChanged) + Q_PROPERTY(QVector3D viewVector READ viewVector NOTIFY viewVectorChanged) + Q_PROPERTY(QMatrix4x4 viewMatrix READ viewMatrix NOTIFY viewMatrixChanged) + +public: + explicit QCamera(QNode *parent = nullptr); + ~QCamera(); + + enum CameraTranslationOption { + TranslateViewCenter, + DontTranslateViewCenter + }; + Q_ENUM(CameraTranslationOption) // LCOV_EXCL_LINE + + QCameraLens *lens() const; + Qt3DCore::QTransform *transform() const; + + Q_INVOKABLE QQuaternion tiltRotation(float angle) const; + Q_INVOKABLE QQuaternion panRotation(float angle) const; + Q_INVOKABLE QQuaternion rollRotation(float angle) const; + Q_INVOKABLE QQuaternion rotation(float angle, const QVector3D &axis) const; + + // Translate relative to camera orientation axes + Q_INVOKABLE void translate(const QVector3D& vLocal, CameraTranslationOption option = TranslateViewCenter); + + // Translate relative to world axes + Q_INVOKABLE void translateWorld(const QVector3D& vWorld, CameraTranslationOption option = TranslateViewCenter); + + Q_INVOKABLE void tilt(float angle); + Q_INVOKABLE void pan(float angle); + Q_INVOKABLE void pan(float angle, const QVector3D &axis); + Q_INVOKABLE void roll(float angle); + + Q_INVOKABLE void tiltAboutViewCenter(float angle); + Q_INVOKABLE void panAboutViewCenter(float angle); + Q_INVOKABLE void panAboutViewCenter(float angle, const QVector3D &axis); + Q_INVOKABLE void rollAboutViewCenter(float angle); + + Q_INVOKABLE void rotate(const QQuaternion& q); + Q_INVOKABLE void rotateAboutViewCenter(const QQuaternion& q); + + QCameraLens::ProjectionType projectionType() const; + float nearPlane() const; + float farPlane() const; + float fieldOfView() const; + float aspectRatio() const; + float left() const; + float right() const; + float bottom() const; + float top() const; + QMatrix4x4 projectionMatrix() const; + float exposure() const; + QVector3D position() const; + QVector3D upVector() const; + QVector3D viewCenter() const; + QVector3D viewVector() const; + QMatrix4x4 viewMatrix() const; + +public Q_SLOTS: + void setProjectionType(QCameraLens::ProjectionType type); + void setNearPlane(float nearPlane); + void setFarPlane(float farPlane); + void setFieldOfView(float fieldOfView); + void setAspectRatio(float aspectRatio); + void setLeft(float left); + void setRight(float right); + void setBottom(float bottom); + void setTop(float top); + void setProjectionMatrix(const QMatrix4x4 &projectionMatrix); + void setExposure(float exposure); + void setPosition(const QVector3D &position); + void setUpVector(const QVector3D &upVector); + void setViewCenter(const QVector3D &viewCenter); + + void viewAll(); + void viewSphere(const QVector3D ¢er, float radius); + void viewEntity(Qt3DCore::QEntity *entity); + +Q_SIGNALS: + void projectionTypeChanged(QCameraLens::ProjectionType projectionType); + void nearPlaneChanged(float nearPlane); + void farPlaneChanged(float farPlane); + void fieldOfViewChanged(float fieldOfView); + void aspectRatioChanged(float aspectRatio); + void leftChanged(float left); + void rightChanged(float right); + void bottomChanged(float bottom); + void topChanged(float top); + void projectionMatrixChanged(const QMatrix4x4 &projectionMatrix); + void exposureChanged(float exposure); + void positionChanged(const QVector3D &position); + void upVectorChanged(const QVector3D &upVector); + void viewCenterChanged(const QVector3D &viewCenter); + void viewVectorChanged(const QVector3D &viewVector); + void viewMatrixChanged(); + +protected: + Q_DECLARE_PRIVATE(QCamera) + explicit QCamera(QCameraPrivate &dd, QNode *parent = nullptr); +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_CAMERA_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qcameralens.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qcameralens.h new file mode 100644 index 0000000..d478561 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qcameralens.h @@ -0,0 +1,151 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_CAMERALENS_H +#define QT3DRENDER_CAMERALENS_H + +#include +#include + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QCameraLensPrivate; + +class QT3DRENDERSHARED_EXPORT QCameraLens : public Qt3DCore::QComponent +{ + Q_OBJECT + Q_PROPERTY(ProjectionType projectionType READ projectionType WRITE setProjectionType NOTIFY projectionTypeChanged) + Q_PROPERTY(float nearPlane READ nearPlane WRITE setNearPlane NOTIFY nearPlaneChanged) + Q_PROPERTY(float farPlane READ farPlane WRITE setFarPlane NOTIFY farPlaneChanged) + Q_PROPERTY(float fieldOfView READ fieldOfView WRITE setFieldOfView NOTIFY fieldOfViewChanged) + Q_PROPERTY(float aspectRatio READ aspectRatio WRITE setAspectRatio NOTIFY aspectRatioChanged) + Q_PROPERTY(float left READ left WRITE setLeft NOTIFY leftChanged) + Q_PROPERTY(float right READ right WRITE setRight NOTIFY rightChanged) + Q_PROPERTY(float bottom READ bottom WRITE setBottom NOTIFY bottomChanged) + Q_PROPERTY(float top READ top WRITE setTop NOTIFY topChanged) + Q_PROPERTY(QMatrix4x4 projectionMatrix READ projectionMatrix WRITE setProjectionMatrix NOTIFY projectionMatrixChanged) + Q_PROPERTY(float exposure READ exposure WRITE setExposure NOTIFY exposureChanged REVISION 9) + +public: + explicit QCameraLens(QNode *parent = nullptr); + ~QCameraLens(); + + enum ProjectionType { + OrthographicProjection, + PerspectiveProjection, + FrustumProjection, + CustomProjection + }; + Q_ENUM(ProjectionType) // LCOV_EXCL_LINE + + ProjectionType projectionType() const; + float nearPlane() const; + float farPlane() const; + float fieldOfView() const; + float aspectRatio() const; + float left() const; + float right() const; + float bottom() const; + float top() const; + + QMatrix4x4 projectionMatrix() const; + + void setOrthographicProjection(float left, float right, + float bottom, float top, + float nearPlane, float farPlane); + + void setFrustumProjection(float left, float right, + float bottom, float top, + float nearPlane, float farPlane); + + void setPerspectiveProjection(float fieldOfView, float aspect, + float nearPlane, float farPlane); + + float exposure() const; + + void viewAll(Qt3DCore::QNodeId cameraId); + void viewEntity(Qt3DCore::QNodeId entityId, Qt3DCore::QNodeId cameraId); + +public Q_SLOTS: + void setProjectionType(ProjectionType projectionType); + void setNearPlane(float nearPlane); + void setFarPlane(float farPlane); + void setFieldOfView(float fieldOfView); + void setAspectRatio(float aspectRatio); + void setLeft(float left); + void setRight(float right); + void setBottom(float bottom); + void setTop(float top); + void setProjectionMatrix(const QMatrix4x4 &projectionMatrix); + void setExposure(float exposure); + +Q_SIGNALS: + void projectionTypeChanged(QCameraLens::ProjectionType projectionType); + void nearPlaneChanged(float nearPlane); + void farPlaneChanged(float farPlane); + void fieldOfViewChanged(float fieldOfView); + void aspectRatioChanged(float aspectRatio); + void leftChanged(float left); + void rightChanged(float right); + void bottomChanged(float bottom); + void topChanged(float top); + void projectionMatrixChanged(const QMatrix4x4 &projectionMatrix); + void exposureChanged(float exposure); + void viewSphere(const QVector3D ¢er, float radius); + +protected: + explicit QCameraLens(QCameraLensPrivate &dd, QNode *parent = nullptr); + +private: + Q_DECLARE_PRIVATE(QCameraLens) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &change) override; +}; + +} // Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_CAMERALENS_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qcameraselector.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qcameraselector.h new file mode 100644 index 0000000..9aff269 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qcameraselector.h @@ -0,0 +1,82 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QCAMERASELECTOR_H +#define QT3DRENDER_QCAMERASELECTOR_H + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QCameraSelectorPrivate; + +class QT3DRENDERSHARED_EXPORT QCameraSelector : public QFrameGraphNode +{ + Q_OBJECT + Q_PROPERTY(Qt3DCore::QEntity *camera READ camera WRITE setCamera NOTIFY cameraChanged) + +public: + explicit QCameraSelector(Qt3DCore::QNode *parent = nullptr); + ~QCameraSelector(); + + Qt3DCore::QEntity *camera() const; + +public Q_SLOTS: + void setCamera(Qt3DCore::QEntity *camera); + +Q_SIGNALS: + void cameraChanged(Qt3DCore::QEntity *camera); + +protected: + explicit QCameraSelector(QCameraSelectorPrivate &dd, Qt3DCore::QNode *parent = nullptr); + +private: + Q_DECLARE_PRIVATE(QCameraSelector) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + + +#endif // QT3DRENDER_QCAMERASELECTOR_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qclearbuffers.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qclearbuffers.h new file mode 100644 index 0000000..7077b3f --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qclearbuffers.h @@ -0,0 +1,112 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QCLEARBUFFERS_H +#define QT3DRENDER_QCLEARBUFFERS_H + +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QClearBuffersPrivate; + +class QT3DRENDERSHARED_EXPORT QClearBuffers : public QFrameGraphNode +{ + Q_OBJECT + Q_PROPERTY(BufferType buffers READ buffers WRITE setBuffers NOTIFY buffersChanged) + Q_PROPERTY(QColor clearColor READ clearColor WRITE setClearColor NOTIFY clearColorChanged) + Q_PROPERTY(float clearDepthValue READ clearDepthValue WRITE setClearDepthValue NOTIFY clearDepthValueChanged) + Q_PROPERTY(int clearStencilValue READ clearStencilValue WRITE setClearStencilValue NOTIFY clearStencilValueChanged) + Q_PROPERTY(Qt3DRender::QRenderTargetOutput* colorBuffer READ colorBuffer WRITE setColorBuffer NOTIFY colorBufferChanged) + +public: + explicit QClearBuffers(Qt3DCore::QNode *parent = nullptr); + ~QClearBuffers(); + + enum BufferType { + None = 0, + ColorBuffer = (1 << 0), + DepthBuffer = (1 << 1), + StencilBuffer = (1 << 2), + DepthStencilBuffer = DepthBuffer | StencilBuffer, + ColorDepthBuffer = ColorBuffer | DepthBuffer, + ColorDepthStencilBuffer = ColorBuffer | DepthStencilBuffer, + AllBuffers = 0xFFFFFFFF + }; + Q_ENUM(BufferType) // LCOV_EXCL_LINE + Q_DECLARE_FLAGS(BufferTypeFlags, BufferType) + + BufferType buffers() const; + QColor clearColor() const; + float clearDepthValue() const; + int clearStencilValue() const; + QRenderTargetOutput *colorBuffer() const; + +public Q_SLOTS: + void setBuffers(BufferType buffers); + void setClearColor(const QColor& color); + void setClearDepthValue(float clearDepthValue); + void setClearStencilValue(int clearStencilValue); + void setColorBuffer(QRenderTargetOutput *buffer); + +Q_SIGNALS: + void buffersChanged(BufferType buffers); + void clearColorChanged(const QColor& color); + void clearDepthValueChanged(float clearDepthValue); + void clearStencilValueChanged(int clearStencilValue); + void colorBufferChanged(QRenderTargetOutput *buffer); + +protected: + explicit QClearBuffers(QClearBuffersPrivate &dd, Qt3DCore::QNode *parent = nullptr); + +private: + Q_DECLARE_PRIVATE(QClearBuffers) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QCLEARBUFFERS_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qclipplane.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qclipplane.h new file mode 100644 index 0000000..fa210d6 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qclipplane.h @@ -0,0 +1,85 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QCLIPPLANE_H +#define QT3DRENDER_QCLIPPLANE_H + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QClipPlanePrivate; + +class QT3DRENDERSHARED_EXPORT QClipPlane : public QRenderState +{ + Q_OBJECT + Q_PROPERTY(int planeIndex READ planeIndex WRITE setPlaneIndex NOTIFY planeIndexChanged) + Q_PROPERTY(QVector3D normal READ normal WRITE setNormal NOTIFY normalChanged) + Q_PROPERTY(float distance READ distance WRITE setDistance NOTIFY distanceChanged) +public: + explicit QClipPlane(Qt3DCore::QNode *parent = nullptr); + ~QClipPlane(); + + int planeIndex() const; + QVector3D normal() const; + float distance() const; + +public Q_SLOTS: + void setPlaneIndex(int); + void setNormal(QVector3D); + void setDistance(float); + +Q_SIGNALS: + void planeIndexChanged(int planeIndex); + void normalChanged(QVector3D normal); + void distanceChanged(float distance); + +private: + Q_DECLARE_PRIVATE(QClipPlane) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QCLIPPLANE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qcolormask.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qcolormask.h new file mode 100644 index 0000000..7d28e80 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qcolormask.h @@ -0,0 +1,89 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QCOLORMASK_H +#define QT3DRENDER_QCOLORMASK_H + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QColorMaskPrivate; + +class QT3DRENDERSHARED_EXPORT QColorMask : public QRenderState +{ + Q_OBJECT + Q_PROPERTY(bool redMasked READ isRedMasked WRITE setRedMasked NOTIFY redMaskedChanged) + Q_PROPERTY(bool greenMasked READ isGreenMasked WRITE setGreenMasked NOTIFY greenMaskedChanged) + Q_PROPERTY(bool blueMasked READ isBlueMasked WRITE setBlueMasked NOTIFY blueMaskedChanged) + Q_PROPERTY(bool alphaMasked READ isAlphaMasked WRITE setAlphaMasked NOTIFY alphaMaskedChanged) + +public: + explicit QColorMask(Qt3DCore::QNode *parent = nullptr); + ~QColorMask(); + + bool isRedMasked() const; + bool isGreenMasked() const; + bool isBlueMasked() const; + bool isAlphaMasked() const; + +public Q_SLOTS: + void setRedMasked(bool redMasked); + void setGreenMasked(bool greenMasked); + void setBlueMasked(bool blueMasked); + void setAlphaMasked(bool alphaMasked); + +Q_SIGNALS: + void redMaskedChanged(bool redMasked); + void greenMaskedChanged(bool greenMasked); + void blueMaskedChanged(bool blueMasked); + void alphaMaskedChanged(bool alphaMasked); + +private: + Q_DECLARE_PRIVATE(QColorMask) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QCOLORMASK_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qcomputecommand.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qcomputecommand.h new file mode 100644 index 0000000..c310821 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qcomputecommand.h @@ -0,0 +1,86 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QCOMPUTECOMMAND_H +#define QT3DRENDER_QCOMPUTECOMMAND_H + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QComputeCommandPrivate; + +class QT3DRENDERSHARED_EXPORT QComputeCommand : public Qt3DCore::QComponent +{ + Q_OBJECT + Q_PROPERTY(int workGroupX READ workGroupX WRITE setWorkGroupX NOTIFY workGroupXChanged) + Q_PROPERTY(int workGroupY READ workGroupY WRITE setWorkGroupY NOTIFY workGroupYChanged) + Q_PROPERTY(int workGroupZ READ workGroupZ WRITE setWorkGroupZ NOTIFY workGroupZChanged) + +public: + explicit QComputeCommand(Qt3DCore::QNode *parent = nullptr); + ~QComputeCommand(); + + int workGroupX() const; + int workGroupY() const; + int workGroupZ() const; + +public Q_SLOTS: + void setWorkGroupX(int workGroupX); + void setWorkGroupY(int workGroupY); + void setWorkGroupZ(int workGroupZ); + +Q_SIGNALS: + void workGroupXChanged(); + void workGroupYChanged(); + void workGroupZChanged(); + +private: + Q_DECLARE_PRIVATE(QComputeCommand) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +} // Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QCOMPUTECOMMAND_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qcullface.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qcullface.h new file mode 100644 index 0000000..ab60d34 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qcullface.h @@ -0,0 +1,89 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Copyright (C) 2016 The Qt Company Ltd and/or its subsidiary(-ies). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + + +#ifndef QT3DRENDER_QCULLFACE_H +#define QT3DRENDER_QCULLFACE_H + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QCullFacePrivate; + +class QT3DRENDERSHARED_EXPORT QCullFace : public QRenderState +{ + Q_OBJECT + Q_PROPERTY(CullingMode mode READ mode WRITE setMode NOTIFY modeChanged) + +public: + + enum CullingMode + { + NoCulling = 0x0, + Front = 0x0404, + Back = 0x0405, + FrontAndBack = 0x0408 + }; + Q_ENUM(CullingMode) // LCOV_EXCL_LINE + + explicit QCullFace(Qt3DCore::QNode *parent = nullptr); + ~QCullFace(); + + CullingMode mode() const; + +public Q_SLOTS: + void setMode(CullingMode mode); + +Q_SIGNALS: + void modeChanged(CullingMode mode); + +private: + Q_DECLARE_PRIVATE(QCullFace) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QCULLFACE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qdepthtest.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qdepthtest.h new file mode 100644 index 0000000..91c06c6 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qdepthtest.h @@ -0,0 +1,90 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Copyright (C) 2016 The Qt Company Ltd and/or its subsidiary(-ies). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QDEPTHTEST_H +#define QT3DRENDER_QDEPTHTEST_H + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QDepthTestPrivate; + +class QT3DRENDERSHARED_EXPORT QDepthTest : public QRenderState +{ + Q_OBJECT + Q_PROPERTY(DepthFunction depthFunction READ depthFunction WRITE setDepthFunction NOTIFY depthFunctionChanged) +public: + + enum DepthFunction { + Never = 0x0200, + Always = 0x0207, + Less = 0x0201, + LessOrEqual = 0x0203, + Equal = 0x0202, + GreaterOrEqual = 0x0206, + Greater = 0x0204, + NotEqual = 0x0205 + }; + Q_ENUM(DepthFunction) // LCOV_EXCL_LINE + + explicit QDepthTest(Qt3DCore::QNode *parent = nullptr); + ~QDepthTest(); + + DepthFunction depthFunction() const; + +public Q_SLOTS: + void setDepthFunction(DepthFunction depthFunction); + +Q_SIGNALS: + void depthFunctionChanged(DepthFunction depthFunction); + +private: + Q_DECLARE_PRIVATE(QDepthTest) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QDEPTHTEST_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qdirectionallight.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qdirectionallight.h new file mode 100644 index 0000000..6be1585 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qdirectionallight.h @@ -0,0 +1,79 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QDIRECTIONALLIGHT_H +#define QT3DRENDER_QDIRECTIONALLIGHT_H + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QDirectionalLightPrivate; + +class QT3DRENDERSHARED_EXPORT QDirectionalLight : public QAbstractLight +{ + Q_OBJECT + Q_PROPERTY(QVector3D worldDirection READ worldDirection WRITE setWorldDirection NOTIFY worldDirectionChanged) + +public: + explicit QDirectionalLight(Qt3DCore::QNode *parent = nullptr); + ~QDirectionalLight(); + + QVector3D worldDirection() const; + +public Q_SLOTS: + void setWorldDirection(const QVector3D &worldDirection); + +Q_SIGNALS: + void worldDirectionChanged(const QVector3D &worldDirection); + +protected: + explicit QDirectionalLight(QDirectionalLightPrivate &dd, Qt3DCore::QNode *parent = nullptr); + +private: + Q_DECLARE_PRIVATE(QDirectionalLight) +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QDIRECTIONALLIGHT_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qdispatchcompute.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qdispatchcompute.h new file mode 100644 index 0000000..417796b --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qdispatchcompute.h @@ -0,0 +1,85 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QDISPATCHCOMPUTE_H +#define QT3DRENDER_QDISPATCHCOMPUTE_H + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QDispatchComputePrivate; + +class QT3DRENDERSHARED_EXPORT QDispatchCompute : public QFrameGraphNode +{ + Q_OBJECT + Q_PROPERTY(int workGroupX READ workGroupX WRITE setWorkGroupX NOTIFY workGroupXChanged) + Q_PROPERTY(int workGroupY READ workGroupY WRITE setWorkGroupY NOTIFY workGroupYChanged) + Q_PROPERTY(int workGroupZ READ workGroupZ WRITE setWorkGroupZ NOTIFY workGroupZChanged) +public: + explicit QDispatchCompute(Qt3DCore::QNode *parent = nullptr); + ~QDispatchCompute(); + + int workGroupX() const; + int workGroupY() const; + int workGroupZ() const; + +public Q_SLOTS: + void setWorkGroupX(int workGroupX); + void setWorkGroupY(int workGroupY); + void setWorkGroupZ(int workGroupZ); + +Q_SIGNALS: + void workGroupXChanged(); + void workGroupYChanged(); + void workGroupZChanged(); + +private: + Q_DECLARE_PRIVATE(QDispatchCompute) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +} // Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QDISPATCHCOMPUTE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qdithering.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qdithering.h new file mode 100644 index 0000000..db6667f --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qdithering.h @@ -0,0 +1,67 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Copyright (C) 2016 The Qt Company Ltd and/or its subsidiary(-ies). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QDITHERING_H +#define QT3DRENDER_QDITHERING_H + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QDitheringPrivate; + +class QT3DRENDERSHARED_EXPORT QDithering : public QRenderState +{ + Q_OBJECT +public: + explicit QDithering(Qt3DCore::QNode *parent = nullptr); + ~QDithering(); + +private: + Q_DECLARE_PRIVATE(QDithering) +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QDITHERING_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qeffect.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qeffect.h new file mode 100644 index 0000000..0a65311 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qeffect.h @@ -0,0 +1,81 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QEFFECT_H +#define QT3DRENDER_QEFFECT_H + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QParameter; +class QTechnique; +class QEffectPrivate; + +class QT3DRENDERSHARED_EXPORT QEffect : public Qt3DCore::QNode +{ + Q_OBJECT +public: + explicit QEffect(Qt3DCore::QNode *parent = nullptr); + ~QEffect(); + + void addParameter(QParameter *parameter); + void removeParameter(QParameter *parameter); + QVector parameters() const; + + void addTechnique(QTechnique *t); + void removeTechnique(QTechnique *t); + QVector techniques() const; + +protected: + explicit QEffect(QEffectPrivate &dd, Qt3DCore::QNode *parent = nullptr); + +private: + Q_DECLARE_PRIVATE(QEffect) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QEFFECT_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qenvironmentlight.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qenvironmentlight.h new file mode 100644 index 0000000..995768d --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qenvironmentlight.h @@ -0,0 +1,88 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QENVIRONMENTLIGHT_H +#define QT3DRENDER_QENVIRONMENTLIGHT_H + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QAbstractTexture; +class QEnvironmentLightPrivate; + +class QT3DRENDERSHARED_EXPORT QEnvironmentLight : public Qt3DCore::QComponent +{ + Q_OBJECT + Q_PROPERTY(Qt3DRender::QAbstractTexture *irradiance READ irradiance WRITE setIrradiance NOTIFY irradianceChanged) + Q_PROPERTY(Qt3DRender::QAbstractTexture *specular READ specular WRITE setSpecular NOTIFY specularChanged) + +public: + explicit QEnvironmentLight(Qt3DCore::QNode *parent = nullptr); + ~QEnvironmentLight(); + + Qt3DRender::QAbstractTexture *irradiance() const; + Qt3DRender::QAbstractTexture *specular() const; + +public Q_SLOTS: + void setIrradiance(Qt3DRender::QAbstractTexture *irradiance); + void setSpecular(Qt3DRender::QAbstractTexture *specular); + +protected: + explicit QEnvironmentLight(QEnvironmentLightPrivate &dd, Qt3DCore::QNode *parent = nullptr); + +Q_SIGNALS: + void irradianceChanged(Qt3DRender::QAbstractTexture *environmentIrradiance); + void specularChanged(Qt3DRender::QAbstractTexture *environmentSpecular); + +private: + Q_DECLARE_PRIVATE(QEnvironmentLight) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; + + Q_PRIVATE_SLOT(d_func(), void _q_updateEnvMapsSize()) +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QENVIRONMENTLIGHT_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qfilterkey.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qfilterkey.h new file mode 100644 index 0000000..23c2dd3 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qfilterkey.h @@ -0,0 +1,82 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QFILTERKEY_H +#define QT3DRENDER_QFILTERKEY_H + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QFilterKeyPrivate; + +class QT3DRENDERSHARED_EXPORT QFilterKey : public Qt3DCore::QNode +{ + Q_OBJECT + Q_PROPERTY(QVariant value READ value WRITE setValue NOTIFY valueChanged) + Q_PROPERTY(QString name READ name WRITE setName NOTIFY nameChanged) +public: + explicit QFilterKey(Qt3DCore::QNode *parent = nullptr); + ~QFilterKey(); + + QVariant value() const; + QString name() const; + +public Q_SLOTS: + void setValue(const QVariant &value); + void setName(const QString &customType); + +Q_SIGNALS: + void nameChanged(const QString &name); + void valueChanged(const QVariant &value); + +private: + Q_DECLARE_PRIVATE(QFilterKey) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QFILTERKEY_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qframegraphnode.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qframegraphnode.h new file mode 100644 index 0000000..57f4da1 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qframegraphnode.h @@ -0,0 +1,77 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QFRAMEGRAPHNODE_H +#define QT3DRENDER_QFRAMEGRAPHNODE_H + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QFrameGraphNodePrivate; + +class QT3DRENDERSHARED_EXPORT QFrameGraphNode : public Qt3DCore::QNode +{ + Q_OBJECT +public: + explicit QFrameGraphNode(Qt3DCore::QNode *parent = nullptr); + ~QFrameGraphNode(); + + QFrameGraphNode *parentFrameGraphNode() const; + +protected: + explicit QFrameGraphNode(QFrameGraphNodePrivate &dd, Qt3DCore::QNode *parent = nullptr); + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; + +private Q_SLOTS: + void onParentChanged(QObject *); + +private: + Q_DECLARE_PRIVATE(QFrameGraphNode) +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QFRAMEGRAPHNODE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qframegraphnodecreatedchange.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qframegraphnodecreatedchange.h new file mode 100644 index 0000000..f255ff4 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qframegraphnodecreatedchange.h @@ -0,0 +1,84 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_RENDER_QFRAMEGRAPHNODECREATEDCHANGE_H +#define QT3DRENDER_RENDER_QFRAMEGRAPHNODECREATEDCHANGE_H + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QFrameGraphNode; +class QFrameGraphNodeCreatedChangeBasePrivate; + +class QT3DRENDERSHARED_EXPORT QFrameGraphNodeCreatedChangeBase : public Qt3DCore::QNodeCreatedChangeBase +{ +public: + explicit QFrameGraphNodeCreatedChangeBase(const QFrameGraphNode *node); + ~QFrameGraphNodeCreatedChangeBase(); + + Qt3DCore::QNodeId parentFrameGraphNodeId() const; + +private: + Q_DECLARE_PRIVATE(QFrameGraphNodeCreatedChangeBase) +}; + +typedef QSharedPointer QFrameGraphNodeCreatedChangeBasePtr; + +template +class QFrameGraphNodeCreatedChange : public QFrameGraphNodeCreatedChangeBase +{ +public: + explicit QFrameGraphNodeCreatedChange(const QFrameGraphNode *node) + : QFrameGraphNodeCreatedChangeBase(node) + , data() + { + } + + T data; +}; + +template +using QFrameGraphNodeCreatedChangePtr = QSharedPointer>; + +} // Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_RENDER_QFRAMEGRAPHNODECREATEDCHANGE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qfrontface.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qfrontface.h new file mode 100644 index 0000000..9ef32d8 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qfrontface.h @@ -0,0 +1,85 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Copyright (C) 2016 The Qt Company Ltd and/or its subsidiary(-ies). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QFRONTFACE_H +#define QT3DRENDER_QFRONTFACE_H + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QFrontFacePrivate; + +class QT3DRENDERSHARED_EXPORT QFrontFace : public QRenderState +{ + Q_OBJECT + Q_PROPERTY(WindingDirection direction READ direction WRITE setDirection NOTIFY directionChanged) +public: + + enum WindingDirection + { + ClockWise = 0x0900, + CounterClockWise = 0x0901 + }; + Q_ENUM(WindingDirection) // LCOV_EXCL_LINE + + explicit QFrontFace(Qt3DCore::QNode *parent = nullptr); + ~QFrontFace(); + + WindingDirection direction() const; + +public Q_SLOTS: + void setDirection(WindingDirection direction); + +Q_SIGNALS: + void directionChanged(WindingDirection direction); + +private: + Q_DECLARE_PRIVATE(QFrontFace) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QFRONTFACE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qfrustumculling.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qfrustumculling.h new file mode 100644 index 0000000..f0ed6d0 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qfrustumculling.h @@ -0,0 +1,61 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QFRUSTUMCULLING_H +#define QT3DRENDER_QFRUSTUMCULLING_H + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QT3DRENDERSHARED_EXPORT QFrustumCulling : public QFrameGraphNode +{ + Q_OBJECT +public: + explicit QFrustumCulling(Qt3DCore::QNode *parent = nullptr); + ~QFrustumCulling(); +}; + +} // Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QFRUSTUMCULLING_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qgeometry.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qgeometry.h new file mode 100644 index 0000000..0e6f7d6 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qgeometry.h @@ -0,0 +1,85 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QGEOMETRY_H +#define QT3DRENDER_QGEOMETRY_H + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QAttribute; +class QGeometryPrivate; + +class QT3DRENDERSHARED_EXPORT QGeometry : public Qt3DCore::QNode +{ + Q_OBJECT + Q_PROPERTY(Qt3DRender::QAttribute *boundingVolumePositionAttribute READ boundingVolumePositionAttribute WRITE setBoundingVolumePositionAttribute NOTIFY boundingVolumePositionAttributeChanged) +public: + explicit QGeometry(Qt3DCore::QNode *parent = nullptr); + ~QGeometry(); + + QVector attributes() const; + Q_INVOKABLE void addAttribute(Qt3DRender::QAttribute *attribute); + Q_INVOKABLE void removeAttribute(Qt3DRender::QAttribute *attribute); + + QAttribute *boundingVolumePositionAttribute() const; + +public Q_SLOTS: + void setBoundingVolumePositionAttribute(QAttribute *boundingVolumePositionAttribute); + +Q_SIGNALS: + void boundingVolumePositionAttributeChanged(QAttribute *boundingVolumePositionAttribute); + +protected: + explicit QGeometry(QGeometryPrivate &dd, Qt3DCore::QNode *parent = nullptr); + +private: + Q_DECLARE_PRIVATE(QGeometry) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QGEOMETRY_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qgeometryfactory.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qgeometryfactory.h new file mode 100644 index 0000000..2e4d5c8 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qgeometryfactory.h @@ -0,0 +1,70 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QGEOMETRYFACTORY +#define QT3DRENDER_QGEOMETRYFACTORY + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QGeometry; + +class QT3DRENDERSHARED_EXPORT QGeometryFactory : public QAbstractFunctor +{ +public: + virtual ~QGeometryFactory(); + virtual QGeometry *operator()() = 0; + virtual bool operator ==(const QGeometryFactory &other) const = 0; +}; + +typedef QSharedPointer QGeometryFactoryPtr; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +Q_DECLARE_METATYPE(Qt3DRender::QGeometryFactoryPtr) // LCOV_EXCL_LINE + +#endif // QT3DRENDER_QGEOMETRYFACTORY + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qgeometryrenderer.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qgeometryrenderer.h new file mode 100644 index 0000000..85bab9f --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qgeometryrenderer.h @@ -0,0 +1,148 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QGEOMETRYRENDERER_H +#define QT3DRENDER_QGEOMETRYRENDERER_H + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QGeometryRendererPrivate; +class QGeometryFactory; + +typedef QSharedPointer QGeometryFactoryPtr; + +class QT3DRENDERSHARED_EXPORT QGeometryRenderer : public Qt3DCore::QComponent +{ + Q_OBJECT + Q_PROPERTY(int instanceCount READ instanceCount WRITE setInstanceCount NOTIFY instanceCountChanged) + Q_PROPERTY(int vertexCount READ vertexCount WRITE setVertexCount NOTIFY vertexCountChanged) + Q_PROPERTY(int indexOffset READ indexOffset WRITE setIndexOffset NOTIFY indexOffsetChanged) + Q_PROPERTY(int firstInstance READ firstInstance WRITE setFirstInstance NOTIFY firstInstanceChanged) + Q_PROPERTY(int firstVertex READ firstVertex WRITE setFirstVertex NOTIFY firstVertexChanged) + Q_PROPERTY(int indexBufferByteOffset READ indexBufferByteOffset WRITE setIndexBufferByteOffset NOTIFY indexBufferByteOffsetChanged) + Q_PROPERTY(int restartIndexValue READ restartIndexValue WRITE setRestartIndexValue NOTIFY restartIndexValueChanged) + Q_PROPERTY(int verticesPerPatch READ verticesPerPatch WRITE setVerticesPerPatch NOTIFY verticesPerPatchChanged) + Q_PROPERTY(bool primitiveRestartEnabled READ primitiveRestartEnabled WRITE setPrimitiveRestartEnabled NOTIFY primitiveRestartEnabledChanged) + Q_PROPERTY(Qt3DRender::QGeometry* geometry READ geometry WRITE setGeometry NOTIFY geometryChanged) + Q_PROPERTY(PrimitiveType primitiveType READ primitiveType WRITE setPrimitiveType NOTIFY primitiveTypeChanged) + +public: + explicit QGeometryRenderer(Qt3DCore::QNode *parent = nullptr); + ~QGeometryRenderer(); + + enum PrimitiveType { + Points = 0x0000, + Lines = 0x0001, + LineLoop = 0x0002, + LineStrip = 0x0003, + Triangles = 0x0004, + TriangleStrip = 0x0005, + TriangleFan = 0x0006, + LinesAdjacency = 0x000A, + TrianglesAdjacency = 0x000C, + LineStripAdjacency = 0x000B, + TriangleStripAdjacency = 0x000D, + Patches = 0x000E + }; + Q_ENUM(PrimitiveType) // LCOV_EXCL_LINE + + // how to figure out index count and all the fancy stuff that QMeshData provides for us? + // also how to figure out which attribute(s?) hold the indices? + + int instanceCount() const; + int vertexCount() const; + int indexOffset() const; + int firstInstance() const; + int firstVertex() const; + int indexBufferByteOffset() const; + int restartIndexValue() const; + int verticesPerPatch() const; + bool primitiveRestartEnabled() const; + QGeometry *geometry() const; + PrimitiveType primitiveType() const; + + QGeometryFactoryPtr geometryFactory() const; + void setGeometryFactory(const QGeometryFactoryPtr &factory); + +public Q_SLOTS: + void setInstanceCount(int instanceCount); + void setVertexCount(int vertexCount); + void setIndexOffset(int indexOffset); + void setFirstInstance(int firstInstance); + void setFirstVertex(int firstVertex); + void setIndexBufferByteOffset(int offset); + void setRestartIndexValue(int index); + void setVerticesPerPatch(int verticesPerPatch); + void setPrimitiveRestartEnabled(bool enabled); + void setGeometry(QGeometry *geometry); + void setPrimitiveType(PrimitiveType primitiveType); + +Q_SIGNALS: + void instanceCountChanged(int instanceCount); + void vertexCountChanged(int vertexCount); + void indexOffsetChanged(int indexOffset); + void firstInstanceChanged(int firstInstance); + void firstVertexChanged(int firstVertex); + void indexBufferByteOffsetChanged(int offset); + void restartIndexValueChanged(int restartIndexValue); + void verticesPerPatchChanged(int verticesPerPatch); + void primitiveRestartEnabledChanged(bool primitiveRestartEnabled); + void geometryChanged(QGeometry *geometry); + void primitiveTypeChanged(PrimitiveType primitiveType); + +protected: + explicit QGeometryRenderer(QGeometryRendererPrivate &dd, Qt3DCore::QNode *parent = nullptr); + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &change) override; + +private: + Q_DECLARE_PRIVATE(QGeometryRenderer) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QGEOMETRYRENDERER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qgraphicsapifilter.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qgraphicsapifilter.h new file mode 100644 index 0000000..08b30b1 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qgraphicsapifilter.h @@ -0,0 +1,119 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QGRAPHICSAPIFILTER_H +#define QT3DRENDER_QGRAPHICSAPIFILTER_H + +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QGraphicsApiFilterPrivate; + +class QT3DRENDERSHARED_EXPORT QGraphicsApiFilter : public QObject +{ + Q_OBJECT + Q_PROPERTY(Qt3DRender::QGraphicsApiFilter::Api api READ api WRITE setApi NOTIFY apiChanged) + Q_PROPERTY(Qt3DRender::QGraphicsApiFilter::OpenGLProfile profile READ profile WRITE setProfile NOTIFY profileChanged) + Q_PROPERTY(int minorVersion READ minorVersion WRITE setMinorVersion NOTIFY minorVersionChanged) + Q_PROPERTY(int majorVersion READ majorVersion WRITE setMajorVersion NOTIFY majorVersionChanged) + Q_PROPERTY(QStringList extensions READ extensions WRITE setExtensions NOTIFY extensionsChanged) + Q_PROPERTY(QString vendor READ vendor WRITE setVendor NOTIFY vendorChanged) + +public: + + enum Api { + OpenGLES = QSurfaceFormat::OpenGLES, // 2 + OpenGL = QSurfaceFormat::OpenGL, // 1 + Vulkan = 3, // 3 + DirectX // 4 + }; + Q_ENUM(Api) // LCOV_EXCL_LINE + + enum OpenGLProfile { + NoProfile = QSurfaceFormat::NoProfile, + CoreProfile = QSurfaceFormat::CoreProfile, + CompatibilityProfile = QSurfaceFormat::CompatibilityProfile + }; + Q_ENUM(OpenGLProfile) // LCOV_EXCL_LINE + + explicit QGraphicsApiFilter(QObject *parent = nullptr); + ~QGraphicsApiFilter(); + + Api api() const; + OpenGLProfile profile() const; + int minorVersion() const; + int majorVersion() const; + QStringList extensions() const; + QString vendor() const; + +public Q_SLOTS: + void setApi(Api api); + void setProfile(OpenGLProfile profile); + void setMinorVersion(int minorVersion); + void setMajorVersion(int majorVersion); + void setExtensions(const QStringList &extensions); + void setVendor(const QString &vendor); + +Q_SIGNALS: + void apiChanged(Qt3DRender::QGraphicsApiFilter::Api api); + void profileChanged(Qt3DRender::QGraphicsApiFilter::OpenGLProfile profile); + void minorVersionChanged(int minorVersion); + void majorVersionChanged(int majorVersion); + void extensionsChanged(const QStringList &extensions); + void vendorChanged(const QString &vendor); + void graphicsApiFilterChanged(); + +private: + Q_DECLARE_PRIVATE(QGraphicsApiFilter) +}; + +Q_AUTOTEST_EXPORT bool operator ==(const QGraphicsApiFilter &reference, const QGraphicsApiFilter &sample); +Q_AUTOTEST_EXPORT bool operator !=(const QGraphicsApiFilter &reference, const QGraphicsApiFilter &sample); + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QGRAPHICSAPIFILTER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qlayer.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qlayer.h new file mode 100644 index 0000000..27910f1 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qlayer.h @@ -0,0 +1,79 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QLAYER_H +#define QT3DRENDER_QLAYER_H + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QLayerPrivate; + +class QT3DRENDERSHARED_EXPORT QLayer : public Qt3DCore::QComponent +{ + Q_OBJECT + Q_PROPERTY(bool recursive READ recursive WRITE setRecursive NOTIFY recursiveChanged) +public: + explicit QLayer(Qt3DCore::QNode *parent = nullptr); + ~QLayer(); + + bool recursive() const; + void setRecursive(bool recursive); + +Q_SIGNALS: + void recursiveChanged(); + +protected: + explicit QLayer(QLayerPrivate &dd, Qt3DCore::QNode *parent = nullptr); + +private: + Q_DECLARE_PRIVATE(QLayer) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QLAYER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qlayerfilter.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qlayerfilter.h new file mode 100644 index 0000000..3ccbdac --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qlayerfilter.h @@ -0,0 +1,93 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QLAYERFILTER_H +#define QT3DRENDER_QLAYERFILTER_H + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QLayer; +class QLayerFilterPrivate; + +class QT3DRENDERSHARED_EXPORT QLayerFilter : public QFrameGraphNode +{ + Q_OBJECT + Q_PROPERTY(FilterMode filterMode READ filterMode WRITE setFilterMode NOTIFY filterModeChanged) +public: + enum FilterMode + { + AcceptAnyMatchingLayers = 0, + AcceptAllMatchingLayers, + DiscardAnyMatchingLayers, + DiscardAllMatchingLayers, + }; + Q_ENUM(FilterMode) // LOVC_EXLC_LINE + + explicit QLayerFilter(Qt3DCore::QNode *parent = nullptr); + ~QLayerFilter(); + + void addLayer(QLayer *layer); + void removeLayer(QLayer *layer); + QVector layers() const; + + FilterMode filterMode() const; + void setFilterMode(FilterMode filterMode); + +Q_SIGNALS: + void filterModeChanged(FilterMode filterMode); + + +protected: + explicit QLayerFilter(QLayerFilterPrivate &dd, Qt3DCore::QNode *parent = nullptr); + +private: + Q_DECLARE_PRIVATE(QLayerFilter) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QLAYERFILTER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qlevelofdetail.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qlevelofdetail.h new file mode 100644 index 0000000..fb74659 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qlevelofdetail.h @@ -0,0 +1,112 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QLEVELOFDETAIL_H +#define QT3DRENDER_QLEVELOFDETAIL_H + +#include +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QCamera; +class QLevelOfDetailPrivate; + +class QT3DRENDERSHARED_EXPORT QLevelOfDetail : public Qt3DCore::QComponent +{ + Q_OBJECT + Q_PROPERTY(Qt3DRender::QCamera *camera READ camera WRITE setCamera NOTIFY cameraChanged) + Q_PROPERTY(int currentIndex READ currentIndex WRITE setCurrentIndex NOTIFY currentIndexChanged) + Q_PROPERTY(ThresholdType thresholdType READ thresholdType WRITE setThresholdType NOTIFY thresholdTypeChanged) + Q_PROPERTY(QVector thresholds READ thresholds WRITE setThresholds NOTIFY thresholdsChanged) + Q_PROPERTY(Qt3DRender::QLevelOfDetailBoundingSphere volumeOverride READ volumeOverride WRITE setVolumeOverride NOTIFY volumeOverrideChanged) + +public: + enum ThresholdType { + DistanceToCameraThreshold, + ProjectedScreenPixelSizeThreshold, + }; + Q_ENUM(ThresholdType) // LCOV_EXCL_LINE + + explicit QLevelOfDetail(Qt3DCore::QNode *parent = nullptr); + ~QLevelOfDetail(); + + QCamera *camera() const; + int currentIndex() const; + ThresholdType thresholdType() const; + QVector thresholds() const; + QLevelOfDetailBoundingSphere volumeOverride() const; + + Q_INVOKABLE Qt3DRender::QLevelOfDetailBoundingSphere createBoundingSphere(const QVector3D ¢er, float radius); + +public Q_SLOTS: + void setCamera(QCamera *camera); + void setCurrentIndex(int currentIndex); + void setThresholdType(ThresholdType thresholdType); + void setThresholds(const QVector &thresholds); + void setVolumeOverride(const QLevelOfDetailBoundingSphere &volumeOverride); + +Q_SIGNALS: + void cameraChanged(QCamera *camera); + void currentIndexChanged(int currentIndex); + void thresholdTypeChanged(ThresholdType thresholdType); + void thresholdsChanged(const QVector &thresholds); + void volumeOverrideChanged(const QLevelOfDetailBoundingSphere &volumeOverride); + +protected: + explicit QLevelOfDetail(QLevelOfDetailPrivate &dd, Qt3DCore::QNode *parent = nullptr); + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &change) override; + +private: + Q_DECLARE_PRIVATE(QLevelOfDetail) +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +Q_DECLARE_METATYPE(Qt3DRender::QLevelOfDetailBoundingSphere) + +#endif // QT3DRENDER_QLEVELOFDETAIL_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qlevelofdetailboundingsphere.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qlevelofdetailboundingsphere.h new file mode 100644 index 0000000..43ba422 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qlevelofdetailboundingsphere.h @@ -0,0 +1,81 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QLEVELOFDETAILBOUNDINGSPHERE_H +#define QT3DRENDER_QLEVELOFDETAILBOUNDINGSPHERE_H + +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QLevelOfDetailBoundingSpherePrivate; + +class QT3DRENDERSHARED_EXPORT QLevelOfDetailBoundingSphere +{ + Q_GADGET + Q_PROPERTY(QVector3D center READ center CONSTANT) + Q_PROPERTY(float radius READ radius CONSTANT) +public: + explicit QLevelOfDetailBoundingSphere(QVector3D center = QVector3D(), float radius = 1.0f); + QLevelOfDetailBoundingSphere(const QLevelOfDetailBoundingSphere &other); + ~QLevelOfDetailBoundingSphere(); + + QLevelOfDetailBoundingSphere &operator =(const QLevelOfDetailBoundingSphere &other); + + QVector3D center() const; + float radius() const; + + bool isEmpty() const; + bool operator ==(const QLevelOfDetailBoundingSphere &other) const; + bool operator !=(const QLevelOfDetailBoundingSphere &other) const; + +private: + QSharedDataPointer d_ptr; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QLEVELOFDETAILBOUNDINGSPHERE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qlevelofdetailswitch.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qlevelofdetailswitch.h new file mode 100644 index 0000000..55c7d24 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qlevelofdetailswitch.h @@ -0,0 +1,69 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QLEVELOFDETAILSWITCH_H +#define QT3DRENDER_QLEVELOFDETAILSWITCH_H + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QT3DRENDERSHARED_EXPORT QLevelOfDetailSwitch : public QLevelOfDetail +{ + Q_OBJECT + +public: + explicit QLevelOfDetailSwitch(Qt3DCore::QNode *parent = nullptr); + ~QLevelOfDetailSwitch(); + +protected: + explicit QLevelOfDetailSwitch(QLevelOfDetailPrivate &dd, Qt3DCore::QNode *parent = nullptr); + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &change) override; + +private: + Q_DECLARE_PRIVATE(QLevelOfDetail) +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QLEVELOFDETAILSWITCH_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qlinewidth.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qlinewidth.h new file mode 100644 index 0000000..764ebc8 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qlinewidth.h @@ -0,0 +1,80 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ +#ifndef QT3DRENDER_QLINEWIDTH_H +#define QT3DRENDER_QLINEWIDTH_H + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QLineWidthPrivate; + +class QT3DRENDERSHARED_EXPORT QLineWidth : public QRenderState +{ + Q_OBJECT + Q_PROPERTY(float value READ value WRITE setValue NOTIFY valueChanged) + Q_PROPERTY(bool smooth READ smooth WRITE setSmooth NOTIFY smoothChanged) + +public: + explicit QLineWidth(Qt3DCore::QNode *parent = nullptr); + ~QLineWidth(); + + float value() const; + bool smooth() const; + +public Q_SLOTS: + void setValue(float value); + void setSmooth(bool enabled); + +Q_SIGNALS: + void valueChanged(float value); + void smoothChanged(bool enabled); + +private: + Q_DECLARE_PRIVATE(QLineWidth) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QTRENDER_QLINEWIDTH_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qmaterial.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qmaterial.h new file mode 100644 index 0000000..9d18952 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qmaterial.h @@ -0,0 +1,90 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QMATERIAL_H +#define QT3DRENDER_QMATERIAL_H + +#include + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QAbstractTexture; +class QParameter; +class QMaterialPrivate; +class QEffect; + +class QT3DRENDERSHARED_EXPORT QMaterial : public Qt3DCore::QComponent +{ + Q_OBJECT + Q_PROPERTY(Qt3DRender::QEffect *effect READ effect WRITE setEffect NOTIFY effectChanged) + +public: + explicit QMaterial(Qt3DCore::QNode *parent = nullptr); + ~QMaterial(); + + QEffect *effect() const; + + void addParameter(QParameter *parameter); + void removeParameter(QParameter *parameter); + QVector parameters() const; + +public Q_SLOTS: + void setEffect(QEffect *effect); + +Q_SIGNALS: + void effectChanged(QEffect *effect); + +protected: + explicit QMaterial(QMaterialPrivate &dd, Qt3DCore::QNode *parent = nullptr); + +private: + Q_DECLARE_PRIVATE(QMaterial) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +} + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QMATERIAL_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qmemorybarrier.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qmemorybarrier.h new file mode 100644 index 0000000..244b7ef --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qmemorybarrier.h @@ -0,0 +1,101 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QMEMORYBARRIER_H +#define QT3DRENDER_QMEMORYBARRIER_H + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QMemoryBarrierPrivate; + +class QT3DRENDERSHARED_EXPORT QMemoryBarrier : public QFrameGraphNode +{ + Q_OBJECT +public: + explicit QMemoryBarrier(Qt3DCore::QNode *parent = nullptr); + ~QMemoryBarrier(); + + enum Operation { + None = 0, + VertexAttributeArray = (1 << 0), + ElementArray = (1 << 1), + Uniform = (1 << 2), + TextureFetch = (1 << 3), + ShaderImageAccess = (1 << 4), + Command = (1 << 5), + PixelBuffer = (1 << 6), + TextureUpdate = (1 << 7), + BufferUpdate = (1 << 8), + FrameBuffer = (1 << 9), + TransformFeedback = (1 << 10), + AtomicCounter = (1 << 11), + ShaderStorage = (1 << 12), + QueryBuffer = (1 << 13), + All = 0xFFFFFFFF + }; + Q_ENUM(Operation) + Q_DECLARE_FLAGS(Operations, Operation) + + Operations waitOperations() const; + +public Q_SLOTS: + void setWaitOperations(QMemoryBarrier::Operations operations); + +Q_SIGNALS: + void waitOperationsChanged(QMemoryBarrier::Operations barrierTypes); + +protected: + explicit QMemoryBarrier(QMemoryBarrierPrivate &dd, Qt3DCore::QNode *parent = nullptr); + +private: + Q_DECLARE_PRIVATE(QMemoryBarrier) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +} // Qt3DRender + +QT_END_NAMESPACE + +Q_DECLARE_METATYPE(Qt3DRender::QMemoryBarrier::Operations) + +#endif // QT3DRENDER_QMEMORYBARRIER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qmesh.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qmesh.h new file mode 100644 index 0000000..a7b2747 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qmesh.h @@ -0,0 +1,101 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QMESH_H +#define QT3DRENDER_QMESH_H + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QMeshPrivate; + +/** +* @brief Simple static mesh +* +*/ +class QT3DRENDERSHARED_EXPORT QMesh : public QGeometryRenderer +{ + Q_OBJECT + Q_PROPERTY(QUrl source READ source WRITE setSource NOTIFY sourceChanged) + Q_PROPERTY(QString meshName READ meshName WRITE setMeshName NOTIFY meshNameChanged) + Q_PROPERTY(Status status READ status NOTIFY statusChanged REVISION 11) +public: + explicit QMesh(Qt3DCore::QNode *parent = nullptr); + ~QMesh(); + + enum Status { + None = 0, + Loading, + Ready, + Error + }; + Q_ENUM(Status) // LCOV_EXCL_LINE + + + QUrl source() const; + QString meshName() const; + Status status() const; + +public Q_SLOTS: + void setSource(const QUrl &source); + void setMeshName(const QString &meshName); + +Q_SIGNALS: + void sourceChanged(const QUrl &source); + void meshNameChanged(const QString &meshName); + void statusChanged(Status status); + +protected: + explicit QMesh(QMeshPrivate &dd, Qt3DCore::QNode *parent = nullptr); + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &change) override; + +private: + Q_DECLARE_PRIVATE(QMesh) +}; + +} + +QT_END_NAMESPACE + +#endif // of QT3DRENDER_QMESH_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qmultisampleantialiasing.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qmultisampleantialiasing.h new file mode 100644 index 0000000..087f32c --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qmultisampleantialiasing.h @@ -0,0 +1,67 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QMULTISAMPLEANTIALIASING_H +#define QT3DRENDER_QMULTISAMPLEANTIALIASING_H + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QMultiSampleAntiAliasingPrivate; + +class QT3DRENDERSHARED_EXPORT QMultiSampleAntiAliasing : public QRenderState +{ + Q_OBJECT + +public: + explicit QMultiSampleAntiAliasing(Qt3DCore::QNode *parent = nullptr); + ~QMultiSampleAntiAliasing(); + +private: + Q_DECLARE_PRIVATE(QMultiSampleAntiAliasing) +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QMULTISAMPLEANTIALIASING_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qnodepthmask.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qnodepthmask.h new file mode 100644 index 0000000..2017159 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qnodepthmask.h @@ -0,0 +1,67 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Copyright (C) 2016 The Qt Company Ltd and/or its subsidiary(-ies). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QNODEPTHMASK_H +#define QT3DRENDER_QNODEPTHMASK_H + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QNoDepthMaskPrivate; + +class QT3DRENDERSHARED_EXPORT QNoDepthMask : public QRenderState +{ + Q_OBJECT +public: + explicit QNoDepthMask(Qt3DCore::QNode *parent = nullptr); + ~QNoDepthMask(); + +private: + Q_DECLARE_PRIVATE(QNoDepthMask) +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QNODEPTHMASK_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qnodraw.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qnodraw.h new file mode 100644 index 0000000..4547aee --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qnodraw.h @@ -0,0 +1,61 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QNODRAW_H +#define QT3DRENDER_QNODRAW_H + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QT3DRENDERSHARED_EXPORT QNoDraw : public QFrameGraphNode +{ + Q_OBJECT +public: + explicit QNoDraw(Qt3DCore::QNode *parent = nullptr); + ~QNoDraw(); +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QNODRAW_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qobjectpicker.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qobjectpicker.h new file mode 100644 index 0000000..9f3b138 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qobjectpicker.h @@ -0,0 +1,100 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QOBJECTPICKER_H +#define QT3DRENDER_QOBJECTPICKER_H + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QAttribute; +class QObjectPickerPrivate; +class QPickEvent; + +class QT3DRENDERSHARED_EXPORT QObjectPicker : public Qt3DCore::QComponent +{ + Q_OBJECT + Q_PROPERTY(bool hoverEnabled READ isHoverEnabled WRITE setHoverEnabled NOTIFY hoverEnabledChanged) + Q_PROPERTY(bool dragEnabled READ isDragEnabled WRITE setDragEnabled NOTIFY dragEnabledChanged) + Q_PROPERTY(bool pressed READ isPressed NOTIFY pressedChanged) + Q_PROPERTY(bool containsMouse READ containsMouse NOTIFY containsMouseChanged) + +public: + explicit QObjectPicker(QNode *parent = nullptr); + ~QObjectPicker(); + + bool isHoverEnabled() const; + bool isDragEnabled() const; + + bool containsMouse() const; + bool isPressed() const; + +public Q_SLOTS: + void setHoverEnabled(bool hoverEnabled); + void setDragEnabled(bool dragEnabled); + +Q_SIGNALS: + void pressed(Qt3DRender::QPickEvent *pick); + void released(Qt3DRender::QPickEvent *pick); + void clicked(Qt3DRender::QPickEvent *pick); + void moved(Qt3DRender::QPickEvent *pick); + void entered(); + void exited(); + void hoverEnabledChanged(bool hoverEnabled); + void dragEnabledChanged(bool dragEnabled); + void pressedChanged(bool pressed); + void containsMouseChanged(bool containsMouse); + +protected: + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &change) override; + +private: + Q_DECLARE_PRIVATE(QObjectPicker) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +} // Qt3D + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QOBJECTPICKER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qpaintedtextureimage.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qpaintedtextureimage.h new file mode 100644 index 0000000..5b884a4 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qpaintedtextureimage.h @@ -0,0 +1,93 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QPAINTEDTEXTURE_H +#define QT3DRENDER_QPAINTEDTEXTURE_H + +#include + +QT_BEGIN_NAMESPACE + +class QPainter; + +namespace Qt3DRender { + +class QPaintedTextureImagePrivate; + +class QT3DRENDERSHARED_EXPORT QPaintedTextureImage : public QAbstractTextureImage +{ + Q_OBJECT + Q_PROPERTY(int width READ width WRITE setWidth NOTIFY widthChanged) + Q_PROPERTY(int height READ height WRITE setHeight NOTIFY heightChanged) + Q_PROPERTY(QSize size READ size WRITE setSize NOTIFY sizeChanged) + +public: + explicit QPaintedTextureImage(Qt3DCore::QNode *parent = nullptr); + ~QPaintedTextureImage(); + + int width() const; + int height() const; + QSize size() const; + + void update(const QRect &rect = QRect()); + +public Q_SLOTS: + void setWidth(int w); + void setHeight(int h); + void setSize(QSize size); + +Q_SIGNALS: + void widthChanged(int w); + void heightChanged(int w); + void sizeChanged(QSize size); + +protected: + virtual void paint(QPainter *painter) = 0; + +private: + Q_DECLARE_PRIVATE(QPaintedTextureImage) + + QTextureImageDataGeneratorPtr dataGenerator() const override; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QPAINTEDTEXTURE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qparameter.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qparameter.h new file mode 100644 index 0000000..169543e --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qparameter.h @@ -0,0 +1,89 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QPARAMETER_H +#define QT3DRENDER_QPARAMETER_H + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QParameterPrivate; +class QAbstractTexture; + +class QT3DRENDERSHARED_EXPORT QParameter : public Qt3DCore::QNode +{ + Q_OBJECT + Q_PROPERTY(QString name READ name WRITE setName NOTIFY nameChanged) + Q_PROPERTY(QVariant value READ value WRITE setValue NOTIFY valueChanged) + +public: + explicit QParameter(Qt3DCore::QNode *parent = nullptr); + explicit QParameter(const QString &name, const QVariant& value, Qt3DCore::QNode *parent = nullptr); + explicit QParameter(const QString &name, QAbstractTexture *texture, Qt3DCore::QNode *parent = nullptr); + ~QParameter(); + + QString name() const; + QVariant value() const; + +public Q_SLOTS: + void setName(const QString &name); + void setValue(const QVariant &dv); + +Q_SIGNALS: + void valueChanged(const QVariant &value); + void nameChanged(const QString &name); + +protected: + QParameter(QParameterPrivate &dd, Qt3DCore::QNode *parent = nullptr); + +private: + Q_DECLARE_PRIVATE(QParameter) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_PARAMETER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qpickevent.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qpickevent.h new file mode 100644 index 0000000..7d85404 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qpickevent.h @@ -0,0 +1,123 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QPICKEVENT_H +#define QT3DRENDER_QPICKEVENT_H + +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QPickEventPrivate; + +class QPickEvent; +typedef QSharedPointer QPickEventPtr; + +class QT3DRENDERSHARED_EXPORT QPickEvent : public QObject +{ + Q_OBJECT + Q_PROPERTY(bool accepted READ isAccepted WRITE setAccepted NOTIFY acceptedChanged) + Q_PROPERTY(QPointF position READ position CONSTANT) + Q_PROPERTY(float distance READ distance CONSTANT) + Q_PROPERTY(QVector3D localIntersection READ localIntersection CONSTANT) + Q_PROPERTY(QVector3D worldIntersection READ worldIntersection CONSTANT) + Q_PROPERTY(Qt3DRender::QPickEvent::Buttons button READ button CONSTANT) + Q_PROPERTY(int buttons READ buttons CONSTANT) + Q_PROPERTY(int modifiers READ modifiers CONSTANT) +public: + enum Buttons { + LeftButton = Qt::LeftButton, + RightButton = Qt::RightButton, + MiddleButton = Qt::MiddleButton, + BackButton = Qt::BackButton, + NoButton = Qt::NoButton + }; + Q_ENUM(Buttons) // LCOV_EXCL_LINE + + enum Modifiers { + NoModifier = Qt::NoModifier, + ShiftModifier = Qt::ShiftModifier, + ControlModifier = Qt::ControlModifier, + AltModifier = Qt::AltModifier, + MetaModifier = Qt::MetaModifier, + KeypadModifier = Qt::KeypadModifier + }; + Q_ENUM(Modifiers) // LCOV_EXCL_LINE + + QPickEvent(); + QPickEvent(const QPointF &position, const QVector3D& worldIntersection, const QVector3D& localIntersection, float distance); + QPickEvent(const QPointF &position, const QVector3D& worldIntersection, const QVector3D& localIntersection, float distance, Buttons button, int buttons, int modifiers); + ~QPickEvent(); + + bool isAccepted() const; + +public Q_SLOTS: + void setAccepted(bool accepted); + +public: + QPointF position() const; + float distance() const; + QVector3D worldIntersection() const; + QVector3D localIntersection() const; + Buttons button() const; + int buttons() const; + int modifiers() const; + +Q_SIGNALS: + void acceptedChanged(bool accepted); + +protected: + explicit QPickEvent(QObjectPrivate &dd, QObject *parent = nullptr); + +private: + Q_DECLARE_PRIVATE(QPickEvent) +}; + +} // Qt3DRender + +QT_END_NAMESPACE + +Q_DECLARE_METATYPE(Qt3DRender::QPickEvent*) // LCOV_EXCL_LINE + +#endif // QT3DRENDER_QPICKEVENT_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qpickingsettings.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qpickingsettings.h new file mode 100644 index 0000000..9c8a2c8 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qpickingsettings.h @@ -0,0 +1,113 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QPICKINGSETTINGS_H +#define QT3DRENDER_QPICKINGSETTINGS_H + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QPickingSettingsPrivate; + +// TO DO: Qt 6 -> Make this a QObject + +class QT3DRENDERSHARED_EXPORT QPickingSettings : public Qt3DCore::QNode +{ + Q_OBJECT + Q_PROPERTY(PickMethod pickMethod READ pickMethod WRITE setPickMethod NOTIFY pickMethodChanged) + Q_PROPERTY(PickResultMode pickResultMode READ pickResultMode WRITE setPickResultMode NOTIFY pickResultModeChanged) + Q_PROPERTY(FaceOrientationPickingMode faceOrientationPickingMode READ faceOrientationPickingMode WRITE setFaceOrientationPickingMode NOTIFY faceOrientationPickingModeChanged) + Q_PROPERTY(float worldSpaceTolerance READ worldSpaceTolerance WRITE setWorldSpaceTolerance NOTIFY worldSpaceToleranceChanged REVISION 10) +public: + explicit QPickingSettings(Qt3DCore::QNode *parent = nullptr); + ~QPickingSettings(); + + enum PickMethod { + BoundingVolumePicking = 0x00, + TrianglePicking = 0x01, + LinePicking = 0x02, + PointPicking = 0x04, + PrimitivePicking = TrianglePicking | LinePicking | PointPicking + }; + Q_ENUM(PickMethod) // LCOV_EXCL_LINE + + enum PickResultMode { + NearestPick, + AllPicks + }; + Q_ENUM(PickResultMode) // LCOV_EXCL_LINE + + enum FaceOrientationPickingMode { + FrontFace = 0x01, + BackFace = 0x02, + FrontAndBackFace = 0x03 + }; + Q_ENUM(FaceOrientationPickingMode) // LCOV_EXCL_LINE + + PickMethod pickMethod() const; + PickResultMode pickResultMode() const; + FaceOrientationPickingMode faceOrientationPickingMode() const; + float worldSpaceTolerance() const; + +public Q_SLOTS: + void setPickMethod(PickMethod pickMethod); + void setPickResultMode(PickResultMode pickResultMode); + void setFaceOrientationPickingMode(FaceOrientationPickingMode faceOrientationPickingMode); + void setWorldSpaceTolerance(float worldSpaceTolerance); + +Q_SIGNALS: + void pickMethodChanged(QPickingSettings::PickMethod pickMethod); + void pickResultModeChanged(QPickingSettings::PickResultMode pickResult); + void faceOrientationPickingModeChanged(QPickingSettings::FaceOrientationPickingMode faceOrientationPickingMode); + void worldSpaceToleranceChanged(float worldSpaceTolerance); + +protected: + Q_DECLARE_PRIVATE(QPickingSettings) + explicit QPickingSettings(QPickingSettingsPrivate &dd, Qt3DCore::QNode *parent = nullptr); +}; + +} // namespace Qt3Drender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QPICKINGSETTINGS_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qpicklineevent.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qpicklineevent.h new file mode 100644 index 0000000..09697ad --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qpicklineevent.h @@ -0,0 +1,78 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QPICKLINEEVENT_H +#define QT3DRENDER_QPICKLINEEVENT_H + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { +class QPickLineEventPrivate; + +class QT3DRENDERSHARED_EXPORT QPickLineEvent : public QPickEvent +{ + Q_OBJECT + Q_PROPERTY(uint edgeIndex READ edgeIndex CONSTANT) + Q_PROPERTY(uint vertex1Index READ vertex1Index CONSTANT) + Q_PROPERTY(uint vertex2Index READ vertex2Index CONSTANT) +public: + QPickLineEvent(); + QPickLineEvent(const QPointF &position, const QVector3D& worldIntersection, const QVector3D& localIntersection, float distance, + uint edgeIndex, uint vertex1Index, uint vertex2Index, Buttons button, int buttons, int modifiers); + ~QPickLineEvent(); + +public: + uint edgeIndex() const; + uint vertex1Index() const; + uint vertex2Index() const; + +private: + Q_DECLARE_PRIVATE(QPickLineEvent) +}; + +typedef QSharedPointer QPickLineEventPtr; + +} // Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QPICKLINEEVENT_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qpickpointevent.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qpickpointevent.h new file mode 100644 index 0000000..f298f64 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qpickpointevent.h @@ -0,0 +1,74 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QPICKPOINTEVENT_H +#define QT3DRENDER_QPICKPOINTEVENT_H + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { +class QPickPointEventPrivate; + +class QT3DRENDERSHARED_EXPORT QPickPointEvent : public QPickEvent +{ + Q_OBJECT + Q_PROPERTY(uint pointIndex READ pointIndex CONSTANT) +public: + QPickPointEvent(); + QPickPointEvent(const QPointF &position, const QVector3D& worldIntersection, const QVector3D& localIntersection, float distance, + uint pointIndex, Buttons button, int buttons, int modifiers); + ~QPickPointEvent(); + +public: + uint pointIndex() const; + +private: + Q_DECLARE_PRIVATE(QPickPointEvent) +}; + +typedef QSharedPointer QPickPointEventPtr; + +} // Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QPICKPOINTEVENT_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qpicktriangleevent.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qpicktriangleevent.h new file mode 100644 index 0000000..f116af2 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qpicktriangleevent.h @@ -0,0 +1,85 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QPICKTRIANGLEEVENT_H +#define QT3DRENDER_QPICKTRIANGLEEVENT_H + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { +class QPickTriangleEventPrivate; + +class QT3DRENDERSHARED_EXPORT QPickTriangleEvent : public QPickEvent +{ + Q_OBJECT + Q_PROPERTY(uint triangleIndex READ triangleIndex CONSTANT) + Q_PROPERTY(uint vertex1Index READ vertex1Index CONSTANT) + Q_PROPERTY(uint vertex2Index READ vertex2Index CONSTANT) + Q_PROPERTY(uint vertex3Index READ vertex3Index CONSTANT) + Q_PROPERTY(QVector3D uvw READ uvw CONSTANT) +public: + QPickTriangleEvent(); + QPickTriangleEvent(const QPointF &position, const QVector3D& worldIntersection, const QVector3D& localIntersection, float distance, + uint triangleIndex, uint vertex1Index, uint vertex2Index, uint vertex3Index); + QPickTriangleEvent(const QPointF &position, const QVector3D& worldIntersection, const QVector3D& localIntersection, float distance, + uint triangleIndex, uint vertex1Index, uint vertex2Index, uint vertex3Index, Buttons button, int buttons, int modifiers, + const QVector3D &uvw); + ~QPickTriangleEvent(); + +public: + uint triangleIndex() const; + uint vertex1Index() const; + uint vertex2Index() const; + uint vertex3Index() const; + QVector3D uvw() const; + +private: + Q_DECLARE_PRIVATE(QPickTriangleEvent) +}; + +typedef QSharedPointer QPickTriangleEventPtr; + +} // Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QPICKTRIANGLEEVENT_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qpointlight.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qpointlight.h new file mode 100644 index 0000000..16e0485 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qpointlight.h @@ -0,0 +1,85 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QPOINTLIGHT_H +#define QT3DRENDER_QPOINTLIGHT_H + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QPointLightPrivate; + +class QT3DRENDERSHARED_EXPORT QPointLight : public QAbstractLight +{ + Q_OBJECT + Q_PROPERTY(float constantAttenuation READ constantAttenuation WRITE setConstantAttenuation NOTIFY constantAttenuationChanged) + Q_PROPERTY(float linearAttenuation READ linearAttenuation WRITE setLinearAttenuation NOTIFY linearAttenuationChanged) + Q_PROPERTY(float quadraticAttenuation READ quadraticAttenuation WRITE setQuadraticAttenuation NOTIFY quadraticAttenuationChanged) + +public: + explicit QPointLight(Qt3DCore::QNode *parent = nullptr); + ~QPointLight(); + + float constantAttenuation() const; + float linearAttenuation() const; + float quadraticAttenuation() const; + +public Q_SLOTS: + void setConstantAttenuation(float value); + void setLinearAttenuation(float value); + void setQuadraticAttenuation(float value); + +Q_SIGNALS: + void constantAttenuationChanged(float constantAttenuation); + void linearAttenuationChanged(float linearAttenuation); + void quadraticAttenuationChanged(float quadraticAttenuation); + +protected: + Q_DECLARE_PRIVATE(QPointLight) + QPointLight(QPointLightPrivate &dd, Qt3DCore::QNode *parent); +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QPOINTLIGHT_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qpointsize.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qpointsize.h new file mode 100644 index 0000000..7e50a79 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qpointsize.h @@ -0,0 +1,86 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ +#ifndef QT3DRENDER_QPOINTSIZE_H +#define QT3DRENDER_QPOINTSIZE_H + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QPointSizePrivate; + +class QT3DRENDERSHARED_EXPORT QPointSize : public QRenderState +{ + Q_OBJECT + Q_PROPERTY(SizeMode sizeMode READ sizeMode WRITE setSizeMode NOTIFY sizeModeChanged) + Q_PROPERTY(float value READ value WRITE setValue NOTIFY valueChanged) + +public: + enum SizeMode { + Fixed = 0, + Programmable = 1 + }; + Q_ENUM(SizeMode) // LCOV_EXCL_LINE + + explicit QPointSize(Qt3DCore::QNode *parent = nullptr); + ~QPointSize(); + + SizeMode sizeMode() const; + float value() const; + +public Q_SLOTS: + void setSizeMode(SizeMode sizeMode); + void setValue(float value); + +Q_SIGNALS: + void sizeModeChanged(SizeMode sizeMode); + void valueChanged(float value); + +private: + Q_DECLARE_PRIVATE(QPointSize) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QPOINTSIZE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qpolygonoffset.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qpolygonoffset.h new file mode 100644 index 0000000..f89203c --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qpolygonoffset.h @@ -0,0 +1,81 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QPOLYGONOFFSET_H +#define QT3DRENDER_QPOLYGONOFFSET_H + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QPolygonOffsetPrivate; + +class QT3DRENDERSHARED_EXPORT QPolygonOffset : public QRenderState +{ + Q_OBJECT + + Q_PROPERTY(float scaleFactor READ scaleFactor WRITE setScaleFactor NOTIFY scaleFactorChanged) + Q_PROPERTY(float depthSteps READ depthSteps WRITE setDepthSteps NOTIFY depthStepsChanged) +public: + explicit QPolygonOffset(Qt3DCore::QNode *parent = nullptr); + ~QPolygonOffset(); + + float scaleFactor() const; + float depthSteps() const; + +public Q_SLOTS: + void setScaleFactor(float scaleFactor); + void setDepthSteps(float depthSteps); + +Q_SIGNALS: + void scaleFactorChanged(float scaleFactor); + void depthStepsChanged(float depthSteps); + +private: + Q_DECLARE_PRIVATE(QPolygonOffset) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QPOLYGONOFFSET_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qproximityfilter.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qproximityfilter.h new file mode 100644 index 0000000..b101f6c --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qproximityfilter.h @@ -0,0 +1,84 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QPROXIMITYFILTER_H +#define QT3DRENDER_QPROXIMITYFILTER_H + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QProximityFilterPrivate; + +class QT3DRENDERSHARED_EXPORT QProximityFilter : public QFrameGraphNode +{ + Q_OBJECT + Q_PROPERTY(Qt3DCore::QEntity *entity READ entity WRITE setEntity NOTIFY entityChanged) + Q_PROPERTY(float distanceThreshold READ distanceThreshold WRITE setDistanceThreshold NOTIFY distanceThresholdChanged) + +public: + explicit QProximityFilter(Qt3DCore::QNode *parent = nullptr); + ~QProximityFilter(); + + Qt3DCore::QEntity *entity() const; + float distanceThreshold() const; + +public Q_SLOTS: + void setEntity(Qt3DCore::QEntity *entity); + void setDistanceThreshold(float distanceThreshold); + +Q_SIGNALS: + void entityChanged(Qt3DCore::QEntity *entity); + void distanceThresholdChanged(float distanceThreshold); + +protected: + explicit QProximityFilter(QProximityFilterPrivate &dd, Qt3DCore::QNode *parent = nullptr); + +private: + Q_DECLARE_PRIVATE(QProximityFilter) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QPROXIMITYFILTER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qraycaster.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qraycaster.h new file mode 100644 index 0000000..088c466 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qraycaster.h @@ -0,0 +1,88 @@ +/**************************************************************************** +** +** Copyright (C) 2018 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QRAYCASTER_H +#define QT3DRENDER_QRAYCASTER_H + +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QT3DRENDERSHARED_EXPORT QRayCaster : public QAbstractRayCaster +{ + Q_OBJECT + Q_PROPERTY(QVector3D origin READ origin WRITE setOrigin NOTIFY originChanged) + Q_PROPERTY(QVector3D direction READ direction WRITE setDirection NOTIFY directionChanged) + Q_PROPERTY(float length READ length WRITE setLength NOTIFY lengthChanged) + +public: + explicit QRayCaster(QNode *parent = nullptr); + ~QRayCaster(); + + QVector3D origin() const; + QVector3D direction() const; + float length() const; + +public Q_SLOTS: + void setOrigin(const QVector3D& origin); + void setDirection(const QVector3D& direction); + void setLength(float length); + + void trigger(); + void trigger(const QVector3D& origin, const QVector3D& direction, float length); + +Q_SIGNALS: + void originChanged(const QVector3D &origin); + void directionChanged(const QVector3D &direction); + void lengthChanged(float length); + +protected: + explicit QRayCaster(QAbstractRayCasterPrivate &dd, QNode *parent = nullptr); +}; + +} // Qt3D + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QRAYCASTER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qraycasterhit.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qraycasterhit.h new file mode 100644 index 0000000..4764994 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qraycasterhit.h @@ -0,0 +1,99 @@ +/**************************************************************************** +** +** Copyright (C) 2018 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QRAYCASTERHIT_H +#define QT3DRENDER_QRAYCASTERHIT_H + +#include +#include + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QRayCasterHitData; +class QAbstractRayCasterPrivate; + +class QT3DRENDERSHARED_EXPORT QRayCasterHit +{ + Q_GADGET +public: + enum HitType { + TriangleHit, + LineHit, + PointHit, + EntityHit + }; + Q_ENUM(HitType) + + QRayCasterHit(); + explicit QRayCasterHit(QRayCasterHit::HitType type, Qt3DCore::QNodeId id, float distance, + const QVector3D &localIntersect, const QVector3D &worldIntersect, + uint primitiveIndex, uint v1, uint v2, uint v3); + QRayCasterHit(const QRayCasterHit &other); + ~QRayCasterHit(); + + QRayCasterHit &operator =(const QRayCasterHit &other); + + HitType type() const; + Qt3DCore::QNodeId entityId() const; + Qt3DCore::QEntity *entity() const; + float distance() const; + QVector3D localIntersection() const; + QVector3D worldIntersection() const; + uint primitiveIndex() const; + uint vertex1Index() const; + uint vertex2Index() const; + uint vertex3Index() const; + +private: + friend class QAbstractRayCasterPrivate; + void setEntity(Qt3DCore::QEntity *entity) const; + + QSharedDataPointer d; +}; + +} // Qt3D + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QRAYCASTERHIT_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qrenderaspect.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qrenderaspect.h new file mode 100644 index 0000000..bde60c9 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qrenderaspect.h @@ -0,0 +1,107 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QRENDERASPECT_H +#define QT3DRENDER_QRENDERASPECT_H + +#include +#include + +QT_BEGIN_NAMESPACE + + +class QOpenGLContext; + +namespace Qt3DRender { + +#if defined(QT_BUILD_INTERNAL) +class TestAspect; +#endif + +namespace Render { +class Renderer; +class QRenderPlugin; +} + +class QRenderAspectPrivate; + +#if defined(QT_BUILD_INTERNAL) +class QRenderAspectTester; +#endif + +class QT3DRENDERSHARED_EXPORT QRenderAspect : public Qt3DCore::QAbstractAspect +{ + Q_OBJECT +public: + enum RenderType { + Synchronous, + Threaded + }; + + explicit QRenderAspect(QObject *parent = nullptr); + explicit QRenderAspect(RenderType type, QObject *parent = nullptr); + ~QRenderAspect(); + +protected: + QRenderAspect(QRenderAspectPrivate &dd, QObject *parent); + Q_DECLARE_PRIVATE(QRenderAspect) + +private: + QVector jobsToExecute(qint64 time) override; + + QVariant executeCommand(const QStringList &args) override; + + void onRegistered() override; + void onUnregistered() override; + + void onEngineStartup() override; + + friend class Render::Renderer; + friend class Render::QRenderPlugin; +#if defined(QT_BUILD_INTERNAL) + friend class QRenderAspectTester; + friend class TestAspect; +#endif +}; + +} + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QRENDERASPECT_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qrendercapture.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qrendercapture.h new file mode 100644 index 0000000..119d6a6 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qrendercapture.h @@ -0,0 +1,104 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: http://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QRENDERCAPTURE_H +#define QRENDERCAPTURE_H + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QRenderCapturePrivate; +class QRenderCaptureReplyPrivate; + +class QT3DRENDERSHARED_EXPORT QRenderCaptureReply : public QObject +{ + Q_OBJECT + Q_PROPERTY(QImage image READ image CONSTANT) + Q_PROPERTY(int captureId READ captureId CONSTANT) + Q_PROPERTY(bool complete READ isComplete NOTIFY completed) + +public: + + QImage image() const; + Q_DECL_DEPRECATED int captureId() const; + bool isComplete() const; + + Q_INVOKABLE bool saveImage(const QString &fileName) const; +#if QT_DEPRECATED_SINCE(5, 9) + // ### Qt 6: remove this + Q_DECL_DEPRECATED_X("Use saveImage instead") Q_INVOKABLE void saveToFile(const QString &fileName) const; +#endif + +Q_SIGNALS: + Q_DECL_DEPRECATED_X("Use completed instead") void completeChanged(bool isComplete); + void completed(); + +private: + Q_DECLARE_PRIVATE(QRenderCaptureReply) + + QRenderCaptureReply(QObject *parent = nullptr); + + friend class QRenderCapturePrivate; +}; + +class QT3DRENDERSHARED_EXPORT QRenderCapture : public QFrameGraphNode +{ + Q_OBJECT +public: + explicit QRenderCapture(Qt3DCore::QNode *parent = nullptr); + + Q_INVOKABLE Q_DECL_DEPRECATED_X("Use the overload with no id parameter") + Qt3DRender::QRenderCaptureReply *requestCapture(int captureId); + Q_REVISION(9) Q_INVOKABLE Qt3DRender::QRenderCaptureReply *requestCapture(); + Q_REVISION(10) Q_INVOKABLE Qt3DRender::QRenderCaptureReply *requestCapture(const QRect &rect); + +protected: + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &change) override; + +private: + Q_DECLARE_PRIVATE(QRenderCapture) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +} // Qt3DRender + +QT_END_NAMESPACE + +#endif // QRENDERCAPTURE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qrenderpass.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qrenderpass.h new file mode 100644 index 0000000..14bd34b --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qrenderpass.h @@ -0,0 +1,103 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Copyright (C) 2016 The Qt Company Ltd and/or its subsidiary(-ies). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QRENDERPASS_H +#define QT3DRENDER_QRENDERPASS_H + +#include + +#include +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QParameter; +class QRenderState; +typedef QVector ParameterList; + +class QRenderPassPrivate; + +class QT3DRENDERSHARED_EXPORT QRenderPass : public Qt3DCore::QNode +{ + Q_OBJECT + Q_PROPERTY(Qt3DRender::QShaderProgram *shaderProgram READ shaderProgram WRITE setShaderProgram NOTIFY shaderProgramChanged) + +public: + explicit QRenderPass(Qt3DCore::QNode *parent = nullptr); + ~QRenderPass(); + + QShaderProgram *shaderProgram() const; + + void addFilterKey(QFilterKey *filterKey); + void removeFilterKey(QFilterKey *filterKey); + QVector filterKeys() const; + + void addRenderState(QRenderState *state); + void removeRenderState(QRenderState *state); + QVector renderStates() const; + + void addParameter(QParameter *p); + void removeParameter(QParameter *p); + QVector parameters() const; + +public Q_SLOTS: + void setShaderProgram(QShaderProgram *shaderProgram); + +Q_SIGNALS: + void shaderProgramChanged(QShaderProgram *shaderProgram); + +protected: + explicit QRenderPass(QRenderPassPrivate &dd, Qt3DCore::QNode *parent = nullptr); + +private: + Q_DECLARE_PRIVATE(QRenderPass) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +} + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QRENDERPASS_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qrenderpassfilter.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qrenderpassfilter.h new file mode 100644 index 0000000..ffb305e --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qrenderpassfilter.h @@ -0,0 +1,84 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QRENDERPASSFILTER_H +#define QT3DRENDER_QRENDERPASSFILTER_H + +#include +#include +#include + + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QRenderPassFilterPrivate; +class QFilterKey; +class QParameter; + +class QT3DRENDERSHARED_EXPORT QRenderPassFilter : public QFrameGraphNode +{ + Q_OBJECT + +public: + explicit QRenderPassFilter(Qt3DCore::QNode *parent = nullptr); + ~QRenderPassFilter(); + + QVector matchAny() const; + void addMatch(QFilterKey *filterKey); + void removeMatch(QFilterKey *filterKey); + + void addParameter(QParameter *parameter); + void removeParameter(QParameter *parameter); + QVector parameters() const; + +protected: + explicit QRenderPassFilter(QRenderPassFilterPrivate &dd, Qt3DCore::QNode *parent = nullptr); + +private: + Q_DECLARE_PRIVATE(QRenderPassFilter) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QRENDERPASSFILTER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qrendersettings.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qrendersettings.h new file mode 100644 index 0000000..b759ebd --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qrendersettings.h @@ -0,0 +1,101 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QRENDERSETTINGS_H +#define QT3DRENDER_QRENDERSETTINGS_H + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QFrameGraphNode; +class QRenderSettingsPrivate; + +class QT3DRENDERSHARED_EXPORT QRenderSettings : public Qt3DCore::QComponent +{ + Q_OBJECT + + Q_PROPERTY(Qt3DRender::QPickingSettings* pickingSettings READ pickingSettings CONSTANT) + Q_PROPERTY(RenderPolicy renderPolicy READ renderPolicy WRITE setRenderPolicy NOTIFY renderPolicyChanged) + Q_PROPERTY(Qt3DRender::QFrameGraphNode *activeFrameGraph READ activeFrameGraph WRITE setActiveFrameGraph NOTIFY activeFrameGraphChanged) + Q_CLASSINFO("DefaultProperty", "activeFrameGraph") + +public: + explicit QRenderSettings(Qt3DCore::QNode *parent = nullptr); + ~QRenderSettings(); + + enum RenderPolicy { + OnDemand, + Always + }; + Q_ENUM(RenderPolicy) // LCOV_EXCL_LINE + + QPickingSettings* pickingSettings(); + QFrameGraphNode *activeFrameGraph() const; + RenderPolicy renderPolicy() const; + +public Q_SLOTS: + void setActiveFrameGraph(QFrameGraphNode *activeFrameGraph); + void setRenderPolicy(RenderPolicy renderPolicy); + +Q_SIGNALS: + void activeFrameGraphChanged(QFrameGraphNode *activeFrameGraph); + void renderPolicyChanged(RenderPolicy renderPolicy); + +protected: + Q_DECLARE_PRIVATE(QRenderSettings) + explicit QRenderSettings(QRenderSettingsPrivate &dd, Qt3DCore::QNode *parent = nullptr); + +private: + Q_PRIVATE_SLOT(d_func(), void _q_onPickingMethodChanged(QPickingSettings::PickMethod)) + Q_PRIVATE_SLOT(d_func(), void _q_onPickResultModeChanged(QPickingSettings::PickResultMode)) + Q_PRIVATE_SLOT(d_func(), void _q_onFaceOrientationPickingModeChanged(QPickingSettings::FaceOrientationPickingMode)) + Q_PRIVATE_SLOT(d_func(), void _q_onWorldSpaceToleranceChanged(float)) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +} // namespace Qt3Drender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QRENDERSETTINGS_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qrenderstate.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qrenderstate.h new file mode 100644 index 0000000..6892432 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qrenderstate.h @@ -0,0 +1,71 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Copyright (C) 2016 The Qt Company Ltd and/or its subsidiary(-ies). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QRENDERSTATE_H +#define QT3DRENDER_QRENDERSTATE_H + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QRenderStatePrivate; + +class QT3DRENDERSHARED_EXPORT QRenderState : public Qt3DCore::QNode +{ + Q_OBJECT +public: + ~QRenderState(); + +protected: + explicit QRenderState(QRenderStatePrivate &dd, Qt3DCore::QNode *parent = nullptr); + +private: + Q_DECLARE_PRIVATE(QRenderState) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QRENDERSTATE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qrenderstateset.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qrenderstateset.h new file mode 100644 index 0000000..3df8694 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qrenderstateset.h @@ -0,0 +1,76 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QRENDERSTATESET_H +#define QT3DRENDER_QRENDERSTATESET_H + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QRenderStateSetPrivate; +class QRenderState; + +class QT3DRENDERSHARED_EXPORT QRenderStateSet : public QFrameGraphNode +{ + Q_OBJECT + +public: + explicit QRenderStateSet(Qt3DCore::QNode *parent = nullptr); + ~QRenderStateSet(); + + void addRenderState(QRenderState *state); + void removeRenderState(QRenderState *state); + QVector renderStates() const; + +protected: + explicit QRenderStateSet(QRenderStateSetPrivate &dd, Qt3DCore::QNode *parent = nullptr); + +private: + Q_DECLARE_PRIVATE(QRenderStateSet) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QRENDERSTATESET_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qrendersurfaceselector.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qrendersurfaceselector.h new file mode 100644 index 0000000..5d02731 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qrendersurfaceselector.h @@ -0,0 +1,93 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QRENDERSURFACESELECTOR_H +#define QT3DRENDER_QRENDERSURFACESELECTOR_H + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +class QSurface; +class QWindow; + +namespace Qt3DRender { + +class QRenderSurfaceSelectorPrivate; + +class QT3DRENDERSHARED_EXPORT QRenderSurfaceSelector : public Qt3DRender::QFrameGraphNode +{ + Q_OBJECT + Q_PROPERTY(QObject *surface READ surface WRITE setSurface NOTIFY surfaceChanged) + Q_PROPERTY(QSize externalRenderTargetSize READ externalRenderTargetSize WRITE setExternalRenderTargetSize NOTIFY externalRenderTargetSizeChanged) + Q_PROPERTY(float surfacePixelRatio READ surfacePixelRatio WRITE setSurfacePixelRatio NOTIFY surfacePixelRatioChanged) + +public: + explicit QRenderSurfaceSelector(Qt3DCore::QNode *parent = nullptr); + ~QRenderSurfaceSelector(); + + QObject *surface() const; + QSize externalRenderTargetSize() const; + float surfacePixelRatio() const; + +public Q_SLOTS: + void setSurface(QObject *surfaceObject); + void setSurfacePixelRatio(float ratio); + void setExternalRenderTargetSize(const QSize &size); + +Q_SIGNALS: + void surfaceChanged(QObject *surface); + void externalRenderTargetSizeChanged(const QSize &size); + void surfacePixelRatioChanged(float ratio); + +protected: + Q_DECLARE_PRIVATE(QRenderSurfaceSelector) + explicit QRenderSurfaceSelector(QRenderSurfaceSelectorPrivate &dd, Qt3DCore::QNode *parent = nullptr); + +private: + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QRENDERSURFACESELECTOR_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qrendertarget.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qrendertarget.h new file mode 100644 index 0000000..69bed5a --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qrendertarget.h @@ -0,0 +1,76 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QRENDERTARGET_H +#define QT3DRENDER_QRENDERTARGET_H + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QRenderTargetPrivate; +class QRenderTargetOutput; + +class QT3DRENDERSHARED_EXPORT QRenderTarget : public Qt3DCore::QComponent +{ + Q_OBJECT +public: + explicit QRenderTarget(Qt3DCore::QNode *parent = nullptr); + ~QRenderTarget(); + + void addOutput(QRenderTargetOutput *output); + void removeOutput(QRenderTargetOutput *output); + QVector outputs() const; + +protected: + explicit QRenderTarget(QRenderTargetPrivate &dd, Qt3DCore::QNode *parent = nullptr); + +private: + Q_DECLARE_PRIVATE(QRenderTarget) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QRENDERTARGET_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qrendertargetoutput.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qrendertargetoutput.h new file mode 100644 index 0000000..2eb99df --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qrendertargetoutput.h @@ -0,0 +1,124 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QRENDERTARGETOUTPUT_H +#define QT3DRENDER_QRENDERTARGETOUTPUT_H + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QAbstractTexture; +class QRenderTargetOutputPrivate; + +class QT3DRENDERSHARED_EXPORT QRenderTargetOutput : public Qt3DCore::QNode +{ + Q_OBJECT + Q_PROPERTY(AttachmentPoint attachmentPoint READ attachmentPoint WRITE setAttachmentPoint NOTIFY attachmentPointChanged) + Q_PROPERTY(QAbstractTexture *texture READ texture WRITE setTexture NOTIFY textureChanged) + Q_PROPERTY(int mipLevel READ mipLevel WRITE setMipLevel NOTIFY mipLevelChanged) + Q_PROPERTY(int layer READ layer WRITE setLayer NOTIFY layerChanged) + Q_PROPERTY(Qt3DRender::QAbstractTexture::CubeMapFace face READ face WRITE setFace NOTIFY faceChanged) + +public: + enum AttachmentPoint { + Color0 = 0, + Color1, + Color2, + Color3, + Color4, + Color5, + Color6, + Color7, + Color8, + Color9, + Color10, + Color11, + Color12, + Color13, + Color14, + Color15, + Depth, + Stencil, + DepthStencil + }; + Q_ENUM(AttachmentPoint) // LCOV_EXCL_LINE + + explicit QRenderTargetOutput(Qt3DCore::QNode *parent = nullptr); + ~QRenderTargetOutput(); + + AttachmentPoint attachmentPoint() const; + QAbstractTexture *texture() const; + int mipLevel() const; + int layer() const; + QAbstractTexture::CubeMapFace face() const; + +public Q_SLOTS: + void setAttachmentPoint(AttachmentPoint attachmentPoint); + void setTexture(QAbstractTexture *texture); + void setMipLevel(int level); + void setLayer(int layer); + void setFace(QAbstractTexture::CubeMapFace face); + +Q_SIGNALS: + void attachmentPointChanged(AttachmentPoint attachmentPoint); + void textureChanged(QAbstractTexture *texture); + void mipLevelChanged(int mipLevel); + void layerChanged(int layer); + void faceChanged(QAbstractTexture::CubeMapFace face); + +protected: + explicit QRenderTargetOutput(QRenderTargetOutputPrivate &dd, Qt3DCore::QNode *parent = nullptr); + +private: + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; + Q_DECLARE_PRIVATE(QRenderTargetOutput) +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +Q_DECLARE_METATYPE(Qt3DRender::QRenderTargetOutput::AttachmentPoint) // LCOV_EXCL_LINE + +#endif // QT3DRENDER_QRENDERTARGETOUTPUT_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qrendertargetselector.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qrendertargetselector.h new file mode 100644 index 0000000..5e8cd07 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qrendertargetselector.h @@ -0,0 +1,88 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QRENDERTARGETSELECTOR_H +#define QT3DRENDER_QRENDERTARGETSELECTOR_H + +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QRenderTargetSelectorPrivate; +class QRenderTarget; + +class QT3DRENDERSHARED_EXPORT QRenderTargetSelector : public QFrameGraphNode +{ + Q_OBJECT + Q_PROPERTY(Qt3DRender::QRenderTarget *target READ target WRITE setTarget NOTIFY targetChanged) +public: + explicit QRenderTargetSelector(Qt3DCore::QNode *parent = nullptr); + ~QRenderTargetSelector(); + + QRenderTarget *target() const; + + void setOutputs(const QVector &buffers); + QVector outputs() const; + +public Q_SLOTS: + void setTarget(QRenderTarget *target); + +Q_SIGNALS: + void targetChanged(QRenderTarget *target); + +protected: + explicit QRenderTargetSelector(QRenderTargetSelectorPrivate &dd, Qt3DCore::QNode *parent = nullptr); + +private: + Q_DECLARE_PRIVATE(QRenderTargetSelector) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +Q_DECLARE_METATYPE(QVector) // LCOV_EXCL_LINE + +#endif // QT3DRENDER_QRENDERTARGETSELECTOR_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qsceneloader.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qsceneloader.h new file mode 100644 index 0000000..c69a4ad --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qsceneloader.h @@ -0,0 +1,110 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QSCENELOADER_H +#define QT3DRENDER_QSCENELOADER_H + +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QSceneLoaderPrivate; + +class QT3DRENDERSHARED_EXPORT QSceneLoader : public Qt3DCore::QComponent +{ + Q_OBJECT + Q_PROPERTY(QUrl source READ source WRITE setSource NOTIFY sourceChanged) + Q_PROPERTY(Status status READ status NOTIFY statusChanged) +public: + explicit QSceneLoader(Qt3DCore::QNode *parent = nullptr); + ~QSceneLoader(); + + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &change) override; + enum Status { + None = 0, + Loading, + Ready, + Error + }; + Q_ENUM(Status) // LCOV_EXCL_LINE + + enum ComponentType { + UnknownComponent = 0, + GeometryRendererComponent, + TransformComponent, + MaterialComponent, + LightComponent, + CameraLensComponent + }; + Q_ENUM(ComponentType) + + QUrl source() const; + Status status() const; + + Q_REVISION(9) Q_INVOKABLE Qt3DCore::QEntity *entity(const QString &entityName) const; + Q_REVISION(9) Q_INVOKABLE QStringList entityNames() const; + Q_REVISION(9) Q_INVOKABLE Qt3DCore::QComponent *component(const QString &entityName, + ComponentType componentType) const; + +public Q_SLOTS: + void setSource(const QUrl &arg); + QT_DEPRECATED void setStatus(Status status); + +Q_SIGNALS: + void sourceChanged(const QUrl &source); + void statusChanged(Status status); + +protected: + explicit QSceneLoader(QSceneLoaderPrivate &dd, Qt3DCore::QNode *parent = nullptr); + +private: + Q_DECLARE_PRIVATE(QSceneLoader) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QSCENELOADER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qscissortest.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qscissortest.h new file mode 100644 index 0000000..f94e997 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qscissortest.h @@ -0,0 +1,90 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Copyright (C) 2016 The Qt Company Ltd and/or its subsidiary(-ies). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QSCISSORTEST_H +#define QT3DRENDER_QSCISSORTEST_H + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QScissorTestPrivate; + +class QT3DRENDERSHARED_EXPORT QScissorTest : public QRenderState +{ + Q_OBJECT + Q_PROPERTY(int left READ left WRITE setLeft NOTIFY leftChanged) + Q_PROPERTY(int bottom READ bottom WRITE setBottom NOTIFY bottomChanged) + Q_PROPERTY(int width READ width WRITE setWidth NOTIFY widthChanged) + Q_PROPERTY(int height READ height WRITE setHeight NOTIFY heightChanged) + +public: + explicit QScissorTest(Qt3DCore::QNode *parent = nullptr); + ~QScissorTest(); + + int left() const; + int bottom() const; + int width() const; + int height() const; + +public Q_SLOTS: + void setLeft(int left); + void setBottom(int bottom); + void setWidth(int width); + void setHeight(int height); + +Q_SIGNALS: + void leftChanged(int left); + void bottomChanged(int bottom); + void widthChanged(int width); + void heightChanged(int height); + +private: + Q_DECLARE_PRIVATE(QScissorTest) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QSCISSORTEST_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qscreenraycaster.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qscreenraycaster.h new file mode 100644 index 0000000..09ad943 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qscreenraycaster.h @@ -0,0 +1,80 @@ +/**************************************************************************** +** +** Copyright (C) 2018 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QSCREENRAYCASTER_H +#define QT3DRENDER_QSCREENRAYCASTER_H + +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QT3DRENDERSHARED_EXPORT QScreenRayCaster : public QAbstractRayCaster +{ + Q_OBJECT + + Q_PROPERTY(QPoint position READ position WRITE setPosition NOTIFY positionChanged) +public: + explicit QScreenRayCaster(QNode *parent = nullptr); + ~QScreenRayCaster(); + + QPoint position() const; + +public Q_SLOTS: + void setPosition(const QPoint &position); + + void trigger(); + void trigger(const QPoint &position); + +Q_SIGNALS: + void positionChanged(const QPoint &position); + +protected: + explicit QScreenRayCaster(QAbstractRayCasterPrivate &dd, QNode *parent = nullptr); +}; + +} // Qt3D + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QSCREENRAYCASTER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qseamlesscubemap.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qseamlesscubemap.h new file mode 100644 index 0000000..40ae0a9 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qseamlesscubemap.h @@ -0,0 +1,67 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QSEAMLESSCUBEMAP_H +#define QT3DRENDER_QSEAMLESSCUBEMAP_H + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QSeamlessCubemapPrivate; + +class QT3DRENDERSHARED_EXPORT QSeamlessCubemap : public QRenderState +{ + Q_OBJECT + +public: + explicit QSeamlessCubemap(Qt3DCore::QNode *parent = nullptr); + ~QSeamlessCubemap(); + +private: + Q_DECLARE_PRIVATE(QSeamlessCubemap) +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QSEAMLESSCUBEMAP_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qshaderdata.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qshaderdata.h new file mode 100644 index 0000000..5e57d11 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qshaderdata.h @@ -0,0 +1,88 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QSHADERDATA_H +#define QT3DRENDER_QSHADERDATA_H + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QShaderDataPrivate; + +class QT3DRENDERSHARED_EXPORT PropertyReaderInterface +{ +public: + virtual ~PropertyReaderInterface(); + virtual QVariant readProperty(const QVariant &v) = 0; +}; + +typedef QSharedPointer PropertyReaderInterfacePtr; + +class QT3DRENDERSHARED_EXPORT QShaderData : public Qt3DCore::QComponent +{ + Q_OBJECT +public: + explicit QShaderData(Qt3DCore::QNode *parent = nullptr); + ~QShaderData(); + + PropertyReaderInterfacePtr propertyReader() const; + + bool event(QEvent *event) override; + +protected: + explicit QShaderData(QShaderDataPrivate &dd, Qt3DCore::QNode *parent = nullptr); + +private: + Q_DECLARE_PRIVATE(QShaderData) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +Q_DECLARE_METATYPE(Qt3DRender::QShaderData*) // LCOV_EXCL_LINE +Q_DECLARE_METATYPE(QVector) // LCOV_EXCL_LINE + +#endif // QT3DRENDER_QSHADERDATA_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qshaderprogram.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qshaderprogram.h new file mode 100644 index 0000000..efcfa79 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qshaderprogram.h @@ -0,0 +1,132 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QSHADERPROGRAM_H +#define QT3DRENDER_QSHADERPROGRAM_H + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QShaderProgramPrivate; + +class QT3DRENDERSHARED_EXPORT QShaderProgram : public Qt3DCore::QNode +{ + Q_OBJECT + Q_PROPERTY(QByteArray vertexShaderCode READ vertexShaderCode WRITE setVertexShaderCode NOTIFY vertexShaderCodeChanged) + Q_PROPERTY(QByteArray tessellationControlShaderCode READ tessellationControlShaderCode WRITE setTessellationControlShaderCode NOTIFY tessellationControlShaderCodeChanged) + Q_PROPERTY(QByteArray tessellationEvaluationShaderCode READ tessellationEvaluationShaderCode WRITE setTessellationEvaluationShaderCode NOTIFY tessellationEvaluationShaderCodeChanged) + Q_PROPERTY(QByteArray geometryShaderCode READ geometryShaderCode WRITE setGeometryShaderCode NOTIFY geometryShaderCodeChanged) + Q_PROPERTY(QByteArray fragmentShaderCode READ fragmentShaderCode WRITE setFragmentShaderCode NOTIFY fragmentShaderCodeChanged) + Q_PROPERTY(QByteArray computeShaderCode READ computeShaderCode WRITE setComputeShaderCode NOTIFY computeShaderCodeChanged) + Q_PROPERTY(QString log READ log NOTIFY logChanged REVISION 9) + Q_PROPERTY(Status status READ status NOTIFY statusChanged REVISION 9) + +public: + explicit QShaderProgram(Qt3DCore::QNode *parent = nullptr); + ~QShaderProgram(); + + enum ShaderType { + Vertex = 0, + Fragment, + TessellationControl, + TessellationEvaluation, + Geometry, + Compute + }; + Q_ENUM(ShaderType) // LCOV_EXCL_LINE + + enum Status { + NotReady = 0, + Ready, + Error + }; + Q_ENUM(Status) // LCOV_EXCL_LINE + + // Source code in-line + QByteArray vertexShaderCode() const; + QByteArray tessellationControlShaderCode() const; + QByteArray tessellationEvaluationShaderCode() const; + QByteArray geometryShaderCode() const; + QByteArray fragmentShaderCode() const; + QByteArray computeShaderCode() const; + + void setShaderCode(ShaderType type, const QByteArray &shaderCode); + QByteArray shaderCode(ShaderType type) const; + + QString log() const; + Status status() const; + + Q_INVOKABLE static QByteArray loadSource(const QUrl &sourceUrl); + +public Q_SLOTS: + void setVertexShaderCode(const QByteArray &vertexShaderCode); + void setTessellationControlShaderCode(const QByteArray &tessellationControlShaderCode); + void setTessellationEvaluationShaderCode(const QByteArray &tessellationEvaluationShaderCode); + void setGeometryShaderCode(const QByteArray &geometryShaderCode); + void setFragmentShaderCode(const QByteArray &fragmentShaderCode); + void setComputeShaderCode(const QByteArray &computeShaderCode); + +Q_SIGNALS: + void vertexShaderCodeChanged(const QByteArray &vertexShaderCode); + void tessellationControlShaderCodeChanged(const QByteArray &tessellationControlShaderCode); + void tessellationEvaluationShaderCodeChanged(const QByteArray &tessellationEvaluationShaderCode); + void geometryShaderCodeChanged(const QByteArray &geometryShaderCode); + void fragmentShaderCodeChanged(const QByteArray &fragmentShaderCode); + void computeShaderCodeChanged(const QByteArray &computeShaderCode); + void logChanged(const QString &log); + void statusChanged(Status status); + +protected: + explicit QShaderProgram(QShaderProgramPrivate &dd, Qt3DCore::QNode *parent = nullptr); + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &change) override; + +private: + Q_DECLARE_PRIVATE(QShaderProgram) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +} + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QSHADERPROGRAM_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qshaderprogrambuilder.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qshaderprogrambuilder.h new file mode 100644 index 0000000..fbbf7c7 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qshaderprogrambuilder.h @@ -0,0 +1,112 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QSHADERPROGRAMBUILDER_H +#define QT3DRENDER_QSHADERPROGRAMBUILDER_H + +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QShaderProgram; +class QShaderProgramBuilderPrivate; + +class QT3DRENDERSHARED_EXPORT QShaderProgramBuilder : public Qt3DCore::QNode +{ + Q_OBJECT + Q_PROPERTY(Qt3DRender::QShaderProgram* shaderProgram READ shaderProgram WRITE setShaderProgram NOTIFY shaderProgramChanged) + Q_PROPERTY(QStringList enabledLayers READ enabledLayers WRITE setEnabledLayers NOTIFY enabledLayersChanged) + Q_PROPERTY(QUrl vertexShaderGraph READ vertexShaderGraph WRITE setVertexShaderGraph NOTIFY vertexShaderGraphChanged) + Q_PROPERTY(QUrl tessellationControlShaderGraph READ tessellationControlShaderGraph WRITE setTessellationControlShaderGraph NOTIFY tessellationControlShaderGraphChanged) + Q_PROPERTY(QUrl tessellationEvaluationShaderGraph READ tessellationEvaluationShaderGraph WRITE setTessellationEvaluationShaderGraph NOTIFY tessellationEvaluationShaderGraphChanged) + Q_PROPERTY(QUrl geometryShaderGraph READ geometryShaderGraph WRITE setGeometryShaderGraph NOTIFY geometryShaderGraphChanged) + Q_PROPERTY(QUrl fragmentShaderGraph READ fragmentShaderGraph WRITE setFragmentShaderGraph NOTIFY fragmentShaderGraphChanged) + Q_PROPERTY(QUrl computeShaderGraph READ computeShaderGraph WRITE setComputeShaderGraph NOTIFY computeShaderGraphChanged) + +public: + explicit QShaderProgramBuilder(Qt3DCore::QNode *parent = nullptr); + ~QShaderProgramBuilder(); + + QShaderProgram *shaderProgram() const; + QStringList enabledLayers() const; + QUrl vertexShaderGraph() const; + QUrl tessellationControlShaderGraph() const; + QUrl tessellationEvaluationShaderGraph() const; + QUrl geometryShaderGraph() const; + QUrl fragmentShaderGraph() const; + QUrl computeShaderGraph() const; + +public Q_SLOTS: + void setShaderProgram(Qt3DRender::QShaderProgram *program); + void setEnabledLayers(const QStringList &layers); + void setVertexShaderGraph(const QUrl &vertexShaderGraph); + void setTessellationControlShaderGraph(const QUrl &tessellationControlShaderGraph); + void setTessellationEvaluationShaderGraph(const QUrl &tessellationEvaluationShaderGraph); + void setGeometryShaderGraph(const QUrl &geometryShaderGraph); + void setFragmentShaderGraph(const QUrl &fragmentShaderGraph); + void setComputeShaderGraph(const QUrl &computeShaderGraph); + +Q_SIGNALS: + void shaderProgramChanged(Qt3DRender::QShaderProgram *shaderProgram); + void enabledLayersChanged(const QStringList &layers); + void vertexShaderGraphChanged(const QUrl &vertexShaderGraph); + void tessellationControlShaderGraphChanged(const QUrl &tessellationControlShaderGraph); + void tessellationEvaluationShaderGraphChanged(const QUrl &tessellationEvaluationShaderGraph); + void geometryShaderGraphChanged(const QUrl &geometryShaderGraph); + void fragmentShaderGraphChanged(const QUrl &fragmentShaderGraph); + void computeShaderGraphChanged(const QUrl &computeShaderGraph); + +protected: + explicit QShaderProgramBuilder(QShaderProgramBuilderPrivate &dd, Qt3DCore::QNode *parent = nullptr); + +private: + Q_DECLARE_PRIVATE(QShaderProgramBuilder) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +} + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QSHADERPROGRAMBUILDER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qsortpolicy.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qsortpolicy.h new file mode 100644 index 0000000..d94ee3d --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qsortpolicy.h @@ -0,0 +1,90 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QSORTPOLICY_H +#define QT3DRENDER_QSORTPOLICY_H + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QSortPolicyPrivate; + +class QT3DRENDERSHARED_EXPORT QSortPolicy : public QFrameGraphNode +{ + Q_OBJECT + Q_PROPERTY(QVector sortTypes READ sortTypesInt WRITE setSortTypes NOTIFY sortTypesChanged) +public: + explicit QSortPolicy(Qt3DCore::QNode *parent = nullptr); + ~QSortPolicy(); + + enum SortType { + StateChangeCost = (1 << 0), + BackToFront = (1 << 1), + Material = (1 << 2), + FrontToBack = (1 << 3) + }; + Q_ENUM(SortType) // LCOV_EXCL_LINE + + QVector sortTypes() const; + QVector sortTypesInt() const; + +public Q_SLOTS: + void setSortTypes(const QVector &sortTypes); + void setSortTypes(const QVector &sortTypesInt); + +Q_SIGNALS: + void sortTypesChanged(const QVector &sortTypes); + void sortTypesChanged(const QVector &sortTypes); + +protected: + explicit QSortPolicy(QSortPolicyPrivate &dd, Qt3DCore::QNode *parent = nullptr); + +private: + Q_DECLARE_PRIVATE(QSortPolicy) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QSORTPOLICY_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qspotlight.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qspotlight.h new file mode 100644 index 0000000..8902708 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qspotlight.h @@ -0,0 +1,96 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QSPOTLIGHT_H +#define QT3DRENDER_QSPOTLIGHT_H + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QSpotLightPrivate; + +class QT3DRENDERSHARED_EXPORT QSpotLight : public QAbstractLight +{ + Q_OBJECT + Q_PROPERTY(float constantAttenuation READ constantAttenuation WRITE setConstantAttenuation NOTIFY constantAttenuationChanged) + Q_PROPERTY(float linearAttenuation READ linearAttenuation WRITE setLinearAttenuation NOTIFY linearAttenuationChanged) + Q_PROPERTY(float quadraticAttenuation READ quadraticAttenuation WRITE setQuadraticAttenuation NOTIFY quadraticAttenuationChanged) + Q_PROPERTY(QVector3D localDirection READ localDirection WRITE setLocalDirection NOTIFY localDirectionChanged) + Q_PROPERTY(float cutOffAngle READ cutOffAngle WRITE setCutOffAngle NOTIFY cutOffAngleChanged) + +public: + explicit QSpotLight(Qt3DCore::QNode *parent = nullptr); + ~QSpotLight(); + + QVector3D localDirection() const; + float cutOffAngle() const; + + float constantAttenuation() const; + float linearAttenuation() const; + float quadraticAttenuation() const; + +public Q_SLOTS: + void setConstantAttenuation(float value); + void setLinearAttenuation(float value); + void setQuadraticAttenuation(float value); + void setLocalDirection(const QVector3D &localDirection); + void setCutOffAngle(float cutOffAngle); + +Q_SIGNALS: + void constantAttenuationChanged(float constantAttenuation); + void linearAttenuationChanged(float linearAttenuation); + void quadraticAttenuationChanged(float quadraticAttenuation); + void localDirectionChanged(const QVector3D &localDirection); + void cutOffAngleChanged(float cutOffAngle); + +protected: + explicit QSpotLight(QSpotLightPrivate &dd, Qt3DCore::QNode *parent = nullptr); + +private: + Q_DECLARE_PRIVATE(QSpotLight) +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QSPOTLIGHT_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qstencilmask.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qstencilmask.h new file mode 100644 index 0000000..5f6e3b6 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qstencilmask.h @@ -0,0 +1,80 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Paul Lemire +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QSTENCILMASK_H +#define QT3DRENDER_QSTENCILMASK_H + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QStencilMaskPrivate; + +class QT3DRENDERSHARED_EXPORT QStencilMask : public QRenderState +{ + Q_OBJECT + Q_PROPERTY(uint frontOutputMask READ frontOutputMask WRITE setFrontOutputMask NOTIFY frontOutputMaskChanged) + Q_PROPERTY(uint backOutputMask READ backOutputMask WRITE setBackOutputMask NOTIFY backOutputMaskChanged) +public: + explicit QStencilMask(Qt3DCore::QNode *parent = nullptr); + ~QStencilMask(); + + uint frontOutputMask() const; + uint backOutputMask() const; + +public Q_SLOTS: + void setFrontOutputMask(uint frontOutputMask); + void setBackOutputMask(uint backOutputMask); + +Q_SIGNALS: + void frontOutputMaskChanged(uint frontOutputMask); + void backOutputMaskChanged(uint backOutputMask); + +private: + Q_DECLARE_PRIVATE(QStencilMask) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QSTENCILMASK_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qstenciloperation.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qstenciloperation.h new file mode 100644 index 0000000..889bb73 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qstenciloperation.h @@ -0,0 +1,74 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QSTENCILOPERATION_H +#define QT3DRENDER_QSTENCILOPERATION_H + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QStencilOperationPrivate; +class QStencilOperationArguments; + +class QT3DRENDERSHARED_EXPORT QStencilOperation : public QRenderState +{ + Q_OBJECT + Q_PROPERTY(Qt3DRender::QStencilOperationArguments *front READ front CONSTANT) + Q_PROPERTY(Qt3DRender::QStencilOperationArguments *back READ back CONSTANT) + +public: + explicit QStencilOperation(Qt3DCore::QNode *parent = nullptr); + ~QStencilOperation(); + + QStencilOperationArguments *front() const; + QStencilOperationArguments *back() const; + +private: + Q_DECLARE_PRIVATE(QStencilOperation) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QSTENCILOPERATION_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qstenciloperationarguments.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qstenciloperationarguments.h new file mode 100644 index 0000000..9705c98 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qstenciloperationarguments.h @@ -0,0 +1,113 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QSTENCILOPERATIONARGUMENTS_H +#define QT3DRENDER_QSTENCILOPERATIONARGUMENTS_H + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QStencilOperationPrivate; +class QStencilOperationArgumentsPrivate; + +class QT3DRENDERSHARED_EXPORT QStencilOperationArguments : public QObject +{ + Q_OBJECT + Q_PROPERTY(FaceMode faceMode READ faceMode NOTIFY faceModeChanged) + Q_PROPERTY(Operation stencilTestFailureOperation READ stencilTestFailureOperation WRITE setStencilTestFailureOperation NOTIFY stencilTestFailureOperationChanged) + Q_PROPERTY(Operation depthTestFailureOperation READ depthTestFailureOperation WRITE setDepthTestFailureOperation NOTIFY depthTestFailureOperationChanged) + Q_PROPERTY(Operation allTestsPassOperation READ allTestsPassOperation WRITE setAllTestsPassOperation NOTIFY allTestsPassOperationChanged) + +public: + enum FaceMode + { + Front = 0x0404, + Back = 0x0405, + FrontAndBack = 0x0408 + }; + Q_ENUM(FaceMode) // LCOV_EXCL_LINE + + enum Operation + { + Zero = 0, + Keep = 0x1E00, + Replace = 0x1E01, + Increment = 0x1E02, + Decrement = 0x1E03, + IncrementWrap = 0x8507, + DecrementWrap = 0x8508, + Invert = 0x150A + }; + Q_ENUM(Operation) // LCOV_EXCL_LINE + + ~QStencilOperationArguments(); + + FaceMode faceMode() const; + + Operation stencilTestFailureOperation() const; + Operation depthTestFailureOperation() const; + Operation allTestsPassOperation() const; + +public Q_SLOTS: + void setStencilTestFailureOperation(Operation operation); + void setDepthTestFailureOperation(Operation operation); + void setAllTestsPassOperation(Operation operation); + +Q_SIGNALS: + void stencilTestFailureOperationChanged(Operation stencilFail); + void depthTestFailureOperationChanged(Operation depthFail); + void allTestsPassOperationChanged(Operation stencilDepthPass); + void faceModeChanged(FaceMode faceMode); + +private: + explicit QStencilOperationArguments(FaceMode mode, QObject *parent = nullptr); + Q_DECLARE_PRIVATE(QStencilOperationArguments) + + friend class QStencilOperationPrivate; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QSTENCILOPERATIONARGUMENTS_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qstenciltest.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qstenciltest.h new file mode 100644 index 0000000..0178ef9 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qstenciltest.h @@ -0,0 +1,75 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Copyright (C) 2016 The Qt Company Ltd and/or its subsidiary(-ies). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QSTENCILTEST_H +#define QT3DRENDER_QSTENCILTEST_H + +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QStencilTestPrivate; +class QStencilTestArguments; + +class QT3DRENDERSHARED_EXPORT QStencilTest : public QRenderState +{ + Q_OBJECT + Q_PROPERTY(Qt3DRender::QStencilTestArguments *front READ front CONSTANT) + Q_PROPERTY(Qt3DRender::QStencilTestArguments *back READ back CONSTANT) +public: + explicit QStencilTest(Qt3DCore::QNode *parent = nullptr); + ~QStencilTest(); + + QStencilTestArguments *front() const; + QStencilTestArguments *back() const; + +private: + Q_DECLARE_PRIVATE(QStencilTest) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + + +#endif // QT3DRENDER_QSTENCILTEST_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qstenciltestarguments.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qstenciltestarguments.h new file mode 100644 index 0000000..35447d4 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qstenciltestarguments.h @@ -0,0 +1,114 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Paul Lemire +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QSTENCILTESTARGUMENTS_H +#define QT3DRENDER_QSTENCILTESTARGUMENTS_H + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QStencilTestPrivate; +class QStencilTestArgumentsPrivate; + +class QT3DRENDERSHARED_EXPORT QStencilTestArguments : public QObject +{ + Q_OBJECT + Q_PROPERTY(StencilFaceMode faceMode READ faceMode NOTIFY faceModeChanged) + Q_PROPERTY(uint comparisonMask READ comparisonMask WRITE setComparisonMask NOTIFY comparisonMaskChanged) + Q_PROPERTY(int referenceValue READ referenceValue WRITE setReferenceValue NOTIFY referenceValueChanged) + Q_PROPERTY(StencilFunction stencilFunction READ stencilFunction WRITE setStencilFunction NOTIFY stencilFunctionChanged) + +public: + enum StencilFaceMode + { + Front = 0x0404, + Back = 0x0405, + FrontAndBack = 0x0408 + }; + Q_ENUM(StencilFaceMode) // LCOV_EXCL_LINE + + enum StencilFunction + { + Never = 0x0200, + Always = 0x0207, + Less = 0x0201, + LessOrEqual = 0x0203, + Equal = 0x0202, + GreaterOrEqual = 0x0206, + Greater = 0x0204, + NotEqual = 0x0205 + }; + Q_ENUM(StencilFunction) // LCOV_EXCL_LINE + + ~QStencilTestArguments(); + + uint comparisonMask() const; + int referenceValue() const; + StencilFunction stencilFunction() const; + + StencilFaceMode faceMode() const; + +public Q_SLOTS: + void setComparisonMask(uint comparisonMask); + void setReferenceValue(int referenceValue); + void setStencilFunction(StencilFunction stencilFunction); + +Q_SIGNALS: + void comparisonMaskChanged(uint comparisonMask); + void stencilFunctionChanged(StencilFunction stencilFunction); + void referenceValueChanged(int referenceValue); + void faceModeChanged(StencilFaceMode faceMode); + +private: + explicit QStencilTestArguments(StencilFaceMode face, QObject *parent = nullptr); + + friend class QStencilTestPrivate; + + Q_DECLARE_PRIVATE(QStencilTestArguments) +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QSTENCILTESTARGUMENTS_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qt3drender-config.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qt3drender-config.h new file mode 100644 index 0000000..e69de29 diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qt3drender_global.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qt3drender_global.h new file mode 100644 index 0000000..68e1cb6 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qt3drender_global.h @@ -0,0 +1,59 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_GLOBAL_H +#define QT3DRENDER_GLOBAL_H + +#include + +QT_BEGIN_NAMESPACE + +#if defined(QT_SHARED) || !defined(QT_STATIC) +# if defined(QT_BUILD_3DRENDER_LIB) +# define QT3DRENDERSHARED_EXPORT Q_DECL_EXPORT +# else +# define QT3DRENDERSHARED_EXPORT Q_DECL_IMPORT +# endif +#else +# define QT3DRENDERSHARED_EXPORT +#endif + +QT_END_NAMESPACE + +#endif // QT3DRENDER_GLOBAL_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qt3drenderversion.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qt3drenderversion.h new file mode 100644 index 0000000..e944d11 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qt3drenderversion.h @@ -0,0 +1,9 @@ +/* This file was generated by syncqt. */ +#ifndef QT_QT3DRENDER_VERSION_H +#define QT_QT3DRENDER_VERSION_H + +#define QT3DRENDER_VERSION_STR "5.12.5" + +#define QT3DRENDER_VERSION 0x050C05 + +#endif // QT_QT3DRENDER_VERSION_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qtechnique.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qtechnique.h new file mode 100644 index 0000000..c0c0d0a --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qtechnique.h @@ -0,0 +1,94 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QTECHNIQUE_H +#define QT3DRENDER_QTECHNIQUE_H + +#include +#include +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QParameter; +class QTechniquePrivate; +class QGraphicsApiFilter; + +class QT3DRENDERSHARED_EXPORT QTechnique : public Qt3DCore::QNode +{ + Q_OBJECT + Q_PROPERTY(Qt3DRender::QGraphicsApiFilter *graphicsApiFilter READ graphicsApiFilter CONSTANT) + +public: + explicit QTechnique(Qt3DCore::QNode *parent = nullptr); + ~QTechnique(); + + void addFilterKey(QFilterKey *filterKey); + void removeFilterKey(QFilterKey *filterKey); + QVector filterKeys() const; + + void addParameter(QParameter *p); + void removeParameter(QParameter *p); + QVector parameters() const; + + void addRenderPass(QRenderPass *pass); + void removeRenderPass(QRenderPass *pass); + QVector renderPasses() const; + + QGraphicsApiFilter *graphicsApiFilter(); + +protected: + explicit QTechnique(QTechniquePrivate &dd, Qt3DCore::QNode *parent = nullptr); + +private: + Q_DECLARE_PRIVATE(QTechnique) + Q_PRIVATE_SLOT(d_func(), void _q_graphicsApiFilterChanged()) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +} + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QTECHNIQUE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qtechniquefilter.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qtechniquefilter.h new file mode 100644 index 0000000..243b2d6 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qtechniquefilter.h @@ -0,0 +1,81 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QTECHNIQUEFILTER_H +#define QT3DRENDER_QTECHNIQUEFILTER_H + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QTechniqueFilterPrivate; +class QFilterKey; +class QParameter; + +class QT3DRENDERSHARED_EXPORT QTechniqueFilter : public QFrameGraphNode +{ + Q_OBJECT +public: + explicit QTechniqueFilter(Qt3DCore::QNode *parent = nullptr); + ~QTechniqueFilter(); + + QVector matchAll() const; + void addMatch(QFilterKey *filterKey); + void removeMatch(QFilterKey *filterKey); + + void addParameter(QParameter *p); + void removeParameter(QParameter *p); + QVector parameters() const; + +protected: + QTechniqueFilter(QTechniqueFilterPrivate &dd, Qt3DCore::QNode *parent = nullptr); + +private: + Q_DECLARE_PRIVATE(QTechniqueFilter) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QTECHNIQUEFILTER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qtexture.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qtexture.h new file mode 100644 index 0000000..24d19fb --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qtexture.h @@ -0,0 +1,176 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QTEXTURE_H +#define QT3DRENDER_QTEXTURE_H + +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +#if 0 +// Create a forwarding header +#pragma qt_class(QTexture) +#pragma qt_sync_stop_processing +#endif + +namespace Qt3DRender { + +class QT3DRENDERSHARED_EXPORT QTexture1D : public QAbstractTexture +{ + Q_OBJECT +public: + explicit QTexture1D(Qt3DCore::QNode *parent = nullptr); + ~QTexture1D(); +}; + +class QT3DRENDERSHARED_EXPORT QTexture1DArray : public QAbstractTexture +{ + Q_OBJECT +public: + explicit QTexture1DArray(Qt3DCore::QNode *parent = nullptr); + ~QTexture1DArray(); +}; + +class QT3DRENDERSHARED_EXPORT QTexture2D : public QAbstractTexture +{ + Q_OBJECT +public: + explicit QTexture2D(Qt3DCore::QNode *parent = nullptr); + ~QTexture2D(); +}; + +class QT3DRENDERSHARED_EXPORT QTexture2DArray : public QAbstractTexture +{ + Q_OBJECT +public: + explicit QTexture2DArray(Qt3DCore::QNode *parent = nullptr); + ~QTexture2DArray(); +}; + +class QT3DRENDERSHARED_EXPORT QTexture3D : public QAbstractTexture +{ + Q_OBJECT +public: + explicit QTexture3D(Qt3DCore::QNode *parent = nullptr); + ~QTexture3D(); +}; + +class QT3DRENDERSHARED_EXPORT QTextureCubeMap : public QAbstractTexture +{ + Q_OBJECT +public: + explicit QTextureCubeMap(Qt3DCore::QNode *parent = nullptr); + ~QTextureCubeMap(); +}; + +class QT3DRENDERSHARED_EXPORT QTextureCubeMapArray : public QAbstractTexture +{ + Q_OBJECT +public: + explicit QTextureCubeMapArray(Qt3DCore::QNode *parent = nullptr); + ~QTextureCubeMapArray(); +}; + +class QT3DRENDERSHARED_EXPORT QTexture2DMultisample : public QAbstractTexture +{ + Q_OBJECT +public: + explicit QTexture2DMultisample(Qt3DCore::QNode *parent = nullptr); + ~QTexture2DMultisample(); +}; + +class QT3DRENDERSHARED_EXPORT QTexture2DMultisampleArray : public QAbstractTexture +{ + Q_OBJECT +public: + explicit QTexture2DMultisampleArray(Qt3DCore::QNode *parent = nullptr); + ~QTexture2DMultisampleArray(); +}; + +class QT3DRENDERSHARED_EXPORT QTextureRectangle : public QAbstractTexture +{ + Q_OBJECT +public: + explicit QTextureRectangle(Qt3DCore::QNode *parent = nullptr); + ~QTextureRectangle(); +}; + +class QT3DRENDERSHARED_EXPORT QTextureBuffer : public QAbstractTexture +{ + Q_OBJECT +public: + explicit QTextureBuffer(Qt3DCore::QNode *parent = nullptr); + ~QTextureBuffer(); +}; + +class QTextureLoaderPrivate; + +class QT3DRENDERSHARED_EXPORT QTextureLoader : public QAbstractTexture +{ + Q_OBJECT + Q_PROPERTY(QUrl source READ source WRITE setSource NOTIFY sourceChanged) + Q_PROPERTY(bool mirrored READ isMirrored WRITE setMirrored NOTIFY mirroredChanged) +public: + explicit QTextureLoader(Qt3DCore::QNode *parent = nullptr); + ~QTextureLoader(); + + QUrl source() const; + bool isMirrored() const; + +public Q_SLOTS: + void setSource(const QUrl &source); + void setMirrored(bool mirrored); + +Q_SIGNALS: + void sourceChanged(const QUrl &source); + void mirroredChanged(bool mirrored); + +private: + Q_DECLARE_PRIVATE(QTextureLoader) +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QTEXTURE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qtexturedata.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qtexturedata.h new file mode 100644 index 0000000..a86a3ec --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qtexturedata.h @@ -0,0 +1,119 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QTEXTUREDATA_H +#define QT3DRENDER_QTEXTUREDATA_H + +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QTextureDataPrivate; + +class QT3DRENDERSHARED_EXPORT QTextureData +{ +public: + QTextureData(); + ~QTextureData(); + + QAbstractTexture::Target target() const; + void setTarget(QAbstractTexture::Target target); + + QAbstractTexture::TextureFormat format() const; + void setFormat(QAbstractTexture::TextureFormat); + + int width() const; + void setWidth(int width); + + int height() const; + void setHeight(int height); + + int depth() const; + void setDepth(int depth); + + int layers() const; + void setLayers(int layers); + + bool isAutoMipMapGenerationEnabled() const; + void setAutoMipMapGenerationEnabled(bool isAutoMipMapGenerationEnabled); + + float maximumAnisotropy() const; + void setMaximumAnisotropy(float maximumAnisotropy); + + QAbstractTexture::Filter minificationFilter() const; + void setMinificationFilter(QAbstractTexture::Filter filter); + + QAbstractTexture::Filter magnificationFilter() const; + void setMagnificationFilter(QAbstractTexture::Filter filter); + + QTextureWrapMode::WrapMode wrapModeX() const; + void setWrapModeX(QTextureWrapMode::WrapMode wrapModeX); + + QTextureWrapMode::WrapMode wrapModeY() const; + void setWrapModeY(QTextureWrapMode::WrapMode wrapModeY); + + QTextureWrapMode::WrapMode wrapModeZ() const; + void setWrapModeZ(QTextureWrapMode::WrapMode wrapModeZ); + + QAbstractTexture::ComparisonFunction comparisonFunction() const; + void setComparisonFunction(QAbstractTexture::ComparisonFunction comparisonFunction); + + QAbstractTexture::ComparisonMode comparisonMode() const; + void setComparisonMode(QAbstractTexture::ComparisonMode comparisonMode); + + QVector imageData() const; + void addImageData(const QTextureImageDataPtr &imageData); + +private: + Q_DECLARE_PRIVATE(QTextureData) + QTextureDataPrivate *d_ptr; +}; + +typedef QSharedPointer QTextureDataPtr; + +} // Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QTEXTUREDATA_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qtexturegenerator.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qtexturegenerator.h new file mode 100644 index 0000000..10f0cde --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qtexturegenerator.h @@ -0,0 +1,71 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QTEXTUREGENERATOR_H +#define QT3DRENDER_QTEXTUREGENERATOR_H + +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QTextureData; +typedef QSharedPointer QTextureDataPtr; + +class QT3DRENDERSHARED_EXPORT QTextureGenerator : public QAbstractFunctor +{ +public: + virtual ~QTextureGenerator(); + virtual QTextureDataPtr operator()() = 0; + virtual bool operator ==(const QTextureGenerator &other) const = 0; +}; + +typedef QSharedPointer QTextureGeneratorPtr; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +Q_DECLARE_METATYPE(Qt3DRender::QTextureGeneratorPtr) // LCOV_EXCL_LINE + +#endif // QT3DRENDER_QTEXTUREGENERATOR_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qtextureimage.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qtextureimage.h new file mode 100644 index 0000000..d3fccde --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qtextureimage.h @@ -0,0 +1,97 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QTEXTUREIMAGE_H +#define QT3DRENDER_QTEXTUREIMAGE_H + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QTextureImagePrivate; + +class QT3DRENDERSHARED_EXPORT QTextureImage : public QAbstractTextureImage +{ + Q_OBJECT + Q_PROPERTY(QUrl source READ source WRITE setSource NOTIFY sourceChanged) + Q_PROPERTY(Status status READ status NOTIFY statusChanged) + Q_PROPERTY(bool mirrored READ isMirrored WRITE setMirrored NOTIFY mirroredChanged) + +public: + explicit QTextureImage(Qt3DCore::QNode *parent = nullptr); + ~QTextureImage(); + + enum Status { + None = 0, + Loading, + Ready, + Error + }; + Q_ENUM(Status) // LCOV_EXCL_LINE + + QUrl source() const; + Status status() const; + bool isMirrored() const; + +public Q_SLOTS: + void setSource(const QUrl &source); + void setMirrored(bool mirrored); + +Q_SIGNALS: + void sourceChanged(const QUrl &source); + void statusChanged(Status status); + void mirroredChanged(bool mirrored); + +protected: + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &change) override; + void setStatus(Status status); + +private: + QTextureImageDataGeneratorPtr dataGenerator() const override; + Q_DECLARE_PRIVATE(QTextureImage) +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QTEXTUREIMAGE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qtextureimagedata.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qtextureimagedata.h new file mode 100644 index 0000000..6d66f23 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qtextureimagedata.h @@ -0,0 +1,115 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_TEXTUREIMAGEDATA_H +#define QT3DRENDER_TEXTUREIMAGEDATA_H + +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QTextureImageDataPrivate; + +class QT3DRENDERSHARED_EXPORT QTextureImageData +{ +public: + QTextureImageData(); + ~QTextureImageData(); + + QTextureImageData &operator=(const QTextureImageData &other); + + void cleanup() Q_DECL_NOTHROW; + + bool isCompressed() const Q_DECL_NOTHROW; + + int width() const Q_DECL_NOTHROW; + int height() const Q_DECL_NOTHROW; + int depth() const Q_DECL_NOTHROW; + + int layers() const Q_DECL_NOTHROW; + int mipLevels() const Q_DECL_NOTHROW; + int faces() const Q_DECL_NOTHROW; + + void setWidth(int width) Q_DECL_NOTHROW; + void setHeight(int height) Q_DECL_NOTHROW; + void setDepth(int depth) Q_DECL_NOTHROW; + + void setLayers(int layers) Q_DECL_NOTHROW; + void setMipLevels(int mipLevels) Q_DECL_NOTHROW; + void setFaces(int faces) Q_DECL_NOTHROW; + + QOpenGLTexture::Target target() const Q_DECL_NOTHROW; + QOpenGLTexture::TextureFormat format() const Q_DECL_NOTHROW; + + QOpenGLTexture::PixelFormat pixelFormat() const Q_DECL_NOTHROW; + QOpenGLTexture::PixelType pixelType() const Q_DECL_NOTHROW; + + void setTarget(QOpenGLTexture::Target target) Q_DECL_NOTHROW; + void setFormat(QOpenGLTexture::TextureFormat format) Q_DECL_NOTHROW; + + void setPixelFormat(QOpenGLTexture::PixelFormat pixelFormat) Q_DECL_NOTHROW; + void setPixelType(QOpenGLTexture::PixelType pixelType) Q_DECL_NOTHROW; + + void setImage(const QImage &); + void setData(const QByteArray &data, + int blockSize, + bool isCompressed = false); + + QByteArray data(int layer = 0, int face = 0, int mipmapLevel = 0) const; +protected: + QTextureImageData(QTextureImageDataPrivate &dd); + +private: + Q_DECLARE_PRIVATE(QTextureImageData) + QTextureImageDataPrivate *d_ptr; +}; + +typedef QSharedPointer QTextureImageDataPtr; + +} // namespace Qt3DRender + + +QT_END_NAMESPACE + +#endif // QT3DRENDER_TEXTUREIMAGEDATA_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qtextureimagedatagenerator.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qtextureimagedatagenerator.h new file mode 100644 index 0000000..0e7e6c7 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qtextureimagedatagenerator.h @@ -0,0 +1,74 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QTEXTUREIMAGEDATAGENERATOR_H +#define QT3DRENDER_QTEXTUREIMAGEDATAGENERATOR_H + +#include +#include + +// TO DO TexImageDataPtr -> QImageDataPtr + d_ptr +// We might also get rid of the layer, face, mipmap level from +// TexImageDataPtr and store that in the functor directly +// or use the QTextureImage instead + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QTextureImageData; +typedef QSharedPointer QTextureImageDataPtr; + +class QT3DRENDERSHARED_EXPORT QTextureImageDataGenerator : public QAbstractFunctor +{ +public: + virtual ~QTextureImageDataGenerator() {} + virtual QTextureImageDataPtr operator()() = 0; + virtual bool operator ==(const QTextureImageDataGenerator &other) const = 0; +}; + +typedef QSharedPointer QTextureImageDataGeneratorPtr; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +Q_DECLARE_METATYPE(Qt3DRender::QTextureImageDataGeneratorPtr) // LCOV_EXCL_LINE + +#endif // QT3DRENDER_QTEXTUREIMAGEDATAGENERATOR_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qtexturewrapmode.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qtexturewrapmode.h new file mode 100644 index 0000000..36af013 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qtexturewrapmode.h @@ -0,0 +1,94 @@ +/**************************************************************************** +** +** Copyright (C) 2015 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QTEXTUREWRAPMODE_H +#define QT3DRENDER_QTEXTUREWRAPMODE_H + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QTextureWrapModePrivate; + +class QT3DRENDERSHARED_EXPORT QTextureWrapMode : public QObject +{ + Q_OBJECT + Q_PROPERTY(WrapMode x READ x WRITE setX NOTIFY xChanged) + Q_PROPERTY(WrapMode y READ y WRITE setY NOTIFY yChanged) + Q_PROPERTY(WrapMode z READ z WRITE setZ NOTIFY zChanged) + +public: + enum WrapMode { + Repeat = 0x2901, // GL_REPEAT + MirroredRepeat = 0x8370, // GL_MIRRORED_REPEAT + ClampToEdge = 0x812F, // GL_CLAMP_TO_EDGE + ClampToBorder = 0x812D // GL_CLAMP_TO_BORDER + }; + Q_ENUM(WrapMode) // LCOV_EXCL_LINE + + explicit QTextureWrapMode(WrapMode wrapMode = ClampToEdge, QObject *parent = nullptr); + explicit QTextureWrapMode(WrapMode x, WrapMode y, WrapMode z, QObject *parent = nullptr); + ~QTextureWrapMode(); + + WrapMode x() const; + WrapMode y() const; + WrapMode z() const; + +public Q_SLOTS: + void setX(WrapMode x); + void setY(WrapMode y); + void setZ(WrapMode z); + +Q_SIGNALS: + void xChanged(WrapMode x); + void yChanged(WrapMode y); + void zChanged(WrapMode z); + +private: + Q_DECLARE_PRIVATE(QTextureWrapMode) +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QWRAPMODE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qviewport.h b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qviewport.h new file mode 100644 index 0000000..1f6ac83 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/Qt3DRender/qviewport.h @@ -0,0 +1,86 @@ +/**************************************************************************** +** +** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DRENDER_QVIEWPORT_H +#define QT3DRENDER_QVIEWPORT_H + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace Qt3DRender { + +class QViewportPrivate; + +class QT3DRENDERSHARED_EXPORT QViewport : public QFrameGraphNode +{ + Q_OBJECT + Q_PROPERTY(QRectF normalizedRect READ normalizedRect WRITE setNormalizedRect NOTIFY normalizedRectChanged) + Q_PROPERTY(float gamma READ gamma WRITE setGamma NOTIFY gammaChanged REVISION 9) + +public: + explicit QViewport(Qt3DCore::QNode *parent = nullptr); + ~QViewport(); + + QRectF normalizedRect() const; + float gamma() const; + +public Q_SLOTS: + void setNormalizedRect(const QRectF& normalizedRect); + void setGamma(float gamma); + +Q_SIGNALS: + void normalizedRectChanged(const QRectF& normalizedRect); + void gammaChanged(float gamma); + +protected: + explicit QViewport(QViewportPrivate &dd, Qt3DCore::QNode *parent = nullptr); + +private: + Q_DECLARE_PRIVATE(QViewport) + Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const override; +}; + +} // namespace Qt3DRender + +QT_END_NAMESPACE + +#endif // QT3DRENDER_QVIEWPORT_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtAccessibilitySupport/5.12.5/QtAccessibilitySupport/private/qaccessiblebridgeutils_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtAccessibilitySupport/5.12.5/QtAccessibilitySupport/private/qaccessiblebridgeutils_p.h new file mode 100644 index 0000000..cf8e126 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtAccessibilitySupport/5.12.5/QtAccessibilitySupport/private/qaccessiblebridgeutils_p.h @@ -0,0 +1,70 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtGui module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QACCESSIBLEBRIDGEUTILS_H +#define QACCESSIBLEBRIDGEUTILS_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include +#include + +QT_REQUIRE_CONFIG(accessibility); + +QT_BEGIN_NAMESPACE + +namespace QAccessibleBridgeUtils { + QStringList effectiveActionNames(QAccessibleInterface *iface); + bool performEffectiveAction(QAccessibleInterface *iface, const QString &actionName); +} + +QT_END_NAMESPACE + +#endif //QACCESSIBLEBRIDGEUTILS_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtAccessibilitySupport/QtAccessibilitySupport b/debian/usr/local/qt5raspi-5.12.5/include/QtAccessibilitySupport/QtAccessibilitySupport new file mode 100644 index 0000000..1801c50 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtAccessibilitySupport/QtAccessibilitySupport @@ -0,0 +1,5 @@ +#ifndef QT_QTACCESSIBILITYSUPPORT_MODULE_H +#define QT_QTACCESSIBILITYSUPPORT_MODULE_H +#include +#include "qtaccessibilitysupportversion.h" +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtAccessibilitySupport/QtAccessibilitySupportDepends b/debian/usr/local/qt5raspi-5.12.5/include/QtAccessibilitySupport/QtAccessibilitySupportDepends new file mode 100644 index 0000000..b184c19 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtAccessibilitySupport/QtAccessibilitySupportDepends @@ -0,0 +1,5 @@ +/* This file was generated by qmake with the info from /src/platformsupport/accessibility/accessibility.pro. */ +#ifdef __cplusplus /* create empty PCH in C mode */ +#include +#include +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtAccessibilitySupport/QtAccessibilitySupportVersion b/debian/usr/local/qt5raspi-5.12.5/include/QtAccessibilitySupport/QtAccessibilitySupportVersion new file mode 100644 index 0000000..eecf576 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtAccessibilitySupport/QtAccessibilitySupportVersion @@ -0,0 +1 @@ +#include "qtaccessibilitysupportversion.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtAccessibilitySupport/qtaccessibilitysupportversion.h b/debian/usr/local/qt5raspi-5.12.5/include/QtAccessibilitySupport/qtaccessibilitysupportversion.h new file mode 100644 index 0000000..c61d102 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtAccessibilitySupport/qtaccessibilitysupportversion.h @@ -0,0 +1,9 @@ +/* This file was generated by syncqt. */ +#ifndef QT_QTACCESSIBILITYSUPPORT_VERSION_H +#define QT_QTACCESSIBILITYSUPPORT_VERSION_H + +#define QTACCESSIBILITYSUPPORT_VERSION_STR "5.12.5" + +#define QTACCESSIBILITYSUPPORT_VERSION 0x050C05 + +#endif // QT_QTACCESSIBILITYSUPPORT_VERSION_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/adapter1_bluez5_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/adapter1_bluez5_p.h new file mode 100644 index 0000000..ce108ad --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/adapter1_bluez5_p.h @@ -0,0 +1,133 @@ +/* + * This file was generated by qdbusxml2cpp version 0.8 + * Command line was: qdbusxml2cpp -p adapter1_bluez5_p.h:adapter1_bluez5.cpp org.bluez.Adapter1.xml + * + * qdbusxml2cpp is Copyright (C) 2017 The Qt Company Ltd. + * + * This is an auto-generated file. + * Do not edit! All changes made to it will be lost. + */ + +#ifndef ADAPTER1_BLUEZ5_P_H +#define ADAPTER1_BLUEZ5_P_H + +#include +#include +#include +#include +#include +#include +#include +#include + +/* + * Proxy class for interface org.bluez.Adapter1 + */ +class OrgBluezAdapter1Interface: public QDBusAbstractInterface +{ + Q_OBJECT +public: + static inline const char *staticInterfaceName() + { return "org.bluez.Adapter1"; } + +public: + OrgBluezAdapter1Interface(const QString &service, const QString &path, const QDBusConnection &connection, QObject *parent = nullptr); + + ~OrgBluezAdapter1Interface(); + + Q_PROPERTY(QString Address READ address) + inline QString address() const + { return qvariant_cast< QString >(property("Address")); } + + Q_PROPERTY(QString Alias READ alias WRITE setAlias) + inline QString alias() const + { return qvariant_cast< QString >(property("Alias")); } + inline void setAlias(const QString &value) + { setProperty("Alias", QVariant::fromValue(value)); } + + Q_PROPERTY(uint Class READ classProperty) + inline uint classProperty() const + { return qvariant_cast< uint >(property("Class")); } + + Q_PROPERTY(bool Discoverable READ discoverable WRITE setDiscoverable) + inline bool discoverable() const + { return qvariant_cast< bool >(property("Discoverable")); } + inline void setDiscoverable(bool value) + { setProperty("Discoverable", QVariant::fromValue(value)); } + + Q_PROPERTY(uint DiscoverableTimeout READ discoverableTimeout WRITE setDiscoverableTimeout) + inline uint discoverableTimeout() const + { return qvariant_cast< uint >(property("DiscoverableTimeout")); } + inline void setDiscoverableTimeout(uint value) + { setProperty("DiscoverableTimeout", QVariant::fromValue(value)); } + + Q_PROPERTY(bool Discovering READ discovering) + inline bool discovering() const + { return qvariant_cast< bool >(property("Discovering")); } + + Q_PROPERTY(QString Modalias READ modalias) + inline QString modalias() const + { return qvariant_cast< QString >(property("Modalias")); } + + Q_PROPERTY(QString Name READ name) + inline QString name() const + { return qvariant_cast< QString >(property("Name")); } + + Q_PROPERTY(bool Pairable READ pairable WRITE setPairable) + inline bool pairable() const + { return qvariant_cast< bool >(property("Pairable")); } + inline void setPairable(bool value) + { setProperty("Pairable", QVariant::fromValue(value)); } + + Q_PROPERTY(uint PairableTimeout READ pairableTimeout WRITE setPairableTimeout) + inline uint pairableTimeout() const + { return qvariant_cast< uint >(property("PairableTimeout")); } + inline void setPairableTimeout(uint value) + { setProperty("PairableTimeout", QVariant::fromValue(value)); } + + Q_PROPERTY(bool Powered READ powered WRITE setPowered) + inline bool powered() const + { return qvariant_cast< bool >(property("Powered")); } + inline void setPowered(bool value) + { setProperty("Powered", QVariant::fromValue(value)); } + + Q_PROPERTY(QStringList UUIDs READ uUIDs) + inline QStringList uUIDs() const + { return qvariant_cast< QStringList >(property("UUIDs")); } + +public Q_SLOTS: // METHODS + inline QDBusPendingReply<> RemoveDevice(const QDBusObjectPath &device) + { + QList argumentList; + argumentList << QVariant::fromValue(device); + return asyncCallWithArgumentList(QStringLiteral("RemoveDevice"), argumentList); + } + + inline QDBusPendingReply<> SetDiscoveryFilter(const QVariantMap &properties) + { + QList argumentList; + argumentList << QVariant::fromValue(properties); + return asyncCallWithArgumentList(QStringLiteral("SetDiscoveryFilter"), argumentList); + } + + inline QDBusPendingReply<> StartDiscovery() + { + QList argumentList; + return asyncCallWithArgumentList(QStringLiteral("StartDiscovery"), argumentList); + } + + inline QDBusPendingReply<> StopDiscovery() + { + QList argumentList; + return asyncCallWithArgumentList(QStringLiteral("StopDiscovery"), argumentList); + } + +Q_SIGNALS: // SIGNALS +}; + +namespace org { + namespace bluez { + typedef ::OrgBluezAdapter1Interface Adapter1; + } +} +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/adapter_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/adapter_p.h new file mode 100644 index 0000000..236fe7e --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/adapter_p.h @@ -0,0 +1,157 @@ +/* + * This file was generated by qdbusxml2cpp version 0.8 + * Command line was: qdbusxml2cpp -p adapter_p.h:adapter.cpp org.bluez.all.xml org.bluez.Adapter + * + * qdbusxml2cpp is Copyright (C) 2017 The Qt Company Ltd. + * + * This is an auto-generated file. + * Do not edit! All changes made to it will be lost. + */ + +#ifndef ADAPTER_P_H +#define ADAPTER_P_H + +#include +#include +#include +#include +#include +#include +#include +#include + +/* + * Proxy class for interface org.bluez.Adapter + */ +class OrgBluezAdapterInterface: public QDBusAbstractInterface +{ + Q_OBJECT +public: + static inline const char *staticInterfaceName() + { return "org.bluez.Adapter"; } + +public: + OrgBluezAdapterInterface(const QString &service, const QString &path, const QDBusConnection &connection, QObject *parent = nullptr); + + ~OrgBluezAdapterInterface(); + +public Q_SLOTS: // METHODS + inline QDBusPendingReply<> CancelDeviceCreation(const QString &in0) + { + QList argumentList; + argumentList << QVariant::fromValue(in0); + return asyncCallWithArgumentList(QStringLiteral("CancelDeviceCreation"), argumentList); + } + + inline QDBusPendingReply CreateDevice(const QString &in0) + { + QList argumentList; + argumentList << QVariant::fromValue(in0); + return asyncCallWithArgumentList(QStringLiteral("CreateDevice"), argumentList); + } + + inline QDBusPendingReply CreatePairedDevice(const QString &in0, const QDBusObjectPath &in1, const QString &in2) + { + QList argumentList; + argumentList << QVariant::fromValue(in0) << QVariant::fromValue(in1) << QVariant::fromValue(in2); + return asyncCallWithArgumentList(QStringLiteral("CreatePairedDevice"), argumentList); + } + + inline QDBusPendingReply FindDevice(const QString &in0) + { + QList argumentList; + argumentList << QVariant::fromValue(in0); + return asyncCallWithArgumentList(QStringLiteral("FindDevice"), argumentList); + } + + inline QDBusPendingReply GetProperties() + { + QList argumentList; + return asyncCallWithArgumentList(QStringLiteral("GetProperties"), argumentList); + } + + inline QDBusPendingReply > ListDevices() + { + QList argumentList; + return asyncCallWithArgumentList(QStringLiteral("ListDevices"), argumentList); + } + + inline QDBusPendingReply<> RegisterAgent(const QDBusObjectPath &in0, const QString &in1) + { + QList argumentList; + argumentList << QVariant::fromValue(in0) << QVariant::fromValue(in1); + return asyncCallWithArgumentList(QStringLiteral("RegisterAgent"), argumentList); + } + + inline QDBusPendingReply<> ReleaseMode() + { + QList argumentList; + return asyncCallWithArgumentList(QStringLiteral("ReleaseMode"), argumentList); + } + + inline QDBusPendingReply<> ReleaseSession() + { + QList argumentList; + return asyncCallWithArgumentList(QStringLiteral("ReleaseSession"), argumentList); + } + + inline QDBusPendingReply<> RemoveDevice(const QDBusObjectPath &in0) + { + QList argumentList; + argumentList << QVariant::fromValue(in0); + return asyncCallWithArgumentList(QStringLiteral("RemoveDevice"), argumentList); + } + + inline QDBusPendingReply<> RequestMode(const QString &in0) + { + QList argumentList; + argumentList << QVariant::fromValue(in0); + return asyncCallWithArgumentList(QStringLiteral("RequestMode"), argumentList); + } + + inline QDBusPendingReply<> RequestSession() + { + QList argumentList; + return asyncCallWithArgumentList(QStringLiteral("RequestSession"), argumentList); + } + + inline QDBusPendingReply<> SetProperty(const QString &in0, const QDBusVariant &in1) + { + QList argumentList; + argumentList << QVariant::fromValue(in0) << QVariant::fromValue(in1); + return asyncCallWithArgumentList(QStringLiteral("SetProperty"), argumentList); + } + + inline QDBusPendingReply<> StartDiscovery() + { + QList argumentList; + return asyncCallWithArgumentList(QStringLiteral("StartDiscovery"), argumentList); + } + + inline QDBusPendingReply<> StopDiscovery() + { + QList argumentList; + return asyncCallWithArgumentList(QStringLiteral("StopDiscovery"), argumentList); + } + + inline QDBusPendingReply<> UnregisterAgent(const QDBusObjectPath &in0) + { + QList argumentList; + argumentList << QVariant::fromValue(in0); + return asyncCallWithArgumentList(QStringLiteral("UnregisterAgent"), argumentList); + } + +Q_SIGNALS: // SIGNALS + void DeviceCreated(const QDBusObjectPath &in0); + void DeviceDisappeared(const QString &in0); + void DeviceFound(const QString &in0, const QVariantMap &in1); + void DeviceRemoved(const QDBusObjectPath &in0); + void PropertyChanged(const QString &in0, const QDBusVariant &in1); +}; + +namespace org { + namespace bluez { + typedef ::OrgBluezAdapterInterface Adapter; + } +} +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/agent_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/agent_p.h new file mode 100644 index 0000000..32efa62 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/agent_p.h @@ -0,0 +1,80 @@ +/* + * This file was generated by qdbusxml2cpp version 0.8 + * Command line was: qdbusxml2cpp -c OrgBluezAgentAdaptor -a agent_p.h:agent.cpp org.bluez.Agent.xml org.bluez.Agent + * + * qdbusxml2cpp is Copyright (C) 2017 The Qt Company Ltd. + * + * This is an auto-generated file. + * This file may have been hand-edited. Look for HAND-EDIT comments + * before re-generating it. + */ + +#ifndef AGENT_P_H +#define AGENT_P_H + +#include +#include +QT_BEGIN_NAMESPACE +class QByteArray; +template class QList; +template class QMap; +class QString; +class QStringList; +class QVariant; +QT_END_NAMESPACE + +/* + * Adaptor class for interface org.bluez.Agent + */ +class OrgBluezAgentAdaptor: public QDBusAbstractAdaptor +{ + Q_OBJECT + Q_CLASSINFO("D-Bus Interface", "org.bluez.Agent") + Q_CLASSINFO("D-Bus Introspection", "" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" + "") +public: + OrgBluezAgentAdaptor(QObject *parent); + virtual ~OrgBluezAgentAdaptor(); + +public: // PROPERTIES +public Q_SLOTS: // METHODS + void Authorize(const QDBusObjectPath &in0, const QString &in1); + void Cancel(); + void ConfirmModeChange(const QString &in0); + void DisplayPasskey(const QDBusObjectPath &in0, uint in1, uchar in2); + void Release(); + void RequestConfirmation(const QDBusObjectPath &in0, uint in1); + uint RequestPasskey(const QDBusObjectPath &in0); + QString RequestPinCode(const QDBusObjectPath &in0); +Q_SIGNALS: // SIGNALS +}; + +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/androidbroadcastreceiver_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/androidbroadcastreceiver_p.h new file mode 100644 index 0000000..49aa63c --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/androidbroadcastreceiver_p.h @@ -0,0 +1,89 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Lauri Laanmets (Proekspert AS) +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef JNIBROADCASTRECEIVER_H +#define JNIBROADCASTRECEIVER_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +void QtBroadcastReceiver_jniOnReceive(JNIEnv *, jobject, jlong, jobject, jobject); + +class AndroidBroadcastReceiver: public QObject +{ + Q_OBJECT +public: + AndroidBroadcastReceiver(QObject* parent = nullptr); + virtual ~AndroidBroadcastReceiver(); + + void addAction(const QAndroidJniObject &filter); + bool isValid() const; + void unregisterReceiver(); + +protected: + friend void QtBroadcastReceiver_jniOnReceive(JNIEnv *, jobject, jlong, jobject, jobject); + virtual void onReceive(JNIEnv *env, jobject context, jobject intent) = 0; + friend void QtBluetoothLE_leScanResult(JNIEnv *, jobject, jlong, jobject, jint, jbyteArray); + virtual void onReceiveLeScan(JNIEnv *env, jobject jBluetoothDevice, jint rssi, jbyteArray scanRecord) = 0; + + + QAndroidJniObject contextObject; + QAndroidJniObject intentFilterObject; + QAndroidJniObject broadcastReceiverObject; + bool valid; +}; + +QT_END_NAMESPACE +#endif // JNIBROADCASTRECEIVER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/battery1_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/battery1_p.h new file mode 100644 index 0000000..035382d --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/battery1_p.h @@ -0,0 +1,51 @@ +/* + * This file was generated by qdbusxml2cpp version 0.8 + * Command line was: qdbusxml2cpp -p battery1_p.h:battery1.cpp org.bluez.Battery1.xml + * + * qdbusxml2cpp is Copyright (C) 2018 The Qt Company Ltd. + * + * This is an auto-generated file. + * Do not edit! All changes made to it will be lost. + */ + +#ifndef BATTERY1_P_H +#define BATTERY1_P_H + +#include +#include +#include +#include +#include +#include +#include +#include + +/* + * Proxy class for interface org.bluez.Battery1 + */ +class OrgBluezBattery1Interface: public QDBusAbstractInterface +{ + Q_OBJECT +public: + static inline const char *staticInterfaceName() + { return "org.bluez.Battery1"; } + +public: + OrgBluezBattery1Interface(const QString &service, const QString &path, const QDBusConnection &connection, QObject *parent = nullptr); + + ~OrgBluezBattery1Interface(); + + Q_PROPERTY(uchar Percentage READ percentage) + inline uchar percentage() const + { return qvariant_cast< uchar >(property("Percentage")); } + +public Q_SLOTS: // METHODS +Q_SIGNALS: // SIGNALS +}; + +namespace org { + namespace bluez { + typedef ::OrgBluezBattery1Interface Battery1; + } +} +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/bluetoothmanagement_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/bluetoothmanagement_p.h new file mode 100644 index 0000000..954f6e0 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/bluetoothmanagement_p.h @@ -0,0 +1,98 @@ +/**************************************************************************** +** +** Copyright (C) 2017 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef BLUETOOTHMANAGEMENT_P_H +#define BLUETOOTHMANAGEMENT_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +#include + +#ifndef QPRIVATELINEARBUFFER_BUFFERSIZE +#define QPRIVATELINEARBUFFER_BUFFERSIZE Q_INT64_C(16384) +#endif +#include "../qprivatelinearbuffer_p.h" + +QT_BEGIN_NAMESPACE + +class QSocketNotifier; + +class BluetoothManagement : public QObject +{ + Q_OBJECT + +public: + explicit BluetoothManagement(QObject *parent = nullptr); + static BluetoothManagement *instance(); + + bool isAddressRandom(const QBluetoothAddress &address) const; + bool isMonitoringEnabled() const; + +private slots: + void _q_readNotifier(); + void processRandomAddressFlagInformation(const QBluetoothAddress &address); + void cleanupOldAddressFlags(); + +private: + void readyRead(); + + int fd = -1; + QSocketNotifier* notifier; + QPrivateLinearBuffer buffer; + QHash privateFlagAddresses; + mutable QMutex accessLock; +}; + + +QT_END_NAMESPACE + +#endif // BLUETOOTHMANAGEMENT_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/bluez5_helper_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/bluez5_helper_p.h new file mode 100644 index 0000000..0db6f29 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/bluez5_helper_p.h @@ -0,0 +1,110 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef BLUEZ5_HELPER_H +#define BLUEZ5_HELPER_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include + +typedef QMap InterfaceList; +typedef QMap ManagedObjectList; +typedef QMap ManufacturerDataList; + +Q_DECLARE_METATYPE(InterfaceList) +Q_DECLARE_METATYPE(ManufacturerDataList) +Q_DECLARE_METATYPE(ManagedObjectList) + +QT_BEGIN_NAMESPACE + +bool isBluez5(); + +// exported for unit test purposes +Q_BLUETOOTH_PRIVATE_EXPORT QVersionNumber bluetoothdVersion(); + +QString sanitizeNameForDBus(const QString& text); + +QString findAdapterForAddress(const QBluetoothAddress &wantedAddress, bool *ok); + +class QtBluezDiscoveryManagerPrivate; +class QtBluezDiscoveryManager : public QObject +{ + Q_OBJECT +public: + QtBluezDiscoveryManager(QObject* parent = nullptr); + ~QtBluezDiscoveryManager(); + static QtBluezDiscoveryManager *instance(); + + bool registerDiscoveryInterest(const QString &adapterPath); + void unregisterDiscoveryInterest(const QString &adapterPath); + + //void dumpState() const; + +signals: + void discoveryInterrupted(const QString &adapterPath); + +private slots: + void InterfacesRemoved(const QDBusObjectPath &object_path, + const QStringList &interfaces); + void PropertiesChanged(const QString &interface, + const QVariantMap &changed_properties, + const QStringList &invalidated_properties); + +private: + void removeAdapterFromMonitoring(const QString &dbusPath); + + QtBluezDiscoveryManagerPrivate *d; +}; + +QT_END_NAMESPACE + +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/bluez_data_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/bluez_data_p.h new file mode 100644 index 0000000..2a2e597 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/bluez_data_p.h @@ -0,0 +1,400 @@ +/**************************************************************************** +** +** Copyright (C) 2017 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef BLUEZ_DATA_P_H +#define BLUEZ_DATA_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +#define ATTRIBUTE_CHANNEL_ID 4 +#define SIGNALING_CHANNEL_ID 5 +#define SECURITY_CHANNEL_ID 6 + +#define BTPROTO_L2CAP 0 +#define BTPROTO_HCI 1 +#define BTPROTO_RFCOMM 3 + +#define SOL_HCI 0 +#define SOL_L2CAP 6 +#define SOL_RFCOMM 18 +#ifndef SOL_BLUETOOTH +#define SOL_BLUETOOTH 274 +#endif + +#define RFCOMM_LM 0x03 + +#define RFCOMM_LM_AUTH 0x0002 +#define RFCOMM_LM_ENCRYPT 0x0004 +#define RFCOMM_LM_TRUSTED 0x0008 +#define RFCOMM_LM_SECURE 0x0020 + +#define L2CAP_LM 0x03 +#define L2CAP_LM_AUTH 0x0002 +#define L2CAP_LM_ENCRYPT 0x0004 +#define L2CAP_LM_TRUSTED 0x0008 +#define L2CAP_LM_SECURE 0x0020 + +#define BT_SECURITY 4 +struct bt_security { + quint8 level; + quint8 key_size; +}; +#define BT_SECURITY_SDP 0 +#define BT_SECURITY_LOW 1 +#define BT_SECURITY_MEDIUM 2 +#define BT_SECURITY_HIGH 3 + +#define BDADDR_LE_PUBLIC 0x01 +#define BDADDR_LE_RANDOM 0x02 + +#define SCO_LINK 0x00 +#define ACL_LINK 0x01 +#define ESCO_LINK 0x02 +#define LE_LINK 0x80 // based on hcitool.c -> no fixed constant available + +/* Byte order conversions */ +#if __BYTE_ORDER == __LITTLE_ENDIAN +#define htobs(d) (d) +#define htobl(d) (d) +#define htobll(d) (d) +#define btohs(d) (d) +#define btohl(d) (d) +#define btohll(d) (d) +#elif __BYTE_ORDER == __BIG_ENDIAN +#define htobs(d) qbswap((quint16)(d)) +#define htobl(d) qbswap((quint32)(d)) +#define htobll(d) qbswap((quint64)(d)) +#define btohs(d) qbswap((quint16)(d)) +#define btohl(d) qbswap((quint32)(d)) +#define btohll(d) qbswap((quint64)(d)) +#else +#error "Unknown byte order" +#endif + +#define HCIGETCONNLIST _IOR('H', 212, int) +#define HCIGETDEVINFO _IOR('H', 211, int) +#define HCIGETDEVLIST _IOR('H', 210, int) + +// Bluetooth address +typedef struct { + quint8 b[6]; +} __attribute__((packed)) bdaddr_t; + +// L2CP socket +struct sockaddr_l2 { + sa_family_t l2_family; + unsigned short l2_psm; + bdaddr_t l2_bdaddr; + unsigned short l2_cid; +#if !defined(QT_BLUEZ_NO_BTLE) + quint8 l2_bdaddr_type; +#endif +}; + +// RFCOMM socket +struct sockaddr_rc { + sa_family_t rc_family; + bdaddr_t rc_bdaddr; + quint8 rc_channel; +}; + +// Bt Low Energy related + +#if __BYTE_ORDER == __LITTLE_ENDIAN + +static inline void btoh128(const quint128 *src, quint128 *dst) +{ + memcpy(dst, src, sizeof(quint128)); +} + +static inline void ntoh128(const quint128 *src, quint128 *dst) +{ + int i; + + for (i = 0; i < 16; i++) + dst->data[15 - i] = src->data[i]; +} + +#elif __BYTE_ORDER == __BIG_ENDIAN + +static inline void btoh128(const quint128 *src, quint128 *dst) +{ + int i; + + for (i = 0; i < 16; i++) + dst->data[15 - i] = src->data[i]; +} + +static inline void ntoh128(const quint128 *src, quint128 *dst) +{ + memcpy(dst, src, sizeof(quint128)); +} +#else +#error "Unknown byte order" +#endif + +template inline T getBtData(const void *ptr) +{ + return qFromLittleEndian(reinterpret_cast(ptr)); +} + +static inline quint16 bt_get_le16(const void *ptr) +{ + return getBtData(ptr); +} + +template inline void putBtData(T src, void *dst) +{ + qToLittleEndian(src, reinterpret_cast(dst)); +} +template<> inline void putBtData(quint128 src, void *dst) +{ + btoh128(&src, reinterpret_cast(dst)); +} + +#define hton128(x, y) ntoh128(x, y) + +// HCI related + +#define HCI_MAX_DEV 16 +#define HCI_DEV_NONE 0xffff + +#define HCI_CHANNEL_CONTROL 0x3 + +#define HCI_MAX_EVENT_SIZE 260 + +// HCI sockopts +#define HCI_FILTER 2 + +// HCI packet types +#define HCI_COMMAND_PKT 0x01 +#define HCI_ACL_PKT 0x02 +#define HCI_EVENT_PKT 0x04 +#define HCI_VENDOR_PKT 0xff + +#define HCI_FLT_TYPE_BITS 31 +#define HCI_FLT_EVENT_BITS 63 + + +struct sockaddr_hci { + sa_family_t hci_family; + unsigned short hci_dev; + unsigned short hci_channel; +}; + +struct hci_dev_req { + quint16 dev_id; + quint32 dev_opt; +}; + +struct hci_dev_list_req { + quint16 dev_num; + struct hci_dev_req dev_req[0]; +}; + +struct hci_dev_stats { + quint32 err_rx; + quint32 err_tx; + quint32 cmd_tx; + quint32 evt_rx; + quint32 acl_tx; + quint32 acl_rx; + quint32 sco_tx; + quint32 sco_rx; + quint32 byte_rx; + quint32 byte_tx; +}; + +struct hci_dev_info { + quint16 dev_id; + char name[8]; + + bdaddr_t bdaddr; + + quint32 flags; + quint8 type; + + quint8 features[8]; + + quint32 pkt_type; + quint32 link_policy; + quint32 link_mode; + + quint16 acl_mtu; + quint16 acl_pkts; + quint16 sco_mtu; + quint16 sco_pkts; + + struct hci_dev_stats stat; +}; + +struct hci_conn_info { + quint16 handle; + bdaddr_t bdaddr; + quint8 type; + quint8 out; + quint16 state; + quint32 link_mode; +}; + +struct hci_conn_list_req { + quint16 dev_id; + quint16 conn_num; + struct hci_conn_info conn_info[0]; +}; + +struct hci_filter { + quint32 type_mask; + quint32 event_mask[2]; + quint16 opcode; +}; + +static inline void hci_set_bit(int nr, void *addr) +{ + *((quint32 *) addr + (nr >> 5)) |= (1 << (nr & 31)); +} +static inline void hci_clear_bit(int nr, void *addr) +{ + *((quint32 *) addr + (nr >> 5)) &= ~(1 << (nr & 31)); +} +static inline void hci_filter_clear(struct hci_filter *f) +{ + memset(f, 0, sizeof(*f)); +} +static inline void hci_filter_set_ptype(int t, struct hci_filter *f) +{ + hci_set_bit((t == HCI_VENDOR_PKT) ? 0 : (t & HCI_FLT_TYPE_BITS), &f->type_mask); +} +static inline void hci_filter_clear_ptype(int t, struct hci_filter *f) +{ + hci_clear_bit((t == HCI_VENDOR_PKT) ? 0 : (t & HCI_FLT_TYPE_BITS), &f->type_mask); +} +static inline void hci_filter_set_event(int e, struct hci_filter *f) +{ + hci_set_bit((e & HCI_FLT_EVENT_BITS), &f->event_mask); +} +static inline void hci_filter_clear_event(int e, struct hci_filter *f) +{ + hci_clear_bit((e & HCI_FLT_EVENT_BITS), &f->event_mask); +} +static inline void hci_filter_all_ptypes(struct hci_filter *f) +{ + memset((void *) &f->type_mask, 0xff, sizeof(f->type_mask)); +} +static inline void hci_filter_all_events(struct hci_filter *f) +{ + memset((void *) f->event_mask, 0xff, sizeof(f->event_mask)); +} + +typedef struct { + quint8 evt; + quint8 plen; +} __attribute__ ((packed)) hci_event_hdr; +#define HCI_EVENT_HDR_SIZE 2 + +#define EVT_ENCRYPT_CHANGE 0x08 +typedef struct { + quint8 status; + quint16 handle; + quint8 encrypt; +} __attribute__ ((packed)) evt_encrypt_change; +#define EVT_ENCRYPT_CHANGE_SIZE 4 + +#define EVT_CMD_COMPLETE 0x0E +struct evt_cmd_complete { + quint8 ncmd; + quint16 opcode; +} __attribute__ ((packed)); + +struct AclData { + quint16 handle: 12; + quint16 pbFlag: 2; + quint16 bcFlag: 2; + quint16 dataLen; +}; + +struct L2CapHeader { + quint16 length; + quint16 channelId; +}; + +struct hci_command_hdr { + quint16 opcode; /* OCF & OGF */ + quint8 plen; +} __attribute__ ((packed)); + +enum OpCodeGroupField { + OgfLinkControl = 0x8, +}; + +enum OpCodeCommandField { + OcfLeSetAdvParams = 0x6, + OcfLeReadTxPowerLevel = 0x7, + OcfLeSetAdvData = 0x8, + OcfLeSetScanResponseData = 0x9, + OcfLeSetAdvEnable = 0xa, + OcfLeClearWhiteList = 0x10, + OcfLeAddToWhiteList = 0x11, + OcfLeConnectionUpdate = 0x13, +}; + +/* Command opcode pack/unpack */ +#define opCodePack(ogf, ocf) (quint16(((ocf) & 0x03ff)|((ogf) << 10))) +#define ogfFromOpCode(op) ((op) >> 10) +#define ocfFromOpCode(op) ((op) & 0x03ff) + +QT_END_NAMESPACE + +#endif // BLUEZ_DATA_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/device1_bluez5_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/device1_bluez5_p.h new file mode 100644 index 0000000..b9523a5 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/device1_bluez5_p.h @@ -0,0 +1,168 @@ +/* + * This file was generated by qdbusxml2cpp version 0.8 + * Command line was: qdbusxml2cpp -p device1_bluez5_p.h:device1_bluez5.cpp org.bluez.Device1.xml + * + * qdbusxml2cpp is Copyright (C) 2017 The Qt Company Ltd. + * + * This is an auto-generated file. + * Do not edit! All changes made to it will be lost. + */ + +#ifndef DEVICE1_BLUEZ5_P_H +#define DEVICE1_BLUEZ5_P_H + +#include +#include +#include +#include +#include +#include +#include +#include +#include "bluez5_helper_p.h" + +/* + * Proxy class for interface org.bluez.Device1 + */ +class OrgBluezDevice1Interface: public QDBusAbstractInterface +{ + Q_OBJECT +public: + static inline const char *staticInterfaceName() + { return "org.bluez.Device1"; } + +public: + OrgBluezDevice1Interface(const QString &service, const QString &path, const QDBusConnection &connection, QObject *parent = nullptr); + + ~OrgBluezDevice1Interface(); + + Q_PROPERTY(QDBusObjectPath Adapter READ adapter) + inline QDBusObjectPath adapter() const + { return qvariant_cast< QDBusObjectPath >(property("Adapter")); } + + Q_PROPERTY(QString Address READ address) + inline QString address() const + { return qvariant_cast< QString >(property("Address")); } + + Q_PROPERTY(QString Alias READ alias WRITE setAlias) + inline QString alias() const + { return qvariant_cast< QString >(property("Alias")); } + inline void setAlias(const QString &value) + { setProperty("Alias", QVariant::fromValue(value)); } + + Q_PROPERTY(ushort Appearance READ appearance) + inline ushort appearance() const + { return qvariant_cast< ushort >(property("Appearance")); } + + Q_PROPERTY(bool Blocked READ blocked WRITE setBlocked) + inline bool blocked() const + { return qvariant_cast< bool >(property("Blocked")); } + inline void setBlocked(bool value) + { setProperty("Blocked", QVariant::fromValue(value)); } + + Q_PROPERTY(uint Class READ classProperty) + inline uint classProperty() const + { return qvariant_cast< uint >(property("Class")); } + + Q_PROPERTY(bool Connected READ connected) + inline bool connected() const + { return qvariant_cast< bool >(property("Connected")); } + + Q_PROPERTY(QString Icon READ icon) + inline QString icon() const + { return qvariant_cast< QString >(property("Icon")); } + + Q_PROPERTY(bool LegacyPairing READ legacyPairing) + inline bool legacyPairing() const + { return qvariant_cast< bool >(property("LegacyPairing")); } + + Q_PROPERTY(ManufacturerDataList ManufacturerData READ manufacturerData) + inline ManufacturerDataList manufacturerData() const + { return qvariant_cast< ManufacturerDataList >(property("ManufacturerData")); } + + Q_PROPERTY(QString Modalias READ modalias) + inline QString modalias() const + { return qvariant_cast< QString >(property("Modalias")); } + + Q_PROPERTY(QString Name READ name) + inline QString name() const + { return qvariant_cast< QString >(property("Name")); } + + Q_PROPERTY(bool Paired READ paired) + inline bool paired() const + { return qvariant_cast< bool >(property("Paired")); } + + Q_PROPERTY(short RSSI READ rSSI) + inline short rSSI() const + { return qvariant_cast< short >(property("RSSI")); } + + Q_PROPERTY(QVariantMap ServiceData READ serviceData) + inline QVariantMap serviceData() const + { return qvariant_cast< QVariantMap >(property("ServiceData")); } + + Q_PROPERTY(bool ServicesResolved READ servicesResolved) + inline bool servicesResolved() const + { return qvariant_cast< bool >(property("ServicesResolved")); } + + Q_PROPERTY(bool Trusted READ trusted WRITE setTrusted) + inline bool trusted() const + { return qvariant_cast< bool >(property("Trusted")); } + inline void setTrusted(bool value) + { setProperty("Trusted", QVariant::fromValue(value)); } + + Q_PROPERTY(short TxPower READ txPower) + inline short txPower() const + { return qvariant_cast< short >(property("TxPower")); } + + Q_PROPERTY(QStringList UUIDs READ uUIDs) + inline QStringList uUIDs() const + { return qvariant_cast< QStringList >(property("UUIDs")); } + +public Q_SLOTS: // METHODS + inline QDBusPendingReply<> CancelPairing() + { + QList argumentList; + return asyncCallWithArgumentList(QStringLiteral("CancelPairing"), argumentList); + } + + inline QDBusPendingReply<> Connect() + { + QList argumentList; + return asyncCallWithArgumentList(QStringLiteral("Connect"), argumentList); + } + + inline QDBusPendingReply<> ConnectProfile(const QString &UUID) + { + QList argumentList; + argumentList << QVariant::fromValue(UUID); + return asyncCallWithArgumentList(QStringLiteral("ConnectProfile"), argumentList); + } + + inline QDBusPendingReply<> Disconnect() + { + QList argumentList; + return asyncCallWithArgumentList(QStringLiteral("Disconnect"), argumentList); + } + + inline QDBusPendingReply<> DisconnectProfile(const QString &UUID) + { + QList argumentList; + argumentList << QVariant::fromValue(UUID); + return asyncCallWithArgumentList(QStringLiteral("DisconnectProfile"), argumentList); + } + + inline QDBusPendingReply<> Pair() + { + QList argumentList; + return asyncCallWithArgumentList(QStringLiteral("Pair"), argumentList); + } + +Q_SIGNALS: // SIGNALS +}; + +namespace org { + namespace bluez { + typedef ::OrgBluezDevice1Interface Device1; + } +} +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/device_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/device_p.h new file mode 100644 index 0000000..2e1e39a --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/device_p.h @@ -0,0 +1,104 @@ +/* + * This file was generated by qdbusxml2cpp version 0.8 + * Command line was: qdbusxml2cpp -i servicemap_p.h -p device_p.h:device.cpp org.bluez.Device.xml org.bluez.Device + * + * qdbusxml2cpp is Copyright (C) 2017 The Qt Company Ltd. + * + * This is an auto-generated file. + * Do not edit! All changes made to it will be lost. + */ + +#ifndef DEVICE_P_H +#define DEVICE_P_H + +#include +#include +#include +#include +#include +#include +#include +#include +#include "servicemap_p.h" + +/* + * Proxy class for interface org.bluez.Device + */ +class OrgBluezDeviceInterface: public QDBusAbstractInterface +{ + Q_OBJECT +public: + static inline const char *staticInterfaceName() + { return "org.bluez.Device"; } + +public: + OrgBluezDeviceInterface(const QString &service, const QString &path, const QDBusConnection &connection, QObject *parent = nullptr); + + ~OrgBluezDeviceInterface(); + +public Q_SLOTS: // METHODS + inline QDBusPendingReply<> CancelDiscovery() + { + QList argumentList; + return asyncCallWithArgumentList(QStringLiteral("CancelDiscovery"), argumentList); + } + + inline QDBusPendingReply CreateNode(const QString &in0) + { + QList argumentList; + argumentList << QVariant::fromValue(in0); + return asyncCallWithArgumentList(QStringLiteral("CreateNode"), argumentList); + } + + inline QDBusPendingReply<> Disconnect() + { + QList argumentList; + return asyncCallWithArgumentList(QStringLiteral("Disconnect"), argumentList); + } + + inline QDBusPendingReply DiscoverServices(const QString &in0) + { + QList argumentList; + argumentList << QVariant::fromValue(in0); + return asyncCallWithArgumentList(QStringLiteral("DiscoverServices"), argumentList); + } + + inline QDBusPendingReply GetProperties() + { + QList argumentList; + return asyncCallWithArgumentList(QStringLiteral("GetProperties"), argumentList); + } + + inline QDBusPendingReply > ListNodes() + { + QList argumentList; + return asyncCallWithArgumentList(QStringLiteral("ListNodes"), argumentList); + } + + inline QDBusPendingReply<> RemoveNode(const QDBusObjectPath &in0) + { + QList argumentList; + argumentList << QVariant::fromValue(in0); + return asyncCallWithArgumentList(QStringLiteral("RemoveNode"), argumentList); + } + + inline QDBusPendingReply<> SetProperty(const QString &in0, const QDBusVariant &in1) + { + QList argumentList; + argumentList << QVariant::fromValue(in0) << QVariant::fromValue(in1); + return asyncCallWithArgumentList(QStringLiteral("SetProperty"), argumentList); + } + +Q_SIGNALS: // SIGNALS + void DisconnectRequested(); + void NodeCreated(const QDBusObjectPath &in0); + void NodeRemoved(const QDBusObjectPath &in0); + void PropertyChanged(const QString &in0, const QDBusVariant &in1); +}; + +namespace org { + namespace bluez { + typedef ::OrgBluezDeviceInterface Device; + } +} +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/devicediscoverybroadcastreceiver_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/devicediscoverybroadcastreceiver_p.h new file mode 100644 index 0000000..0302971 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/devicediscoverybroadcastreceiver_p.h @@ -0,0 +1,81 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Lauri Laanmets (Proekspert AS) +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef DEVICEDISCOVERYBROADCASTRECEIVER_H +#define DEVICEDISCOVERYBROADCASTRECEIVER_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include "android/androidbroadcastreceiver_p.h" +#include + +QT_BEGIN_NAMESPACE + +class QBluetoothDeviceInfo; + +class DeviceDiscoveryBroadcastReceiver : public AndroidBroadcastReceiver +{ + Q_OBJECT +public: + DeviceDiscoveryBroadcastReceiver(QObject* parent = nullptr); + virtual void onReceive(JNIEnv *env, jobject context, jobject intent); + virtual void onReceiveLeScan(JNIEnv *env, jobject jBluetoothDevice, jint rssi, + jbyteArray scanRecord); + +signals: + void deviceDiscovered(const QBluetoothDeviceInfo &info, bool isLeScanResult); + void finished(); + +private: + QBluetoothDeviceInfo retrieveDeviceInfo(JNIEnv *env, const QAndroidJniObject& bluetoothDevice, + int rssi, jbyteArray scanRecord = nullptr); +}; + +QT_END_NAMESPACE +#endif // DEVICEDISCOVERYBROADCASTRECEIVER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/dummy_helper_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/dummy_helper_p.h new file mode 100644 index 0000000..0c51770 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/dummy_helper_p.h @@ -0,0 +1,62 @@ +/**************************************************************************** +** +** Copyright (C) 2017 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef DUMMY_HELPER_H +#define DUMMY_HELPER_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include "QtCore/qglobal.h" + +QT_BEGIN_NAMESPACE + +void printDummyWarning(); + +QT_END_NAMESPACE + +#endif // DUMMY_HELPER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/gattchar1_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/gattchar1_p.h new file mode 100644 index 0000000..c19e9f5 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/gattchar1_p.h @@ -0,0 +1,93 @@ +/* + * This file was generated by qdbusxml2cpp version 0.8 + * Command line was: qdbusxml2cpp -p gattchar1_p.h:gattchar1.cpp org.bluez.GattCharacteristic1.xml + * + * qdbusxml2cpp is Copyright (C) 2017 The Qt Company Ltd. + * + * This is an auto-generated file. + * Do not edit! All changes made to it will be lost. + */ + +#ifndef GATTCHAR1_P_H +#define GATTCHAR1_P_H + +#include +#include +#include +#include +#include +#include +#include +#include + +/* + * Proxy class for interface org.bluez.GattCharacteristic1 + */ +class OrgBluezGattCharacteristic1Interface: public QDBusAbstractInterface +{ + Q_OBJECT +public: + static inline const char *staticInterfaceName() + { return "org.bluez.GattCharacteristic1"; } + +public: + OrgBluezGattCharacteristic1Interface(const QString &service, const QString &path, const QDBusConnection &connection, QObject *parent = nullptr); + + ~OrgBluezGattCharacteristic1Interface(); + + Q_PROPERTY(QStringList Flags READ flags) + inline QStringList flags() const + { return qvariant_cast< QStringList >(property("Flags")); } + + Q_PROPERTY(bool Notifying READ notifying) + inline bool notifying() const + { return qvariant_cast< bool >(property("Notifying")); } + + Q_PROPERTY(QDBusObjectPath Service READ service) + inline QDBusObjectPath service() const + { return qvariant_cast< QDBusObjectPath >(property("Service")); } + + Q_PROPERTY(QString UUID READ uUID) + inline QString uUID() const + { return qvariant_cast< QString >(property("UUID")); } + + Q_PROPERTY(QByteArray Value READ value) + inline QByteArray value() const + { return qvariant_cast< QByteArray >(property("Value")); } + +public Q_SLOTS: // METHODS + inline QDBusPendingReply ReadValue(const QVariantMap &options) + { + QList argumentList; + argumentList << QVariant::fromValue(options); + return asyncCallWithArgumentList(QStringLiteral("ReadValue"), argumentList); + } + + inline QDBusPendingReply<> StartNotify() + { + QList argumentList; + return asyncCallWithArgumentList(QStringLiteral("StartNotify"), argumentList); + } + + inline QDBusPendingReply<> StopNotify() + { + QList argumentList; + return asyncCallWithArgumentList(QStringLiteral("StopNotify"), argumentList); + } + + inline QDBusPendingReply<> WriteValue(const QByteArray &value, const QVariantMap &options) + { + QList argumentList; + argumentList << QVariant::fromValue(value) << QVariant::fromValue(options); + return asyncCallWithArgumentList(QStringLiteral("WriteValue"), argumentList); + } + +Q_SIGNALS: // SIGNALS +}; + +namespace org { + namespace bluez { + typedef ::OrgBluezGattCharacteristic1Interface GattCharacteristic1; + } +} +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/gattdesc1_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/gattdesc1_p.h new file mode 100644 index 0000000..6ade7a4 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/gattdesc1_p.h @@ -0,0 +1,73 @@ +/* + * This file was generated by qdbusxml2cpp version 0.8 + * Command line was: qdbusxml2cpp -p gattdesc1_p.h:gattdesc1.cpp org.bluez.GattDescriptor1.xml + * + * qdbusxml2cpp is Copyright (C) 2017 The Qt Company Ltd. + * + * This is an auto-generated file. + * Do not edit! All changes made to it will be lost. + */ + +#ifndef GATTDESC1_P_H +#define GATTDESC1_P_H + +#include +#include +#include +#include +#include +#include +#include +#include + +/* + * Proxy class for interface org.bluez.GattDescriptor1 + */ +class OrgBluezGattDescriptor1Interface: public QDBusAbstractInterface +{ + Q_OBJECT +public: + static inline const char *staticInterfaceName() + { return "org.bluez.GattDescriptor1"; } + +public: + OrgBluezGattDescriptor1Interface(const QString &service, const QString &path, const QDBusConnection &connection, QObject *parent = nullptr); + + ~OrgBluezGattDescriptor1Interface(); + + Q_PROPERTY(QDBusObjectPath Characteristic READ characteristic) + inline QDBusObjectPath characteristic() const + { return qvariant_cast< QDBusObjectPath >(property("Characteristic")); } + + Q_PROPERTY(QString UUID READ uUID) + inline QString uUID() const + { return qvariant_cast< QString >(property("UUID")); } + + Q_PROPERTY(QByteArray Value READ value) + inline QByteArray value() const + { return qvariant_cast< QByteArray >(property("Value")); } + +public Q_SLOTS: // METHODS + inline QDBusPendingReply ReadValue(const QVariantMap &options) + { + QList argumentList; + argumentList << QVariant::fromValue(options); + return asyncCallWithArgumentList(QStringLiteral("ReadValue"), argumentList); + } + + inline QDBusPendingReply<> WriteValue(const QByteArray &value, const QVariantMap &options) + { + QList argumentList; + argumentList << QVariant::fromValue(value) << QVariant::fromValue(options); + return asyncCallWithArgumentList(QStringLiteral("WriteValue"), argumentList); + } + +Q_SIGNALS: // SIGNALS +}; + +namespace org { + namespace bluez { + typedef ::OrgBluezGattDescriptor1Interface GattDescriptor1; + } +} +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/gattservice1_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/gattservice1_p.h new file mode 100644 index 0000000..128305f --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/gattservice1_p.h @@ -0,0 +1,63 @@ +/* + * This file was generated by qdbusxml2cpp version 0.8 + * Command line was: qdbusxml2cpp -p gattservice1_p.h:gattservice1.cpp org.bluez.GattService1.xml + * + * qdbusxml2cpp is Copyright (C) 2017 The Qt Company Ltd. + * + * This is an auto-generated file. + * Do not edit! All changes made to it will be lost. + */ + +#ifndef GATTSERVICE1_P_H +#define GATTSERVICE1_P_H + +#include +#include +#include +#include +#include +#include +#include +#include + +/* + * Proxy class for interface org.bluez.GattService1 + */ +class OrgBluezGattService1Interface: public QDBusAbstractInterface +{ + Q_OBJECT +public: + static inline const char *staticInterfaceName() + { return "org.bluez.GattService1"; } + +public: + OrgBluezGattService1Interface(const QString &service, const QString &path, const QDBusConnection &connection, QObject *parent = nullptr); + + ~OrgBluezGattService1Interface(); + + Q_PROPERTY(QDBusObjectPath Device READ device) + inline QDBusObjectPath device() const + { return qvariant_cast< QDBusObjectPath >(property("Device")); } + + Q_PROPERTY(QList Includes READ includes) + inline QList includes() const + { return qvariant_cast< QList >(property("Includes")); } + + Q_PROPERTY(bool Primary READ primary) + inline bool primary() const + { return qvariant_cast< bool >(property("Primary")); } + + Q_PROPERTY(QString UUID READ uUID) + inline QString uUID() const + { return qvariant_cast< QString >(property("UUID")); } + +public Q_SLOTS: // METHODS +Q_SIGNALS: // SIGNALS +}; + +namespace org { + namespace bluez { + typedef ::OrgBluezGattService1Interface GattService1; + } +} +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/hcimanager_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/hcimanager_p.h new file mode 100644 index 0000000..15b8791 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/hcimanager_p.h @@ -0,0 +1,118 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef HCIMANAGER_P_H +#define HCIMANAGER_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include +#include +#include "bluez/bluez_data_p.h" + +QT_BEGIN_NAMESPACE + +class QLowEnergyConnectionParameters; + +class HciManager : public QObject +{ + Q_OBJECT +public: + enum HciEvent { + EncryptChangeEvent = EVT_ENCRYPT_CHANGE, + CommandCompleteEvent = EVT_CMD_COMPLETE, + LeMetaEvent = 0x3e, + }; + + explicit HciManager(const QBluetoothAddress &deviceAdapter, QObject *parent = nullptr); + ~HciManager(); + + bool isValid() const; + bool monitorEvent(HciManager::HciEvent event); + bool monitorAclPackets(); + bool sendCommand(OpCodeGroupField ogf, OpCodeCommandField ocf, const QByteArray ¶meters); + + void stopEvents(); + QBluetoothAddress addressForConnectionHandle(quint16 handle) const; + + // active connections + QVector activeLowEnergyConnections() const; + + bool sendConnectionUpdateCommand(quint16 handle, const QLowEnergyConnectionParameters ¶ms); + bool sendConnectionParameterUpdateRequest(quint16 handle, + const QLowEnergyConnectionParameters ¶ms); + +signals: + void encryptionChangedEvent(const QBluetoothAddress &address, bool wasSuccess); + void commandCompleted(quint16 opCode, quint8 status, const QByteArray &data); + void connectionComplete(quint16 handle); + void connectionUpdate(quint16 handle, const QLowEnergyConnectionParameters ¶meters); + void signatureResolvingKeyReceived(quint16 connHandle, bool remoteKey, const quint128 &csrk); + +private slots: + void _q_readNotify(); + +private: + int hciForAddress(const QBluetoothAddress &deviceAdapter); + void handleHciEventPacket(const quint8 *data, int size); + void handleHciAclPacket(const quint8 *data, int size); + void handleLeMetaEvent(const quint8 *data); + + int hciSocket; + int hciDev; + quint8 sigPacketIdentifier = 0; + QSocketNotifier *notifier = nullptr; + QSet runningEvents; +}; + +QT_END_NAMESPACE + +#endif // HCIMANAGER_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/inputstreamthread_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/inputstreamthread_p.h new file mode 100644 index 0000000..060b2ac --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/inputstreamthread_p.h @@ -0,0 +1,93 @@ +/**************************************************************************** +** +** Copyright (C) 2016 Lauri Laanmets (Proekspert AS) +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef INPUTSTREAMTHREAD_H +#define INPUTSTREAMTHREAD_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +class QBluetoothSocketPrivateAndroid; + +class InputStreamThread : public QObject +{ + Q_OBJECT +public: + explicit InputStreamThread(QBluetoothSocketPrivateAndroid *socket_p); + + qint64 bytesAvailable() const; + bool canReadLine() const; + bool run(); + + qint64 readData(char *data, qint64 maxSize); + void javaThreadErrorOccurred(int errorCode); + void javaReadyRead(jbyteArray buffer, int bufferLength); + + void prepareForClosure(); + +signals: + void dataAvailable(); + void error(int errorCode); + +private: + QBluetoothSocketPrivateAndroid *m_socket_p; + QAndroidJniObject javaInputStreamThread; + mutable QMutex m_mutex; + bool expectClosure; +}; + +QT_END_NAMESPACE + +#endif // INPUTSTREAMTHREAD_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/jni_android_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/jni_android_p.h new file mode 100644 index 0000000..79aa43c --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/jni_android_p.h @@ -0,0 +1,84 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef JNI_ANDROID_P_H +#define JNI_ANDROID_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +enum JavaNames { + BluetoothAdapter = 0, + BluetoothDevice, + ActionAclConnected, + ActionAclDisconnected, + ActionBondStateChanged, + ActionDiscoveryStarted, + ActionDiscoveryFinished, + ActionFound, + ActionPairingRequest, + ActionScanModeChanged, + ActionUuid, + ExtraBondState, + ExtraDevice, + ExtraPairingKey, + ExtraPairingVariant, + ExtraRssi, + ExtraScanMode, + ExtraUuid +}; + +QAndroidJniObject valueForStaticField(JavaNames javaName, JavaNames javaFieldName); + +QT_END_NAMESPACE + +#endif // JNI_ANDROID_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/lecmaccalculator_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/lecmaccalculator_p.h new file mode 100644 index 0000000..1777f63 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/lecmaccalculator_p.h @@ -0,0 +1,79 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ +#ifndef LECMACCALCULATOR_H +#define LECMACCALCULATOR_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +QT_BEGIN_NAMESPACE + +struct quint128; + +class Q_AUTOTEST_EXPORT LeCmacCalculator +{ +public: + LeCmacCalculator(); + ~LeCmacCalculator(); + + static QByteArray createFullMessage(const QByteArray &message, quint32 signCounter); + + quint64 calculateMac(const QByteArray &message, const quint128 &csrk) const; + + // Convenience function. + bool verify(const QByteArray &message, const quint128 &csrk, quint64 expectedMac) const; + +private: + int m_baseSocket = -1; +}; + + +QT_END_NAMESPACE + +#endif // Header guard diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/localdevicebroadcastreceiver_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/localdevicebroadcastreceiver_p.h new file mode 100644 index 0000000..09e50fb --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/localdevicebroadcastreceiver_p.h @@ -0,0 +1,86 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#include "android/androidbroadcastreceiver_p.h" +#include +#include + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#ifndef LOCALDEVICEBROADCASTRECEIVER_H +#define LOCALDEVICEBROADCASTRECEIVER_H + +QT_BEGIN_NAMESPACE + +class LocalDeviceBroadcastReceiver : public AndroidBroadcastReceiver +{ + Q_OBJECT +public: + explicit LocalDeviceBroadcastReceiver(QObject *parent = nullptr); + virtual ~LocalDeviceBroadcastReceiver() {} + virtual void onReceive(JNIEnv *env, jobject context, jobject intent); + virtual void onReceiveLeScan(JNIEnv *, jobject, jint, jbyteArray) {} + bool pairingConfirmation(bool accept); + +signals: + void hostModeStateChanged(QBluetoothLocalDevice::HostMode state); + void pairingStateChanged(const QBluetoothAddress &address, QBluetoothLocalDevice::Pairing pairing); + void connectDeviceChanges(const QBluetoothAddress &address, bool isConnectEvent); + void pairingDisplayConfirmation(const QBluetoothAddress &address, const QString& pin); + void pairingDisplayPinCode(const QBluetoothAddress &address, const QString& pin); +private: + int previousScanMode; + QAndroidJniObject pairingDevice; + + int bondingModePreset[3]; + int hostModePreset[3]; +}; + +QT_END_NAMESPACE + +#endif // LOCALDEVICEBROADCASTRECEIVER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/lowenergynotificationhub_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/lowenergynotificationhub_p.h new file mode 100644 index 0000000..27016bc --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/lowenergynotificationhub_p.h @@ -0,0 +1,144 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef LOWENERGYNOTIFICATIONHUB_H +#define LOWENERGYNOTIFICATIONHUB_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include +#include +#include +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +class LowEnergyNotificationHub : public QObject +{ + Q_OBJECT +public: + explicit LowEnergyNotificationHub(const QBluetoothAddress &remote, bool isPeripheral, + QObject *parent = nullptr); + ~LowEnergyNotificationHub(); + + static void lowEnergy_connectionChange(JNIEnv*, jobject, jlong qtObject, + jint errorCode, jint newState); + static void lowEnergy_servicesDiscovered(JNIEnv*, jobject, jlong qtObject, + jint errorCode, jobject uuidList); + static void lowEnergy_serviceDetailsDiscovered(JNIEnv *, jobject, + jlong qtObject, jobject uuid, + jint startHandle, jint endHandle); + static void lowEnergy_characteristicRead(JNIEnv*env, jobject, jlong qtObject, + jobject serviceUuid, + jint handle, jobject charUuid, + jint properties, jbyteArray data); + static void lowEnergy_descriptorRead(JNIEnv *env, jobject, jlong qtObject, + jobject sUuid, jobject cUuid, + jint handle, jobject dUuid, jbyteArray data); + static void lowEnergy_characteristicWritten(JNIEnv *, jobject, jlong qtObject, + jint charHandle, jbyteArray data, + jint errorCode); + static void lowEnergy_descriptorWritten(JNIEnv *, jobject, jlong qtObject, + jint descHandle, jbyteArray data, + jint errorCode); + static void lowEnergy_serverDescriptorWritten(JNIEnv *, jobject, jlong qtObject, + jobject descriptor, jbyteArray newValue); + static void lowEnergy_characteristicChanged(JNIEnv *, jobject, jlong qtObject, + jint charHandle, jbyteArray data); + static void lowEnergy_serverCharacteristicChanged(JNIEnv *, jobject, jlong qtObject, + jobject characteristic, jbyteArray newValue); + static void lowEnergy_serviceError(JNIEnv *, jobject, jlong qtObject, + jint attributeHandle, int errorCode); + static void lowEnergy_advertisementError(JNIEnv *, jobject, jlong qtObject, + jint status); + + QAndroidJniObject javaObject() + { + return jBluetoothLe; + } + +signals: + void connectionUpdated(QLowEnergyController::ControllerState newState, + QLowEnergyController::Error errorCode); + void servicesDiscovered(QLowEnergyController::Error errorCode, const QString &uuids); + void serviceDetailsDiscoveryFinished(const QString& serviceUuid, + int startHandle, int endHandle); + void characteristicRead(const QBluetoothUuid &serviceUuid, + int handle, const QBluetoothUuid &charUuid, + int properties, const QByteArray &data); + void descriptorRead(const QBluetoothUuid &serviceUuid, const QBluetoothUuid &charUuid, + int handle, const QBluetoothUuid &descUuid, const QByteArray &data); + void characteristicWritten(int charHandle, const QByteArray &data, + QLowEnergyService::ServiceError errorCode); + void descriptorWritten(int descHandle, const QByteArray &data, + QLowEnergyService::ServiceError errorCode); + void serverDescriptorWritten(const QAndroidJniObject &descriptor, const QByteArray &newValue); + void characteristicChanged(int charHandle, const QByteArray &data); + void serverCharacteristicChanged(const QAndroidJniObject &characteristic, const QByteArray &newValue); + void serviceError(int attributeHandle, QLowEnergyService::ServiceError errorCode); + void advertisementError(int status); + +public slots: +private: + static QReadWriteLock lock; + + QAndroidJniObject jBluetoothLe; + long javaToCtoken; + +}; + +QT_END_NAMESPACE + +#endif // LOWENERGYNOTIFICATIONHUB_H + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/manager_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/manager_p.h new file mode 100644 index 0000000..a969e06 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/manager_p.h @@ -0,0 +1,69 @@ +/* + * This file was generated by qdbusxml2cpp version 0.8 + * Command line was: qdbusxml2cpp -p manager_p.h:manager.cpp org.bluez.Manager.xml org.bluez.Manager + * + * qdbusxml2cpp is Copyright (C) 2017 The Qt Company Ltd. + * + * This is an auto-generated file. + * Do not edit! All changes made to it will be lost. + */ + +#ifndef MANAGER_P_H +#define MANAGER_P_H + +#include +#include +#include +#include +#include +#include +#include +#include + +/* + * Proxy class for interface org.bluez.Manager + */ +class OrgBluezManagerInterface: public QDBusAbstractInterface +{ + Q_OBJECT +public: + static inline const char *staticInterfaceName() + { return "org.bluez.Manager"; } + +public: + OrgBluezManagerInterface(const QString &service, const QString &path, const QDBusConnection &connection, QObject *parent = nullptr); + + ~OrgBluezManagerInterface(); + +public Q_SLOTS: // METHODS + inline QDBusPendingReply DefaultAdapter() + { + QList argumentList; + return asyncCallWithArgumentList(QStringLiteral("DefaultAdapter"), argumentList); + } + + inline QDBusPendingReply FindAdapter(const QString &in0) + { + QList argumentList; + argumentList << QVariant::fromValue(in0); + return asyncCallWithArgumentList(QStringLiteral("FindAdapter"), argumentList); + } + + inline QDBusPendingReply > ListAdapters() + { + QList argumentList; + return asyncCallWithArgumentList(QStringLiteral("ListAdapters"), argumentList); + } + +Q_SIGNALS: // SIGNALS + void AdapterAdded(const QDBusObjectPath &in0); + void AdapterRemoved(const QDBusObjectPath &in0); + void DefaultAdapterChanged(const QDBusObjectPath &in0); +}; + +namespace org { + namespace bluez { + typedef ::OrgBluezManagerInterface Manager; + } +} +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/obex_agent_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/obex_agent_p.h new file mode 100644 index 0000000..242b259 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/obex_agent_p.h @@ -0,0 +1,67 @@ +/* + * This file was generated by qdbusxml2cpp version 0.8 + * Command line was: qdbusxml2cpp -a obex_agent_p.h:obex_agent.cpp org.openobex.agent.xml org.openobex.Agent + * + * qdbusxml2cpp is Copyright (C) 2017 The Qt Company Ltd. + * + * This is an auto-generated file. + * This file may have been hand-edited. Look for HAND-EDIT comments + * before re-generating it. + */ + +#ifndef OBEX_AGENT_P_H +#define OBEX_AGENT_P_H + +#include +#include +QT_BEGIN_NAMESPACE +class QByteArray; +template class QList; +template class QMap; +class QString; +class QStringList; +class QVariant; +QT_END_NAMESPACE + +/* + * Adaptor class for interface org.openobex.Agent + */ +class AgentAdaptor: public QDBusAbstractAdaptor +{ + Q_OBJECT + Q_CLASSINFO("D-Bus Interface", "org.openobex.Agent") + Q_CLASSINFO("D-Bus Introspection", "" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" + "") +public: + AgentAdaptor(QObject *parent); + virtual ~AgentAdaptor(); + +public: // PROPERTIES +public Q_SLOTS: // METHODS + void Complete(const QDBusObjectPath &in0); + void Error(const QDBusObjectPath &in0, const QString &in1); + void Progress(const QDBusObjectPath &in0, qulonglong in1); + void Release(); + QString Request(const QDBusObjectPath &in0); +Q_SIGNALS: // SIGNALS +}; + +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/obex_client1_bluez5_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/obex_client1_bluez5_p.h new file mode 100644 index 0000000..ccd5b0d --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/obex_client1_bluez5_p.h @@ -0,0 +1,63 @@ +/* + * This file was generated by qdbusxml2cpp version 0.8 + * Command line was: qdbusxml2cpp -p obex_client1_bluez5_p.h:obex_client1_bluez5_p.h org.bluez.Client1.xml + * + * qdbusxml2cpp is Copyright (C) 2017 The Qt Company Ltd. + * + * This is an auto-generated file. + * Do not edit! All changes made to it will be lost. + */ + +#ifndef OBEX_CLIENT1_BLUEZ5_P_H +#define OBEX_CLIENT1_BLUEZ5_P_H + +#include +#include +#include +#include +#include +#include +#include +#include + +/* + * Proxy class for interface org.bluez.obex.Client1 + */ +class OrgBluezObexClient1Interface: public QDBusAbstractInterface +{ + Q_OBJECT +public: + static inline const char *staticInterfaceName() + { return "org.bluez.obex.Client1"; } + +public: + OrgBluezObexClient1Interface(const QString &service, const QString &path, const QDBusConnection &connection, QObject *parent = nullptr); + + ~OrgBluezObexClient1Interface(); + +public Q_SLOTS: // METHODS + inline QDBusPendingReply CreateSession(const QString &destination, const QVariantMap &args) + { + QList argumentList; + argumentList << QVariant::fromValue(destination) << QVariant::fromValue(args); + return asyncCallWithArgumentList(QStringLiteral("CreateSession"), argumentList); + } + + inline QDBusPendingReply<> RemoveSession(const QDBusObjectPath &session) + { + QList argumentList; + argumentList << QVariant::fromValue(session); + return asyncCallWithArgumentList(QStringLiteral("RemoveSession"), argumentList); + } + +Q_SIGNALS: // SIGNALS +}; + +namespace org { + namespace bluez { + namespace obex { + typedef ::OrgBluezObexClient1Interface Client1; + } + } +} +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/obex_client_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/obex_client_p.h new file mode 100644 index 0000000..13b638b --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/obex_client_p.h @@ -0,0 +1,82 @@ +/* + * This file was generated by qdbusxml2cpp version 0.8 + * Command line was: qdbusxml2cpp -p obex_client_p.h:obex_client.cpp org.openobex.client.xml org.openobex.Client + * + * qdbusxml2cpp is Copyright (C) 2017 The Qt Company Ltd. + * + * This is an auto-generated file. + * Do not edit! All changes made to it will be lost. + */ + +#ifndef OBEX_CLIENT_P_H +#define OBEX_CLIENT_P_H + +#include +#include +#include +#include +#include +#include +#include +#include + +/* + * Proxy class for interface org.openobex.Client + */ +class OrgOpenobexClientInterface: public QDBusAbstractInterface +{ + Q_OBJECT +public: + static inline const char *staticInterfaceName() + { return "org.openobex.Client"; } + +public: + OrgOpenobexClientInterface(const QString &service, const QString &path, const QDBusConnection &connection, QObject *parent = nullptr); + + ~OrgOpenobexClientInterface(); + +public Q_SLOTS: // METHODS + inline QDBusPendingReply CreateSession(const QVariantMap &in0) + { + QList argumentList; + argumentList << QVariant::fromValue(in0); + return asyncCallWithArgumentList(QStringLiteral("CreateSession"), argumentList); + } + + inline QDBusPendingReply<> ExchangeBusinessCards(const QVariantMap &in0, const QString &in1, const QString &in2) + { + QList argumentList; + argumentList << QVariant::fromValue(in0) << QVariant::fromValue(in1) << QVariant::fromValue(in2); + return asyncCallWithArgumentList(QStringLiteral("ExchangeBusinessCards"), argumentList); + } + + inline QDBusPendingReply GetCapabilities(const QVariantMap &in0) + { + QList argumentList; + argumentList << QVariant::fromValue(in0); + return asyncCallWithArgumentList(QStringLiteral("GetCapabilities"), argumentList); + } + + inline QDBusPendingReply<> PullBusinessCard(const QVariantMap &in0, const QString &in1) + { + QList argumentList; + argumentList << QVariant::fromValue(in0) << QVariant::fromValue(in1); + return asyncCallWithArgumentList(QStringLiteral("PullBusinessCard"), argumentList); + } + + inline QDBusPendingReply<> SendFiles(const QVariantMap &in0, const QStringList &in1, const QDBusObjectPath &in2) + { + QList argumentList; + argumentList << QVariant::fromValue(in0) << QVariant::fromValue(in1) << QVariant::fromValue(in2); + return asyncCallWithArgumentList(QStringLiteral("SendFiles"), argumentList); + } + +Q_SIGNALS: // SIGNALS +}; + +namespace org { + namespace openobex { + typedef ::OrgOpenobexClientInterface Client; + } +} +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/obex_manager_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/obex_manager_p.h new file mode 100644 index 0000000..822954a --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/obex_manager_p.h @@ -0,0 +1,65 @@ +/* + * This file was generated by qdbusxml2cpp version 0.8 + * Command line was: qdbusxml2cpp -p obex_manager_p.h:obex_manager.cpp org.openobex.all.xml org.openobex.Manager + * + * qdbusxml2cpp is Copyright (C) 2017 The Qt Company Ltd. + * + * This is an auto-generated file. + * Do not edit! All changes made to it will be lost. + */ + +#ifndef OBEX_MANAGER_P_H +#define OBEX_MANAGER_P_H + +#include +#include +#include +#include +#include +#include +#include +#include + +/* + * Proxy class for interface org.openobex.Manager + */ +class OrgOpenobexManagerInterface: public QDBusAbstractInterface +{ + Q_OBJECT +public: + static inline const char *staticInterfaceName() + { return "org.openobex.Manager"; } + +public: + OrgOpenobexManagerInterface(const QString &service, const QString &path, const QDBusConnection &connection, QObject *parent = nullptr); + + ~OrgOpenobexManagerInterface(); + +public Q_SLOTS: // METHODS + inline QDBusPendingReply<> RegisterAgent(const QDBusObjectPath &in0) + { + QList argumentList; + argumentList << QVariant::fromValue(in0); + return asyncCallWithArgumentList(QStringLiteral("RegisterAgent"), argumentList); + } + + inline QDBusPendingReply<> UnregisterAgent(const QDBusObjectPath &in0) + { + QList argumentList; + argumentList << QVariant::fromValue(in0); + return asyncCallWithArgumentList(QStringLiteral("UnregisterAgent"), argumentList); + } + +Q_SIGNALS: // SIGNALS + void SessionCreated(const QDBusObjectPath &in0); + void SessionRemoved(const QDBusObjectPath &in0); + void TransferCompleted(const QDBusObjectPath &in0, bool in1); + void TransferStarted(const QDBusObjectPath &in0); +}; + +namespace org { + namespace openobex { + typedef ::OrgOpenobexManagerInterface Manager; + } +} +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/obex_objectpush1_bluez5_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/obex_objectpush1_bluez5_p.h new file mode 100644 index 0000000..5fa1703 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/obex_objectpush1_bluez5_p.h @@ -0,0 +1,100 @@ +/* + * This file was generated by qdbusxml2cpp version 0.8 + * Command line was: qdbusxml2cpp -p obex_objectpush1_bluez5_p.h:obex_objectpush1_bluez5.cpp org.bluez.obex.ObjectPush1.xml + * + * qdbusxml2cpp is Copyright (C) 2017 The Qt Company Ltd. + * + * This is an auto-generated file. + * Do not edit! All changes made to it will be lost. + */ + +#ifndef OBEX_OBJECTPUSH1_BLUEZ5_P_H +#define OBEX_OBJECTPUSH1_BLUEZ5_P_H + +#include +#include +#include +#include +#include +#include +#include +#include + +/* + * Proxy class for interface org.bluez.obex.ObjectPush1 + */ +class OrgBluezObexObjectPush1Interface: public QDBusAbstractInterface +{ + Q_OBJECT +public: + static inline const char *staticInterfaceName() + { return "org.bluez.obex.ObjectPush1"; } + +public: + OrgBluezObexObjectPush1Interface(const QString &service, const QString &path, const QDBusConnection &connection, QObject *parent = nullptr); + + ~OrgBluezObexObjectPush1Interface(); + +public Q_SLOTS: // METHODS + inline QDBusPendingReply ExchangeBusinessCards(const QString &clientfile, const QString &targetfile) + { + QList argumentList; + argumentList << QVariant::fromValue(clientfile) << QVariant::fromValue(targetfile); + return asyncCallWithArgumentList(QStringLiteral("ExchangeBusinessCards"), argumentList); + } + inline QDBusReply ExchangeBusinessCards(const QString &clientfile, const QString &targetfile, QVariantMap &properties) + { + QList argumentList; + argumentList << QVariant::fromValue(clientfile) << QVariant::fromValue(targetfile); + QDBusMessage reply = callWithArgumentList(QDBus::Block, QStringLiteral("ExchangeBusinessCards"), argumentList); + if (reply.type() == QDBusMessage::ReplyMessage && reply.arguments().count() == 2) { + properties = qdbus_cast(reply.arguments().at(1)); + } + return reply; + } + + inline QDBusPendingReply PullBusinessCard(const QString &targetfile) + { + QList argumentList; + argumentList << QVariant::fromValue(targetfile); + return asyncCallWithArgumentList(QStringLiteral("PullBusinessCard"), argumentList); + } + inline QDBusReply PullBusinessCard(const QString &targetfile, QVariantMap &properties) + { + QList argumentList; + argumentList << QVariant::fromValue(targetfile); + QDBusMessage reply = callWithArgumentList(QDBus::Block, QStringLiteral("PullBusinessCard"), argumentList); + if (reply.type() == QDBusMessage::ReplyMessage && reply.arguments().count() == 2) { + properties = qdbus_cast(reply.arguments().at(1)); + } + return reply; + } + + inline QDBusPendingReply SendFile(const QString &sourcefile) + { + QList argumentList; + argumentList << QVariant::fromValue(sourcefile); + return asyncCallWithArgumentList(QStringLiteral("SendFile"), argumentList); + } + inline QDBusReply SendFile(const QString &sourcefile, QVariantMap &properties) + { + QList argumentList; + argumentList << QVariant::fromValue(sourcefile); + QDBusMessage reply = callWithArgumentList(QDBus::Block, QStringLiteral("SendFile"), argumentList); + if (reply.type() == QDBusMessage::ReplyMessage && reply.arguments().count() == 2) { + properties = qdbus_cast(reply.arguments().at(1)); + } + return reply; + } + +Q_SIGNALS: // SIGNALS +}; + +namespace org { + namespace bluez { + namespace obex { + typedef ::OrgBluezObexObjectPush1Interface ObjectPush1; + } + } +} +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/obex_transfer1_bluez5_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/obex_transfer1_bluez5_p.h new file mode 100644 index 0000000..ccde588 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/obex_transfer1_bluez5_p.h @@ -0,0 +1,91 @@ +/* + * This file was generated by qdbusxml2cpp version 0.8 + * Command line was: qdbusxml2cpp -p obex_transfer1_bluez5_p.h:obex_transfer1_bluez5_p.h org.bluez.obex.Transfer1.xml + * + * qdbusxml2cpp is Copyright (C) 2017 The Qt Company Ltd. + * + * This is an auto-generated file. + * Do not edit! All changes made to it will be lost. + */ + +#ifndef OBEX_TRANSFER1_BLUEZ5_P_H +#define OBEX_TRANSFER1_BLUEZ5_P_H + +#include +#include +#include +#include +#include +#include +#include +#include + +/* + * Proxy class for interface org.bluez.obex.Transfer1 + */ +class OrgBluezObexTransfer1Interface: public QDBusAbstractInterface +{ + Q_OBJECT +public: + static inline const char *staticInterfaceName() + { return "org.bluez.obex.Transfer1"; } + +public: + OrgBluezObexTransfer1Interface(const QString &service, const QString &path, const QDBusConnection &connection, QObject *parent = nullptr); + + ~OrgBluezObexTransfer1Interface(); + + Q_PROPERTY(QString Filename READ filename) + inline QString filename() const + { return qvariant_cast< QString >(property("Filename")); } + + Q_PROPERTY(QString Name READ name) + inline QString name() const + { return qvariant_cast< QString >(property("Name")); } + + Q_PROPERTY(QDBusObjectPath Session READ session) + inline QDBusObjectPath session() const + { return qvariant_cast< QDBusObjectPath >(property("Session")); } + + Q_PROPERTY(qulonglong Size READ size) + inline qulonglong size() const + { return qvariant_cast< qulonglong >(property("Size")); } + + Q_PROPERTY(QString Status READ status) + inline QString status() const + { return qvariant_cast< QString >(property("Status")); } + + Q_PROPERTY(qulonglong Transferred READ transferred) + inline qulonglong transferred() const + { return qvariant_cast< qulonglong >(property("Transferred")); } + +public Q_SLOTS: // METHODS + inline QDBusPendingReply<> Cancel() + { + QList argumentList; + return asyncCallWithArgumentList(QStringLiteral("Cancel"), argumentList); + } + + inline QDBusPendingReply<> Resume() + { + QList argumentList; + return asyncCallWithArgumentList(QStringLiteral("Resume"), argumentList); + } + + inline QDBusPendingReply<> Suspend() + { + QList argumentList; + return asyncCallWithArgumentList(QStringLiteral("Suspend"), argumentList); + } + +Q_SIGNALS: // SIGNALS +}; + +namespace org { + namespace bluez { + namespace obex { + typedef ::OrgBluezObexTransfer1Interface Transfer1; + } + } +} +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/obex_transfer_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/obex_transfer_p.h new file mode 100644 index 0000000..b8fa0a5 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/obex_transfer_p.h @@ -0,0 +1,59 @@ +/* + * This file was generated by qdbusxml2cpp version 0.8 + * Command line was: qdbusxml2cpp -p obex_transfer_p.h:obex_transfer.cpp org.openobex.transfer.xml org.openobex.Transfer + * + * qdbusxml2cpp is Copyright (C) 2017 The Qt Company Ltd. + * + * This is an auto-generated file. + * Do not edit! All changes made to it will be lost. + */ + +#ifndef OBEX_TRANSFER_P_H +#define OBEX_TRANSFER_P_H + +#include +#include +#include +#include +#include +#include +#include +#include + +/* + * Proxy class for interface org.openobex.Transfer + */ +class OrgOpenobexTransferInterface: public QDBusAbstractInterface +{ + Q_OBJECT +public: + static inline const char *staticInterfaceName() + { return "org.openobex.Transfer"; } + +public: + OrgOpenobexTransferInterface(const QString &service, const QString &path, const QDBusConnection &connection, QObject *parent = nullptr); + + ~OrgOpenobexTransferInterface(); + +public Q_SLOTS: // METHODS + inline QDBusPendingReply<> Cancel() + { + QList argumentList; + return asyncCallWithArgumentList(QStringLiteral("Cancel"), argumentList); + } + + inline QDBusPendingReply GetProperties() + { + QList argumentList; + return asyncCallWithArgumentList(QStringLiteral("GetProperties"), argumentList); + } + +Q_SIGNALS: // SIGNALS +}; + +namespace org { + namespace openobex { + typedef ::OrgOpenobexTransferInterface Transfer; + } +} +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/objectmanager_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/objectmanager_p.h new file mode 100644 index 0000000..7aa2f35 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/objectmanager_p.h @@ -0,0 +1,59 @@ +/* + * This file was generated by qdbusxml2cpp version 0.8 + * Command line was: qdbusxml2cpp -p objectmanager_p.h:objectmanager.cpp org.freedesktop.dbus.objectmanager.xml + * + * qdbusxml2cpp is Copyright (C) 2017 The Qt Company Ltd. + * + * This is an auto-generated file. + * Do not edit! All changes made to it will be lost. + */ + +#ifndef OBJECTMANAGER_P_H +#define OBJECTMANAGER_P_H + +#include +#include +#include +#include +#include +#include +#include +#include + +#include "bluez5_helper_p.h" + +/* + * Proxy class for interface org.freedesktop.DBus.ObjectManager + */ +class OrgFreedesktopDBusObjectManagerInterface: public QDBusAbstractInterface +{ + Q_OBJECT +public: + static inline const char *staticInterfaceName() + { return "org.freedesktop.DBus.ObjectManager"; } + +public: + OrgFreedesktopDBusObjectManagerInterface(const QString &service, const QString &path, const QDBusConnection &connection, QObject *parent = nullptr); + + ~OrgFreedesktopDBusObjectManagerInterface(); + +public Q_SLOTS: // METHODS + inline QDBusPendingReply GetManagedObjects() + { + QList argumentList; + return asyncCallWithArgumentList(QStringLiteral("GetManagedObjects"), argumentList); + } + +Q_SIGNALS: // SIGNALS + void InterfacesAdded(const QDBusObjectPath &object_path, InterfaceList interfaces_and_properties); + void InterfacesRemoved(const QDBusObjectPath &object_path, const QStringList &interfaces); +}; + +namespace org { + namespace freedesktop { + namespace DBus { + typedef ::OrgFreedesktopDBusObjectManagerInterface ObjectManager; + } + } +} +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/osxbluetooth_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/osxbluetooth_p.h new file mode 100644 index 0000000..ea1b388 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/osxbluetooth_p.h @@ -0,0 +1,63 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef OSXBLUETOOTH_P_H +#define OSXBLUETOOTH_P_H + + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include + +#ifdef Q_OS_MACOS +#include +#endif + +#endif // OSXBLUETOOTH_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/osxbtcentralmanager_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/osxbtcentralmanager_p.h new file mode 100644 index 0000000..ce348dc --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/osxbtcentralmanager_p.h @@ -0,0 +1,176 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef OSXBTCENTRALMANAGER_P_H +#define OSXBTCENTRALMANAGER_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include "qlowenergycontroller.h" +#include "qlowenergyservice.h" +#include "osxbtgcdtimer_p.h" +#include "qbluetoothuuid.h" +#include "osxbtutility_p.h" +#include "osxbluetooth_p.h" + +#include +#include +#include +#include + +#include + +@class QT_MANGLE_NAMESPACE(OSXBTCentralManager); + +QT_BEGIN_NAMESPACE + +class QLowEnergyServicePrivate; + +namespace OSXBluetooth { + +class LECBManagerNotifier; + +enum CentralManagerState +{ + // QLowEnergyController already has some of these states, + // but it's not enough and we need more special states here. + CentralManagerIdle, + // Required by CBCentralManager to avoid problems with dangled pointers. + CentralManagerUpdating, + CentralManagerConnecting, + CentralManagerDiscovering, + CentralManagerDisconnecting +}; + +// In Qt we work with handles and UUIDs. Core Bluetooth +// has NSArrays (and nested NSArrays inside servces/characteristics). +// To simplify a navigation, I need a simple way to map from a handle +// to a Core Bluetooth object. These are weak pointers, +// will probably require '__weak' with ARC. +typedef QHash ServiceHash; +typedef QHash CharHash; +typedef QHash DescHash; + +// Descriptor/charactesirstic read/write requests +// - we have to serialize 'concurrent' requests. +struct LERequest { + enum RequestType { + CharRead, + CharWrite, + DescRead, + DescWrite, + ClientConfiguration, + Invalid + }; + + LERequest() : type(Invalid), + withResponse(false), + handle(0) + {} + + RequestType type; + bool withResponse; + QLowEnergyHandle handle; + QByteArray value; +}; + +typedef QQueue RequestQueue; + +// Core Bluetooth's write confirmation does not provide +// the updated value (characteristic or descriptor). +// But the Qt's Bluetooth API ('write with response') +// expects this updated value as a response, so we have +// to cache this write value and report it back. +// 'NSObject *' will require '__weak' with ARC. +typedef QHash ValueHash; + +} + +QT_END_NAMESPACE + +@interface QT_MANGLE_NAMESPACE(OSXBTCentralManager) : NSObject +- (id)initWith:(QT_PREPEND_NAMESPACE(OSXBluetooth)::LECBManagerNotifier *)notifier; +- (void)dealloc; + +- (CBPeripheral *)peripheral; + +// IMPORTANT: _all_ these methods are to be executed on qt_LE_queue, +// when passing parameters - C++ objects _must_ be copied (see the controller's code). +- (void)connectToDevice:(const QT_PREPEND_NAMESPACE(QBluetoothUuid) &)aDeviceUuid; + +- (void)disconnectFromDevice; + +- (void)discoverServices; +- (void)discoverServiceDetails:(const QT_PREPEND_NAMESPACE(QBluetoothUuid) &)serviceUuid; + +- (void)setNotifyValue:(const QT_PREPEND_NAMESPACE(QByteArray) &)value + forCharacteristic:(QT_PREPEND_NAMESPACE(QLowEnergyHandle))charHandle + onService:(const QT_PREPEND_NAMESPACE(QBluetoothUuid) &)serviceUuid; + +- (void)readCharacteristic:(QT_PREPEND_NAMESPACE(QLowEnergyHandle))charHandle + onService:(const QT_PREPEND_NAMESPACE(QBluetoothUuid) &)serviceUuid; + +- (void)write:(const QT_PREPEND_NAMESPACE(QByteArray) &)value + charHandle:(QT_PREPEND_NAMESPACE(QLowEnergyHandle))charHandle + onService:(const QT_PREPEND_NAMESPACE(QBluetoothUuid) &)serviceUuid + withResponse:(bool)writeWithResponse; + +- (void)readDescriptor:(QT_PREPEND_NAMESPACE(QLowEnergyHandle))descHandle + onService:(const QT_PREPEND_NAMESPACE(QBluetoothUuid) &)serviceUuid; + +- (void)write:(const QT_PREPEND_NAMESPACE(QByteArray) &)value + descHandle:(QT_PREPEND_NAMESPACE(QLowEnergyHandle))descHandle + onService:(const QT_PREPEND_NAMESPACE(QBluetoothUuid) &)serviceUuid; + +- (void)detach; + +@end + +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/osxbtchanneldelegate_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/osxbtchanneldelegate_p.h new file mode 100644 index 0000000..1102e93 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/osxbtchanneldelegate_p.h @@ -0,0 +1,79 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef OSXBTCHANNELDELEGATE_P_H +#define OSXBTCHANNELDELEGATE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace OSXBluetooth { + +class ChannelDelegate +{ +public: + virtual ~ChannelDelegate(); + + virtual void setChannelError(IOReturn errorCode) = 0; + virtual void channelOpenComplete() = 0; + virtual void channelClosed() = 0; + + virtual void readChannelData(void *data, std::size_t size) = 0; + virtual void writeComplete() = 0; +}; + +} + +QT_END_NAMESPACE + +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/osxbtconnectionmonitor_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/osxbtconnectionmonitor_p.h new file mode 100644 index 0000000..679f612 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/osxbtconnectionmonitor_p.h @@ -0,0 +1,89 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef OSXBTCONNECTIONMONITOR_P_H +#define OSXBTCONNECTIONMONITOR_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include "qbluetoothaddress.h" +#include "osxbluetooth_p.h" + +#include + +#include + +@class QT_MANGLE_NAMESPACE(OSXBTConnectionMonitor); + +QT_BEGIN_NAMESPACE + +namespace OSXBluetooth { + +class ConnectionMonitor { +public: + typedef QT_MANGLE_NAMESPACE(OSXBTConnectionMonitor) ObjCConnectionMonitor; + + virtual ~ConnectionMonitor(); + + virtual void deviceConnected(const QBluetoothAddress &address) = 0; + virtual void deviceDisconnected(const QBluetoothAddress &address) = 0; +}; + +} + +QT_END_NAMESPACE + +@interface QT_MANGLE_NAMESPACE(OSXBTConnectionMonitor) : NSObject + +- (id)initWithMonitor:(QT_PREPEND_NAMESPACE(OSXBluetooth::ConnectionMonitor) *)monitor; +- (void)connectionNotification:(id)notification withDevice:(IOBluetoothDevice *)device; +- (void)connectionClosedNotification:(id)notification withDevice:(IOBluetoothDevice *)device; + +@end + +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/osxbtdeviceinquiry_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/osxbtdeviceinquiry_p.h new file mode 100644 index 0000000..0fec2db --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/osxbtdeviceinquiry_p.h @@ -0,0 +1,102 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef OSXBTDEVICEINQUIRY_P_H +#define OSXBTDEVICEINQUIRY_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include "osxbluetooth_p.h" + +#include + +#include +#include + +@class QT_MANGLE_NAMESPACE(OSXBTDeviceInquiry); + +QT_BEGIN_NAMESPACE + +namespace OSXBluetooth { + +class DeviceInquiryDelegate { +public: + typedef QT_MANGLE_NAMESPACE(OSXBTDeviceInquiry) DeviceInquiryObjC; + + virtual ~DeviceInquiryDelegate(); + + virtual void inquiryFinished(IOBluetoothDeviceInquiry *inq) = 0; + virtual void error(IOBluetoothDeviceInquiry *inq, IOReturn error) = 0; + virtual void deviceFound(IOBluetoothDeviceInquiry *inq, IOBluetoothDevice *device) = 0; +}; + +} + +QT_END_NAMESPACE + +@interface QT_MANGLE_NAMESPACE(OSXBTDeviceInquiry) : NSObject + +- (id)initWithDelegate:(QT_PREPEND_NAMESPACE(OSXBluetooth::DeviceInquiryDelegate) *)delegate; +- (void)dealloc; + +- (bool)isActive; +- (IOReturn)start; +- (IOReturn)stop; + +//Obj-C delegate: +- (void)deviceInquiryComplete:(IOBluetoothDeviceInquiry *)sender + error:(IOReturn)error aborted:(BOOL)aborted; + +- (void)deviceInquiryDeviceFound:(IOBluetoothDeviceInquiry *)sender + device:(IOBluetoothDevice *)device; + +- (void)deviceInquiryStarted:(IOBluetoothDeviceInquiry *)sender; + +@end + +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/osxbtdevicepair_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/osxbtdevicepair_p.h new file mode 100644 index 0000000..1a2c7d6 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/osxbtdevicepair_p.h @@ -0,0 +1,128 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef OSXBTDEVICEPAIR_P_H +#define OSXBTDEVICEPAIR_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include "qbluetoothaddress.h" +#include "osxbtutility_p.h" +#include "osxbluetooth_p.h" + +#include + +#include + +@class QT_MANGLE_NAMESPACE(OSXBTPairing); + +QT_BEGIN_NAMESPACE + +namespace OSXBluetooth { + +// C++ delegate. +class PairingDelegate +{ +public: + typedef QT_MANGLE_NAMESPACE(OSXBTPairing) ObjCPairingRequest; + + virtual ~PairingDelegate(); + + virtual void connecting(ObjCPairingRequest *pair) = 0; + virtual void requestPIN(ObjCPairingRequest *pair) = 0; + virtual void requestUserConfirmation(ObjCPairingRequest *pair, + BluetoothNumericValue) = 0; + virtual void passkeyNotification(ObjCPairingRequest *pair, + BluetoothPasskey passkey) = 0; + virtual void error(ObjCPairingRequest *pair, IOReturn errorCode) = 0; + virtual void pairingFinished(ObjCPairingRequest *pair) = 0; +}; + +ObjCStrongReference device_with_address(const QBluetoothAddress &address); + +} // Namespace OSXBluetooth. + +QT_END_NAMESPACE + +@interface QT_MANGLE_NAMESPACE(OSXBTPairing) : NSObject + +- (id)initWithTarget:(const QBluetoothAddress &)address + delegate:(QT_PREPEND_NAMESPACE(OSXBluetooth::PairingDelegate) *)object; + +- (void)dealloc; + +- (IOReturn)start; +- (bool)isActive; +- (void)stop; + +- (const QBluetoothAddress &)targetAddress; +- (IOBluetoothDevicePair *)pairingRequest; +- (IOBluetoothDevice *)targetDevice; + +// IOBluetoothDevicePairDelegate: + +- (void)devicePairingStarted:(id)sender; +- (void)devicePairingConnecting:(id)sender; +- (void)deviceParingPINCodeRequest:(id)sender; + +- (void)devicePairingUserConfirmationRequest:(id)sender + numericValue:(BluetoothNumericValue)numericValue; + +- (void)devicePairingUserPasskeyNotification:(id)sender + passkey:(BluetoothPasskey)passkey; + +- (void)devicePairingFinished:(id)sender + error:(IOReturn)error; + +- (void)deviceSimplePairingComplete:(id)sender + status:(BluetoothHCIEventStatus)status; + +@end + + +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/osxbtgcdtimer_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/osxbtgcdtimer_p.h new file mode 100644 index 0000000..6bd82c9 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/osxbtgcdtimer_p.h @@ -0,0 +1,108 @@ +/**************************************************************************** +** +** Copyright (C) 2018 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef OSXBTGCDTIMER_P_H +#define OSXBTGCDTIMER_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include "osxbtutility_p.h" + +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +namespace OSXBluetooth { + +enum class OperationTimeout +{ + none, + serviceDiscovery, + includedServicesDiscovery, + characteristicsDiscovery, + characteristicRead, + descriptorsDiscovery, + descriptorRead, + characteristicWrite +}; + +} // namespace OSXBluetooth + +QT_END_NAMESPACE + +@protocol QT_MANGLE_NAMESPACE(GCDTimerDelegate) +@required +- (void)timeout:(id)sender; +@end + +@interface QT_MANGLE_NAMESPACE(OSXBTGCDTimer) : NSObject +- (instancetype)initWithDelegate:(id)delegate; +- (void)watchAfter:(id)object withTimeoutType:(QT_PREPEND_NAMESPACE(OSXBluetooth)::OperationTimeout)type; +- (void)startWithTimeout:(qint64)ms step:(qint64)stepMS; +- (void)handleTimeout; +- (void)cancelTimer; +- (id)objectUnderWatch; +- (QT_PREPEND_NAMESPACE(OSXBluetooth)::OperationTimeout)timeoutType; +@end + +QT_BEGIN_NAMESPACE + +namespace OSXBluetooth { + +using GCDTimerObjC = QT_MANGLE_NAMESPACE(OSXBTGCDTimer); +using GCDTimer = ObjCStrongReference; + +} // namespace OSXBluetooth + +QT_END_NAMESPACE + +#endif // OSXBTGCDTIMER_P_H + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/osxbtl2capchannel_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/osxbtl2capchannel_p.h new file mode 100644 index 0000000..512087b --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/osxbtl2capchannel_p.h @@ -0,0 +1,118 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef OSXBTL2CAPCHANNEL_P_H +#define OSXBTL2CAPCHANNEL_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include "osxbluetooth_p.h" + +#include + +#include + +#include + +QT_BEGIN_NAMESPACE + +class QBluetoothAddress; + +namespace OSXBluetooth { + +class ChannelDelegate; + +} + +QT_END_NAMESPACE + +@interface QT_MANGLE_NAMESPACE(OSXBTL2CAPChannel) : NSObject + +- (id)initWithDelegate:(QT_PREPEND_NAMESPACE(OSXBluetooth)::ChannelDelegate *)aDelegate; +- (id)initWithDelegate:(QT_PREPEND_NAMESPACE(OSXBluetooth)::ChannelDelegate *)aDelegate + channel:(IOBluetoothL2CAPChannel *)aChannel; + +- (void)dealloc; + +// Async. connection (connect can be called only once). +- (IOReturn)connectAsyncToDevice:(const QT_PREPEND_NAMESPACE(QBluetoothAddress) &)address + withPSM:(BluetoothL2CAPChannelID)psm; + +// IOBluetoothL2CAPChannelDelegate: +- (void)l2capChannelData:(IOBluetoothL2CAPChannel*)l2capChannel + data:(void *)dataPointer length:(size_t)dataLength; +- (void)l2capChannelOpenComplete:(IOBluetoothL2CAPChannel*) + l2capChannel status:(IOReturn)error; +- (void)l2capChannelClosed:(IOBluetoothL2CAPChannel*)l2capChannel; +- (void)l2capChannelReconfigured:(IOBluetoothL2CAPChannel*)l2capChannel; +- (void)l2capChannelWriteComplete:(IOBluetoothL2CAPChannel*)l2capChannel + refcon:(void*)refcon status:(IOReturn)error; +- (void)l2capChannelQueueSpaceAvailable:(IOBluetoothL2CAPChannel*)l2capChannel; + +// +- (BluetoothL2CAPPSM)getPSM; +- (BluetoothDeviceAddress)peerAddress; +- (NSString *)peerName; +- (bool)isConnected; + +// Writes the given data synchronously over the target L2CAP channel to the remote +// device. +// The length of the data may not exceed the L2CAP channel's outgoing MTU. +// This method will block until the data has been successfully sent to the +// hardware for transmission (or an error occurs). +- (IOReturn) writeSync:(void*)data length:(UInt16)length; + +// The length of the data may not exceed the L2CAP channel's outgoing MTU. +// When the data has been successfully passed to the hardware to be transmitted, +// the delegate method -l2capChannelWriteComplete:refcon:status: will be called. +// Returns kIOReturnSuccess if the data was buffered successfully. +- (IOReturn) writeAsync:(void*)data length:(UInt16)length; + +@end + +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/osxbtledeviceinquiry_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/osxbtledeviceinquiry_p.h new file mode 100644 index 0000000..d99a93b --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/osxbtledeviceinquiry_p.h @@ -0,0 +1,102 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef OSXBTLEDEVICEINQUIRY_P_H +#define OSXBTLEDEVICEINQUIRY_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include "qbluetoothdevicediscoveryagent.h" +#include "qbluetoothdeviceinfo.h" +#include "osxbtgcdtimer_p.h" +#include "osxbtutility_p.h" +#include "osxbluetooth_p.h" + +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +class QBluetoothUuid; + +namespace OSXBluetooth +{ + +class LECBManagerNotifier; + +} + +QT_END_NAMESPACE + +using QT_PREPEND_NAMESPACE(OSXBluetooth)::LECBManagerNotifier; +using QT_PREPEND_NAMESPACE(OSXBluetooth)::ObjCScopedPointer; + +enum LEInquiryState +{ + InquiryStarting, + InquiryActive, + InquiryFinished, + InquiryCancelled, + ErrorPoweredOff, + ErrorLENotSupported +}; + +@interface QT_MANGLE_NAMESPACE(OSXBTLEDeviceInquiry) : NSObject +- (id)initWithNotifier:(LECBManagerNotifier *)aNotifier; +- (void)dealloc; + +// IMPORTANT: both 'startWithTimeout' and 'stop' MUST be executed on the "Qt's +// LE queue". +- (void)startWithTimeout:(int)timeout; +- (void)stop; + +@end + +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/osxbtnotifier_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/osxbtnotifier_p.h new file mode 100644 index 0000000..dca6c26 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/osxbtnotifier_p.h @@ -0,0 +1,106 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef OSXBTNOTIFIER_P_H +#define OSXBTNOTIFIER_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + + +#include "qbluetoothdevicediscoveryagent.h" +#include "qlowenergycontroller.h" +#include "qbluetoothdeviceinfo.h" +#include "qbluetoothuuid.h" +#include "qbluetooth.h" + +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +class QLowEnergyServicePrivate; + +namespace OSXBluetooth +{ + +class LECBManagerNotifier : public QObject +{ + Q_OBJECT + +Q_SIGNALS: + void deviceDiscovered(QBluetoothDeviceInfo deviceInfo); + void discoveryFinished(); + + void connected(); + void disconnected(); + + void serviceDiscoveryFinished(); + void serviceDetailsDiscoveryFinished(QSharedPointer service); + void characteristicRead(QLowEnergyHandle charHandle, const QByteArray &value); + void characteristicWritten(QLowEnergyHandle charHandle, const QByteArray &value); + void characteristicUpdated(QLowEnergyHandle charHandle, const QByteArray &value); + void descriptorRead(QLowEnergyHandle descHandle, const QByteArray &value); + void descriptorWritten(QLowEnergyHandle descHandle, const QByteArray &value); + void notificationEnabled(QLowEnergyHandle charHandle, bool enabled); + void servicesWereModified(); + + void LEnotSupported(); + void CBManagerError(QBluetoothDeviceDiscoveryAgent::Error error); + void CBManagerError(QLowEnergyController::Error error); + void CBManagerError(const QBluetoothUuid &serviceUuid, QLowEnergyController::Error error); + void CBManagerError(const QBluetoothUuid &serviceUuid, QLowEnergyService::ServiceError error); + +}; + +} + +QT_END_NAMESPACE + +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/osxbtobexsession_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/osxbtobexsession_p.h new file mode 100644 index 0000000..49465f2 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/osxbtobexsession_p.h @@ -0,0 +1,131 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include "osxbluetooth_p.h" + +#include +#include + +#include + +@class QT_MANGLE_NAMESPACE(OSXBTOBEXSession); + +QT_BEGIN_NAMESPACE + +class QBluetoothAddress; +class QIODevice; +class QString; + +namespace OSXBluetooth +{ + +class OBEXSessionDelegate +{ +public: + typedef QT_MANGLE_NAMESPACE(OSXBTOBEXSession) ObjCOBEXSession; + + virtual ~OBEXSessionDelegate(); + + virtual void OBEXConnectError(OBEXError error, OBEXOpCode responseCode) = 0; + virtual void OBEXConnectSuccess() = 0; + + virtual void OBEXAbortSuccess() = 0; + + virtual void OBEXPutDataSent(quint32 current, quint32 total) = 0; + virtual void OBEXPutSuccess() = 0; + virtual void OBEXPutError(OBEXError error, OBEXOpCode responseCode) = 0; +}; + +enum OBEXRequest { + OBEXNoop, + OBEXConnect, + OBEXDisconnect, + OBEXPut, + OBEXGet, + OBEXSetPath, + OBEXAbort +}; + +} + +QT_END_NAMESPACE + +// OBEX Session, it's a "single-shot" operation as our QBluetoothTransferReply is +// (it does not have an interface to re-send data or re-use the same transfer reply). +// It either succeeds or fails and tries to cleanup in any case. +@interface QT_MANGLE_NAMESPACE(OSXBTOBEXSession) : NSObject + +- (id)initWithDelegate:(QT_PREPEND_NAMESPACE(OSXBluetooth::OBEXSessionDelegate) *)aDelegate + remoteDevice:(const QBluetoothAddress &)deviceAddress channelID:(quint16)port; + +- (void)dealloc; + +// Below I have pairs: OBEX operation and its callback method. +- (OBEXError)OBEXConnect; +- (void)OBEXConnectHandler:(const OBEXSessionEvent*)event; + +- (OBEXError)OBEXAbort; +- (void)OBEXAbortHandler:(const OBEXSessionEvent*)event; + +- (OBEXError)OBEXPutFile:(QT_PREPEND_NAMESPACE(QIODevice) *)inputStream withName:(const QString &)name; +- (void)OBEXPutHandler:(const OBEXSessionEvent*)event; + +// Aux. methods. +- (bool)isConnected; + +// To be called from C++ destructors. OBEXSession is not +// valid anymore after this call (no more OBEX operations +// can be executed). It's an ABORT/DISCONNECT sequence. +// It also resets a delegate to null. +- (void)closeSession; +// +- (bool)hasActiveRequest; + +@end diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/osxbtperipheralmanager_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/osxbtperipheralmanager_p.h new file mode 100644 index 0000000..fcf5569 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/osxbtperipheralmanager_p.h @@ -0,0 +1,163 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef OSXBTPERIPHERALMANAGER_P_H +#define OSXBTPERIPHERALMANAGER_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of internal files. This header file may change from version to version +// without notice, or even be removed. +// +// We mean it. +// + +#include "osxbtutility_p.h" + +#include "qlowenergyadvertisingparameters.h" +#include "qlowenergyserviceprivate_p.h" +#include "qbluetoothuuid.h" +#include "qbluetooth.h" + +#include +#include +#include +#include +#include +#include + +#include +#include +#include + +#include + +#include "osxbluetooth_p.h" + +QT_BEGIN_NAMESPACE + +class QLowEnergyServiceData; + +namespace OSXBluetooth +{ + +class LECBManagerNotifier; + +} + +QT_END_NAMESPACE + + +// Exposing names in a header is ugly, but constant QT_PREPEND_NAMESPACE is even worse ... +// After all, this header is to be included only in its own and controller's *.mm files. + +QT_USE_NAMESPACE + +using namespace OSXBluetooth; + + +template +using GenericLEMap = QMap; + +enum class PeripheralState +{ + idle, + waitingForPowerOn, + advertising, + connected +}; + +struct UpdateRequest +{ + UpdateRequest() = default; + UpdateRequest(QLowEnergyHandle handle, const ObjCStrongReference &val) + : charHandle(handle), + value(val) + { + } + + QLowEnergyHandle charHandle = {}; + ObjCStrongReference value; +}; + +using ValueRange = QPair; + +@interface QT_MANGLE_NAMESPACE(OSXBTPeripheralManager) : NSObject + +- (id)initWith:(LECBManagerNotifier *)notifier; +- (void)dealloc; + +- (QSharedPointer)addService:(const QLowEnergyServiceData &)data; +- (void) setParameters:(const QLowEnergyAdvertisingParameters &)parameters + data:(const QLowEnergyAdvertisingData &)data + scanResponse:(const QLowEnergyAdvertisingData &)scanResponse; + +// To be executed on the Qt's special BTLE dispatch queue. +- (void)startAdvertising; +- (void)stopAdvertising; +- (void)detach; + +- (void)write:(const QByteArray &)value + charHandle:(QLowEnergyHandle)charHandle; + + +// CBPeripheralManagerDelegate's callbacks (BTLE queue). +- (void)peripheralManagerDidUpdateState:(CBPeripheralManager *)peripheral; +- (void)peripheralManager:(CBPeripheralManager *)peripheral + willRestoreState:(NSDictionary *)dict; +- (void)peripheralManagerDidStartAdvertising:(CBPeripheralManager *)peripheral + error:(NSError *)error; +- (void)peripheralManager:(CBPeripheralManager *)peripheral + didAddService:(CBService *)service error:(NSError *)error; +- (void)peripheralManager:(CBPeripheralManager *)peripheral central:(CBCentral *)central + didSubscribeToCharacteristic:(CBCharacteristic *)characteristic; +- (void)peripheralManager:(CBPeripheralManager *)peripheral central:(CBCentral *)central + didUnsubscribeFromCharacteristic:(CBCharacteristic *)characteristic; +- (void)peripheralManager:(CBPeripheralManager *)peripheral + didReceiveReadRequest:(CBATTRequest *)request; +- (void)peripheralManager:(CBPeripheralManager *)peripheral + didReceiveWriteRequests:(NSArray *)requests; +- (void)peripheralManagerIsReadyToUpdateSubscribers:(CBPeripheralManager *)peripheral; + +@end + +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/osxbtrfcommchannel_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/osxbtrfcommchannel_p.h new file mode 100644 index 0000000..775999e --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/osxbtrfcommchannel_p.h @@ -0,0 +1,110 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef OSXBTRFCOMMCHANNEL_P_H +#define OSXBTRFCOMMCHANNEL_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include "osxbluetooth_p.h" + +#include + +#include + +@class QT_MANGLE_NAMESPACE(OSXBTRFCOMMChannel); + +QT_BEGIN_NAMESPACE + +class QBluetoothAddress; + +namespace OSXBluetooth { + +class ChannelDelegate; + +} + +QT_END_NAMESPACE + +@interface QT_MANGLE_NAMESPACE(OSXBTRFCOMMChannel) : NSObject + +- (id)initWithDelegate:(QT_PREPEND_NAMESPACE(OSXBluetooth)::ChannelDelegate *)aDelegate; +- (id)initWithDelegate:(QT_PREPEND_NAMESPACE(OSXBluetooth)::ChannelDelegate *)aDelegate + channel:(IOBluetoothRFCOMMChannel *)aChannel; + +- (void)dealloc; + +// A single async connection (can connect only once). +- (IOReturn)connectAsyncToDevice:(const QT_PREPEND_NAMESPACE(QBluetoothAddress) &)address + withChannelID:(BluetoothRFCOMMChannelID)channelID; + +- (void)rfcommChannelData:(IOBluetoothRFCOMMChannel*)rfcommChannel + data:(void *)dataPointer length:(size_t)dataLength; +- (void)rfcommChannelOpenComplete:(IOBluetoothRFCOMMChannel*)rfcommChannel + status:(IOReturn)error; +- (void)rfcommChannelClosed:(IOBluetoothRFCOMMChannel*)rfcommChannel; +- (void)rfcommChannelControlSignalsChanged:(IOBluetoothRFCOMMChannel*)rfcommChannel; +- (void)rfcommChannelFlowControlChanged:(IOBluetoothRFCOMMChannel*)rfcommChannel; +- (void)rfcommChannelWriteComplete:(IOBluetoothRFCOMMChannel*)rfcommChannel + refcon:(void*)refcon status:(IOReturn)error; +- (void)rfcommChannelQueueSpaceAvailable:(IOBluetoothRFCOMMChannel*)rfcommChannel; + +// +- (BluetoothRFCOMMChannelID)getChannelID; +- (BluetoothDeviceAddress)peerAddress; +- (NSString *)peerName; + +- (BluetoothRFCOMMMTU)getMTU; + +- (IOReturn) writeSync:(void*)data length:(UInt16)length; +- (IOReturn) writeAsync:(void*)data length:(UInt16)length; + + +@end + +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/osxbtsdpinquiry_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/osxbtsdpinquiry_p.h new file mode 100644 index 0000000..c63738b --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/osxbtsdpinquiry_p.h @@ -0,0 +1,105 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef OSXBTSDPINQUIRY_H +#define OSXBTSDPINQUIRY_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include "qbluetoothaddress.h" +#include "qbluetoothuuid.h" +#include "osxbluetooth_p.h" + +#include +#include + +#include + +@class QT_MANGLE_NAMESPACE(OSXBTSDPInquiry); + +QT_BEGIN_NAMESPACE + +class QBluetoothServiceInfo; +class QVariant; + +namespace OSXBluetooth { + +class SDPInquiryDelegate { +public: + typedef QT_MANGLE_NAMESPACE(OSXBTSDPInquiry) ObjCServiceInquiry; + + virtual ~SDPInquiryDelegate(); + + virtual void SDPInquiryFinished(IOBluetoothDevice *device) = 0; + virtual void SDPInquiryError(IOBluetoothDevice *device, IOReturn errorCode) = 0; +}; + +void extract_service_record(IOBluetoothSDPServiceRecord *record, QBluetoothServiceInfo &serviceInfo); +QVariant extract_attribute_value(IOBluetoothSDPDataElement *dataElement); +QList extract_services_uuids(IOBluetoothDevice *device); + +} + +QT_END_NAMESPACE + +@interface QT_MANGLE_NAMESPACE(OSXBTSDPInquiry) : NSObject + +- (id)initWithDelegate:(QT_PREPEND_NAMESPACE(OSXBluetooth::SDPInquiryDelegate) *)aDelegate; +- (void)dealloc; + +- (IOReturn)performSDPQueryWithDevice:(const QBluetoothAddress &)address; +- (IOReturn)performSDPQueryWithDevice:(const QBluetoothAddress &)address + filters:(const QList &)filters; + +- (void)stopSDPQuery; + +- (void)sdpQueryComplete:(IOBluetoothDevice *)aDevice status:(IOReturn)status; + +@end + +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/osxbtservicerecord_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/osxbtservicerecord_p.h new file mode 100644 index 0000000..6b2db8a --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/osxbtservicerecord_p.h @@ -0,0 +1,72 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef OSXBTSERVICERECORD_P_H +#define OSXBTSERVICERECORD_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include "osxbtutility_p.h" + +#include + +#include + +QT_BEGIN_NAMESPACE + +class QBluetoothServiceInfo; + +namespace OSXBluetooth { + +ObjCStrongReference iobluetooth_service_dictionary(const QBluetoothServiceInfo &serviceInfo); + +} + +QT_END_NAMESPACE + +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/osxbtsocketlistener_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/osxbtsocketlistener_p.h new file mode 100644 index 0000000..cac0b7c --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/osxbtsocketlistener_p.h @@ -0,0 +1,102 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef OSXBTSOCKETLISTENER_P_H +#define OSXBTSOCKETLISTENER_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include "osxbluetooth_p.h" + +#include + +#include + +@class QT_MANGLE_NAMESPACE(OSXBTSocketListener); + +QT_BEGIN_NAMESPACE + +namespace OSXBluetooth { + +class SocketListener +{ +public: + typedef QT_MANGLE_NAMESPACE(OSXBTSocketListener) ObjCListener; + + virtual ~SocketListener(); + + virtual void openNotify(IOBluetoothRFCOMMChannel *channel) = 0; + virtual void openNotify(IOBluetoothL2CAPChannel *channel) = 0; +}; + +} + +QT_END_NAMESPACE + +// A single OSXBTSocketListener can be started only once with +// RFCOMM or L2CAP protocol. It must be deleted to stop listening. + +@interface QT_MANGLE_NAMESPACE(OSXBTSocketListener) : NSObject + +- (id)initWithListener:(QT_PREPEND_NAMESPACE(OSXBluetooth::SocketListener) *)aDelegate; +- (void)dealloc; + +- (bool)listenRFCOMMConnectionsWithChannelID:(BluetoothRFCOMMChannelID)channelID; +- (bool)listenL2CAPConnectionsWithPSM:(BluetoothL2CAPPSM)psm; + +- (void)rfcommOpenNotification:(IOBluetoothUserNotification *)notification + channel:(IOBluetoothRFCOMMChannel *)newChannel; + +- (void)l2capOpenNotification:(IOBluetoothUserNotification *)notification + channel:(IOBluetoothL2CAPChannel *)newChannel; + +- (quint16)port; + +@end + +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/osxbtutility_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/osxbtutility_p.h new file mode 100644 index 0000000..c2bc6cf --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/osxbtutility_p.h @@ -0,0 +1,336 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef OSXBTUTILITY_P_H +#define OSXBTUTILITY_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include "osxbluetooth_p.h" + +#include +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +class QLowEnergyCharacteristicData; +class QBluetoothAddress; +class QBluetoothUuid; + +namespace OSXBluetooth { + +struct NSObjectDeleter { + static void cleanup(NSObject *obj) + { + [obj release]; + } +}; + +template +class ObjCScopedPointer : public QScopedPointer +{ +public: + // TODO: remove default argument, add 'retain' parameter, + // add a default ctor??? This will make the semantics more + // transparent + will simplify the future transition to ARC + // (if it will ever happen). + explicit ObjCScopedPointer(T *ptr = nullptr) : QScopedPointer(ptr){} + operator T*() const + { + return data(); + } + + T *data()const + { + return static_cast(QScopedPointer::data()); + } + + T *take() + { + return static_cast(QScopedPointer::take()); + } +}; + +#define QT_BT_MAC_AUTORELEASEPOOL const QMacAutoReleasePool pool; + +template +class ObjCStrongReference { +public: + ObjCStrongReference() + : m_ptr(nil) + { + } + ObjCStrongReference(T *obj, bool retain) + { + if (retain) + m_ptr = [obj retain]; + else + m_ptr = obj; // For example, created with initWithXXXX. + } + ObjCStrongReference(const ObjCStrongReference &rhs) + { + m_ptr = [rhs.m_ptr retain]; + } + ObjCStrongReference &operator = (const ObjCStrongReference &rhs) + { + // "Old-style" implementation: + if (this != &rhs && m_ptr != rhs.m_ptr) { + [m_ptr release]; + m_ptr = [rhs.m_ptr retain]; + } + + return *this; + } + +#ifdef Q_COMPILER_RVALUE_REFS + ObjCStrongReference(ObjCStrongReference &&xval) + { + m_ptr = xval.m_ptr; + xval.m_ptr = nil; + } + + ObjCStrongReference &operator = (ObjCStrongReference &&xval) + { + m_ptr = xval.m_ptr; + xval.m_ptr = nil; + return *this; + } +#endif + + ~ObjCStrongReference() + { + [m_ptr release]; + } + + void reset(T *newVal) + { + if (m_ptr != newVal) { + [m_ptr release]; + m_ptr = [newVal retain]; + } + } + + void resetWithoutRetain(T *newVal) + { + if (m_ptr != newVal) { + [m_ptr release]; + m_ptr = newVal; + } + } + + operator T *() const + { + return m_ptr; + } + + T *data() const + { + return m_ptr; + } + + T *take() + { + T * p = m_ptr; + m_ptr = nil; + return p; + } +private: + T *m_ptr; +}; + +// The type 'T' is some XXXRef from CoreFoundation and co. +// In principle, we can do a trick removing a pointer from a type +// when template is instantiated, but it's quite a lot of ugly pp-tokens +// like OSXBluetooth::CFStrongReference > strongReference; +// so instead we use 'T' everywhere, not 'T *' as can expected +// from a smart pointer. +template +class CFStrongReference { +public: + CFStrongReference() + : m_ptr(nullptr) + { + } + + CFStrongReference(T obj, bool retain) + : m_ptr(obj) + { + if (m_ptr && retain) + CFRetain(m_ptr); + } + + CFStrongReference(const CFStrongReference &rhs) + { + if ((m_ptr = rhs.m_ptr)) + CFRetain(m_ptr); + } + + CFStrongReference &operator = (const CFStrongReference &rhs) + { + // "Old-style" implementation: + if (this != &rhs && m_ptr != rhs.m_ptr) { + if (m_ptr) + CFRelease(m_ptr); + if ((m_ptr = rhs.m_ptr)) + CFRetain(m_ptr); + } + + return *this; + } + +#ifdef Q_COMPILER_RVALUE_REFS + CFStrongReference(CFStrongReference &&xval) + { + m_ptr = xval.m_ptr; + xval.m_ptr = nullptr; + } + + CFStrongReference &operator = (CFStrongReference &&xval) + { + m_ptr = xval.m_ptr; + xval.m_ptr = nullptr; + return *this; + } +#endif + + ~CFStrongReference() + { + if (m_ptr) + CFRelease(m_ptr); + } + + void reset(T newVal) + { + if (m_ptr != newVal) { + if (m_ptr) + CFRelease(m_ptr); + if ((m_ptr = newVal)) + CFRetain(m_ptr); + } + } + + operator T() const + { + return m_ptr; + } + + T data() const + { + return m_ptr; + } + + T take() + { + T p = m_ptr; + m_ptr = nullptr; + return p; + } +private: + T m_ptr; +}; + +QString qt_address(NSString *address); + +#ifndef QT_IOS_BLUETOOTH + +QBluetoothAddress qt_address(const BluetoothDeviceAddress *address); +BluetoothDeviceAddress iobluetooth_address(const QBluetoothAddress &address); + +ObjCStrongReference iobluetooth_uuid(const QBluetoothUuid &uuid); +QBluetoothUuid qt_uuid(IOBluetoothSDPUUID *uuid); +QString qt_error_string(IOReturn errorCode); +void qt_test_iobluetooth_runloop(); + +#endif // !QT_IOS_BLUETOOTH + +QBluetoothUuid qt_uuid(CBUUID *uuid); +CFStrongReference cf_uuid(const QBluetoothUuid &qtUuid); +ObjCStrongReference cb_uuid(const QBluetoothUuid &qtUuid); +bool equal_uuids(const QBluetoothUuid &qtUuid, CBUUID *cbUuid); +bool equal_uuids(CBUUID *cbUuid, const QBluetoothUuid &qtUuid); +QByteArray qt_bytearray(NSData *data); +QByteArray qt_bytearray(NSObject *data); + +ObjCStrongReference data_from_bytearray(const QByteArray &qtData); +ObjCStrongReference mutable_data_from_bytearray(const QByteArray &qtData); + +dispatch_queue_t qt_LE_queue(); + +extern const int defaultLEScanTimeoutMS; +extern const int maxValueLength; + +} // namespace OSXBluetooth + +// Logging category for both OS X and iOS. +Q_DECLARE_LOGGING_CATEGORY(QT_BT_OSX) + +QT_END_NAMESPACE + +#if QT_MACOS_PLATFORM_SDK_EQUAL_OR_ABOVE(101300) && QT_MACOS_DEPLOYMENT_TARGET_BELOW(101300) + + // In the macOS 10.13 SDK, the identifier property was moved from the CBPeripheral + // and CBCentral classes to a new CBPeer base class. Because CBPeer is only available + // on macOS 10.13 and above, the same is true for -[CBPeer identifier]. However, + // since we know that the derived classes have always had this property, + // we'll explicitly mark its availability here. This will not adversely affect + // using the identifier through the CBPeer base class, which will still require macOS 10.13. + +@interface CBPeripheral (UnguardedWorkaround) +@property (readonly, nonatomic) NSUUID *identifier NS_AVAILABLE(10_7, 5_0); +@end + +@interface CBCentral (UnguardedWorkaround) +@property (readonly, nonatomic) NSUUID *identifier NS_AVAILABLE(10_7, 5_0); +@end + +#endif + +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/profile1_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/profile1_p.h new file mode 100644 index 0000000..63ea40b --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/profile1_p.h @@ -0,0 +1,67 @@ +/* + * This file was generated by qdbusxml2cpp version 0.8 + * Command line was: qdbusxml2cpp -p profile1_p.h:profile1.cpp org.bluez.Profile1.xml + * + * qdbusxml2cpp is Copyright (C) 2018 The Qt Company Ltd. + * + * This is an auto-generated file. + * Do not edit! All changes made to it will be lost. + */ + +#ifndef PROFILE1_P_H +#define PROFILE1_P_H + +#include +#include +#include +#include +#include +#include +#include +#include + +/* + * Proxy class for interface org.bluez.Profile1 + */ +class OrgBluezProfile1Interface: public QDBusAbstractInterface +{ + Q_OBJECT +public: + static inline const char *staticInterfaceName() + { return "org.bluez.Profile1"; } + +public: + OrgBluezProfile1Interface(const QString &service, const QString &path, const QDBusConnection &connection, QObject *parent = nullptr); + + ~OrgBluezProfile1Interface(); + +public Q_SLOTS: // METHODS + inline QDBusPendingReply<> NewConnection(const QDBusObjectPath &in0, const QDBusUnixFileDescriptor &in1, const QVariantMap &in2) + { + QList argumentList; + argumentList << QVariant::fromValue(in0) << QVariant::fromValue(in1) << QVariant::fromValue(in2); + return asyncCallWithArgumentList(QStringLiteral("NewConnection"), argumentList); + } + + inline Q_NOREPLY void Release() + { + QList argumentList; + callWithArgumentList(QDBus::NoBlock, QStringLiteral("Release"), argumentList); + } + + inline QDBusPendingReply<> RequestDisconnection(const QDBusObjectPath &in0) + { + QList argumentList; + argumentList << QVariant::fromValue(in0); + return asyncCallWithArgumentList(QStringLiteral("RequestDisconnection"), argumentList); + } + +Q_SIGNALS: // SIGNALS +}; + +namespace org { + namespace bluez { + typedef ::OrgBluezProfile1Interface Profile1; + } +} +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/profile1context_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/profile1context_p.h new file mode 100644 index 0000000..bd7b7df --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/profile1context_p.h @@ -0,0 +1,96 @@ +/**************************************************************************** +** +** Copyright (C) 2018 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef PROFILECONTEXT_P_H +#define PROFILECONTEXT_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +class OrgBluezProfile1ContextInterface : public QObject, protected QDBusContext +{ + Q_OBJECT + Q_CLASSINFO("D-Bus Interface", "org.bluez.Profile1") + Q_CLASSINFO("D-Bus Introspection", "" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" +" \n" + "") +public: + explicit OrgBluezProfile1ContextInterface(QObject *parent = nullptr); + +Q_SIGNALS: + void newConnection(const QDBusUnixFileDescriptor &fd); + +public Q_SLOTS: + void NewConnection(const QDBusObjectPath &, const QDBusUnixFileDescriptor &, + const QVariantMap &); + void RequestDisconnection(const QDBusObjectPath &); + Q_NOREPLY void Release(); +}; + +QT_END_NAMESPACE + +#endif // PROFILECONTEXT_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/profilemanager1_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/profilemanager1_p.h new file mode 100644 index 0000000..5530783 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/profilemanager1_p.h @@ -0,0 +1,61 @@ +/* + * This file was generated by qdbusxml2cpp version 0.8 + * Command line was: qdbusxml2cpp -p profilemanager1_p.h:profilemanager1.cpp org.bluez.ProfileManager1.xml + * + * qdbusxml2cpp is Copyright (C) 2017 The Qt Company Ltd. + * + * This is an auto-generated file. + * Do not edit! All changes made to it will be lost. + */ + +#ifndef PROFILEMANAGER1_P_H +#define PROFILEMANAGER1_P_H + +#include +#include +#include +#include +#include +#include +#include +#include + +/* + * Proxy class for interface org.bluez.ProfileManager1 + */ +class OrgBluezProfileManager1Interface: public QDBusAbstractInterface +{ + Q_OBJECT +public: + static inline const char *staticInterfaceName() + { return "org.bluez.ProfileManager1"; } + +public: + OrgBluezProfileManager1Interface(const QString &service, const QString &path, const QDBusConnection &connection, QObject *parent = nullptr); + + ~OrgBluezProfileManager1Interface(); + +public Q_SLOTS: // METHODS + inline QDBusPendingReply<> RegisterProfile(const QDBusObjectPath &profile, const QString &UUID, const QVariantMap &options) + { + QList argumentList; + argumentList << QVariant::fromValue(profile) << QVariant::fromValue(UUID) << QVariant::fromValue(options); + return asyncCallWithArgumentList(QStringLiteral("RegisterProfile"), argumentList); + } + + inline QDBusPendingReply<> UnregisterProfile(const QDBusObjectPath &profile) + { + QList argumentList; + argumentList << QVariant::fromValue(profile); + return asyncCallWithArgumentList(QStringLiteral("UnregisterProfile"), argumentList); + } + +Q_SIGNALS: // SIGNALS +}; + +namespace org { + namespace bluez { + typedef ::OrgBluezProfileManager1Interface ProfileManager1; + } +} +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/properties_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/properties_p.h new file mode 100644 index 0000000..16a43e8 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/properties_p.h @@ -0,0 +1,71 @@ +/* + * This file was generated by qdbusxml2cpp version 0.8 + * Command line was: qdbusxml2cpp -p properties_p.h:properties.cpp org.freedesktop.dbus.properties.xml + * + * qdbusxml2cpp is Copyright (C) 2017 The Qt Company Ltd. + * + * This is an auto-generated file. + * Do not edit! All changes made to it will be lost. + */ + +#ifndef PROPERTIES_P_H +#define PROPERTIES_P_H + +#include +#include +#include +#include +#include +#include +#include +#include + +/* + * Proxy class for interface org.freedesktop.DBus.Properties + */ +class OrgFreedesktopDBusPropertiesInterface: public QDBusAbstractInterface +{ + Q_OBJECT +public: + static inline const char *staticInterfaceName() + { return "org.freedesktop.DBus.Properties"; } + +public: + OrgFreedesktopDBusPropertiesInterface(const QString &service, const QString &path, const QDBusConnection &connection, QObject *parent = nullptr); + + ~OrgFreedesktopDBusPropertiesInterface(); + +public Q_SLOTS: // METHODS + inline QDBusPendingReply Get(const QString &interface, const QString &name) + { + QList argumentList; + argumentList << QVariant::fromValue(interface) << QVariant::fromValue(name); + return asyncCallWithArgumentList(QStringLiteral("Get"), argumentList); + } + + inline QDBusPendingReply GetAll(const QString &interface) + { + QList argumentList; + argumentList << QVariant::fromValue(interface); + return asyncCallWithArgumentList(QStringLiteral("GetAll"), argumentList); + } + + inline QDBusPendingReply<> Set(const QString &interface, const QString &name, const QDBusVariant &value) + { + QList argumentList; + argumentList << QVariant::fromValue(interface) << QVariant::fromValue(name) << QVariant::fromValue(value); + return asyncCallWithArgumentList(QStringLiteral("Set"), argumentList); + } + +Q_SIGNALS: // SIGNALS + void PropertiesChanged(const QString &interface, const QVariantMap &changed_properties, const QStringList &invalidated_properties); +}; + +namespace org { + namespace freedesktop { + namespace DBus { + typedef ::OrgFreedesktopDBusPropertiesInterface Properties; + } + } +} +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qbluetoothaddress_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qbluetoothaddress_p.h new file mode 100644 index 0000000..c3d87b0 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qbluetoothaddress_p.h @@ -0,0 +1,68 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QBLUETOOTHADDRESS_P_H +#define QBLUETOOTHADDRESS_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include "qbluetoothaddress.h" + +QT_BEGIN_NAMESPACE + +class QBluetoothAddressPrivate +{ +public: + QBluetoothAddressPrivate(); + + quint64 m_address; +}; + +QT_END_NAMESPACE + +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qbluetoothdevicediscoveryagent_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qbluetoothdevicediscoveryagent_p.h new file mode 100644 index 0000000..ce31392 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qbluetoothdevicediscoveryagent_p.h @@ -0,0 +1,185 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QBLUETOOTHDEVICEDISCOVERYAGENT_P_H +#define QBLUETOOTHDEVICEDISCOVERYAGENT_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include "qbluetoothdevicediscoveryagent.h" +#ifdef QT_ANDROID_BLUETOOTH +#include +#include "android/devicediscoverybroadcastreceiver_p.h" +#include +#endif + +#include + +#include +#include + +#if QT_CONFIG(bluez) +#include "bluez/bluez5_helper_p.h" + +class OrgBluezManagerInterface; +class OrgBluezAdapterInterface; +class OrgFreedesktopDBusObjectManagerInterface; +class OrgFreedesktopDBusPropertiesInterface; +class OrgBluezAdapter1Interface; +class OrgBluezDevice1Interface; + +QT_BEGIN_NAMESPACE +class QDBusVariant; +QT_END_NAMESPACE +#endif + +#ifdef QT_WINRT_BLUETOOTH +#include +#include +#endif + +QT_BEGIN_NAMESPACE + +#ifdef QT_WINRT_BLUETOOTH +class QWinRTBluetoothDeviceDiscoveryWorker; +#endif + +class QBluetoothDeviceDiscoveryAgentPrivate +#if defined(QT_ANDROID_BLUETOOTH) || defined(QT_WINRT_BLUETOOTH) + : public QObject +{ + Q_OBJECT +#else +{ +#endif + Q_DECLARE_PUBLIC(QBluetoothDeviceDiscoveryAgent) +public: + QBluetoothDeviceDiscoveryAgentPrivate( + const QBluetoothAddress &deviceAdapter, + QBluetoothDeviceDiscoveryAgent *parent); + ~QBluetoothDeviceDiscoveryAgentPrivate(); + + void start(QBluetoothDeviceDiscoveryAgent::DiscoveryMethods methods); + void stop(); + bool isActive() const; + +#if QT_CONFIG(bluez) + void _q_deviceFound(const QString &address, const QVariantMap &dict); + void _q_propertyChanged(const QString &name, const QDBusVariant &value); + void _q_InterfacesAdded(const QDBusObjectPath &object_path, + InterfaceList interfaces_and_properties); + void _q_discoveryFinished(); + void _q_discoveryInterrupted(const QString &path); + void _q_PropertiesChanged(const QString &interface, + const QVariantMap &changed_properties, + const QStringList &invalidated_properties); + void _q_extendedDeviceDiscoveryTimeout(); +#endif + +private: + QList discoveredDevices; + QBluetoothDeviceDiscoveryAgent::InquiryType inquiryType; + + QBluetoothDeviceDiscoveryAgent::Error lastError; + QString errorString; + +#ifdef QT_ANDROID_BLUETOOTH +private slots: + void processSdpDiscoveryFinished(); + void processDiscoveredDevices(const QBluetoothDeviceInfo &info, bool isLeResult); + friend void QtBluetoothLE_leScanResult(JNIEnv *, jobject, jlong, jobject); + void stopLowEnergyScan(); + +private: + void startLowEnergyScan(); + + DeviceDiscoveryBroadcastReceiver *receiver; + QBluetoothAddress m_adapterAddress; + short m_active; + QAndroidJniObject adapter; + QAndroidJniObject leScanner; + QTimer *leScanTimeout; + + bool pendingCancel, pendingStart; +#elif QT_CONFIG(bluez) + QBluetoothAddress m_adapterAddress; + bool pendingCancel; + bool pendingStart; + OrgBluezManagerInterface *manager = nullptr; + OrgBluezAdapterInterface *adapter = nullptr; + OrgFreedesktopDBusObjectManagerInterface *managerBluez5 = nullptr; + OrgBluezAdapter1Interface *adapterBluez5 = nullptr; + QTimer *discoveryTimer = nullptr; + QList propertyMonitors; + + void deviceFoundBluez5(const QString& devicePath); + void startBluez5(QBluetoothDeviceDiscoveryAgent::DiscoveryMethods methods); + + bool useExtendedDiscovery; + QTimer extendedDiscoveryTimer; +#endif + +#ifdef QT_WINRT_BLUETOOTH +private slots: + void registerDevice(const QBluetoothDeviceInfo &info); + void onScanFinished(); + +private: + void disconnectAndClearWorker(); + QPointer worker; + QTimer *leScanTimer; +#endif + + int lowEnergySearchTimeout; + QBluetoothDeviceDiscoveryAgent::DiscoveryMethods requestedMethods; + QBluetoothDeviceDiscoveryAgent *q_ptr; +}; + +QT_END_NAMESPACE + +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qbluetoothdeviceinfo_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qbluetoothdeviceinfo_p.h new file mode 100644 index 0000000..15c9e21 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qbluetoothdeviceinfo_p.h @@ -0,0 +1,90 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QBLUETOOTHDEVICEINFO_P_H +#define QBLUETOOTHDEVICEINFO_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include "qbluetoothdeviceinfo.h" +#include "qbluetoothaddress.h" +#include "qbluetoothuuid.h" + +#include +#include + +QT_BEGIN_NAMESPACE + +class QBluetoothDeviceInfoPrivate +{ +public: + QBluetoothDeviceInfoPrivate(); + + bool valid; + bool cached; + + QBluetoothAddress address; + QString name; + + qint16 rssi; + + QBluetoothDeviceInfo::ServiceClasses serviceClasses; + QBluetoothDeviceInfo::MajorDeviceClass majorDeviceClass; + quint8 minorDeviceClass; + + QBluetoothDeviceInfo::DataCompleteness serviceUuidsCompleteness; + QList serviceUuids; + QHash manufacturerData; + QBluetoothDeviceInfo::CoreConfigurations deviceCoreConfiguration; + + QBluetoothUuid deviceUuid; +}; + +QT_END_NAMESPACE + +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qbluetoothhostinfo_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qbluetoothhostinfo_p.h new file mode 100644 index 0000000..677fb55 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qbluetoothhostinfo_p.h @@ -0,0 +1,71 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QBLUETOOTHHOSTINFO_P_H +#define QBLUETOOTHHOSTINFO_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include "qbluetoothhostinfo.h" + +QT_BEGIN_NAMESPACE + +class QBluetoothHostInfoPrivate +{ +public: + QBluetoothHostInfoPrivate() + { + } + + QBluetoothAddress m_address; + QString m_name; +}; + +QT_END_NAMESPACE + +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qbluetoothlocaldevice_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qbluetoothlocaldevice_p.h new file mode 100644 index 0000000..1f99f27 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qbluetoothlocaldevice_p.h @@ -0,0 +1,232 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QBLUETOOTHLOCALDEVICE_P_H +#define QBLUETOOTHLOCALDEVICE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include "qbluetoothlocaldevice.h" + +#if QT_CONFIG(bluez) +#include +#include +#include +#include +#include +#include "bluez/bluez5_helper_p.h" + +class OrgBluezAdapterInterface; +class OrgBluezAdapter1Interface; +class OrgFreedesktopDBusPropertiesInterface; +class OrgFreedesktopDBusObjectManagerInterface; +class OrgBluezAgentAdaptor; +class OrgBluezDeviceInterface; +class OrgBluezDevice1Interface; +class OrgBluezManagerInterface; + +QT_BEGIN_NAMESPACE +class QDBusPendingCallWatcher; +QT_END_NAMESPACE +#endif + +#ifdef QT_ANDROID_BLUETOOTH +#include +#include +#include +#include +#endif + +QT_BEGIN_NAMESPACE + +extern void registerQBluetoothLocalDeviceMetaType(); + +class QBluetoothAddress; + +#ifdef QT_ANDROID_BLUETOOTH +class LocalDeviceBroadcastReceiver; +class QBluetoothLocalDevicePrivate : public QObject +{ + Q_OBJECT +public: + QBluetoothLocalDevicePrivate( + QBluetoothLocalDevice *q, const QBluetoothAddress &address = QBluetoothAddress()); + ~QBluetoothLocalDevicePrivate(); + + QAndroidJniObject *adapter(); + void initialize(const QBluetoothAddress &address); + static bool startDiscovery(); + static bool cancelDiscovery(); + static bool isDiscovering(); + bool isValid() const; + +private slots: + void processHostModeChange(QBluetoothLocalDevice::HostMode newMode); + void processPairingStateChanged(const QBluetoothAddress &address, + QBluetoothLocalDevice::Pairing pairing); + void processConnectDeviceChanges(const QBluetoothAddress &address, bool isConnectEvent); + void processDisplayConfirmation(const QBluetoothAddress &address, const QString &pin); + +private: + QBluetoothLocalDevice *q_ptr; + QAndroidJniObject *obj = nullptr; + + int pendingPairing(const QBluetoothAddress &address); + +public: + LocalDeviceBroadcastReceiver *receiver; + bool pendingHostModeTransition = false; + QList > pendingPairings; + + QList connectedDevices; +}; + +#elif QT_CONFIG(bluez) +class QBluetoothLocalDevicePrivate : public QObject, protected QDBusContext +{ + Q_OBJECT + Q_DECLARE_PUBLIC(QBluetoothLocalDevice) +public: + QBluetoothLocalDevicePrivate(QBluetoothLocalDevice *q, + QBluetoothAddress localAddress = QBluetoothAddress()); + ~QBluetoothLocalDevicePrivate(); + + QSet devices; + QSet connectedDevicesSet; + OrgBluezAdapterInterface *adapter = nullptr; //Bluez 4 + OrgBluezAdapter1Interface *adapterBluez5 = nullptr; //Bluez 5 + OrgFreedesktopDBusPropertiesInterface *adapterProperties = nullptr; //Bluez 5 + OrgFreedesktopDBusObjectManagerInterface *managerBluez5 = nullptr; //Bluez 5 + QMap deviceChangeMonitors; //Bluez 5 + OrgBluezAgentAdaptor *agent = nullptr; + OrgBluezManagerInterface *manager = nullptr; + + QList connectedDevices() const; + + QString agent_path; + QBluetoothAddress localAddress; + QBluetoothAddress address; + QBluetoothLocalDevice::Pairing pairing; + OrgBluezDevice1Interface *pairingTarget = nullptr; + QTimer *pairingDiscoveryTimer = nullptr; + QBluetoothLocalDevice::HostMode currentMode; + int pendingHostModeChange; + +public slots: + void Authorize(const QDBusObjectPath &in0, const QString &in1); + void Cancel(); + void ConfirmModeChange(const QString &in0); + void DisplayPasskey(const QDBusObjectPath &in0, uint in1, uchar in2); + void Release(); + uint RequestPasskey(const QDBusObjectPath &in0); + + void RequestConfirmation(const QDBusObjectPath &in0, uint in1); + QString RequestPinCode(const QDBusObjectPath &in0); + + void pairingCompleted(QDBusPendingCallWatcher *); + + void PropertyChanged(QString, QDBusVariant); + void _q_deviceCreated(const QDBusObjectPath &device); + void _q_deviceRemoved(const QDBusObjectPath &device); + void _q_devicePropertyChanged(const QString &property, const QDBusVariant &value); + bool isValid() const; + void adapterRemoved(const QDBusObjectPath &device); + + void requestPairingBluez5(const QBluetoothAddress &address, + QBluetoothLocalDevice::Pairing targetPairing); + +private Q_SLOTS: + void PropertiesChanged(const QString &interface, + const QVariantMap &changed_properties, + const QStringList &invalidated_properties); + void InterfacesAdded(const QDBusObjectPath &object_path, + InterfaceList interfaces_and_properties); + void InterfacesRemoved(const QDBusObjectPath &object_path, + const QStringList &interfaces); + void processPairingBluez5(const QString &objectPath, + QBluetoothLocalDevice::Pairing target); + void pairingDiscoveryTimedOut(); + +private: + void createCache(); + void connectDeviceChanges(); + + QDBusMessage msgConfirmation; + QDBusConnection *msgConnection = nullptr; + QString deviceAdapterPath; + + QBluetoothLocalDevice *q_ptr; + + void initializeAdapter(); + void initializeAdapterBluez5(); +}; +#elif !defined(QT_OSX_BLUETOOTH) // winrt and dummy backend +class QBluetoothLocalDevicePrivate : public QObject +{ +public: + QBluetoothLocalDevicePrivate(QBluetoothLocalDevice * = nullptr, + QBluetoothAddress = QBluetoothAddress()) + { + } + + bool isValid() const + { +#ifndef QT_WINRT_BLUETOOTH + return false; +#else + return true; +#endif + } +}; +#endif + +QT_END_NAMESPACE + +#endif // QBLUETOOTHLOCALDEVICE_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qbluetoothserver_osx_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qbluetoothserver_osx_p.h new file mode 100644 index 0000000..3116ca0 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qbluetoothserver_osx_p.h @@ -0,0 +1,127 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QBLUETOOTHSERVER_OSX_P_H +#define QBLUETOOTHSERVER_OSX_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#ifdef QT_OSX_BLUETOOTH + +#include "osx/osxbtsocketlistener_p.h" +#include "qbluetoothserviceinfo.h" +#include "osx/osxbtutility_p.h" +#include "qbluetoothserver.h" + +#include +#include + +QT_BEGIN_NAMESPACE + +class QMutex; + +class QBluetoothServerPrivate : public OSXBluetooth::SocketListener +{ + friend class QBluetoothServer; + friend class QBluetoothServiceInfoPrivate; + +public: + QBluetoothServerPrivate(QBluetoothServiceInfo::Protocol type, QBluetoothServer *q); + ~QBluetoothServerPrivate(); + + void _q_newConnection(); +private: + bool startListener(quint16 realPort); + void stopListener(); + + // SocketListener (delegate): + void openNotify(IOBluetoothRFCOMMChannel *channel) override; + void openNotify(IOBluetoothL2CAPChannel *channel) override; + + QBluetoothServiceInfo::Protocol serverType; + QBluetoothServer *q_ptr; + QBluetoothServer::Error lastError; + + // Either a "temporary" channelID/PSM assigned by QBluetoothServer::listen, + // or a real channelID/PSM returned by IOBluetooth after we've registered + // a service. + quint16 port; + + typedef OSXBluetooth::ObjCScopedPointer Listener; + Listener listener; + + int maxPendingConnections; + + // These static functions below + // deal with differences between bluetooth sockets + // (bluez and QtBluetooth's API) and IOBluetooth, where it's not possible + // to have a real PSM/channelID _before_ a service is registered, + // the solution - "fake" ports. + // These functions require external locking - using channelMapMutex. + static QMutex &channelMapMutex(); + + static bool channelIsBusy(quint16 channelID); + static quint16 findFreeChannel(); + + static bool psmIsBusy(quint16 psm); + static quint16 findFreePSM(); + + static void registerServer(QBluetoothServerPrivate *server, quint16 port); + static QBluetoothServerPrivate *registeredServer(quint16 port, QBluetoothServiceInfo::Protocol protocol); + static void unregisterServer(QBluetoothServerPrivate *server); + + typedef OSXBluetooth::ObjCStrongReference PendingConnection; + QList pendingConnections; + +}; + +QT_END_NAMESPACE + +#endif //QT_OSX_BLUETOOTH + +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qbluetoothserver_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qbluetoothserver_p.h new file mode 100644 index 0000000..d78eee5 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qbluetoothserver_p.h @@ -0,0 +1,149 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QBLUETOOTHSERVER_P_H +#define QBLUETOOTHSERVER_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include "qbluetoothserver.h" +#include "qbluetooth.h" + +#if QT_CONFIG(bluez) +QT_FORWARD_DECLARE_CLASS(QSocketNotifier) +#endif + +#ifdef QT_ANDROID_BLUETOOTH +#include +#include +#include + +class ServerAcceptanceThread; +#endif + +#ifdef QT_WINRT_BLUETOOTH +#include + +#include +// No forward declares because QBluetoothServerPrivate::listener does not work with them +#include +#endif + +QT_BEGIN_NAMESPACE + +class QBluetoothAddress; +class QBluetoothSocket; + +class QBluetoothServer; + +#ifndef QT_OSX_BLUETOOTH + +class QBluetoothServerPrivate +{ + Q_DECLARE_PUBLIC(QBluetoothServer) + +public: + QBluetoothServerPrivate(QBluetoothServiceInfo::Protocol serverType); + ~QBluetoothServerPrivate(); + +#if QT_CONFIG(bluez) + void _q_newConnection(); + void setSocketSecurityLevel(QBluetooth::SecurityFlags requestedSecLevel, int *errnoCode); + QBluetooth::SecurityFlags socketSecurityLevel() const; + static QBluetoothSocket *createSocketForServer( + QBluetoothServiceInfo::Protocol socketType = QBluetoothServiceInfo::RfcommProtocol); +#endif + +public: + QBluetoothSocket *socket; + + int maxPendingConnections; + QBluetooth::SecurityFlags securityFlags; + QBluetoothServiceInfo::Protocol serverType; + +protected: + QBluetoothServer *q_ptr; + +private: + QBluetoothServer::Error m_lastError; +#if QT_CONFIG(bluez) + QSocketNotifier *socketNotifier = nullptr; +#elif defined(QT_ANDROID_BLUETOOTH) + ServerAcceptanceThread *thread; + QString m_serviceName; + QBluetoothUuid m_uuid; +public: + bool isListening() const; + bool initiateActiveListening(const QBluetoothUuid& uuid, const QString &serviceName); + bool deactivateActiveListening(); +#elif defined(QT_WINRT_BLUETOOTH) + EventRegistrationToken connectionToken {-1}; + + mutable QMutex pendingConnectionsMutex; + QVector> pendingConnections; + + Microsoft::WRL::ComPtr socketListener; + HRESULT handleClientConnection(ABI::Windows::Networking::Sockets::IStreamSocketListener *listener, + ABI::Windows::Networking::Sockets::IStreamSocketListenerConnectionReceivedEventArgs *args); + +public: + bool isListening() const; + Microsoft::WRL::ComPtr listener() { return socketListener; } + bool initiateActiveListening(const QString &serviceName); + bool deactivateActiveListening(); +#endif +}; + +#endif //QT_OSX_BLUETOOTH + +QT_END_NAMESPACE + +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qbluetoothservicediscoveryagent_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qbluetoothservicediscoveryagent_p.h new file mode 100644 index 0000000..dbf8b1d --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qbluetoothservicediscoveryagent_p.h @@ -0,0 +1,220 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QBLUETOOTHSERVICEDISCOVERYAGENT_P_H +#define QBLUETOOTHSERVICEDISCOVERYAGENT_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include "qbluetoothaddress.h" +#include "qbluetoothdeviceinfo.h" +#include "qbluetoothserviceinfo.h" +#include "qbluetoothservicediscoveryagent.h" + +#include +#include + +#if QT_CONFIG(bluez) +class OrgBluezManagerInterface; +class OrgBluezAdapterInterface; +class OrgBluezDeviceInterface; +class OrgFreedesktopDBusObjectManagerInterface; +#include + +QT_BEGIN_NAMESPACE +class QDBusPendingCallWatcher; +class QXmlStreamReader; +QT_END_NAMESPACE +#endif + +#ifdef QT_WINRT_BLUETOOTH +#include +#endif + +QT_BEGIN_NAMESPACE + +class QBluetoothDeviceDiscoveryAgent; +#ifdef QT_ANDROID_BLUETOOTH +class ServiceDiscoveryBroadcastReceiver; +class LocalDeviceBroadcastReceiver; +#include +#include +#endif + +#ifdef QT_WINRT_BLUETOOTH +class QWinRTBluetoothServiceDiscoveryWorker; +#endif + +class QBluetoothServiceDiscoveryAgentPrivate +#if defined QT_WINRT_BLUETOOTH + : public QObject +{ + Q_OBJECT +#else +{ +#endif + Q_DECLARE_PUBLIC(QBluetoothServiceDiscoveryAgent) + +public: + enum DiscoveryState { + Inactive, + DeviceDiscovery, + ServiceDiscovery, + }; + + QBluetoothServiceDiscoveryAgentPrivate(QBluetoothServiceDiscoveryAgent *qp, + const QBluetoothAddress &deviceAdapter); + ~QBluetoothServiceDiscoveryAgentPrivate(); + + void startDeviceDiscovery(); + void stopDeviceDiscovery(); + void startServiceDiscovery(); + void stopServiceDiscovery(); + + void setDiscoveryState(DiscoveryState s) { state = s; } + inline DiscoveryState discoveryState() { return state; } + + void setDiscoveryMode(QBluetoothServiceDiscoveryAgent::DiscoveryMode m) { mode = m; } + QBluetoothServiceDiscoveryAgent::DiscoveryMode DiscoveryMode() { return mode; } + + void _q_deviceDiscoveryFinished(); + void _q_deviceDiscovered(const QBluetoothDeviceInfo &info); + void _q_serviceDiscoveryFinished(); + void _q_deviceDiscoveryError(QBluetoothDeviceDiscoveryAgent::Error); +#if QT_CONFIG(bluez) + void _q_discoveredServices(QDBusPendingCallWatcher *watcher); + void _q_createdDevice(QDBusPendingCallWatcher *watcher); + void _q_foundDevice(QDBusPendingCallWatcher *watcher); + //Slots below are used for discovering Bluetooth Low Energy devices. It will be used with Bluez 5.x version. + /* + void _g_discoveredGattService(); + void _q_discoverGattCharacteristics(QDBusPendingCallWatcher *watcher); + void _q_discoveredGattCharacteristic(QDBusPendingCallWatcher *watcher); + */ + void _q_sdpScannerDone(int exitCode, QProcess::ExitStatus status); + void _q_finishSdpScan(QBluetoothServiceDiscoveryAgent::Error errorCode, + const QString &errorDescription, + const QStringList &xmlRecords); +#endif +#ifdef QT_ANDROID_BLUETOOTH + void _q_processFetchedUuids(const QBluetoothAddress &address, const QList &uuids); + + void populateDiscoveredServices(const QBluetoothDeviceInfo &remoteDevice, + const QList &uuids); + void _q_fetchUuidsTimeout(); + void _q_hostModeStateChanged(QBluetoothLocalDevice::HostMode state); +#endif + +private: + void start(const QBluetoothAddress &address); + void stop(); + bool isDuplicatedService(const QBluetoothServiceInfo &serviceInfo) const; + +#if QT_CONFIG(bluez) + void startBluez5(const QBluetoothAddress &address); + void runExternalSdpScan(const QBluetoothAddress &remoteAddress, + const QBluetoothAddress &localAddress); + void sdpScannerDone(int exitCode, QProcess::ExitStatus exitStatus); + QVariant readAttributeValue(QXmlStreamReader &xml); + QBluetoothServiceInfo parseServiceXml(const QString& xml); + void performMinimalServiceDiscovery(const QBluetoothAddress &deviceAddress); + void discoverServices(const QString &deviceObjectPath); +#endif + +public: + QBluetoothServiceDiscoveryAgent::Error error; + QString errorString; + QBluetoothAddress deviceAddress; + QList discoveredServices; + QList discoveredDevices; + QBluetoothAddress m_deviceAdapterAddress; + +private: + DiscoveryState state; + QList uuidFilter; + + QBluetoothDeviceDiscoveryAgent *deviceDiscoveryAgent = nullptr; + + QBluetoothServiceDiscoveryAgent::DiscoveryMode mode; + + bool singleDevice; +#if QT_CONFIG(bluez) + QString foundHostAdapterPath; + OrgBluezManagerInterface *manager = nullptr; + OrgFreedesktopDBusObjectManagerInterface *managerBluez5 = nullptr; + OrgBluezAdapterInterface *adapter = nullptr; + OrgBluezDeviceInterface *device = nullptr; + QProcess *sdpScannerProcess = nullptr; +#endif + +#ifdef QT_ANDROID_BLUETOOTH + ServiceDiscoveryBroadcastReceiver *receiver = nullptr; + LocalDeviceBroadcastReceiver *localDeviceReceiver = nullptr; + + QAndroidJniObject btAdapter; + QMap > > sdpCache; +#endif + +#ifdef QT_WINRT_BLUETOOTH +private slots: + void processFoundService(quint64 deviceAddress, const QBluetoothServiceInfo &info); + void onScanFinished(quint64 deviceAddress); + void onScanCanceled(); + void onError(); + +private: + QPointer worker; +#endif + +protected: + QBluetoothServiceDiscoveryAgent *q_ptr; +}; + +QT_END_NAMESPACE + +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qbluetoothserviceinfo_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qbluetoothserviceinfo_p.h new file mode 100644 index 0000000..e4e835e --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qbluetoothserviceinfo_p.h @@ -0,0 +1,130 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QBLUETOOTHSERVICEINFO_P_H +#define QBLUETOOTHSERVICEINFO_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include "qbluetoothuuid.h" +#include "qbluetoothaddress.h" +#include "qbluetoothdeviceinfo.h" +#include "qbluetoothserviceinfo.h" + +#include +#include + +class OrgBluezServiceInterface; +class OrgBluezProfileManager1Interface; + +#ifdef QT_WINRT_BLUETOOTH +#include + +namespace ABI { + namespace Windows { + namespace Devices { + namespace Bluetooth { + namespace Rfcomm { + struct IRfcommServiceProvider; + } + } + } + } +} +#endif + +QT_BEGIN_NAMESPACE + +class QBluetoothServiceInfo; + +#ifndef QT_OSX_BLUETOOTH + +class QBluetoothServiceInfoPrivate + : public QObject +{ + Q_OBJECT +public: + QBluetoothServiceInfoPrivate(); + ~QBluetoothServiceInfoPrivate(); + + bool registerService(const QBluetoothAddress &localAdapter = QBluetoothAddress()); + + bool isRegistered() const; + + bool unregisterService(); + + QBluetoothDeviceInfo deviceInfo; + QMap attributes; + + QBluetoothServiceInfo::Sequence protocolDescriptor(QBluetoothUuid::ProtocolUuid protocol) const; + int serverChannel() const; +private: +#if QT_CONFIG(bluez) + bool ensureSdpConnection(const QBluetoothAddress &localAdapter = QBluetoothAddress()); + + OrgBluezServiceInterface *service = nullptr; + OrgBluezProfileManager1Interface *serviceBluez5 = nullptr; + quint32 serviceRecord; + QBluetoothAddress currentLocalAdapter; + QString profilePath; +#endif + +#ifdef QT_WINRT_BLUETOOTH + Microsoft::WRL::ComPtr serviceProvider; + + bool writeSdpAttributes(); +#endif + + mutable bool registered; +}; + +#endif + +QT_END_NAMESPACE + +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qbluetoothsocket_android_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qbluetoothsocket_android_p.h new file mode 100644 index 0000000..042e1bc --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qbluetoothsocket_android_p.h @@ -0,0 +1,147 @@ +/**************************************************************************** +** +** Copyright (C) 2018 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + + +#ifndef QBLUETOOTHSOCKET_ANDROID_P_H +#define QBLUETOOTHSOCKET_ANDROID_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include "qbluetoothsocketbase_p.h" + +#include +#include +#include "android/inputstreamthread_p.h" +#include + +QT_BEGIN_NAMESPACE + +class QBluetoothSocketPrivateAndroid final : public QBluetoothSocketBasePrivate +{ + Q_OBJECT + friend class QBluetoothServerPrivate; + +public: + QBluetoothSocketPrivateAndroid(); + ~QBluetoothSocketPrivateAndroid() override; + + //On Android we connect using the uuid not the port + void connectToServiceHelper(const QBluetoothAddress &address, const QBluetoothUuid &uuid, + QIODevice::OpenMode openMode) override; + + void connectToService(const QBluetoothServiceInfo &service, + QIODevice::OpenMode openMode) override; + void connectToService(const QBluetoothAddress &address, const QBluetoothUuid &uuid, + QIODevice::OpenMode openMode) override; + void connectToService(const QBluetoothAddress &address, quint16 port, + QIODevice::OpenMode openMode) override; + + bool fallBackConnect(QAndroidJniObject uuid, int channel); + bool fallBackReversedConnect(const QBluetoothUuid &uuid); + + bool ensureNativeSocket(QBluetoothServiceInfo::Protocol type) override; + + QString localName() const override; + QBluetoothAddress localAddress() const override; + quint16 localPort() const override; + + QString peerName() const override; + QBluetoothAddress peerAddress() const override; + quint16 peerPort() const override; + + void abort() override; + void close() override; + + qint64 writeData(const char *data, qint64 maxSize) override; + qint64 readData(char *data, qint64 maxSize) override; + + bool setSocketDescriptor(const QAndroidJniObject &socket, QBluetoothServiceInfo::Protocol socketType, + QBluetoothSocket::SocketState socketState = QBluetoothSocket::ConnectedState, + QBluetoothSocket::OpenMode openMode = QBluetoothSocket::ReadWrite) override; + + bool setSocketDescriptor(int socketDescriptor, QBluetoothServiceInfo::Protocol socketType, + QBluetoothSocket::SocketState socketState = QBluetoothSocket::ConnectedState, + QBluetoothSocket::OpenMode openMode = QBluetoothSocket::ReadWrite) override; + + qint64 bytesAvailable() const override; + bool canReadLine() const override; + qint64 bytesToWrite() const override; + + static QBluetoothUuid reverseUuid(const QBluetoothUuid &serviceUuid); + + QAndroidJniObject adapter; + QAndroidJniObject socketObject; + QAndroidJniObject remoteDevice; + QAndroidJniObject inputStream; + QAndroidJniObject outputStream; + InputStreamThread *inputThread; + +public slots: + void socketConnectSuccess(const QAndroidJniObject &socket); + void defaultSocketConnectFailed(const QAndroidJniObject & socket, + const QAndroidJniObject &targetUuid, + const QBluetoothUuid &qtTargetUuid); + void fallbackSocketConnectFailed(const QAndroidJniObject &socket, + const QAndroidJniObject &targetUuid); + void inputThreadError(int errorCode); + +signals: + void connectJavaSocket(); + void closeJavaSocket(); + +}; + +// QTBUG-61392 related +// Private API to disable the silent behavior to reverse a remote service's +// UUID. In rare cases the workaround behavior might not be desirable as +// it may lead to connects to incorrect services. +extern bool useReverseUuidWorkAroundConnect; + +QT_END_NAMESPACE + +#endif // QBLUETOOTHSOCKET_ANDROID_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qbluetoothsocket_bluez_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qbluetoothsocket_bluez_p.h new file mode 100644 index 0000000..67c04b3 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qbluetoothsocket_bluez_p.h @@ -0,0 +1,108 @@ +/**************************************************************************** +** +** Copyright (C) 2018 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QBLUETOOTHSOCKET_BLUEZ_H +#define QBLUETOOTHSOCKET_BLUEZ_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include "qbluetoothsocketbase_p.h" + +QT_BEGIN_NAMESPACE + +class QBluetoothSocketPrivateBluez final: public QBluetoothSocketBasePrivate +{ + Q_OBJECT + +public: + QBluetoothSocketPrivateBluez(); + ~QBluetoothSocketPrivateBluez() override; + + void connectToServiceHelper(const QBluetoothAddress &address, + quint16 port, + QIODevice::OpenMode openMode) override; + + void connectToService(const QBluetoothServiceInfo &service, + QIODevice::OpenMode openMode) override; + void connectToService(const QBluetoothAddress &address, const QBluetoothUuid &uuid, + QIODevice::OpenMode openMode) override; + void connectToService(const QBluetoothAddress &address, quint16 port, + QIODevice::OpenMode openMode) override; + + bool ensureNativeSocket(QBluetoothServiceInfo::Protocol type) override; + + QString localName() const override; + QBluetoothAddress localAddress() const override; + quint16 localPort() const override; + + QString peerName() const override; + QBluetoothAddress peerAddress() const override; + quint16 peerPort() const override; + + void abort() override; + void close() override; + + qint64 writeData(const char *data, qint64 maxSize) override; + qint64 readData(char *data, qint64 maxSize) override; + + bool setSocketDescriptor(int socketDescriptor, QBluetoothServiceInfo::Protocol socketType, + QBluetoothSocket::SocketState socketState = QBluetoothSocket::ConnectedState, + QBluetoothSocket::OpenMode openMode = QBluetoothSocket::ReadWrite) override; + + qint64 bytesAvailable() const override; + bool canReadLine() const override; + qint64 bytesToWrite() const override; + +private slots: + void _q_readNotify(); + void _q_writeNotify(); +}; + +QT_END_NAMESPACE + +#endif // QBLUETOOTHSOCKET_BLUEZ_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qbluetoothsocket_bluezdbus_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qbluetoothsocket_bluezdbus_p.h new file mode 100644 index 0000000..4d1a272 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qbluetoothsocket_bluezdbus_p.h @@ -0,0 +1,130 @@ +/**************************************************************************** +** +** Copyright (C) 2018 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QBLUETOOTHSOCKET_BLUEZDBUS_H +#define QBLUETOOTHSOCKET_BLUEZDBUS_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include "qbluetoothsocketbase_p.h" + +#include + +#include + +class OrgBluezProfileManager1Interface; + +QT_BEGIN_NAMESPACE + +class QLocalSocket; +class OrgBluezProfile1ContextInterface; + +class QBluetoothSocketPrivateBluezDBus final: public QBluetoothSocketBasePrivate +{ + Q_OBJECT + +public: + QBluetoothSocketPrivateBluezDBus(); + ~QBluetoothSocketPrivateBluezDBus() override; + + void connectToServiceHelper(const QBluetoothAddress &address, + quint16 port, + QIODevice::OpenMode openMode) override; + void connectToServiceHelper(const QBluetoothAddress &address, + const QBluetoothUuid &uuid, + QIODevice::OpenMode openMode); + + void connectToService(const QBluetoothServiceInfo &service, + QIODevice::OpenMode openMode) override; + void connectToService(const QBluetoothAddress &address, const QBluetoothUuid &uuid, + QIODevice::OpenMode openMode) override; + void connectToService(const QBluetoothAddress &address, quint16 port, + QIODevice::OpenMode openMode) override; + + bool ensureNativeSocket(QBluetoothServiceInfo::Protocol type) override; + + QString localName() const override; + QBluetoothAddress localAddress() const override; + quint16 localPort() const override; + + QString peerName() const override; + QBluetoothAddress peerAddress() const override; + quint16 peerPort() const override; + + void abort() override; + void close() override; + + qint64 writeData(const char *data, qint64 maxSize) override; + qint64 readData(char *data, qint64 maxSize) override; + + bool setSocketDescriptor(int socketDescriptor, QBluetoothServiceInfo::Protocol socketType, + QBluetoothSocket::SocketState socketState = QBluetoothSocket::ConnectedState, + QBluetoothSocket::OpenMode openMode = QBluetoothSocket::ReadWrite) override; + + qint64 bytesAvailable() const override; + bool canReadLine() const override; + qint64 bytesToWrite() const override; + +private: + void remoteConnected(const QDBusUnixFileDescriptor &fd); + void socketStateChanged(QLocalSocket::LocalSocketState newState); + + void clearSocket(); + +private: + OrgBluezProfileManager1Interface *profileManager = nullptr; + OrgBluezProfile1ContextInterface *profileContext = nullptr; + QString remoteDevicePath; + QString profileUuid; + QString profilePath; + QLocalSocket *localSocket = nullptr; +}; + +QT_END_NAMESPACE + +#endif // QBLUETOOTHSOCKET_BLUEZDBUS_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qbluetoothsocket_dummy_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qbluetoothsocket_dummy_p.h new file mode 100644 index 0000000..78a2049 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qbluetoothsocket_dummy_p.h @@ -0,0 +1,108 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QBLUETOOTHSOCKET_DUMMY_H +#define QBLUETOOTHSOCKET_DUMMY_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include "qbluetoothsocket.h" +#include "qbluetoothsocketbase_p.h" +#include + +QT_BEGIN_NAMESPACE + +class QBluetoothSocketPrivateDummy final : public QBluetoothSocketBasePrivate +{ + Q_OBJECT + friend class QBluetoothServerPrivate; + +public: + QBluetoothSocketPrivateDummy(); + ~QBluetoothSocketPrivateDummy() override; + + void connectToServiceHelper(const QBluetoothAddress &address, + quint16 port, + QIODevice::OpenMode openMode) override; + + void connectToService(const QBluetoothServiceInfo &service, + QIODevice::OpenMode openMode) override; + void connectToService(const QBluetoothAddress &address, const QBluetoothUuid &uuid, + QIODevice::OpenMode openMode) override; + void connectToService(const QBluetoothAddress &address, quint16 port, + QIODevice::OpenMode openMode) override; + + bool ensureNativeSocket(QBluetoothServiceInfo::Protocol type) override; + + QString localName() const override; + QBluetoothAddress localAddress() const override; + quint16 localPort() const override; + + QString peerName() const override; + QBluetoothAddress peerAddress() const override; + quint16 peerPort() const override; + + void abort() override; + void close() override; + + qint64 writeData(const char *data, qint64 maxSize) override; + qint64 readData(char *data, qint64 maxSize) override; + + bool setSocketDescriptor(int socketDescriptor, QBluetoothServiceInfo::Protocol socketType, + QBluetoothSocket::SocketState socketState = QBluetoothSocket::ConnectedState, + QBluetoothSocket::OpenMode openMode = QBluetoothSocket::ReadWrite) override; + + qint64 bytesAvailable() const override; + bool canReadLine() const override; + qint64 bytesToWrite() const override; +}; + +QT_END_NAMESPACE + +#endif // QBLUETOOTHSOCKET_DUMMY_H + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qbluetoothsocket_osx_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qbluetoothsocket_osx_p.h new file mode 100644 index 0000000..dcc684b --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qbluetoothsocket_osx_p.h @@ -0,0 +1,153 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QBLUETOOTHSOCKET_OSX_P_H +#define QBLUETOOTHSOCKET_OSX_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#ifdef QT_OSX_BLUETOOTH + +#include "osx/osxbtchanneldelegate_p.h" +#include "osx/osxbtrfcommchannel_p.h" +#include "osx/osxbtl2capchannel_p.h" +#include "qbluetoothserviceinfo.h" +#include "osx/osxbtutility_p.h" +#include "qbluetoothsocket.h" + +#ifndef QPRIVATELINEARBUFFER_BUFFERSIZE +#define QPRIVATELINEARBUFFER_BUFFERSIZE Q_INT64_C(16384) +#endif +// The order is important: bytearray before buffer: +#include +#include "qprivatelinearbuffer_p.h" + +#include +#include +#include +#include +#include +#include + +@class IOBluetoothRFCOMMChannel; +@class IOBluetoothL2CAPChannel; + +QT_BEGIN_NAMESPACE + +class QBluetoothAddress; + +class QBluetoothSocketPrivate : public QBluetoothSocketBasePrivate, public OSXBluetooth::ChannelDelegate +{ + friend class QBluetoothSocket; + friend class QBluetoothServer; + +public: + QBluetoothSocketPrivate(); + ~QBluetoothSocketPrivate(); + + void connectToService(const QBluetoothAddress &address, quint16 port, + QIODevice::OpenMode openMode); + + void close(); + void abort(); + + quint64 bytesAvailable() const; + + QString peerName() const; + QBluetoothAddress peerAddress() const; + quint16 peerPort() const; + + void _q_readNotify(); + void _q_writeNotify() override; + +private: + // Create a socket from an external source (without connectToService). + bool setChannel(IOBluetoothRFCOMMChannel *channel); + bool setChannel(IOBluetoothL2CAPChannel *channel); + + // L2CAP and RFCOMM delegate + void setChannelError(IOReturn errorCode) override; + void channelOpenComplete() override; + void channelClosed() override; + void readChannelData(void *data, std::size_t size) override; + void writeComplete() override; + + qint64 writeData(const char *data, qint64 maxSize); + qint64 readData(char *data, qint64 maxSize); + + QScopedPointer discoveryAgent; + + QPrivateLinearBuffer buffer; + QPrivateLinearBuffer txBuffer; + QVector writeChunk; + + // Probably, not needed. + QIODevice::OpenMode openMode; + + QBluetoothSocket::SocketState state; + QBluetoothServiceInfo::Protocol socketType; + + QBluetoothSocket::SocketError socketError; + QString errorString; + + typedef QT_MANGLE_NAMESPACE(OSXBTL2CAPChannel) ObjCL2CAPChannel; + typedef OSXBluetooth::ObjCScopedPointer L2CAPChannel; + L2CAPChannel l2capChannel; + + typedef QT_MANGLE_NAMESPACE(OSXBTRFCOMMChannel) ObjCRFCOMMChannel; + typedef OSXBluetooth::ObjCScopedPointer RFCOMMChannel; + RFCOMMChannel rfcommChannel; + // A trick to deal with channel open too fast (synchronously). + bool isConnecting; +}; + +QT_END_NAMESPACE + +#endif + +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qbluetoothsocket_winrt_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qbluetoothsocket_winrt_p.h new file mode 100644 index 0000000..40e87f0 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qbluetoothsocket_winrt_p.h @@ -0,0 +1,136 @@ +/**************************************************************************** +** +** Copyright (C) 2018 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QBLUETOOTHSOCKET_WINRT_P_H +#define QBLUETOOTHSOCKET_WINRT_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include "qbluetoothsocket.h" +#include "qbluetoothsocketbase_p.h" +#include + +QT_FORWARD_DECLARE_CLASS(SocketWorker) + +QT_BEGIN_NAMESPACE + +class QBluetoothSocketPrivateWinRT final: public QBluetoothSocketBasePrivate +{ + Q_OBJECT + friend class QBluetoothServerPrivate; + +public: + QBluetoothSocketPrivateWinRT(); + ~QBluetoothSocketPrivateWinRT() override; + + void connectToServiceHelper(const QBluetoothAddress &address, + quint16 port, + QIODevice::OpenMode openMode) override; + + void connectToService(const QBluetoothServiceInfo &service, + QIODevice::OpenMode openMode) override; + void connectToService(const QBluetoothAddress &address, const QBluetoothUuid &uuid, + QIODevice::OpenMode openMode) override; + void connectToService(const QBluetoothAddress &address, quint16 port, + QIODevice::OpenMode openMode) override; + + bool ensureNativeSocket(QBluetoothServiceInfo::Protocol type) override; + + QString localName() const override; + QBluetoothAddress localAddress() const override; + quint16 localPort() const override; + + QString peerName() const override; + QBluetoothAddress peerAddress() const override; + quint16 peerPort() const override; + + void abort() override; + void close() override; + + qint64 writeData(const char *data, qint64 maxSize) override; + qint64 readData(char *data, qint64 maxSize) override; + + bool setSocketDescriptor(Microsoft::WRL::ComPtr socket, + QBluetoothServiceInfo::Protocol socketType, + QBluetoothSocket::SocketState socketState = QBluetoothSocket::ConnectedState, + QBluetoothSocket::OpenMode openMode = QBluetoothSocket::ReadWrite) override; + + bool setSocketDescriptor(int socketDescriptor, QBluetoothServiceInfo::Protocol socketType, + QBluetoothSocket::SocketState socketState = QBluetoothSocket::ConnectedState, + QBluetoothSocket::OpenMode openMode = QBluetoothSocket::ReadWrite) override; + + qint64 bytesAvailable() const override; + bool canReadLine() const override; + qint64 bytesToWrite() const override; + + SocketWorker *m_worker; + + Microsoft::WRL::ComPtr m_socketObject; + Microsoft::WRL::ComPtr m_connectOp; + + QMutex m_readMutex; + + // Protected by m_readMutex. Written in addToPendingData (native callback) + QVector m_pendingData; + + Q_INVOKABLE void addToPendingData(const QVector &data); + +private slots: + void handleNewData(const QVector &data); + void handleError(QBluetoothSocket::SocketError error); + +private: + HRESULT handleConnectOpFinished(ABI::Windows::Foundation::IAsyncAction *action, + ABI::Windows::Foundation::AsyncStatus status); + + QIODevice::OpenMode requestedOpenMode = QIODevice::NotOpen; +}; + +QT_END_NAMESPACE + +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qbluetoothsocketbase_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qbluetoothsocketbase_p.h new file mode 100644 index 0000000..410dcbb --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qbluetoothsocketbase_p.h @@ -0,0 +1,223 @@ +/**************************************************************************** +** +** Copyright (C) 2018 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QBLUETOOTHSOCKETBASEPRIVATE_P_H +#define QBLUETOOTHSOCKETBASEPRIVATE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +#if defined(QT_ANDROID_BLUETOOTH) +#include +#endif + +#if defined(QT_WINRT_BLUETOOTH) +#include + +#include + +namespace ABI { + namespace Windows { + namespace Networking { + namespace Sockets { + struct IStreamSocket; + } + } + namespace Foundation { + struct IAsyncAction; + enum class AsyncStatus; + } + } +} +#endif // QT_WINRT_BLUETOOTH + +#ifndef QPRIVATELINEARBUFFER_BUFFERSIZE +#define QPRIVATELINEARBUFFER_BUFFERSIZE Q_INT64_C(16384) +#endif +#include "qprivatelinearbuffer_p.h" + +QT_FORWARD_DECLARE_CLASS(QSocketNotifier) +QT_FORWARD_DECLARE_CLASS(QBluetoothServiceDiscoveryAgent) + +QT_BEGIN_NAMESPACE + +#ifndef QT_OSX_BLUETOOTH +class QBluetoothSocketBasePrivate : public QObject +{ + Q_OBJECT + +public: + explicit QBluetoothSocketBasePrivate(QObject *parent = nullptr); + virtual ~QBluetoothSocketBasePrivate(); + + virtual bool ensureNativeSocket(QBluetoothServiceInfo::Protocol type) = 0; + + virtual QString localName() const = 0; + virtual QBluetoothAddress localAddress() const = 0; + virtual quint16 localPort() const = 0; + + virtual QString peerName() const = 0; + virtual QBluetoothAddress peerAddress() const = 0; + virtual quint16 peerPort() const = 0; + + virtual void abort() = 0; + virtual void close() = 0; + + virtual qint64 writeData(const char *data, qint64 maxSize) = 0; + virtual qint64 readData(char *data, qint64 maxSize) = 0; + + virtual qint64 bytesAvailable() const = 0; + virtual bool canReadLine() const = 0; + virtual qint64 bytesToWrite() const = 0; + + virtual bool setSocketDescriptor(int socketDescriptor, QBluetoothServiceInfo::Protocol socketType, + QBluetoothSocket::SocketState socketState = QBluetoothSocket::ConnectedState, + QBluetoothSocket::OpenMode openMode = QBluetoothSocket::ReadWrite) = 0; + + +#if defined(QT_ANDROID_BLUETOOTH) + virtual void connectToServiceHelper(const QBluetoothAddress &address, const QBluetoothUuid &uuid, + QIODevice::OpenMode openMode) = 0; +#else + virtual void connectToServiceHelper(const QBluetoothAddress &address, quint16 port, + QIODevice::OpenMode openMode) = 0; +#endif + virtual void connectToService(const QBluetoothServiceInfo &service, + QIODevice::OpenMode openMode) = 0; + virtual void connectToService(const QBluetoothAddress &address, const QBluetoothUuid &uuid, + QIODevice::OpenMode openMode) = 0; + virtual void connectToService(const QBluetoothAddress &address, quint16 port, + QIODevice::OpenMode openMode) = 0; + +#ifdef QT_ANDROID_BLUETOOTH + virtual bool setSocketDescriptor(const QAndroidJniObject &socket, QBluetoothServiceInfo::Protocol socketType, + QBluetoothSocket::SocketState socketState = QBluetoothSocket::ConnectedState, + QBluetoothSocket::OpenMode openMode = QBluetoothSocket::ReadWrite) = 0; +#elif defined(QT_WINRT_BLUETOOTH) + virtual bool setSocketDescriptor(Microsoft::WRL::ComPtr socket, + QBluetoothServiceInfo::Protocol socketType, + QBluetoothSocket::SocketState socketState = QBluetoothSocket::ConnectedState, + QBluetoothSocket::OpenMode openMode = QBluetoothSocket::ReadWrite) = 0; +#endif + +public: + QPrivateLinearBuffer buffer; + QPrivateLinearBuffer txBuffer; + int socket = -1; + QBluetoothServiceInfo::Protocol socketType = QBluetoothServiceInfo::UnknownProtocol; + QBluetoothSocket::SocketState state = QBluetoothSocket::UnconnectedState; + QBluetoothSocket::SocketError socketError = QBluetoothSocket::NoSocketError; + QSocketNotifier *readNotifier = nullptr; + QSocketNotifier *connectWriteNotifier = nullptr; + bool connecting = false; + + QBluetoothServiceDiscoveryAgent *discoveryAgent = nullptr; + QBluetoothSocket::OpenMode openMode; + QBluetooth::SecurityFlags secFlags; + + QString errorString; + +protected: + Q_DECLARE_PUBLIC(QBluetoothSocket) + QBluetoothSocket *q_ptr; + +#if QT_CONFIG(bluez) +public: + quint8 lowEnergySocketType = 0; +#endif +}; + +static inline void convertAddress(const quint64 from, quint8 (&to)[6]) +{ + to[0] = (from >> 0) & 0xff; + to[1] = (from >> 8) & 0xff; + to[2] = (from >> 16) & 0xff; + to[3] = (from >> 24) & 0xff; + to[4] = (from >> 32) & 0xff; + to[5] = (from >> 40) & 0xff; +} + +static inline quint64 convertAddress(const quint8 (&from)[6], quint64 *to = nullptr) +{ + const quint64 result = (quint64(from[0]) << 0) | + (quint64(from[1]) << 8) | + (quint64(from[2]) << 16) | + (quint64(from[3]) << 24) | + (quint64(from[4]) << 32) | + (quint64(from[5]) << 40); + if (to) + *to = result; + return result; +} + +#else // QT_OSX_BLUETOOTH + +// QBluetoothSocketPrivate on macOS can not contain +// Q_OBJECT (moc does not parse Objective-C syntax). +// But QBluetoothSocket still requires QMetaObject::invokeMethod +// to work. Here's the trick: +class QBluetoothSocketBasePrivate : public QObject +{ +// The most important part of it: + Q_OBJECT +public slots: + virtual void _q_writeNotify() = 0; + +protected: + Q_DECLARE_PUBLIC(QBluetoothSocket) + QBluetoothSocket *q_ptr; +}; + +#endif // QT_OSX_BLUETOOTH + +QT_END_NAMESPACE + +#endif // QBLUETOOTHSOCKETBASE_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qbluetoothtransferreply_bluez_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qbluetoothtransferreply_bluez_p.h new file mode 100644 index 0000000..48a8d4f --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qbluetoothtransferreply_bluez_p.h @@ -0,0 +1,136 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QBLUETOOTHTRANSFERREPLY_BLUEZ_P_H +#define QBLUETOOTHTRANSFERREPLY_BLUEZ_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +#include +#include + +#include "qbluetoothtransferreply.h" + +class OrgOpenobexClientInterface; +class AgentAdaptor; +class OrgBluezObexClient1Interface; +class OrgBluezObexObjectPush1Interface; + +QT_BEGIN_NAMESPACE + +class Q_BLUETOOTH_EXPORT QBluetoothTransferReplyBluez : public QBluetoothTransferReply +{ + Q_OBJECT + +public: + explicit QBluetoothTransferReplyBluez(QIODevice *input, const QBluetoothTransferRequest &request, + QBluetoothTransferManager *parent = nullptr); + ~QBluetoothTransferReplyBluez(); + + bool isFinished() const; + bool isRunning() const; + + QBluetoothTransferReply::TransferError error() const; + QString errorString() const; + +private slots: + bool start(); + +private: + void startOPP(const QString &filename); + + OrgOpenobexClientInterface *m_client = nullptr; + AgentAdaptor *m_agent = nullptr; + OrgBluezObexClient1Interface *m_clientBluez = nullptr; + OrgBluezObexObjectPush1Interface *m_objectPushBluez = nullptr; + + + QTemporaryFile *m_tempfile = nullptr; + QIODevice *m_source = nullptr; + + bool m_running; + bool m_finished; + + quint64 m_size; + + QBluetoothTransferReply::TransferError m_error; + QString m_errorStr; + + QString m_agent_path; + + QString m_transfer_path; + QString fileToTranser; + + static bool copyToTempFile(QIODevice *to, QIODevice *from); + void cleanupSession(); + +private slots: + void copyDone(); + void sessionCreated(QDBusPendingCallWatcher *watcher); + void sessionStarted(QDBusPendingCallWatcher *watcher); + void sessionChanged(const QString &interface, + const QVariantMap &changed_properties, + const QStringList &invalidated_properties); + +public slots: + void abort(); + void Complete(const QDBusObjectPath &in0); + void Error(const QDBusObjectPath &in0, const QString &in1); + void Progress(const QDBusObjectPath &in0, qulonglong in1); + void Release(); + QString Request(const QDBusObjectPath &in0); + void sendReturned(QDBusPendingCallWatcher*); + +}; + +QT_END_NAMESPACE + +#endif // QBLUETOOTHTRANSFERREPLY_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qbluetoothtransferreply_osx_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qbluetoothtransferreply_osx_p.h new file mode 100644 index 0000000..e7b6f68 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qbluetoothtransferreply_osx_p.h @@ -0,0 +1,101 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QBLUETOOTHTRANSFERREPLY_OSX_P_H +#define QBLUETOOTHTRANSFERREPLY_OSX_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include "qbluetoothservicediscoveryagent.h" +#include "qbluetoothtransferreply.h" + +#include +#include + +QT_BEGIN_NAMESPACE + +class QBluetoothTransferReplyOSXPrivate; +class QBluetoothServiceInfo; +class QBluetoothAddress; +class QIODevice; + +class Q_BLUETOOTH_EXPORT QBluetoothTransferReplyOSX : public QBluetoothTransferReply +{ + Q_OBJECT + +public: + QBluetoothTransferReplyOSX(QIODevice *input, const QBluetoothTransferRequest &request, + QBluetoothTransferManager *parent); + ~QBluetoothTransferReplyOSX(); + + TransferError error() const override; + QString errorString() const override; + + bool isFinished() const override; + bool isRunning() const override; + +Q_SIGNALS: + void error(QBluetoothTransferReply::TransferError lastError); + +public slots: + bool abort(); + +private slots: + bool start(); + + void serviceDiscoveryFinished(); + void serviceDiscoveryError(QBluetoothServiceDiscoveryAgent::Error error); + +private: + // OS X private data (not to be seen by moc). + QScopedPointer osx_d_ptr; +}; + +QT_END_NAMESPACE + +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qbluetoothtransferreply_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qbluetoothtransferreply_p.h new file mode 100644 index 0000000..375a89a --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qbluetoothtransferreply_p.h @@ -0,0 +1,70 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QBLUETOOTHTRANSFERREPLY_P_H +#define QBLUETOOTHTRANSFERREPLY_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include "qbluetoothtransferreply.h" + +QT_BEGIN_NAMESPACE + +class Q_BLUETOOTH_EXPORT QBluetoothTransferReplyPrivate +{ +public: + QBluetoothTransferReplyPrivate(); + + QBluetoothTransferManager *m_manager = nullptr; + + QBluetoothTransferRequest m_request; +}; + +QT_END_NAMESPACE + +#endif // QBLUETOOTHTRANSFERREPLY_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qbluetoothtransferrequest_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qbluetoothtransferrequest_p.h new file mode 100644 index 0000000..410a970 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qbluetoothtransferrequest_p.h @@ -0,0 +1,72 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QBLUETOOTHTRANSFERREQUESTPRIVATE_H +#define QBLUETOOTHTRANSFERREQUESTPRIVATE_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include "qbluetoothtransferrequest.h" + +QT_BEGIN_NAMESPACE + +class QBluetoothAddress; + +class QBluetoothTransferRequestPrivate +{ +public: + QBluetoothTransferRequestPrivate(); + + QBluetoothAddress m_address; + QMap m_parameters; +}; + +QT_END_NAMESPACE + +#endif // QBLUETOOTHTRANSFERREQUESTPRIVATE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qleadvertiser_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qleadvertiser_p.h new file mode 100644 index 0000000..9b8ffbb --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qleadvertiser_p.h @@ -0,0 +1,154 @@ +/*************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QLEADVERTISER_P_H +#define QLEADVERTISER_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include "qlowenergyadvertisingdata.h" +#include "qlowenergyadvertisingparameters.h" + +#if QT_CONFIG(bluez) +#include "bluez/bluez_data_p.h" +#endif + +#include +#include + +QT_BEGIN_NAMESPACE + +class QLeAdvertiser : public QObject +{ + Q_OBJECT +public: + void startAdvertising() { doStartAdvertising(); } + void stopAdvertising() { doStopAdvertising(); } + +signals: + void errorOccurred(); + +public: + QLeAdvertiser(const QLowEnergyAdvertisingParameters ¶ms, + const QLowEnergyAdvertisingData &advData, + const QLowEnergyAdvertisingData &responseData, QObject *parent) + : QObject(parent), m_params(params), m_advData(advData), m_responseData(responseData) {} + virtual ~QLeAdvertiser() { } + +protected: + const QLowEnergyAdvertisingParameters ¶meters() const { return m_params; } + const QLowEnergyAdvertisingData &advertisingData() const { return m_advData; } + const QLowEnergyAdvertisingData &scanResponseData() const { return m_responseData; } + +private: + virtual void doStartAdvertising() = 0; + virtual void doStopAdvertising() = 0; + + const QLowEnergyAdvertisingParameters m_params; + const QLowEnergyAdvertisingData m_advData; + const QLowEnergyAdvertisingData m_responseData; +}; + + +#if QT_CONFIG(bluez) +struct AdvData; +struct AdvParams; +class HciManager; + +class QLeAdvertiserBluez : public QLeAdvertiser +{ +public: + QLeAdvertiserBluez(const QLowEnergyAdvertisingParameters ¶ms, + const QLowEnergyAdvertisingData &advertisingData, + const QLowEnergyAdvertisingData &scanResponseData, HciManager &hciManager, + QObject *parent = nullptr); + ~QLeAdvertiserBluez() override; + +private: + void doStartAdvertising() override; + void doStopAdvertising() override; + + void setPowerLevel(AdvData &advData); + void setFlags(AdvData &advData); + void setServicesData(const QLowEnergyAdvertisingData &src, AdvData &dest); + void setManufacturerData(const QLowEnergyAdvertisingData &src, AdvData &dest); + void setLocalNameData(const QLowEnergyAdvertisingData &src, AdvData &dest); + + void queueCommand(OpCodeCommandField ocf, const QByteArray &advertisingData); + void sendNextCommand(); + void queueAdvertisingCommands(); + void queueReadTxPowerLevelCommand(); + void toggleAdvertising(bool enable); + void setAdvertisingParams(); + void setAdvertisingInterval(AdvParams ¶ms); + void setData(bool isScanResponseData); + void setAdvertisingData(); + void setScanResponseData(); + void setWhiteList(); + + void handleCommandCompleted(quint16 opCode, quint8 status, const QByteArray &advertisingData); + void handleError(); + + HciManager &m_hciManager; + + struct Command { + Command() {} + Command(OpCodeCommandField ocf, const QByteArray &data) : ocf(ocf), data(data) { } + OpCodeCommandField ocf; + QByteArray data; + }; + QVector m_pendingCommands; + + quint8 m_powerLevel; + bool m_sendPowerLevel; +}; +#endif // QT_CONFIG(bluez) + +QT_END_NAMESPACE + +#endif // Include guard. diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qlowenergycontroller_android_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qlowenergycontroller_android_p.h new file mode 100644 index 0000000..f05c63c --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qlowenergycontroller_android_p.h @@ -0,0 +1,155 @@ +/**************************************************************************** +** +** Copyright (C) 2017 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QLOWENERGYCONTROLLERPRIVATEANDROID_P_H +#define QLOWENERGYCONTROLLERPRIVATEANDROID_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + + +#include +#include +#include +#include +#include +#include "qlowenergycontroller.h" +#include "qlowenergycontrollerbase_p.h" + +#include +#include "android/lowenergynotificationhub_p.h" + +#include + +QT_BEGIN_NAMESPACE + +class QLowEnergyServiceData; +class QTimer; + +class LowEnergyNotificationHub; + +extern void registerQLowEnergyControllerMetaType(); + +class QLeAdvertiser; + +class QLowEnergyControllerPrivateAndroid final : public QLowEnergyControllerPrivate +{ + Q_OBJECT +public: + QLowEnergyControllerPrivateAndroid(); + ~QLowEnergyControllerPrivateAndroid() override; + + void init() override; + + void connectToDevice() override; + void disconnectFromDevice() override; + + void discoverServices() override; + void discoverServiceDetails(const QBluetoothUuid &service) override; + + void startAdvertising(const QLowEnergyAdvertisingParameters ¶ms, + const QLowEnergyAdvertisingData &advertisingData, + const QLowEnergyAdvertisingData &scanResponseData) override; + void stopAdvertising() override; + + void requestConnectionUpdate(const QLowEnergyConnectionParameters ¶ms) override; + + // read data + void readCharacteristic(const QSharedPointer service, + const QLowEnergyHandle charHandle) override; + void readDescriptor(const QSharedPointer service, + const QLowEnergyHandle charHandle, + const QLowEnergyHandle descriptorHandle) override; + + // write data + void writeCharacteristic(const QSharedPointer service, + const QLowEnergyHandle charHandle, + const QByteArray &newValue, QLowEnergyService::WriteMode mode) override; + void writeDescriptor(const QSharedPointer service, + const QLowEnergyHandle charHandle, + const QLowEnergyHandle descriptorHandle, + const QByteArray &newValue) override; + + void addToGenericAttributeList(const QLowEnergyServiceData &service, + QLowEnergyHandle startHandle) override; + +private: + + LowEnergyNotificationHub *hub; + +private slots: + void connectionUpdated(QLowEnergyController::ControllerState newState, + QLowEnergyController::Error errorCode); + void servicesDiscovered(QLowEnergyController::Error errorCode, + const QString &foundServices); + void serviceDetailsDiscoveryFinished(const QString& serviceUuid, + int startHandle, int endHandle); + void characteristicRead(const QBluetoothUuid &serviceUuid, int handle, + const QBluetoothUuid &charUuid, int properties, + const QByteArray& data); + void descriptorRead(const QBluetoothUuid &serviceUuid, const QBluetoothUuid &charUuid, + int handle, const QBluetoothUuid &descUuid, const QByteArray &data); + void characteristicWritten(int charHandle, const QByteArray &data, + QLowEnergyService::ServiceError errorCode); + void descriptorWritten(int descHandle, const QByteArray &data, + QLowEnergyService::ServiceError errorCode); + void serverDescriptorWritten(const QAndroidJniObject &jniDesc, const QByteArray &newValue); + void characteristicChanged(int charHandle, const QByteArray &data); + void serverCharacteristicChanged(const QAndroidJniObject &jniChar, const QByteArray &newValue); + void serviceError(int attributeHandle, QLowEnergyService::ServiceError errorCode); + void advertisementError(int errorCode); + +private: + void peripheralConnectionUpdated(QLowEnergyController::ControllerState newState, + QLowEnergyController::Error errorCode); + void centralConnectionUpdated(QLowEnergyController::ControllerState newState, + QLowEnergyController::Error errorCode); +}; + +QT_END_NAMESPACE + +#endif // QLOWENERGYCONTROLLERPRIVATEANDROID_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qlowenergycontroller_bluez_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qlowenergycontroller_bluez_p.h new file mode 100644 index 0000000..65517cb --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qlowenergycontroller_bluez_p.h @@ -0,0 +1,357 @@ +/**************************************************************************** +** +** Copyright (C) 2017 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QLOWENERGYCONTROLLERBLUEZ_P_H +#define QLOWENERGYCONTROLLERBLUEZ_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include +#include +#include "qlowenergycontroller.h" +#include "qlowenergycontrollerbase_p.h" + +#include +#include + +QT_BEGIN_NAMESPACE + +class QLowEnergyServiceData; +class QTimer; + +class HciManager; +class LeCmacCalculator; +class QSocketNotifier; +class RemoteDeviceManager; + +extern void registerQLowEnergyControllerMetaType(); + +class QLeAdvertiser; + +class QLowEnergyControllerPrivateBluez final: public QLowEnergyControllerPrivate +{ + Q_OBJECT +public: + QLowEnergyControllerPrivateBluez(); + ~QLowEnergyControllerPrivateBluez() override; + + void init() override; + + void connectToDevice() override; + void disconnectFromDevice() override; + + void discoverServices() override; + void discoverServiceDetails(const QBluetoothUuid &service) override; + + void startAdvertising(const QLowEnergyAdvertisingParameters ¶ms, + const QLowEnergyAdvertisingData &advertisingData, + const QLowEnergyAdvertisingData &scanResponseData) override; + void stopAdvertising() override; + + void requestConnectionUpdate(const QLowEnergyConnectionParameters ¶ms) override; + + // read data + void readCharacteristic(const QSharedPointer service, + const QLowEnergyHandle charHandle) override; + void readDescriptor(const QSharedPointer service, + const QLowEnergyHandle charHandle, + const QLowEnergyHandle descriptorHandle) override; + + // write data + void writeCharacteristic(const QSharedPointer service, + const QLowEnergyHandle charHandle, + const QByteArray &newValue, QLowEnergyService::WriteMode mode) override; + void writeDescriptor(const QSharedPointer service, + const QLowEnergyHandle charHandle, + const QLowEnergyHandle descriptorHandle, + const QByteArray &newValue) override; + + void addToGenericAttributeList(const QLowEnergyServiceData &service, + QLowEnergyHandle startHandle) override; + + struct Attribute { + Attribute() : handle(0) {} + + QLowEnergyHandle handle; + QLowEnergyHandle groupEndHandle; + QLowEnergyCharacteristic::PropertyTypes properties; + QBluetooth::AttAccessConstraints readConstraints; + QBluetooth::AttAccessConstraints writeConstraints; + QBluetoothUuid type; + QByteArray value; + int minLength; + int maxLength; + }; + QVector localAttributes; + +private: + quint16 connectionHandle = 0; + QBluetoothSocket *l2cpSocket = nullptr; + struct Request { + quint8 command; + QByteArray payload; + // TODO reference below is ugly but until we know all commands and their + // requirements this is WIP + QVariant reference; + QVariant reference2; + }; + QQueue openRequests; + + struct WriteRequest { + WriteRequest() {} + WriteRequest(quint16 h, quint16 o, const QByteArray &v) + : handle(h), valueOffset(o), value(v) {} + quint16 handle; + quint16 valueOffset; + QByteArray value; + }; + QVector openPrepareWriteRequests; + + // Invariant: !scheduledIndications.isEmpty => indicationInFlight == true + QVector scheduledIndications; + bool indicationInFlight = false; + + struct TempClientConfigurationData { + TempClientConfigurationData(QLowEnergyServicePrivate::DescData *dd = nullptr, + QLowEnergyHandle chHndl = 0, QLowEnergyHandle coHndl = 0) + : descData(dd), charValueHandle(chHndl), configHandle(coHndl) {} + + QLowEnergyServicePrivate::DescData *descData; + QLowEnergyHandle charValueHandle; + QLowEnergyHandle configHandle; + }; + + struct ClientConfigurationData { + ClientConfigurationData(QLowEnergyHandle chHndl = 0, QLowEnergyHandle coHndl = 0, + quint16 val = 0) + : charValueHandle(chHndl), configHandle(coHndl), configValue(val) {} + + QLowEnergyHandle charValueHandle; + QLowEnergyHandle configHandle; + quint16 configValue; + bool charValueWasUpdated = false; + }; + QHash> clientConfigData; + + struct SigningData { + SigningData() = default; + SigningData(const quint128 &csrk, quint32 signCounter = quint32(-1)) + : key(csrk), counter(signCounter) {} + + quint128 key; + quint32 counter = quint32(-1); + }; + QHash signingData; + LeCmacCalculator *cmacCalculator = nullptr; + + bool requestPending; + quint16 mtuSize; + int securityLevelValue; + bool encryptionChangePending; + bool receivedMtuExchangeRequest = false; + + HciManager *hciManager = nullptr; + QLeAdvertiser *advertiser = nullptr; + QSocketNotifier *serverSocketNotifier = nullptr; + QTimer *requestTimer = nullptr; + RemoteDeviceManager* device1Manager = nullptr; + + /* + Defines the maximum number of milliseconds the implementation will + wait for requests that require a response. + + This addresses the problem that some non-conformant BTLE devices + do not implement the request/response system properly. In such cases + the queue system would hang forever. + + Once timeout has been triggered we gracefully continue with the next request. + Depending on the type of the timed out ATT command we either ignore it + or artifically trigger an error response to ensure the API gives the + appropriate response. Potentially this can cause problems when the + response for the dropped requests arrives very late. That's why a big warning + is printed about the compromised state when a timeout is triggered. + */ + int gattRequestTimeout = 20000; + + void handleConnectionRequest(); + void closeServerSocket(); + + bool isBonded() const; + QVector gatherClientConfigData(); + void storeClientConfigurations(); + void restoreClientConfigurations(); + + enum SigningKeyType { LocalSigningKey, RemoteSigningKey }; + void loadSigningDataIfNecessary(SigningKeyType keyType); + void storeSignCounter(SigningKeyType keyType) const; + QString signingKeySettingsGroup(SigningKeyType keyType) const; + QString keySettingsFilePath() const; + + void sendPacket(const QByteArray &packet); + void sendNextPendingRequest(); + void processReply(const Request &request, const QByteArray &reply); + + void sendReadByGroupRequest(QLowEnergyHandle start, QLowEnergyHandle end, + quint16 type); + void sendReadByTypeRequest(QSharedPointer serviceData, + QLowEnergyHandle nextHandle, quint16 attributeType); + void sendReadValueRequest(QLowEnergyHandle attributeHandle, bool isDescriptor); + void readServiceValues(const QBluetoothUuid &service, + bool readCharacteristics); + void readServiceValuesByOffset(uint handleData, quint16 offset, + bool isLastValue); + + void discoverServiceDescriptors(const QBluetoothUuid &serviceUuid); + void discoverNextDescriptor(QSharedPointer serviceData, + const QList pendingCharHandles, + QLowEnergyHandle startingHandle); + void processUnsolicitedReply(const QByteArray &msg); + void exchangeMTU(); + bool setSecurityLevel(int level); + int securityLevel() const; + void sendExecuteWriteRequest(const QLowEnergyHandle attrHandle, + const QByteArray &newValue, + bool isCancelation); + void sendNextPrepareWriteRequest(const QLowEnergyHandle handle, + const QByteArray &newValue, quint16 offset); + bool increaseEncryptLevelfRequired(quint8 errorCode); + + void resetController(); + + void handleAdvertisingError(); + + bool checkPacketSize(const QByteArray &packet, int minSize, int maxSize = -1); + bool checkHandle(const QByteArray &packet, QLowEnergyHandle handle); + bool checkHandlePair(quint8 request, QLowEnergyHandle startingHandle, + QLowEnergyHandle endingHandle); + + void handleExchangeMtuRequest(const QByteArray &packet); + void handleFindInformationRequest(const QByteArray &packet); + void handleFindByTypeValueRequest(const QByteArray &packet); + void handleReadByTypeRequest(const QByteArray &packet); + void handleReadRequest(const QByteArray &packet); + void handleReadBlobRequest(const QByteArray &packet); + void handleReadMultipleRequest(const QByteArray &packet); + void handleReadByGroupTypeRequest(const QByteArray &packet); + void handleWriteRequestOrCommand(const QByteArray &packet); + void handlePrepareWriteRequest(const QByteArray &packet); + void handleExecuteWriteRequest(const QByteArray &packet); + + void sendErrorResponse(quint8 request, quint16 handle, quint8 code); + + using ElemWriter = std::function; + void sendListResponse(const QByteArray &packetStart, int elemSize, + const QVector &attributes, const ElemWriter &elemWriter); + + void sendNotification(QLowEnergyHandle handle); + void sendIndication(QLowEnergyHandle handle); + void sendNotificationOrIndication(quint8 opCode, QLowEnergyHandle handle); + void sendNextIndication(); + + void ensureUniformAttributes(QVector &attributes, const std::function &getSize); + void ensureUniformUuidSizes(QVector &attributes); + void ensureUniformValueSizes(QVector &attributes); + + using AttributePredicate = std::function; + QVector getAttributes(QLowEnergyHandle startHandle, QLowEnergyHandle endHandle, + const AttributePredicate &attributePredicate = [](const Attribute &) { return true; }); + + int checkPermissions(const Attribute &attr, QLowEnergyCharacteristic::PropertyType type); + int checkReadPermissions(const Attribute &attr); + int checkReadPermissions(QVector &attributes); + + bool verifyMac(const QByteArray &message, const quint128 &csrk, quint32 signCounter, + quint64 expectedMac); + + void updateLocalAttributeValue( + QLowEnergyHandle handle, + const QByteArray &value, + QLowEnergyCharacteristic &characteristic, + QLowEnergyDescriptor &descriptor); + + void writeCharacteristicForPeripheral( + QLowEnergyServicePrivate::CharData &charData, + const QByteArray &newValue); + void writeCharacteristicForCentral(const QSharedPointer &service, + QLowEnergyHandle charHandle, + QLowEnergyHandle valueHandle, + const QByteArray &newValue, + QLowEnergyService::WriteMode mode); + + void writeDescriptorForPeripheral( + const QSharedPointer &service, + const QLowEnergyHandle charHandle, + const QLowEnergyHandle descriptorHandle, + const QByteArray &newValue); + void writeDescriptorForCentral( + const QLowEnergyHandle charHandle, + const QLowEnergyHandle descriptorHandle, + const QByteArray &newValue); + + void restartRequestTimer(); + void establishL2cpClientSocket(); + void createServicesForCentralIfRequired(); + +private slots: + void l2cpConnected(); + void l2cpDisconnected(); + void l2cpErrorChanged(QBluetoothSocket::SocketError); + void l2cpReadyRead(); + void encryptionChangedEvent(const QBluetoothAddress&, bool); + void handleGattRequestTimeout(); + void activeConnectionTerminationDone(); +}; + +Q_DECLARE_TYPEINFO(QLowEnergyControllerPrivateBluez::Attribute, Q_MOVABLE_TYPE); + +QT_END_NAMESPACE + +#endif //QLOWENERGYCONTROLLERBLUEZ_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qlowenergycontroller_bluezdbus_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qlowenergycontroller_bluezdbus_p.h new file mode 100644 index 0000000..3215b08 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qlowenergycontroller_bluezdbus_p.h @@ -0,0 +1,197 @@ +/**************************************************************************** +** +** Copyright (C) 2017 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QLOWENERGYCONTROLLERPRIVATEDBUS_P_H +#define QLOWENERGYCONTROLLERPRIVATEDBUS_P_H + + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include "qlowenergycontroller.h" +#include "qlowenergycontrollerbase_p.h" + +#include + +class OrgBluezAdapter1Interface; +class OrgBluezBattery1Interface; +class OrgBluezDevice1Interface; +class OrgBluezGattCharacteristic1Interface; +class OrgBluezGattDescriptor1Interface; +class OrgBluezGattService1Interface; +class OrgFreedesktopDBusObjectManagerInterface; +class OrgFreedesktopDBusPropertiesInterface; + +QT_BEGIN_NAMESPACE + +class QDBusPendingCallWatcher; + +class QLowEnergyControllerPrivateBluezDBus final : public QLowEnergyControllerPrivate +{ + Q_OBJECT +public: + QLowEnergyControllerPrivateBluezDBus(); + ~QLowEnergyControllerPrivateBluezDBus() override; + + void init() override; + void connectToDevice() override; + void disconnectFromDevice() override; + + void discoverServices() override; + void discoverServiceDetails(const QBluetoothUuid &/*service*/) override; + + void readCharacteristic( + const QSharedPointer /*service*/, + const QLowEnergyHandle /*charHandle*/) override; + void readDescriptor( + const QSharedPointer /*service*/, + const QLowEnergyHandle /*charHandle*/, + const QLowEnergyHandle /*descriptorHandle*/) override; + + void writeCharacteristic( + const QSharedPointer /*service*/, + const QLowEnergyHandle /*charHandle*/, + const QByteArray &/*newValue*/, + QLowEnergyService::WriteMode /*writeMode*/) override; + void writeDescriptor( + const QSharedPointer /*service*/, + const QLowEnergyHandle /*charHandle*/, + const QLowEnergyHandle /*descriptorHandle*/, + const QByteArray &/*newValue*/) override; + + void startAdvertising( + const QLowEnergyAdvertisingParameters &/* params */, + const QLowEnergyAdvertisingData &/* advertisingData */, + const QLowEnergyAdvertisingData &/* scanResponseData */) override; + void stopAdvertising() override; + + void requestConnectionUpdate( + const QLowEnergyConnectionParameters & /* params */) override; + void addToGenericAttributeList( + const QLowEnergyServiceData &/* service */, + QLowEnergyHandle /* startHandle */) override; + + QLowEnergyService *addServiceHelper(const QLowEnergyServiceData &service) override; + + +private: + void connectToDeviceHelper(); + void resetController(); + + void scheduleNextJob(); + +private slots: + void devicePropertiesChanged(const QString &interface, const QVariantMap &changedProperties, + const QStringList &/*invalidatedProperties*/); + void characteristicPropertiesChanged(QLowEnergyHandle charHandle, const QString &interface, + const QVariantMap &changedProperties, + const QStringList &invalidatedProperties); + void interfacesRemoved(const QDBusObjectPath &objectPath, const QStringList &interfaces); + + void onCharReadFinished(QDBusPendingCallWatcher *call); + void onDescReadFinished(QDBusPendingCallWatcher *call); + void onCharWriteFinished(QDBusPendingCallWatcher *call); + void onDescWriteFinished(QDBusPendingCallWatcher *call); +private: + OrgBluezAdapter1Interface* adapter{}; + OrgBluezDevice1Interface* device{}; + OrgFreedesktopDBusObjectManagerInterface* managerBluez{}; + OrgFreedesktopDBusPropertiesInterface* deviceMonitor{}; + + bool pendingConnect = false; + bool disconnectSignalRequired = false; + + struct GattCharacteristic + { + QSharedPointer characteristic; + QSharedPointer charMonitor; + QVector> descriptors; + }; + + struct GattService + { + QString servicePath; + QVector characteristics; + + bool hasBatteryService = false; + QSharedPointer batteryInterface; + }; + + QHash dbusServices; + QLowEnergyHandle runningHandle = 1; + + struct GattJob { + enum JobFlag { + Unset = 0x00, + CharRead = 0x01, + CharWrite = 0x02, + DescRead = 0x04, + DescWrite = 0x08, + ServiceDiscovery = 0x10, + LastServiceDiscovery = 0x20 + }; + Q_DECLARE_FLAGS(JobFlags, JobFlag) + + JobFlags flags = GattJob::Unset; + QLowEnergyHandle handle; + QByteArray value; + QLowEnergyService::WriteMode writeMode = QLowEnergyService::WriteWithResponse; + QSharedPointer service; + }; + + QVector jobs; + bool jobPending = false; + + void prepareNextJob(); + void discoverBatteryServiceDetails(GattService &dbusData, + QSharedPointer serviceData); + void executeClose(QLowEnergyController::Error newError); +}; + +QT_END_NAMESPACE + +#endif // QLOWENERGYCONTROLLERPRIVATEDBUS_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qlowenergycontroller_osx_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qlowenergycontroller_osx_p.h new file mode 100644 index 0000000..da95989 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qlowenergycontroller_osx_p.h @@ -0,0 +1,187 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Copyright (C) 2016 Javier S. Pedro +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ +#ifndef QLOWENERGYCONTROLLER_OSX_P_H +#define QLOWENERGYCONTROLLER_OSX_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include "osx/osxbtperipheralmanager_p.h" +#include "qlowenergyserviceprivate_p.h" +#include "osx/osxbtcentralmanager_p.h" +#include "qlowenergycontrollerbase_p.h" +#include "qlowenergycontroller.h" +#include "osx/osxbtnotifier_p.h" +#include "osx/osxbtutility_p.h" +#include "qbluetoothaddress.h" +#include "qbluetoothuuid.h" + +#include +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +namespace OSXBluetooth +{ + +class LECBManagerNotifier; + +} + +class QByteArray; + +// Suffix 'OSX' is a legacy, it's also iOS. +class QLowEnergyControllerPrivateOSX : public QLowEnergyControllerPrivate +{ + friend class QLowEnergyController; + friend class QLowEnergyService; + + Q_OBJECT +public: + QLowEnergyControllerPrivateOSX(QLowEnergyController::Role role, QLowEnergyController *q, + const QBluetoothDeviceInfo &info = QBluetoothDeviceInfo()); + ~QLowEnergyControllerPrivateOSX(); + + bool isValid() const; + +private Q_SLOTS: + void _q_connected(); + void _q_disconnected(); + + void _q_serviceDiscoveryFinished(); + void _q_serviceDetailsDiscoveryFinished(QSharedPointer service); + void _q_servicesWereModified(); + + void _q_characteristicRead(QLowEnergyHandle charHandle, const QByteArray &value); + void _q_characteristicWritten(QLowEnergyHandle charHandle, const QByteArray &value); + void _q_characteristicUpdated(QLowEnergyHandle charHandle, const QByteArray &value); + void _q_descriptorRead(QLowEnergyHandle descHandle, const QByteArray &value); + void _q_descriptorWritten(QLowEnergyHandle charHandle, const QByteArray &value); + void _q_notificationEnabled(QLowEnergyHandle charHandle, bool enabled); + + void _q_LEnotSupported(); + void _q_CBManagerError(QLowEnergyController::Error error); + void _q_CBManagerError(const QBluetoothUuid &serviceUuid, QLowEnergyController::Error error); + void _q_CBManagerError(const QBluetoothUuid &serviceUuid, QLowEnergyService::ServiceError error); + +private: + void connectToDevice(); + void discoverServices(); + void discoverServiceDetails(const QBluetoothUuid &serviceUuid); + + void setNotifyValue(QSharedPointer service, + QLowEnergyHandle charHandle, const QByteArray &newValue); + + void readCharacteristic(QSharedPointer service, + QLowEnergyHandle charHandle); + void writeCharacteristic(QSharedPointer service, + QLowEnergyHandle charHandle, const QByteArray &newValue, + QLowEnergyService::WriteMode mode); + + quint16 updateValueOfCharacteristic(QLowEnergyHandle charHandle, + const QByteArray &value, + bool appendValue); + + void readDescriptor(QSharedPointer service, + QLowEnergyHandle charHandle); + void writeDescriptor(QSharedPointer service, + QLowEnergyHandle descriptorHandle, + const QByteArray &newValue); + + + quint16 updateValueOfDescriptor(QLowEnergyHandle charHandle, + QLowEnergyHandle descHandle, + const QByteArray &value, + bool appendValue); + + // 'Lookup' functions: + QSharedPointer serviceForHandle(QLowEnergyHandle serviceHandle); + QLowEnergyCharacteristic characteristicForHandle(QLowEnergyHandle charHandle); + QLowEnergyDescriptor descriptorForHandle(QLowEnergyHandle descriptorHandle); + + void setErrorDescription(QLowEnergyController::Error errorCode); + void invalidateServices(); + bool connectSlots(OSXBluetooth::LECBManagerNotifier *notifier); + + QLowEnergyController *q_ptr; + QBluetoothUuid deviceUuid; + QString deviceName; + + QString errorString; + QLowEnergyController::Error lastError; + + QBluetoothAddress localAddress; + QBluetoothAddress remoteAddress; + + QLowEnergyController::Role role; + + QLowEnergyController::ControllerState controllerState; + QLowEnergyController::RemoteAddressType addressType; + + typedef QT_MANGLE_NAMESPACE(OSXBTCentralManager) ObjCCentralManager; + typedef OSXBluetooth::ObjCScopedPointer CentralManager; + CentralManager centralManager; + +#ifndef Q_OS_TVOS + typedef QT_MANGLE_NAMESPACE(OSXBTPeripheralManager) ObjCPeripheralManager; + typedef OSXBluetooth::ObjCScopedPointer PeripheralManager; + PeripheralManager peripheralManager; +#endif + + typedef QMap > ServiceMap; + typedef ServiceMap::const_iterator ConstServiceIterator; + typedef ServiceMap::iterator ServiceIterator; + ServiceMap discoveredServices; +}; + +QT_END_NAMESPACE + +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qlowenergycontroller_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qlowenergycontroller_p.h new file mode 100644 index 0000000..54a49b5 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qlowenergycontroller_p.h @@ -0,0 +1,112 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QLOWENERGYCONTROLLERPRIVATE_P_H +#define QLOWENERGYCONTROLLERPRIVATE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include +#include +#include "qlowenergycontroller.h" +#include "qlowenergycontrollerbase_p.h" + +QT_BEGIN_NAMESPACE + +class QLowEnergyServiceData; + +extern void registerQLowEnergyControllerMetaType(); + +class QLowEnergyControllerPrivateCommon final : public QLowEnergyControllerPrivate +{ + Q_OBJECT +public: + QLowEnergyControllerPrivateCommon(); + ~QLowEnergyControllerPrivateCommon() override; + + void init() override; + + void connectToDevice() override; + void disconnectFromDevice() override; + + void discoverServices() override; + void discoverServiceDetails(const QBluetoothUuid &service) override; + + void startAdvertising(const QLowEnergyAdvertisingParameters ¶ms, + const QLowEnergyAdvertisingData &advertisingData, + const QLowEnergyAdvertisingData &scanResponseData) override; + void stopAdvertising() override; + + void requestConnectionUpdate(const QLowEnergyConnectionParameters ¶ms) override; + + // read data + void readCharacteristic(const QSharedPointer service, + const QLowEnergyHandle charHandle) override; + void readDescriptor(const QSharedPointer service, + const QLowEnergyHandle charHandle, + const QLowEnergyHandle descriptorHandle) override; + + // write data + void writeCharacteristic(const QSharedPointer service, + const QLowEnergyHandle charHandle, + const QByteArray &newValue, QLowEnergyService::WriteMode mode) override; + void writeDescriptor(const QSharedPointer service, + const QLowEnergyHandle charHandle, + const QLowEnergyHandle descriptorHandle, + const QByteArray &newValue) override; + + void addToGenericAttributeList(const QLowEnergyServiceData &service, + QLowEnergyHandle startHandle) override; +}; + +QT_END_NAMESPACE + +#endif // QLOWENERGYCONTROLLERPRIVATE_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qlowenergycontroller_winrt_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qlowenergycontroller_winrt_p.h new file mode 100644 index 0000000..783a71f --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qlowenergycontroller_winrt_p.h @@ -0,0 +1,149 @@ +/**************************************************************************** +** +** Copyright (C) 2017 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QLOWENERGYCONTROLLERPRIVATEWINRT_P_H +#define QLOWENERGYCONTROLLERPRIVATEWINRT_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include +#include +#include +#include "qlowenergycontroller.h" +#include "qlowenergycontrollerbase_p.h" + +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +class QLowEnergyServiceData; +class QTimer; +class QWinRTLowEnergyServiceHandler; + +extern void registerQLowEnergyControllerMetaType(); + +class QLowEnergyControllerPrivateWinRT final : public QLowEnergyControllerPrivate +{ + Q_OBJECT +public: + QLowEnergyControllerPrivateWinRT(); + ~QLowEnergyControllerPrivateWinRT() override; + + void init() override; + + void connectToDevice() override; + void disconnectFromDevice() override; + + void discoverServices() override; + void discoverServiceDetails(const QBluetoothUuid &service) override; + + void startAdvertising(const QLowEnergyAdvertisingParameters ¶ms, + const QLowEnergyAdvertisingData &advertisingData, + const QLowEnergyAdvertisingData &scanResponseData) override; + void stopAdvertising() override; + + void requestConnectionUpdate(const QLowEnergyConnectionParameters ¶ms) override; + + // read data + void readCharacteristic(const QSharedPointer service, + const QLowEnergyHandle charHandle) override; + void readDescriptor(const QSharedPointer service, + const QLowEnergyHandle charHandle, + const QLowEnergyHandle descriptorHandle) override; + + // write data + void writeCharacteristic(const QSharedPointer service, + const QLowEnergyHandle charHandle, + const QByteArray &newValue, QLowEnergyService::WriteMode mode) override; + void writeDescriptor(const QSharedPointer service, + const QLowEnergyHandle charHandle, + const QLowEnergyHandle descriptorHandle, + const QByteArray &newValue) override; + + void addToGenericAttributeList(const QLowEnergyServiceData &service, + QLowEnergyHandle startHandle) override; + +private slots: + void characteristicChanged(int charHandle, const QByteArray &data); + +private: + Microsoft::WRL::ComPtr mDevice; + EventRegistrationToken mStatusChangedToken; + struct ValueChangedEntry { + ValueChangedEntry() {} + ValueChangedEntry(Microsoft::WRL::ComPtr c, + EventRegistrationToken t) + : characteristic(c) + , token(t) + { + } + + Microsoft::WRL::ComPtr characteristic; + EventRegistrationToken token; + }; + QVector mValueChangedTokens; + + Microsoft::WRL::ComPtr getNativeService(const QBluetoothUuid &serviceUuid); + Microsoft::WRL::ComPtr getNativeCharacteristic(const QBluetoothUuid &serviceUuid, const QBluetoothUuid &charUuid); + + void registerForValueChanges(const QBluetoothUuid &serviceUuid, const QBluetoothUuid &charUuid); + + void obtainIncludedServices(QSharedPointer servicePointer, + Microsoft::WRL::ComPtr nativeService); + +}; + +QT_END_NAMESPACE + +#endif // QLOWENERGYCONTROLLERPRIVATEWINRT_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qlowenergycontrollerbase_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qlowenergycontrollerbase_p.h new file mode 100644 index 0000000..a8d1c67 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qlowenergycontrollerbase_p.h @@ -0,0 +1,186 @@ +/**************************************************************************** +** +** Copyright (C) 2017 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QLOWENERGYCONTROLLERPRIVATEBASE_P_H +#define QLOWENERGYCONTROLLERPRIVATEBASE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#if defined(QT_OSX_BLUETOOTH) || defined(QT_IOS_BLUETOOTH) + +#include +#include + +QT_BEGIN_NAMESPACE + +class QLowEnergyControllerPrivate : public QObject +{ +public: + // This class is required to make shared pointer machinery and + // moc (== Obj-C syntax) happy on both OS X and iOS. +}; + +QT_END_NAMESPACE + +#else + +#include +#include + +#include + +#include "qlowenergyserviceprivate_p.h" + +QT_BEGIN_NAMESPACE + +typedef QMap > ServiceDataMap; + +class QLowEnergyControllerPrivate : public QObject +{ + Q_OBJECT +public: + // This class is required to enable selection of multiple + // alternative QLowEnergyControllerPrivate implementations on BlueZ. + // Bluez has a low level ATT protocol stack implementation and a DBus + // implementation. + + QLowEnergyControllerPrivate(); + virtual ~QLowEnergyControllerPrivate(); + + // interface definition + virtual void init() = 0; + virtual void connectToDevice() = 0; + virtual void disconnectFromDevice() = 0; + + virtual void discoverServices() = 0; + virtual void discoverServiceDetails(const QBluetoothUuid &/*service*/) = 0; + + virtual void readCharacteristic( + const QSharedPointer /*service*/, + const QLowEnergyHandle /*charHandle*/) = 0; + virtual void readDescriptor( + const QSharedPointer /*service*/, + const QLowEnergyHandle /*charHandle*/, + const QLowEnergyHandle /*descriptorHandle*/) = 0; + + virtual void writeCharacteristic( + const QSharedPointer /*service*/, + const QLowEnergyHandle /*charHandle*/, + const QByteArray &/*newValue*/, + QLowEnergyService::WriteMode /*writeMode*/) = 0; + virtual void writeDescriptor( + const QSharedPointer /*service*/, + const QLowEnergyHandle /*charHandle*/, + const QLowEnergyHandle /*descriptorHandle*/, + const QByteArray &/*newValue*/) = 0; + + virtual void startAdvertising( + const QLowEnergyAdvertisingParameters &/* params */, + const QLowEnergyAdvertisingData &/* advertisingData */, + const QLowEnergyAdvertisingData &/* scanResponseData */) = 0; + virtual void stopAdvertising() = 0; + + virtual void requestConnectionUpdate( + const QLowEnergyConnectionParameters & /* params */) = 0; + virtual void addToGenericAttributeList( + const QLowEnergyServiceData &/* service */, + QLowEnergyHandle /* startHandle */) = 0; + + + virtual QLowEnergyService *addServiceHelper( + const QLowEnergyServiceData &service); + + + // common backend methods + bool isValidLocalAdapter(); + void setError(QLowEnergyController::Error newError); + void setState(QLowEnergyController::ControllerState newState); + + // public variables + QLowEnergyController::Role role; + QLowEnergyController::RemoteAddressType addressType; + + // list of all found service uuids on remote device + ServiceDataMap serviceList; + // list of all found service uuids on local peripheral device + ServiceDataMap localServices; + + //common helper functions + QSharedPointer serviceForHandle(QLowEnergyHandle handle); + QLowEnergyCharacteristic characteristicForHandle(QLowEnergyHandle handle); + QLowEnergyDescriptor descriptorForHandle(QLowEnergyHandle handle); + quint16 updateValueOfCharacteristic(QLowEnergyHandle charHandle, + const QByteArray &value, + bool appendValue); + quint16 updateValueOfDescriptor(QLowEnergyHandle charHandle, + QLowEnergyHandle descriptorHandle, + const QByteArray &value, + bool appendValue); + void invalidateServices(); + +protected: + QLowEnergyController::ControllerState state = QLowEnergyController::UnconnectedState; + QLowEnergyController::Error error = QLowEnergyController::NoError; + QString errorString; + + QBluetoothAddress remoteDevice; + QBluetoothAddress localAdapter; + + QLowEnergyHandle lastLocalHandle{}; + + QString remoteName; // device name of the remote + + Q_DECLARE_PUBLIC(QLowEnergyController) + QLowEnergyController *q_ptr; +}; + +QT_END_NAMESPACE + +#endif //defined(QT_OSX_BLUETOOTH) || defined(QT_IOS_BLUETOOTH) + +#endif // QLOWENERGYCONTROLLERPRIVATEBASE_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qlowenergyserviceprivate_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qlowenergyserviceprivate_p.h new file mode 100644 index 0000000..fb4163a --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qlowenergyserviceprivate_p.h @@ -0,0 +1,141 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QLOWENERGYSERVICEPRIVATE_P_H +#define QLOWENERGYSERVICEPRIVATE_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include +#include + +#if defined(QT_ANDROID_BLUETOOTH) +#include +#endif + +QT_BEGIN_NAMESPACE + +class QLowEnergyControllerPrivate; + +class QLowEnergyServicePrivate : public QObject +{ + Q_OBJECT +public: + explicit QLowEnergyServicePrivate(QObject *parent = nullptr); + ~QLowEnergyServicePrivate(); + + struct DescData { + QByteArray value; + QBluetoothUuid uuid; + }; + + struct CharData { + QLowEnergyHandle valueHandle; + QBluetoothUuid uuid; + QLowEnergyCharacteristic::PropertyTypes properties; + QByteArray value; + QHash descriptorList; + }; + + enum GattAttributeTypes { + PrimaryService = 0x2800, + SecondaryService = 0x2801, + IncludeAttribute = 0x2802, + Characteristic = 0x2803 + }; + + void setController(QLowEnergyControllerPrivate* control); + void setError(QLowEnergyService::ServiceError newError); + void setState(QLowEnergyService::ServiceState newState); + +signals: + void stateChanged(QLowEnergyService::ServiceState newState); + void error(QLowEnergyService::ServiceError error); + void characteristicChanged(const QLowEnergyCharacteristic &characteristic, + const QByteArray &newValue); + void characteristicRead(const QLowEnergyCharacteristic &info, + const QByteArray &value); + void characteristicWritten(const QLowEnergyCharacteristic &characteristic, + const QByteArray &newValue); + void descriptorRead(const QLowEnergyDescriptor &info, + const QByteArray &value); + void descriptorWritten(const QLowEnergyDescriptor &descriptor, + const QByteArray &newValue); + +public: + QLowEnergyHandle startHandle; + QLowEnergyHandle endHandle; + + QBluetoothUuid uuid; + QList includedServices; + QLowEnergyService::ServiceTypes type; + QLowEnergyService::ServiceState state; + QLowEnergyService::ServiceError lastError; + + QHash characteristicList; + + QPointer controller; + +#if defined(QT_ANDROID_BLUETOOTH) + // reference to the BluetoothGattService object + QAndroidJniObject androidService; +#endif + +}; + +typedef QHash CharacteristicDataMap; +typedef QHash DescriptorDataMap; + +QT_END_NAMESPACE + +Q_DECLARE_METATYPE(QSharedPointer) + +#endif // QLOWENERGYSERVICEPRIVATE_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qprivatelinearbuffer_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qprivatelinearbuffer_p.h new file mode 100644 index 0000000..6085477 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qprivatelinearbuffer_p.h @@ -0,0 +1,179 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QPRIVATELINEARBUFFER_P_H +#define QPRIVATELINEARBUFFER_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +// This is QIODevice's read buffer, optimised for read(), isEmpty() and getChar() +class QPrivateLinearBuffer +{ +public: + QPrivateLinearBuffer() : len(0), first(0), buf(0), capacity(0) { + } + ~QPrivateLinearBuffer() { + delete [] buf; + } + void clear() { + first = buf; + len = 0; + } + int size() const { + return len; + } + bool isEmpty() const { + return len == 0; + } + void skip(int n) { + if (n >= len) { + clear(); + } else { + len -= n; + first += n; + } + } + int getChar() { + if (len == 0) + return -1; + int ch = uchar(*first); + len--; + first++; + return ch; + } + int read(char* target, int size) { + int r = qMin(size, len); + memcpy(target, first, r); + len -= r; + first += r; + return r; + } + char* reserve(int size) { + makeSpace(size + len, freeSpaceAtEnd); + char* writePtr = first + len; + len += size; + return writePtr; + } + void chop(int size) { + if (size >= len) { + clear(); + } else { + len -= size; + } + } + QByteArray readAll() { + char* f = first; + int l = len; + clear(); + return QByteArray(f, l); + } + int readLine(char* target, int size) { + int r = qMin(size, len); + char* eol = static_cast(memchr(first, '\n', r)); + if (eol) + r = 1+(eol-first); + memcpy(target, first, r); + len -= r; + first += r; + return int(r); + } + bool canReadLine() const { + return memchr(first, '\n', len); + } + void ungetChar(char c) { + if (first == buf) { + // underflow, the existing valid data needs to move to the end of the (potentially bigger) buffer + makeSpace(len+1, freeSpaceAtStart); + } + first--; + len++; + *first = c; + } + void ungetBlock(const char* block, int size) { + if ((first - buf) < size) { + // underflow, the existing valid data needs to move to the end of the (potentially bigger) buffer + makeSpace(len + size, freeSpaceAtStart); + } + first -= size; + len += size; + memcpy(first, block, size); + } + +private: + enum FreeSpacePos {freeSpaceAtStart, freeSpaceAtEnd}; + void makeSpace(size_t required, FreeSpacePos where) { + size_t newCapacity = qMax(capacity, size_t(QPRIVATELINEARBUFFER_BUFFERSIZE)); + while (newCapacity < required) + newCapacity *= 2; + const int moveOffset = (where == freeSpaceAtEnd) ? 0 : int(newCapacity) - len; + if (newCapacity > capacity) { + // allocate more space + char* newBuf = new char[newCapacity]; + memmove(newBuf + moveOffset, first, len); + delete [] buf; + buf = newBuf; + capacity = newCapacity; + } else { + // shift any existing data to make space + memmove(buf + moveOffset, first, len); + } + first = buf + moveOffset; + } + +private: + // length of the unread data + int len; + // start of the unread data + char* first; + // the allocated buffer + char* buf; + // allocated buffer size + size_t capacity; +}; + +#endif // QPRIVATELINEARBUFFER_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qtbluetooth-config_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qtbluetooth-config_p.h new file mode 100644 index 0000000..e0a85a6 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qtbluetooth-config_p.h @@ -0,0 +1,3 @@ +#define QT_FEATURE_bluez_le 1 +#define QT_FEATURE_linux_crypto_api 1 +#define QT_FEATURE_winrt_bt -1 diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qtbluetoothglobal_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qtbluetoothglobal_p.h new file mode 100644 index 0000000..5994459 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/qtbluetoothglobal_p.h @@ -0,0 +1,65 @@ +/**************************************************************************** +** +** Copyright (C) 2017 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtWidgets module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QTBLUETOOTHGLOBAL_P_H +#define QTBLUETOOTHGLOBAL_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include +#include + +QT_BEGIN_NAMESPACE + +#define Q_BLUETOOTH_PRIVATE_EXPORT Q_BLUETOOTH_EXPORT + +QT_END_NAMESPACE + +#endif // QTBLUETOOTHGLOBAL_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/remotedevicemanager_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/remotedevicemanager_p.h new file mode 100644 index 0000000..d177d74 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/remotedevicemanager_p.h @@ -0,0 +1,99 @@ +/**************************************************************************** +** +** Copyright (C) 2017 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef REMOTEDEVICEMANAGER_P_H +#define REMOTEDEVICEMANAGER_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include + +#include +#include +#include + +#include + + +QT_BEGIN_NAMESPACE + +// This API is kept a bit more generic in anticipation of further changes in the future. + +class RemoteDeviceManager : public QObject +{ + Q_OBJECT +public: + enum class JobType + { + JobDisconnectDevice, + }; + + explicit RemoteDeviceManager(const QBluetoothAddress& localAddress, QObject *parent = nullptr); + + bool isJobInProgress() const { return jobInProgress; } + bool scheduleJob(JobType job, const QVector& remoteDevices); + +signals: + void finished(); + +private slots: + void runQueue(); + void prepareNextJob(); + +private: + void disconnectDevice(const QBluetoothAddress& remote); + + bool jobInProgress = false; + QBluetoothAddress localAddress; + std::deque> jobQueue; + QString adapterPath; +}; + +QT_END_NAMESPACE + +#endif // REMOTEDEVICEMANAGER_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/serveracceptancethread_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/serveracceptancethread_p.h new file mode 100644 index 0000000..c7c6831 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/serveracceptancethread_p.h @@ -0,0 +1,101 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef SERVERACCEPTANCETHREAD_H +#define SERVERACCEPTANCETHREAD_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include +#include +#include "qbluetooth.h" + + +class ServerAcceptanceThread : public QObject +{ + Q_OBJECT +public: + explicit ServerAcceptanceThread(QObject *parent = nullptr); + ~ServerAcceptanceThread(); + void setServiceDetails(const QBluetoothUuid &uuid, const QString &serviceName, + QBluetooth::SecurityFlags securityFlags); + + + bool hasPendingConnections() const; + QAndroidJniObject nextPendingConnection(); + void setMaxPendingConnections(int maximumCount); + + void javaThreadErrorOccurred(int errorCode); + void javaNewSocket(jobject socket); + + void run(); + void stop(); + bool isRunning() const; + +signals: + void newConnection(); + void error(QBluetoothServer::Error); + +private: + bool validSetup() const; + void shutdownPendingConnections(); + + QList pendingSockets; + mutable QMutex m_mutex; + QString m_serviceName; + QBluetoothUuid m_uuid; + int maxPendingConnections; + QBluetooth::SecurityFlags secFlags; + + QAndroidJniObject javaThread; + +}; + +#endif // SERVERACCEPTANCETHREAD_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/service_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/service_p.h new file mode 100644 index 0000000..573265a --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/service_p.h @@ -0,0 +1,81 @@ +/* + * This file was generated by qdbusxml2cpp version 0.8 + * Command line was: qdbusxml2cpp -p service_p.h:service.cpp org.bluez.all.xml org.bluez.Service + * + * qdbusxml2cpp is Copyright (C) 2017 The Qt Company Ltd. + * + * This is an auto-generated file. + * Do not edit! All changes made to it will be lost. + */ + +#ifndef SERVICE_P_H +#define SERVICE_P_H + +#include +#include +#include +#include +#include +#include +#include +#include + +/* + * Proxy class for interface org.bluez.Service + */ +class OrgBluezServiceInterface: public QDBusAbstractInterface +{ + Q_OBJECT +public: + static inline const char *staticInterfaceName() + { return "org.bluez.Service"; } + +public: + OrgBluezServiceInterface(const QString &service, const QString &path, const QDBusConnection &connection, QObject *parent = nullptr); + + ~OrgBluezServiceInterface(); + +public Q_SLOTS: // METHODS + inline QDBusPendingReply AddRecord(const QString &in0) + { + QList argumentList; + argumentList << QVariant::fromValue(in0); + return asyncCallWithArgumentList(QStringLiteral("AddRecord"), argumentList); + } + + inline QDBusPendingReply<> CancelAuthorization() + { + QList argumentList; + return asyncCallWithArgumentList(QStringLiteral("CancelAuthorization"), argumentList); + } + + inline QDBusPendingReply<> RemoveRecord(uint in0) + { + QList argumentList; + argumentList << QVariant::fromValue(in0); + return asyncCallWithArgumentList(QStringLiteral("RemoveRecord"), argumentList); + } + + inline QDBusPendingReply<> RequestAuthorization(const QString &in0, uint in1) + { + QList argumentList; + argumentList << QVariant::fromValue(in0) << QVariant::fromValue(in1); + return asyncCallWithArgumentList(QStringLiteral("RequestAuthorization"), argumentList); + } + + inline QDBusPendingReply<> UpdateRecord(uint in0, const QString &in1) + { + QList argumentList; + argumentList << QVariant::fromValue(in0) << QVariant::fromValue(in1); + return asyncCallWithArgumentList(QStringLiteral("UpdateRecord"), argumentList); + } + +Q_SIGNALS: // SIGNALS +}; + +namespace org { + namespace bluez { + typedef ::OrgBluezServiceInterface Service; + } +} +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/servicediscoverybroadcastreceiver_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/servicediscoverybroadcastreceiver_p.h new file mode 100644 index 0000000..4984e35 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/servicediscoverybroadcastreceiver_p.h @@ -0,0 +1,78 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef SERVICEDISCOVERYBROADCASTRECEIVER_H +#define SERVICEDISCOVERYBROADCASTRECEIVER_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include "android/androidbroadcastreceiver_p.h" +#include +#include +#include + +QT_BEGIN_NAMESPACE + +class QBluetoothDeviceInfo; + +class ServiceDiscoveryBroadcastReceiver : public AndroidBroadcastReceiver +{ + Q_OBJECT +public: + ServiceDiscoveryBroadcastReceiver(QObject* parent = nullptr); + virtual void onReceive(JNIEnv *env, jobject context, jobject intent); + virtual void onReceiveLeScan(JNIEnv *, jobject, jint, jbyteArray) {} + + static QList convertParcelableArray(const QAndroidJniObject &obj); + +signals: + void uuidFetchFinished(const QBluetoothAddress &addr, const QList &serviceUuid); +}; + +QT_END_NAMESPACE +#endif // SERVICEDISCOVERYBROADCASTRECEIVER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/servicemap_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/servicemap_p.h new file mode 100644 index 0000000..572c279 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/servicemap_p.h @@ -0,0 +1,64 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef SERVICEMAP_P_H +#define SERVICEMAP_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include +#include + +typedef QMap ServiceMap; + +const QDBusArgument &operator>>(const QDBusArgument &argument, ServiceMap &serviceMap); + +Q_DECLARE_METATYPE(ServiceMap) + +#endif // SERVICEMAP_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/uistrings_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/uistrings_p.h new file mode 100644 index 0000000..999a8c6 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/5.12.5/QtBluetooth/private/uistrings_p.h @@ -0,0 +1,108 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef TRANSLATIONS_H +#define TRANSLATIONS_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include +#include + +QT_BEGIN_NAMESPACE + +// QBluetoothDeviceDiscoveryAgent related strings +extern const char DEV_DISCOVERY[]; +extern const char DD_POWERED_OFF[]; +extern const char DD_INVALID_ADAPTER[]; +extern const char DD_IO[]; +extern const char DD_NOTSUPPORTED[]; +extern const char DD_UNKNOWN_ERROR[]; +extern const char DD_NOT_STARTED[]; +extern const char DD_NOT_STARTED_LE[]; +extern const char DD_NOT_STOPPED[]; + +// QBluetoothServiceDiscoveryAgent related strings +extern const char SERVICE_DISCOVERY[]; +extern const char SD_LOCAL_DEV_OFF[]; +extern const char SD_MINIMAL_FAILED[]; +extern const char SD_INVALID_ADDRESS[]; + +// QBluetoothSocket related strings +extern const char SOCKET[]; +extern const char SOC_NETWORK_ERROR[]; +extern const char SOC_NOWRITE[]; +extern const char SOC_CONNECT_IN_PROGRESS[]; +extern const char SOC_SERVICE_NOT_FOUND[]; +extern const char SOC_INVAL_DATASIZE[]; +extern const char SOC_NOREAD[]; + +// QBluetoothTransferReply related strings +extern const char TRANSFER_REPLY[]; +extern const char TR_INVAL_TARGET[]; +extern const char TR_SESSION_NO_START[]; +extern const char TR_CONNECT_FAILED[]; +extern const char TR_FILE_NOT_EXIST[]; +extern const char TR_NOT_READ_IODEVICE[]; +extern const char TR_SESSION_FAILED[]; +extern const char TR_INVALID_DEVICE[]; +extern const char TR_OP_CANCEL[]; +extern const char TR_IN_PROGRESS[]; +extern const char TR_SERVICE_NO_FOUND[]; + +// QLowEnergyController related strings +extern const char LE_CONTROLLER[]; +extern const char LEC_RDEV_NO_FOUND[]; +extern const char LEC_NO_LOCAL_DEV[]; +extern const char LEC_IO_ERROR[]; +extern const char LEC_UNKNOWN_ERROR[]; + +QT_END_NAMESPACE + +#endif // TRANSLATIONS_H + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/QBluetoothAddress b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/QBluetoothAddress new file mode 100644 index 0000000..1df06e8 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/QBluetoothAddress @@ -0,0 +1 @@ +#include "qbluetoothaddress.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/QBluetoothDeviceDiscoveryAgent b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/QBluetoothDeviceDiscoveryAgent new file mode 100644 index 0000000..6e8957b --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/QBluetoothDeviceDiscoveryAgent @@ -0,0 +1 @@ +#include "qbluetoothdevicediscoveryagent.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/QBluetoothDeviceInfo b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/QBluetoothDeviceInfo new file mode 100644 index 0000000..53e70ec --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/QBluetoothDeviceInfo @@ -0,0 +1 @@ +#include "qbluetoothdeviceinfo.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/QBluetoothHostInfo b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/QBluetoothHostInfo new file mode 100644 index 0000000..9a4958f --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/QBluetoothHostInfo @@ -0,0 +1 @@ +#include "qbluetoothhostinfo.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/QBluetoothLocalDevice b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/QBluetoothLocalDevice new file mode 100644 index 0000000..6f74c19 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/QBluetoothLocalDevice @@ -0,0 +1 @@ +#include "qbluetoothlocaldevice.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/QBluetoothServer b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/QBluetoothServer new file mode 100644 index 0000000..8cd7a20 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/QBluetoothServer @@ -0,0 +1 @@ +#include "qbluetoothserver.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/QBluetoothServiceDiscoveryAgent b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/QBluetoothServiceDiscoveryAgent new file mode 100644 index 0000000..c6efbae --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/QBluetoothServiceDiscoveryAgent @@ -0,0 +1 @@ +#include "qbluetoothservicediscoveryagent.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/QBluetoothServiceInfo b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/QBluetoothServiceInfo new file mode 100644 index 0000000..8c620a0 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/QBluetoothServiceInfo @@ -0,0 +1 @@ +#include "qbluetoothserviceinfo.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/QBluetoothSocket b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/QBluetoothSocket new file mode 100644 index 0000000..5a0fe14 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/QBluetoothSocket @@ -0,0 +1 @@ +#include "qbluetoothsocket.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/QBluetoothTransferManager b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/QBluetoothTransferManager new file mode 100644 index 0000000..21226e1 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/QBluetoothTransferManager @@ -0,0 +1 @@ +#include "qbluetoothtransfermanager.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/QBluetoothTransferReply b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/QBluetoothTransferReply new file mode 100644 index 0000000..1787e1a --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/QBluetoothTransferReply @@ -0,0 +1 @@ +#include "qbluetoothtransferreply.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/QBluetoothTransferRequest b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/QBluetoothTransferRequest new file mode 100644 index 0000000..436cdbe --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/QBluetoothTransferRequest @@ -0,0 +1 @@ +#include "qbluetoothtransferrequest.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/QBluetoothUuid b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/QBluetoothUuid new file mode 100644 index 0000000..dd47329 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/QBluetoothUuid @@ -0,0 +1 @@ +#include "qbluetoothuuid.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/QLowEnergyAdvertisingData b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/QLowEnergyAdvertisingData new file mode 100644 index 0000000..c55f233 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/QLowEnergyAdvertisingData @@ -0,0 +1 @@ +#include "qlowenergyadvertisingdata.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/QLowEnergyAdvertisingParameters b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/QLowEnergyAdvertisingParameters new file mode 100644 index 0000000..4bd49cf --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/QLowEnergyAdvertisingParameters @@ -0,0 +1 @@ +#include "qlowenergyadvertisingparameters.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/QLowEnergyCharacteristic b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/QLowEnergyCharacteristic new file mode 100644 index 0000000..5907c33 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/QLowEnergyCharacteristic @@ -0,0 +1 @@ +#include "qlowenergycharacteristic.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/QLowEnergyCharacteristicData b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/QLowEnergyCharacteristicData new file mode 100644 index 0000000..fd9b3bd --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/QLowEnergyCharacteristicData @@ -0,0 +1 @@ +#include "qlowenergycharacteristicdata.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/QLowEnergyConnectionParameters b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/QLowEnergyConnectionParameters new file mode 100644 index 0000000..a18f18d --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/QLowEnergyConnectionParameters @@ -0,0 +1 @@ +#include "qlowenergyconnectionparameters.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/QLowEnergyController b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/QLowEnergyController new file mode 100644 index 0000000..9888e53 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/QLowEnergyController @@ -0,0 +1 @@ +#include "qlowenergycontroller.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/QLowEnergyDescriptor b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/QLowEnergyDescriptor new file mode 100644 index 0000000..d5814f5 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/QLowEnergyDescriptor @@ -0,0 +1 @@ +#include "qlowenergydescriptor.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/QLowEnergyDescriptorData b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/QLowEnergyDescriptorData new file mode 100644 index 0000000..7c7472d --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/QLowEnergyDescriptorData @@ -0,0 +1 @@ +#include "qlowenergydescriptordata.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/QLowEnergyHandle b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/QLowEnergyHandle new file mode 100644 index 0000000..a6a49d2 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/QLowEnergyHandle @@ -0,0 +1 @@ +#include "qbluetooth.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/QLowEnergyService b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/QLowEnergyService new file mode 100644 index 0000000..32e58a3 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/QLowEnergyService @@ -0,0 +1 @@ +#include "qlowenergyservice.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/QLowEnergyServiceData b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/QLowEnergyServiceData new file mode 100644 index 0000000..8470f5a --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/QLowEnergyServiceData @@ -0,0 +1 @@ +#include "qlowenergyservicedata.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/QtBluetooth b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/QtBluetooth new file mode 100644 index 0000000..aa2b0ce --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/QtBluetooth @@ -0,0 +1,30 @@ +#ifndef QT_QTBLUETOOTH_MODULE_H +#define QT_QTBLUETOOTH_MODULE_H +#include +#include "qtbluetoothglobal.h" +#include "qbluetooth.h" +#include "qbluetoothaddress.h" +#include "qbluetoothdevicediscoveryagent.h" +#include "qbluetoothdeviceinfo.h" +#include "qbluetoothhostinfo.h" +#include "qbluetoothlocaldevice.h" +#include "qbluetoothserver.h" +#include "qbluetoothservicediscoveryagent.h" +#include "qbluetoothserviceinfo.h" +#include "qbluetoothsocket.h" +#include "qbluetoothtransfermanager.h" +#include "qbluetoothtransferreply.h" +#include "qbluetoothtransferrequest.h" +#include "qbluetoothuuid.h" +#include "qlowenergyadvertisingdata.h" +#include "qlowenergyadvertisingparameters.h" +#include "qlowenergycharacteristic.h" +#include "qlowenergycharacteristicdata.h" +#include "qlowenergyconnectionparameters.h" +#include "qlowenergycontroller.h" +#include "qlowenergydescriptor.h" +#include "qlowenergydescriptordata.h" +#include "qlowenergyservice.h" +#include "qlowenergyservicedata.h" +#include "qtbluetoothversion.h" +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/QtBluetoothDepends b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/QtBluetoothDepends new file mode 100644 index 0000000..91344da --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/QtBluetoothDepends @@ -0,0 +1,4 @@ +/* This file was generated by qmake with the info from /src/bluetooth/bluetooth.pro. */ +#ifdef __cplusplus /* create empty PCH in C mode */ +#include +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/QtBluetoothVersion b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/QtBluetoothVersion new file mode 100644 index 0000000..0947963 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/QtBluetoothVersion @@ -0,0 +1 @@ +#include "qtbluetoothversion.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qbluetooth.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qbluetooth.h new file mode 100644 index 0000000..df76314 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qbluetooth.h @@ -0,0 +1,78 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QBLUETOOTH_H +#define QBLUETOOTH_H + +#include + +QT_BEGIN_NAMESPACE + +namespace QBluetooth { + +// TODO Qt 6: Merge these two enums? But note that ATT Authorization has no equivalent +// on the socket security level. + +enum Security { + NoSecurity = 0x00, + Authorization = 0x01, + Authentication = 0x02, + Encryption = 0x04, + Secure = 0x08 +}; + +Q_DECLARE_FLAGS(SecurityFlags, Security) +Q_DECLARE_OPERATORS_FOR_FLAGS(SecurityFlags) + +enum AttAccessConstraint { + AttAuthorizationRequired = 0x1, + AttAuthenticationRequired = 0x2, + AttEncryptionRequired = 0x4, +}; + +Q_DECLARE_FLAGS(AttAccessConstraints, AttAccessConstraint) +Q_DECLARE_OPERATORS_FOR_FLAGS(AttAccessConstraints) + +} + +typedef quint16 QLowEnergyHandle; + +QT_END_NAMESPACE + +#endif // QBLUETOOTH_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qbluetoothaddress.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qbluetoothaddress.h new file mode 100644 index 0000000..e3750d2 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qbluetoothaddress.h @@ -0,0 +1,91 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QBLUETOOTHADDRESS_H +#define QBLUETOOTHADDRESS_H + +#include + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +class QBluetoothAddressPrivate; + +class Q_BLUETOOTH_EXPORT QBluetoothAddress +{ +public: + QBluetoothAddress(); + explicit QBluetoothAddress(quint64 address); + explicit QBluetoothAddress(const QString &address); + QBluetoothAddress(const QBluetoothAddress &other); + ~QBluetoothAddress(); + + QBluetoothAddress &operator=(const QBluetoothAddress &other); + + bool isNull() const; + + void clear(); + + bool operator<(const QBluetoothAddress &other) const; + bool operator==(const QBluetoothAddress &other) const; + inline bool operator!=(const QBluetoothAddress &other) const + { + return !operator==(other); + } + + quint64 toUInt64() const; + QString toString() const; + +private: + Q_DECLARE_PRIVATE(QBluetoothAddress) + QBluetoothAddressPrivate *d_ptr; +}; + +#ifndef QT_NO_DEBUG_STREAM +Q_BLUETOOTH_EXPORT QDebug operator<<(QDebug, const QBluetoothAddress &address); +#endif + +QT_END_NAMESPACE + +Q_DECLARE_METATYPE(QBluetoothAddress) + +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qbluetoothdevicediscoveryagent.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qbluetoothdevicediscoveryagent.h new file mode 100644 index 0000000..59a8b45 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qbluetoothdevicediscoveryagent.h @@ -0,0 +1,129 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QBLUETOOTHDEVICEDISCOVERYAGENT_H +#define QBLUETOOTHDEVICEDISCOVERYAGENT_H + +#include + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +class QBluetoothDeviceDiscoveryAgentPrivate; + +class Q_BLUETOOTH_EXPORT QBluetoothDeviceDiscoveryAgent : public QObject +{ + Q_OBJECT + Q_PROPERTY(QBluetoothDeviceDiscoveryAgent::InquiryType inquiryType + READ inquiryType WRITE setInquiryType) + +public: + // FIXME: add more errors + // FIXME: add bluez error handling + enum Error { + NoError, + InputOutputError, + PoweredOffError, + InvalidBluetoothAdapterError, + UnsupportedPlatformError, + UnsupportedDiscoveryMethod, + UnknownError = 100 // New errors must be added before Unknown error + }; + Q_ENUM(Error) + + enum InquiryType { + GeneralUnlimitedInquiry, + LimitedInquiry + }; + Q_ENUM(InquiryType) + + enum DiscoveryMethod + { + NoMethod = 0x0, + ClassicMethod = 0x01, + LowEnergyMethod = 0x02, + }; + Q_DECLARE_FLAGS(DiscoveryMethods, DiscoveryMethod) + Q_FLAG(DiscoveryMethods) + + explicit QBluetoothDeviceDiscoveryAgent(QObject *parent = nullptr); + explicit QBluetoothDeviceDiscoveryAgent(const QBluetoothAddress &deviceAdapter, + QObject *parent = nullptr); + ~QBluetoothDeviceDiscoveryAgent(); + + // TODO Remove inquiry type in Qt 6 -> not really used anywhere + QBluetoothDeviceDiscoveryAgent::InquiryType inquiryType() const; + void setInquiryType(QBluetoothDeviceDiscoveryAgent::InquiryType type); + + bool isActive() const; + + Error error() const; + QString errorString() const; + + QList discoveredDevices() const; + + void setLowEnergyDiscoveryTimeout(int msTimeout); + int lowEnergyDiscoveryTimeout() const; + + static DiscoveryMethods supportedDiscoveryMethods(); +public Q_SLOTS: + void start(); + void start(DiscoveryMethods method); + void stop(); + +Q_SIGNALS: + void deviceDiscovered(const QBluetoothDeviceInfo &info); + void deviceUpdated(const QBluetoothDeviceInfo &info, QBluetoothDeviceInfo::Fields updatedFields); + void finished(); + void error(QBluetoothDeviceDiscoveryAgent::Error error); + void canceled(); + +private: + Q_DECLARE_PRIVATE(QBluetoothDeviceDiscoveryAgent) + QBluetoothDeviceDiscoveryAgentPrivate *d_ptr; +}; + +Q_DECLARE_OPERATORS_FOR_FLAGS(QBluetoothDeviceDiscoveryAgent::DiscoveryMethods) + +QT_END_NAMESPACE + +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qbluetoothdeviceinfo.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qbluetoothdeviceinfo.h new file mode 100644 index 0000000..d59eb27 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qbluetoothdeviceinfo.h @@ -0,0 +1,273 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QBLUETOOTHDEVICEINFO_H +#define QBLUETOOTHDEVICEINFO_H + +#include + +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +class QBluetoothDeviceInfoPrivate; +class QBluetoothAddress; +class QBluetoothUuid; + +class Q_BLUETOOTH_EXPORT QBluetoothDeviceInfo +{ +public: + enum MajorDeviceClass { + MiscellaneousDevice = 0, + ComputerDevice = 1, + PhoneDevice = 2, + LANAccessDevice = 3, // TODO Qt 6 rename to NetworkDevice -> inconsistency with MinorNetworkClass + AudioVideoDevice = 4, + PeripheralDevice = 5, + ImagingDevice = 6, + WearableDevice = 7, + ToyDevice = 8, + HealthDevice = 9, + UncategorizedDevice = 31 + }; + + enum MinorMiscellaneousClass { + UncategorizedMiscellaneous = 0 + }; + + enum MinorComputerClass { + UncategorizedComputer = 0, + DesktopComputer = 1, + ServerComputer = 2, + LaptopComputer = 3, + HandheldClamShellComputer = 4, + HandheldComputer = 5, + WearableComputer = 6 + }; + + enum MinorPhoneClass { + UncategorizedPhone = 0, + CellularPhone = 1, + CordlessPhone = 2, + SmartPhone = 3, + WiredModemOrVoiceGatewayPhone = 4, + CommonIsdnAccessPhone = 5 + }; + + enum MinorNetworkClass { + NetworkFullService = 0x00, + NetworkLoadFactorOne = 0x08, + NetworkLoadFactorTwo = 0x10, + NetworkLoadFactorThree = 0x18, + NetworkLoadFactorFour = 0x20, + NetworkLoadFactorFive = 0x28, + NetworkLoadFactorSix = 0x30, + NetworkNoService = 0x38 + }; + + enum MinorAudioVideoClass { + UncategorizedAudioVideoDevice = 0, + WearableHeadsetDevice = 1, + HandsFreeDevice = 2, + // reserved = 3, + Microphone = 4, + Loudspeaker = 5, + Headphones = 6, + PortableAudioDevice = 7, + CarAudio = 8, + SetTopBox = 9, + HiFiAudioDevice = 10, + Vcr = 11, + VideoCamera = 12, + Camcorder = 13, + VideoMonitor = 14, + VideoDisplayAndLoudspeaker = 15, + VideoConferencing = 16, + // reserved = 17, + GamingDevice = 18 + }; + + enum MinorPeripheralClass { + UncategorizedPeripheral = 0, + KeyboardPeripheral = 0x10, + PointingDevicePeripheral = 0x20, + KeyboardWithPointingDevicePeripheral = 0x30, + + JoystickPeripheral = 0x01, + GamepadPeripheral = 0x02, + RemoteControlPeripheral = 0x03, + SensingDevicePeripheral = 0x04, + DigitizerTabletPeripheral = 0x05, + CardReaderPeripheral = 0x06 + }; + + enum MinorImagingClass { + UncategorizedImagingDevice = 0, + ImageDisplay = 0x04, + ImageCamera = 0x08, + ImageScanner = 0x10, + ImagePrinter = 0x20 + }; + + enum MinorWearableClass { + UncategorizedWearableDevice = 0, + WearableWristWatch = 1, + WearablePager = 2, + WearableJacket = 3, + WearableHelmet = 4, + WearableGlasses = 5 + }; + + enum MinorToyClass { + UncategorizedToy = 0, + ToyRobot = 1, + ToyVehicle = 2, + ToyDoll = 3, + ToyController = 4, + ToyGame = 5 + }; + + enum MinorHealthClass { + UncategorizedHealthDevice = 0, + HealthBloodPressureMonitor = 0x1, + HealthThermometer = 0x2, + HealthWeightScale = 0x3, + HealthGlucoseMeter = 0x4, + HealthPulseOximeter = 0x5, + HealthDataDisplay = 0x7, + HealthStepCounter = 0x8 + }; + + enum ServiceClass { + NoService = 0x0000, + PositioningService = 0x0001, + NetworkingService = 0x0002, + RenderingService = 0x0004, + CapturingService = 0x0008, + ObjectTransferService = 0x0010, + AudioService = 0x0020, + TelephonyService = 0x0040, + InformationService = 0x0080, + AllServices = 0x07ff + }; + Q_DECLARE_FLAGS(ServiceClasses, ServiceClass) + + //TODO Qt6 Remove DataCompleteness -> it serves no purpose + enum DataCompleteness { + DataComplete, + DataIncomplete, + DataUnavailable + }; + + enum class Field { + None = 0x0000, + RSSI = 0x0001, + ManufacturerData = 0x0002, + All = 0x7fff + }; + Q_DECLARE_FLAGS(Fields, Field) + + enum CoreConfiguration { + UnknownCoreConfiguration = 0x0, + LowEnergyCoreConfiguration = 0x01, + BaseRateCoreConfiguration = 0x02, + BaseRateAndLowEnergyCoreConfiguration = 0x03 + }; + Q_DECLARE_FLAGS(CoreConfigurations, CoreConfiguration) + + QBluetoothDeviceInfo(); + QBluetoothDeviceInfo(const QBluetoothAddress &address, const QString &name, + quint32 classOfDevice); + QBluetoothDeviceInfo(const QBluetoothUuid &uuid, const QString &name, + quint32 classOfDevice); + QBluetoothDeviceInfo(const QBluetoothDeviceInfo &other); + ~QBluetoothDeviceInfo(); + + bool isValid() const; + bool isCached() const; + + void setCached(bool cached); + + QBluetoothDeviceInfo &operator=(const QBluetoothDeviceInfo &other); + bool operator==(const QBluetoothDeviceInfo &other) const; + bool operator!=(const QBluetoothDeviceInfo &other) const; + + QBluetoothAddress address() const; + QString name() const; + + ServiceClasses serviceClasses() const; + MajorDeviceClass majorDeviceClass() const; + quint8 minorDeviceClass() const; + + qint16 rssi() const; + void setRssi(qint16 signal); + + void setServiceUuids(const QList &uuids, DataCompleteness completeness); + QList serviceUuids(DataCompleteness *completeness = nullptr) const; + DataCompleteness serviceUuidsCompleteness() const; + + QVector manufacturerIds() const; + QByteArray manufacturerData(quint16 manufacturerId) const; + bool setManufacturerData(quint16 manufacturerId, const QByteArray &data); + QHash manufacturerData() const; + + void setCoreConfigurations(QBluetoothDeviceInfo::CoreConfigurations coreConfigs); + QBluetoothDeviceInfo::CoreConfigurations coreConfigurations() const; + + void setDeviceUuid(const QBluetoothUuid &uuid); + QBluetoothUuid deviceUuid() const; + +protected: + QBluetoothDeviceInfoPrivate *d_ptr; + +private: + Q_DECLARE_PRIVATE(QBluetoothDeviceInfo) +}; + +Q_DECLARE_OPERATORS_FOR_FLAGS(QBluetoothDeviceInfo::CoreConfigurations) +Q_DECLARE_OPERATORS_FOR_FLAGS(QBluetoothDeviceInfo::ServiceClasses) + +QT_END_NAMESPACE + +Q_DECLARE_METATYPE(QBluetoothDeviceInfo) + +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qbluetoothglobal.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qbluetoothglobal.h new file mode 100644 index 0000000..a62dcea --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qbluetoothglobal.h @@ -0,0 +1,12 @@ +#ifndef DEPRECATED_HEADER_QtBluetooth_qbluetoothglobal_h +#define DEPRECATED_HEADER_QtBluetooth_qbluetoothglobal_h +#if defined(__GNUC__) +# warning Header is deprecated. Please include instead. +#elif defined(_MSC_VER) +# pragma message ("Header is deprecated. Please include instead.") +#endif +#include +#if 0 +#pragma qt_no_master_include +#endif +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qbluetoothhostinfo.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qbluetoothhostinfo.h new file mode 100644 index 0000000..42dfcaa --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qbluetoothhostinfo.h @@ -0,0 +1,76 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QBLUETOOTHHOSTINFO_H +#define QBLUETOOTHHOSTINFO_H + +#include +#include + +QT_BEGIN_NAMESPACE + +class QBluetoothHostInfoPrivate; +class Q_BLUETOOTH_EXPORT QBluetoothHostInfo +{ +public: + QBluetoothHostInfo(); + QBluetoothHostInfo(const QBluetoothHostInfo &other); + ~QBluetoothHostInfo(); + + QBluetoothHostInfo &operator=(const QBluetoothHostInfo &other); + + bool operator==(const QBluetoothHostInfo &other) const; + bool operator!=(const QBluetoothHostInfo &other) const; + + QBluetoothAddress address() const; + void setAddress(const QBluetoothAddress &address); + + QString name() const; + void setName(const QString &name); + +private: + Q_DECLARE_PRIVATE(QBluetoothHostInfo) + QBluetoothHostInfoPrivate *d_ptr; +}; + +QT_END_NAMESPACE + +Q_DECLARE_METATYPE(QBluetoothHostInfo) + +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qbluetoothlocaldevice.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qbluetoothlocaldevice.h new file mode 100644 index 0000000..9f6d1e1 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qbluetoothlocaldevice.h @@ -0,0 +1,126 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QBLUETOOTHLOCALDEVICE_H +#define QBLUETOOTHLOCALDEVICE_H + +#include + +#include +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +class QBluetoothLocalDevicePrivate; + +class Q_BLUETOOTH_EXPORT QBluetoothLocalDevice : public QObject +{ + Q_OBJECT + +public: + enum Pairing { + Unpaired, + Paired, + AuthorizedPaired + }; + Q_ENUM(Pairing) + + enum HostMode { + HostPoweredOff, + HostConnectable, + HostDiscoverable, + HostDiscoverableLimitedInquiry + }; + Q_ENUM(HostMode) + + enum Error { + NoError, + PairingError, + UnknownError = 100 + }; + Q_ENUM(Error) + + explicit QBluetoothLocalDevice(QObject *parent = nullptr); + explicit QBluetoothLocalDevice(const QBluetoothAddress &address, QObject *parent = nullptr); + virtual ~QBluetoothLocalDevice(); + + bool isValid() const; + + void requestPairing(const QBluetoothAddress &address, Pairing pairing); + Pairing pairingStatus(const QBluetoothAddress &address) const; + + void setHostMode(QBluetoothLocalDevice::HostMode mode); + HostMode hostMode() const; + QList connectedDevices() const; + + void powerOn(); + + QString name() const; + QBluetoothAddress address() const; + + static QList allDevices(); + +public Q_SLOTS: + void pairingConfirmation(bool confirmation); + +Q_SIGNALS: + void hostModeStateChanged(QBluetoothLocalDevice::HostMode state); + void deviceConnected(const QBluetoothAddress &address); + void deviceDisconnected(const QBluetoothAddress &address); + void pairingFinished(const QBluetoothAddress &address, QBluetoothLocalDevice::Pairing pairing); + + void pairingDisplayPinCode(const QBluetoothAddress &address, QString pin); + void pairingDisplayConfirmation(const QBluetoothAddress &address, QString pin); + void error(QBluetoothLocalDevice::Error error); + +private: + Q_DECLARE_PRIVATE(QBluetoothLocalDevice) + QBluetoothLocalDevicePrivate *d_ptr; +}; + +QT_END_NAMESPACE + +Q_DECLARE_METATYPE(QBluetoothLocalDevice::Pairing) +Q_DECLARE_METATYPE(QBluetoothLocalDevice::HostMode) +Q_DECLARE_METATYPE(QBluetoothLocalDevice::Error) + +#endif // QBLUETOOTHLOCALDEVICE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qbluetoothserver.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qbluetoothserver.h new file mode 100644 index 0000000..5e71b58 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qbluetoothserver.h @@ -0,0 +1,111 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Copyright (C) 2016 BlackBerry Limited. All rights reserved. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QBLUETOOTHSERVER_H +#define QBLUETOOTHSERVER_H + +#include + +#include + +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +class QBluetoothServerPrivate; +class QBluetoothSocket; + +class Q_BLUETOOTH_EXPORT QBluetoothServer : public QObject +{ + Q_OBJECT + +public: + enum Error { + NoError, + UnknownError, + PoweredOffError, + InputOutputError, + ServiceAlreadyRegisteredError, + UnsupportedProtocolError + }; + Q_ENUM(Error) + + explicit QBluetoothServer(QBluetoothServiceInfo::Protocol serverType, QObject *parent = nullptr); + ~QBluetoothServer(); + + void close(); + + bool listen(const QBluetoothAddress &address = QBluetoothAddress(), quint16 port = 0); + QBluetoothServiceInfo listen(const QBluetoothUuid &uuid, const QString &serviceName = QString()); + bool isListening() const; + + void setMaxPendingConnections(int numConnections); + int maxPendingConnections() const; + + bool hasPendingConnections() const; + QBluetoothSocket *nextPendingConnection(); + + QBluetoothAddress serverAddress() const; + quint16 serverPort() const; + + void setSecurityFlags(QBluetooth::SecurityFlags security); + QBluetooth::SecurityFlags securityFlags() const; + + QBluetoothServiceInfo::Protocol serverType() const; + + Error error() const; + +Q_SIGNALS: + void newConnection(); + void error(QBluetoothServer::Error error); + +protected: + QBluetoothServerPrivate *d_ptr; + +private: + Q_DECLARE_PRIVATE(QBluetoothServer) +}; + +QT_END_NAMESPACE + +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qbluetoothservicediscoveryagent.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qbluetoothservicediscoveryagent.h new file mode 100644 index 0000000..1db05f5 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qbluetoothservicediscoveryagent.h @@ -0,0 +1,117 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QBLUETOOTHSERVICEDISCOVERYAGENT_H +#define QBLUETOOTHSERVICEDISCOVERYAGENT_H + +#include + +#include + +#include +#include +#include + +#if QT_CONFIG(bluez) +#include +#endif + +QT_BEGIN_NAMESPACE + +class QBluetoothAddress; +class QBluetoothServiceDiscoveryAgentPrivate; + +class Q_BLUETOOTH_EXPORT QBluetoothServiceDiscoveryAgent : public QObject +{ + Q_OBJECT + Q_DECLARE_PRIVATE(QBluetoothServiceDiscoveryAgent) + +public: + enum Error { + NoError = QBluetoothDeviceDiscoveryAgent::NoError, + InputOutputError = QBluetoothDeviceDiscoveryAgent::InputOutputError, + PoweredOffError = QBluetoothDeviceDiscoveryAgent::PoweredOffError, + InvalidBluetoothAdapterError = QBluetoothDeviceDiscoveryAgent::InvalidBluetoothAdapterError, + UnknownError = QBluetoothDeviceDiscoveryAgent::UnknownError //=100 + //New Errors must be added after Unknown Error the space before UnknownError is reserved + //for future device discovery errors + }; + Q_ENUM(Error) + + enum DiscoveryMode { + MinimalDiscovery, + FullDiscovery + }; + Q_ENUM(DiscoveryMode) + + explicit QBluetoothServiceDiscoveryAgent(QObject *parent = nullptr); + explicit QBluetoothServiceDiscoveryAgent(const QBluetoothAddress &deviceAdapter, QObject *parent = nullptr); + ~QBluetoothServiceDiscoveryAgent(); + + bool isActive() const; + + Error error() const; + QString errorString() const; + + QList discoveredServices() const; + + void setUuidFilter(const QList &uuids); + void setUuidFilter(const QBluetoothUuid &uuid); + QList uuidFilter() const; + bool setRemoteAddress(const QBluetoothAddress &address); + QBluetoothAddress remoteAddress() const; + +public Q_SLOTS: + void start(DiscoveryMode mode = MinimalDiscovery); + void stop(); + void clear(); + +Q_SIGNALS: + void serviceDiscovered(const QBluetoothServiceInfo &info); + void finished(); + void canceled(); + void error(QBluetoothServiceDiscoveryAgent::Error error); + +private: + QBluetoothServiceDiscoveryAgentPrivate *d_ptr; +}; + +QT_END_NAMESPACE + +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qbluetoothserviceinfo.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qbluetoothserviceinfo.h new file mode 100644 index 0000000..cc4041e --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qbluetoothserviceinfo.h @@ -0,0 +1,231 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QBLUETOOTHSERVICEINFO_H +#define QBLUETOOTHSERVICEINFO_H + +#include + +#include +#include + +#include +#include +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +class QBluetoothServiceInfoPrivate; +class QBluetoothDeviceInfo; + +class Q_BLUETOOTH_EXPORT QBluetoothServiceInfo +{ +public: + enum AttributeId { + ServiceRecordHandle = 0x0000, + ServiceClassIds = 0x0001, + ServiceRecordState = 0x0002, + ServiceId = 0x0003, + ProtocolDescriptorList = 0x0004, + BrowseGroupList = 0x0005, + LanguageBaseAttributeIdList = 0x0006, + ServiceInfoTimeToLive = 0x0007, + ServiceAvailability = 0x0008, + BluetoothProfileDescriptorList = 0x0009, + DocumentationUrl = 0x000A, + ClientExecutableUrl = 0x000B, + IconUrl = 0x000C, + AdditionalProtocolDescriptorList = 0x000D, + PrimaryLanguageBase = 0x0100, + ServiceName = PrimaryLanguageBase + 0x0000, + ServiceDescription = PrimaryLanguageBase + 0x0001, + ServiceProvider = PrimaryLanguageBase + 0x0002 + }; + + enum Protocol { + UnknownProtocol, + L2capProtocol, + RfcommProtocol + }; + + class Sequence : public QList + { + public: + Sequence() { } + Sequence(const QList &list) : QList(list) { } + }; + + class Alternative : public QList + { + public: + Alternative() { } + Alternative(const QList &list) : QList(list) { } + }; + + QBluetoothServiceInfo(); + QBluetoothServiceInfo(const QBluetoothServiceInfo &other); + ~QBluetoothServiceInfo(); + + bool isValid() const; + bool isComplete() const; + + void setDevice(const QBluetoothDeviceInfo &info); + QBluetoothDeviceInfo device() const; + + void setAttribute(quint16 attributeId, const QVariant &value); + void setAttribute(quint16 attributeId, const QBluetoothUuid &value); + void setAttribute(quint16 attributeId, const QBluetoothServiceInfo::Sequence &value); + void setAttribute(quint16 attributeId, const QBluetoothServiceInfo::Alternative &value); + QVariant attribute(quint16 attributeId) const; + QList attributes() const; + bool contains(quint16 attributeId) const; + void removeAttribute(quint16 attributeId); + + inline void setServiceName(const QString &name); + inline QString serviceName() const; + inline void setServiceDescription(const QString &description); + inline QString serviceDescription() const; + inline void setServiceProvider(const QString &provider); + inline QString serviceProvider() const; + + QBluetoothServiceInfo::Protocol socketProtocol() const; + int protocolServiceMultiplexer() const; + int serverChannel() const; + + QBluetoothServiceInfo::Sequence protocolDescriptor(QBluetoothUuid::ProtocolUuid protocol) const; + + inline void setServiceAvailability(quint8 availability); + inline quint8 serviceAvailability() const; + + inline void setServiceUuid(const QBluetoothUuid &uuid); + inline QBluetoothUuid serviceUuid() const; + + QList serviceClassUuids() const; + + QBluetoothServiceInfo &operator=(const QBluetoothServiceInfo &other); + + bool isRegistered() const; + bool registerService(const QBluetoothAddress &localAdapter = QBluetoothAddress()); + bool unregisterService(); + +protected: + friend Q_BLUETOOTH_EXPORT QDebug operator<<(QDebug, const QBluetoothServiceInfo &); + +protected: + QSharedPointer d_ptr; +}; + +QT_END_NAMESPACE + +Q_DECLARE_METATYPE(QBluetoothServiceInfo) +Q_DECLARE_METATYPE(QBluetoothServiceInfo::Sequence) +Q_DECLARE_METATYPE(QBluetoothServiceInfo::Alternative) + +QT_BEGIN_NAMESPACE + +inline void QBluetoothServiceInfo::setAttribute(quint16 attributeId, const QBluetoothUuid &value) +{ + setAttribute(attributeId, QVariant::fromValue(value)); +} + +inline void QBluetoothServiceInfo::setAttribute(quint16 attributeId, const QBluetoothServiceInfo::Sequence &value) +{ + setAttribute(attributeId, QVariant::fromValue(value)); +} + +inline void QBluetoothServiceInfo::setAttribute(quint16 attributeId, const QBluetoothServiceInfo::Alternative &value) +{ + setAttribute(attributeId, QVariant::fromValue(value)); +} + +inline void QBluetoothServiceInfo::setServiceName(const QString &name) +{ + setAttribute(ServiceName, QVariant::fromValue(name)); +} + +inline QString QBluetoothServiceInfo::serviceName() const +{ + return attribute(ServiceName).toString(); +} + +inline void QBluetoothServiceInfo::setServiceDescription(const QString &description) +{ + setAttribute(ServiceDescription, QVariant::fromValue(description)); +} + +inline QString QBluetoothServiceInfo::serviceDescription() const +{ + return attribute(ServiceDescription).toString(); +} + +inline void QBluetoothServiceInfo::setServiceProvider(const QString &provider) +{ + setAttribute(ServiceProvider, QVariant::fromValue(provider)); +} + +inline QString QBluetoothServiceInfo::serviceProvider() const +{ + return attribute(ServiceProvider).toString(); +} + +inline void QBluetoothServiceInfo::setServiceAvailability(quint8 availability) +{ + setAttribute(ServiceAvailability, QVariant::fromValue(availability)); +} + +inline quint8 QBluetoothServiceInfo::serviceAvailability() const +{ + return attribute(ServiceAvailability).toUInt(); +} + +inline void QBluetoothServiceInfo::setServiceUuid(const QBluetoothUuid &uuid) +{ + setAttribute(ServiceId, uuid); +} + +inline QBluetoothUuid QBluetoothServiceInfo::serviceUuid() const +{ + return attribute(ServiceId).value(); +} +QT_END_NAMESPACE + +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qbluetoothsocket.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qbluetoothsocket.h new file mode 100644 index 0000000..d253554 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qbluetoothsocket.h @@ -0,0 +1,207 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QBLUETOOTHSOCKET_H +#define QBLUETOOTHSOCKET_H + +#include + +#include +#include +#include +#include + +#include +#include + +QT_BEGIN_NAMESPACE + +#ifndef QT_OSX_BLUETOOTH +class QBluetoothSocketBasePrivate; +#else +class QBluetoothSocketPrivate; +#endif + +class Q_BLUETOOTH_EXPORT QBluetoothSocket : public QIODevice +{ + Q_OBJECT +#ifndef QT_OSX_BLUETOOTH + Q_DECLARE_PRIVATE(QBluetoothSocketBase) +#else + Q_DECLARE_PRIVATE(QBluetoothSocket) +#endif + + + friend class QBluetoothServer; + friend class QBluetoothServerPrivate; + friend class QBluetoothSocketPrivate; + friend class QBluetoothSocketPrivateAndroid; + friend class QBluetoothSocketPrivateBluez; + friend class QBluetoothSocketPrivateBluezDBus; + friend class QBluetoothSocketPrivateDummy; + friend class QBluetoothSocketPrivateWinRT; + +public: + + // TODO Decouple SocketState and SocketError enum values from QAbstractSocket in Qt 6 + enum SocketState { + UnconnectedState = QAbstractSocket::UnconnectedState, + ServiceLookupState = QAbstractSocket::HostLookupState, + ConnectingState = QAbstractSocket::ConnectingState, + ConnectedState = QAbstractSocket::ConnectedState, + BoundState = QAbstractSocket::BoundState, + ClosingState = QAbstractSocket::ClosingState, + ListeningState = QAbstractSocket::ListeningState + }; + Q_ENUM(SocketState) + + enum SocketError { + NoSocketError = -2, + UnknownSocketError = QAbstractSocket::UnknownSocketError, //-1 + RemoteHostClosedError = QAbstractSocket::RemoteHostClosedError, //1 + HostNotFoundError = QAbstractSocket::HostNotFoundError, //2 + ServiceNotFoundError = QAbstractSocket::SocketAddressNotAvailableError, //9 + NetworkError = QAbstractSocket::NetworkError, //7 + UnsupportedProtocolError = 8, + OperationError = QAbstractSocket::OperationError //19 + //New enums (independent of QAbstractSocket) should be added from 100 onwards + }; + Q_ENUM(SocketError) + + explicit QBluetoothSocket(QBluetoothServiceInfo::Protocol socketType, QObject *parent = nullptr); // create socket of type socketType + explicit QBluetoothSocket(QObject *parent = nullptr); // create a blank socket + virtual ~QBluetoothSocket(); + + void abort(); + virtual void close(); + + bool isSequential() const; + + virtual qint64 bytesAvailable() const; + virtual qint64 bytesToWrite() const; + + virtual bool canReadLine() const; + + void connectToService(const QBluetoothServiceInfo &service, OpenMode openMode = ReadWrite); + void connectToService(const QBluetoothAddress &address, const QBluetoothUuid &uuid, OpenMode openMode = ReadWrite); + void connectToService(const QBluetoothAddress &address, quint16 port, OpenMode openMode = ReadWrite); + inline void connectToService(const QBluetoothAddress &address, QBluetoothUuid::ServiceClassUuid uuid, + OpenMode mode = ReadWrite) + { + connectToService(address, QBluetoothUuid(uuid), mode); + } + void disconnectFromService(); + + //bool flush(); + //bool isValid() const; + + QString localName() const; + QBluetoothAddress localAddress() const; + quint16 localPort() const; + + QString peerName() const; + QBluetoothAddress peerAddress() const; + quint16 peerPort() const; + //QBluetoothServiceInfo peerService() const; + + //qint64 readBufferSize() const; + //void setReadBufferSize(qint64 size); + + bool setSocketDescriptor(int socketDescriptor, QBluetoothServiceInfo::Protocol socketType, + SocketState socketState = ConnectedState, + OpenMode openMode = ReadWrite); + int socketDescriptor() const; + + QBluetoothServiceInfo::Protocol socketType() const; + SocketState state() const; + SocketError error() const; + QString errorString() const; + + //bool waitForConnected(int msecs = 30000); + //bool waitForDisconnected(int msecs = 30000); + //virtual bool waitForReadyRead(int msecs = 30000); + + void setPreferredSecurityFlags(QBluetooth::SecurityFlags flags); + QBluetooth::SecurityFlags preferredSecurityFlags() const; + +Q_SIGNALS: + void connected(); + void disconnected(); + void error(QBluetoothSocket::SocketError error); + void stateChanged(QBluetoothSocket::SocketState state); + +protected: + virtual qint64 readData(char *data, qint64 maxSize); + virtual qint64 writeData(const char *data, qint64 maxSize); + + void setSocketState(SocketState state); + void setSocketError(SocketError error); + + void doDeviceDiscovery(const QBluetoothServiceInfo &service, OpenMode openMode); + +private Q_SLOTS: + void serviceDiscovered(const QBluetoothServiceInfo &service); + void discoveryFinished(); + + +protected: +#if QT_CONFIG(bluez) + //evil hack to enable QBluetoothServer on Bluez to set the desired d_ptr + explicit QBluetoothSocket(QBluetoothSocketBasePrivate *d, + QBluetoothServiceInfo::Protocol socketType, + QObject *parent = nullptr); +#endif +#ifndef QT_OSX_BLUETOOTH + QBluetoothSocketBasePrivate *d_ptr; +#else + QBluetoothSocketPrivate *d_ptr; +#endif + +private: + friend class QLowEnergyControllerPrivateBluez; +}; + +#ifndef QT_NO_DEBUG_STREAM +Q_BLUETOOTH_EXPORT QDebug operator<<(QDebug, QBluetoothSocket::SocketError); +Q_BLUETOOTH_EXPORT QDebug operator<<(QDebug, QBluetoothSocket::SocketState); +#endif + +QT_END_NAMESPACE + +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qbluetoothtransfermanager.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qbluetoothtransfermanager.h new file mode 100644 index 0000000..9885039 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qbluetoothtransfermanager.h @@ -0,0 +1,73 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QBLUETOOTHTRANSFERMANAGER_H +#define QBLUETOOTHTRANSFERMANAGER_H + +#include +#include + +#include + +QT_FORWARD_DECLARE_CLASS(QIODevice) + +QT_BEGIN_NAMESPACE + +class QBluetoothTransferReply; +class QBluetoothTransferRequest; +class QBluetoothTranferManagerPrivate; + +class Q_BLUETOOTH_EXPORT QBluetoothTransferManager : public QObject +{ + Q_OBJECT + +public: + explicit QBluetoothTransferManager(QObject *parent = nullptr); + ~QBluetoothTransferManager(); + + QBluetoothTransferReply *put(const QBluetoothTransferRequest &request, QIODevice *data); + +Q_SIGNALS: + void finished(QBluetoothTransferReply *reply); + +}; + +QT_END_NAMESPACE + +#endif // QBLUETOOTHTRANSFERMANAGER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qbluetoothtransferreply.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qbluetoothtransferreply.h new file mode 100644 index 0000000..8f0679f --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qbluetoothtransferreply.h @@ -0,0 +1,107 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QBLUETOOTHTRANSFERREPLY_H +#define QBLUETOOTHTRANSFERREPLY_H + +#include + +#include +#include + +QT_BEGIN_NAMESPACE + +class QBluetoothTransferReplyPrivate; + +class Q_BLUETOOTH_EXPORT QBluetoothTransferReply : public QObject +{ + Q_OBJECT + +public: + enum TransferError { + NoError = 0, + UnknownError, + FileNotFoundError, + HostNotFoundError, + UserCanceledTransferError, + IODeviceNotReadableError, + ResourceBusyError, + SessionError + }; + Q_ENUM(TransferError) + + ~QBluetoothTransferReply(); + + virtual bool isFinished() const = 0; + virtual bool isRunning() const = 0; + + QBluetoothTransferManager *manager() const; + + virtual TransferError error() const = 0; + virtual QString errorString() const = 0; + + QBluetoothTransferRequest request() const; + +public Q_SLOTS: + void abort(); + +Q_SIGNALS: + //TODO Remove QBluetoothTransferReply* parameter in Qt 6 + void finished(QBluetoothTransferReply *); + void transferProgress(qint64 bytesTransferred, qint64 bytesTotal); + void error(QBluetoothTransferReply::TransferError lastError); + +protected: + explicit QBluetoothTransferReply(QObject *parent = nullptr); + void setManager(QBluetoothTransferManager *manager); + void setRequest(const QBluetoothTransferRequest &request); + +protected: + QBluetoothTransferReplyPrivate *d_ptr; + +private: + Q_DECLARE_PRIVATE(QBluetoothTransferReply) + +}; + +QT_END_NAMESPACE + +Q_DECLARE_METATYPE(QBluetoothTransferReply::TransferError) + +#endif // QBLUETOOTHTRANSFERREPLY_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qbluetoothtransferrequest.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qbluetoothtransferrequest.h new file mode 100644 index 0000000..5485a0d --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qbluetoothtransferrequest.h @@ -0,0 +1,88 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QBLUETOOTHTRANSFERREQUEST_H +#define QBLUETOOTHTRANSFERREQUEST_H + +#include +#include + +#include +#include + +QT_BEGIN_NAMESPACE + +class QBluetoothAddress; +class QBluetoothTransferRequestPrivate; + +class Q_BLUETOOTH_EXPORT QBluetoothTransferRequest +{ +public: + enum Attribute { + DescriptionAttribute, + TimeAttribute, + TypeAttribute, + LengthAttribute, + NameAttribute + }; + + explicit QBluetoothTransferRequest(const QBluetoothAddress &address = QBluetoothAddress()); + QBluetoothTransferRequest(const QBluetoothTransferRequest &other); + ~QBluetoothTransferRequest(); + + QVariant attribute(Attribute code, const QVariant &defaultValue = QVariant()) const; + void setAttribute(Attribute code, const QVariant &value); + + QBluetoothAddress address() const; + + bool operator!=(const QBluetoothTransferRequest &other) const; + QBluetoothTransferRequest &operator=(const QBluetoothTransferRequest &other); + bool operator==(const QBluetoothTransferRequest &other) const; + +protected: + QBluetoothTransferRequestPrivate *d_ptr; + +private: + Q_DECLARE_PRIVATE(QBluetoothTransferRequest) + +}; + +QT_END_NAMESPACE + +#endif // QBLUETOOTHTRANSFERREQUEST_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qbluetoothuuid.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qbluetoothuuid.h new file mode 100644 index 0000000..dd58769 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qbluetoothuuid.h @@ -0,0 +1,424 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QBLUETOOTHUUID_H +#define QBLUETOOTHUUID_H + +#include + +#include +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +struct quint128 +{ + quint8 data[16]; +}; + +class Q_BLUETOOTH_EXPORT QBluetoothUuid : public QUuid +{ +public: + //TODO Qt 6: Convert enums to scoped enums (see QTBUG-65831) + enum ProtocolUuid { + Sdp = 0x0001, + Udp = 0x0002, + Rfcomm = 0x0003, + Tcp = 0x0004, + TcsBin = 0x0005, + TcsAt = 0x0006, + Att = 0x0007, + Obex = 0x0008, + Ip = 0x0009, + Ftp = 0x000A, + Http = 0x000C, + Wsp = 0x000E, + Bnep = 0x000F, + Upnp = 0x0010, + Hidp = 0x0011, + HardcopyControlChannel = 0x0012, + HardcopyDataChannel = 0x0014, + HardcopyNotification = 0x0016, + Avctp = 0x0017, + Avdtp = 0x0019, + Cmtp = 0x001B, + UdiCPlain = 0x001D, + McapControlChannel = 0x001E, + McapDataChannel = 0x001F, + L2cap = 0x0100 + }; + + enum ServiceClassUuid { + ServiceDiscoveryServer = 0x1000, + BrowseGroupDescriptor = 0x1001, + PublicBrowseGroup = 0x1002, + SerialPort = 0x1101, + LANAccessUsingPPP = 0x1102, + DialupNetworking = 0x1103, + IrMCSync = 0x1104, + ObexObjectPush = 0x1105, + OBEXFileTransfer = 0x1106, + IrMCSyncCommand = 0x1107, + Headset = 0x1108, + AudioSource = 0x110a, + AudioSink = 0x110b, + AV_RemoteControlTarget = 0x110c, + AdvancedAudioDistribution = 0x110d, + AV_RemoteControl = 0x110e, + AV_RemoteControlController = 0x110f, + HeadsetAG = 0x1112, + PANU = 0x1115, + NAP = 0x1116, + GN = 0x1117, + DirectPrinting = 0x1118, + ReferencePrinting = 0x1119, + BasicImage = 0x111a, + ImagingResponder = 0x111b, + ImagingAutomaticArchive = 0x111c, + ImagingReferenceObjects = 0x111d, + Handsfree = 0x111e, + HandsfreeAudioGateway = 0x111f, + DirectPrintingReferenceObjectsService = 0x1120, + ReflectedUI = 0x1121, + BasicPrinting = 0x1122, + PrintingStatus = 0x1123, + HumanInterfaceDeviceService = 0x1124, + HardcopyCableReplacement = 0x1125, + HCRPrint = 0x1126, + HCRScan = 0x1127, + SIMAccess = 0x112d, + PhonebookAccessPCE = 0x112e, + PhonebookAccessPSE = 0x112f, + PhonebookAccess = 0x1130, + HeadsetHS = 0x1131, + MessageAccessServer = 0x1132, + MessageNotificationServer = 0x1133, + MessageAccessProfile = 0x1134, + GNSS = 0x1135, + GNSSServer = 0x1136, + Display3D = 0x1137, + Glasses3D = 0x1138, + Synchronization3D = 0x1139, + MPSProfile = 0x113a, + MPSService = 0x113b, + PnPInformation = 0x1200, + GenericNetworking = 0x1201, + GenericFileTransfer = 0x1202, + GenericAudio = 0x1203, + GenericTelephony = 0x1204, + VideoSource = 0x1303, + VideoSink = 0x1304, + VideoDistribution = 0x1305, + HDP = 0x1400, + HDPSource = 0x1401, + HDPSink = 0x1402, + GenericAccess = 0x1800, + GenericAttribute = 0x1801, + ImmediateAlert = 0x1802, + LinkLoss = 0x1803, + TxPower = 0x1804, + CurrentTimeService = 0x1805, + ReferenceTimeUpdateService = 0x1806, + NextDSTChangeService = 0x1807, + Glucose = 0x1808, + HealthThermometer = 0x1809, + DeviceInformation = 0x180a, + HeartRate = 0x180d, + PhoneAlertStatusService = 0x180e, + BatteryService = 0x180f, + BloodPressure = 0x1810, + AlertNotificationService = 0x1811, + HumanInterfaceDevice = 0x1812, + ScanParameters = 0x1813, + RunningSpeedAndCadence = 0x1814, + CyclingSpeedAndCadence = 0x1816, + CyclingPower = 0x1818, + LocationAndNavigation = 0x1819, + EnvironmentalSensing = 0x181a, + BodyComposition = 0x181b, + UserData = 0x181c, + WeightScale = 0x181d, + BondManagement = 0x181e, + ContinuousGlucoseMonitoring = 0x181f + }; + + enum CharacteristicType { + DeviceName = 0x2a00, + Appearance = 0x2a01, + PeripheralPrivacyFlag = 0x2a02, + ReconnectionAddress = 0x2a03, + PeripheralPreferredConnectionParameters = 0x2a04, + ServiceChanged = 0x2a05, + AlertLevel = 0x2a06, + TxPowerLevel = 0x2a07, + DateTime = 0x2a08, + DayOfWeek = 0x2a09, + DayDateTime = 0x2a0a, + /* 0x2a0b not defined */ + ExactTime256 = 0x2a0c, + DSTOffset = 0x2a0d, + TimeZone = 0x2a0e, + LocalTimeInformation = 0x2a0f, + /* 0x2a10 not defined */ + TimeWithDST = 0x2a11, + TimeAccuracy = 0x2a12, + TimeSource = 0x2a13, + ReferenceTimeInformation = 0x2a14, + /* 0x2a15 not defined */ + TimeUpdateControlPoint = 0x2a16, + TimeUpdateState = 0x2a17, + GlucoseMeasurement = 0x2a18, + BatteryLevel = 0x2a19, + /* 0x2a1a not defined */ + /* 0x2a1b not defined */ + TemperatureMeasurement = 0x2a1c, + TemperatureType = 0x2a1d, + IntermediateTemperature = 0x2a1e, + /* 0x2a1f not defined */ + /* 0x2a20 not defined */ + MeasurementInterval = 0x2a21, + BootKeyboardInputReport = 0x2a22, + SystemID = 0x2a23, + ModelNumberString = 0x2a24, + SerialNumberString = 0x2a25, + FirmwareRevisionString = 0x2a26, + HardwareRevisionString = 0x2a27, + SoftwareRevisionString = 0x2a28, + ManufacturerNameString = 0x2a29, + IEEE1107320601RegulatoryCertificationDataList = 0x2a2a, + CurrentTime = 0x2a2b, + MagneticDeclination = 0x2a2c, + /* 0x2a2d not defined */ + /* 0x2a2e not defined */ + /* 0x2a2f not defined */ + /* 0x2a30 not defined */ + ScanRefresh = 0x2a31, + BootKeyboardOutputReport = 0x2a32, + BootMouseInputReport = 0x2a33, + GlucoseMeasurementContext = 0x2a34, + BloodPressureMeasurement = 0x2a35, + IntermediateCuffPressure = 0x2a36, + HeartRateMeasurement = 0x2a37, + BodySensorLocation = 0x2a38, + HeartRateControlPoint = 0x2a39, + /* 0x2a3a not defined */ + /* 0x2a3b not defined */ + /* 0x2a3c not defined */ + /* 0x2a3d not defined */ + /* 0x2a3e not defined */ + AlertStatus = 0x2a3f, + RingerControlPoint = 0x2a40, + RingerSetting = 0x2a41, + AlertCategoryIDBitMask = 0x2a42, + AlertCategoryID = 0x2a43, + AlertNotificationControlPoint = 0x2a44, + UnreadAlertStatus = 0x2a45, + NewAlert = 0x2a46, + SupportedNewAlertCategory = 0x2a47, + SupportedUnreadAlertCategory = 0x2a48, + BloodPressureFeature = 0x2a49, + HIDInformation = 0x2a4a, + ReportMap = 0x2a4b, + HIDControlPoint = 0x2a4c, + Report = 0x2a4d, + ProtocolMode = 0x2a4e, + ScanIntervalWindow = 0x2a4f, + PnPID = 0x2a50, + GlucoseFeature = 0x2a51, + RecordAccessControlPoint = 0x2a52, + RSCMeasurement = 0x2a53, + RSCFeature = 0x2a54, + SCControlPoint = 0x2a55, + /* 0x2a56 not defined */ + /* 0x2a57 not defined */ + /* 0x2a58 not defined */ + /* 0x2a59 not defined */ + /* 0x2a5a not defined */ + CSCMeasurement = 0x2a5b, + CSCFeature = 0x2a5c, + SensorLocation = 0x2a5d, + /* 0x2a5e not defined */ + /* 0x2a5f not defined */ + /* 0x2a60 not defined */ + /* 0x2a61 not defined */ + /* 0x2a62 not defined */ + CyclingPowerMeasurement = 0x2a63, + CyclingPowerVector = 0x2a64, + CyclingPowerFeature = 0x2a65, + CyclingPowerControlPoint = 0x2a66, + LocationAndSpeed = 0x2a67, + Navigation = 0x2a68, + PositionQuality = 0x2a69, + LNFeature = 0x2a6a, + LNControlPoint = 0x2a6b, + Elevation = 0x2a6c, + Pressure = 0x2a6d, + Temperature = 0x2a6e, + Humidity = 0x2a6f, + TrueWindSpeed = 0x2a70, + TrueWindDirection = 0x2a71, + ApparentWindSpeed = 0x2a72, + ApparentWindDirection = 0x2a73, + GustFactor = 0x2a74, + PollenConcentration = 0x2a75, + UVIndex = 0x2a76, + Irradiance = 0x2a77, + Rainfall = 0x2a78, + WindChill = 0x2a79, + HeatIndex = 0x2a7a, + DewPoint = 0x2a7b, + /* 0x2a7c not defined */ + DescriptorValueChanged = 0x2a7d, + AerobicHeartRateLowerLimit = 0x2a7e, + AerobicThreshold = 0x2a7f, + Age = 0x2a80, + AnaerobicHeartRateLowerLimit = 0x2a81, + AnaerobicHeartRateUpperLimit = 0x2a82, + AnaerobicThreshold = 0x2a83, + AerobicHeartRateUpperLimit = 0x2a84, + DateOfBirth = 0x2a85, + DateOfThresholdAssessment = 0x2a86, + EmailAddress = 0x2a87, + FatBurnHeartRateLowerLimit = 0x2a88, + FatBurnHeartRateUpperLimit = 0x2a89, + FirstName = 0x2a8a, + FiveZoneHeartRateLimits = 0x2a8b, + Gender = 0x2a8c, + HeartRateMax = 0x2a8d, + Height = 0x2a8e, + HipCircumference = 0x2a8f, + LastName = 0x2a90, + MaximumRecommendedHeartRate = 0x2a91, + RestingHeartRate = 0x2a92, + SportTypeForAerobicAnaerobicThresholds = 0x2a93, + ThreeZoneHeartRateLimits = 0x2a94, + TwoZoneHeartRateLimits = 0x2a95, + VO2Max = 0x2a96, + WaistCircumference = 0x2a97, + Weight = 0x2a98, + DatabaseChangeIncrement = 0x2a99, + UserIndex = 0x2a9a, + BodyCompositionFeature = 0x2a9b, + BodyCompositionMeasurement = 0x2a9c, + WeightMeasurement = 0x2a9d, + WeightScaleFeature = 0x2a9e, + UserControlPoint = 0x2a9f, + MagneticFluxDensity2D = 0x2aa0, + MagneticFluxDensity3D = 0x2aa1, + Language = 0x2aa2, + BarometricPressureTrend = 0x2aa3 + }; + + enum DescriptorType { + UnknownDescriptorType = 0x0, + CharacteristicExtendedProperties = 0x2900, + CharacteristicUserDescription = 0x2901, + ClientCharacteristicConfiguration = 0x2902, + ServerCharacteristicConfiguration = 0x2903, + CharacteristicPresentationFormat = 0x2904, + CharacteristicAggregateFormat = 0x2905, + ValidRange = 0x2906, + ExternalReportReference = 0x2907, + ReportReference = 0x2908, + /* 0x2909 not defined */ + /* 0x290a not defined */ + EnvironmentalSensingConfiguration = 0x290b, + EnvironmentalSensingMeasurement = 0x290c, + EnvironmentalSensingTriggerSetting = 0x290d + }; + + QBluetoothUuid(); + QBluetoothUuid(ProtocolUuid uuid); + QBluetoothUuid(ServiceClassUuid uuid); + QBluetoothUuid(CharacteristicType uuid); + QBluetoothUuid(DescriptorType uuid); + explicit QBluetoothUuid(quint16 uuid); + explicit QBluetoothUuid(quint32 uuid); + explicit QBluetoothUuid(quint128 uuid); + explicit QBluetoothUuid(const QString &uuid); + QBluetoothUuid(const QBluetoothUuid &uuid); + QBluetoothUuid(const QUuid &uuid); + ~QBluetoothUuid(); + + bool operator==(const QBluetoothUuid &other) const; + bool operator!=(const QBluetoothUuid &other) const { return !operator==(other); } + + QBluetoothUuid &operator=(const QBluetoothUuid &other) = default; + + int minimumSize() const; + + quint16 toUInt16(bool *ok = nullptr) const; + quint32 toUInt32(bool *ok = nullptr) const; + quint128 toUInt128() const; + + static QString serviceClassToString(ServiceClassUuid uuid); + static QString protocolToString(ProtocolUuid uuid); + static QString characteristicToString(CharacteristicType uuid); + static QString descriptorToString(DescriptorType uuid); +}; + +#ifndef QT_NO_DATASTREAM +inline QDataStream &operator<<(QDataStream &s, const QBluetoothUuid &uuid) +{ + return s << static_cast(uuid); +} + +inline QDataStream &operator>>(QDataStream &s, QBluetoothUuid &uuid) +{ + return s >> static_cast(uuid); +} +#endif + +#ifndef QT_NO_DEBUG_STREAM +/// TODO: Move implementation to .cpp, uninline and add Q_BLUETOOTH_EXPORT for Qt 6 +inline QDebug operator<<(QDebug debug, const QBluetoothUuid &uuid) +{ + debug << uuid.toString(); + return debug; +} +#endif + +QT_END_NAMESPACE + +Q_DECLARE_METATYPE(QBluetoothUuid) + +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qlowenergyadvertisingdata.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qlowenergyadvertisingdata.h new file mode 100644 index 0000000..0fc55ad --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qlowenergyadvertisingdata.h @@ -0,0 +1,105 @@ +/*************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QLOWENERGYADVERTISINGDATA_H +#define QLOWENERGYADVERTISINGDATA_H + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +class QLowEnergyAdvertisingDataPrivate; + +class Q_BLUETOOTH_EXPORT QLowEnergyAdvertisingData +{ + friend Q_BLUETOOTH_EXPORT bool operator==(const QLowEnergyAdvertisingData &data1, + const QLowEnergyAdvertisingData &data2); +public: + QLowEnergyAdvertisingData(); + QLowEnergyAdvertisingData(const QLowEnergyAdvertisingData &other); + ~QLowEnergyAdvertisingData(); + + QLowEnergyAdvertisingData &operator=(const QLowEnergyAdvertisingData &other); + + void setLocalName(const QString &name); + QString localName() const; + + static quint16 invalidManufacturerId() { return 0xffff; } + void setManufacturerData(quint16 id, const QByteArray &data); + quint16 manufacturerId() const; + QByteArray manufacturerData() const; + + void setIncludePowerLevel(bool doInclude); + bool includePowerLevel() const; + + enum Discoverability { + DiscoverabilityNone, DiscoverabilityLimited, DiscoverabilityGeneral + }; + void setDiscoverability(Discoverability mode); + Discoverability discoverability() const; + + void setServices(const QList &services); + QList services() const; + + // TODO: BR/EDR capability flag? + + void setRawData(const QByteArray &data); + QByteArray rawData() const; + + void swap(QLowEnergyAdvertisingData &other) Q_DECL_NOTHROW { qSwap(d, other.d); } + +private: + QSharedDataPointer d; +}; + +Q_BLUETOOTH_EXPORT bool operator==(const QLowEnergyAdvertisingData &data1, + const QLowEnergyAdvertisingData &data2); +inline bool operator!=(const QLowEnergyAdvertisingData &data1, + const QLowEnergyAdvertisingData &data2) +{ + return !(data1 == data2); +} + +Q_DECLARE_SHARED(QLowEnergyAdvertisingData) + +QT_END_NAMESPACE + +#endif // Include guard diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qlowenergyadvertisingparameters.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qlowenergyadvertisingparameters.h new file mode 100644 index 0000000..055026e --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qlowenergyadvertisingparameters.h @@ -0,0 +1,117 @@ +/*************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QLOWENERGYADVERTISINGPARAMETERS_H +#define QLOWENERGYADVERTISINGPARAMETERS_H + +#include +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +class QLowEnergyAdvertisingParametersPrivate; + +class Q_BLUETOOTH_EXPORT QLowEnergyAdvertisingParameters +{ + friend Q_BLUETOOTH_EXPORT bool operator==(const QLowEnergyAdvertisingParameters &p1, + const QLowEnergyAdvertisingParameters &p2); +public: + QLowEnergyAdvertisingParameters(); + QLowEnergyAdvertisingParameters(const QLowEnergyAdvertisingParameters &other); + ~QLowEnergyAdvertisingParameters(); + + QLowEnergyAdvertisingParameters &operator=(const QLowEnergyAdvertisingParameters &other); + + enum Mode { AdvInd = 0x0, AdvScanInd = 0x2, AdvNonConnInd = 0x3 }; + void setMode(Mode mode); + Mode mode() const; + + struct AddressInfo { + AddressInfo(const QBluetoothAddress &addr, QLowEnergyController::RemoteAddressType t) + : address(addr), type(t) {} + AddressInfo() : type(QLowEnergyController::PublicAddress) {} + + QBluetoothAddress address; + QLowEnergyController::RemoteAddressType type; + }; + enum FilterPolicy { + IgnoreWhiteList = 0x00, + UseWhiteListForScanning = 0x01, + UseWhiteListForConnecting = 0x02, + UseWhiteListForScanningAndConnecting = 0x03, + }; + void setWhiteList(const QList &whiteList, FilterPolicy policy); + QList whiteList() const; + FilterPolicy filterPolicy() const; + + void setInterval(quint16 minimum, quint16 maximum); + int minimumInterval() const; + int maximumInterval() const; + + // TODO: own address type + // TODO: For ADV_DIRECT_IND: peer address + peer address type + + void swap(QLowEnergyAdvertisingParameters &other) Q_DECL_NOTHROW { qSwap(d, other.d); } + +private: + QSharedDataPointer d; +}; + +inline bool operator==(const QLowEnergyAdvertisingParameters::AddressInfo &ai1, + const QLowEnergyAdvertisingParameters::AddressInfo &ai2) +{ + return ai1.address == ai2.address && ai1.type == ai2.type; +} + +Q_BLUETOOTH_EXPORT bool operator==(const QLowEnergyAdvertisingParameters &p1, + const QLowEnergyAdvertisingParameters &p2); +inline bool operator!=(const QLowEnergyAdvertisingParameters &p1, + const QLowEnergyAdvertisingParameters &p2) +{ + return !(p1 == p2); +} + +Q_DECLARE_SHARED(QLowEnergyAdvertisingParameters) + +QT_END_NAMESPACE + +#endif // Include guard diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qlowenergycharacteristic.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qlowenergycharacteristic.h new file mode 100644 index 0000000..cb747e3 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qlowenergycharacteristic.h @@ -0,0 +1,117 @@ +/*************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Copyright (C) 2016 BlackBerry Limited all rights reserved +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QLOWENERGYCHARACTERISTIC_H +#define QLOWENERGYCHARACTERISTIC_H +#include +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +class QBluetoothUuid; +class QLowEnergyServicePrivate; +struct QLowEnergyCharacteristicPrivate; +class Q_BLUETOOTH_EXPORT QLowEnergyCharacteristic +{ +public: + + enum PropertyType { + Unknown = 0x00, + Broadcasting = 0x01, + Read = 0x02, + WriteNoResponse = 0x04, + Write = 0x08, + Notify = 0x10, + Indicate = 0x20, + WriteSigned = 0x40, + ExtendedProperty = 0x80 + }; + Q_DECLARE_FLAGS(PropertyTypes, PropertyType) + + QLowEnergyCharacteristic(); + QLowEnergyCharacteristic(const QLowEnergyCharacteristic &other); + ~QLowEnergyCharacteristic(); + + QLowEnergyCharacteristic &operator=(const QLowEnergyCharacteristic &other); + bool operator==(const QLowEnergyCharacteristic &other) const; + bool operator!=(const QLowEnergyCharacteristic &other) const; + + QString name() const; + + QBluetoothUuid uuid() const; + + QByteArray value() const; + + QLowEnergyCharacteristic::PropertyTypes properties() const; + QLowEnergyHandle handle() const; + + QLowEnergyDescriptor descriptor(const QBluetoothUuid &uuid) const; + QList descriptors() const; + + bool isValid() const; + +protected: + QLowEnergyHandle attributeHandle() const; + + QSharedPointer d_ptr; + + friend class QLowEnergyService; + friend class QLowEnergyControllerPrivate; + friend class QLowEnergyControllerPrivateAndroid; + friend class QLowEnergyControllerPrivateBluez; + friend class QLowEnergyControllerPrivateBluezDBus; + friend class QLowEnergyControllerPrivateCommon; + friend class QLowEnergyControllerPrivateOSX; + friend class QLowEnergyControllerPrivateWinRT; + QLowEnergyCharacteristicPrivate *data = nullptr; + QLowEnergyCharacteristic(QSharedPointer p, + QLowEnergyHandle handle); +}; + +Q_DECLARE_OPERATORS_FOR_FLAGS(QLowEnergyCharacteristic::PropertyTypes) + +QT_END_NAMESPACE + +Q_DECLARE_METATYPE(QLowEnergyCharacteristic) + +#endif // QLOWENERGYCHARACTERISTIC_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qlowenergycharacteristicdata.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qlowenergycharacteristicdata.h new file mode 100644 index 0000000..cf5de70 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qlowenergycharacteristicdata.h @@ -0,0 +1,103 @@ +/*************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ +#ifndef QLOWENERGYCHARACTERISTICDATA_H +#define QLOWENERGYCHARACTERISTICDATA_H + +#include +#include + +QT_BEGIN_NAMESPACE + +class QLowEnergyDescriptorData; +struct QLowEnergyCharacteristicDataPrivate; +class Q_BLUETOOTH_EXPORT QLowEnergyCharacteristicData +{ + friend Q_BLUETOOTH_EXPORT bool operator==(const QLowEnergyCharacteristicData &cd1, + const QLowEnergyCharacteristicData &cd2); +public: + QLowEnergyCharacteristicData(); + QLowEnergyCharacteristicData(const QLowEnergyCharacteristicData &other); + ~QLowEnergyCharacteristicData(); + + QLowEnergyCharacteristicData &operator=(const QLowEnergyCharacteristicData &other); + + QBluetoothUuid uuid() const; + void setUuid(const QBluetoothUuid &uuid); + + QByteArray value() const; + void setValue(const QByteArray &value); + + QLowEnergyCharacteristic::PropertyTypes properties() const; + void setProperties(QLowEnergyCharacteristic::PropertyTypes properties); + + QList descriptors() const; + void setDescriptors(const QList &descriptors); + void addDescriptor(const QLowEnergyDescriptorData &descriptor); + + void setReadConstraints(QBluetooth::AttAccessConstraints constraints); + QBluetooth::AttAccessConstraints readConstraints() const; + + void setWriteConstraints(QBluetooth::AttAccessConstraints constraints); + QBluetooth::AttAccessConstraints writeConstraints() const; + + void setValueLength(int minimum, int maximum); + int minimumValueLength() const; + int maximumValueLength() const; + + bool isValid() const; + + void swap(QLowEnergyCharacteristicData &other) Q_DECL_NOTHROW { qSwap(d, other.d); } + +private: + QSharedDataPointer d; +}; + +Q_BLUETOOTH_EXPORT bool operator==(const QLowEnergyCharacteristicData &cd1, + const QLowEnergyCharacteristicData &cd2); +inline bool operator!=(const QLowEnergyCharacteristicData &cd1, + const QLowEnergyCharacteristicData &cd2) +{ + return !(cd1 == cd2); +} + +Q_DECLARE_SHARED(QLowEnergyCharacteristicData) + +QT_END_NAMESPACE + +#endif // Include guard. diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qlowenergyconnectionparameters.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qlowenergyconnectionparameters.h new file mode 100644 index 0000000..c765763 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qlowenergyconnectionparameters.h @@ -0,0 +1,92 @@ +/*************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QLOWENERGYCONNECTIONPARAMETERS_H +#define QLOWENERGYCONNECTIONPARAMETERS_H + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +class QLowEnergyConnectionParametersPrivate; + +class Q_BLUETOOTH_EXPORT QLowEnergyConnectionParameters +{ + friend Q_BLUETOOTH_EXPORT bool operator==(const QLowEnergyConnectionParameters &p1, + const QLowEnergyConnectionParameters &p2); +public: + QLowEnergyConnectionParameters(); + QLowEnergyConnectionParameters(const QLowEnergyConnectionParameters &other); + ~QLowEnergyConnectionParameters(); + + QLowEnergyConnectionParameters &operator=(const QLowEnergyConnectionParameters &other); + + void setIntervalRange(double minimum, double maximum); + double minimumInterval() const; + double maximumInterval() const; + + void setLatency(int latency); + int latency() const; + + void setSupervisionTimeout(int timeout); + int supervisionTimeout() const; + + void swap(QLowEnergyConnectionParameters &other) Q_DECL_NOTHROW { qSwap(d, other.d); } + +private: + QSharedDataPointer d; +}; + +Q_BLUETOOTH_EXPORT bool operator==(const QLowEnergyConnectionParameters &p1, + const QLowEnergyConnectionParameters &p2); +inline bool operator!=(const QLowEnergyConnectionParameters &p1, + const QLowEnergyConnectionParameters &p2) +{ + return !(p1 == p2); +} + +Q_DECLARE_SHARED(QLowEnergyConnectionParameters) + +QT_END_NAMESPACE + +Q_DECLARE_METATYPE(QLowEnergyConnectionParameters) + +#endif // Include guard diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qlowenergycontroller.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qlowenergycontroller.h new file mode 100644 index 0000000..9fe46fe --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qlowenergycontroller.h @@ -0,0 +1,166 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QLOWENERGYCONTROLLER_H +#define QLOWENERGYCONTROLLER_H + +#include +#include +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +class QLowEnergyAdvertisingParameters; +class QLowEnergyConnectionParameters; +class QLowEnergyControllerPrivate; +class QLowEnergyServiceData; + +class Q_BLUETOOTH_EXPORT QLowEnergyController : public QObject +{ + Q_OBJECT +public: + enum Error { + NoError, + UnknownError, + UnknownRemoteDeviceError, + NetworkError, + InvalidBluetoothAdapterError, + ConnectionError, + AdvertisingError, + RemoteHostClosedError + }; + Q_ENUM(Error) + + enum ControllerState { + UnconnectedState = 0, + ConnectingState, + ConnectedState, + DiscoveringState, + DiscoveredState, + ClosingState, + AdvertisingState, + }; + Q_ENUM(ControllerState) + + enum RemoteAddressType { + PublicAddress = 0, + RandomAddress + }; + Q_ENUM(RemoteAddressType) + + enum Role { CentralRole, PeripheralRole }; + Q_ENUM(Role) + + explicit QLowEnergyController(const QBluetoothAddress &remoteDevice, + QObject *parent = nullptr); // TODO Qt 6 remove ctor + explicit QLowEnergyController(const QBluetoothDeviceInfo &remoteDevice, + QObject *parent = nullptr); + explicit QLowEnergyController(const QBluetoothAddress &remoteDevice, + const QBluetoothAddress &localDevice, + QObject *parent = nullptr); // TODO Qt 6 remove ctor + + static QLowEnergyController *createCentral(const QBluetoothDeviceInfo &remoteDevice, + QObject *parent = nullptr); + static QLowEnergyController *createPeripheral(QObject *parent = nullptr); + + // TODO: Allow to set connection timeout (disconnect when no data has been exchanged for n seconds). + + ~QLowEnergyController(); + + QBluetoothAddress localAddress() const; + QBluetoothAddress remoteAddress() const; + QBluetoothUuid remoteDeviceUuid() const; + + QString remoteName() const; + + ControllerState state() const; + + // TODO Qt6 remove this property. It is not longer needed when using Bluez DBus backend + RemoteAddressType remoteAddressType() const; + void setRemoteAddressType(RemoteAddressType type); + + void connectToDevice(); + void disconnectFromDevice(); + + void discoverServices(); + QList services() const; + QLowEnergyService *createServiceObject(const QBluetoothUuid &service, QObject *parent = nullptr); + + void startAdvertising(const QLowEnergyAdvertisingParameters ¶meters, + const QLowEnergyAdvertisingData &advertisingData, + const QLowEnergyAdvertisingData &scanResponseData = QLowEnergyAdvertisingData()); + void stopAdvertising(); + + QLowEnergyService *addService(const QLowEnergyServiceData &service, QObject *parent = nullptr); + + void requestConnectionUpdate(const QLowEnergyConnectionParameters ¶meters); + + Error error() const; + QString errorString() const; + + Role role() const; + +Q_SIGNALS: + void connected(); + void disconnected(); + void stateChanged(QLowEnergyController::ControllerState state); + void error(QLowEnergyController::Error newError); + + void serviceDiscovered(const QBluetoothUuid &newService); + void discoveryFinished(); + void connectionUpdated(const QLowEnergyConnectionParameters ¶meters); + +private: + explicit QLowEnergyController(QObject *parent = nullptr); // For the peripheral role. + + Q_DECLARE_PRIVATE(QLowEnergyController) + QLowEnergyControllerPrivate *d_ptr; +}; + +QT_END_NAMESPACE + +Q_DECLARE_METATYPE(QLowEnergyController::Error) +Q_DECLARE_METATYPE(QLowEnergyController::ControllerState) +Q_DECLARE_METATYPE(QLowEnergyController::RemoteAddressType) +Q_DECLARE_METATYPE(QLowEnergyController::Role) + +#endif // QLOWENERGYCONTROLLER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qlowenergydescriptor.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qlowenergydescriptor.h new file mode 100644 index 0000000..9dd0cc2 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qlowenergydescriptor.h @@ -0,0 +1,99 @@ +/*************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Copyright (C) 2016 BlackBerry Limited. All rights reserved. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QLOWENERGYDESCRIPTOR_H +#define QLOWENERGYDESCRIPTOR_H + +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +struct QLowEnergyDescriptorPrivate; +class QLowEnergyServicePrivate; + +class Q_BLUETOOTH_EXPORT QLowEnergyDescriptor +{ +public: + QLowEnergyDescriptor(); + QLowEnergyDescriptor(const QLowEnergyDescriptor &other); + ~QLowEnergyDescriptor(); + + QLowEnergyDescriptor &operator=(const QLowEnergyDescriptor &other); + bool operator==(const QLowEnergyDescriptor &other) const; + bool operator!=(const QLowEnergyDescriptor &other) const; + + bool isValid() const; + + QByteArray value() const; + + QBluetoothUuid uuid() const; + QLowEnergyHandle handle() const; + QString name() const; + + QBluetoothUuid::DescriptorType type() const; + +protected: + QLowEnergyHandle characteristicHandle() const; + QSharedPointer d_ptr; + + friend class QLowEnergyCharacteristic; + friend class QLowEnergyService; + friend class QLowEnergyControllerPrivate; + friend class QLowEnergyControllerPrivateAndroid; + friend class QLowEnergyControllerPrivateBluez; + friend class QLowEnergyControllerPrivateBluezDBus; + friend class QLowEnergyControllerPrivateCommon; + friend class QLowEnergyControllerPrivateOSX; + friend class QLowEnergyControllerPrivateWinRT; + QLowEnergyDescriptorPrivate *data = nullptr; + + QLowEnergyDescriptor(QSharedPointer p, + QLowEnergyHandle charHandle, + QLowEnergyHandle descHandle); +}; + +QT_END_NAMESPACE + +Q_DECLARE_METATYPE(QLowEnergyDescriptor) + +#endif // QLOWENERGYDESCRIPTOR_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qlowenergydescriptordata.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qlowenergydescriptordata.h new file mode 100644 index 0000000..856acf5 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qlowenergydescriptordata.h @@ -0,0 +1,101 @@ +/*************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QLOWENERGYDESCRIPTORDATA_H +#define QLOWENERGYDESCRIPTORDATA_H + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +class QByteArray; +struct QLowEnergyDescriptorDataPrivate; + +class Q_BLUETOOTH_EXPORT QLowEnergyDescriptorData +{ + friend Q_BLUETOOTH_EXPORT bool operator==(const QLowEnergyDescriptorData &d1, + const QLowEnergyDescriptorData &d12); +public: + QLowEnergyDescriptorData(); + QLowEnergyDescriptorData(const QBluetoothUuid &uuid, + const QByteArray &value); + QLowEnergyDescriptorData(const QLowEnergyDescriptorData &other); + ~QLowEnergyDescriptorData(); + + QLowEnergyDescriptorData &operator=(const QLowEnergyDescriptorData &other); + + QByteArray value() const; + void setValue(const QByteArray &value); + + QBluetoothUuid uuid() const; + void setUuid(const QBluetoothUuid &uuid); + + bool isValid() const; + + void setReadPermissions(bool readable, + QBluetooth::AttAccessConstraints constraints = QBluetooth::AttAccessConstraints()); + bool isReadable() const; + QBluetooth::AttAccessConstraints readConstraints() const; + + void setWritePermissions(bool writable, + QBluetooth::AttAccessConstraints constraints = QBluetooth::AttAccessConstraints()); + bool isWritable() const; + QBluetooth::AttAccessConstraints writeConstraints() const; + + void swap(QLowEnergyDescriptorData &other) Q_DECL_NOTHROW { qSwap(d, other.d); } + +private: + QSharedDataPointer d; +}; + +Q_BLUETOOTH_EXPORT bool operator==(const QLowEnergyDescriptorData &d1, + const QLowEnergyDescriptorData &d2); + +inline bool operator!=(const QLowEnergyDescriptorData &d1, const QLowEnergyDescriptorData &d2) +{ + return !(d1 == d2); +} + +Q_DECLARE_SHARED(QLowEnergyDescriptorData) + +QT_END_NAMESPACE + +#endif // Include guard. diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qlowenergyservice.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qlowenergyservice.h new file mode 100644 index 0000000..9de65a8 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qlowenergyservice.h @@ -0,0 +1,152 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Copyright (C) 2016 Javier S. Pedro +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ +#ifndef QLOWENERGYSERVICE_H +#define QLOWENERGYSERVICE_H + +#include +#include +#include + +QT_BEGIN_NAMESPACE + +class QLowEnergyServicePrivate; +class Q_BLUETOOTH_EXPORT QLowEnergyService : public QObject +{ + Q_OBJECT +public: + enum ServiceType { + PrimaryService = 0x0001, + IncludedService = 0x0002 + }; + Q_ENUM(ServiceType) + Q_DECLARE_FLAGS(ServiceTypes, ServiceType) + + enum ServiceError { + NoError = 0, + OperationError, + CharacteristicWriteError, + DescriptorWriteError, + UnknownError, + CharacteristicReadError, + DescriptorReadError + }; + Q_ENUM(ServiceError) + + enum ServiceState { + InvalidService = 0, + DiscoveryRequired, // we know start/end handle but nothing more + //TODO Rename DiscoveringServices -> DiscoveringDetails or DiscoveringService + DiscoveringServices,// discoverDetails() called and running + ServiceDiscovered, // all details have been synchronized + LocalService, + }; + Q_ENUM(ServiceState) + + enum WriteMode { + WriteWithResponse = 0, + WriteWithoutResponse, + WriteSigned + }; + Q_ENUM(WriteMode) + + ~QLowEnergyService(); + + QList includedServices() const; + + QLowEnergyService::ServiceTypes type() const; + QLowEnergyService::ServiceState state() const; + + QLowEnergyCharacteristic characteristic(const QBluetoothUuid &uuid) const; + QList characteristics() const; + QBluetoothUuid serviceUuid() const; + QString serviceName() const; + + void discoverDetails(); + + ServiceError error() const; + + bool contains(const QLowEnergyCharacteristic &characteristic) const; + void readCharacteristic(const QLowEnergyCharacteristic &characteristic); + void writeCharacteristic(const QLowEnergyCharacteristic &characteristic, + const QByteArray &newValue, + WriteMode mode = WriteWithResponse); + + bool contains(const QLowEnergyDescriptor &descriptor) const; + void readDescriptor(const QLowEnergyDescriptor &descriptor); + void writeDescriptor(const QLowEnergyDescriptor &descriptor, + const QByteArray &newValue); + +Q_SIGNALS: + void stateChanged(QLowEnergyService::ServiceState newState); + void characteristicChanged(const QLowEnergyCharacteristic &info, + const QByteArray &value); + void characteristicRead(const QLowEnergyCharacteristic &info, + const QByteArray &value); + void characteristicWritten(const QLowEnergyCharacteristic &info, + const QByteArray &value); + void descriptorRead(const QLowEnergyDescriptor &info, + const QByteArray &value); + void descriptorWritten(const QLowEnergyDescriptor &info, + const QByteArray &value); + void error(QLowEnergyService::ServiceError error); + +private: + Q_DECLARE_PRIVATE(QLowEnergyService) + QSharedPointer d_ptr; + + // QLowEnergyController is the factory for this class + friend class QLowEnergyController; + friend class QLowEnergyControllerPrivate; + friend class QLowEnergyControllerPrivateBluez; + friend class QLowEnergyControllerPrivateAndroid; + QLowEnergyService(QSharedPointer p, + QObject *parent = nullptr); +}; + +Q_DECLARE_OPERATORS_FOR_FLAGS(QLowEnergyService::ServiceTypes) + +QT_END_NAMESPACE + +Q_DECLARE_METATYPE(QLowEnergyService::ServiceError) +Q_DECLARE_METATYPE(QLowEnergyService::ServiceState) +Q_DECLARE_METATYPE(QLowEnergyService::ServiceType) +Q_DECLARE_METATYPE(QLowEnergyService::WriteMode) + +#endif // QLOWENERGYSERVICE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qlowenergyservicedata.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qlowenergyservicedata.h new file mode 100644 index 0000000..4d55326 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qlowenergyservicedata.h @@ -0,0 +1,98 @@ +/*************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QLOWENERGYSERVICEDATA_H +#define QLOWENERGYSERVICEDATA_H + +#include +#include + +QT_BEGIN_NAMESPACE + +class QBluetoothUuid; +class QLowEnergyCharacteristicData; +class QLowEnergyService; +struct QLowEnergyServiceDataPrivate; + +class Q_BLUETOOTH_EXPORT QLowEnergyServiceData +{ + friend Q_BLUETOOTH_EXPORT bool operator==(const QLowEnergyServiceData &sd1, + const QLowEnergyServiceData &sd2); +public: + QLowEnergyServiceData(); + QLowEnergyServiceData(const QLowEnergyServiceData &other); + ~QLowEnergyServiceData(); + + QLowEnergyServiceData &operator=(const QLowEnergyServiceData &other); + + enum ServiceType { ServiceTypePrimary = 0x2800, ServiceTypeSecondary = 0x2801 }; + ServiceType type() const; + void setType(ServiceType type); + + QBluetoothUuid uuid() const; + void setUuid(const QBluetoothUuid &uuid); + + QList includedServices() const; + void setIncludedServices(const QList &services); + void addIncludedService(QLowEnergyService *service); + + QList characteristics() const; + void setCharacteristics(const QList &characteristics); + void addCharacteristic(const QLowEnergyCharacteristicData &characteristic); + + bool isValid() const; + + void swap(QLowEnergyServiceData &other) Q_DECL_NOTHROW { qSwap(d, other.d); } + +private: + QSharedDataPointer d; +}; + +Q_BLUETOOTH_EXPORT bool operator==(const QLowEnergyServiceData &sd1, + const QLowEnergyServiceData &sd2); +inline bool operator!=(const QLowEnergyServiceData &sd1, const QLowEnergyServiceData &sd2) +{ + return !(sd1 == sd2); +} + +Q_DECLARE_SHARED(QLowEnergyServiceData) + +QT_END_NAMESPACE + +#endif // Include guard. diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qtbluetooth-config.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qtbluetooth-config.h new file mode 100644 index 0000000..54baab5 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qtbluetooth-config.h @@ -0,0 +1 @@ +#define QT_FEATURE_bluez 1 diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qtbluetoothglobal.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qtbluetoothglobal.h new file mode 100644 index 0000000..40b6d3d --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qtbluetoothglobal.h @@ -0,0 +1,59 @@ +/**************************************************************************** +** +** Copyright (C) 2017 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtBluetooth module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ +#ifndef QTBLUETOOTH_H +#define QTBLUETOOTH_H + +#include +#include // for feature detection + +QT_BEGIN_NAMESPACE + +#ifndef QT_STATIC +# if defined(QT_BUILD_BLUETOOTH_LIB) +# define Q_BLUETOOTH_EXPORT Q_DECL_EXPORT +# else +# define Q_BLUETOOTH_EXPORT Q_DECL_IMPORT +# endif +#else +# define Q_BLUETOOTH_EXPORT +#endif + +QT_END_NAMESPACE + +#endif // QTBLUETOOTH_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qtbluetoothversion.h b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qtbluetoothversion.h new file mode 100644 index 0000000..c7ce5ca --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtBluetooth/qtbluetoothversion.h @@ -0,0 +1,9 @@ +/* This file was generated by syncqt. */ +#ifndef QT_QTBLUETOOTH_VERSION_H +#define QT_QTBLUETOOTH_VERSION_H + +#define QTBLUETOOTH_VERSION_STR "5.12.5" + +#define QTBLUETOOTH_VERSION 0x050C05 + +#endif // QT_QTBLUETOOTH_VERSION_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/abstractbarchartitem_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/abstractbarchartitem_p.h new file mode 100644 index 0000000..7afd8ec --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/abstractbarchartitem_p.h @@ -0,0 +1,125 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + + +#ifndef ABSTRACTBARCHARTITEM_H +#define ABSTRACTBARCHARTITEM_H + +#include +#include +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class Bar; +class QAxisCategories; +class QChart; +class BarAnimation; +class QBarSetPrivate; +class QAbstractAxis; + +class QT_CHARTS_PRIVATE_EXPORT AbstractBarChartItem : public ChartItem +{ + Q_OBJECT +public: + AbstractBarChartItem(QAbstractBarSeries *series, QGraphicsItem* item = 0); + virtual ~AbstractBarChartItem(); + +public: + void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget); + QRectF boundingRect() const; + + virtual QVector calculateLayout() = 0; + void initializeFullLayout(); + virtual void initializeLayout(int set, int category, int layoutIndex, bool resetAnimation) = 0; + virtual void applyLayout(const QVector &layout); + virtual void setAnimation(BarAnimation *animation); + virtual ChartAnimation *animation() const; + void setLayout(const QVector &layout); + QRectF geometry() const { return m_rect;} + void resetAnimation(); + +public Q_SLOTS: + void handleDomainUpdated(); + void handleLayoutChanged(); + void handleLabelsVisibleChanged(bool visible); + void handleDataStructureChanged(); // structure of of series has changed, recreate graphic items + void handleVisibleChanged(); + void handleOpacityChanged(); + void handleUpdatedBars(); + void handleLabelsPositionChanged(); + virtual void positionLabels(); + void handleBarValueChange(int index, QBarSet *barset); + void handleBarValueAdd(int index, int count, QBarSet *barset); + void handleBarValueRemove(int index, int count, QBarSet *barset); + void handleSeriesAdded(QAbstractSeries *series); + void handleSeriesRemoved(QAbstractSeries *series); + +protected: + void positionLabelsVertical(); + void createLabelItems(); + void handleSetStructureChange(); + virtual QString generateLabelText(int set, int category, qreal value); + void updateBarItems(); + virtual void markLabelsDirty(QBarSet *barset, int index, int count); + void calculateSeriesPositionAdjustmentAndWidth(); + + QRectF m_rect; + QVector m_layout; + + BarAnimation *m_animation; + + QAbstractBarSeries *m_series; // Not owned. + QMap > m_barMap; + QMap > m_indexForBarMap; + int m_firstCategory; + int m_lastCategory; + int m_categoryCount; + QSizeF m_oldSize; + bool m_labelItemsMissing; + Qt::Orientation m_orientation; + bool m_resetAnimation; + qreal m_seriesPosAdjustment; + qreal m_seriesWidth; +}; + +QT_CHARTS_END_NAMESPACE + +#endif // ABSTRACTBARCHARTITEM_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/abstractchartlayout_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/abstractchartlayout_p.h new file mode 100644 index 0000000..32d627a --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/abstractchartlayout_p.h @@ -0,0 +1,97 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef ABSTRACTCHARTLAYOUT_H +#define ABSTRACTCHARTLAYOUT_H + +#include +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class ChartTitle; +class ChartAxisElement; +class ChartPresenter; +class QLegend; +class ChartBackground; + +class QT_CHARTS_PRIVATE_EXPORT AbstractChartLayout : public QGraphicsLayout +{ +public: + AbstractChartLayout(ChartPresenter *presenter); + virtual ~AbstractChartLayout(); + + virtual void setMargins(const QMargins &margins); + virtual QMargins margins() const; + virtual void setGeometry(const QRectF &rect); + +protected: + virtual QRectF calculateBackgroundGeometry(const QRectF &geometry, ChartBackground *background, + bool update = true) const; + virtual QRectF calculateBackgroundMinimum(const QRectF &minimum) const; + virtual QRectF calculateContentGeometry(const QRectF &geometry) const; + virtual QRectF calculateContentMinimum(const QRectF &minimum) const; + virtual QRectF calculateTitleGeometry(const QRectF &geometry, ChartTitle *title, + bool update = true) const; + virtual QRectF calculateTitleMinimum(const QRectF &minimum, ChartTitle *title) const; + virtual QRectF calculateLegendGeometry(const QRectF &geometry, QLegend *legend, + bool update = true) const; + virtual QRectF calculateLegendMinimum(const QRectF &minimum, QLegend *legend) const; + + virtual QRectF calculateAxisGeometry(const QRectF &geometry, + const QList& axes, + bool update = true) const = 0; + virtual QRectF calculateAxisMinimum(const QRectF &minimum, + const QList& axes) const = 0; + + // from QGraphicsLayout + QSizeF sizeHint(Qt::SizeHint which, const QSizeF &constraint = QSizeF()) const; + int count() const { return 0; } + QGraphicsLayoutItem *itemAt(int) const { return 0; }; + void removeAt(int) {}; + + ChartPresenter *m_presenter; + QMargins m_margins; + QRectF m_minAxisRect; +}; + +QT_CHARTS_END_NAMESPACE + +#endif // ABSTRACTCHARTLAYOUT_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/abstractdomain_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/abstractdomain_p.h new file mode 100644 index 0000000..9a5c802 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/abstractdomain_p.h @@ -0,0 +1,153 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef ABSTRACTDOMAIN_H +#define ABSTRACTDOMAIN_H +#include +#include +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QAbstractAxis; + +class QT_CHARTS_PRIVATE_EXPORT AbstractDomain: public QObject +{ + Q_OBJECT +public: + enum DomainType { UndefinedDomain, + XYDomain, + XLogYDomain, + LogXYDomain, + LogXLogYDomain, + XYPolarDomain, + XLogYPolarDomain, + LogXYPolarDomain, + LogXLogYPolarDomain }; +public: + explicit AbstractDomain(QObject *object = 0); + virtual ~AbstractDomain(); + + virtual void setSize(const QSizeF &size); + QSizeF size() const; + + virtual DomainType type() = 0; + + virtual void setRange(qreal minX, qreal maxX, qreal minY, qreal maxY) = 0; + void setRangeX(qreal min, qreal max); + void setRangeY(qreal min, qreal max); + void setMinX(qreal min); + void setMaxX(qreal max); + void setMinY(qreal min); + void setMaxY(qreal max); + + qreal minX() const { return m_minX; } + qreal maxX() const { return m_maxX; } + qreal minY() const { return m_minY; } + qreal maxY() const { return m_maxY; } + + qreal spanX() const; + qreal spanY() const; + bool isEmpty() const; + + void blockRangeSignals(bool block); + bool rangeSignalsBlocked() const { return m_signalsBlocked; } + + void zoomReset(); + void storeZoomReset(); + bool isZoomed() { return m_zoomed; } + + friend bool Q_AUTOTEST_EXPORT operator== (const AbstractDomain &domain1, const AbstractDomain &domain2); + friend bool Q_AUTOTEST_EXPORT operator!= (const AbstractDomain &domain1, const AbstractDomain &domain2); + friend QDebug Q_AUTOTEST_EXPORT operator<<(QDebug dbg, const AbstractDomain &domain); + + virtual void zoomIn(const QRectF &rect) = 0; + virtual void zoomOut(const QRectF &rect) = 0; + virtual void move(qreal dx, qreal dy) = 0; + + virtual QPointF calculateGeometryPoint(const QPointF &point, bool &ok) const = 0; + virtual QPointF calculateDomainPoint(const QPointF &point) const = 0; + virtual QVector calculateGeometryPoints(const QVector &vector) const = 0; + + virtual bool attachAxis(QAbstractAxis *axis); + virtual bool detachAxis(QAbstractAxis *axis); + + static void looseNiceNumbers(qreal &min, qreal &max, int &ticksCount); + static qreal niceNumber(qreal x, bool ceiling); + + void setReverseX(bool reverse) { m_reverseX = reverse; } + void setReverseY(bool reverse) { m_reverseY = reverse; } + + bool isReverseX() const { return m_reverseX; } + bool isReverseY() const { return m_reverseY; } + +Q_SIGNALS: + void updated(); + void rangeHorizontalChanged(qreal min, qreal max); + void rangeVerticalChanged(qreal min, qreal max); + +public Q_SLOTS: + void handleVerticalAxisRangeChanged(qreal min,qreal max); + void handleHorizontalAxisRangeChanged(qreal min,qreal max); + void handleReverseXChanged(bool reverse); + void handleReverseYChanged(bool reverse); + +protected: + void adjustLogDomainRanges(qreal &min, qreal &max); + QRectF fixZoomRect(const QRectF &rect); + + qreal m_minX; + qreal m_maxX; + qreal m_minY; + qreal m_maxY; + QSizeF m_size; + bool m_signalsBlocked; + bool m_zoomed; + qreal m_zoomResetMinX; + qreal m_zoomResetMaxX; + qreal m_zoomResetMinY; + qreal m_zoomResetMaxY; + bool m_reverseX; + bool m_reverseY; +}; + +QT_CHARTS_END_NAMESPACE + +#endif // ABSTRACTDOMAIN_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/areachartitem_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/areachartitem_p.h new file mode 100644 index 0000000..3546d33 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/areachartitem_p.h @@ -0,0 +1,150 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef AREACHARTITEM_H +#define AREACHARTITEM_H + +#include +#include +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class AreaChartItem; + +class QT_CHARTS_PRIVATE_EXPORT AreaChartItem : public ChartItem +{ + Q_OBJECT +public: + AreaChartItem(QAreaSeries *areaSeries, QGraphicsItem* item = 0); + ~AreaChartItem(); + + //from QGraphicsItem + QRectF boundingRect() const; + void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget); + QPainterPath shape() const; + + LineChartItem *upperLineItem() const { return m_upper; } + LineChartItem *lowerLineItem() const { return m_lower; } + + void updatePath(); + + void setPresenter(ChartPresenter *presenter); + QAreaSeries *series() const { return m_series; } + + void setUpperSeries(QLineSeries *series); + void setLowerSeries(QLineSeries *series); + +protected: + void mousePressEvent(QGraphicsSceneMouseEvent *event); + void hoverEnterEvent(QGraphicsSceneHoverEvent *event); + void hoverLeaveEvent(QGraphicsSceneHoverEvent *event); + void mouseReleaseEvent(QGraphicsSceneMouseEvent *event); + void mouseDoubleClickEvent(QGraphicsSceneMouseEvent *event); + +Q_SIGNALS: + void clicked(const QPointF &point); + void hovered(const QPointF &point, bool state); + void pressed(const QPointF &point); + void released(const QPointF &point); + void doubleClicked(const QPointF &point); + +public Q_SLOTS: + void handleUpdated(); + void handleDomainUpdated(); + +private: + void fixEdgeSeriesDomain(LineChartItem *edgeSeries); + + QAreaSeries *m_series; + LineChartItem *m_upper; + LineChartItem *m_lower; + QPainterPath m_path; + QRectF m_rect; + QPen m_linePen; + QPen m_pointPen; + QBrush m_brush; + bool m_pointsVisible; + + bool m_pointLabelsVisible; + QString m_pointLabelsFormat; + QFont m_pointLabelsFont; + QColor m_pointLabelsColor; + bool m_pointLabelsClipping; + + QPointF m_lastMousePos; + bool m_mousePressed; + +}; + +class QT_CHARTS_PRIVATE_EXPORT AreaBoundItem : public LineChartItem +{ +public: + AreaBoundItem(AreaChartItem *area, QLineSeries *lineSeries,QGraphicsItem* item = 0) + : LineChartItem(lineSeries, item), m_item(area) + { + // We do not actually want to draw anything from LineChartItem. + // Drawing is done in AreaChartItem only. + setVisible(false); + } + ~AreaBoundItem() {} + + void updateGeometry() + { + // Make sure the series is in a chart before trying to update + if (m_item->series()->chart()) { + // Turn off points drawing from component line chart item, as that + // messes up the fill for area series. + suppressPoints(); + // Component lineseries are not necessarily themselves on the chart, + // so get the chart type for them from area chart. + forceChartType(m_item->series()->chart()->chartType()); + LineChartItem::updateGeometry(); + m_item->updatePath(); + } + } + +private: + AreaChartItem *m_item; +}; + +QT_CHARTS_END_NAMESPACE + +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/axisanimation_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/axisanimation_p.h new file mode 100644 index 0000000..42cf808 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/axisanimation_p.h @@ -0,0 +1,72 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef AXISANIMATION_H +#define AXISANIMATION_H + +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class ChartAxisElement; + +class QT_CHARTS_PRIVATE_EXPORT AxisAnimation: public ChartAnimation +{ +public: + enum Animation { DefaultAnimation, ZoomOutAnimation, ZoomInAnimation, MoveForwardAnimation, MoveBackwordAnimation}; + AxisAnimation(ChartAxisElement *axis, int duration, QEasingCurve &curve); + ~AxisAnimation(); + void setAnimationType(Animation type); + void setAnimationPoint(const QPointF &point); + void setValues(QVector &oldLayout, QVector &newLayout); +protected: + QVariant interpolated(const QVariant &from, const QVariant &to, qreal progress) const; + void updateCurrentValue(const QVariant &value); +private: + ChartAxisElement *m_axis; + Animation m_type; + QPointF m_point; +}; + +QT_CHARTS_END_NAMESPACE + + + +#endif /* AXISANIMATION_H */ diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/bar_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/bar_p.h new file mode 100644 index 0000000..654d88a --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/bar_p.h @@ -0,0 +1,100 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef BAR_H +#define BAR_H + +#include +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QBarSet; + +// Single visual bar item of chart +class QT_CHARTS_PRIVATE_EXPORT Bar : public QObject, public QGraphicsRectItem +{ + Q_OBJECT +public: + Bar(QBarSet *barset, QGraphicsItem *parent = 0); + ~Bar(); + +public: + void mousePressEvent(QGraphicsSceneMouseEvent *event); + void hoverEnterEvent(QGraphicsSceneHoverEvent *event); + void hoverLeaveEvent(QGraphicsSceneHoverEvent *event); + void mouseReleaseEvent(QGraphicsSceneMouseEvent *event); + void mouseDoubleClickEvent(QGraphicsSceneMouseEvent *event); + + void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget = 0); + void setVisualsDirty(bool dirty) { m_visualsDirty = dirty; } + bool visualsDirty() const { return m_visualsDirty; } + void setLabelDirty(bool dirty) { m_labelDirty = dirty; } + bool labelDirty() const { return m_labelDirty; } + + void setLabelItem(QGraphicsTextItem *labelItem) { m_labelItem = labelItem; } + QGraphicsTextItem *labelItem() const { return m_labelItem; } + + void setIndex(int index) { m_index = index; } + int index() const { return m_index; } + void setLayoutIndex(int index) { m_layoutIndex = index; } + int layoutIndex() const { return m_layoutIndex; } + +Q_SIGNALS: + void clicked(int index, QBarSet *barset); + void hovered(bool status, int index, QBarSet *barset); + void pressed(int index, QBarSet *barset); + void released(int index, QBarSet *barset); + void doubleClicked(int index, QBarSet *barset); + +private: + int m_index; + int m_layoutIndex; + QBarSet *m_barset; + QGraphicsTextItem *m_labelItem; + bool m_hovering; + bool m_mousePressed; + bool m_visualsDirty; + bool m_labelDirty; +}; + +QT_CHARTS_END_NAMESPACE + +#endif // BAR_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/baranimation_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/baranimation_p.h new file mode 100644 index 0000000..c27765d --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/baranimation_p.h @@ -0,0 +1,69 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef BARANIMATION_P_H +#define BARANIMATION_P_H + +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class AbstractBarChartItem; + +class QT_CHARTS_PRIVATE_EXPORT BarAnimation : public ChartAnimation +{ + Q_OBJECT + +public: + BarAnimation(AbstractBarChartItem *item, int duration, QEasingCurve &curve); + ~BarAnimation(); + +public: // from QVariantAnimation + virtual QVariant interpolated(const QVariant &from, const QVariant &to, qreal progress) const; + virtual void updateCurrentValue(const QVariant &value); + + void setup(const QVector &oldLayout, const QVector &newLayout); + +protected: + AbstractBarChartItem *m_item; +}; + +QT_CHARTS_END_NAMESPACE + +#endif // BARANIMATION_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/barchartitem_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/barchartitem_p.h new file mode 100644 index 0000000..174eaa7 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/barchartitem_p.h @@ -0,0 +1,70 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + + +#ifndef BARCHARTITEM_H +#define BARCHARTITEM_H + +#include +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QT_CHARTS_PRIVATE_EXPORT BarChartItem : public AbstractBarChartItem +{ + Q_OBJECT +public: + BarChartItem(QAbstractBarSeries *series, QGraphicsItem* item = 0); + +private Q_SLOTS: + void handleLabelsPositionChanged(); + void positionLabels(); + +private: + virtual QVector calculateLayout(); + void initializeLayout(int set, int category, + int layoutIndex, bool resetAnimation); + QPointF topLeftPoint(int set, int setCount, int category, qreal barWidth, qreal value); + QPointF bottomRightPoint(int set, int setCount, int category, qreal barWidth, qreal value); +}; + +QT_CHARTS_END_NAMESPACE + +#endif // BARCHARTITEM_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/boxplotanimation_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/boxplotanimation_p.h new file mode 100644 index 0000000..0f3cb38 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/boxplotanimation_p.h @@ -0,0 +1,76 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef BOXPLOTANIMATION_P_H +#define BOXPLOTANIMATION_P_H + +#include +#include +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class BoxPlotChartItem; + +class QT_CHARTS_PRIVATE_EXPORT BoxPlotAnimation : public QObject +{ + Q_OBJECT +public: + BoxPlotAnimation(BoxPlotChartItem *item, int duration, QEasingCurve &curve); + ~BoxPlotAnimation(); + + void addBox(BoxWhiskers *box); + ChartAnimation *boxAnimation(BoxWhiskers *box); + ChartAnimation *boxChangeAnimation(BoxWhiskers *box); + + void setAnimationStart(BoxWhiskers *box); + void stopAll(); + void removeBoxAnimation(BoxWhiskers *box); + +protected: + BoxPlotChartItem *m_item; + QHash m_animations; + int m_animationDuration; + QEasingCurve m_animationCurve; +}; + +QT_CHARTS_END_NAMESPACE + +#endif // BOXPLOTANIMATION_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/boxplotchartitem_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/boxplotchartitem_p.h new file mode 100644 index 0000000..f7a7cd9 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/boxplotchartitem_p.h @@ -0,0 +1,96 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + + +#ifndef BOXPLOTCHARTITEM_H +#define BOXPLOTCHARTITEM_H + +#include +#include +#include +#include +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class BoxPlotSeriesPrivate; + +class QT_CHARTS_PRIVATE_EXPORT BoxPlotChartItem : public ChartItem +{ + Q_OBJECT +public: + BoxPlotChartItem(QBoxPlotSeries *series, QGraphicsItem *item = 0); + ~BoxPlotChartItem(); + + void setAnimation(BoxPlotAnimation *animation); + + void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget); + QRectF boundingRect() const; + +public Q_SLOTS: + void handleSeriesVisibleChanged(); + void handleOpacityChanged(); + void handleDataStructureChanged(); + void handleDomainUpdated(); + void handleLayoutChanged(); + void handleUpdatedBars(); + void handleBoxsetRemove(QList barSets); + +private: + virtual QVector calculateLayout(); + void initializeLayout(); + bool updateBoxGeometry(BoxWhiskers *box, int index); + +protected: + friend class QBoxPlotSeriesPrivate; + QBoxPlotSeries *m_series; // Not owned. + QList m_boxes; + QHash m_boxTable; + int m_seriesIndex; + int m_seriesCount; + + BoxPlotAnimation *m_animation; + + QRectF m_boundingRect; +}; + +QT_CHARTS_END_NAMESPACE + +#endif // BOXPLOTCHARTITEM_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/boxwhiskers_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/boxwhiskers_p.h new file mode 100644 index 0000000..6ce0bf5 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/boxwhiskers_p.h @@ -0,0 +1,119 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef BOXWHISKERS_H +#define BOXWHISKERS_H + +#include +#include +#include +#include +#include +#include +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QBarSet; + +class QT_CHARTS_PRIVATE_EXPORT BoxWhiskers : public QGraphicsObject +{ + Q_OBJECT + +public: + BoxWhiskers(QBoxSet *set, AbstractDomain *domain, QGraphicsObject *parent); + ~BoxWhiskers(); + + void setBrush(const QBrush &brush); + void setPen(const QPen &pen); + void setLayout(const BoxWhiskersData &data); + void setBoxOutlined(const bool outlined) { m_boxOutlined = outlined; } + void setBoxWidth(const qreal width); + + void mousePressEvent(QGraphicsSceneMouseEvent *event); + void hoverEnterEvent(QGraphicsSceneHoverEvent *event); + void hoverLeaveEvent(QGraphicsSceneHoverEvent *event); + void mouseReleaseEvent(QGraphicsSceneMouseEvent *event); + void mouseDoubleClickEvent(QGraphicsSceneMouseEvent *event); + + QRectF boundingRect() const; + void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget = 0); + + void updateGeometry(AbstractDomain *domain); +protected: + QSizeF sizeHint(Qt::SizeHint which, const QSizeF &constraint) const; + void setGeometry(const QRectF &rect); + +Q_SIGNALS: + void clicked(QBoxSet *boxset); + void hovered(bool status, QBoxSet *boxset); + void pressed(QBoxSet *boxset); + void released(QBoxSet *boxset); + void doubleClicked(QBoxSet *boxset); + +private: + friend class BoxPlotChartItem; + friend class BoxPlotAnimation; + + QBoxSet *m_boxSet; + AbstractDomain *m_domain; + QPainterPath m_boxPath; + QRectF m_boundingRect; + bool m_hovering; + bool m_validData; + QBrush m_brush; + QPen m_pen; + QPen m_medianPen; + QPen m_outlinePen; + bool m_boxOutlined; + qreal m_boxWidth; + BoxWhiskersData m_data; + QSizeF m_domainSize; + QRectF m_middleBox; + qreal m_geometryMedian; + qreal m_geometryLeft; + qreal m_geometryRight; + + bool m_mousePressed; +}; + +QT_CHARTS_END_NAMESPACE + +#endif // BOXWHISKERS_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/boxwhiskersanimation_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/boxwhiskersanimation_p.h new file mode 100644 index 0000000..99e26d7 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/boxwhiskersanimation_p.h @@ -0,0 +1,80 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef BOXWHISKERSANIMATION_P_H +#define BOXWHISKERSANIMATION_P_H + +#include +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class BoxPlotChartItem; +class BoxPlotAnimation; + +class QT_CHARTS_PRIVATE_EXPORT BoxWhiskersAnimation : public ChartAnimation +{ + Q_OBJECT + +public: + BoxWhiskersAnimation(BoxWhiskers *box, BoxPlotAnimation *boxPlotAnimation, int duration, + QEasingCurve &curve); + ~BoxWhiskersAnimation(); + +public: // from QVariantAnimation + virtual QVariant interpolated(const QVariant &from, const QVariant &to, qreal progress) const; + virtual void updateCurrentValue(const QVariant &value); + + void setup(const BoxWhiskersData &startData, const BoxWhiskersData &endData); + void setEndData(const BoxWhiskersData &endData); + void setStartData(const BoxWhiskersData &endData); + + void moveMedianLine(bool move); + +protected: + friend class BoxPlotAnimation; + BoxWhiskers *m_box; + bool m_changeAnimation; + BoxPlotAnimation *m_boxPlotAnimation; +}; + +QT_CHARTS_END_NAMESPACE + +#endif // BOXWHISKERSANIMATION_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/boxwhiskersdata_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/boxwhiskersdata_p.h new file mode 100644 index 0000000..3e9554f --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/boxwhiskersdata_p.h @@ -0,0 +1,90 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef BOXWHISKERSDATA_P_H +#define BOXWHISKERSDATA_P_H + +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QT_CHARTS_PRIVATE_EXPORT BoxWhiskersData +{ +public: + BoxWhiskersData() : + m_lowerExtreme(0.0), + m_lowerQuartile(0.0), + m_median(0.0), + m_upperQuartile(0.0), + m_upperExtreme(0.0), + m_index(0), + m_boxItems(0), + m_maxX(0.0), + m_minX(0.0), + m_maxY(0.0), + m_minY(0.0), + m_seriesIndex(0), + m_seriesCount(0) + { + } + + // Box related statistics + qreal m_lowerExtreme; + qreal m_lowerQuartile; + qreal m_median; + qreal m_upperQuartile; + qreal m_upperExtreme; + int m_index; + int m_boxItems; + + // Domain boundaries, axis + qreal m_maxX; + qreal m_minX; + qreal m_maxY; + qreal m_minY; + + // Serieses related data + int m_seriesIndex; + int m_seriesCount; +}; + +QT_CHARTS_END_NAMESPACE + +#endif // BOXWHISKERSDATA_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/candlestick_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/candlestick_p.h new file mode 100644 index 0000000..80f2987 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/candlestick_p.h @@ -0,0 +1,122 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef CANDLESTICK_P_H +#define CANDLESTICK_P_H + +#include +#include +#include +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class AbstractDomain; +class QCandlestickSet; + +class QT_CHARTS_PRIVATE_EXPORT Candlestick : public QGraphicsObject +{ + Q_OBJECT + +public: + Candlestick(QCandlestickSet *set, AbstractDomain *domain, QGraphicsObject *parent); + ~Candlestick(); + + void setTimePeriod(qreal timePeriod); + void setMaximumColumnWidth(qreal maximumColumnWidth); + void setMinimumColumnWidth(qreal minimumColumnWidth); + void setBodyWidth(qreal bodyWidth); + void setBodyOutlineVisible(bool bodyOutlineVisible); + void setCapsWidth(qreal capsWidth); + void setCapsVisible(bool capsVisible); + void setIncreasingColor(const QColor &color); + void setDecreasingColor(const QColor &color); + void setBrush(const QBrush &brush); + void setPen(const QPen &pen); + void setLayout(const CandlestickData &data); + + void mousePressEvent(QGraphicsSceneMouseEvent *event); + void hoverEnterEvent(QGraphicsSceneHoverEvent *event); + void hoverLeaveEvent(QGraphicsSceneHoverEvent *event); + void mouseReleaseEvent(QGraphicsSceneMouseEvent *event); + void mouseDoubleClickEvent(QGraphicsSceneMouseEvent *event); + + QRectF boundingRect() const; + void paint(QPainter *painter, const QStyleOptionGraphicsItem *option,QWidget *widget = nullptr); + +Q_SIGNALS: + void clicked(QCandlestickSet *set); + void hovered(bool status, QCandlestickSet *set); + void pressed(QCandlestickSet *set); + void released(QCandlestickSet *set); + void doubleClicked(QCandlestickSet *set); + +private: + void updateGeometry(AbstractDomain *domain); + +private: + QCandlestickSet *m_set; + AbstractDomain *m_domain; + qreal m_timePeriod; + qreal m_maximumColumnWidth; + qreal m_minimumColumnWidth; + qreal m_bodyWidth; + bool m_bodyOutlineVisible; + qreal m_capsWidth; + bool m_capsVisible; + QColor m_increasingColor; + QColor m_decreasingColor; + QBrush m_brush; + QPen m_pen; + CandlestickData m_data; + bool m_hovering; + bool m_mousePressed; + QRectF m_boundingRect; + QRectF m_bodyRect; + QPainterPath m_wicksPath; + QPainterPath m_capsPath; + + friend class CandlestickAnimation; + friend class CandlestickChartItem; +}; + +QT_CHARTS_END_NAMESPACE + +#endif // CANDLESTICK_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/candlestickanimation_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/candlestickanimation_p.h new file mode 100644 index 0000000..c1b82db --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/candlestickanimation_p.h @@ -0,0 +1,76 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef CANDLESTICKANIMATION_P_H +#define CANDLESTICKANIMATION_P_H + +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class Candlestick; +class CandlestickChartItem; +class CandlestickBodyWicksAnimation; + +class QT_CHARTS_PRIVATE_EXPORT CandlestickAnimation : public QObject +{ + Q_OBJECT + +public: + CandlestickAnimation(CandlestickChartItem *item, int duration, QEasingCurve &curve); + ~CandlestickAnimation(); + + void addCandlestick(Candlestick *candlestick); + ChartAnimation *candlestickAnimation(Candlestick *candlestick); + ChartAnimation *candlestickChangeAnimation(Candlestick *candlestick); + + void setAnimationStart(Candlestick *candlestick); + void stopAll(); + void removeCandlestickAnimation(Candlestick *candlestick); + +protected: + QHash m_animations; + CandlestickChartItem *m_item; + int m_animationDuration; + QEasingCurve m_animationCurve; +}; + +QT_CHARTS_END_NAMESPACE + +#endif // CANDLESTICKANIMATION_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/candlestickbodywicksanimation_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/candlestickbodywicksanimation_p.h new file mode 100644 index 0000000..4a79cd3 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/candlestickbodywicksanimation_p.h @@ -0,0 +1,78 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef CANDLESTICKBODYWICKSANIMATION_P_H +#define CANDLESTICKBODYWICKSANIMATION_P_H + +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class Candlestick; +class CandlestickAnimation; + +class QT_CHARTS_PRIVATE_EXPORT CandlestickBodyWicksAnimation : public ChartAnimation +{ + Q_OBJECT + +public: + CandlestickBodyWicksAnimation(Candlestick *candlestick, CandlestickAnimation *animation, + int duration, QEasingCurve &curve); + ~CandlestickBodyWicksAnimation(); + + void setup(const CandlestickData &startData, const CandlestickData &endData); + void setStartData(const CandlestickData &startData); + void setEndData(const CandlestickData &endData); + + // from QVariantAnimation + virtual void updateCurrentValue(const QVariant &value); + virtual QVariant interpolated(const QVariant &from, const QVariant &to, qreal progress) const; + +protected: + Candlestick *m_candlestick; + CandlestickAnimation *m_candlestickAnimation; + bool m_changeAnimation; + + friend class CandlestickAnimation; +}; + +QT_CHARTS_END_NAMESPACE + +#endif // CANDLESTICKBODYWICKSANIMATION_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/candlestickchartitem_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/candlestickchartitem_p.h new file mode 100644 index 0000000..ec1c12b --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/candlestickchartitem_p.h @@ -0,0 +1,97 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef CANDLESTICKCHARTITEM_P_H +#define CANDLESTICKCHARTITEM_P_H + +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class Candlestick; +class CandlestickAnimation; +class QCandlestickSeries; +class QCandlestickSet; + +class QT_CHARTS_PRIVATE_EXPORT CandlestickChartItem : public ChartItem +{ + Q_OBJECT + +public: + CandlestickChartItem(QCandlestickSeries *series, QGraphicsItem *item = nullptr); + ~CandlestickChartItem(); + + void setAnimation(CandlestickAnimation *animation); + + QRectF boundingRect() const; + void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget); + +public Q_SLOTS: + void handleDomainUpdated(); + void handleLayoutUpdated(); + void handleCandlesticksUpdated(); + void handleCandlestickSeriesChange(); + +private Q_SLOTS: + void handleCandlestickSetsAdd(const QList &sets); + void handleCandlestickSetsRemove(const QList &sets); + void handleDataStructureChanged(); + +private: + bool updateCandlestickGeometry(Candlestick *item, int index); + void updateCandlestickAppearance(Candlestick *item, QCandlestickSet *set); + + void addTimestamp(qreal timestamp); + void removeTimestamp(qreal timestamp); + void updateTimePeriod(); + +protected: + QRectF m_boundingRect; + QCandlestickSeries *m_series; // Not owned. + int m_seriesIndex; + int m_seriesCount; + QHash m_candlesticks; + QList m_timestamps; + qreal m_timePeriod; + CandlestickAnimation *m_animation; +}; + +QT_CHARTS_END_NAMESPACE + +#endif // CANDLESTICKCHARTITEM_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/candlestickdata_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/candlestickdata_p.h new file mode 100644 index 0000000..233d200 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/candlestickdata_p.h @@ -0,0 +1,89 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef CANDLESTICKDATA_P_H +#define CANDLESTICKDATA_P_H + +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QT_CHARTS_PRIVATE_EXPORT CandlestickData +{ +public: + CandlestickData() : + m_timestamp(0.0), + m_open(0.0), + m_high(0.0), + m_low(0.0), + m_close(0.0), + m_index(0), + m_maxX(0.0), + m_minX(0.0), + m_maxY(0.0), + m_minY(0.0), + m_series(nullptr), + m_seriesIndex(0), + m_seriesCount(0) + { + } + + // Candlestick related statistics + qreal m_timestamp; + qreal m_open; + qreal m_high; + qreal m_low; + qreal m_close; + int m_index; + + // Domain boundaries + qreal m_maxX; + qreal m_minX; + qreal m_maxY; + qreal m_minY; + + // Series related data + QCandlestickSeries *m_series; + int m_seriesIndex; + int m_seriesCount; +}; + +QT_CHARTS_END_NAMESPACE + +#endif // CANDLESTICKDATA_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/cartesianchartaxis_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/cartesianchartaxis_p.h new file mode 100644 index 0000000..60cabd1 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/cartesianchartaxis_p.h @@ -0,0 +1,94 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef CARTESIANCHARTAXIS_H +#define CARTESIANCHARTAXIS_H + +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QAbstractAxis; + +class QT_CHARTS_PRIVATE_EXPORT CartesianChartAxis : public ChartAxisElement +{ + Q_OBJECT + Q_INTERFACES(QGraphicsLayoutItem) +public: + + CartesianChartAxis(QAbstractAxis *axis, QGraphicsItem *item = 0, bool intervalAxis = false); + ~CartesianChartAxis(); + + void setGeometry(const QRectF &axis, const QRectF &grid); + QRectF gridGeometry() const { return m_gridRect; } + bool isEmpty(); + + virtual QSizeF sizeHint(Qt::SizeHint which, const QSizeF &constraint = QSizeF()) const; + +protected: + void setGeometry(const QRectF &size) { Q_UNUSED(size);} + virtual void updateGeometry() = 0; + void updateLayout(QVector &layout); + +public Q_SLOTS: + virtual void handleArrowPenChanged(const QPen &pen); + virtual void handleGridPenChanged(const QPen &pen); + virtual void handleShadesBrushChanged(const QBrush &brush); + virtual void handleShadesPenChanged(const QPen &pen); + virtual void handleMinorArrowPenChanged(const QPen &pen); + virtual void handleMinorGridPenChanged(const QPen &pen); + virtual void handleGridLineColorChanged(const QColor &color); + virtual void handleMinorGridLineColorChanged(const QColor &color); + +private: + void createItems(int count); + void deleteItems(int count); + void updateMinorTickItems(); + +private: + QRectF m_gridRect; + + friend class AxisAnimation; + friend class LineArrowItem; +}; + +QT_CHARTS_END_NAMESPACE + +#endif /* CARTESIANCHARTAXIS_H */ diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/cartesianchartlayout_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/cartesianchartlayout_p.h new file mode 100644 index 0000000..81c4759 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/cartesianchartlayout_p.h @@ -0,0 +1,61 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef CARTESIANCHARTLAYOUT_H +#define CARTESIANCHARTLAYOUT_H + +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QT_CHARTS_PRIVATE_EXPORT CartesianChartLayout : public AbstractChartLayout +{ +public: + CartesianChartLayout(ChartPresenter *presenter); + virtual ~CartesianChartLayout(); + + // from AbstractChartLayout + QRectF calculateAxisMinimum(const QRectF &minimum, const QList &axes) const; + QRectF calculateAxisGeometry(const QRectF &geometry, const QList &axes, + bool update = true) const; +}; + +QT_CHARTS_END_NAMESPACE + +#endif // CARTESIANCHARTLAYOUT_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartanimation_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartanimation_p.h new file mode 100644 index 0000000..87d552b --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartanimation_p.h @@ -0,0 +1,67 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef CHARTANIMATION_H +#define CHARTANIMATION_H + +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +const static int ChartAnimationDuration = 1000; + +class QT_CHARTS_PRIVATE_EXPORT ChartAnimation: public QVariantAnimation +{ + Q_OBJECT +public: + ChartAnimation(QObject *parent = 0); + + void stopAndDestroyLater(); + +public Q_SLOTS: + void startChartAnimation(); + +protected: + bool m_destructing; +}; + +QT_CHARTS_END_NAMESPACE + +#endif /* CHARTANIMATION_H */ diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartaxiselement_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartaxiselement_p.h new file mode 100644 index 0000000..7aced06 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartaxiselement_p.h @@ -0,0 +1,186 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef CHARTAXISELEMENT_H +#define CHARTAXISELEMENT_H + +#include +#include +#include +#include +#include +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class ChartPresenter; +class QAbstractAxis; + +class QT_CHARTS_PRIVATE_EXPORT ChartAxisElement : public ChartElement, public QGraphicsLayoutItem +{ + Q_OBJECT + + using QGraphicsLayoutItem::setGeometry; +public: + ChartAxisElement(QAbstractAxis *axis, QGraphicsItem *item, bool intervalAxis = false); + ~ChartAxisElement(); + + virtual QRectF gridGeometry() const = 0; + virtual void setGeometry(const QRectF &axis, const QRectF &grid) = 0; + virtual bool isEmpty() = 0; + + void setAnimation(AxisAnimation *animation) { m_animation = animation; } + AxisAnimation *animation() const { return m_animation; } + + QAbstractAxis *axis() const { return m_axis; } + void setLayout(QVector &layout) { m_layout = layout; } + QVector &layout() { return m_layout; } // Modifiable reference + void setDynamicMinorTickLayout(const QVector &layout) { m_dynamicMinorTickLayout = layout; } + QVector &dynamicMinorTicklayout() { return m_dynamicMinorTickLayout; } // Modifiable reference + inline qreal labelPadding() const { return qreal(4.0); } + inline qreal titlePadding() const { return qreal(2.0); } + void setLabels(const QStringList &labels) { m_labelsList = labels; } + QStringList labels() const { return m_labelsList; } + + qreal min() const; + qreal max() const; + + qreal tickInterval() const; + qreal tickAnchor() const; + + QRectF axisGeometry() const { return m_axisRect; } + void setAxisGeometry(const QRectF &axisGeometry) { m_axisRect = axisGeometry; } + + void axisSelected(); + + //this flag indicates that axis is used to show intervals it means labels are in between ticks + bool intervalAxis() const { return m_intervalAxis; } + + QStringList createValueLabels(qreal max, qreal min, int ticks, + qreal tickInterval, qreal tickAnchor, + QValueAxis::TickType tickType, const QString &format) const; + QStringList createLogValueLabels(qreal min, qreal max, qreal base, int ticks, + const QString &format) const; + QStringList createDateTimeLabels(qreal max, qreal min, int ticks, const QString &format) const; + + // from QGraphicsLayoutItem + QRectF boundingRect() const + { + return QRectF(); + } + + // from QGraphicsLayoutItem + void paint(QPainter*, const QStyleOptionGraphicsItem*, QWidget*) + { + } + +protected: + virtual QVector calculateLayout() const = 0; + virtual void updateLayout(QVector &layout) = 0; + + QList gridItems() { return m_grid->childItems(); } + QList minorGridItems() { return m_minorGrid->childItems(); } + QList labelItems() { return m_labels->childItems(); } + QList shadeItems() { return m_shades->childItems(); } + QList arrowItems() { return m_arrow->childItems(); } + QList minorArrowItems() { return m_minorArrow->childItems(); } + QGraphicsTextItem *titleItem() const { return m_title.data(); } + QGraphicsItemGroup *gridGroup() { return m_grid.data(); } + QGraphicsItemGroup *minorGridGroup() { return m_minorGrid.data(); } + QGraphicsItemGroup *labelGroup() { return m_labels.data(); } + QGraphicsItemGroup *shadeGroup() { return m_shades.data(); } + QGraphicsItemGroup *arrowGroup() { return m_arrow.data(); } + QGraphicsItemGroup *minorArrowGroup() { return m_minorArrow.data(); } + +public Q_SLOTS: + void handleVisibleChanged(bool visible); + void handleArrowVisibleChanged(bool visible); + void handleGridVisibleChanged(bool visible); + void handleLabelsVisibleChanged(bool visible); + void handleShadesVisibleChanged(bool visible); + void handleLabelsAngleChanged(int angle); + virtual void handleShadesBrushChanged(const QBrush &brush) = 0; + virtual void handleShadesPenChanged(const QPen &pen) = 0; + virtual void handleArrowPenChanged(const QPen &pen) = 0; + virtual void handleGridPenChanged(const QPen &pen) = 0; + virtual void handleMinorArrowPenChanged(const QPen &pen) = 0; + virtual void handleMinorGridPenChanged(const QPen &pen) = 0; + virtual void handleMinorGridLineColorChanged(const QColor &color) = 0; + virtual void handleGridLineColorChanged(const QColor &color) = 0; + void handleLabelsBrushChanged(const QBrush &brush); + void handleLabelsFontChanged(const QFont &font); + void handleTitleBrushChanged(const QBrush &brush); + void handleTitleFontChanged(const QFont &font); + void handleTitleTextChanged(const QString &title); + void handleTitleVisibleChanged(bool visible); + void handleRangeChanged(qreal min, qreal max); + void handleReverseChanged(bool reverse); + void handleMinorArrowVisibleChanged(bool visible); + void handleMinorGridVisibleChanged(bool visible); + void handleLabelsPositionChanged(); + +Q_SIGNALS: + void clicked(); + +private: + void connectSlots(); + QString formatLabel(const QString &formatSpec, const QByteArray &array, + qreal value, int precision, const QString &preStr, + const QString &postStr) const; + + QAbstractAxis *m_axis; + AxisAnimation *m_animation; + QVector m_layout; + QVector m_dynamicMinorTickLayout; + QStringList m_labelsList; + QRectF m_axisRect; + QScopedPointer m_grid; + QScopedPointer m_arrow; + QScopedPointer m_minorGrid; + QScopedPointer m_minorArrow; + QScopedPointer m_shades; + QScopedPointer m_labels; + QScopedPointer m_title; + bool m_intervalAxis; +}; + +QT_CHARTS_END_NAMESPACE + +#endif /* CHARTAXISELEMENT_H */ diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartbackground_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartbackground_p.h new file mode 100644 index 0000000..a89f603 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartbackground_p.h @@ -0,0 +1,75 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef CHARTBACKGROUND_H +#define CHARTBACKGROUND_H + +#include +#include +#include + +QT_BEGIN_NAMESPACE +class QGraphicsDropShadowEffect; +QT_END_NAMESPACE + +QT_CHARTS_BEGIN_NAMESPACE + +class QT_CHARTS_PRIVATE_EXPORT ChartBackground: public QGraphicsRectItem +{ +public: + ChartBackground(QGraphicsItem *parent = 0); + ~ChartBackground(); + + void setDiameter(qreal diameter); + qreal diameter() const; + void setDropShadowEnabled(bool enabled); + bool isDropShadowEnabled() { return m_dropShadow != 0; } + +protected: + void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget); + +private: + qreal m_diameter; + QGraphicsDropShadowEffect *m_dropShadow; +}; + +QT_CHARTS_END_NAMESPACE + +#endif /* CHARTBACKGROUND_H */ + + diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartbarcategoryaxisx_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartbarcategoryaxisx_p.h new file mode 100644 index 0000000..47a32a0 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartbarcategoryaxisx_p.h @@ -0,0 +1,72 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef CHARTBARCATEGORYAXISX_H +#define CHARTBARCATEGORYAXISX_H + +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class ChartPresenter; +class QBarCategoryAxis; + +class QT_CHARTS_PRIVATE_EXPORT ChartBarCategoryAxisX : public HorizontalAxis +{ + Q_OBJECT +public: + ChartBarCategoryAxisX(QBarCategoryAxis *axis, QGraphicsItem* item = 0); + ~ChartBarCategoryAxisX(); + + QSizeF sizeHint(Qt::SizeHint which, const QSizeF &constraint) const; +protected: + QVector calculateLayout() const; + void updateGeometry(); +private: + QStringList createCategoryLabels(const QVector& layout) const; +public Q_SLOTS: + void handleCategoriesChanged(); + +private: + QBarCategoryAxis *m_categoriesAxis; +}; + +QT_CHARTS_END_NAMESPACE + +#endif /* CHARTBARCATEGORYAXISX_H */ diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartbarcategoryaxisy_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartbarcategoryaxisy_p.h new file mode 100644 index 0000000..14732ab --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartbarcategoryaxisy_p.h @@ -0,0 +1,71 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef CHARTBARCATEGORYAXISY_H +#define CHARTBARCATEGORYAXISY_H + +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QBarCategoryAxis; +class ChartPresenter; + +class QT_CHARTS_PRIVATE_EXPORT ChartBarCategoryAxisY : public VerticalAxis +{ + Q_OBJECT +public: + ChartBarCategoryAxisY(QBarCategoryAxis *axis, QGraphicsItem* item = 0); + ~ChartBarCategoryAxisY(); + + QSizeF sizeHint(Qt::SizeHint which, const QSizeF &constraint) const; +protected: + QVector calculateLayout() const; + void updateGeometry(); +private: + QStringList createCategoryLabels(const QVector& layout) const; +public Q_SLOTS: + void handleCategoriesChanged(); +private: + QBarCategoryAxis *m_categoriesAxis; +}; + +QT_CHARTS_END_NAMESPACE + +#endif /* CHARTBARCATEGORYAXISY_H */ diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartcategoryaxisx_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartcategoryaxisx_p.h new file mode 100644 index 0000000..ea42aea --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartcategoryaxisx_p.h @@ -0,0 +1,71 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef CHARTCATEGORYAXISX_H +#define CHARTCATEGORYAXISX_H + +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QCategoryAxis; + +class QT_CHARTS_PRIVATE_EXPORT ChartCategoryAxisX : public HorizontalAxis +{ + Q_OBJECT +public: + ChartCategoryAxisX(QCategoryAxis *axis, QGraphicsItem* item = 0); + ~ChartCategoryAxisX(); + + QSizeF sizeHint(Qt::SizeHint which, const QSizeF &constraint) const; + +public Q_SLOTS: + void handleCategoriesChanged(); + +protected: + QVector calculateLayout() const; + void updateGeometry(); + +private: + QCategoryAxis *m_axis; +}; + +QT_CHARTS_END_NAMESPACE + +#endif /* CHARTCATEGORYAXISX_H */ diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartcategoryaxisy_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartcategoryaxisy_p.h new file mode 100644 index 0000000..9057ed1 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartcategoryaxisy_p.h @@ -0,0 +1,71 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef CHARTCATEGORYAXISY_H +#define CHARTCATEGORYAXISY_H + +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QCategoryAxis; + +class QT_CHARTS_PRIVATE_EXPORT ChartCategoryAxisY : public VerticalAxis +{ + Q_OBJECT +public: + ChartCategoryAxisY(QCategoryAxis *axis, QGraphicsItem* item = 0); + ~ChartCategoryAxisY(); + + QSizeF sizeHint(Qt::SizeHint which, const QSizeF &constraint) const; + +public Q_SLOTS: + void handleCategoriesChanged(); + +protected: + QVector calculateLayout() const; + void updateGeometry(); + +private: + QCategoryAxis *m_axis; +}; + +QT_CHARTS_END_NAMESPACE + +#endif /* CHARTCATEGORYAXISY_H */ diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartconfig_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartconfig_p.h new file mode 100644 index 0000000..4ce0965 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartconfig_p.h @@ -0,0 +1,70 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef CHARTCONFIG_H +#define CHARTCONFIG_H + +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QT_CHARTS_PRIVATE_EXPORT ChartConfig +{ +private: + ChartConfig() { + m_instance = this; + } +public: + static ChartConfig *instance() { + if (!m_instance) { + m_instance = new ChartConfig(); + } + return m_instance; + } + +private: + static ChartConfig *m_instance; +}; + + +ChartConfig *ChartConfig::m_instance = 0; + +QT_CHARTS_END_NAMESPACE + +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartdataset_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartdataset_p.h new file mode 100644 index 0000000..00b4b2b --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartdataset_p.h @@ -0,0 +1,111 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef CHARTDATASET_P_H +#define CHARTDATASET_P_H + +#include +#include +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QAbstractAxis; +class ChartPresenter; +class GLXYSeriesDataManager; + +class QT_CHARTS_PRIVATE_EXPORT ChartDataSet : public QObject +{ + Q_OBJECT +public: + ChartDataSet(QChart *chart); + virtual ~ChartDataSet(); + + void addSeries(QAbstractSeries *series); + void removeSeries(QAbstractSeries *series); + QList series() const; + + void addAxis(QAbstractAxis *axis,Qt::Alignment aligment); + void removeAxis(QAbstractAxis *axis); + QList axes() const; + + bool attachAxis(QAbstractSeries* series,QAbstractAxis *axis); + bool detachAxis(QAbstractSeries* series,QAbstractAxis *axis); + + void createDefaultAxes(); + + void zoomInDomain(const QRectF &rect); + void zoomOutDomain(const QRectF &rect); + void zoomResetDomain(); + bool isZoomedDomain(); + void scrollDomain(qreal dx, qreal dy); + + QPointF mapToValue(const QPointF &position, QAbstractSeries *series = 0); + QPointF mapToPosition(const QPointF &value, QAbstractSeries *series = 0); + + GLXYSeriesDataManager *glXYSeriesDataManager() { return m_glXYSeriesDataManager; } + + AbstractDomain* createDomain(AbstractDomain::DomainType type); + AbstractDomain* domainForSeries(QAbstractSeries *series) const; + +Q_SIGNALS: + void axisAdded(QAbstractAxis* axis); + void axisRemoved(QAbstractAxis* axis); + void seriesAdded(QAbstractSeries* series); + void seriesRemoved(QAbstractSeries* series); +public Q_SLOTS: + void reverseChanged(); +private: + void createAxes(QAbstractAxis::AxisTypes type, Qt::Orientation orientation); + QAbstractAxis *createAxis(QAbstractAxis::AxisType type, Qt::Orientation orientation); + AbstractDomain::DomainType selectDomain(QList axes); + void deleteAllAxes(); + void deleteAllSeries(); + void findMinMaxForSeries(QList series,Qt::Orientations orientation, qreal &min, qreal &max); +private: + QList m_seriesList; + QList m_axisList; + QChart* m_chart; + GLXYSeriesDataManager *m_glXYSeriesDataManager; +}; + +QT_CHARTS_END_NAMESPACE + +#endif /* CHARTENGINE_P_H */ diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartdatetimeaxisx_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartdatetimeaxisx_p.h new file mode 100644 index 0000000..dde0c99 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartdatetimeaxisx_p.h @@ -0,0 +1,70 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef CHARTDATETIMEAXISX_H +#define CHARTDATETIMEAXISX_H + +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QDateTimeAxis; + +class QT_CHARTS_PRIVATE_EXPORT ChartDateTimeAxisX : public HorizontalAxis +{ + Q_OBJECT +public: + ChartDateTimeAxisX(QDateTimeAxis *axis, QGraphicsItem* item = 0); + ~ChartDateTimeAxisX(); + + QSizeF sizeHint(Qt::SizeHint which, const QSizeF &constraint) const; +protected: + QVector calculateLayout() const; + void updateGeometry(); +private Q_SLOTS: + void handleTickCountChanged(int tick); + void handleFormatChanged(const QString &format); + +private: + QDateTimeAxis *m_axis; +}; + +QT_CHARTS_END_NAMESPACE + +#endif /* CHARTDATETIMEAXISX_H */ diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartdatetimeaxisy_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartdatetimeaxisy_p.h new file mode 100644 index 0000000..b7346d5 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartdatetimeaxisy_p.h @@ -0,0 +1,70 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef CHARTDATETIMEAXISY_H +#define CHARTDATETIMEAXISY_H + +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QDateTimeAxis; + +class QT_CHARTS_PRIVATE_EXPORT ChartDateTimeAxisY : public VerticalAxis +{ + Q_OBJECT +public: + ChartDateTimeAxisY(QDateTimeAxis *axis, QGraphicsItem* item = 0); + ~ChartDateTimeAxisY(); + + QSizeF sizeHint(Qt::SizeHint which, const QSizeF &constraint) const; +protected: + QVector calculateLayout() const; + void updateGeometry(); +private Q_SLOTS: + void handleTickCountChanged(int tick); + void handleFormatChanged(const QString &format); + +private: + QDateTimeAxis *m_axis; +}; + +QT_CHARTS_END_NAMESPACE + +#endif /* CHARTDATETIMEAXISY_H */ diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartelement_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartelement_p.h new file mode 100644 index 0000000..f29d6e2 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartelement_p.h @@ -0,0 +1,79 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef CHARTELEMENT_H +#define CHARTELEMENT_H + +#include +#include +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class ChartAnimator; +class ChartPresenter; +class ChartAnimation; +class ChartThemeManager; +class AbstractDomain; +class ChartDataSet; + +class QT_CHARTS_PRIVATE_EXPORT ChartElement: public QGraphicsObject +{ + +public: + explicit ChartElement(QGraphicsItem* item = 0); + + virtual ChartAnimation *animation() const { return 0; } + virtual void setPresenter(ChartPresenter *presenter); + ChartPresenter *presenter() const; + virtual void setThemeManager(ChartThemeManager *manager); + ChartThemeManager* themeManager() const; + virtual void setDataSet(ChartDataSet *dataSet); + ChartDataSet *dataSet() const; + +private: + ChartPresenter *m_presenter; + ChartThemeManager *m_themeManager; + ChartDataSet *m_dataSet; +}; + +QT_CHARTS_END_NAMESPACE + +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/charthelpers_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/charthelpers_p.h new file mode 100644 index 0000000..48fd5b6 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/charthelpers_p.h @@ -0,0 +1,64 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef CHARTHELPERS_P_H +#define CHARTHELPERS_P_H + +#include +#include + +static inline bool isValidValue(qreal value) +{ + if (qIsNaN(value) || qIsInf(value)) { + qWarning("Ignored NaN, Inf, or -Inf value."); + return false; + } + return true; +} + +static inline bool isValidValue(qreal x, qreal y) +{ + return (isValidValue(x) && isValidValue(y)); +} + +static inline bool isValidValue(const QPointF point) +{ + return (isValidValue(point.x()) && isValidValue(point.y())); +} + +#endif // CHARTHELPERS_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartitem_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartitem_p.h new file mode 100644 index 0000000..560764b --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartitem_p.h @@ -0,0 +1,71 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef CHARTITEM_H +#define CHARTITEM_H + +#include +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QT_CHARTS_PRIVATE_EXPORT ChartItem : public ChartElement +{ + Q_OBJECT + enum ChartItemTypes { AXIS_ITEM = UserType + 1, XYLINE_ITEM }; +public: + ChartItem(QAbstractSeriesPrivate *series,QGraphicsItem* item); + AbstractDomain* domain() const; + virtual void cleanup(); + +public Q_SLOTS: + virtual void handleDomainUpdated(); + + QAbstractSeriesPrivate* seriesPrivate() const {return m_series;} + +protected: + bool m_validData; +private: + QAbstractSeriesPrivate* m_series; +}; + +QT_CHARTS_END_NAMESPACE + +#endif /* CHARTITEM_H */ diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartlogvalueaxisx_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartlogvalueaxisx_p.h new file mode 100644 index 0000000..2edcd29 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartlogvalueaxisx_p.h @@ -0,0 +1,73 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef CHARTLOGVALUEAXISX_H +#define CHARTLOGVALUEAXISX_H + +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QLogValueAxis; + +class QT_CHARTS_PRIVATE_EXPORT ChartLogValueAxisX : public HorizontalAxis +{ + Q_OBJECT + +public: + ChartLogValueAxisX(QLogValueAxis *axis, QGraphicsItem *item); + ~ChartLogValueAxisX(); + + QSizeF sizeHint(Qt::SizeHint which, const QSizeF &constraint) const; + +protected: + QVector calculateLayout() const; + void updateGeometry(); + +private Q_SLOTS: + void handleBaseChanged(qreal base); + void handleLabelFormatChanged(const QString &format); + +private: + QLogValueAxis *m_axis; +}; + +QT_CHARTS_END_NAMESPACE + +#endif /* CHARTLOGVALUEAXISX_H */ diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartlogvalueaxisy_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartlogvalueaxisy_p.h new file mode 100644 index 0000000..beb5f27 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartlogvalueaxisy_p.h @@ -0,0 +1,73 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef CHARTLOGVALUEAXISY_H +#define CHARTLOGVALUEAXISY_H + +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QLogValueAxis; + +class QT_CHARTS_PRIVATE_EXPORT ChartLogValueAxisY : public VerticalAxis +{ + Q_OBJECT + +public: + ChartLogValueAxisY(QLogValueAxis *axis, QGraphicsItem *item); + ~ChartLogValueAxisY(); + + QSizeF sizeHint(Qt::SizeHint which, const QSizeF &constraint) const; + +protected: + QVector calculateLayout() const; + void updateGeometry(); + +private Q_SLOTS: + void handleBaseChanged(qreal base); + void handleLabelFormatChanged(const QString &format); + +private: + QLogValueAxis *m_axis; +}; + +QT_CHARTS_END_NAMESPACE + +#endif /* CHARTLOGVALUEAXISY_H */ diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartpresenter_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartpresenter_p.h new file mode 100644 index 0000000..122c3c4 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartpresenter_p.h @@ -0,0 +1,225 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef CHARTPRESENTER_H +#define CHARTPRESENTER_H + +#include +#include //because of QChart::ChartThemeId +#include +#include +#include +#include +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class ChartItem; +class AxisItem; +class QAbstractSeries; +class ChartDataSet; +class AbstractDomain; +class ChartAxisElement; +class ChartAnimator; +class ChartBackground; +class ChartTitle; +class ChartAnimation; +class AbstractChartLayout; + +class QT_CHARTS_PRIVATE_EXPORT ChartPresenter: public QObject +{ + Q_OBJECT +public: + enum ZValues { + BackgroundZValue = -1, + PlotAreaZValue, + ShadesZValue, + GridZValue, + AxisZValue, + SeriesZValue, + LineChartZValue = SeriesZValue, + SplineChartZValue = SeriesZValue, + BarSeriesZValue = SeriesZValue, + ScatterSeriesZValue = SeriesZValue, + PieSeriesZValue = SeriesZValue, + BoxPlotSeriesZValue = SeriesZValue, + CandlestickSeriesZValue = SeriesZValue, + LegendZValue, + TopMostZValue + }; + + enum State { + ShowState, + ScrollUpState, + ScrollDownState, + ScrollLeftState, + ScrollRightState, + ZoomInState, + ZoomOutState + }; + + ChartPresenter(QChart *chart, QChart::ChartType type); + virtual ~ChartPresenter(); + + bool isFixedGeometry() const { return !m_fixedRect.isNull(); } + void setFixedGeometry(const QRectF &rect); + void setGeometry(QRectF rect); + QRectF geometry() const; + void updateGeometry(const QRectF &rect); + + QGraphicsItem *rootItem(){ return m_chart; } + ChartBackground *backgroundElement(); + QAbstractGraphicsShapeItem *plotAreaElement(); + ChartTitle *titleElement(); + QList axisItems() const; + QList chartItems() const; + + QLegend *legend(); + + void setBackgroundBrush(const QBrush &brush); + QBrush backgroundBrush() const; + + void setBackgroundPen(const QPen &pen); + QPen backgroundPen() const; + + void setBackgroundRoundness(qreal diameter); + qreal backgroundRoundness() const; + + void setPlotAreaBackgroundBrush(const QBrush &brush); + QBrush plotAreaBackgroundBrush() const; + + void setPlotAreaBackgroundPen(const QPen &pen); + QPen plotAreaBackgroundPen() const; + + void setTitle(const QString &title); + QString title() const; + + void setTitleFont(const QFont &font); + QFont titleFont() const; + + void setTitleBrush(const QBrush &brush); + QBrush titleBrush() const; + + void setBackgroundVisible(bool visible); + bool isBackgroundVisible() const; + + void setPlotAreaBackgroundVisible(bool visible); + bool isPlotAreaBackgroundVisible() const; + + void setBackgroundDropShadowEnabled(bool enabled); + bool isBackgroundDropShadowEnabled() const; + + void setLocalizeNumbers(bool localize); + inline bool localizeNumbers() const { return m_localizeNumbers; } + void setLocale(const QLocale &locale); + inline const QLocale &locale() const { return m_locale; } + + void setVisible(bool visible); + + void setAnimationOptions(QChart::AnimationOptions options); + QChart::AnimationOptions animationOptions() const; + void setAnimationDuration(int msecs); + int animationDuration() const { return m_animationDuration; } + void setAnimationEasingCurve(const QEasingCurve &curve); + QEasingCurve animationEasingCurve() const { return m_animationCurve; } + + void startAnimation(ChartAnimation *animation); + + void setState(State state,QPointF point); + State state() const { return m_state; } + QPointF statePoint() const { return m_statePoint; } + AbstractChartLayout *layout(); + + QChart::ChartType chartType() const { return m_chart->chartType(); } + QChart *chart() { return m_chart; } + + static QRectF textBoundingRect(const QFont &font, const QString &text, qreal angle = 0.0); + static QString truncatedText(const QFont &font, const QString &text, qreal angle, + qreal maxWidth, qreal maxHeight, QRectF &boundingRect); + inline static qreal textMargin() { return qreal(0.5); } + + QString numberToString(double value, char f = 'g', int prec = 6); + QString numberToString(int value); + + void updateGLWidget(); + void glSetUseWidget(bool enable) { m_glUseWidget = enable; } + +private: + void createBackgroundItem(); + void createPlotAreaBackgroundItem(); + void createTitleItem(); + +public Q_SLOTS: + void handleSeriesAdded(QAbstractSeries *series); + void handleSeriesRemoved(QAbstractSeries *series); + void handleAxisAdded(QAbstractAxis *axis); + void handleAxisRemoved(QAbstractAxis *axis); + +Q_SIGNALS: + void plotAreaChanged(const QRectF &plotArea); + +private: + QChart *m_chart; + QList m_chartItems; + QList m_axisItems; + QList m_series; + QList m_axes; + QChart::AnimationOptions m_options; + int m_animationDuration; + QEasingCurve m_animationCurve; + State m_state; + QPointF m_statePoint; + AbstractChartLayout *m_layout; + ChartBackground *m_background; + QAbstractGraphicsShapeItem *m_plotAreaBackground; + ChartTitle *m_title; + QRectF m_rect; + bool m_localizeNumbers; + QLocale m_locale; +#ifndef QT_NO_OPENGL + QPointer m_glWidget; +#endif + bool m_glUseWidget; + QRectF m_fixedRect; +}; + +QT_CHARTS_END_NAMESPACE + +#endif /* CHARTPRESENTER_H */ diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/charttheme_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/charttheme_p.h new file mode 100644 index 0000000..bb12813 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/charttheme_p.h @@ -0,0 +1,105 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef CHARTTHEME_H +#define CHARTTHEME_H + +#include +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QT_CHARTS_PRIVATE_EXPORT ChartTheme +{ + +public: + enum BackgroundShadesMode { + BackgroundShadesNone = 0, + BackgroundShadesVertical, + BackgroundShadesHorizontal, + BackgroundShadesBoth + }; + +protected: + explicit ChartTheme(QChart::ChartTheme id = QChart::ChartThemeLight):m_id(id), + m_backgroundShadesBrush(Qt::SolidPattern), + m_backgroundShades(BackgroundShadesNone), + m_backgroundDropShadowEnabled(false) + {}; +public: + QChart::ChartTheme id() const { return m_id; } + QList seriesGradients() const { return m_seriesGradients; } + QList seriesColors() const { return m_seriesColors; } + QLinearGradient chartBackgroundGradient() const { return m_chartBackgroundGradient; } + QFont masterFont() const { return m_masterFont; } + QFont labelFont() const { return m_labelFont; } + QBrush labelBrush() const { return m_labelBrush; } + QPen axisLinePen() const { return m_axisLinePen; } + QPen backgroundShadesPen() const { return m_backgroundShadesPen; } + QPen outlinePen() const { return m_outlinePen; } + QBrush backgroundShadesBrush() const { return m_backgroundShadesBrush; } + BackgroundShadesMode backgroundShades() const { return m_backgroundShades; } + bool isBackgroundDropShadowEnabled() const { return m_backgroundDropShadowEnabled; } + QPen gridLinePen() const { return m_gridLinePen; } + QPen minorGridLinePen() const { return m_minorGridLinePen; } + +protected: + QChart::ChartTheme m_id; + QList m_seriesColors; + QList m_seriesGradients; + QLinearGradient m_chartBackgroundGradient; + + QFont m_masterFont; + QFont m_labelFont; + QBrush m_labelBrush; + QPen m_axisLinePen; + QPen m_backgroundShadesPen; + QPen m_outlinePen; + QBrush m_backgroundShadesBrush; + BackgroundShadesMode m_backgroundShades; + bool m_backgroundDropShadowEnabled; + QPen m_gridLinePen; + QPen m_minorGridLinePen; + +}; + +QT_CHARTS_END_NAMESPACE + +#endif // CHARTTHEME_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartthemebluecerulean_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartthemebluecerulean_p.h new file mode 100644 index 0000000..6bdcc10 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartthemebluecerulean_p.h @@ -0,0 +1,83 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef CHARTTHEMEBLUECERULEAN_P_H +#define CHARTTHEMEBLUECERULEAN_P_H + +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QT_CHARTS_PRIVATE_EXPORT ChartThemeBlueCerulean: public ChartTheme +{ +public: + ChartThemeBlueCerulean() : ChartTheme(QChart::ChartThemeBlueCerulean) { + // Series colors + m_seriesColors << QRgb(0xc7e85b); + m_seriesColors << QRgb(0x1cb54f); + m_seriesColors << QRgb(0x5cbf9b); + m_seriesColors << QRgb(0x009fbf); + m_seriesColors << QRgb(0xee7392); + m_seriesGradients = ChartThemeManager::generateSeriesGradients(m_seriesColors); + + // Background + QLinearGradient backgroundGradient(0.5, 0.0, 0.5, 1.0); + backgroundGradient.setColorAt(0.0, QRgb(0x056189)); + backgroundGradient.setColorAt(1.0, QRgb(0x101a31)); + backgroundGradient.setCoordinateMode(QGradient::ObjectBoundingMode); + m_chartBackgroundGradient = backgroundGradient; + + // Axes and other + m_labelBrush = QBrush(QRgb(0xffffff)); + m_axisLinePen = QPen(QRgb(0xd6d6d6)); + m_axisLinePen.setWidth(2); + m_gridLinePen = QPen(QRgb(0x84a2b0)); + m_gridLinePen.setWidth(1); + m_minorGridLinePen = QPen(QRgb(0x84a2b0)); + m_minorGridLinePen.setWidth(1); + m_minorGridLinePen.setStyle(Qt::DashLine); + m_backgroundShades = BackgroundShadesNone; + m_outlinePen = QPen(QRgb(0xebebeb)); + m_outlinePen.setWidthF(2.0); + } +}; + +QT_CHARTS_END_NAMESPACE + +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartthemeblueicy_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartthemeblueicy_p.h new file mode 100644 index 0000000..808c16e --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartthemeblueicy_p.h @@ -0,0 +1,85 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef CHARTTHEMEBLUEICY_P_H +#define CHARTTHEMEBLUEICY_P_H + +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QT_CHARTS_PRIVATE_EXPORT ChartThemeBlueIcy: public ChartTheme +{ +public: + ChartThemeBlueIcy() : ChartTheme(QChart::ChartThemeBlueIcy) + { + // Series colors + m_seriesColors << QRgb(0x3daeda); + m_seriesColors << QRgb(0x2685bf); + m_seriesColors << QRgb(0x0c2673); + m_seriesColors << QRgb(0x5f3dba); + m_seriesColors << QRgb(0x2fa3b4); + m_seriesGradients = ChartThemeManager::generateSeriesGradients(m_seriesColors); + + // Background + QLinearGradient backgroundGradient(0.5, 0.0, 0.5, 1.0); + backgroundGradient.setColorAt(0.0, QRgb(0xffffff)); + backgroundGradient.setColorAt(1.0, QRgb(0xffffff)); + backgroundGradient.setCoordinateMode(QGradient::ObjectBoundingMode); + m_chartBackgroundGradient = backgroundGradient; + m_backgroundDropShadowEnabled = true; + + // Axes and other + m_labelBrush = QBrush(QRgb(0x404044)); + m_axisLinePen = QPen(QRgb(0xd6d6d6)); + m_axisLinePen.setWidth(2); + m_gridLinePen = QPen(QRgb(0xe2e2e2)); + m_gridLinePen.setWidth(1); + m_minorGridLinePen = QPen(QRgb(0xe2e2e2)); + m_minorGridLinePen.setWidth(1); + m_minorGridLinePen.setStyle(Qt::DashLine); + m_backgroundShades = BackgroundShadesNone; + m_outlinePen = QPen(QRgb(0x474747)); + m_outlinePen.setWidthF(2.0); + } +}; + +QT_CHARTS_END_NAMESPACE + +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartthemebluencs_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartthemebluencs_p.h new file mode 100644 index 0000000..9423422 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartthemebluencs_p.h @@ -0,0 +1,84 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef CHARTTHEMEBLUENCS_P_H +#define CHARTTHEMEBLUENCS_P_H + +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QT_CHARTS_PRIVATE_EXPORT ChartThemeBlueNcs: public ChartTheme +{ +public: + ChartThemeBlueNcs() : ChartTheme(QChart::ChartThemeBlueNcs) + { + // Series colors + m_seriesColors << QRgb(0x1db0da); + m_seriesColors << QRgb(0x1341a6); + m_seriesColors << QRgb(0x88d41e); + m_seriesColors << QRgb(0xff8e1a); + m_seriesColors << QRgb(0x398ca3); + m_seriesGradients = ChartThemeManager::generateSeriesGradients(m_seriesColors); + + // Background + QLinearGradient backgroundGradient; + backgroundGradient.setColorAt(0.0, QRgb(0xffffff)); + backgroundGradient.setColorAt(1.0, QRgb(0xffffff)); + backgroundGradient.setCoordinateMode(QGradient::ObjectBoundingMode); + m_chartBackgroundGradient = backgroundGradient; + + // Axes and other + m_labelBrush = QBrush(QRgb(0x404044)); + m_axisLinePen = QPen(QRgb(0xd6d6d6)); + m_axisLinePen.setWidth(2); + m_gridLinePen = QPen(QRgb(0xe2e2e2)); + m_gridLinePen.setWidth(1); + m_minorGridLinePen = QPen(QRgb(0xe2e2e2)); + m_minorGridLinePen.setWidth(1); + m_minorGridLinePen.setStyle(Qt::DashLine); + m_backgroundShades = BackgroundShadesNone; + m_outlinePen = QPen(QRgb(0x474747)); + m_outlinePen.setWidthF(2.0); + } +}; + +QT_CHARTS_END_NAMESPACE + +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartthemebrownsand_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartthemebrownsand_p.h new file mode 100644 index 0000000..5e48fd8 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartthemebrownsand_p.h @@ -0,0 +1,84 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef CHARTTHEMEBROWNSAND_P_H +#define CHARTTHEMEBROWNSAND_P_H + +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QT_CHARTS_PRIVATE_EXPORT ChartThemeBrownSand: public ChartTheme +{ +public: + ChartThemeBrownSand() : ChartTheme(QChart::ChartThemeBrownSand) + { + // Series colors + m_seriesColors << QRgb(0xb39b72); + m_seriesColors << QRgb(0xb3b376); + m_seriesColors << QRgb(0xc35660); + m_seriesColors << QRgb(0x536780); + m_seriesColors << QRgb(0x494345); + m_seriesGradients = ChartThemeManager::generateSeriesGradients(m_seriesColors); + + // Background + QLinearGradient backgroundGradient; + backgroundGradient.setColorAt(0.0, QRgb(0xf3ece0)); + backgroundGradient.setColorAt(1.0, QRgb(0xf3ece0)); + backgroundGradient.setCoordinateMode(QGradient::ObjectBoundingMode); + m_chartBackgroundGradient = backgroundGradient; + + // Axes and other + m_labelBrush = QBrush(QRgb(0x404044)); + m_axisLinePen = QPen(QRgb(0xb5b0a7)); + m_axisLinePen.setWidth(2); + m_gridLinePen = QPen(QRgb(0xd4cec3)); + m_gridLinePen.setWidth(1); + m_minorGridLinePen = QPen(QRgb(0xd4cec3)); + m_minorGridLinePen.setWidth(1); + m_minorGridLinePen.setStyle(Qt::DashLine); + m_backgroundShades = BackgroundShadesNone; + m_outlinePen = QPen(QRgb(0x222222)); + m_outlinePen.setWidthF(2.0); + } +}; + +QT_CHARTS_END_NAMESPACE + +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartthemedark_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartthemedark_p.h new file mode 100644 index 0000000..a8f9f47 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartthemedark_p.h @@ -0,0 +1,84 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef CHARTTHEMEDARK_P_H +#define CHARTTHEMEDARK_P_H + +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QT_CHARTS_PRIVATE_EXPORT ChartThemeDark : public ChartTheme +{ +public: + ChartThemeDark() : ChartTheme(QChart::ChartThemeDark) + { + // Series colors + m_seriesColors << QRgb(0x38ad6b); + m_seriesColors << QRgb(0x3c84a7); + m_seriesColors << QRgb(0xeb8817); + m_seriesColors << QRgb(0x7b7f8c); + m_seriesColors << QRgb(0xbf593e); + m_seriesGradients = ChartThemeManager::generateSeriesGradients(m_seriesColors); + + // Background + QLinearGradient backgroundGradient(0.5, 0.0, 0.5, 1.0); + backgroundGradient.setColorAt(0.0, QRgb(0x2e303a)); + backgroundGradient.setColorAt(1.0, QRgb(0x121218)); + backgroundGradient.setCoordinateMode(QGradient::ObjectBoundingMode); + m_chartBackgroundGradient = backgroundGradient; + + // Axes and other + m_labelBrush = QBrush(QRgb(0xffffff)); + m_axisLinePen = QPen(QRgb(0x86878c)); + m_axisLinePen.setWidth(2); + m_gridLinePen = QPen(QRgb(0x86878c)); + m_gridLinePen.setWidth(1); + m_minorGridLinePen = QPen(QRgb(0x86878c)); + m_minorGridLinePen.setWidth(1); + m_minorGridLinePen.setStyle(Qt::DashLine); + m_backgroundShades = BackgroundShadesNone; + m_outlinePen = QPen(QRgb(0xd6d6d6)); + m_outlinePen.setWidthF(2.0); + } +}; + +QT_CHARTS_END_NAMESPACE + +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartthemehighcontrast_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartthemehighcontrast_p.h new file mode 100644 index 0000000..b1cd844 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartthemehighcontrast_p.h @@ -0,0 +1,86 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef CHARTTHEMEHIGHCONTRAST_P_H +#define CHARTTHEMEHIGHCONTRAST_P_H + +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QT_CHARTS_PRIVATE_EXPORT ChartThemeHighContrast : public ChartTheme +{ +public: + ChartThemeHighContrast() : ChartTheme(QChart::ChartThemeHighContrast) + { + // Series colors + m_seriesColors << QRgb(0x202020); + m_seriesColors << QRgb(0x596a74); + m_seriesColors << QRgb(0xffab03); + m_seriesColors << QRgb(0x038e9b); + m_seriesColors << QRgb(0xff4a41); + m_seriesGradients = ChartThemeManager::generateSeriesGradients(m_seriesColors); + + // Background + QLinearGradient backgroundGradient(0.5, 0.0, 0.5, 1.0); + backgroundGradient.setColorAt(0.0, QRgb(0xffffff)); + backgroundGradient.setColorAt(1.0, QRgb(0xffffff)); + backgroundGradient.setCoordinateMode(QGradient::ObjectBoundingMode); + m_chartBackgroundGradient = backgroundGradient; + m_backgroundDropShadowEnabled = true; + + // Axes and other + m_labelBrush = QBrush(QRgb(0x181818)); + m_axisLinePen = QPen(QRgb(0x8c8c8c)); + m_axisLinePen.setWidth(2); + m_gridLinePen = QPen(QRgb(0x8c8c8c)); + m_gridLinePen.setWidth(1); + m_minorGridLinePen = QPen(QRgb(0x8c8c8c)); + m_minorGridLinePen.setWidth(1); + m_minorGridLinePen.setStyle(Qt::DashLine); + m_backgroundShadesBrush = QBrush(QRgb(0xffeecd)); + m_backgroundShades = BackgroundShadesHorizontal; + m_outlinePen = QPen(QColor(Qt::black)); + m_outlinePen.setWidthF(2.0); + } +}; + +QT_CHARTS_END_NAMESPACE + +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartthemelight_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartthemelight_p.h new file mode 100644 index 0000000..e7ed47c --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartthemelight_p.h @@ -0,0 +1,86 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef CHARTTHEMELIGHT_P_H +#define CHARTTHEMELIGHT_P_H + +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QT_CHARTS_PRIVATE_EXPORT ChartThemeLight: public ChartTheme +{ +public: + ChartThemeLight() : ChartTheme(QChart::ChartThemeLight) + { + // Series colors + m_seriesColors << QRgb(0x209fdf); + m_seriesColors << QRgb(0x99ca53); + m_seriesColors << QRgb(0xf6a625); + m_seriesColors << QRgb(0x6d5fd5); + m_seriesColors << QRgb(0xbf593e); + m_seriesGradients = ChartThemeManager::generateSeriesGradients(m_seriesColors); + + // Background + QLinearGradient backgroundGradient; + backgroundGradient.setColorAt(0.0, QRgb(0xffffff)); + backgroundGradient.setColorAt(1.0, QRgb(0xffffff)); + backgroundGradient.setCoordinateMode(QGradient::ObjectBoundingMode); + m_chartBackgroundGradient = backgroundGradient; + // There is a performance issue in the drop shadow implementation, so disabled for now +// m_backgroundDropShadowEnabled = true; + + // Axes and other + m_axisLinePen = QPen(0xd6d6d6); + m_axisLinePen.setWidth(1); + m_labelBrush = QBrush(QRgb(0x404044)); + m_gridLinePen = QPen(QRgb(0xe2e2e2)); + m_gridLinePen.setWidth(1); + m_minorGridLinePen = QPen(QRgb(0xe2e2e2)); + m_minorGridLinePen.setWidth(1); + m_minorGridLinePen.setStyle(Qt::DashLine); + m_backgroundShades = BackgroundShadesNone; + m_outlinePen = QPen(0x4d4d4d); + m_outlinePen.setWidthF(2.0); + } +}; + +QT_CHARTS_END_NAMESPACE + +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartthememanager_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartthememanager_p.h new file mode 100644 index 0000000..63a7066 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartthememanager_p.h @@ -0,0 +1,95 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef CHARTTHEMEMANAGER_H +#define CHARTTHEMEMANAGER_H + +#include +#include +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE +class ChartTheme; + +class QT_CHARTS_PRIVATE_EXPORT ChartThemeManager: public QObject +{ + Q_OBJECT +public: + enum BackgroundShadesMode { + BackgroundShadesNone = 0, + BackgroundShadesVertical, + BackgroundShadesHorizontal, + BackgroundShadesBoth + }; + +public: + explicit ChartThemeManager(QChart* chart); + void setTheme(QChart::ChartTheme theme); + ChartTheme* theme() const { return m_theme.data(); } + void decorateChart(QChart *chart, ChartTheme* theme) const; + void decorateLegend(QLegend *legend, ChartTheme* theme) const; + void updateSeries(QAbstractSeries *series); + QMap seriesMap() const { return m_seriesMap; } + +public: + static QList generateSeriesGradients(const QList& colors); + static QColor colorAt(const QColor &start, const QColor &end, qreal pos); + static QColor colorAt(const QGradient &gradient, qreal pos); + +private: + int createIndexKey(QList keys) const; + int seriesCount(QAbstractSeries::SeriesType type) const; + +public Q_SLOTS: + void handleSeriesAdded(QAbstractSeries *series); + void handleSeriesRemoved(QAbstractSeries *series); + void handleAxisAdded(QAbstractAxis *axis); + void handleAxisRemoved(QAbstractAxis *axis); + +protected: + QScopedPointer m_theme; + QMap m_seriesMap; + QList m_axisList; + QChart* m_chart; +}; + +QT_CHARTS_END_NAMESPACE + +#endif // CHARTTHEME_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartthemeqt_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartthemeqt_p.h new file mode 100644 index 0000000..af335a8 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartthemeqt_p.h @@ -0,0 +1,87 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef CHARTTHEMEQT_P_H +#define CHARTTHEMEQT_P_H + +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QT_CHARTS_PRIVATE_EXPORT ChartThemeQt : public ChartTheme +{ +public: + ChartThemeQt() : ChartTheme(QChart::ChartThemeQt) + { + // Series colors + m_seriesColors << QRgb(0x80c342); + m_seriesColors << QRgb(0x328930); + m_seriesColors << QRgb(0x006325); + m_seriesColors << QRgb(0x35322f); + m_seriesColors << QRgb(0x5d5b59); + m_seriesColors << QRgb(0x868482); + m_seriesColors << QRgb(0xaeadac); + m_seriesColors << QRgb(0xd7d6d5); + m_seriesGradients = ChartThemeManager::generateSeriesGradients(m_seriesColors); + + // Background + QLinearGradient backgroundGradient(0.5, 0.0, 0.5, 1.0); + backgroundGradient.setColorAt(0.0, QRgb(0xffffff)); + backgroundGradient.setColorAt(1.0, QRgb(0xffffff)); + backgroundGradient.setCoordinateMode(QGradient::ObjectBoundingMode); + m_chartBackgroundGradient = backgroundGradient; + + // Axes and other + m_labelBrush = QBrush(QRgb(0x35322f)); + m_axisLinePen = QPen(QRgb(0xd7d6d5)); + m_axisLinePen.setWidth(1); + m_gridLinePen = QPen(QRgb(0xd7d6d5)); + m_gridLinePen.setWidth(1); + m_minorGridLinePen = QPen(QRgb(0xd7d6d5)); + m_minorGridLinePen.setWidth(1); + m_minorGridLinePen.setStyle(Qt::DashLine); + m_backgroundShades = BackgroundShadesNone; + m_outlinePen = QPen(QRgb(0x35322f)); + m_outlinePen.setWidthF(2.0); + } +}; + +QT_CHARTS_END_NAMESPACE + +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartthemesystem_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartthemesystem_p.h new file mode 100644 index 0000000..a79ac20 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartthemesystem_p.h @@ -0,0 +1,199 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef CHARTTHEMESYSTEM_P_H +#define CHARTTHEMESYSTEM_P_H + +#include +#include +#ifdef Q_OS_WIN +#include +#include +#endif + +QT_CHARTS_BEGIN_NAMESPACE + +class QT_CHARTS_PRIVATE_EXPORT ChartThemeSystem: public ChartTheme +{ +public: + // System theme not used at the moment (the user is not able to select this theme) + ChartThemeSystem() : ChartTheme(QChart::ChartThemeLight /*QChart::ChartThemeSystem*/) + { +#if defined(Q_OS_WIN) && !defined(Q_OS_WINRT) + // We could also use theme specific window frame color as a series base color (it would give more + // variation to the base colors in addition to the blue and black used now) + + // First series base color from COLOR_HIGHLIGHT + DWORD colorHighlight; + colorHighlight = GetSysColor(COLOR_HIGHLIGHT); + m_seriesColors.append(QColor(GetRValue(colorHighlight), + GetGValue(colorHighlight), + GetBValue(colorHighlight))); + + // Second series base color from COLOR_WINDOWFRAME + DWORD colorWindowFrame; + colorWindowFrame = GetSysColor(COLOR_WINDOWFRAME); + m_seriesColors.append(QColor(GetRValue(colorWindowFrame), + GetGValue(colorWindowFrame), + GetBValue(colorWindowFrame))); + + // Third series base color from the middle of the COLOR_ACTIVECAPTION / + // COLOR_GRADIENTACTIVECAPTION gradient + DWORD colorGradientActiveCaptionLeft; + colorGradientActiveCaptionLeft = GetSysColor(COLOR_ACTIVECAPTION); + DWORD colorGradientActiveCaptionRight; + colorGradientActiveCaptionRight = GetSysColor(COLOR_GRADIENTACTIVECAPTION); + QLinearGradient g; + QColor start = QColor(GetRValue(colorGradientActiveCaptionLeft), + GetGValue(colorGradientActiveCaptionLeft), + GetBValue(colorGradientActiveCaptionLeft)); + g.setColorAt(0.0, start); + QColor end = QColor(GetRValue(colorGradientActiveCaptionRight), + GetGValue(colorGradientActiveCaptionRight), + GetBValue(colorGradientActiveCaptionRight)); + g.setColorAt(1.0, end); + m_seriesColors.append(ChartThemeManager::colorAt(g, 0.5)); + + // Generate gradients from the base colors + m_seriesGradients = ChartThemeManager::generateSeriesGradients(m_seriesColors); + + // Background fill color from COLOR_WINDOW + QLinearGradient backgroundGradient; + DWORD colorWindow; + colorWindow = GetSysColor(COLOR_WINDOW); + backgroundGradient.setColorAt(0.0, QColor(GetRValue(colorWindow), + GetGValue(colorWindow), + GetBValue(colorWindow))); + backgroundGradient.setColorAt(1.0, QColor(GetRValue(colorWindow), + GetGValue(colorWindow), + GetBValue(colorWindow))); + // Axes and other + m_axisLinePen = QPen(0xd6d6d6); + m_axisLinePen.setWidth(1); + m_labelBrush = QBrush(QRgb(0x404044)); + m_gridLinePen = QPen(QRgb(0xe2e2e2)); + m_gridLinePen.setWidth(1); + m_minorGridLinePen = QPen(QRgb(0xe2e2e2)); + m_minorGridLinePen.setWidth(1); + m_minorGridLinePen.setStyle(Qt::DashLine); + m_backgroundShades = BackgroundShadesNone; + +#elif defined(Q_OS_LINUX) + // Using a hard coded theme for Linux system theme + m_seriesColors << QRgb(0x60a6e6); + m_seriesColors << QRgb(0x92ca66); + m_seriesColors << QRgb(0xeba85f); + m_seriesColors << QRgb(0xfc5751); + m_seriesGradients = ChartThemeManager::generateSeriesGradients(m_seriesColors); + + // Background + QLinearGradient backgroundGradient; + backgroundGradient.setColorAt(0.0, QRgb(0xffffff)); + backgroundGradient.setColorAt(1.0, QRgb(0xffffff)); + backgroundGradient.setCoordinateMode(QGradient::ObjectBoundingMode); + m_chartBackgroundGradient = backgroundGradient; + + // Axes and other + m_axisLinePen = QPen(0xd6d6d6); + m_axisLinePen.setWidth(1); + m_labelBrush = QBrush(QRgb(0x404044)); + m_gridLinePen = QPen(QRgb(0xe2e2e2)); + m_gridLinePen.setWidth(1); + m_minorGridLinePen = QPen(QRgb(0x404044)); + m_minorGridLinePen.setWidth(1); + m_minorGridLinePen.setStyle(Qt::DashLine); + m_backgroundShades = BackgroundShadesNone; + +#elif defined(Q_OS_MAC) + // Using a hard coded theme for OSX system theme; the colors match the OSX 10.7 colors + m_seriesColors << QRgb(0x60a6e6); + m_seriesColors << QRgb(0x92ca66); + m_seriesColors << QRgb(0xeba85f); + m_seriesColors << QRgb(0xfc5751); + m_seriesGradients = ChartThemeManager::generateSeriesGradients(m_seriesColors); + + // Background + QLinearGradient backgroundGradient; + backgroundGradient.setColorAt(0.0, QRgb(0xffffff)); + backgroundGradient.setColorAt(1.0, QRgb(0xffffff)); + backgroundGradient.setCoordinateMode(QGradient::ObjectBoundingMode); + m_chartBackgroundGradient = backgroundGradient; + + // Axes and other + m_axisLinePen = QPen(0xd6d6d6); + m_axisLinePen.setWidth(1); + m_labelBrush = QBrush(QRgb(0x404044)); + m_gridLinePen = QPen(QRgb(0xe2e2e2)); + m_gridLinePen.setWidth(1); + m_minorGridLinePen = QPen(QRgb(0xe2e2e2)); + m_minorGridLinePen.setWidth(1); + m_minorGridLinePen.setStyle(Qt::DashLine); + m_backgroundShades = BackgroundShadesNone; + +#else + // Hard coded theme + m_seriesColors << QRgb(0x60a6e6); + m_seriesColors << QRgb(0x92ca66); + m_seriesColors << QRgb(0xeba85f); + m_seriesColors << QRgb(0xfc5751); + m_seriesGradients = ChartThemeManager::generateSeriesGradients(m_seriesColors); + + // Background + QLinearGradient backgroundGradient; + backgroundGradient.setColorAt(0.0, QRgb(0xffffff)); + backgroundGradient.setColorAt(1.0, QRgb(0xffffff)); + backgroundGradient.setCoordinateMode(QGradient::ObjectBoundingMode); + m_chartBackgroundGradient = backgroundGradient; + + // Axes and other + m_axisLinePen = QPen(0xd6d6d6); + m_axisLinePen.setWidth(1); + m_labelBrush = QBrush(QRgb(0x404044)); + m_gridLinePen = QPen(QRgb(0xe2e2e2)); + m_gridLinePen.setWidth(1); + m_minorGridLinePen = QPen(QRgb(0xe2e2e2)); + m_minorGridLinePen.setWidth(1); + m_minorGridLinePen.setStyle(Qt::DashLine); + m_backgroundShades = BackgroundShadesNone; +#endif + } +}; + +QT_CHARTS_END_NAMESPACE + +#endif // CHARTTHEMESYSTEM_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/charttitle_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/charttitle_p.h new file mode 100644 index 0000000..aaed6e9 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/charttitle_p.h @@ -0,0 +1,63 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef CHARTTITLE_P_H_ +#define CHARTTITLE_P_H_ + +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QT_CHARTS_PRIVATE_EXPORT ChartTitle : public QGraphicsTextItem +{ +public: + ChartTitle(QGraphicsItem *parent = 0); + ~ChartTitle(); + QSizeF sizeHint(Qt::SizeHint which, const QSizeF &constraint = QSizeF()) const; + void setText(const QString &text); + QString text() const; + void setGeometry(const QRectF &rect); +private: + QString m_text; +}; + +QT_CHARTS_END_NAMESPACE + +#endif /* CHARTTITLE_P_H_ */ diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartvalueaxisx_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartvalueaxisx_p.h new file mode 100644 index 0000000..5e8b095 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartvalueaxisx_p.h @@ -0,0 +1,74 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef CHARTVALUEAXISX_H +#define CHARTVALUEAXISX_H + +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QValueAxis; + +class QT_CHARTS_PRIVATE_EXPORT ChartValueAxisX : public HorizontalAxis +{ + Q_OBJECT +public: + ChartValueAxisX(QValueAxis *axis, QGraphicsItem *item = 0); + ~ChartValueAxisX(); + + QSizeF sizeHint(Qt::SizeHint which, const QSizeF &constraint) const; +protected: + QVector calculateLayout() const; + void updateGeometry(); +private Q_SLOTS: + void handleTickCountChanged(int tick); + void handleMinorTickCountChanged(int tick); + void handleLabelFormatChanged(const QString &format); + void handleTickIntervalChanged(qreal interval); + void handleTickAnchorChanged(qreal anchor); + void handleTickTypeChanged(QValueAxis::TickType type); + +private: + QValueAxis *m_axis; +}; + +QT_CHARTS_END_NAMESPACE + +#endif /* CHARTVALUEAXISX_H */ diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartvalueaxisy_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartvalueaxisy_p.h new file mode 100644 index 0000000..72c148a --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/chartvalueaxisy_p.h @@ -0,0 +1,74 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef CHARTVALUEAXISY_H +#define CHARTVALUEAXISY_H + +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QValueAxis; + +class QT_CHARTS_PRIVATE_EXPORT ChartValueAxisY : public VerticalAxis +{ + Q_OBJECT +public: + ChartValueAxisY(QValueAxis *axis, QGraphicsItem *item = 0); + ~ChartValueAxisY(); + + QSizeF sizeHint(Qt::SizeHint which, const QSizeF &constraint) const; +protected: + QVector calculateLayout() const; + void updateGeometry(); +private Q_SLOTS: + void handleTickCountChanged(int tick); + void handleMinorTickCountChanged(int tick); + void handleLabelFormatChanged(const QString &format); + void handleTickIntervalChanged(qreal interval); + void handleTickAnchorChanged(qreal anchor); + void handleTickTypeChanged(QValueAxis::TickType type); + +private: + QValueAxis *m_axis; +}; + +QT_CHARTS_END_NAMESPACE + +#endif /* CHARTVALUEAXISY_H */ diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/declarativeabstractrendernode_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/declarativeabstractrendernode_p.h new file mode 100644 index 0000000..905b638 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/declarativeabstractrendernode_p.h @@ -0,0 +1,91 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef DECLARATIVEABSTRACTRENDERNODE_H +#define DECLARATIVEABSTRACTRENDERNODE_H + +#include +#include +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QT_QMLCHARTS_PRIVATE_EXPORT MouseEventResponse { +public: + enum MouseEventType { + None, + Pressed, + Released, + Clicked, + DoubleClicked, + HoverEnter, + HoverLeave + }; + + MouseEventResponse() + : type(None), + series(nullptr) {} + MouseEventResponse(MouseEventType t, const QPoint &p, const QXYSeries *s) + : type(t), + point(p), + series(s) {} + MouseEventType type; + QPoint point; + const QXYSeries *series; +}; + +class QT_QMLCHARTS_PRIVATE_EXPORT DeclarativeAbstractRenderNode : public QSGRootNode +{ +public: + DeclarativeAbstractRenderNode() {} + + virtual void setTextureSize(const QSize &textureSize) = 0; + virtual QSize textureSize() const = 0; + virtual void setRect(const QRectF &rect) = 0; + virtual void setSeriesData(bool mapDirty, const GLXYDataMap &dataMap) = 0; + virtual void setAntialiasing(bool enable) = 0; + virtual void addMouseEvents(const QVector &events) = 0; + virtual void takeMouseEventResponses(QVector &responses) = 0; +}; + +QT_CHARTS_END_NAMESPACE + + +#endif // DECLARATIVEABSTRACTRENDERNODE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/declarativeareaseries_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/declarativeareaseries_p.h new file mode 100644 index 0000000..cc8b742 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/declarativeareaseries_p.h @@ -0,0 +1,113 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef DECLARATIVEAREASERIES_H +#define DECLARATIVEAREASERIES_H + +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE +class DeclarativeLineSeries; + +class QT_QMLCHARTS_PRIVATE_EXPORT DeclarativeAreaSeries : public QAreaSeries +{ + Q_OBJECT + Q_PROPERTY(QtCharts::DeclarativeLineSeries *upperSeries READ upperSeries WRITE setUpperSeries) + Q_PROPERTY(QtCharts::DeclarativeLineSeries *lowerSeries READ lowerSeries WRITE setLowerSeries) + Q_PROPERTY(QtCharts::QAbstractAxis *axisX READ axisX WRITE setAxisX NOTIFY axisXChanged REVISION 1) + Q_PROPERTY(QtCharts::QAbstractAxis *axisY READ axisY WRITE setAxisY NOTIFY axisYChanged REVISION 1) + Q_PROPERTY(QtCharts::QAbstractAxis *axisXTop READ axisXTop WRITE setAxisXTop NOTIFY axisXTopChanged REVISION 2) + Q_PROPERTY(QtCharts::QAbstractAxis *axisYRight READ axisYRight WRITE setAxisYRight NOTIFY axisYRightChanged REVISION 2) + Q_PROPERTY(QtCharts::QAbstractAxis *axisAngular READ axisAngular WRITE setAxisAngular NOTIFY axisAngularChanged REVISION 3) + Q_PROPERTY(QtCharts::QAbstractAxis *axisRadial READ axisRadial WRITE setAxisRadial NOTIFY axisRadialChanged REVISION 3) + Q_PROPERTY(qreal borderWidth READ borderWidth WRITE setBorderWidth NOTIFY borderWidthChanged REVISION 1) + Q_PROPERTY(QString brushFilename READ brushFilename WRITE setBrushFilename NOTIFY brushFilenameChanged REVISION 4) + Q_PROPERTY(QBrush brush READ brush WRITE setBrush NOTIFY brushChanged REVISION 4) + +public: + explicit DeclarativeAreaSeries(QObject *parent = 0); + void setUpperSeries(DeclarativeLineSeries *series); + DeclarativeLineSeries *upperSeries() const; + void setLowerSeries(DeclarativeLineSeries *series); + DeclarativeLineSeries *lowerSeries() const; + QAbstractAxis *axisX() { return m_axes->axisX(); } + void setAxisX(QAbstractAxis *axis) { m_axes->setAxisX(axis); } + QAbstractAxis *axisY() { return m_axes->axisY(); } + void setAxisY(QAbstractAxis *axis) { m_axes->setAxisY(axis); } + QAbstractAxis *axisXTop() { return m_axes->axisXTop(); } + void setAxisXTop(QAbstractAxis *axis) { m_axes->setAxisXTop(axis); } + QAbstractAxis *axisYRight() { return m_axes->axisYRight(); } + void setAxisYRight(QAbstractAxis *axis) { m_axes->setAxisYRight(axis); } + QAbstractAxis *axisAngular() { return m_axes->axisX(); } + void setAxisAngular(QAbstractAxis *axis) { m_axes->setAxisX(axis); } + QAbstractAxis *axisRadial() { return m_axes->axisY(); } + void setAxisRadial(QAbstractAxis *axis) { m_axes->setAxisY(axis); } + qreal borderWidth() const; + void setBorderWidth(qreal borderWidth); + QString brushFilename() const; + void setBrushFilename(const QString &brushFilename); + void setBrush(const QBrush &brush); + QBrush brush() const; + +Q_SIGNALS: + Q_REVISION(1) void axisXChanged(QAbstractAxis *axis); + Q_REVISION(1) void axisYChanged(QAbstractAxis *axis); + Q_REVISION(1) void borderWidthChanged(qreal width); + Q_REVISION(2) void axisXTopChanged(QAbstractAxis *axis); + Q_REVISION(2) void axisYRightChanged(QAbstractAxis *axis); + Q_REVISION(3) void axisAngularChanged(QAbstractAxis *axis); + Q_REVISION(3) void axisRadialChanged(QAbstractAxis *axis); + Q_REVISION(4) void brushChanged(); + Q_REVISION(4) void brushFilenameChanged(const QString &brushFilename); + +private Q_SLOTS: + void handleBrushChanged(); + +public: + DeclarativeAxes *m_axes; + +private: + QString m_brushFilename; + QImage m_brushImage; +}; + +QT_CHARTS_END_NAMESPACE + +#endif // DECLARATIVEAREASERIES_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/declarativeaxes_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/declarativeaxes_p.h new file mode 100644 index 0000000..fa328db --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/declarativeaxes_p.h @@ -0,0 +1,91 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef DECLARATIVEAXES_H +#define DECLARATIVEAXES_H + +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QAbstractAxis; + +class QT_QMLCHARTS_PRIVATE_EXPORT DeclarativeAxes : public QObject +{ + Q_OBJECT + Q_PROPERTY(QtCharts::QAbstractAxis *axisX READ axisX WRITE setAxisX NOTIFY axisXChanged) + Q_PROPERTY(QtCharts::QAbstractAxis *axisY READ axisY WRITE setAxisY NOTIFY axisYChanged) + Q_PROPERTY(QtCharts::QAbstractAxis *axisXTop READ axisXTop WRITE setAxisXTop NOTIFY axisXTopChanged) + Q_PROPERTY(QtCharts::QAbstractAxis *axisYRight READ axisYRight WRITE setAxisYRight NOTIFY axisYRightChanged) + +public: + explicit DeclarativeAxes(QObject *parent = 0); + + QAbstractAxis *axisX() { return m_axisX; } + void setAxisX(QAbstractAxis *axis); + QAbstractAxis *axisY() { return m_axisY; } + void setAxisY(QAbstractAxis *axis); + QAbstractAxis *axisXTop() { return m_axisXTop; } + void setAxisXTop(QAbstractAxis *axis); + QAbstractAxis *axisYRight() { return m_axisYRight; } + void setAxisYRight(QAbstractAxis *axis); + +public: + void emitAxisXChanged() { emit axisXChanged(m_axisX); } + void emitAxisYChanged() { emit axisYChanged(m_axisY); } + void emitAxisXTopChanged() { emit axisXTopChanged(m_axisXTop); } + void emitAxisYRightChanged() { emit axisYRightChanged(m_axisYRight); } + +Q_SIGNALS: + void axisXChanged(QAbstractAxis *axis); + void axisYChanged(QAbstractAxis *axis); + void axisXTopChanged(QAbstractAxis *axis); + void axisYRightChanged(QAbstractAxis *axis); + +private: + QAbstractAxis *m_axisX; + QAbstractAxis *m_axisY; + QAbstractAxis *m_axisXTop; + QAbstractAxis *m_axisYRight; +}; + +QT_CHARTS_END_NAMESPACE + +#endif // DECLARATIVEAXES_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/declarativebarseries_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/declarativebarseries_p.h new file mode 100644 index 0000000..bba71df --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/declarativebarseries_p.h @@ -0,0 +1,380 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef DECLARATIVEBARSERIES_H +#define DECLARATIVEBARSERIES_H + +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QChart; + +class QT_QMLCHARTS_PRIVATE_EXPORT DeclarativeBarSet : public QBarSet +{ + Q_OBJECT + Q_PROPERTY(QVariantList values READ values WRITE setValues) + Q_PROPERTY(qreal borderWidth READ borderWidth WRITE setBorderWidth NOTIFY borderWidthChanged REVISION 1) + Q_PROPERTY(int count READ count NOTIFY countChanged) + Q_PROPERTY(QString brushFilename READ brushFilename WRITE setBrushFilename NOTIFY brushFilenameChanged REVISION 2) + +public: + explicit DeclarativeBarSet(QObject *parent = 0); + QVariantList values(); + void setValues(QVariantList values); + qreal borderWidth() const; + void setBorderWidth(qreal borderWidth); + QString brushFilename() const; + void setBrushFilename(const QString &brushFilename); + +public: // From QBarSet + Q_INVOKABLE void append(qreal value) { QBarSet::append(value); } + Q_INVOKABLE void remove(const int index, const int count = 1) { QBarSet::remove(index, count); } + Q_INVOKABLE void replace(int index, qreal value) { QBarSet::replace(index, value); } + Q_INVOKABLE qreal at(int index) { return QBarSet::at(index); } + +Q_SIGNALS: + void countChanged(int count); + Q_REVISION(1) void borderWidthChanged(qreal width); + Q_REVISION(2) void brushFilenameChanged(const QString &brushFilename); + +private Q_SLOTS: + void handleCountChanged(int index, int count); + void handleBrushChanged(); + +private: + QString m_brushFilename; + QImage m_brushImage; +}; + +class QT_QMLCHARTS_PRIVATE_EXPORT DeclarativeBarSeries : public QBarSeries, public QQmlParserStatus +{ + Q_OBJECT + Q_INTERFACES(QQmlParserStatus) + Q_PROPERTY(QtCharts::QAbstractAxis *axisX READ axisX WRITE setAxisX NOTIFY axisXChanged REVISION 1) + Q_PROPERTY(QtCharts::QAbstractAxis *axisY READ axisY WRITE setAxisY NOTIFY axisYChanged REVISION 1) + Q_PROPERTY(QtCharts::QAbstractAxis *axisXTop READ axisXTop WRITE setAxisXTop NOTIFY axisXTopChanged REVISION 2) + Q_PROPERTY(QtCharts::QAbstractAxis *axisYRight READ axisYRight WRITE setAxisYRight NOTIFY axisYRightChanged REVISION 2) + Q_PROPERTY(QQmlListProperty seriesChildren READ seriesChildren) + Q_CLASSINFO("DefaultProperty", "seriesChildren") + +public: + explicit DeclarativeBarSeries(QQuickItem *parent = 0); + QAbstractAxis *axisX() { return m_axes->axisX(); } + void setAxisX(QAbstractAxis *axis) { m_axes->setAxisX(axis); } + QAbstractAxis *axisY() { return m_axes->axisY(); } + void setAxisY(QAbstractAxis *axis) { m_axes->setAxisY(axis); } + QAbstractAxis *axisXTop() { return m_axes->axisXTop(); } + void setAxisXTop(QAbstractAxis *axis) { m_axes->setAxisXTop(axis); } + QAbstractAxis *axisYRight() { return m_axes->axisYRight(); } + void setAxisYRight(QAbstractAxis *axis) { m_axes->setAxisYRight(axis); } + QQmlListProperty seriesChildren(); + +public: + Q_INVOKABLE DeclarativeBarSet *at(int index); + Q_INVOKABLE DeclarativeBarSet *append(QString label, QVariantList values) { return insert(count(), label, values); } + Q_INVOKABLE DeclarativeBarSet *insert(int index, QString label, QVariantList values); + Q_INVOKABLE bool remove(QBarSet *barset) { return QBarSeries::remove(barset); } + Q_INVOKABLE void clear() { return QBarSeries::clear(); } + +public: // from QDeclarativeParserStatus + void classBegin(); + void componentComplete(); + +Q_SIGNALS: + Q_REVISION(1) void axisXChanged(QAbstractAxis *axis); + Q_REVISION(1) void axisYChanged(QAbstractAxis *axis); + Q_REVISION(2) void axisXTopChanged(QAbstractAxis *axis); + Q_REVISION(2) void axisYRightChanged(QAbstractAxis *axis); + +public Q_SLOTS: + static void appendSeriesChildren(QQmlListProperty *list, QObject *element); + +public: + DeclarativeAxes *m_axes; +}; + +class QT_QMLCHARTS_PRIVATE_EXPORT DeclarativeStackedBarSeries : public QStackedBarSeries, public QQmlParserStatus +{ + Q_OBJECT + Q_INTERFACES(QQmlParserStatus) + Q_PROPERTY(QtCharts::QAbstractAxis *axisX READ axisX WRITE setAxisX NOTIFY axisXChanged REVISION 1) + Q_PROPERTY(QtCharts::QAbstractAxis *axisY READ axisY WRITE setAxisY NOTIFY axisYChanged REVISION 1) + Q_PROPERTY(QtCharts::QAbstractAxis *axisXTop READ axisXTop WRITE setAxisXTop NOTIFY axisXTopChanged REVISION 2) + Q_PROPERTY(QtCharts::QAbstractAxis *axisYRight READ axisYRight WRITE setAxisYRight NOTIFY axisYRightChanged REVISION 2) + Q_PROPERTY(QQmlListProperty seriesChildren READ seriesChildren) + Q_CLASSINFO("DefaultProperty", "seriesChildren") + +public: + explicit DeclarativeStackedBarSeries(QQuickItem *parent = 0); + QAbstractAxis *axisX() { return m_axes->axisX(); } + void setAxisX(QAbstractAxis *axis) { m_axes->setAxisX(axis); } + QAbstractAxis *axisY() { return m_axes->axisY(); } + void setAxisY(QAbstractAxis *axis) { m_axes->setAxisY(axis); } + QAbstractAxis *axisXTop() { return m_axes->axisXTop(); } + void setAxisXTop(QAbstractAxis *axis) { m_axes->setAxisXTop(axis); } + QAbstractAxis *axisYRight() { return m_axes->axisYRight(); } + void setAxisYRight(QAbstractAxis *axis) { m_axes->setAxisYRight(axis); } + QQmlListProperty seriesChildren(); + +public: + Q_INVOKABLE DeclarativeBarSet *at(int index); + Q_INVOKABLE DeclarativeBarSet *append(QString label, QVariantList values) { return insert(count(), label, values); } + Q_INVOKABLE DeclarativeBarSet *insert(int index, QString label, QVariantList values); + Q_INVOKABLE bool remove(QBarSet *barset) { return QStackedBarSeries::remove(barset); } + Q_INVOKABLE void clear() { return QStackedBarSeries::clear(); } + +public: // from QDeclarativeParserStatus + void classBegin(); + void componentComplete(); + +Q_SIGNALS: + Q_REVISION(1) void axisXChanged(QAbstractAxis *axis); + Q_REVISION(1) void axisYChanged(QAbstractAxis *axis); + Q_REVISION(2) void axisXTopChanged(QAbstractAxis *axis); + Q_REVISION(2) void axisYRightChanged(QAbstractAxis *axis); + +public Q_SLOTS: + static void appendSeriesChildren(QQmlListProperty *list, QObject *element); + +public: + DeclarativeAxes *m_axes; +}; + +class QT_QMLCHARTS_PRIVATE_EXPORT DeclarativePercentBarSeries : public QPercentBarSeries, public QQmlParserStatus +{ + Q_OBJECT + Q_INTERFACES(QQmlParserStatus) + Q_PROPERTY(QtCharts::QAbstractAxis *axisX READ axisX WRITE setAxisX NOTIFY axisXChanged REVISION 1) + Q_PROPERTY(QtCharts::QAbstractAxis *axisY READ axisY WRITE setAxisY NOTIFY axisYChanged REVISION 1) + Q_PROPERTY(QtCharts::QAbstractAxis *axisXTop READ axisXTop WRITE setAxisXTop NOTIFY axisXTopChanged REVISION 2) + Q_PROPERTY(QtCharts::QAbstractAxis *axisYRight READ axisYRight WRITE setAxisYRight NOTIFY axisYRightChanged REVISION 2) + Q_PROPERTY(QQmlListProperty seriesChildren READ seriesChildren) + Q_CLASSINFO("DefaultProperty", "seriesChildren") + +public: + explicit DeclarativePercentBarSeries(QQuickItem *parent = 0); + QAbstractAxis *axisX() { return m_axes->axisX(); } + void setAxisX(QAbstractAxis *axis) { m_axes->setAxisX(axis); } + QAbstractAxis *axisY() { return m_axes->axisY(); } + void setAxisY(QAbstractAxis *axis) { m_axes->setAxisY(axis); } + QAbstractAxis *axisXTop() { return m_axes->axisXTop(); } + void setAxisXTop(QAbstractAxis *axis) { m_axes->setAxisXTop(axis); } + QAbstractAxis *axisYRight() { return m_axes->axisYRight(); } + void setAxisYRight(QAbstractAxis *axis) { m_axes->setAxisYRight(axis); } + QQmlListProperty seriesChildren(); + +public: + Q_INVOKABLE DeclarativeBarSet *at(int index); + Q_INVOKABLE DeclarativeBarSet *append(QString label, QVariantList values) { return insert(count(), label, values); } + Q_INVOKABLE DeclarativeBarSet *insert(int index, QString label, QVariantList values); + Q_INVOKABLE bool remove(QBarSet *barset) { return QPercentBarSeries::remove(barset); } + Q_INVOKABLE void clear() { return QPercentBarSeries::clear(); } + +public: // from QDeclarativeParserStatus + void classBegin(); + void componentComplete(); + +Q_SIGNALS: + Q_REVISION(1) void axisXChanged(QAbstractAxis *axis); + Q_REVISION(1) void axisYChanged(QAbstractAxis *axis); + Q_REVISION(2) void axisXTopChanged(QAbstractAxis *axis); + Q_REVISION(2) void axisYRightChanged(QAbstractAxis *axis); + +public Q_SLOTS: + static void appendSeriesChildren(QQmlListProperty *list, QObject *element); + +public: + DeclarativeAxes *m_axes; +}; + +class QT_QMLCHARTS_PRIVATE_EXPORT DeclarativeHorizontalBarSeries : public QHorizontalBarSeries, public QQmlParserStatus +{ + Q_OBJECT + Q_INTERFACES(QQmlParserStatus) + Q_PROPERTY(QtCharts::QAbstractAxis *axisX READ axisX WRITE setAxisX NOTIFY axisXChanged REVISION 1) + Q_PROPERTY(QtCharts::QAbstractAxis *axisY READ axisY WRITE setAxisY NOTIFY axisYChanged REVISION 1) + Q_PROPERTY(QtCharts::QAbstractAxis *axisXTop READ axisXTop WRITE setAxisXTop NOTIFY axisXTopChanged REVISION 2) + Q_PROPERTY(QtCharts::QAbstractAxis *axisYRight READ axisYRight WRITE setAxisYRight NOTIFY axisYRightChanged REVISION 2) + Q_PROPERTY(QQmlListProperty seriesChildren READ seriesChildren) + Q_CLASSINFO("DefaultProperty", "seriesChildren") + +public: + explicit DeclarativeHorizontalBarSeries(QQuickItem *parent = 0); + QAbstractAxis *axisX() { return m_axes->axisX(); } + void setAxisX(QAbstractAxis *axis) { m_axes->setAxisX(axis); } + QAbstractAxis *axisY() { return m_axes->axisY(); } + void setAxisY(QAbstractAxis *axis) { m_axes->setAxisY(axis); } + QAbstractAxis *axisXTop() { return m_axes->axisXTop(); } + void setAxisXTop(QAbstractAxis *axis) { m_axes->setAxisXTop(axis); } + QAbstractAxis *axisYRight() { return m_axes->axisYRight(); } + void setAxisYRight(QAbstractAxis *axis) { m_axes->setAxisYRight(axis); } + QQmlListProperty seriesChildren(); + +public: + Q_INVOKABLE DeclarativeBarSet *at(int index); + Q_INVOKABLE DeclarativeBarSet *append(QString label, QVariantList values) { return insert(count(), label, values); } + Q_INVOKABLE DeclarativeBarSet *insert(int index, QString label, QVariantList values); + Q_INVOKABLE bool remove(QBarSet *barset) { return QHorizontalBarSeries::remove(barset); } + Q_INVOKABLE void clear() { return QHorizontalBarSeries::clear(); } + +public: // from QDeclarativeParserStatus + void classBegin(); + void componentComplete(); + +Q_SIGNALS: + Q_REVISION(1) void axisXChanged(QAbstractAxis *axis); + Q_REVISION(1) void axisYChanged(QAbstractAxis *axis); + Q_REVISION(2) void axisXTopChanged(QAbstractAxis *axis); + Q_REVISION(2) void axisYRightChanged(QAbstractAxis *axis); + +public Q_SLOTS: + static void appendSeriesChildren(QQmlListProperty *list, QObject *element); + +public: + DeclarativeAxes *m_axes; +}; + +class QT_QMLCHARTS_PRIVATE_EXPORT DeclarativeHorizontalStackedBarSeries : public QHorizontalStackedBarSeries, public QQmlParserStatus +{ + Q_OBJECT + Q_INTERFACES(QQmlParserStatus) + Q_PROPERTY(QtCharts::QAbstractAxis *axisX READ axisX WRITE setAxisX NOTIFY axisXChanged REVISION 1) + Q_PROPERTY(QtCharts::QAbstractAxis *axisY READ axisY WRITE setAxisY NOTIFY axisYChanged REVISION 1) + Q_PROPERTY(QtCharts::QAbstractAxis *axisXTop READ axisXTop WRITE setAxisXTop NOTIFY axisXTopChanged REVISION 2) + Q_PROPERTY(QtCharts::QAbstractAxis *axisYRight READ axisYRight WRITE setAxisYRight NOTIFY axisYRightChanged REVISION 2) + Q_PROPERTY(QQmlListProperty seriesChildren READ seriesChildren) + Q_CLASSINFO("DefaultProperty", "seriesChildren") + +public: + explicit DeclarativeHorizontalStackedBarSeries(QQuickItem *parent = 0); + QAbstractAxis *axisX() { return m_axes->axisX(); } + void setAxisX(QAbstractAxis *axis) { m_axes->setAxisX(axis); } + QAbstractAxis *axisY() { return m_axes->axisY(); } + void setAxisY(QAbstractAxis *axis) { m_axes->setAxisY(axis); } + QAbstractAxis *axisXTop() { return m_axes->axisXTop(); } + void setAxisXTop(QAbstractAxis *axis) { m_axes->setAxisXTop(axis); } + QAbstractAxis *axisYRight() { return m_axes->axisYRight(); } + void setAxisYRight(QAbstractAxis *axis) { m_axes->setAxisYRight(axis); } + QQmlListProperty seriesChildren(); + +public: + Q_INVOKABLE DeclarativeBarSet *at(int index); + Q_INVOKABLE DeclarativeBarSet *append(QString label, QVariantList values) { return insert(count(), label, values); } + Q_INVOKABLE DeclarativeBarSet *insert(int index, QString label, QVariantList values); + Q_INVOKABLE bool remove(QBarSet *barset) { return QHorizontalStackedBarSeries::remove(barset); } + Q_INVOKABLE void clear() { return QHorizontalStackedBarSeries::clear(); } + +public: // from QDeclarativeParserStatus + void classBegin(); + void componentComplete(); + +Q_SIGNALS: + Q_REVISION(1) void axisXChanged(QAbstractAxis *axis); + Q_REVISION(1) void axisYChanged(QAbstractAxis *axis); + Q_REVISION(2) void axisXTopChanged(QAbstractAxis *axis); + Q_REVISION(2) void axisYRightChanged(QAbstractAxis *axis); + +public Q_SLOTS: + static void appendSeriesChildren(QQmlListProperty *list, QObject *element); + +public: + DeclarativeAxes *m_axes; +}; + +class QT_QMLCHARTS_PRIVATE_EXPORT DeclarativeHorizontalPercentBarSeries : public QHorizontalPercentBarSeries, public QQmlParserStatus +{ + Q_OBJECT + Q_INTERFACES(QQmlParserStatus) + Q_PROPERTY(QtCharts::QAbstractAxis *axisX READ axisX WRITE setAxisX NOTIFY axisXChanged REVISION 1) + Q_PROPERTY(QtCharts::QAbstractAxis *axisY READ axisY WRITE setAxisY NOTIFY axisYChanged REVISION 1) + Q_PROPERTY(QtCharts::QAbstractAxis *axisXTop READ axisXTop WRITE setAxisXTop NOTIFY axisXTopChanged REVISION 2) + Q_PROPERTY(QtCharts::QAbstractAxis *axisYRight READ axisYRight WRITE setAxisYRight NOTIFY axisYRightChanged REVISION 2) + Q_PROPERTY(QQmlListProperty seriesChildren READ seriesChildren) + Q_CLASSINFO("DefaultProperty", "seriesChildren") + +public: + explicit DeclarativeHorizontalPercentBarSeries(QQuickItem *parent = 0); + QAbstractAxis *axisX() { return m_axes->axisX(); } + void setAxisX(QAbstractAxis *axis) { m_axes->setAxisX(axis); } + QAbstractAxis *axisY() { return m_axes->axisY(); } + void setAxisY(QAbstractAxis *axis) { m_axes->setAxisY(axis); } + QAbstractAxis *axisXTop() { return m_axes->axisXTop(); } + void setAxisXTop(QAbstractAxis *axis) { m_axes->setAxisXTop(axis); } + QAbstractAxis *axisYRight() { return m_axes->axisYRight(); } + void setAxisYRight(QAbstractAxis *axis) { m_axes->setAxisYRight(axis); } + QQmlListProperty seriesChildren(); + +public: + Q_INVOKABLE DeclarativeBarSet *at(int index); + Q_INVOKABLE DeclarativeBarSet *append(QString label, QVariantList values) { return insert(count(), label, values); } + Q_INVOKABLE DeclarativeBarSet *insert(int index, QString label, QVariantList values); + Q_INVOKABLE bool remove(QBarSet *barset) { return QHorizontalPercentBarSeries::remove(barset); } + Q_INVOKABLE void clear() { return QHorizontalPercentBarSeries::clear(); } + +public: // from QDeclarativeParserStatus + void classBegin(); + void componentComplete(); + +Q_SIGNALS: + Q_REVISION(1) void axisXChanged(QAbstractAxis *axis); + Q_REVISION(1) void axisYChanged(QAbstractAxis *axis); + Q_REVISION(2) void axisXTopChanged(QAbstractAxis *axis); + Q_REVISION(2) void axisYRightChanged(QAbstractAxis *axis); + +public Q_SLOTS: + static void appendSeriesChildren(QQmlListProperty *list, QObject *element); + +public: + DeclarativeAxes *m_axes; +}; + +QT_CHARTS_END_NAMESPACE + +#endif // DECLARATIVEBARSERIES_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/declarativeboxplotseries_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/declarativeboxplotseries_p.h new file mode 100644 index 0000000..19d549a --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/declarativeboxplotseries_p.h @@ -0,0 +1,167 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef DECLARATIVEBOXPLOT_H +#define DECLARATIVEBOXPLOT_H + +#include +#include +#include +#include + +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QT_QMLCHARTS_PRIVATE_EXPORT DeclarativeBoxSet : public QBoxSet +{ + Q_OBJECT + Q_PROPERTY(QVariantList values READ values WRITE setValues) + Q_PROPERTY(QString label READ label WRITE setLabel) + Q_PROPERTY(int count READ count) + Q_PROPERTY(QString brushFilename READ brushFilename WRITE setBrushFilename NOTIFY brushFilenameChanged REVISION 1) + Q_ENUMS(ValuePositions) + +public: // duplicate from QBoxSet + enum ValuePositions { + LowerExtreme = 0x0, + LowerQuartile, + Median, + UpperQuartile, + UpperExtreme + }; + +public: + explicit DeclarativeBoxSet(const QString label = "", QObject *parent = 0); + QVariantList values(); + void setValues(QVariantList values); + QString brushFilename() const; + void setBrushFilename(const QString &brushFilename); + +public: // From QBoxSet + Q_INVOKABLE void append(qreal value) { QBoxSet::append(value); } + Q_INVOKABLE void clear() {QBoxSet::clear(); } + Q_INVOKABLE qreal at(int index) { return QBoxSet::at(index); } + Q_INVOKABLE void setValue(int index, qreal value) { QBoxSet::setValue(index, value); } + +Q_SIGNALS: + void changedValues(); + void changedValue(int index); + Q_REVISION(1) void brushFilenameChanged(const QString &brushFilename); + +private Q_SLOTS: + void handleBrushChanged(); + +private: + QString m_brushFilename; + QImage m_brushImage; +}; + +class QT_QMLCHARTS_PRIVATE_EXPORT DeclarativeBoxPlotSeries : public QBoxPlotSeries, public QQmlParserStatus +{ + Q_OBJECT + Q_INTERFACES(QQmlParserStatus) + Q_PROPERTY(QtCharts::QAbstractAxis *axisX READ axisX WRITE setAxisX NOTIFY axisXChanged) + Q_PROPERTY(QtCharts::QAbstractAxis *axisY READ axisY WRITE setAxisY NOTIFY axisYChanged) + Q_PROPERTY(QtCharts::QAbstractAxis *axisXTop READ axisXTop WRITE setAxisXTop NOTIFY axisXTopChanged) + Q_PROPERTY(QtCharts::QAbstractAxis *axisYRight READ axisYRight WRITE setAxisYRight NOTIFY axisYRightChanged) + Q_PROPERTY(QQmlListProperty seriesChildren READ seriesChildren) + Q_PROPERTY(QString brushFilename READ brushFilename WRITE setBrushFilename NOTIFY brushFilenameChanged REVISION 1) + Q_CLASSINFO("DefaultProperty", "seriesChildren") + +public: + explicit DeclarativeBoxPlotSeries(QQuickItem *parent = 0); + QAbstractAxis *axisX() { return m_axes->axisX(); } + void setAxisX(QAbstractAxis *axis) { m_axes->setAxisX(axis); } + QAbstractAxis *axisY() { return m_axes->axisY(); } + void setAxisY(QAbstractAxis *axis) { m_axes->setAxisY(axis); } + QAbstractAxis *axisXTop() { return m_axes->axisXTop(); } + void setAxisXTop(QAbstractAxis *axis) { m_axes->setAxisXTop(axis); } + QAbstractAxis *axisYRight() { return m_axes->axisYRight(); } + void setAxisYRight(QAbstractAxis *axis) { m_axes->setAxisYRight(axis); } + QQmlListProperty seriesChildren(); + QString brushFilename() const; + void setBrushFilename(const QString &brushFilename); + +public: + Q_INVOKABLE DeclarativeBoxSet *at(int index); + Q_INVOKABLE DeclarativeBoxSet *append(const QString label, QVariantList values) { return insert(count(), label, values); } + Q_INVOKABLE void append(DeclarativeBoxSet *box) { QBoxPlotSeries::append(box); } + Q_INVOKABLE DeclarativeBoxSet *insert(int index, const QString label, QVariantList values); + Q_INVOKABLE bool remove(DeclarativeBoxSet *box) { return QBoxPlotSeries::remove(qobject_cast(box)); } + Q_INVOKABLE void clear() { return QBoxPlotSeries::clear(); } + +public: // from QDeclarativeParserStatus + void classBegin(); + void componentComplete(); + +Q_SIGNALS: + void axisXChanged(QAbstractAxis *axis); + void axisYChanged(QAbstractAxis *axis); + void axisXTopChanged(QAbstractAxis *axis); + void axisYRightChanged(QAbstractAxis *axis); + void clicked(DeclarativeBoxSet *boxset); + void hovered(bool status, DeclarativeBoxSet *boxset); + void pressed(DeclarativeBoxSet *boxset); + void released(DeclarativeBoxSet *boxset); + void doubleClicked(DeclarativeBoxSet *boxset); + Q_REVISION(1) void brushFilenameChanged(const QString &brushFilename); + +public Q_SLOTS: + static void appendSeriesChildren(QQmlListProperty *list, QObject *element); + void onHovered(bool status, QBoxSet *boxset); + void onClicked(QBoxSet *boxset); + void onPressed(QBoxSet *boxset); + void onReleased(QBoxSet *boxset); + void onDoubleClicked(QBoxSet *boxset); + +private Q_SLOTS: + void handleBrushChanged(); + +public: + DeclarativeAxes *m_axes; + +private: + QString m_brushFilename; + QImage m_brushImage; +}; + +QT_CHARTS_END_NAMESPACE + +#endif // DECLARATIVEBOXPLOT_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/declarativecandlestickseries_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/declarativecandlestickseries_p.h new file mode 100644 index 0000000..5ed0989 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/declarativecandlestickseries_p.h @@ -0,0 +1,146 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef DECLARATIVECANDLESTICKSERIES_H +#define DECLARATIVECANDLESTICKSERIES_H + +#include +#include +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class DeclarativeAxes; +class QAbstractAxis; + +class QT_QMLCHARTS_PRIVATE_EXPORT DeclarativeCandlestickSet : public QCandlestickSet +{ + Q_OBJECT + Q_PROPERTY(QString brushFilename READ brushFilename WRITE setBrushFilename NOTIFY brushFilenameChanged) + +public: + explicit DeclarativeCandlestickSet(qreal timestamp = 0.0, QObject *parent = nullptr); + void setBrushFilename(const QString &brushFilename); + QString brushFilename() const; + +Q_SIGNALS: + void brushFilenameChanged(const QString &brushFilename); + +private Q_SLOTS: + void handleBrushChanged(); + +private: + QString m_brushFilename; + QImage m_brushImage; +}; + +class DeclarativeCandlestickSeries : public QCandlestickSeries, public QQmlParserStatus +{ + Q_OBJECT + Q_INTERFACES(QQmlParserStatus) + Q_PROPERTY(QtCharts::QAbstractAxis *axisX READ axisX WRITE setAxisX NOTIFY axisXChanged) + Q_PROPERTY(QtCharts::QAbstractAxis *axisY READ axisY WRITE setAxisY NOTIFY axisYChanged) + Q_PROPERTY(QtCharts::QAbstractAxis *axisXTop READ axisXTop WRITE setAxisXTop NOTIFY axisXTopChanged) + Q_PROPERTY(QtCharts::QAbstractAxis *axisYRight READ axisYRight WRITE setAxisYRight NOTIFY axisYRightChanged) + Q_PROPERTY(QQmlListProperty seriesChildren READ seriesChildren) + Q_PROPERTY(QString brushFilename READ brushFilename WRITE setBrushFilename NOTIFY brushFilenameChanged) + Q_CLASSINFO("DefaultProperty", "seriesChildren") + +public: + explicit DeclarativeCandlestickSeries(QQuickItem *parent = nullptr); + void setAxisX(QAbstractAxis *axis) { m_axes->setAxisX(axis); } + QAbstractAxis *axisX() { return m_axes->axisX(); } + void setAxisY(QAbstractAxis *axis) { m_axes->setAxisY(axis); } + QAbstractAxis *axisY() { return m_axes->axisY(); } + void setAxisXTop(QAbstractAxis *axis) { m_axes->setAxisXTop(axis); } + QAbstractAxis *axisXTop() { return m_axes->axisXTop(); } + void setAxisYRight(QAbstractAxis *axis) { m_axes->setAxisYRight(axis); } + QAbstractAxis *axisYRight() { return m_axes->axisYRight(); } + QQmlListProperty seriesChildren(); + void setBrushFilename(const QString &brushFilename); + QString brushFilename() const; + +public: + Q_INVOKABLE DeclarativeCandlestickSet *at(int index); + Q_INVOKABLE bool append(DeclarativeCandlestickSet *set); + Q_INVOKABLE bool remove(DeclarativeCandlestickSet *set); + Q_INVOKABLE bool append(qreal open, qreal high, qreal low, qreal close, qreal timestamp); + Q_INVOKABLE bool remove(qreal timestamp); + Q_INVOKABLE bool insert(int index, DeclarativeCandlestickSet *set); + Q_INVOKABLE void clear(); + +public: // from QDeclarativeParserStatus + void classBegin(); + void componentComplete(); + +Q_SIGNALS: + void axisXChanged(QAbstractAxis *axis); + void axisYChanged(QAbstractAxis *axis); + void axisXTopChanged(QAbstractAxis *axis); + void axisYRightChanged(QAbstractAxis *axis); + void clicked(DeclarativeCandlestickSet *set); + void hovered(bool status, DeclarativeCandlestickSet *set); + void pressed(DeclarativeCandlestickSet *set); + void released(DeclarativeCandlestickSet *set); + void doubleClicked(DeclarativeCandlestickSet *set); + void brushFilenameChanged(const QString &brushFilename); + +public Q_SLOTS: + static void appendSeriesChildren(QQmlListProperty *list, QObject *element); + void onClicked(QCandlestickSet *set); + void onHovered(bool status, QCandlestickSet *set); + void onPressed(QCandlestickSet *set); + void onReleased(QCandlestickSet *set); + void onDoubleClicked(QCandlestickSet *set); + +private Q_SLOTS: + void handleBrushChanged(); + +public: + DeclarativeAxes *m_axes; + +private: + QString m_brushFilename; + QImage m_brushImage; +}; + +QT_CHARTS_END_NAMESPACE + +#endif // DECLARATIVECANDLESTICKSERIES_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/declarativecategoryaxis_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/declarativecategoryaxis_p.h new file mode 100644 index 0000000..e50844b --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/declarativecategoryaxis_p.h @@ -0,0 +1,114 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef DECLARATIVECATEGORYAXIS_H +#define DECLARATIVECATEGORYAXIS_H + +#include +#include + +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QT_QMLCHARTS_PRIVATE_EXPORT DeclarativeCategoryRange : public QObject +{ + Q_OBJECT + Q_PROPERTY(qreal endValue READ endValue WRITE setEndValue) + Q_PROPERTY(QString label READ label WRITE setLabel) + +public: + explicit DeclarativeCategoryRange(QObject *parent = 0); + qreal endValue() { return m_endValue; } + void setEndValue(qreal endValue) { m_endValue = endValue; } + QString label() { return m_label; } + void setLabel(QString label) { m_label = label; } + +private: + qreal m_endValue; + QString m_label; +}; + +class DeclarativeCategoryAxis : public QCategoryAxis, public QQmlParserStatus +{ + Q_OBJECT + Q_INTERFACES(QQmlParserStatus) + Q_PROPERTY(QQmlListProperty axisChildren READ axisChildren) + Q_CLASSINFO("DefaultProperty", "axisChildren") + Q_PROPERTY(AxisLabelsPosition labelsPosition READ labelsPosition WRITE setLabelsPosition NOTIFY labelsPositionChanged REVISION 1) + Q_ENUMS(AxisLabelsPosition) + +public: + // duplicating enums from QChart to make the QML api namings 1-to-1 with the C++ api + enum AxisLabelsPosition { + AxisLabelsPositionCenter = 0x0, + AxisLabelsPositionOnValue = 0x1 + }; + + explicit DeclarativeCategoryAxis(QObject *parent = 0); + QQmlListProperty axisChildren(); + + +public: // from QDeclarativeParserStatus + void classBegin(); + void componentComplete(); + +public: + AxisLabelsPosition labelsPosition() const; + void setLabelsPosition(AxisLabelsPosition position); + +Q_SIGNALS: + Q_REVISION(1) void labelsPositionChanged(AxisLabelsPosition position); + +public Q_SLOTS: + Q_INVOKABLE void append(const QString &label, qreal categoryEndValue); + Q_INVOKABLE void remove(const QString &label); + Q_INVOKABLE void replace(const QString &oldLabel, const QString &newLabel); + static void appendAxisChildren(QQmlListProperty *list, QObject *element); + +private: + static bool endValueLessThan(const QPair &value1, const QPair &value2); + +private: + AxisLabelsPosition m_labelsPosition; +}; + +QT_CHARTS_END_NAMESPACE + +#endif // DECLARATIVECATEGORYAXIS_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/declarativechart_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/declarativechart_p.h new file mode 100644 index 0000000..a8441d8 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/declarativechart_p.h @@ -0,0 +1,275 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef DECLARATIVECHART_H +#define DECLARATIVECHART_H + +#include +#include +#include + +#include +#include +#include + +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class DeclarativeMargins; +class Domain; +class DeclarativeAxes; + +class QT_QMLCHARTS_PRIVATE_EXPORT DeclarativeChart : public QQuickItem +{ + Q_OBJECT + Q_PROPERTY(Theme theme READ theme WRITE setTheme) + Q_PROPERTY(Animation animationOptions READ animationOptions WRITE setAnimationOptions) + Q_PROPERTY(int animationDuration READ animationDuration WRITE setAnimationDuration NOTIFY animationDurationChanged REVISION 5) + Q_PROPERTY(QEasingCurve animationEasingCurve READ animationEasingCurve WRITE setAnimationEasingCurve NOTIFY animationEasingCurveChanged REVISION 5) + Q_PROPERTY(QString title READ title WRITE setTitle) + Q_PROPERTY(QFont titleFont READ titleFont WRITE setTitleFont) + Q_PROPERTY(QColor titleColor READ titleColor WRITE setTitleColor NOTIFY titleColorChanged) + Q_PROPERTY(QtCharts::QLegend *legend READ legend CONSTANT) + Q_PROPERTY(int count READ count) + Q_PROPERTY(QColor backgroundColor READ backgroundColor WRITE setBackgroundColor NOTIFY backgroundColorChanged) + Q_PROPERTY(bool dropShadowEnabled READ dropShadowEnabled WRITE setDropShadowEnabled NOTIFY dropShadowEnabledChanged) + Q_PROPERTY(qreal backgroundRoundness READ backgroundRoundness WRITE setBackgroundRoundness NOTIFY backgroundRoundnessChanged REVISION 3) + Q_PROPERTY(QtCharts::DeclarativeMargins *margins READ margins NOTIFY marginsChanged REVISION 2) + Q_PROPERTY(QRectF plotArea READ plotArea WRITE setPlotArea NOTIFY plotAreaChanged REVISION 1) + Q_PROPERTY(QColor plotAreaColor READ plotAreaColor WRITE setPlotAreaColor NOTIFY plotAreaColorChanged REVISION 3) + Q_PROPERTY(QQmlListProperty axes READ axes REVISION 2) + Q_PROPERTY(bool localizeNumbers READ localizeNumbers WRITE setLocalizeNumbers NOTIFY localizeNumbersChanged REVISION 4) + Q_PROPERTY(QLocale locale READ locale WRITE setLocale NOTIFY localeChanged REVISION 4) + Q_ENUMS(Animation) + Q_ENUMS(Theme) + Q_ENUMS(SeriesType) + +public: + // duplicating enums from QChart to make the QML api namings 1-to-1 with the C++ api + enum Theme { + ChartThemeLight = 0, + ChartThemeBlueCerulean, + ChartThemeDark, + ChartThemeBrownSand, + ChartThemeBlueNcs, + ChartThemeHighContrast, + ChartThemeBlueIcy, + ChartThemeQt + }; + + enum Animation { + NoAnimation = 0x0, + GridAxisAnimations = 0x1, + SeriesAnimations = 0x2, + AllAnimations = 0x3 + }; + + enum SeriesType { + SeriesTypeLine, + SeriesTypeArea, + SeriesTypeBar, + SeriesTypeStackedBar, + SeriesTypePercentBar, + SeriesTypePie, + SeriesTypeScatter, + SeriesTypeSpline, + SeriesTypeHorizontalBar, + SeriesTypeHorizontalStackedBar, + SeriesTypeHorizontalPercentBar, + SeriesTypeBoxPlot, + SeriesTypeCandlestick + }; + +public: + DeclarativeChart(QQuickItem *parent = 0); + ~DeclarativeChart(); + +public: // From parent classes + void childEvent(QChildEvent *event); + void componentComplete(); + void geometryChanged(const QRectF &newGeometry, const QRectF &oldGeometry); + QSGNode *updatePaintNode(QSGNode *oldNode, UpdatePaintNodeData *); +protected: + void mousePressEvent(QMouseEvent *event); + void mouseReleaseEvent(QMouseEvent *event); + void hoverMoveEvent(QHoverEvent *event); + void mouseDoubleClickEvent(QMouseEvent *event); +private Q_SLOTS: + void handleAntialiasingChanged(bool enable); + void sceneChanged(QList region); + void renderScene(); + +public: + void setTheme(DeclarativeChart::Theme theme); + DeclarativeChart::Theme theme(); + void setAnimationOptions(DeclarativeChart::Animation animations); + DeclarativeChart::Animation animationOptions(); + void setAnimationDuration(int msecs); + int animationDuration() const; + void setAnimationEasingCurve(const QEasingCurve &curve); + QEasingCurve animationEasingCurve() const; + void setTitle(QString title); + QString title(); + QLegend *legend(); + QFont titleFont() const; + void setTitleFont(const QFont &font); + void setTitleColor(QColor color); + QColor titleColor(); + void setBackgroundColor(QColor color); + QColor backgroundColor(); + void setPlotAreaColor(QColor color); + QColor plotAreaColor(); + void setLocalizeNumbers(bool localize); + bool localizeNumbers() const; + void setLocale(const QLocale &locale); + QLocale locale() const; + + int count(); + void setDropShadowEnabled(bool enabled); + bool dropShadowEnabled(); + qreal backgroundRoundness() const; + void setBackgroundRoundness(qreal diameter); + + // Margins & plotArea + DeclarativeMargins *margins() { return m_margins; } + QRectF plotArea() { return m_chart->plotArea(); } + void setPlotArea(const QRectF &rect); + + // Axis handling + QAbstractAxis *defaultAxis(Qt::Orientation orientation, QAbstractSeries *series); + void initializeAxes(QAbstractSeries *series); + void doInitializeAxes(QAbstractSeries *series, DeclarativeAxes *axes); + QQmlListProperty axes(); + static void axesAppendFunc(QQmlListProperty *list, QAbstractAxis *element); + static int axesCountFunc(QQmlListProperty *list); + static QAbstractAxis *axesAtFunc(QQmlListProperty *list, int index); + static void axesClearFunc(QQmlListProperty *list); + +public: + Q_INVOKABLE QAbstractSeries *series(int index); + Q_INVOKABLE QAbstractSeries *series(QString seriesName); + Q_INVOKABLE QAbstractSeries *createSeries(int type, QString name = "", QAbstractAxis *axisX = 0, QAbstractAxis *axisY = 0); + Q_INVOKABLE void removeSeries(QAbstractSeries *series); + Q_INVOKABLE void removeAllSeries() { m_chart->removeAllSeries(); } + Q_INVOKABLE void setAxisX(QAbstractAxis *axis, QAbstractSeries *series = 0); + Q_INVOKABLE void setAxisY(QAbstractAxis *axis, QAbstractSeries *series = 0); + Q_INVOKABLE QAbstractAxis *axisX(QAbstractSeries *series = 0); + Q_INVOKABLE QAbstractAxis *axisY(QAbstractSeries *series = 0); + Q_INVOKABLE void zoom(qreal factor); + Q_REVISION(5) Q_INVOKABLE void zoomIn(); + Q_REVISION(5) Q_INVOKABLE void zoomIn(const QRectF &rectangle); + Q_REVISION(5) Q_INVOKABLE void zoomOut(); + Q_REVISION(5) Q_INVOKABLE void zoomReset(); + Q_REVISION(5) Q_INVOKABLE bool isZoomed(); + Q_INVOKABLE void scrollLeft(qreal pixels); + Q_INVOKABLE void scrollRight(qreal pixels); + Q_INVOKABLE void scrollUp(qreal pixels); + Q_INVOKABLE void scrollDown(qreal pixels); + Q_REVISION(5) Q_INVOKABLE QPointF mapToValue(const QPointF &position, + QAbstractSeries *series = 0); + Q_REVISION(5) Q_INVOKABLE QPointF mapToPosition(const QPointF &value, + QAbstractSeries *series = 0); + + +Q_SIGNALS: + void axisLabelsChanged(); + void titleColorChanged(QColor color); + void backgroundColorChanged(); + void dropShadowEnabledChanged(bool enabled); + Q_REVISION(2) void marginsChanged(); + void plotAreaChanged(QRectF plotArea); + void seriesAdded(QAbstractSeries *series); + void seriesRemoved(QAbstractSeries *series); + Q_REVISION(3) void plotAreaColorChanged(); + Q_REVISION(3) void backgroundRoundnessChanged(qreal diameter); + Q_REVISION(4) void localizeNumbersChanged(); + Q_REVISION(4) void localeChanged(); + Q_REVISION(5) void animationDurationChanged(int msecs); + Q_REVISION(5) void animationEasingCurveChanged(QEasingCurve curve); + void needRender(); + void pendingRenderNodeMouseEventResponses(); + +private Q_SLOTS: + void changeMargins(int top, int bottom, int left, int right); + void handleAxisXSet(QAbstractAxis *axis); + void handleAxisYSet(QAbstractAxis *axis); + void handleAxisXTopSet(QAbstractAxis *axis); + void handleAxisYRightSet(QAbstractAxis *axis); + void handleSeriesAdded(QAbstractSeries *series); + void handlePendingRenderNodeMouseEventResponses(); + +protected: + explicit DeclarativeChart(QChart::ChartType type, QQuickItem *parent); + +private: + void initChart(QChart::ChartType type); + void seriesAxisAttachHelper(QAbstractSeries *series, QAbstractAxis *axis, + Qt::Orientations orientation, Qt::Alignment alignment); + void findMinMaxForSeries(QAbstractSeries *series,Qt::Orientations orientation, + qreal &min, qreal &max); + void queueRendererMouseEvent(QMouseEvent *event); + + // Extending QChart with DeclarativeChart is not possible because QObject does not support + // multi inheritance, so we now have a QChart as a member instead + QChart *m_chart; + QGraphicsScene *m_scene; + QPointF m_mousePressScenePoint; + QPoint m_mousePressScreenPoint; + QPointF m_lastMouseMoveScenePoint; + QPoint m_lastMouseMoveScreenPoint; + Qt::MouseButton m_mousePressButton; + Qt::MouseButtons m_mousePressButtons; + QImage *m_sceneImage; + bool m_sceneImageDirty; + bool m_updatePending; + Qt::HANDLE m_paintThreadId; + Qt::HANDLE m_guiThreadId; + DeclarativeMargins *m_margins; + GLXYSeriesDataManager *m_glXYDataManager; + bool m_sceneImageNeedsClear; + QVector m_pendingRenderNodeMouseEvents; + QVector m_pendingRenderNodeMouseEventResponses; + QRectF m_adjustedPlotArea; +}; + +QT_CHARTS_END_NAMESPACE + +#endif // DECLARATIVECHART_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/declarativechartglobal_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/declarativechartglobal_p.h new file mode 100644 index 0000000..a897d4c --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/declarativechartglobal_p.h @@ -0,0 +1,54 @@ +/**************************************************************************** +** +** Copyright (C) 2018 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef DECLARATIVECHARTGLOBAL_H +#define DECLARATIVECHARTGLOBAL_H + +#include + +#ifndef QT_STATIC +# if defined(QT_BUILD_QMLCHARTS_LIB) +# define QT_QMLCHARTS_PRIVATE_EXPORT Q_DECL_EXPORT +# else +# define QT_QMLCHARTS_PRIVATE_EXPORT Q_DECL_IMPORT +# endif +#else +# define QT_QMLCHARTS_PRIVATE_EXPORT +#endif + +#endif // DECLARATIVECHARTGLOBAL_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/declarativechartnode_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/declarativechartnode_p.h new file mode 100644 index 0000000..cd7b9ee --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/declarativechartnode_p.h @@ -0,0 +1,70 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef DECLARATIVECHARTNODE_P_H +#define DECLARATIVECHARTNODE_P_H + +#include +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class DeclarativeAbstractRenderNode; +class DeclarativeChartNode : public QSGRootNode +{ +public: + DeclarativeChartNode(QQuickWindow *window); + ~DeclarativeChartNode(); + + void createTextureFromImage(const QImage &chartImage); + DeclarativeAbstractRenderNode *renderNode() const { return m_renderNode; } + + void setRect(const QRectF &rect); + +private: + QRectF m_rect; + QQuickWindow *m_window; + DeclarativeAbstractRenderNode *m_renderNode; + QSGImageNode *m_imageNode; +}; + +QT_CHARTS_END_NAMESPACE + +#endif // DECLARATIVECHARTNODE_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/declarativelineseries_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/declarativelineseries_p.h new file mode 100644 index 0000000..70de3d0 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/declarativelineseries_p.h @@ -0,0 +1,129 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef DECLARATIVELINESERIES_H +#define DECLARATIVELINESERIES_H + +#include +#include +#include +#include + +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QT_QMLCHARTS_PRIVATE_EXPORT DeclarativeLineSeries : public QLineSeries, public DeclarativeXySeries, public QQmlParserStatus +{ + Q_OBJECT + Q_INTERFACES(QQmlParserStatus) + Q_PROPERTY(int count READ count NOTIFY countChanged) + Q_PROPERTY(QtCharts::QAbstractAxis *axisX READ axisX WRITE setAxisX NOTIFY axisXChanged REVISION 1) + Q_PROPERTY(QtCharts::QAbstractAxis *axisY READ axisY WRITE setAxisY NOTIFY axisYChanged REVISION 1) + Q_PROPERTY(QtCharts::QAbstractAxis *axisXTop READ axisXTop WRITE setAxisXTop NOTIFY axisXTopChanged REVISION 2) + Q_PROPERTY(QtCharts::QAbstractAxis *axisYRight READ axisYRight WRITE setAxisYRight NOTIFY axisYRightChanged REVISION 2) + Q_PROPERTY(QtCharts::QAbstractAxis *axisAngular READ axisAngular WRITE setAxisAngular NOTIFY axisAngularChanged REVISION 3) + Q_PROPERTY(QtCharts::QAbstractAxis *axisRadial READ axisRadial WRITE setAxisRadial NOTIFY axisRadialChanged REVISION 3) + Q_PROPERTY(qreal width READ width WRITE setWidth NOTIFY widthChanged REVISION 1) + Q_PROPERTY(Qt::PenStyle style READ style WRITE setStyle NOTIFY styleChanged REVISION 1) + Q_PROPERTY(Qt::PenCapStyle capStyle READ capStyle WRITE setCapStyle NOTIFY capStyleChanged REVISION 1) + Q_PROPERTY(QQmlListProperty declarativeChildren READ declarativeChildren) + Q_CLASSINFO("DefaultProperty", "declarativeChildren") + +public: + explicit DeclarativeLineSeries(QObject *parent = 0); + QXYSeries *xySeries() { return this; } + QAbstractAxis *axisX() { return m_axes->axisX(); } + void setAxisX(QAbstractAxis *axis) { m_axes->setAxisX(axis); } + QAbstractAxis *axisY() { return m_axes->axisY(); } + void setAxisY(QAbstractAxis *axis) { m_axes->setAxisY(axis); } + QAbstractAxis *axisXTop() { return m_axes->axisXTop(); } + void setAxisXTop(QAbstractAxis *axis) { m_axes->setAxisXTop(axis); } + QAbstractAxis *axisYRight() { return m_axes->axisYRight(); } + void setAxisYRight(QAbstractAxis *axis) { m_axes->setAxisYRight(axis); } + QAbstractAxis *axisAngular() { return m_axes->axisX(); } + void setAxisAngular(QAbstractAxis *axis) { m_axes->setAxisX(axis); } + QAbstractAxis *axisRadial() { return m_axes->axisY(); } + void setAxisRadial(QAbstractAxis *axis) { m_axes->setAxisY(axis); } + qreal width() const; + void setWidth(qreal width); + Qt::PenStyle style() const; + void setStyle(Qt::PenStyle style); + Qt::PenCapStyle capStyle() const; + void setCapStyle(Qt::PenCapStyle capStyle); + QQmlListProperty declarativeChildren(); + +public: // from QDeclarativeParserStatus + void classBegin() { DeclarativeXySeries::classBegin(); } + void componentComplete() { DeclarativeXySeries::componentComplete(); } + +public: + Q_INVOKABLE void append(qreal x, qreal y) { DeclarativeXySeries::append(x, y); } + Q_INVOKABLE void replace(qreal oldX, qreal oldY, qreal newX, qreal newY) { DeclarativeXySeries::replace(oldX, oldY, newX, newY); } + Q_REVISION(3) Q_INVOKABLE void replace(int index, qreal newX, qreal newY) { DeclarativeXySeries::replace(index, newX, newY); } + Q_INVOKABLE void remove(qreal x, qreal y) { DeclarativeXySeries::remove(x, y); } + Q_REVISION(3) Q_INVOKABLE void remove(int index) { DeclarativeXySeries::remove(index); } + Q_REVISION(4) Q_INVOKABLE void removePoints(int index, int count) { DeclarativeXySeries::removePoints(index, count); } + Q_INVOKABLE void insert(int index, qreal x, qreal y) { DeclarativeXySeries::insert(index, x, y); } + Q_INVOKABLE void clear() { DeclarativeXySeries::clear(); } + Q_INVOKABLE QPointF at(int index) { return DeclarativeXySeries::at(index); } + +Q_SIGNALS: + void countChanged(int count); + Q_REVISION(1) void axisXChanged(QAbstractAxis *axis); + Q_REVISION(1) void axisYChanged(QAbstractAxis *axis); + Q_REVISION(2) void axisXTopChanged(QAbstractAxis *axis); + Q_REVISION(2) void axisYRightChanged(QAbstractAxis *axis); + Q_REVISION(3) void axisAngularChanged(QAbstractAxis *axis); + Q_REVISION(3) void axisRadialChanged(QAbstractAxis *axis); + Q_REVISION(1) void widthChanged(qreal width); + Q_REVISION(1) void styleChanged(Qt::PenStyle style); + Q_REVISION(1) void capStyleChanged(Qt::PenCapStyle capStyle); + +public Q_SLOTS: + static void appendDeclarativeChildren(QQmlListProperty *list, QObject *element); + void handleCountChanged(int index); + +public: + DeclarativeAxes *m_axes; +}; + +QT_CHARTS_END_NAMESPACE + +#endif // DECLARATIVELINESERIES_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/declarativemargins_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/declarativemargins_p.h new file mode 100644 index 0000000..b9c7ab0 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/declarativemargins_p.h @@ -0,0 +1,73 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef DECLARATIVE_MARGINS_H +#define DECLARATIVE_MARGINS_H + +#include +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QT_QMLCHARTS_PRIVATE_EXPORT DeclarativeMargins : public QObject, public QMargins +{ + Q_OBJECT + Q_PROPERTY(int top READ top WRITE setTop NOTIFY topChanged) + Q_PROPERTY(int bottom READ bottom WRITE setBottom NOTIFY bottomChanged) + Q_PROPERTY(int left READ left WRITE setLeft NOTIFY leftChanged) + Q_PROPERTY(int right READ right WRITE setRight NOTIFY rightChanged) + +public: + explicit DeclarativeMargins(QObject *parent = 0); + void setTop(int top); + void setBottom(int bottom); + void setLeft(int left); + void setRight(int right); + +Q_SIGNALS: + void topChanged(int top, int bottom, int left, int right); + void bottomChanged(int top, int bottom, int left, int right); + void leftChanged(int top, int bottom, int left, int right); + void rightChanged(int top, int bottom, int left, int right); +}; + +QT_CHARTS_END_NAMESPACE + +#endif // DECLARATIVE_MARGINS_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/declarativeopenglrendernode_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/declarativeopenglrendernode_p.h new file mode 100644 index 0000000..d4bb237 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/declarativeopenglrendernode_p.h @@ -0,0 +1,119 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef DECLARATIVEOPENGLRENDERNODE_P_H +#define DECLARATIVEOPENGLRENDERNODE_P_H + +#include + +#include +#include +#include +#include +#include +#include +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class DeclarativeOpenGLRenderNode : public QObject, public DeclarativeAbstractRenderNode, QOpenGLFunctions +{ + Q_OBJECT +public: + DeclarativeOpenGLRenderNode(QQuickWindow *window); + ~DeclarativeOpenGLRenderNode(); + + void initGL(); + QSize textureSize() const override { return m_textureSize; } + void setTextureSize(const QSize &size) override; + + void setSeriesData(bool mapDirty, const GLXYDataMap &dataMap) override; + void setRect(const QRectF &rect) override; + void setAntialiasing(bool enable) override; + void addMouseEvents(const QVector &events) override; + void takeMouseEventResponses(QVector &responses) override; + +public Q_SLOTS: + void render(); + +private: + void renderGL(bool selection); + void renderSelection(); + void renderVisual(); + void recreateFBO(); + void cleanXYSeriesResources(const QXYSeries *series); + void handleMouseEvents(); + const QXYSeries *findSeriesAtEvent(QMouseEvent *event); + + QSGTexture *m_texture; + QSGImageNode *m_imageNode; + QQuickWindow *m_window; + QQuickWindow::CreateTextureOptions m_textureOptions; + QSize m_textureSize; + bool m_recreateFbo; + GLXYDataMap m_xyDataMap; + QOpenGLFramebufferObject *m_fbo; + QOpenGLFramebufferObject *m_resolvedFbo; + QOpenGLFramebufferObject *m_selectionFbo; + QOpenGLShaderProgram *m_program; + int m_shaderAttribLoc; + int m_colorUniformLoc; + int m_minUniformLoc; + int m_deltaUniformLoc; + int m_pointSizeUniformLoc; + int m_matrixUniformLoc; + QOpenGLVertexArrayObject m_vao; + QHash m_seriesBufferMap; + bool m_renderNeeded; + QRectF m_rect; + bool m_antialiasing; + QVector m_mouseEvents; + QVector m_mouseEventResponses; + bool m_selectionRenderNeeded; + QVector m_selectionVector; + QPoint m_mousePressPos; + bool m_mousePressed; + const QXYSeries *m_lastPressSeries; + const QXYSeries *m_lastHoverSeries; +}; + +QT_CHARTS_END_NAMESPACE + +#endif // DECLARATIVEOPENGLRENDERNODE_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/declarativepieseries_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/declarativepieseries_p.h new file mode 100644 index 0000000..33ff758 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/declarativepieseries_p.h @@ -0,0 +1,104 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef DECLARATIVEPIESERIES_H +#define DECLARATIVEPIESERIES_H + +#include +#include +#include + +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QT_QMLCHARTS_PRIVATE_EXPORT DeclarativePieSlice : public QPieSlice +{ + Q_OBJECT + Q_PROPERTY(QString brushFilename READ brushFilename WRITE setBrushFilename NOTIFY brushFilenameChanged) + +public: + explicit DeclarativePieSlice(QObject *parent = 0); + QString brushFilename() const; + void setBrushFilename(const QString &brushFilename); + +Q_SIGNALS: + void brushFilenameChanged(const QString &brushFilename); + +private Q_SLOTS: + void handleBrushChanged(); + +private: + QString m_brushFilename; + QImage m_brushImage; +}; + +class DeclarativePieSeries : public QPieSeries, public QQmlParserStatus +{ + Q_OBJECT + Q_INTERFACES(QQmlParserStatus) + Q_PROPERTY(QQmlListProperty seriesChildren READ seriesChildren) + Q_CLASSINFO("DefaultProperty", "seriesChildren") + +public: + explicit DeclarativePieSeries(QQuickItem *parent = 0); + QQmlListProperty seriesChildren(); + Q_INVOKABLE QPieSlice *at(int index); + Q_INVOKABLE QPieSlice *find(QString label); + Q_INVOKABLE DeclarativePieSlice *append(QString label, qreal value); + Q_INVOKABLE bool remove(QPieSlice *slice); + Q_INVOKABLE void clear(); + +public: + void classBegin(); + void componentComplete(); + +Q_SIGNALS: + void sliceAdded(QPieSlice *slice); + void sliceRemoved(QPieSlice *slice); + +public Q_SLOTS: + static void appendSeriesChildren(QQmlListProperty *list, QObject *element); + void handleAdded(QList slices); + void handleRemoved(QList slices); +}; + +QT_CHARTS_END_NAMESPACE + +#endif // DECLARATIVEPIESERIES_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/declarativepolarchart_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/declarativepolarchart_p.h new file mode 100644 index 0000000..3d82f82 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/declarativepolarchart_p.h @@ -0,0 +1,59 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef DECLARATIVEPOLARCHART_H +#define DECLARATIVEPOLARCHART_H + +#include +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QT_QMLCHARTS_PRIVATE_EXPORT DeclarativePolarChart : public DeclarativeChart +{ + Q_OBJECT +public: + DeclarativePolarChart(QQuickItem *parent = 0); + ~DeclarativePolarChart(); +}; + +QT_CHARTS_END_NAMESPACE + +#endif // DECLARATIVEPOLARCHART_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/declarativescatterseries_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/declarativescatterseries_p.h new file mode 100644 index 0000000..e01ddb4 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/declarativescatterseries_p.h @@ -0,0 +1,136 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef DECLARATIVESCATTERSERIES_H +#define DECLARATIVESCATTERSERIES_H + +#include +#include +#include +#include + +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QT_QMLCHARTS_PRIVATE_EXPORT DeclarativeScatterSeries : public QScatterSeries, public DeclarativeXySeries, public QQmlParserStatus +{ + Q_OBJECT + Q_INTERFACES(QQmlParserStatus) + Q_PROPERTY(int count READ count NOTIFY countChanged) + Q_PROPERTY(QtCharts::QAbstractAxis *axisX READ axisX WRITE setAxisX NOTIFY axisXChanged REVISION 1) + Q_PROPERTY(QtCharts::QAbstractAxis *axisY READ axisY WRITE setAxisY NOTIFY axisYChanged REVISION 1) + Q_PROPERTY(QtCharts::QAbstractAxis *axisXTop READ axisXTop WRITE setAxisXTop NOTIFY axisXTopChanged REVISION 2) + Q_PROPERTY(QtCharts::QAbstractAxis *axisYRight READ axisYRight WRITE setAxisYRight NOTIFY axisYRightChanged REVISION 2) + Q_PROPERTY(QtCharts::QAbstractAxis *axisAngular READ axisAngular WRITE setAxisAngular NOTIFY axisAngularChanged REVISION 3) + Q_PROPERTY(QtCharts::QAbstractAxis *axisRadial READ axisRadial WRITE setAxisRadial NOTIFY axisRadialChanged REVISION 3) + Q_PROPERTY(qreal borderWidth READ borderWidth WRITE setBorderWidth NOTIFY borderWidthChanged REVISION 1) + Q_PROPERTY(QQmlListProperty declarativeChildren READ declarativeChildren) + Q_PROPERTY(QString brushFilename READ brushFilename WRITE setBrushFilename NOTIFY brushFilenameChanged REVISION 4) + Q_PROPERTY(QBrush brush READ brush WRITE setBrush NOTIFY brushChanged REVISION 4) + Q_CLASSINFO("DefaultProperty", "declarativeChildren") + +public: + explicit DeclarativeScatterSeries(QObject *parent = 0); + QXYSeries *xySeries() { return this; } + QAbstractAxis *axisX() { return m_axes->axisX(); } + void setAxisX(QAbstractAxis *axis) { m_axes->setAxisX(axis); } + QAbstractAxis *axisY() { return m_axes->axisY(); } + void setAxisY(QAbstractAxis *axis) { m_axes->setAxisY(axis); } + QAbstractAxis *axisXTop() { return m_axes->axisXTop(); } + void setAxisXTop(QAbstractAxis *axis) { m_axes->setAxisXTop(axis); } + QAbstractAxis *axisYRight() { return m_axes->axisYRight(); } + void setAxisYRight(QAbstractAxis *axis) { m_axes->setAxisYRight(axis); } + QAbstractAxis *axisAngular() { return m_axes->axisX(); } + void setAxisAngular(QAbstractAxis *axis) { m_axes->setAxisX(axis); } + QAbstractAxis *axisRadial() { return m_axes->axisY(); } + void setAxisRadial(QAbstractAxis *axis) { m_axes->setAxisY(axis); } + qreal borderWidth() const; + void setBorderWidth(qreal borderWidth); + QQmlListProperty declarativeChildren(); + QString brushFilename() const; + void setBrushFilename(const QString &brushFilename); + void setBrush(const QBrush &brush); + QBrush brush() const; + +public: // from QDeclarativeParserStatus + void classBegin() { DeclarativeXySeries::classBegin(); } + void componentComplete() { DeclarativeXySeries::componentComplete(); } + +public: + Q_INVOKABLE void append(qreal x, qreal y) { DeclarativeXySeries::append(x, y); } + Q_INVOKABLE void replace(qreal oldX, qreal oldY, qreal newX, qreal newY) { DeclarativeXySeries::replace(oldX, oldY, newX, newY); } + Q_REVISION(3) Q_INVOKABLE void replace(int index, qreal newX, qreal newY) { DeclarativeXySeries::replace(index, newX, newY); } + Q_INVOKABLE void remove(qreal x, qreal y) { DeclarativeXySeries::remove(x, y); } + Q_REVISION(3) Q_INVOKABLE void remove(int index) { DeclarativeXySeries::remove(index); } + Q_REVISION(5) Q_INVOKABLE void removePoints(int index, int count) { DeclarativeXySeries::removePoints(index, count); } + Q_INVOKABLE void insert(int index, qreal x, qreal y) { DeclarativeXySeries::insert(index, x, y); } + Q_INVOKABLE void clear() { DeclarativeXySeries::clear(); } + Q_INVOKABLE QPointF at(int index) { return DeclarativeXySeries::at(index); } + +Q_SIGNALS: + void countChanged(int count); + Q_REVISION(1) void axisXChanged(QAbstractAxis *axis); + Q_REVISION(1) void axisYChanged(QAbstractAxis *axis); + Q_REVISION(1) void borderWidthChanged(qreal width); + Q_REVISION(2) void axisXTopChanged(QAbstractAxis *axis); + Q_REVISION(2) void axisYRightChanged(QAbstractAxis *axis); + Q_REVISION(3) void axisAngularChanged(QAbstractAxis *axis); + Q_REVISION(3) void axisRadialChanged(QAbstractAxis *axis); + Q_REVISION(4) void brushFilenameChanged(const QString &brushFilename); + Q_REVISION(4) void brushChanged(); + +public Q_SLOTS: + static void appendDeclarativeChildren(QQmlListProperty *list, QObject *element); + void handleCountChanged(int index); + +private Q_SLOTS: + void handleBrushChanged(); + +public: + DeclarativeAxes *m_axes; + +private: + QString m_brushFilename; + QImage m_brushImage; +}; + +QT_CHARTS_END_NAMESPACE + +#endif // DECLARATIVESCATTERSERIES_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/declarativesplineseries_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/declarativesplineseries_p.h new file mode 100644 index 0000000..c6e6689 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/declarativesplineseries_p.h @@ -0,0 +1,129 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef DECLARATIVESPLINESERIES_H +#define DECLARATIVESPLINESERIES_H + +#include +#include +#include +#include + +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QT_QMLCHARTS_PRIVATE_EXPORT DeclarativeSplineSeries : public QSplineSeries, public DeclarativeXySeries, public QQmlParserStatus +{ + Q_OBJECT + Q_INTERFACES(QQmlParserStatus) + Q_PROPERTY(int count READ count NOTIFY countChanged) + Q_PROPERTY(QtCharts::QAbstractAxis *axisX READ axisX WRITE setAxisX NOTIFY axisXChanged REVISION 1) + Q_PROPERTY(QtCharts::QAbstractAxis *axisY READ axisY WRITE setAxisY NOTIFY axisYChanged REVISION 1) + Q_PROPERTY(QtCharts::QAbstractAxis *axisXTop READ axisXTop WRITE setAxisXTop NOTIFY axisXTopChanged REVISION 2) + Q_PROPERTY(QtCharts::QAbstractAxis *axisYRight READ axisYRight WRITE setAxisYRight NOTIFY axisYRightChanged REVISION 2) + Q_PROPERTY(QtCharts::QAbstractAxis *axisAngular READ axisAngular WRITE setAxisAngular NOTIFY axisAngularChanged REVISION 3) + Q_PROPERTY(QtCharts::QAbstractAxis *axisRadial READ axisRadial WRITE setAxisRadial NOTIFY axisRadialChanged REVISION 3) + Q_PROPERTY(qreal width READ width WRITE setWidth NOTIFY widthChanged REVISION 1) + Q_PROPERTY(Qt::PenStyle style READ style WRITE setStyle NOTIFY styleChanged REVISION 1) + Q_PROPERTY(Qt::PenCapStyle capStyle READ capStyle WRITE setCapStyle NOTIFY capStyleChanged REVISION 1) + Q_PROPERTY(QQmlListProperty declarativeChildren READ declarativeChildren) + Q_CLASSINFO("DefaultProperty", "declarativeChildren") + +public: + explicit DeclarativeSplineSeries(QObject *parent = 0); + QXYSeries *xySeries() { return this; } + QAbstractAxis *axisX() { return m_axes->axisX(); } + void setAxisX(QAbstractAxis *axis) { m_axes->setAxisX(axis); } + QAbstractAxis *axisY() { return m_axes->axisY(); } + void setAxisY(QAbstractAxis *axis) { m_axes->setAxisY(axis); } + QAbstractAxis *axisXTop() { return m_axes->axisXTop(); } + void setAxisXTop(QAbstractAxis *axis) { m_axes->setAxisXTop(axis); } + QAbstractAxis *axisYRight() { return m_axes->axisYRight(); } + void setAxisYRight(QAbstractAxis *axis) { m_axes->setAxisYRight(axis); } + QAbstractAxis *axisAngular() { return m_axes->axisX(); } + void setAxisAngular(QAbstractAxis *axis) { m_axes->setAxisX(axis); } + QAbstractAxis *axisRadial() { return m_axes->axisY(); } + void setAxisRadial(QAbstractAxis *axis) { m_axes->setAxisY(axis); } + qreal width() const; + void setWidth(qreal width); + Qt::PenStyle style() const; + void setStyle(Qt::PenStyle style); + Qt::PenCapStyle capStyle() const; + void setCapStyle(Qt::PenCapStyle capStyle); + QQmlListProperty declarativeChildren(); + +public: // from QDeclarativeParserStatus + void classBegin() { DeclarativeXySeries::classBegin(); } + void componentComplete() { DeclarativeXySeries::componentComplete(); } + +public: + Q_INVOKABLE void append(qreal x, qreal y) { DeclarativeXySeries::append(x, y); } + Q_INVOKABLE void replace(qreal oldX, qreal oldY, qreal newX, qreal newY) { DeclarativeXySeries::replace(oldX, oldY, newX, newY); } + Q_REVISION(3) Q_INVOKABLE void replace(int index, qreal newX, qreal newY) { DeclarativeXySeries::replace(index, newX, newY); } + Q_INVOKABLE void remove(qreal x, qreal y) { DeclarativeXySeries::remove(x, y); } + Q_REVISION(3) Q_INVOKABLE void remove(int index) { DeclarativeXySeries::remove(index); } + Q_REVISION(4) Q_INVOKABLE void removePoints(int index, int count) { DeclarativeXySeries::removePoints(index, count); } + Q_INVOKABLE void insert(int index, qreal x, qreal y) { DeclarativeXySeries::insert(index, x, y); } + Q_INVOKABLE void clear() { DeclarativeXySeries::clear(); } + Q_INVOKABLE QPointF at(int index) { return DeclarativeXySeries::at(index); } + +Q_SIGNALS: + void countChanged(int count); + Q_REVISION(1) void axisXChanged(QAbstractAxis *axis); + Q_REVISION(1) void axisYChanged(QAbstractAxis *axis); + Q_REVISION(2) void axisXTopChanged(QAbstractAxis *axis); + Q_REVISION(2) void axisYRightChanged(QAbstractAxis *axis); + Q_REVISION(3) void axisAngularChanged(QAbstractAxis *axis); + Q_REVISION(3) void axisRadialChanged(QAbstractAxis *axis); + Q_REVISION(1) void widthChanged(qreal width); + Q_REVISION(1) void styleChanged(Qt::PenStyle style); + Q_REVISION(1) void capStyleChanged(Qt::PenCapStyle capStyle); + +public Q_SLOTS: + static void appendDeclarativeChildren(QQmlListProperty *list, QObject *element); + void handleCountChanged(int index); + +public: + DeclarativeAxes *m_axes; +}; + +QT_CHARTS_END_NAMESPACE + +#endif // DECLARATIVESPLINESERIES_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/declarativexypoint_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/declarativexypoint_p.h new file mode 100644 index 0000000..316ff96 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/declarativexypoint_p.h @@ -0,0 +1,61 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef DECLARATIVE_XY_POINT_H +#define DECLARATIVE_XY_POINT_H + +#include +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QT_QMLCHARTS_PRIVATE_EXPORT DeclarativeXYPoint : public QObject, public QPointF +{ + Q_OBJECT + Q_PROPERTY(qreal x READ x WRITE setX) + Q_PROPERTY(qreal y READ y WRITE setY) + +public: + explicit DeclarativeXYPoint(QObject *parent = 0); +}; + +QT_CHARTS_END_NAMESPACE + +#endif // DECLARATIVE_XY_POINT_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/declarativexyseries_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/declarativexyseries_p.h new file mode 100644 index 0000000..e78fde6 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/declarativexyseries_p.h @@ -0,0 +1,74 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef DECLARATIVE_XY_SERIES_H +#define DECLARATIVE_XY_SERIES_H + +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QChart; +class QAbstractSeries; + +class QT_QMLCHARTS_PRIVATE_EXPORT DeclarativeXySeries +{ +public: + explicit DeclarativeXySeries(); + ~DeclarativeXySeries(); + +public: + void classBegin(); + void componentComplete(); + virtual QXYSeries *xySeries() = 0; + + void append(qreal x, qreal y); + void replace(qreal oldX, qreal oldY, qreal newX, qreal newY); + void replace(int index, qreal newX, qreal newY); + void remove(qreal x, qreal y); + void remove(int index); + void removePoints(int index, int count); + void insert(int index, qreal x, qreal y); + void clear(); + QPointF at(int index); +}; + +QT_CHARTS_END_NAMESPACE + +#endif // DECLARATIVE_XY_SERIES_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/glwidget_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/glwidget_p.h new file mode 100644 index 0000000..f2e85a3 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/glwidget_p.h @@ -0,0 +1,117 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef GLWIDGET_H +#define GLWIDGET_H + +#ifndef QT_NO_OPENGL + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +QT_FORWARD_DECLARE_CLASS(QOpenGLShaderProgram) + +QT_CHARTS_BEGIN_NAMESPACE + +class GLXYSeriesDataManager; + +class GLWidget : public QOpenGLWidget, protected QOpenGLFunctions +{ + Q_OBJECT + +public: + GLWidget(GLXYSeriesDataManager *xyDataManager, QChart *chart, QGraphicsView *parent = 0); + ~GLWidget(); + + bool needsReset() const; + +public Q_SLOTS: + void cleanup(); + void cleanXYSeriesResources(const QXYSeries *series); + +protected: + void initializeGL() override; + void paintGL() override; + void resizeGL(int width, int height) override; + void mouseDoubleClickEvent(QMouseEvent *event) override; + void mouseMoveEvent(QMouseEvent *event) override; + void mousePressEvent(QMouseEvent *event) override; + void mouseReleaseEvent(QMouseEvent *event) override; + +private: + QXYSeries *findSeriesAtEvent(QMouseEvent *event); + void render(bool selection); + void recreateSelectionFbo(); + QXYSeries *chartSeries(const QXYSeries *cSeries); + + QOpenGLShaderProgram *m_program; + int m_shaderAttribLoc; + int m_colorUniformLoc; + int m_minUniformLoc; + int m_deltaUniformLoc; + int m_pointSizeUniformLoc; + int m_matrixUniformLoc; + QOpenGLVertexArrayObject m_vao; + + QHash m_seriesBufferMap; + GLXYSeriesDataManager *m_xyDataManager; + bool m_antiAlias; + QGraphicsView *m_view; + QOpenGLFramebufferObject *m_selectionFbo; + QSize m_fboSize; + QVector m_selectionVector; + QChart *m_chart; + bool m_recreateSelectionFbo; + bool m_selectionRenderNeeded; + QPoint m_mousePressPos; + bool m_mousePressed; + QXYSeries *m_lastPressSeries; + QXYSeries *m_lastHoverSeries; +}; + +QT_CHARTS_END_NAMESPACE +#endif +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/glxyseriesdata_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/glxyseriesdata_p.h new file mode 100644 index 0000000..a5322d5 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/glxyseriesdata_p.h @@ -0,0 +1,123 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef GLXYSERIESDATA_H +#define GLXYSERIESDATA_H + +#include +#include +#include +#include +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class AbstractDomain; + +struct GLXYSeriesData { + QVector array; + bool dirty; + QVector3D color; + float width; + QAbstractSeries::SeriesType type; + QVector2D min; + QVector2D delta; + bool visible; + QMatrix4x4 matrix; +public: + GLXYSeriesData &operator=(const GLXYSeriesData &data) { + array = data.array; + dirty = data.dirty; + color = data.color; + width = data.width; + type = data.type; + min = data.min; + delta = data.delta; + visible = data.visible; + matrix = data.matrix; + return *this; + } +}; + +typedef QMap GLXYDataMap; +typedef QMapIterator GLXYDataMapIterator; + +class QT_CHARTS_PRIVATE_EXPORT GLXYSeriesDataManager : public QObject +{ + Q_OBJECT + +public: + GLXYSeriesDataManager(QObject *parent = 0); + ~GLXYSeriesDataManager(); + + void setPoints(QXYSeries *series, const AbstractDomain *domain); + + void removeSeries(const QXYSeries *series); + + GLXYDataMap &dataMap() { return m_seriesDataMap; } + + // These functions are needed by qml side, so they must be inline + bool mapDirty() const { return m_mapDirty; } + void clearAllDirty() { + m_mapDirty = false; + foreach (GLXYSeriesData *data, m_seriesDataMap.values()) + data->dirty = false; + } + void handleAxisReverseChanged(const QList &seriesList); + +public Q_SLOTS: + void cleanup(); + void handleSeriesPenChange(); + void handleSeriesOpenGLChange(); + void handleSeriesVisibilityChange(); + void handleScatterColorChange(); + void handleScatterMarkerSizeChange(); + +Q_SIGNALS: + void seriesRemoved(const QXYSeries *series); + +private: + GLXYDataMap m_seriesDataMap; + bool m_mapDirty; +}; + +QT_CHARTS_END_NAMESPACE + +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/horizontalaxis_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/horizontalaxis_p.h new file mode 100644 index 0000000..079783f --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/horizontalaxis_p.h @@ -0,0 +1,64 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef HORIZONTALAXIS_P_H +#define HORIZONTALAXIS_P_H + +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QT_CHARTS_PRIVATE_EXPORT HorizontalAxis : public CartesianChartAxis +{ +public: + HorizontalAxis(QAbstractAxis *axis, QGraphicsItem *item = nullptr, bool intervalAxis = false); + ~HorizontalAxis(); + + QSizeF sizeHint(Qt::SizeHint which, const QSizeF &constraint = QSizeF()) const override; + +protected: + void updateGeometry() override; + +private: + void updateMinorTickGeometry(); +}; + +QT_CHARTS_END_NAMESPACE + +#endif // HORIZONTALAXIS_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/horizontalbarchartitem_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/horizontalbarchartitem_p.h new file mode 100644 index 0000000..d9d5c51 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/horizontalbarchartitem_p.h @@ -0,0 +1,63 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef HORIZONTALBARCHARTITEM_H +#define HORIZONTALBARCHARTITEM_H + +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QT_CHARTS_PRIVATE_EXPORT HorizontalBarChartItem : public AbstractBarChartItem +{ + Q_OBJECT +public: + HorizontalBarChartItem(QAbstractBarSeries *series, QGraphicsItem* item = 0); + +private: + virtual QVector calculateLayout(); + void initializeLayout(int set, int category, int layoutIndex, bool resetAnimation); + QPointF topLeftPoint(int set, int setCount, int category, qreal barWidth, qreal value); + QPointF bottomRightPoint(int set, int setCount, int category, qreal barWidth, qreal value); +}; + +QT_CHARTS_END_NAMESPACE + +#endif // HORIZONTALBARCHARTITEM_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/horizontalpercentbarchartitem_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/horizontalpercentbarchartitem_p.h new file mode 100644 index 0000000..bff54e9 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/horizontalpercentbarchartitem_p.h @@ -0,0 +1,65 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef HORIZONTALPERCENTBARCHARTITEM_P_H +#define HORIZONTALPERCENTBARCHARTITEM_P_H + +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QT_CHARTS_PRIVATE_EXPORT HorizontalPercentBarChartItem : public AbstractBarChartItem +{ + Q_OBJECT +public: + HorizontalPercentBarChartItem(QAbstractBarSeries *series, QGraphicsItem* item = 0); + virtual QString generateLabelText(int set, int category, qreal value); + +private: + virtual QVector calculateLayout(); + void initializeLayout(int set, int category, int layoutIndex, bool resetAnimation); + void markLabelsDirty(QBarSet *barset, int index, int count); + QPointF topLeftPoint(int category, qreal barWidth, qreal value); + QPointF bottomRightPoint(int category, qreal barWidth, qreal value); +}; + +QT_CHARTS_END_NAMESPACE + +#endif // HORIZONTALPERCENTBARCHARTITEM_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/horizontalstackedbarchartitem_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/horizontalstackedbarchartitem_p.h new file mode 100644 index 0000000..d374449 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/horizontalstackedbarchartitem_p.h @@ -0,0 +1,63 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef HORIZONTALSTACKEDBARCHARTITEM_P_H +#define HORIZONTALSTACKEDBARCHARTITEM_P_H + +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QT_CHARTS_PRIVATE_EXPORT HorizontalStackedBarChartItem : public AbstractBarChartItem +{ + Q_OBJECT +public: + HorizontalStackedBarChartItem(QAbstractBarSeries *series, QGraphicsItem* item = 0); + +private: + virtual QVector calculateLayout(); + void initializeLayout(int set, int category, int layoutIndex, bool resetAnimation); + QPointF topLeftPoint(int category, qreal barWidth, qreal value); + QPointF bottomRightPoint(int category, qreal barWidth, qreal value); +}; + +QT_CHARTS_END_NAMESPACE + +#endif // HORIZONTALSTACKEDBARCHARTITEM_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/legendlayout_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/legendlayout_p.h new file mode 100644 index 0000000..7933c24 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/legendlayout_p.h @@ -0,0 +1,94 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef LEGENDLAYOUT_H +#define LEGENDLAYOUT_H +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QLegend; +class LegendMarkerItem; + +class QT_CHARTS_PRIVATE_EXPORT LegendLayout : public QGraphicsLayout +{ +public: + + LegendLayout(QLegend *legend); + virtual ~LegendLayout(); + + void setGeometry(const QRectF &rect); + + void setOffset(qreal x, qreal y); + QPointF offset() const; + + void invalidate(); +protected: + QSizeF sizeHint(Qt::SizeHint which, const QSizeF &constraint = QSizeF()) const; + int count() const { return 0; } + QGraphicsLayoutItem *itemAt(int) const { return 0; }; + void removeAt(int) {}; + +private: + void setAttachedGeometry(const QRectF &rect); + void setDettachedGeometry(const QRectF &rect); + + struct LegendWidthStruct { + LegendMarkerItem *item; + qreal width; + }; + static bool widthLongerThan(const LegendWidthStruct *item1, + const LegendWidthStruct *item2); + +private: + QLegend *m_legend; + qreal m_offsetX; + qreal m_offsetY; + qreal m_minOffsetX; + qreal m_minOffsetY; + qreal m_maxOffsetX; + qreal m_maxOffsetY; + qreal m_width; + qreal m_height; +}; + +QT_CHARTS_END_NAMESPACE + +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/legendmarkeritem_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/legendmarkeritem_p.h new file mode 100644 index 0000000..d3d71de --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/legendmarkeritem_p.h @@ -0,0 +1,146 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef LEGENDMARKERITEM_P_H +#define LEGENDMARKERITEM_P_H + +#include +#include +#include +#include +#include +#include +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QLegendMarkerPrivate; + +class QT_CHARTS_PRIVATE_EXPORT LegendMarkerItem : public QGraphicsObject, public QGraphicsLayoutItem +{ + Q_OBJECT + Q_INTERFACES(QGraphicsLayoutItem) +public: + enum ItemType { + TypeRect, + TypeLine, + TypeCircle + }; + + explicit LegendMarkerItem(QLegendMarkerPrivate *marker, QGraphicsObject *parent = nullptr); + ~LegendMarkerItem(); + + void setPen(const QPen &pen); + QPen pen() const; + + void setBrush(const QBrush &brush); + QBrush brush() const; + + void setSeriesPen(const QPen &pen); + void setSeriesBrush(const QBrush &brush); + + void setFont(const QFont &font); + QFont font() const; + + void setLabel(const QString label); + QString label() const; + + void setLabelBrush(const QBrush &brush); + QBrush labelBrush() const; + + void setGeometry(const QRectF &rect); + QRectF boundingRect() const; + QRectF markerRect() const; + + void paint(QPainter *painter, const QStyleOptionGraphicsItem *option,QWidget *widget = nullptr); + QSizeF sizeHint (Qt::SizeHint which, const QSizeF &constraint) const; + + void hoverEnterEvent(QGraphicsSceneHoverEvent *event); + void hoverLeaveEvent(QGraphicsSceneHoverEvent *event); + + QString displayedLabel() const; + void setToolTip(const QString &tooltip); + + QLegend::MarkerShape markerShape() const; + void setMarkerShape(QLegend::MarkerShape shape); + + void updateMarkerShapeAndSize(); + QLegend::MarkerShape effectiveMarkerShape() const; + qreal effectiveMarkerWidth() const; + + ItemType itemType() const { return m_itemType; } + +Q_SIGNALS: + void markerRectChanged(); + +protected: + void setItemBrushAndPen(); + void setItemRect(); + bool useMaxWidth() const; + + QLegendMarkerPrivate *m_marker; // Knows + QRectF m_defaultMarkerRect; + QRectF m_markerRect; + QRectF m_boundingRect; + QGraphicsTextItem *m_textItem; + QGraphicsItem *m_markerItem; + qreal m_margin; + qreal m_space; + QString m_label; + QLegend::MarkerShape m_markerShape; + + QBrush m_labelBrush; + QPen m_pen; + QBrush m_brush; + QPen m_seriesPen; + QBrush m_seriesBrush; + QFont m_font; + bool m_hovering; + + ItemType m_itemType; + + friend class QLegendMarker; + friend class QLegendMarkerPrivate; + friend class LegendLayout; +}; + +QT_CHARTS_END_NAMESPACE + +#endif // LEGENDMARKERITEM_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/legendscroller_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/legendscroller_p.h new file mode 100644 index 0000000..fc57a9d --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/legendscroller_p.h @@ -0,0 +1,67 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + + +#ifndef LEGENDSCROLLER_P_H +#define LEGENDSCROLLER_P_H + +#include +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QT_CHARTS_PRIVATE_EXPORT LegendScroller: public QLegend, public Scroller +{ + Q_OBJECT + +public: + LegendScroller(QChart *chart); + + void setOffset(const QPointF &point); + QPointF offset() const; + + void mousePressEvent(QGraphicsSceneMouseEvent *event); + void mouseMoveEvent(QGraphicsSceneMouseEvent *event); + void mouseReleaseEvent(QGraphicsSceneMouseEvent *event); +}; + +QT_CHARTS_END_NAMESPACE + +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/linearrowitem_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/linearrowitem_p.h new file mode 100644 index 0000000..58a8d12 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/linearrowitem_p.h @@ -0,0 +1,86 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef LINEARROWITEM_P_H +#define LINEARROWITEM_P_H + +#include +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QT_CHARTS_PRIVATE_EXPORT LineArrowItem: public QGraphicsLineItem +{ +public: + explicit LineArrowItem(ChartAxisElement *axis, QGraphicsItem *parent = 0) + : QGraphicsLineItem(parent), + m_axis(axis), + m_axisOrientation(axis->axis()->orientation()) + { + } + +protected: + void mousePressEvent(QGraphicsSceneMouseEvent *event) + { + m_axis->axisSelected(); + QGraphicsLineItem::mousePressEvent(event); + } + + QRectF boundingRect() const + { + return shape().boundingRect(); + } + + QPainterPath shape() const + { + QPainterPath path = QGraphicsLineItem::shape(); + QRectF rect = path.boundingRect(); + path.addRect(rect.adjusted(0, 0, m_axisOrientation != Qt::Horizontal ? 8 : 0, m_axisOrientation != Qt::Vertical ? 8 : 0)); + return path; + } + +private: + ChartAxisElement *m_axis; + Qt::Orientation m_axisOrientation; +}; + +QT_CHARTS_END_NAMESPACE + +#endif /* LINEARROWITEM_P_H */ diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/linechartitem_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/linechartitem_p.h new file mode 100644 index 0000000..fd33516 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/linechartitem_p.h @@ -0,0 +1,107 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef LINECHARTITEM_H +#define LINECHARTITEM_H + +#include +#include +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QLineSeries; +class ChartPresenter; + +class QT_CHARTS_PRIVATE_EXPORT LineChartItem : public XYChart +{ + Q_OBJECT + Q_INTERFACES(QGraphicsItem) +public: + explicit LineChartItem(QLineSeries *series, QGraphicsItem *item = 0); + ~LineChartItem() {} + + //from QGraphicsItem + QRectF boundingRect() const; + void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget); + QPainterPath shape() const; + + QPainterPath path() const { return m_fullPath; } + +public Q_SLOTS: + void handleUpdated(); + +protected: + void updateGeometry(); + void mousePressEvent(QGraphicsSceneMouseEvent *event); + void hoverEnterEvent(QGraphicsSceneHoverEvent *event); + void hoverLeaveEvent(QGraphicsSceneHoverEvent *event); + void mouseReleaseEvent(QGraphicsSceneMouseEvent *event); + void mouseDoubleClickEvent(QGraphicsSceneMouseEvent *event); + void suppressPoints() { m_pointsVisible = false; } + void forceChartType(QChart::ChartType chartType) { m_chartType = chartType; } + +private: + QLineSeries *m_series; + QPainterPath m_linePath; + QPainterPath m_linePathPolarRight; + QPainterPath m_linePathPolarLeft; + QPainterPath m_fullPath; + QPainterPath m_shapePath; + + QVector m_linePoints; + QRectF m_rect; + QPen m_linePen; + bool m_pointsVisible; + QChart::ChartType m_chartType; + + bool m_pointLabelsVisible; + QString m_pointLabelsFormat; + QFont m_pointLabelsFont; + QColor m_pointLabelsColor; + bool m_pointLabelsClipping; + + QPointF m_lastMousePos; + bool m_mousePressed; +}; + +QT_CHARTS_END_NAMESPACE + +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/logxlogydomain_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/logxlogydomain_p.h new file mode 100644 index 0000000..e30dd8d --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/logxlogydomain_p.h @@ -0,0 +1,89 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef LOGXLOGYDOMAIN_H +#define LOGXLOGYDOMAIN_H +#include +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QT_CHARTS_PRIVATE_EXPORT LogXLogYDomain: public AbstractDomain +{ + Q_OBJECT +public: + explicit LogXLogYDomain(QObject *object = 0); + virtual ~LogXLogYDomain(); + + DomainType type(){ return AbstractDomain::LogXLogYDomain;} + + void setRange(qreal minX, qreal maxX, qreal minY, qreal maxY); + + friend bool Q_AUTOTEST_EXPORT operator== (const LogXLogYDomain &domain1, const LogXLogYDomain &domain2); + friend bool Q_AUTOTEST_EXPORT operator!= (const LogXLogYDomain &domain1, const LogXLogYDomain &domain2); + friend QDebug Q_AUTOTEST_EXPORT operator<<(QDebug dbg, const LogXLogYDomain &domain); + + void zoomIn(const QRectF &rect); + void zoomOut(const QRectF &rect); + void move(qreal dx, qreal dy); + + QPointF calculateGeometryPoint(const QPointF &point, bool &ok) const; + QPointF calculateDomainPoint(const QPointF &point) const; + QVector calculateGeometryPoints(const QVector &vector) const; + + bool attachAxis(QAbstractAxis *axis); + bool detachAxis(QAbstractAxis *axis); + +public Q_SLOTS: + void handleVerticalAxisBaseChanged(qreal baseY); + void handleHorizontalAxisBaseChanged(qreal baseX); + +private: + qreal m_logLeftX; + qreal m_logRightX; + qreal m_logBaseX; + qreal m_logLeftY; + qreal m_logRightY; + qreal m_logBaseY; +}; + +QT_CHARTS_END_NAMESPACE + +#endif // LOGXLOGYDOMAIN_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/logxlogypolardomain_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/logxlogypolardomain_p.h new file mode 100644 index 0000000..f25e6e0 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/logxlogypolardomain_p.h @@ -0,0 +1,91 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef LOGXLOGYPOLARDOMAIN_H +#define LOGXLOGYPOLARDOMAIN_H +#include +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QT_CHARTS_PRIVATE_EXPORT LogXLogYPolarDomain: public PolarDomain +{ + Q_OBJECT +public: + explicit LogXLogYPolarDomain(QObject *object = 0); + virtual ~LogXLogYPolarDomain(); + + DomainType type() { return AbstractDomain::LogXLogYPolarDomain; } + + void setRange(qreal minX, qreal maxX, qreal minY, qreal maxY); + + friend bool Q_AUTOTEST_EXPORT operator== (const LogXLogYPolarDomain &domain1, const LogXLogYPolarDomain &domain2); + friend bool Q_AUTOTEST_EXPORT operator!= (const LogXLogYPolarDomain &domain1, const LogXLogYPolarDomain &domain2); + friend QDebug Q_AUTOTEST_EXPORT operator<<(QDebug dbg, const LogXLogYPolarDomain &domain); + + void zoomIn(const QRectF &rect); + void zoomOut(const QRectF &rect); + void move(qreal dx, qreal dy); + + QPointF calculateDomainPoint(const QPointF &point) const; + + bool attachAxis(QAbstractAxis *axis); + bool detachAxis(QAbstractAxis *axis); + +public Q_SLOTS: + void handleVerticalAxisBaseChanged(qreal baseY); + void handleHorizontalAxisBaseChanged(qreal baseX); + +protected: + qreal toAngularCoordinate(qreal value, bool &ok) const; + qreal toRadialCoordinate(qreal value, bool &ok) const; + +private: + qreal m_logLeftX; + qreal m_logRightX; + qreal m_logBaseX; + qreal m_logInnerY; + qreal m_logOuterY; + qreal m_logBaseY; +}; + +QT_CHARTS_END_NAMESPACE + +#endif // LOGXLOGYPOLARDOMAIN_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/logxydomain_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/logxydomain_p.h new file mode 100644 index 0000000..858a6d2 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/logxydomain_p.h @@ -0,0 +1,85 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef LOGXYDOMAIN_H +#define LOGXYDOMAIN_H +#include +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QT_CHARTS_PRIVATE_EXPORT LogXYDomain: public AbstractDomain +{ + Q_OBJECT +public: + explicit LogXYDomain(QObject *object = 0); + virtual ~LogXYDomain(); + + DomainType type(){ return AbstractDomain::LogXYDomain;} + + void setRange(qreal minX, qreal maxX, qreal minY, qreal maxY); + + friend bool Q_AUTOTEST_EXPORT operator== (const LogXYDomain &domain1, const LogXYDomain &domain2); + friend bool Q_AUTOTEST_EXPORT operator!= (const LogXYDomain &domain1, const LogXYDomain &domain2); + friend QDebug Q_AUTOTEST_EXPORT operator<<(QDebug dbg, const LogXYDomain &domain); + + void zoomIn(const QRectF &rect); + void zoomOut(const QRectF &rect); + void move(qreal dx, qreal dy); + + QPointF calculateGeometryPoint(const QPointF &point, bool &ok) const; + QPointF calculateDomainPoint(const QPointF &point) const; + QVector calculateGeometryPoints(const QVector &vector) const; + + bool attachAxis(QAbstractAxis *axis); + bool detachAxis(QAbstractAxis *axis); + +public Q_SLOTS: + void handleHorizontalAxisBaseChanged(qreal baseX); + +private: + qreal m_logLeftX; + qreal m_logRightX; + qreal m_logBaseX; +}; + +QT_CHARTS_END_NAMESPACE + +#endif // LOGXYDOMAIN_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/logxypolardomain_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/logxypolardomain_p.h new file mode 100644 index 0000000..6057be1 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/logxypolardomain_p.h @@ -0,0 +1,87 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef LOGXYPOLARDOMAIN_H +#define LOGXYPOLARDOMAIN_H +#include +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QT_CHARTS_PRIVATE_EXPORT LogXYPolarDomain: public PolarDomain +{ + Q_OBJECT +public: + explicit LogXYPolarDomain(QObject *object = 0); + virtual ~LogXYPolarDomain(); + + DomainType type() { return AbstractDomain::LogXYPolarDomain; } + + void setRange(qreal minX, qreal maxX, qreal minY, qreal maxY); + + friend bool Q_AUTOTEST_EXPORT operator== (const LogXYPolarDomain &domain1, const LogXYPolarDomain &domain2); + friend bool Q_AUTOTEST_EXPORT operator!= (const LogXYPolarDomain &domain1, const LogXYPolarDomain &domain2); + friend QDebug Q_AUTOTEST_EXPORT operator<<(QDebug dbg, const LogXYPolarDomain &domain); + + void zoomIn(const QRectF &rect); + void zoomOut(const QRectF &rect); + void move(qreal dx, qreal dy); + + QPointF calculateDomainPoint(const QPointF &point) const; + + bool attachAxis(QAbstractAxis *axis); + bool detachAxis(QAbstractAxis *axis); + +public Q_SLOTS: + void handleHorizontalAxisBaseChanged(qreal baseX); + +protected: + qreal toAngularCoordinate(qreal value, bool &ok) const; + qreal toRadialCoordinate(qreal value, bool &ok) const; + +private: + qreal m_logLeftX; + qreal m_logRightX; + qreal m_logBaseX; +}; + +QT_CHARTS_END_NAMESPACE + +#endif // LOGXYPOLARDOMAIN_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/percentbarchartitem_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/percentbarchartitem_p.h new file mode 100644 index 0000000..a922f62 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/percentbarchartitem_p.h @@ -0,0 +1,72 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + + +#ifndef PERCENTBARCHARTITEM_H +#define PERCENTBARCHARTITEM_H + +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QAbstractBarSeries; + +class QT_CHARTS_PRIVATE_EXPORT PercentBarChartItem : public AbstractBarChartItem +{ + Q_OBJECT +public: + PercentBarChartItem(QAbstractBarSeries *series, QGraphicsItem* item = 0); + QString generateLabelText(int set, int category, qreal value); + +private Q_SLOTS: + void handleLabelsPositionChanged(); + void positionLabels(); + +private: + virtual QVector calculateLayout(); + void initializeLayout(int set, int category, int layoutIndex, bool resetAnimation); + void markLabelsDirty(QBarSet *barset, int index, int count); + QPointF topLeftPoint(int category, qreal barWidth, qreal value); + QPointF bottomRightPoint(int category, qreal barWidth, qreal value); +}; + +QT_CHARTS_END_NAMESPACE + +#endif // PERCENTBARCHARTITEM_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/pieanimation_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/pieanimation_p.h new file mode 100644 index 0000000..de3c5eb --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/pieanimation_p.h @@ -0,0 +1,74 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef PIEANIMATION_P_H +#define PIEANIMATION_P_H + +#include +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class PieChartItem; + +class QT_CHARTS_PRIVATE_EXPORT PieAnimation : public ChartAnimation +{ + Q_OBJECT + +public: + PieAnimation(PieChartItem *item, int duration, QEasingCurve &curve); + ~PieAnimation(); + ChartAnimation *updateValue(PieSliceItem *sliceItem, const PieSliceData &newValue); + ChartAnimation *addSlice(PieSliceItem *sliceItem, const PieSliceData &endValue, bool startupAnimation); + ChartAnimation *removeSlice(PieSliceItem *sliceItem); + +public: // from QVariantAnimation + void updateCurrentValue(const QVariant &value); + +private: + PieChartItem *m_item; + QHash m_animations; + int m_animationDuration; + QEasingCurve m_animationCurve; +}; + +QT_CHARTS_END_NAMESPACE + +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/piechartitem_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/piechartitem_p.h new file mode 100644 index 0000000..5327631 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/piechartitem_p.h @@ -0,0 +1,108 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef PIECHARTITEM_H +#define PIECHARTITEM_H + +#include +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE +class QGraphicsItem; +QT_END_NAMESPACE + +QT_CHARTS_BEGIN_NAMESPACE +class QPieSlice; +class ChartPresenter; +class PieAnimation; + +class QT_CHARTS_PRIVATE_EXPORT PieChartItem : public ChartItem +{ + Q_OBJECT + +public: + explicit PieChartItem(QPieSeries *series, QGraphicsItem* item = 0); + ~PieChartItem(); + + // from QGraphicsItem + QRectF boundingRect() const { return m_rect; } + void paint(QPainter *, const QStyleOptionGraphicsItem *, QWidget *) {} + +protected: + void hoverEnterEvent(QGraphicsSceneHoverEvent *event); + void hoverLeaveEvent(QGraphicsSceneHoverEvent *event); + void mousePressEvent(QGraphicsSceneMouseEvent *event); + void mouseReleaseEvent(QGraphicsSceneMouseEvent *event); + void mouseDoubleClickEvent(QGraphicsSceneMouseEvent *event); + +public Q_SLOTS: + // from Chart + virtual void handleDomainUpdated(); + + void updateLayout(); + void handleSlicesAdded(QList slices); + void handleSlicesRemoved(QList slices); + void handleSliceChanged(); + void handleSeriesVisibleChanged(); + void handleOpacityChanged(); + + void setAnimation(PieAnimation *animation); + ChartAnimation *animation() const; + + // From ChartItem + void cleanup(); +private: + PieSliceData updateSliceGeometry(QPieSlice *slice); + +private: + QHash m_sliceItems; + QPointer m_series; + QRectF m_rect; + QPointF m_pieCenter; + qreal m_pieRadius; + qreal m_holeSize; + PieAnimation *m_animation; + +}; + +QT_CHARTS_END_NAMESPACE + +#endif // PIECHARTITEM_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/piesliceanimation_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/piesliceanimation_p.h new file mode 100644 index 0000000..de962d5 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/piesliceanimation_p.h @@ -0,0 +1,70 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef PIESLICEANIMATION_P_H +#define PIESLICEANIMATION_P_H + +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class PieChartItem; + +class QT_CHARTS_PRIVATE_EXPORT PieSliceAnimation : public ChartAnimation +{ +public: + PieSliceAnimation(PieSliceItem *sliceItem); + ~PieSliceAnimation(); + void setValue(const PieSliceData &startValue, const PieSliceData &endValue); + void updateValue(const PieSliceData &endValue); + PieSliceData currentSliceValue(); + +protected: + QVariant interpolated(const QVariant &start, const QVariant &end, qreal progress) const; + void updateCurrentValue(const QVariant &value); + +private: + PieSliceItem *m_sliceItem; + PieSliceData m_currentValue; +}; + +QT_CHARTS_END_NAMESPACE + +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/pieslicedata_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/pieslicedata_p.h new file mode 100644 index 0000000..52a03de --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/pieslicedata_p.h @@ -0,0 +1,150 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef PIESLICEDATA_P_H +#define PIESLICEDATA_P_H + +#include +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +template +class Themed : public T +{ +public: + Themed(): m_isThemed(true) {} + + inline T &operator=(const T &other) { return T::operator =(other); } + + inline bool operator!=(const T &other) const { return T::operator !=(other); } + inline bool operator!=(const Themed &other) const + { + if (T::operator !=(other)) + return true; + + if (m_isThemed != other.m_isThemed) + return true; + + return false; + } + + inline void setThemed(bool state) { m_isThemed = state; } + inline bool isThemed() const { return m_isThemed; } + +private: + bool m_isThemed; +}; + +class PieSliceData +{ +public: + PieSliceData() : + m_value(0), + m_isExploded(false), + m_explodeDistanceFactor(0.15), + m_isLabelVisible(false), + m_labelPosition(QPieSlice::LabelOutside), + m_labelArmLengthFactor(0.15), + m_percentage(0), + m_radius(0), + m_startAngle(0), + m_angleSpan(0), + m_holeRadius(0) + { + } + + bool operator!=(const PieSliceData &other) const { + if (!qFuzzyIsNull(m_value - other.m_value)) + return true; + + if (m_slicePen != other.m_slicePen || + m_sliceBrush != other.m_sliceBrush) + return true; + + if (m_isExploded != other.m_isExploded || + !qFuzzyIsNull(m_explodeDistanceFactor - other.m_explodeDistanceFactor)) + return true; + + if (m_isLabelVisible != other.m_isLabelVisible || + m_labelText != other.m_labelText || + m_labelFont != other.m_labelFont || + m_labelPosition != other.m_labelPosition || + !qFuzzyIsNull(m_labelArmLengthFactor - other.m_labelArmLengthFactor) || + m_labelBrush != other.m_labelBrush) + return true; + + if (!qFuzzyIsNull(m_percentage - other.m_percentage) || + m_center != other.m_center || + !qFuzzyIsNull(m_radius - other.m_radius) || + !qFuzzyIsNull(m_startAngle - other.m_startAngle) || + !qFuzzyIsNull(m_angleSpan - other.m_angleSpan)) + return true; + + return false; + } + + qreal m_value; + + Themed m_slicePen; + Themed m_sliceBrush; + + bool m_isExploded; + qreal m_explodeDistanceFactor; + + bool m_isLabelVisible; + QString m_labelText; + Themed m_labelFont; + QPieSlice::LabelPosition m_labelPosition; + qreal m_labelArmLengthFactor; + Themed m_labelBrush; + + qreal m_percentage; + QPointF m_center; + qreal m_radius; + qreal m_startAngle; + qreal m_angleSpan; + + qreal m_holeRadius; +}; + +QT_CHARTS_END_NAMESPACE + +#endif // PIESLICEDATA_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/piesliceitem_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/piesliceitem_p.h new file mode 100644 index 0000000..832ae43 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/piesliceitem_p.h @@ -0,0 +1,108 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef PIESLICEITEM_H +#define PIESLICEITEM_H + +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#define PIESLICE_LABEL_GAP 5 + +QT_CHARTS_BEGIN_NAMESPACE +class PieChartItem; +class PieSliceLabel; +class QPieSlice; + +class QT_CHARTS_PRIVATE_EXPORT PieSliceItem : public QGraphicsObject +{ + Q_OBJECT + +public: + PieSliceItem(QGraphicsItem *parent = 0); + ~PieSliceItem(); + + // from QGraphicsItem + QRectF boundingRect() const; + QPainterPath shape() const; + void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget); + void hoverEnterEvent(QGraphicsSceneHoverEvent *event); + void hoverLeaveEvent(QGraphicsSceneHoverEvent *event); + void mousePressEvent(QGraphicsSceneMouseEvent *event); + void mouseReleaseEvent(QGraphicsSceneMouseEvent *event); + void mouseDoubleClickEvent(QGraphicsSceneMouseEvent *event); + + void setLayout(const PieSliceData &sliceData); + static QPointF sliceCenter(QPointF point, qreal radius, QPieSlice *slice); + +Q_SIGNALS: + void clicked(Qt::MouseButtons buttons); + void hovered(bool state); + void pressed(Qt::MouseButtons buttons); + void released(Qt::MouseButtons buttons); + void doubleClicked(Qt::MouseButtons buttons); + +private: + void updateGeometry(); + QPainterPath slicePath(QPointF center, qreal radius, qreal startAngle, qreal angleSpan, qreal *centerAngle, QPointF *armStart); + QPainterPath labelArmPath(QPointF start, qreal angle, qreal length, qreal textWidth, QPointF *textStart); + +private: + PieSliceData m_data; + QRectF m_boundingRect; + QPainterPath m_slicePath; + QPainterPath m_labelArmPath; + QRectF m_labelTextRect; + bool m_hovered; + QGraphicsTextItem *m_labelItem; + + bool m_mousePressed; + + friend class PieSliceAnimation; +}; + +QT_CHARTS_END_NAMESPACE + +#endif // PIESLICEITEM_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/polarchartaxis_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/polarchartaxis_p.h new file mode 100644 index 0000000..9df07e7 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/polarchartaxis_p.h @@ -0,0 +1,81 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef POLARCHARTAXIS_P_H +#define POLARCHARTAXIS_P_H + +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QT_CHARTS_PRIVATE_EXPORT PolarChartAxis : public ChartAxisElement +{ + Q_OBJECT + Q_INTERFACES(QGraphicsLayoutItem) +public: + PolarChartAxis(QAbstractAxis *axis, QGraphicsItem *item, bool intervalAxis = false); + ~PolarChartAxis(); + + void setGeometry(const QRectF &axis, const QRectF &grid); + virtual qreal preferredAxisRadius(const QSizeF &maxSize) = 0; + int tickWidth() { return 3; } + +public: // from ChartAxisElement + QRectF gridGeometry() const; + bool isEmpty(); + +protected: + void updateLayout(QVector &layout); + +protected: // virtual functions + virtual void createItems(int count) = 0; + virtual void createAxisLabels(const QVector &layout) = 0; + virtual void updateMinorTickItems() = 0; + +public Q_SLOTS: + virtual void handleShadesBrushChanged(const QBrush &brush); + virtual void handleShadesPenChanged(const QPen &pen); + +private: + void deleteItems(int count); +}; + +QT_CHARTS_END_NAMESPACE + +#endif // POLARCHARTAXIS_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/polarchartaxisangular_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/polarchartaxisangular_p.h new file mode 100644 index 0000000..ac517c4 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/polarchartaxisangular_p.h @@ -0,0 +1,80 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef POLARCHARTAXISANGULAR_P_H +#define POLARCHARTAXISANGULAR_P_H + +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QT_CHARTS_PRIVATE_EXPORT PolarChartAxisAngular : public PolarChartAxis +{ + Q_OBJECT + +public: + PolarChartAxisAngular(QAbstractAxis *axis, QGraphicsItem *item, bool intervalAxis = false); + ~PolarChartAxisAngular(); + + Qt::Orientation orientation() const; + QSizeF sizeHint(Qt::SizeHint which, const QSizeF &constraint = QSizeF()) const; + + virtual void updateGeometry(); + virtual void createItems(int count); + virtual void updateMinorTickItems(); + + qreal preferredAxisRadius(const QSizeF &maxSize); + +public Q_SLOTS: + virtual void handleArrowPenChanged(const QPen &pen); + virtual void handleGridPenChanged(const QPen &pen); + virtual void handleMinorArrowPenChanged(const QPen &pen); + virtual void handleMinorGridPenChanged(const QPen &pen); + virtual void handleGridLineColorChanged(const QColor &color); + virtual void handleMinorGridLineColorChanged(const QColor &color); + +private: + QRectF moveLabelToPosition(qreal angularCoordinate, QPointF labelPoint, QRectF labelRect) const; + void updateMinorTickGeometry(); +}; + +QT_CHARTS_END_NAMESPACE + +#endif // POLARCHARTAXISANGULAR_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/polarchartaxisradial_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/polarchartaxisradial_p.h new file mode 100644 index 0000000..73fbcea --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/polarchartaxisradial_p.h @@ -0,0 +1,79 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef POLARCHARTAXISRADIAL_P_H +#define POLARCHARTAXISRADIAL_P_H + +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QT_CHARTS_PRIVATE_EXPORT PolarChartAxisRadial : public PolarChartAxis +{ + Q_OBJECT + +public: + PolarChartAxisRadial(QAbstractAxis *axis, QGraphicsItem *item, bool intervalAxis = false); + ~PolarChartAxisRadial(); + + Qt::Orientation orientation() const; + QSizeF sizeHint(Qt::SizeHint which, const QSizeF &constraint = QSizeF()) const; + + virtual void updateGeometry(); + virtual void createItems(int count); + virtual void updateMinorTickItems(); + + qreal preferredAxisRadius(const QSizeF &maxSize); + +public Q_SLOTS: + virtual void handleArrowPenChanged(const QPen &pen); + virtual void handleGridPenChanged(const QPen &pen); + virtual void handleMinorArrowPenChanged(const QPen &pen); + virtual void handleMinorGridPenChanged(const QPen &pen); + virtual void handleGridLineColorChanged(const QColor &color); + virtual void handleMinorGridLineColorChanged(const QColor &color); + +private: + void updateMinorTickGeometry(); +}; + +QT_CHARTS_END_NAMESPACE + +#endif // POLARCHARTAXISRADIAL_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/polarchartcategoryaxisangular_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/polarchartcategoryaxisangular_p.h new file mode 100644 index 0000000..aef9957 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/polarchartcategoryaxisangular_p.h @@ -0,0 +1,66 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef POLARCHARTCATEGORYAXISANGULAR_P_H +#define POLARCHARTCATEGORYAXISANGULAR_P_H + +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QCategoryAxis; + +class QT_CHARTS_PRIVATE_EXPORT PolarChartCategoryAxisAngular : public PolarChartAxisAngular +{ + Q_OBJECT + +public: + PolarChartCategoryAxisAngular(QCategoryAxis *axis, QGraphicsItem *item); + ~PolarChartCategoryAxisAngular(); + + virtual QVector calculateLayout() const; + virtual void createAxisLabels(const QVector &layout); + +public Q_SLOTS: + void handleCategoriesChanged(); +}; + +QT_CHARTS_END_NAMESPACE + +#endif // POLARCHARTCATEGORYAXISANGULAR_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/polarchartcategoryaxisradial_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/polarchartcategoryaxisradial_p.h new file mode 100644 index 0000000..b5d93e8 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/polarchartcategoryaxisradial_p.h @@ -0,0 +1,66 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef POLARCHARTCATEGORYAXISRADIAL_P_H +#define POLARCHARTCATEGORYAXISRADIAL_P_H + +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QCategoryAxis; + +class QT_CHARTS_PRIVATE_EXPORT PolarChartCategoryAxisRadial : public PolarChartAxisRadial +{ + Q_OBJECT + +public: + PolarChartCategoryAxisRadial(QCategoryAxis *axis, QGraphicsItem *item); + ~PolarChartCategoryAxisRadial(); + + virtual QVector calculateLayout() const; + virtual void createAxisLabels(const QVector &layout); + +public Q_SLOTS: + void handleCategoriesChanged(); +}; + +QT_CHARTS_END_NAMESPACE + +#endif // POLARCHARTCATEGORYAXISRADIAL_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/polarchartdatetimeaxisangular_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/polarchartdatetimeaxisangular_p.h new file mode 100644 index 0000000..c15362c --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/polarchartdatetimeaxisangular_p.h @@ -0,0 +1,66 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef POLARCHARTDATETIMEAXISANGULAR_P_H +#define POLARCHARTDATETIMEAXISANGULAR_P_H + +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QDateTimeAxis; + +class QT_CHARTS_PRIVATE_EXPORT PolarChartDateTimeAxisAngular : public PolarChartAxisAngular +{ + Q_OBJECT +public: + PolarChartDateTimeAxisAngular(QDateTimeAxis *axis, QGraphicsItem *item); + ~PolarChartDateTimeAxisAngular(); + + virtual QVector calculateLayout() const; + virtual void createAxisLabels(const QVector &layout); + +private Q_SLOTS: + void handleTickCountChanged(int tick); + void handleFormatChanged(const QString &format); +}; + +QT_CHARTS_END_NAMESPACE + +#endif // POLARCHARTDATETIMEAXISANGULAR_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/polarchartdatetimeaxisradial_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/polarchartdatetimeaxisradial_p.h new file mode 100644 index 0000000..4d22278 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/polarchartdatetimeaxisradial_p.h @@ -0,0 +1,66 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef POLARCHARTDATETIMEAXISRADIAL_P_H +#define POLARCHARTDATETIMEAXISRADIAL_P_H + +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QDateTimeAxis; + +class QT_CHARTS_PRIVATE_EXPORT PolarChartDateTimeAxisRadial : public PolarChartAxisRadial +{ + Q_OBJECT +public: + PolarChartDateTimeAxisRadial(QDateTimeAxis *axis, QGraphicsItem *item); + ~PolarChartDateTimeAxisRadial(); + + virtual QVector calculateLayout() const; + virtual void createAxisLabels(const QVector &layout); + +private Q_SLOTS: + void handleTickCountChanged(int tick); + void handleFormatChanged(const QString &format); +}; + +QT_CHARTS_END_NAMESPACE + +#endif // POLARCHARTDATETIMEAXISRADIAL_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/polarchartlayout_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/polarchartlayout_p.h new file mode 100644 index 0000000..18c1be3 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/polarchartlayout_p.h @@ -0,0 +1,61 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef POLARCHARTLAYOUT_H +#define POLARCHARTLAYOUT_H + +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QT_CHARTS_PRIVATE_EXPORT PolarChartLayout : public AbstractChartLayout +{ +public: + PolarChartLayout(ChartPresenter *presenter); + virtual ~PolarChartLayout(); + + // from AbstractChartLayout + QRectF calculateAxisMinimum(const QRectF &minimum, const QList &axes) const; + QRectF calculateAxisGeometry(const QRectF &geometry, const QList &axes, + bool update = true) const; +}; + +QT_CHARTS_END_NAMESPACE + +#endif // POLARCHARTLAYOUT_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/polarchartlogvalueaxisangular_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/polarchartlogvalueaxisangular_p.h new file mode 100644 index 0000000..6c95597 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/polarchartlogvalueaxisangular_p.h @@ -0,0 +1,67 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef POLARCHARTLOGVALUEAXISANGULAR_P_H +#define POLARCHARTLOGVALUEAXISANGULAR_P_H + +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QLogValueAxis; + +class QT_CHARTS_PRIVATE_EXPORT PolarChartLogValueAxisAngular : public PolarChartAxisAngular +{ + Q_OBJECT +public: + PolarChartLogValueAxisAngular(QLogValueAxis *axis, QGraphicsItem *item); + ~PolarChartLogValueAxisAngular(); + +protected: + virtual QVector calculateLayout() const; + virtual void createAxisLabels(const QVector &layout); + +private Q_SLOTS: + void handleBaseChanged(qreal base); + void handleLabelFormatChanged(const QString &format); +}; + +QT_CHARTS_END_NAMESPACE + +#endif // POLARCHARTLOGVALUEAXISANGULAR_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/polarchartlogvalueaxisradial_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/polarchartlogvalueaxisradial_p.h new file mode 100644 index 0000000..17f8a98 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/polarchartlogvalueaxisradial_p.h @@ -0,0 +1,67 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef POLARCHARTLOGVALUEAXISRADIAL_P_H +#define POLARCHARTLOGVALUEAXISRADIAL_P_H + +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QLogValueAxis; + +class QT_CHARTS_PRIVATE_EXPORT PolarChartLogValueAxisRadial : public PolarChartAxisRadial +{ + Q_OBJECT +public: + PolarChartLogValueAxisRadial(QLogValueAxis *axis, QGraphicsItem *item); + ~PolarChartLogValueAxisRadial(); + +protected: + virtual QVector calculateLayout() const; + virtual void createAxisLabels(const QVector &layout); + +private Q_SLOTS: + void handleBaseChanged(qreal base); + void handleLabelFormatChanged(const QString &format); +}; + +QT_CHARTS_END_NAMESPACE + +#endif // POLARCHARTLOGVALUEAXISRADIAL_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/polarchartvalueaxisangular_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/polarchartvalueaxisangular_p.h new file mode 100644 index 0000000..8a39f51 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/polarchartvalueaxisangular_p.h @@ -0,0 +1,68 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef POLARCHARTVALUEAXISANGULAR_P_H +#define POLARCHARTVALUEAXISANGULAR_P_H + +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QValueAxis; + +class QT_CHARTS_PRIVATE_EXPORT PolarChartValueAxisAngular : public PolarChartAxisAngular +{ + Q_OBJECT +public: + PolarChartValueAxisAngular(QValueAxis *axis, QGraphicsItem *item); + ~PolarChartValueAxisAngular(); + + virtual QVector calculateLayout() const; + virtual void createAxisLabels(const QVector &layout); + +private Q_SLOTS: + void handleTickCountChanged(int tick); + void handleMinorTickCountChanged(int tick); + void handleLabelFormatChanged(const QString &format); +}; + +QT_CHARTS_END_NAMESPACE + +#endif // POLARCHARTVALUEAXISANGULAR_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/polarchartvalueaxisradial_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/polarchartvalueaxisradial_p.h new file mode 100644 index 0000000..8c4d410 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/polarchartvalueaxisradial_p.h @@ -0,0 +1,67 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef POLARCHARTVALUEAXISRADIAL_P_H +#define POLARCHARTVALUEAXISRADIAL_P_H + +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QValueAxis; + +class QT_CHARTS_PRIVATE_EXPORT PolarChartValueAxisRadial : public PolarChartAxisRadial +{ + Q_OBJECT +public: + PolarChartValueAxisRadial(QValueAxis *axis, QGraphicsItem *item); + ~PolarChartValueAxisRadial(); + + virtual QVector calculateLayout() const; + virtual void createAxisLabels(const QVector &layout); + +private Q_SLOTS: + void handleTickCountChanged(int tick); + void handleMinorTickCountChanged(int tick); + void handleLabelFormatChanged(const QString &format); +}; + +QT_CHARTS_END_NAMESPACE + +#endif // POLARCHARTVALUEAXISRADIAL_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/polardomain_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/polardomain_p.h new file mode 100644 index 0000000..14dc423 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/polardomain_p.h @@ -0,0 +1,72 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef POLARDOMAIN_H +#define POLARDOMAIN_H +#include +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QT_CHARTS_PRIVATE_EXPORT PolarDomain: public AbstractDomain +{ + Q_OBJECT +public: + explicit PolarDomain(QObject *object = 0); + virtual ~PolarDomain(); + + void setSize(const QSizeF &size); + + QPointF calculateGeometryPoint(const QPointF &point, bool &ok) const; + QVector calculateGeometryPoints(const QVector &vector) const; + + virtual qreal toAngularCoordinate(qreal value, bool &ok) const = 0; + virtual qreal toRadialCoordinate(qreal value, bool &ok) const = 0; + +protected: + QPointF polarCoordinateToPoint(qreal angularCoordinate, qreal radialCoordinate) const; + + QPointF m_center; + qreal m_radius; +}; + +QT_CHARTS_END_NAMESPACE + +#endif // POLARDOMAIN_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qabstractaxis_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qabstractaxis_p.h new file mode 100644 index 0000000..3a635d9 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qabstractaxis_p.h @@ -0,0 +1,145 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef QABSTRACTAXIS_P_H +#define QABSTRACTAXIS_P_H + +#include +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE +class QGraphicsItem; +QT_END_NAMESPACE + +QT_CHARTS_BEGIN_NAMESPACE + +class ChartPresenter; +class AbstractDomain; +class QChart; +class QAbstractSeries; +class ChartTheme; +class ChartElement; + +class QT_CHARTS_PRIVATE_EXPORT QAbstractAxisPrivate : public QObject +{ + Q_OBJECT +public: + QAbstractAxisPrivate(QAbstractAxis *q); + ~QAbstractAxisPrivate(); + +public: + Qt::Alignment alignment() const { return m_alignment; } + Qt::Orientation orientation() const { return m_orientation; } + void setAlignment( Qt::Alignment alignment); + + virtual void initializeDomain(AbstractDomain *domain) = 0; + virtual void initializeGraphics(QGraphicsItem *parent) = 0; + virtual void initializeTheme(ChartTheme* theme, bool forced = false); + virtual void initializeAnimations(QChart::AnimationOptions options, int duration, + QEasingCurve &curve); + + //interface for manipulating range form base class + virtual void setMin(const QVariant &min) = 0; + virtual void setMax(const QVariant &max) = 0; + virtual void setRange(const QVariant &min, const QVariant &max) = 0; + + //interface manipulating range form domain + virtual void setRange(qreal min, qreal max) = 0; + virtual qreal min() = 0; + virtual qreal max() = 0; + + ChartAxisElement *axisItem() { return m_item.data(); } + +public Q_SLOTS: + void handleRangeChanged(qreal min, qreal max); + +Q_SIGNALS: + void rangeChanged(qreal min, qreal max); + +protected: + QAbstractAxis *q_ptr; + QChart *m_chart; + QScopedPointer m_item; + +private: + QList m_series; + + Qt::Alignment m_alignment; + Qt::Orientation m_orientation; + + bool m_visible; + + bool m_arrowVisible; + QPen m_axisPen; + QBrush m_axisBrush; + + bool m_gridLineVisible; + QPen m_gridLinePen; + bool m_minorGridLineVisible; + QPen m_minorGridLinePen; + + bool m_labelsVisible; + QBrush m_labelsBrush; + QFont m_labelsFont; + int m_labelsAngle; + + bool m_titleVisible; + QBrush m_titleBrush; + QFont m_titleFont; + QString m_title; + + bool m_shadesVisible; + QPen m_shadesPen; + QBrush m_shadesBrush; + qreal m_shadesOpacity; + + bool m_dirty; + + bool m_reverse; + + friend class QAbstractAxis; + friend class ChartDataSet; + friend class ChartPresenter; +}; + +QT_CHARTS_END_NAMESPACE + +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qabstractbarseries_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qabstractbarseries_p.h new file mode 100644 index 0000000..99fadee --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qabstractbarseries_p.h @@ -0,0 +1,149 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef QABSTRACTBARSERIES_P_H +#define QABSTRACTBARSERIES_P_H + +#include +#include +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QBarModelMapper; +class QBarCategoryAxis; +class QLegendMarker; + +class QT_CHARTS_PRIVATE_EXPORT QAbstractBarSeriesPrivate : public QAbstractSeriesPrivate +{ + Q_OBJECT +public: + QAbstractBarSeriesPrivate(QAbstractBarSeries *parent); + int categoryCount() const; + + void setBarWidth(qreal width); + qreal barWidth() const; + + void setVisible(bool visible); + void setLabelsVisible(bool visible); + + void initializeDomain(); + void initializeAxes(); + void initializeAnimations(QChart::AnimationOptions options, int duration, QEasingCurve &curve); + void initializeTheme(int index, ChartTheme* theme, bool forced = false); + + QList createLegendMarkers(QLegend *legend); + + virtual QAbstractAxis::AxisType defaultAxisType(Qt::Orientation orientation) const; + QAbstractAxis* createDefaultAxis(Qt::Orientation orientation) const; + + bool append(QBarSet *set); + bool remove(QBarSet *set); + bool append(QList sets); + bool remove(QList sets); + bool insert(int index, QBarSet *set); + + QBarSet *barsetAt(int index); + qreal min(); + qreal max(); + qreal valueAt(int set, int category); + qreal percentageAt(int set, int category); + qreal categorySum(int category); + qreal absoluteCategorySum(int category); + qreal maxCategorySum(); + qreal minX(); + qreal maxX(); + qreal categoryTop(int category); + qreal categoryBottom(int category); + qreal top(); + qreal bottom(); + + bool blockBarUpdate(); + + qreal labelsAngle() const; + void setVisualsDirty(bool dirty) { m_visualsDirty = dirty; } + bool visualsDirty() const { return m_visualsDirty; } + void setLabelsDirty(bool dirty) { m_labelsDirty = dirty; } + bool labelsDirty() const { return m_labelsDirty; } + +Q_SIGNALS: + void clicked(int index, QBarSet *barset); + void pressed(int index, QBarSet *barset); + void released(int index, QBarSet *barset); + void doubleClicked(int index, QBarSet *barset); + void updatedBars(); + void updatedLayout(); + void restructuredBars(); + void labelsVisibleChanged(bool visible); + void visibleChanged(); + void setValueChanged(int index, QBarSet *barset); + void setValueAdded(int index, int count, QBarSet *barset); + void setValueRemoved(int index, int count, QBarSet *barset); + +private Q_SLOTS: + void handleSetValueChange(int index); + void handleSetValueAdd(int index, int count); + void handleSetValueRemove(int index, int count); + +private: + void populateCategories(QBarCategoryAxis *axis); + +protected: + QList m_barSets; + qreal m_barWidth; + bool m_labelsVisible; + bool m_visible; + bool m_blockBarUpdate; + QString m_labelsFormat; + QAbstractBarSeries::LabelsPosition m_labelsPosition; + qreal m_labelsAngle; + int m_labelsPrecision; + bool m_visualsDirty; + bool m_labelsDirty; + +private: + Q_DECLARE_PUBLIC(QAbstractBarSeries) + friend class HorizontalBarChartItem; + friend class BarChartItem; +}; + +QT_CHARTS_END_NAMESPACE + +#endif // QABSTRACTBARSERIES_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qabstractseries_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qabstractseries_p.h new file mode 100644 index 0000000..1941b92 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qabstractseries_p.h @@ -0,0 +1,123 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef QABSTRACTSERIES_P_H +#define QABSTRACTSERIES_P_H + +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE +class QGraphicsItem; +QT_END_NAMESPACE + +QT_CHARTS_BEGIN_NAMESPACE + +class ChartPresenter; +class ChartElement; +class LegendMarker; +class QLegend; +class ChartDataSet; +class QAbstractAxis; +class QLegendMarker; +class ChartTheme; +class ChartAnimation; +class ChartItem; +class BoxPlotChartItem; + +class QT_CHARTS_PRIVATE_EXPORT QAbstractSeriesPrivate : public QObject +{ + Q_OBJECT +public: + QAbstractSeriesPrivate(QAbstractSeries *q); + ~QAbstractSeriesPrivate(); + + virtual void initializeDomain() = 0; + virtual void initializeAxes() = 0; + virtual void initializeTheme(int index, ChartTheme* theme, bool forced = false) = 0; + virtual void initializeGraphics(QGraphicsItem* parent) = 0; + virtual void initializeAnimations(QChart::AnimationOptions options, int duration, + QEasingCurve &curve) = 0; + + virtual QList createLegendMarkers(QLegend* legend) = 0; + + virtual QAbstractAxis::AxisType defaultAxisType(Qt::Orientation) const = 0; + virtual QAbstractAxis* createDefaultAxis(Qt::Orientation) const = 0; + + ChartItem* chartItem() { return m_item.data(); } + + virtual void setDomain(AbstractDomain* domain); + AbstractDomain* domain() { return m_domain.data(); } + + virtual void setPresenter(ChartPresenter *presenter); + ChartPresenter *presenter() const; + + QChart* chart() { return m_chart; } + + void setBlockOpenGL(bool enable); + +Q_SIGNALS: + void countChanged(); + +protected: + QAbstractSeries *q_ptr; + QChart *m_chart; + QScopedPointer m_item; + QList m_axes; + +private: + QScopedPointer m_domain; + QString m_name; + bool m_visible; + qreal m_opacity; + ChartPresenter *m_presenter; + bool m_useOpenGL; + bool m_blockOpenGL; + + friend class QAbstractSeries; + friend class ChartDataSet; + friend class ChartPresenter; + friend class QLegendPrivate; + friend class BoxPlotChartItem; +}; + +QT_CHARTS_END_NAMESPACE + +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qarealegendmarker_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qarealegendmarker_p.h new file mode 100644 index 0000000..f44f8e7 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qarealegendmarker_p.h @@ -0,0 +1,74 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef QAREALEGENDMARKER_P_H +#define QAREALEGENDMARKER_P_H + +#include +#include +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QAreaLegendMarker; + +class QT_CHARTS_PRIVATE_EXPORT QAreaLegendMarkerPrivate : public QLegendMarkerPrivate +{ + Q_OBJECT +public: + explicit QAreaLegendMarkerPrivate(QAreaLegendMarker *q, QAreaSeries *series, QLegend *legend); + virtual ~QAreaLegendMarkerPrivate(); + + virtual QAreaSeries* series(); + virtual QObject* relatedObject(); + +public Q_SLOTS: + virtual void updated(); + +private: + QAreaLegendMarker *q_ptr; + QAreaSeries *m_series; + + Q_DECLARE_PUBLIC(QAreaLegendMarker) +}; + +QT_CHARTS_END_NAMESPACE + +#endif // QAREALEGENDMARKER_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qareaseries_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qareaseries_p.h new file mode 100644 index 0000000..a4d4616 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qareaseries_p.h @@ -0,0 +1,90 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef QAREASERIES_P_H +#define QAREASERIES_P_H + +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QAreaSeries; +class QLineSeries; + +class QT_CHARTS_PRIVATE_EXPORT QAreaSeriesPrivate: public QAbstractSeriesPrivate +{ + Q_OBJECT + +public: + QAreaSeriesPrivate(QLineSeries *upperSeries, QLineSeries *lowerSeries, QAreaSeries *q); + + void initializeDomain(); + void initializeAxes(); + void initializeGraphics(QGraphicsItem* parent); + void initializeTheme(int index, ChartTheme* theme, bool forced = false); + void initializeAnimations(QChart::AnimationOptions options, int duration, + QEasingCurve &curve); + + QList createLegendMarkers(QLegend *legend); + + QAbstractAxis::AxisType defaultAxisType(Qt::Orientation orientation) const; + QAbstractAxis* createDefaultAxis(Qt::Orientation) const; + +Q_SIGNALS: + void updated(); + +protected: + QBrush m_brush; + QPen m_pen; + QLineSeries *m_upperSeries; + QLineSeries *m_lowerSeries; + bool m_pointsVisible; + QString m_pointLabelsFormat; + bool m_pointLabelsVisible; + QFont m_pointLabelsFont; + QColor m_pointLabelsColor; + bool m_pointLabelsClipping; + +private: + Q_DECLARE_PUBLIC(QAreaSeries); +}; + +QT_CHARTS_END_NAMESPACE + +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qbarcategoryaxis_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qbarcategoryaxis_p.h new file mode 100644 index 0000000..3101d04 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qbarcategoryaxis_p.h @@ -0,0 +1,91 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef QBARCATEGORYAXIS_P_H +#define QBARCATEGORYAXIS_P_H + +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class AbstractDomain; + +class QT_CHARTS_PRIVATE_EXPORT QBarCategoryAxisPrivate : public QAbstractAxisPrivate +{ + Q_OBJECT + +public: + QBarCategoryAxisPrivate(QBarCategoryAxis *q); + ~QBarCategoryAxisPrivate(); + +public: + void initializeGraphics(QGraphicsItem* parent); + void initializeDomain(AbstractDomain *domain); + void updateCategoryDomain(); + + //interface for manipulating range form base class + void setRange(const QVariant &min, const QVariant &max); + void setMin(const QVariant &min); + void setMax(const QVariant &max); + + //interface manipulating range form domain + qreal min() { return m_min; } + qreal max() { return m_max; } + void setRange(qreal min,qreal max); + +private: + //range handling + void setRange(const QString &minCategory, const QString &maxCategory); + +private: + QStringList m_categories; + QString m_minCategory; + QString m_maxCategory; + qreal m_min; + qreal m_max; + int m_count; + +private: + Q_DECLARE_PUBLIC(QBarCategoryAxis); +}; + +QT_CHARTS_END_NAMESPACE + +#endif // QBARCATEGORYAXIS_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qbarlegendmarker_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qbarlegendmarker_p.h new file mode 100644 index 0000000..7bfabd6 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qbarlegendmarker_p.h @@ -0,0 +1,76 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef QBARLEGENDMARKER_P_H +#define QBARLEGENDMARKER_P_H + +#include +#include +#include +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QBarLegendMarker; + +class QT_CHARTS_PRIVATE_EXPORT QBarLegendMarkerPrivate : public QLegendMarkerPrivate +{ + Q_OBJECT +public: + explicit QBarLegendMarkerPrivate(QBarLegendMarker *q, QAbstractBarSeries *series, QBarSet *barset, QLegend *legend); + virtual ~QBarLegendMarkerPrivate(); + + virtual QAbstractBarSeries* series(); + virtual QObject* relatedObject(); + +public Q_SLOTS: + virtual void updated(); + +private: + QBarLegendMarker *q_ptr; + QAbstractBarSeries *m_series; + QBarSet *m_barset; + + Q_DECLARE_PUBLIC(QBarLegendMarker) +}; + +QT_CHARTS_END_NAMESPACE + +#endif // QBARLEGENDMARKER_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qbarmodelmapper_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qbarmodelmapper_p.h new file mode 100644 index 0000000..cf08d5a --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qbarmodelmapper_p.h @@ -0,0 +1,108 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef QBARMODELMAPPER_P_H +#define QBARMODELMAPPER_P_H + +#include +#include +#include + +QT_BEGIN_NAMESPACE +class QModelIndex; +QT_END_NAMESPACE + +QT_CHARTS_BEGIN_NAMESPACE + +class QBarSet; + +class QT_CHARTS_PRIVATE_EXPORT QBarModelMapperPrivate : public QObject +{ + Q_OBJECT +public: + explicit QBarModelMapperPrivate(QBarModelMapper *q); + +public Q_SLOTS: + // for the model + void modelUpdated(QModelIndex topLeft, QModelIndex bottomRight); + void modelHeaderDataUpdated(Qt::Orientation orientation, int first, int last); + void modelRowsAdded(QModelIndex parent, int start, int end); + void modelRowsRemoved(QModelIndex parent, int start, int end); + void modelColumnsAdded(QModelIndex parent, int start, int end); + void modelColumnsRemoved(QModelIndex parent, int start, int end); + void handleModelDestroyed(); + + // for the series + void barSetsAdded(QList sets); + void barSetsRemoved(QList sets); + void valuesAdded(int index, int count); + void valuesRemoved(int index, int count); + void barLabelChanged(); + void barValueChanged(int index); + void handleSeriesDestroyed(); + + void initializeBarFromModel(); + +private: + QBarSet *barSet(QModelIndex index); + QModelIndex barModelIndex(int barSection, int posInBar); + void insertData(int start, int end); + void removeData(int start, int end); + void blockModelSignals(bool block = true); + void blockSeriesSignals(bool block = true); + +private: + QAbstractBarSeries *m_series; + QList m_barSets; + QAbstractItemModel *m_model; + int m_first; + int m_count; + Qt::Orientation m_orientation; + int m_firstBarSetSection; + int m_lastBarSetSection; + bool m_seriesSignalsBlock; + bool m_modelSignalsBlock; + +private: + QBarModelMapper *q_ptr; + Q_DECLARE_PUBLIC(QBarModelMapper) +}; + +QT_CHARTS_END_NAMESPACE + +#endif // QBARMODELMAPPER_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qbarseries_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qbarseries_p.h new file mode 100644 index 0000000..270ac4b --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qbarseries_p.h @@ -0,0 +1,62 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef QBARSERIES_P_H +#define QBARSERIES_P_H + +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + + +class QT_CHARTS_PRIVATE_EXPORT QBarSeriesPrivate: public QAbstractBarSeriesPrivate +{ +public: + QBarSeriesPrivate(QBarSeries *q); + void initializeGraphics(QGraphicsItem* parent); + void initializeDomain(); + +private: + Q_DECLARE_PUBLIC(QBarSeries) +}; + +QT_CHARTS_END_NAMESPACE + +#endif // QBARSERIES_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qbarset_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qbarset_p.h new file mode 100644 index 0000000..78876b7 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qbarset_p.h @@ -0,0 +1,99 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef QBARSET_P_H +#define QBARSET_P_H + +#include +#include +#include +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QT_CHARTS_PRIVATE_EXPORT QBarSetPrivate : public QObject +{ + Q_OBJECT + +public: + QBarSetPrivate(const QString label, QBarSet *parent); + ~QBarSetPrivate(); + + void append(QPointF value); + void append(QList values); + void append(QList values); + + void insert(const int index, const qreal value); + void insert(const int index, const QPointF value); + int remove(const int index, const int count); + + void replace(const int index, const qreal value); + + qreal pos(const int index); + qreal value(const int index); + + void setVisualsDirty(bool dirty) { m_visualsDirty = dirty; } + bool visualsDirty() const { return m_visualsDirty; } + void setLabelsDirty(bool dirty) { m_labelsDirty = dirty; } + bool labelsDirty() const { return m_labelsDirty; } + +Q_SIGNALS: + void updatedBars(); + void valueChanged(int index); + void valueAdded(int index, int count); + void valueRemoved(int index, int count); + +public: + QBarSet * const q_ptr; + QString m_label; + QList m_values; + QPen m_pen; + QBrush m_brush; + QBrush m_labelBrush; + QFont m_labelFont; + bool m_visualsDirty; + bool m_labelsDirty; + + friend class QBarSet; +}; + +QT_CHARTS_END_NAMESPACE + +#endif // QBARSETPRIVATE_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qboxplotlegendmarker_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qboxplotlegendmarker_p.h new file mode 100644 index 0000000..5d82965 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qboxplotlegendmarker_p.h @@ -0,0 +1,74 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef QBOXPLOTLEGENDMARKER_P_H +#define QBOXPLOTLEGENDMARKER_P_H + +#include +#include +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QBoxPlotLegendMarker; + +class QT_CHARTS_PRIVATE_EXPORT QBoxPlotLegendMarkerPrivate : public QLegendMarkerPrivate +{ + Q_OBJECT +public: + explicit QBoxPlotLegendMarkerPrivate(QBoxPlotLegendMarker *q, QBoxPlotSeries *series, QLegend *legend); + virtual ~QBoxPlotLegendMarkerPrivate(); + + virtual QAbstractSeries *series(); + virtual QObject *relatedObject(); + +public Q_SLOTS: + virtual void updated(); + +private: + QBoxPlotLegendMarker *q_ptr; + QBoxPlotSeries *m_series; + + Q_DECLARE_PUBLIC(QBoxPlotLegendMarker) +}; + +QT_CHARTS_END_NAMESPACE + +#endif // QBOXPLOTLEGENDMARKER_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qboxplotmodelmapper_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qboxplotmodelmapper_p.h new file mode 100644 index 0000000..4e4e2c8 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qboxplotmodelmapper_p.h @@ -0,0 +1,105 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef QBOXPLOTMODELMAPPER_P_H +#define QBOXPLOTMODELMAPPER_P_H + +#include +#include +#include + +QT_BEGIN_NAMESPACE +class QModelIndex; +QT_END_NAMESPACE + +QT_CHARTS_BEGIN_NAMESPACE + +class QT_CHARTS_PRIVATE_EXPORT QBoxSet; + +class QBoxPlotModelMapperPrivate : public QObject +{ + Q_OBJECT +public: + explicit QBoxPlotModelMapperPrivate(QBoxPlotModelMapper *q); + +public Q_SLOTS: + // for the model + void modelUpdated(QModelIndex topLeft, QModelIndex bottomRight); + void modelHeaderDataUpdated(Qt::Orientation orientation, int first, int last); + void modelRowsAdded(QModelIndex parent, int start, int end); + void modelRowsRemoved(QModelIndex parent, int start, int end); + void modelColumnsAdded(QModelIndex parent, int start, int end); + void modelColumnsRemoved(QModelIndex parent, int start, int end); + void handleModelDestroyed(); + + // for the series + void boxSetsAdded(QList sets); + void boxSetsRemoved(QList sets); + void boxValueChanged(int index); + void handleSeriesDestroyed(); + + void initializeBoxFromModel(); + +private: + QBoxSet *boxSet(QModelIndex index); + QModelIndex boxModelIndex(int boxSection, int posInBox); + void insertData(int start, int end); + void removeData(int start, int end); + void blockModelSignals(bool block = true); + void blockSeriesSignals(bool block = true); + +private: + QBoxPlotSeries *m_series; + QList m_boxSets; + QAbstractItemModel *m_model; + int m_first; + int m_count; + Qt::Orientation m_orientation; + int m_firstBoxSetSection; + int m_lastBoxSetSection; + bool m_seriesSignalsBlock; + bool m_modelSignalsBlock; + +private: + QBoxPlotModelMapper *q_ptr; + Q_DECLARE_PUBLIC(QBoxPlotModelMapper) +}; + +QT_CHARTS_END_NAMESPACE + +#endif // QBOXPLOTMODELMAPPER_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qboxplotseries_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qboxplotseries_p.h new file mode 100644 index 0000000..e15ef8b --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qboxplotseries_p.h @@ -0,0 +1,113 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef QBOXPLOTSERIES_P_H +#define QBOXPLOTSERIES_P_H + +#include +#include +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class BoxPlotAnimation; + +class QT_CHARTS_PRIVATE_EXPORT QBoxPlotSeriesPrivate : public QAbstractSeriesPrivate +{ + Q_OBJECT + +public: + QBoxPlotSeriesPrivate(QBoxPlotSeries *q); + ~QBoxPlotSeriesPrivate(); + + void initializeGraphics(QGraphicsItem *parent); + void initializeDomain(); + void initializeAxes(); + void initializeAnimations(QChart::AnimationOptions options, int duration, QEasingCurve &curve); + void initializeTheme(int index, ChartTheme *theme, bool forced = false); + + QList createLegendMarkers(QLegend *legend); + + virtual QAbstractAxis::AxisType defaultAxisType(Qt::Orientation orientation) const; + QAbstractAxis *createDefaultAxis(Qt::Orientation orientation) const; + + bool append(QBoxSet *set); + bool remove(QBoxSet *set); + bool append(QList sets); + bool remove(QList sets); + bool insert(int index, QBoxSet *set); + QBoxSet *boxSetAt(int index); + + qreal max(); + qreal min(); + +private: + void populateCategories(QBarCategoryAxis *axis); + +Q_SIGNALS: + void updated(); + void clicked(int index, QBoxSet *barset); + void pressed(int index, QBoxSet *barset); + void released(int index, QBoxSet *barset); + void doubleClicked(int index, QBoxSet *barset); + void updatedBoxes(); + void updatedLayout(); + void restructuredBoxes(); + +private Q_SLOTS: + void handleSeriesChange(QAbstractSeries *series); + void handleSeriesRemove(QAbstractSeries *series); + +protected: + QList m_boxSets; + QPen m_pen; + QBrush m_brush; + bool m_boxOutlineVisible; + int m_index; + BoxPlotAnimation *m_animation; + qreal m_boxWidth; + +private: + Q_DECLARE_PUBLIC(QBoxPlotSeries) +}; + +QT_CHARTS_END_NAMESPACE + +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qboxset_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qboxset_p.h new file mode 100644 index 0000000..12b765b --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qboxset_p.h @@ -0,0 +1,94 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef QBOXSET_P_H +#define QBOXSET_P_H + +#include +#include +#include +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QBoxPlotSeriesPrivate; + +class QT_CHARTS_PRIVATE_EXPORT QBoxSetPrivate : public QObject +{ + Q_OBJECT + +public: + QBoxSetPrivate(const QString label, QBoxSet *parent); + ~QBoxSetPrivate(); + + bool append(qreal value); + bool append(QList values); + + int remove(const int index, const int count); + void clear(); + + void setValue(const int index, const qreal value); + + qreal value(const int index); + +Q_SIGNALS: + void restructuredBox(); + void updatedBox(); + void updatedLayout(); + +private: + const QBoxSet *q_ptr; + QString m_label; + const int m_valuesCount; + qreal *m_values; + int m_appendCount; + QPen m_pen; + QBrush m_brush; + QBrush m_labelBrush; + QFont m_labelFont; + QBoxPlotSeriesPrivate *m_series; + + friend class QBoxSet; + friend class QBoxPlotSeriesPrivate; +}; + +QT_CHARTS_END_NAMESPACE + +#endif // QBOXSET_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qcandlesticklegendmarker_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qcandlesticklegendmarker_p.h new file mode 100644 index 0000000..b92ea62 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qcandlesticklegendmarker_p.h @@ -0,0 +1,73 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef QCANDLESTICKLEGENDMARKER_P_H +#define QCANDLESTICKLEGENDMARKER_P_H + +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QCandlestickLegendMarker; +class QCandlestickSeries; + +class QT_CHARTS_PRIVATE_EXPORT QCandlestickLegendMarkerPrivate : public QLegendMarkerPrivate +{ + Q_OBJECT +public: + explicit QCandlestickLegendMarkerPrivate(QCandlestickLegendMarker *q, + QCandlestickSeries *series, QLegend *legend); + virtual ~QCandlestickLegendMarkerPrivate(); + + virtual QAbstractSeries *series(); + virtual QObject *relatedObject(); + +public Q_SLOTS: + virtual void updated(); + +private: + QCandlestickLegendMarker *q_ptr; + QCandlestickSeries *m_series; + + Q_DECLARE_PUBLIC(QCandlestickLegendMarker) +}; + +QT_CHARTS_END_NAMESPACE + +#endif // QCANDLESTICKLEGENDMARKER_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qcandlestickmodelmapper_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qcandlestickmodelmapper_p.h new file mode 100644 index 0000000..7c14c9e --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qcandlestickmodelmapper_p.h @@ -0,0 +1,117 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef QCANDLESTICKMODELMAPPER_P_H +#define QCANDLESTICKMODELMAPPER_P_H + +#include +#include +#include + +QT_BEGIN_NAMESPACE +class QModelIndex; +QT_END_NAMESPACE + +QT_CHARTS_BEGIN_NAMESPACE + +class QCandlestickSet; + +class QT_CHARTS_PRIVATE_EXPORT QCandlestickModelMapperPrivate : public QObject +{ + Q_OBJECT + +public: + explicit QCandlestickModelMapperPrivate(QCandlestickModelMapper *q); + +Q_SIGNALS: + void timestampChanged(); + void openChanged(); + void highChanged(); + void lowChanged(); + void closeChanged(); + void firstSetSectionChanged(); + void lastSetSectionChanged(); + +private Q_SLOTS: + void initializeCandlestickFromModel(); + + // for the model + void modelDataUpdated(QModelIndex topLeft, QModelIndex bottomRight); + void modelHeaderDataUpdated(Qt::Orientation orientation, int first, int last); + void modelRowsInserted(QModelIndex parent, int start, int end); + void modelRowsRemoved(QModelIndex parent, int start, int end); + void modelColumnsInserted(QModelIndex parent, int start, int end); + void modelColumnsRemoved(QModelIndex parent, int start, int end); + void modelDestroyed(); + + // for the series + void candlestickSetsAdded(const QList &sets); + void candlestickSetsRemoved(const QList &sets); + void candlestickSetChanged(); + void seriesDestroyed(); + +private: + QCandlestickSet *candlestickSet(QModelIndex index); + QModelIndex candlestickModelIndex(int section, int pos); + void insertData(int start, int end); + void removeData(int start, int end); + void blockModelSignals(bool block = true); + void blockSeriesSignals(bool block = true); + +private: + QAbstractItemModel *m_model; + QCandlestickSeries *m_series; + int m_timestamp; + int m_open; + int m_high; + int m_low; + int m_close; + int m_firstSetSection; + int m_lastSetSection; + QList m_sets; + bool m_modelSignalsBlock; + bool m_seriesSignalsBlock; + +private: + QCandlestickModelMapper *q_ptr; + Q_DECLARE_PUBLIC(QCandlestickModelMapper) +}; + +QT_CHARTS_END_NAMESPACE + +#endif // QCANDLESTICKMODELMAPPER_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qcandlestickseries_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qcandlestickseries_p.h new file mode 100644 index 0000000..e747f8c --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qcandlestickseries_p.h @@ -0,0 +1,114 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef QCANDLESTICKSERIES_P_H +#define QCANDLESTICKSERIES_P_H + +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class CandlestickAnimation; +class QBarCategoryAxis; +class QCandlestickSeries; +class QCandlestickSet; +class QDateTimeAxis; + +class QT_CHARTS_PRIVATE_EXPORT QCandlestickSeriesPrivate : public QAbstractSeriesPrivate +{ + Q_OBJECT + +public: + QCandlestickSeriesPrivate(QCandlestickSeries *q); + ~QCandlestickSeriesPrivate(); + + void initializeDomain(); + void initializeAxes(); + void initializeTheme(int index, ChartTheme* theme, bool forced = false); + void initializeGraphics(QGraphicsItem* parent); + void initializeAnimations(QChart::AnimationOptions options, int duration, QEasingCurve &curve); + + QList createLegendMarkers(QLegend *legend); + + virtual QAbstractAxis::AxisType defaultAxisType(Qt::Orientation orientation) const; + QAbstractAxis *createDefaultAxis(Qt::Orientation orientation) const; + + bool append(const QList &sets); + bool remove(const QList &sets); + bool insert(int index, QCandlestickSet *set); + +Q_SIGNALS: + void clicked(int index, QCandlestickSet *set); + void pressed(int index, QCandlestickSet *set); + void released(int index, QCandlestickSet *set); + void doubleClicked(int index, QCandlestickSet *set); + void updated(); + void updatedLayout(); + void updatedCandlesticks(); + +private Q_SLOTS: + void handleSeriesChange(QAbstractSeries *series); + void handleSeriesRemove(QAbstractSeries *series); + +private: + void populateBarCategories(QBarCategoryAxis *axis); + +protected: + QList m_sets; + qreal m_maximumColumnWidth; + qreal m_minimumColumnWidth; + qreal m_bodyWidth; + bool m_bodyOutlineVisible; + qreal m_capsWidth; + bool m_capsVisible; + QColor m_increasingColor; + QColor m_decreasingColor; + bool m_customIncreasingColor; + bool m_customDecreasingColor; + QBrush m_brush; + QPen m_pen; + CandlestickAnimation *m_animation; + +private: + Q_DECLARE_PUBLIC(QCandlestickSeries) +}; + +QT_CHARTS_END_NAMESPACE + +#endif // QCANDLESTICKSERIES_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qcandlestickset_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qcandlestickset_p.h new file mode 100644 index 0000000..58cc41e --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qcandlestickset_p.h @@ -0,0 +1,84 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef QCANDLESTICKSET_P_H +#define QCANDLESTICKSET_P_H + +#include +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QCandlestickSeriesPrivate; +class QCandlestickSet; + +class QT_CHARTS_PRIVATE_EXPORT QCandlestickSetPrivate : public QObject +{ + Q_OBJECT + +public: + QCandlestickSetPrivate(qreal timestamp, QCandlestickSet *parent); + ~QCandlestickSetPrivate(); + + bool setTimestamp(qreal timestamp); + +Q_SIGNALS: + void updatedLayout(); + void updatedCandlestick(); + +private: + QCandlestickSet *q_ptr; + qreal m_timestamp; + qreal m_open; + qreal m_high; + qreal m_low; + qreal m_close; + QBrush m_brush; + QPen m_pen; + QCandlestickSeriesPrivate *m_series; + +private: + Q_DECLARE_PUBLIC(QCandlestickSet) + friend class QCandlestickSeriesPrivate; +}; + +QT_CHARTS_END_NAMESPACE + +#endif // QCANDLESTICKSET_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qcategoryaxis_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qcategoryaxis_p.h new file mode 100644 index 0000000..1938fcb --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qcategoryaxis_p.h @@ -0,0 +1,73 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef QCATEGORYAXIS_P_H +#define QCATEGORYAXIS_P_H + +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +typedef QPair Range; + +class QT_CHARTS_PRIVATE_EXPORT QCategoryAxisPrivate : public QValueAxisPrivate +{ + Q_OBJECT + +public: + QCategoryAxisPrivate(QCategoryAxis *q); + ~QCategoryAxisPrivate(); + + void initializeGraphics(QGraphicsItem* parent); + int ticksCount() const; + +private: + QMap m_categoriesMap; + QStringList m_categories; + qreal m_categoryMinimum; + QCategoryAxis::AxisLabelsPosition m_labelsPosition; + +private: + Q_DECLARE_PUBLIC(QCategoryAxis) +}; + +QT_CHARTS_END_NAMESPACE + +#endif // QCATEGORYAXIS_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qchart_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qchart_p.h new file mode 100644 index 0000000..7ed518b --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qchart_p.h @@ -0,0 +1,80 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef QCHART_P_H +#define QCHART_P_H + +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class ChartThemeManager; +class ChartPresenter; +class QLegend; +class ChartDataSet; + +class QT_CHARTS_PRIVATE_EXPORT QChartPrivate +{ + +public: + QChartPrivate(QChart *q, QChart::ChartType type); + ~QChartPrivate(); + QChart *q_ptr; + QLegend *m_legend; + ChartDataSet *m_dataset; + ChartPresenter *m_presenter; + ChartThemeManager *m_themeManager; + QChart::ChartType m_type; + + static QPen &defaultPen(); + static QBrush &defaultBrush(); + static QFont &defaultFont(); + + void init(); + void zoomIn(qreal factor); + void zoomOut(qreal factor); + void zoomIn(const QRectF &rect); + void zoomReset(); + bool isZoomed(); + void scroll(qreal dx, qreal dy); +}; + +QT_CHARTS_END_NAMESPACE +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qchartglobal_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qchartglobal_p.h new file mode 100644 index 0000000..59bf62f --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qchartglobal_p.h @@ -0,0 +1,48 @@ +/**************************************************************************** +** +** Copyright (C) 2018 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QCHARTGLOBAL_P_H +#define QCHARTGLOBAL_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include "qchartglobal.h" + +#define QT_CHARTS_PRIVATE_EXPORT QT_CHARTS_EXPORT + +#endif // QCHARTGLOBAL_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qchartview_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qchartview_p.h new file mode 100644 index 0000000..01c6690 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qchartview_p.h @@ -0,0 +1,77 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef QCHARTVIEW_P_H +#define QCHARTVIEW_P_H + +#include +#include + +QT_BEGIN_NAMESPACE +class QGraphicsScene; +QT_END_NAMESPACE + +QT_CHARTS_BEGIN_NAMESPACE + +class QChart; +class ChartPresenter; +class QChartView; + +class QT_CHARTS_PRIVATE_EXPORT QChartViewPrivate +{ +public: + explicit QChartViewPrivate(QChartView *q, QChart *chart = 0); + ~QChartViewPrivate(); + void setChart(QChart *chart); + void resize(); + +protected: + QChartView *q_ptr; + +public: + QGraphicsScene *m_scene; + QChart *m_chart; + QPoint m_rubberBandOrigin; +#ifndef QT_NO_RUBBERBAND + QRubberBand *m_rubberBand; +#endif + QChartView::RubberBands m_rubberBandFlags; +}; + +QT_CHARTS_END_NAMESPACE +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qdatetimeaxis_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qdatetimeaxis_p.h new file mode 100644 index 0000000..42483a0 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qdatetimeaxis_p.h @@ -0,0 +1,83 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef QDATETIMEAXIS_P_H +#define QDATETIMEAXIS_P_H + +#include +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QT_CHARTS_PRIVATE_EXPORT QDateTimeAxisPrivate : public QAbstractAxisPrivate +{ + Q_OBJECT +public: + QDateTimeAxisPrivate(QDateTimeAxis *q); + ~QDateTimeAxisPrivate(); + +public: + void initializeGraphics(QGraphicsItem* parent); + void initializeDomain(AbstractDomain *domain); + + //interface for manipulating range form base class + void setMin(const QVariant &min); + void setMax(const QVariant &max); + void setRange(const QVariant &min, const QVariant &max); + + //interface manipulating range form domain + qreal min() { return m_min; } + qreal max() { return m_max; } + void setRange(qreal min,qreal max); + +protected: + int tickCount() const; + +protected: + qreal m_min; + qreal m_max; + int m_tickCount; + QString m_format; + Q_DECLARE_PUBLIC(QDateTimeAxis) +}; + +QT_CHARTS_END_NAMESPACE + +#endif // QDATETIMEAXIS_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qhorizontalbarseries_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qhorizontalbarseries_p.h new file mode 100644 index 0000000..650bad5 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qhorizontalbarseries_p.h @@ -0,0 +1,60 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef QHORIZONTALBARSERIES_P_H +#define QHORIZONTALBARSERIES_P_H + +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QT_CHARTS_PRIVATE_EXPORT QHorizontalBarSeriesPrivate: public QAbstractBarSeriesPrivate +{ +public: + QHorizontalBarSeriesPrivate(QHorizontalBarSeries *q); + void initializeGraphics(QGraphicsItem* parent); + void initializeDomain(); +private: + Q_DECLARE_PUBLIC(QHorizontalBarSeries) +}; + +QT_CHARTS_END_NAMESPACE + +#endif // QHORIZONTALBARSERIES_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qhorizontalpercentbarseries_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qhorizontalpercentbarseries_p.h new file mode 100644 index 0000000..e17381f --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qhorizontalpercentbarseries_p.h @@ -0,0 +1,60 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef QHORIZONTALPERCENTBARSERIES_P_H +#define QHORIZONTALPERCENTBARSERIES_P_H + +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QT_CHARTS_PRIVATE_EXPORT QHorizontalPercentBarSeriesPrivate: public QAbstractBarSeriesPrivate +{ +public: + QHorizontalPercentBarSeriesPrivate(QHorizontalPercentBarSeries *q); + void initializeGraphics(QGraphicsItem* parent); + void initializeDomain(); +private: + Q_DECLARE_PUBLIC(QHorizontalPercentBarSeries) +}; + +QT_CHARTS_END_NAMESPACE + +#endif // QHORIZONTALPERCENTBARSERIES_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qhorizontalstackedbarseries_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qhorizontalstackedbarseries_p.h new file mode 100644 index 0000000..1c3e014 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qhorizontalstackedbarseries_p.h @@ -0,0 +1,60 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef QHORIZONTALSTACKEDBARSERIES_P_H +#define QHORIZONTALSTACKEDBARSERIES_P_H + +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QT_CHARTS_PRIVATE_EXPORT QHorizontalStackedBarSeriesPrivate: public QAbstractBarSeriesPrivate +{ +public: + QHorizontalStackedBarSeriesPrivate(QHorizontalStackedBarSeries *q); + void initializeGraphics(QGraphicsItem* parent); + void initializeDomain(); +private: + Q_DECLARE_PUBLIC(QHorizontalStackedBarSeries) +}; + +QT_CHARTS_END_NAMESPACE + +#endif // QHORIZONTALSTACKEDBARSERIES_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qlegend_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qlegend_p.h new file mode 100644 index 0000000..3ffff23 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qlegend_p.h @@ -0,0 +1,120 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef QLEGEND_P_H +#define QLEGEND_P_H + +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QChart; +class ChartPresenter; +class QAbstractSeries; +class LegendLayout; +class QLegendMarker; + +class QT_CHARTS_PRIVATE_EXPORT QLegendPrivate : public QObject +{ + Q_OBJECT +public: + QLegendPrivate(ChartPresenter *presenter, QChart *chart, QLegend *q); + ~QLegendPrivate(); + + void setOffset(const QPointF &offset); + QPointF offset() const; + int roundness(qreal size); + + QGraphicsItemGroup* items() { return m_items; } + + QList markers(QAbstractSeries *series = 0); + qreal maxMarkerWidth() const; + + static QObject *relatedObject(const QLegendMarker *l); + +public Q_SLOTS: + void handleSeriesAdded(QAbstractSeries *series); + void handleSeriesRemoved(QAbstractSeries *series); + void handleSeriesVisibleChanged(); + void handleCountChanged(); + +private: + // Internal helpers + void insertMarkerHelper(QLegendMarker *marker); + void addMarkers(QList markers); + void removeMarkerHelper(QLegendMarker *marker); + void removeMarkers(QList markers); + void decorateMarker(QLegendMarker *marker); + void decorateMarkers(QList markers); + void updateToolTips(); + +private: + QLegend *q_ptr; + ChartPresenter *m_presenter; + LegendLayout *m_layout; + QChart *m_chart; + QGraphicsItemGroup *m_items; + Qt::Alignment m_alignment; + QBrush m_brush; + QPen m_pen; + QFont m_font; + QBrush m_labelBrush; + + qreal m_diameter; + bool m_attachedToChart; + bool m_backgroundVisible; + bool m_reverseMarkers; + bool m_showToolTips; + QLegend::MarkerShape m_markerShape; + + QList m_markers; + QList m_series; + + QHash m_markerHash; + + friend class QLegend; + friend class LegendMarkerItem; + friend class LegendLayout; + friend class QLegendMarkerPrivate; + friend class LegendScroller; +}; + +QT_CHARTS_END_NAMESPACE + +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qlegendmarker_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qlegendmarker_p.h new file mode 100644 index 0000000..cd2ebea --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qlegendmarker_p.h @@ -0,0 +1,94 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef QLEGENDMARKERPRIVATE_H +#define QLEGENDMARKERPRIVATE_H + +#include +#include +#include +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QAbstractSeries; +class QLegend; + +class QLegendMarker; +class LegendMarkerItem; + +class QT_CHARTS_PRIVATE_EXPORT QLegendMarkerPrivate : public QObject +{ + Q_OBJECT +public: + explicit QLegendMarkerPrivate(QLegendMarker *q, QLegend *legend); + virtual ~QLegendMarkerPrivate(); + + // Helper for now. (or declare LegendLayout as friend) + LegendMarkerItem* item() const { return m_item; } + + virtual QAbstractSeries* series() = 0; + virtual QObject* relatedObject() = 0; + + void invalidateLegend(); + void invalidateAllItems(); + +public Q_SLOTS: + virtual void updated() = 0; + void handleShapeChange(); + +protected: + LegendMarkerItem *m_item; + QLegend *m_legend; + bool m_customLabel; + bool m_customBrush; + bool m_customPen; + +private: + QLegendMarker *q_ptr; + + friend class QLegendPrivate; + friend class LegendMarkerItem; + Q_DECLARE_PUBLIC(QLegendMarker) +}; + +QT_CHARTS_END_NAMESPACE + +#endif // QLEGENDMARKERPRIVATE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qlineseries_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qlineseries_p.h new file mode 100644 index 0000000..a59d39c --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qlineseries_p.h @@ -0,0 +1,61 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef QLINESERIES_P_H +#define QLINESERIES_P_H + +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + + +class QT_CHARTS_PRIVATE_EXPORT QLineSeriesPrivate: public QXYSeriesPrivate +{ +public: + QLineSeriesPrivate(QLineSeries *q); + void initializeGraphics(QGraphicsItem* parent); + void initializeTheme(int index, ChartTheme* theme, bool forced = false); + +private: + Q_DECLARE_PUBLIC(QLineSeries); +}; + +QT_CHARTS_END_NAMESPACE + +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qlogvalueaxis_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qlogvalueaxis_p.h new file mode 100644 index 0000000..5f73565 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qlogvalueaxis_p.h @@ -0,0 +1,82 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef QLOGVALUEAXIS_P_H +#define QLOGVALUEAXIS_P_H + +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QT_CHARTS_PRIVATE_EXPORT QLogValueAxisPrivate : public QAbstractAxisPrivate +{ + Q_OBJECT + public: + QLogValueAxisPrivate(QLogValueAxis *q); + ~QLogValueAxisPrivate(); + + public: + void initializeGraphics(QGraphicsItem* parent); + void initializeDomain(AbstractDomain *domain); + + qreal min() { return m_min; } + qreal max() { return m_max; } + void setRange(qreal min,qreal max); + + void updateTickCount(); + + protected: + void setMin(const QVariant &min); + void setMax(const QVariant &max); + void setRange(const QVariant &min, const QVariant &max); + + protected: + qreal m_min; + qreal m_max; + qreal m_base; + int m_tickCount; + int m_minorTickCount; + QString m_labelFormat; + Q_DECLARE_PUBLIC(QLogValueAxis) +}; + +QT_CHARTS_END_NAMESPACE + +#endif // QLOGVALUEAXIS_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qpercentbarseries_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qpercentbarseries_p.h new file mode 100644 index 0000000..7a42241 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qpercentbarseries_p.h @@ -0,0 +1,61 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef QPERCENTBARSERIES_P_H +#define QPERCENTBARSERIES_P_H + +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + + +class QT_CHARTS_PRIVATE_EXPORT QPercentBarSeriesPrivate: public QAbstractBarSeriesPrivate +{ +public: + QPercentBarSeriesPrivate(QPercentBarSeries *q); + void initializeDomain(); + void initializeGraphics(QGraphicsItem* parent); +private: + Q_DECLARE_PUBLIC(QPercentBarSeries) +}; + +QT_CHARTS_END_NAMESPACE + +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qpielegendmarker_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qpielegendmarker_p.h new file mode 100644 index 0000000..72bdd7e --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qpielegendmarker_p.h @@ -0,0 +1,78 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef QPIELEGENDMARKER_P_H +#define QPIELEGENDMARKER_P_H + +#include +#include +#include +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QPieLegendMarker; + +class QT_CHARTS_PRIVATE_EXPORT QPieLegendMarkerPrivate : public QLegendMarkerPrivate +{ + Q_OBJECT +public: + explicit QPieLegendMarkerPrivate(QPieLegendMarker *q, QPieSeries *series, QPieSlice *slice, QLegend *legend); + virtual ~QPieLegendMarkerPrivate(); + + // internal + virtual QPieSeries* series(); + virtual QObject* relatedObject(); + +public Q_SLOTS: + virtual void updated(); + +private: + QPieLegendMarker *q_ptr; + + QPieSeries *m_series; + QPieSlice *m_slice; + + Q_DECLARE_PUBLIC(QPieLegendMarker) +}; + +QT_CHARTS_END_NAMESPACE + +#endif // QPIELEGENDMARKER_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qpiemodelmapper_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qpiemodelmapper_p.h new file mode 100644 index 0000000..a590f4b --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qpiemodelmapper_p.h @@ -0,0 +1,111 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef QPIEMODELMAPPER_P_H +#define QPIEMODELMAPPER_P_H + +#include +#include +#include + +QT_BEGIN_NAMESPACE +class QModelIndex; +QT_END_NAMESPACE + +QT_CHARTS_BEGIN_NAMESPACE + +class QPieSlice; + +class QT_CHARTS_PRIVATE_EXPORT QPieModelMapperPrivate : public QObject +{ + Q_OBJECT + +public: + explicit QPieModelMapperPrivate(QPieModelMapper *q); + +public Q_SLOTS: + // for the model + void modelUpdated(QModelIndex topLeft, QModelIndex bottomRight); + void modelRowsAdded(QModelIndex parent, int start, int end); + void modelRowsRemoved(QModelIndex parent, int start, int end); + void modelColumnsAdded(QModelIndex parent, int start, int end); + void modelColumnsRemoved(QModelIndex parent, int start, int end); + void handleModelDestroyed(); + + // for the series + void slicesAdded(QList slices); + void slicesRemoved(QList slices); + void sliceLabelChanged(); + void sliceValueChanged(); + void handleSeriesDestroyed(); + + void initializePieFromModel(); + +private: + QPieSlice *pieSlice(QModelIndex index) const; + bool isLabelIndex(QModelIndex index) const; + bool isValueIndex(QModelIndex index) const; + QModelIndex valueModelIndex(int slicePos); + QModelIndex labelModelIndex(int slicePos); + void insertData(int start, int end); + void removeData(int start, int end); + + void blockModelSignals(bool block = true); + void blockSeriesSignals(bool block = true); + +private: + QPieSeries *m_series; + QList m_slices; + QAbstractItemModel *m_model; + int m_first; + int m_count; + Qt::Orientation m_orientation; + int m_valuesSection; + int m_labelsSection; + bool m_seriesSignalsBlock; + bool m_modelSignalsBlock; + +private: + + QPieModelMapper *q_ptr; + Q_DECLARE_PUBLIC(QPieModelMapper) +}; + +QT_CHARTS_END_NAMESPACE + +#endif // QPIEMODELMAPPER_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qpieseries_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qpieseries_p.h new file mode 100644 index 0000000..887d853 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qpieseries_p.h @@ -0,0 +1,107 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef QPIESERIES_P_H +#define QPIESERIES_P_H + +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE +class QLegendPrivate; + +class QT_CHARTS_PRIVATE_EXPORT QPieSeriesPrivate : public QAbstractSeriesPrivate +{ + Q_OBJECT + +public: + QPieSeriesPrivate(QPieSeries *parent); + ~QPieSeriesPrivate(); + + void initializeDomain(); + void initializeAxes(); + void initializeGraphics(QGraphicsItem* parent); + void initializeAnimations(QtCharts::QChart::AnimationOptions options, int duration, + QEasingCurve &curve); + void initializeTheme(int index, ChartTheme* theme, bool forced = false); + + QList createLegendMarkers(QLegend *legend); + + QAbstractAxis::AxisType defaultAxisType(Qt::Orientation orientation) const; + QAbstractAxis* createDefaultAxis(Qt::Orientation orientation) const; + + void updateDerivativeData(); + void setSizes(qreal innerSize, qreal outerSize); + + static QPieSeriesPrivate *fromSeries(QPieSeries *series); + +Q_SIGNALS: + void calculatedDataChanged(); + void pieSizeChanged(); + void pieStartAngleChanged(); + void pieEndAngleChanged(); + void horizontalPositionChanged(); + void verticalPositionChanged(); + +public Q_SLOTS: + void sliceValueChanged(); + void sliceClicked(); + void sliceHovered(bool state); + void slicePressed(); + void sliceReleased(); + void sliceDoubleClicked(); + +private: + QList m_slices; + qreal m_pieRelativeHorPos; + qreal m_pieRelativeVerPos; + qreal m_pieRelativeSize; + qreal m_pieStartAngle; + qreal m_pieEndAngle; + qreal m_sum; + qreal m_holeRelativeSize; + +public: + friend class QLegendPrivate; + Q_DECLARE_PUBLIC(QPieSeries) +}; + +QT_CHARTS_END_NAMESPACE + +#endif // QPIESERIES_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qpieslice_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qpieslice_p.h new file mode 100644 index 0000000..bb64b3d --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qpieslice_p.h @@ -0,0 +1,90 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef QPIESLICE_P_H +#define QPIESLICE_P_H + +#include +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE +class QPieSeries; + +class QT_CHARTS_PRIVATE_EXPORT QPieSlicePrivate : public QObject +{ + Q_OBJECT + +public: + QPieSlicePrivate(QPieSlice *parent); + ~QPieSlicePrivate(); + + static QPieSlicePrivate *fromSlice(QPieSlice *slice); + + void setPen(const QPen &pen, bool themed); + void setBrush(const QBrush &brush, bool themed); + void setLabelBrush(const QBrush &brush, bool themed); + void setLabelFont(const QFont &font, bool themed); + + void setPercentage(qreal percentage); + void setStartAngle(qreal angle); + void setAngleSpan(qreal span); + +Q_SIGNALS: + void labelPositionChanged(); + void explodedChanged(); + void labelArmLengthFactorChanged(); + void explodeDistanceFactorChanged(); + +private: + friend class QPieSeries; + friend class QPieSeriesPrivate; + friend class ChartThemeManager; + friend class PieChartItem; + + QPieSlice * const q_ptr; + Q_DECLARE_PUBLIC(QPieSlice) + + PieSliceData m_data; + QPieSeries *m_series; +}; + +QT_CHARTS_END_NAMESPACE + +#endif // QPIESLICE_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qscatterseries_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qscatterseries_p.h new file mode 100644 index 0000000..7d9c723 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qscatterseries_p.h @@ -0,0 +1,64 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef QSCATTERSERIES_P_H +#define QSCATTERSERIES_P_H + +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QT_CHARTS_PRIVATE_EXPORT QScatterSeriesPrivate: public QXYSeriesPrivate +{ +public: + QScatterSeriesPrivate(QScatterSeries *q); + void initializeGraphics(QGraphicsItem* parent); + void initializeTheme(int index, ChartTheme* theme, bool forced = false); + void initializeAnimations(QtCharts::QChart::AnimationOptions options, int duration, + QEasingCurve &curve); + +private: + QScatterSeries::MarkerShape m_shape; + qreal m_size; + Q_DECLARE_PUBLIC(QScatterSeries) +}; + +QT_CHARTS_END_NAMESPACE + +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qsplineseries_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qsplineseries_p.h new file mode 100644 index 0000000..dd3fc22 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qsplineseries_p.h @@ -0,0 +1,65 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef QSPLINESERIES_P_H +#define QSPLINESERIES_P_H + +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + + +class QT_CHARTS_PRIVATE_EXPORT QSplineSeriesPrivate: public QLineSeriesPrivate +{ + Q_OBJECT +public: + QSplineSeriesPrivate(QSplineSeries *q); + + void initializeTheme(int index, ChartTheme* theme, bool forced = false); + void initializeGraphics(QGraphicsItem* parent); + void initializeAnimations(QtCharts::QChart::AnimationOptions options, int duration, + QEasingCurve &curve); + +private: + Q_DECLARE_PUBLIC(QSplineSeries) +}; + +QT_CHARTS_END_NAMESPACE + +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qstackedbarseries_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qstackedbarseries_p.h new file mode 100644 index 0000000..94916df --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qstackedbarseries_p.h @@ -0,0 +1,61 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef QSTACKEDBARSERIES_P_H +#define QSTACKEDBARSERIES_P_H + +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + + +class QT_CHARTS_PRIVATE_EXPORT QStackedBarSeriesPrivate: public QAbstractBarSeriesPrivate +{ +public: + QStackedBarSeriesPrivate(QStackedBarSeries *q); + void initializeGraphics(QGraphicsItem* parent); + void initializeDomain(); +private: + Q_DECLARE_PUBLIC(QStackedBarSeries) +}; + +QT_CHARTS_END_NAMESPACE + +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qvalueaxis_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qvalueaxis_p.h new file mode 100644 index 0000000..ad5df81 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qvalueaxis_p.h @@ -0,0 +1,86 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef QVALUEAXIS_P_H +#define QVALUEAXIS_P_H + +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QT_CHARTS_PRIVATE_EXPORT QValueAxisPrivate : public QAbstractAxisPrivate +{ + Q_OBJECT +public: + QValueAxisPrivate(QValueAxis *q); + ~QValueAxisPrivate(); + +public: + void initializeGraphics(QGraphicsItem* parent); + void initializeDomain(AbstractDomain *domain); + + qreal min() { return m_min; } + qreal max() { return m_max; } + void setRange(qreal min,qreal max); + + qreal tickInterval() { return m_tickInterval; } + qreal tickAnchor() { return m_tickAnchor; } + +protected: + void setMin(const QVariant &min); + void setMax(const QVariant &max); + void setRange(const QVariant &min, const QVariant &max); + +private: + qreal m_min; + qreal m_max; + int m_tickCount; + int m_minorTickCount; + QString m_format; + bool m_applying; + qreal m_tickInterval; + qreal m_tickAnchor; + QValueAxis::TickType m_tickType; + Q_DECLARE_PUBLIC(QValueAxis) +}; + +QT_CHARTS_END_NAMESPACE + +#endif // QVALUEAXIS_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qxylegendmarker_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qxylegendmarker_p.h new file mode 100644 index 0000000..995a322 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qxylegendmarker_p.h @@ -0,0 +1,74 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef QXYLEGENDMARKER_P_H +#define QXYLEGENDMARKER_P_H + +#include +#include +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QXYLegendMarker; + +class QT_CHARTS_PRIVATE_EXPORT QXYLegendMarkerPrivate : public QLegendMarkerPrivate +{ + Q_OBJECT +public: + explicit QXYLegendMarkerPrivate(QXYLegendMarker *q, QXYSeries *series, QLegend *legend); + virtual ~QXYLegendMarkerPrivate(); + + virtual QAbstractSeries* series(); + virtual QObject* relatedObject(); + +public Q_SLOTS: + virtual void updated(); + +private: + QXYLegendMarker *q_ptr; + QXYSeries *m_series; + + Q_DECLARE_PUBLIC(QXYLegendMarker) +}; + +QT_CHARTS_END_NAMESPACE + +#endif // QXYLEGENDMARKER_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qxymodelmapper_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qxymodelmapper_p.h new file mode 100644 index 0000000..daa8234 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qxymodelmapper_p.h @@ -0,0 +1,110 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef QXYMODELMAPPER_P_H +#define QXYMODELMAPPER_P_H + +#include +#include +#include + +QT_BEGIN_NAMESPACE +class QModelIndex; +class QAbstractItemModel; +class QPointF; +QT_END_NAMESPACE + +QT_CHARTS_BEGIN_NAMESPACE + +class QXYModelMapper; +class QXYSeries; + +class QT_CHARTS_PRIVATE_EXPORT QXYModelMapperPrivate : public QObject +{ + Q_OBJECT + +public: + QXYModelMapperPrivate(QXYModelMapper *q); + +public Q_SLOTS: + // for the model + void modelUpdated(QModelIndex topLeft, QModelIndex bottomRight); + void modelRowsAdded(QModelIndex parent, int start, int end); + void modelRowsRemoved(QModelIndex parent, int start, int end); + void modelColumnsAdded(QModelIndex parent, int start, int end); + void modelColumnsRemoved(QModelIndex parent, int start, int end); + void handleModelDestroyed(); + + // for the series + void handlePointAdded(int pointPos); + void handlePointRemoved(int pointPos); + void handlePointsRemoved(int pointPos, int count); + void handlePointReplaced(int pointPos); + void handleSeriesDestroyed(); + + void initializeXYFromModel(); + +private: + QModelIndex xModelIndex(int xPos); + QModelIndex yModelIndex(int yPos); + void insertData(int start, int end); + void removeData(int start, int end); + void blockModelSignals(bool block = true); + void blockSeriesSignals(bool block = true); + qreal valueFromModel(QModelIndex index); + void setValueToModel(QModelIndex index, qreal value); + +private: + QXYSeries *m_series; + QAbstractItemModel *m_model; + int m_first; + int m_count; + Qt::Orientation m_orientation; + int m_xSection; + int m_ySection; + bool m_seriesSignalsBlock; + bool m_modelSignalsBlock; + +private: + QXYModelMapper *q_ptr; + Q_DECLARE_PUBLIC(QXYModelMapper) +}; + +QT_CHARTS_END_NAMESPACE + +#endif // QXYMODELMAPPER_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qxyseries_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qxyseries_p.h new file mode 100644 index 0000000..f803c52 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/qxyseries_p.h @@ -0,0 +1,91 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef QXYSERIES_P_H +#define QXYSERIES_P_H + +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QXYSeries; +class QAbstractAxis; + +class QT_CHARTS_PRIVATE_EXPORT QXYSeriesPrivate: public QAbstractSeriesPrivate +{ + Q_OBJECT + +public: + QXYSeriesPrivate(QXYSeries *q); + + void initializeDomain(); + void initializeAxes(); + void initializeAnimations(QtCharts::QChart::AnimationOptions options, int duration, + QEasingCurve &curve); + + QList createLegendMarkers(QLegend* legend); + + QAbstractAxis::AxisType defaultAxisType(Qt::Orientation orientation) const; + QAbstractAxis* createDefaultAxis(Qt::Orientation orientation) const; + + void drawSeriesPointLabels(QPainter *painter, const QVector &points, + const int offset = 0); + +Q_SIGNALS: + void updated(); + +protected: + QVector m_points; + QPen m_pen; + QBrush m_brush; + bool m_pointsVisible; + QString m_pointLabelsFormat; + bool m_pointLabelsVisible; + QFont m_pointLabelsFont; + QColor m_pointLabelsColor; + bool m_pointLabelsClipping; + +private: + Q_DECLARE_PUBLIC(QXYSeries) + friend class QScatterSeries; +}; + +QT_CHARTS_END_NAMESPACE + +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/scatteranimation_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/scatteranimation_p.h new file mode 100644 index 0000000..6df7441 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/scatteranimation_p.h @@ -0,0 +1,61 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef SCATTERANIMATION_P_H +#define SCATTERANIMATION_P_H + +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class ScatterChartItem; + +class QT_CHARTS_PRIVATE_EXPORT ScatterAnimation : public XYAnimation +{ +public: + ScatterAnimation(ScatterChartItem *item, int duration, QEasingCurve &curve); + ~ScatterAnimation(); + +protected: + void updateState(QAbstractAnimation::State newState, QAbstractAnimation::State oldState); +}; + +QT_CHARTS_END_NAMESPACE + +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/scatterchartitem_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/scatterchartitem_p.h new file mode 100644 index 0000000..5bf52af --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/scatterchartitem_p.h @@ -0,0 +1,202 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef SCATTERCHARTITEM_H +#define SCATTERCHARTITEM_H + +#include +#include +#include +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QScatterSeries; + +class QT_CHARTS_PRIVATE_EXPORT ScatterChartItem : public XYChart +{ + Q_OBJECT + Q_INTERFACES(QGraphicsItem) +public: + explicit ScatterChartItem(QScatterSeries *series, QGraphicsItem *item = 0); + +public: + //from QGraphicsItem + QRectF boundingRect() const; + void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget); + + void setPen(const QPen &pen); + void setBrush(const QBrush &brush); + + void markerSelected(QGraphicsItem *item); + void markerHovered(QGraphicsItem *item, bool state); + void markerPressed(QGraphicsItem *item); + void markerReleased(QGraphicsItem *item); + void markerDoubleClicked(QGraphicsItem *item); + + void setMousePressed(bool pressed = true) {m_mousePressed = pressed;} + bool mousePressed() {return m_mousePressed;} + + +public Q_SLOTS: + void handleUpdated(); + +private: + void createPoints(int count); + void deletePoints(int count); + +protected: + void updateGeometry(); + +private: + QScatterSeries *m_series; + QGraphicsItemGroup m_items; + bool m_visible; + int m_shape; + int m_size; + QRectF m_rect; + QMap m_markerMap; + + bool m_pointLabelsVisible; + QString m_pointLabelsFormat; + QFont m_pointLabelsFont; + QColor m_pointLabelsColor; + bool m_pointLabelsClipping; + + bool m_mousePressed; +}; + +class QT_CHARTS_PRIVATE_EXPORT CircleMarker: public QGraphicsEllipseItem +{ + +public: + CircleMarker(qreal x, qreal y, qreal w, qreal h, ScatterChartItem *parent) + : QGraphicsEllipseItem(x, y, w, h, parent), + m_parent(parent) + { + setAcceptHoverEvents(true); + setFlag(QGraphicsItem::ItemIsSelectable); + } + +protected: + void mousePressEvent(QGraphicsSceneMouseEvent *event) + { + QGraphicsEllipseItem::mousePressEvent(event); + m_parent->markerPressed(this); + m_parent->setMousePressed(); + } + void hoverEnterEvent(QGraphicsSceneHoverEvent *event) + { + QGraphicsEllipseItem::hoverEnterEvent(event); + m_parent->markerHovered(this, true); + } + void hoverLeaveEvent(QGraphicsSceneHoverEvent *event) + { + QGraphicsEllipseItem::hoverLeaveEvent(event); + m_parent->markerHovered(this, false); + } + void mouseReleaseEvent(QGraphicsSceneMouseEvent *event) + { + QGraphicsEllipseItem::mouseReleaseEvent(event); + m_parent->markerReleased(this); + if (m_parent->mousePressed()) + m_parent->markerSelected(this); + m_parent->setMousePressed(false); + } + void mouseDoubleClickEvent(QGraphicsSceneMouseEvent *event) + { + QGraphicsEllipseItem::mouseDoubleClickEvent(event); + m_parent->markerDoubleClicked(this); + } + +private: + ScatterChartItem *m_parent; +}; + +class QT_CHARTS_PRIVATE_EXPORT RectangleMarker: public QGraphicsRectItem +{ + +public: + RectangleMarker(qreal x, qreal y, qreal w, qreal h, ScatterChartItem *parent) + : QGraphicsRectItem(x, y, w, h, parent), + m_parent(parent) + { + setAcceptHoverEvents(true); + setFlag(QGraphicsItem::ItemIsSelectable); + } + +protected: + void mousePressEvent(QGraphicsSceneMouseEvent *event) + { + QGraphicsRectItem::mousePressEvent(event); + m_parent->markerPressed(this); + m_parent->setMousePressed(); + } + void hoverEnterEvent(QGraphicsSceneHoverEvent *event) + { + QGraphicsRectItem::hoverEnterEvent(event); + m_parent->markerHovered(this, true); + } + void hoverLeaveEvent(QGraphicsSceneHoverEvent *event) + { + QGraphicsRectItem::hoverLeaveEvent(event); + m_parent->markerHovered(this, false); + } + void mouseReleaseEvent(QGraphicsSceneMouseEvent *event) + { + QGraphicsRectItem::mouseReleaseEvent(event); + m_parent->markerReleased(this); + if (m_parent->mousePressed()) + m_parent->markerSelected(this); + m_parent->setMousePressed(false); + } + void mouseDoubleClickEvent(QGraphicsSceneMouseEvent *event) + { + QGraphicsRectItem::mouseDoubleClickEvent(event); + m_parent->markerDoubleClicked(this); + } + +private: + ScatterChartItem *m_parent; +}; + +QT_CHARTS_END_NAMESPACE + +#endif // SCATTERPRESENTER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/scroller_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/scroller_p.h new file mode 100644 index 0000000..3412a7f --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/scroller_p.h @@ -0,0 +1,122 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef SCROLLER_P_H +#define SCROLLER_P_H + +#include +#include +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE +class QGraphicsSceneMouseEvent; +QT_END_NAMESPACE + +QT_CHARTS_BEGIN_NAMESPACE + +class Scroller; +class QLegend; + +class QT_CHARTS_PRIVATE_EXPORT ScrollTicker : public QObject +{ + Q_OBJECT +public: + explicit ScrollTicker(Scroller *scroller, QObject *parent = 0); + void start(int interval); + void stop(); +protected: + void timerEvent(QTimerEvent *event); + +private: + QBasicTimer m_timer; + Scroller *m_scroller; +}; + +class QT_CHARTS_PRIVATE_EXPORT Scroller +{ +public: + enum State { + Idle, + Pressed, + Move, + Scroll + }; + + Scroller(); + virtual ~Scroller(); + + virtual void setOffset(const QPointF &point) = 0; + virtual QPointF offset() const = 0; + + void move(const QPointF &delta); + void scrollTo(const QPointF &delta); + + void handleMousePressEvent(QGraphicsSceneMouseEvent *event); + void handleMouseMoveEvent(QGraphicsSceneMouseEvent *event); + void handleMouseReleaseEvent(QGraphicsSceneMouseEvent *event); + + void scrollTick(); + +private: + void startTicker(int interval); + void stopTicker(); + +private: + void calculateSpeed(const QPointF &position); + void lowerSpeed(QPointF &speed, qreal maxSpeed = 100); + +private: + ScrollTicker m_ticker; + QTime m_timeStamp; + QPointF m_speed; + QPointF m_fraction; + int m_timeTresholdMin; + int m_timeTresholdMax; + + State m_state; + QPointF m_pressPos; + QPointF m_lastPos; + qreal m_treshold; +}; + +QT_CHARTS_END_NAMESPACE + +#endif /* SCROLLER_P_H */ diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/splineanimation_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/splineanimation_p.h new file mode 100644 index 0000000..11261aa --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/splineanimation_p.h @@ -0,0 +1,73 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef SPLINEANIMATION_P_H +#define SPLINEANIMATION_P_H + +#include +#include +#include + +typedef QPair, QVector > SplineVector; + +QT_CHARTS_BEGIN_NAMESPACE + +class SplineChartItem; + +class QT_CHARTS_PRIVATE_EXPORT SplineAnimation : public XYAnimation +{ +public: + SplineAnimation(SplineChartItem *item, int duration, QEasingCurve &curve); + ~SplineAnimation(); + void setup(QVector &oldPoints, QVector &newPoints, QVector &oldContorlPoints, QVector &newControlPoints, int index = -1); + +protected: + QVariant interpolated(const QVariant &start, const QVariant &end, qreal progress) const; + void updateCurrentValue(const QVariant &value); + void updateState(QAbstractAnimation::State newState, QAbstractAnimation::State oldState); + +private: + SplineVector m_oldSpline; + SplineVector m_newSpline; + SplineChartItem *m_item; + bool m_valid; +}; + +QT_CHARTS_END_NAMESPACE + +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/splinechartitem_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/splinechartitem_p.h new file mode 100644 index 0000000..bc5f566 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/splinechartitem_p.h @@ -0,0 +1,110 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef SPLINECHARTITEM_P_H +#define SPLINECHARTITEM_P_H + +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class SplineAnimation; + +class QT_CHARTS_PRIVATE_EXPORT SplineChartItem : public XYChart +{ + Q_OBJECT + Q_INTERFACES(QGraphicsItem) +public: + SplineChartItem(QSplineSeries *series, QGraphicsItem *item = 0); + + //from QGraphicsItem + QRectF boundingRect() const; + void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget); + QPainterPath shape() const; + + void setControlGeometryPoints(QVector& points); + QVector controlGeometryPoints() const; + + void setAnimation(SplineAnimation *animation); + ChartAnimation *animation() const; + +public Q_SLOTS: + void handleUpdated(); + +protected: + void updateGeometry(); + QVector calculateControlPoints(const QVector &points); + QVector firstControlPoints(const QVector& vector); + void updateChart(QVector &oldPoints, QVector &newPoints, int index); + void mousePressEvent(QGraphicsSceneMouseEvent *event); + void hoverEnterEvent(QGraphicsSceneHoverEvent *event); + void hoverLeaveEvent(QGraphicsSceneHoverEvent *event); + void mouseReleaseEvent(QGraphicsSceneMouseEvent *event); + void mouseDoubleClickEvent(QGraphicsSceneMouseEvent *event); + +private: + QSplineSeries *m_series; + QPainterPath m_path; + QPainterPath m_pathPolarRight; + QPainterPath m_pathPolarLeft; + QPainterPath m_fullPath; + QRectF m_rect; + QPen m_linePen; + QPen m_pointPen; + bool m_pointsVisible; + QVector m_controlPoints; + QVector m_visiblePoints; + SplineAnimation *m_animation; + + bool m_pointLabelsVisible; + QString m_pointLabelsFormat; + QFont m_pointLabelsFont; + QColor m_pointLabelsColor; + bool m_pointLabelsClipping; + + QPointF m_lastMousePos; + bool m_mousePressed; + + friend class SplineAnimation; +}; + +QT_CHARTS_END_NAMESPACE + +#endif // SPLINECHARTITEM_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/stackedbarchartitem_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/stackedbarchartitem_p.h new file mode 100644 index 0000000..58ea726 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/stackedbarchartitem_p.h @@ -0,0 +1,69 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + + +#ifndef STACKEDBARCHARTITEM_H +#define STACKEDBARCHARTITEM_H + +#include +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QT_CHARTS_PRIVATE_EXPORT StackedBarChartItem : public AbstractBarChartItem +{ + Q_OBJECT +public: + StackedBarChartItem(QAbstractBarSeries *series, QGraphicsItem* item =0); + +private Q_SLOTS: + void handleLabelsPositionChanged(); + void positionLabels(); + +private: + virtual QVector calculateLayout(); + void initializeLayout(int set, int category, int layoutIndex, bool resetAnimation); + QPointF topLeftPoint(int category, qreal barWidth, qreal value); + QPointF bottomRightPoint(int category, qreal barWidth, qreal value); +}; + +QT_CHARTS_END_NAMESPACE + +#endif // STACKEDBARCHARTITEM_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/verticalaxis_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/verticalaxis_p.h new file mode 100644 index 0000000..670854c --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/verticalaxis_p.h @@ -0,0 +1,64 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef VERTICALAXIS_P_H +#define VERTICALAXIS_P_H + +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QT_CHARTS_PRIVATE_EXPORT VerticalAxis : public CartesianChartAxis +{ +public: + VerticalAxis(QAbstractAxis *axis, QGraphicsItem *item = nullptr, bool intervalAxis = false); + ~VerticalAxis(); + + QSizeF sizeHint(Qt::SizeHint which, const QSizeF &constraint = QSizeF()) const override; + +protected: + void updateGeometry() override; + +private: + void updateMinorTickGeometry(); +}; + +QT_CHARTS_END_NAMESPACE + +#endif // VERTICALAXIS_P_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/xlogydomain_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/xlogydomain_p.h new file mode 100644 index 0000000..f564f95 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/xlogydomain_p.h @@ -0,0 +1,85 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef XLOGYDOMAIN_H +#define XLOGYDOMAIN_H +#include +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QT_CHARTS_PRIVATE_EXPORT XLogYDomain: public AbstractDomain +{ + Q_OBJECT +public: + explicit XLogYDomain(QObject *object = 0); + virtual ~XLogYDomain(); + + DomainType type(){ return AbstractDomain::XLogYDomain;}; + + void setRange(qreal minX, qreal maxX, qreal minY, qreal maxY); + + friend bool Q_AUTOTEST_EXPORT operator== (const XLogYDomain &domain1, const XLogYDomain &domain2); + friend bool Q_AUTOTEST_EXPORT operator!= (const XLogYDomain &domain1, const XLogYDomain &domain2); + friend QDebug Q_AUTOTEST_EXPORT operator<<(QDebug dbg, const XLogYDomain &domain); + + void zoomIn(const QRectF &rect); + void zoomOut(const QRectF &rect); + void move(qreal dx, qreal dy); + + QPointF calculateGeometryPoint(const QPointF &point, bool &ok) const; + QPointF calculateDomainPoint(const QPointF &point) const; + QVector calculateGeometryPoints(const QVector &vector) const; + + bool attachAxis(QAbstractAxis *axis); + bool detachAxis(QAbstractAxis *axis); + +public Q_SLOTS: + void handleVerticalAxisBaseChanged(qreal baseY); + +private: + qreal m_logLeftY; + qreal m_logRightY; + qreal m_logBaseY; +}; + +QT_CHARTS_END_NAMESPACE + +#endif // XLOGYDOMAIN_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/xlogypolardomain_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/xlogypolardomain_p.h new file mode 100644 index 0000000..e11d691 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/xlogypolardomain_p.h @@ -0,0 +1,87 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef XLOGYPOLARDOMAIN_H +#define XLOGYPOLARDOMAIN_H +#include +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QT_CHARTS_PRIVATE_EXPORT XLogYPolarDomain: public PolarDomain +{ + Q_OBJECT +public: + explicit XLogYPolarDomain(QObject *object = 0); + virtual ~XLogYPolarDomain(); + + DomainType type() { return AbstractDomain::XLogYPolarDomain; } + + void setRange(qreal minX, qreal maxX, qreal minY, qreal maxY); + + friend bool Q_AUTOTEST_EXPORT operator== (const XLogYPolarDomain &domain1, const XLogYPolarDomain &domain2); + friend bool Q_AUTOTEST_EXPORT operator!= (const XLogYPolarDomain &domain1, const XLogYPolarDomain &domain2); + friend QDebug Q_AUTOTEST_EXPORT operator<<(QDebug dbg, const XLogYPolarDomain &domain); + + void zoomIn(const QRectF &rect); + void zoomOut(const QRectF &rect); + void move(qreal dx, qreal dy); + + QPointF calculateDomainPoint(const QPointF &point) const; + + bool attachAxis(QAbstractAxis *axis); + bool detachAxis(QAbstractAxis *axis); + +public Q_SLOTS: + void handleVerticalAxisBaseChanged(qreal baseY); + +protected: + qreal toAngularCoordinate(qreal value, bool &ok) const; + qreal toRadialCoordinate(qreal value, bool &ok) const; + +private: + qreal m_logInnerY; + qreal m_logOuterY; + qreal m_logBaseY; +}; + +QT_CHARTS_END_NAMESPACE + +#endif // XLOGYPOLARDOMAIN_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/xyanimation_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/xyanimation_p.h new file mode 100644 index 0000000..e0f7937 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/xyanimation_p.h @@ -0,0 +1,77 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef XYANIMATION_P_H +#define XYANIMATION_P_H + +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class XYChart; + +class QT_CHARTS_PRIVATE_EXPORT XYAnimation : public ChartAnimation +{ +protected: + enum Animation { AddPointAnimation, RemovePointAnimation, ReplacePointAnimation, NewAnimation }; +public: + XYAnimation(XYChart *item, int duration, QEasingCurve &curve); + ~XYAnimation(); + void setup(const QVector &oldPoints, const QVector &newPoints, int index = -1); + Animation animationType() const { return m_type; }; + +protected: + QVariant interpolated(const QVariant &start, const QVariant &end, qreal progress) const; + void updateCurrentValue(const QVariant &value); + void updateState(QAbstractAnimation::State newState, QAbstractAnimation::State oldState); + XYChart *chartItem() { return m_item; } +protected: + Animation m_type; + bool m_dirty; + int m_index; +private: + XYChart *m_item; + QVector m_oldPoints; + QVector m_newPoints; +}; + +QT_CHARTS_END_NAMESPACE + +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/xychart_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/xychart_p.h new file mode 100644 index 0000000..64c51f3 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/xychart_p.h @@ -0,0 +1,108 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef XYCHART_H +#define XYCHART_H + +#include +#include +#include +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class ChartPresenter; +class QXYSeries; + +class QT_CHARTS_PRIVATE_EXPORT XYChart : public ChartItem +{ + Q_OBJECT +public: + explicit XYChart(QXYSeries *series,QGraphicsItem *item = 0); + ~XYChart() {} + + void setGeometryPoints(const QVector &points); + QVector geometryPoints() const { return m_points; } + + void setAnimation(XYAnimation *animation); + ChartAnimation *animation() const { return m_animation; } + virtual void updateGeometry() = 0; + + bool isDirty() const { return m_dirty; } + void setDirty(bool dirty); + + void getSeriesRanges(qreal &minX, qreal &maxX, qreal &minY, qreal &maxY); + QVector offGridStatusVector(); + +public Q_SLOTS: + void handlePointAdded(int index); + void handlePointRemoved(int index); + void handlePointsRemoved(int index, int count); + void handlePointReplaced(int index); + void handlePointsReplaced(); + void handleDomainUpdated(); + +Q_SIGNALS: + void clicked(const QPointF &point); + void hovered(const QPointF &point, bool state); + void pressed(const QPointF &point); + void released(const QPointF &point); + void doubleClicked(const QPointF &point); + +protected: + virtual void updateChart(QVector &oldPoints, QVector &newPoints, int index = -1); + virtual void updateGlChart(); + virtual void refreshGlChart(); + +private: + inline bool isEmpty(); + +protected: + QXYSeries *m_series; + QVector m_points; + XYAnimation *m_animation; + bool m_dirty; + + friend class AreaChartItem; +}; + +QT_CHARTS_END_NAMESPACE + +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/xydomain_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/xydomain_p.h new file mode 100644 index 0000000..97c8998 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/xydomain_p.h @@ -0,0 +1,74 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef XYDOMAIN_H +#define XYDOMAIN_H +#include +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QT_CHARTS_PRIVATE_EXPORT XYDomain: public AbstractDomain +{ + Q_OBJECT +public: + explicit XYDomain(QObject *object = 0); + virtual ~XYDomain(); + + DomainType type(){ return AbstractDomain::XYDomain;} + + void setRange(qreal minX, qreal maxX, qreal minY, qreal maxY); + + friend bool Q_AUTOTEST_EXPORT operator== (const XYDomain &Domain1, const XYDomain &Domain2); + friend bool Q_AUTOTEST_EXPORT operator!= (const XYDomain &Domain1, const XYDomain &Domain2); + friend QDebug Q_AUTOTEST_EXPORT operator<<(QDebug dbg, const XYDomain &AbstractDomain); + + void zoomIn(const QRectF &rect); + void zoomOut(const QRectF &rect); + void move(qreal dx, qreal dy); + + QPointF calculateGeometryPoint(const QPointF &point, bool &ok) const; + QPointF calculateDomainPoint(const QPointF &point) const; + QVector calculateGeometryPoints(const QVector &vector) const; +}; + +QT_CHARTS_END_NAMESPACE + +#endif // XYDOMAIN_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/xypolardomain_p.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/xypolardomain_p.h new file mode 100644 index 0000000..9d02766 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/5.12.5/QtCharts/private/xypolardomain_p.h @@ -0,0 +1,75 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +// W A R N I N G +// ------------- +// +// This file is not part of the Qt Chart API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. + +#ifndef XYPOLARDOMAIN_H +#define XYPOLARDOMAIN_H +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QT_CHARTS_PRIVATE_EXPORT XYPolarDomain: public PolarDomain +{ + Q_OBJECT +public: + explicit XYPolarDomain(QObject *object = 0); + virtual ~XYPolarDomain(); + + DomainType type(){ return AbstractDomain::XYPolarDomain;} + + void setRange(qreal minX, qreal maxX, qreal minY, qreal maxY); + + friend bool Q_AUTOTEST_EXPORT operator== (const XYPolarDomain &Domain1, const XYPolarDomain &Domain2); + friend bool Q_AUTOTEST_EXPORT operator!= (const XYPolarDomain &Domain1, const XYPolarDomain &Domain2); + friend QDebug Q_AUTOTEST_EXPORT operator<<(QDebug dbg, const XYPolarDomain &AbstractDomain); + + void zoomIn(const QRectF &rect); + void zoomOut(const QRectF &rect); + void move(qreal dx, qreal dy); + + QPointF calculateDomainPoint(const QPointF &point) const; + +protected: + qreal toAngularCoordinate(qreal value, bool &ok) const; + qreal toRadialCoordinate(qreal value, bool &ok) const; +}; + +QT_CHARTS_END_NAMESPACE + +#endif // XYPOLARDOMAIN_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QAbstractAxis b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QAbstractAxis new file mode 100644 index 0000000..898b6b1 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QAbstractAxis @@ -0,0 +1 @@ +#include "qabstractaxis.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QAbstractBarSeries b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QAbstractBarSeries new file mode 100644 index 0000000..27e50ca --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QAbstractBarSeries @@ -0,0 +1 @@ +#include "qabstractbarseries.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QAbstractSeries b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QAbstractSeries new file mode 100644 index 0000000..d885709 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QAbstractSeries @@ -0,0 +1 @@ +#include "qabstractseries.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QAreaLegendMarker b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QAreaLegendMarker new file mode 100644 index 0000000..8b94fc5 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QAreaLegendMarker @@ -0,0 +1 @@ +#include "qarealegendmarker.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QAreaSeries b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QAreaSeries new file mode 100644 index 0000000..cf88f2b --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QAreaSeries @@ -0,0 +1 @@ +#include "qareaseries.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QBarCategoryAxis b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QBarCategoryAxis new file mode 100644 index 0000000..c5ac752 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QBarCategoryAxis @@ -0,0 +1 @@ +#include "qbarcategoryaxis.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QBarLegendMarker b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QBarLegendMarker new file mode 100644 index 0000000..cd43fc5 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QBarLegendMarker @@ -0,0 +1 @@ +#include "qbarlegendmarker.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QBarModelMapper b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QBarModelMapper new file mode 100644 index 0000000..5f86668 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QBarModelMapper @@ -0,0 +1 @@ +#include "qbarmodelmapper.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QBarSeries b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QBarSeries new file mode 100644 index 0000000..6348817 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QBarSeries @@ -0,0 +1 @@ +#include "qbarseries.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QBarSet b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QBarSet new file mode 100644 index 0000000..a550cb6 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QBarSet @@ -0,0 +1 @@ +#include "qbarset.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QBoxPlotLegendMarker b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QBoxPlotLegendMarker new file mode 100644 index 0000000..49f2548 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QBoxPlotLegendMarker @@ -0,0 +1 @@ +#include "qboxplotlegendmarker.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QBoxPlotModelMapper b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QBoxPlotModelMapper new file mode 100644 index 0000000..721d987 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QBoxPlotModelMapper @@ -0,0 +1 @@ +#include "qboxplotmodelmapper.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QBoxPlotSeries b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QBoxPlotSeries new file mode 100644 index 0000000..29878a2 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QBoxPlotSeries @@ -0,0 +1 @@ +#include "qboxplotseries.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QBoxSet b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QBoxSet new file mode 100644 index 0000000..6f1e810 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QBoxSet @@ -0,0 +1 @@ +#include "qboxset.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QCandlestickLegendMarker b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QCandlestickLegendMarker new file mode 100644 index 0000000..6ee8ae3 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QCandlestickLegendMarker @@ -0,0 +1 @@ +#include "qcandlesticklegendmarker.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QCandlestickModelMapper b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QCandlestickModelMapper new file mode 100644 index 0000000..a458273 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QCandlestickModelMapper @@ -0,0 +1 @@ +#include "qcandlestickmodelmapper.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QCandlestickSeries b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QCandlestickSeries new file mode 100644 index 0000000..9fec04e --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QCandlestickSeries @@ -0,0 +1 @@ +#include "qcandlestickseries.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QCandlestickSet b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QCandlestickSet new file mode 100644 index 0000000..a89dcd6 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QCandlestickSet @@ -0,0 +1 @@ +#include "qcandlestickset.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QCategoryAxis b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QCategoryAxis new file mode 100644 index 0000000..1bb7d1e --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QCategoryAxis @@ -0,0 +1 @@ +#include "qcategoryaxis.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QChart b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QChart new file mode 100644 index 0000000..df9ac79 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QChart @@ -0,0 +1 @@ +#include "qchart.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QChartGlobal b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QChartGlobal new file mode 100644 index 0000000..1e5eb10 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QChartGlobal @@ -0,0 +1 @@ +#include "qchartglobal.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QChartView b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QChartView new file mode 100644 index 0000000..f5680f6 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QChartView @@ -0,0 +1 @@ +#include "qchartview.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QDateTimeAxis b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QDateTimeAxis new file mode 100644 index 0000000..9511440 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QDateTimeAxis @@ -0,0 +1 @@ +#include "qdatetimeaxis.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QHBarModelMapper b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QHBarModelMapper new file mode 100644 index 0000000..d7facb6 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QHBarModelMapper @@ -0,0 +1 @@ +#include "qhbarmodelmapper.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QHBoxPlotModelMapper b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QHBoxPlotModelMapper new file mode 100644 index 0000000..1544729 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QHBoxPlotModelMapper @@ -0,0 +1 @@ +#include "qhboxplotmodelmapper.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QHCandlestickModelMapper b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QHCandlestickModelMapper new file mode 100644 index 0000000..cd9a70b --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QHCandlestickModelMapper @@ -0,0 +1 @@ +#include "qhcandlestickmodelmapper.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QHPieModelMapper b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QHPieModelMapper new file mode 100644 index 0000000..e2f2114 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QHPieModelMapper @@ -0,0 +1 @@ +#include "qhpiemodelmapper.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QHXYModelMapper b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QHXYModelMapper new file mode 100644 index 0000000..e2efb53 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QHXYModelMapper @@ -0,0 +1 @@ +#include "qhxymodelmapper.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QHorizontalBarSeries b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QHorizontalBarSeries new file mode 100644 index 0000000..152c0fb --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QHorizontalBarSeries @@ -0,0 +1 @@ +#include "qhorizontalbarseries.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QHorizontalPercentBarSeries b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QHorizontalPercentBarSeries new file mode 100644 index 0000000..8c3975c --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QHorizontalPercentBarSeries @@ -0,0 +1 @@ +#include "qhorizontalpercentbarseries.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QHorizontalStackedBarSeries b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QHorizontalStackedBarSeries new file mode 100644 index 0000000..0eaa699 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QHorizontalStackedBarSeries @@ -0,0 +1 @@ +#include "qhorizontalstackedbarseries.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QLegend b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QLegend new file mode 100644 index 0000000..11e5789 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QLegend @@ -0,0 +1 @@ +#include "qlegend.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QLegendMarker b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QLegendMarker new file mode 100644 index 0000000..fe5ed44 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QLegendMarker @@ -0,0 +1 @@ +#include "qlegendmarker.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QLineSeries b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QLineSeries new file mode 100644 index 0000000..2dcb2a6 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QLineSeries @@ -0,0 +1 @@ +#include "qlineseries.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QLogValueAxis b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QLogValueAxis new file mode 100644 index 0000000..125c6b6 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QLogValueAxis @@ -0,0 +1 @@ +#include "qlogvalueaxis.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QPercentBarSeries b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QPercentBarSeries new file mode 100644 index 0000000..4f08eb6 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QPercentBarSeries @@ -0,0 +1 @@ +#include "qpercentbarseries.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QPieLegendMarker b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QPieLegendMarker new file mode 100644 index 0000000..ae99a98 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QPieLegendMarker @@ -0,0 +1 @@ +#include "qpielegendmarker.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QPieModelMapper b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QPieModelMapper new file mode 100644 index 0000000..2e738e8 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QPieModelMapper @@ -0,0 +1 @@ +#include "qpiemodelmapper.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QPieSeries b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QPieSeries new file mode 100644 index 0000000..aacfe44 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QPieSeries @@ -0,0 +1 @@ +#include "qpieseries.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QPieSlice b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QPieSlice new file mode 100644 index 0000000..91e39f1 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QPieSlice @@ -0,0 +1 @@ +#include "qpieslice.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QPolarChart b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QPolarChart new file mode 100644 index 0000000..b660cb9 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QPolarChart @@ -0,0 +1 @@ +#include "qpolarchart.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QScatterSeries b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QScatterSeries new file mode 100644 index 0000000..f3fce7c --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QScatterSeries @@ -0,0 +1 @@ +#include "qscatterseries.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QSplineSeries b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QSplineSeries new file mode 100644 index 0000000..f6d5eb7 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QSplineSeries @@ -0,0 +1 @@ +#include "qsplineseries.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QStackedBarSeries b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QStackedBarSeries new file mode 100644 index 0000000..1e35d69 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QStackedBarSeries @@ -0,0 +1 @@ +#include "qstackedbarseries.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QVBarModelMapper b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QVBarModelMapper new file mode 100644 index 0000000..573dc6a --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QVBarModelMapper @@ -0,0 +1 @@ +#include "qvbarmodelmapper.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QVBoxPlotModelMapper b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QVBoxPlotModelMapper new file mode 100644 index 0000000..f7e27c1 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QVBoxPlotModelMapper @@ -0,0 +1 @@ +#include "qvboxplotmodelmapper.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QVCandlestickModelMapper b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QVCandlestickModelMapper new file mode 100644 index 0000000..dc98922 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QVCandlestickModelMapper @@ -0,0 +1 @@ +#include "qvcandlestickmodelmapper.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QVPieModelMapper b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QVPieModelMapper new file mode 100644 index 0000000..812587d --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QVPieModelMapper @@ -0,0 +1 @@ +#include "qvpiemodelmapper.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QVXYModelMapper b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QVXYModelMapper new file mode 100644 index 0000000..5a0c1de --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QVXYModelMapper @@ -0,0 +1 @@ +#include "qvxymodelmapper.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QValueAxis b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QValueAxis new file mode 100644 index 0000000..b3d5187 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QValueAxis @@ -0,0 +1 @@ +#include "qvalueaxis.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QXYLegendMarker b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QXYLegendMarker new file mode 100644 index 0000000..2b92d6f --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QXYLegendMarker @@ -0,0 +1 @@ +#include "qxylegendmarker.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QXYModelMapper b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QXYModelMapper new file mode 100644 index 0000000..b79614e --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QXYModelMapper @@ -0,0 +1 @@ +#include "qxymodelmapper.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QXYSeries b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QXYSeries new file mode 100644 index 0000000..0638da8 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QXYSeries @@ -0,0 +1 @@ +#include "qxyseries.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QtCharts b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QtCharts new file mode 100644 index 0000000..3e71c3d --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QtCharts @@ -0,0 +1,59 @@ +#ifndef QT_QTCHARTS_MODULE_H +#define QT_QTCHARTS_MODULE_H +#include +#include "qchartglobal.h" +#include "chartsnamespace.h" +#include "qabstractaxis.h" +#include "qabstractbarseries.h" +#include "qabstractseries.h" +#include "qarealegendmarker.h" +#include "qareaseries.h" +#include "qbarcategoryaxis.h" +#include "qbarlegendmarker.h" +#include "qbarmodelmapper.h" +#include "qbarseries.h" +#include "qbarset.h" +#include "qboxplotlegendmarker.h" +#include "qboxplotmodelmapper.h" +#include "qboxplotseries.h" +#include "qboxset.h" +#include "qcandlesticklegendmarker.h" +#include "qcandlestickmodelmapper.h" +#include "qcandlestickseries.h" +#include "qcandlestickset.h" +#include "qcategoryaxis.h" +#include "qchart.h" +#include "qchartview.h" +#include "qdatetimeaxis.h" +#include "qhbarmodelmapper.h" +#include "qhboxplotmodelmapper.h" +#include "qhcandlestickmodelmapper.h" +#include "qhorizontalbarseries.h" +#include "qhorizontalpercentbarseries.h" +#include "qhorizontalstackedbarseries.h" +#include "qhpiemodelmapper.h" +#include "qhxymodelmapper.h" +#include "qlegend.h" +#include "qlegendmarker.h" +#include "qlineseries.h" +#include "qlogvalueaxis.h" +#include "qpercentbarseries.h" +#include "qpielegendmarker.h" +#include "qpiemodelmapper.h" +#include "qpieseries.h" +#include "qpieslice.h" +#include "qpolarchart.h" +#include "qscatterseries.h" +#include "qsplineseries.h" +#include "qstackedbarseries.h" +#include "qvalueaxis.h" +#include "qvbarmodelmapper.h" +#include "qvboxplotmodelmapper.h" +#include "qvcandlestickmodelmapper.h" +#include "qvpiemodelmapper.h" +#include "qvxymodelmapper.h" +#include "qxylegendmarker.h" +#include "qxymodelmapper.h" +#include "qxyseries.h" +#include "qtchartsversion.h" +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QtChartsDepends b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QtChartsDepends new file mode 100644 index 0000000..bc486b0 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QtChartsDepends @@ -0,0 +1,6 @@ +/* This file was generated by qmake with the info from /src/charts/charts.pro. */ +#ifdef __cplusplus /* create empty PCH in C mode */ +#include +#include +#include +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QtChartsVersion b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QtChartsVersion new file mode 100644 index 0000000..dcac61f --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/QtChartsVersion @@ -0,0 +1 @@ +#include "qtchartsversion.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/chartsnamespace.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/chartsnamespace.h new file mode 100644 index 0000000..cd7fa8e --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/chartsnamespace.h @@ -0,0 +1,40 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef CHARTSNAMESPACE_H +#define CHARTSNAMESPACE_H + +// this is needed by the designer plugin. + +#ifdef QT_CHARTS_USE_NAMESPACE +QT_CHARTS_USE_NAMESPACE +#endif + + +#endif /* CHARTSNAMESPACE_H */ diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qabstractaxis.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qabstractaxis.h new file mode 100644 index 0000000..4f90267 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qabstractaxis.h @@ -0,0 +1,218 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QABSTRACTAXIS_H +#define QABSTRACTAXIS_H + +#include +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QAbstractAxisPrivate; + +class QT_CHARTS_EXPORT QAbstractAxis : public QObject +{ + Q_OBJECT + //visibility + Q_PROPERTY(bool visible READ isVisible WRITE setVisible NOTIFY visibleChanged) + //arrow + Q_PROPERTY(bool lineVisible READ isLineVisible WRITE setLineVisible NOTIFY lineVisibleChanged) + Q_PROPERTY(QPen linePen READ linePen WRITE setLinePen NOTIFY linePenChanged) + Q_PROPERTY(QColor color READ linePenColor WRITE setLinePenColor NOTIFY colorChanged) + //labels + Q_PROPERTY(bool labelsVisible READ labelsVisible WRITE setLabelsVisible NOTIFY labelsVisibleChanged) + Q_PROPERTY(QBrush labelsBrush READ labelsBrush WRITE setLabelsBrush NOTIFY labelsBrushChanged) + Q_PROPERTY(int labelsAngle READ labelsAngle WRITE setLabelsAngle NOTIFY labelsAngleChanged) + Q_PROPERTY(QFont labelsFont READ labelsFont WRITE setLabelsFont NOTIFY labelsFontChanged) + Q_PROPERTY(QColor labelsColor READ labelsColor WRITE setLabelsColor NOTIFY labelsColorChanged) + //grid + Q_PROPERTY(bool gridVisible READ isGridLineVisible WRITE setGridLineVisible NOTIFY gridVisibleChanged) + Q_PROPERTY(QPen gridLinePen READ gridLinePen WRITE setGridLinePen NOTIFY gridLinePenChanged) + Q_PROPERTY(bool minorGridVisible READ isMinorGridLineVisible WRITE setMinorGridLineVisible NOTIFY minorGridVisibleChanged) + Q_PROPERTY(QPen minorGridLinePen READ minorGridLinePen WRITE setMinorGridLinePen NOTIFY minorGridLinePenChanged) + Q_PROPERTY(QColor gridLineColor READ gridLineColor WRITE setGridLineColor NOTIFY gridLineColorChanged) + Q_PROPERTY(QColor minorGridLineColor READ minorGridLineColor WRITE setMinorGridLineColor NOTIFY minorGridLineColorChanged) + //shades + Q_PROPERTY(bool shadesVisible READ shadesVisible WRITE setShadesVisible NOTIFY shadesVisibleChanged) + Q_PROPERTY(QColor shadesColor READ shadesColor WRITE setShadesColor NOTIFY shadesColorChanged) + Q_PROPERTY(QColor shadesBorderColor READ shadesBorderColor WRITE setShadesBorderColor NOTIFY shadesBorderColorChanged) + Q_PROPERTY(QPen shadesPen READ shadesPen WRITE setShadesPen NOTIFY shadesPenChanged) + Q_PROPERTY(QBrush shadesBrush READ shadesBrush WRITE setShadesBrush NOTIFY shadesBrushChanged) + //title + Q_PROPERTY(QString titleText READ titleText WRITE setTitleText NOTIFY titleTextChanged) + Q_PROPERTY(QBrush titleBrush READ titleBrush WRITE setTitleBrush NOTIFY titleBrushChanged) + Q_PROPERTY(bool titleVisible READ isTitleVisible WRITE setTitleVisible NOTIFY titleVisibleChanged) + Q_PROPERTY(QFont titleFont READ titleFont WRITE setTitleFont NOTIFY titleFontChanged) + //orientation + Q_PROPERTY(Qt::Orientation orientation READ orientation) + //aligment + Q_PROPERTY(Qt::Alignment alignment READ alignment) + Q_PROPERTY(bool reverse READ isReverse WRITE setReverse NOTIFY reverseChanged) + +public: + + enum AxisType { + AxisTypeNoAxis = 0x0, + AxisTypeValue = 0x1, + AxisTypeBarCategory = 0x2, + AxisTypeCategory = 0x4, + AxisTypeDateTime = 0x8, + AxisTypeLogValue = 0x10 + }; + + Q_DECLARE_FLAGS(AxisTypes, AxisType) + +protected: + explicit QAbstractAxis(QAbstractAxisPrivate &d, QObject *parent = nullptr); + +public: + ~QAbstractAxis(); + + virtual AxisType type() const = 0; + + //visibility handling + bool isVisible() const; + void setVisible(bool visible = true); + void show(); + void hide(); + + //arrow handling + bool isLineVisible() const; + void setLineVisible(bool visible = true); + void setLinePen(const QPen &pen); + QPen linePen() const; + void setLinePenColor(QColor color); + QColor linePenColor() const; + + //grid handling + bool isGridLineVisible() const; + void setGridLineVisible(bool visible = true); + void setGridLinePen(const QPen &pen); + QPen gridLinePen() const; + bool isMinorGridLineVisible() const; + void setMinorGridLineVisible(bool visible = true); + void setMinorGridLinePen(const QPen &pen); + QPen minorGridLinePen() const; + void setGridLineColor(const QColor &color); + QColor gridLineColor(); + void setMinorGridLineColor(const QColor &color); + QColor minorGridLineColor(); + + //labels handling + bool labelsVisible() const; + void setLabelsVisible(bool visible = true); + void setLabelsBrush(const QBrush &brush); + QBrush labelsBrush() const; + void setLabelsFont(const QFont &font); + QFont labelsFont() const; + void setLabelsAngle(int angle); + int labelsAngle() const; + void setLabelsColor(QColor color); + QColor labelsColor() const; + + //title handling + bool isTitleVisible() const; + void setTitleVisible(bool visible = true); + void setTitleBrush(const QBrush &brush); + QBrush titleBrush() const; + void setTitleFont(const QFont &font); + QFont titleFont() const; + void setTitleText(const QString &title); + QString titleText() const; + + //shades handling + bool shadesVisible() const; + void setShadesVisible(bool visible = true); + void setShadesPen(const QPen &pen); + QPen shadesPen() const; + void setShadesBrush(const QBrush &brush); + QBrush shadesBrush() const; + void setShadesColor(QColor color); + QColor shadesColor() const; + void setShadesBorderColor(QColor color); + QColor shadesBorderColor() const; + + Qt::Orientation orientation() const; + Qt::Alignment alignment() const; + + //range handling + void setMin(const QVariant &min); + void setMax(const QVariant &max); + void setRange(const QVariant &min, const QVariant &max); + + //reverse handling + void setReverse(bool reverse = true); + bool isReverse() const; + +Q_SIGNALS: + void visibleChanged(bool visible); + void linePenChanged(const QPen &pen); + void lineVisibleChanged(bool visible); + void labelsVisibleChanged(bool visible); + void labelsBrushChanged(const QBrush &brush); + void labelsFontChanged(const QFont &pen); + void labelsAngleChanged(int angle); + void gridLinePenChanged(const QPen &pen); + void gridVisibleChanged(bool visible); + void minorGridVisibleChanged(bool visible); + void minorGridLinePenChanged(const QPen &pen); + void gridLineColorChanged(const QColor &color); + void minorGridLineColorChanged(const QColor &color); + void colorChanged(QColor color); + void labelsColorChanged(QColor color); + void titleTextChanged(const QString &title); + void titleBrushChanged(const QBrush &brush); + void titleVisibleChanged(bool visible); + void titleFontChanged(const QFont &font); + void shadesVisibleChanged(bool visible); + void shadesColorChanged(QColor color); + void shadesBorderColorChanged(QColor color); + void shadesPenChanged(const QPen &pen); + void shadesBrushChanged(const QBrush &brush); + void reverseChanged(bool reverse); + +protected: + QScopedPointer d_ptr; + friend class ChartDataSet; + friend class ChartPresenter; + friend class ChartThemeManager; + friend class AbstractDomain; + friend class ChartAxisElement; + friend class XYChart; + +private: + Q_DISABLE_COPY(QAbstractAxis) +}; + +QT_CHARTS_END_NAMESPACE + +#endif // QABSTRACTAXIS_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qabstractbarseries.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qabstractbarseries.h new file mode 100644 index 0000000..82000d3 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qabstractbarseries.h @@ -0,0 +1,126 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QABSTRACTBARSERIES_H +#define QABSTRACTBARSERIES_H + +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QBarSet; +class QAbstractBarSeriesPrivate; + +// Container for series +class QT_CHARTS_EXPORT QAbstractBarSeries : public QAbstractSeries +{ + Q_OBJECT + Q_PROPERTY(qreal barWidth READ barWidth WRITE setBarWidth) + Q_PROPERTY(int count READ count NOTIFY countChanged) + Q_PROPERTY(bool labelsVisible READ isLabelsVisible WRITE setLabelsVisible NOTIFY labelsVisibleChanged) + Q_PROPERTY(QString labelsFormat READ labelsFormat WRITE setLabelsFormat NOTIFY labelsFormatChanged) + Q_PROPERTY(LabelsPosition labelsPosition READ labelsPosition WRITE setLabelsPosition NOTIFY labelsPositionChanged) + Q_PROPERTY(qreal labelsAngle READ labelsAngle WRITE setLabelsAngle NOTIFY labelsAngleChanged) + Q_PROPERTY(int labelsPrecision READ labelsPrecision WRITE setLabelsPrecision NOTIFY labelsPrecisionChanged) + Q_ENUMS(LabelsPosition) + +public: + enum LabelsPosition { + LabelsCenter = 0, + LabelsInsideEnd, + LabelsInsideBase, + LabelsOutsideEnd + }; + +public: + virtual ~QAbstractBarSeries(); + + void setBarWidth(qreal width); + qreal barWidth() const; + + bool append(QBarSet *set); + bool remove(QBarSet *set); + bool take(QBarSet *set); + bool append(QList sets); + bool insert(int index, QBarSet *set); + int count() const; + QList barSets() const; + void clear(); + + void setLabelsVisible(bool visible = true); + bool isLabelsVisible() const; + + void setLabelsFormat(const QString &format); + QString labelsFormat() const; + + void setLabelsAngle(qreal angle); + qreal labelsAngle() const; + + void setLabelsPosition(QAbstractBarSeries::LabelsPosition position); + QAbstractBarSeries::LabelsPosition labelsPosition() const; + + void setLabelsPrecision(int precision); + int labelsPrecision() const; + +protected: + explicit QAbstractBarSeries(QAbstractBarSeriesPrivate &d, QObject *parent = nullptr); + +Q_SIGNALS: + void clicked(int index, QBarSet *barset); + void hovered(bool status, int index, QBarSet *barset); + void pressed(int index, QBarSet *barset); + void released(int index, QBarSet *barset); + void doubleClicked(int index, QBarSet *barset); + void countChanged(); + void labelsVisibleChanged(); + void labelsFormatChanged(const QString &format); + void labelsPositionChanged(QAbstractBarSeries::LabelsPosition position); + void labelsAngleChanged(qreal angle); + void labelsPrecisionChanged(int precision); + + void barsetsAdded(QList sets); + void barsetsRemoved(QList sets); + +protected: + Q_DECLARE_PRIVATE(QAbstractBarSeries) + friend class AbstractBarChartItem; + friend class PercentBarChartItem; + friend class StackedBarChartItem; + friend class BoxPlotChartItem; + friend class BarChartItem; + friend class HorizontalBarChartItem; + friend class HorizontalStackedBarChartItem; + friend class HorizontalPercentBarChartItem; + friend class BarSet; +}; + +QT_CHARTS_END_NAMESPACE + +#endif // QABSTRACTBARSERIES_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qabstractseries.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qabstractseries.h new file mode 100644 index 0000000..3936866 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qabstractseries.h @@ -0,0 +1,114 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QABSTRACTSERIES_H +#define QABSTRACTSERIES_H + +#include +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QAbstractSeriesPrivate; +class QChart; + +class QT_CHARTS_EXPORT QAbstractSeries : public QObject +{ + Q_OBJECT + Q_PROPERTY(QString name READ name WRITE setName NOTIFY nameChanged) + Q_PROPERTY(bool visible READ isVisible WRITE setVisible NOTIFY visibleChanged) + Q_PROPERTY(qreal opacity READ opacity WRITE setOpacity NOTIFY opacityChanged) + Q_PROPERTY(SeriesType type READ type) + Q_PROPERTY(bool useOpenGL READ useOpenGL WRITE setUseOpenGL NOTIFY useOpenGLChanged) + Q_ENUMS(SeriesType) + +public: + enum SeriesType { + SeriesTypeLine, + SeriesTypeArea, + SeriesTypeBar, + SeriesTypeStackedBar, + SeriesTypePercentBar, + SeriesTypePie, + SeriesTypeScatter, + SeriesTypeSpline, + SeriesTypeHorizontalBar, + SeriesTypeHorizontalStackedBar, + SeriesTypeHorizontalPercentBar, + SeriesTypeBoxPlot, + SeriesTypeCandlestick + }; + +protected: + QAbstractSeries(QAbstractSeriesPrivate &d, QObject *parent = nullptr); + +public: + ~QAbstractSeries(); + virtual SeriesType type() const = 0; + + void setName(const QString &name); + QString name() const; + void setVisible(bool visible = true); + bool isVisible() const; + qreal opacity() const; + void setOpacity(qreal opacity); + void setUseOpenGL(bool enable = true); + bool useOpenGL() const; + + QChart *chart() const; + + bool attachAxis(QAbstractAxis *axis); + bool detachAxis(QAbstractAxis *axis); + QList attachedAxes(); + + void show(); + void hide(); + +Q_SIGNALS: + void nameChanged(); + void visibleChanged(); + void opacityChanged(); + void useOpenGLChanged(); + +protected: + QScopedPointer d_ptr; + friend class ChartDataSet; + friend class ChartPresenter; + friend class ChartThemeManager; + friend class QLegendPrivate; + friend class DeclarativeChart; + friend class QAreaSeries; + friend class GLWidget; +}; + +QT_CHARTS_END_NAMESPACE + +#endif // QABSTRACTSERIES_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qarealegendmarker.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qarealegendmarker.h new file mode 100644 index 0000000..3d88fa0 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qarealegendmarker.h @@ -0,0 +1,65 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QAREALEGENDMARKER_H +#define QAREALEGENDMARKER_H + +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QAreaLegendMarkerPrivate; + +class QT_CHARTS_EXPORT QAreaLegendMarker : public QLegendMarker +{ + Q_OBJECT + +public: + explicit QAreaLegendMarker(QAreaSeries *series, QLegend *legend, QObject *parent = nullptr); + virtual ~QAreaLegendMarker(); + + virtual LegendMarkerType type() { return LegendMarkerTypeArea; } + + // Related series + virtual QAreaSeries* series(); + +protected: + QAreaLegendMarker(QAreaLegendMarkerPrivate &d, QObject *parent = nullptr); + +private: + Q_DECLARE_PRIVATE(QAreaLegendMarker) + Q_DISABLE_COPY(QAreaLegendMarker) + +}; + +QT_CHARTS_END_NAMESPACE + +#endif // QAREALEGENDMARKER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qareaseries.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qareaseries.h new file mode 100644 index 0000000..2b84b8d --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qareaseries.h @@ -0,0 +1,123 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QAREASERIES_H +#define QAREASERIES_H + +#include +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE +class QLineSeries; +class QAreaSeriesPrivate; + +class QT_CHARTS_EXPORT QAreaSeries : public QAbstractSeries +{ + Q_OBJECT + Q_PROPERTY(QtCharts::QLineSeries *upperSeries READ upperSeries) + Q_PROPERTY(QtCharts::QLineSeries *lowerSeries READ lowerSeries) + Q_PROPERTY(QColor color READ color WRITE setColor NOTIFY colorChanged) + Q_PROPERTY(QColor borderColor READ borderColor WRITE setBorderColor NOTIFY borderColorChanged) + Q_PROPERTY(QString pointLabelsFormat READ pointLabelsFormat WRITE setPointLabelsFormat NOTIFY pointLabelsFormatChanged) + Q_PROPERTY(bool pointLabelsVisible READ pointLabelsVisible WRITE setPointLabelsVisible NOTIFY pointLabelsVisibilityChanged) + Q_PROPERTY(QFont pointLabelsFont READ pointLabelsFont WRITE setPointLabelsFont NOTIFY pointLabelsFontChanged) + Q_PROPERTY(QColor pointLabelsColor READ pointLabelsColor WRITE setPointLabelsColor NOTIFY pointLabelsColorChanged) + Q_PROPERTY(bool pointLabelsClipping READ pointLabelsClipping WRITE setPointLabelsClipping NOTIFY pointLabelsClippingChanged) + +public: + explicit QAreaSeries(QObject *parent = nullptr); + explicit QAreaSeries(QLineSeries *upperSeries, QLineSeries *lowerSeries = nullptr); + ~QAreaSeries(); + +public: + QAbstractSeries::SeriesType type() const; + + void setUpperSeries(QLineSeries *series); + QLineSeries *upperSeries() const; + void setLowerSeries(QLineSeries *series); + QLineSeries *lowerSeries() const; + + void setPen(const QPen &pen); + QPen pen() const; + + void setBrush(const QBrush &brush); + QBrush brush() const; + + void setColor(const QColor &color); + QColor color() const; + + void setBorderColor(const QColor &color); + QColor borderColor() const; + + void setPointsVisible(bool visible = true); + bool pointsVisible() const; + + void setPointLabelsFormat(const QString &format); + QString pointLabelsFormat() const; + + void setPointLabelsVisible(bool visible = true); + bool pointLabelsVisible() const; + + void setPointLabelsFont(const QFont &font); + QFont pointLabelsFont() const; + + void setPointLabelsColor(const QColor &color); + QColor pointLabelsColor() const; + + void setPointLabelsClipping(bool enabled = true); + bool pointLabelsClipping() const; + +Q_SIGNALS: + void clicked(const QPointF &point); + void hovered(const QPointF &point, bool state); + void pressed(const QPointF &point); + void released(const QPointF &point); + void doubleClicked(const QPointF &point); + void selected(); + void colorChanged(QColor color); + void borderColorChanged(QColor color); + void pointLabelsFormatChanged(const QString &format); + void pointLabelsVisibilityChanged(bool visible); + void pointLabelsFontChanged(const QFont &font); + void pointLabelsColorChanged(const QColor &color); + void pointLabelsClippingChanged(bool clipping); + +private: + Q_DECLARE_PRIVATE(QAreaSeries) + Q_DISABLE_COPY(QAreaSeries) + friend class AreaLegendMarker; + friend class AreaChartItem; + friend class QAreaLegendMarkerPrivate; +}; + +QT_CHARTS_END_NAMESPACE + +#endif // QAREASERIES_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qbarcategoryaxis.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qbarcategoryaxis.h new file mode 100644 index 0000000..54763e8 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qbarcategoryaxis.h @@ -0,0 +1,90 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QBARCATEGORYAXIS_H +#define QBARCATEGORYAXIS_H + +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QBarCategoryAxisPrivate; + +class QT_CHARTS_EXPORT QBarCategoryAxis : public QAbstractAxis +{ + Q_OBJECT + Q_PROPERTY(QStringList categories READ categories WRITE setCategories NOTIFY categoriesChanged) + Q_PROPERTY(QString min READ min WRITE setMin NOTIFY minChanged) + Q_PROPERTY(QString max READ max WRITE setMax NOTIFY maxChanged) + Q_PROPERTY(int count READ count NOTIFY countChanged) + +public: + explicit QBarCategoryAxis(QObject *parent = nullptr); + ~QBarCategoryAxis(); + +protected: + QBarCategoryAxis(QBarCategoryAxisPrivate &d, QObject *parent = nullptr); + +public: + AxisType type() const; + void append(const QStringList &categories); + void append(const QString &category); + void remove(const QString &category); + void insert(int index, const QString &category); + void replace(const QString &oldCategory, const QString &newCategory); + Q_INVOKABLE void clear(); + void setCategories(const QStringList &categories); + QStringList categories(); + int count() const; + QString at(int index) const; + + //range handling + void setMin(const QString &minCategory); + QString min() const; + void setMax(const QString &maxCategory); + QString max() const; + void setRange(const QString &minCategory, const QString &maxCategory); + +Q_SIGNALS: + void categoriesChanged(); + void minChanged(const QString &min); + void maxChanged(const QString &max); + void rangeChanged(const QString &min, const QString &max); + void countChanged(); + +private: + Q_DECLARE_PRIVATE(QBarCategoryAxis) + Q_DISABLE_COPY(QBarCategoryAxis) + friend class ChartBarCategoryAxisX; + friend class ChartBarCategoryAxisY; +}; + +QT_CHARTS_END_NAMESPACE + +#endif // QBARCATEGORYAXIS_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qbarlegendmarker.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qbarlegendmarker.h new file mode 100644 index 0000000..e1b3dcd --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qbarlegendmarker.h @@ -0,0 +1,66 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ +#ifndef QBARLEGENDMARKER_H +#define QBARLEGENDMARKER_H + +#include +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QLegend; +class QBarLegendMarkerPrivate; + +class QT_CHARTS_EXPORT QBarLegendMarker : public QLegendMarker +{ + Q_OBJECT +public: + explicit QBarLegendMarker(QAbstractBarSeries *series, QBarSet *barset, QLegend *legend, QObject *parent = nullptr); + virtual ~QBarLegendMarker(); + + virtual LegendMarkerType type() { return LegendMarkerTypeBar; } + + // Related series and barset + virtual QAbstractBarSeries* series(); + QBarSet* barset(); + +protected: + QBarLegendMarker(QBarLegendMarkerPrivate &d, QObject *parent = nullptr); + +private: + Q_DECLARE_PRIVATE(QBarLegendMarker) + Q_DISABLE_COPY(QBarLegendMarker) + +}; + +QT_CHARTS_END_NAMESPACE + +#endif // QBARLEGENDMARKER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qbarmodelmapper.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qbarmodelmapper.h new file mode 100644 index 0000000..6d08fb5 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qbarmodelmapper.h @@ -0,0 +1,80 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QBARMODELMAPPER_H +#define QBARMODELMAPPER_H + +#include +#include + +QT_BEGIN_NAMESPACE +class QAbstractItemModel; +QT_END_NAMESPACE + +QT_CHARTS_BEGIN_NAMESPACE + +class QBarModelMapperPrivate; +class QAbstractBarSeries; + +class QT_CHARTS_EXPORT QBarModelMapper : public QObject +{ + Q_OBJECT + +protected: + explicit QBarModelMapper(QObject *parent = nullptr); + + QAbstractItemModel *model() const; + void setModel(QAbstractItemModel *model); + + QAbstractBarSeries *series() const; + void setSeries(QAbstractBarSeries *series); + + int first() const; + void setFirst(int first); + + int count() const; + void setCount(int count); + + int firstBarSetSection() const; + void setFirstBarSetSection(int firstBarSetSection); + + int lastBarSetSection() const; + void setLastBarSetSection(int lastBarSetSection); + + Qt::Orientation orientation() const; + void setOrientation(Qt::Orientation orientation); + +protected: + QBarModelMapperPrivate * const d_ptr; + Q_DECLARE_PRIVATE(QBarModelMapper) +}; + +QT_CHARTS_END_NAMESPACE + +#endif // QBARMODELMAPPER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qbarseries.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qbarseries.h new file mode 100644 index 0000000..5de2811 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qbarseries.h @@ -0,0 +1,54 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QBARSERIES_H +#define QBARSERIES_H + +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QBarSeriesPrivate; + +class QT_CHARTS_EXPORT QBarSeries : public QAbstractBarSeries +{ + Q_OBJECT +public: + explicit QBarSeries(QObject *parent = nullptr); + ~QBarSeries(); + QAbstractSeries::SeriesType type() const; + +private: + Q_DECLARE_PRIVATE(QBarSeries) + Q_DISABLE_COPY(QBarSeries) +}; + +QT_CHARTS_END_NAMESPACE + +#endif // QBARSERIES_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qbarset.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qbarset.h new file mode 100644 index 0000000..7edd93e --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qbarset.h @@ -0,0 +1,131 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QBARSET_H +#define QBARSET_H + +#include +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE +class QBarSetPrivate; + +class QT_CHARTS_EXPORT QBarSet : public QObject +{ + Q_OBJECT + Q_PROPERTY(QString label READ label WRITE setLabel NOTIFY labelChanged) + Q_PROPERTY(QPen pen READ pen WRITE setPen NOTIFY penChanged) + Q_PROPERTY(QBrush brush READ brush WRITE setBrush NOTIFY brushChanged) + Q_PROPERTY(QBrush labelBrush READ labelBrush WRITE setLabelBrush NOTIFY labelBrushChanged) + Q_PROPERTY(QFont labelFont READ labelFont WRITE setLabelFont NOTIFY labelFontChanged) + Q_PROPERTY(QColor color READ color WRITE setColor NOTIFY colorChanged) + Q_PROPERTY(QColor borderColor READ borderColor WRITE setBorderColor NOTIFY borderColorChanged) + Q_PROPERTY(QColor labelColor READ labelColor WRITE setLabelColor NOTIFY labelColorChanged) + +public: + explicit QBarSet(const QString label, QObject *parent = nullptr); + virtual ~QBarSet(); + + void setLabel(const QString label); + QString label() const; + + void append(const qreal value); + void append(const QList &values); + + QBarSet &operator << (const qreal &value); + + void insert(const int index, const qreal value); + void remove(const int index, const int count = 1); + void replace(const int index, const qreal value); + qreal at(const int index) const; + qreal operator [](const int index) const; + int count() const; + qreal sum() const; + + void setPen(const QPen &pen); + QPen pen() const; + + void setBrush(const QBrush &brush); + QBrush brush() const; + + void setLabelBrush(const QBrush &brush); + QBrush labelBrush() const; + + void setLabelFont(const QFont &font); + QFont labelFont() const; + + QColor color(); + void setColor(QColor color); + + QColor borderColor(); + void setBorderColor(QColor color); + + QColor labelColor(); + void setLabelColor(QColor color); + +Q_SIGNALS: + void clicked(int index); + void hovered(bool status, int index); + void pressed(int index); + void released(int index); + void doubleClicked(int index); + void penChanged(); + void brushChanged(); + void labelChanged(); + void labelBrushChanged(); + void labelFontChanged(); + void colorChanged(QColor color); + void borderColorChanged(QColor color); + void labelColorChanged(QColor color); + + void valuesAdded(int index, int count); + void valuesRemoved(int index, int count); + void valueChanged(int index); + +private: + QScopedPointer d_ptr; + Q_DISABLE_COPY(QBarSet) + friend class QAbstractBarSeries; + friend class BarLegendMarker; + friend class AbstractBarChartItem; + friend class QAbstractBarSeriesPrivate; + friend class StackedBarChartItem; + friend class PercentBarChartItem; + friend class BarChartItem; + friend class HorizontalBarChartItem; + friend class HorizontalStackedBarChartItem; + friend class HorizontalPercentBarChartItem; + friend class BoxPlotChartItem; +}; + +QT_CHARTS_END_NAMESPACE + +#endif // QBARSET_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qboxplotlegendmarker.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qboxplotlegendmarker.h new file mode 100644 index 0000000..db6e9ed --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qboxplotlegendmarker.h @@ -0,0 +1,64 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QBOXPLOTLEGENDMARKER_H +#define QBOXPLOTLEGENDMARKER_H + +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QBoxPlotLegendMarkerPrivate; + +class QT_CHARTS_EXPORT QBoxPlotLegendMarker : public QLegendMarker +{ + Q_OBJECT + +public: + explicit QBoxPlotLegendMarker(QBoxPlotSeries *series, QLegend *legend, QObject *parent = nullptr); + virtual ~QBoxPlotLegendMarker(); + + virtual LegendMarkerType type() { return LegendMarkerTypeBoxPlot; } + + // Related series + virtual QBoxPlotSeries* series(); + +protected: + QBoxPlotLegendMarker(QBoxPlotLegendMarkerPrivate &d, QObject *parent = nullptr); + +private: + Q_DECLARE_PRIVATE(QBoxPlotLegendMarker) + Q_DISABLE_COPY(QBoxPlotLegendMarker) +}; + +QT_CHARTS_END_NAMESPACE + +#endif // QBOXPLOTLEGENDMARKER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qboxplotmodelmapper.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qboxplotmodelmapper.h new file mode 100644 index 0000000..4b57002 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qboxplotmodelmapper.h @@ -0,0 +1,80 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QBOXPLOTMODELMAPPER_H +#define QBOXPLOTMODELMAPPER_H + +#include +#include + +QT_BEGIN_NAMESPACE +class QAbstractItemModel; +QT_END_NAMESPACE + +QT_CHARTS_BEGIN_NAMESPACE + +class QBoxPlotModelMapperPrivate; +class QBoxPlotSeries; + +class QT_CHARTS_EXPORT QBoxPlotModelMapper : public QObject +{ + Q_OBJECT + +protected: + explicit QBoxPlotModelMapper(QObject *parent = nullptr); + + QAbstractItemModel *model() const; + void setModel(QAbstractItemModel *model); + + QBoxPlotSeries *series() const; + void setSeries(QBoxPlotSeries *series); + + int first() const; + void setFirst(int first); + + int count() const; + void setCount(int count); + + int firstBoxSetSection() const; + void setFirstBoxSetSection(int firstBoxSetSection); + + int lastBoxSetSection() const; + void setLastBoxSetSection(int lastBoxSetSection); + + Qt::Orientation orientation() const; + void setOrientation(Qt::Orientation orientation); + +protected: + QBoxPlotModelMapperPrivate * const d_ptr; + Q_DECLARE_PRIVATE(QBoxPlotModelMapper) +}; + +QT_CHARTS_END_NAMESPACE + +#endif // QBOXPLOTMODELMAPPER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qboxplotseries.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qboxplotseries.h new file mode 100644 index 0000000..fa736d5 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qboxplotseries.h @@ -0,0 +1,97 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QBOXPLOTSERIES_H +#define QBOXPLOTSERIES_H + +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QBoxPlotSeriesPrivate; + +class QT_CHARTS_EXPORT QBoxPlotSeries : public QAbstractSeries +{ + Q_OBJECT + Q_PROPERTY(bool boxOutlineVisible READ boxOutlineVisible WRITE setBoxOutlineVisible NOTIFY boxOutlineVisibilityChanged) + Q_PROPERTY(qreal boxWidth READ boxWidth WRITE setBoxWidth NOTIFY boxWidthChanged) + Q_PROPERTY(QPen pen READ pen WRITE setPen NOTIFY penChanged) + Q_PROPERTY(QBrush brush READ brush WRITE setBrush NOTIFY brushChanged) + Q_PROPERTY(int count READ count NOTIFY countChanged REVISION 1) +public: + explicit QBoxPlotSeries(QObject *parent = nullptr); + ~QBoxPlotSeries(); + + bool append(QBoxSet *box); + bool remove(QBoxSet *box); + bool take(QBoxSet *box); + bool append(QList boxes); + bool insert(int index, QBoxSet *box); + int count() const; + QList boxSets() const; + void clear(); + + QAbstractSeries::SeriesType type() const; + + void setBoxOutlineVisible(bool visible); + bool boxOutlineVisible(); + void setBoxWidth(qreal width); + qreal boxWidth(); + void setBrush(const QBrush &brush); + QBrush brush() const; + void setPen(const QPen &pen); + QPen pen() const; + +Q_SIGNALS: + void clicked(QBoxSet *boxset); + void hovered(bool status, QBoxSet *boxset); + void pressed(QBoxSet *boxset); + void released(QBoxSet *boxset); + void doubleClicked(QBoxSet *boxset); + void countChanged(); + void penChanged(); + void brushChanged(); + void boxOutlineVisibilityChanged(); + void boxWidthChanged(); + + void boxsetsAdded(QList sets); + void boxsetsRemoved(QList sets); + +private: + Q_DECLARE_PRIVATE(QBoxPlotSeries) + Q_DISABLE_COPY(QBoxPlotSeries) + friend class BoxPlotChartItem; + friend class QBoxPlotLegendMarkerPrivate; +}; + +QT_CHARTS_END_NAMESPACE + +#endif // QBOXPLOTSERIES_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qboxset.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qboxset.h new file mode 100644 index 0000000..eada769 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qboxset.h @@ -0,0 +1,106 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QBOXSET_H +#define QBOXSET_H + +#include +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE +class QBoxSetPrivate; + +class QT_CHARTS_EXPORT QBoxSet : public QObject +{ + Q_OBJECT + Q_PROPERTY(QPen pen READ pen WRITE setPen NOTIFY penChanged) + Q_PROPERTY(QBrush brush READ brush WRITE setBrush NOTIFY brushChanged) + +public: + enum ValuePositions { + LowerExtreme, + LowerQuartile, + Median, + UpperQuartile, + UpperExtreme + }; + +public: + explicit QBoxSet(const QString label = QString(), QObject *parent = nullptr); + explicit QBoxSet(const qreal le, const qreal lq, const qreal m, const qreal uq, const qreal ue, const QString label = QString(), QObject *parent = nullptr); + virtual ~QBoxSet(); + + void append(const qreal value); + void append(const QList &values); + + void clear(); + + void setLabel(const QString label); + QString label() const; + + QBoxSet &operator << (const qreal &value); + + void setValue(const int index, const qreal value); + qreal at(const int index) const; + qreal operator [](const int index) const; + int count() const; + + void setPen(const QPen &pen); + QPen pen() const; + + void setBrush(const QBrush &brush); + QBrush brush() const; + +Q_SIGNALS: + void clicked(); + void hovered(bool status); + void pressed(); + void released(); + void doubleClicked(); + void penChanged(); + void brushChanged(); + + void valuesChanged(); + void valueChanged(int index); + void cleared(); + +private: + QScopedPointer d_ptr; + Q_DISABLE_COPY(QBoxSet) + friend class BarLegendMarker; + friend class BarChartItem; + friend class BoxPlotChartItem; + friend class QBoxPlotSeriesPrivate; +}; + +QT_CHARTS_END_NAMESPACE + +#endif // QBOXSET_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qcandlesticklegendmarker.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qcandlesticklegendmarker.h new file mode 100644 index 0000000..dad57c4 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qcandlesticklegendmarker.h @@ -0,0 +1,61 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QCANDLESTICKLEGENDMARKER_H +#define QCANDLESTICKLEGENDMARKER_H + +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QCandlestickLegendMarkerPrivate; + +class QT_CHARTS_EXPORT QCandlestickLegendMarker : public QLegendMarker +{ + Q_OBJECT + +public: + explicit QCandlestickLegendMarker(QCandlestickSeries *series, QLegend *legend, + QObject *parent = nullptr); + virtual ~QCandlestickLegendMarker(); + + virtual LegendMarkerType type(); + + // Related series + virtual QCandlestickSeries* series(); + +private: + Q_DECLARE_PRIVATE(QCandlestickLegendMarker) + Q_DISABLE_COPY(QCandlestickLegendMarker) +}; + +QT_CHARTS_END_NAMESPACE + +#endif // QCANDLESTICKLEGENDMARKER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qcandlestickmodelmapper.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qcandlestickmodelmapper.h new file mode 100644 index 0000000..1103da8 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qcandlestickmodelmapper.h @@ -0,0 +1,95 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QCANDLESTICKMODELMAPPER_H +#define QCANDLESTICKMODELMAPPER_H + +#include +#include + +QT_BEGIN_NAMESPACE +class QAbstractItemModel; +QT_END_NAMESPACE + +QT_CHARTS_BEGIN_NAMESPACE + +class QCandlestickModelMapperPrivate; +class QCandlestickSeries; + +class QT_CHARTS_EXPORT QCandlestickModelMapper : public QObject +{ + Q_OBJECT + Q_PROPERTY(QAbstractItemModel *model READ model WRITE setModel NOTIFY modelReplaced) + Q_PROPERTY(QtCharts::QCandlestickSeries *series READ series WRITE setSeries NOTIFY seriesReplaced) + +public: + explicit QCandlestickModelMapper(QObject *parent = nullptr); + + void setModel(QAbstractItemModel *model); + QAbstractItemModel *model() const; + + void setSeries(QCandlestickSeries *series); + QCandlestickSeries *series() const; + + virtual Qt::Orientation orientation() const = 0; + +Q_SIGNALS: + void modelReplaced(); + void seriesReplaced(); + +protected: + void setTimestamp(int timestamp); + int timestamp() const; + + void setOpen(int open); + int open() const; + + void setHigh(int high); + int high() const; + + void setLow(int low); + int low() const; + + void setClose(int close); + int close() const; + + void setFirstSetSection(int firstSetSection); + int firstSetSection() const; + + void setLastSetSection(int lastSetSection); + int lastSetSection() const; + +protected: + QCandlestickModelMapperPrivate * const d_ptr; + Q_DECLARE_PRIVATE(QCandlestickModelMapper) +}; + +QT_CHARTS_END_NAMESPACE + +#endif // QCANDLESTICKMODELMAPPER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qcandlestickseries.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qcandlestickseries.h new file mode 100644 index 0000000..f96e809 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qcandlestickseries.h @@ -0,0 +1,131 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QCANDLESTICKSERIES_H +#define QCANDLESTICKSERIES_H + +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QCandlestickSeriesPrivate; +class QCandlestickSet; + +class QT_CHARTS_EXPORT QCandlestickSeries : public QAbstractSeries +{ + Q_OBJECT + Q_PROPERTY(int count READ count NOTIFY countChanged) + Q_PROPERTY(qreal maximumColumnWidth READ maximumColumnWidth WRITE setMaximumColumnWidth NOTIFY maximumColumnWidthChanged) + Q_PROPERTY(qreal minimumColumnWidth READ minimumColumnWidth WRITE setMinimumColumnWidth NOTIFY minimumColumnWidthChanged) + Q_PROPERTY(qreal bodyWidth READ bodyWidth WRITE setBodyWidth NOTIFY bodyWidthChanged) + Q_PROPERTY(bool bodyOutlineVisible READ bodyOutlineVisible WRITE setBodyOutlineVisible NOTIFY bodyOutlineVisibilityChanged) + Q_PROPERTY(qreal capsWidth READ capsWidth WRITE setCapsWidth NOTIFY capsWidthChanged) + Q_PROPERTY(bool capsVisible READ capsVisible WRITE setCapsVisible NOTIFY capsVisibilityChanged) + Q_PROPERTY(QColor increasingColor READ increasingColor WRITE setIncreasingColor NOTIFY increasingColorChanged) + Q_PROPERTY(QColor decreasingColor READ decreasingColor WRITE setDecreasingColor NOTIFY decreasingColorChanged) + Q_PROPERTY(QBrush brush READ brush WRITE setBrush NOTIFY brushChanged) + Q_PROPERTY(QPen pen READ pen WRITE setPen NOTIFY penChanged) + +public: + explicit QCandlestickSeries(QObject *parent = nullptr); + ~QCandlestickSeries(); + + bool append(QCandlestickSet *set); + bool remove(QCandlestickSet *set); + bool append(const QList &sets); + bool remove(const QList &sets); + bool insert(int index, QCandlestickSet *set); + bool take(QCandlestickSet *set); + void clear(); + + QList sets() const; + int count() const; + + QAbstractSeries::SeriesType type() const; + + void setMaximumColumnWidth(qreal maximumColumnWidth); + qreal maximumColumnWidth() const; + + void setMinimumColumnWidth(qreal minimumColumnWidth); + qreal minimumColumnWidth() const; + + void setBodyWidth(qreal bodyWidth); + qreal bodyWidth() const; + + void setBodyOutlineVisible(bool bodyOutlineVisible); + bool bodyOutlineVisible() const; + + void setCapsWidth(qreal capsWidth); + qreal capsWidth() const; + + void setCapsVisible(bool capsVisible); + bool capsVisible() const; + + void setIncreasingColor(const QColor &increasingColor); + QColor increasingColor() const; + + void setDecreasingColor(const QColor &decreasingColor); + QColor decreasingColor() const; + + void setBrush(const QBrush &brush); + QBrush brush() const; + + void setPen(const QPen &pen); + QPen pen() const; + +Q_SIGNALS: + void clicked(QCandlestickSet *set); + void hovered(bool status, QCandlestickSet *set); + void pressed(QCandlestickSet *set); + void released(QCandlestickSet *set); + void doubleClicked(QCandlestickSet *set); + void candlestickSetsAdded(const QList &sets); + void candlestickSetsRemoved(const QList &sets); + void countChanged(); + void maximumColumnWidthChanged(); + void minimumColumnWidthChanged(); + void bodyWidthChanged(); + void bodyOutlineVisibilityChanged(); + void capsWidthChanged(); + void capsVisibilityChanged(); + void increasingColorChanged(); + void decreasingColorChanged(); + void brushChanged(); + void penChanged(); + +private: + Q_DISABLE_COPY(QCandlestickSeries) + Q_DECLARE_PRIVATE(QCandlestickSeries) + friend class CandlestickChartItem; + friend class QCandlestickLegendMarkerPrivate; +}; + +QT_CHARTS_END_NAMESPACE + +#endif // QCANDLESTICKSERIES_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qcandlestickset.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qcandlestickset.h new file mode 100644 index 0000000..ddbb6c1 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qcandlestickset.h @@ -0,0 +1,102 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QCANDLESTICKSET_H +#define QCANDLESTICKSET_H + +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QCandlestickSetPrivate; + +class QT_CHARTS_EXPORT QCandlestickSet : public QObject +{ + Q_OBJECT + Q_PROPERTY(qreal timestamp READ timestamp WRITE setTimestamp NOTIFY timestampChanged) + Q_PROPERTY(qreal open READ open WRITE setOpen NOTIFY openChanged) + Q_PROPERTY(qreal high READ high WRITE setHigh NOTIFY highChanged) + Q_PROPERTY(qreal low READ low WRITE setLow NOTIFY lowChanged) + Q_PROPERTY(qreal close READ close WRITE setClose NOTIFY closeChanged) + Q_PROPERTY(QBrush brush READ brush WRITE setBrush NOTIFY brushChanged) + Q_PROPERTY(QPen pen READ pen WRITE setPen NOTIFY penChanged) + +public: + explicit QCandlestickSet(qreal timestamp = 0.0, QObject *parent = nullptr); + explicit QCandlestickSet(qreal open, qreal high, qreal low, qreal close, qreal timestamp = 0.0, + QObject *parent = nullptr); + virtual ~QCandlestickSet(); + + void setTimestamp(qreal timestamp); + qreal timestamp() const; + + void setOpen(qreal open); + qreal open() const; + + void setHigh(qreal high); + qreal high() const; + + void setLow(qreal low); + qreal low() const; + + void setClose(qreal close); + qreal close() const; + + void setBrush(const QBrush &brush); + QBrush brush() const; + + void setPen(const QPen &pen); + QPen pen() const; + +Q_SIGNALS: + void clicked(); + void hovered(bool status); + void pressed(); + void released(); + void doubleClicked(); + void timestampChanged(); + void openChanged(); + void highChanged(); + void lowChanged(); + void closeChanged(); + void brushChanged(); + void penChanged(); + +private: + QScopedPointer d_ptr; + Q_DECLARE_PRIVATE(QCandlestickSet) + Q_DISABLE_COPY(QCandlestickSet) + friend class QCandlestickSeriesPrivate; +}; + +QT_CHARTS_END_NAMESPACE + +#endif // QCANDLESTICKSET_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qcategoryaxis.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qcategoryaxis.h new file mode 100644 index 0000000..3400aa1 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qcategoryaxis.h @@ -0,0 +1,91 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QCATEGORYAXIS_H +#define QCATEGORYAXIS_H + +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QCategoryAxisPrivate; + +class QT_CHARTS_EXPORT QCategoryAxis : public QValueAxis +{ + Q_OBJECT + Q_PROPERTY(qreal startValue READ startValue WRITE setStartValue) + Q_PROPERTY(int count READ count) + Q_PROPERTY(QStringList categoriesLabels READ categoriesLabels) + Q_PROPERTY(AxisLabelsPosition labelsPosition READ labelsPosition WRITE setLabelsPosition NOTIFY labelsPositionChanged) + Q_ENUMS(AxisLabelsPosition) + +public: + + enum AxisLabelsPosition { + AxisLabelsPositionCenter = 0x0, + AxisLabelsPositionOnValue = 0x1 + }; + + explicit QCategoryAxis(QObject *parent = nullptr); + ~QCategoryAxis(); + +protected: + QCategoryAxis(QCategoryAxisPrivate &d, QObject *parent = nullptr); + +public: + AxisType type() const; + + void append(const QString &label, qreal categoryEndValue); + void remove(const QString &label); + void replaceLabel(const QString &oldLabel, const QString &newLabel); + + qreal startValue(const QString &categoryLabel = QString()) const; + void setStartValue(qreal min); + + qreal endValue(const QString &categoryLabel) const; + + QStringList categoriesLabels(); + int count() const; + + QCategoryAxis::AxisLabelsPosition labelsPosition() const; + void setLabelsPosition(QCategoryAxis::AxisLabelsPosition position); + +Q_SIGNALS: + void categoriesChanged(); + void labelsPositionChanged(QCategoryAxis::AxisLabelsPosition position); + +private: + Q_DECLARE_PRIVATE(QCategoryAxis) + Q_DISABLE_COPY(QCategoryAxis) +}; + +QT_CHARTS_END_NAMESPACE + +#endif // QCATEGORYAXIS_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qchart.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qchart.h new file mode 100644 index 0000000..9ac70e4 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qchart.h @@ -0,0 +1,204 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QCHART_H +#define QCHART_H + +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE +class QGraphicsSceneResizeEvent; +QT_END_NAMESPACE + +QT_CHARTS_BEGIN_NAMESPACE + +class QAbstractSeries; +class QAbstractAxis; +class QLegend; +class QChartPrivate; +class QBoxPlotSeries; + +class QT_CHARTS_EXPORT QChart : public QGraphicsWidget +{ + Q_OBJECT + Q_PROPERTY(QChart::ChartTheme theme READ theme WRITE setTheme) + Q_PROPERTY(QString title READ title WRITE setTitle) + Q_PROPERTY(bool backgroundVisible READ isBackgroundVisible WRITE setBackgroundVisible) + Q_PROPERTY(bool dropShadowEnabled READ isDropShadowEnabled WRITE setDropShadowEnabled) + Q_PROPERTY(qreal backgroundRoundness READ backgroundRoundness WRITE setBackgroundRoundness) + Q_PROPERTY(QChart::AnimationOptions animationOptions READ animationOptions WRITE setAnimationOptions) + Q_PROPERTY(int animationDuration READ animationDuration WRITE setAnimationDuration) + Q_PROPERTY(QEasingCurve animationEasingCurve READ animationEasingCurve WRITE setAnimationEasingCurve) + Q_PROPERTY(QMargins margins READ margins WRITE setMargins) + Q_PROPERTY(QChart::ChartType chartType READ chartType) + Q_PROPERTY(bool plotAreaBackgroundVisible READ isPlotAreaBackgroundVisible WRITE setPlotAreaBackgroundVisible) + Q_PROPERTY(bool localizeNumbers READ localizeNumbers WRITE setLocalizeNumbers) + Q_PROPERTY(QLocale locale READ locale WRITE setLocale) + Q_PROPERTY(QRectF plotArea READ plotArea WRITE setPlotArea NOTIFY plotAreaChanged) + Q_ENUMS(ChartTheme) + Q_ENUMS(AnimationOption) + Q_ENUMS(ChartType) + +public: + enum ChartType { + ChartTypeUndefined = 0, + ChartTypeCartesian, + ChartTypePolar + }; + + enum ChartTheme { + ChartThemeLight = 0, + ChartThemeBlueCerulean, + ChartThemeDark, + ChartThemeBrownSand, + ChartThemeBlueNcs, + ChartThemeHighContrast, + ChartThemeBlueIcy, + ChartThemeQt + }; + + enum AnimationOption { + NoAnimation = 0x0, + GridAxisAnimations = 0x1, + SeriesAnimations = 0x2, + AllAnimations = 0x3 + }; + + Q_DECLARE_FLAGS(AnimationOptions, AnimationOption) + +public: + explicit QChart(QGraphicsItem *parent = nullptr, Qt::WindowFlags wFlags = Qt::WindowFlags()); + ~QChart(); + + void addSeries(QAbstractSeries *series); + void removeSeries(QAbstractSeries *series); + void removeAllSeries(); + QList series() const; + + Q_DECL_DEPRECATED void setAxisX(QAbstractAxis *axis, QAbstractSeries *series = nullptr); + Q_DECL_DEPRECATED void setAxisY(QAbstractAxis *axis, QAbstractSeries *series = nullptr); + Q_DECL_DEPRECATED QAbstractAxis *axisX(QAbstractSeries *series = nullptr) const; + Q_DECL_DEPRECATED QAbstractAxis *axisY(QAbstractSeries *series = nullptr) const; + + void addAxis(QAbstractAxis *axis, Qt::Alignment alignment); + void removeAxis(QAbstractAxis *axis); + QList axes(Qt::Orientations orientation = Qt::Horizontal|Qt::Vertical, QAbstractSeries *series = nullptr) const; + + void createDefaultAxes(); + + void setTheme(QChart::ChartTheme theme); + QChart::ChartTheme theme() const; + + void setTitle(const QString &title); + QString title() const; + void setTitleFont(const QFont &font); + QFont titleFont() const; + void setTitleBrush(const QBrush &brush); + QBrush titleBrush() const; + + void setBackgroundBrush(const QBrush &brush); + QBrush backgroundBrush() const; + void setBackgroundPen(const QPen &pen); + QPen backgroundPen() const; + void setBackgroundVisible(bool visible = true); + bool isBackgroundVisible() const; + + void setDropShadowEnabled(bool enabled = true); + bool isDropShadowEnabled() const; + void setBackgroundRoundness(qreal diameter); + qreal backgroundRoundness() const; + + void setAnimationOptions(AnimationOptions options); + AnimationOptions animationOptions() const; + void setAnimationDuration(int msecs); + int animationDuration() const; + void setAnimationEasingCurve(const QEasingCurve &curve); + QEasingCurve animationEasingCurve() const; + + void zoomIn(); + void zoomOut(); + + void zoomIn(const QRectF &rect); + void zoom(qreal factor); + void zoomReset(); + bool isZoomed(); + + void scroll(qreal dx, qreal dy); + + QLegend *legend() const; + + void setMargins(const QMargins &margins); + QMargins margins() const; + + QRectF plotArea() const; + void setPlotArea(const QRectF &rect); + void setPlotAreaBackgroundBrush(const QBrush &brush); + QBrush plotAreaBackgroundBrush() const; + void setPlotAreaBackgroundPen(const QPen &pen); + QPen plotAreaBackgroundPen() const; + void setPlotAreaBackgroundVisible(bool visible = true); + bool isPlotAreaBackgroundVisible() const; + void setLocalizeNumbers(bool localize); + bool localizeNumbers() const; + void setLocale(const QLocale &locale); + QLocale locale() const; + + QPointF mapToValue(const QPointF &position, QAbstractSeries *series = nullptr); + QPointF mapToPosition(const QPointF &value, QAbstractSeries *series = nullptr); + + ChartType chartType() const; + +Q_SIGNALS: + void plotAreaChanged(const QRectF &plotArea); + +protected: + explicit QChart(QChart::ChartType type, QGraphicsItem *parent, Qt::WindowFlags wFlags); + QScopedPointer d_ptr; + friend class QLegend; + friend class DeclarativeChart; + friend class ChartDataSet; + friend class ChartPresenter; + friend class ChartThemeManager; + friend class QAbstractSeries; + friend class QBoxPlotSeriesPrivate; + friend class QCandlestickSeriesPrivate; + friend class AbstractBarChartItem; + +private: + Q_DISABLE_COPY(QChart) +}; + +QT_CHARTS_END_NAMESPACE + +Q_DECLARE_OPERATORS_FOR_FLAGS(QT_CHARTS_NAMESPACE::QChart::AnimationOptions) + +#endif // QCHART_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qchartglobal.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qchartglobal.h new file mode 100644 index 0000000..9616002 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qchartglobal.h @@ -0,0 +1,85 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QCHARTGLOBAL_H +#define QCHARTGLOBAL_H + +#include + +#define QT_CHARTS_VERSION_STR QT_VERSION_STR +/* + QT_CHARTS_VERSION is (major << 16) + (minor << 8) + patch. +*/ +#define QT_CHARTS_VERSION QT_VERSION +/* + can be used like #if (QT_CHARTS_VERSION >= QT_CHARTS_VERSION_CHECK(1, 1, 0)) +*/ +#define QT_CHARTS_VERSION_CHECK(major, minor, patch) ((major<<16)|(minor<<8)|(patch)) + +#ifndef QT_STATIC +# if defined(QT_BUILD_CHARTS_LIB) +# define QT_CHARTS_EXPORT Q_DECL_EXPORT +# else +# define QT_CHARTS_EXPORT Q_DECL_IMPORT +# endif +#else +# define QT_CHARTS_EXPORT +#endif + +#define QT_CHARTS_AUTOTEST_EXPORT Q_AUTOTEST_EXPORT + +#ifndef Q_CLANG_QDOC +#define QT_CHARTS_NAMESPACE QtCharts +#endif + +#ifdef QT_CHARTS_NAMESPACE +# define QT_CHARTS_BEGIN_NAMESPACE namespace QT_CHARTS_NAMESPACE { +# define QT_CHARTS_END_NAMESPACE } +# define QT_CHARTS_USE_NAMESPACE using namespace QT_CHARTS_NAMESPACE; +#else +# define QT_CHARTS_BEGIN_NAMESPACE +# define QT_CHARTS_END_NAMESPACE +# define QT_CHARTS_USE_NAMESPACE +#endif + +// Make sure we have used the namespace at least once to avoid compile errors when including +// the QtCharts umbrella header. +QT_CHARTS_BEGIN_NAMESPACE +QT_CHARTS_END_NAMESPACE + +/* + On Windows min and max conflict with standard macros +*/ +#ifdef Q_OS_WIN +#ifndef NOMINMAX +#define NOMINMAX +#endif +#endif + +#endif // QCHARTGLOBAL_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qchartview.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qchartview.h new file mode 100644 index 0000000..1cf719b --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qchartview.h @@ -0,0 +1,86 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QCHARTVIEW_H +#define QCHARTVIEW_H + +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE +class QGraphicsScene; +class QRubberBand; +QT_END_NAMESPACE + +QT_CHARTS_BEGIN_NAMESPACE + +class QChartViewPrivate; + +class QT_CHARTS_EXPORT QChartView : public QGraphicsView +{ + Q_OBJECT + Q_ENUMS(RubberBand) +public: + + enum RubberBand { + NoRubberBand = 0x0, + VerticalRubberBand = 0x1, + HorizontalRubberBand = 0x2, + RectangleRubberBand = 0x3 + }; + + Q_DECLARE_FLAGS(RubberBands, RubberBand) + + explicit QChartView(QWidget *parent = nullptr); + explicit QChartView(QChart *chart, QWidget *parent = nullptr); + ~QChartView(); + + void setRubberBand(const RubberBands &rubberBands); + RubberBands rubberBand() const; + + QChart *chart() const; + void setChart(QChart *chart); + +protected: + void resizeEvent(QResizeEvent *event); + void mousePressEvent(QMouseEvent *event); + void mouseMoveEvent(QMouseEvent *event); + void mouseReleaseEvent(QMouseEvent *event); + + QScopedPointer d_ptr; + +private: + Q_DISABLE_COPY(QChartView) +}; + +QT_CHARTS_END_NAMESPACE + +#endif // QCHARTVIEW_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qdatetimeaxis.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qdatetimeaxis.h new file mode 100644 index 0000000..9894294 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qdatetimeaxis.h @@ -0,0 +1,89 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QDATETIMEAXIS_H +#define QDATETIMEAXIS_H + +#include + +QT_BEGIN_NAMESPACE +class QDateTime; +QT_END_NAMESPACE + +QT_CHARTS_BEGIN_NAMESPACE + +class QDateTimeAxisPrivate; + +class QT_CHARTS_EXPORT QDateTimeAxis : public QAbstractAxis +{ + Q_OBJECT + Q_PROPERTY(int tickCount READ tickCount WRITE setTickCount NOTIFY tickCountChanged) + Q_PROPERTY(QDateTime min READ min WRITE setMin NOTIFY minChanged) + Q_PROPERTY(QDateTime max READ max WRITE setMax NOTIFY maxChanged) + Q_PROPERTY(QString format READ format WRITE setFormat NOTIFY formatChanged) + +public: + explicit QDateTimeAxis(QObject *parent = nullptr); + ~QDateTimeAxis(); + +protected: + QDateTimeAxis(QDateTimeAxisPrivate &d, QObject *parent = nullptr); + +public: + AxisType type() const; + + //range handling + void setMin(QDateTime min); + QDateTime min() const; + void setMax(QDateTime max); + QDateTime max() const; + void setRange(QDateTime min, QDateTime max); + + void setFormat(QString format); + QString format() const; + + //ticks handling + void setTickCount(int count); + int tickCount() const; + +Q_SIGNALS: + void minChanged(QDateTime min); + void maxChanged(QDateTime max); + void rangeChanged(QDateTime min, QDateTime max); + void formatChanged(QString format); + void tickCountChanged(int tick); + +private: + Q_DECLARE_PRIVATE(QDateTimeAxis) + Q_DISABLE_COPY(QDateTimeAxis) +}; + +QT_CHARTS_END_NAMESPACE + +#endif // QDATETIMEAXIS_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qhbarmodelmapper.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qhbarmodelmapper.h new file mode 100644 index 0000000..7639ed6 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qhbarmodelmapper.h @@ -0,0 +1,79 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QHBARMODELMAPPER_H +#define QHBARMODELMAPPER_H + +#include + +QT_CHARTS_BEGIN_NAMESPACE +/* Comment line for syncqt to generate the fwd-include correctly, due to QTBUG-22432 */ +class QT_CHARTS_EXPORT QHBarModelMapper : public QBarModelMapper +{ + Q_OBJECT + Q_PROPERTY(QtCharts::QAbstractBarSeries *series READ series WRITE setSeries NOTIFY seriesReplaced) + Q_PROPERTY(QAbstractItemModel *model READ model WRITE setModel NOTIFY modelReplaced) + Q_PROPERTY(int firstBarSetRow READ firstBarSetRow WRITE setFirstBarSetRow NOTIFY firstBarSetRowChanged) + Q_PROPERTY(int lastBarSetRow READ lastBarSetRow WRITE setLastBarSetRow NOTIFY lastBarSetRowChanged) + Q_PROPERTY(int firstColumn READ firstColumn WRITE setFirstColumn NOTIFY firstColumnChanged) + Q_PROPERTY(int columnCount READ columnCount WRITE setColumnCount NOTIFY columnCountChanged) + +public: + explicit QHBarModelMapper(QObject *parent = nullptr); + + QAbstractItemModel *model() const; + void setModel(QAbstractItemModel *model); + + QAbstractBarSeries *series() const; + void setSeries(QAbstractBarSeries *series); + + int firstBarSetRow() const; + void setFirstBarSetRow(int firstBarSetRow); + + int lastBarSetRow() const; + void setLastBarSetRow(int lastBarSetRow); + + int firstColumn() const; + void setFirstColumn(int firstColumn); + + int columnCount() const; + void setColumnCount(int columnCount); + +Q_SIGNALS: + void seriesReplaced(); + void modelReplaced(); + void firstBarSetRowChanged(); + void lastBarSetRowChanged(); + void firstColumnChanged(); + void columnCountChanged(); +}; + +QT_CHARTS_END_NAMESPACE + +#endif // QHBARMODELMAPPER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qhboxplotmodelmapper.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qhboxplotmodelmapper.h new file mode 100644 index 0000000..8ed690d --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qhboxplotmodelmapper.h @@ -0,0 +1,80 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Copyright (C) 2016 Klaralvdalens Datakonsult AB (KDAB). +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QHBOXPLOTMODELMAPPER_H +#define QHBOXPLOTMODELMAPPER_H + +#include + +QT_CHARTS_BEGIN_NAMESPACE +/* Comment line for syncqt to generate the fwd-include correctly, due to QTBUG-22432 */ +class QT_CHARTS_EXPORT QHBoxPlotModelMapper : public QBoxPlotModelMapper +{ + Q_OBJECT + Q_PROPERTY(QtCharts::QBoxPlotSeries *series READ series WRITE setSeries NOTIFY seriesReplaced) + Q_PROPERTY(QAbstractItemModel *model READ model WRITE setModel NOTIFY modelReplaced) + Q_PROPERTY(int firstBoxSetRow READ firstBoxSetRow WRITE setFirstBoxSetRow NOTIFY firstBoxSetRowChanged) + Q_PROPERTY(int lastBoxSetRow READ lastBoxSetRow WRITE setLastBoxSetRow NOTIFY lastBoxSetRowChanged) + Q_PROPERTY(int firstColumn READ firstColumn WRITE setFirstColumn NOTIFY firstColumnChanged) + Q_PROPERTY(int columnCount READ columnCount WRITE setColumnCount NOTIFY columnCountChanged) + +public: + explicit QHBoxPlotModelMapper(QObject *parent = nullptr); + + QAbstractItemModel *model() const; + void setModel(QAbstractItemModel *model); + + QBoxPlotSeries *series() const; + void setSeries(QBoxPlotSeries *series); + + int firstBoxSetRow() const; + void setFirstBoxSetRow(int firstBoxSetRow); + + int lastBoxSetRow() const; + void setLastBoxSetRow(int lastBoxSetRow); + + int firstColumn() const; + void setFirstColumn(int firstColumn); + + int columnCount() const; + void setColumnCount(int rowCount); + +Q_SIGNALS: + void seriesReplaced(); + void modelReplaced(); + void firstBoxSetRowChanged(); + void lastBoxSetRowChanged(); + void firstColumnChanged(); + void columnCountChanged(); +}; + +QT_CHARTS_END_NAMESPACE + +#endif // QHBOXPLOTMODELMAPPER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qhcandlestickmodelmapper.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qhcandlestickmodelmapper.h new file mode 100644 index 0000000..8bfa835 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qhcandlestickmodelmapper.h @@ -0,0 +1,86 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QHCANDLESTICKMODELMAPPER_H +#define QHCANDLESTICKMODELMAPPER_H + +#include + +QT_CHARTS_BEGIN_NAMESPACE +/* Comment line for syncqt to generate the fwd-include correctly, due to QTBUG-22432 */ +class QT_CHARTS_EXPORT QHCandlestickModelMapper : public QCandlestickModelMapper +{ + Q_OBJECT + Q_PROPERTY(int timestampColumn READ timestampColumn WRITE setTimestampColumn NOTIFY timestampColumnChanged) + Q_PROPERTY(int openColumn READ openColumn WRITE setOpenColumn NOTIFY openColumnChanged) + Q_PROPERTY(int highColumn READ highColumn WRITE setHighColumn NOTIFY highColumnChanged) + Q_PROPERTY(int lowColumn READ lowColumn WRITE setLowColumn NOTIFY lowColumnChanged) + Q_PROPERTY(int closeColumn READ closeColumn WRITE setCloseColumn NOTIFY closeColumnChanged) + Q_PROPERTY(int firstSetRow READ firstSetRow WRITE setFirstSetRow NOTIFY firstSetRowChanged) + Q_PROPERTY(int lastSetRow READ lastSetRow WRITE setLastSetRow NOTIFY lastSetRowChanged) + +public: + explicit QHCandlestickModelMapper(QObject *parent = nullptr); + + Qt::Orientation orientation() const; + + void setTimestampColumn(int timestampColumn); + int timestampColumn() const; + + void setOpenColumn(int openColumn); + int openColumn() const; + + void setHighColumn(int highColumn); + int highColumn() const; + + void setLowColumn(int lowColumn); + int lowColumn() const; + + void setCloseColumn(int closeColumn); + int closeColumn() const; + + void setFirstSetRow(int firstSetRow); + int firstSetRow() const; + + void setLastSetRow(int lastSetRow); + int lastSetRow() const; + +Q_SIGNALS: + void timestampColumnChanged(); + void openColumnChanged(); + void highColumnChanged(); + void lowColumnChanged(); + void closeColumnChanged(); + void firstSetRowChanged(); + void lastSetRowChanged(); +}; + +QT_CHARTS_END_NAMESPACE + +#endif // QHCANDLESTICKMODELMAPPER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qhorizontalbarseries.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qhorizontalbarseries.h new file mode 100644 index 0000000..c3d07e0 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qhorizontalbarseries.h @@ -0,0 +1,54 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QHORIZONTALBARSERIES_H +#define QHORIZONTALBARSERIES_H + +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QHorizontalBarSeriesPrivate; + +class QT_CHARTS_EXPORT QHorizontalBarSeries : public QAbstractBarSeries +{ + Q_OBJECT +public: + explicit QHorizontalBarSeries(QObject *parent = nullptr); + ~QHorizontalBarSeries(); + QAbstractSeries::SeriesType type() const; + +private: + Q_DECLARE_PRIVATE(QHorizontalBarSeries) + Q_DISABLE_COPY(QHorizontalBarSeries) +}; + +QT_CHARTS_END_NAMESPACE + +#endif // QHORIZONTALBARSERIES_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qhorizontalpercentbarseries.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qhorizontalpercentbarseries.h new file mode 100644 index 0000000..5c78b02 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qhorizontalpercentbarseries.h @@ -0,0 +1,54 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QHORIZONTALPERCENTBARSERIES_H +#define QHORIZONTALPERCENTBARSERIES_H + +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QHorizontalPercentBarSeriesPrivate; + +class QT_CHARTS_EXPORT QHorizontalPercentBarSeries : public QAbstractBarSeries +{ + Q_OBJECT +public: + explicit QHorizontalPercentBarSeries(QObject *parent = nullptr); + ~QHorizontalPercentBarSeries(); + QAbstractSeries::SeriesType type() const; + +private: + Q_DECLARE_PRIVATE(QHorizontalPercentBarSeries) + Q_DISABLE_COPY(QHorizontalPercentBarSeries) +}; + +QT_CHARTS_END_NAMESPACE + +#endif // QHORIZONTALPERCENTBARSERIES_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qhorizontalstackedbarseries.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qhorizontalstackedbarseries.h new file mode 100644 index 0000000..9f94426 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qhorizontalstackedbarseries.h @@ -0,0 +1,54 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QHORIZONTALSTACKEDBARSERIES_H +#define QHORIZONTALSTACKEDBARSERIES_H + +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QHorizontalStackedBarSeriesPrivate; + +class QT_CHARTS_EXPORT QHorizontalStackedBarSeries : public QAbstractBarSeries +{ + Q_OBJECT +public: + explicit QHorizontalStackedBarSeries(QObject *parent = nullptr); + ~QHorizontalStackedBarSeries(); + QAbstractSeries::SeriesType type() const; + +private: + Q_DECLARE_PRIVATE(QHorizontalStackedBarSeries) + Q_DISABLE_COPY(QHorizontalStackedBarSeries) +}; + +QT_CHARTS_END_NAMESPACE + +#endif // QHORIZONTALSTACKEDBARSERIES_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qhpiemodelmapper.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qhpiemodelmapper.h new file mode 100644 index 0000000..aa25b9e --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qhpiemodelmapper.h @@ -0,0 +1,79 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QHPIEMODELMAPPER_H +#define QHPIEMODELMAPPER_H + +#include + +QT_CHARTS_BEGIN_NAMESPACE +/* Comment line for syncqt to generate the fwd-include correctly, due to QTBUG-22432 */ +class QT_CHARTS_EXPORT QHPieModelMapper : public QPieModelMapper +{ + Q_OBJECT + Q_PROPERTY(QtCharts::QPieSeries *series READ series WRITE setSeries NOTIFY seriesReplaced) + Q_PROPERTY(QAbstractItemModel *model READ model WRITE setModel NOTIFY modelReplaced) + Q_PROPERTY(int valuesRow READ valuesRow WRITE setValuesRow NOTIFY valuesRowChanged) + Q_PROPERTY(int labelsRow READ labelsRow WRITE setLabelsRow NOTIFY labelsRowChanged) + Q_PROPERTY(int firstColumn READ firstColumn WRITE setFirstColumn NOTIFY firstColumnChanged) + Q_PROPERTY(int columnCount READ columnCount WRITE setColumnCount NOTIFY columnCountChanged) + +public: + explicit QHPieModelMapper(QObject *parent = nullptr); + + QAbstractItemModel *model() const; + void setModel(QAbstractItemModel *model); + + QPieSeries *series() const; + void setSeries(QPieSeries *series); + + int valuesRow() const; + void setValuesRow(int valuesRow); + + int labelsRow() const; + void setLabelsRow(int labelsRow); + + int firstColumn() const; + void setFirstColumn(int firstColumn); + + int columnCount() const; + void setColumnCount(int columnCount); + +Q_SIGNALS: + void seriesReplaced(); + void modelReplaced(); + void valuesRowChanged(); + void labelsRowChanged(); + void firstColumnChanged(); + void columnCountChanged(); +}; + +QT_CHARTS_END_NAMESPACE + +#endif // QHPIEMODELMAPPER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qhxymodelmapper.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qhxymodelmapper.h new file mode 100644 index 0000000..15d80df --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qhxymodelmapper.h @@ -0,0 +1,79 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QHXYMODELMAPPER_H +#define QHXYMODELMAPPER_H + +#include + +QT_CHARTS_BEGIN_NAMESPACE +/* Comment line for syncqt to generate the fwd-include correctly, due to QTBUG-22432 */ +class QT_CHARTS_EXPORT QHXYModelMapper : public QXYModelMapper +{ + Q_OBJECT + Q_PROPERTY(QtCharts::QXYSeries *series READ series WRITE setSeries NOTIFY seriesReplaced) + Q_PROPERTY(QAbstractItemModel *model READ model WRITE setModel NOTIFY modelReplaced) + Q_PROPERTY(int xRow READ xRow WRITE setXRow NOTIFY xRowChanged) + Q_PROPERTY(int yRow READ yRow WRITE setYRow NOTIFY yRowChanged) + Q_PROPERTY(int firstColumn READ firstColumn WRITE setFirstColumn NOTIFY firstColumnChanged) + Q_PROPERTY(int columnCount READ columnCount WRITE setColumnCount NOTIFY columnCountChanged) + +public: + explicit QHXYModelMapper(QObject *parent = nullptr); + + QAbstractItemModel *model() const; + void setModel(QAbstractItemModel *model); + + QXYSeries *series() const; + void setSeries(QXYSeries *series); + + int xRow() const; + void setXRow(int xRow); + + int yRow() const; + void setYRow(int yRow); + + int firstColumn() const; + void setFirstColumn(int firstColumn); + + int columnCount() const; + void setColumnCount(int columnCount); + +Q_SIGNALS: + void seriesReplaced(); + void modelReplaced(); + void xRowChanged(); + void yRowChanged(); + void firstColumnChanged(); + void columnCountChanged(); +}; + +QT_CHARTS_END_NAMESPACE + +#endif // QHXYMODELMAPPER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qlegend.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qlegend.h new file mode 100644 index 0000000..7b5b3a2 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qlegend.h @@ -0,0 +1,139 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QLEGEND_H +#define QLEGEND_H + +#include +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QChart; +class QLegendPrivate; +class QLegendMarker; +class QAbstractSeries; + +class QT_CHARTS_EXPORT QLegend : public QGraphicsWidget +{ + Q_OBJECT + Q_PROPERTY(Qt::Alignment alignment READ alignment WRITE setAlignment) + Q_PROPERTY(bool backgroundVisible READ isBackgroundVisible WRITE setBackgroundVisible NOTIFY backgroundVisibleChanged) + Q_PROPERTY(QColor color READ color WRITE setColor NOTIFY colorChanged) + Q_PROPERTY(QColor borderColor READ borderColor WRITE setBorderColor NOTIFY borderColorChanged) + Q_PROPERTY(QFont font READ font WRITE setFont NOTIFY fontChanged) + Q_PROPERTY(QColor labelColor READ labelColor WRITE setLabelColor NOTIFY labelColorChanged) + Q_PROPERTY(bool reverseMarkers READ reverseMarkers WRITE setReverseMarkers NOTIFY reverseMarkersChanged) + Q_PROPERTY(bool showToolTips READ showToolTips WRITE setShowToolTips NOTIFY showToolTipsChanged) + Q_PROPERTY(MarkerShape markerShape READ markerShape WRITE setMarkerShape NOTIFY markerShapeChanged) + +private: + explicit QLegend(QChart *chart); + +public: + enum MarkerShape { + MarkerShapeDefault, + MarkerShapeRectangle, + MarkerShapeCircle, + MarkerShapeFromSeries + }; + Q_ENUMS(MarkerShape) + + ~QLegend(); + + void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget = nullptr); + + void setBrush(const QBrush &brush); + QBrush brush() const; + void setColor(QColor color); + QColor color(); + + void setPen(const QPen &pen); + QPen pen() const; + void setBorderColor(QColor color); + QColor borderColor(); + + void setFont(const QFont &font); + QFont font() const; + void setLabelBrush(const QBrush &brush); + QBrush labelBrush() const; + + void setLabelColor(QColor color); + QColor labelColor() const; + + void setAlignment(Qt::Alignment alignment); + Qt::Alignment alignment() const; + + void detachFromChart(); + void attachToChart(); + bool isAttachedToChart(); + + void setBackgroundVisible(bool visible = true); + bool isBackgroundVisible() const; + + QList markers(QAbstractSeries *series = nullptr) const; + + bool reverseMarkers(); + void setReverseMarkers(bool reverseMarkers = true); + + bool showToolTips() const; + void setShowToolTips(bool show); + + MarkerShape markerShape() const; + void setMarkerShape(MarkerShape shape); + +protected: + void hideEvent(QHideEvent *event); + void showEvent(QShowEvent *event); + +Q_SIGNALS: + void backgroundVisibleChanged(bool visible); + void colorChanged(QColor color); + void borderColorChanged(QColor color); + void fontChanged(QFont font); + void labelColorChanged(QColor color); + void reverseMarkersChanged(bool reverseMarkers); + void showToolTipsChanged(bool showToolTips); + void markerShapeChanged(MarkerShape shape); + +private: + QScopedPointer d_ptr; + Q_DISABLE_COPY(QLegend) + friend class LegendScroller; + friend class LegendLayout; + friend class ChartLayout; + friend class LegendMarkerItem; + friend class QLegendMarkerPrivate; +}; + +QT_CHARTS_END_NAMESPACE + +#endif // QLEGEND_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qlegendmarker.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qlegendmarker.h new file mode 100644 index 0000000..a3db411 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qlegendmarker.h @@ -0,0 +1,123 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QLEGENDMARKER_H +#define QLEGENDMARKER_H + +#include +#include +#include +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QLegendMarkerPrivate; +class QAbstractSeries; +class QLegend; + +class QT_CHARTS_EXPORT QLegendMarker : public QObject +{ + Q_OBJECT + +public: + enum LegendMarkerType { + LegendMarkerTypeArea, + LegendMarkerTypeBar, + LegendMarkerTypePie, + LegendMarkerTypeXY, + LegendMarkerTypeBoxPlot, + LegendMarkerTypeCandlestick + }; + + Q_PROPERTY(QString label READ label WRITE setLabel NOTIFY labelChanged) + Q_PROPERTY(QBrush labelBrush READ labelBrush WRITE setLabelBrush NOTIFY labelBrushChanged) + Q_PROPERTY(QFont font READ font WRITE setFont NOTIFY fontChanged) + Q_PROPERTY(QPen pen READ pen WRITE setPen NOTIFY penChanged) + Q_PROPERTY(QBrush brush READ brush WRITE setBrush NOTIFY brushChanged) + Q_PROPERTY(bool visible READ isVisible WRITE setVisible NOTIFY visibleChanged) + Q_PROPERTY(QtCharts::QLegend::MarkerShape shape READ shape WRITE setShape NOTIFY shapeChanged) + Q_ENUMS(LegendMarkerType) + +public: + virtual ~QLegendMarker(); + virtual LegendMarkerType type() = 0; + + QString label() const; + void setLabel(const QString &label); + + QBrush labelBrush() const; + void setLabelBrush(const QBrush &brush); + + QFont font() const; + void setFont(const QFont &font); + + QPen pen() const; + void setPen(const QPen &pen); + + QBrush brush() const; + void setBrush(const QBrush &brush); + + bool isVisible() const; + void setVisible(bool visible); + + QLegend::MarkerShape shape() const; + void setShape(QLegend::MarkerShape shape); + + virtual QAbstractSeries* series() = 0; + +Q_SIGNALS: + void clicked(); + void hovered(bool status); + void labelChanged(); + void labelBrushChanged(); + void fontChanged(); + void penChanged(); + void brushChanged(); + void visibleChanged(); + void shapeChanged(); + +protected: + explicit QLegendMarker(QLegendMarkerPrivate &d, QObject *parent = nullptr); + + QScopedPointer d_ptr; + friend class QLegendPrivate; + friend class QLegendMarkerPrivate; + friend class LegendMarkerItem; + friend class LegendLayout; + friend class LegendScroller; + +private: + Q_DISABLE_COPY(QLegendMarker) +}; + +QT_CHARTS_END_NAMESPACE + +#endif // QLEGENDMARKER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qlineseries.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qlineseries.h new file mode 100644 index 0000000..654afac --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qlineseries.h @@ -0,0 +1,61 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QLINESERIES_H +#define QLINESERIES_H + +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QLineSeriesPrivate; + +class QT_CHARTS_EXPORT QLineSeries : public QXYSeries +{ + Q_OBJECT + +public: + explicit QLineSeries(QObject *parent = nullptr); + ~QLineSeries(); + QAbstractSeries::SeriesType type() const; + +protected: + QLineSeries(QLineSeriesPrivate &d, QObject *parent = nullptr); + +private: + Q_DECLARE_PRIVATE(QLineSeries) + Q_DISABLE_COPY(QLineSeries) + friend class LineChartItem; +}; + +QT_CHARTS_END_NAMESPACE + +#endif // QLINESERIES_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qlogvalueaxis.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qlogvalueaxis.h new file mode 100644 index 0000000..1ea9f2b --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qlogvalueaxis.h @@ -0,0 +1,97 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QLOGVALUEAXIS_H +#define QLOGVALUEAXIS_H + +#include + +QT_BEGIN_NAMESPACE +class QDateTime; +QT_END_NAMESPACE + +QT_CHARTS_BEGIN_NAMESPACE + +class QLogValueAxisPrivate; + +class QT_CHARTS_EXPORT QLogValueAxis : public QAbstractAxis +{ + Q_OBJECT + Q_PROPERTY(qreal min READ min WRITE setMin NOTIFY minChanged) + Q_PROPERTY(qreal max READ max WRITE setMax NOTIFY maxChanged) + Q_PROPERTY(QString labelFormat READ labelFormat WRITE setLabelFormat NOTIFY labelFormatChanged) + Q_PROPERTY(qreal base READ base WRITE setBase NOTIFY baseChanged) + Q_PROPERTY(int tickCount READ tickCount NOTIFY tickCountChanged) + Q_PROPERTY(int minorTickCount READ minorTickCount WRITE setMinorTickCount NOTIFY minorTickCountChanged) + +public: + explicit QLogValueAxis(QObject *parent = nullptr); + ~QLogValueAxis(); + +protected: + QLogValueAxis(QLogValueAxisPrivate &d, QObject *parent = nullptr); + +public: + AxisType type() const; + + //range handling + void setMin(qreal min); + qreal min() const; + void setMax(qreal max); + qreal max() const; + void setRange(qreal min, qreal max); + + void setLabelFormat(const QString &format); + QString labelFormat() const; + + void setBase(qreal base); + qreal base() const; + + int tickCount() const; + + void setMinorTickCount(int minorTickCount); + int minorTickCount() const; + +Q_SIGNALS: + void minChanged(qreal min); + void maxChanged(qreal max); + void rangeChanged(qreal min, qreal max); + void labelFormatChanged(const QString &format); + void baseChanged(qreal base); + void tickCountChanged(int tickCount); + void minorTickCountChanged(int minorTickCount); + +private: + Q_DECLARE_PRIVATE(QLogValueAxis) + Q_DISABLE_COPY(QLogValueAxis) +}; + +QT_CHARTS_END_NAMESPACE + +#endif // QLOGVALUEAXIS_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qpercentbarseries.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qpercentbarseries.h new file mode 100644 index 0000000..e5545ec --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qpercentbarseries.h @@ -0,0 +1,55 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QPERCENTBARSERIES_H +#define QPERCENTBARSERIES_H + +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QPercentBarSeriesPrivate; + +class QT_CHARTS_EXPORT QPercentBarSeries : public QAbstractBarSeries +{ + Q_OBJECT +public: + explicit QPercentBarSeries(QObject *parent = nullptr); + ~QPercentBarSeries(); + QAbstractSeries::SeriesType type() const; + +private: + Q_DECLARE_PRIVATE(QPercentBarSeries) + Q_DISABLE_COPY(QPercentBarSeries) +}; + +QT_CHARTS_END_NAMESPACE + +#endif // QPERCENTBARSERIES_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qpielegendmarker.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qpielegendmarker.h new file mode 100644 index 0000000..a4a0463 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qpielegendmarker.h @@ -0,0 +1,66 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QPIELEGENDMARKER_H +#define QPIELEGENDMARKER_H + +#include +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QPieLegendMarkerPrivate; + +class QT_CHARTS_EXPORT QPieLegendMarker : public QLegendMarker +{ + Q_OBJECT + +public: + explicit QPieLegendMarker(QPieSeries *series, QPieSlice *slice, QLegend *legend, QObject *parent = nullptr); + virtual ~QPieLegendMarker(); + + virtual LegendMarkerType type() { return LegendMarkerTypePie; } + + // Related series and slice + virtual QPieSeries* series(); + QPieSlice* slice(); + +protected: + QPieLegendMarker(QPieLegendMarkerPrivate &d, QObject *parent = nullptr); + +private: + Q_DECLARE_PRIVATE(QPieLegendMarker) + Q_DISABLE_COPY(QPieLegendMarker) + +}; + +QT_CHARTS_END_NAMESPACE +#endif // QPIELEGENDMARKER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qpiemodelmapper.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qpiemodelmapper.h new file mode 100644 index 0000000..a9b07cf --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qpiemodelmapper.h @@ -0,0 +1,80 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QPIEMODELMAPPER_H +#define QPIEMODELMAPPER_H + +#include +#include + +QT_BEGIN_NAMESPACE +class QAbstractItemModel; +QT_END_NAMESPACE + +QT_CHARTS_BEGIN_NAMESPACE + +class QPieModelMapperPrivate; +class QPieSeries; + +class QT_CHARTS_EXPORT QPieModelMapper : public QObject +{ + Q_OBJECT + +protected: + explicit QPieModelMapper(QObject *parent = nullptr); + + QAbstractItemModel *model() const; + void setModel(QAbstractItemModel *model); + + QPieSeries *series() const; + void setSeries(QPieSeries *series); + + int first() const; + void setFirst(int first); + + int count() const; + void setCount(int count); + + int valuesSection() const; + void setValuesSection(int valuesSection); + + int labelsSection() const; + void setLabelsSection(int labelsSection); + + Qt::Orientation orientation() const; + void setOrientation(Qt::Orientation orientation); + +protected: + QPieModelMapperPrivate * const d_ptr; + Q_DECLARE_PRIVATE(QPieModelMapper) +}; + +QT_CHARTS_END_NAMESPACE + +#endif // QPIEMODELMAPPER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qpieseries.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qpieseries.h new file mode 100644 index 0000000..34d3b6c --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qpieseries.h @@ -0,0 +1,115 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QPIESERIES_H +#define QPIESERIES_H + +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE +class QPieSeriesPrivate; + +class QT_CHARTS_EXPORT QPieSeries : public QAbstractSeries +{ + Q_OBJECT + Q_PROPERTY(qreal horizontalPosition READ horizontalPosition WRITE setHorizontalPosition) + Q_PROPERTY(qreal verticalPosition READ verticalPosition WRITE setVerticalPosition) + Q_PROPERTY(qreal size READ pieSize WRITE setPieSize) + Q_PROPERTY(qreal startAngle READ pieStartAngle WRITE setPieStartAngle) + Q_PROPERTY(qreal endAngle READ pieEndAngle WRITE setPieEndAngle) + Q_PROPERTY(int count READ count NOTIFY countChanged) + Q_PROPERTY(qreal sum READ sum NOTIFY sumChanged) + Q_PROPERTY(qreal holeSize READ holeSize WRITE setHoleSize) + +public: + explicit QPieSeries(QObject *parent = nullptr); + virtual ~QPieSeries(); + + QAbstractSeries::SeriesType type() const; + + bool append(QPieSlice *slice); + bool append(QList slices); + QPieSeries &operator << (QPieSlice *slice); + QPieSlice *append(QString label, qreal value); + + bool insert(int index, QPieSlice *slice); + + bool remove(QPieSlice *slice); + bool take(QPieSlice *slice); + void clear(); + + QList slices() const; + int count() const; + + bool isEmpty() const; + + qreal sum() const; + + void setHoleSize(qreal holeSize); + qreal holeSize() const; + + void setHorizontalPosition(qreal relativePosition); + qreal horizontalPosition() const; + + void setVerticalPosition(qreal relativePosition); + qreal verticalPosition() const; + + void setPieSize(qreal relativeSize); + qreal pieSize() const; + + void setPieStartAngle(qreal startAngle); + qreal pieStartAngle() const; + + void setPieEndAngle(qreal endAngle); + qreal pieEndAngle() const; + + void setLabelsVisible(bool visible = true); + void setLabelsPosition(QPieSlice::LabelPosition position); + +Q_SIGNALS: + void added(QList slices); + void removed(QList slices); + void clicked(QPieSlice *slice); + void hovered(QPieSlice *slice, bool state); + void pressed(QPieSlice *slice); + void released(QPieSlice *slice); + void doubleClicked(QPieSlice *slice); + void countChanged(); + void sumChanged(); + +private: + Q_DECLARE_PRIVATE(QPieSeries) + Q_DISABLE_COPY(QPieSeries) + friend class PieChartItem; +}; + +QT_CHARTS_END_NAMESPACE + +#endif // QPIESERIES_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qpieslice.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qpieslice.h new file mode 100644 index 0000000..d508e00 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qpieslice.h @@ -0,0 +1,159 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QPIESLICE_H +#define QPIESLICE_H + +#include +#include +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE +class QPieSlicePrivate; +class QPieSeries; + +class QT_CHARTS_EXPORT QPieSlice : public QObject +{ + Q_OBJECT + Q_ENUMS(LabelPosition) + Q_PROPERTY(QString label READ label WRITE setLabel NOTIFY labelChanged) + Q_PROPERTY(qreal value READ value WRITE setValue NOTIFY valueChanged) + Q_PROPERTY(bool labelVisible READ isLabelVisible WRITE setLabelVisible NOTIFY labelVisibleChanged) + Q_PROPERTY(LabelPosition labelPosition READ labelPosition WRITE setLabelPosition) + Q_PROPERTY(bool exploded READ isExploded WRITE setExploded) + Q_PROPERTY(QPen pen READ pen WRITE setPen NOTIFY penChanged) + Q_PROPERTY(QColor borderColor READ borderColor WRITE setBorderColor NOTIFY borderColorChanged) + Q_PROPERTY(int borderWidth READ borderWidth WRITE setBorderWidth NOTIFY borderWidthChanged) + Q_PROPERTY(QBrush brush READ brush WRITE setBrush NOTIFY brushChanged) + Q_PROPERTY(QColor color READ color WRITE setColor NOTIFY colorChanged) + Q_PROPERTY(QBrush labelBrush READ labelBrush WRITE setLabelBrush NOTIFY labelBrushChanged) + Q_PROPERTY(QColor labelColor READ labelColor WRITE setLabelColor NOTIFY labelColorChanged) + Q_PROPERTY(QFont labelFont READ labelFont WRITE setLabelFont NOTIFY labelFontChanged) + Q_PROPERTY(qreal labelArmLengthFactor READ labelArmLengthFactor WRITE setLabelArmLengthFactor) + Q_PROPERTY(qreal explodeDistanceFactor READ explodeDistanceFactor WRITE setExplodeDistanceFactor) + Q_PROPERTY(qreal percentage READ percentage NOTIFY percentageChanged) + Q_PROPERTY(qreal startAngle READ startAngle NOTIFY startAngleChanged) + Q_PROPERTY(qreal angleSpan READ angleSpan NOTIFY angleSpanChanged) + +public: + enum LabelPosition { + LabelOutside, + LabelInsideHorizontal, + LabelInsideTangential, + LabelInsideNormal + }; + +public: + explicit QPieSlice(QObject *parent = nullptr); + QPieSlice(QString label, qreal value, QObject *parent = nullptr); + virtual ~QPieSlice(); + + void setLabel(QString label); + QString label() const; + + void setValue(qreal value); + qreal value() const; + + void setLabelVisible(bool visible = true); + bool isLabelVisible() const; + + LabelPosition labelPosition(); + void setLabelPosition(LabelPosition position); + + void setExploded(bool exploded = true); + bool isExploded() const; + + void setPen(const QPen &pen); + QPen pen() const; + + QColor borderColor(); + void setBorderColor(QColor color); + + int borderWidth(); + void setBorderWidth(int width); + + void setBrush(const QBrush &brush); + QBrush brush() const; + + QColor color(); + void setColor(QColor color); + + void setLabelBrush(const QBrush &brush); + QBrush labelBrush() const; + + QColor labelColor(); + void setLabelColor(QColor color); + + void setLabelFont(const QFont &font); + QFont labelFont() const; + + void setLabelArmLengthFactor(qreal factor); + qreal labelArmLengthFactor() const; + + void setExplodeDistanceFactor(qreal factor); + qreal explodeDistanceFactor() const; + + qreal percentage() const; + qreal startAngle() const; + qreal angleSpan() const; + + QPieSeries *series() const; + +Q_SIGNALS: + void clicked(); + void hovered(bool state); + void pressed(); + void released(); + void doubleClicked(); + void labelChanged(); + void valueChanged(); + void labelVisibleChanged(); + void penChanged(); + void brushChanged(); + void labelBrushChanged(); + void labelFontChanged(); + void percentageChanged(); + void startAngleChanged(); + void angleSpanChanged(); + void colorChanged(); + void borderColorChanged(); + void borderWidthChanged(); + void labelColorChanged(); + +private: + QPieSlicePrivate * const d_ptr; + Q_DECLARE_PRIVATE(QPieSlice) + Q_DISABLE_COPY(QPieSlice) +}; + +QT_CHARTS_END_NAMESPACE + +#endif // QPIESLICE_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qpolarchart.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qpolarchart.h new file mode 100644 index 0000000..8d3fa28 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qpolarchart.h @@ -0,0 +1,69 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QPOLARCHART_H +#define QPOLARCHART_H + +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QAbstractSeries; +class QAbstractAxis; + +class QT_CHARTS_EXPORT QPolarChart : public QChart +{ + Q_OBJECT + Q_ENUMS(PolarOrientation) + Q_FLAGS(PolarOrientations) + +public: + enum PolarOrientation { + PolarOrientationRadial = 0x1, + PolarOrientationAngular = 0x2 + }; + Q_DECLARE_FLAGS(PolarOrientations, PolarOrientation) + +public: + explicit QPolarChart(QGraphicsItem *parent = nullptr, Qt::WindowFlags wFlags = Qt::WindowFlags()); + ~QPolarChart(); + + void addAxis(QAbstractAxis *axis, PolarOrientation polarOrientation); + + QList axes(PolarOrientations polarOrientation = PolarOrientations(PolarOrientationRadial | PolarOrientationAngular), QAbstractSeries *series = nullptr) const; + + static PolarOrientation axisPolarOrientation(QAbstractAxis *axis); + +private: + Q_DISABLE_COPY(QPolarChart) +}; + +QT_CHARTS_END_NAMESPACE + +#endif // QCHART_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qscatterseries.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qscatterseries.h new file mode 100644 index 0000000..ac3e598 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qscatterseries.h @@ -0,0 +1,86 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QSCATTERSERIES_H +#define QSCATTERSERIES_H + +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QScatterSeriesPrivate; + +class QT_CHARTS_EXPORT QScatterSeries : public QXYSeries +{ + Q_OBJECT + Q_PROPERTY(QColor color READ color WRITE setColor NOTIFY colorChanged) + Q_PROPERTY(QColor borderColor READ borderColor WRITE setBorderColor NOTIFY borderColorChanged) + Q_PROPERTY(MarkerShape markerShape READ markerShape WRITE setMarkerShape NOTIFY markerShapeChanged) + Q_PROPERTY(qreal markerSize READ markerSize WRITE setMarkerSize NOTIFY markerSizeChanged) + Q_PROPERTY(QBrush brush READ brush WRITE setBrush) + Q_ENUMS(MarkerShape) + +public: + enum MarkerShape { + MarkerShapeCircle, + MarkerShapeRectangle + }; + +public: + explicit QScatterSeries(QObject *parent = nullptr); + ~QScatterSeries(); + QAbstractSeries::SeriesType type() const; + void setPen(const QPen &pen); + void setBrush(const QBrush &brush); + QBrush brush() const; + void setColor(const QColor &color); + QColor color() const; + void setBorderColor(const QColor &color); + QColor borderColor() const; + MarkerShape markerShape() const; + void setMarkerShape(MarkerShape shape); + qreal markerSize() const; + void setMarkerSize(qreal size); + +Q_SIGNALS: + void colorChanged(QColor color); + void borderColorChanged(QColor color); + void markerShapeChanged(MarkerShape shape); + void markerSizeChanged(qreal size); + +private: + Q_DECLARE_PRIVATE(QScatterSeries) + Q_DISABLE_COPY(QScatterSeries) + friend class ScatterChartItem; +}; + +QT_CHARTS_END_NAMESPACE + +#endif // QSCATTERSERIES_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qsplineseries.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qsplineseries.h new file mode 100644 index 0000000..35ebcf3 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qsplineseries.h @@ -0,0 +1,60 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QSPLINESERIES_H +#define QSPLINESERIES_H + +#include +#include +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QSplineSeriesPrivate; + +class QT_CHARTS_EXPORT QSplineSeries : public QLineSeries +{ + Q_OBJECT + +public: + explicit QSplineSeries(QObject *parent = nullptr); + ~QSplineSeries(); + QAbstractSeries::SeriesType type() const; + +private: + Q_DECLARE_PRIVATE(QSplineSeries) + Q_DISABLE_COPY(QSplineSeries) + friend class SplineChartItem; +}; + +QT_CHARTS_END_NAMESPACE + +#endif // QSPLINESERIES_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qstackedbarseries.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qstackedbarseries.h new file mode 100644 index 0000000..d603235 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qstackedbarseries.h @@ -0,0 +1,55 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QSTACKEDBARSERIES_H +#define QSTACKEDBARSERIES_H + +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QStackedBarSeriesPrivate; + +class QT_CHARTS_EXPORT QStackedBarSeries : public QAbstractBarSeries +{ + Q_OBJECT +public: + explicit QStackedBarSeries(QObject *parent = nullptr); + ~QStackedBarSeries(); + QAbstractSeries::SeriesType type() const; + +private: + Q_DECLARE_PRIVATE(QStackedBarSeries) + Q_DISABLE_COPY(QStackedBarSeries) +}; + +QT_CHARTS_END_NAMESPACE + +#endif // QSTACKEDBARSERIES_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qtchartsversion.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qtchartsversion.h new file mode 100644 index 0000000..2ab673a --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qtchartsversion.h @@ -0,0 +1,9 @@ +/* This file was generated by syncqt. */ +#ifndef QT_QTCHARTS_VERSION_H +#define QT_QTCHARTS_VERSION_H + +#define QTCHARTS_VERSION_STR "5.12.5" + +#define QTCHARTS_VERSION 0x050C05 + +#endif // QT_QTCHARTS_VERSION_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qvalueaxis.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qvalueaxis.h new file mode 100644 index 0000000..e7bb19f --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qvalueaxis.h @@ -0,0 +1,111 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QVALUEAXIS_H +#define QVALUEAXIS_H + +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QValueAxisPrivate; + +class QT_CHARTS_EXPORT QValueAxis : public QAbstractAxis +{ + Q_OBJECT + Q_PROPERTY(int tickCount READ tickCount WRITE setTickCount NOTIFY tickCountChanged) + Q_PROPERTY(qreal min READ min WRITE setMin NOTIFY minChanged) + Q_PROPERTY(qreal max READ max WRITE setMax NOTIFY maxChanged) + Q_PROPERTY(QString labelFormat READ labelFormat WRITE setLabelFormat NOTIFY labelFormatChanged) + Q_PROPERTY(int minorTickCount READ minorTickCount WRITE setMinorTickCount NOTIFY minorTickCountChanged) + Q_PROPERTY(qreal tickAnchor READ tickAnchor WRITE setTickAnchor NOTIFY tickAnchorChanged REVISION 1) + Q_PROPERTY(qreal tickInterval READ tickInterval WRITE setTickInterval NOTIFY tickIntervalChanged REVISION 1) + Q_PROPERTY(TickType tickType READ tickType WRITE setTickType NOTIFY tickTypeChanged REVISION 1) + Q_ENUMS(TickType) + +public: + enum TickType { + TicksDynamic = 0, + TicksFixed + }; + +public: + explicit QValueAxis(QObject *parent = nullptr); + ~QValueAxis(); + +protected: + QValueAxis(QValueAxisPrivate &d, QObject *parent = nullptr); + +public: + AxisType type() const; + + //range handling + void setMin(qreal min); + qreal min() const; + void setMax(qreal max); + qreal max() const; + void setRange(qreal min, qreal max); + + //ticks handling + void setTickCount(int count); + int tickCount() const; + void setMinorTickCount(int count); + int minorTickCount() const; + void setTickAnchor(qreal anchor); + qreal tickAnchor() const; + void setTickInterval(qreal insterval); + qreal tickInterval() const; + void setTickType(QValueAxis::TickType type); + QValueAxis::TickType tickType() const; + + void setLabelFormat(const QString &format); + QString labelFormat() const; + +public Q_SLOTS: + void applyNiceNumbers(); + +Q_SIGNALS: + void minChanged(qreal min); + void maxChanged(qreal max); + void rangeChanged(qreal min, qreal max); + void tickCountChanged(int tickCount); + void minorTickCountChanged(int tickCount); + void labelFormatChanged(const QString &format); + Q_REVISION(1) void tickIntervalChanged(qreal interval); + Q_REVISION(1) void tickAnchorChanged(qreal anchor); + Q_REVISION(1) void tickTypeChanged(QValueAxis::TickType type); + +private: + Q_DECLARE_PRIVATE(QValueAxis) + Q_DISABLE_COPY(QValueAxis) +}; + +QT_CHARTS_END_NAMESPACE + +#endif // QVALUEAXIS_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qvbarmodelmapper.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qvbarmodelmapper.h new file mode 100644 index 0000000..b859a76 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qvbarmodelmapper.h @@ -0,0 +1,79 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QVBARMODELMAPPER_H +#define QVBARMODELMAPPER_H + +#include + +QT_CHARTS_BEGIN_NAMESPACE +/* Comment line for syncqt to generate the fwd-include correctly, due to QTBUG-22432 */ +class QT_CHARTS_EXPORT QVBarModelMapper : public QBarModelMapper +{ + Q_OBJECT + Q_PROPERTY(QtCharts::QAbstractBarSeries *series READ series WRITE setSeries NOTIFY seriesReplaced) + Q_PROPERTY(QAbstractItemModel *model READ model WRITE setModel NOTIFY modelReplaced) + Q_PROPERTY(int firstBarSetColumn READ firstBarSetColumn WRITE setFirstBarSetColumn NOTIFY firstBarSetColumnChanged) + Q_PROPERTY(int lastBarSetColumn READ lastBarSetColumn WRITE setLastBarSetColumn NOTIFY lastBarSetColumnChanged) + Q_PROPERTY(int firstRow READ firstRow WRITE setFirstRow NOTIFY firstRowChanged) + Q_PROPERTY(int rowCount READ rowCount WRITE setRowCount NOTIFY rowCountChanged) + +public: + explicit QVBarModelMapper(QObject *parent = nullptr); + + QAbstractItemModel *model() const; + void setModel(QAbstractItemModel *model); + + QAbstractBarSeries *series() const; + void setSeries(QAbstractBarSeries *series); + + int firstBarSetColumn() const; + void setFirstBarSetColumn(int firstBarSetColumn); + + int lastBarSetColumn() const; + void setLastBarSetColumn(int lastBarSetColumn); + + int firstRow() const; + void setFirstRow(int firstRow); + + int rowCount() const; + void setRowCount(int rowCount); + +Q_SIGNALS: + void seriesReplaced(); + void modelReplaced(); + void firstBarSetColumnChanged(); + void lastBarSetColumnChanged(); + void firstRowChanged(); + void rowCountChanged(); +}; + +QT_CHARTS_END_NAMESPACE + +#endif // QVBARMODELMAPPER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qvboxplotmodelmapper.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qvboxplotmodelmapper.h new file mode 100644 index 0000000..b6d9b39 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qvboxplotmodelmapper.h @@ -0,0 +1,79 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QVBOXPLOTMODELMAPPER_H +#define QVBOXPLOTMODELMAPPER_H + +#include + +QT_CHARTS_BEGIN_NAMESPACE +/* Comment line for syncqt to generate the fwd-include correctly, due to QTBUG-22432 */ +class QT_CHARTS_EXPORT QVBoxPlotModelMapper : public QBoxPlotModelMapper +{ + Q_OBJECT + Q_PROPERTY(QtCharts::QBoxPlotSeries *series READ series WRITE setSeries NOTIFY seriesReplaced) + Q_PROPERTY(QAbstractItemModel *model READ model WRITE setModel NOTIFY modelReplaced) + Q_PROPERTY(int firstBoxSetColumn READ firstBoxSetColumn WRITE setFirstBoxSetColumn NOTIFY firstBoxSetColumnChanged) + Q_PROPERTY(int lastBoxSetColumn READ lastBoxSetColumn WRITE setLastBoxSetColumn NOTIFY lastBoxSetColumnChanged) + Q_PROPERTY(int firstRow READ firstRow WRITE setFirstRow NOTIFY firstRowChanged) + Q_PROPERTY(int rowCount READ rowCount WRITE setRowCount NOTIFY rowCountChanged) + +public: + explicit QVBoxPlotModelMapper(QObject *parent = nullptr); + + QAbstractItemModel *model() const; + void setModel(QAbstractItemModel *model); + + QBoxPlotSeries *series() const; + void setSeries(QBoxPlotSeries *series); + + int firstBoxSetColumn() const; + void setFirstBoxSetColumn(int firstBoxSetColumn); + + int lastBoxSetColumn() const; + void setLastBoxSetColumn(int lastBoxSetColumn); + + int firstRow() const; + void setFirstRow(int firstRow); + + int rowCount() const; + void setRowCount(int rowCount); + +Q_SIGNALS: + void seriesReplaced(); + void modelReplaced(); + void firstBoxSetColumnChanged(); + void lastBoxSetColumnChanged(); + void firstRowChanged(); + void rowCountChanged(); +}; + +QT_CHARTS_END_NAMESPACE + +#endif // QVBOXPLOTMODELMAPPER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qvcandlestickmodelmapper.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qvcandlestickmodelmapper.h new file mode 100644 index 0000000..3b00747 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qvcandlestickmodelmapper.h @@ -0,0 +1,86 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QVCANDLESTICKMODELMAPPER_H +#define QVCANDLESTICKMODELMAPPER_H + +#include + +QT_CHARTS_BEGIN_NAMESPACE +/* Comment line for syncqt to generate the fwd-include correctly, due to QTBUG-22432 */ +class QT_CHARTS_EXPORT QVCandlestickModelMapper : public QCandlestickModelMapper +{ + Q_OBJECT + Q_PROPERTY(int timestampRow READ timestampRow WRITE setTimestampRow NOTIFY timestampRowChanged) + Q_PROPERTY(int openRow READ openRow WRITE setOpenRow NOTIFY openRowChanged) + Q_PROPERTY(int highRow READ highRow WRITE setHighRow NOTIFY highRowChanged) + Q_PROPERTY(int lowRow READ lowRow WRITE setLowRow NOTIFY lowRowChanged) + Q_PROPERTY(int closeRow READ closeRow WRITE setCloseRow NOTIFY closeRowChanged) + Q_PROPERTY(int firstSetColumn READ firstSetColumn WRITE setFirstSetColumn NOTIFY firstSetColumnChanged) + Q_PROPERTY(int lastSetColumn READ lastSetColumn WRITE setLastSetColumn NOTIFY lastSetColumnChanged) + +public: + explicit QVCandlestickModelMapper(QObject *parent = nullptr); + + Qt::Orientation orientation() const; + + void setTimestampRow(int timestampRow); + int timestampRow() const; + + void setOpenRow(int openRow); + int openRow() const; + + void setHighRow(int highRow); + int highRow() const; + + void setLowRow(int lowRow); + int lowRow() const; + + void setCloseRow(int closeRow); + int closeRow() const; + + void setFirstSetColumn(int firstSetColumn); + int firstSetColumn() const; + + void setLastSetColumn(int lastSetColumn); + int lastSetColumn() const; + +Q_SIGNALS: + void timestampRowChanged(); + void openRowChanged(); + void highRowChanged(); + void lowRowChanged(); + void closeRowChanged(); + void firstSetColumnChanged(); + void lastSetColumnChanged(); +}; + +QT_CHARTS_END_NAMESPACE + +#endif // QVCANDLESTICKMODELMAPPER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qvpiemodelmapper.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qvpiemodelmapper.h new file mode 100644 index 0000000..2a7a5b2 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qvpiemodelmapper.h @@ -0,0 +1,79 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QVPIEMODELMAPPER_H +#define QVPIEMODELMAPPER_H + +#include + +QT_CHARTS_BEGIN_NAMESPACE +/* Comment line for syncqt to generate the fwd-include correctly, due to QTBUG-22432 */ +class QT_CHARTS_EXPORT QVPieModelMapper : public QPieModelMapper +{ + Q_OBJECT + Q_PROPERTY(QtCharts::QPieSeries *series READ series WRITE setSeries NOTIFY seriesReplaced) + Q_PROPERTY(QAbstractItemModel *model READ model WRITE setModel NOTIFY modelReplaced) + Q_PROPERTY(int valuesColumn READ valuesColumn WRITE setValuesColumn NOTIFY valuesColumnChanged) + Q_PROPERTY(int labelsColumn READ labelsColumn WRITE setLabelsColumn NOTIFY labelsColumnChanged) + Q_PROPERTY(int firstRow READ firstRow WRITE setFirstRow NOTIFY firstRowChanged) + Q_PROPERTY(int rowCount READ rowCount WRITE setRowCount NOTIFY rowCountChanged) + +public: + explicit QVPieModelMapper(QObject *parent = nullptr); + + QAbstractItemModel *model() const; + void setModel(QAbstractItemModel *model); + + QPieSeries *series() const; + void setSeries(QPieSeries *series); + + int valuesColumn() const; + void setValuesColumn(int valuesColumn); + + int labelsColumn() const; + void setLabelsColumn(int labelsColumn); + + int firstRow() const; + void setFirstRow(int firstRow); + + int rowCount() const; + void setRowCount(int rowCount); + +Q_SIGNALS: + void seriesReplaced(); + void modelReplaced(); + void valuesColumnChanged(); + void labelsColumnChanged(); + void firstRowChanged(); + void rowCountChanged(); +}; + +QT_CHARTS_END_NAMESPACE + +#endif // QVPIEMODELMAPPER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qvxymodelmapper.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qvxymodelmapper.h new file mode 100644 index 0000000..277cae0 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qvxymodelmapper.h @@ -0,0 +1,79 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QVXYMODELMAPPER_H +#define QVXYMODELMAPPER_H + +#include + +QT_CHARTS_BEGIN_NAMESPACE +/* Comment line for syncqt to generate the fwd-include correctly, due to QTBUG-22432 */ +class QT_CHARTS_EXPORT QVXYModelMapper : public QXYModelMapper +{ + Q_OBJECT + Q_PROPERTY(QtCharts::QXYSeries *series READ series WRITE setSeries NOTIFY seriesReplaced) + Q_PROPERTY(QAbstractItemModel *model READ model WRITE setModel NOTIFY modelReplaced) + Q_PROPERTY(int xColumn READ xColumn WRITE setXColumn NOTIFY xColumnChanged) + Q_PROPERTY(int yColumn READ yColumn WRITE setYColumn NOTIFY yColumnChanged) + Q_PROPERTY(int firstRow READ firstRow WRITE setFirstRow NOTIFY firstRowChanged) + Q_PROPERTY(int rowCount READ rowCount WRITE setRowCount NOTIFY rowCountChanged) + +public: + explicit QVXYModelMapper(QObject *parent = nullptr); + + QAbstractItemModel *model() const; + void setModel(QAbstractItemModel *model); + + QXYSeries *series() const; + void setSeries(QXYSeries *series); + + int xColumn() const; + void setXColumn(int xColumn); + + int yColumn() const; + void setYColumn(int yColumn); + + int firstRow() const; + void setFirstRow(int firstRow); + + int rowCount() const; + void setRowCount(int rowCount); + +Q_SIGNALS: + void seriesReplaced(); + void modelReplaced(); + void xColumnChanged(); + void yColumnChanged(); + void firstRowChanged(); + void rowCountChanged(); +}; + +QT_CHARTS_END_NAMESPACE + +#endif // QVXYMODELMAPPER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qxylegendmarker.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qxylegendmarker.h new file mode 100644 index 0000000..0a71442 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qxylegendmarker.h @@ -0,0 +1,64 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QXYLEGENDMARKER_H +#define QXYLEGENDMARKER_H + +#include +#include +#include + +QT_CHARTS_BEGIN_NAMESPACE + +class QXYLegendMarkerPrivate; + +class QT_CHARTS_EXPORT QXYLegendMarker : public QLegendMarker +{ + Q_OBJECT +public: + explicit QXYLegendMarker(QXYSeries *series, QLegend *legend, QObject *parent = nullptr); + virtual ~QXYLegendMarker(); + + virtual LegendMarkerType type() { return LegendMarkerTypeXY; } + + // Related series + virtual QXYSeries* series(); + +protected: + QXYLegendMarker(QXYLegendMarkerPrivate &d, QObject *parent = nullptr); + +private: + Q_DECLARE_PRIVATE(QXYLegendMarker) + Q_DISABLE_COPY(QXYLegendMarker) + +}; + +QT_CHARTS_END_NAMESPACE + +#endif // QXYLEGENDMARKER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qxymodelmapper.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qxymodelmapper.h new file mode 100644 index 0000000..c7d5328 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qxymodelmapper.h @@ -0,0 +1,80 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QXYMODELMAPPER_H +#define QXYMODELMAPPER_H + +#include +#include + +QT_BEGIN_NAMESPACE +class QAbstractItemModel; +QT_END_NAMESPACE + +QT_CHARTS_BEGIN_NAMESPACE + +class QXYModelMapperPrivate; +class QXYSeries; + +class QT_CHARTS_EXPORT QXYModelMapper : public QObject +{ + Q_OBJECT + +protected: + explicit QXYModelMapper(QObject *parent = nullptr); + + QAbstractItemModel *model() const; + void setModel(QAbstractItemModel *model); + + QXYSeries *series() const; + void setSeries(QXYSeries *series); + + int first() const; + void setFirst(int first); + + int count() const; + void setCount(int count); + + Qt::Orientation orientation() const; + void setOrientation(Qt::Orientation orientation); + + int xSection() const; + void setXSection(int xSection); + + int ySection() const; + void setYSection(int ySection); + +protected: + QXYModelMapperPrivate *const d_ptr; + Q_DECLARE_PRIVATE(QXYModelMapper) +}; + +QT_CHARTS_END_NAMESPACE + +#endif // QXYMODELMAPPER_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qxyseries.h b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qxyseries.h new file mode 100644 index 0000000..f81161f --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtCharts/qxyseries.h @@ -0,0 +1,144 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Charts module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QXYSERIES_H +#define QXYSERIES_H + +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE +class QModelIndex; +QT_END_NAMESPACE + +QT_CHARTS_BEGIN_NAMESPACE + +class QXYSeriesPrivate; +class QXYModelMapper; + +class QT_CHARTS_EXPORT QXYSeries : public QAbstractSeries +{ + Q_OBJECT + Q_PROPERTY(bool pointsVisible READ pointsVisible WRITE setPointsVisible) + Q_PROPERTY(QColor color READ color WRITE setColor NOTIFY colorChanged) + Q_PROPERTY(QString pointLabelsFormat READ pointLabelsFormat WRITE setPointLabelsFormat NOTIFY pointLabelsFormatChanged) + Q_PROPERTY(bool pointLabelsVisible READ pointLabelsVisible WRITE setPointLabelsVisible NOTIFY pointLabelsVisibilityChanged) + Q_PROPERTY(QFont pointLabelsFont READ pointLabelsFont WRITE setPointLabelsFont NOTIFY pointLabelsFontChanged) + Q_PROPERTY(QColor pointLabelsColor READ pointLabelsColor WRITE setPointLabelsColor NOTIFY pointLabelsColorChanged) + Q_PROPERTY(bool pointLabelsClipping READ pointLabelsClipping WRITE setPointLabelsClipping NOTIFY pointLabelsClippingChanged) + +protected: + explicit QXYSeries(QXYSeriesPrivate &d, QObject *parent = nullptr); + +public: + ~QXYSeries(); + void append(qreal x, qreal y); + void append(const QPointF &point); + void append(const QList &points); + void replace(qreal oldX, qreal oldY, qreal newX, qreal newY); + void replace(const QPointF &oldPoint, const QPointF &newPoint); + void replace(int index, qreal newX, qreal newY); + void replace(int index, const QPointF &newPoint); + void remove(qreal x, qreal y); + void remove(const QPointF &point); + void remove(int index); + void removePoints(int index, int count); + void insert(int index, const QPointF &point); + void clear(); + + int count() const; + QList points() const; + QVector pointsVector() const; + const QPointF &at(int index) const; + + QXYSeries &operator << (const QPointF &point); + QXYSeries &operator << (const QList &points); + + virtual void setPen(const QPen &pen); + QPen pen() const; + + virtual void setBrush(const QBrush &brush); + QBrush brush() const; + + virtual void setColor(const QColor &color); + virtual QColor color() const; + + void setPointsVisible(bool visible = true); + bool pointsVisible() const; + + void setPointLabelsFormat(const QString &format); + QString pointLabelsFormat() const; + + void setPointLabelsVisible(bool visible = true); + bool pointLabelsVisible() const; + + void setPointLabelsFont(const QFont &font); + QFont pointLabelsFont() const; + + void setPointLabelsColor(const QColor &color); + QColor pointLabelsColor() const; + + void setPointLabelsClipping(bool enabled = true); + bool pointLabelsClipping() const; + + void replace(QList points); + void replace(QVector points); + +Q_SIGNALS: + void clicked(const QPointF &point); + void hovered(const QPointF &point, bool state); + void pressed(const QPointF &point); + void released(const QPointF &point); + void doubleClicked(const QPointF &point); + void pointReplaced(int index); + void pointRemoved(int index); + void pointAdded(int index); + void colorChanged(QColor color); + void pointsReplaced(); + void pointLabelsFormatChanged(const QString &format); + void pointLabelsVisibilityChanged(bool visible); + void pointLabelsFontChanged(const QFont &font); + void pointLabelsColorChanged(const QColor &color); + void pointLabelsClippingChanged(bool clipping); + void pointsRemoved(int index, int count); + void penChanged(const QPen &pen); + +private: + Q_DECLARE_PRIVATE(QXYSeries) + Q_DISABLE_COPY(QXYSeries) + friend class QXYLegendMarkerPrivate; + friend class XYLegendMarker; + friend class XYChart; +}; + +QT_CHARTS_END_NAMESPACE + +#endif // QXYSERIES_H diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtConcurrent/QtConcurrent b/debian/usr/local/qt5raspi-5.12.5/include/QtConcurrent/QtConcurrent new file mode 100644 index 0000000..d86ef51 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtConcurrent/QtConcurrent @@ -0,0 +1,21 @@ +#ifndef QT_QTCONCURRENT_MODULE_H +#define QT_QTCONCURRENT_MODULE_H +#include +#include "qtconcurrentcompilertest.h" +#if QT_CONFIG(concurrent) +#include "qtconcurrentexception.h" +#endif +#include "qtconcurrentfilter.h" +#include "qtconcurrentfilterkernel.h" +#include "qtconcurrentfunctionwrappers.h" +#include "qtconcurrentiteratekernel.h" +#include "qtconcurrentmap.h" +#include "qtconcurrentmapkernel.h" +#include "qtconcurrentmedian.h" +#include "qtconcurrentreducekernel.h" +#include "qtconcurrentrun.h" +#include "qtconcurrentrunbase.h" +#include "qtconcurrentstoredfunctioncall.h" +#include "qtconcurrentthreadengine.h" +#include "qtconcurrentversion.h" +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtConcurrent/QtConcurrentDepends b/debian/usr/local/qt5raspi-5.12.5/include/QtConcurrent/QtConcurrentDepends new file mode 100644 index 0000000..1fba8ab --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtConcurrent/QtConcurrentDepends @@ -0,0 +1,4 @@ +/* This file was generated by qmake with the info from /src/concurrent/concurrent.pro. */ +#ifdef __cplusplus /* create empty PCH in C mode */ +#include +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtConcurrent/QtConcurrentFilter b/debian/usr/local/qt5raspi-5.12.5/include/QtConcurrent/QtConcurrentFilter new file mode 100644 index 0000000..a2c44c6 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtConcurrent/QtConcurrentFilter @@ -0,0 +1 @@ +#include "qtconcurrentfilter.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtConcurrent/QtConcurrentMap b/debian/usr/local/qt5raspi-5.12.5/include/QtConcurrent/QtConcurrentMap new file mode 100644 index 0000000..931e66e --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtConcurrent/QtConcurrentMap @@ -0,0 +1 @@ +#include "qtconcurrentmap.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtConcurrent/QtConcurrentRun b/debian/usr/local/qt5raspi-5.12.5/include/QtConcurrent/QtConcurrentRun new file mode 100644 index 0000000..81512fd --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtConcurrent/QtConcurrentRun @@ -0,0 +1 @@ +#include "qtconcurrentrun.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtConcurrent/QtConcurrentVersion b/debian/usr/local/qt5raspi-5.12.5/include/QtConcurrent/QtConcurrentVersion new file mode 100644 index 0000000..b521e3f --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtConcurrent/QtConcurrentVersion @@ -0,0 +1 @@ +#include "qtconcurrentversion.h" diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtConcurrent/qtconcurrent_global.h b/debian/usr/local/qt5raspi-5.12.5/include/QtConcurrent/qtconcurrent_global.h new file mode 100644 index 0000000..83c6028 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtConcurrent/qtconcurrent_global.h @@ -0,0 +1,59 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtConcurrent module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QTCONCURRENT_GLOBAL_H +#define QTCONCURRENT_GLOBAL_H + +#include + +QT_BEGIN_NAMESPACE + +#ifndef QT_STATIC +# if defined(QT_BUILD_CONCURRENT_LIB) +# define Q_CONCURRENT_EXPORT Q_DECL_EXPORT +# else +# define Q_CONCURRENT_EXPORT Q_DECL_IMPORT +# endif +#else +# define Q_CONCURRENT_EXPORT +#endif + +QT_END_NAMESPACE + +#endif // include guard diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtConcurrent/qtconcurrentcompilertest.h b/debian/usr/local/qt5raspi-5.12.5/include/QtConcurrent/qtconcurrentcompilertest.h new file mode 100644 index 0000000..cddfd06 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtConcurrent/qtconcurrentcompilertest.h @@ -0,0 +1,67 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtConcurrent module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QTCONCURRENT_COMPILERTEST_H +#define QTCONCURRENT_COMPILERTEST_H + +#include + +#ifndef QT_NO_CONCURRENT + +QT_BEGIN_NAMESPACE + +namespace QtPrivate { + +template +class HasResultType { + typedef char Yes; + typedef void *No; + template static Yes test(int, const typename U::result_type * = 0); + template static No test(double); +public: + enum { Value = (sizeof(test(0)) == sizeof(Yes)) }; +}; + +} + +QT_END_NAMESPACE + +#endif // QT_NO_CONCURRENT + +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtConcurrent/qtconcurrentexception.h b/debian/usr/local/qt5raspi-5.12.5/include/QtConcurrent/qtconcurrentexception.h new file mode 100644 index 0000000..8a3986a --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtConcurrent/qtconcurrentexception.h @@ -0,0 +1,65 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtConcurrent module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QTCONCURRENT_EXCEPTION_H +#define QTCONCURRENT_EXCEPTION_H + +#include +#include + +QT_REQUIRE_CONFIG(concurrent); + +QT_BEGIN_NAMESPACE + + +namespace QtConcurrent +{ + +#if !defined(QT_NO_EXCEPTIONS) || defined(Q_CLANG_QDOC) + +typedef Q_DECL_DEPRECATED QException Exception; +typedef Q_DECL_DEPRECATED QUnhandledException UnhandledException; + +#endif + +} // namespace QtConcurrent + +QT_END_NAMESPACE + +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtConcurrent/qtconcurrentfilter.h b/debian/usr/local/qt5raspi-5.12.5/include/QtConcurrent/qtconcurrentfilter.h new file mode 100644 index 0000000..d01b351 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtConcurrent/qtconcurrentfilter.h @@ -0,0 +1,224 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtConcurrent module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QTCONCURRENT_FILTER_H +#define QTCONCURRENT_FILTER_H + +#include + +#if !defined(QT_NO_CONCURRENT) || defined(Q_CLANG_QDOC) + +#include +#include + +QT_BEGIN_NAMESPACE + +namespace QtConcurrent { + +//! [QtConcurrent-1] +template +ThreadEngineStarter filterInternal(Sequence &sequence, KeepFunctor keep, ReduceFunctor reduce) +{ + typedef FilterKernel KernelType; + return startThreadEngine(new KernelType(sequence, keep, reduce)); +} + +// filter() on sequences +template +QFuture filter(Sequence &sequence, KeepFunctor keep) +{ + return filterInternal(sequence, QtPrivate::createFunctionWrapper(keep), QtPrivate::PushBackWrapper()); +} + +// filteredReduced() on sequences +template +QFuture filteredReduced(const Sequence &sequence, + KeepFunctor keep, + ReduceFunctor reduce, + ReduceOptions options = ReduceOptions(UnorderedReduce | SequentialReduce)) +{ + return startFilteredReduced(sequence, QtPrivate::createFunctionWrapper(keep), QtPrivate::createFunctionWrapper(reduce), options); +} + +#ifndef Q_CLANG_QDOC +template +QFuture::ResultType> filteredReduced(const Sequence &sequence, + KeepFunctor keep, + ReduceFunctor reduce, + ReduceOptions options = ReduceOptions(UnorderedReduce | SequentialReduce)) +{ + return startFilteredReduced::ResultType> + (sequence, + QtPrivate::createFunctionWrapper(keep), + QtPrivate::createFunctionWrapper(reduce), + options); +} +#endif + +// filteredReduced() on iterators +template +QFuture filteredReduced(Iterator begin, + Iterator end, + KeepFunctor keep, + ReduceFunctor reduce, + ReduceOptions options = ReduceOptions(UnorderedReduce | SequentialReduce)) +{ + return startFilteredReduced(begin, end, QtPrivate::createFunctionWrapper(keep), QtPrivate::createFunctionWrapper(reduce), options); +} + +#ifndef Q_CLANG_QDOC +template +QFuture::ResultType> filteredReduced(Iterator begin, + Iterator end, + KeepFunctor keep, + ReduceFunctor reduce, + ReduceOptions options = ReduceOptions(UnorderedReduce | SequentialReduce)) +{ + return startFilteredReduced::ResultType> + (begin, end, + QtPrivate::createFunctionWrapper(keep), + QtPrivate::createFunctionWrapper(reduce), + options); +} +#endif + +// filtered() on sequences +template +QFuture filtered(const Sequence &sequence, KeepFunctor keep) +{ + return startFiltered(sequence, QtPrivate::createFunctionWrapper(keep)); +} + +// filtered() on iterators +template +QFuture::value_type> filtered(Iterator begin, Iterator end, KeepFunctor keep) +{ + return startFiltered(begin, end, QtPrivate::createFunctionWrapper(keep)); +} + +// blocking filter() on sequences +template +void blockingFilter(Sequence &sequence, KeepFunctor keep) +{ + filterInternal(sequence, QtPrivate::createFunctionWrapper(keep), QtPrivate::PushBackWrapper()).startBlocking(); +} + +// blocking filteredReduced() on sequences +template +ResultType blockingFilteredReduced(const Sequence &sequence, + KeepFunctor keep, + ReduceFunctor reduce, + ReduceOptions options = ReduceOptions(UnorderedReduce | SequentialReduce)) +{ + return startFilteredReduced(sequence, QtPrivate::createFunctionWrapper(keep), QtPrivate::createFunctionWrapper(reduce), options) + .startBlocking(); +} + +#ifndef Q_CLANG_QDOC +template +typename QtPrivate::ReduceResultType::ResultType blockingFilteredReduced(const Sequence &sequence, + KeepFunctor keep, + ReduceFunctor reduce, + ReduceOptions options = ReduceOptions(UnorderedReduce | SequentialReduce)) +{ + return blockingFilteredReduced::ResultType> + (sequence, + QtPrivate::createFunctionWrapper(keep), + QtPrivate::createFunctionWrapper(reduce), + options); +} +#endif + +// blocking filteredReduced() on iterators +template +ResultType blockingFilteredReduced(Iterator begin, + Iterator end, + KeepFunctor keep, + ReduceFunctor reduce, + ReduceOptions options = ReduceOptions(UnorderedReduce | SequentialReduce)) +{ + return startFilteredReduced + (begin, end, + QtPrivate::createFunctionWrapper(keep), + QtPrivate::createFunctionWrapper(reduce), + options) + .startBlocking(); +} + +#ifndef Q_CLANG_QDOC +template +typename QtPrivate::ReduceResultType::ResultType blockingFilteredReduced(Iterator begin, + Iterator end, + KeepFunctor keep, + ReduceFunctor reduce, + ReduceOptions options = ReduceOptions(UnorderedReduce | SequentialReduce)) +{ + return startFilteredReduced::ResultType> + (begin, end, + QtPrivate::createFunctionWrapper(keep), + QtPrivate::createFunctionWrapper(reduce), + options) + .startBlocking(); +} +#endif + +// blocking filtered() on sequences +template +Sequence blockingFiltered(const Sequence &sequence, KeepFunctor keep) +{ + return startFilteredReduced(sequence, QtPrivate::createFunctionWrapper(keep), QtPrivate::PushBackWrapper(), OrderedReduce).startBlocking(); +} + +// blocking filtered() on iterators +template +OutputSequence blockingFiltered(Iterator begin, Iterator end, KeepFunctor keep) +{ + return startFilteredReduced(begin, end, + QtPrivate::createFunctionWrapper(keep), + QtPrivate::PushBackWrapper(), + OrderedReduce).startBlocking(); +} + +} // namespace QtConcurrent + +QT_END_NAMESPACE + +#endif // QT_NO_CONCURRENT + +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtConcurrent/qtconcurrentfilterkernel.h b/debian/usr/local/qt5raspi-5.12.5/include/QtConcurrent/qtconcurrentfilterkernel.h new file mode 100644 index 0000000..9cbea2e --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtConcurrent/qtconcurrentfilterkernel.h @@ -0,0 +1,348 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtConcurrent module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QTCONCURRENT_FILTERKERNEL_H +#define QTCONCURRENT_FILTERKERNEL_H + +#include + +#if !defined(QT_NO_CONCURRENT) || defined (Q_CLANG_QDOC) + +#include +#include +#include + +QT_BEGIN_NAMESPACE + + + +namespace QtConcurrent { + +template +struct qValueType +{ + typedef typename T::value_type value_type; +}; + +template +struct qValueType +{ + typedef T value_type; +}; + +template +struct qValueType +{ + typedef T value_type; +}; + +// Implementation of filter +template +class FilterKernel : public IterateKernel +{ + typedef ReduceKernel Reducer; + typedef IterateKernel IterateKernelType; + typedef typename ReduceFunctor::result_type T; + + Sequence reducedResult; + Sequence &sequence; + KeepFunctor keep; + ReduceFunctor reduce; + Reducer reducer; + +public: + FilterKernel(Sequence &_sequence, KeepFunctor _keep, ReduceFunctor _reduce) + : IterateKernelType(const_cast(_sequence).begin(), const_cast(_sequence).end()), reducedResult(), + sequence(_sequence), + keep(_keep), + reduce(_reduce), + reducer(OrderedReduce) + { } + + bool runIteration(typename Sequence::const_iterator it, int index, T *) override + { + IntermediateResults results; + results.begin = index; + results.end = index + 1; + + if (keep(*it)) + results.vector.append(*it); + + reducer.runReduce(reduce, reducedResult, results); + return false; + } + + bool runIterations(typename Sequence::const_iterator sequenceBeginIterator, int begin, int end, T *) override + { + IntermediateResults results; + results.begin = begin; + results.end = end; + results.vector.reserve(end - begin); + + + typename Sequence::const_iterator it = sequenceBeginIterator; + std::advance(it, begin); + for (int i = begin; i < end; ++i) { + if (keep(*it)) + results.vector.append(*it); + std::advance(it, 1); + } + + reducer.runReduce(reduce, reducedResult, results); + return false; + } + + void finish() override + { + reducer.finish(reduce, reducedResult); + sequence = reducedResult; + } + + inline bool shouldThrottleThread() override + { + return IterateKernelType::shouldThrottleThread() || reducer.shouldThrottle(); + } + + inline bool shouldStartThread() override + { + return IterateKernelType::shouldStartThread() && reducer.shouldStartThread(); + } + + typedef void ReturnType; + typedef void ResultType; +}; + +// Implementation of filter-reduce +template ::value_type> > +class FilteredReducedKernel : public IterateKernel +{ + ReducedResultType reducedResult; + KeepFunctor keep; + ReduceFunctor reduce; + Reducer reducer; + typedef IterateKernel IterateKernelType; + +public: + FilteredReducedKernel(Iterator begin, + Iterator end, + KeepFunctor _keep, + ReduceFunctor _reduce, + ReduceOptions reduceOption) + : IterateKernelType(begin, end), reducedResult(), keep(_keep), reduce(_reduce), reducer(reduceOption) + { } + +#if 0 + FilteredReducedKernel(ReducedResultType initialValue, + KeepFunctor keep, + ReduceFunctor reduce, + ReduceOption reduceOption) + : reducedResult(initialValue), keep(keep), reduce(reduce), reducer(reduceOption) + { } +#endif + + bool runIteration(Iterator it, int index, ReducedResultType *) override + { + IntermediateResults::value_type> results; + results.begin = index; + results.end = index + 1; + + if (keep(*it)) + results.vector.append(*it); + + reducer.runReduce(reduce, reducedResult, results); + return false; + } + + bool runIterations(Iterator sequenceBeginIterator, int begin, int end, ReducedResultType *) override + { + IntermediateResults::value_type> results; + results.begin = begin; + results.end = end; + results.vector.reserve(end - begin); + + Iterator it = sequenceBeginIterator; + std::advance(it, begin); + for (int i = begin; i < end; ++i) { + if (keep(*it)) + results.vector.append(*it); + std::advance(it, 1); + } + + reducer.runReduce(reduce, reducedResult, results); + return false; + } + + void finish() override + { + reducer.finish(reduce, reducedResult); + } + + inline bool shouldThrottleThread() override + { + return IterateKernelType::shouldThrottleThread() || reducer.shouldThrottle(); + } + + inline bool shouldStartThread() override + { + return IterateKernelType::shouldStartThread() && reducer.shouldStartThread(); + } + + typedef ReducedResultType ReturnType; + typedef ReducedResultType ResultType; + ReducedResultType *result() override + { + return &reducedResult; + } +}; + +// Implementation of filter that reports individual results via QFutureInterface +template +class FilteredEachKernel : public IterateKernel::value_type> +{ + typedef typename qValueType::value_type T; + typedef IterateKernel IterateKernelType; + + KeepFunctor keep; + +public: + typedef T ReturnType; + typedef T ResultType; + + FilteredEachKernel(Iterator begin, Iterator end, KeepFunctor _keep) + : IterateKernelType(begin, end), keep(_keep) + { } + + void start() override + { + if (this->futureInterface) + this->futureInterface->setFilterMode(true); + IterateKernelType::start(); + } + + bool runIteration(Iterator it, int index, T *) override + { + if (keep(*it)) + this->reportResult(&(*it), index); + else + this->reportResult(0, index); + return false; + } + + bool runIterations(Iterator sequenceBeginIterator, int begin, int end, T *) override + { + const int count = end - begin; + IntermediateResults::value_type> results; + results.begin = begin; + results.end = end; + results.vector.reserve(count); + + Iterator it = sequenceBeginIterator; + std::advance(it, begin); + for (int i = begin; i < end; ++i) { + if (keep(*it)) + results.vector.append(*it); + std::advance(it, 1); + } + + this->reportResults(results.vector, begin, count); + return false; + } +}; + +//! [QtConcurrent-2] +template +inline +ThreadEngineStarter::value_type> +startFiltered(Iterator begin, Iterator end, KeepFunctor functor) +{ + return startThreadEngine(new FilteredEachKernel(begin, end, functor)); +} + +//! [QtConcurrent-3] +template +inline ThreadEngineStarter +startFiltered(const Sequence &sequence, KeepFunctor functor) +{ + typedef SequenceHolder1, + KeepFunctor> + SequenceHolderType; + return startThreadEngine(new SequenceHolderType(sequence, functor)); +} + +//! [QtConcurrent-4] +template +inline ThreadEngineStarter startFilteredReduced(const Sequence & sequence, + MapFunctor mapFunctor, ReduceFunctor reduceFunctor, + ReduceOptions options) +{ + typedef typename Sequence::const_iterator Iterator; + typedef ReduceKernel::value_type > Reducer; + typedef FilteredReducedKernel FilteredReduceType; + typedef SequenceHolder2 SequenceHolderType; + return startThreadEngine(new SequenceHolderType(sequence, mapFunctor, reduceFunctor, options)); +} + + +//! [QtConcurrent-5] +template +inline ThreadEngineStarter startFilteredReduced(Iterator begin, Iterator end, + MapFunctor mapFunctor, ReduceFunctor reduceFunctor, + ReduceOptions options) +{ + typedef ReduceKernel::value_type> Reducer; + typedef FilteredReducedKernel FilteredReduceType; + return startThreadEngine(new FilteredReduceType(begin, end, mapFunctor, reduceFunctor, options)); +} + + +} // namespace QtConcurrent + + +QT_END_NAMESPACE + +#endif // QT_NO_CONCURRENT + +#endif diff --git a/debian/usr/local/qt5raspi-5.12.5/include/QtConcurrent/qtconcurrentfunctionwrappers.h b/debian/usr/local/qt5raspi-5.12.5/include/QtConcurrent/qtconcurrentfunctionwrappers.h new file mode 100644 index 0000000..734bb29 --- /dev/null +++ b/debian/usr/local/qt5raspi-5.12.5/include/QtConcurrent/qtconcurrentfunctionwrappers.h @@ -0,0 +1,380 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtConcurrent module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QTCONCURRENT_FUNCTIONWRAPPERS_H +#define QTCONCURRENT_FUNCTIONWRAPPERS_H + +#include +#include + +#if !defined(QT_NO_CONCURRENT) || defined(Q_CLANG_QDOC) + +QT_BEGIN_NAMESPACE + +namespace QtConcurrent { + +template +class FunctionWrapper0 +{ +public: + typedef T (*FunctionPointerType)(); + typedef T result_type; + inline FunctionWrapper0(FunctionPointerType _functionPointer) + :functionPointer(_functionPointer) { } + + inline T operator()() + { + return functionPointer(); + } +private: + FunctionPointerType functionPointer; +}; + +template +class FunctionWrapper1 +{ +public: + typedef T (*FunctionPointerType)(U u); + typedef T result_type; + inline FunctionWrapper1(FunctionPointerType _functionPointer) + :functionPointer(_functionPointer) { } + + inline T operator()(U u) + { + return functionPointer(u); + } + +private: + FunctionPointerType functionPointer; +}; + +template +class FunctionWrapper2 +{ +public: + typedef T (*FunctionPointerType)(U u, V v); + typedef T result_type; + inline FunctionWrapper2(FunctionPointerType _functionPointer) + :functionPointer(_functionPointer) { } + + inline T operator()(U u, V v) + { + return functionPointer(u, v); + } +private: + FunctionPointerType functionPointer; +}; + +template +class MemberFunctionWrapper +{ +public: + typedef T (C::*FunctionPointerType)(); + typedef T result_type; + inline MemberFunctionWrapper(FunctionPointerType _functionPointer) + :functionPointer(_functionPointer) { } + + inline T operator()(C &c) + { + return (c.*functionPointer)(); + } +private: + FunctionPointerType functionPointer; +}; + +template +class MemberFunctionWrapper1 +{ +public: + typedef T (C::*FunctionPointerType)(U); + typedef T result_type; + + inline MemberFunctionWrapper1(FunctionPointerType _functionPointer) + : functionPointer(_functionPointer) + { } + + inline T operator()(C &c, U u) + { + return (c.*functionPointer)(u); + } + +private: + FunctionPointerType functionPointer; +}; + +template +class ConstMemberFunctionWrapper +{ +public: + typedef T (C::*FunctionPointerType)() const; + typedef T result_type; + inline ConstMemberFunctionWrapper(FunctionPointerType _functionPointer) + :functionPointer(_functionPointer) { } + + inline T operator()(const C &c) const + { + return (c.*functionPointer)(); + } +private: + FunctionPointerType functionPointer; +}; + +} // namespace QtConcurrent. + +namespace QtPrivate { + +template +const T& createFunctionWrapper(const T& t) +{ + return t; +} + +template +QtConcurrent::FunctionWrapper1 createFunctionWrapper(T (*func)(U)) +{ + return QtConcurrent::FunctionWrapper1(func); +} + +template +QtConcurrent::MemberFunctionWrapper createFunctionWrapper(T (C::*func)()) +{ + return QtConcurrent::MemberFunctionWrapper(func); +} + +template +QtConcurrent::MemberFunctionWrapper1 createFunctionWrapper(T (C::*func)(U)) +{ + return QtConcurrent::MemberFunctionWrapper1(func); +} + +template +QtConcurrent::ConstMemberFunctionWrapper createFunctionWrapper(T (C::*func)() const) +{ + return QtConcurrent::ConstMemberFunctionWrapper(func); +} + +#if defined(__cpp_noexcept_function_type) && __cpp_noexcept_function_type >= 201510 +template +QtConcurrent::FunctionWrapper1 createFunctionWrapper(T (*func)(U) noexcept) +{ + return QtConcurrent::FunctionWrapper1(func); +} + +template +QtConcurrent::MemberFunctionWrapper createFunctionWrapper(T (C::*func)() noexcept) +{ + return QtConcurrent::MemberFunctionWrapper(func); +} + +template +QtConcurrent::MemberFunctionWrapper1 createFunctionWrapper(T (C::*func)(U) noexcept) +{ + return QtConcurrent::MemberFunctionWrapper1(func); +} + +template +QtConcurrent::ConstMemberFunctionWrapper createFunctionWrapper(T (C::*func)() const noexcept) +{ + return QtConcurrent::ConstMemberFunctionWrapper(func); +} +#endif + +struct PushBackWrapper +{ + typedef void result_type; + + template + inline void operator()(C &c, const U &u) const + { + return c.push_back(u); + } + +#ifdef Q_COMPILER_RVALUE_REFS + template + inline void operator()(C &c, U &&u) const + { + return c.push_back(u); + } +#endif +}; + +template ::Value> +struct LazyResultType { typedef typename Functor::result_type Type; }; +template +struct LazyResultType { typedef void Type; }; + +template +struct ReduceResultType; + +template +struct ReduceResultType +{ + typedef U ResultType; +}; + +template +struct ReduceResultType +{ + typedef C ResultType; +}; + +#if defined(__cpp_noexcept_function_type) && __cpp_noexcept_function_type >= 201510 +template +struct ReduceResultType +{ + typedef U ResultType; +}; + +template +struct ReduceResultType +{ + typedef C ResultType; +}; +#endif + +template +struct MapResultType +{ + typedef typename LazyResultType::Type ResultType; +}; + +template +struct MapResultType +{ + typedef U ResultType; +}; + +template +struct MapResultType +{ + typedef T ResultType; +}; + +#if defined(__cpp_noexcept_function_type) && __cpp_noexcept_function_type >= 201510 +template +struct MapResultType +{ + typedef U ResultType; +}; + +template +struct MapResultType +{ + typedef T ResultType; +}; +#endif + +#ifndef QT_NO_TEMPLATE_TEMPLATE_PARAMETERS + +template