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.

142 lines
3.0 KiB

// Copyright Epic Games, Inc. All Rights Reserved.
// This file is automatically generated. Changes to this file may be overwritten.
namespace Epic.OnlineServices.TitleStorage
{
/// <summary>
/// Structure containing data for a chunk of a file being read
/// </summary>
public class ReadFileDataCallbackInfo : ICallbackInfo, ISettable
{
/// <summary>
/// Client-specified data passed into the file request
/// </summary>
public object ClientData { get; private set; }
/// <summary>
/// Product User ID of the local user who initiated this request (optional, will only be present in case it was provided during operation start)
/// </summary>
public ProductUserId LocalUserId { get; private set; }
/// <summary>
/// The file name being read
/// </summary>
public string Filename { get; private set; }
/// <summary>
/// The total file size of the file being read
/// </summary>
public uint TotalFileSizeBytes { get; private set; }
/// <summary>
/// Is this chunk the last chunk of data?
/// </summary>
public bool IsLastChunk { get; private set; }
/// <summary>
/// Pointer to the start of data to be read
/// </summary>
public byte[] DataChunk { get; private set; }
public Result? GetResultCode()
{
return null;
}
internal void Set(ReadFileDataCallbackInfoInternal? other)
{
if (other != null)
{
ClientData = other.Value.ClientData;
LocalUserId = other.Value.LocalUserId;
Filename = other.Value.Filename;
TotalFileSizeBytes = other.Value.TotalFileSizeBytes;
IsLastChunk = other.Value.IsLastChunk;
DataChunk = other.Value.DataChunk;
}
}
public void Set(object other)
{
Set(other as ReadFileDataCallbackInfoInternal?);
}
}
[System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)]
internal struct ReadFileDataCallbackInfoInternal : ICallbackInfoInternal
{
private System.IntPtr m_ClientData;
private System.IntPtr m_LocalUserId;
private System.IntPtr m_Filename;
private uint m_TotalFileSizeBytes;
private int m_IsLastChunk;
private uint m_DataChunkLengthBytes;
private System.IntPtr m_DataChunk;
public object ClientData
{
get
{
object value;
Helper.TryMarshalGet(m_ClientData, out value);
return value;
}
}
public System.IntPtr ClientDataAddress
{
get
{
return m_ClientData;
}
}
public ProductUserId LocalUserId
{
get
{
ProductUserId value;
Helper.TryMarshalGet(m_LocalUserId, out value);
return value;
}
}
public string Filename
{
get
{
string value;
Helper.TryMarshalGet(m_Filename, out value);
return value;
}
}
public uint TotalFileSizeBytes
{
get
{
return m_TotalFileSizeBytes;
}
}
public bool IsLastChunk
{
get
{
bool value;
Helper.TryMarshalGet(m_IsLastChunk, out value);
return value;
}
}
public byte[] DataChunk
{
get
{
byte[] value;
Helper.TryMarshalGet(m_DataChunk, out value, m_DataChunkLengthBytes);
return value;
}
}
}
}