// Copyright Epic Games, Inc. All Rights Reserved. // This file is automatically generated. Changes to this file may be overwritten. namespace Epic.OnlineServices.RTCAudio { /// /// This struct is used to get information about a specific input device. /// public class AudioInputDeviceInfo : ISettable { /// /// True if this is the default audio input device in the system. /// public bool DefaultDevice { get; set; } /// /// The persistent unique id of the device. /// public string DeviceId { get; set; } /// /// The name of the device /// public string DeviceName { get; set; } internal void Set(AudioInputDeviceInfoInternal? other) { if (other != null) { DefaultDevice = other.Value.DefaultDevice; DeviceId = other.Value.DeviceId; DeviceName = other.Value.DeviceName; } } public void Set(object other) { Set(other as AudioInputDeviceInfoInternal?); } } [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] internal struct AudioInputDeviceInfoInternal : ISettable, System.IDisposable { private int m_ApiVersion; private int m_DefaultDevice; private System.IntPtr m_DeviceId; private System.IntPtr m_DeviceName; public bool DefaultDevice { get { bool value; Helper.TryMarshalGet(m_DefaultDevice, out value); return value; } set { Helper.TryMarshalSet(ref m_DefaultDevice, value); } } public string DeviceId { get { string value; Helper.TryMarshalGet(m_DeviceId, out value); return value; } set { Helper.TryMarshalSet(ref m_DeviceId, value); } } public string DeviceName { get { string value; Helper.TryMarshalGet(m_DeviceName, out value); return value; } set { Helper.TryMarshalSet(ref m_DeviceName, value); } } public void Set(AudioInputDeviceInfo other) { if (other != null) { m_ApiVersion = RTCAudioInterface.AudioinputdeviceinfoApiLatest; DefaultDevice = other.DefaultDevice; DeviceId = other.DeviceId; DeviceName = other.DeviceName; } } public void Set(object other) { Set(other as AudioInputDeviceInfo); } public void Dispose() { Helper.TryMarshalDispose(ref m_DeviceId); Helper.TryMarshalDispose(ref m_DeviceName); } } }