IUxtHandTracker
Hand tracker device interface. We assume that implementations poll and cache the hand tracking state at the beginning of the frame. This allows us to assume that if a hand is reported as tracked it will remain so for the remainder of the frame, simplifying client logic.
class IUxtHandTracker;
Header
#include <HandTracking/IUxtHandTracker.h>
Inheritance
Inherits from IModularFeature
Inherited by FDummyHandTracker, FUxtDefaultHandTracker, UUxtTouchBasedHandTrackerComponent
Public Functions
Name | |
---|---|
FName | GetModularFeatureName() |
IUxtHandTracker & | Get() |
virtual | ~IUxtHandTracker() |
virtual ETrackingStatus | GetTrackingStatus(EControllerHand Hand) const =0 |
virtual bool | IsHandController(EControllerHand Hand) const =0 |
virtual bool | GetJointState(EControllerHand Hand, EHandKeypoint Joint, FQuat & OutOrientation, FVector & OutPosition, float & OutRadius) const =0 |
virtual bool | GetPointerPose(EControllerHand Hand, FQuat & OutOrientation, FVector & OutPosition) const =0 |
virtual bool | GetGripPose(EControllerHand Hand, FQuat & OutOrientation, FVector & OutPosition) const =0 |
virtual bool | GetIsGrabbing(EControllerHand Hand, bool & OutIsGrabbing) const =0 |
virtual bool | GetIsSelectPressed(EControllerHand Hand, bool & OutIsSelectPressed) const =0 |
Public Functions Documentation
function GetModularFeatureName
static FName GetModularFeatureName()
function Get
static IUxtHandTracker & Get()
Returns the currently registered hand tracker or nullptr if none
function ~IUxtHandTracker
inline virtual ~IUxtHandTracker()
function GetTrackingStatus
virtual ETrackingStatus GetTrackingStatus(
EControllerHand Hand
) const =0
Reimplemented by: FDummyHandTracker::GetTrackingStatus, UUxtTouchBasedHandTrackerComponent::GetTrackingStatus, FUxtDefaultHandTracker::GetTrackingStatus
Get tracking status of the hand or motion controller.
function IsHandController
virtual bool IsHandController(
EControllerHand Hand
) const =0
Reimplemented by: FDummyHandTracker::IsHandController, UUxtTouchBasedHandTrackerComponent::IsHandController, FUxtDefaultHandTracker::IsHandController
True if the controller is a hand.
function GetJointState
virtual bool GetJointState(
EControllerHand Hand,
EHandKeypoint Joint,
FQuat & OutOrientation,
FVector & OutPosition,
float & OutRadius
) const =0
Reimplemented by: FDummyHandTracker::GetJointState, UUxtTouchBasedHandTrackerComponent::GetJointState, FUxtDefaultHandTracker::GetJointState
Obtain the state of the given joint. Returns false if the hand is not tracked this frame, in which case the values of the output parameters are unchanged.
function GetPointerPose
virtual bool GetPointerPose(
EControllerHand Hand,
FQuat & OutOrientation,
FVector & OutPosition
) const =0
Reimplemented by: FDummyHandTracker::GetPointerPose, UUxtTouchBasedHandTrackerComponent::GetPointerPose, FUxtDefaultHandTracker::GetPointerPose
Obtain the pointer pose. Returns false if the hand is not tracked this frame, in which case the value of the output parameter is unchanged.
function GetGripPose
virtual bool GetGripPose(
EControllerHand Hand,
FQuat & OutOrientation,
FVector & OutPosition
) const =0
Reimplemented by: FDummyHandTracker::GetGripPose, UUxtTouchBasedHandTrackerComponent::GetGripPose, FUxtDefaultHandTracker::GetGripPose
Grip pose following the controller. Returns false if the hand is not tracked this frame, in which case the value of the output parameter is unchanged.
function GetIsGrabbing
virtual bool GetIsGrabbing(
EControllerHand Hand,
bool & OutIsGrabbing
) const =0
Reimplemented by: FDummyHandTracker::GetIsGrabbing, UUxtTouchBasedHandTrackerComponent::GetIsGrabbing, FUxtDefaultHandTracker::GetIsGrabbing
Obtain current grabbing state. Returns false if the hand is not tracked this frame, in which case the value of the output parameter is unchanged.
function GetIsSelectPressed
virtual bool GetIsSelectPressed(
EControllerHand Hand,
bool & OutIsSelectPressed
) const =0
Reimplemented by: FDummyHandTracker::GetIsSelectPressed, UUxtTouchBasedHandTrackerComponent::GetIsSelectPressed, FUxtDefaultHandTracker::GetIsSelectPressed
Obtain current selection state. Returns false if the hand is not tracked this frame, in which case the value of the output parameter is unchanged.
Updated on 19 August 2021 at 17:42:51 Coordinated Universal Time