Qt
Internal/Contributor docs for the Qt SDK. <b>Note:</b> These are NOT official API docs; those are found <a href='https://doc.qt.io/'>here</a>.
|
#include <qopenxrinputmanager_p.h>
Public Types | |
enum | Hand { LeftHand = 0 , RightHand = 1 } |
Public Member Functions | |
void | init (XrInstance instance, XrSession session) |
void | teardown () |
void | pollActions () |
void | updatePoses (XrTime predictedDisplayTime, XrSpace appSpace) |
void | updateHandtracking (XrTime predictedDisplayTime, XrSpace appSpace, bool aimExtensionEnabled) |
XrSpace | handSpace (Hand hand) |
bool | isHandActive (Hand hand) |
XrSpace | handTrackerSpace (Hand handtracker) |
bool | isHandTrackerActive (Hand handtracker) |
void | setPosePosition (Hand hand, const QVector3D &position) |
void | setPoseRotation (Hand hand, const QQuaternion &rotation) |
QOpenXRHandInput * | leftHandInput () const |
QOpenXRHandInput * | rightHandInput () const |
QOpenXRHandTrackerInput * | leftHandTrackerInput () const |
QOpenXRHandTrackerInput * | rightHandTrackerInput () const |
QOpenXRGamepadInput * | gamepadInput () const |
Public Member Functions inherited from QObject | |
Q_INVOKABLE | QObject (QObject *parent=nullptr) |
Constructs an object with parent object parent. | |
virtual | ~QObject () |
Destroys the object, deleting all its child objects. | |
virtual bool | event (QEvent *event) |
This virtual function receives events to an object and should return true if the event e was recognized and processed. | |
virtual bool | eventFilter (QObject *watched, QEvent *event) |
Filters events if this object has been installed as an event filter for the watched object. | |
QString | objectName () const |
Q_WEAK_OVERLOAD void | setObjectName (const QString &name) |
Sets the object's name to name. | |
void | setObjectName (QAnyStringView name) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. | |
QBindable< QString > | bindableObjectName () |
bool | isWidgetType () const |
Returns true if the object is a widget; otherwise returns false . | |
bool | isWindowType () const |
Returns true if the object is a window; otherwise returns false . | |
bool | isQuickItemType () const |
Returns true if the object is a QQuickItem; otherwise returns false . | |
bool | signalsBlocked () const noexcept |
Returns true if signals are blocked; otherwise returns false . | |
bool | blockSignals (bool b) noexcept |
If block is true, signals emitted by this object are blocked (i.e., emitting a signal will not invoke anything connected to it). | |
QThread * | thread () const |
Returns the thread in which the object lives. | |
bool | moveToThread (QThread *thread QT6_DECL_NEW_OVERLOAD_TAIL) |
Changes the thread affinity for this object and its children and returns true on success. | |
int | startTimer (int interval, Qt::TimerType timerType=Qt::CoarseTimer) |
This is an overloaded function that will start a timer of type timerType and a timeout of interval milliseconds. | |
int | startTimer (std::chrono::nanoseconds time, Qt::TimerType timerType=Qt::CoarseTimer) |
void | killTimer (int id) |
Kills the timer with timer identifier, id. | |
void | killTimer (Qt::TimerId id) |
template<typename T > | |
T | findChild (QAnyStringView aName, Qt::FindChildOptions options=Qt::FindChildrenRecursively) const |
Returns the child of this object that can be cast into type T and that is called name, or \nullptr if there is no such object. | |
template<typename T > | |
QList< T > | findChildren (QAnyStringView aName, Qt::FindChildOptions options=Qt::FindChildrenRecursively) const |
Returns all children of this object with the given name that can be cast to type T, or an empty list if there are no such objects. | |
template<typename T > | |
T | findChild (Qt::FindChildOptions options=Qt::FindChildrenRecursively) const |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. | |
template<typename T > | |
QList< T > | findChildren (Qt::FindChildOptions options=Qt::FindChildrenRecursively) const |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. | |
const QObjectList & | children () const |
Returns a list of child objects. | |
void | setParent (QObject *parent) |
Makes the object a child of parent. | |
void | installEventFilter (QObject *filterObj) |
Installs an event filter filterObj on this object. | |
void | removeEventFilter (QObject *obj) |
Removes an event filter object obj from this object. | |
QMetaObject::Connection | connect (const QObject *sender, const char *signal, const char *member, Qt::ConnectionType type=Qt::AutoConnection) const |
bool | disconnect (const char *signal=nullptr, const QObject *receiver=nullptr, const char *member=nullptr) const |
bool | disconnect (const QObject *receiver, const char *member=nullptr) const |
void | dumpObjectTree () const |
Dumps a tree of children to the debug output. | |
void | dumpObjectInfo () const |
Dumps information about signal connections, etc. | |
bool | setProperty (const char *name, const QVariant &value) |
Sets the value of the object's name property to value. | |
bool | setProperty (const char *name, QVariant &&value) |
QVariant | property (const char *name) const |
Returns the value of the object's name property. | |
QList< QByteArray > | dynamicPropertyNames () const |
QBindingStorage * | bindingStorage () |
const QBindingStorage * | bindingStorage () const |
QObject * | parent () const |
Returns a pointer to the parent object. | |
bool | inherits (const char *classname) const |
Returns true if this object is an instance of a class that inherits className or a QObject subclass that inherits className; otherwise returns false . | |
Static Public Member Functions | |
static QOpenXRInputManager * | instance () |
Static Public Member Functions inherited from QObject | |
static QMetaObject::Connection | connect (const QObject *sender, const char *signal, const QObject *receiver, const char *member, Qt::ConnectionType=Qt::AutoConnection) |
\threadsafe | |
static QMetaObject::Connection | connect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method, Qt::ConnectionType type=Qt::AutoConnection) |
template<typename Func1 , typename Func2 > | |
static QMetaObject::Connection | connect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, const typename QtPrivate::ContextTypeForFunctor< Func2 >::ContextType *context, Func2 &&slot, Qt::ConnectionType type=Qt::AutoConnection) |
template<typename Func1 , typename Func2 > | |
static QMetaObject::Connection | connect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, Func2 &&slot) |
static bool | disconnect (const QObject *sender, const char *signal, const QObject *receiver, const char *member) |
\threadsafe | |
static bool | disconnect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &member) |
static bool | disconnect (const QMetaObject::Connection &) |
Disconnect a connection. | |
template<typename Func1 , typename Func2 > | |
static bool | disconnect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, const typename QtPrivate::FunctionPointer< Func2 >::Object *receiver, Func2 slot) |
template<typename Func1 > | |
static bool | disconnect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, const QObject *receiver, void **zero) |
Public Attributes | |
PFN_xrCreateHandTrackerEXT | xrCreateHandTrackerEXT_ |
PFN_xrDestroyHandTrackerEXT | xrDestroyHandTrackerEXT_ |
PFN_xrLocateHandJointsEXT | xrLocateHandJointsEXT_ |
PFN_xrGetHandMeshFB | xrGetHandMeshFB_ |
XrHandTrackerEXT | handTracker [2] = {XR_NULL_HANDLE, XR_NULL_HANDLE} |
XrHandJointLocationEXT | jointLocations [2][XR_HAND_JOINT_COUNT_EXT] |
XrHandJointVelocityEXT | jointVelocities [2][XR_HAND_JOINT_COUNT_EXT] |
Friends | |
class | QOpenXrHandModel |
Additional Inherited Members | |
Public Slots inherited from QObject | |
void | deleteLater () |
\threadsafe | |
Signals inherited from QObject | |
void | destroyed (QObject *=nullptr) |
This signal is emitted immediately before the object obj is destroyed, after any instances of QPointer have been notified, and cannot be blocked. | |
void | objectNameChanged (const QString &objectName, QPrivateSignal) |
This signal is emitted after the object's name has been changed. | |
Protected Member Functions inherited from QObject | |
QObject * | sender () const |
Returns a pointer to the object that sent the signal, if called in a slot activated by a signal; otherwise it returns \nullptr. | |
int | senderSignalIndex () const |
int | receivers (const char *signal) const |
Returns the number of receivers connected to the signal. | |
bool | isSignalConnected (const QMetaMethod &signal) const |
virtual void | timerEvent (QTimerEvent *event) |
This event handler can be reimplemented in a subclass to receive timer events for the object. | |
virtual void | childEvent (QChildEvent *event) |
This event handler can be reimplemented in a subclass to receive child events. | |
virtual void | customEvent (QEvent *event) |
This event handler can be reimplemented in a subclass to receive custom events. | |
virtual void | connectNotify (const QMetaMethod &signal) |
virtual void | disconnectNotify (const QMetaMethod &signal) |
QObject (QObjectPrivate &dd, QObject *parent=nullptr) | |
Protected Attributes inherited from QObject | |
QScopedPointer< QObjectData > | d_ptr |
Properties inherited from QObject | |
QString | objectName |
the name of this object | |
Related Symbols inherited from QObject | |
template< class T > T | qobject_cast (const QObject *object) |
Returns the given object cast to type T if the object is of type T (or of a subclass); otherwise returns \nullptr. | |
template< typename T > T | qFindChildqFindChildren (const QObject *obj, const QString &name)() |
template< typename T > QList< T > | qFindChildrenqFindChildren (const QObject *obj, const QString &name)() |
QObjectList | |
\macro Q_CLASSINFO(Name, Value) | |
Definition at line 33 of file qopenxrinputmanager_p.h.
Enumerator | |
---|---|
LeftHand | |
RightHand |
Definition at line 42 of file qopenxrinputmanager_p.h.
QOpenXRGamepadInput * QOpenXRInputManager::gamepadInput | ( | ) | const |
Definition at line 1110 of file qopenxrinputmanager.cpp.
Referenced by QOpenXRController::gamepadInput(), and QOpenXRView::gamepadInput().
XrSpace QOpenXRInputManager::handSpace | ( | QOpenXRInputManager::Hand | hand | ) |
Definition at line 1054 of file qopenxrinputmanager.cpp.
References QOpenXRHandInput::GripPose.
Referenced by updatePoses().
XrSpace QOpenXRInputManager::handTrackerSpace | ( | Hand | handtracker | ) |
Definition at line 1062 of file qopenxrinputmanager.cpp.
References QOpenXRHandTrackerInput::GripPose.
void QOpenXRInputManager::init | ( | XrInstance | instance, |
XrSession | session ) |
Definition at line 188 of file qopenxrinputmanager.cpp.
References QOpenXRActionMapper::Button1Pressed, QOpenXRActionMapper::Button1Touched, QOpenXRActionMapper::Button2Pressed, QOpenXRActionMapper::Button2Touched, QOpenXRActionMapper::ButtonMenuPressed, QOpenXRActionMapper::ButtonSystemPressed, QOpenXRActionMapper::GamepadButtonAPressed, QOpenXRActionMapper::GamepadButtonBPressed, QOpenXRActionMapper::GamepadButtonDownPressed, QOpenXRActionMapper::GamepadButtonLeftPressed, QOpenXRActionMapper::GamepadButtonMenuPressed, QOpenXRActionMapper::GamepadButtonRightPressed, QOpenXRActionMapper::GamepadButtonUpPressed, QOpenXRActionMapper::GamepadButtonViewPressed, QOpenXRActionMapper::GamepadButtonXPressed, QOpenXRActionMapper::GamepadButtonYPressed, QOpenXRActionMapper::GamepadShoulderLeftPressed, QOpenXRActionMapper::GamepadShoulderRightPressed, QOpenXRActionMapper::GamepadThumbstickLeftPressed, QOpenXRActionMapper::GamepadThumbstickLeftX, QOpenXRActionMapper::GamepadThumbstickLeftY, QOpenXRActionMapper::GamepadThumbstickRightPressed, QOpenXRActionMapper::GamepadThumbstickRightX, QOpenXRActionMapper::GamepadThumbstickRightY, QOpenXRActionMapper::GamepadTriggerLeft, QOpenXRActionMapper::GamepadTriggerRight, instance(), LeftHand, qDebug, qWarning, RightHand, selector, QOpenXRActionMapper::SqueezePressed, QOpenXRActionMapper::SqueezeValue, teardown(), QOpenXRActionMapper::ThumbrestTouched, QOpenXRActionMapper::ThumbstickPressed, QOpenXRActionMapper::ThumbstickTouched, QOpenXRActionMapper::ThumbstickX, QOpenXRActionMapper::ThumbstickY, QOpenXRActionMapper::TrackpadPressed, QOpenXRActionMapper::TrackpadTouched, QOpenXRActionMapper::TrackpadX, QOpenXRActionMapper::TrackpadY, QOpenXRActionMapper::TriggerPressed, QOpenXRActionMapper::TriggerTouched, and QOpenXRActionMapper::TriggerValue.
Referenced by QOpenXRManager::initialize().
|
static |
Definition at line 43 of file qopenxrinputmanager.cpp.
References instance().
Referenced by QOpenXRController::QOpenXRController(), init(), QOpenXRManager::initialize(), and instance().
bool QOpenXRInputManager::isHandActive | ( | QOpenXRInputManager::Hand | hand | ) |
Definition at line 1070 of file qopenxrinputmanager.cpp.
References QOpenXRHandInput::isActive.
Referenced by updatePoses().
bool QOpenXRInputManager::isHandTrackerActive | ( | Hand | handtracker | ) |
Definition at line 1075 of file qopenxrinputmanager.cpp.
References QOpenXRHandTrackerInput::isActive.
QOpenXRHandInput * QOpenXRInputManager::leftHandInput | ( | ) | const |
Definition at line 1090 of file qopenxrinputmanager.cpp.
References LeftHand.
Referenced by QOpenXRController::handInput(), and QOpenXRView::leftHandInput().
QOpenXRHandTrackerInput * QOpenXRInputManager::leftHandTrackerInput | ( | ) | const |
Definition at line 1105 of file qopenxrinputmanager.cpp.
References LeftHand.
Referenced by QOpenXRView::leftHandTrackerInput().
void QOpenXRInputManager::pollActions | ( | ) |
Definition at line 534 of file qopenxrinputmanager.cpp.
References i, QOpenXRGamepadInput::setInputValue(), and QOpenXRHandInput::setInputValue().
QOpenXRHandInput * QOpenXRInputManager::rightHandInput | ( | ) | const |
Definition at line 1095 of file qopenxrinputmanager.cpp.
References RightHand.
Referenced by QOpenXRController::handInput(), and QOpenXRView::rightHandInput().
QOpenXRHandTrackerInput * QOpenXRInputManager::rightHandTrackerInput | ( | ) | const |
Definition at line 1100 of file qopenxrinputmanager.cpp.
References RightHand.
Referenced by QOpenXRView::rightHandTrackerInput().
Definition at line 1080 of file qopenxrinputmanager.cpp.
References position(), and QOpenXRHandInput::setPosePosition().
Referenced by updateHandtracking(), and updatePoses().
void QOpenXRInputManager::setPoseRotation | ( | Hand | hand, |
const QQuaternion & | rotation ) |
Definition at line 1085 of file qopenxrinputmanager.cpp.
References QOpenXRHandInput::setPoseRotation().
Referenced by updateHandtracking(), and updatePoses().
void QOpenXRInputManager::teardown | ( | ) |
Definition at line 511 of file qopenxrinputmanager.cpp.
References handTracker, LeftHand, RightHand, and xrDestroyHandTrackerEXT_.
Referenced by init(), and QOpenXRManager::teardown().
void QOpenXRInputManager::updateHandtracking | ( | XrTime | predictedDisplayTime, |
XrSpace | appSpace, | ||
bool | aimExtensionEnabled ) |
Definition at line 691 of file qopenxrinputmanager.cpp.
References QOpenXRHandInput::AimPose, handTracker, QOpenXRActionMapper::HandTrackingMenuPress, i, QOpenXRActionMapper::IndexFingerPinch, isActive, jointLocations, jointVelocities, LeftHand, QOpenXRActionMapper::LittleFingerPinch, QOpenXRActionMapper::MiddleFingerPinch, QOpenXRHandInput::poseSpace, RightHand, QOpenXRActionMapper::RingFingerPinch, QOpenXRHandInput::setInputValue(), QOpenXRHandInput::setIsActive(), QOpenXRHandTrackerInput::setIsActive(), QOpenXRHandTrackerInput::setJointPositionsAndRotations(), setPosePosition(), setPoseRotation(), state, OpenXRHelpers::toQQuaternion(), OpenXRHelpers::toQVector(), and xrLocateHandJointsEXT_.
void QOpenXRInputManager::updatePoses | ( | XrTime | predictedDisplayTime, |
XrSpace | appSpace ) |
Definition at line 650 of file qopenxrinputmanager.cpp.
References QOpenXRHandInput::AimPose, handSpace(), isHandActive(), LeftHand, QOpenXRHandInput::poseSpace, qDebug, RightHand, setPosePosition(), and setPoseRotation().
|
friend |
Definition at line 172 of file qopenxrinputmanager_p.h.
XrHandTrackerEXT QOpenXRInputManager::handTracker[2] = {XR_NULL_HANDLE, XR_NULL_HANDLE} |
Definition at line 72 of file qopenxrinputmanager_p.h.
Referenced by teardown(), and updateHandtracking().
XrHandJointLocationEXT QOpenXRInputManager::jointLocations[2][XR_HAND_JOINT_COUNT_EXT] |
Definition at line 74 of file qopenxrinputmanager_p.h.
Referenced by updateHandtracking().
XrHandJointVelocityEXT QOpenXRInputManager::jointVelocities[2][XR_HAND_JOINT_COUNT_EXT] |
Definition at line 75 of file qopenxrinputmanager_p.h.
Referenced by updateHandtracking().
PFN_xrCreateHandTrackerEXT QOpenXRInputManager::xrCreateHandTrackerEXT_ |
Definition at line 66 of file qopenxrinputmanager_p.h.
PFN_xrDestroyHandTrackerEXT QOpenXRInputManager::xrDestroyHandTrackerEXT_ |
Definition at line 67 of file qopenxrinputmanager_p.h.
Referenced by teardown().
PFN_xrGetHandMeshFB QOpenXRInputManager::xrGetHandMeshFB_ |
Definition at line 70 of file qopenxrinputmanager_p.h.
PFN_xrLocateHandJointsEXT QOpenXRInputManager::xrLocateHandJointsEXT_ |
Definition at line 68 of file qopenxrinputmanager_p.h.
Referenced by updateHandtracking().