using PepperDash.Core; using PepperDash.Essentials.Core; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace PepperDash.Essentials.Devices.Common.Codec.Cisco { /// /// Describes the available tracking modes for a Cisco codec's Presenter Track feature. /// public enum ePresenterTrackMode { /// /// Presenter Track is turned off. /// Off, /// /// Presenter Track follows the speaker's movements. /// Follow, /// /// Presenter Track is set to background mode, where it tracks the speaker but does not actively follow. /// Background, /// /// Presenter Track is set to persistent mode, where it maintains a fixed position or focus on the speaker. /// Persistent } /// /// Describes the Presenter Track controls for a Cisco codec. /// public interface IPresenterTrack : IKeyed { /// /// /// bool PresenterTrackAvailability { get; } /// /// Feedback indicating whether Presenter Track is available. /// BoolFeedback PresenterTrackAvailableFeedback { get; } /// /// Feedback indicating the current status of Presenter Track is off /// BoolFeedback PresenterTrackStatusOffFeedback { get; } /// /// Feedback indicating the current status of Presenter Track is follow /// BoolFeedback PresenterTrackStatusFollowFeedback { get; } /// /// Feedback indicating the current status of Presenter Track is background /// BoolFeedback PresenterTrackStatusBackgroundFeedback { get; } /// /// Feedback indicating the current status of Presenter Track is persistent /// BoolFeedback PresenterTrackStatusPersistentFeedback { get; } /// /// Indicates the current status of Presenter Track. /// bool PresenterTrackStatus { get; } /// /// Turns off Presenter Track. /// void PresenterTrackOff(); /// /// Turns on Presenter Track in follow mode. /// void PresenterTrackFollow(); /// /// Turns on Presenter Track in background mode. /// void PresenterTrackBackground(); /// /// Turns on Presenter Track in persistent mode. /// void PresenterTrackPersistent(); } }