Class EOS_IntegratedPlatform_Steam_Options

java.lang.Object
com.sun.jna.Structure
host.anzo.eossdk.eos.sdk.integratedplatform.options.EOS_IntegratedPlatform_Steam_Options
Direct Known Subclasses:
EOS_IntegratedPlatform_Steam_Options.ByReference, EOS_IntegratedPlatform_Steam_Options.ByValue

@FieldOrder({"ApiVersion","OverrideLibraryPath","SteamMajorVersion","SteamMinorVersion","SteamApiInterfaceVersionsArray","SteamApiInterfaceVersionsArrayBytes"}) public class EOS_IntegratedPlatform_Steam_Options extends com.sun.jna.Structure
Required initialization options to use with EOS_IntegratedPlatform_Options for Steam. Steamworks API needs to be at least v1.13 Steam Sanitization requires at least v1.45 Starting Steamworks v1.58a onwards, SteamApiInterfaceVersionsArray is required when EOS_IPMF_LibraryManagedBySDK is set.
Since:
8/19/2023
See Also:
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    static class 
     
    static class 
     

    Nested classes/interfaces inherited from class com.sun.jna.Structure

    com.sun.jna.Structure.FieldOrder, com.sun.jna.Structure.StructField
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    int
    static final int
    The most recent version of the EOS_IntegratedPlatform_Steam_Options API.
    Usage of this parameter is dependent on the specified EOS_EIntegratedPlatformManagementFlags.
    com.sun.jna.Pointer
    A pointer to a series of null terminated steam interface version names supported by the current steam dll.
    int
    Size of the SteamApiInterfaceVersionsArray in bytes.
    int
    Used to specify the major version of the Steam SDK your game is compiled against, e.g.:
    int
    Used to specify the minor version of the Steam SDK your game is compiled against, e.g.:

    Fields inherited from class com.sun.jna.Structure

    ALIGN_DEFAULT, ALIGN_GNUC, ALIGN_MSVC, ALIGN_NONE, CALCULATE_SIZE
  • Constructor Summary

    Constructors
    Constructor
    Description
     
    EOS_IntegratedPlatform_Steam_Options(com.sun.jna.Pointer peer)
     
  • Method Summary

    Methods inherited from class com.sun.jna.Structure

    allocateMemory, allocateMemory, autoAllocate, autoRead, autoRead, autoWrite, autoWrite, cacheTypeInfo, calculateSize, clear, createFieldsOrder, createFieldsOrder, createFieldsOrder, createFieldsOrder, dataEquals, dataEquals, ensureAllocated, equals, fieldOffset, getAutoRead, getAutoWrite, getFieldList, getFieldOrder, getFields, getNativeAlignment, getNativeSize, getNativeSize, getPointer, getStringEncoding, getStructAlignment, hashCode, newInstance, newInstance, read, readField, readField, setAlignType, setAutoRead, setAutoSynch, setAutoWrite, setStringEncoding, size, sortFields, toArray, toArray, toString, toString, useMemory, useMemory, write, writeField, writeField, writeField

    Methods inherited from class java.lang.Object

    clone, finalize, getClass, notify, notifyAll, wait, wait, wait
  • Field Details

    • EOS_INTEGRATEDPLATFORM_STEAM_OPTIONS_API_LATEST

      public static final int EOS_INTEGRATEDPLATFORM_STEAM_OPTIONS_API_LATEST
      The most recent version of the EOS_IntegratedPlatform_Steam_Options API.
      See Also:
    • ApiVersion

      public int ApiVersion
    • OverrideLibraryPath

      public String OverrideLibraryPath
      Usage of this parameter is dependent on the specified EOS_EIntegratedPlatformManagementFlags.

      Optional with EOS_IPMF_LibraryManagedByApplication. Set to override the loaded library basename, or use NULL to assume the default basename by platform:

      - Linux: libsteam_api.so,
      - macOS: libsteam_api.dylib,
      - Windows 32-bit: steam_api.dll,
      - Windows 64-bit: steam_api64.dll.

      Required with EOS_IPMF_LibraryManagedBySDK. Set to a fully qualified file path to the Steamworks SDK runtime library on disk.

    • SteamMajorVersion

      public int SteamMajorVersion
      Used to specify the major version of the Steam SDK your game is compiled against, e.g.:

      Options.SteamMajorVersion = 1;

    • SteamMinorVersion

      public int SteamMinorVersion
      Used to specify the minor version of the Steam SDK your game is compiled against, e.g.:

      Options.SteamMinorVersion = 58;

    • SteamApiInterfaceVersionsArray

      public com.sun.jna.Pointer SteamApiInterfaceVersionsArray
      A pointer to a series of null terminated steam interface version names supported by the current steam dll.

      This field is only required when the Integrated Platform Management flags has EOS_IPMF_LibraryManagedBySDK set. Else must be set to NULL.

      Starting v1.58 the Steam initialization API requires this new field during initialization for version check validations.

      Note: The pointer must be valid until after the execution of the EOS_IntegratedPlatformOptionsContainer_Add method.

      This value must be constructed from the corresponding steam_api.h header of the steam dll version that is shipped with the game. In the steam_api.h header, look for SteamAPI_InitEx() and copy the value of pszInternalCheckInterfaceVersions as it is.

      For example in v1.58a its this: const char SteamInterfaceVersionsArray[] = STEAMUTILS_INTERFACE_VERSION "\0" STEAMNETWORKINGUTILS_INTERFACE_VERSION "\0" ... STEAMUSER_INTERFACE_VERSION "\0" STEAMVIDEO_INTERFACE_VERSION "\0" "\0";

    • SteamApiInterfaceVersionsArrayBytes

      public int SteamApiInterfaceVersionsArrayBytes
      Size of the SteamApiInterfaceVersionsArray in bytes. Cannot exceed EOS_Defines.EOS_INTEGRATEDPLATFORM_STEAM_MAX_STEAMAPIINTERFACEVERSIONSARRAY_SIZE.

      This field is only required when the Integrated Platform Management flags has EOS_IPMF_LibraryManagedBySDK set. Else must be set to 0.

       Note: Since SteamInterfaceVersionsArray contains a series of null terminated strings, please ensure that strlen() is NOT used to calculate this field.
       For instance, you can use the following to get the array length:
        const char SteamInterfaceVersionsArray[] =
            STEAMUTILS_INTERFACE_VERSION "\0"
                      STEAMNETWORKINGUTILS_INTERFACE_VERSION "\0"
            ...
                      STEAMVIDEO_INTERFACE_VERSION "\0"
            "\0";
       
      uint32_t SteamApiInterfaceVersionsArrayBytes = sizeof(SteamApiInterfaceVersionsArray) // Note: sizeof() takes into account the last "\0" of the string literal;
  • Constructor Details

    • EOS_IntegratedPlatform_Steam_Options

      public EOS_IntegratedPlatform_Steam_Options()
    • EOS_IntegratedPlatform_Steam_Options

      public EOS_IntegratedPlatform_Steam_Options(com.sun.jna.Pointer peer)