mixedreality/com.microsoft.mixedreality..../Core/EventDatum/Input/SpeechEventData.cs

51 lines
1.6 KiB
C#

// Copyright (c) Microsoft Corporation.
// Licensed under the MIT License.
using Microsoft.MixedReality.Toolkit.Utilities;
using System;
using UnityEngine.EventSystems;
namespace Microsoft.MixedReality.Toolkit.Input
{
/// <summary>
/// Describes an input event that involves keyword recognition.
/// </summary>
public class SpeechEventData : BaseInputEventData
{
/// <summary>
/// The time it took for the phrase to be uttered.
/// </summary>
public TimeSpan PhraseDuration { get; private set; }
/// <summary>
/// The moment in UTC time when uttering of the phrase began.
/// </summary>
public DateTime PhraseStartTime { get; private set; }
/// <summary>
/// The text that was recognized.
/// </summary>
public SpeechCommands Command { get; private set; }
/// <summary>
/// A measure of correct recognition certainty.
/// </summary>
public RecognitionConfidenceLevel Confidence { get; private set; }
/// <inheritdoc />
public SpeechEventData(EventSystem eventSystem) : base(eventSystem) { }
/// <summary>
/// Populates the event with data.
/// </summary>
public void Initialize(IMixedRealityInputSource inputSource, RecognitionConfidenceLevel confidence, TimeSpan phraseDuration, DateTime phraseStartTime, SpeechCommands command)
{
BaseInitialize(inputSource, command.Action);
Confidence = confidence;
PhraseDuration = phraseDuration;
PhraseStartTime = phraseStartTime;
Command = command;
}
}
}