# TrackingAnalyzer

The TrackingAnalyzer component is responsible for interpreting incoming platform status and localization results and constructing a tracking status to describe the current quality of positioning.

# Interface

public interface ITrackingAnalyzer
{
    public ITrackingStatus TrackingStatus { get; }
    public void Analyze(IPlatformStatus platformStatus, ILocalizationResults localizationResults);
}

# TrackingStatus

This field accessor simply returns the current ITrackingStatus that the TrackingAnalyzer is managing:

public interface ITrackingStatus
{
    int LocalizationAttemptCount { get; }
    int LocalizationSuccessCount { get; }
    int TrackingQuality { get; }
}

# Analyze

Implementations get new data from this method.

ImmersalSession calls this at the very end of it's pipeline update cycle.

# Implementation

The SDK comes with a ready to use implementation of a TrackingAnalyzer with the following features:

  • A tracking quality update loop with configurable pose decay
  • Convenient events invoked on tracking quality state changes