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.
182 lines
8.2 KiB
182 lines
8.2 KiB
// Copyright Epic Games, Inc. All Rights Reserved.
|
|
// This file is automatically generated. Changes to this file may be overwritten.
|
|
|
|
namespace Epic.OnlineServices.Sessions
|
|
{
|
|
public sealed partial class SessionDetails : Handle
|
|
{
|
|
public SessionDetails()
|
|
{
|
|
}
|
|
|
|
public SessionDetails(System.IntPtr innerHandle) : base(innerHandle)
|
|
{
|
|
}
|
|
|
|
/// <summary>
|
|
/// The most recent version of the <see cref="SessionDetailsAttribute" /> struct.
|
|
/// </summary>
|
|
public const int SessiondetailsAttributeApiLatest = 1;
|
|
|
|
/// <summary>
|
|
/// The most recent version of the <see cref="CopyInfo" /> API.
|
|
/// </summary>
|
|
public const int SessiondetailsCopyinfoApiLatest = 1;
|
|
|
|
/// <summary>
|
|
/// The most recent version of the <see cref="CopySessionAttributeByIndex" /> API.
|
|
/// </summary>
|
|
public const int SessiondetailsCopysessionattributebyindexApiLatest = 1;
|
|
|
|
/// <summary>
|
|
/// The most recent version of the <see cref="CopySessionAttributeByKey" /> API.
|
|
/// </summary>
|
|
public const int SessiondetailsCopysessionattributebykeyApiLatest = 1;
|
|
|
|
/// <summary>
|
|
/// The most recent version of the <see cref="GetSessionAttributeCount" /> API.
|
|
/// </summary>
|
|
public const int SessiondetailsGetsessionattributecountApiLatest = 1;
|
|
|
|
/// <summary>
|
|
/// The most recent version of the <see cref="SessionDetailsInfo" /> struct.
|
|
/// </summary>
|
|
public const int SessiondetailsInfoApiLatest = 1;
|
|
|
|
/// <summary>
|
|
/// The most recent version of the <see cref="SessionDetailsSettings" /> struct.
|
|
/// </summary>
|
|
public const int SessiondetailsSettingsApiLatest = 3;
|
|
|
|
/// <summary>
|
|
/// <see cref="CopyInfo" /> is used to immediately retrieve a copy of session information from a given source such as a active session or a search result.
|
|
/// If the call returns an <see cref="Result.Success" /> result, the out parameter, OutSessionInfo, must be passed to <see cref="Release" /> to release the memory associated with it.
|
|
/// <seealso cref="SessionDetailsInfo" />
|
|
/// <seealso cref="SessionDetailsCopyInfoOptions" />
|
|
/// <seealso cref="Release" />
|
|
/// </summary>
|
|
/// <param name="options">Structure containing the input parameters</param>
|
|
/// <param name="outSessionInfo">Out parameter used to receive the <see cref="SessionDetailsInfo" /> structure.</param>
|
|
/// <returns>
|
|
/// <see cref="Result.Success" /> if the information is available and passed out in OutSessionInfo
|
|
/// <see cref="Result.InvalidParameters" /> if you pass a null pointer for the out parameter
|
|
/// <see cref="Result.IncompatibleVersion" /> if the API version passed in is incorrect
|
|
/// </returns>
|
|
public Result CopyInfo(ref SessionDetailsCopyInfoOptions options, out SessionDetailsInfo? outSessionInfo)
|
|
{
|
|
SessionDetailsCopyInfoOptionsInternal optionsInternal = new SessionDetailsCopyInfoOptionsInternal();
|
|
optionsInternal.Set(ref options);
|
|
|
|
var outSessionInfoAddress = System.IntPtr.Zero;
|
|
|
|
var funcResult = Bindings.EOS_SessionDetails_CopyInfo(InnerHandle, ref optionsInternal, ref outSessionInfoAddress);
|
|
|
|
Helper.Dispose(ref optionsInternal);
|
|
|
|
Helper.Get<SessionDetailsInfoInternal, SessionDetailsInfo>(outSessionInfoAddress, out outSessionInfo);
|
|
if (outSessionInfo != null)
|
|
{
|
|
Bindings.EOS_SessionDetails_Info_Release(outSessionInfoAddress);
|
|
}
|
|
|
|
return funcResult;
|
|
}
|
|
|
|
/// <summary>
|
|
/// <see cref="CopySessionAttributeByIndex" /> is used to immediately retrieve a copy of session attribution from a given source such as a active session or a search result.
|
|
/// If the call returns an <see cref="Result.Success" /> result, the out parameter, OutSessionAttribute, must be passed to <see cref="Release" /> to release the memory associated with it.
|
|
/// <seealso cref="SessionDetailsAttribute" />
|
|
/// <seealso cref="SessionDetailsCopySessionAttributeByIndexOptions" />
|
|
/// <seealso cref="Release" />
|
|
/// </summary>
|
|
/// <param name="options">Structure containing the input parameters</param>
|
|
/// <param name="outSessionAttribute">Out parameter used to receive the <see cref="SessionDetailsAttribute" /> structure.</param>
|
|
/// <returns>
|
|
/// <see cref="Result.Success" /> if the information is available and passed out in OutSessionAttribute
|
|
/// <see cref="Result.InvalidParameters" /> if you pass a null pointer for the out parameter
|
|
/// <see cref="Result.IncompatibleVersion" /> if the API version passed in is incorrect
|
|
/// </returns>
|
|
public Result CopySessionAttributeByIndex(ref SessionDetailsCopySessionAttributeByIndexOptions options, out SessionDetailsAttribute? outSessionAttribute)
|
|
{
|
|
SessionDetailsCopySessionAttributeByIndexOptionsInternal optionsInternal = new SessionDetailsCopySessionAttributeByIndexOptionsInternal();
|
|
optionsInternal.Set(ref options);
|
|
|
|
var outSessionAttributeAddress = System.IntPtr.Zero;
|
|
|
|
var funcResult = Bindings.EOS_SessionDetails_CopySessionAttributeByIndex(InnerHandle, ref optionsInternal, ref outSessionAttributeAddress);
|
|
|
|
Helper.Dispose(ref optionsInternal);
|
|
|
|
Helper.Get<SessionDetailsAttributeInternal, SessionDetailsAttribute>(outSessionAttributeAddress, out outSessionAttribute);
|
|
if (outSessionAttribute != null)
|
|
{
|
|
Bindings.EOS_SessionDetails_Attribute_Release(outSessionAttributeAddress);
|
|
}
|
|
|
|
return funcResult;
|
|
}
|
|
|
|
/// <summary>
|
|
/// <see cref="CopySessionAttributeByKey" /> is used to immediately retrieve a copy of session attribution from a given source such as a active session or a search result.
|
|
/// If the call returns an <see cref="Result.Success" /> result, the out parameter, OutSessionAttribute, must be passed to <see cref="Release" /> to release the memory associated with it.
|
|
/// <seealso cref="SessionDetailsAttribute" />
|
|
/// <seealso cref="SessionDetailsCopySessionAttributeByKeyOptions" />
|
|
/// <seealso cref="Release" />
|
|
/// </summary>
|
|
/// <param name="options">Structure containing the input parameters</param>
|
|
/// <param name="outSessionAttribute">Out parameter used to receive the <see cref="SessionDetailsAttribute" /> structure.</param>
|
|
/// <returns>
|
|
/// <see cref="Result.Success" /> if the information is available and passed out in OutSessionAttribute
|
|
/// <see cref="Result.InvalidParameters" /> if you pass a null pointer for the out parameter
|
|
/// <see cref="Result.IncompatibleVersion" /> if the API version passed in is incorrect
|
|
/// </returns>
|
|
public Result CopySessionAttributeByKey(ref SessionDetailsCopySessionAttributeByKeyOptions options, out SessionDetailsAttribute? outSessionAttribute)
|
|
{
|
|
SessionDetailsCopySessionAttributeByKeyOptionsInternal optionsInternal = new SessionDetailsCopySessionAttributeByKeyOptionsInternal();
|
|
optionsInternal.Set(ref options);
|
|
|
|
var outSessionAttributeAddress = System.IntPtr.Zero;
|
|
|
|
var funcResult = Bindings.EOS_SessionDetails_CopySessionAttributeByKey(InnerHandle, ref optionsInternal, ref outSessionAttributeAddress);
|
|
|
|
Helper.Dispose(ref optionsInternal);
|
|
|
|
Helper.Get<SessionDetailsAttributeInternal, SessionDetailsAttribute>(outSessionAttributeAddress, out outSessionAttribute);
|
|
if (outSessionAttribute != null)
|
|
{
|
|
Bindings.EOS_SessionDetails_Attribute_Release(outSessionAttributeAddress);
|
|
}
|
|
|
|
return funcResult;
|
|
}
|
|
|
|
/// <summary>
|
|
/// Get the number of attributes associated with this session
|
|
/// </summary>
|
|
/// <param name="options">the Options associated with retrieving the attribute count</param>
|
|
/// <returns>
|
|
/// number of attributes on the session or 0 if there is an error
|
|
/// </returns>
|
|
public uint GetSessionAttributeCount(ref SessionDetailsGetSessionAttributeCountOptions options)
|
|
{
|
|
SessionDetailsGetSessionAttributeCountOptionsInternal optionsInternal = new SessionDetailsGetSessionAttributeCountOptionsInternal();
|
|
optionsInternal.Set(ref options);
|
|
|
|
var funcResult = Bindings.EOS_SessionDetails_GetSessionAttributeCount(InnerHandle, ref optionsInternal);
|
|
|
|
Helper.Dispose(ref optionsInternal);
|
|
|
|
return funcResult;
|
|
}
|
|
|
|
/// <summary>
|
|
/// Release the memory associated with a single session. This must be called on data retrieved from <see cref="SessionSearch.CopySearchResultByIndex" />.
|
|
/// <seealso cref="SessionSearch.CopySearchResultByIndex" />
|
|
/// </summary>
|
|
/// <param name="sessionHandle">- The session handle to release</param>
|
|
public void Release()
|
|
{
|
|
Bindings.EOS_SessionDetails_Release(InnerHandle);
|
|
}
|
|
}
|
|
}
|