// Copyright Epic Games, Inc. All Rights Reserved. // This file is automatically generated. Changes to this file may be overwritten. namespace Epic.OnlineServices.TitleStorage { /// /// Structure containing the information about a file transfer in progress (or one that has completed) /// public class FileTransferProgressCallbackInfo : ICallbackInfo, ISettable { /// /// Client-specified data passed into the file request /// public object ClientData { get; private set; } /// /// Product User ID of the local user who initiated this request (optional, will only be present in case it was provided during operation start) /// public ProductUserId LocalUserId { get; private set; } /// /// The file name of the file being transferred /// public string Filename { get; private set; } /// /// Amount of bytes transferred so far in this request, out of TotalFileSizeBytes /// public uint BytesTransferred { get; private set; } /// /// The total size of the file being transferred (Includes file header in addition to file contents, can be slightly more than expected) /// public uint TotalFileSizeBytes { get; private set; } public Result? GetResultCode() { return null; } internal void Set(FileTransferProgressCallbackInfoInternal? other) { if (other != null) { ClientData = other.Value.ClientData; LocalUserId = other.Value.LocalUserId; Filename = other.Value.Filename; BytesTransferred = other.Value.BytesTransferred; TotalFileSizeBytes = other.Value.TotalFileSizeBytes; } } public void Set(object other) { Set(other as FileTransferProgressCallbackInfoInternal?); } } [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] internal struct FileTransferProgressCallbackInfoInternal : ICallbackInfoInternal { private System.IntPtr m_ClientData; private System.IntPtr m_LocalUserId; private System.IntPtr m_Filename; private uint m_BytesTransferred; private uint m_TotalFileSizeBytes; 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 BytesTransferred { get { return m_BytesTransferred; } } public uint TotalFileSizeBytes { get { return m_TotalFileSizeBytes; } } } }