mirror of
https://github.com/PepperDash/Essentials.git
synced 2026-02-08 17:24:47 +00:00
Significantly restructure camera control interfaces and event arguments. Removed obsolete interfaces like `IHasCameras` and `CameraSelectedEventArgs`, and introduced generic event argument classes for improved type safety. Added `IHasCamerasWithControls` for better management of camera controls. Corrected the `IHasCameraMuteWithUnmuteReqeust` interface name. Reintroduced the `eCameraControlMode` enum to define camera control modes. These changes enhance the organization, clarity, and functionality of the camera control system.
32 lines
929 B
C#
32 lines
929 B
C#
using PepperDash.Core;
|
|
using PepperDash.Essentials.Core;
|
|
|
|
namespace PepperDash.Essentials.Devices.Common.Cameras
|
|
{
|
|
/// <summary>
|
|
/// Describes the ability to mute and unmute camera video
|
|
/// </summary>
|
|
public interface IHasCameraMute : IKeyName
|
|
{
|
|
/// <summary>
|
|
/// Feedback that indicates whether the camera is muted
|
|
/// </summary>
|
|
BoolFeedback CameraIsMutedFeedback { get; }
|
|
|
|
/// <summary>
|
|
/// Mutes the camera video, preventing it from being sent to the far end
|
|
/// </summary>
|
|
void CameraMuteOn();
|
|
|
|
/// <summary>
|
|
/// Unmutes the camera video, allowing it to be sent to the far end
|
|
/// </summary>
|
|
void CameraMuteOff();
|
|
|
|
/// <summary>
|
|
/// Toggles the camera mute state. If the camera is muted, it will be unmuted, and vice versa.
|
|
/// </summary>
|
|
void CameraMuteToggle();
|
|
}
|
|
}
|