API reference

IFingerFeatureStateProvider Interface

Defines an interface for tracking and managing finger states.
This interface provides methods to query current finger states, check state transitions, and access raw feature values for hand tracking.
Common implementations include Oculus.Interaction.PoseDetection.FingerFeatureStateProvider which uses Oculus.Interaction.PoseDetection.FingerFeatureStateThresholds to quantize continuous finger movements into discrete states.

Methods

GetCurrentState ( finger , fingerFeature , currentState )
Retrieves the current state of a specific finger feature.
Signature
bool Oculus.Interaction.PoseDetection.IFingerFeatureStateProvider.GetCurrentState(HandFinger finger, FingerFeature fingerFeature, out string currentState)
Parameters
finger: HandFinger  The HandFinger to query.
fingerFeature: FingerFeature  The specific FingerFeature to check (e.g., curl, flexion).
currentState: out string  The current state identifier if available.
Returns
bool  True if a valid state was retrieved, false otherwise.
GetFeatureValue ( finger , fingerFeature )
Gets the raw feature value for a specific finger and feature type.
Signature
float Oculus.Interaction.PoseDetection.IFingerFeatureStateProvider.GetFeatureValue(HandFinger finger, FingerFeature fingerFeature)
Parameters
finger: HandFinger  The HandFinger to measure.
fingerFeature: FingerFeature  The FingerFeature to measure.
Returns
float  The feature value if available, null otherwise.
IsStateActive ( finger , feature , mode , stateId )
Checks if a specific state is active for a given finger and feature.
Signature
bool Oculus.Interaction.PoseDetection.IFingerFeatureStateProvider.IsStateActive(HandFinger finger, FingerFeature feature, FeatureStateActiveMode mode, string stateId)
Parameters
finger: HandFinger  The HandFinger to check.
feature: FingerFeature  The FingerFeature to evaluate.
mode: FeatureStateActiveMode  The mode of state evaluation (Is/IsNot).
stateId: string  The state identifier to compare against.
Returns
bool  True if the state condition is met, false otherwise.