You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

108 lines
2.8 KiB

// Copyright Epic Games, Inc. All Rights Reserved.
// This file is automatically generated. Changes to this file may be overwritten.
namespace Epic.OnlineServices.RTC
{
/// <summary>
/// This struct is used to call <see cref="RTCInterface.SetRoomSetting" />
///
/// Available values of SettingName:
/// - DisableEchoCancelation: Disables the use of echo cancellation for the audio channel. Default "False".
/// - DisableNoiseSupression: Disables the use of noise suppression for the audio channel. Default "False".
/// - DisableAutoGainControl: Disables the use of auto gain control for the audio channel. Default "False".
/// - DisableDtx: Allows to disable the use of DTX. Default "False".
/// </summary>
public struct SetRoomSettingOptions
{
/// <summary>
/// The Product User ID of the user trying to request this operation.
/// </summary>
public ProductUserId LocalUserId { get; set; }
/// <summary>
/// The room the setting will be applied to.
/// </summary>
public Utf8String RoomName { get; set; }
/// <summary>
/// Setting that should be set.
/// </summary>
public Utf8String SettingName { get; set; }
/// <summary>
/// Value to set the setting to.
/// </summary>
public Utf8String SettingValue { get; set; }
}
[System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)]
internal struct SetRoomSettingOptionsInternal : ISettable<SetRoomSettingOptions>, System.IDisposable
{
private int m_ApiVersion;
private System.IntPtr m_LocalUserId;
private System.IntPtr m_RoomName;
private System.IntPtr m_SettingName;
private System.IntPtr m_SettingValue;
public ProductUserId LocalUserId
{
set
{
Helper.Set(value, ref m_LocalUserId);
}
}
public Utf8String RoomName
{
set
{
Helper.Set(value, ref m_RoomName);
}
}
public Utf8String SettingName
{
set
{
Helper.Set(value, ref m_SettingName);
}
}
public Utf8String SettingValue
{
set
{
Helper.Set(value, ref m_SettingValue);
}
}
public void Set(ref SetRoomSettingOptions other)
{
m_ApiVersion = RTCInterface.SetroomsettingApiLatest;
LocalUserId = other.LocalUserId;
RoomName = other.RoomName;
SettingName = other.SettingName;
SettingValue = other.SettingValue;
}
public void Set(ref SetRoomSettingOptions? other)
{
if (other.HasValue)
{
m_ApiVersion = RTCInterface.SetroomsettingApiLatest;
LocalUserId = other.Value.LocalUserId;
RoomName = other.Value.RoomName;
SettingName = other.Value.SettingName;
SettingValue = other.Value.SettingValue;
}
}
public void Dispose()
{
Helper.Dispose(ref m_LocalUserId);
Helper.Dispose(ref m_RoomName);
Helper.Dispose(ref m_SettingName);
Helper.Dispose(ref m_SettingValue);
}
}
}