// 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 passed in with a call to registered event. /// public struct ParticipantUpdatedCallbackInfo : ICallbackInfo { /// /// Client-specified data passed into . /// public object ClientData { get; set; } /// /// The Product User ID of the user who initiated this request. /// public ProductUserId LocalUserId { get; set; } /// /// The room associated with this event. /// public Utf8String RoomName { get; set; } /// /// The participant updated. /// public ProductUserId ParticipantId { get; set; } /// /// The participant speaking / non-speaking status. /// public bool Speaking { get; set; } /// /// The participant audio status (enabled, disabled). /// public RTCAudioStatus AudioStatus { get; set; } public Result? GetResultCode() { return null; } internal void Set(ref ParticipantUpdatedCallbackInfoInternal other) { ClientData = other.ClientData; LocalUserId = other.LocalUserId; RoomName = other.RoomName; ParticipantId = other.ParticipantId; Speaking = other.Speaking; AudioStatus = other.AudioStatus; } } [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] internal struct ParticipantUpdatedCallbackInfoInternal : ICallbackInfoInternal, IGettable, ISettable, System.IDisposable { private System.IntPtr m_ClientData; private System.IntPtr m_LocalUserId; private System.IntPtr m_RoomName; private System.IntPtr m_ParticipantId; private int m_Speaking; private RTCAudioStatus m_AudioStatus; public object ClientData { get { object value; Helper.Get(m_ClientData, out value); return value; } set { Helper.Set(value, ref m_ClientData); } } public System.IntPtr ClientDataAddress { get { return m_ClientData; } } public ProductUserId LocalUserId { get { ProductUserId value; Helper.Get(m_LocalUserId, out value); return value; } set { Helper.Set(value, ref m_LocalUserId); } } public Utf8String RoomName { get { Utf8String value; Helper.Get(m_RoomName, out value); return value; } set { Helper.Set(value, ref m_RoomName); } } public ProductUserId ParticipantId { get { ProductUserId value; Helper.Get(m_ParticipantId, out value); return value; } set { Helper.Set(value, ref m_ParticipantId); } } public bool Speaking { get { bool value; Helper.Get(m_Speaking, out value); return value; } set { Helper.Set(value, ref m_Speaking); } } public RTCAudioStatus AudioStatus { get { return m_AudioStatus; } set { m_AudioStatus = value; } } public void Set(ref ParticipantUpdatedCallbackInfo other) { ClientData = other.ClientData; LocalUserId = other.LocalUserId; RoomName = other.RoomName; ParticipantId = other.ParticipantId; Speaking = other.Speaking; AudioStatus = other.AudioStatus; } public void Set(ref ParticipantUpdatedCallbackInfo? other) { if (other.HasValue) { ClientData = other.Value.ClientData; LocalUserId = other.Value.LocalUserId; RoomName = other.Value.RoomName; ParticipantId = other.Value.ParticipantId; Speaking = other.Value.Speaking; AudioStatus = other.Value.AudioStatus; } } public void Dispose() { Helper.Dispose(ref m_ClientData); Helper.Dispose(ref m_LocalUserId); Helper.Dispose(ref m_RoomName); Helper.Dispose(ref m_ParticipantId); } public void Get(out ParticipantUpdatedCallbackInfo output) { output = new ParticipantUpdatedCallbackInfo(); output.Set(ref this); } } }