Class QCOMTrackingOptimizationSettings
This extension defines an API for the application to give optimization hints to the runtime for tracker domains.
For example, an application might be interested in tracking targets that are at a far distance from the camera which may increase tracking latency, while another application might be interested in minimizing power consumption at the cost of tracking accuracy. Targets are domains which are defined in XrTrackingOptimizationSettingsDomainQCOM.
This allows the application to tailor the tracking algorithms to specific use-cases and scene-scales in order to provide the best experience possible.
Summary: provide domain hints to the run-time about which parameters to optimize tracking for.
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final intExtendsXrResult.static final StringThe extension name.static final intThe extension specification version.static final intXrTrackingOptimizationSettingsDomainQCOM - Domains to apply tracking optimization hintsstatic final intXrTrackingOptimizationSettingsHintQCOM - Hints for prioritizing different tracking goalsstatic final intXrTrackingOptimizationSettingsHintQCOM - Hints for prioritizing different tracking goalsstatic final intXrTrackingOptimizationSettingsHintQCOM - Hints for prioritizing different tracking goalsstatic final intXrTrackingOptimizationSettingsHintQCOM - Hints for prioritizing different tracking goalsstatic final intXrTrackingOptimizationSettingsHintQCOM - Hints for prioritizing different tracking goals -
Method Summary
Modifier and TypeMethodDescriptionstatic intxrSetTrackingOptimizationSettingsHintQCOM(XrSession session, int domain, int hint) Submit a tracking optimization hint.
-
Field Details
-
XR_QCOM_tracking_optimization_settings_SPEC_VERSION
public static final int XR_QCOM_tracking_optimization_settings_SPEC_VERSIONThe extension specification version.- See Also:
-
XR_QCOM_TRACKING_OPTIMIZATION_SETTINGS_EXTENSION_NAME
The extension name.- See Also:
-
XR_ERROR_HINT_ALREADY_SET_QCOM
public static final int XR_ERROR_HINT_ALREADY_SET_QCOMExtendsXrResult.- See Also:
-
XR_TRACKING_OPTIMIZATION_SETTINGS_DOMAIN_ALL_QCOM
public static final int XR_TRACKING_OPTIMIZATION_SETTINGS_DOMAIN_ALL_QCOMXrTrackingOptimizationSettingsDomainQCOM - Domains to apply tracking optimization hintsEnumerant Descriptions
TRACKING_OPTIMIZATION_SETTINGS_DOMAIN_ALL_QCOM— Setting applies to all QCOM tracking extensions.
See Also
- See Also:
-
XR_TRACKING_OPTIMIZATION_SETTINGS_HINT_NONE_QCOM
public static final int XR_TRACKING_OPTIMIZATION_SETTINGS_HINT_NONE_QCOMXrTrackingOptimizationSettingsHintQCOM - Hints for prioritizing different tracking goalsEnumerant Descriptions
TRACKING_OPTIMIZATION_SETTINGS_HINT_NONE_QCOM— Used by the application to indicate that it does not have a preference to optimize for. The run-time is understood to choose a balanced approach.TRACKING_OPTIMIZATION_SETTINGS_HINT_LONG_RANGE_PRIORIZATION_QCOM— Used by the application to indicate that it prefers tracking to be optimized for long range, possibly at the expense of competing interests.TRACKING_OPTIMIZATION_SETTINGS_HINT_CLOSE_RANGE_PRIORIZATION_QCOM— Used by the application to indicate that it prefers tracking to be optimized for close range, possibly at the expense of competing interests.TRACKING_OPTIMIZATION_SETTINGS_HINT_LOW_POWER_PRIORIZATION_QCOM— Used by the application to indicate that it prefers tracking to be optimized for low power consumption, possibly at the expense of competing interests.TRACKING_OPTIMIZATION_SETTINGS_HINT_HIGH_POWER_PRIORIZATION_QCOM— Used by the application to indicate that it prefers tracking to be optimized for increased tracking performance, possibly at the cost of increased power consumption.
See Also
- See Also:
-
XR_TRACKING_OPTIMIZATION_SETTINGS_HINT_LONG_RANGE_PRIORIZATION_QCOM
public static final int XR_TRACKING_OPTIMIZATION_SETTINGS_HINT_LONG_RANGE_PRIORIZATION_QCOMXrTrackingOptimizationSettingsHintQCOM - Hints for prioritizing different tracking goalsEnumerant Descriptions
TRACKING_OPTIMIZATION_SETTINGS_HINT_NONE_QCOM— Used by the application to indicate that it does not have a preference to optimize for. The run-time is understood to choose a balanced approach.TRACKING_OPTIMIZATION_SETTINGS_HINT_LONG_RANGE_PRIORIZATION_QCOM— Used by the application to indicate that it prefers tracking to be optimized for long range, possibly at the expense of competing interests.TRACKING_OPTIMIZATION_SETTINGS_HINT_CLOSE_RANGE_PRIORIZATION_QCOM— Used by the application to indicate that it prefers tracking to be optimized for close range, possibly at the expense of competing interests.TRACKING_OPTIMIZATION_SETTINGS_HINT_LOW_POWER_PRIORIZATION_QCOM— Used by the application to indicate that it prefers tracking to be optimized for low power consumption, possibly at the expense of competing interests.TRACKING_OPTIMIZATION_SETTINGS_HINT_HIGH_POWER_PRIORIZATION_QCOM— Used by the application to indicate that it prefers tracking to be optimized for increased tracking performance, possibly at the cost of increased power consumption.
See Also
- See Also:
-
XR_TRACKING_OPTIMIZATION_SETTINGS_HINT_CLOSE_RANGE_PRIORIZATION_QCOM
public static final int XR_TRACKING_OPTIMIZATION_SETTINGS_HINT_CLOSE_RANGE_PRIORIZATION_QCOMXrTrackingOptimizationSettingsHintQCOM - Hints for prioritizing different tracking goalsEnumerant Descriptions
TRACKING_OPTIMIZATION_SETTINGS_HINT_NONE_QCOM— Used by the application to indicate that it does not have a preference to optimize for. The run-time is understood to choose a balanced approach.TRACKING_OPTIMIZATION_SETTINGS_HINT_LONG_RANGE_PRIORIZATION_QCOM— Used by the application to indicate that it prefers tracking to be optimized for long range, possibly at the expense of competing interests.TRACKING_OPTIMIZATION_SETTINGS_HINT_CLOSE_RANGE_PRIORIZATION_QCOM— Used by the application to indicate that it prefers tracking to be optimized for close range, possibly at the expense of competing interests.TRACKING_OPTIMIZATION_SETTINGS_HINT_LOW_POWER_PRIORIZATION_QCOM— Used by the application to indicate that it prefers tracking to be optimized for low power consumption, possibly at the expense of competing interests.TRACKING_OPTIMIZATION_SETTINGS_HINT_HIGH_POWER_PRIORIZATION_QCOM— Used by the application to indicate that it prefers tracking to be optimized for increased tracking performance, possibly at the cost of increased power consumption.
See Also
- See Also:
-
XR_TRACKING_OPTIMIZATION_SETTINGS_HINT_LOW_POWER_PRIORIZATION_QCOM
public static final int XR_TRACKING_OPTIMIZATION_SETTINGS_HINT_LOW_POWER_PRIORIZATION_QCOMXrTrackingOptimizationSettingsHintQCOM - Hints for prioritizing different tracking goalsEnumerant Descriptions
TRACKING_OPTIMIZATION_SETTINGS_HINT_NONE_QCOM— Used by the application to indicate that it does not have a preference to optimize for. The run-time is understood to choose a balanced approach.TRACKING_OPTIMIZATION_SETTINGS_HINT_LONG_RANGE_PRIORIZATION_QCOM— Used by the application to indicate that it prefers tracking to be optimized for long range, possibly at the expense of competing interests.TRACKING_OPTIMIZATION_SETTINGS_HINT_CLOSE_RANGE_PRIORIZATION_QCOM— Used by the application to indicate that it prefers tracking to be optimized for close range, possibly at the expense of competing interests.TRACKING_OPTIMIZATION_SETTINGS_HINT_LOW_POWER_PRIORIZATION_QCOM— Used by the application to indicate that it prefers tracking to be optimized for low power consumption, possibly at the expense of competing interests.TRACKING_OPTIMIZATION_SETTINGS_HINT_HIGH_POWER_PRIORIZATION_QCOM— Used by the application to indicate that it prefers tracking to be optimized for increased tracking performance, possibly at the cost of increased power consumption.
See Also
- See Also:
-
XR_TRACKING_OPTIMIZATION_SETTINGS_HINT_HIGH_POWER_PRIORIZATION_QCOM
public static final int XR_TRACKING_OPTIMIZATION_SETTINGS_HINT_HIGH_POWER_PRIORIZATION_QCOMXrTrackingOptimizationSettingsHintQCOM - Hints for prioritizing different tracking goalsEnumerant Descriptions
TRACKING_OPTIMIZATION_SETTINGS_HINT_NONE_QCOM— Used by the application to indicate that it does not have a preference to optimize for. The run-time is understood to choose a balanced approach.TRACKING_OPTIMIZATION_SETTINGS_HINT_LONG_RANGE_PRIORIZATION_QCOM— Used by the application to indicate that it prefers tracking to be optimized for long range, possibly at the expense of competing interests.TRACKING_OPTIMIZATION_SETTINGS_HINT_CLOSE_RANGE_PRIORIZATION_QCOM— Used by the application to indicate that it prefers tracking to be optimized for close range, possibly at the expense of competing interests.TRACKING_OPTIMIZATION_SETTINGS_HINT_LOW_POWER_PRIORIZATION_QCOM— Used by the application to indicate that it prefers tracking to be optimized for low power consumption, possibly at the expense of competing interests.TRACKING_OPTIMIZATION_SETTINGS_HINT_HIGH_POWER_PRIORIZATION_QCOM— Used by the application to indicate that it prefers tracking to be optimized for increased tracking performance, possibly at the cost of increased power consumption.
See Also
- See Also:
-
-
Method Details
-
xrSetTrackingOptimizationSettingsHintQCOM
public static int xrSetTrackingOptimizationSettingsHintQCOM(XrSession session, int domain, int hint) Submit a tracking optimization hint.C Specification
The
SetTrackingOptimizationSettingsHintQCOMfunction is defined as:XrResult xrSetTrackingOptimizationSettingsHintQCOM( XrSession session, XrTrackingOptimizationSettingsDomainQCOM domain, XrTrackingOptimizationSettingsHintQCOM hint);Description
The XR runtime behaves as if
TRACKING_OPTIMIZATION_SETTINGS_HINT_NONE_QCOMwas submitted if the application does not provide a hint.The XR runtime must return
ERROR_VALIDATION_FAILUREif the application sets a domain or hint not part ofXrTrackingOptimizationSettingsDomainQCOMorXrTrackingOptimizationSettingsHintQCOM.A hint is typically set before a domain handle is created. If hints are set more than once from one or concurrent sessions, the runtime may accommodate the first hint it received and return
ERROR_HINT_ALREADY_SET_QCOMfor any subsequent calls made.If the application destroys the active domain handle associated with the hint, the runtime may behave as if
TRACKING_OPTIMIZATION_SETTINGS_HINT_NONE_QCOMwas set. In this scenario, the runtime should accommodate new valid hints that may be set for the same domain.Valid Usage (Implicit)
- The
XR_QCOM_tracking_optimization_settingsextension must be enabled prior to callingSetTrackingOptimizationSettingsHintQCOM sessionmust be a validXrSessionhandledomainmust be a validXrTrackingOptimizationSettingsDomainQCOMvaluehintmust be a validXrTrackingOptimizationSettingsHintQCOMvalue
Return Codes
- On success, this command returns
- On failure, this command returns
- Parameters:
session- a validXrSessionhandle.domain- the tracking domain for which the hint is appliedhint- the hint to be applied
- The
-