// Copyright Epic Games, Inc. All Rights Reserved. // This file is automatically generated. Changes to this file may be overwritten. namespace Epic.OnlineServices.Platform { /// /// Options for initializing mount paths required for some platforms. /// public struct PS4InitializeOptionsSystemInitializeOptions { /// /// The commandline, as passed to the app. /// Set to nullptr or empty if not used. /// public Utf8String CommandLine { get; set; } /// /// The base path of the overlay prx. /// Passed in nullptr will fall back to default ('/app0'). /// public Utf8String OverlayPrxBasePath { get; set; } /// /// Allocator for physical memory. /// public System.IntPtr AllocatePhysicalMemoryFunction { get; set; } /// /// Corresponding memory releaser for physical memory. /// public System.IntPtr ReleasePhysicalMemoryFunction { get; set; } internal void Set(ref PS4InitializeOptionsSystemInitializeOptionsInternal other) { CommandLine = other.CommandLine; OverlayPrxBasePath = other.OverlayPrxBasePath; } } [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)] internal struct PS4InitializeOptionsSystemInitializeOptionsInternal : IGettable, ISettable, System.IDisposable { private int m_ApiVersion; private System.IntPtr m_CommandLine; private System.IntPtr m_OverlayPrxBasePath; private System.IntPtr m_AllocatePhysicalMemoryFunction; private System.IntPtr m_ReleasePhysicalMemoryFunction; public Utf8String CommandLine { get { Utf8String value; Helper.Get(m_CommandLine, out value); return value; } set { Helper.Set(value, ref m_CommandLine); } } public Utf8String OverlayPrxBasePath { get { Utf8String value; Helper.Get(m_OverlayPrxBasePath, out value); return value; } set { Helper.Set(value, ref m_OverlayPrxBasePath); } } public System.IntPtr AllocatePhysicalMemoryFunction { get { return m_AllocatePhysicalMemoryFunction; } set { m_AllocatePhysicalMemoryFunction = value; } } public System.IntPtr ReleasePhysicalMemoryFunction { get { return m_ReleasePhysicalMemoryFunction; } set { m_ReleasePhysicalMemoryFunction = value; } } public void Set(ref PS4InitializeOptionsSystemInitializeOptions other) { m_ApiVersion = PlatformInterface.Ps4InitializeoptionssysteminitializeoptionsApiLatest; CommandLine = other.CommandLine; OverlayPrxBasePath = other.OverlayPrxBasePath; AllocatePhysicalMemoryFunction = other.AllocatePhysicalMemoryFunction; ReleasePhysicalMemoryFunction = other.ReleasePhysicalMemoryFunction; } public void Set(ref PS4InitializeOptionsSystemInitializeOptions? other) { if (other.HasValue) { m_ApiVersion = PlatformInterface.Ps4InitializeoptionssysteminitializeoptionsApiLatest; CommandLine = other.Value.CommandLine; OverlayPrxBasePath = other.Value.OverlayPrxBasePath; AllocatePhysicalMemoryFunction = other.Value.AllocatePhysicalMemoryFunction; ReleasePhysicalMemoryFunction = other.Value.ReleasePhysicalMemoryFunction; } } public void Dispose() { Helper.Dispose(ref m_CommandLine); Helper.Dispose(ref m_OverlayPrxBasePath); Helper.Dispose(ref m_AllocatePhysicalMemoryFunction); Helper.Dispose(ref m_ReleasePhysicalMemoryFunction); } public void Get(out PS4InitializeOptionsSystemInitializeOptions output) { output = new PS4InitializeOptionsSystemInitializeOptions(); output.Set(ref this); } } }