Rebel Fork Framework
Urho3D::OpenXRBinding Class Reference

Implementation of XRBinding for OpenXR. More...

#include <Urho3D/XR/OpenXR.h>

Inheritance diagram for Urho3D::OpenXRBinding:
Urho3D::XRBinding Urho3D::Object Urho3D::RefCounted

Public Member Functions

 OpenXRBinding (Context *context, const ea::string &name, const ea::string &localizedName, VRHand hand, VariantType dataType, bool isPose, bool isAimPose, XrActionSet set, XrActionPtr action, XrPath subPath, XrSpacePtr actionSpace)
 
void Update (XrSession session, float scaleCorrection)
 
void UpdateBoundState (XrSession session)
 
- Public Member Functions inherited from Urho3D::XRBinding
 XRBinding (Context *context, const ea::string &name, const ea::string &localizedName, VRHand hand, VariantType dataType, bool isPose, bool isAimPose)
 
const ea::string & GetName () const
 
const ea::string & GetLocalizedName () const
 
bool IsChanged () const
 Returns true if this action has changed state since the last update.
 
bool IsActive () const
 Returns true if this action is actively being used.
 
bool IsHanded () const
 Returns true if this action is bound to a hand.
 
VRHand GetHand () const
 Returns the hand this action is bound to.
 
const VariantGetData () const
 Returns stored variant value.
 
const Vector3GetLinearVelocity () const
 Returns linear velocity of the pose.
 
const Vector3GetAngularVelocity () const
 Returns angular velocity of the pose.
 
bool IsBound () const
 Returns true if this action is bound as a live input possibility.
 
bool IsInput () const
 Returns true if this is an input method action.
 
bool IsHaptic () const
 Returns true if this is an output haptic action.
 
bool IsGripPose () const
 Return true if this action is hand grip pose.
 
bool IsAimPose () const
 Return true if this action is hand aim pose.
 
bool GetBool (float pressThreshold) const
 
bool GetBool () const
 
float GetFloat () const
 
Vector2 GetVector2 () const
 
Vector3 GetVector3 () const
 
Vector3 GetPosition () const
 
Quaternion GetRotation () const
 
const Matrix3x4GetTransformMatrix () const
 
VariantType GetExpectedType () const
 
- Public Member Functions inherited from Urho3D::Object
 Object (Context *context)
 Construct.
 
 ~Object () override
 Destruct. Clean up self from event sender & receiver structures.
 
virtual StringHash GetType () const =0
 
virtual const ea::string & GetTypeName () const =0
 
virtual const TypeInfoGetTypeInfo () const =0
 Return type info.
 
virtual void OnEvent (Object *sender, StringHash eventType, VariantMap &eventData)
 Handle event.
 
virtual void SerializeInBlock (Archive &archive)
 Serialize content from/to archive. May throw ArchiveException.
 
bool IsInstanceOf (StringHash type) const
 Check current instance is type of specified type.
 
bool IsInstanceOf (const TypeInfo *typeInfo) const
 Check current instance is type of specified type.
 
template<typename T >
bool IsInstanceOf () const
 Check current instance is type of specified class.
 
template<typename T >
T * Cast ()
 Cast the object to specified most derived class.
 
template<typename T >
const T * Cast () const
 Cast the object to specified most derived class.
 
void SubscribeToEventManual (StringHash eventType, EventHandler *handler)
 Subscribe to an event that can be sent by any sender.
 
void SubscribeToEventManual (Object *sender, StringHash eventType, EventHandler *handler)
 Subscribe to a specific sender's event.
 
template<class T >
void SubscribeToEvent (StringHash eventType, T handler)
 Subscribe to an event that can be sent by any sender.
 
template<class T >
void SubscribeToEvent (Object *sender, StringHash eventType, T handler)
 Subscribe to a specific sender's event.
 
void UnsubscribeFromEvent (StringHash eventType)
 Unsubscribe from an event.
 
void UnsubscribeFromEvent (Object *sender, StringHash eventType)
 Unsubscribe from a specific sender's event.
 
void UnsubscribeFromEvents (Object *sender)
 Unsubscribe from a specific sender's events.
 
void UnsubscribeFromAllEvents ()
 Unsubscribe from all events.
 
void UnsubscribeFromAllEventsExcept (const ea::vector< StringHash > &exceptions)
 Unsubscribe from all events except those listed.
 
void UnsubscribeFromAllEventsExcept (const ea::vector< Object * > &exceptions)
 Unsubscribe from all events except those with listed senders.
 
void SendEvent (StringHash eventType)
 Send event to all subscribers.
 
void SendEvent (StringHash eventType, VariantMap &eventData)
 Send event with parameters to all subscribers.
 
VariantMapGetEventDataMap () const
 Return a preallocated map for event data. Used for optimization to avoid constant re-allocation of event data maps.
 
template<typename... Args>
void SendEvent (StringHash eventType, const Args &... args)
 Send event with variadic parameter pairs to all subscribers. The parameters are (paramID, paramValue) pairs.
 
ContextGetContext () const
 Return execution context.
 
const VariantGetGlobalVar (StringHash key) const
 
const VariantMapGetGlobalVars () const
 
void SetGlobalVar (StringHash key, const Variant &value)
 
ObjectGetSubsystem (StringHash type) const
 Return subsystem by type.
 
ObjectGetEventSender () const
 Return active event sender. Null outside event handling.
 
EventHandlerGetEventHandler () const
 Return active event handler. Null outside event handling.
 
bool HasSubscribedToEvent (StringHash eventType) const
 Return whether has subscribed to an event without specific sender.
 
bool HasSubscribedToEvent (Object *sender, StringHash eventType) const
 Return whether has subscribed to a specific sender's event.
 
bool HasEventHandlers () const
 Return whether has subscribed to any event.
 
template<class T >
T * GetSubsystem () const
 Template version of returning a subsystem.
 
const ea::string & GetCategory () const
 
void SendEvent (StringHash eventType, const VariantMap &eventData)
 Send event with parameters to all subscribers.
 
void SetBlockEvents (bool block)
 Block object from sending and receiving events.
 
bool GetBlockEvents () const
 Return sending and receiving events blocking status.
 
- Public Member Functions inherited from Urho3D::RefCounted
 RefCounted ()
 Construct. Allocate the reference count structure and set an initial self weak reference.
 
virtual ~RefCounted ()
 Destruct. Mark as expired and also delete the reference count structure if no outside weak references exist.
 
 RefCounted (const RefCounted &rhs)=delete
 Prevent copy construction.
 
RefCountedoperator= (const RefCounted &rhs)=delete
 Prevent assignment.
 
int AddRef ()
 
int ReleaseRef ()
 
int Refs () const
 
int WeakRefs () const
 
RefCountRefCountPtr () const
 Return pointer to the reference count structure.
 
bool HasScriptObject () const
 Return true if script runtime object wrapping this native object exists.
 
bool IsScriptStrongRef () const
 Return true if script reference is strong.
 

Public Attributes

const XrActionSet set_ {}
 Owning ActionSet that contains this action.
 
const XrActionPtr action_
 Action itself, possibly shared in the case of sub-path handed actions.
 
const XrPath subPath_ {}
 Indicates handed-ness for the OXR query.
 
const XrSpacePtr actionSpace_
 If we're a space action we'll have an action space.
 
XrSpaceLocation location_ {XR_TYPE_SPACE_LOCATION}
 Position and orientation from space location.
 
XrSpaceVelocity velocity_ {XR_TYPE_SPACE_VELOCITY}
 Linear and Angular velocity from space location.
 

Private Member Functions

 URHO3D_OBJECT (OpenXRBinding, XRBinding)
 

Additional Inherited Members

- Static Public Member Functions inherited from Urho3D::Object
static const TypeInfoGetTypeInfoStatic ()
 Return type info static.
 
- Protected Attributes inherited from Urho3D::XRBinding
const ea::string name_
 Internal name for the action.
 
const ea::string localizedName_
 Localized "friendly" name for the action, ie. "Trigger".
 
const VRHand hand_
 Hand this action is attached to if a hand relevant action.
 
const VariantType dataType_
 Data-type that the stored data can be expected to be.
 
const bool haptic_
 Indicates this is a haptic output action.
 
const bool isPose_
 Indicates this action pulls the base pose information for the given hand.
 
const bool isAimPose_
 Indicates this action pulls the aim pose information for the given hand.
 
bool changed_ = false
 The input has changed since the last update.
 
bool active_ = false
 The input is in an active state of being used, ie. a button being held.
 
bool isBound_ = false
 Indicates whether the action is properly bound to be used.
 
Variant storedData_
 Stored data retrieved from input updates.
 
Vector3 linearVelocity_
 Optional: linear velocity of the pose.
 
Vector3 angularVelocity_
 Optional: angular velocity of the pose.
 
- Protected Attributes inherited from Urho3D::Object
WeakPtr< Contextcontext_
 Execution context.
 

Detailed Description

Implementation of XRBinding for OpenXR.


The documentation for this class was generated from the following files: