Refactoring into platform interfaces

This commit is contained in:
Garry Newman 2016-10-25 13:22:59 +01:00
parent 44abc1ce20
commit ef45d94220
42 changed files with 24700 additions and 5516 deletions

View File

@ -83,7 +83,7 @@ namespace Facepunch.Steamworks
/// </summary> /// </summary>
internal void AddCallback<T, TSmall>( Action<T> Callback, int id ) internal void AddCallback<T, TSmall>( Action<T> Callback, int id )
{ {
var callback = new Callback<T, TSmall>( IsGameServer, id, Callback ); var callback = new Callback<T, TSmall>( native.api, IsGameServer, id, Callback );
Disposables.Add( callback ); Disposables.Add( callback );
} }

View File

@ -24,8 +24,6 @@ namespace Facepunch.Steamworks
public Client( uint appId ) public Client( uint appId )
{ {
SteamNative.Globals.SteamAPI_Init();
native = new Interop.NativeInterface(); native = new Interop.NativeInterface();
// //
@ -88,7 +86,7 @@ namespace Facepunch.Steamworks
if ( !IsValid ) if ( !IsValid )
return; return;
SteamNative.Globals.SteamAPI_RunCallbacks(); native.api.SteamAPI_RunCallbacks();
Voice.Update(); Voice.Update();
@ -104,8 +102,6 @@ namespace Facepunch.Steamworks
} }
base.Dispose(); base.Dispose();
SteamNative.Globals.SteamAPI_Shutdown();
} }
} }

View File

@ -150,12 +150,14 @@
<Compile Include="Server\Query.cs" /> <Compile Include="Server\Query.cs" />
<Compile Include="Server\Stats.cs" /> <Compile Include="Server\Stats.cs" />
<Compile Include="SteamNative\SteamNative.Enums.cs" /> <Compile Include="SteamNative\SteamNative.Enums.cs" />
<Compile Include="SteamNative\SteamNative.Global.cs" />
<Compile Include="SteamNative\SteamNative.Platform.cs" /> <Compile Include="SteamNative\SteamNative.Platform.cs" />
<Compile Include="SteamNative\SteamNative.Platform.Linux.cs" /> <Compile Include="SteamNative\SteamNative.Platform.Interface.cs" />
<Compile Include="SteamNative\SteamNative.Platform.Linux32.cs" />
<Compile Include="SteamNative\SteamNative.Platform.Linux64.cs" />
<Compile Include="SteamNative\SteamNative.Platform.Mac.cs" /> <Compile Include="SteamNative\SteamNative.Platform.Mac.cs" />
<Compile Include="SteamNative\SteamNative.Platform.Win32.cs" /> <Compile Include="SteamNative\SteamNative.Platform.Win32.cs" />
<Compile Include="SteamNative\SteamNative.Platform.Win64.cs" /> <Compile Include="SteamNative\SteamNative.Platform.Win64.cs" />
<Compile Include="SteamNative\SteamNative.SteamApi.cs" />
<Compile Include="SteamNative\SteamNative.SteamAppList.cs" /> <Compile Include="SteamNative\SteamNative.SteamAppList.cs" />
<Compile Include="SteamNative\SteamNative.SteamApps.cs" /> <Compile Include="SteamNative\SteamNative.SteamApps.cs" />
<Compile Include="SteamNative\SteamNative.SteamClient.cs" /> <Compile Include="SteamNative\SteamNative.SteamClient.cs" />

View File

@ -50,6 +50,8 @@ namespace Facepunch.Steamworks.Interop
internal partial class Callback<T, TSmall> : Callback internal partial class Callback<T, TSmall> : Callback
{ {
private SteamNative.SteamApi api;
public int CallbackId = 0; public int CallbackId = 0;
public bool GameServer = false; public bool GameServer = false;
public Action<T> Function; public Action<T> Function;
@ -59,22 +61,23 @@ namespace Facepunch.Steamworks.Interop
private readonly int m_size = Marshal.SizeOf(typeof(T)); private readonly int m_size = Marshal.SizeOf(typeof(T));
public Callback( bool gameserver, int callbackid, Action<T> func ) public Callback( SteamNative.SteamApi api, bool gameserver, int callbackid, Action<T> func )
{ {
this.api = api;
GameServer = gameserver; GameServer = gameserver;
CallbackId = callbackid; CallbackId = callbackid;
Function = func; Function = func;
BuildVTable(); BuildVTable();
SteamNative.Globals.SteamAPI_RegisterCallback( callbackPin.AddrOfPinnedObject(), CallbackId ); this.api.SteamAPI_RegisterCallback( callbackPin.AddrOfPinnedObject(), CallbackId );
} }
public override void Dispose() public override void Dispose()
{ {
if ( callbackPin.IsAllocated ) if ( callbackPin.IsAllocated )
{ {
SteamNative.Globals.SteamAPI_UnregisterCallback( callbackPin.AddrOfPinnedObject() ); api.SteamAPI_UnregisterCallback( callbackPin.AddrOfPinnedObject() );
callbackPin.Free(); callbackPin.Free();
} }

View File

@ -7,6 +7,7 @@ namespace Facepunch.Steamworks.Interop
{ {
internal class NativeInterface : IDisposable internal class NativeInterface : IDisposable
{ {
internal SteamNative.SteamApi api;
internal SteamNative.SteamClient client; internal SteamNative.SteamClient client;
internal SteamNative.SteamUser user; internal SteamNative.SteamUser user;
internal SteamNative.SteamApps apps; internal SteamNative.SteamApps apps;
@ -25,8 +26,12 @@ namespace Facepunch.Steamworks.Interop
internal bool InitClient() internal bool InitClient()
{ {
var user = SteamNative.Globals.SteamAPI_GetHSteamUser(); api = new SteamNative.SteamApi( (IntPtr) 1 );
var pipe = SteamNative.Globals.SteamAPI_GetHSteamPipe();
api.SteamAPI_Init();
var user = api.SteamAPI_GetHSteamUser();
var pipe = api.SteamAPI_GetHSteamPipe();
if ( pipe == 0 ) if ( pipe == 0 )
return false; return false;
@ -35,16 +40,20 @@ namespace Facepunch.Steamworks.Interop
return true; return true;
} }
internal bool InitServer() internal bool InitServer( uint IpAddress /*uint32*/, ushort usPort /*uint16*/, ushort GamePort /*uint16*/, ushort QueryPort /*uint16*/, int eServerMode /*int*/, string pchVersionString /*const char **/)
{ {
var user = SteamNative.Globals.SteamGameServer_GetHSteamUser(); api = new SteamNative.SteamApi( (IntPtr)1 );
var pipe = SteamNative.Globals.SteamGameServer_GetHSteamPipe();
api.SteamInternal_GameServer_Init( IpAddress, usPort, GamePort, QueryPort, eServerMode, pchVersionString );
var user = api.SteamGameServer_GetHSteamUser();
var pipe = api.SteamGameServer_GetHSteamPipe();
if ( pipe == 0 ) if ( pipe == 0 )
return false; return false;
FillInterfaces( pipe, user ); FillInterfaces( pipe, user );
if ( gameServer._ptr == IntPtr.Zero ) if ( !gameServer.IsValid )
{ {
gameServer = null; gameServer = null;
throw new System.Exception( "Steam Server: Couldn't load SteamGameServer012" ); throw new System.Exception( "Steam Server: Couldn't load SteamGameServer012" );
@ -55,7 +64,7 @@ namespace Facepunch.Steamworks.Interop
public void FillInterfaces( int hpipe, int huser ) public void FillInterfaces( int hpipe, int huser )
{ {
var clientPtr = SteamNative.Globals.SteamInternal_CreateInterface( "SteamClient017" ); var clientPtr = api.SteamInternal_CreateInterface( "SteamClient017" );
if ( clientPtr == IntPtr.Zero ) if ( clientPtr == IntPtr.Zero )
{ {
throw new System.Exception( "Steam Server: Couldn't load SteamClient017" ); throw new System.Exception( "Steam Server: Couldn't load SteamClient017" );
@ -83,11 +92,10 @@ namespace Facepunch.Steamworks.Interop
{ {
if ( client != null ) if ( client != null )
{ {
client.BShutdownIfAllPipesClosed();
client = null; client = null;
} }
SteamNative.Globals.SteamAPI_Shutdown(); api.SteamAPI_Shutdown();
} }
} }
} }

View File

@ -22,14 +22,12 @@ namespace Facepunch.Steamworks
public Server( uint appId, uint IpAddress, ushort GamePort, ushort QueryPort, bool Secure, string VersionString ) public Server( uint appId, uint IpAddress, ushort GamePort, ushort QueryPort, bool Secure, string VersionString )
{ {
SteamNative.Globals.SteamInternal_GameServer_Init( IpAddress, 0, GamePort, QueryPort, Secure ? 3 : 2, VersionString );
native = new Interop.NativeInterface(); native = new Interop.NativeInterface();
// //
// Get other interfaces // Get other interfaces
// //
if ( !native.InitServer() ) if ( !native.InitServer( IpAddress, 0, GamePort, QueryPort, Secure ? 3 : 2, VersionString ) )
{ {
native.Dispose(); native.Dispose();
native = null; native = null;
@ -97,7 +95,7 @@ namespace Facepunch.Steamworks
if ( !IsValid ) if ( !IsValid )
return; return;
SteamNative.Globals.SteamGameServer_RunCallbacks(); native.api.SteamGameServer_RunCallbacks();
base.Update(); base.Update();
} }

View File

@ -1,93 +0,0 @@
using System;
using System.Runtime.InteropServices;
namespace SteamNative
{
public unsafe class Globals
{
// void
public static void SteamAPI_Init()
{
if ( Platform.IsWindows32 ) Platform.Win32.Global.SteamAPI_Init( );
else Platform.Win64.Global.SteamAPI_Init( );
}
// void
public static void SteamAPI_RunCallbacks()
{
if ( Platform.IsWindows32 ) Platform.Win32.Global.SteamAPI_RunCallbacks( );
else Platform.Win64.Global.SteamAPI_RunCallbacks( );
}
// void
public static void SteamGameServer_RunCallbacks()
{
if ( Platform.IsWindows32 ) Platform.Win32.Global.SteamGameServer_RunCallbacks( );
else Platform.Win64.Global.SteamGameServer_RunCallbacks( );
}
// void
public static void SteamAPI_RegisterCallback( IntPtr pCallback /*void **/, int callback /*int*/ )
{
if ( Platform.IsWindows32 ) Platform.Win32.Global.SteamAPI_RegisterCallback( (IntPtr) pCallback, callback );
else Platform.Win64.Global.SteamAPI_RegisterCallback( (IntPtr) pCallback, callback );
}
// void
public static void SteamAPI_UnregisterCallback( IntPtr pCallback /*void **/ )
{
if ( Platform.IsWindows32 ) Platform.Win32.Global.SteamAPI_UnregisterCallback( (IntPtr) pCallback );
else Platform.Win64.Global.SteamAPI_UnregisterCallback( (IntPtr) pCallback );
}
// bool
public static bool SteamInternal_GameServer_Init( uint unIP /*uint32*/, ushort usPort /*uint16*/, ushort usGamePort /*uint16*/, ushort usQueryPort /*uint16*/, int eServerMode /*int*/, string pchVersionString /*const char **/ )
{
if ( Platform.IsWindows32 ) return Platform.Win32.Global.SteamInternal_GameServer_Init( unIP, usPort, usGamePort, usQueryPort, eServerMode, pchVersionString );
else return Platform.Win64.Global.SteamInternal_GameServer_Init( unIP, usPort, usGamePort, usQueryPort, eServerMode, pchVersionString );
}
// void
public static void SteamAPI_Shutdown()
{
if ( Platform.IsWindows32 ) Platform.Win32.Global.SteamAPI_Shutdown( );
else Platform.Win64.Global.SteamAPI_Shutdown( );
}
// HSteamUser
public static HSteamUser SteamAPI_GetHSteamUser()
{
if ( Platform.IsWindows32 ) return Platform.Win32.Global.SteamAPI_GetHSteamUser( );
else return Platform.Win64.Global.SteamAPI_GetHSteamUser( );
}
// HSteamPipe
public static HSteamPipe SteamAPI_GetHSteamPipe()
{
if ( Platform.IsWindows32 ) return Platform.Win32.Global.SteamAPI_GetHSteamPipe( );
else return Platform.Win64.Global.SteamAPI_GetHSteamPipe( );
}
// HSteamUser
public static HSteamUser SteamGameServer_GetHSteamUser()
{
if ( Platform.IsWindows32 ) return Platform.Win32.Global.SteamGameServer_GetHSteamUser( );
else return Platform.Win64.Global.SteamGameServer_GetHSteamUser( );
}
// HSteamPipe
public static HSteamPipe SteamGameServer_GetHSteamPipe()
{
if ( Platform.IsWindows32 ) return Platform.Win32.Global.SteamGameServer_GetHSteamPipe( );
else return Platform.Win64.Global.SteamGameServer_GetHSteamPipe( );
}
// IntPtr
public static IntPtr SteamInternal_CreateInterface( string version /*const char **/ )
{
if ( Platform.IsWindows32 ) return Platform.Win32.Global.SteamInternal_CreateInterface( version );
else return Platform.Win64.Global.SteamInternal_CreateInterface( version );
}
}
}

View File

@ -0,0 +1,682 @@
using System;
using System.Runtime.InteropServices;
namespace SteamNative
{
internal static partial class Platform
{
public interface Interface
{
bool IsValid { get; }
HSteamPipe /*(HSteamPipe)*/ ISteamClient_CreateSteamPipe();
bool /*bool*/ ISteamClient_BReleaseSteamPipe( HSteamPipe /*HSteamPipe*/ hSteamPipe );
HSteamUser /*(HSteamUser)*/ ISteamClient_ConnectToGlobalUser( HSteamPipe /*HSteamPipe*/ hSteamPipe );
HSteamUser /*(HSteamUser)*/ ISteamClient_CreateLocalUser( out HSteamPipe /*HSteamPipe **/ phSteamPipe, AccountType /*EAccountType*/ eAccountType );
void /*void*/ ISteamClient_ReleaseUser( HSteamPipe /*HSteamPipe*/ hSteamPipe, HSteamUser /*HSteamUser*/ hUser );
IntPtr /*class ISteamUser **/ ISteamClient_GetISteamUser( HSteamUser /*HSteamUser*/ hSteamUser, HSteamPipe /*HSteamPipe*/ hSteamPipe, string /*const char **/ pchVersion );
IntPtr /*class ISteamGameServer **/ ISteamClient_GetISteamGameServer( HSteamUser /*HSteamUser*/ hSteamUser, HSteamPipe /*HSteamPipe*/ hSteamPipe, string /*const char **/ pchVersion );
void /*void*/ ISteamClient_SetLocalIPBinding( uint /*uint32*/ unIP , ushort /*uint16*/ usPort );
IntPtr /*class ISteamFriends **/ ISteamClient_GetISteamFriends( HSteamUser /*HSteamUser*/ hSteamUser, HSteamPipe /*HSteamPipe*/ hSteamPipe, string /*const char **/ pchVersion );
IntPtr /*class ISteamUtils **/ ISteamClient_GetISteamUtils( HSteamPipe /*HSteamPipe*/ hSteamPipe, string /*const char **/ pchVersion );
IntPtr /*class ISteamMatchmaking **/ ISteamClient_GetISteamMatchmaking( HSteamUser /*HSteamUser*/ hSteamUser, HSteamPipe /*HSteamPipe*/ hSteamPipe, string /*const char **/ pchVersion );
IntPtr /*class ISteamMatchmakingServers **/ ISteamClient_GetISteamMatchmakingServers( HSteamUser /*HSteamUser*/ hSteamUser, HSteamPipe /*HSteamPipe*/ hSteamPipe, string /*const char **/ pchVersion );
IntPtr /*void **/ ISteamClient_GetISteamGenericInterface( HSteamUser /*HSteamUser*/ hSteamUser, HSteamPipe /*HSteamPipe*/ hSteamPipe, string /*const char **/ pchVersion );
IntPtr /*class ISteamUserStats **/ ISteamClient_GetISteamUserStats( HSteamUser /*HSteamUser*/ hSteamUser, HSteamPipe /*HSteamPipe*/ hSteamPipe, string /*const char **/ pchVersion );
IntPtr /*class ISteamGameServerStats **/ ISteamClient_GetISteamGameServerStats( HSteamUser /*HSteamUser*/ hSteamuser, HSteamPipe /*HSteamPipe*/ hSteamPipe, string /*const char **/ pchVersion );
IntPtr /*class ISteamApps **/ ISteamClient_GetISteamApps( HSteamUser /*HSteamUser*/ hSteamUser, HSteamPipe /*HSteamPipe*/ hSteamPipe, string /*const char **/ pchVersion );
IntPtr /*class ISteamNetworking **/ ISteamClient_GetISteamNetworking( HSteamUser /*HSteamUser*/ hSteamUser, HSteamPipe /*HSteamPipe*/ hSteamPipe, string /*const char **/ pchVersion );
IntPtr /*class ISteamRemoteStorage **/ ISteamClient_GetISteamRemoteStorage( HSteamUser /*HSteamUser*/ hSteamuser, HSteamPipe /*HSteamPipe*/ hSteamPipe, string /*const char **/ pchVersion );
IntPtr /*class ISteamScreenshots **/ ISteamClient_GetISteamScreenshots( HSteamUser /*HSteamUser*/ hSteamuser, HSteamPipe /*HSteamPipe*/ hSteamPipe, string /*const char **/ pchVersion );
uint /*uint32*/ ISteamClient_GetIPCCallCount();
void /*void*/ ISteamClient_SetWarningMessageHook( IntPtr /*SteamAPIWarningMessageHook_t*/ pFunction );
bool /*bool*/ ISteamClient_BShutdownIfAllPipesClosed();
IntPtr /*class ISteamHTTP **/ ISteamClient_GetISteamHTTP( HSteamUser /*HSteamUser*/ hSteamuser, HSteamPipe /*HSteamPipe*/ hSteamPipe, string /*const char **/ pchVersion );
IntPtr /*class ISteamUnifiedMessages **/ ISteamClient_GetISteamUnifiedMessages( HSteamUser /*HSteamUser*/ hSteamuser, HSteamPipe /*HSteamPipe*/ hSteamPipe, string /*const char **/ pchVersion );
IntPtr /*class ISteamController **/ ISteamClient_GetISteamController( HSteamUser /*HSteamUser*/ hSteamUser, HSteamPipe /*HSteamPipe*/ hSteamPipe, string /*const char **/ pchVersion );
IntPtr /*class ISteamUGC **/ ISteamClient_GetISteamUGC( HSteamUser /*HSteamUser*/ hSteamUser, HSteamPipe /*HSteamPipe*/ hSteamPipe, string /*const char **/ pchVersion );
IntPtr /*class ISteamAppList **/ ISteamClient_GetISteamAppList( HSteamUser /*HSteamUser*/ hSteamUser, HSteamPipe /*HSteamPipe*/ hSteamPipe, string /*const char **/ pchVersion );
IntPtr /*class ISteamMusic **/ ISteamClient_GetISteamMusic( HSteamUser /*HSteamUser*/ hSteamuser, HSteamPipe /*HSteamPipe*/ hSteamPipe, string /*const char **/ pchVersion );
IntPtr /*class ISteamMusicRemote **/ ISteamClient_GetISteamMusicRemote( HSteamUser /*HSteamUser*/ hSteamuser, HSteamPipe /*HSteamPipe*/ hSteamPipe, string /*const char **/ pchVersion );
IntPtr /*class ISteamHTMLSurface **/ ISteamClient_GetISteamHTMLSurface( HSteamUser /*HSteamUser*/ hSteamuser, HSteamPipe /*HSteamPipe*/ hSteamPipe, string /*const char **/ pchVersion );
IntPtr /*class ISteamInventory **/ ISteamClient_GetISteamInventory( HSteamUser /*HSteamUser*/ hSteamuser, HSteamPipe /*HSteamPipe*/ hSteamPipe, string /*const char **/ pchVersion );
IntPtr /*class ISteamVideo **/ ISteamClient_GetISteamVideo( HSteamUser /*HSteamUser*/ hSteamuser, HSteamPipe /*HSteamPipe*/ hSteamPipe, string /*const char **/ pchVersion );
HSteamUser /*(HSteamUser)*/ ISteamUser_GetHSteamUser();
bool /*bool*/ ISteamUser_BLoggedOn();
CSteamID /*(class CSteamID)*/ ISteamUser_GetSteamID();
int /*int*/ ISteamUser_InitiateGameConnection( IntPtr /*void **/ pAuthBlob , int /*int*/ cbMaxAuthBlob , CSteamID /*class CSteamID*/ steamIDGameServer, uint /*uint32*/ unIPServer , ushort /*uint16*/ usPortServer , bool /*bool*/ bSecure );
void /*void*/ ISteamUser_TerminateGameConnection( uint /*uint32*/ unIPServer , ushort /*uint16*/ usPortServer );
void /*void*/ ISteamUser_TrackAppUsageEvent( CGameID /*class CGameID*/ gameID, int /*int*/ eAppUsageEvent , string /*const char **/ pchExtraInfo );
bool /*bool*/ ISteamUser_GetUserDataFolder( System.Text.StringBuilder /*char **/ pchBuffer, int /*int*/ cubBuffer );
void /*void*/ ISteamUser_StartVoiceRecording();
void /*void*/ ISteamUser_StopVoiceRecording();
VoiceResult /*EVoiceResult*/ ISteamUser_GetAvailableVoice( out uint /*uint32 **/ pcbCompressed, out uint /*uint32 **/ pcbUncompressed, uint /*uint32*/ nUncompressedVoiceDesiredSampleRate );
VoiceResult /*EVoiceResult*/ ISteamUser_GetVoice( bool /*bool*/ bWantCompressed , IntPtr /*void **/ pDestBuffer , uint /*uint32*/ cbDestBufferSize , out uint /*uint32 **/ nBytesWritten, bool /*bool*/ bWantUncompressed , IntPtr /*void **/ pUncompressedDestBuffer , uint /*uint32*/ cbUncompressedDestBufferSize , out uint /*uint32 **/ nUncompressBytesWritten, uint /*uint32*/ nUncompressedVoiceDesiredSampleRate );
VoiceResult /*EVoiceResult*/ ISteamUser_DecompressVoice( IntPtr /*const void **/ pCompressed , uint /*uint32*/ cbCompressed , IntPtr /*void **/ pDestBuffer , uint /*uint32*/ cbDestBufferSize , out uint /*uint32 **/ nBytesWritten, uint /*uint32*/ nDesiredSampleRate );
uint /*uint32*/ ISteamUser_GetVoiceOptimalSampleRate();
HAuthTicket /*(HAuthTicket)*/ ISteamUser_GetAuthSessionTicket( IntPtr /*void **/ pTicket , int /*int*/ cbMaxTicket , out uint /*uint32 **/ pcbTicket );
BeginAuthSessionResult /*EBeginAuthSessionResult*/ ISteamUser_BeginAuthSession( IntPtr /*const void **/ pAuthTicket , int /*int*/ cbAuthTicket , CSteamID /*class CSteamID*/ steamID );
void /*void*/ ISteamUser_EndAuthSession( CSteamID /*class CSteamID*/ steamID );
void /*void*/ ISteamUser_CancelAuthTicket( HAuthTicket /*HAuthTicket*/ hAuthTicket );
UserHasLicenseForAppResult /*EUserHasLicenseForAppResult*/ ISteamUser_UserHasLicenseForApp( CSteamID /*class CSteamID*/ steamID, AppId_t /*AppId_t*/ appID );
bool /*bool*/ ISteamUser_BIsBehindNAT();
void /*void*/ ISteamUser_AdvertiseGame( CSteamID /*class CSteamID*/ steamIDGameServer, uint /*uint32*/ unIPServer , ushort /*uint16*/ usPortServer );
SteamAPICall_t /*(SteamAPICall_t)*/ ISteamUser_RequestEncryptedAppTicket( IntPtr /*void **/ pDataToInclude , int /*int*/ cbDataToInclude );
bool /*bool*/ ISteamUser_GetEncryptedAppTicket( IntPtr /*void **/ pTicket , int /*int*/ cbMaxTicket , out uint /*uint32 **/ pcbTicket );
int /*int*/ ISteamUser_GetGameBadgeLevel( int /*int*/ nSeries , bool /*bool*/ bFoil );
int /*int*/ ISteamUser_GetPlayerSteamLevel();
SteamAPICall_t /*(SteamAPICall_t)*/ ISteamUser_RequestStoreAuthURL( string /*const char **/ pchRedirectURL );
bool /*bool*/ ISteamUser_BIsPhoneVerified();
bool /*bool*/ ISteamUser_BIsTwoFactorEnabled();
IntPtr ISteamFriends_GetPersonaName();
SteamAPICall_t /*(SteamAPICall_t)*/ ISteamFriends_SetPersonaName( string /*const char **/ pchPersonaName );
PersonaState /*EPersonaState*/ ISteamFriends_GetPersonaState();
int /*int*/ ISteamFriends_GetFriendCount( int /*int*/ iFriendFlags );
CSteamID /*(class CSteamID)*/ ISteamFriends_GetFriendByIndex( int /*int*/ iFriend , int /*int*/ iFriendFlags );
FriendRelationship /*EFriendRelationship*/ ISteamFriends_GetFriendRelationship( CSteamID /*class CSteamID*/ steamIDFriend );
PersonaState /*EPersonaState*/ ISteamFriends_GetFriendPersonaState( CSteamID /*class CSteamID*/ steamIDFriend );
IntPtr ISteamFriends_GetFriendPersonaName( CSteamID /*class CSteamID*/ steamIDFriend );
bool /*bool*/ ISteamFriends_GetFriendGamePlayed( CSteamID /*class CSteamID*/ steamIDFriend, ref FriendGameInfo_t /*struct FriendGameInfo_t **/ pFriendGameInfo );
IntPtr ISteamFriends_GetFriendPersonaNameHistory( CSteamID /*class CSteamID*/ steamIDFriend, int /*int*/ iPersonaName );
int /*int*/ ISteamFriends_GetFriendSteamLevel( CSteamID /*class CSteamID*/ steamIDFriend );
IntPtr ISteamFriends_GetPlayerNickname( CSteamID /*class CSteamID*/ steamIDPlayer );
int /*int*/ ISteamFriends_GetFriendsGroupCount();
FriendsGroupID_t /*(FriendsGroupID_t)*/ ISteamFriends_GetFriendsGroupIDByIndex( int /*int*/ iFG );
IntPtr ISteamFriends_GetFriendsGroupName( FriendsGroupID_t /*FriendsGroupID_t*/ friendsGroupID );
int /*int*/ ISteamFriends_GetFriendsGroupMembersCount( FriendsGroupID_t /*FriendsGroupID_t*/ friendsGroupID );
void /*void*/ ISteamFriends_GetFriendsGroupMembersList( FriendsGroupID_t /*FriendsGroupID_t*/ friendsGroupID, IntPtr /*class CSteamID **/ pOutSteamIDMembers, int /*int*/ nMembersCount );
bool /*bool*/ ISteamFriends_HasFriend( CSteamID /*class CSteamID*/ steamIDFriend, int /*int*/ iFriendFlags );
int /*int*/ ISteamFriends_GetClanCount();
CSteamID /*(class CSteamID)*/ ISteamFriends_GetClanByIndex( int /*int*/ iClan );
IntPtr ISteamFriends_GetClanName( CSteamID /*class CSteamID*/ steamIDClan );
IntPtr ISteamFriends_GetClanTag( CSteamID /*class CSteamID*/ steamIDClan );
bool /*bool*/ ISteamFriends_GetClanActivityCounts( CSteamID /*class CSteamID*/ steamIDClan, out int /*int **/ pnOnline, out int /*int **/ pnInGame, out int /*int **/ pnChatting );
SteamAPICall_t /*(SteamAPICall_t)*/ ISteamFriends_DownloadClanActivityCounts( IntPtr /*class CSteamID **/ psteamIDClans, int /*int*/ cClansToRequest );
int /*int*/ ISteamFriends_GetFriendCountFromSource( CSteamID /*class CSteamID*/ steamIDSource );
CSteamID /*(class CSteamID)*/ ISteamFriends_GetFriendFromSourceByIndex( CSteamID /*class CSteamID*/ steamIDSource, int /*int*/ iFriend );
bool /*bool*/ ISteamFriends_IsUserInSource( CSteamID /*class CSteamID*/ steamIDUser, CSteamID /*class CSteamID*/ steamIDSource );
void /*void*/ ISteamFriends_SetInGameVoiceSpeaking( CSteamID /*class CSteamID*/ steamIDUser, bool /*bool*/ bSpeaking );
void /*void*/ ISteamFriends_ActivateGameOverlay( string /*const char **/ pchDialog );
void /*void*/ ISteamFriends_ActivateGameOverlayToUser( string /*const char **/ pchDialog , CSteamID /*class CSteamID*/ steamID );
void /*void*/ ISteamFriends_ActivateGameOverlayToWebPage( string /*const char **/ pchURL );
void /*void*/ ISteamFriends_ActivateGameOverlayToStore( AppId_t /*AppId_t*/ nAppID, OverlayToStoreFlag /*EOverlayToStoreFlag*/ eFlag );
void /*void*/ ISteamFriends_SetPlayedWith( CSteamID /*class CSteamID*/ steamIDUserPlayedWith );
void /*void*/ ISteamFriends_ActivateGameOverlayInviteDialog( CSteamID /*class CSteamID*/ steamIDLobby );
int /*int*/ ISteamFriends_GetSmallFriendAvatar( CSteamID /*class CSteamID*/ steamIDFriend );
int /*int*/ ISteamFriends_GetMediumFriendAvatar( CSteamID /*class CSteamID*/ steamIDFriend );
int /*int*/ ISteamFriends_GetLargeFriendAvatar( CSteamID /*class CSteamID*/ steamIDFriend );
bool /*bool*/ ISteamFriends_RequestUserInformation( CSteamID /*class CSteamID*/ steamIDUser, bool /*bool*/ bRequireNameOnly );
SteamAPICall_t /*(SteamAPICall_t)*/ ISteamFriends_RequestClanOfficerList( CSteamID /*class CSteamID*/ steamIDClan );
CSteamID /*(class CSteamID)*/ ISteamFriends_GetClanOwner( CSteamID /*class CSteamID*/ steamIDClan );
int /*int*/ ISteamFriends_GetClanOfficerCount( CSteamID /*class CSteamID*/ steamIDClan );
CSteamID /*(class CSteamID)*/ ISteamFriends_GetClanOfficerByIndex( CSteamID /*class CSteamID*/ steamIDClan, int /*int*/ iOfficer );
uint /*uint32*/ ISteamFriends_GetUserRestrictions();
bool /*bool*/ ISteamFriends_SetRichPresence( string /*const char **/ pchKey , string /*const char **/ pchValue );
void /*void*/ ISteamFriends_ClearRichPresence();
IntPtr ISteamFriends_GetFriendRichPresence( CSteamID /*class CSteamID*/ steamIDFriend, string /*const char **/ pchKey );
int /*int*/ ISteamFriends_GetFriendRichPresenceKeyCount( CSteamID /*class CSteamID*/ steamIDFriend );
IntPtr ISteamFriends_GetFriendRichPresenceKeyByIndex( CSteamID /*class CSteamID*/ steamIDFriend, int /*int*/ iKey );
void /*void*/ ISteamFriends_RequestFriendRichPresence( CSteamID /*class CSteamID*/ steamIDFriend );
bool /*bool*/ ISteamFriends_InviteUserToGame( CSteamID /*class CSteamID*/ steamIDFriend, string /*const char **/ pchConnectString );
int /*int*/ ISteamFriends_GetCoplayFriendCount();
CSteamID /*(class CSteamID)*/ ISteamFriends_GetCoplayFriend( int /*int*/ iCoplayFriend );
int /*int*/ ISteamFriends_GetFriendCoplayTime( CSteamID /*class CSteamID*/ steamIDFriend );
AppId_t /*(AppId_t)*/ ISteamFriends_GetFriendCoplayGame( CSteamID /*class CSteamID*/ steamIDFriend );
SteamAPICall_t /*(SteamAPICall_t)*/ ISteamFriends_JoinClanChatRoom( CSteamID /*class CSteamID*/ steamIDClan );
bool /*bool*/ ISteamFriends_LeaveClanChatRoom( CSteamID /*class CSteamID*/ steamIDClan );
int /*int*/ ISteamFriends_GetClanChatMemberCount( CSteamID /*class CSteamID*/ steamIDClan );
CSteamID /*(class CSteamID)*/ ISteamFriends_GetChatMemberByIndex( CSteamID /*class CSteamID*/ steamIDClan, int /*int*/ iUser );
bool /*bool*/ ISteamFriends_SendClanChatMessage( CSteamID /*class CSteamID*/ steamIDClanChat, string /*const char **/ pchText );
int /*int*/ ISteamFriends_GetClanChatMessage( CSteamID /*class CSteamID*/ steamIDClanChat, int /*int*/ iMessage , IntPtr /*void **/ prgchText , int /*int*/ cchTextMax , out ChatEntryType /*EChatEntryType **/ peChatEntryType, out CSteamID /*class CSteamID **/ psteamidChatter );
bool /*bool*/ ISteamFriends_IsClanChatAdmin( CSteamID /*class CSteamID*/ steamIDClanChat, CSteamID /*class CSteamID*/ steamIDUser );
bool /*bool*/ ISteamFriends_IsClanChatWindowOpenInSteam( CSteamID /*class CSteamID*/ steamIDClanChat );
bool /*bool*/ ISteamFriends_OpenClanChatWindowInSteam( CSteamID /*class CSteamID*/ steamIDClanChat );
bool /*bool*/ ISteamFriends_CloseClanChatWindowInSteam( CSteamID /*class CSteamID*/ steamIDClanChat );
bool /*bool*/ ISteamFriends_SetListenForFriendsMessages( bool /*bool*/ bInterceptEnabled );
bool /*bool*/ ISteamFriends_ReplyToFriendMessage( CSteamID /*class CSteamID*/ steamIDFriend, string /*const char **/ pchMsgToSend );
int /*int*/ ISteamFriends_GetFriendMessage( CSteamID /*class CSteamID*/ steamIDFriend, int /*int*/ iMessageID , IntPtr /*void **/ pvData , int /*int*/ cubData , out ChatEntryType /*EChatEntryType **/ peChatEntryType );
SteamAPICall_t /*(SteamAPICall_t)*/ ISteamFriends_GetFollowerCount( CSteamID /*class CSteamID*/ steamID );
SteamAPICall_t /*(SteamAPICall_t)*/ ISteamFriends_IsFollowing( CSteamID /*class CSteamID*/ steamID );
SteamAPICall_t /*(SteamAPICall_t)*/ ISteamFriends_EnumerateFollowingList( uint /*uint32*/ unStartIndex );
uint /*uint32*/ ISteamUtils_GetSecondsSinceAppActive();
uint /*uint32*/ ISteamUtils_GetSecondsSinceComputerActive();
Universe /*EUniverse*/ ISteamUtils_GetConnectedUniverse();
uint /*uint32*/ ISteamUtils_GetServerRealTime();
IntPtr ISteamUtils_GetIPCountry();
bool /*bool*/ ISteamUtils_GetImageSize( int /*int*/ iImage , out uint /*uint32 **/ pnWidth, out uint /*uint32 **/ pnHeight );
bool /*bool*/ ISteamUtils_GetImageRGBA( int /*int*/ iImage , IntPtr /*uint8 **/ pubDest, int /*int*/ nDestBufferSize );
bool /*bool*/ ISteamUtils_GetCSERIPPort( out uint /*uint32 **/ unIP, out ushort /*uint16 **/ usPort );
byte /*uint8*/ ISteamUtils_GetCurrentBatteryPower();
uint /*uint32*/ ISteamUtils_GetAppID();
void /*void*/ ISteamUtils_SetOverlayNotificationPosition( NotificationPosition /*ENotificationPosition*/ eNotificationPosition );
bool /*bool*/ ISteamUtils_IsAPICallCompleted( SteamAPICall_t /*SteamAPICall_t*/ hSteamAPICall, out bool /*bool **/ pbFailed );
SteamAPICallFailure /*ESteamAPICallFailure*/ ISteamUtils_GetAPICallFailureReason( SteamAPICall_t /*SteamAPICall_t*/ hSteamAPICall );
bool /*bool*/ ISteamUtils_GetAPICallResult( SteamAPICall_t /*SteamAPICall_t*/ hSteamAPICall, IntPtr /*void **/ pCallback , int /*int*/ cubCallback , int /*int*/ iCallbackExpected , out bool /*bool **/ pbFailed );
uint /*uint32*/ ISteamUtils_GetIPCCallCount();
void /*void*/ ISteamUtils_SetWarningMessageHook( IntPtr /*SteamAPIWarningMessageHook_t*/ pFunction );
bool /*bool*/ ISteamUtils_IsOverlayEnabled();
bool /*bool*/ ISteamUtils_BOverlayNeedsPresent();
SteamAPICall_t /*(SteamAPICall_t)*/ ISteamUtils_CheckFileSignature( string /*const char **/ szFileName );
bool /*bool*/ ISteamUtils_ShowGamepadTextInput( GamepadTextInputMode /*EGamepadTextInputMode*/ eInputMode , GamepadTextInputLineMode /*EGamepadTextInputLineMode*/ eLineInputMode , string /*const char **/ pchDescription , uint /*uint32*/ unCharMax , string /*const char **/ pchExistingText );
uint /*uint32*/ ISteamUtils_GetEnteredGamepadTextLength();
bool /*bool*/ ISteamUtils_GetEnteredGamepadTextInput( System.Text.StringBuilder /*char **/ pchText, uint /*uint32*/ cchText );
IntPtr ISteamUtils_GetSteamUILanguage();
bool /*bool*/ ISteamUtils_IsSteamRunningInVR();
void /*void*/ ISteamUtils_SetOverlayNotificationInset( int /*int*/ nHorizontalInset , int /*int*/ nVerticalInset );
bool /*bool*/ ISteamUtils_IsSteamInBigPictureMode();
void /*void*/ ISteamUtils_StartVRDashboard();
int /*int*/ ISteamMatchmaking_GetFavoriteGameCount();
bool /*bool*/ ISteamMatchmaking_GetFavoriteGame( int /*int*/ iGame , ref AppId_t /*AppId_t **/ pnAppID, out uint /*uint32 **/ pnIP, out ushort /*uint16 **/ pnConnPort, out ushort /*uint16 **/ pnQueryPort, IntPtr /*uint32 **/ punFlags, out uint /*uint32 **/ pRTime32LastPlayedOnServer );
int /*int*/ ISteamMatchmaking_AddFavoriteGame( AppId_t /*AppId_t*/ nAppID, uint /*uint32*/ nIP , ushort /*uint16*/ nConnPort , ushort /*uint16*/ nQueryPort , uint /*uint32*/ unFlags , uint /*uint32*/ rTime32LastPlayedOnServer );
bool /*bool*/ ISteamMatchmaking_RemoveFavoriteGame( AppId_t /*AppId_t*/ nAppID, uint /*uint32*/ nIP , ushort /*uint16*/ nConnPort , ushort /*uint16*/ nQueryPort , uint /*uint32*/ unFlags );
SteamAPICall_t /*(SteamAPICall_t)*/ ISteamMatchmaking_RequestLobbyList();
void /*void*/ ISteamMatchmaking_AddRequestLobbyListStringFilter( string /*const char **/ pchKeyToMatch , string /*const char **/ pchValueToMatch , LobbyComparison /*ELobbyComparison*/ eComparisonType );
void /*void*/ ISteamMatchmaking_AddRequestLobbyListNumericalFilter( string /*const char **/ pchKeyToMatch , int /*int*/ nValueToMatch , LobbyComparison /*ELobbyComparison*/ eComparisonType );
void /*void*/ ISteamMatchmaking_AddRequestLobbyListNearValueFilter( string /*const char **/ pchKeyToMatch , int /*int*/ nValueToBeCloseTo );
void /*void*/ ISteamMatchmaking_AddRequestLobbyListFilterSlotsAvailable( int /*int*/ nSlotsAvailable );
void /*void*/ ISteamMatchmaking_AddRequestLobbyListDistanceFilter( LobbyDistanceFilter /*ELobbyDistanceFilter*/ eLobbyDistanceFilter );
void /*void*/ ISteamMatchmaking_AddRequestLobbyListResultCountFilter( int /*int*/ cMaxResults );
void /*void*/ ISteamMatchmaking_AddRequestLobbyListCompatibleMembersFilter( CSteamID /*class CSteamID*/ steamIDLobby );
CSteamID /*(class CSteamID)*/ ISteamMatchmaking_GetLobbyByIndex( int /*int*/ iLobby );
SteamAPICall_t /*(SteamAPICall_t)*/ ISteamMatchmaking_CreateLobby( LobbyType /*ELobbyType*/ eLobbyType , int /*int*/ cMaxMembers );
SteamAPICall_t /*(SteamAPICall_t)*/ ISteamMatchmaking_JoinLobby( CSteamID /*class CSteamID*/ steamIDLobby );
void /*void*/ ISteamMatchmaking_LeaveLobby( CSteamID /*class CSteamID*/ steamIDLobby );
bool /*bool*/ ISteamMatchmaking_InviteUserToLobby( CSteamID /*class CSteamID*/ steamIDLobby, CSteamID /*class CSteamID*/ steamIDInvitee );
int /*int*/ ISteamMatchmaking_GetNumLobbyMembers( CSteamID /*class CSteamID*/ steamIDLobby );
CSteamID /*(class CSteamID)*/ ISteamMatchmaking_GetLobbyMemberByIndex( CSteamID /*class CSteamID*/ steamIDLobby, int /*int*/ iMember );
IntPtr ISteamMatchmaking_GetLobbyData( CSteamID /*class CSteamID*/ steamIDLobby, string /*const char **/ pchKey );
bool /*bool*/ ISteamMatchmaking_SetLobbyData( CSteamID /*class CSteamID*/ steamIDLobby, string /*const char **/ pchKey , string /*const char **/ pchValue );
int /*int*/ ISteamMatchmaking_GetLobbyDataCount( CSteamID /*class CSteamID*/ steamIDLobby );
bool /*bool*/ ISteamMatchmaking_GetLobbyDataByIndex( CSteamID /*class CSteamID*/ steamIDLobby, int /*int*/ iLobbyData , System.Text.StringBuilder /*char **/ pchKey, int /*int*/ cchKeyBufferSize , System.Text.StringBuilder /*char **/ pchValue, int /*int*/ cchValueBufferSize );
bool /*bool*/ ISteamMatchmaking_DeleteLobbyData( CSteamID /*class CSteamID*/ steamIDLobby, string /*const char **/ pchKey );
IntPtr ISteamMatchmaking_GetLobbyMemberData( CSteamID /*class CSteamID*/ steamIDLobby, CSteamID /*class CSteamID*/ steamIDUser, string /*const char **/ pchKey );
void /*void*/ ISteamMatchmaking_SetLobbyMemberData( CSteamID /*class CSteamID*/ steamIDLobby, string /*const char **/ pchKey , string /*const char **/ pchValue );
bool /*bool*/ ISteamMatchmaking_SendLobbyChatMsg( CSteamID /*class CSteamID*/ steamIDLobby, IntPtr /*const void **/ pvMsgBody , int /*int*/ cubMsgBody );
int /*int*/ ISteamMatchmaking_GetLobbyChatEntry( CSteamID /*class CSteamID*/ steamIDLobby, int /*int*/ iChatID , out CSteamID /*class CSteamID **/ pSteamIDUser, IntPtr /*void **/ pvData , int /*int*/ cubData , out ChatEntryType /*EChatEntryType **/ peChatEntryType );
bool /*bool*/ ISteamMatchmaking_RequestLobbyData( CSteamID /*class CSteamID*/ steamIDLobby );
void /*void*/ ISteamMatchmaking_SetLobbyGameServer( CSteamID /*class CSteamID*/ steamIDLobby, uint /*uint32*/ unGameServerIP , ushort /*uint16*/ unGameServerPort , CSteamID /*class CSteamID*/ steamIDGameServer );
bool /*bool*/ ISteamMatchmaking_GetLobbyGameServer( CSteamID /*class CSteamID*/ steamIDLobby, out uint /*uint32 **/ punGameServerIP, out ushort /*uint16 **/ punGameServerPort, out CSteamID /*class CSteamID **/ psteamIDGameServer );
bool /*bool*/ ISteamMatchmaking_SetLobbyMemberLimit( CSteamID /*class CSteamID*/ steamIDLobby, int /*int*/ cMaxMembers );
int /*int*/ ISteamMatchmaking_GetLobbyMemberLimit( CSteamID /*class CSteamID*/ steamIDLobby );
bool /*bool*/ ISteamMatchmaking_SetLobbyType( CSteamID /*class CSteamID*/ steamIDLobby, LobbyType /*ELobbyType*/ eLobbyType );
bool /*bool*/ ISteamMatchmaking_SetLobbyJoinable( CSteamID /*class CSteamID*/ steamIDLobby, bool /*bool*/ bLobbyJoinable );
CSteamID /*(class CSteamID)*/ ISteamMatchmaking_GetLobbyOwner( CSteamID /*class CSteamID*/ steamIDLobby );
bool /*bool*/ ISteamMatchmaking_SetLobbyOwner( CSteamID /*class CSteamID*/ steamIDLobby, CSteamID /*class CSteamID*/ steamIDNewOwner );
bool /*bool*/ ISteamMatchmaking_SetLinkedLobby( CSteamID /*class CSteamID*/ steamIDLobby, CSteamID /*class CSteamID*/ steamIDLobbyDependent );
HServerListRequest /*(HServerListRequest)*/ ISteamMatchmakingServers_RequestInternetServerList( AppId_t /*AppId_t*/ iApp, IntPtr /*struct MatchMakingKeyValuePair_t ***/ ppchFilters, uint /*uint32*/ nFilters , IntPtr /*class ISteamMatchmakingServerListResponse **/ pRequestServersResponse );
HServerListRequest /*(HServerListRequest)*/ ISteamMatchmakingServers_RequestLANServerList( AppId_t /*AppId_t*/ iApp, IntPtr /*class ISteamMatchmakingServerListResponse **/ pRequestServersResponse );
HServerListRequest /*(HServerListRequest)*/ ISteamMatchmakingServers_RequestFriendsServerList( AppId_t /*AppId_t*/ iApp, IntPtr /*struct MatchMakingKeyValuePair_t ***/ ppchFilters, uint /*uint32*/ nFilters , IntPtr /*class ISteamMatchmakingServerListResponse **/ pRequestServersResponse );
HServerListRequest /*(HServerListRequest)*/ ISteamMatchmakingServers_RequestFavoritesServerList( AppId_t /*AppId_t*/ iApp, IntPtr /*struct MatchMakingKeyValuePair_t ***/ ppchFilters, uint /*uint32*/ nFilters , IntPtr /*class ISteamMatchmakingServerListResponse **/ pRequestServersResponse );
HServerListRequest /*(HServerListRequest)*/ ISteamMatchmakingServers_RequestHistoryServerList( AppId_t /*AppId_t*/ iApp, IntPtr /*struct MatchMakingKeyValuePair_t ***/ ppchFilters, uint /*uint32*/ nFilters , IntPtr /*class ISteamMatchmakingServerListResponse **/ pRequestServersResponse );
HServerListRequest /*(HServerListRequest)*/ ISteamMatchmakingServers_RequestSpectatorServerList( AppId_t /*AppId_t*/ iApp, IntPtr /*struct MatchMakingKeyValuePair_t ***/ ppchFilters, uint /*uint32*/ nFilters , IntPtr /*class ISteamMatchmakingServerListResponse **/ pRequestServersResponse );
void /*void*/ ISteamMatchmakingServers_ReleaseRequest( HServerListRequest /*HServerListRequest*/ hServerListRequest );
IntPtr /*class gameserveritem_t **/ ISteamMatchmakingServers_GetServerDetails( HServerListRequest /*HServerListRequest*/ hRequest, int /*int*/ iServer );
void /*void*/ ISteamMatchmakingServers_CancelQuery( HServerListRequest /*HServerListRequest*/ hRequest );
void /*void*/ ISteamMatchmakingServers_RefreshQuery( HServerListRequest /*HServerListRequest*/ hRequest );
bool /*bool*/ ISteamMatchmakingServers_IsRefreshing( HServerListRequest /*HServerListRequest*/ hRequest );
int /*int*/ ISteamMatchmakingServers_GetServerCount( HServerListRequest /*HServerListRequest*/ hRequest );
void /*void*/ ISteamMatchmakingServers_RefreshServer( HServerListRequest /*HServerListRequest*/ hRequest, int /*int*/ iServer );
HServerQuery /*(HServerQuery)*/ ISteamMatchmakingServers_PingServer( uint /*uint32*/ unIP , ushort /*uint16*/ usPort , IntPtr /*class ISteamMatchmakingPingResponse **/ pRequestServersResponse );
HServerQuery /*(HServerQuery)*/ ISteamMatchmakingServers_PlayerDetails( uint /*uint32*/ unIP , ushort /*uint16*/ usPort , IntPtr /*class ISteamMatchmakingPlayersResponse **/ pRequestServersResponse );
HServerQuery /*(HServerQuery)*/ ISteamMatchmakingServers_ServerRules( uint /*uint32*/ unIP , ushort /*uint16*/ usPort , IntPtr /*class ISteamMatchmakingRulesResponse **/ pRequestServersResponse );
void /*void*/ ISteamMatchmakingServers_CancelServerQuery( HServerQuery /*HServerQuery*/ hServerQuery );
bool /*bool*/ ISteamRemoteStorage_FileWrite( string /*const char **/ pchFile , IntPtr /*const void **/ pvData , int /*int32*/ cubData );
int /*int32*/ ISteamRemoteStorage_FileRead( string /*const char **/ pchFile , IntPtr /*void **/ pvData , int /*int32*/ cubDataToRead );
SteamAPICall_t /*(SteamAPICall_t)*/ ISteamRemoteStorage_FileWriteAsync( string /*const char **/ pchFile , IntPtr /*const void **/ pvData , uint /*uint32*/ cubData );
SteamAPICall_t /*(SteamAPICall_t)*/ ISteamRemoteStorage_FileReadAsync( string /*const char **/ pchFile , uint /*uint32*/ nOffset , uint /*uint32*/ cubToRead );
bool /*bool*/ ISteamRemoteStorage_FileReadAsyncComplete( SteamAPICall_t /*SteamAPICall_t*/ hReadCall, IntPtr /*void **/ pvBuffer , uint /*uint32*/ cubToRead );
bool /*bool*/ ISteamRemoteStorage_FileForget( string /*const char **/ pchFile );
bool /*bool*/ ISteamRemoteStorage_FileDelete( string /*const char **/ pchFile );
SteamAPICall_t /*(SteamAPICall_t)*/ ISteamRemoteStorage_FileShare( string /*const char **/ pchFile );
bool /*bool*/ ISteamRemoteStorage_SetSyncPlatforms( string /*const char **/ pchFile , RemoteStoragePlatform /*ERemoteStoragePlatform*/ eRemoteStoragePlatform );
UGCFileWriteStreamHandle_t /*(UGCFileWriteStreamHandle_t)*/ ISteamRemoteStorage_FileWriteStreamOpen( string /*const char **/ pchFile );
bool /*bool*/ ISteamRemoteStorage_FileWriteStreamWriteChunk( UGCFileWriteStreamHandle_t /*UGCFileWriteStreamHandle_t*/ writeHandle, IntPtr /*const void **/ pvData , int /*int32*/ cubData );
bool /*bool*/ ISteamRemoteStorage_FileWriteStreamClose( UGCFileWriteStreamHandle_t /*UGCFileWriteStreamHandle_t*/ writeHandle );
bool /*bool*/ ISteamRemoteStorage_FileWriteStreamCancel( UGCFileWriteStreamHandle_t /*UGCFileWriteStreamHandle_t*/ writeHandle );
bool /*bool*/ ISteamRemoteStorage_FileExists( string /*const char **/ pchFile );
bool /*bool*/ ISteamRemoteStorage_FilePersisted( string /*const char **/ pchFile );
int /*int32*/ ISteamRemoteStorage_GetFileSize( string /*const char **/ pchFile );
long /*int64*/ ISteamRemoteStorage_GetFileTimestamp( string /*const char **/ pchFile );
RemoteStoragePlatform /*ERemoteStoragePlatform*/ ISteamRemoteStorage_GetSyncPlatforms( string /*const char **/ pchFile );
int /*int32*/ ISteamRemoteStorage_GetFileCount();
IntPtr ISteamRemoteStorage_GetFileNameAndSize( int /*int*/ iFile , IntPtr /*int32 **/ pnFileSizeInBytes );
bool /*bool*/ ISteamRemoteStorage_GetQuota( IntPtr /*int32 **/ pnTotalBytes, IntPtr /*int32 **/ puAvailableBytes );
bool /*bool*/ ISteamRemoteStorage_IsCloudEnabledForAccount();
bool /*bool*/ ISteamRemoteStorage_IsCloudEnabledForApp();
void /*void*/ ISteamRemoteStorage_SetCloudEnabledForApp( bool /*bool*/ bEnabled );
SteamAPICall_t /*(SteamAPICall_t)*/ ISteamRemoteStorage_UGCDownload( UGCHandle_t /*UGCHandle_t*/ hContent, uint /*uint32*/ unPriority );
bool /*bool*/ ISteamRemoteStorage_GetUGCDownloadProgress( UGCHandle_t /*UGCHandle_t*/ hContent, out int /*int32 **/ pnBytesDownloaded, out int /*int32 **/ pnBytesExpected );
bool /*bool*/ ISteamRemoteStorage_GetUGCDetails( UGCHandle_t /*UGCHandle_t*/ hContent, ref AppId_t /*AppId_t **/ pnAppID, System.Text.StringBuilder /*char ***/ ppchName, IntPtr /*int32 **/ pnFileSizeInBytes, out CSteamID /*class CSteamID **/ pSteamIDOwner );
int /*int32*/ ISteamRemoteStorage_UGCRead( UGCHandle_t /*UGCHandle_t*/ hContent, IntPtr /*void **/ pvData , int /*int32*/ cubDataToRead , uint /*uint32*/ cOffset , UGCReadAction /*EUGCReadAction*/ eAction );
int /*int32*/ ISteamRemoteStorage_GetCachedUGCCount();
UGCHandle_t /*(UGCHandle_t)*/ ISteamRemoteStorage_GetCachedUGCHandle( int /*int32*/ iCachedContent );
SteamAPICall_t /*(SteamAPICall_t)*/ ISteamRemoteStorage_PublishWorkshopFile( string /*const char **/ pchFile , string /*const char **/ pchPreviewFile , AppId_t /*AppId_t*/ nConsumerAppId, string /*const char **/ pchTitle , string /*const char **/ pchDescription , RemoteStoragePublishedFileVisibility /*ERemoteStoragePublishedFileVisibility*/ eVisibility , IntPtr /*struct SteamParamStringArray_t **/ pTags, WorkshopFileType /*EWorkshopFileType*/ eWorkshopFileType );
PublishedFileUpdateHandle_t /*(PublishedFileUpdateHandle_t)*/ ISteamRemoteStorage_CreatePublishedFileUpdateRequest( PublishedFileId_t /*PublishedFileId_t*/ unPublishedFileId );
bool /*bool*/ ISteamRemoteStorage_UpdatePublishedFileFile( PublishedFileUpdateHandle_t /*PublishedFileUpdateHandle_t*/ updateHandle, string /*const char **/ pchFile );
bool /*bool*/ ISteamRemoteStorage_UpdatePublishedFilePreviewFile( PublishedFileUpdateHandle_t /*PublishedFileUpdateHandle_t*/ updateHandle, string /*const char **/ pchPreviewFile );
bool /*bool*/ ISteamRemoteStorage_UpdatePublishedFileTitle( PublishedFileUpdateHandle_t /*PublishedFileUpdateHandle_t*/ updateHandle, string /*const char **/ pchTitle );
bool /*bool*/ ISteamRemoteStorage_UpdatePublishedFileDescription( PublishedFileUpdateHandle_t /*PublishedFileUpdateHandle_t*/ updateHandle, string /*const char **/ pchDescription );
bool /*bool*/ ISteamRemoteStorage_UpdatePublishedFileVisibility( PublishedFileUpdateHandle_t /*PublishedFileUpdateHandle_t*/ updateHandle, RemoteStoragePublishedFileVisibility /*ERemoteStoragePublishedFileVisibility*/ eVisibility );
bool /*bool*/ ISteamRemoteStorage_UpdatePublishedFileTags( PublishedFileUpdateHandle_t /*PublishedFileUpdateHandle_t*/ updateHandle, IntPtr /*struct SteamParamStringArray_t **/ pTags );
SteamAPICall_t /*(SteamAPICall_t)*/ ISteamRemoteStorage_CommitPublishedFileUpdate( PublishedFileUpdateHandle_t /*PublishedFileUpdateHandle_t*/ updateHandle );
SteamAPICall_t /*(SteamAPICall_t)*/ ISteamRemoteStorage_GetPublishedFileDetails( PublishedFileId_t /*PublishedFileId_t*/ unPublishedFileId, uint /*uint32*/ unMaxSecondsOld );
SteamAPICall_t /*(SteamAPICall_t)*/ ISteamRemoteStorage_DeletePublishedFile( PublishedFileId_t /*PublishedFileId_t*/ unPublishedFileId );
SteamAPICall_t /*(SteamAPICall_t)*/ ISteamRemoteStorage_EnumerateUserPublishedFiles( uint /*uint32*/ unStartIndex );
SteamAPICall_t /*(SteamAPICall_t)*/ ISteamRemoteStorage_SubscribePublishedFile( PublishedFileId_t /*PublishedFileId_t*/ unPublishedFileId );
SteamAPICall_t /*(SteamAPICall_t)*/ ISteamRemoteStorage_EnumerateUserSubscribedFiles( uint /*uint32*/ unStartIndex );
SteamAPICall_t /*(SteamAPICall_t)*/ ISteamRemoteStorage_UnsubscribePublishedFile( PublishedFileId_t /*PublishedFileId_t*/ unPublishedFileId );
bool /*bool*/ ISteamRemoteStorage_UpdatePublishedFileSetChangeDescription( PublishedFileUpdateHandle_t /*PublishedFileUpdateHandle_t*/ updateHandle, string /*const char **/ pchChangeDescription );
SteamAPICall_t /*(SteamAPICall_t)*/ ISteamRemoteStorage_GetPublishedItemVoteDetails( PublishedFileId_t /*PublishedFileId_t*/ unPublishedFileId );
SteamAPICall_t /*(SteamAPICall_t)*/ ISteamRemoteStorage_UpdateUserPublishedItemVote( PublishedFileId_t /*PublishedFileId_t*/ unPublishedFileId, bool /*bool*/ bVoteUp );
SteamAPICall_t /*(SteamAPICall_t)*/ ISteamRemoteStorage_GetUserPublishedItemVoteDetails( PublishedFileId_t /*PublishedFileId_t*/ unPublishedFileId );
SteamAPICall_t /*(SteamAPICall_t)*/ ISteamRemoteStorage_EnumerateUserSharedWorkshopFiles( CSteamID /*class CSteamID*/ steamId, uint /*uint32*/ unStartIndex , IntPtr /*struct SteamParamStringArray_t **/ pRequiredTags, IntPtr /*struct SteamParamStringArray_t **/ pExcludedTags );
SteamAPICall_t /*(SteamAPICall_t)*/ ISteamRemoteStorage_PublishVideo( WorkshopVideoProvider /*EWorkshopVideoProvider*/ eVideoProvider , string /*const char **/ pchVideoAccount , string /*const char **/ pchVideoIdentifier , string /*const char **/ pchPreviewFile , AppId_t /*AppId_t*/ nConsumerAppId, string /*const char **/ pchTitle , string /*const char **/ pchDescription , RemoteStoragePublishedFileVisibility /*ERemoteStoragePublishedFileVisibility*/ eVisibility , IntPtr /*struct SteamParamStringArray_t **/ pTags );
SteamAPICall_t /*(SteamAPICall_t)*/ ISteamRemoteStorage_SetUserPublishedFileAction( PublishedFileId_t /*PublishedFileId_t*/ unPublishedFileId, WorkshopFileAction /*EWorkshopFileAction*/ eAction );
SteamAPICall_t /*(SteamAPICall_t)*/ ISteamRemoteStorage_EnumeratePublishedFilesByUserAction( WorkshopFileAction /*EWorkshopFileAction*/ eAction , uint /*uint32*/ unStartIndex );
SteamAPICall_t /*(SteamAPICall_t)*/ ISteamRemoteStorage_EnumeratePublishedWorkshopFiles( WorkshopEnumerationType /*EWorkshopEnumerationType*/ eEnumerationType , uint /*uint32*/ unStartIndex , uint /*uint32*/ unCount , uint /*uint32*/ unDays , IntPtr /*struct SteamParamStringArray_t **/ pTags, IntPtr /*struct SteamParamStringArray_t **/ pUserTags );
SteamAPICall_t /*(SteamAPICall_t)*/ ISteamRemoteStorage_UGCDownloadToLocation( UGCHandle_t /*UGCHandle_t*/ hContent, string /*const char **/ pchLocation , uint /*uint32*/ unPriority );
bool /*bool*/ ISteamUserStats_RequestCurrentStats();
bool /*bool*/ ISteamUserStats_GetStat( string /*const char **/ pchName , out int /*int32 **/ pData );
bool /*bool*/ ISteamUserStats_GetStat0( string /*const char **/ pchName , out float /*float **/ pData );
bool /*bool*/ ISteamUserStats_SetStat( string /*const char **/ pchName , int /*int32*/ nData );
bool /*bool*/ ISteamUserStats_SetStat0( string /*const char **/ pchName , float /*float*/ fData );
bool /*bool*/ ISteamUserStats_UpdateAvgRateStat( string /*const char **/ pchName , float /*float*/ flCountThisSession , double /*double*/ dSessionLength );
bool /*bool*/ ISteamUserStats_GetAchievement( string /*const char **/ pchName , out bool /*bool **/ pbAchieved );
bool /*bool*/ ISteamUserStats_SetAchievement( string /*const char **/ pchName );
bool /*bool*/ ISteamUserStats_ClearAchievement( string /*const char **/ pchName );
bool /*bool*/ ISteamUserStats_GetAchievementAndUnlockTime( string /*const char **/ pchName , out bool /*bool **/ pbAchieved, out uint /*uint32 **/ punUnlockTime );
bool /*bool*/ ISteamUserStats_StoreStats();
int /*int*/ ISteamUserStats_GetAchievementIcon( string /*const char **/ pchName );
IntPtr ISteamUserStats_GetAchievementDisplayAttribute( string /*const char **/ pchName , string /*const char **/ pchKey );
bool /*bool*/ ISteamUserStats_IndicateAchievementProgress( string /*const char **/ pchName , uint /*uint32*/ nCurProgress , uint /*uint32*/ nMaxProgress );
uint /*uint32*/ ISteamUserStats_GetNumAchievements();
IntPtr ISteamUserStats_GetAchievementName( uint /*uint32*/ iAchievement );
SteamAPICall_t /*(SteamAPICall_t)*/ ISteamUserStats_RequestUserStats( CSteamID /*class CSteamID*/ steamIDUser );
bool /*bool*/ ISteamUserStats_GetUserStat( CSteamID /*class CSteamID*/ steamIDUser, string /*const char **/ pchName , out int /*int32 **/ pData );
bool /*bool*/ ISteamUserStats_GetUserStat0( CSteamID /*class CSteamID*/ steamIDUser, string /*const char **/ pchName , out float /*float **/ pData );
bool /*bool*/ ISteamUserStats_GetUserAchievement( CSteamID /*class CSteamID*/ steamIDUser, string /*const char **/ pchName , out bool /*bool **/ pbAchieved );
bool /*bool*/ ISteamUserStats_GetUserAchievementAndUnlockTime( CSteamID /*class CSteamID*/ steamIDUser, string /*const char **/ pchName , out bool /*bool **/ pbAchieved, out uint /*uint32 **/ punUnlockTime );
bool /*bool*/ ISteamUserStats_ResetAllStats( bool /*bool*/ bAchievementsToo );
SteamAPICall_t /*(SteamAPICall_t)*/ ISteamUserStats_FindOrCreateLeaderboard( string /*const char **/ pchLeaderboardName , LeaderboardSortMethod /*ELeaderboardSortMethod*/ eLeaderboardSortMethod , LeaderboardDisplayType /*ELeaderboardDisplayType*/ eLeaderboardDisplayType );
SteamAPICall_t /*(SteamAPICall_t)*/ ISteamUserStats_FindLeaderboard( string /*const char **/ pchLeaderboardName );
IntPtr ISteamUserStats_GetLeaderboardName( SteamLeaderboard_t /*SteamLeaderboard_t*/ hSteamLeaderboard );
int /*int*/ ISteamUserStats_GetLeaderboardEntryCount( SteamLeaderboard_t /*SteamLeaderboard_t*/ hSteamLeaderboard );
LeaderboardSortMethod /*ELeaderboardSortMethod*/ ISteamUserStats_GetLeaderboardSortMethod( SteamLeaderboard_t /*SteamLeaderboard_t*/ hSteamLeaderboard );
LeaderboardDisplayType /*ELeaderboardDisplayType*/ ISteamUserStats_GetLeaderboardDisplayType( SteamLeaderboard_t /*SteamLeaderboard_t*/ hSteamLeaderboard );
SteamAPICall_t /*(SteamAPICall_t)*/ ISteamUserStats_DownloadLeaderboardEntries( SteamLeaderboard_t /*SteamLeaderboard_t*/ hSteamLeaderboard, LeaderboardDataRequest /*ELeaderboardDataRequest*/ eLeaderboardDataRequest , int /*int*/ nRangeStart , int /*int*/ nRangeEnd );
SteamAPICall_t /*(SteamAPICall_t)*/ ISteamUserStats_DownloadLeaderboardEntriesForUsers( SteamLeaderboard_t /*SteamLeaderboard_t*/ hSteamLeaderboard, IntPtr /*class CSteamID **/ prgUsers, int /*int*/ cUsers );
bool /*bool*/ ISteamUserStats_GetDownloadedLeaderboardEntry( SteamLeaderboardEntries_t /*SteamLeaderboardEntries_t*/ hSteamLeaderboardEntries, int /*int*/ index , ref LeaderboardEntry_t /*struct LeaderboardEntry_t **/ pLeaderboardEntry, IntPtr /*int32 **/ pDetails, int /*int*/ cDetailsMax );
SteamAPICall_t /*(SteamAPICall_t)*/ ISteamUserStats_UploadLeaderboardScore( SteamLeaderboard_t /*SteamLeaderboard_t*/ hSteamLeaderboard, LeaderboardUploadScoreMethod /*ELeaderboardUploadScoreMethod*/ eLeaderboardUploadScoreMethod , int /*int32*/ nScore , IntPtr /*const int32 **/ pScoreDetails, int /*int*/ cScoreDetailsCount );
SteamAPICall_t /*(SteamAPICall_t)*/ ISteamUserStats_AttachLeaderboardUGC( SteamLeaderboard_t /*SteamLeaderboard_t*/ hSteamLeaderboard, UGCHandle_t /*UGCHandle_t*/ hUGC );
SteamAPICall_t /*(SteamAPICall_t)*/ ISteamUserStats_GetNumberOfCurrentPlayers();
SteamAPICall_t /*(SteamAPICall_t)*/ ISteamUserStats_RequestGlobalAchievementPercentages();
int /*int*/ ISteamUserStats_GetMostAchievedAchievementInfo( System.Text.StringBuilder /*char **/ pchName, uint /*uint32*/ unNameBufLen , out float /*float **/ pflPercent, out bool /*bool **/ pbAchieved );
int /*int*/ ISteamUserStats_GetNextMostAchievedAchievementInfo( int /*int*/ iIteratorPrevious , System.Text.StringBuilder /*char **/ pchName, uint /*uint32*/ unNameBufLen , out float /*float **/ pflPercent, out bool /*bool **/ pbAchieved );
bool /*bool*/ ISteamUserStats_GetAchievementAchievedPercent( string /*const char **/ pchName , out float /*float **/ pflPercent );
SteamAPICall_t /*(SteamAPICall_t)*/ ISteamUserStats_RequestGlobalStats( int /*int*/ nHistoryDays );
bool /*bool*/ ISteamUserStats_GetGlobalStat( string /*const char **/ pchStatName , out long /*int64 **/ pData );
bool /*bool*/ ISteamUserStats_GetGlobalStat0( string /*const char **/ pchStatName , out double /*double **/ pData );
int /*int32*/ ISteamUserStats_GetGlobalStatHistory( string /*const char **/ pchStatName , out long /*int64 **/ pData, uint /*uint32*/ cubData );
int /*int32*/ ISteamUserStats_GetGlobalStatHistory0( string /*const char **/ pchStatName , out double /*double **/ pData, uint /*uint32*/ cubData );
bool /*bool*/ ISteamApps_BIsSubscribed();
bool /*bool*/ ISteamApps_BIsLowViolence();
bool /*bool*/ ISteamApps_BIsCybercafe();
bool /*bool*/ ISteamApps_BIsVACBanned();
IntPtr ISteamApps_GetCurrentGameLanguage();
IntPtr ISteamApps_GetAvailableGameLanguages();
bool /*bool*/ ISteamApps_BIsSubscribedApp( AppId_t /*AppId_t*/ appID );
bool /*bool*/ ISteamApps_BIsDlcInstalled( AppId_t /*AppId_t*/ appID );
uint /*uint32*/ ISteamApps_GetEarliestPurchaseUnixTime( AppId_t /*AppId_t*/ nAppID );
bool /*bool*/ ISteamApps_BIsSubscribedFromFreeWeekend();
int /*int*/ ISteamApps_GetDLCCount();
bool /*bool*/ ISteamApps_BGetDLCDataByIndex( int /*int*/ iDLC , ref AppId_t /*AppId_t **/ pAppID, out bool /*bool **/ pbAvailable, System.Text.StringBuilder /*char **/ pchName, int /*int*/ cchNameBufferSize );
void /*void*/ ISteamApps_InstallDLC( AppId_t /*AppId_t*/ nAppID );
void /*void*/ ISteamApps_UninstallDLC( AppId_t /*AppId_t*/ nAppID );
void /*void*/ ISteamApps_RequestAppProofOfPurchaseKey( AppId_t /*AppId_t*/ nAppID );
bool /*bool*/ ISteamApps_GetCurrentBetaName( System.Text.StringBuilder /*char **/ pchName, int /*int*/ cchNameBufferSize );
bool /*bool*/ ISteamApps_MarkContentCorrupt( bool /*bool*/ bMissingFilesOnly );
uint /*uint32*/ ISteamApps_GetInstalledDepots( AppId_t /*AppId_t*/ appID, IntPtr /*DepotId_t **/ pvecDepots, uint /*uint32*/ cMaxDepots );
uint /*uint32*/ ISteamApps_GetAppInstallDir( AppId_t /*AppId_t*/ appID, System.Text.StringBuilder /*char **/ pchFolder, uint /*uint32*/ cchFolderBufferSize );
bool /*bool*/ ISteamApps_BIsAppInstalled( AppId_t /*AppId_t*/ appID );
CSteamID /*(class CSteamID)*/ ISteamApps_GetAppOwner();
IntPtr ISteamApps_GetLaunchQueryParam( string /*const char **/ pchKey );
bool /*bool*/ ISteamApps_GetDlcDownloadProgress( AppId_t /*AppId_t*/ nAppID, out ulong /*uint64 **/ punBytesDownloaded, out ulong /*uint64 **/ punBytesTotal );
int /*int*/ ISteamApps_GetAppBuildId();
void /*void*/ ISteamApps_RequestAllProofOfPurchaseKeys();
bool /*bool*/ ISteamNetworking_SendP2PPacket( CSteamID /*class CSteamID*/ steamIDRemote, IntPtr /*const void **/ pubData , uint /*uint32*/ cubData , P2PSend /*EP2PSend*/ eP2PSendType , int /*int*/ nChannel );
bool /*bool*/ ISteamNetworking_IsP2PPacketAvailable( out uint /*uint32 **/ pcubMsgSize, int /*int*/ nChannel );
bool /*bool*/ ISteamNetworking_ReadP2PPacket( IntPtr /*void **/ pubDest , uint /*uint32*/ cubDest , out uint /*uint32 **/ pcubMsgSize, out CSteamID /*class CSteamID **/ psteamIDRemote, int /*int*/ nChannel );
bool /*bool*/ ISteamNetworking_AcceptP2PSessionWithUser( CSteamID /*class CSteamID*/ steamIDRemote );
bool /*bool*/ ISteamNetworking_CloseP2PSessionWithUser( CSteamID /*class CSteamID*/ steamIDRemote );
bool /*bool*/ ISteamNetworking_CloseP2PChannelWithUser( CSteamID /*class CSteamID*/ steamIDRemote, int /*int*/ nChannel );
bool /*bool*/ ISteamNetworking_GetP2PSessionState( CSteamID /*class CSteamID*/ steamIDRemote, ref P2PSessionState_t /*struct P2PSessionState_t **/ pConnectionState );
bool /*bool*/ ISteamNetworking_AllowP2PPacketRelay( bool /*bool*/ bAllow );
SNetListenSocket_t /*(SNetListenSocket_t)*/ ISteamNetworking_CreateListenSocket( int /*int*/ nVirtualP2PPort , uint /*uint32*/ nIP , ushort /*uint16*/ nPort , bool /*bool*/ bAllowUseOfPacketRelay );
SNetSocket_t /*(SNetSocket_t)*/ ISteamNetworking_CreateP2PConnectionSocket( CSteamID /*class CSteamID*/ steamIDTarget, int /*int*/ nVirtualPort , int /*int*/ nTimeoutSec , bool /*bool*/ bAllowUseOfPacketRelay );
SNetSocket_t /*(SNetSocket_t)*/ ISteamNetworking_CreateConnectionSocket( uint /*uint32*/ nIP , ushort /*uint16*/ nPort , int /*int*/ nTimeoutSec );
bool /*bool*/ ISteamNetworking_DestroySocket( SNetSocket_t /*SNetSocket_t*/ hSocket, bool /*bool*/ bNotifyRemoteEnd );
bool /*bool*/ ISteamNetworking_DestroyListenSocket( SNetListenSocket_t /*SNetListenSocket_t*/ hSocket, bool /*bool*/ bNotifyRemoteEnd );
bool /*bool*/ ISteamNetworking_SendDataOnSocket( SNetSocket_t /*SNetSocket_t*/ hSocket, IntPtr /*void **/ pubData , uint /*uint32*/ cubData , bool /*bool*/ bReliable );
bool /*bool*/ ISteamNetworking_IsDataAvailableOnSocket( SNetSocket_t /*SNetSocket_t*/ hSocket, out uint /*uint32 **/ pcubMsgSize );
bool /*bool*/ ISteamNetworking_RetrieveDataFromSocket( SNetSocket_t /*SNetSocket_t*/ hSocket, IntPtr /*void **/ pubDest , uint /*uint32*/ cubDest , out uint /*uint32 **/ pcubMsgSize );
bool /*bool*/ ISteamNetworking_IsDataAvailable( SNetListenSocket_t /*SNetListenSocket_t*/ hListenSocket, out uint /*uint32 **/ pcubMsgSize, ref SNetSocket_t /*SNetSocket_t **/ phSocket );
bool /*bool*/ ISteamNetworking_RetrieveData( SNetListenSocket_t /*SNetListenSocket_t*/ hListenSocket, IntPtr /*void **/ pubDest , uint /*uint32*/ cubDest , out uint /*uint32 **/ pcubMsgSize, ref SNetSocket_t /*SNetSocket_t **/ phSocket );
bool /*bool*/ ISteamNetworking_GetSocketInfo( SNetSocket_t /*SNetSocket_t*/ hSocket, out CSteamID /*class CSteamID **/ pSteamIDRemote, IntPtr /*int **/ peSocketStatus, out uint /*uint32 **/ punIPRemote, out ushort /*uint16 **/ punPortRemote );
bool /*bool*/ ISteamNetworking_GetListenSocketInfo( SNetListenSocket_t /*SNetListenSocket_t*/ hListenSocket, out uint /*uint32 **/ pnIP, out ushort /*uint16 **/ pnPort );
SNetSocketConnectionType /*ESNetSocketConnectionType*/ ISteamNetworking_GetSocketConnectionType( SNetSocket_t /*SNetSocket_t*/ hSocket );
int /*int*/ ISteamNetworking_GetMaxPacketSize( SNetSocket_t /*SNetSocket_t*/ hSocket );
ScreenshotHandle /*(ScreenshotHandle)*/ ISteamScreenshots_WriteScreenshot( IntPtr /*void **/ pubRGB , uint /*uint32*/ cubRGB , int /*int*/ nWidth , int /*int*/ nHeight );
ScreenshotHandle /*(ScreenshotHandle)*/ ISteamScreenshots_AddScreenshotToLibrary( string /*const char **/ pchFilename , string /*const char **/ pchThumbnailFilename , int /*int*/ nWidth , int /*int*/ nHeight );
void /*void*/ ISteamScreenshots_TriggerScreenshot();
void /*void*/ ISteamScreenshots_HookScreenshots( bool /*bool*/ bHook );
bool /*bool*/ ISteamScreenshots_SetLocation( ScreenshotHandle /*ScreenshotHandle*/ hScreenshot, string /*const char **/ pchLocation );
bool /*bool*/ ISteamScreenshots_TagUser( ScreenshotHandle /*ScreenshotHandle*/ hScreenshot, CSteamID /*class CSteamID*/ steamID );
bool /*bool*/ ISteamScreenshots_TagPublishedFile( ScreenshotHandle /*ScreenshotHandle*/ hScreenshot, PublishedFileId_t /*PublishedFileId_t*/ unPublishedFileID );
bool /*bool*/ ISteamMusic_BIsEnabled();
bool /*bool*/ ISteamMusic_BIsPlaying();
AudioPlayback_Status /*AudioPlayback_Status*/ ISteamMusic_GetPlaybackStatus();
void /*void*/ ISteamMusic_Play();
void /*void*/ ISteamMusic_Pause();
void /*void*/ ISteamMusic_PlayPrevious();
void /*void*/ ISteamMusic_PlayNext();
void /*void*/ ISteamMusic_SetVolume( float /*float*/ flVolume );
float /*float*/ ISteamMusic_GetVolume();
bool /*bool*/ ISteamMusicRemote_RegisterSteamMusicRemote( string /*const char **/ pchName );
bool /*bool*/ ISteamMusicRemote_DeregisterSteamMusicRemote();
bool /*bool*/ ISteamMusicRemote_BIsCurrentMusicRemote();
bool /*bool*/ ISteamMusicRemote_BActivationSuccess( bool /*bool*/ bValue );
bool /*bool*/ ISteamMusicRemote_SetDisplayName( string /*const char **/ pchDisplayName );
bool /*bool*/ ISteamMusicRemote_SetPNGIcon_64x64( IntPtr /*void **/ pvBuffer , uint /*uint32*/ cbBufferLength );
bool /*bool*/ ISteamMusicRemote_EnablePlayPrevious( bool /*bool*/ bValue );
bool /*bool*/ ISteamMusicRemote_EnablePlayNext( bool /*bool*/ bValue );
bool /*bool*/ ISteamMusicRemote_EnableShuffled( bool /*bool*/ bValue );
bool /*bool*/ ISteamMusicRemote_EnableLooped( bool /*bool*/ bValue );
bool /*bool*/ ISteamMusicRemote_EnableQueue( bool /*bool*/ bValue );
bool /*bool*/ ISteamMusicRemote_EnablePlaylists( bool /*bool*/ bValue );
bool /*bool*/ ISteamMusicRemote_UpdatePlaybackStatus( AudioPlayback_Status /*AudioPlayback_Status*/ nStatus );
bool /*bool*/ ISteamMusicRemote_UpdateShuffled( bool /*bool*/ bValue );
bool /*bool*/ ISteamMusicRemote_UpdateLooped( bool /*bool*/ bValue );
bool /*bool*/ ISteamMusicRemote_UpdateVolume( float /*float*/ flValue );
bool /*bool*/ ISteamMusicRemote_CurrentEntryWillChange();
bool /*bool*/ ISteamMusicRemote_CurrentEntryIsAvailable( bool /*bool*/ bAvailable );
bool /*bool*/ ISteamMusicRemote_UpdateCurrentEntryText( string /*const char **/ pchText );
bool /*bool*/ ISteamMusicRemote_UpdateCurrentEntryElapsedSeconds( int /*int*/ nValue );
bool /*bool*/ ISteamMusicRemote_UpdateCurrentEntryCoverArt( IntPtr /*void **/ pvBuffer , uint /*uint32*/ cbBufferLength );
bool /*bool*/ ISteamMusicRemote_CurrentEntryDidChange();
bool /*bool*/ ISteamMusicRemote_QueueWillChange();
bool /*bool*/ ISteamMusicRemote_ResetQueueEntries();
bool /*bool*/ ISteamMusicRemote_SetQueueEntry( int /*int*/ nID , int /*int*/ nPosition , string /*const char **/ pchEntryText );
bool /*bool*/ ISteamMusicRemote_SetCurrentQueueEntry( int /*int*/ nID );
bool /*bool*/ ISteamMusicRemote_QueueDidChange();
bool /*bool*/ ISteamMusicRemote_PlaylistWillChange();
bool /*bool*/ ISteamMusicRemote_ResetPlaylistEntries();
bool /*bool*/ ISteamMusicRemote_SetPlaylistEntry( int /*int*/ nID , int /*int*/ nPosition , string /*const char **/ pchEntryText );
bool /*bool*/ ISteamMusicRemote_SetCurrentPlaylistEntry( int /*int*/ nID );
bool /*bool*/ ISteamMusicRemote_PlaylistDidChange();
HTTPRequestHandle /*(HTTPRequestHandle)*/ ISteamHTTP_CreateHTTPRequest( HTTPMethod /*EHTTPMethod*/ eHTTPRequestMethod , string /*const char **/ pchAbsoluteURL );
bool /*bool*/ ISteamHTTP_SetHTTPRequestContextValue( HTTPRequestHandle /*HTTPRequestHandle*/ hRequest, ulong /*uint64*/ ulContextValue );
bool /*bool*/ ISteamHTTP_SetHTTPRequestNetworkActivityTimeout( HTTPRequestHandle /*HTTPRequestHandle*/ hRequest, uint /*uint32*/ unTimeoutSeconds );
bool /*bool*/ ISteamHTTP_SetHTTPRequestHeaderValue( HTTPRequestHandle /*HTTPRequestHandle*/ hRequest, string /*const char **/ pchHeaderName , string /*const char **/ pchHeaderValue );
bool /*bool*/ ISteamHTTP_SetHTTPRequestGetOrPostParameter( HTTPRequestHandle /*HTTPRequestHandle*/ hRequest, string /*const char **/ pchParamName , string /*const char **/ pchParamValue );
bool /*bool*/ ISteamHTTP_SendHTTPRequest( HTTPRequestHandle /*HTTPRequestHandle*/ hRequest, ref SteamAPICall_t /*SteamAPICall_t **/ pCallHandle );
bool /*bool*/ ISteamHTTP_SendHTTPRequestAndStreamResponse( HTTPRequestHandle /*HTTPRequestHandle*/ hRequest, ref SteamAPICall_t /*SteamAPICall_t **/ pCallHandle );
bool /*bool*/ ISteamHTTP_DeferHTTPRequest( HTTPRequestHandle /*HTTPRequestHandle*/ hRequest );
bool /*bool*/ ISteamHTTP_PrioritizeHTTPRequest( HTTPRequestHandle /*HTTPRequestHandle*/ hRequest );
bool /*bool*/ ISteamHTTP_GetHTTPResponseHeaderSize( HTTPRequestHandle /*HTTPRequestHandle*/ hRequest, string /*const char **/ pchHeaderName , out uint /*uint32 **/ unResponseHeaderSize );
bool /*bool*/ ISteamHTTP_GetHTTPResponseHeaderValue( HTTPRequestHandle /*HTTPRequestHandle*/ hRequest, string /*const char **/ pchHeaderName , out byte /*uint8 **/ pHeaderValueBuffer, uint /*uint32*/ unBufferSize );
bool /*bool*/ ISteamHTTP_GetHTTPResponseBodySize( HTTPRequestHandle /*HTTPRequestHandle*/ hRequest, out uint /*uint32 **/ unBodySize );
bool /*bool*/ ISteamHTTP_GetHTTPResponseBodyData( HTTPRequestHandle /*HTTPRequestHandle*/ hRequest, out byte /*uint8 **/ pBodyDataBuffer, uint /*uint32*/ unBufferSize );
bool /*bool*/ ISteamHTTP_GetHTTPStreamingResponseBodyData( HTTPRequestHandle /*HTTPRequestHandle*/ hRequest, uint /*uint32*/ cOffset , out byte /*uint8 **/ pBodyDataBuffer, uint /*uint32*/ unBufferSize );
bool /*bool*/ ISteamHTTP_ReleaseHTTPRequest( HTTPRequestHandle /*HTTPRequestHandle*/ hRequest );
bool /*bool*/ ISteamHTTP_GetHTTPDownloadProgressPct( HTTPRequestHandle /*HTTPRequestHandle*/ hRequest, out float /*float **/ pflPercentOut );
bool /*bool*/ ISteamHTTP_SetHTTPRequestRawPostBody( HTTPRequestHandle /*HTTPRequestHandle*/ hRequest, string /*const char **/ pchContentType , out byte /*uint8 **/ pubBody, uint /*uint32*/ unBodyLen );
HTTPCookieContainerHandle /*(HTTPCookieContainerHandle)*/ ISteamHTTP_CreateCookieContainer( bool /*bool*/ bAllowResponsesToModify );
bool /*bool*/ ISteamHTTP_ReleaseCookieContainer( HTTPCookieContainerHandle /*HTTPCookieContainerHandle*/ hCookieContainer );
bool /*bool*/ ISteamHTTP_SetCookie( HTTPCookieContainerHandle /*HTTPCookieContainerHandle*/ hCookieContainer, string /*const char **/ pchHost , string /*const char **/ pchUrl , string /*const char **/ pchCookie );
bool /*bool*/ ISteamHTTP_SetHTTPRequestCookieContainer( HTTPRequestHandle /*HTTPRequestHandle*/ hRequest, HTTPCookieContainerHandle /*HTTPCookieContainerHandle*/ hCookieContainer );
bool /*bool*/ ISteamHTTP_SetHTTPRequestUserAgentInfo( HTTPRequestHandle /*HTTPRequestHandle*/ hRequest, string /*const char **/ pchUserAgentInfo );
bool /*bool*/ ISteamHTTP_SetHTTPRequestRequiresVerifiedCertificate( HTTPRequestHandle /*HTTPRequestHandle*/ hRequest, bool /*bool*/ bRequireVerifiedCertificate );
bool /*bool*/ ISteamHTTP_SetHTTPRequestAbsoluteTimeoutMS( HTTPRequestHandle /*HTTPRequestHandle*/ hRequest, uint /*uint32*/ unMilliseconds );
bool /*bool*/ ISteamHTTP_GetHTTPRequestWasTimedOut( HTTPRequestHandle /*HTTPRequestHandle*/ hRequest, out bool /*bool **/ pbWasTimedOut );
ClientUnifiedMessageHandle /*(ClientUnifiedMessageHandle)*/ ISteamUnifiedMessages_SendMethod( string /*const char **/ pchServiceMethod , IntPtr /*const void **/ pRequestBuffer , uint /*uint32*/ unRequestBufferSize , ulong /*uint64*/ unContext );
bool /*bool*/ ISteamUnifiedMessages_GetMethodResponseInfo( ClientUnifiedMessageHandle /*ClientUnifiedMessageHandle*/ hHandle, out uint /*uint32 **/ punResponseSize, out Result /*EResult **/ peResult );
bool /*bool*/ ISteamUnifiedMessages_GetMethodResponseData( ClientUnifiedMessageHandle /*ClientUnifiedMessageHandle*/ hHandle, IntPtr /*void **/ pResponseBuffer , uint /*uint32*/ unResponseBufferSize , bool /*bool*/ bAutoRelease );
bool /*bool*/ ISteamUnifiedMessages_ReleaseMethod( ClientUnifiedMessageHandle /*ClientUnifiedMessageHandle*/ hHandle );
bool /*bool*/ ISteamUnifiedMessages_SendNotification( string /*const char **/ pchServiceNotification , IntPtr /*const void **/ pNotificationBuffer , uint /*uint32*/ unNotificationBufferSize );
bool /*bool*/ ISteamController_Init();
bool /*bool*/ ISteamController_Shutdown();
void /*void*/ ISteamController_RunFrame();
int /*int*/ ISteamController_GetConnectedControllers( IntPtr /*ControllerHandle_t **/ handlesOut );
bool /*bool*/ ISteamController_ShowBindingPanel( ControllerHandle_t /*ControllerHandle_t*/ controllerHandle );
ControllerActionSetHandle_t /*(ControllerActionSetHandle_t)*/ ISteamController_GetActionSetHandle( string /*const char **/ pszActionSetName );
void /*void*/ ISteamController_ActivateActionSet( ControllerHandle_t /*ControllerHandle_t*/ controllerHandle, ControllerActionSetHandle_t /*ControllerActionSetHandle_t*/ actionSetHandle );
ControllerActionSetHandle_t /*(ControllerActionSetHandle_t)*/ ISteamController_GetCurrentActionSet( ControllerHandle_t /*ControllerHandle_t*/ controllerHandle );
ControllerDigitalActionHandle_t /*(ControllerDigitalActionHandle_t)*/ ISteamController_GetDigitalActionHandle( string /*const char **/ pszActionName );
ControllerDigitalActionData_t /*struct ControllerDigitalActionData_t*/ ISteamController_GetDigitalActionData( ControllerHandle_t /*ControllerHandle_t*/ controllerHandle, ControllerDigitalActionHandle_t /*ControllerDigitalActionHandle_t*/ digitalActionHandle );
int /*int*/ ISteamController_GetDigitalActionOrigins( ControllerHandle_t /*ControllerHandle_t*/ controllerHandle, ControllerActionSetHandle_t /*ControllerActionSetHandle_t*/ actionSetHandle, ControllerDigitalActionHandle_t /*ControllerDigitalActionHandle_t*/ digitalActionHandle, out ControllerActionOrigin /*EControllerActionOrigin **/ originsOut );
ControllerAnalogActionHandle_t /*(ControllerAnalogActionHandle_t)*/ ISteamController_GetAnalogActionHandle( string /*const char **/ pszActionName );
ControllerAnalogActionData_t /*struct ControllerAnalogActionData_t*/ ISteamController_GetAnalogActionData( ControllerHandle_t /*ControllerHandle_t*/ controllerHandle, ControllerAnalogActionHandle_t /*ControllerAnalogActionHandle_t*/ analogActionHandle );
int /*int*/ ISteamController_GetAnalogActionOrigins( ControllerHandle_t /*ControllerHandle_t*/ controllerHandle, ControllerActionSetHandle_t /*ControllerActionSetHandle_t*/ actionSetHandle, ControllerAnalogActionHandle_t /*ControllerAnalogActionHandle_t*/ analogActionHandle, out ControllerActionOrigin /*EControllerActionOrigin **/ originsOut );
void /*void*/ ISteamController_StopAnalogActionMomentum( ControllerHandle_t /*ControllerHandle_t*/ controllerHandle, ControllerAnalogActionHandle_t /*ControllerAnalogActionHandle_t*/ eAction );
void /*void*/ ISteamController_TriggerHapticPulse( ControllerHandle_t /*ControllerHandle_t*/ controllerHandle, SteamControllerPad /*ESteamControllerPad*/ eTargetPad , ushort /*unsigned short*/ usDurationMicroSec );
void /*void*/ ISteamController_TriggerRepeatedHapticPulse( ControllerHandle_t /*ControllerHandle_t*/ controllerHandle, SteamControllerPad /*ESteamControllerPad*/ eTargetPad , ushort /*unsigned short*/ usDurationMicroSec , ushort /*unsigned short*/ usOffMicroSec , ushort /*unsigned short*/ unRepeat , uint /*unsigned int*/ nFlags );
UGCQueryHandle_t /*(UGCQueryHandle_t)*/ ISteamUGC_CreateQueryUserUGCRequest( AccountID_t /*AccountID_t*/ unAccountID, UserUGCList /*EUserUGCList*/ eListType , UGCMatchingUGCType /*EUGCMatchingUGCType*/ eMatchingUGCType , UserUGCListSortOrder /*EUserUGCListSortOrder*/ eSortOrder , AppId_t /*AppId_t*/ nCreatorAppID, AppId_t /*AppId_t*/ nConsumerAppID, uint /*uint32*/ unPage );
UGCQueryHandle_t /*(UGCQueryHandle_t)*/ ISteamUGC_CreateQueryAllUGCRequest( UGCQuery /*EUGCQuery*/ eQueryType , UGCMatchingUGCType /*EUGCMatchingUGCType*/ eMatchingeMatchingUGCTypeFileType , AppId_t /*AppId_t*/ nCreatorAppID, AppId_t /*AppId_t*/ nConsumerAppID, uint /*uint32*/ unPage );
UGCQueryHandle_t /*(UGCQueryHandle_t)*/ ISteamUGC_CreateQueryUGCDetailsRequest( IntPtr /*PublishedFileId_t **/ pvecPublishedFileID, uint /*uint32*/ unNumPublishedFileIDs );
SteamAPICall_t /*(SteamAPICall_t)*/ ISteamUGC_SendQueryUGCRequest( UGCQueryHandle_t /*UGCQueryHandle_t*/ handle );
bool /*bool*/ ISteamUGC_GetQueryUGCResult( UGCQueryHandle_t /*UGCQueryHandle_t*/ handle, uint /*uint32*/ index , ref SteamUGCDetails_t /*struct SteamUGCDetails_t **/ pDetails );
bool /*bool*/ ISteamUGC_GetQueryUGCPreviewURL( UGCQueryHandle_t /*UGCQueryHandle_t*/ handle, uint /*uint32*/ index , System.Text.StringBuilder /*char **/ pchURL, uint /*uint32*/ cchURLSize );
bool /*bool*/ ISteamUGC_GetQueryUGCMetadata( UGCQueryHandle_t /*UGCQueryHandle_t*/ handle, uint /*uint32*/ index , System.Text.StringBuilder /*char **/ pchMetadata, uint /*uint32*/ cchMetadatasize );
bool /*bool*/ ISteamUGC_GetQueryUGCChildren( UGCQueryHandle_t /*UGCQueryHandle_t*/ handle, uint /*uint32*/ index , IntPtr /*PublishedFileId_t **/ pvecPublishedFileID, uint /*uint32*/ cMaxEntries );
bool /*bool*/ ISteamUGC_GetQueryUGCStatistic( UGCQueryHandle_t /*UGCQueryHandle_t*/ handle, uint /*uint32*/ index , ItemStatistic /*EItemStatistic*/ eStatType , out uint /*uint32 **/ pStatValue );
uint /*uint32*/ ISteamUGC_GetQueryUGCNumAdditionalPreviews( UGCQueryHandle_t /*UGCQueryHandle_t*/ handle, uint /*uint32*/ index );
bool /*bool*/ ISteamUGC_GetQueryUGCAdditionalPreview( UGCQueryHandle_t /*UGCQueryHandle_t*/ handle, uint /*uint32*/ index , uint /*uint32*/ previewIndex , System.Text.StringBuilder /*char **/ pchURLOrVideoID, uint /*uint32*/ cchURLSize , System.Text.StringBuilder /*char **/ pchOriginalFileName, uint /*uint32*/ cchOriginalFileNameSize , out ItemPreviewType /*EItemPreviewType **/ pPreviewType );
uint /*uint32*/ ISteamUGC_GetQueryUGCNumKeyValueTags( UGCQueryHandle_t /*UGCQueryHandle_t*/ handle, uint /*uint32*/ index );
bool /*bool*/ ISteamUGC_GetQueryUGCKeyValueTag( UGCQueryHandle_t /*UGCQueryHandle_t*/ handle, uint /*uint32*/ index , uint /*uint32*/ keyValueTagIndex , System.Text.StringBuilder /*char **/ pchKey, uint /*uint32*/ cchKeySize , System.Text.StringBuilder /*char **/ pchValue, uint /*uint32*/ cchValueSize );
bool /*bool*/ ISteamUGC_ReleaseQueryUGCRequest( UGCQueryHandle_t /*UGCQueryHandle_t*/ handle );
bool /*bool*/ ISteamUGC_AddRequiredTag( UGCQueryHandle_t /*UGCQueryHandle_t*/ handle, string /*const char **/ pTagName );
bool /*bool*/ ISteamUGC_AddExcludedTag( UGCQueryHandle_t /*UGCQueryHandle_t*/ handle, string /*const char **/ pTagName );
bool /*bool*/ ISteamUGC_SetReturnKeyValueTags( UGCQueryHandle_t /*UGCQueryHandle_t*/ handle, bool /*bool*/ bReturnKeyValueTags );
bool /*bool*/ ISteamUGC_SetReturnLongDescription( UGCQueryHandle_t /*UGCQueryHandle_t*/ handle, bool /*bool*/ bReturnLongDescription );
bool /*bool*/ ISteamUGC_SetReturnMetadata( UGCQueryHandle_t /*UGCQueryHandle_t*/ handle, bool /*bool*/ bReturnMetadata );
bool /*bool*/ ISteamUGC_SetReturnChildren( UGCQueryHandle_t /*UGCQueryHandle_t*/ handle, bool /*bool*/ bReturnChildren );
bool /*bool*/ ISteamUGC_SetReturnAdditionalPreviews( UGCQueryHandle_t /*UGCQueryHandle_t*/ handle, bool /*bool*/ bReturnAdditionalPreviews );
bool /*bool*/ ISteamUGC_SetReturnTotalOnly( UGCQueryHandle_t /*UGCQueryHandle_t*/ handle, bool /*bool*/ bReturnTotalOnly );
bool /*bool*/ ISteamUGC_SetLanguage( UGCQueryHandle_t /*UGCQueryHandle_t*/ handle, string /*const char **/ pchLanguage );
bool /*bool*/ ISteamUGC_SetAllowCachedResponse( UGCQueryHandle_t /*UGCQueryHandle_t*/ handle, uint /*uint32*/ unMaxAgeSeconds );
bool /*bool*/ ISteamUGC_SetCloudFileNameFilter( UGCQueryHandle_t /*UGCQueryHandle_t*/ handle, string /*const char **/ pMatchCloudFileName );
bool /*bool*/ ISteamUGC_SetMatchAnyTag( UGCQueryHandle_t /*UGCQueryHandle_t*/ handle, bool /*bool*/ bMatchAnyTag );
bool /*bool*/ ISteamUGC_SetSearchText( UGCQueryHandle_t /*UGCQueryHandle_t*/ handle, string /*const char **/ pSearchText );
bool /*bool*/ ISteamUGC_SetRankedByTrendDays( UGCQueryHandle_t /*UGCQueryHandle_t*/ handle, uint /*uint32*/ unDays );
bool /*bool*/ ISteamUGC_AddRequiredKeyValueTag( UGCQueryHandle_t /*UGCQueryHandle_t*/ handle, string /*const char **/ pKey , string /*const char **/ pValue );
SteamAPICall_t /*(SteamAPICall_t)*/ ISteamUGC_RequestUGCDetails( PublishedFileId_t /*PublishedFileId_t*/ nPublishedFileID, uint /*uint32*/ unMaxAgeSeconds );
SteamAPICall_t /*(SteamAPICall_t)*/ ISteamUGC_CreateItem( AppId_t /*AppId_t*/ nConsumerAppId, WorkshopFileType /*EWorkshopFileType*/ eFileType );
UGCUpdateHandle_t /*(UGCUpdateHandle_t)*/ ISteamUGC_StartItemUpdate( AppId_t /*AppId_t*/ nConsumerAppId, PublishedFileId_t /*PublishedFileId_t*/ nPublishedFileID );
bool /*bool*/ ISteamUGC_SetItemTitle( UGCUpdateHandle_t /*UGCUpdateHandle_t*/ handle, string /*const char **/ pchTitle );
bool /*bool*/ ISteamUGC_SetItemDescription( UGCUpdateHandle_t /*UGCUpdateHandle_t*/ handle, string /*const char **/ pchDescription );
bool /*bool*/ ISteamUGC_SetItemUpdateLanguage( UGCUpdateHandle_t /*UGCUpdateHandle_t*/ handle, string /*const char **/ pchLanguage );
bool /*bool*/ ISteamUGC_SetItemMetadata( UGCUpdateHandle_t /*UGCUpdateHandle_t*/ handle, string /*const char **/ pchMetaData );
bool /*bool*/ ISteamUGC_SetItemVisibility( UGCUpdateHandle_t /*UGCUpdateHandle_t*/ handle, RemoteStoragePublishedFileVisibility /*ERemoteStoragePublishedFileVisibility*/ eVisibility );
bool /*bool*/ ISteamUGC_SetItemTags( UGCUpdateHandle_t /*UGCUpdateHandle_t*/ updateHandle, IntPtr /*const struct SteamParamStringArray_t **/ pTags );
bool /*bool*/ ISteamUGC_SetItemContent( UGCUpdateHandle_t /*UGCUpdateHandle_t*/ handle, string /*const char **/ pszContentFolder );
bool /*bool*/ ISteamUGC_SetItemPreview( UGCUpdateHandle_t /*UGCUpdateHandle_t*/ handle, string /*const char **/ pszPreviewFile );
bool /*bool*/ ISteamUGC_RemoveItemKeyValueTags( UGCUpdateHandle_t /*UGCUpdateHandle_t*/ handle, string /*const char **/ pchKey );
bool /*bool*/ ISteamUGC_AddItemKeyValueTag( UGCUpdateHandle_t /*UGCUpdateHandle_t*/ handle, string /*const char **/ pchKey , string /*const char **/ pchValue );
bool /*bool*/ ISteamUGC_AddItemPreviewFile( UGCUpdateHandle_t /*UGCUpdateHandle_t*/ handle, string /*const char **/ pszPreviewFile , ItemPreviewType /*EItemPreviewType*/ type );
bool /*bool*/ ISteamUGC_AddItemPreviewVideo( UGCUpdateHandle_t /*UGCUpdateHandle_t*/ handle, string /*const char **/ pszVideoID );
bool /*bool*/ ISteamUGC_UpdateItemPreviewFile( UGCUpdateHandle_t /*UGCUpdateHandle_t*/ handle, uint /*uint32*/ index , string /*const char **/ pszPreviewFile );
bool /*bool*/ ISteamUGC_UpdateItemPreviewVideo( UGCUpdateHandle_t /*UGCUpdateHandle_t*/ handle, uint /*uint32*/ index , string /*const char **/ pszVideoID );
bool /*bool*/ ISteamUGC_RemoveItemPreview( UGCUpdateHandle_t /*UGCUpdateHandle_t*/ handle, uint /*uint32*/ index );
SteamAPICall_t /*(SteamAPICall_t)*/ ISteamUGC_SubmitItemUpdate( UGCUpdateHandle_t /*UGCUpdateHandle_t*/ handle, string /*const char **/ pchChangeNote );
ItemUpdateStatus /*EItemUpdateStatus*/ ISteamUGC_GetItemUpdateProgress( UGCUpdateHandle_t /*UGCUpdateHandle_t*/ handle, out ulong /*uint64 **/ punBytesProcessed, out ulong /*uint64 **/ punBytesTotal );
SteamAPICall_t /*(SteamAPICall_t)*/ ISteamUGC_SetUserItemVote( PublishedFileId_t /*PublishedFileId_t*/ nPublishedFileID, bool /*bool*/ bVoteUp );
SteamAPICall_t /*(SteamAPICall_t)*/ ISteamUGC_GetUserItemVote( PublishedFileId_t /*PublishedFileId_t*/ nPublishedFileID );
SteamAPICall_t /*(SteamAPICall_t)*/ ISteamUGC_AddItemToFavorites( AppId_t /*AppId_t*/ nAppId, PublishedFileId_t /*PublishedFileId_t*/ nPublishedFileID );
SteamAPICall_t /*(SteamAPICall_t)*/ ISteamUGC_RemoveItemFromFavorites( AppId_t /*AppId_t*/ nAppId, PublishedFileId_t /*PublishedFileId_t*/ nPublishedFileID );
SteamAPICall_t /*(SteamAPICall_t)*/ ISteamUGC_SubscribeItem( PublishedFileId_t /*PublishedFileId_t*/ nPublishedFileID );
SteamAPICall_t /*(SteamAPICall_t)*/ ISteamUGC_UnsubscribeItem( PublishedFileId_t /*PublishedFileId_t*/ nPublishedFileID );
uint /*uint32*/ ISteamUGC_GetNumSubscribedItems();
uint /*uint32*/ ISteamUGC_GetSubscribedItems( IntPtr /*PublishedFileId_t **/ pvecPublishedFileID, uint /*uint32*/ cMaxEntries );
uint /*uint32*/ ISteamUGC_GetItemState( PublishedFileId_t /*PublishedFileId_t*/ nPublishedFileID );
bool /*bool*/ ISteamUGC_GetItemInstallInfo( PublishedFileId_t /*PublishedFileId_t*/ nPublishedFileID, out ulong /*uint64 **/ punSizeOnDisk, System.Text.StringBuilder /*char **/ pchFolder, uint /*uint32*/ cchFolderSize , out uint /*uint32 **/ punTimeStamp );
bool /*bool*/ ISteamUGC_GetItemDownloadInfo( PublishedFileId_t /*PublishedFileId_t*/ nPublishedFileID, out ulong /*uint64 **/ punBytesDownloaded, out ulong /*uint64 **/ punBytesTotal );
bool /*bool*/ ISteamUGC_DownloadItem( PublishedFileId_t /*PublishedFileId_t*/ nPublishedFileID, bool /*bool*/ bHighPriority );
bool /*bool*/ ISteamUGC_BInitWorkshopForGameServer( DepotId_t /*DepotId_t*/ unWorkshopDepotID, string /*const char **/ pszFolder );
void /*void*/ ISteamUGC_SuspendDownloads( bool /*bool*/ bSuspend );
uint /*uint32*/ ISteamAppList_GetNumInstalledApps();
uint /*uint32*/ ISteamAppList_GetInstalledApps( IntPtr /*AppId_t **/ pvecAppID, uint /*uint32*/ unMaxAppIDs );
int /*int*/ ISteamAppList_GetAppName( AppId_t /*AppId_t*/ nAppID, System.Text.StringBuilder /*char **/ pchName, int /*int*/ cchNameMax );
int /*int*/ ISteamAppList_GetAppInstallDir( AppId_t /*AppId_t*/ nAppID, System.Text.StringBuilder /*char **/ pchDirectory, int /*int*/ cchNameMax );
int /*int*/ ISteamAppList_GetAppBuildId( AppId_t /*AppId_t*/ nAppID );
void /*void*/ ISteamHTMLSurface_DestructISteamHTMLSurface();
bool /*bool*/ ISteamHTMLSurface_Init();
bool /*bool*/ ISteamHTMLSurface_Shutdown();
SteamAPICall_t /*(SteamAPICall_t)*/ ISteamHTMLSurface_CreateBrowser( string /*const char **/ pchUserAgent , string /*const char **/ pchUserCSS );
void /*void*/ ISteamHTMLSurface_RemoveBrowser( HHTMLBrowser /*HHTMLBrowser*/ unBrowserHandle );
void /*void*/ ISteamHTMLSurface_LoadURL( HHTMLBrowser /*HHTMLBrowser*/ unBrowserHandle, string /*const char **/ pchURL , string /*const char **/ pchPostData );
void /*void*/ ISteamHTMLSurface_SetSize( HHTMLBrowser /*HHTMLBrowser*/ unBrowserHandle, uint /*uint32*/ unWidth , uint /*uint32*/ unHeight );
void /*void*/ ISteamHTMLSurface_StopLoad( HHTMLBrowser /*HHTMLBrowser*/ unBrowserHandle );
void /*void*/ ISteamHTMLSurface_Reload( HHTMLBrowser /*HHTMLBrowser*/ unBrowserHandle );
void /*void*/ ISteamHTMLSurface_GoBack( HHTMLBrowser /*HHTMLBrowser*/ unBrowserHandle );
void /*void*/ ISteamHTMLSurface_GoForward( HHTMLBrowser /*HHTMLBrowser*/ unBrowserHandle );
void /*void*/ ISteamHTMLSurface_AddHeader( HHTMLBrowser /*HHTMLBrowser*/ unBrowserHandle, string /*const char **/ pchKey , string /*const char **/ pchValue );
void /*void*/ ISteamHTMLSurface_ExecuteJavascript( HHTMLBrowser /*HHTMLBrowser*/ unBrowserHandle, string /*const char **/ pchScript );
void /*void*/ ISteamHTMLSurface_MouseUp( HHTMLBrowser /*HHTMLBrowser*/ unBrowserHandle, HTMLMouseButton /*ISteamHTMLSurface::EHTMLMouseButton*/ eMouseButton );
void /*void*/ ISteamHTMLSurface_MouseDown( HHTMLBrowser /*HHTMLBrowser*/ unBrowserHandle, HTMLMouseButton /*ISteamHTMLSurface::EHTMLMouseButton*/ eMouseButton );
void /*void*/ ISteamHTMLSurface_MouseDoubleClick( HHTMLBrowser /*HHTMLBrowser*/ unBrowserHandle, HTMLMouseButton /*ISteamHTMLSurface::EHTMLMouseButton*/ eMouseButton );
void /*void*/ ISteamHTMLSurface_MouseMove( HHTMLBrowser /*HHTMLBrowser*/ unBrowserHandle, int /*int*/ x , int /*int*/ y );
void /*void*/ ISteamHTMLSurface_MouseWheel( HHTMLBrowser /*HHTMLBrowser*/ unBrowserHandle, int /*int32*/ nDelta );
void /*void*/ ISteamHTMLSurface_KeyDown( HHTMLBrowser /*HHTMLBrowser*/ unBrowserHandle, uint /*uint32*/ nNativeKeyCode , HTMLKeyModifiers /*ISteamHTMLSurface::EHTMLKeyModifiers*/ eHTMLKeyModifiers );
void /*void*/ ISteamHTMLSurface_KeyUp( HHTMLBrowser /*HHTMLBrowser*/ unBrowserHandle, uint /*uint32*/ nNativeKeyCode , HTMLKeyModifiers /*ISteamHTMLSurface::EHTMLKeyModifiers*/ eHTMLKeyModifiers );
void /*void*/ ISteamHTMLSurface_KeyChar( HHTMLBrowser /*HHTMLBrowser*/ unBrowserHandle, uint /*uint32*/ cUnicodeChar , HTMLKeyModifiers /*ISteamHTMLSurface::EHTMLKeyModifiers*/ eHTMLKeyModifiers );
void /*void*/ ISteamHTMLSurface_SetHorizontalScroll( HHTMLBrowser /*HHTMLBrowser*/ unBrowserHandle, uint /*uint32*/ nAbsolutePixelScroll );
void /*void*/ ISteamHTMLSurface_SetVerticalScroll( HHTMLBrowser /*HHTMLBrowser*/ unBrowserHandle, uint /*uint32*/ nAbsolutePixelScroll );
void /*void*/ ISteamHTMLSurface_SetKeyFocus( HHTMLBrowser /*HHTMLBrowser*/ unBrowserHandle, bool /*bool*/ bHasKeyFocus );
void /*void*/ ISteamHTMLSurface_ViewSource( HHTMLBrowser /*HHTMLBrowser*/ unBrowserHandle );
void /*void*/ ISteamHTMLSurface_CopyToClipboard( HHTMLBrowser /*HHTMLBrowser*/ unBrowserHandle );
void /*void*/ ISteamHTMLSurface_PasteFromClipboard( HHTMLBrowser /*HHTMLBrowser*/ unBrowserHandle );
void /*void*/ ISteamHTMLSurface_Find( HHTMLBrowser /*HHTMLBrowser*/ unBrowserHandle, string /*const char **/ pchSearchStr , bool /*bool*/ bCurrentlyInFind , bool /*bool*/ bReverse );
void /*void*/ ISteamHTMLSurface_StopFind( HHTMLBrowser /*HHTMLBrowser*/ unBrowserHandle );
void /*void*/ ISteamHTMLSurface_GetLinkAtPosition( HHTMLBrowser /*HHTMLBrowser*/ unBrowserHandle, int /*int*/ x , int /*int*/ y );
void /*void*/ ISteamHTMLSurface_SetCookie( string /*const char **/ pchHostname , string /*const char **/ pchKey , string /*const char **/ pchValue , string /*const char **/ pchPath , RTime32 /*RTime32*/ nExpires, bool /*bool*/ bSecure , bool /*bool*/ bHTTPOnly );
void /*void*/ ISteamHTMLSurface_SetPageScaleFactor( HHTMLBrowser /*HHTMLBrowser*/ unBrowserHandle, float /*float*/ flZoom , int /*int*/ nPointX , int /*int*/ nPointY );
void /*void*/ ISteamHTMLSurface_SetBackgroundMode( HHTMLBrowser /*HHTMLBrowser*/ unBrowserHandle, bool /*bool*/ bBackgroundMode );
void /*void*/ ISteamHTMLSurface_AllowStartRequest( HHTMLBrowser /*HHTMLBrowser*/ unBrowserHandle, bool /*bool*/ bAllowed );
void /*void*/ ISteamHTMLSurface_JSDialogResponse( HHTMLBrowser /*HHTMLBrowser*/ unBrowserHandle, bool /*bool*/ bResult );
Result /*EResult*/ ISteamInventory_GetResultStatus( SteamInventoryResult_t /*SteamInventoryResult_t*/ resultHandle );
bool /*bool*/ ISteamInventory_GetResultItems( SteamInventoryResult_t /*SteamInventoryResult_t*/ resultHandle, IntPtr /*struct SteamItemDetails_t **/ pOutItemsArray, out uint /*uint32 **/ punOutItemsArraySize );
uint /*uint32*/ ISteamInventory_GetResultTimestamp( SteamInventoryResult_t /*SteamInventoryResult_t*/ resultHandle );
bool /*bool*/ ISteamInventory_CheckResultSteamID( SteamInventoryResult_t /*SteamInventoryResult_t*/ resultHandle, CSteamID /*class CSteamID*/ steamIDExpected );
void /*void*/ ISteamInventory_DestroyResult( SteamInventoryResult_t /*SteamInventoryResult_t*/ resultHandle );
bool /*bool*/ ISteamInventory_GetAllItems( ref SteamInventoryResult_t /*SteamInventoryResult_t **/ pResultHandle );
bool /*bool*/ ISteamInventory_GetItemsByID( ref SteamInventoryResult_t /*SteamInventoryResult_t **/ pResultHandle, IntPtr /*const SteamItemInstanceID_t **/ pInstanceIDs, uint /*uint32*/ unCountInstanceIDs );
bool /*bool*/ ISteamInventory_SerializeResult( SteamInventoryResult_t /*SteamInventoryResult_t*/ resultHandle, IntPtr /*void **/ pOutBuffer , out uint /*uint32 **/ punOutBufferSize );
bool /*bool*/ ISteamInventory_DeserializeResult( ref SteamInventoryResult_t /*SteamInventoryResult_t **/ pOutResultHandle, IntPtr /*const void **/ pBuffer , uint /*uint32*/ unBufferSize , bool /*bool*/ bRESERVED_MUST_BE_FALSE );
bool /*bool*/ ISteamInventory_GenerateItems( ref SteamInventoryResult_t /*SteamInventoryResult_t **/ pResultHandle, IntPtr /*const SteamItemDef_t **/ pArrayItemDefs, out uint /*const uint32 **/ punArrayQuantity, uint /*uint32*/ unArrayLength );
bool /*bool*/ ISteamInventory_GrantPromoItems( ref SteamInventoryResult_t /*SteamInventoryResult_t **/ pResultHandle );
bool /*bool*/ ISteamInventory_AddPromoItem( ref SteamInventoryResult_t /*SteamInventoryResult_t **/ pResultHandle, SteamItemDef_t /*SteamItemDef_t*/ itemDef );
bool /*bool*/ ISteamInventory_AddPromoItems( ref SteamInventoryResult_t /*SteamInventoryResult_t **/ pResultHandle, IntPtr /*const SteamItemDef_t **/ pArrayItemDefs, uint /*uint32*/ unArrayLength );
bool /*bool*/ ISteamInventory_ConsumeItem( ref SteamInventoryResult_t /*SteamInventoryResult_t **/ pResultHandle, SteamItemInstanceID_t /*SteamItemInstanceID_t*/ itemConsume, uint /*uint32*/ unQuantity );
bool /*bool*/ ISteamInventory_ExchangeItems( ref SteamInventoryResult_t /*SteamInventoryResult_t **/ pResultHandle, ref SteamItemDef_t /*const SteamItemDef_t **/ pArrayGenerate, out uint /*const uint32 **/ punArrayGenerateQuantity, uint /*uint32*/ unArrayGenerateLength , IntPtr /*const SteamItemInstanceID_t **/ pArrayDestroy, IntPtr /*const uint32 **/ punArrayDestroyQuantity, uint /*uint32*/ unArrayDestroyLength );
bool /*bool*/ ISteamInventory_TransferItemQuantity( ref SteamInventoryResult_t /*SteamInventoryResult_t **/ pResultHandle, SteamItemInstanceID_t /*SteamItemInstanceID_t*/ itemIdSource, uint /*uint32*/ unQuantity , SteamItemInstanceID_t /*SteamItemInstanceID_t*/ itemIdDest );
void /*void*/ ISteamInventory_SendItemDropHeartbeat();
bool /*bool*/ ISteamInventory_TriggerItemDrop( ref SteamInventoryResult_t /*SteamInventoryResult_t **/ pResultHandle, SteamItemDef_t /*SteamItemDef_t*/ dropListDefinition );
bool /*bool*/ ISteamInventory_TradeItems( ref SteamInventoryResult_t /*SteamInventoryResult_t **/ pResultHandle, CSteamID /*class CSteamID*/ steamIDTradePartner, ref SteamItemInstanceID_t /*const SteamItemInstanceID_t **/ pArrayGive, out uint /*const uint32 **/ pArrayGiveQuantity, uint /*uint32*/ nArrayGiveLength , ref SteamItemInstanceID_t /*const SteamItemInstanceID_t **/ pArrayGet, out uint /*const uint32 **/ pArrayGetQuantity, uint /*uint32*/ nArrayGetLength );
bool /*bool*/ ISteamInventory_LoadItemDefinitions();
bool /*bool*/ ISteamInventory_GetItemDefinitionIDs( IntPtr /*SteamItemDef_t **/ pItemDefIDs, out uint /*uint32 **/ punItemDefIDsArraySize );
bool /*bool*/ ISteamInventory_GetItemDefinitionProperty( SteamItemDef_t /*SteamItemDef_t*/ iDefinition, string /*const char **/ pchPropertyName , System.Text.StringBuilder /*char **/ pchValueBuffer, out uint /*uint32 **/ punValueBufferSize );
void /*void*/ ISteamVideo_GetVideoURL( AppId_t /*AppId_t*/ unVideoAppID );
bool /*bool*/ ISteamVideo_IsBroadcasting( IntPtr /*int **/ pnNumViewers );
bool /*bool*/ ISteamGameServer_InitGameServer( uint /*uint32*/ unIP , ushort /*uint16*/ usGamePort , ushort /*uint16*/ usQueryPort , uint /*uint32*/ unFlags , AppId_t /*AppId_t*/ nGameAppId, string /*const char **/ pchVersionString );
void /*void*/ ISteamGameServer_SetProduct( string /*const char **/ pszProduct );
void /*void*/ ISteamGameServer_SetGameDescription( string /*const char **/ pszGameDescription );
void /*void*/ ISteamGameServer_SetModDir( string /*const char **/ pszModDir );
void /*void*/ ISteamGameServer_SetDedicatedServer( bool /*bool*/ bDedicated );
void /*void*/ ISteamGameServer_LogOn( string /*const char **/ pszToken );
void /*void*/ ISteamGameServer_LogOnAnonymous();
void /*void*/ ISteamGameServer_LogOff();
bool /*bool*/ ISteamGameServer_BLoggedOn();
bool /*bool*/ ISteamGameServer_BSecure();
CSteamID /*(class CSteamID)*/ ISteamGameServer_GetSteamID();
bool /*bool*/ ISteamGameServer_WasRestartRequested();
void /*void*/ ISteamGameServer_SetMaxPlayerCount( int /*int*/ cPlayersMax );
void /*void*/ ISteamGameServer_SetBotPlayerCount( int /*int*/ cBotplayers );
void /*void*/ ISteamGameServer_SetServerName( string /*const char **/ pszServerName );
void /*void*/ ISteamGameServer_SetMapName( string /*const char **/ pszMapName );
void /*void*/ ISteamGameServer_SetPasswordProtected( bool /*bool*/ bPasswordProtected );
void /*void*/ ISteamGameServer_SetSpectatorPort( ushort /*uint16*/ unSpectatorPort );
void /*void*/ ISteamGameServer_SetSpectatorServerName( string /*const char **/ pszSpectatorServerName );
void /*void*/ ISteamGameServer_ClearAllKeyValues();
void /*void*/ ISteamGameServer_SetKeyValue( string /*const char **/ pKey , string /*const char **/ pValue );
void /*void*/ ISteamGameServer_SetGameTags( string /*const char **/ pchGameTags );
void /*void*/ ISteamGameServer_SetGameData( string /*const char **/ pchGameData );
void /*void*/ ISteamGameServer_SetRegion( string /*const char **/ pszRegion );
bool /*bool*/ ISteamGameServer_SendUserConnectAndAuthenticate( uint /*uint32*/ unIPClient , IntPtr /*const void **/ pvAuthBlob , uint /*uint32*/ cubAuthBlobSize , out CSteamID /*class CSteamID **/ pSteamIDUser );
CSteamID /*(class CSteamID)*/ ISteamGameServer_CreateUnauthenticatedUserConnection();
void /*void*/ ISteamGameServer_SendUserDisconnect( CSteamID /*class CSteamID*/ steamIDUser );
bool /*bool*/ ISteamGameServer_BUpdateUserData( CSteamID /*class CSteamID*/ steamIDUser, string /*const char **/ pchPlayerName , uint /*uint32*/ uScore );
HAuthTicket /*(HAuthTicket)*/ ISteamGameServer_GetAuthSessionTicket( IntPtr /*void **/ pTicket , int /*int*/ cbMaxTicket , out uint /*uint32 **/ pcbTicket );
BeginAuthSessionResult /*EBeginAuthSessionResult*/ ISteamGameServer_BeginAuthSession( IntPtr /*const void **/ pAuthTicket , int /*int*/ cbAuthTicket , CSteamID /*class CSteamID*/ steamID );
void /*void*/ ISteamGameServer_EndAuthSession( CSteamID /*class CSteamID*/ steamID );
void /*void*/ ISteamGameServer_CancelAuthTicket( HAuthTicket /*HAuthTicket*/ hAuthTicket );
UserHasLicenseForAppResult /*EUserHasLicenseForAppResult*/ ISteamGameServer_UserHasLicenseForApp( CSteamID /*class CSteamID*/ steamID, AppId_t /*AppId_t*/ appID );
bool /*bool*/ ISteamGameServer_RequestUserGroupStatus( CSteamID /*class CSteamID*/ steamIDUser, CSteamID /*class CSteamID*/ steamIDGroup );
void /*void*/ ISteamGameServer_GetGameplayStats();
SteamAPICall_t /*(SteamAPICall_t)*/ ISteamGameServer_GetServerReputation();
uint /*uint32*/ ISteamGameServer_GetPublicIP();
bool /*bool*/ ISteamGameServer_HandleIncomingPacket( IntPtr /*const void **/ pData , int /*int*/ cbData , uint /*uint32*/ srcIP , ushort /*uint16*/ srcPort );
int /*int*/ ISteamGameServer_GetNextOutgoingPacket( IntPtr /*void **/ pOut , int /*int*/ cbMaxOut , out uint /*uint32 **/ pNetAdr, out ushort /*uint16 **/ pPort );
void /*void*/ ISteamGameServer_EnableHeartbeats( bool /*bool*/ bActive );
void /*void*/ ISteamGameServer_SetHeartbeatInterval( int /*int*/ iHeartbeatInterval );
void /*void*/ ISteamGameServer_ForceHeartbeat();
SteamAPICall_t /*(SteamAPICall_t)*/ ISteamGameServer_AssociateWithClan( CSteamID /*class CSteamID*/ steamIDClan );
SteamAPICall_t /*(SteamAPICall_t)*/ ISteamGameServer_ComputeNewPlayerCompatibility( CSteamID /*class CSteamID*/ steamIDNewPlayer );
SteamAPICall_t /*(SteamAPICall_t)*/ ISteamGameServerStats_RequestUserStats( CSteamID /*class CSteamID*/ steamIDUser );
bool /*bool*/ ISteamGameServerStats_GetUserStat( CSteamID /*class CSteamID*/ steamIDUser, string /*const char **/ pchName , out int /*int32 **/ pData );
bool /*bool*/ ISteamGameServerStats_GetUserStat0( CSteamID /*class CSteamID*/ steamIDUser, string /*const char **/ pchName , out float /*float **/ pData );
bool /*bool*/ ISteamGameServerStats_GetUserAchievement( CSteamID /*class CSteamID*/ steamIDUser, string /*const char **/ pchName , out bool /*bool **/ pbAchieved );
bool /*bool*/ ISteamGameServerStats_SetUserStat( CSteamID /*class CSteamID*/ steamIDUser, string /*const char **/ pchName , int /*int32*/ nData );
bool /*bool*/ ISteamGameServerStats_SetUserStat0( CSteamID /*class CSteamID*/ steamIDUser, string /*const char **/ pchName , float /*float*/ fData );
bool /*bool*/ ISteamGameServerStats_UpdateUserAvgRateStat( CSteamID /*class CSteamID*/ steamIDUser, string /*const char **/ pchName , float /*float*/ flCountThisSession , double /*double*/ dSessionLength );
bool /*bool*/ ISteamGameServerStats_SetUserAchievement( CSteamID /*class CSteamID*/ steamIDUser, string /*const char **/ pchName );
bool /*bool*/ ISteamGameServerStats_ClearUserAchievement( CSteamID /*class CSteamID*/ steamIDUser, string /*const char **/ pchName );
SteamAPICall_t /*(SteamAPICall_t)*/ ISteamGameServerStats_StoreUserStats( CSteamID /*class CSteamID*/ steamIDUser );
void /*void*/ SteamApi_SteamAPI_Init();
void /*void*/ SteamApi_SteamAPI_RunCallbacks();
void /*void*/ SteamApi_SteamGameServer_RunCallbacks();
void /*void*/ SteamApi_SteamAPI_RegisterCallback( IntPtr /*void **/ pCallback , int /*int*/ callback );
void /*void*/ SteamApi_SteamAPI_UnregisterCallback( IntPtr /*void **/ pCallback );
bool /*bool*/ SteamApi_SteamInternal_GameServer_Init( uint /*uint32*/ unIP , ushort /*uint16*/ usPort , ushort /*uint16*/ usGamePort , ushort /*uint16*/ usQueryPort , int /*int*/ eServerMode , string /*const char **/ pchVersionString );
void /*void*/ SteamApi_SteamAPI_Shutdown();
HSteamUser /*(HSteamUser)*/ SteamApi_SteamAPI_GetHSteamUser();
HSteamPipe /*(HSteamPipe)*/ SteamApi_SteamAPI_GetHSteamPipe();
HSteamUser /*(HSteamUser)*/ SteamApi_SteamGameServer_GetHSteamUser();
HSteamPipe /*(HSteamPipe)*/ SteamApi_SteamGameServer_GetHSteamPipe();
IntPtr /*void **/ SteamApi_SteamInternal_CreateInterface( string /*const char **/ version );
}
}
}

View File

@ -1,752 +0,0 @@
using System;
using System.Runtime.InteropServices;
namespace SteamNative
{
internal static partial class Platform
{
public static class Linux
{
public static unsafe class ISteamClient
{
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamClient_CreateSteamPipe" )] internal static extern int /*HSteamPipe*/ CreateSteamPipe( IntPtr ISteamClient );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamClient_BReleaseSteamPipe" )] internal static extern bool /*bool*/ BReleaseSteamPipe( IntPtr ISteamClient, HSteamPipe /*HSteamPipe*/ hSteamPipe );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamClient_ConnectToGlobalUser" )] internal static extern int /*HSteamUser*/ ConnectToGlobalUser( IntPtr ISteamClient, HSteamPipe /*HSteamPipe*/ hSteamPipe );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamClient_CreateLocalUser" )] internal static extern int /*HSteamUser*/ CreateLocalUser( IntPtr ISteamClient, out HSteamPipe /*HSteamPipe **/ phSteamPipe, AccountType /*EAccountType*/ eAccountType );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamClient_ReleaseUser" )] internal static extern void /*void*/ ReleaseUser( IntPtr ISteamClient, HSteamPipe /*HSteamPipe*/ hSteamPipe, HSteamUser /*HSteamUser*/ hUser );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamClient_GetISteamUser" )] internal static extern IntPtr /*class ISteamUser **/ GetISteamUser( IntPtr ISteamClient, HSteamUser /*HSteamUser*/ hSteamUser, HSteamPipe /*HSteamPipe*/ hSteamPipe, string /*const char **/ pchVersion );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamClient_GetISteamGameServer" )] internal static extern IntPtr /*class ISteamGameServer **/ GetISteamGameServer( IntPtr ISteamClient, HSteamUser /*HSteamUser*/ hSteamUser, HSteamPipe /*HSteamPipe*/ hSteamPipe, string /*const char **/ pchVersion );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamClient_SetLocalIPBinding" )] internal static extern void /*void*/ SetLocalIPBinding( IntPtr ISteamClient, uint /*uint32*/ unIP , ushort /*uint16*/ usPort );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamClient_GetISteamFriends" )] internal static extern IntPtr /*class ISteamFriends **/ GetISteamFriends( IntPtr ISteamClient, HSteamUser /*HSteamUser*/ hSteamUser, HSteamPipe /*HSteamPipe*/ hSteamPipe, string /*const char **/ pchVersion );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamClient_GetISteamUtils" )] internal static extern IntPtr /*class ISteamUtils **/ GetISteamUtils( IntPtr ISteamClient, HSteamPipe /*HSteamPipe*/ hSteamPipe, string /*const char **/ pchVersion );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamClient_GetISteamMatchmaking" )] internal static extern IntPtr /*class ISteamMatchmaking **/ GetISteamMatchmaking( IntPtr ISteamClient, HSteamUser /*HSteamUser*/ hSteamUser, HSteamPipe /*HSteamPipe*/ hSteamPipe, string /*const char **/ pchVersion );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamClient_GetISteamMatchmakingServers" )] internal static extern IntPtr /*class ISteamMatchmakingServers **/ GetISteamMatchmakingServers( IntPtr ISteamClient, HSteamUser /*HSteamUser*/ hSteamUser, HSteamPipe /*HSteamPipe*/ hSteamPipe, string /*const char **/ pchVersion );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamClient_GetISteamGenericInterface" )] internal static extern IntPtr /*void **/ GetISteamGenericInterface( IntPtr ISteamClient, HSteamUser /*HSteamUser*/ hSteamUser, HSteamPipe /*HSteamPipe*/ hSteamPipe, string /*const char **/ pchVersion );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamClient_GetISteamUserStats" )] internal static extern IntPtr /*class ISteamUserStats **/ GetISteamUserStats( IntPtr ISteamClient, HSteamUser /*HSteamUser*/ hSteamUser, HSteamPipe /*HSteamPipe*/ hSteamPipe, string /*const char **/ pchVersion );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamClient_GetISteamGameServerStats" )] internal static extern IntPtr /*class ISteamGameServerStats **/ GetISteamGameServerStats( IntPtr ISteamClient, HSteamUser /*HSteamUser*/ hSteamuser, HSteamPipe /*HSteamPipe*/ hSteamPipe, string /*const char **/ pchVersion );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamClient_GetISteamApps" )] internal static extern IntPtr /*class ISteamApps **/ GetISteamApps( IntPtr ISteamClient, HSteamUser /*HSteamUser*/ hSteamUser, HSteamPipe /*HSteamPipe*/ hSteamPipe, string /*const char **/ pchVersion );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamClient_GetISteamNetworking" )] internal static extern IntPtr /*class ISteamNetworking **/ GetISteamNetworking( IntPtr ISteamClient, HSteamUser /*HSteamUser*/ hSteamUser, HSteamPipe /*HSteamPipe*/ hSteamPipe, string /*const char **/ pchVersion );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamClient_GetISteamRemoteStorage" )] internal static extern IntPtr /*class ISteamRemoteStorage **/ GetISteamRemoteStorage( IntPtr ISteamClient, HSteamUser /*HSteamUser*/ hSteamuser, HSteamPipe /*HSteamPipe*/ hSteamPipe, string /*const char **/ pchVersion );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamClient_GetISteamScreenshots" )] internal static extern IntPtr /*class ISteamScreenshots **/ GetISteamScreenshots( IntPtr ISteamClient, HSteamUser /*HSteamUser*/ hSteamuser, HSteamPipe /*HSteamPipe*/ hSteamPipe, string /*const char **/ pchVersion );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamClient_GetIPCCallCount" )] internal static extern uint /*uint32*/ GetIPCCallCount( IntPtr ISteamClient );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamClient_SetWarningMessageHook" )] internal static extern void /*void*/ SetWarningMessageHook( IntPtr ISteamClient, IntPtr /*SteamAPIWarningMessageHook_t*/ pFunction );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamClient_BShutdownIfAllPipesClosed" )] internal static extern bool /*bool*/ BShutdownIfAllPipesClosed( IntPtr ISteamClient );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamClient_GetISteamHTTP" )] internal static extern IntPtr /*class ISteamHTTP **/ GetISteamHTTP( IntPtr ISteamClient, HSteamUser /*HSteamUser*/ hSteamuser, HSteamPipe /*HSteamPipe*/ hSteamPipe, string /*const char **/ pchVersion );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamClient_GetISteamUnifiedMessages" )] internal static extern IntPtr /*class ISteamUnifiedMessages **/ GetISteamUnifiedMessages( IntPtr ISteamClient, HSteamUser /*HSteamUser*/ hSteamuser, HSteamPipe /*HSteamPipe*/ hSteamPipe, string /*const char **/ pchVersion );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamClient_GetISteamController" )] internal static extern IntPtr /*class ISteamController **/ GetISteamController( IntPtr ISteamClient, HSteamUser /*HSteamUser*/ hSteamUser, HSteamPipe /*HSteamPipe*/ hSteamPipe, string /*const char **/ pchVersion );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamClient_GetISteamUGC" )] internal static extern IntPtr /*class ISteamUGC **/ GetISteamUGC( IntPtr ISteamClient, HSteamUser /*HSteamUser*/ hSteamUser, HSteamPipe /*HSteamPipe*/ hSteamPipe, string /*const char **/ pchVersion );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamClient_GetISteamAppList" )] internal static extern IntPtr /*class ISteamAppList **/ GetISteamAppList( IntPtr ISteamClient, HSteamUser /*HSteamUser*/ hSteamUser, HSteamPipe /*HSteamPipe*/ hSteamPipe, string /*const char **/ pchVersion );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamClient_GetISteamMusic" )] internal static extern IntPtr /*class ISteamMusic **/ GetISteamMusic( IntPtr ISteamClient, HSteamUser /*HSteamUser*/ hSteamuser, HSteamPipe /*HSteamPipe*/ hSteamPipe, string /*const char **/ pchVersion );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamClient_GetISteamMusicRemote" )] internal static extern IntPtr /*class ISteamMusicRemote **/ GetISteamMusicRemote( IntPtr ISteamClient, HSteamUser /*HSteamUser*/ hSteamuser, HSteamPipe /*HSteamPipe*/ hSteamPipe, string /*const char **/ pchVersion );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamClient_GetISteamHTMLSurface" )] internal static extern IntPtr /*class ISteamHTMLSurface **/ GetISteamHTMLSurface( IntPtr ISteamClient, HSteamUser /*HSteamUser*/ hSteamuser, HSteamPipe /*HSteamPipe*/ hSteamPipe, string /*const char **/ pchVersion );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamClient_GetISteamInventory" )] internal static extern IntPtr /*class ISteamInventory **/ GetISteamInventory( IntPtr ISteamClient, HSteamUser /*HSteamUser*/ hSteamuser, HSteamPipe /*HSteamPipe*/ hSteamPipe, string /*const char **/ pchVersion );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamClient_GetISteamVideo" )] internal static extern IntPtr /*class ISteamVideo **/ GetISteamVideo( IntPtr ISteamClient, HSteamUser /*HSteamUser*/ hSteamuser, HSteamPipe /*HSteamPipe*/ hSteamPipe, string /*const char **/ pchVersion );
}
public static unsafe class ISteamUser
{
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUser_GetHSteamUser" )] internal static extern int /*HSteamUser*/ GetHSteamUser( IntPtr ISteamUser );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUser_BLoggedOn" )] internal static extern bool /*bool*/ BLoggedOn( IntPtr ISteamUser );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUser_GetSteamID" )] internal static extern ulong /*class CSteamID*/ GetSteamID( IntPtr ISteamUser );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUser_InitiateGameConnection" )] internal static extern int /*int*/ InitiateGameConnection( IntPtr ISteamUser, IntPtr /*void **/ pAuthBlob , int /*int*/ cbMaxAuthBlob , CSteamID /*class CSteamID*/ steamIDGameServer, uint /*uint32*/ unIPServer , ushort /*uint16*/ usPortServer , bool /*bool*/ bSecure );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUser_TerminateGameConnection" )] internal static extern void /*void*/ TerminateGameConnection( IntPtr ISteamUser, uint /*uint32*/ unIPServer , ushort /*uint16*/ usPortServer );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUser_TrackAppUsageEvent" )] internal static extern void /*void*/ TrackAppUsageEvent( IntPtr ISteamUser, CGameID /*class CGameID*/ gameID, int /*int*/ eAppUsageEvent , string /*const char **/ pchExtraInfo );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUser_GetUserDataFolder" )] internal static extern bool /*bool*/ GetUserDataFolder( IntPtr ISteamUser, System.Text.StringBuilder /*char **/ pchBuffer, int /*int*/ cubBuffer );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUser_StartVoiceRecording" )] internal static extern void /*void*/ StartVoiceRecording( IntPtr ISteamUser );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUser_StopVoiceRecording" )] internal static extern void /*void*/ StopVoiceRecording( IntPtr ISteamUser );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUser_GetAvailableVoice" )] internal static extern VoiceResult /*EVoiceResult*/ GetAvailableVoice( IntPtr ISteamUser, out uint /*uint32 **/ pcbCompressed, out uint /*uint32 **/ pcbUncompressed, uint /*uint32*/ nUncompressedVoiceDesiredSampleRate );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUser_GetVoice" )] internal static extern VoiceResult /*EVoiceResult*/ GetVoice( IntPtr ISteamUser, bool /*bool*/ bWantCompressed , IntPtr /*void **/ pDestBuffer , uint /*uint32*/ cbDestBufferSize , out uint /*uint32 **/ nBytesWritten, bool /*bool*/ bWantUncompressed , IntPtr /*void **/ pUncompressedDestBuffer , uint /*uint32*/ cbUncompressedDestBufferSize , out uint /*uint32 **/ nUncompressBytesWritten, uint /*uint32*/ nUncompressedVoiceDesiredSampleRate );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUser_DecompressVoice" )] internal static extern VoiceResult /*EVoiceResult*/ DecompressVoice( IntPtr ISteamUser, IntPtr /*const void **/ pCompressed , uint /*uint32*/ cbCompressed , IntPtr /*void **/ pDestBuffer , uint /*uint32*/ cbDestBufferSize , out uint /*uint32 **/ nBytesWritten, uint /*uint32*/ nDesiredSampleRate );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUser_GetVoiceOptimalSampleRate" )] internal static extern uint /*uint32*/ GetVoiceOptimalSampleRate( IntPtr ISteamUser );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUser_GetAuthSessionTicket" )] internal static extern uint /*HAuthTicket*/ GetAuthSessionTicket( IntPtr ISteamUser, IntPtr /*void **/ pTicket , int /*int*/ cbMaxTicket , out uint /*uint32 **/ pcbTicket );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUser_BeginAuthSession" )] internal static extern BeginAuthSessionResult /*EBeginAuthSessionResult*/ BeginAuthSession( IntPtr ISteamUser, IntPtr /*const void **/ pAuthTicket , int /*int*/ cbAuthTicket , CSteamID /*class CSteamID*/ steamID );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUser_EndAuthSession" )] internal static extern void /*void*/ EndAuthSession( IntPtr ISteamUser, CSteamID /*class CSteamID*/ steamID );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUser_CancelAuthTicket" )] internal static extern void /*void*/ CancelAuthTicket( IntPtr ISteamUser, HAuthTicket /*HAuthTicket*/ hAuthTicket );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUser_UserHasLicenseForApp" )] internal static extern UserHasLicenseForAppResult /*EUserHasLicenseForAppResult*/ UserHasLicenseForApp( IntPtr ISteamUser, CSteamID /*class CSteamID*/ steamID, AppId_t /*AppId_t*/ appID );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUser_BIsBehindNAT" )] internal static extern bool /*bool*/ BIsBehindNAT( IntPtr ISteamUser );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUser_AdvertiseGame" )] internal static extern void /*void*/ AdvertiseGame( IntPtr ISteamUser, CSteamID /*class CSteamID*/ steamIDGameServer, uint /*uint32*/ unIPServer , ushort /*uint16*/ usPortServer );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUser_RequestEncryptedAppTicket" )] internal static extern ulong /*SteamAPICall_t*/ RequestEncryptedAppTicket( IntPtr ISteamUser, IntPtr /*void **/ pDataToInclude , int /*int*/ cbDataToInclude );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUser_GetEncryptedAppTicket" )] internal static extern bool /*bool*/ GetEncryptedAppTicket( IntPtr ISteamUser, IntPtr /*void **/ pTicket , int /*int*/ cbMaxTicket , out uint /*uint32 **/ pcbTicket );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUser_GetGameBadgeLevel" )] internal static extern int /*int*/ GetGameBadgeLevel( IntPtr ISteamUser, int /*int*/ nSeries , bool /*bool*/ bFoil );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUser_GetPlayerSteamLevel" )] internal static extern int /*int*/ GetPlayerSteamLevel( IntPtr ISteamUser );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUser_RequestStoreAuthURL" )] internal static extern ulong /*SteamAPICall_t*/ RequestStoreAuthURL( IntPtr ISteamUser, string /*const char **/ pchRedirectURL );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUser_BIsPhoneVerified" )] internal static extern bool /*bool*/ BIsPhoneVerified( IntPtr ISteamUser );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUser_BIsTwoFactorEnabled" )] internal static extern bool /*bool*/ BIsTwoFactorEnabled( IntPtr ISteamUser );
}
public static unsafe class ISteamFriends
{
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamFriends_GetPersonaName" )] internal static extern IntPtr GetPersonaName( IntPtr ISteamFriends );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamFriends_SetPersonaName" )] internal static extern ulong /*SteamAPICall_t*/ SetPersonaName( IntPtr ISteamFriends, string /*const char **/ pchPersonaName );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamFriends_GetPersonaState" )] internal static extern PersonaState /*EPersonaState*/ GetPersonaState( IntPtr ISteamFriends );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamFriends_GetFriendCount" )] internal static extern int /*int*/ GetFriendCount( IntPtr ISteamFriends, int /*int*/ iFriendFlags );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamFriends_GetFriendByIndex" )] internal static extern ulong /*class CSteamID*/ GetFriendByIndex( IntPtr ISteamFriends, int /*int*/ iFriend , int /*int*/ iFriendFlags );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamFriends_GetFriendRelationship" )] internal static extern FriendRelationship /*EFriendRelationship*/ GetFriendRelationship( IntPtr ISteamFriends, CSteamID /*class CSteamID*/ steamIDFriend );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamFriends_GetFriendPersonaState" )] internal static extern PersonaState /*EPersonaState*/ GetFriendPersonaState( IntPtr ISteamFriends, CSteamID /*class CSteamID*/ steamIDFriend );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamFriends_GetFriendPersonaName" )] internal static extern IntPtr GetFriendPersonaName( IntPtr ISteamFriends, CSteamID /*class CSteamID*/ steamIDFriend );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamFriends_GetFriendGamePlayed" )] internal static extern bool /*bool*/ GetFriendGamePlayed( IntPtr ISteamFriends, CSteamID /*class CSteamID*/ steamIDFriend, ref FriendGameInfo_t /*struct FriendGameInfo_t **/ pFriendGameInfo );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamFriends_GetFriendPersonaNameHistory" )] internal static extern IntPtr GetFriendPersonaNameHistory( IntPtr ISteamFriends, CSteamID /*class CSteamID*/ steamIDFriend, int /*int*/ iPersonaName );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamFriends_GetFriendSteamLevel" )] internal static extern int /*int*/ GetFriendSteamLevel( IntPtr ISteamFriends, CSteamID /*class CSteamID*/ steamIDFriend );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamFriends_GetPlayerNickname" )] internal static extern IntPtr GetPlayerNickname( IntPtr ISteamFriends, CSteamID /*class CSteamID*/ steamIDPlayer );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamFriends_GetFriendsGroupCount" )] internal static extern int /*int*/ GetFriendsGroupCount( IntPtr ISteamFriends );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamFriends_GetFriendsGroupIDByIndex" )] internal static extern short /*FriendsGroupID_t*/ GetFriendsGroupIDByIndex( IntPtr ISteamFriends, int /*int*/ iFG );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamFriends_GetFriendsGroupName" )] internal static extern IntPtr GetFriendsGroupName( IntPtr ISteamFriends, FriendsGroupID_t /*FriendsGroupID_t*/ friendsGroupID );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamFriends_GetFriendsGroupMembersCount" )] internal static extern int /*int*/ GetFriendsGroupMembersCount( IntPtr ISteamFriends, FriendsGroupID_t /*FriendsGroupID_t*/ friendsGroupID );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamFriends_GetFriendsGroupMembersList" )] internal static extern void /*void*/ GetFriendsGroupMembersList( IntPtr ISteamFriends, FriendsGroupID_t /*FriendsGroupID_t*/ friendsGroupID, IntPtr /*class CSteamID **/ pOutSteamIDMembers, int /*int*/ nMembersCount );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamFriends_HasFriend" )] internal static extern bool /*bool*/ HasFriend( IntPtr ISteamFriends, CSteamID /*class CSteamID*/ steamIDFriend, int /*int*/ iFriendFlags );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamFriends_GetClanCount" )] internal static extern int /*int*/ GetClanCount( IntPtr ISteamFriends );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamFriends_GetClanByIndex" )] internal static extern ulong /*class CSteamID*/ GetClanByIndex( IntPtr ISteamFriends, int /*int*/ iClan );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamFriends_GetClanName" )] internal static extern IntPtr GetClanName( IntPtr ISteamFriends, CSteamID /*class CSteamID*/ steamIDClan );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamFriends_GetClanTag" )] internal static extern IntPtr GetClanTag( IntPtr ISteamFriends, CSteamID /*class CSteamID*/ steamIDClan );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamFriends_GetClanActivityCounts" )] internal static extern bool /*bool*/ GetClanActivityCounts( IntPtr ISteamFriends, CSteamID /*class CSteamID*/ steamIDClan, out int /*int **/ pnOnline, out int /*int **/ pnInGame, out int /*int **/ pnChatting );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamFriends_DownloadClanActivityCounts" )] internal static extern ulong /*SteamAPICall_t*/ DownloadClanActivityCounts( IntPtr ISteamFriends, IntPtr /*class CSteamID **/ psteamIDClans, int /*int*/ cClansToRequest );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamFriends_GetFriendCountFromSource" )] internal static extern int /*int*/ GetFriendCountFromSource( IntPtr ISteamFriends, CSteamID /*class CSteamID*/ steamIDSource );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamFriends_GetFriendFromSourceByIndex" )] internal static extern ulong /*class CSteamID*/ GetFriendFromSourceByIndex( IntPtr ISteamFriends, CSteamID /*class CSteamID*/ steamIDSource, int /*int*/ iFriend );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamFriends_IsUserInSource" )] internal static extern bool /*bool*/ IsUserInSource( IntPtr ISteamFriends, CSteamID /*class CSteamID*/ steamIDUser, CSteamID /*class CSteamID*/ steamIDSource );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamFriends_SetInGameVoiceSpeaking" )] internal static extern void /*void*/ SetInGameVoiceSpeaking( IntPtr ISteamFriends, CSteamID /*class CSteamID*/ steamIDUser, bool /*bool*/ bSpeaking );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamFriends_ActivateGameOverlay" )] internal static extern void /*void*/ ActivateGameOverlay( IntPtr ISteamFriends, string /*const char **/ pchDialog );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamFriends_ActivateGameOverlayToUser" )] internal static extern void /*void*/ ActivateGameOverlayToUser( IntPtr ISteamFriends, string /*const char **/ pchDialog , CSteamID /*class CSteamID*/ steamID );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamFriends_ActivateGameOverlayToWebPage" )] internal static extern void /*void*/ ActivateGameOverlayToWebPage( IntPtr ISteamFriends, string /*const char **/ pchURL );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamFriends_ActivateGameOverlayToStore" )] internal static extern void /*void*/ ActivateGameOverlayToStore( IntPtr ISteamFriends, AppId_t /*AppId_t*/ nAppID, OverlayToStoreFlag /*EOverlayToStoreFlag*/ eFlag );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamFriends_SetPlayedWith" )] internal static extern void /*void*/ SetPlayedWith( IntPtr ISteamFriends, CSteamID /*class CSteamID*/ steamIDUserPlayedWith );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamFriends_ActivateGameOverlayInviteDialog" )] internal static extern void /*void*/ ActivateGameOverlayInviteDialog( IntPtr ISteamFriends, CSteamID /*class CSteamID*/ steamIDLobby );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamFriends_GetSmallFriendAvatar" )] internal static extern int /*int*/ GetSmallFriendAvatar( IntPtr ISteamFriends, CSteamID /*class CSteamID*/ steamIDFriend );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamFriends_GetMediumFriendAvatar" )] internal static extern int /*int*/ GetMediumFriendAvatar( IntPtr ISteamFriends, CSteamID /*class CSteamID*/ steamIDFriend );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamFriends_GetLargeFriendAvatar" )] internal static extern int /*int*/ GetLargeFriendAvatar( IntPtr ISteamFriends, CSteamID /*class CSteamID*/ steamIDFriend );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamFriends_RequestUserInformation" )] internal static extern bool /*bool*/ RequestUserInformation( IntPtr ISteamFriends, CSteamID /*class CSteamID*/ steamIDUser, bool /*bool*/ bRequireNameOnly );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamFriends_RequestClanOfficerList" )] internal static extern ulong /*SteamAPICall_t*/ RequestClanOfficerList( IntPtr ISteamFriends, CSteamID /*class CSteamID*/ steamIDClan );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamFriends_GetClanOwner" )] internal static extern ulong /*class CSteamID*/ GetClanOwner( IntPtr ISteamFriends, CSteamID /*class CSteamID*/ steamIDClan );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamFriends_GetClanOfficerCount" )] internal static extern int /*int*/ GetClanOfficerCount( IntPtr ISteamFriends, CSteamID /*class CSteamID*/ steamIDClan );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamFriends_GetClanOfficerByIndex" )] internal static extern ulong /*class CSteamID*/ GetClanOfficerByIndex( IntPtr ISteamFriends, CSteamID /*class CSteamID*/ steamIDClan, int /*int*/ iOfficer );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamFriends_GetUserRestrictions" )] internal static extern uint /*uint32*/ GetUserRestrictions( IntPtr ISteamFriends );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamFriends_SetRichPresence" )] internal static extern bool /*bool*/ SetRichPresence( IntPtr ISteamFriends, string /*const char **/ pchKey , string /*const char **/ pchValue );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamFriends_ClearRichPresence" )] internal static extern void /*void*/ ClearRichPresence( IntPtr ISteamFriends );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamFriends_GetFriendRichPresence" )] internal static extern IntPtr GetFriendRichPresence( IntPtr ISteamFriends, CSteamID /*class CSteamID*/ steamIDFriend, string /*const char **/ pchKey );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamFriends_GetFriendRichPresenceKeyCount" )] internal static extern int /*int*/ GetFriendRichPresenceKeyCount( IntPtr ISteamFriends, CSteamID /*class CSteamID*/ steamIDFriend );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamFriends_GetFriendRichPresenceKeyByIndex" )] internal static extern IntPtr GetFriendRichPresenceKeyByIndex( IntPtr ISteamFriends, CSteamID /*class CSteamID*/ steamIDFriend, int /*int*/ iKey );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamFriends_RequestFriendRichPresence" )] internal static extern void /*void*/ RequestFriendRichPresence( IntPtr ISteamFriends, CSteamID /*class CSteamID*/ steamIDFriend );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamFriends_InviteUserToGame" )] internal static extern bool /*bool*/ InviteUserToGame( IntPtr ISteamFriends, CSteamID /*class CSteamID*/ steamIDFriend, string /*const char **/ pchConnectString );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamFriends_GetCoplayFriendCount" )] internal static extern int /*int*/ GetCoplayFriendCount( IntPtr ISteamFriends );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamFriends_GetCoplayFriend" )] internal static extern ulong /*class CSteamID*/ GetCoplayFriend( IntPtr ISteamFriends, int /*int*/ iCoplayFriend );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamFriends_GetFriendCoplayTime" )] internal static extern int /*int*/ GetFriendCoplayTime( IntPtr ISteamFriends, CSteamID /*class CSteamID*/ steamIDFriend );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamFriends_GetFriendCoplayGame" )] internal static extern uint /*AppId_t*/ GetFriendCoplayGame( IntPtr ISteamFriends, CSteamID /*class CSteamID*/ steamIDFriend );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamFriends_JoinClanChatRoom" )] internal static extern ulong /*SteamAPICall_t*/ JoinClanChatRoom( IntPtr ISteamFriends, CSteamID /*class CSteamID*/ steamIDClan );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamFriends_LeaveClanChatRoom" )] internal static extern bool /*bool*/ LeaveClanChatRoom( IntPtr ISteamFriends, CSteamID /*class CSteamID*/ steamIDClan );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamFriends_GetClanChatMemberCount" )] internal static extern int /*int*/ GetClanChatMemberCount( IntPtr ISteamFriends, CSteamID /*class CSteamID*/ steamIDClan );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamFriends_GetChatMemberByIndex" )] internal static extern ulong /*class CSteamID*/ GetChatMemberByIndex( IntPtr ISteamFriends, CSteamID /*class CSteamID*/ steamIDClan, int /*int*/ iUser );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamFriends_SendClanChatMessage" )] internal static extern bool /*bool*/ SendClanChatMessage( IntPtr ISteamFriends, CSteamID /*class CSteamID*/ steamIDClanChat, string /*const char **/ pchText );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamFriends_GetClanChatMessage" )] internal static extern int /*int*/ GetClanChatMessage( IntPtr ISteamFriends, CSteamID /*class CSteamID*/ steamIDClanChat, int /*int*/ iMessage , IntPtr /*void **/ prgchText , int /*int*/ cchTextMax , out ChatEntryType /*EChatEntryType **/ peChatEntryType, out CSteamID /*class CSteamID **/ psteamidChatter );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamFriends_IsClanChatAdmin" )] internal static extern bool /*bool*/ IsClanChatAdmin( IntPtr ISteamFriends, CSteamID /*class CSteamID*/ steamIDClanChat, CSteamID /*class CSteamID*/ steamIDUser );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamFriends_IsClanChatWindowOpenInSteam" )] internal static extern bool /*bool*/ IsClanChatWindowOpenInSteam( IntPtr ISteamFriends, CSteamID /*class CSteamID*/ steamIDClanChat );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamFriends_OpenClanChatWindowInSteam" )] internal static extern bool /*bool*/ OpenClanChatWindowInSteam( IntPtr ISteamFriends, CSteamID /*class CSteamID*/ steamIDClanChat );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamFriends_CloseClanChatWindowInSteam" )] internal static extern bool /*bool*/ CloseClanChatWindowInSteam( IntPtr ISteamFriends, CSteamID /*class CSteamID*/ steamIDClanChat );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamFriends_SetListenForFriendsMessages" )] internal static extern bool /*bool*/ SetListenForFriendsMessages( IntPtr ISteamFriends, bool /*bool*/ bInterceptEnabled );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamFriends_ReplyToFriendMessage" )] internal static extern bool /*bool*/ ReplyToFriendMessage( IntPtr ISteamFriends, CSteamID /*class CSteamID*/ steamIDFriend, string /*const char **/ pchMsgToSend );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamFriends_GetFriendMessage" )] internal static extern int /*int*/ GetFriendMessage( IntPtr ISteamFriends, CSteamID /*class CSteamID*/ steamIDFriend, int /*int*/ iMessageID , IntPtr /*void **/ pvData , int /*int*/ cubData , out ChatEntryType /*EChatEntryType **/ peChatEntryType );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamFriends_GetFollowerCount" )] internal static extern ulong /*SteamAPICall_t*/ GetFollowerCount( IntPtr ISteamFriends, CSteamID /*class CSteamID*/ steamID );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamFriends_IsFollowing" )] internal static extern ulong /*SteamAPICall_t*/ IsFollowing( IntPtr ISteamFriends, CSteamID /*class CSteamID*/ steamID );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamFriends_EnumerateFollowingList" )] internal static extern ulong /*SteamAPICall_t*/ EnumerateFollowingList( IntPtr ISteamFriends, uint /*uint32*/ unStartIndex );
}
public static unsafe class ISteamUtils
{
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUtils_GetSecondsSinceAppActive" )] internal static extern uint /*uint32*/ GetSecondsSinceAppActive( IntPtr ISteamUtils );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUtils_GetSecondsSinceComputerActive" )] internal static extern uint /*uint32*/ GetSecondsSinceComputerActive( IntPtr ISteamUtils );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUtils_GetConnectedUniverse" )] internal static extern Universe /*EUniverse*/ GetConnectedUniverse( IntPtr ISteamUtils );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUtils_GetServerRealTime" )] internal static extern uint /*uint32*/ GetServerRealTime( IntPtr ISteamUtils );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUtils_GetIPCountry" )] internal static extern IntPtr GetIPCountry( IntPtr ISteamUtils );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUtils_GetImageSize" )] internal static extern bool /*bool*/ GetImageSize( IntPtr ISteamUtils, int /*int*/ iImage , out uint /*uint32 **/ pnWidth, out uint /*uint32 **/ pnHeight );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUtils_GetImageRGBA" )] internal static extern bool /*bool*/ GetImageRGBA( IntPtr ISteamUtils, int /*int*/ iImage , IntPtr /*uint8 **/ pubDest, int /*int*/ nDestBufferSize );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUtils_GetCSERIPPort" )] internal static extern bool /*bool*/ GetCSERIPPort( IntPtr ISteamUtils, out uint /*uint32 **/ unIP, out ushort /*uint16 **/ usPort );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUtils_GetCurrentBatteryPower" )] internal static extern byte /*uint8*/ GetCurrentBatteryPower( IntPtr ISteamUtils );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUtils_GetAppID" )] internal static extern uint /*uint32*/ GetAppID( IntPtr ISteamUtils );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUtils_SetOverlayNotificationPosition" )] internal static extern void /*void*/ SetOverlayNotificationPosition( IntPtr ISteamUtils, NotificationPosition /*ENotificationPosition*/ eNotificationPosition );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUtils_IsAPICallCompleted" )] internal static extern bool /*bool*/ IsAPICallCompleted( IntPtr ISteamUtils, SteamAPICall_t /*SteamAPICall_t*/ hSteamAPICall, out bool /*bool **/ pbFailed );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUtils_GetAPICallFailureReason" )] internal static extern SteamAPICallFailure /*ESteamAPICallFailure*/ GetAPICallFailureReason( IntPtr ISteamUtils, SteamAPICall_t /*SteamAPICall_t*/ hSteamAPICall );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUtils_GetAPICallResult" )] internal static extern bool /*bool*/ GetAPICallResult( IntPtr ISteamUtils, SteamAPICall_t /*SteamAPICall_t*/ hSteamAPICall, IntPtr /*void **/ pCallback , int /*int*/ cubCallback , int /*int*/ iCallbackExpected , out bool /*bool **/ pbFailed );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUtils_GetIPCCallCount" )] internal static extern uint /*uint32*/ GetIPCCallCount( IntPtr ISteamUtils );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUtils_SetWarningMessageHook" )] internal static extern void /*void*/ SetWarningMessageHook( IntPtr ISteamUtils, IntPtr /*SteamAPIWarningMessageHook_t*/ pFunction );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUtils_IsOverlayEnabled" )] internal static extern bool /*bool*/ IsOverlayEnabled( IntPtr ISteamUtils );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUtils_BOverlayNeedsPresent" )] internal static extern bool /*bool*/ BOverlayNeedsPresent( IntPtr ISteamUtils );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUtils_CheckFileSignature" )] internal static extern ulong /*SteamAPICall_t*/ CheckFileSignature( IntPtr ISteamUtils, string /*const char **/ szFileName );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUtils_ShowGamepadTextInput" )] internal static extern bool /*bool*/ ShowGamepadTextInput( IntPtr ISteamUtils, GamepadTextInputMode /*EGamepadTextInputMode*/ eInputMode , GamepadTextInputLineMode /*EGamepadTextInputLineMode*/ eLineInputMode , string /*const char **/ pchDescription , uint /*uint32*/ unCharMax , string /*const char **/ pchExistingText );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUtils_GetEnteredGamepadTextLength" )] internal static extern uint /*uint32*/ GetEnteredGamepadTextLength( IntPtr ISteamUtils );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUtils_GetEnteredGamepadTextInput" )] internal static extern bool /*bool*/ GetEnteredGamepadTextInput( IntPtr ISteamUtils, System.Text.StringBuilder /*char **/ pchText, uint /*uint32*/ cchText );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUtils_GetSteamUILanguage" )] internal static extern IntPtr GetSteamUILanguage( IntPtr ISteamUtils );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUtils_IsSteamRunningInVR" )] internal static extern bool /*bool*/ IsSteamRunningInVR( IntPtr ISteamUtils );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUtils_SetOverlayNotificationInset" )] internal static extern void /*void*/ SetOverlayNotificationInset( IntPtr ISteamUtils, int /*int*/ nHorizontalInset , int /*int*/ nVerticalInset );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUtils_IsSteamInBigPictureMode" )] internal static extern bool /*bool*/ IsSteamInBigPictureMode( IntPtr ISteamUtils );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUtils_StartVRDashboard" )] internal static extern void /*void*/ StartVRDashboard( IntPtr ISteamUtils );
}
public static unsafe class ISteamMatchmaking
{
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMatchmaking_GetFavoriteGameCount" )] internal static extern int /*int*/ GetFavoriteGameCount( IntPtr ISteamMatchmaking );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMatchmaking_GetFavoriteGame" )] internal static extern bool /*bool*/ GetFavoriteGame( IntPtr ISteamMatchmaking, int /*int*/ iGame , ref AppId_t /*AppId_t **/ pnAppID, out uint /*uint32 **/ pnIP, out ushort /*uint16 **/ pnConnPort, out ushort /*uint16 **/ pnQueryPort, IntPtr /*uint32 **/ punFlags, out uint /*uint32 **/ pRTime32LastPlayedOnServer );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMatchmaking_AddFavoriteGame" )] internal static extern int /*int*/ AddFavoriteGame( IntPtr ISteamMatchmaking, AppId_t /*AppId_t*/ nAppID, uint /*uint32*/ nIP , ushort /*uint16*/ nConnPort , ushort /*uint16*/ nQueryPort , uint /*uint32*/ unFlags , uint /*uint32*/ rTime32LastPlayedOnServer );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMatchmaking_RemoveFavoriteGame" )] internal static extern bool /*bool*/ RemoveFavoriteGame( IntPtr ISteamMatchmaking, AppId_t /*AppId_t*/ nAppID, uint /*uint32*/ nIP , ushort /*uint16*/ nConnPort , ushort /*uint16*/ nQueryPort , uint /*uint32*/ unFlags );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMatchmaking_RequestLobbyList" )] internal static extern ulong /*SteamAPICall_t*/ RequestLobbyList( IntPtr ISteamMatchmaking );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMatchmaking_AddRequestLobbyListStringFilter" )] internal static extern void /*void*/ AddRequestLobbyListStringFilter( IntPtr ISteamMatchmaking, string /*const char **/ pchKeyToMatch , string /*const char **/ pchValueToMatch , LobbyComparison /*ELobbyComparison*/ eComparisonType );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMatchmaking_AddRequestLobbyListNumericalFilter" )] internal static extern void /*void*/ AddRequestLobbyListNumericalFilter( IntPtr ISteamMatchmaking, string /*const char **/ pchKeyToMatch , int /*int*/ nValueToMatch , LobbyComparison /*ELobbyComparison*/ eComparisonType );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMatchmaking_AddRequestLobbyListNearValueFilter" )] internal static extern void /*void*/ AddRequestLobbyListNearValueFilter( IntPtr ISteamMatchmaking, string /*const char **/ pchKeyToMatch , int /*int*/ nValueToBeCloseTo );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMatchmaking_AddRequestLobbyListFilterSlotsAvailable" )] internal static extern void /*void*/ AddRequestLobbyListFilterSlotsAvailable( IntPtr ISteamMatchmaking, int /*int*/ nSlotsAvailable );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMatchmaking_AddRequestLobbyListDistanceFilter" )] internal static extern void /*void*/ AddRequestLobbyListDistanceFilter( IntPtr ISteamMatchmaking, LobbyDistanceFilter /*ELobbyDistanceFilter*/ eLobbyDistanceFilter );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMatchmaking_AddRequestLobbyListResultCountFilter" )] internal static extern void /*void*/ AddRequestLobbyListResultCountFilter( IntPtr ISteamMatchmaking, int /*int*/ cMaxResults );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMatchmaking_AddRequestLobbyListCompatibleMembersFilter" )] internal static extern void /*void*/ AddRequestLobbyListCompatibleMembersFilter( IntPtr ISteamMatchmaking, CSteamID /*class CSteamID*/ steamIDLobby );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMatchmaking_GetLobbyByIndex" )] internal static extern ulong /*class CSteamID*/ GetLobbyByIndex( IntPtr ISteamMatchmaking, int /*int*/ iLobby );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMatchmaking_CreateLobby" )] internal static extern ulong /*SteamAPICall_t*/ CreateLobby( IntPtr ISteamMatchmaking, LobbyType /*ELobbyType*/ eLobbyType , int /*int*/ cMaxMembers );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMatchmaking_JoinLobby" )] internal static extern ulong /*SteamAPICall_t*/ JoinLobby( IntPtr ISteamMatchmaking, CSteamID /*class CSteamID*/ steamIDLobby );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMatchmaking_LeaveLobby" )] internal static extern void /*void*/ LeaveLobby( IntPtr ISteamMatchmaking, CSteamID /*class CSteamID*/ steamIDLobby );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMatchmaking_InviteUserToLobby" )] internal static extern bool /*bool*/ InviteUserToLobby( IntPtr ISteamMatchmaking, CSteamID /*class CSteamID*/ steamIDLobby, CSteamID /*class CSteamID*/ steamIDInvitee );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMatchmaking_GetNumLobbyMembers" )] internal static extern int /*int*/ GetNumLobbyMembers( IntPtr ISteamMatchmaking, CSteamID /*class CSteamID*/ steamIDLobby );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMatchmaking_GetLobbyMemberByIndex" )] internal static extern ulong /*class CSteamID*/ GetLobbyMemberByIndex( IntPtr ISteamMatchmaking, CSteamID /*class CSteamID*/ steamIDLobby, int /*int*/ iMember );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMatchmaking_GetLobbyData" )] internal static extern IntPtr GetLobbyData( IntPtr ISteamMatchmaking, CSteamID /*class CSteamID*/ steamIDLobby, string /*const char **/ pchKey );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMatchmaking_SetLobbyData" )] internal static extern bool /*bool*/ SetLobbyData( IntPtr ISteamMatchmaking, CSteamID /*class CSteamID*/ steamIDLobby, string /*const char **/ pchKey , string /*const char **/ pchValue );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMatchmaking_GetLobbyDataCount" )] internal static extern int /*int*/ GetLobbyDataCount( IntPtr ISteamMatchmaking, CSteamID /*class CSteamID*/ steamIDLobby );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMatchmaking_GetLobbyDataByIndex" )] internal static extern bool /*bool*/ GetLobbyDataByIndex( IntPtr ISteamMatchmaking, CSteamID /*class CSteamID*/ steamIDLobby, int /*int*/ iLobbyData , System.Text.StringBuilder /*char **/ pchKey, int /*int*/ cchKeyBufferSize , System.Text.StringBuilder /*char **/ pchValue, int /*int*/ cchValueBufferSize );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMatchmaking_DeleteLobbyData" )] internal static extern bool /*bool*/ DeleteLobbyData( IntPtr ISteamMatchmaking, CSteamID /*class CSteamID*/ steamIDLobby, string /*const char **/ pchKey );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMatchmaking_GetLobbyMemberData" )] internal static extern IntPtr GetLobbyMemberData( IntPtr ISteamMatchmaking, CSteamID /*class CSteamID*/ steamIDLobby, CSteamID /*class CSteamID*/ steamIDUser, string /*const char **/ pchKey );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMatchmaking_SetLobbyMemberData" )] internal static extern void /*void*/ SetLobbyMemberData( IntPtr ISteamMatchmaking, CSteamID /*class CSteamID*/ steamIDLobby, string /*const char **/ pchKey , string /*const char **/ pchValue );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMatchmaking_SendLobbyChatMsg" )] internal static extern bool /*bool*/ SendLobbyChatMsg( IntPtr ISteamMatchmaking, CSteamID /*class CSteamID*/ steamIDLobby, IntPtr /*const void **/ pvMsgBody , int /*int*/ cubMsgBody );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMatchmaking_GetLobbyChatEntry" )] internal static extern int /*int*/ GetLobbyChatEntry( IntPtr ISteamMatchmaking, CSteamID /*class CSteamID*/ steamIDLobby, int /*int*/ iChatID , out CSteamID /*class CSteamID **/ pSteamIDUser, IntPtr /*void **/ pvData , int /*int*/ cubData , out ChatEntryType /*EChatEntryType **/ peChatEntryType );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMatchmaking_RequestLobbyData" )] internal static extern bool /*bool*/ RequestLobbyData( IntPtr ISteamMatchmaking, CSteamID /*class CSteamID*/ steamIDLobby );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMatchmaking_SetLobbyGameServer" )] internal static extern void /*void*/ SetLobbyGameServer( IntPtr ISteamMatchmaking, CSteamID /*class CSteamID*/ steamIDLobby, uint /*uint32*/ unGameServerIP , ushort /*uint16*/ unGameServerPort , CSteamID /*class CSteamID*/ steamIDGameServer );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMatchmaking_GetLobbyGameServer" )] internal static extern bool /*bool*/ GetLobbyGameServer( IntPtr ISteamMatchmaking, CSteamID /*class CSteamID*/ steamIDLobby, out uint /*uint32 **/ punGameServerIP, out ushort /*uint16 **/ punGameServerPort, out CSteamID /*class CSteamID **/ psteamIDGameServer );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMatchmaking_SetLobbyMemberLimit" )] internal static extern bool /*bool*/ SetLobbyMemberLimit( IntPtr ISteamMatchmaking, CSteamID /*class CSteamID*/ steamIDLobby, int /*int*/ cMaxMembers );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMatchmaking_GetLobbyMemberLimit" )] internal static extern int /*int*/ GetLobbyMemberLimit( IntPtr ISteamMatchmaking, CSteamID /*class CSteamID*/ steamIDLobby );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMatchmaking_SetLobbyType" )] internal static extern bool /*bool*/ SetLobbyType( IntPtr ISteamMatchmaking, CSteamID /*class CSteamID*/ steamIDLobby, LobbyType /*ELobbyType*/ eLobbyType );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMatchmaking_SetLobbyJoinable" )] internal static extern bool /*bool*/ SetLobbyJoinable( IntPtr ISteamMatchmaking, CSteamID /*class CSteamID*/ steamIDLobby, bool /*bool*/ bLobbyJoinable );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMatchmaking_GetLobbyOwner" )] internal static extern ulong /*class CSteamID*/ GetLobbyOwner( IntPtr ISteamMatchmaking, CSteamID /*class CSteamID*/ steamIDLobby );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMatchmaking_SetLobbyOwner" )] internal static extern bool /*bool*/ SetLobbyOwner( IntPtr ISteamMatchmaking, CSteamID /*class CSteamID*/ steamIDLobby, CSteamID /*class CSteamID*/ steamIDNewOwner );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMatchmaking_SetLinkedLobby" )] internal static extern bool /*bool*/ SetLinkedLobby( IntPtr ISteamMatchmaking, CSteamID /*class CSteamID*/ steamIDLobby, CSteamID /*class CSteamID*/ steamIDLobbyDependent );
}
public static unsafe class ISteamMatchmakingServers
{
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMatchmakingServers_RequestInternetServerList" )] internal static extern IntPtr /*HServerListRequest*/ RequestInternetServerList( IntPtr ISteamMatchmakingServers, AppId_t /*AppId_t*/ iApp, IntPtr /*struct MatchMakingKeyValuePair_t ***/ ppchFilters, uint /*uint32*/ nFilters , IntPtr /*class ISteamMatchmakingServerListResponse **/ pRequestServersResponse );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMatchmakingServers_RequestLANServerList" )] internal static extern IntPtr /*HServerListRequest*/ RequestLANServerList( IntPtr ISteamMatchmakingServers, AppId_t /*AppId_t*/ iApp, IntPtr /*class ISteamMatchmakingServerListResponse **/ pRequestServersResponse );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMatchmakingServers_RequestFriendsServerList" )] internal static extern IntPtr /*HServerListRequest*/ RequestFriendsServerList( IntPtr ISteamMatchmakingServers, AppId_t /*AppId_t*/ iApp, IntPtr /*struct MatchMakingKeyValuePair_t ***/ ppchFilters, uint /*uint32*/ nFilters , IntPtr /*class ISteamMatchmakingServerListResponse **/ pRequestServersResponse );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMatchmakingServers_RequestFavoritesServerList" )] internal static extern IntPtr /*HServerListRequest*/ RequestFavoritesServerList( IntPtr ISteamMatchmakingServers, AppId_t /*AppId_t*/ iApp, IntPtr /*struct MatchMakingKeyValuePair_t ***/ ppchFilters, uint /*uint32*/ nFilters , IntPtr /*class ISteamMatchmakingServerListResponse **/ pRequestServersResponse );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMatchmakingServers_RequestHistoryServerList" )] internal static extern IntPtr /*HServerListRequest*/ RequestHistoryServerList( IntPtr ISteamMatchmakingServers, AppId_t /*AppId_t*/ iApp, IntPtr /*struct MatchMakingKeyValuePair_t ***/ ppchFilters, uint /*uint32*/ nFilters , IntPtr /*class ISteamMatchmakingServerListResponse **/ pRequestServersResponse );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMatchmakingServers_RequestSpectatorServerList" )] internal static extern IntPtr /*HServerListRequest*/ RequestSpectatorServerList( IntPtr ISteamMatchmakingServers, AppId_t /*AppId_t*/ iApp, IntPtr /*struct MatchMakingKeyValuePair_t ***/ ppchFilters, uint /*uint32*/ nFilters , IntPtr /*class ISteamMatchmakingServerListResponse **/ pRequestServersResponse );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMatchmakingServers_ReleaseRequest" )] internal static extern void /*void*/ ReleaseRequest( IntPtr ISteamMatchmakingServers, HServerListRequest /*HServerListRequest*/ hServerListRequest );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMatchmakingServers_GetServerDetails" )] internal static extern IntPtr /*class gameserveritem_t **/ GetServerDetails( IntPtr ISteamMatchmakingServers, HServerListRequest /*HServerListRequest*/ hRequest, int /*int*/ iServer );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMatchmakingServers_CancelQuery" )] internal static extern void /*void*/ CancelQuery( IntPtr ISteamMatchmakingServers, HServerListRequest /*HServerListRequest*/ hRequest );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMatchmakingServers_RefreshQuery" )] internal static extern void /*void*/ RefreshQuery( IntPtr ISteamMatchmakingServers, HServerListRequest /*HServerListRequest*/ hRequest );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMatchmakingServers_IsRefreshing" )] internal static extern bool /*bool*/ IsRefreshing( IntPtr ISteamMatchmakingServers, HServerListRequest /*HServerListRequest*/ hRequest );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMatchmakingServers_GetServerCount" )] internal static extern int /*int*/ GetServerCount( IntPtr ISteamMatchmakingServers, HServerListRequest /*HServerListRequest*/ hRequest );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMatchmakingServers_RefreshServer" )] internal static extern void /*void*/ RefreshServer( IntPtr ISteamMatchmakingServers, HServerListRequest /*HServerListRequest*/ hRequest, int /*int*/ iServer );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMatchmakingServers_PingServer" )] internal static extern int /*HServerQuery*/ PingServer( IntPtr ISteamMatchmakingServers, uint /*uint32*/ unIP , ushort /*uint16*/ usPort , IntPtr /*class ISteamMatchmakingPingResponse **/ pRequestServersResponse );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMatchmakingServers_PlayerDetails" )] internal static extern int /*HServerQuery*/ PlayerDetails( IntPtr ISteamMatchmakingServers, uint /*uint32*/ unIP , ushort /*uint16*/ usPort , IntPtr /*class ISteamMatchmakingPlayersResponse **/ pRequestServersResponse );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMatchmakingServers_ServerRules" )] internal static extern int /*HServerQuery*/ ServerRules( IntPtr ISteamMatchmakingServers, uint /*uint32*/ unIP , ushort /*uint16*/ usPort , IntPtr /*class ISteamMatchmakingRulesResponse **/ pRequestServersResponse );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMatchmakingServers_CancelServerQuery" )] internal static extern void /*void*/ CancelServerQuery( IntPtr ISteamMatchmakingServers, HServerQuery /*HServerQuery*/ hServerQuery );
}
public static unsafe class ISteamRemoteStorage
{
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamRemoteStorage_FileWrite" )] internal static extern bool /*bool*/ FileWrite( IntPtr ISteamRemoteStorage, string /*const char **/ pchFile , IntPtr /*const void **/ pvData , int /*int32*/ cubData );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamRemoteStorage_FileRead" )] internal static extern int /*int32*/ FileRead( IntPtr ISteamRemoteStorage, string /*const char **/ pchFile , IntPtr /*void **/ pvData , int /*int32*/ cubDataToRead );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamRemoteStorage_FileWriteAsync" )] internal static extern ulong /*SteamAPICall_t*/ FileWriteAsync( IntPtr ISteamRemoteStorage, string /*const char **/ pchFile , IntPtr /*const void **/ pvData , uint /*uint32*/ cubData );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamRemoteStorage_FileReadAsync" )] internal static extern ulong /*SteamAPICall_t*/ FileReadAsync( IntPtr ISteamRemoteStorage, string /*const char **/ pchFile , uint /*uint32*/ nOffset , uint /*uint32*/ cubToRead );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamRemoteStorage_FileReadAsyncComplete" )] internal static extern bool /*bool*/ FileReadAsyncComplete( IntPtr ISteamRemoteStorage, SteamAPICall_t /*SteamAPICall_t*/ hReadCall, IntPtr /*void **/ pvBuffer , uint /*uint32*/ cubToRead );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamRemoteStorage_FileForget" )] internal static extern bool /*bool*/ FileForget( IntPtr ISteamRemoteStorage, string /*const char **/ pchFile );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamRemoteStorage_FileDelete" )] internal static extern bool /*bool*/ FileDelete( IntPtr ISteamRemoteStorage, string /*const char **/ pchFile );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamRemoteStorage_FileShare" )] internal static extern ulong /*SteamAPICall_t*/ FileShare( IntPtr ISteamRemoteStorage, string /*const char **/ pchFile );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamRemoteStorage_SetSyncPlatforms" )] internal static extern bool /*bool*/ SetSyncPlatforms( IntPtr ISteamRemoteStorage, string /*const char **/ pchFile , RemoteStoragePlatform /*ERemoteStoragePlatform*/ eRemoteStoragePlatform );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamRemoteStorage_FileWriteStreamOpen" )] internal static extern ulong /*UGCFileWriteStreamHandle_t*/ FileWriteStreamOpen( IntPtr ISteamRemoteStorage, string /*const char **/ pchFile );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamRemoteStorage_FileWriteStreamWriteChunk" )] internal static extern bool /*bool*/ FileWriteStreamWriteChunk( IntPtr ISteamRemoteStorage, UGCFileWriteStreamHandle_t /*UGCFileWriteStreamHandle_t*/ writeHandle, IntPtr /*const void **/ pvData , int /*int32*/ cubData );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamRemoteStorage_FileWriteStreamClose" )] internal static extern bool /*bool*/ FileWriteStreamClose( IntPtr ISteamRemoteStorage, UGCFileWriteStreamHandle_t /*UGCFileWriteStreamHandle_t*/ writeHandle );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamRemoteStorage_FileWriteStreamCancel" )] internal static extern bool /*bool*/ FileWriteStreamCancel( IntPtr ISteamRemoteStorage, UGCFileWriteStreamHandle_t /*UGCFileWriteStreamHandle_t*/ writeHandle );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamRemoteStorage_FileExists" )] internal static extern bool /*bool*/ FileExists( IntPtr ISteamRemoteStorage, string /*const char **/ pchFile );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamRemoteStorage_FilePersisted" )] internal static extern bool /*bool*/ FilePersisted( IntPtr ISteamRemoteStorage, string /*const char **/ pchFile );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamRemoteStorage_GetFileSize" )] internal static extern int /*int32*/ GetFileSize( IntPtr ISteamRemoteStorage, string /*const char **/ pchFile );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamRemoteStorage_GetFileTimestamp" )] internal static extern long /*int64*/ GetFileTimestamp( IntPtr ISteamRemoteStorage, string /*const char **/ pchFile );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamRemoteStorage_GetSyncPlatforms" )] internal static extern RemoteStoragePlatform /*ERemoteStoragePlatform*/ GetSyncPlatforms( IntPtr ISteamRemoteStorage, string /*const char **/ pchFile );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamRemoteStorage_GetFileCount" )] internal static extern int /*int32*/ GetFileCount( IntPtr ISteamRemoteStorage );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamRemoteStorage_GetFileNameAndSize" )] internal static extern IntPtr GetFileNameAndSize( IntPtr ISteamRemoteStorage, int /*int*/ iFile , IntPtr /*int32 **/ pnFileSizeInBytes );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamRemoteStorage_GetQuota" )] internal static extern bool /*bool*/ GetQuota( IntPtr ISteamRemoteStorage, IntPtr /*int32 **/ pnTotalBytes, IntPtr /*int32 **/ puAvailableBytes );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamRemoteStorage_IsCloudEnabledForAccount" )] internal static extern bool /*bool*/ IsCloudEnabledForAccount( IntPtr ISteamRemoteStorage );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamRemoteStorage_IsCloudEnabledForApp" )] internal static extern bool /*bool*/ IsCloudEnabledForApp( IntPtr ISteamRemoteStorage );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamRemoteStorage_SetCloudEnabledForApp" )] internal static extern void /*void*/ SetCloudEnabledForApp( IntPtr ISteamRemoteStorage, bool /*bool*/ bEnabled );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamRemoteStorage_UGCDownload" )] internal static extern ulong /*SteamAPICall_t*/ UGCDownload( IntPtr ISteamRemoteStorage, UGCHandle_t /*UGCHandle_t*/ hContent, uint /*uint32*/ unPriority );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamRemoteStorage_GetUGCDownloadProgress" )] internal static extern bool /*bool*/ GetUGCDownloadProgress( IntPtr ISteamRemoteStorage, UGCHandle_t /*UGCHandle_t*/ hContent, out int /*int32 **/ pnBytesDownloaded, out int /*int32 **/ pnBytesExpected );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamRemoteStorage_GetUGCDetails" )] internal static extern bool /*bool*/ GetUGCDetails( IntPtr ISteamRemoteStorage, UGCHandle_t /*UGCHandle_t*/ hContent, ref AppId_t /*AppId_t **/ pnAppID, System.Text.StringBuilder /*char ***/ ppchName, IntPtr /*int32 **/ pnFileSizeInBytes, out CSteamID /*class CSteamID **/ pSteamIDOwner );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamRemoteStorage_UGCRead" )] internal static extern int /*int32*/ UGCRead( IntPtr ISteamRemoteStorage, UGCHandle_t /*UGCHandle_t*/ hContent, IntPtr /*void **/ pvData , int /*int32*/ cubDataToRead , uint /*uint32*/ cOffset , UGCReadAction /*EUGCReadAction*/ eAction );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamRemoteStorage_GetCachedUGCCount" )] internal static extern int /*int32*/ GetCachedUGCCount( IntPtr ISteamRemoteStorage );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamRemoteStorage_GetCachedUGCHandle" )] internal static extern ulong /*UGCHandle_t*/ GetCachedUGCHandle( IntPtr ISteamRemoteStorage, int /*int32*/ iCachedContent );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamRemoteStorage_PublishWorkshopFile" )] internal static extern ulong /*SteamAPICall_t*/ PublishWorkshopFile( IntPtr ISteamRemoteStorage, string /*const char **/ pchFile , string /*const char **/ pchPreviewFile , AppId_t /*AppId_t*/ nConsumerAppId, string /*const char **/ pchTitle , string /*const char **/ pchDescription , RemoteStoragePublishedFileVisibility /*ERemoteStoragePublishedFileVisibility*/ eVisibility , IntPtr /*struct SteamParamStringArray_t **/ pTags, WorkshopFileType /*EWorkshopFileType*/ eWorkshopFileType );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamRemoteStorage_CreatePublishedFileUpdateRequest" )] internal static extern ulong /*PublishedFileUpdateHandle_t*/ CreatePublishedFileUpdateRequest( IntPtr ISteamRemoteStorage, PublishedFileId_t /*PublishedFileId_t*/ unPublishedFileId );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamRemoteStorage_UpdatePublishedFileFile" )] internal static extern bool /*bool*/ UpdatePublishedFileFile( IntPtr ISteamRemoteStorage, PublishedFileUpdateHandle_t /*PublishedFileUpdateHandle_t*/ updateHandle, string /*const char **/ pchFile );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamRemoteStorage_UpdatePublishedFilePreviewFile" )] internal static extern bool /*bool*/ UpdatePublishedFilePreviewFile( IntPtr ISteamRemoteStorage, PublishedFileUpdateHandle_t /*PublishedFileUpdateHandle_t*/ updateHandle, string /*const char **/ pchPreviewFile );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamRemoteStorage_UpdatePublishedFileTitle" )] internal static extern bool /*bool*/ UpdatePublishedFileTitle( IntPtr ISteamRemoteStorage, PublishedFileUpdateHandle_t /*PublishedFileUpdateHandle_t*/ updateHandle, string /*const char **/ pchTitle );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamRemoteStorage_UpdatePublishedFileDescription" )] internal static extern bool /*bool*/ UpdatePublishedFileDescription( IntPtr ISteamRemoteStorage, PublishedFileUpdateHandle_t /*PublishedFileUpdateHandle_t*/ updateHandle, string /*const char **/ pchDescription );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamRemoteStorage_UpdatePublishedFileVisibility" )] internal static extern bool /*bool*/ UpdatePublishedFileVisibility( IntPtr ISteamRemoteStorage, PublishedFileUpdateHandle_t /*PublishedFileUpdateHandle_t*/ updateHandle, RemoteStoragePublishedFileVisibility /*ERemoteStoragePublishedFileVisibility*/ eVisibility );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamRemoteStorage_UpdatePublishedFileTags" )] internal static extern bool /*bool*/ UpdatePublishedFileTags( IntPtr ISteamRemoteStorage, PublishedFileUpdateHandle_t /*PublishedFileUpdateHandle_t*/ updateHandle, IntPtr /*struct SteamParamStringArray_t **/ pTags );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamRemoteStorage_CommitPublishedFileUpdate" )] internal static extern ulong /*SteamAPICall_t*/ CommitPublishedFileUpdate( IntPtr ISteamRemoteStorage, PublishedFileUpdateHandle_t /*PublishedFileUpdateHandle_t*/ updateHandle );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamRemoteStorage_GetPublishedFileDetails" )] internal static extern ulong /*SteamAPICall_t*/ GetPublishedFileDetails( IntPtr ISteamRemoteStorage, PublishedFileId_t /*PublishedFileId_t*/ unPublishedFileId, uint /*uint32*/ unMaxSecondsOld );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamRemoteStorage_DeletePublishedFile" )] internal static extern ulong /*SteamAPICall_t*/ DeletePublishedFile( IntPtr ISteamRemoteStorage, PublishedFileId_t /*PublishedFileId_t*/ unPublishedFileId );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamRemoteStorage_EnumerateUserPublishedFiles" )] internal static extern ulong /*SteamAPICall_t*/ EnumerateUserPublishedFiles( IntPtr ISteamRemoteStorage, uint /*uint32*/ unStartIndex );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamRemoteStorage_SubscribePublishedFile" )] internal static extern ulong /*SteamAPICall_t*/ SubscribePublishedFile( IntPtr ISteamRemoteStorage, PublishedFileId_t /*PublishedFileId_t*/ unPublishedFileId );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamRemoteStorage_EnumerateUserSubscribedFiles" )] internal static extern ulong /*SteamAPICall_t*/ EnumerateUserSubscribedFiles( IntPtr ISteamRemoteStorage, uint /*uint32*/ unStartIndex );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamRemoteStorage_UnsubscribePublishedFile" )] internal static extern ulong /*SteamAPICall_t*/ UnsubscribePublishedFile( IntPtr ISteamRemoteStorage, PublishedFileId_t /*PublishedFileId_t*/ unPublishedFileId );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamRemoteStorage_UpdatePublishedFileSetChangeDescription" )] internal static extern bool /*bool*/ UpdatePublishedFileSetChangeDescription( IntPtr ISteamRemoteStorage, PublishedFileUpdateHandle_t /*PublishedFileUpdateHandle_t*/ updateHandle, string /*const char **/ pchChangeDescription );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamRemoteStorage_GetPublishedItemVoteDetails" )] internal static extern ulong /*SteamAPICall_t*/ GetPublishedItemVoteDetails( IntPtr ISteamRemoteStorage, PublishedFileId_t /*PublishedFileId_t*/ unPublishedFileId );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamRemoteStorage_UpdateUserPublishedItemVote" )] internal static extern ulong /*SteamAPICall_t*/ UpdateUserPublishedItemVote( IntPtr ISteamRemoteStorage, PublishedFileId_t /*PublishedFileId_t*/ unPublishedFileId, bool /*bool*/ bVoteUp );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamRemoteStorage_GetUserPublishedItemVoteDetails" )] internal static extern ulong /*SteamAPICall_t*/ GetUserPublishedItemVoteDetails( IntPtr ISteamRemoteStorage, PublishedFileId_t /*PublishedFileId_t*/ unPublishedFileId );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamRemoteStorage_EnumerateUserSharedWorkshopFiles" )] internal static extern ulong /*SteamAPICall_t*/ EnumerateUserSharedWorkshopFiles( IntPtr ISteamRemoteStorage, CSteamID /*class CSteamID*/ steamId, uint /*uint32*/ unStartIndex , IntPtr /*struct SteamParamStringArray_t **/ pRequiredTags, IntPtr /*struct SteamParamStringArray_t **/ pExcludedTags );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamRemoteStorage_PublishVideo" )] internal static extern ulong /*SteamAPICall_t*/ PublishVideo( IntPtr ISteamRemoteStorage, WorkshopVideoProvider /*EWorkshopVideoProvider*/ eVideoProvider , string /*const char **/ pchVideoAccount , string /*const char **/ pchVideoIdentifier , string /*const char **/ pchPreviewFile , AppId_t /*AppId_t*/ nConsumerAppId, string /*const char **/ pchTitle , string /*const char **/ pchDescription , RemoteStoragePublishedFileVisibility /*ERemoteStoragePublishedFileVisibility*/ eVisibility , IntPtr /*struct SteamParamStringArray_t **/ pTags );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamRemoteStorage_SetUserPublishedFileAction" )] internal static extern ulong /*SteamAPICall_t*/ SetUserPublishedFileAction( IntPtr ISteamRemoteStorage, PublishedFileId_t /*PublishedFileId_t*/ unPublishedFileId, WorkshopFileAction /*EWorkshopFileAction*/ eAction );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamRemoteStorage_EnumeratePublishedFilesByUserAction" )] internal static extern ulong /*SteamAPICall_t*/ EnumeratePublishedFilesByUserAction( IntPtr ISteamRemoteStorage, WorkshopFileAction /*EWorkshopFileAction*/ eAction , uint /*uint32*/ unStartIndex );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamRemoteStorage_EnumeratePublishedWorkshopFiles" )] internal static extern ulong /*SteamAPICall_t*/ EnumeratePublishedWorkshopFiles( IntPtr ISteamRemoteStorage, WorkshopEnumerationType /*EWorkshopEnumerationType*/ eEnumerationType , uint /*uint32*/ unStartIndex , uint /*uint32*/ unCount , uint /*uint32*/ unDays , IntPtr /*struct SteamParamStringArray_t **/ pTags, IntPtr /*struct SteamParamStringArray_t **/ pUserTags );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamRemoteStorage_UGCDownloadToLocation" )] internal static extern ulong /*SteamAPICall_t*/ UGCDownloadToLocation( IntPtr ISteamRemoteStorage, UGCHandle_t /*UGCHandle_t*/ hContent, string /*const char **/ pchLocation , uint /*uint32*/ unPriority );
}
public static unsafe class ISteamUserStats
{
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUserStats_RequestCurrentStats" )] internal static extern bool /*bool*/ RequestCurrentStats( IntPtr ISteamUserStats );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUserStats_GetStat" )] internal static extern bool /*bool*/ GetStat( IntPtr ISteamUserStats, string /*const char **/ pchName , out int /*int32 **/ pData );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUserStats_GetStat0" )] internal static extern bool /*bool*/ GetStat0( IntPtr ISteamUserStats, string /*const char **/ pchName , out float /*float **/ pData );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUserStats_SetStat" )] internal static extern bool /*bool*/ SetStat( IntPtr ISteamUserStats, string /*const char **/ pchName , int /*int32*/ nData );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUserStats_SetStat0" )] internal static extern bool /*bool*/ SetStat0( IntPtr ISteamUserStats, string /*const char **/ pchName , float /*float*/ fData );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUserStats_UpdateAvgRateStat" )] internal static extern bool /*bool*/ UpdateAvgRateStat( IntPtr ISteamUserStats, string /*const char **/ pchName , float /*float*/ flCountThisSession , double /*double*/ dSessionLength );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUserStats_GetAchievement" )] internal static extern bool /*bool*/ GetAchievement( IntPtr ISteamUserStats, string /*const char **/ pchName , out bool /*bool **/ pbAchieved );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUserStats_SetAchievement" )] internal static extern bool /*bool*/ SetAchievement( IntPtr ISteamUserStats, string /*const char **/ pchName );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUserStats_ClearAchievement" )] internal static extern bool /*bool*/ ClearAchievement( IntPtr ISteamUserStats, string /*const char **/ pchName );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUserStats_GetAchievementAndUnlockTime" )] internal static extern bool /*bool*/ GetAchievementAndUnlockTime( IntPtr ISteamUserStats, string /*const char **/ pchName , out bool /*bool **/ pbAchieved, out uint /*uint32 **/ punUnlockTime );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUserStats_StoreStats" )] internal static extern bool /*bool*/ StoreStats( IntPtr ISteamUserStats );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUserStats_GetAchievementIcon" )] internal static extern int /*int*/ GetAchievementIcon( IntPtr ISteamUserStats, string /*const char **/ pchName );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUserStats_GetAchievementDisplayAttribute" )] internal static extern IntPtr GetAchievementDisplayAttribute( IntPtr ISteamUserStats, string /*const char **/ pchName , string /*const char **/ pchKey );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUserStats_IndicateAchievementProgress" )] internal static extern bool /*bool*/ IndicateAchievementProgress( IntPtr ISteamUserStats, string /*const char **/ pchName , uint /*uint32*/ nCurProgress , uint /*uint32*/ nMaxProgress );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUserStats_GetNumAchievements" )] internal static extern uint /*uint32*/ GetNumAchievements( IntPtr ISteamUserStats );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUserStats_GetAchievementName" )] internal static extern IntPtr GetAchievementName( IntPtr ISteamUserStats, uint /*uint32*/ iAchievement );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUserStats_RequestUserStats" )] internal static extern ulong /*SteamAPICall_t*/ RequestUserStats( IntPtr ISteamUserStats, CSteamID /*class CSteamID*/ steamIDUser );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUserStats_GetUserStat" )] internal static extern bool /*bool*/ GetUserStat( IntPtr ISteamUserStats, CSteamID /*class CSteamID*/ steamIDUser, string /*const char **/ pchName , out int /*int32 **/ pData );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUserStats_GetUserStat0" )] internal static extern bool /*bool*/ GetUserStat0( IntPtr ISteamUserStats, CSteamID /*class CSteamID*/ steamIDUser, string /*const char **/ pchName , out float /*float **/ pData );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUserStats_GetUserAchievement" )] internal static extern bool /*bool*/ GetUserAchievement( IntPtr ISteamUserStats, CSteamID /*class CSteamID*/ steamIDUser, string /*const char **/ pchName , out bool /*bool **/ pbAchieved );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUserStats_GetUserAchievementAndUnlockTime" )] internal static extern bool /*bool*/ GetUserAchievementAndUnlockTime( IntPtr ISteamUserStats, CSteamID /*class CSteamID*/ steamIDUser, string /*const char **/ pchName , out bool /*bool **/ pbAchieved, out uint /*uint32 **/ punUnlockTime );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUserStats_ResetAllStats" )] internal static extern bool /*bool*/ ResetAllStats( IntPtr ISteamUserStats, bool /*bool*/ bAchievementsToo );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUserStats_FindOrCreateLeaderboard" )] internal static extern ulong /*SteamAPICall_t*/ FindOrCreateLeaderboard( IntPtr ISteamUserStats, string /*const char **/ pchLeaderboardName , LeaderboardSortMethod /*ELeaderboardSortMethod*/ eLeaderboardSortMethod , LeaderboardDisplayType /*ELeaderboardDisplayType*/ eLeaderboardDisplayType );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUserStats_FindLeaderboard" )] internal static extern ulong /*SteamAPICall_t*/ FindLeaderboard( IntPtr ISteamUserStats, string /*const char **/ pchLeaderboardName );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUserStats_GetLeaderboardName" )] internal static extern IntPtr GetLeaderboardName( IntPtr ISteamUserStats, SteamLeaderboard_t /*SteamLeaderboard_t*/ hSteamLeaderboard );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUserStats_GetLeaderboardEntryCount" )] internal static extern int /*int*/ GetLeaderboardEntryCount( IntPtr ISteamUserStats, SteamLeaderboard_t /*SteamLeaderboard_t*/ hSteamLeaderboard );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUserStats_GetLeaderboardSortMethod" )] internal static extern LeaderboardSortMethod /*ELeaderboardSortMethod*/ GetLeaderboardSortMethod( IntPtr ISteamUserStats, SteamLeaderboard_t /*SteamLeaderboard_t*/ hSteamLeaderboard );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUserStats_GetLeaderboardDisplayType" )] internal static extern LeaderboardDisplayType /*ELeaderboardDisplayType*/ GetLeaderboardDisplayType( IntPtr ISteamUserStats, SteamLeaderboard_t /*SteamLeaderboard_t*/ hSteamLeaderboard );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUserStats_DownloadLeaderboardEntries" )] internal static extern ulong /*SteamAPICall_t*/ DownloadLeaderboardEntries( IntPtr ISteamUserStats, SteamLeaderboard_t /*SteamLeaderboard_t*/ hSteamLeaderboard, LeaderboardDataRequest /*ELeaderboardDataRequest*/ eLeaderboardDataRequest , int /*int*/ nRangeStart , int /*int*/ nRangeEnd );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUserStats_DownloadLeaderboardEntriesForUsers" )] internal static extern ulong /*SteamAPICall_t*/ DownloadLeaderboardEntriesForUsers( IntPtr ISteamUserStats, SteamLeaderboard_t /*SteamLeaderboard_t*/ hSteamLeaderboard, IntPtr /*class CSteamID **/ prgUsers, int /*int*/ cUsers );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUserStats_GetDownloadedLeaderboardEntry" )] internal static extern bool /*bool*/ GetDownloadedLeaderboardEntry( IntPtr ISteamUserStats, SteamLeaderboardEntries_t /*SteamLeaderboardEntries_t*/ hSteamLeaderboardEntries, int /*int*/ index , ref LeaderboardEntry_t /*struct LeaderboardEntry_t **/ pLeaderboardEntry, IntPtr /*int32 **/ pDetails, int /*int*/ cDetailsMax );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUserStats_UploadLeaderboardScore" )] internal static extern ulong /*SteamAPICall_t*/ UploadLeaderboardScore( IntPtr ISteamUserStats, SteamLeaderboard_t /*SteamLeaderboard_t*/ hSteamLeaderboard, LeaderboardUploadScoreMethod /*ELeaderboardUploadScoreMethod*/ eLeaderboardUploadScoreMethod , int /*int32*/ nScore , IntPtr /*const int32 **/ pScoreDetails, int /*int*/ cScoreDetailsCount );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUserStats_AttachLeaderboardUGC" )] internal static extern ulong /*SteamAPICall_t*/ AttachLeaderboardUGC( IntPtr ISteamUserStats, SteamLeaderboard_t /*SteamLeaderboard_t*/ hSteamLeaderboard, UGCHandle_t /*UGCHandle_t*/ hUGC );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUserStats_GetNumberOfCurrentPlayers" )] internal static extern ulong /*SteamAPICall_t*/ GetNumberOfCurrentPlayers( IntPtr ISteamUserStats );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUserStats_RequestGlobalAchievementPercentages" )] internal static extern ulong /*SteamAPICall_t*/ RequestGlobalAchievementPercentages( IntPtr ISteamUserStats );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUserStats_GetMostAchievedAchievementInfo" )] internal static extern int /*int*/ GetMostAchievedAchievementInfo( IntPtr ISteamUserStats, System.Text.StringBuilder /*char **/ pchName, uint /*uint32*/ unNameBufLen , out float /*float **/ pflPercent, out bool /*bool **/ pbAchieved );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUserStats_GetNextMostAchievedAchievementInfo" )] internal static extern int /*int*/ GetNextMostAchievedAchievementInfo( IntPtr ISteamUserStats, int /*int*/ iIteratorPrevious , System.Text.StringBuilder /*char **/ pchName, uint /*uint32*/ unNameBufLen , out float /*float **/ pflPercent, out bool /*bool **/ pbAchieved );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUserStats_GetAchievementAchievedPercent" )] internal static extern bool /*bool*/ GetAchievementAchievedPercent( IntPtr ISteamUserStats, string /*const char **/ pchName , out float /*float **/ pflPercent );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUserStats_RequestGlobalStats" )] internal static extern ulong /*SteamAPICall_t*/ RequestGlobalStats( IntPtr ISteamUserStats, int /*int*/ nHistoryDays );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUserStats_GetGlobalStat" )] internal static extern bool /*bool*/ GetGlobalStat( IntPtr ISteamUserStats, string /*const char **/ pchStatName , out long /*int64 **/ pData );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUserStats_GetGlobalStat0" )] internal static extern bool /*bool*/ GetGlobalStat0( IntPtr ISteamUserStats, string /*const char **/ pchStatName , out double /*double **/ pData );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUserStats_GetGlobalStatHistory" )] internal static extern int /*int32*/ GetGlobalStatHistory( IntPtr ISteamUserStats, string /*const char **/ pchStatName , out long /*int64 **/ pData, uint /*uint32*/ cubData );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUserStats_GetGlobalStatHistory0" )] internal static extern int /*int32*/ GetGlobalStatHistory0( IntPtr ISteamUserStats, string /*const char **/ pchStatName , out double /*double **/ pData, uint /*uint32*/ cubData );
}
public static unsafe class ISteamApps
{
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamApps_BIsSubscribed" )] internal static extern bool /*bool*/ BIsSubscribed( IntPtr ISteamApps );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamApps_BIsLowViolence" )] internal static extern bool /*bool*/ BIsLowViolence( IntPtr ISteamApps );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamApps_BIsCybercafe" )] internal static extern bool /*bool*/ BIsCybercafe( IntPtr ISteamApps );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamApps_BIsVACBanned" )] internal static extern bool /*bool*/ BIsVACBanned( IntPtr ISteamApps );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamApps_GetCurrentGameLanguage" )] internal static extern IntPtr GetCurrentGameLanguage( IntPtr ISteamApps );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamApps_GetAvailableGameLanguages" )] internal static extern IntPtr GetAvailableGameLanguages( IntPtr ISteamApps );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamApps_BIsSubscribedApp" )] internal static extern bool /*bool*/ BIsSubscribedApp( IntPtr ISteamApps, AppId_t /*AppId_t*/ appID );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamApps_BIsDlcInstalled" )] internal static extern bool /*bool*/ BIsDlcInstalled( IntPtr ISteamApps, AppId_t /*AppId_t*/ appID );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamApps_GetEarliestPurchaseUnixTime" )] internal static extern uint /*uint32*/ GetEarliestPurchaseUnixTime( IntPtr ISteamApps, AppId_t /*AppId_t*/ nAppID );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamApps_BIsSubscribedFromFreeWeekend" )] internal static extern bool /*bool*/ BIsSubscribedFromFreeWeekend( IntPtr ISteamApps );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamApps_GetDLCCount" )] internal static extern int /*int*/ GetDLCCount( IntPtr ISteamApps );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamApps_BGetDLCDataByIndex" )] internal static extern bool /*bool*/ BGetDLCDataByIndex( IntPtr ISteamApps, int /*int*/ iDLC , ref AppId_t /*AppId_t **/ pAppID, out bool /*bool **/ pbAvailable, System.Text.StringBuilder /*char **/ pchName, int /*int*/ cchNameBufferSize );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamApps_InstallDLC" )] internal static extern void /*void*/ InstallDLC( IntPtr ISteamApps, AppId_t /*AppId_t*/ nAppID );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamApps_UninstallDLC" )] internal static extern void /*void*/ UninstallDLC( IntPtr ISteamApps, AppId_t /*AppId_t*/ nAppID );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamApps_RequestAppProofOfPurchaseKey" )] internal static extern void /*void*/ RequestAppProofOfPurchaseKey( IntPtr ISteamApps, AppId_t /*AppId_t*/ nAppID );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamApps_GetCurrentBetaName" )] internal static extern bool /*bool*/ GetCurrentBetaName( IntPtr ISteamApps, System.Text.StringBuilder /*char **/ pchName, int /*int*/ cchNameBufferSize );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamApps_MarkContentCorrupt" )] internal static extern bool /*bool*/ MarkContentCorrupt( IntPtr ISteamApps, bool /*bool*/ bMissingFilesOnly );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamApps_GetInstalledDepots" )] internal static extern uint /*uint32*/ GetInstalledDepots( IntPtr ISteamApps, AppId_t /*AppId_t*/ appID, IntPtr /*DepotId_t **/ pvecDepots, uint /*uint32*/ cMaxDepots );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamApps_GetAppInstallDir" )] internal static extern uint /*uint32*/ GetAppInstallDir( IntPtr ISteamApps, AppId_t /*AppId_t*/ appID, System.Text.StringBuilder /*char **/ pchFolder, uint /*uint32*/ cchFolderBufferSize );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamApps_BIsAppInstalled" )] internal static extern bool /*bool*/ BIsAppInstalled( IntPtr ISteamApps, AppId_t /*AppId_t*/ appID );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamApps_GetAppOwner" )] internal static extern ulong /*class CSteamID*/ GetAppOwner( IntPtr ISteamApps );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamApps_GetLaunchQueryParam" )] internal static extern IntPtr GetLaunchQueryParam( IntPtr ISteamApps, string /*const char **/ pchKey );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamApps_GetDlcDownloadProgress" )] internal static extern bool /*bool*/ GetDlcDownloadProgress( IntPtr ISteamApps, AppId_t /*AppId_t*/ nAppID, out ulong /*uint64 **/ punBytesDownloaded, out ulong /*uint64 **/ punBytesTotal );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamApps_GetAppBuildId" )] internal static extern int /*int*/ GetAppBuildId( IntPtr ISteamApps );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamApps_RequestAllProofOfPurchaseKeys" )] internal static extern void /*void*/ RequestAllProofOfPurchaseKeys( IntPtr ISteamApps );
}
public static unsafe class ISteamNetworking
{
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamNetworking_SendP2PPacket" )] internal static extern bool /*bool*/ SendP2PPacket( IntPtr ISteamNetworking, CSteamID /*class CSteamID*/ steamIDRemote, IntPtr /*const void **/ pubData , uint /*uint32*/ cubData , P2PSend /*EP2PSend*/ eP2PSendType , int /*int*/ nChannel );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamNetworking_IsP2PPacketAvailable" )] internal static extern bool /*bool*/ IsP2PPacketAvailable( IntPtr ISteamNetworking, out uint /*uint32 **/ pcubMsgSize, int /*int*/ nChannel );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamNetworking_ReadP2PPacket" )] internal static extern bool /*bool*/ ReadP2PPacket( IntPtr ISteamNetworking, IntPtr /*void **/ pubDest , uint /*uint32*/ cubDest , out uint /*uint32 **/ pcubMsgSize, out CSteamID /*class CSteamID **/ psteamIDRemote, int /*int*/ nChannel );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamNetworking_AcceptP2PSessionWithUser" )] internal static extern bool /*bool*/ AcceptP2PSessionWithUser( IntPtr ISteamNetworking, CSteamID /*class CSteamID*/ steamIDRemote );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamNetworking_CloseP2PSessionWithUser" )] internal static extern bool /*bool*/ CloseP2PSessionWithUser( IntPtr ISteamNetworking, CSteamID /*class CSteamID*/ steamIDRemote );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamNetworking_CloseP2PChannelWithUser" )] internal static extern bool /*bool*/ CloseP2PChannelWithUser( IntPtr ISteamNetworking, CSteamID /*class CSteamID*/ steamIDRemote, int /*int*/ nChannel );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamNetworking_GetP2PSessionState" )] internal static extern bool /*bool*/ GetP2PSessionState( IntPtr ISteamNetworking, CSteamID /*class CSteamID*/ steamIDRemote, ref P2PSessionState_t /*struct P2PSessionState_t **/ pConnectionState );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamNetworking_AllowP2PPacketRelay" )] internal static extern bool /*bool*/ AllowP2PPacketRelay( IntPtr ISteamNetworking, bool /*bool*/ bAllow );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamNetworking_CreateListenSocket" )] internal static extern uint /*SNetListenSocket_t*/ CreateListenSocket( IntPtr ISteamNetworking, int /*int*/ nVirtualP2PPort , uint /*uint32*/ nIP , ushort /*uint16*/ nPort , bool /*bool*/ bAllowUseOfPacketRelay );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamNetworking_CreateP2PConnectionSocket" )] internal static extern uint /*SNetSocket_t*/ CreateP2PConnectionSocket( IntPtr ISteamNetworking, CSteamID /*class CSteamID*/ steamIDTarget, int /*int*/ nVirtualPort , int /*int*/ nTimeoutSec , bool /*bool*/ bAllowUseOfPacketRelay );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamNetworking_CreateConnectionSocket" )] internal static extern uint /*SNetSocket_t*/ CreateConnectionSocket( IntPtr ISteamNetworking, uint /*uint32*/ nIP , ushort /*uint16*/ nPort , int /*int*/ nTimeoutSec );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamNetworking_DestroySocket" )] internal static extern bool /*bool*/ DestroySocket( IntPtr ISteamNetworking, SNetSocket_t /*SNetSocket_t*/ hSocket, bool /*bool*/ bNotifyRemoteEnd );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamNetworking_DestroyListenSocket" )] internal static extern bool /*bool*/ DestroyListenSocket( IntPtr ISteamNetworking, SNetListenSocket_t /*SNetListenSocket_t*/ hSocket, bool /*bool*/ bNotifyRemoteEnd );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamNetworking_SendDataOnSocket" )] internal static extern bool /*bool*/ SendDataOnSocket( IntPtr ISteamNetworking, SNetSocket_t /*SNetSocket_t*/ hSocket, IntPtr /*void **/ pubData , uint /*uint32*/ cubData , bool /*bool*/ bReliable );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamNetworking_IsDataAvailableOnSocket" )] internal static extern bool /*bool*/ IsDataAvailableOnSocket( IntPtr ISteamNetworking, SNetSocket_t /*SNetSocket_t*/ hSocket, out uint /*uint32 **/ pcubMsgSize );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamNetworking_RetrieveDataFromSocket" )] internal static extern bool /*bool*/ RetrieveDataFromSocket( IntPtr ISteamNetworking, SNetSocket_t /*SNetSocket_t*/ hSocket, IntPtr /*void **/ pubDest , uint /*uint32*/ cubDest , out uint /*uint32 **/ pcubMsgSize );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamNetworking_IsDataAvailable" )] internal static extern bool /*bool*/ IsDataAvailable( IntPtr ISteamNetworking, SNetListenSocket_t /*SNetListenSocket_t*/ hListenSocket, out uint /*uint32 **/ pcubMsgSize, ref SNetSocket_t /*SNetSocket_t **/ phSocket );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamNetworking_RetrieveData" )] internal static extern bool /*bool*/ RetrieveData( IntPtr ISteamNetworking, SNetListenSocket_t /*SNetListenSocket_t*/ hListenSocket, IntPtr /*void **/ pubDest , uint /*uint32*/ cubDest , out uint /*uint32 **/ pcubMsgSize, ref SNetSocket_t /*SNetSocket_t **/ phSocket );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamNetworking_GetSocketInfo" )] internal static extern bool /*bool*/ GetSocketInfo( IntPtr ISteamNetworking, SNetSocket_t /*SNetSocket_t*/ hSocket, out CSteamID /*class CSteamID **/ pSteamIDRemote, IntPtr /*int **/ peSocketStatus, out uint /*uint32 **/ punIPRemote, out ushort /*uint16 **/ punPortRemote );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamNetworking_GetListenSocketInfo" )] internal static extern bool /*bool*/ GetListenSocketInfo( IntPtr ISteamNetworking, SNetListenSocket_t /*SNetListenSocket_t*/ hListenSocket, out uint /*uint32 **/ pnIP, out ushort /*uint16 **/ pnPort );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamNetworking_GetSocketConnectionType" )] internal static extern SNetSocketConnectionType /*ESNetSocketConnectionType*/ GetSocketConnectionType( IntPtr ISteamNetworking, SNetSocket_t /*SNetSocket_t*/ hSocket );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamNetworking_GetMaxPacketSize" )] internal static extern int /*int*/ GetMaxPacketSize( IntPtr ISteamNetworking, SNetSocket_t /*SNetSocket_t*/ hSocket );
}
public static unsafe class ISteamScreenshots
{
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamScreenshots_WriteScreenshot" )] internal static extern uint /*ScreenshotHandle*/ WriteScreenshot( IntPtr ISteamScreenshots, IntPtr /*void **/ pubRGB , uint /*uint32*/ cubRGB , int /*int*/ nWidth , int /*int*/ nHeight );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamScreenshots_AddScreenshotToLibrary" )] internal static extern uint /*ScreenshotHandle*/ AddScreenshotToLibrary( IntPtr ISteamScreenshots, string /*const char **/ pchFilename , string /*const char **/ pchThumbnailFilename , int /*int*/ nWidth , int /*int*/ nHeight );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamScreenshots_TriggerScreenshot" )] internal static extern void /*void*/ TriggerScreenshot( IntPtr ISteamScreenshots );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamScreenshots_HookScreenshots" )] internal static extern void /*void*/ HookScreenshots( IntPtr ISteamScreenshots, bool /*bool*/ bHook );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamScreenshots_SetLocation" )] internal static extern bool /*bool*/ SetLocation( IntPtr ISteamScreenshots, ScreenshotHandle /*ScreenshotHandle*/ hScreenshot, string /*const char **/ pchLocation );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamScreenshots_TagUser" )] internal static extern bool /*bool*/ TagUser( IntPtr ISteamScreenshots, ScreenshotHandle /*ScreenshotHandle*/ hScreenshot, CSteamID /*class CSteamID*/ steamID );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamScreenshots_TagPublishedFile" )] internal static extern bool /*bool*/ TagPublishedFile( IntPtr ISteamScreenshots, ScreenshotHandle /*ScreenshotHandle*/ hScreenshot, PublishedFileId_t /*PublishedFileId_t*/ unPublishedFileID );
}
public static unsafe class ISteamMusic
{
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMusic_BIsEnabled" )] internal static extern bool /*bool*/ BIsEnabled( IntPtr ISteamMusic );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMusic_BIsPlaying" )] internal static extern bool /*bool*/ BIsPlaying( IntPtr ISteamMusic );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMusic_GetPlaybackStatus" )] internal static extern AudioPlayback_Status /*AudioPlayback_Status*/ GetPlaybackStatus( IntPtr ISteamMusic );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMusic_Play" )] internal static extern void /*void*/ Play( IntPtr ISteamMusic );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMusic_Pause" )] internal static extern void /*void*/ Pause( IntPtr ISteamMusic );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMusic_PlayPrevious" )] internal static extern void /*void*/ PlayPrevious( IntPtr ISteamMusic );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMusic_PlayNext" )] internal static extern void /*void*/ PlayNext( IntPtr ISteamMusic );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMusic_SetVolume" )] internal static extern void /*void*/ SetVolume( IntPtr ISteamMusic, float /*float*/ flVolume );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMusic_GetVolume" )] internal static extern float /*float*/ GetVolume( IntPtr ISteamMusic );
}
public static unsafe class ISteamMusicRemote
{
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMusicRemote_RegisterSteamMusicRemote" )] internal static extern bool /*bool*/ RegisterSteamMusicRemote( IntPtr ISteamMusicRemote, string /*const char **/ pchName );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMusicRemote_DeregisterSteamMusicRemote" )] internal static extern bool /*bool*/ DeregisterSteamMusicRemote( IntPtr ISteamMusicRemote );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMusicRemote_BIsCurrentMusicRemote" )] internal static extern bool /*bool*/ BIsCurrentMusicRemote( IntPtr ISteamMusicRemote );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMusicRemote_BActivationSuccess" )] internal static extern bool /*bool*/ BActivationSuccess( IntPtr ISteamMusicRemote, bool /*bool*/ bValue );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMusicRemote_SetDisplayName" )] internal static extern bool /*bool*/ SetDisplayName( IntPtr ISteamMusicRemote, string /*const char **/ pchDisplayName );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMusicRemote_SetPNGIcon_64x64" )] internal static extern bool /*bool*/ SetPNGIcon_64x64( IntPtr ISteamMusicRemote, IntPtr /*void **/ pvBuffer , uint /*uint32*/ cbBufferLength );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMusicRemote_EnablePlayPrevious" )] internal static extern bool /*bool*/ EnablePlayPrevious( IntPtr ISteamMusicRemote, bool /*bool*/ bValue );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMusicRemote_EnablePlayNext" )] internal static extern bool /*bool*/ EnablePlayNext( IntPtr ISteamMusicRemote, bool /*bool*/ bValue );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMusicRemote_EnableShuffled" )] internal static extern bool /*bool*/ EnableShuffled( IntPtr ISteamMusicRemote, bool /*bool*/ bValue );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMusicRemote_EnableLooped" )] internal static extern bool /*bool*/ EnableLooped( IntPtr ISteamMusicRemote, bool /*bool*/ bValue );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMusicRemote_EnableQueue" )] internal static extern bool /*bool*/ EnableQueue( IntPtr ISteamMusicRemote, bool /*bool*/ bValue );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMusicRemote_EnablePlaylists" )] internal static extern bool /*bool*/ EnablePlaylists( IntPtr ISteamMusicRemote, bool /*bool*/ bValue );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMusicRemote_UpdatePlaybackStatus" )] internal static extern bool /*bool*/ UpdatePlaybackStatus( IntPtr ISteamMusicRemote, AudioPlayback_Status /*AudioPlayback_Status*/ nStatus );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMusicRemote_UpdateShuffled" )] internal static extern bool /*bool*/ UpdateShuffled( IntPtr ISteamMusicRemote, bool /*bool*/ bValue );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMusicRemote_UpdateLooped" )] internal static extern bool /*bool*/ UpdateLooped( IntPtr ISteamMusicRemote, bool /*bool*/ bValue );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMusicRemote_UpdateVolume" )] internal static extern bool /*bool*/ UpdateVolume( IntPtr ISteamMusicRemote, float /*float*/ flValue );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMusicRemote_CurrentEntryWillChange" )] internal static extern bool /*bool*/ CurrentEntryWillChange( IntPtr ISteamMusicRemote );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMusicRemote_CurrentEntryIsAvailable" )] internal static extern bool /*bool*/ CurrentEntryIsAvailable( IntPtr ISteamMusicRemote, bool /*bool*/ bAvailable );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMusicRemote_UpdateCurrentEntryText" )] internal static extern bool /*bool*/ UpdateCurrentEntryText( IntPtr ISteamMusicRemote, string /*const char **/ pchText );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMusicRemote_UpdateCurrentEntryElapsedSeconds" )] internal static extern bool /*bool*/ UpdateCurrentEntryElapsedSeconds( IntPtr ISteamMusicRemote, int /*int*/ nValue );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMusicRemote_UpdateCurrentEntryCoverArt" )] internal static extern bool /*bool*/ UpdateCurrentEntryCoverArt( IntPtr ISteamMusicRemote, IntPtr /*void **/ pvBuffer , uint /*uint32*/ cbBufferLength );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMusicRemote_CurrentEntryDidChange" )] internal static extern bool /*bool*/ CurrentEntryDidChange( IntPtr ISteamMusicRemote );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMusicRemote_QueueWillChange" )] internal static extern bool /*bool*/ QueueWillChange( IntPtr ISteamMusicRemote );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMusicRemote_ResetQueueEntries" )] internal static extern bool /*bool*/ ResetQueueEntries( IntPtr ISteamMusicRemote );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMusicRemote_SetQueueEntry" )] internal static extern bool /*bool*/ SetQueueEntry( IntPtr ISteamMusicRemote, int /*int*/ nID , int /*int*/ nPosition , string /*const char **/ pchEntryText );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMusicRemote_SetCurrentQueueEntry" )] internal static extern bool /*bool*/ SetCurrentQueueEntry( IntPtr ISteamMusicRemote, int /*int*/ nID );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMusicRemote_QueueDidChange" )] internal static extern bool /*bool*/ QueueDidChange( IntPtr ISteamMusicRemote );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMusicRemote_PlaylistWillChange" )] internal static extern bool /*bool*/ PlaylistWillChange( IntPtr ISteamMusicRemote );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMusicRemote_ResetPlaylistEntries" )] internal static extern bool /*bool*/ ResetPlaylistEntries( IntPtr ISteamMusicRemote );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMusicRemote_SetPlaylistEntry" )] internal static extern bool /*bool*/ SetPlaylistEntry( IntPtr ISteamMusicRemote, int /*int*/ nID , int /*int*/ nPosition , string /*const char **/ pchEntryText );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMusicRemote_SetCurrentPlaylistEntry" )] internal static extern bool /*bool*/ SetCurrentPlaylistEntry( IntPtr ISteamMusicRemote, int /*int*/ nID );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamMusicRemote_PlaylistDidChange" )] internal static extern bool /*bool*/ PlaylistDidChange( IntPtr ISteamMusicRemote );
}
public static unsafe class ISteamHTTP
{
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamHTTP_CreateHTTPRequest" )] internal static extern uint /*HTTPRequestHandle*/ CreateHTTPRequest( IntPtr ISteamHTTP, HTTPMethod /*EHTTPMethod*/ eHTTPRequestMethod , string /*const char **/ pchAbsoluteURL );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamHTTP_SetHTTPRequestContextValue" )] internal static extern bool /*bool*/ SetHTTPRequestContextValue( IntPtr ISteamHTTP, HTTPRequestHandle /*HTTPRequestHandle*/ hRequest, ulong /*uint64*/ ulContextValue );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamHTTP_SetHTTPRequestNetworkActivityTimeout" )] internal static extern bool /*bool*/ SetHTTPRequestNetworkActivityTimeout( IntPtr ISteamHTTP, HTTPRequestHandle /*HTTPRequestHandle*/ hRequest, uint /*uint32*/ unTimeoutSeconds );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamHTTP_SetHTTPRequestHeaderValue" )] internal static extern bool /*bool*/ SetHTTPRequestHeaderValue( IntPtr ISteamHTTP, HTTPRequestHandle /*HTTPRequestHandle*/ hRequest, string /*const char **/ pchHeaderName , string /*const char **/ pchHeaderValue );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamHTTP_SetHTTPRequestGetOrPostParameter" )] internal static extern bool /*bool*/ SetHTTPRequestGetOrPostParameter( IntPtr ISteamHTTP, HTTPRequestHandle /*HTTPRequestHandle*/ hRequest, string /*const char **/ pchParamName , string /*const char **/ pchParamValue );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamHTTP_SendHTTPRequest" )] internal static extern bool /*bool*/ SendHTTPRequest( IntPtr ISteamHTTP, HTTPRequestHandle /*HTTPRequestHandle*/ hRequest, ref SteamAPICall_t /*SteamAPICall_t **/ pCallHandle );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamHTTP_SendHTTPRequestAndStreamResponse" )] internal static extern bool /*bool*/ SendHTTPRequestAndStreamResponse( IntPtr ISteamHTTP, HTTPRequestHandle /*HTTPRequestHandle*/ hRequest, ref SteamAPICall_t /*SteamAPICall_t **/ pCallHandle );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamHTTP_DeferHTTPRequest" )] internal static extern bool /*bool*/ DeferHTTPRequest( IntPtr ISteamHTTP, HTTPRequestHandle /*HTTPRequestHandle*/ hRequest );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamHTTP_PrioritizeHTTPRequest" )] internal static extern bool /*bool*/ PrioritizeHTTPRequest( IntPtr ISteamHTTP, HTTPRequestHandle /*HTTPRequestHandle*/ hRequest );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamHTTP_GetHTTPResponseHeaderSize" )] internal static extern bool /*bool*/ GetHTTPResponseHeaderSize( IntPtr ISteamHTTP, HTTPRequestHandle /*HTTPRequestHandle*/ hRequest, string /*const char **/ pchHeaderName , out uint /*uint32 **/ unResponseHeaderSize );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamHTTP_GetHTTPResponseHeaderValue" )] internal static extern bool /*bool*/ GetHTTPResponseHeaderValue( IntPtr ISteamHTTP, HTTPRequestHandle /*HTTPRequestHandle*/ hRequest, string /*const char **/ pchHeaderName , out byte /*uint8 **/ pHeaderValueBuffer, uint /*uint32*/ unBufferSize );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamHTTP_GetHTTPResponseBodySize" )] internal static extern bool /*bool*/ GetHTTPResponseBodySize( IntPtr ISteamHTTP, HTTPRequestHandle /*HTTPRequestHandle*/ hRequest, out uint /*uint32 **/ unBodySize );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamHTTP_GetHTTPResponseBodyData" )] internal static extern bool /*bool*/ GetHTTPResponseBodyData( IntPtr ISteamHTTP, HTTPRequestHandle /*HTTPRequestHandle*/ hRequest, out byte /*uint8 **/ pBodyDataBuffer, uint /*uint32*/ unBufferSize );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamHTTP_GetHTTPStreamingResponseBodyData" )] internal static extern bool /*bool*/ GetHTTPStreamingResponseBodyData( IntPtr ISteamHTTP, HTTPRequestHandle /*HTTPRequestHandle*/ hRequest, uint /*uint32*/ cOffset , out byte /*uint8 **/ pBodyDataBuffer, uint /*uint32*/ unBufferSize );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamHTTP_ReleaseHTTPRequest" )] internal static extern bool /*bool*/ ReleaseHTTPRequest( IntPtr ISteamHTTP, HTTPRequestHandle /*HTTPRequestHandle*/ hRequest );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamHTTP_GetHTTPDownloadProgressPct" )] internal static extern bool /*bool*/ GetHTTPDownloadProgressPct( IntPtr ISteamHTTP, HTTPRequestHandle /*HTTPRequestHandle*/ hRequest, out float /*float **/ pflPercentOut );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamHTTP_SetHTTPRequestRawPostBody" )] internal static extern bool /*bool*/ SetHTTPRequestRawPostBody( IntPtr ISteamHTTP, HTTPRequestHandle /*HTTPRequestHandle*/ hRequest, string /*const char **/ pchContentType , out byte /*uint8 **/ pubBody, uint /*uint32*/ unBodyLen );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamHTTP_CreateCookieContainer" )] internal static extern uint /*HTTPCookieContainerHandle*/ CreateCookieContainer( IntPtr ISteamHTTP, bool /*bool*/ bAllowResponsesToModify );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamHTTP_ReleaseCookieContainer" )] internal static extern bool /*bool*/ ReleaseCookieContainer( IntPtr ISteamHTTP, HTTPCookieContainerHandle /*HTTPCookieContainerHandle*/ hCookieContainer );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamHTTP_SetCookie" )] internal static extern bool /*bool*/ SetCookie( IntPtr ISteamHTTP, HTTPCookieContainerHandle /*HTTPCookieContainerHandle*/ hCookieContainer, string /*const char **/ pchHost , string /*const char **/ pchUrl , string /*const char **/ pchCookie );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamHTTP_SetHTTPRequestCookieContainer" )] internal static extern bool /*bool*/ SetHTTPRequestCookieContainer( IntPtr ISteamHTTP, HTTPRequestHandle /*HTTPRequestHandle*/ hRequest, HTTPCookieContainerHandle /*HTTPCookieContainerHandle*/ hCookieContainer );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamHTTP_SetHTTPRequestUserAgentInfo" )] internal static extern bool /*bool*/ SetHTTPRequestUserAgentInfo( IntPtr ISteamHTTP, HTTPRequestHandle /*HTTPRequestHandle*/ hRequest, string /*const char **/ pchUserAgentInfo );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamHTTP_SetHTTPRequestRequiresVerifiedCertificate" )] internal static extern bool /*bool*/ SetHTTPRequestRequiresVerifiedCertificate( IntPtr ISteamHTTP, HTTPRequestHandle /*HTTPRequestHandle*/ hRequest, bool /*bool*/ bRequireVerifiedCertificate );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamHTTP_SetHTTPRequestAbsoluteTimeoutMS" )] internal static extern bool /*bool*/ SetHTTPRequestAbsoluteTimeoutMS( IntPtr ISteamHTTP, HTTPRequestHandle /*HTTPRequestHandle*/ hRequest, uint /*uint32*/ unMilliseconds );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamHTTP_GetHTTPRequestWasTimedOut" )] internal static extern bool /*bool*/ GetHTTPRequestWasTimedOut( IntPtr ISteamHTTP, HTTPRequestHandle /*HTTPRequestHandle*/ hRequest, out bool /*bool **/ pbWasTimedOut );
}
public static unsafe class ISteamUnifiedMessages
{
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUnifiedMessages_SendMethod" )] internal static extern ulong /*ClientUnifiedMessageHandle*/ SendMethod( IntPtr ISteamUnifiedMessages, string /*const char **/ pchServiceMethod , IntPtr /*const void **/ pRequestBuffer , uint /*uint32*/ unRequestBufferSize , ulong /*uint64*/ unContext );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUnifiedMessages_GetMethodResponseInfo" )] internal static extern bool /*bool*/ GetMethodResponseInfo( IntPtr ISteamUnifiedMessages, ClientUnifiedMessageHandle /*ClientUnifiedMessageHandle*/ hHandle, out uint /*uint32 **/ punResponseSize, out Result /*EResult **/ peResult );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUnifiedMessages_GetMethodResponseData" )] internal static extern bool /*bool*/ GetMethodResponseData( IntPtr ISteamUnifiedMessages, ClientUnifiedMessageHandle /*ClientUnifiedMessageHandle*/ hHandle, IntPtr /*void **/ pResponseBuffer , uint /*uint32*/ unResponseBufferSize , bool /*bool*/ bAutoRelease );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUnifiedMessages_ReleaseMethod" )] internal static extern bool /*bool*/ ReleaseMethod( IntPtr ISteamUnifiedMessages, ClientUnifiedMessageHandle /*ClientUnifiedMessageHandle*/ hHandle );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUnifiedMessages_SendNotification" )] internal static extern bool /*bool*/ SendNotification( IntPtr ISteamUnifiedMessages, string /*const char **/ pchServiceNotification , IntPtr /*const void **/ pNotificationBuffer , uint /*uint32*/ unNotificationBufferSize );
}
public static unsafe class ISteamController
{
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamController_Init" )] internal static extern bool /*bool*/ Init( IntPtr ISteamController );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamController_Shutdown" )] internal static extern bool /*bool*/ Shutdown( IntPtr ISteamController );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamController_RunFrame" )] internal static extern void /*void*/ RunFrame( IntPtr ISteamController );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamController_GetConnectedControllers" )] internal static extern int /*int*/ GetConnectedControllers( IntPtr ISteamController, IntPtr /*ControllerHandle_t **/ handlesOut );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamController_ShowBindingPanel" )] internal static extern bool /*bool*/ ShowBindingPanel( IntPtr ISteamController, ControllerHandle_t /*ControllerHandle_t*/ controllerHandle );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamController_GetActionSetHandle" )] internal static extern ulong /*ControllerActionSetHandle_t*/ GetActionSetHandle( IntPtr ISteamController, string /*const char **/ pszActionSetName );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamController_ActivateActionSet" )] internal static extern void /*void*/ ActivateActionSet( IntPtr ISteamController, ControllerHandle_t /*ControllerHandle_t*/ controllerHandle, ControllerActionSetHandle_t /*ControllerActionSetHandle_t*/ actionSetHandle );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamController_GetCurrentActionSet" )] internal static extern ulong /*ControllerActionSetHandle_t*/ GetCurrentActionSet( IntPtr ISteamController, ControllerHandle_t /*ControllerHandle_t*/ controllerHandle );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamController_GetDigitalActionHandle" )] internal static extern ulong /*ControllerDigitalActionHandle_t*/ GetDigitalActionHandle( IntPtr ISteamController, string /*const char **/ pszActionName );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamController_GetDigitalActionData" )] internal static extern ControllerDigitalActionData_t /*struct ControllerDigitalActionData_t*/ GetDigitalActionData( IntPtr ISteamController, ControllerHandle_t /*ControllerHandle_t*/ controllerHandle, ControllerDigitalActionHandle_t /*ControllerDigitalActionHandle_t*/ digitalActionHandle );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamController_GetDigitalActionOrigins" )] internal static extern int /*int*/ GetDigitalActionOrigins( IntPtr ISteamController, ControllerHandle_t /*ControllerHandle_t*/ controllerHandle, ControllerActionSetHandle_t /*ControllerActionSetHandle_t*/ actionSetHandle, ControllerDigitalActionHandle_t /*ControllerDigitalActionHandle_t*/ digitalActionHandle, out ControllerActionOrigin /*EControllerActionOrigin **/ originsOut );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamController_GetAnalogActionHandle" )] internal static extern ulong /*ControllerAnalogActionHandle_t*/ GetAnalogActionHandle( IntPtr ISteamController, string /*const char **/ pszActionName );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamController_GetAnalogActionData" )] internal static extern ControllerAnalogActionData_t /*struct ControllerAnalogActionData_t*/ GetAnalogActionData( IntPtr ISteamController, ControllerHandle_t /*ControllerHandle_t*/ controllerHandle, ControllerAnalogActionHandle_t /*ControllerAnalogActionHandle_t*/ analogActionHandle );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamController_GetAnalogActionOrigins" )] internal static extern int /*int*/ GetAnalogActionOrigins( IntPtr ISteamController, ControllerHandle_t /*ControllerHandle_t*/ controllerHandle, ControllerActionSetHandle_t /*ControllerActionSetHandle_t*/ actionSetHandle, ControllerAnalogActionHandle_t /*ControllerAnalogActionHandle_t*/ analogActionHandle, out ControllerActionOrigin /*EControllerActionOrigin **/ originsOut );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamController_StopAnalogActionMomentum" )] internal static extern void /*void*/ StopAnalogActionMomentum( IntPtr ISteamController, ControllerHandle_t /*ControllerHandle_t*/ controllerHandle, ControllerAnalogActionHandle_t /*ControllerAnalogActionHandle_t*/ eAction );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamController_TriggerHapticPulse" )] internal static extern void /*void*/ TriggerHapticPulse( IntPtr ISteamController, ControllerHandle_t /*ControllerHandle_t*/ controllerHandle, SteamControllerPad /*ESteamControllerPad*/ eTargetPad , ushort /*unsigned short*/ usDurationMicroSec );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamController_TriggerRepeatedHapticPulse" )] internal static extern void /*void*/ TriggerRepeatedHapticPulse( IntPtr ISteamController, ControllerHandle_t /*ControllerHandle_t*/ controllerHandle, SteamControllerPad /*ESteamControllerPad*/ eTargetPad , ushort /*unsigned short*/ usDurationMicroSec , ushort /*unsigned short*/ usOffMicroSec , ushort /*unsigned short*/ unRepeat , uint /*unsigned int*/ nFlags );
}
public static unsafe class ISteamUGC
{
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUGC_CreateQueryUserUGCRequest" )] internal static extern ulong /*UGCQueryHandle_t*/ CreateQueryUserUGCRequest( IntPtr ISteamUGC, AccountID_t /*AccountID_t*/ unAccountID, UserUGCList /*EUserUGCList*/ eListType , UGCMatchingUGCType /*EUGCMatchingUGCType*/ eMatchingUGCType , UserUGCListSortOrder /*EUserUGCListSortOrder*/ eSortOrder , AppId_t /*AppId_t*/ nCreatorAppID, AppId_t /*AppId_t*/ nConsumerAppID, uint /*uint32*/ unPage );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUGC_CreateQueryAllUGCRequest" )] internal static extern ulong /*UGCQueryHandle_t*/ CreateQueryAllUGCRequest( IntPtr ISteamUGC, UGCQuery /*EUGCQuery*/ eQueryType , UGCMatchingUGCType /*EUGCMatchingUGCType*/ eMatchingeMatchingUGCTypeFileType , AppId_t /*AppId_t*/ nCreatorAppID, AppId_t /*AppId_t*/ nConsumerAppID, uint /*uint32*/ unPage );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUGC_CreateQueryUGCDetailsRequest" )] internal static extern ulong /*UGCQueryHandle_t*/ CreateQueryUGCDetailsRequest( IntPtr ISteamUGC, IntPtr /*PublishedFileId_t **/ pvecPublishedFileID, uint /*uint32*/ unNumPublishedFileIDs );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUGC_SendQueryUGCRequest" )] internal static extern ulong /*SteamAPICall_t*/ SendQueryUGCRequest( IntPtr ISteamUGC, UGCQueryHandle_t /*UGCQueryHandle_t*/ handle );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUGC_GetQueryUGCResult" )] internal static extern bool /*bool*/ GetQueryUGCResult( IntPtr ISteamUGC, UGCQueryHandle_t /*UGCQueryHandle_t*/ handle, uint /*uint32*/ index , ref SteamUGCDetails_t /*struct SteamUGCDetails_t **/ pDetails );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUGC_GetQueryUGCPreviewURL" )] internal static extern bool /*bool*/ GetQueryUGCPreviewURL( IntPtr ISteamUGC, UGCQueryHandle_t /*UGCQueryHandle_t*/ handle, uint /*uint32*/ index , System.Text.StringBuilder /*char **/ pchURL, uint /*uint32*/ cchURLSize );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUGC_GetQueryUGCMetadata" )] internal static extern bool /*bool*/ GetQueryUGCMetadata( IntPtr ISteamUGC, UGCQueryHandle_t /*UGCQueryHandle_t*/ handle, uint /*uint32*/ index , System.Text.StringBuilder /*char **/ pchMetadata, uint /*uint32*/ cchMetadatasize );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUGC_GetQueryUGCChildren" )] internal static extern bool /*bool*/ GetQueryUGCChildren( IntPtr ISteamUGC, UGCQueryHandle_t /*UGCQueryHandle_t*/ handle, uint /*uint32*/ index , IntPtr /*PublishedFileId_t **/ pvecPublishedFileID, uint /*uint32*/ cMaxEntries );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUGC_GetQueryUGCStatistic" )] internal static extern bool /*bool*/ GetQueryUGCStatistic( IntPtr ISteamUGC, UGCQueryHandle_t /*UGCQueryHandle_t*/ handle, uint /*uint32*/ index , ItemStatistic /*EItemStatistic*/ eStatType , out uint /*uint32 **/ pStatValue );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUGC_GetQueryUGCNumAdditionalPreviews" )] internal static extern uint /*uint32*/ GetQueryUGCNumAdditionalPreviews( IntPtr ISteamUGC, UGCQueryHandle_t /*UGCQueryHandle_t*/ handle, uint /*uint32*/ index );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUGC_GetQueryUGCAdditionalPreview" )] internal static extern bool /*bool*/ GetQueryUGCAdditionalPreview( IntPtr ISteamUGC, UGCQueryHandle_t /*UGCQueryHandle_t*/ handle, uint /*uint32*/ index , uint /*uint32*/ previewIndex , System.Text.StringBuilder /*char **/ pchURLOrVideoID, uint /*uint32*/ cchURLSize , System.Text.StringBuilder /*char **/ pchOriginalFileName, uint /*uint32*/ cchOriginalFileNameSize , out ItemPreviewType /*EItemPreviewType **/ pPreviewType );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUGC_GetQueryUGCNumKeyValueTags" )] internal static extern uint /*uint32*/ GetQueryUGCNumKeyValueTags( IntPtr ISteamUGC, UGCQueryHandle_t /*UGCQueryHandle_t*/ handle, uint /*uint32*/ index );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUGC_GetQueryUGCKeyValueTag" )] internal static extern bool /*bool*/ GetQueryUGCKeyValueTag( IntPtr ISteamUGC, UGCQueryHandle_t /*UGCQueryHandle_t*/ handle, uint /*uint32*/ index , uint /*uint32*/ keyValueTagIndex , System.Text.StringBuilder /*char **/ pchKey, uint /*uint32*/ cchKeySize , System.Text.StringBuilder /*char **/ pchValue, uint /*uint32*/ cchValueSize );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUGC_ReleaseQueryUGCRequest" )] internal static extern bool /*bool*/ ReleaseQueryUGCRequest( IntPtr ISteamUGC, UGCQueryHandle_t /*UGCQueryHandle_t*/ handle );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUGC_AddRequiredTag" )] internal static extern bool /*bool*/ AddRequiredTag( IntPtr ISteamUGC, UGCQueryHandle_t /*UGCQueryHandle_t*/ handle, string /*const char **/ pTagName );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUGC_AddExcludedTag" )] internal static extern bool /*bool*/ AddExcludedTag( IntPtr ISteamUGC, UGCQueryHandle_t /*UGCQueryHandle_t*/ handle, string /*const char **/ pTagName );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUGC_SetReturnKeyValueTags" )] internal static extern bool /*bool*/ SetReturnKeyValueTags( IntPtr ISteamUGC, UGCQueryHandle_t /*UGCQueryHandle_t*/ handle, bool /*bool*/ bReturnKeyValueTags );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUGC_SetReturnLongDescription" )] internal static extern bool /*bool*/ SetReturnLongDescription( IntPtr ISteamUGC, UGCQueryHandle_t /*UGCQueryHandle_t*/ handle, bool /*bool*/ bReturnLongDescription );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUGC_SetReturnMetadata" )] internal static extern bool /*bool*/ SetReturnMetadata( IntPtr ISteamUGC, UGCQueryHandle_t /*UGCQueryHandle_t*/ handle, bool /*bool*/ bReturnMetadata );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUGC_SetReturnChildren" )] internal static extern bool /*bool*/ SetReturnChildren( IntPtr ISteamUGC, UGCQueryHandle_t /*UGCQueryHandle_t*/ handle, bool /*bool*/ bReturnChildren );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUGC_SetReturnAdditionalPreviews" )] internal static extern bool /*bool*/ SetReturnAdditionalPreviews( IntPtr ISteamUGC, UGCQueryHandle_t /*UGCQueryHandle_t*/ handle, bool /*bool*/ bReturnAdditionalPreviews );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUGC_SetReturnTotalOnly" )] internal static extern bool /*bool*/ SetReturnTotalOnly( IntPtr ISteamUGC, UGCQueryHandle_t /*UGCQueryHandle_t*/ handle, bool /*bool*/ bReturnTotalOnly );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUGC_SetLanguage" )] internal static extern bool /*bool*/ SetLanguage( IntPtr ISteamUGC, UGCQueryHandle_t /*UGCQueryHandle_t*/ handle, string /*const char **/ pchLanguage );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUGC_SetAllowCachedResponse" )] internal static extern bool /*bool*/ SetAllowCachedResponse( IntPtr ISteamUGC, UGCQueryHandle_t /*UGCQueryHandle_t*/ handle, uint /*uint32*/ unMaxAgeSeconds );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUGC_SetCloudFileNameFilter" )] internal static extern bool /*bool*/ SetCloudFileNameFilter( IntPtr ISteamUGC, UGCQueryHandle_t /*UGCQueryHandle_t*/ handle, string /*const char **/ pMatchCloudFileName );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUGC_SetMatchAnyTag" )] internal static extern bool /*bool*/ SetMatchAnyTag( IntPtr ISteamUGC, UGCQueryHandle_t /*UGCQueryHandle_t*/ handle, bool /*bool*/ bMatchAnyTag );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUGC_SetSearchText" )] internal static extern bool /*bool*/ SetSearchText( IntPtr ISteamUGC, UGCQueryHandle_t /*UGCQueryHandle_t*/ handle, string /*const char **/ pSearchText );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUGC_SetRankedByTrendDays" )] internal static extern bool /*bool*/ SetRankedByTrendDays( IntPtr ISteamUGC, UGCQueryHandle_t /*UGCQueryHandle_t*/ handle, uint /*uint32*/ unDays );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUGC_AddRequiredKeyValueTag" )] internal static extern bool /*bool*/ AddRequiredKeyValueTag( IntPtr ISteamUGC, UGCQueryHandle_t /*UGCQueryHandle_t*/ handle, string /*const char **/ pKey , string /*const char **/ pValue );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUGC_RequestUGCDetails" )] internal static extern ulong /*SteamAPICall_t*/ RequestUGCDetails( IntPtr ISteamUGC, PublishedFileId_t /*PublishedFileId_t*/ nPublishedFileID, uint /*uint32*/ unMaxAgeSeconds );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUGC_CreateItem" )] internal static extern ulong /*SteamAPICall_t*/ CreateItem( IntPtr ISteamUGC, AppId_t /*AppId_t*/ nConsumerAppId, WorkshopFileType /*EWorkshopFileType*/ eFileType );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUGC_StartItemUpdate" )] internal static extern ulong /*UGCUpdateHandle_t*/ StartItemUpdate( IntPtr ISteamUGC, AppId_t /*AppId_t*/ nConsumerAppId, PublishedFileId_t /*PublishedFileId_t*/ nPublishedFileID );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUGC_SetItemTitle" )] internal static extern bool /*bool*/ SetItemTitle( IntPtr ISteamUGC, UGCUpdateHandle_t /*UGCUpdateHandle_t*/ handle, string /*const char **/ pchTitle );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUGC_SetItemDescription" )] internal static extern bool /*bool*/ SetItemDescription( IntPtr ISteamUGC, UGCUpdateHandle_t /*UGCUpdateHandle_t*/ handle, string /*const char **/ pchDescription );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUGC_SetItemUpdateLanguage" )] internal static extern bool /*bool*/ SetItemUpdateLanguage( IntPtr ISteamUGC, UGCUpdateHandle_t /*UGCUpdateHandle_t*/ handle, string /*const char **/ pchLanguage );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUGC_SetItemMetadata" )] internal static extern bool /*bool*/ SetItemMetadata( IntPtr ISteamUGC, UGCUpdateHandle_t /*UGCUpdateHandle_t*/ handle, string /*const char **/ pchMetaData );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUGC_SetItemVisibility" )] internal static extern bool /*bool*/ SetItemVisibility( IntPtr ISteamUGC, UGCUpdateHandle_t /*UGCUpdateHandle_t*/ handle, RemoteStoragePublishedFileVisibility /*ERemoteStoragePublishedFileVisibility*/ eVisibility );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUGC_SetItemTags" )] internal static extern bool /*bool*/ SetItemTags( IntPtr ISteamUGC, UGCUpdateHandle_t /*UGCUpdateHandle_t*/ updateHandle, IntPtr /*const struct SteamParamStringArray_t **/ pTags );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUGC_SetItemContent" )] internal static extern bool /*bool*/ SetItemContent( IntPtr ISteamUGC, UGCUpdateHandle_t /*UGCUpdateHandle_t*/ handle, string /*const char **/ pszContentFolder );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUGC_SetItemPreview" )] internal static extern bool /*bool*/ SetItemPreview( IntPtr ISteamUGC, UGCUpdateHandle_t /*UGCUpdateHandle_t*/ handle, string /*const char **/ pszPreviewFile );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUGC_RemoveItemKeyValueTags" )] internal static extern bool /*bool*/ RemoveItemKeyValueTags( IntPtr ISteamUGC, UGCUpdateHandle_t /*UGCUpdateHandle_t*/ handle, string /*const char **/ pchKey );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUGC_AddItemKeyValueTag" )] internal static extern bool /*bool*/ AddItemKeyValueTag( IntPtr ISteamUGC, UGCUpdateHandle_t /*UGCUpdateHandle_t*/ handle, string /*const char **/ pchKey , string /*const char **/ pchValue );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUGC_AddItemPreviewFile" )] internal static extern bool /*bool*/ AddItemPreviewFile( IntPtr ISteamUGC, UGCUpdateHandle_t /*UGCUpdateHandle_t*/ handle, string /*const char **/ pszPreviewFile , ItemPreviewType /*EItemPreviewType*/ type );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUGC_AddItemPreviewVideo" )] internal static extern bool /*bool*/ AddItemPreviewVideo( IntPtr ISteamUGC, UGCUpdateHandle_t /*UGCUpdateHandle_t*/ handle, string /*const char **/ pszVideoID );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUGC_UpdateItemPreviewFile" )] internal static extern bool /*bool*/ UpdateItemPreviewFile( IntPtr ISteamUGC, UGCUpdateHandle_t /*UGCUpdateHandle_t*/ handle, uint /*uint32*/ index , string /*const char **/ pszPreviewFile );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUGC_UpdateItemPreviewVideo" )] internal static extern bool /*bool*/ UpdateItemPreviewVideo( IntPtr ISteamUGC, UGCUpdateHandle_t /*UGCUpdateHandle_t*/ handle, uint /*uint32*/ index , string /*const char **/ pszVideoID );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUGC_RemoveItemPreview" )] internal static extern bool /*bool*/ RemoveItemPreview( IntPtr ISteamUGC, UGCUpdateHandle_t /*UGCUpdateHandle_t*/ handle, uint /*uint32*/ index );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUGC_SubmitItemUpdate" )] internal static extern ulong /*SteamAPICall_t*/ SubmitItemUpdate( IntPtr ISteamUGC, UGCUpdateHandle_t /*UGCUpdateHandle_t*/ handle, string /*const char **/ pchChangeNote );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUGC_GetItemUpdateProgress" )] internal static extern ItemUpdateStatus /*EItemUpdateStatus*/ GetItemUpdateProgress( IntPtr ISteamUGC, UGCUpdateHandle_t /*UGCUpdateHandle_t*/ handle, out ulong /*uint64 **/ punBytesProcessed, out ulong /*uint64 **/ punBytesTotal );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUGC_SetUserItemVote" )] internal static extern ulong /*SteamAPICall_t*/ SetUserItemVote( IntPtr ISteamUGC, PublishedFileId_t /*PublishedFileId_t*/ nPublishedFileID, bool /*bool*/ bVoteUp );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUGC_GetUserItemVote" )] internal static extern ulong /*SteamAPICall_t*/ GetUserItemVote( IntPtr ISteamUGC, PublishedFileId_t /*PublishedFileId_t*/ nPublishedFileID );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUGC_AddItemToFavorites" )] internal static extern ulong /*SteamAPICall_t*/ AddItemToFavorites( IntPtr ISteamUGC, AppId_t /*AppId_t*/ nAppId, PublishedFileId_t /*PublishedFileId_t*/ nPublishedFileID );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUGC_RemoveItemFromFavorites" )] internal static extern ulong /*SteamAPICall_t*/ RemoveItemFromFavorites( IntPtr ISteamUGC, AppId_t /*AppId_t*/ nAppId, PublishedFileId_t /*PublishedFileId_t*/ nPublishedFileID );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUGC_SubscribeItem" )] internal static extern ulong /*SteamAPICall_t*/ SubscribeItem( IntPtr ISteamUGC, PublishedFileId_t /*PublishedFileId_t*/ nPublishedFileID );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUGC_UnsubscribeItem" )] internal static extern ulong /*SteamAPICall_t*/ UnsubscribeItem( IntPtr ISteamUGC, PublishedFileId_t /*PublishedFileId_t*/ nPublishedFileID );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUGC_GetNumSubscribedItems" )] internal static extern uint /*uint32*/ GetNumSubscribedItems( IntPtr ISteamUGC );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUGC_GetSubscribedItems" )] internal static extern uint /*uint32*/ GetSubscribedItems( IntPtr ISteamUGC, IntPtr /*PublishedFileId_t **/ pvecPublishedFileID, uint /*uint32*/ cMaxEntries );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUGC_GetItemState" )] internal static extern uint /*uint32*/ GetItemState( IntPtr ISteamUGC, PublishedFileId_t /*PublishedFileId_t*/ nPublishedFileID );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUGC_GetItemInstallInfo" )] internal static extern bool /*bool*/ GetItemInstallInfo( IntPtr ISteamUGC, PublishedFileId_t /*PublishedFileId_t*/ nPublishedFileID, out ulong /*uint64 **/ punSizeOnDisk, System.Text.StringBuilder /*char **/ pchFolder, uint /*uint32*/ cchFolderSize , out uint /*uint32 **/ punTimeStamp );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUGC_GetItemDownloadInfo" )] internal static extern bool /*bool*/ GetItemDownloadInfo( IntPtr ISteamUGC, PublishedFileId_t /*PublishedFileId_t*/ nPublishedFileID, out ulong /*uint64 **/ punBytesDownloaded, out ulong /*uint64 **/ punBytesTotal );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUGC_DownloadItem" )] internal static extern bool /*bool*/ DownloadItem( IntPtr ISteamUGC, PublishedFileId_t /*PublishedFileId_t*/ nPublishedFileID, bool /*bool*/ bHighPriority );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUGC_BInitWorkshopForGameServer" )] internal static extern bool /*bool*/ BInitWorkshopForGameServer( IntPtr ISteamUGC, DepotId_t /*DepotId_t*/ unWorkshopDepotID, string /*const char **/ pszFolder );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUGC_SuspendDownloads" )] internal static extern void /*void*/ SuspendDownloads( IntPtr ISteamUGC, bool /*bool*/ bSuspend );
}
public static unsafe class ISteamAppList
{
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamAppList_GetNumInstalledApps" )] internal static extern uint /*uint32*/ GetNumInstalledApps( IntPtr ISteamAppList );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamAppList_GetInstalledApps" )] internal static extern uint /*uint32*/ GetInstalledApps( IntPtr ISteamAppList, IntPtr /*AppId_t **/ pvecAppID, uint /*uint32*/ unMaxAppIDs );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamAppList_GetAppName" )] internal static extern int /*int*/ GetAppName( IntPtr ISteamAppList, AppId_t /*AppId_t*/ nAppID, System.Text.StringBuilder /*char **/ pchName, int /*int*/ cchNameMax );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamAppList_GetAppInstallDir" )] internal static extern int /*int*/ GetAppInstallDir( IntPtr ISteamAppList, AppId_t /*AppId_t*/ nAppID, System.Text.StringBuilder /*char **/ pchDirectory, int /*int*/ cchNameMax );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamAppList_GetAppBuildId" )] internal static extern int /*int*/ GetAppBuildId( IntPtr ISteamAppList, AppId_t /*AppId_t*/ nAppID );
}
public static unsafe class ISteamHTMLSurface
{
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamHTMLSurface_DestructISteamHTMLSurface" )] internal static extern void /*void*/ DestructISteamHTMLSurface( IntPtr ISteamHTMLSurface );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamHTMLSurface_Init" )] internal static extern bool /*bool*/ Init( IntPtr ISteamHTMLSurface );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamHTMLSurface_Shutdown" )] internal static extern bool /*bool*/ Shutdown( IntPtr ISteamHTMLSurface );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamHTMLSurface_CreateBrowser" )] internal static extern ulong /*SteamAPICall_t*/ CreateBrowser( IntPtr ISteamHTMLSurface, string /*const char **/ pchUserAgent , string /*const char **/ pchUserCSS );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamHTMLSurface_RemoveBrowser" )] internal static extern void /*void*/ RemoveBrowser( IntPtr ISteamHTMLSurface, HHTMLBrowser /*HHTMLBrowser*/ unBrowserHandle );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamHTMLSurface_LoadURL" )] internal static extern void /*void*/ LoadURL( IntPtr ISteamHTMLSurface, HHTMLBrowser /*HHTMLBrowser*/ unBrowserHandle, string /*const char **/ pchURL , string /*const char **/ pchPostData );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamHTMLSurface_SetSize" )] internal static extern void /*void*/ SetSize( IntPtr ISteamHTMLSurface, HHTMLBrowser /*HHTMLBrowser*/ unBrowserHandle, uint /*uint32*/ unWidth , uint /*uint32*/ unHeight );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamHTMLSurface_StopLoad" )] internal static extern void /*void*/ StopLoad( IntPtr ISteamHTMLSurface, HHTMLBrowser /*HHTMLBrowser*/ unBrowserHandle );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamHTMLSurface_Reload" )] internal static extern void /*void*/ Reload( IntPtr ISteamHTMLSurface, HHTMLBrowser /*HHTMLBrowser*/ unBrowserHandle );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamHTMLSurface_GoBack" )] internal static extern void /*void*/ GoBack( IntPtr ISteamHTMLSurface, HHTMLBrowser /*HHTMLBrowser*/ unBrowserHandle );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamHTMLSurface_GoForward" )] internal static extern void /*void*/ GoForward( IntPtr ISteamHTMLSurface, HHTMLBrowser /*HHTMLBrowser*/ unBrowserHandle );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamHTMLSurface_AddHeader" )] internal static extern void /*void*/ AddHeader( IntPtr ISteamHTMLSurface, HHTMLBrowser /*HHTMLBrowser*/ unBrowserHandle, string /*const char **/ pchKey , string /*const char **/ pchValue );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamHTMLSurface_ExecuteJavascript" )] internal static extern void /*void*/ ExecuteJavascript( IntPtr ISteamHTMLSurface, HHTMLBrowser /*HHTMLBrowser*/ unBrowserHandle, string /*const char **/ pchScript );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamHTMLSurface_MouseUp" )] internal static extern void /*void*/ MouseUp( IntPtr ISteamHTMLSurface, HHTMLBrowser /*HHTMLBrowser*/ unBrowserHandle, HTMLMouseButton /*ISteamHTMLSurface::EHTMLMouseButton*/ eMouseButton );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamHTMLSurface_MouseDown" )] internal static extern void /*void*/ MouseDown( IntPtr ISteamHTMLSurface, HHTMLBrowser /*HHTMLBrowser*/ unBrowserHandle, HTMLMouseButton /*ISteamHTMLSurface::EHTMLMouseButton*/ eMouseButton );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamHTMLSurface_MouseDoubleClick" )] internal static extern void /*void*/ MouseDoubleClick( IntPtr ISteamHTMLSurface, HHTMLBrowser /*HHTMLBrowser*/ unBrowserHandle, HTMLMouseButton /*ISteamHTMLSurface::EHTMLMouseButton*/ eMouseButton );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamHTMLSurface_MouseMove" )] internal static extern void /*void*/ MouseMove( IntPtr ISteamHTMLSurface, HHTMLBrowser /*HHTMLBrowser*/ unBrowserHandle, int /*int*/ x , int /*int*/ y );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamHTMLSurface_MouseWheel" )] internal static extern void /*void*/ MouseWheel( IntPtr ISteamHTMLSurface, HHTMLBrowser /*HHTMLBrowser*/ unBrowserHandle, int /*int32*/ nDelta );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamHTMLSurface_KeyDown" )] internal static extern void /*void*/ KeyDown( IntPtr ISteamHTMLSurface, HHTMLBrowser /*HHTMLBrowser*/ unBrowserHandle, uint /*uint32*/ nNativeKeyCode , HTMLKeyModifiers /*ISteamHTMLSurface::EHTMLKeyModifiers*/ eHTMLKeyModifiers );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamHTMLSurface_KeyUp" )] internal static extern void /*void*/ KeyUp( IntPtr ISteamHTMLSurface, HHTMLBrowser /*HHTMLBrowser*/ unBrowserHandle, uint /*uint32*/ nNativeKeyCode , HTMLKeyModifiers /*ISteamHTMLSurface::EHTMLKeyModifiers*/ eHTMLKeyModifiers );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamHTMLSurface_KeyChar" )] internal static extern void /*void*/ KeyChar( IntPtr ISteamHTMLSurface, HHTMLBrowser /*HHTMLBrowser*/ unBrowserHandle, uint /*uint32*/ cUnicodeChar , HTMLKeyModifiers /*ISteamHTMLSurface::EHTMLKeyModifiers*/ eHTMLKeyModifiers );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamHTMLSurface_SetHorizontalScroll" )] internal static extern void /*void*/ SetHorizontalScroll( IntPtr ISteamHTMLSurface, HHTMLBrowser /*HHTMLBrowser*/ unBrowserHandle, uint /*uint32*/ nAbsolutePixelScroll );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamHTMLSurface_SetVerticalScroll" )] internal static extern void /*void*/ SetVerticalScroll( IntPtr ISteamHTMLSurface, HHTMLBrowser /*HHTMLBrowser*/ unBrowserHandle, uint /*uint32*/ nAbsolutePixelScroll );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamHTMLSurface_SetKeyFocus" )] internal static extern void /*void*/ SetKeyFocus( IntPtr ISteamHTMLSurface, HHTMLBrowser /*HHTMLBrowser*/ unBrowserHandle, bool /*bool*/ bHasKeyFocus );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamHTMLSurface_ViewSource" )] internal static extern void /*void*/ ViewSource( IntPtr ISteamHTMLSurface, HHTMLBrowser /*HHTMLBrowser*/ unBrowserHandle );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamHTMLSurface_CopyToClipboard" )] internal static extern void /*void*/ CopyToClipboard( IntPtr ISteamHTMLSurface, HHTMLBrowser /*HHTMLBrowser*/ unBrowserHandle );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamHTMLSurface_PasteFromClipboard" )] internal static extern void /*void*/ PasteFromClipboard( IntPtr ISteamHTMLSurface, HHTMLBrowser /*HHTMLBrowser*/ unBrowserHandle );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamHTMLSurface_Find" )] internal static extern void /*void*/ Find( IntPtr ISteamHTMLSurface, HHTMLBrowser /*HHTMLBrowser*/ unBrowserHandle, string /*const char **/ pchSearchStr , bool /*bool*/ bCurrentlyInFind , bool /*bool*/ bReverse );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamHTMLSurface_StopFind" )] internal static extern void /*void*/ StopFind( IntPtr ISteamHTMLSurface, HHTMLBrowser /*HHTMLBrowser*/ unBrowserHandle );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamHTMLSurface_GetLinkAtPosition" )] internal static extern void /*void*/ GetLinkAtPosition( IntPtr ISteamHTMLSurface, HHTMLBrowser /*HHTMLBrowser*/ unBrowserHandle, int /*int*/ x , int /*int*/ y );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamHTMLSurface_SetCookie" )] internal static extern void /*void*/ SetCookie( IntPtr ISteamHTMLSurface, string /*const char **/ pchHostname , string /*const char **/ pchKey , string /*const char **/ pchValue , string /*const char **/ pchPath , RTime32 /*RTime32*/ nExpires, bool /*bool*/ bSecure , bool /*bool*/ bHTTPOnly );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamHTMLSurface_SetPageScaleFactor" )] internal static extern void /*void*/ SetPageScaleFactor( IntPtr ISteamHTMLSurface, HHTMLBrowser /*HHTMLBrowser*/ unBrowserHandle, float /*float*/ flZoom , int /*int*/ nPointX , int /*int*/ nPointY );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamHTMLSurface_SetBackgroundMode" )] internal static extern void /*void*/ SetBackgroundMode( IntPtr ISteamHTMLSurface, HHTMLBrowser /*HHTMLBrowser*/ unBrowserHandle, bool /*bool*/ bBackgroundMode );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamHTMLSurface_AllowStartRequest" )] internal static extern void /*void*/ AllowStartRequest( IntPtr ISteamHTMLSurface, HHTMLBrowser /*HHTMLBrowser*/ unBrowserHandle, bool /*bool*/ bAllowed );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamHTMLSurface_JSDialogResponse" )] internal static extern void /*void*/ JSDialogResponse( IntPtr ISteamHTMLSurface, HHTMLBrowser /*HHTMLBrowser*/ unBrowserHandle, bool /*bool*/ bResult );
}
public static unsafe class ISteamInventory
{
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamInventory_GetResultStatus" )] internal static extern Result /*EResult*/ GetResultStatus( IntPtr ISteamInventory, SteamInventoryResult_t /*SteamInventoryResult_t*/ resultHandle );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamInventory_GetResultItems" )] internal static extern bool /*bool*/ GetResultItems( IntPtr ISteamInventory, SteamInventoryResult_t /*SteamInventoryResult_t*/ resultHandle, IntPtr /*struct SteamItemDetails_t **/ pOutItemsArray, out uint /*uint32 **/ punOutItemsArraySize );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamInventory_GetResultTimestamp" )] internal static extern uint /*uint32*/ GetResultTimestamp( IntPtr ISteamInventory, SteamInventoryResult_t /*SteamInventoryResult_t*/ resultHandle );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamInventory_CheckResultSteamID" )] internal static extern bool /*bool*/ CheckResultSteamID( IntPtr ISteamInventory, SteamInventoryResult_t /*SteamInventoryResult_t*/ resultHandle, CSteamID /*class CSteamID*/ steamIDExpected );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamInventory_DestroyResult" )] internal static extern void /*void*/ DestroyResult( IntPtr ISteamInventory, SteamInventoryResult_t /*SteamInventoryResult_t*/ resultHandle );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamInventory_GetAllItems" )] internal static extern bool /*bool*/ GetAllItems( IntPtr ISteamInventory, ref SteamInventoryResult_t /*SteamInventoryResult_t **/ pResultHandle );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamInventory_GetItemsByID" )] internal static extern bool /*bool*/ GetItemsByID( IntPtr ISteamInventory, ref SteamInventoryResult_t /*SteamInventoryResult_t **/ pResultHandle, IntPtr /*const SteamItemInstanceID_t **/ pInstanceIDs, uint /*uint32*/ unCountInstanceIDs );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamInventory_SerializeResult" )] internal static extern bool /*bool*/ SerializeResult( IntPtr ISteamInventory, SteamInventoryResult_t /*SteamInventoryResult_t*/ resultHandle, IntPtr /*void **/ pOutBuffer , out uint /*uint32 **/ punOutBufferSize );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamInventory_DeserializeResult" )] internal static extern bool /*bool*/ DeserializeResult( IntPtr ISteamInventory, ref SteamInventoryResult_t /*SteamInventoryResult_t **/ pOutResultHandle, IntPtr /*const void **/ pBuffer , uint /*uint32*/ unBufferSize , bool /*bool*/ bRESERVED_MUST_BE_FALSE );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamInventory_GenerateItems" )] internal static extern bool /*bool*/ GenerateItems( IntPtr ISteamInventory, ref SteamInventoryResult_t /*SteamInventoryResult_t **/ pResultHandle, IntPtr /*const SteamItemDef_t **/ pArrayItemDefs, out uint /*const uint32 **/ punArrayQuantity, uint /*uint32*/ unArrayLength );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamInventory_GrantPromoItems" )] internal static extern bool /*bool*/ GrantPromoItems( IntPtr ISteamInventory, ref SteamInventoryResult_t /*SteamInventoryResult_t **/ pResultHandle );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamInventory_AddPromoItem" )] internal static extern bool /*bool*/ AddPromoItem( IntPtr ISteamInventory, ref SteamInventoryResult_t /*SteamInventoryResult_t **/ pResultHandle, SteamItemDef_t /*SteamItemDef_t*/ itemDef );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamInventory_AddPromoItems" )] internal static extern bool /*bool*/ AddPromoItems( IntPtr ISteamInventory, ref SteamInventoryResult_t /*SteamInventoryResult_t **/ pResultHandle, IntPtr /*const SteamItemDef_t **/ pArrayItemDefs, uint /*uint32*/ unArrayLength );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamInventory_ConsumeItem" )] internal static extern bool /*bool*/ ConsumeItem( IntPtr ISteamInventory, ref SteamInventoryResult_t /*SteamInventoryResult_t **/ pResultHandle, SteamItemInstanceID_t /*SteamItemInstanceID_t*/ itemConsume, uint /*uint32*/ unQuantity );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamInventory_ExchangeItems" )] internal static extern bool /*bool*/ ExchangeItems( IntPtr ISteamInventory, ref SteamInventoryResult_t /*SteamInventoryResult_t **/ pResultHandle, ref SteamItemDef_t /*const SteamItemDef_t **/ pArrayGenerate, out uint /*const uint32 **/ punArrayGenerateQuantity, uint /*uint32*/ unArrayGenerateLength , IntPtr /*const SteamItemInstanceID_t **/ pArrayDestroy, IntPtr /*const uint32 **/ punArrayDestroyQuantity, uint /*uint32*/ unArrayDestroyLength );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamInventory_TransferItemQuantity" )] internal static extern bool /*bool*/ TransferItemQuantity( IntPtr ISteamInventory, ref SteamInventoryResult_t /*SteamInventoryResult_t **/ pResultHandle, SteamItemInstanceID_t /*SteamItemInstanceID_t*/ itemIdSource, uint /*uint32*/ unQuantity , SteamItemInstanceID_t /*SteamItemInstanceID_t*/ itemIdDest );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamInventory_SendItemDropHeartbeat" )] internal static extern void /*void*/ SendItemDropHeartbeat( IntPtr ISteamInventory );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamInventory_TriggerItemDrop" )] internal static extern bool /*bool*/ TriggerItemDrop( IntPtr ISteamInventory, ref SteamInventoryResult_t /*SteamInventoryResult_t **/ pResultHandle, SteamItemDef_t /*SteamItemDef_t*/ dropListDefinition );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamInventory_TradeItems" )] internal static extern bool /*bool*/ TradeItems( IntPtr ISteamInventory, ref SteamInventoryResult_t /*SteamInventoryResult_t **/ pResultHandle, CSteamID /*class CSteamID*/ steamIDTradePartner, ref SteamItemInstanceID_t /*const SteamItemInstanceID_t **/ pArrayGive, out uint /*const uint32 **/ pArrayGiveQuantity, uint /*uint32*/ nArrayGiveLength , ref SteamItemInstanceID_t /*const SteamItemInstanceID_t **/ pArrayGet, out uint /*const uint32 **/ pArrayGetQuantity, uint /*uint32*/ nArrayGetLength );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamInventory_LoadItemDefinitions" )] internal static extern bool /*bool*/ LoadItemDefinitions( IntPtr ISteamInventory );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamInventory_GetItemDefinitionIDs" )] internal static extern bool /*bool*/ GetItemDefinitionIDs( IntPtr ISteamInventory, IntPtr /*SteamItemDef_t **/ pItemDefIDs, out uint /*uint32 **/ punItemDefIDsArraySize );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamInventory_GetItemDefinitionProperty" )] internal static extern bool /*bool*/ GetItemDefinitionProperty( IntPtr ISteamInventory, SteamItemDef_t /*SteamItemDef_t*/ iDefinition, string /*const char **/ pchPropertyName , System.Text.StringBuilder /*char **/ pchValueBuffer, out uint /*uint32 **/ punValueBufferSize );
}
public static unsafe class ISteamVideo
{
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamVideo_GetVideoURL" )] internal static extern void /*void*/ GetVideoURL( IntPtr ISteamVideo, AppId_t /*AppId_t*/ unVideoAppID );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamVideo_IsBroadcasting" )] internal static extern bool /*bool*/ IsBroadcasting( IntPtr ISteamVideo, IntPtr /*int **/ pnNumViewers );
}
public static unsafe class ISteamGameServer
{
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamGameServer_InitGameServer" )] internal static extern bool /*bool*/ InitGameServer( IntPtr ISteamGameServer, uint /*uint32*/ unIP , ushort /*uint16*/ usGamePort , ushort /*uint16*/ usQueryPort , uint /*uint32*/ unFlags , AppId_t /*AppId_t*/ nGameAppId, string /*const char **/ pchVersionString );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamGameServer_SetProduct" )] internal static extern void /*void*/ SetProduct( IntPtr ISteamGameServer, string /*const char **/ pszProduct );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamGameServer_SetGameDescription" )] internal static extern void /*void*/ SetGameDescription( IntPtr ISteamGameServer, string /*const char **/ pszGameDescription );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamGameServer_SetModDir" )] internal static extern void /*void*/ SetModDir( IntPtr ISteamGameServer, string /*const char **/ pszModDir );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamGameServer_SetDedicatedServer" )] internal static extern void /*void*/ SetDedicatedServer( IntPtr ISteamGameServer, bool /*bool*/ bDedicated );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamGameServer_LogOn" )] internal static extern void /*void*/ LogOn( IntPtr ISteamGameServer, string /*const char **/ pszToken );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamGameServer_LogOnAnonymous" )] internal static extern void /*void*/ LogOnAnonymous( IntPtr ISteamGameServer );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamGameServer_LogOff" )] internal static extern void /*void*/ LogOff( IntPtr ISteamGameServer );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamGameServer_BLoggedOn" )] internal static extern bool /*bool*/ BLoggedOn( IntPtr ISteamGameServer );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamGameServer_BSecure" )] internal static extern bool /*bool*/ BSecure( IntPtr ISteamGameServer );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamGameServer_GetSteamID" )] internal static extern ulong /*class CSteamID*/ GetSteamID( IntPtr ISteamGameServer );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamGameServer_WasRestartRequested" )] internal static extern bool /*bool*/ WasRestartRequested( IntPtr ISteamGameServer );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamGameServer_SetMaxPlayerCount" )] internal static extern void /*void*/ SetMaxPlayerCount( IntPtr ISteamGameServer, int /*int*/ cPlayersMax );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamGameServer_SetBotPlayerCount" )] internal static extern void /*void*/ SetBotPlayerCount( IntPtr ISteamGameServer, int /*int*/ cBotplayers );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamGameServer_SetServerName" )] internal static extern void /*void*/ SetServerName( IntPtr ISteamGameServer, string /*const char **/ pszServerName );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamGameServer_SetMapName" )] internal static extern void /*void*/ SetMapName( IntPtr ISteamGameServer, string /*const char **/ pszMapName );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamGameServer_SetPasswordProtected" )] internal static extern void /*void*/ SetPasswordProtected( IntPtr ISteamGameServer, bool /*bool*/ bPasswordProtected );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamGameServer_SetSpectatorPort" )] internal static extern void /*void*/ SetSpectatorPort( IntPtr ISteamGameServer, ushort /*uint16*/ unSpectatorPort );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamGameServer_SetSpectatorServerName" )] internal static extern void /*void*/ SetSpectatorServerName( IntPtr ISteamGameServer, string /*const char **/ pszSpectatorServerName );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamGameServer_ClearAllKeyValues" )] internal static extern void /*void*/ ClearAllKeyValues( IntPtr ISteamGameServer );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamGameServer_SetKeyValue" )] internal static extern void /*void*/ SetKeyValue( IntPtr ISteamGameServer, string /*const char **/ pKey , string /*const char **/ pValue );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamGameServer_SetGameTags" )] internal static extern void /*void*/ SetGameTags( IntPtr ISteamGameServer, string /*const char **/ pchGameTags );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamGameServer_SetGameData" )] internal static extern void /*void*/ SetGameData( IntPtr ISteamGameServer, string /*const char **/ pchGameData );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamGameServer_SetRegion" )] internal static extern void /*void*/ SetRegion( IntPtr ISteamGameServer, string /*const char **/ pszRegion );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamGameServer_SendUserConnectAndAuthenticate" )] internal static extern bool /*bool*/ SendUserConnectAndAuthenticate( IntPtr ISteamGameServer, uint /*uint32*/ unIPClient , IntPtr /*const void **/ pvAuthBlob , uint /*uint32*/ cubAuthBlobSize , out CSteamID /*class CSteamID **/ pSteamIDUser );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamGameServer_CreateUnauthenticatedUserConnection" )] internal static extern ulong /*class CSteamID*/ CreateUnauthenticatedUserConnection( IntPtr ISteamGameServer );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamGameServer_SendUserDisconnect" )] internal static extern void /*void*/ SendUserDisconnect( IntPtr ISteamGameServer, CSteamID /*class CSteamID*/ steamIDUser );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamGameServer_BUpdateUserData" )] internal static extern bool /*bool*/ BUpdateUserData( IntPtr ISteamGameServer, CSteamID /*class CSteamID*/ steamIDUser, string /*const char **/ pchPlayerName , uint /*uint32*/ uScore );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamGameServer_GetAuthSessionTicket" )] internal static extern uint /*HAuthTicket*/ GetAuthSessionTicket( IntPtr ISteamGameServer, IntPtr /*void **/ pTicket , int /*int*/ cbMaxTicket , out uint /*uint32 **/ pcbTicket );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamGameServer_BeginAuthSession" )] internal static extern BeginAuthSessionResult /*EBeginAuthSessionResult*/ BeginAuthSession( IntPtr ISteamGameServer, IntPtr /*const void **/ pAuthTicket , int /*int*/ cbAuthTicket , CSteamID /*class CSteamID*/ steamID );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamGameServer_EndAuthSession" )] internal static extern void /*void*/ EndAuthSession( IntPtr ISteamGameServer, CSteamID /*class CSteamID*/ steamID );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamGameServer_CancelAuthTicket" )] internal static extern void /*void*/ CancelAuthTicket( IntPtr ISteamGameServer, HAuthTicket /*HAuthTicket*/ hAuthTicket );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamGameServer_UserHasLicenseForApp" )] internal static extern UserHasLicenseForAppResult /*EUserHasLicenseForAppResult*/ UserHasLicenseForApp( IntPtr ISteamGameServer, CSteamID /*class CSteamID*/ steamID, AppId_t /*AppId_t*/ appID );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamGameServer_RequestUserGroupStatus" )] internal static extern bool /*bool*/ RequestUserGroupStatus( IntPtr ISteamGameServer, CSteamID /*class CSteamID*/ steamIDUser, CSteamID /*class CSteamID*/ steamIDGroup );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamGameServer_GetGameplayStats" )] internal static extern void /*void*/ GetGameplayStats( IntPtr ISteamGameServer );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamGameServer_GetServerReputation" )] internal static extern ulong /*SteamAPICall_t*/ GetServerReputation( IntPtr ISteamGameServer );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamGameServer_GetPublicIP" )] internal static extern uint /*uint32*/ GetPublicIP( IntPtr ISteamGameServer );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamGameServer_HandleIncomingPacket" )] internal static extern bool /*bool*/ HandleIncomingPacket( IntPtr ISteamGameServer, IntPtr /*const void **/ pData , int /*int*/ cbData , uint /*uint32*/ srcIP , ushort /*uint16*/ srcPort );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamGameServer_GetNextOutgoingPacket" )] internal static extern int /*int*/ GetNextOutgoingPacket( IntPtr ISteamGameServer, IntPtr /*void **/ pOut , int /*int*/ cbMaxOut , out uint /*uint32 **/ pNetAdr, out ushort /*uint16 **/ pPort );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamGameServer_EnableHeartbeats" )] internal static extern void /*void*/ EnableHeartbeats( IntPtr ISteamGameServer, bool /*bool*/ bActive );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamGameServer_SetHeartbeatInterval" )] internal static extern void /*void*/ SetHeartbeatInterval( IntPtr ISteamGameServer, int /*int*/ iHeartbeatInterval );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamGameServer_ForceHeartbeat" )] internal static extern void /*void*/ ForceHeartbeat( IntPtr ISteamGameServer );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamGameServer_AssociateWithClan" )] internal static extern ulong /*SteamAPICall_t*/ AssociateWithClan( IntPtr ISteamGameServer, CSteamID /*class CSteamID*/ steamIDClan );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamGameServer_ComputeNewPlayerCompatibility" )] internal static extern ulong /*SteamAPICall_t*/ ComputeNewPlayerCompatibility( IntPtr ISteamGameServer, CSteamID /*class CSteamID*/ steamIDNewPlayer );
}
public static unsafe class ISteamGameServerStats
{
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamGameServerStats_RequestUserStats" )] internal static extern ulong /*SteamAPICall_t*/ RequestUserStats( IntPtr ISteamGameServerStats, CSteamID /*class CSteamID*/ steamIDUser );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamGameServerStats_GetUserStat" )] internal static extern bool /*bool*/ GetUserStat( IntPtr ISteamGameServerStats, CSteamID /*class CSteamID*/ steamIDUser, string /*const char **/ pchName , out int /*int32 **/ pData );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamGameServerStats_GetUserStat0" )] internal static extern bool /*bool*/ GetUserStat0( IntPtr ISteamGameServerStats, CSteamID /*class CSteamID*/ steamIDUser, string /*const char **/ pchName , out float /*float **/ pData );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamGameServerStats_GetUserAchievement" )] internal static extern bool /*bool*/ GetUserAchievement( IntPtr ISteamGameServerStats, CSteamID /*class CSteamID*/ steamIDUser, string /*const char **/ pchName , out bool /*bool **/ pbAchieved );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamGameServerStats_SetUserStat" )] internal static extern bool /*bool*/ SetUserStat( IntPtr ISteamGameServerStats, CSteamID /*class CSteamID*/ steamIDUser, string /*const char **/ pchName , int /*int32*/ nData );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamGameServerStats_SetUserStat0" )] internal static extern bool /*bool*/ SetUserStat0( IntPtr ISteamGameServerStats, CSteamID /*class CSteamID*/ steamIDUser, string /*const char **/ pchName , float /*float*/ fData );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamGameServerStats_UpdateUserAvgRateStat" )] internal static extern bool /*bool*/ UpdateUserAvgRateStat( IntPtr ISteamGameServerStats, CSteamID /*class CSteamID*/ steamIDUser, string /*const char **/ pchName , float /*float*/ flCountThisSession , double /*double*/ dSessionLength );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamGameServerStats_SetUserAchievement" )] internal static extern bool /*bool*/ SetUserAchievement( IntPtr ISteamGameServerStats, CSteamID /*class CSteamID*/ steamIDUser, string /*const char **/ pchName );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamGameServerStats_ClearUserAchievement" )] internal static extern bool /*bool*/ ClearUserAchievement( IntPtr ISteamGameServerStats, CSteamID /*class CSteamID*/ steamIDUser, string /*const char **/ pchName );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamGameServerStats_StoreUserStats" )] internal static extern ulong /*SteamAPICall_t*/ StoreUserStats( IntPtr ISteamGameServerStats, CSteamID /*class CSteamID*/ steamIDUser );
}
public static unsafe class Global
{
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_Init" )] internal static extern void /*void*/ SteamAPI_Init( );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_RunCallbacks" )] internal static extern void /*void*/ SteamAPI_RunCallbacks( );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamGameServer_RunCallbacks" )] internal static extern void /*void*/ SteamGameServer_RunCallbacks( );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_RegisterCallback" )] internal static extern void /*void*/ SteamAPI_RegisterCallback( IntPtr /*void **/ pCallback , int /*int*/ callback );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_UnregisterCallback" )] internal static extern void /*void*/ SteamAPI_UnregisterCallback( IntPtr /*void **/ pCallback );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamInternal_GameServer_Init" )] internal static extern bool /*bool*/ SteamInternal_GameServer_Init( uint /*uint32*/ unIP , ushort /*uint16*/ usPort , ushort /*uint16*/ usGamePort , ushort /*uint16*/ usQueryPort , int /*int*/ eServerMode , string /*const char **/ pchVersionString );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_Shutdown" )] internal static extern void /*void*/ SteamAPI_Shutdown( );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_GetHSteamUser" )] internal static extern int /*HSteamUser*/ SteamAPI_GetHSteamUser( );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_GetHSteamPipe" )] internal static extern int /*HSteamPipe*/ SteamAPI_GetHSteamPipe( );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamGameServer_GetHSteamUser" )] internal static extern int /*HSteamUser*/ SteamGameServer_GetHSteamUser( );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamGameServer_GetHSteamPipe" )] internal static extern int /*HSteamPipe*/ SteamGameServer_GetHSteamPipe( );
[DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamInternal_CreateInterface" )] internal static extern IntPtr /*void **/ SteamInternal_CreateInterface( string /*const char **/ version );
}
}
}
}

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,94 @@
using System;
using System.Runtime.InteropServices;
namespace SteamNative
{
public unsafe class SteamApi
{
internal Platform.Interface _pi;
public SteamApi( IntPtr pointer )
{
if ( Platform.IsWindows64 ) _pi = new Platform.Win64( pointer );
else if ( Platform.IsWindows32 ) _pi = new Platform.Win32( pointer );
else if ( Platform.IsLinux32 ) _pi = new Platform.Linux32( pointer );
else if ( Platform.IsLinux64 ) _pi = new Platform.Linux64( pointer );
else if ( Platform.IsOsx ) _pi = new Platform.Mac( pointer );
}
public bool IsValid{ get{ return _pi != null && _pi.IsValid; } }
// HSteamPipe
public HSteamPipe SteamAPI_GetHSteamPipe()
{
return _pi.SteamApi_SteamAPI_GetHSteamPipe();
}
// HSteamUser
public HSteamUser SteamAPI_GetHSteamUser()
{
return _pi.SteamApi_SteamAPI_GetHSteamUser();
}
// void
public void SteamAPI_Init()
{
_pi.SteamApi_SteamAPI_Init();
}
// void
public void SteamAPI_RegisterCallback( IntPtr pCallback /*void **/, int callback /*int*/ )
{
_pi.SteamApi_SteamAPI_RegisterCallback( (IntPtr) pCallback, callback );
}
// void
public void SteamAPI_RunCallbacks()
{
_pi.SteamApi_SteamAPI_RunCallbacks();
}
// void
public void SteamAPI_Shutdown()
{
_pi.SteamApi_SteamAPI_Shutdown();
}
// void
public void SteamAPI_UnregisterCallback( IntPtr pCallback /*void **/ )
{
_pi.SteamApi_SteamAPI_UnregisterCallback( (IntPtr) pCallback );
}
// HSteamPipe
public HSteamPipe SteamGameServer_GetHSteamPipe()
{
return _pi.SteamApi_SteamGameServer_GetHSteamPipe();
}
// HSteamUser
public HSteamUser SteamGameServer_GetHSteamUser()
{
return _pi.SteamApi_SteamGameServer_GetHSteamUser();
}
// void
public void SteamGameServer_RunCallbacks()
{
_pi.SteamApi_SteamGameServer_RunCallbacks();
}
// IntPtr
public IntPtr SteamInternal_CreateInterface( string version /*const char **/ )
{
return _pi.SteamApi_SteamInternal_CreateInterface( version );
}
// bool
public bool SteamInternal_GameServer_Init( uint unIP /*uint32*/, ushort usPort /*uint16*/, ushort usGamePort /*uint16*/, ushort usQueryPort /*uint16*/, int eServerMode /*int*/, string pchVersionString /*const char **/ )
{
return _pi.SteamApi_SteamInternal_GameServer_Init( unIP, usPort, usGamePort, usQueryPort, eServerMode, pchVersionString );
}
}
}

View File

@ -5,34 +5,33 @@ namespace SteamNative
{ {
public unsafe class SteamAppList public unsafe class SteamAppList
{ {
internal IntPtr _ptr; internal Platform.Interface _pi;
public SteamAppList( IntPtr pointer ) public SteamAppList( IntPtr pointer )
{ {
_ptr = pointer; if ( Platform.IsWindows64 ) _pi = new Platform.Win64( pointer );
else if ( Platform.IsWindows32 ) _pi = new Platform.Win32( pointer );
else if ( Platform.IsLinux32 ) _pi = new Platform.Linux32( pointer );
else if ( Platform.IsLinux64 ) _pi = new Platform.Linux64( pointer );
else if ( Platform.IsOsx ) _pi = new Platform.Mac( pointer );
} }
public bool IsValid{ get{ return _pi != null && _pi.IsValid; } }
// int // int
public int GetAppBuildId( AppId_t nAppID /*AppId_t*/ ) public int GetAppBuildId( AppId_t nAppID /*AppId_t*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamAppList_GetAppBuildId( nAppID );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamAppList.GetAppBuildId( _ptr, nAppID );
else return Platform.Win64.ISteamAppList.GetAppBuildId( _ptr, nAppID );
} }
// int // int
// with: Detect_StringFetch True // with: Detect_StringFetch True
public string GetAppInstallDir( AppId_t nAppID /*AppId_t*/ ) public string GetAppInstallDir( AppId_t nAppID /*AppId_t*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); //
int bSuccess = default( int ); int bSuccess = default( int );
System.Text.StringBuilder pchDirectory_sb = new System.Text.StringBuilder( 4096 ); System.Text.StringBuilder pchDirectory_sb = new System.Text.StringBuilder( 4096 );
int cchNameMax = 4096; int cchNameMax = 4096;
if ( Platform.IsWindows32 ) bSuccess = Platform.Win32.ISteamAppList.GetAppInstallDir( _ptr, nAppID, pchDirectory_sb, cchNameMax ); bSuccess = _pi.ISteamAppList_GetAppInstallDir( nAppID, pchDirectory_sb, cchNameMax );
else bSuccess = Platform.Win64.ISteamAppList.GetAppInstallDir( _ptr, nAppID, pchDirectory_sb, cchNameMax );
if ( bSuccess <= 0 ) return null; if ( bSuccess <= 0 ) return null;
return pchDirectory_sb.ToString(); return pchDirectory_sb.ToString();
} }
@ -41,13 +40,10 @@ namespace SteamNative
// with: Detect_StringFetch True // with: Detect_StringFetch True
public string GetAppName( AppId_t nAppID /*AppId_t*/ ) public string GetAppName( AppId_t nAppID /*AppId_t*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); //
int bSuccess = default( int ); int bSuccess = default( int );
System.Text.StringBuilder pchName_sb = new System.Text.StringBuilder( 4096 ); System.Text.StringBuilder pchName_sb = new System.Text.StringBuilder( 4096 );
int cchNameMax = 4096; int cchNameMax = 4096;
if ( Platform.IsWindows32 ) bSuccess = Platform.Win32.ISteamAppList.GetAppName( _ptr, nAppID, pchName_sb, cchNameMax ); bSuccess = _pi.ISteamAppList_GetAppName( nAppID, pchName_sb, cchNameMax );
else bSuccess = Platform.Win64.ISteamAppList.GetAppName( _ptr, nAppID, pchName_sb, cchNameMax );
if ( bSuccess <= 0 ) return null; if ( bSuccess <= 0 ) return null;
return pchName_sb.ToString(); return pchName_sb.ToString();
} }
@ -56,23 +52,17 @@ namespace SteamNative
// uint // uint
public uint GetInstalledApps( AppId_t[] pvecAppID /*AppId_t **/ ) public uint GetInstalledApps( AppId_t[] pvecAppID /*AppId_t **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); //
var unMaxAppIDs = (uint) pvecAppID.Length; var unMaxAppIDs = (uint) pvecAppID.Length;
fixed ( AppId_t* pvecAppID_ptr = pvecAppID ) fixed ( AppId_t* pvecAppID_ptr = pvecAppID )
{ {
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamAppList.GetInstalledApps( _ptr, (IntPtr) pvecAppID_ptr, unMaxAppIDs ); return _pi.ISteamAppList_GetInstalledApps( (IntPtr) pvecAppID_ptr, unMaxAppIDs );
else return Platform.Win64.ISteamAppList.GetInstalledApps( _ptr, (IntPtr) pvecAppID_ptr, unMaxAppIDs );
} }
} }
// uint // uint
public uint GetNumInstalledApps() public uint GetNumInstalledApps()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamAppList_GetNumInstalledApps();
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamAppList.GetNumInstalledApps( _ptr );
else return Platform.Win64.ISteamAppList.GetNumInstalledApps( _ptr );
} }
} }

View File

@ -5,26 +5,28 @@ namespace SteamNative
{ {
public unsafe class SteamApps public unsafe class SteamApps
{ {
internal IntPtr _ptr; internal Platform.Interface _pi;
public SteamApps( IntPtr pointer ) public SteamApps( IntPtr pointer )
{ {
_ptr = pointer; if ( Platform.IsWindows64 ) _pi = new Platform.Win64( pointer );
else if ( Platform.IsWindows32 ) _pi = new Platform.Win32( pointer );
else if ( Platform.IsLinux32 ) _pi = new Platform.Linux32( pointer );
else if ( Platform.IsLinux64 ) _pi = new Platform.Linux64( pointer );
else if ( Platform.IsOsx ) _pi = new Platform.Mac( pointer );
} }
public bool IsValid{ get{ return _pi != null && _pi.IsValid; } }
// bool // bool
// with: Detect_StringFetch False // with: Detect_StringFetch False
public bool BGetDLCDataByIndex( int iDLC /*int*/, ref AppId_t pAppID /*AppId_t **/, out bool pbAvailable /*bool **/, out string pchName /*char **/ ) public bool BGetDLCDataByIndex( int iDLC /*int*/, ref AppId_t pAppID /*AppId_t **/, out bool pbAvailable /*bool **/, out string pchName /*char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); //
bool bSuccess = default( bool ); bool bSuccess = default( bool );
pchName = string.Empty; pchName = string.Empty;
System.Text.StringBuilder pchName_sb = new System.Text.StringBuilder( 4096 ); System.Text.StringBuilder pchName_sb = new System.Text.StringBuilder( 4096 );
int cchNameBufferSize = 4096; int cchNameBufferSize = 4096;
if ( Platform.IsWindows32 ) bSuccess = Platform.Win32.ISteamApps.BGetDLCDataByIndex( _ptr, iDLC, ref pAppID, out pbAvailable, pchName_sb, cchNameBufferSize ); bSuccess = _pi.ISteamApps_BGetDLCDataByIndex( iDLC, ref pAppID, out pbAvailable, pchName_sb, cchNameBufferSize );
else bSuccess = Platform.Win64.ISteamApps.BGetDLCDataByIndex( _ptr, iDLC, ref pAppID, out pbAvailable, pchName_sb, cchNameBufferSize );
if ( !bSuccess ) return bSuccess; if ( !bSuccess ) return bSuccess;
pchName = pchName_sb.ToString(); pchName = pchName_sb.ToString();
return bSuccess; return bSuccess;
@ -33,95 +35,65 @@ namespace SteamNative
// bool // bool
public bool BIsAppInstalled( AppId_t appID /*AppId_t*/ ) public bool BIsAppInstalled( AppId_t appID /*AppId_t*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamApps_BIsAppInstalled( appID );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamApps.BIsAppInstalled( _ptr, appID );
else return Platform.Win64.ISteamApps.BIsAppInstalled( _ptr, appID );
} }
// bool // bool
public bool BIsCybercafe() public bool BIsCybercafe()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamApps_BIsCybercafe();
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamApps.BIsCybercafe( _ptr );
else return Platform.Win64.ISteamApps.BIsCybercafe( _ptr );
} }
// bool // bool
public bool BIsDlcInstalled( AppId_t appID /*AppId_t*/ ) public bool BIsDlcInstalled( AppId_t appID /*AppId_t*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamApps_BIsDlcInstalled( appID );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamApps.BIsDlcInstalled( _ptr, appID );
else return Platform.Win64.ISteamApps.BIsDlcInstalled( _ptr, appID );
} }
// bool // bool
public bool BIsLowViolence() public bool BIsLowViolence()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamApps_BIsLowViolence();
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamApps.BIsLowViolence( _ptr );
else return Platform.Win64.ISteamApps.BIsLowViolence( _ptr );
} }
// bool // bool
public bool BIsSubscribed() public bool BIsSubscribed()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamApps_BIsSubscribed();
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamApps.BIsSubscribed( _ptr );
else return Platform.Win64.ISteamApps.BIsSubscribed( _ptr );
} }
// bool // bool
public bool BIsSubscribedApp( AppId_t appID /*AppId_t*/ ) public bool BIsSubscribedApp( AppId_t appID /*AppId_t*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamApps_BIsSubscribedApp( appID );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamApps.BIsSubscribedApp( _ptr, appID );
else return Platform.Win64.ISteamApps.BIsSubscribedApp( _ptr, appID );
} }
// bool // bool
public bool BIsSubscribedFromFreeWeekend() public bool BIsSubscribedFromFreeWeekend()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamApps_BIsSubscribedFromFreeWeekend();
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamApps.BIsSubscribedFromFreeWeekend( _ptr );
else return Platform.Win64.ISteamApps.BIsSubscribedFromFreeWeekend( _ptr );
} }
// bool // bool
public bool BIsVACBanned() public bool BIsVACBanned()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamApps_BIsVACBanned();
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamApps.BIsVACBanned( _ptr );
else return Platform.Win64.ISteamApps.BIsVACBanned( _ptr );
} }
// int // int
public int GetAppBuildId() public int GetAppBuildId()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamApps_GetAppBuildId();
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamApps.GetAppBuildId( _ptr );
else return Platform.Win64.ISteamApps.GetAppBuildId( _ptr );
} }
// uint // uint
// with: Detect_StringFetch True // with: Detect_StringFetch True
public string GetAppInstallDir( AppId_t appID /*AppId_t*/ ) public string GetAppInstallDir( AppId_t appID /*AppId_t*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); //
uint bSuccess = default( uint ); uint bSuccess = default( uint );
System.Text.StringBuilder pchFolder_sb = new System.Text.StringBuilder( 4096 ); System.Text.StringBuilder pchFolder_sb = new System.Text.StringBuilder( 4096 );
uint cchFolderBufferSize = 4096; uint cchFolderBufferSize = 4096;
if ( Platform.IsWindows32 ) bSuccess = Platform.Win32.ISteamApps.GetAppInstallDir( _ptr, appID, pchFolder_sb, cchFolderBufferSize ); bSuccess = _pi.ISteamApps_GetAppInstallDir( appID, pchFolder_sb, cchFolderBufferSize );
else bSuccess = Platform.Win64.ISteamApps.GetAppInstallDir( _ptr, appID, pchFolder_sb, cchFolderBufferSize );
if ( bSuccess <= 0 ) return null; if ( bSuccess <= 0 ) return null;
return pchFolder_sb.ToString(); return pchFolder_sb.ToString();
} }
@ -129,21 +101,15 @@ namespace SteamNative
// ulong // ulong
public ulong GetAppOwner() public ulong GetAppOwner()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamApps_GetAppOwner();
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamApps.GetAppOwner( _ptr );
else return Platform.Win64.ISteamApps.GetAppOwner( _ptr );
} }
// string // string
// with: Detect_StringReturn // with: Detect_StringReturn
public string GetAvailableGameLanguages() public string GetAvailableGameLanguages()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); //
IntPtr string_pointer; IntPtr string_pointer;
if ( Platform.IsWindows32 ) string_pointer = Platform.Win32.ISteamApps.GetAvailableGameLanguages( _ptr ); string_pointer = _pi.ISteamApps_GetAvailableGameLanguages();
else string_pointer = Platform.Win64.ISteamApps.GetAvailableGameLanguages( _ptr );
return Marshal.PtrToStringAnsi( string_pointer ); return Marshal.PtrToStringAnsi( string_pointer );
} }
@ -151,13 +117,10 @@ namespace SteamNative
// with: Detect_StringFetch True // with: Detect_StringFetch True
public string GetCurrentBetaName() public string GetCurrentBetaName()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); //
bool bSuccess = default( bool ); bool bSuccess = default( bool );
System.Text.StringBuilder pchName_sb = new System.Text.StringBuilder( 4096 ); System.Text.StringBuilder pchName_sb = new System.Text.StringBuilder( 4096 );
int cchNameBufferSize = 4096; int cchNameBufferSize = 4096;
if ( Platform.IsWindows32 ) bSuccess = Platform.Win32.ISteamApps.GetCurrentBetaName( _ptr, pchName_sb, cchNameBufferSize ); bSuccess = _pi.ISteamApps_GetCurrentBetaName( pchName_sb, cchNameBufferSize );
else bSuccess = Platform.Win64.ISteamApps.GetCurrentBetaName( _ptr, pchName_sb, cchNameBufferSize );
if ( !bSuccess ) return null; if ( !bSuccess ) return null;
return pchName_sb.ToString(); return pchName_sb.ToString();
} }
@ -166,105 +129,72 @@ namespace SteamNative
// with: Detect_StringReturn // with: Detect_StringReturn
public string GetCurrentGameLanguage() public string GetCurrentGameLanguage()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); //
IntPtr string_pointer; IntPtr string_pointer;
if ( Platform.IsWindows32 ) string_pointer = Platform.Win32.ISteamApps.GetCurrentGameLanguage( _ptr ); string_pointer = _pi.ISteamApps_GetCurrentGameLanguage();
else string_pointer = Platform.Win64.ISteamApps.GetCurrentGameLanguage( _ptr );
return Marshal.PtrToStringAnsi( string_pointer ); return Marshal.PtrToStringAnsi( string_pointer );
} }
// int // int
public int GetDLCCount() public int GetDLCCount()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamApps_GetDLCCount();
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamApps.GetDLCCount( _ptr );
else return Platform.Win64.ISteamApps.GetDLCCount( _ptr );
} }
// bool // bool
public bool GetDlcDownloadProgress( AppId_t nAppID /*AppId_t*/, out ulong punBytesDownloaded /*uint64 **/, out ulong punBytesTotal /*uint64 **/ ) public bool GetDlcDownloadProgress( AppId_t nAppID /*AppId_t*/, out ulong punBytesDownloaded /*uint64 **/, out ulong punBytesTotal /*uint64 **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamApps_GetDlcDownloadProgress( nAppID, out punBytesDownloaded, out punBytesTotal );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamApps.GetDlcDownloadProgress( _ptr, nAppID, out punBytesDownloaded, out punBytesTotal );
else return Platform.Win64.ISteamApps.GetDlcDownloadProgress( _ptr, nAppID, out punBytesDownloaded, out punBytesTotal );
} }
// uint // uint
public uint GetEarliestPurchaseUnixTime( AppId_t nAppID /*AppId_t*/ ) public uint GetEarliestPurchaseUnixTime( AppId_t nAppID /*AppId_t*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamApps_GetEarliestPurchaseUnixTime( nAppID );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamApps.GetEarliestPurchaseUnixTime( _ptr, nAppID );
else return Platform.Win64.ISteamApps.GetEarliestPurchaseUnixTime( _ptr, nAppID );
} }
// uint // uint
public uint GetInstalledDepots( AppId_t appID /*AppId_t*/, IntPtr pvecDepots /*DepotId_t **/, uint cMaxDepots /*uint32*/ ) public uint GetInstalledDepots( AppId_t appID /*AppId_t*/, IntPtr pvecDepots /*DepotId_t **/, uint cMaxDepots /*uint32*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamApps_GetInstalledDepots( appID, (IntPtr) pvecDepots, cMaxDepots );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamApps.GetInstalledDepots( _ptr, appID, (IntPtr) pvecDepots, cMaxDepots );
else return Platform.Win64.ISteamApps.GetInstalledDepots( _ptr, appID, (IntPtr) pvecDepots, cMaxDepots );
} }
// string // string
// with: Detect_StringReturn // with: Detect_StringReturn
public string GetLaunchQueryParam( string pchKey /*const char **/ ) public string GetLaunchQueryParam( string pchKey /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); //
IntPtr string_pointer; IntPtr string_pointer;
if ( Platform.IsWindows32 ) string_pointer = Platform.Win32.ISteamApps.GetLaunchQueryParam( _ptr, pchKey ); string_pointer = _pi.ISteamApps_GetLaunchQueryParam( pchKey );
else string_pointer = Platform.Win64.ISteamApps.GetLaunchQueryParam( _ptr, pchKey );
return Marshal.PtrToStringAnsi( string_pointer ); return Marshal.PtrToStringAnsi( string_pointer );
} }
// void // void
public void InstallDLC( AppId_t nAppID /*AppId_t*/ ) public void InstallDLC( AppId_t nAppID /*AppId_t*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamApps_InstallDLC( nAppID );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamApps.InstallDLC( _ptr, nAppID );
else Platform.Win64.ISteamApps.InstallDLC( _ptr, nAppID );
} }
// bool // bool
public bool MarkContentCorrupt( bool bMissingFilesOnly /*bool*/ ) public bool MarkContentCorrupt( bool bMissingFilesOnly /*bool*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamApps_MarkContentCorrupt( bMissingFilesOnly );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamApps.MarkContentCorrupt( _ptr, bMissingFilesOnly );
else return Platform.Win64.ISteamApps.MarkContentCorrupt( _ptr, bMissingFilesOnly );
} }
// void // void
public void RequestAllProofOfPurchaseKeys() public void RequestAllProofOfPurchaseKeys()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamApps_RequestAllProofOfPurchaseKeys();
if ( Platform.IsWindows32 ) Platform.Win32.ISteamApps.RequestAllProofOfPurchaseKeys( _ptr );
else Platform.Win64.ISteamApps.RequestAllProofOfPurchaseKeys( _ptr );
} }
// void // void
public void RequestAppProofOfPurchaseKey( AppId_t nAppID /*AppId_t*/ ) public void RequestAppProofOfPurchaseKey( AppId_t nAppID /*AppId_t*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamApps_RequestAppProofOfPurchaseKey( nAppID );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamApps.RequestAppProofOfPurchaseKey( _ptr, nAppID );
else Platform.Win64.ISteamApps.RequestAppProofOfPurchaseKey( _ptr, nAppID );
} }
// void // void
public void UninstallDLC( AppId_t nAppID /*AppId_t*/ ) public void UninstallDLC( AppId_t nAppID /*AppId_t*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamApps_UninstallDLC( nAppID );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamApps.UninstallDLC( _ptr, nAppID );
else Platform.Win64.ISteamApps.UninstallDLC( _ptr, nAppID );
} }
} }

View File

@ -5,344 +5,253 @@ namespace SteamNative
{ {
public unsafe class SteamClient public unsafe class SteamClient
{ {
internal IntPtr _ptr; internal Platform.Interface _pi;
public SteamClient( IntPtr pointer ) public SteamClient( IntPtr pointer )
{ {
_ptr = pointer; if ( Platform.IsWindows64 ) _pi = new Platform.Win64( pointer );
else if ( Platform.IsWindows32 ) _pi = new Platform.Win32( pointer );
else if ( Platform.IsLinux32 ) _pi = new Platform.Linux32( pointer );
else if ( Platform.IsLinux64 ) _pi = new Platform.Linux64( pointer );
else if ( Platform.IsOsx ) _pi = new Platform.Mac( pointer );
} }
public bool IsValid{ get{ return _pi != null && _pi.IsValid; } }
// bool // bool
public bool BReleaseSteamPipe( HSteamPipe hSteamPipe /*HSteamPipe*/ ) public bool BReleaseSteamPipe( HSteamPipe hSteamPipe /*HSteamPipe*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamClient_BReleaseSteamPipe( hSteamPipe );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamClient.BReleaseSteamPipe( _ptr, hSteamPipe );
else return Platform.Win64.ISteamClient.BReleaseSteamPipe( _ptr, hSteamPipe );
} }
// bool // bool
public bool BShutdownIfAllPipesClosed() public bool BShutdownIfAllPipesClosed()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamClient_BShutdownIfAllPipesClosed();
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamClient.BShutdownIfAllPipesClosed( _ptr );
else return Platform.Win64.ISteamClient.BShutdownIfAllPipesClosed( _ptr );
} }
// HSteamUser // HSteamUser
public HSteamUser ConnectToGlobalUser( HSteamPipe hSteamPipe /*HSteamPipe*/ ) public HSteamUser ConnectToGlobalUser( HSteamPipe hSteamPipe /*HSteamPipe*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamClient_ConnectToGlobalUser( hSteamPipe );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamClient.ConnectToGlobalUser( _ptr, hSteamPipe );
else return Platform.Win64.ISteamClient.ConnectToGlobalUser( _ptr, hSteamPipe );
} }
// HSteamUser // HSteamUser
public HSteamUser CreateLocalUser( out HSteamPipe phSteamPipe /*HSteamPipe **/, AccountType eAccountType /*EAccountType*/ ) public HSteamUser CreateLocalUser( out HSteamPipe phSteamPipe /*HSteamPipe **/, AccountType eAccountType /*EAccountType*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamClient_CreateLocalUser( out phSteamPipe, eAccountType );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamClient.CreateLocalUser( _ptr, out phSteamPipe, eAccountType );
else return Platform.Win64.ISteamClient.CreateLocalUser( _ptr, out phSteamPipe, eAccountType );
} }
// HSteamPipe // HSteamPipe
public HSteamPipe CreateSteamPipe() public HSteamPipe CreateSteamPipe()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamClient_CreateSteamPipe();
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamClient.CreateSteamPipe( _ptr );
else return Platform.Win64.ISteamClient.CreateSteamPipe( _ptr );
} }
// uint // uint
public uint GetIPCCallCount() public uint GetIPCCallCount()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamClient_GetIPCCallCount();
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamClient.GetIPCCallCount( _ptr );
else return Platform.Win64.ISteamClient.GetIPCCallCount( _ptr );
} }
// ISteamAppList * // ISteamAppList *
public SteamAppList GetISteamAppList( HSteamUser hSteamUser /*HSteamUser*/, HSteamPipe hSteamPipe /*HSteamPipe*/, string pchVersion /*const char **/ ) public SteamAppList GetISteamAppList( HSteamUser hSteamUser /*HSteamUser*/, HSteamPipe hSteamPipe /*HSteamPipe*/, string pchVersion /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); //
IntPtr interface_pointer; IntPtr interface_pointer;
if ( Platform.IsWindows32 ) interface_pointer = Platform.Win32.ISteamClient.GetISteamAppList( _ptr, hSteamUser, hSteamPipe, pchVersion ); interface_pointer = _pi.ISteamClient_GetISteamAppList( hSteamUser, hSteamPipe, pchVersion );
else interface_pointer = Platform.Win64.ISteamClient.GetISteamAppList( _ptr, hSteamUser, hSteamPipe, pchVersion );
return new SteamAppList( interface_pointer ); return new SteamAppList( interface_pointer );
} }
// ISteamApps * // ISteamApps *
public SteamApps GetISteamApps( HSteamUser hSteamUser /*HSteamUser*/, HSteamPipe hSteamPipe /*HSteamPipe*/, string pchVersion /*const char **/ ) public SteamApps GetISteamApps( HSteamUser hSteamUser /*HSteamUser*/, HSteamPipe hSteamPipe /*HSteamPipe*/, string pchVersion /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); //
IntPtr interface_pointer; IntPtr interface_pointer;
if ( Platform.IsWindows32 ) interface_pointer = Platform.Win32.ISteamClient.GetISteamApps( _ptr, hSteamUser, hSteamPipe, pchVersion ); interface_pointer = _pi.ISteamClient_GetISteamApps( hSteamUser, hSteamPipe, pchVersion );
else interface_pointer = Platform.Win64.ISteamClient.GetISteamApps( _ptr, hSteamUser, hSteamPipe, pchVersion );
return new SteamApps( interface_pointer ); return new SteamApps( interface_pointer );
} }
// ISteamController * // ISteamController *
public SteamController GetISteamController( HSteamUser hSteamUser /*HSteamUser*/, HSteamPipe hSteamPipe /*HSteamPipe*/, string pchVersion /*const char **/ ) public SteamController GetISteamController( HSteamUser hSteamUser /*HSteamUser*/, HSteamPipe hSteamPipe /*HSteamPipe*/, string pchVersion /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); //
IntPtr interface_pointer; IntPtr interface_pointer;
if ( Platform.IsWindows32 ) interface_pointer = Platform.Win32.ISteamClient.GetISteamController( _ptr, hSteamUser, hSteamPipe, pchVersion ); interface_pointer = _pi.ISteamClient_GetISteamController( hSteamUser, hSteamPipe, pchVersion );
else interface_pointer = Platform.Win64.ISteamClient.GetISteamController( _ptr, hSteamUser, hSteamPipe, pchVersion );
return new SteamController( interface_pointer ); return new SteamController( interface_pointer );
} }
// ISteamFriends * // ISteamFriends *
public SteamFriends GetISteamFriends( HSteamUser hSteamUser /*HSteamUser*/, HSteamPipe hSteamPipe /*HSteamPipe*/, string pchVersion /*const char **/ ) public SteamFriends GetISteamFriends( HSteamUser hSteamUser /*HSteamUser*/, HSteamPipe hSteamPipe /*HSteamPipe*/, string pchVersion /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); //
IntPtr interface_pointer; IntPtr interface_pointer;
if ( Platform.IsWindows32 ) interface_pointer = Platform.Win32.ISteamClient.GetISteamFriends( _ptr, hSteamUser, hSteamPipe, pchVersion ); interface_pointer = _pi.ISteamClient_GetISteamFriends( hSteamUser, hSteamPipe, pchVersion );
else interface_pointer = Platform.Win64.ISteamClient.GetISteamFriends( _ptr, hSteamUser, hSteamPipe, pchVersion );
return new SteamFriends( interface_pointer ); return new SteamFriends( interface_pointer );
} }
// ISteamGameServer * // ISteamGameServer *
public SteamGameServer GetISteamGameServer( HSteamUser hSteamUser /*HSteamUser*/, HSteamPipe hSteamPipe /*HSteamPipe*/, string pchVersion /*const char **/ ) public SteamGameServer GetISteamGameServer( HSteamUser hSteamUser /*HSteamUser*/, HSteamPipe hSteamPipe /*HSteamPipe*/, string pchVersion /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); //
IntPtr interface_pointer; IntPtr interface_pointer;
if ( Platform.IsWindows32 ) interface_pointer = Platform.Win32.ISteamClient.GetISteamGameServer( _ptr, hSteamUser, hSteamPipe, pchVersion ); interface_pointer = _pi.ISteamClient_GetISteamGameServer( hSteamUser, hSteamPipe, pchVersion );
else interface_pointer = Platform.Win64.ISteamClient.GetISteamGameServer( _ptr, hSteamUser, hSteamPipe, pchVersion );
return new SteamGameServer( interface_pointer ); return new SteamGameServer( interface_pointer );
} }
// ISteamGameServerStats * // ISteamGameServerStats *
public SteamGameServerStats GetISteamGameServerStats( HSteamUser hSteamuser /*HSteamUser*/, HSteamPipe hSteamPipe /*HSteamPipe*/, string pchVersion /*const char **/ ) public SteamGameServerStats GetISteamGameServerStats( HSteamUser hSteamuser /*HSteamUser*/, HSteamPipe hSteamPipe /*HSteamPipe*/, string pchVersion /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); //
IntPtr interface_pointer; IntPtr interface_pointer;
if ( Platform.IsWindows32 ) interface_pointer = Platform.Win32.ISteamClient.GetISteamGameServerStats( _ptr, hSteamuser, hSteamPipe, pchVersion ); interface_pointer = _pi.ISteamClient_GetISteamGameServerStats( hSteamuser, hSteamPipe, pchVersion );
else interface_pointer = Platform.Win64.ISteamClient.GetISteamGameServerStats( _ptr, hSteamuser, hSteamPipe, pchVersion );
return new SteamGameServerStats( interface_pointer ); return new SteamGameServerStats( interface_pointer );
} }
// IntPtr // IntPtr
public IntPtr GetISteamGenericInterface( HSteamUser hSteamUser /*HSteamUser*/, HSteamPipe hSteamPipe /*HSteamPipe*/, string pchVersion /*const char **/ ) public IntPtr GetISteamGenericInterface( HSteamUser hSteamUser /*HSteamUser*/, HSteamPipe hSteamPipe /*HSteamPipe*/, string pchVersion /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamClient_GetISteamGenericInterface( hSteamUser, hSteamPipe, pchVersion );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamClient.GetISteamGenericInterface( _ptr, hSteamUser, hSteamPipe, pchVersion );
else return Platform.Win64.ISteamClient.GetISteamGenericInterface( _ptr, hSteamUser, hSteamPipe, pchVersion );
} }
// ISteamHTMLSurface * // ISteamHTMLSurface *
public SteamHTMLSurface GetISteamHTMLSurface( HSteamUser hSteamuser /*HSteamUser*/, HSteamPipe hSteamPipe /*HSteamPipe*/, string pchVersion /*const char **/ ) public SteamHTMLSurface GetISteamHTMLSurface( HSteamUser hSteamuser /*HSteamUser*/, HSteamPipe hSteamPipe /*HSteamPipe*/, string pchVersion /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); //
IntPtr interface_pointer; IntPtr interface_pointer;
if ( Platform.IsWindows32 ) interface_pointer = Platform.Win32.ISteamClient.GetISteamHTMLSurface( _ptr, hSteamuser, hSteamPipe, pchVersion ); interface_pointer = _pi.ISteamClient_GetISteamHTMLSurface( hSteamuser, hSteamPipe, pchVersion );
else interface_pointer = Platform.Win64.ISteamClient.GetISteamHTMLSurface( _ptr, hSteamuser, hSteamPipe, pchVersion );
return new SteamHTMLSurface( interface_pointer ); return new SteamHTMLSurface( interface_pointer );
} }
// ISteamHTTP * // ISteamHTTP *
public SteamHTTP GetISteamHTTP( HSteamUser hSteamuser /*HSteamUser*/, HSteamPipe hSteamPipe /*HSteamPipe*/, string pchVersion /*const char **/ ) public SteamHTTP GetISteamHTTP( HSteamUser hSteamuser /*HSteamUser*/, HSteamPipe hSteamPipe /*HSteamPipe*/, string pchVersion /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); //
IntPtr interface_pointer; IntPtr interface_pointer;
if ( Platform.IsWindows32 ) interface_pointer = Platform.Win32.ISteamClient.GetISteamHTTP( _ptr, hSteamuser, hSteamPipe, pchVersion ); interface_pointer = _pi.ISteamClient_GetISteamHTTP( hSteamuser, hSteamPipe, pchVersion );
else interface_pointer = Platform.Win64.ISteamClient.GetISteamHTTP( _ptr, hSteamuser, hSteamPipe, pchVersion );
return new SteamHTTP( interface_pointer ); return new SteamHTTP( interface_pointer );
} }
// ISteamInventory * // ISteamInventory *
public SteamInventory GetISteamInventory( HSteamUser hSteamuser /*HSteamUser*/, HSteamPipe hSteamPipe /*HSteamPipe*/, string pchVersion /*const char **/ ) public SteamInventory GetISteamInventory( HSteamUser hSteamuser /*HSteamUser*/, HSteamPipe hSteamPipe /*HSteamPipe*/, string pchVersion /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); //
IntPtr interface_pointer; IntPtr interface_pointer;
if ( Platform.IsWindows32 ) interface_pointer = Platform.Win32.ISteamClient.GetISteamInventory( _ptr, hSteamuser, hSteamPipe, pchVersion ); interface_pointer = _pi.ISteamClient_GetISteamInventory( hSteamuser, hSteamPipe, pchVersion );
else interface_pointer = Platform.Win64.ISteamClient.GetISteamInventory( _ptr, hSteamuser, hSteamPipe, pchVersion );
return new SteamInventory( interface_pointer ); return new SteamInventory( interface_pointer );
} }
// ISteamMatchmaking * // ISteamMatchmaking *
public SteamMatchmaking GetISteamMatchmaking( HSteamUser hSteamUser /*HSteamUser*/, HSteamPipe hSteamPipe /*HSteamPipe*/, string pchVersion /*const char **/ ) public SteamMatchmaking GetISteamMatchmaking( HSteamUser hSteamUser /*HSteamUser*/, HSteamPipe hSteamPipe /*HSteamPipe*/, string pchVersion /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); //
IntPtr interface_pointer; IntPtr interface_pointer;
if ( Platform.IsWindows32 ) interface_pointer = Platform.Win32.ISteamClient.GetISteamMatchmaking( _ptr, hSteamUser, hSteamPipe, pchVersion ); interface_pointer = _pi.ISteamClient_GetISteamMatchmaking( hSteamUser, hSteamPipe, pchVersion );
else interface_pointer = Platform.Win64.ISteamClient.GetISteamMatchmaking( _ptr, hSteamUser, hSteamPipe, pchVersion );
return new SteamMatchmaking( interface_pointer ); return new SteamMatchmaking( interface_pointer );
} }
// ISteamMatchmakingServers * // ISteamMatchmakingServers *
public SteamMatchmakingServers GetISteamMatchmakingServers( HSteamUser hSteamUser /*HSteamUser*/, HSteamPipe hSteamPipe /*HSteamPipe*/, string pchVersion /*const char **/ ) public SteamMatchmakingServers GetISteamMatchmakingServers( HSteamUser hSteamUser /*HSteamUser*/, HSteamPipe hSteamPipe /*HSteamPipe*/, string pchVersion /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); //
IntPtr interface_pointer; IntPtr interface_pointer;
if ( Platform.IsWindows32 ) interface_pointer = Platform.Win32.ISteamClient.GetISteamMatchmakingServers( _ptr, hSteamUser, hSteamPipe, pchVersion ); interface_pointer = _pi.ISteamClient_GetISteamMatchmakingServers( hSteamUser, hSteamPipe, pchVersion );
else interface_pointer = Platform.Win64.ISteamClient.GetISteamMatchmakingServers( _ptr, hSteamUser, hSteamPipe, pchVersion );
return new SteamMatchmakingServers( interface_pointer ); return new SteamMatchmakingServers( interface_pointer );
} }
// ISteamMusic * // ISteamMusic *
public SteamMusic GetISteamMusic( HSteamUser hSteamuser /*HSteamUser*/, HSteamPipe hSteamPipe /*HSteamPipe*/, string pchVersion /*const char **/ ) public SteamMusic GetISteamMusic( HSteamUser hSteamuser /*HSteamUser*/, HSteamPipe hSteamPipe /*HSteamPipe*/, string pchVersion /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); //
IntPtr interface_pointer; IntPtr interface_pointer;
if ( Platform.IsWindows32 ) interface_pointer = Platform.Win32.ISteamClient.GetISteamMusic( _ptr, hSteamuser, hSteamPipe, pchVersion ); interface_pointer = _pi.ISteamClient_GetISteamMusic( hSteamuser, hSteamPipe, pchVersion );
else interface_pointer = Platform.Win64.ISteamClient.GetISteamMusic( _ptr, hSteamuser, hSteamPipe, pchVersion );
return new SteamMusic( interface_pointer ); return new SteamMusic( interface_pointer );
} }
// ISteamMusicRemote * // ISteamMusicRemote *
public SteamMusicRemote GetISteamMusicRemote( HSteamUser hSteamuser /*HSteamUser*/, HSteamPipe hSteamPipe /*HSteamPipe*/, string pchVersion /*const char **/ ) public SteamMusicRemote GetISteamMusicRemote( HSteamUser hSteamuser /*HSteamUser*/, HSteamPipe hSteamPipe /*HSteamPipe*/, string pchVersion /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); //
IntPtr interface_pointer; IntPtr interface_pointer;
if ( Platform.IsWindows32 ) interface_pointer = Platform.Win32.ISteamClient.GetISteamMusicRemote( _ptr, hSteamuser, hSteamPipe, pchVersion ); interface_pointer = _pi.ISteamClient_GetISteamMusicRemote( hSteamuser, hSteamPipe, pchVersion );
else interface_pointer = Platform.Win64.ISteamClient.GetISteamMusicRemote( _ptr, hSteamuser, hSteamPipe, pchVersion );
return new SteamMusicRemote( interface_pointer ); return new SteamMusicRemote( interface_pointer );
} }
// ISteamNetworking * // ISteamNetworking *
public SteamNetworking GetISteamNetworking( HSteamUser hSteamUser /*HSteamUser*/, HSteamPipe hSteamPipe /*HSteamPipe*/, string pchVersion /*const char **/ ) public SteamNetworking GetISteamNetworking( HSteamUser hSteamUser /*HSteamUser*/, HSteamPipe hSteamPipe /*HSteamPipe*/, string pchVersion /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); //
IntPtr interface_pointer; IntPtr interface_pointer;
if ( Platform.IsWindows32 ) interface_pointer = Platform.Win32.ISteamClient.GetISteamNetworking( _ptr, hSteamUser, hSteamPipe, pchVersion ); interface_pointer = _pi.ISteamClient_GetISteamNetworking( hSteamUser, hSteamPipe, pchVersion );
else interface_pointer = Platform.Win64.ISteamClient.GetISteamNetworking( _ptr, hSteamUser, hSteamPipe, pchVersion );
return new SteamNetworking( interface_pointer ); return new SteamNetworking( interface_pointer );
} }
// ISteamRemoteStorage * // ISteamRemoteStorage *
public SteamRemoteStorage GetISteamRemoteStorage( HSteamUser hSteamuser /*HSteamUser*/, HSteamPipe hSteamPipe /*HSteamPipe*/, string pchVersion /*const char **/ ) public SteamRemoteStorage GetISteamRemoteStorage( HSteamUser hSteamuser /*HSteamUser*/, HSteamPipe hSteamPipe /*HSteamPipe*/, string pchVersion /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); //
IntPtr interface_pointer; IntPtr interface_pointer;
if ( Platform.IsWindows32 ) interface_pointer = Platform.Win32.ISteamClient.GetISteamRemoteStorage( _ptr, hSteamuser, hSteamPipe, pchVersion ); interface_pointer = _pi.ISteamClient_GetISteamRemoteStorage( hSteamuser, hSteamPipe, pchVersion );
else interface_pointer = Platform.Win64.ISteamClient.GetISteamRemoteStorage( _ptr, hSteamuser, hSteamPipe, pchVersion );
return new SteamRemoteStorage( interface_pointer ); return new SteamRemoteStorage( interface_pointer );
} }
// ISteamScreenshots * // ISteamScreenshots *
public SteamScreenshots GetISteamScreenshots( HSteamUser hSteamuser /*HSteamUser*/, HSteamPipe hSteamPipe /*HSteamPipe*/, string pchVersion /*const char **/ ) public SteamScreenshots GetISteamScreenshots( HSteamUser hSteamuser /*HSteamUser*/, HSteamPipe hSteamPipe /*HSteamPipe*/, string pchVersion /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); //
IntPtr interface_pointer; IntPtr interface_pointer;
if ( Platform.IsWindows32 ) interface_pointer = Platform.Win32.ISteamClient.GetISteamScreenshots( _ptr, hSteamuser, hSteamPipe, pchVersion ); interface_pointer = _pi.ISteamClient_GetISteamScreenshots( hSteamuser, hSteamPipe, pchVersion );
else interface_pointer = Platform.Win64.ISteamClient.GetISteamScreenshots( _ptr, hSteamuser, hSteamPipe, pchVersion );
return new SteamScreenshots( interface_pointer ); return new SteamScreenshots( interface_pointer );
} }
// ISteamUGC * // ISteamUGC *
public SteamUGC GetISteamUGC( HSteamUser hSteamUser /*HSteamUser*/, HSteamPipe hSteamPipe /*HSteamPipe*/, string pchVersion /*const char **/ ) public SteamUGC GetISteamUGC( HSteamUser hSteamUser /*HSteamUser*/, HSteamPipe hSteamPipe /*HSteamPipe*/, string pchVersion /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); //
IntPtr interface_pointer; IntPtr interface_pointer;
if ( Platform.IsWindows32 ) interface_pointer = Platform.Win32.ISteamClient.GetISteamUGC( _ptr, hSteamUser, hSteamPipe, pchVersion ); interface_pointer = _pi.ISteamClient_GetISteamUGC( hSteamUser, hSteamPipe, pchVersion );
else interface_pointer = Platform.Win64.ISteamClient.GetISteamUGC( _ptr, hSteamUser, hSteamPipe, pchVersion );
return new SteamUGC( interface_pointer ); return new SteamUGC( interface_pointer );
} }
// ISteamUnifiedMessages * // ISteamUnifiedMessages *
public SteamUnifiedMessages GetISteamUnifiedMessages( HSteamUser hSteamuser /*HSteamUser*/, HSteamPipe hSteamPipe /*HSteamPipe*/, string pchVersion /*const char **/ ) public SteamUnifiedMessages GetISteamUnifiedMessages( HSteamUser hSteamuser /*HSteamUser*/, HSteamPipe hSteamPipe /*HSteamPipe*/, string pchVersion /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); //
IntPtr interface_pointer; IntPtr interface_pointer;
if ( Platform.IsWindows32 ) interface_pointer = Platform.Win32.ISteamClient.GetISteamUnifiedMessages( _ptr, hSteamuser, hSteamPipe, pchVersion ); interface_pointer = _pi.ISteamClient_GetISteamUnifiedMessages( hSteamuser, hSteamPipe, pchVersion );
else interface_pointer = Platform.Win64.ISteamClient.GetISteamUnifiedMessages( _ptr, hSteamuser, hSteamPipe, pchVersion );
return new SteamUnifiedMessages( interface_pointer ); return new SteamUnifiedMessages( interface_pointer );
} }
// ISteamUser * // ISteamUser *
public SteamUser GetISteamUser( HSteamUser hSteamUser /*HSteamUser*/, HSteamPipe hSteamPipe /*HSteamPipe*/, string pchVersion /*const char **/ ) public SteamUser GetISteamUser( HSteamUser hSteamUser /*HSteamUser*/, HSteamPipe hSteamPipe /*HSteamPipe*/, string pchVersion /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); //
IntPtr interface_pointer; IntPtr interface_pointer;
if ( Platform.IsWindows32 ) interface_pointer = Platform.Win32.ISteamClient.GetISteamUser( _ptr, hSteamUser, hSteamPipe, pchVersion ); interface_pointer = _pi.ISteamClient_GetISteamUser( hSteamUser, hSteamPipe, pchVersion );
else interface_pointer = Platform.Win64.ISteamClient.GetISteamUser( _ptr, hSteamUser, hSteamPipe, pchVersion );
return new SteamUser( interface_pointer ); return new SteamUser( interface_pointer );
} }
// ISteamUserStats * // ISteamUserStats *
public SteamUserStats GetISteamUserStats( HSteamUser hSteamUser /*HSteamUser*/, HSteamPipe hSteamPipe /*HSteamPipe*/, string pchVersion /*const char **/ ) public SteamUserStats GetISteamUserStats( HSteamUser hSteamUser /*HSteamUser*/, HSteamPipe hSteamPipe /*HSteamPipe*/, string pchVersion /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); //
IntPtr interface_pointer; IntPtr interface_pointer;
if ( Platform.IsWindows32 ) interface_pointer = Platform.Win32.ISteamClient.GetISteamUserStats( _ptr, hSteamUser, hSteamPipe, pchVersion ); interface_pointer = _pi.ISteamClient_GetISteamUserStats( hSteamUser, hSteamPipe, pchVersion );
else interface_pointer = Platform.Win64.ISteamClient.GetISteamUserStats( _ptr, hSteamUser, hSteamPipe, pchVersion );
return new SteamUserStats( interface_pointer ); return new SteamUserStats( interface_pointer );
} }
// ISteamUtils * // ISteamUtils *
public SteamUtils GetISteamUtils( HSteamPipe hSteamPipe /*HSteamPipe*/, string pchVersion /*const char **/ ) public SteamUtils GetISteamUtils( HSteamPipe hSteamPipe /*HSteamPipe*/, string pchVersion /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); //
IntPtr interface_pointer; IntPtr interface_pointer;
if ( Platform.IsWindows32 ) interface_pointer = Platform.Win32.ISteamClient.GetISteamUtils( _ptr, hSteamPipe, pchVersion ); interface_pointer = _pi.ISteamClient_GetISteamUtils( hSteamPipe, pchVersion );
else interface_pointer = Platform.Win64.ISteamClient.GetISteamUtils( _ptr, hSteamPipe, pchVersion );
return new SteamUtils( interface_pointer ); return new SteamUtils( interface_pointer );
} }
// ISteamVideo * // ISteamVideo *
public SteamVideo GetISteamVideo( HSteamUser hSteamuser /*HSteamUser*/, HSteamPipe hSteamPipe /*HSteamPipe*/, string pchVersion /*const char **/ ) public SteamVideo GetISteamVideo( HSteamUser hSteamuser /*HSteamUser*/, HSteamPipe hSteamPipe /*HSteamPipe*/, string pchVersion /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); //
IntPtr interface_pointer; IntPtr interface_pointer;
if ( Platform.IsWindows32 ) interface_pointer = Platform.Win32.ISteamClient.GetISteamVideo( _ptr, hSteamuser, hSteamPipe, pchVersion ); interface_pointer = _pi.ISteamClient_GetISteamVideo( hSteamuser, hSteamPipe, pchVersion );
else interface_pointer = Platform.Win64.ISteamClient.GetISteamVideo( _ptr, hSteamuser, hSteamPipe, pchVersion );
return new SteamVideo( interface_pointer ); return new SteamVideo( interface_pointer );
} }
// void // void
public void ReleaseUser( HSteamPipe hSteamPipe /*HSteamPipe*/, HSteamUser hUser /*HSteamUser*/ ) public void ReleaseUser( HSteamPipe hSteamPipe /*HSteamPipe*/, HSteamUser hUser /*HSteamUser*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamClient_ReleaseUser( hSteamPipe, hUser );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamClient.ReleaseUser( _ptr, hSteamPipe, hUser );
else Platform.Win64.ISteamClient.ReleaseUser( _ptr, hSteamPipe, hUser );
} }
// void // void
public void SetLocalIPBinding( uint unIP /*uint32*/, ushort usPort /*uint16*/ ) public void SetLocalIPBinding( uint unIP /*uint32*/, ushort usPort /*uint16*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamClient_SetLocalIPBinding( unIP, usPort );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamClient.SetLocalIPBinding( _ptr, unIP, usPort );
else Platform.Win64.ISteamClient.SetLocalIPBinding( _ptr, unIP, usPort );
} }
// void // void
public void SetWarningMessageHook( IntPtr pFunction /*SteamAPIWarningMessageHook_t*/ ) public void SetWarningMessageHook( IntPtr pFunction /*SteamAPIWarningMessageHook_t*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamClient_SetWarningMessageHook( (IntPtr) pFunction );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamClient.SetWarningMessageHook( _ptr, (IntPtr) pFunction );
else Platform.Win64.ISteamClient.SetWarningMessageHook( _ptr, (IntPtr) pFunction );
} }
} }

View File

@ -5,165 +5,119 @@ namespace SteamNative
{ {
public unsafe class SteamController public unsafe class SteamController
{ {
internal IntPtr _ptr; internal Platform.Interface _pi;
public SteamController( IntPtr pointer ) public SteamController( IntPtr pointer )
{ {
_ptr = pointer; if ( Platform.IsWindows64 ) _pi = new Platform.Win64( pointer );
else if ( Platform.IsWindows32 ) _pi = new Platform.Win32( pointer );
else if ( Platform.IsLinux32 ) _pi = new Platform.Linux32( pointer );
else if ( Platform.IsLinux64 ) _pi = new Platform.Linux64( pointer );
else if ( Platform.IsOsx ) _pi = new Platform.Mac( pointer );
} }
public bool IsValid{ get{ return _pi != null && _pi.IsValid; } }
// void // void
public void ActivateActionSet( ControllerHandle_t controllerHandle /*ControllerHandle_t*/, ControllerActionSetHandle_t actionSetHandle /*ControllerActionSetHandle_t*/ ) public void ActivateActionSet( ControllerHandle_t controllerHandle /*ControllerHandle_t*/, ControllerActionSetHandle_t actionSetHandle /*ControllerActionSetHandle_t*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamController_ActivateActionSet( controllerHandle, actionSetHandle );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamController.ActivateActionSet( _ptr, controllerHandle, actionSetHandle );
else Platform.Win64.ISteamController.ActivateActionSet( _ptr, controllerHandle, actionSetHandle );
} }
// ControllerActionSetHandle_t // ControllerActionSetHandle_t
public ControllerActionSetHandle_t GetActionSetHandle( string pszActionSetName /*const char **/ ) public ControllerActionSetHandle_t GetActionSetHandle( string pszActionSetName /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamController_GetActionSetHandle( pszActionSetName );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamController.GetActionSetHandle( _ptr, pszActionSetName );
else return Platform.Win64.ISteamController.GetActionSetHandle( _ptr, pszActionSetName );
} }
// ControllerAnalogActionData_t // ControllerAnalogActionData_t
public ControllerAnalogActionData_t GetAnalogActionData( ControllerHandle_t controllerHandle /*ControllerHandle_t*/, ControllerAnalogActionHandle_t analogActionHandle /*ControllerAnalogActionHandle_t*/ ) public ControllerAnalogActionData_t GetAnalogActionData( ControllerHandle_t controllerHandle /*ControllerHandle_t*/, ControllerAnalogActionHandle_t analogActionHandle /*ControllerAnalogActionHandle_t*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamController_GetAnalogActionData( controllerHandle, analogActionHandle );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamController.GetAnalogActionData( _ptr, controllerHandle, analogActionHandle );
else return Platform.Win64.ISteamController.GetAnalogActionData( _ptr, controllerHandle, analogActionHandle );
} }
// ControllerAnalogActionHandle_t // ControllerAnalogActionHandle_t
public ControllerAnalogActionHandle_t GetAnalogActionHandle( string pszActionName /*const char **/ ) public ControllerAnalogActionHandle_t GetAnalogActionHandle( string pszActionName /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamController_GetAnalogActionHandle( pszActionName );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamController.GetAnalogActionHandle( _ptr, pszActionName );
else return Platform.Win64.ISteamController.GetAnalogActionHandle( _ptr, pszActionName );
} }
// int // int
public int GetAnalogActionOrigins( ControllerHandle_t controllerHandle /*ControllerHandle_t*/, ControllerActionSetHandle_t actionSetHandle /*ControllerActionSetHandle_t*/, ControllerAnalogActionHandle_t analogActionHandle /*ControllerAnalogActionHandle_t*/, out ControllerActionOrigin originsOut /*EControllerActionOrigin **/ ) public int GetAnalogActionOrigins( ControllerHandle_t controllerHandle /*ControllerHandle_t*/, ControllerActionSetHandle_t actionSetHandle /*ControllerActionSetHandle_t*/, ControllerAnalogActionHandle_t analogActionHandle /*ControllerAnalogActionHandle_t*/, out ControllerActionOrigin originsOut /*EControllerActionOrigin **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamController_GetAnalogActionOrigins( controllerHandle, actionSetHandle, analogActionHandle, out originsOut );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamController.GetAnalogActionOrigins( _ptr, controllerHandle, actionSetHandle, analogActionHandle, out originsOut );
else return Platform.Win64.ISteamController.GetAnalogActionOrigins( _ptr, controllerHandle, actionSetHandle, analogActionHandle, out originsOut );
} }
// int // int
public int GetConnectedControllers( ControllerHandle_t* handlesOut /*ControllerHandle_t **/ ) public int GetConnectedControllers( ControllerHandle_t* handlesOut /*ControllerHandle_t **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamController_GetConnectedControllers( (IntPtr) handlesOut );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamController.GetConnectedControllers( _ptr, (IntPtr) handlesOut );
else return Platform.Win64.ISteamController.GetConnectedControllers( _ptr, (IntPtr) handlesOut );
} }
// ControllerActionSetHandle_t // ControllerActionSetHandle_t
public ControllerActionSetHandle_t GetCurrentActionSet( ControllerHandle_t controllerHandle /*ControllerHandle_t*/ ) public ControllerActionSetHandle_t GetCurrentActionSet( ControllerHandle_t controllerHandle /*ControllerHandle_t*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamController_GetCurrentActionSet( controllerHandle );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamController.GetCurrentActionSet( _ptr, controllerHandle );
else return Platform.Win64.ISteamController.GetCurrentActionSet( _ptr, controllerHandle );
} }
// ControllerDigitalActionData_t // ControllerDigitalActionData_t
public ControllerDigitalActionData_t GetDigitalActionData( ControllerHandle_t controllerHandle /*ControllerHandle_t*/, ControllerDigitalActionHandle_t digitalActionHandle /*ControllerDigitalActionHandle_t*/ ) public ControllerDigitalActionData_t GetDigitalActionData( ControllerHandle_t controllerHandle /*ControllerHandle_t*/, ControllerDigitalActionHandle_t digitalActionHandle /*ControllerDigitalActionHandle_t*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamController_GetDigitalActionData( controllerHandle, digitalActionHandle );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamController.GetDigitalActionData( _ptr, controllerHandle, digitalActionHandle );
else return Platform.Win64.ISteamController.GetDigitalActionData( _ptr, controllerHandle, digitalActionHandle );
} }
// ControllerDigitalActionHandle_t // ControllerDigitalActionHandle_t
public ControllerDigitalActionHandle_t GetDigitalActionHandle( string pszActionName /*const char **/ ) public ControllerDigitalActionHandle_t GetDigitalActionHandle( string pszActionName /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamController_GetDigitalActionHandle( pszActionName );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamController.GetDigitalActionHandle( _ptr, pszActionName );
else return Platform.Win64.ISteamController.GetDigitalActionHandle( _ptr, pszActionName );
} }
// int // int
public int GetDigitalActionOrigins( ControllerHandle_t controllerHandle /*ControllerHandle_t*/, ControllerActionSetHandle_t actionSetHandle /*ControllerActionSetHandle_t*/, ControllerDigitalActionHandle_t digitalActionHandle /*ControllerDigitalActionHandle_t*/, out ControllerActionOrigin originsOut /*EControllerActionOrigin **/ ) public int GetDigitalActionOrigins( ControllerHandle_t controllerHandle /*ControllerHandle_t*/, ControllerActionSetHandle_t actionSetHandle /*ControllerActionSetHandle_t*/, ControllerDigitalActionHandle_t digitalActionHandle /*ControllerDigitalActionHandle_t*/, out ControllerActionOrigin originsOut /*EControllerActionOrigin **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamController_GetDigitalActionOrigins( controllerHandle, actionSetHandle, digitalActionHandle, out originsOut );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamController.GetDigitalActionOrigins( _ptr, controllerHandle, actionSetHandle, digitalActionHandle, out originsOut );
else return Platform.Win64.ISteamController.GetDigitalActionOrigins( _ptr, controllerHandle, actionSetHandle, digitalActionHandle, out originsOut );
} }
// bool // bool
public bool Init() public bool Init()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamController_Init();
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamController.Init( _ptr );
else return Platform.Win64.ISteamController.Init( _ptr );
} }
// void // void
public void RunFrame() public void RunFrame()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamController_RunFrame();
if ( Platform.IsWindows32 ) Platform.Win32.ISteamController.RunFrame( _ptr );
else Platform.Win64.ISteamController.RunFrame( _ptr );
} }
// bool // bool
public bool ShowBindingPanel( ControllerHandle_t controllerHandle /*ControllerHandle_t*/ ) public bool ShowBindingPanel( ControllerHandle_t controllerHandle /*ControllerHandle_t*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamController_ShowBindingPanel( controllerHandle );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamController.ShowBindingPanel( _ptr, controllerHandle );
else return Platform.Win64.ISteamController.ShowBindingPanel( _ptr, controllerHandle );
} }
// bool // bool
public bool Shutdown() public bool Shutdown()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamController_Shutdown();
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamController.Shutdown( _ptr );
else return Platform.Win64.ISteamController.Shutdown( _ptr );
} }
// void // void
public void StopAnalogActionMomentum( ControllerHandle_t controllerHandle /*ControllerHandle_t*/, ControllerAnalogActionHandle_t eAction /*ControllerAnalogActionHandle_t*/ ) public void StopAnalogActionMomentum( ControllerHandle_t controllerHandle /*ControllerHandle_t*/, ControllerAnalogActionHandle_t eAction /*ControllerAnalogActionHandle_t*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamController_StopAnalogActionMomentum( controllerHandle, eAction );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamController.StopAnalogActionMomentum( _ptr, controllerHandle, eAction );
else Platform.Win64.ISteamController.StopAnalogActionMomentum( _ptr, controllerHandle, eAction );
} }
// void // void
public void TriggerHapticPulse( ControllerHandle_t controllerHandle /*ControllerHandle_t*/, SteamControllerPad eTargetPad /*ESteamControllerPad*/, ushort usDurationMicroSec /*unsigned short*/ ) public void TriggerHapticPulse( ControllerHandle_t controllerHandle /*ControllerHandle_t*/, SteamControllerPad eTargetPad /*ESteamControllerPad*/, ushort usDurationMicroSec /*unsigned short*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamController_TriggerHapticPulse( controllerHandle, eTargetPad, usDurationMicroSec );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamController.TriggerHapticPulse( _ptr, controllerHandle, eTargetPad, usDurationMicroSec );
else Platform.Win64.ISteamController.TriggerHapticPulse( _ptr, controllerHandle, eTargetPad, usDurationMicroSec );
} }
// void // void
public void TriggerRepeatedHapticPulse( ControllerHandle_t controllerHandle /*ControllerHandle_t*/, SteamControllerPad eTargetPad /*ESteamControllerPad*/, ushort usDurationMicroSec /*unsigned short*/, ushort usOffMicroSec /*unsigned short*/, ushort unRepeat /*unsigned short*/, uint nFlags /*unsigned int*/ ) public void TriggerRepeatedHapticPulse( ControllerHandle_t controllerHandle /*ControllerHandle_t*/, SteamControllerPad eTargetPad /*ESteamControllerPad*/, ushort usDurationMicroSec /*unsigned short*/, ushort usOffMicroSec /*unsigned short*/, ushort unRepeat /*unsigned short*/, uint nFlags /*unsigned int*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamController_TriggerRepeatedHapticPulse( controllerHandle, eTargetPad, usDurationMicroSec, usOffMicroSec, unRepeat, nFlags );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamController.TriggerRepeatedHapticPulse( _ptr, controllerHandle, eTargetPad, usDurationMicroSec, usOffMicroSec, unRepeat, nFlags );
else Platform.Win64.ISteamController.TriggerRepeatedHapticPulse( _ptr, controllerHandle, eTargetPad, usDurationMicroSec, usOffMicroSec, unRepeat, nFlags );
} }
} }

View File

@ -5,308 +5,217 @@ namespace SteamNative
{ {
public unsafe class SteamFriends public unsafe class SteamFriends
{ {
internal IntPtr _ptr; internal Platform.Interface _pi;
public SteamFriends( IntPtr pointer ) public SteamFriends( IntPtr pointer )
{ {
_ptr = pointer; if ( Platform.IsWindows64 ) _pi = new Platform.Win64( pointer );
else if ( Platform.IsWindows32 ) _pi = new Platform.Win32( pointer );
else if ( Platform.IsLinux32 ) _pi = new Platform.Linux32( pointer );
else if ( Platform.IsLinux64 ) _pi = new Platform.Linux64( pointer );
else if ( Platform.IsOsx ) _pi = new Platform.Mac( pointer );
} }
public bool IsValid{ get{ return _pi != null && _pi.IsValid; } }
// void // void
public void ActivateGameOverlay( string pchDialog /*const char **/ ) public void ActivateGameOverlay( string pchDialog /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamFriends_ActivateGameOverlay( pchDialog );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamFriends.ActivateGameOverlay( _ptr, pchDialog );
else Platform.Win64.ISteamFriends.ActivateGameOverlay( _ptr, pchDialog );
} }
// void // void
public void ActivateGameOverlayInviteDialog( CSteamID steamIDLobby /*class CSteamID*/ ) public void ActivateGameOverlayInviteDialog( CSteamID steamIDLobby /*class CSteamID*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamFriends_ActivateGameOverlayInviteDialog( steamIDLobby );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamFriends.ActivateGameOverlayInviteDialog( _ptr, steamIDLobby );
else Platform.Win64.ISteamFriends.ActivateGameOverlayInviteDialog( _ptr, steamIDLobby );
} }
// void // void
public void ActivateGameOverlayToStore( AppId_t nAppID /*AppId_t*/, OverlayToStoreFlag eFlag /*EOverlayToStoreFlag*/ ) public void ActivateGameOverlayToStore( AppId_t nAppID /*AppId_t*/, OverlayToStoreFlag eFlag /*EOverlayToStoreFlag*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamFriends_ActivateGameOverlayToStore( nAppID, eFlag );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamFriends.ActivateGameOverlayToStore( _ptr, nAppID, eFlag );
else Platform.Win64.ISteamFriends.ActivateGameOverlayToStore( _ptr, nAppID, eFlag );
} }
// void // void
public void ActivateGameOverlayToUser( string pchDialog /*const char **/, CSteamID steamID /*class CSteamID*/ ) public void ActivateGameOverlayToUser( string pchDialog /*const char **/, CSteamID steamID /*class CSteamID*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamFriends_ActivateGameOverlayToUser( pchDialog, steamID );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamFriends.ActivateGameOverlayToUser( _ptr, pchDialog, steamID );
else Platform.Win64.ISteamFriends.ActivateGameOverlayToUser( _ptr, pchDialog, steamID );
} }
// void // void
public void ActivateGameOverlayToWebPage( string pchURL /*const char **/ ) public void ActivateGameOverlayToWebPage( string pchURL /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamFriends_ActivateGameOverlayToWebPage( pchURL );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamFriends.ActivateGameOverlayToWebPage( _ptr, pchURL );
else Platform.Win64.ISteamFriends.ActivateGameOverlayToWebPage( _ptr, pchURL );
} }
// void // void
public void ClearRichPresence() public void ClearRichPresence()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamFriends_ClearRichPresence();
if ( Platform.IsWindows32 ) Platform.Win32.ISteamFriends.ClearRichPresence( _ptr );
else Platform.Win64.ISteamFriends.ClearRichPresence( _ptr );
} }
// bool // bool
public bool CloseClanChatWindowInSteam( CSteamID steamIDClanChat /*class CSteamID*/ ) public bool CloseClanChatWindowInSteam( CSteamID steamIDClanChat /*class CSteamID*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamFriends_CloseClanChatWindowInSteam( steamIDClanChat );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamFriends.CloseClanChatWindowInSteam( _ptr, steamIDClanChat );
else return Platform.Win64.ISteamFriends.CloseClanChatWindowInSteam( _ptr, steamIDClanChat );
} }
// SteamAPICall_t // SteamAPICall_t
public SteamAPICall_t DownloadClanActivityCounts( IntPtr psteamIDClans /*class CSteamID **/, int cClansToRequest /*int*/ ) public SteamAPICall_t DownloadClanActivityCounts( IntPtr psteamIDClans /*class CSteamID **/, int cClansToRequest /*int*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamFriends_DownloadClanActivityCounts( (IntPtr) psteamIDClans, cClansToRequest );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamFriends.DownloadClanActivityCounts( _ptr, (IntPtr) psteamIDClans, cClansToRequest );
else return Platform.Win64.ISteamFriends.DownloadClanActivityCounts( _ptr, (IntPtr) psteamIDClans, cClansToRequest );
} }
// SteamAPICall_t // SteamAPICall_t
public SteamAPICall_t EnumerateFollowingList( uint unStartIndex /*uint32*/ ) public SteamAPICall_t EnumerateFollowingList( uint unStartIndex /*uint32*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamFriends_EnumerateFollowingList( unStartIndex );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamFriends.EnumerateFollowingList( _ptr, unStartIndex );
else return Platform.Win64.ISteamFriends.EnumerateFollowingList( _ptr, unStartIndex );
} }
// ulong // ulong
public ulong GetChatMemberByIndex( CSteamID steamIDClan /*class CSteamID*/, int iUser /*int*/ ) public ulong GetChatMemberByIndex( CSteamID steamIDClan /*class CSteamID*/, int iUser /*int*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamFriends_GetChatMemberByIndex( steamIDClan, iUser );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamFriends.GetChatMemberByIndex( _ptr, steamIDClan, iUser );
else return Platform.Win64.ISteamFriends.GetChatMemberByIndex( _ptr, steamIDClan, iUser );
} }
// bool // bool
public bool GetClanActivityCounts( CSteamID steamIDClan /*class CSteamID*/, out int pnOnline /*int **/, out int pnInGame /*int **/, out int pnChatting /*int **/ ) public bool GetClanActivityCounts( CSteamID steamIDClan /*class CSteamID*/, out int pnOnline /*int **/, out int pnInGame /*int **/, out int pnChatting /*int **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamFriends_GetClanActivityCounts( steamIDClan, out pnOnline, out pnInGame, out pnChatting );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamFriends.GetClanActivityCounts( _ptr, steamIDClan, out pnOnline, out pnInGame, out pnChatting );
else return Platform.Win64.ISteamFriends.GetClanActivityCounts( _ptr, steamIDClan, out pnOnline, out pnInGame, out pnChatting );
} }
// ulong // ulong
public ulong GetClanByIndex( int iClan /*int*/ ) public ulong GetClanByIndex( int iClan /*int*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamFriends_GetClanByIndex( iClan );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamFriends.GetClanByIndex( _ptr, iClan );
else return Platform.Win64.ISteamFriends.GetClanByIndex( _ptr, iClan );
} }
// int // int
public int GetClanChatMemberCount( CSteamID steamIDClan /*class CSteamID*/ ) public int GetClanChatMemberCount( CSteamID steamIDClan /*class CSteamID*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamFriends_GetClanChatMemberCount( steamIDClan );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamFriends.GetClanChatMemberCount( _ptr, steamIDClan );
else return Platform.Win64.ISteamFriends.GetClanChatMemberCount( _ptr, steamIDClan );
} }
// int // int
public int GetClanChatMessage( CSteamID steamIDClanChat /*class CSteamID*/, int iMessage /*int*/, IntPtr prgchText /*void **/, int cchTextMax /*int*/, out ChatEntryType peChatEntryType /*EChatEntryType **/, out CSteamID psteamidChatter /*class CSteamID **/ ) public int GetClanChatMessage( CSteamID steamIDClanChat /*class CSteamID*/, int iMessage /*int*/, IntPtr prgchText /*void **/, int cchTextMax /*int*/, out ChatEntryType peChatEntryType /*EChatEntryType **/, out CSteamID psteamidChatter /*class CSteamID **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamFriends_GetClanChatMessage( steamIDClanChat, iMessage, (IntPtr) prgchText, cchTextMax, out peChatEntryType, out psteamidChatter );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamFriends.GetClanChatMessage( _ptr, steamIDClanChat, iMessage, (IntPtr) prgchText, cchTextMax, out peChatEntryType, out psteamidChatter );
else return Platform.Win64.ISteamFriends.GetClanChatMessage( _ptr, steamIDClanChat, iMessage, (IntPtr) prgchText, cchTextMax, out peChatEntryType, out psteamidChatter );
} }
// int // int
public int GetClanCount() public int GetClanCount()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamFriends_GetClanCount();
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamFriends.GetClanCount( _ptr );
else return Platform.Win64.ISteamFriends.GetClanCount( _ptr );
} }
// string // string
// with: Detect_StringReturn // with: Detect_StringReturn
public string GetClanName( CSteamID steamIDClan /*class CSteamID*/ ) public string GetClanName( CSteamID steamIDClan /*class CSteamID*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); //
IntPtr string_pointer; IntPtr string_pointer;
if ( Platform.IsWindows32 ) string_pointer = Platform.Win32.ISteamFriends.GetClanName( _ptr, steamIDClan ); string_pointer = _pi.ISteamFriends_GetClanName( steamIDClan );
else string_pointer = Platform.Win64.ISteamFriends.GetClanName( _ptr, steamIDClan );
return Marshal.PtrToStringAnsi( string_pointer ); return Marshal.PtrToStringAnsi( string_pointer );
} }
// ulong // ulong
public ulong GetClanOfficerByIndex( CSteamID steamIDClan /*class CSteamID*/, int iOfficer /*int*/ ) public ulong GetClanOfficerByIndex( CSteamID steamIDClan /*class CSteamID*/, int iOfficer /*int*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamFriends_GetClanOfficerByIndex( steamIDClan, iOfficer );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamFriends.GetClanOfficerByIndex( _ptr, steamIDClan, iOfficer );
else return Platform.Win64.ISteamFriends.GetClanOfficerByIndex( _ptr, steamIDClan, iOfficer );
} }
// int // int
public int GetClanOfficerCount( CSteamID steamIDClan /*class CSteamID*/ ) public int GetClanOfficerCount( CSteamID steamIDClan /*class CSteamID*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamFriends_GetClanOfficerCount( steamIDClan );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamFriends.GetClanOfficerCount( _ptr, steamIDClan );
else return Platform.Win64.ISteamFriends.GetClanOfficerCount( _ptr, steamIDClan );
} }
// ulong // ulong
public ulong GetClanOwner( CSteamID steamIDClan /*class CSteamID*/ ) public ulong GetClanOwner( CSteamID steamIDClan /*class CSteamID*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamFriends_GetClanOwner( steamIDClan );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamFriends.GetClanOwner( _ptr, steamIDClan );
else return Platform.Win64.ISteamFriends.GetClanOwner( _ptr, steamIDClan );
} }
// string // string
// with: Detect_StringReturn // with: Detect_StringReturn
public string GetClanTag( CSteamID steamIDClan /*class CSteamID*/ ) public string GetClanTag( CSteamID steamIDClan /*class CSteamID*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); //
IntPtr string_pointer; IntPtr string_pointer;
if ( Platform.IsWindows32 ) string_pointer = Platform.Win32.ISteamFriends.GetClanTag( _ptr, steamIDClan ); string_pointer = _pi.ISteamFriends_GetClanTag( steamIDClan );
else string_pointer = Platform.Win64.ISteamFriends.GetClanTag( _ptr, steamIDClan );
return Marshal.PtrToStringAnsi( string_pointer ); return Marshal.PtrToStringAnsi( string_pointer );
} }
// ulong // ulong
public ulong GetCoplayFriend( int iCoplayFriend /*int*/ ) public ulong GetCoplayFriend( int iCoplayFriend /*int*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamFriends_GetCoplayFriend( iCoplayFriend );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamFriends.GetCoplayFriend( _ptr, iCoplayFriend );
else return Platform.Win64.ISteamFriends.GetCoplayFriend( _ptr, iCoplayFriend );
} }
// int // int
public int GetCoplayFriendCount() public int GetCoplayFriendCount()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamFriends_GetCoplayFriendCount();
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamFriends.GetCoplayFriendCount( _ptr );
else return Platform.Win64.ISteamFriends.GetCoplayFriendCount( _ptr );
} }
// SteamAPICall_t // SteamAPICall_t
public SteamAPICall_t GetFollowerCount( CSteamID steamID /*class CSteamID*/ ) public SteamAPICall_t GetFollowerCount( CSteamID steamID /*class CSteamID*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamFriends_GetFollowerCount( steamID );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamFriends.GetFollowerCount( _ptr, steamID );
else return Platform.Win64.ISteamFriends.GetFollowerCount( _ptr, steamID );
} }
// ulong // ulong
public ulong GetFriendByIndex( int iFriend /*int*/, int iFriendFlags /*int*/ ) public ulong GetFriendByIndex( int iFriend /*int*/, int iFriendFlags /*int*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamFriends_GetFriendByIndex( iFriend, iFriendFlags );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamFriends.GetFriendByIndex( _ptr, iFriend, iFriendFlags );
else return Platform.Win64.ISteamFriends.GetFriendByIndex( _ptr, iFriend, iFriendFlags );
} }
// AppId_t // AppId_t
public AppId_t GetFriendCoplayGame( CSteamID steamIDFriend /*class CSteamID*/ ) public AppId_t GetFriendCoplayGame( CSteamID steamIDFriend /*class CSteamID*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamFriends_GetFriendCoplayGame( steamIDFriend );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamFriends.GetFriendCoplayGame( _ptr, steamIDFriend );
else return Platform.Win64.ISteamFriends.GetFriendCoplayGame( _ptr, steamIDFriend );
} }
// int // int
public int GetFriendCoplayTime( CSteamID steamIDFriend /*class CSteamID*/ ) public int GetFriendCoplayTime( CSteamID steamIDFriend /*class CSteamID*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamFriends_GetFriendCoplayTime( steamIDFriend );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamFriends.GetFriendCoplayTime( _ptr, steamIDFriend );
else return Platform.Win64.ISteamFriends.GetFriendCoplayTime( _ptr, steamIDFriend );
} }
// int // int
public int GetFriendCount( int iFriendFlags /*int*/ ) public int GetFriendCount( int iFriendFlags /*int*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamFriends_GetFriendCount( iFriendFlags );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamFriends.GetFriendCount( _ptr, iFriendFlags );
else return Platform.Win64.ISteamFriends.GetFriendCount( _ptr, iFriendFlags );
} }
// int // int
public int GetFriendCountFromSource( CSteamID steamIDSource /*class CSteamID*/ ) public int GetFriendCountFromSource( CSteamID steamIDSource /*class CSteamID*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamFriends_GetFriendCountFromSource( steamIDSource );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamFriends.GetFriendCountFromSource( _ptr, steamIDSource );
else return Platform.Win64.ISteamFriends.GetFriendCountFromSource( _ptr, steamIDSource );
} }
// ulong // ulong
public ulong GetFriendFromSourceByIndex( CSteamID steamIDSource /*class CSteamID*/, int iFriend /*int*/ ) public ulong GetFriendFromSourceByIndex( CSteamID steamIDSource /*class CSteamID*/, int iFriend /*int*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamFriends_GetFriendFromSourceByIndex( steamIDSource, iFriend );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamFriends.GetFriendFromSourceByIndex( _ptr, steamIDSource, iFriend );
else return Platform.Win64.ISteamFriends.GetFriendFromSourceByIndex( _ptr, steamIDSource, iFriend );
} }
// bool // bool
public bool GetFriendGamePlayed( CSteamID steamIDFriend /*class CSteamID*/, ref FriendGameInfo_t pFriendGameInfo /*struct FriendGameInfo_t **/ ) public bool GetFriendGamePlayed( CSteamID steamIDFriend /*class CSteamID*/, ref FriendGameInfo_t pFriendGameInfo /*struct FriendGameInfo_t **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamFriends_GetFriendGamePlayed( steamIDFriend, ref pFriendGameInfo );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamFriends.GetFriendGamePlayed( _ptr, steamIDFriend, ref pFriendGameInfo );
else return Platform.Win64.ISteamFriends.GetFriendGamePlayed( _ptr, steamIDFriend, ref pFriendGameInfo );
} }
// int // int
public int GetFriendMessage( CSteamID steamIDFriend /*class CSteamID*/, int iMessageID /*int*/, IntPtr pvData /*void **/, int cubData /*int*/, out ChatEntryType peChatEntryType /*EChatEntryType **/ ) public int GetFriendMessage( CSteamID steamIDFriend /*class CSteamID*/, int iMessageID /*int*/, IntPtr pvData /*void **/, int cubData /*int*/, out ChatEntryType peChatEntryType /*EChatEntryType **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamFriends_GetFriendMessage( steamIDFriend, iMessageID, (IntPtr) pvData, cubData, out peChatEntryType );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamFriends.GetFriendMessage( _ptr, steamIDFriend, iMessageID, (IntPtr) pvData, cubData, out peChatEntryType );
else return Platform.Win64.ISteamFriends.GetFriendMessage( _ptr, steamIDFriend, iMessageID, (IntPtr) pvData, cubData, out peChatEntryType );
} }
// string // string
// with: Detect_StringReturn // with: Detect_StringReturn
public string GetFriendPersonaName( CSteamID steamIDFriend /*class CSteamID*/ ) public string GetFriendPersonaName( CSteamID steamIDFriend /*class CSteamID*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); //
IntPtr string_pointer; IntPtr string_pointer;
if ( Platform.IsWindows32 ) string_pointer = Platform.Win32.ISteamFriends.GetFriendPersonaName( _ptr, steamIDFriend ); string_pointer = _pi.ISteamFriends_GetFriendPersonaName( steamIDFriend );
else string_pointer = Platform.Win64.ISteamFriends.GetFriendPersonaName( _ptr, steamIDFriend );
return Marshal.PtrToStringAnsi( string_pointer ); return Marshal.PtrToStringAnsi( string_pointer );
} }
@ -314,41 +223,29 @@ namespace SteamNative
// with: Detect_StringReturn // with: Detect_StringReturn
public string GetFriendPersonaNameHistory( CSteamID steamIDFriend /*class CSteamID*/, int iPersonaName /*int*/ ) public string GetFriendPersonaNameHistory( CSteamID steamIDFriend /*class CSteamID*/, int iPersonaName /*int*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); //
IntPtr string_pointer; IntPtr string_pointer;
if ( Platform.IsWindows32 ) string_pointer = Platform.Win32.ISteamFriends.GetFriendPersonaNameHistory( _ptr, steamIDFriend, iPersonaName ); string_pointer = _pi.ISteamFriends_GetFriendPersonaNameHistory( steamIDFriend, iPersonaName );
else string_pointer = Platform.Win64.ISteamFriends.GetFriendPersonaNameHistory( _ptr, steamIDFriend, iPersonaName );
return Marshal.PtrToStringAnsi( string_pointer ); return Marshal.PtrToStringAnsi( string_pointer );
} }
// PersonaState // PersonaState
public PersonaState GetFriendPersonaState( CSteamID steamIDFriend /*class CSteamID*/ ) public PersonaState GetFriendPersonaState( CSteamID steamIDFriend /*class CSteamID*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamFriends_GetFriendPersonaState( steamIDFriend );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamFriends.GetFriendPersonaState( _ptr, steamIDFriend );
else return Platform.Win64.ISteamFriends.GetFriendPersonaState( _ptr, steamIDFriend );
} }
// FriendRelationship // FriendRelationship
public FriendRelationship GetFriendRelationship( CSteamID steamIDFriend /*class CSteamID*/ ) public FriendRelationship GetFriendRelationship( CSteamID steamIDFriend /*class CSteamID*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamFriends_GetFriendRelationship( steamIDFriend );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamFriends.GetFriendRelationship( _ptr, steamIDFriend );
else return Platform.Win64.ISteamFriends.GetFriendRelationship( _ptr, steamIDFriend );
} }
// string // string
// with: Detect_StringReturn // with: Detect_StringReturn
public string GetFriendRichPresence( CSteamID steamIDFriend /*class CSteamID*/, string pchKey /*const char **/ ) public string GetFriendRichPresence( CSteamID steamIDFriend /*class CSteamID*/, string pchKey /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); //
IntPtr string_pointer; IntPtr string_pointer;
if ( Platform.IsWindows32 ) string_pointer = Platform.Win32.ISteamFriends.GetFriendRichPresence( _ptr, steamIDFriend, pchKey ); string_pointer = _pi.ISteamFriends_GetFriendRichPresence( steamIDFriend, pchKey );
else string_pointer = Platform.Win64.ISteamFriends.GetFriendRichPresence( _ptr, steamIDFriend, pchKey );
return Marshal.PtrToStringAnsi( string_pointer ); return Marshal.PtrToStringAnsi( string_pointer );
} }
@ -356,318 +253,216 @@ namespace SteamNative
// with: Detect_StringReturn // with: Detect_StringReturn
public string GetFriendRichPresenceKeyByIndex( CSteamID steamIDFriend /*class CSteamID*/, int iKey /*int*/ ) public string GetFriendRichPresenceKeyByIndex( CSteamID steamIDFriend /*class CSteamID*/, int iKey /*int*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); //
IntPtr string_pointer; IntPtr string_pointer;
if ( Platform.IsWindows32 ) string_pointer = Platform.Win32.ISteamFriends.GetFriendRichPresenceKeyByIndex( _ptr, steamIDFriend, iKey ); string_pointer = _pi.ISteamFriends_GetFriendRichPresenceKeyByIndex( steamIDFriend, iKey );
else string_pointer = Platform.Win64.ISteamFriends.GetFriendRichPresenceKeyByIndex( _ptr, steamIDFriend, iKey );
return Marshal.PtrToStringAnsi( string_pointer ); return Marshal.PtrToStringAnsi( string_pointer );
} }
// int // int
public int GetFriendRichPresenceKeyCount( CSteamID steamIDFriend /*class CSteamID*/ ) public int GetFriendRichPresenceKeyCount( CSteamID steamIDFriend /*class CSteamID*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamFriends_GetFriendRichPresenceKeyCount( steamIDFriend );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamFriends.GetFriendRichPresenceKeyCount( _ptr, steamIDFriend );
else return Platform.Win64.ISteamFriends.GetFriendRichPresenceKeyCount( _ptr, steamIDFriend );
} }
// int // int
public int GetFriendsGroupCount() public int GetFriendsGroupCount()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamFriends_GetFriendsGroupCount();
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamFriends.GetFriendsGroupCount( _ptr );
else return Platform.Win64.ISteamFriends.GetFriendsGroupCount( _ptr );
} }
// FriendsGroupID_t // FriendsGroupID_t
public FriendsGroupID_t GetFriendsGroupIDByIndex( int iFG /*int*/ ) public FriendsGroupID_t GetFriendsGroupIDByIndex( int iFG /*int*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamFriends_GetFriendsGroupIDByIndex( iFG );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamFriends.GetFriendsGroupIDByIndex( _ptr, iFG );
else return Platform.Win64.ISteamFriends.GetFriendsGroupIDByIndex( _ptr, iFG );
} }
// int // int
public int GetFriendsGroupMembersCount( FriendsGroupID_t friendsGroupID /*FriendsGroupID_t*/ ) public int GetFriendsGroupMembersCount( FriendsGroupID_t friendsGroupID /*FriendsGroupID_t*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamFriends_GetFriendsGroupMembersCount( friendsGroupID );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamFriends.GetFriendsGroupMembersCount( _ptr, friendsGroupID );
else return Platform.Win64.ISteamFriends.GetFriendsGroupMembersCount( _ptr, friendsGroupID );
} }
// void // void
public void GetFriendsGroupMembersList( FriendsGroupID_t friendsGroupID /*FriendsGroupID_t*/, IntPtr pOutSteamIDMembers /*class CSteamID **/, int nMembersCount /*int*/ ) public void GetFriendsGroupMembersList( FriendsGroupID_t friendsGroupID /*FriendsGroupID_t*/, IntPtr pOutSteamIDMembers /*class CSteamID **/, int nMembersCount /*int*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamFriends_GetFriendsGroupMembersList( friendsGroupID, (IntPtr) pOutSteamIDMembers, nMembersCount );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamFriends.GetFriendsGroupMembersList( _ptr, friendsGroupID, (IntPtr) pOutSteamIDMembers, nMembersCount );
else Platform.Win64.ISteamFriends.GetFriendsGroupMembersList( _ptr, friendsGroupID, (IntPtr) pOutSteamIDMembers, nMembersCount );
} }
// string // string
// with: Detect_StringReturn // with: Detect_StringReturn
public string GetFriendsGroupName( FriendsGroupID_t friendsGroupID /*FriendsGroupID_t*/ ) public string GetFriendsGroupName( FriendsGroupID_t friendsGroupID /*FriendsGroupID_t*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); //
IntPtr string_pointer; IntPtr string_pointer;
if ( Platform.IsWindows32 ) string_pointer = Platform.Win32.ISteamFriends.GetFriendsGroupName( _ptr, friendsGroupID ); string_pointer = _pi.ISteamFriends_GetFriendsGroupName( friendsGroupID );
else string_pointer = Platform.Win64.ISteamFriends.GetFriendsGroupName( _ptr, friendsGroupID );
return Marshal.PtrToStringAnsi( string_pointer ); return Marshal.PtrToStringAnsi( string_pointer );
} }
// int // int
public int GetFriendSteamLevel( CSteamID steamIDFriend /*class CSteamID*/ ) public int GetFriendSteamLevel( CSteamID steamIDFriend /*class CSteamID*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamFriends_GetFriendSteamLevel( steamIDFriend );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamFriends.GetFriendSteamLevel( _ptr, steamIDFriend );
else return Platform.Win64.ISteamFriends.GetFriendSteamLevel( _ptr, steamIDFriend );
} }
// int // int
public int GetLargeFriendAvatar( CSteamID steamIDFriend /*class CSteamID*/ ) public int GetLargeFriendAvatar( CSteamID steamIDFriend /*class CSteamID*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamFriends_GetLargeFriendAvatar( steamIDFriend );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamFriends.GetLargeFriendAvatar( _ptr, steamIDFriend );
else return Platform.Win64.ISteamFriends.GetLargeFriendAvatar( _ptr, steamIDFriend );
} }
// int // int
public int GetMediumFriendAvatar( CSteamID steamIDFriend /*class CSteamID*/ ) public int GetMediumFriendAvatar( CSteamID steamIDFriend /*class CSteamID*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamFriends_GetMediumFriendAvatar( steamIDFriend );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamFriends.GetMediumFriendAvatar( _ptr, steamIDFriend );
else return Platform.Win64.ISteamFriends.GetMediumFriendAvatar( _ptr, steamIDFriend );
} }
// string // string
// with: Detect_StringReturn // with: Detect_StringReturn
public string GetPersonaName() public string GetPersonaName()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); //
IntPtr string_pointer; IntPtr string_pointer;
if ( Platform.IsWindows32 ) string_pointer = Platform.Win32.ISteamFriends.GetPersonaName( _ptr ); string_pointer = _pi.ISteamFriends_GetPersonaName();
else string_pointer = Platform.Win64.ISteamFriends.GetPersonaName( _ptr );
return Marshal.PtrToStringAnsi( string_pointer ); return Marshal.PtrToStringAnsi( string_pointer );
} }
// PersonaState // PersonaState
public PersonaState GetPersonaState() public PersonaState GetPersonaState()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamFriends_GetPersonaState();
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamFriends.GetPersonaState( _ptr );
else return Platform.Win64.ISteamFriends.GetPersonaState( _ptr );
} }
// string // string
// with: Detect_StringReturn // with: Detect_StringReturn
public string GetPlayerNickname( CSteamID steamIDPlayer /*class CSteamID*/ ) public string GetPlayerNickname( CSteamID steamIDPlayer /*class CSteamID*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); //
IntPtr string_pointer; IntPtr string_pointer;
if ( Platform.IsWindows32 ) string_pointer = Platform.Win32.ISteamFriends.GetPlayerNickname( _ptr, steamIDPlayer ); string_pointer = _pi.ISteamFriends_GetPlayerNickname( steamIDPlayer );
else string_pointer = Platform.Win64.ISteamFriends.GetPlayerNickname( _ptr, steamIDPlayer );
return Marshal.PtrToStringAnsi( string_pointer ); return Marshal.PtrToStringAnsi( string_pointer );
} }
// int // int
public int GetSmallFriendAvatar( CSteamID steamIDFriend /*class CSteamID*/ ) public int GetSmallFriendAvatar( CSteamID steamIDFriend /*class CSteamID*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamFriends_GetSmallFriendAvatar( steamIDFriend );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamFriends.GetSmallFriendAvatar( _ptr, steamIDFriend );
else return Platform.Win64.ISteamFriends.GetSmallFriendAvatar( _ptr, steamIDFriend );
} }
// uint // uint
public uint GetUserRestrictions() public uint GetUserRestrictions()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamFriends_GetUserRestrictions();
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamFriends.GetUserRestrictions( _ptr );
else return Platform.Win64.ISteamFriends.GetUserRestrictions( _ptr );
} }
// bool // bool
public bool HasFriend( CSteamID steamIDFriend /*class CSteamID*/, int iFriendFlags /*int*/ ) public bool HasFriend( CSteamID steamIDFriend /*class CSteamID*/, int iFriendFlags /*int*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamFriends_HasFriend( steamIDFriend, iFriendFlags );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamFriends.HasFriend( _ptr, steamIDFriend, iFriendFlags );
else return Platform.Win64.ISteamFriends.HasFriend( _ptr, steamIDFriend, iFriendFlags );
} }
// bool // bool
public bool InviteUserToGame( CSteamID steamIDFriend /*class CSteamID*/, string pchConnectString /*const char **/ ) public bool InviteUserToGame( CSteamID steamIDFriend /*class CSteamID*/, string pchConnectString /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamFriends_InviteUserToGame( steamIDFriend, pchConnectString );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamFriends.InviteUserToGame( _ptr, steamIDFriend, pchConnectString );
else return Platform.Win64.ISteamFriends.InviteUserToGame( _ptr, steamIDFriend, pchConnectString );
} }
// bool // bool
public bool IsClanChatAdmin( CSteamID steamIDClanChat /*class CSteamID*/, CSteamID steamIDUser /*class CSteamID*/ ) public bool IsClanChatAdmin( CSteamID steamIDClanChat /*class CSteamID*/, CSteamID steamIDUser /*class CSteamID*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamFriends_IsClanChatAdmin( steamIDClanChat, steamIDUser );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamFriends.IsClanChatAdmin( _ptr, steamIDClanChat, steamIDUser );
else return Platform.Win64.ISteamFriends.IsClanChatAdmin( _ptr, steamIDClanChat, steamIDUser );
} }
// bool // bool
public bool IsClanChatWindowOpenInSteam( CSteamID steamIDClanChat /*class CSteamID*/ ) public bool IsClanChatWindowOpenInSteam( CSteamID steamIDClanChat /*class CSteamID*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamFriends_IsClanChatWindowOpenInSteam( steamIDClanChat );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamFriends.IsClanChatWindowOpenInSteam( _ptr, steamIDClanChat );
else return Platform.Win64.ISteamFriends.IsClanChatWindowOpenInSteam( _ptr, steamIDClanChat );
} }
// SteamAPICall_t // SteamAPICall_t
public SteamAPICall_t IsFollowing( CSteamID steamID /*class CSteamID*/ ) public SteamAPICall_t IsFollowing( CSteamID steamID /*class CSteamID*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamFriends_IsFollowing( steamID );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamFriends.IsFollowing( _ptr, steamID );
else return Platform.Win64.ISteamFriends.IsFollowing( _ptr, steamID );
} }
// bool // bool
public bool IsUserInSource( CSteamID steamIDUser /*class CSteamID*/, CSteamID steamIDSource /*class CSteamID*/ ) public bool IsUserInSource( CSteamID steamIDUser /*class CSteamID*/, CSteamID steamIDSource /*class CSteamID*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamFriends_IsUserInSource( steamIDUser, steamIDSource );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamFriends.IsUserInSource( _ptr, steamIDUser, steamIDSource );
else return Platform.Win64.ISteamFriends.IsUserInSource( _ptr, steamIDUser, steamIDSource );
} }
// SteamAPICall_t // SteamAPICall_t
public SteamAPICall_t JoinClanChatRoom( CSteamID steamIDClan /*class CSteamID*/ ) public SteamAPICall_t JoinClanChatRoom( CSteamID steamIDClan /*class CSteamID*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamFriends_JoinClanChatRoom( steamIDClan );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamFriends.JoinClanChatRoom( _ptr, steamIDClan );
else return Platform.Win64.ISteamFriends.JoinClanChatRoom( _ptr, steamIDClan );
} }
// bool // bool
public bool LeaveClanChatRoom( CSteamID steamIDClan /*class CSteamID*/ ) public bool LeaveClanChatRoom( CSteamID steamIDClan /*class CSteamID*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamFriends_LeaveClanChatRoom( steamIDClan );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamFriends.LeaveClanChatRoom( _ptr, steamIDClan );
else return Platform.Win64.ISteamFriends.LeaveClanChatRoom( _ptr, steamIDClan );
} }
// bool // bool
public bool OpenClanChatWindowInSteam( CSteamID steamIDClanChat /*class CSteamID*/ ) public bool OpenClanChatWindowInSteam( CSteamID steamIDClanChat /*class CSteamID*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamFriends_OpenClanChatWindowInSteam( steamIDClanChat );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamFriends.OpenClanChatWindowInSteam( _ptr, steamIDClanChat );
else return Platform.Win64.ISteamFriends.OpenClanChatWindowInSteam( _ptr, steamIDClanChat );
} }
// bool // bool
public bool ReplyToFriendMessage( CSteamID steamIDFriend /*class CSteamID*/, string pchMsgToSend /*const char **/ ) public bool ReplyToFriendMessage( CSteamID steamIDFriend /*class CSteamID*/, string pchMsgToSend /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamFriends_ReplyToFriendMessage( steamIDFriend, pchMsgToSend );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamFriends.ReplyToFriendMessage( _ptr, steamIDFriend, pchMsgToSend );
else return Platform.Win64.ISteamFriends.ReplyToFriendMessage( _ptr, steamIDFriend, pchMsgToSend );
} }
// SteamAPICall_t // SteamAPICall_t
public SteamAPICall_t RequestClanOfficerList( CSteamID steamIDClan /*class CSteamID*/ ) public SteamAPICall_t RequestClanOfficerList( CSteamID steamIDClan /*class CSteamID*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamFriends_RequestClanOfficerList( steamIDClan );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamFriends.RequestClanOfficerList( _ptr, steamIDClan );
else return Platform.Win64.ISteamFriends.RequestClanOfficerList( _ptr, steamIDClan );
} }
// void // void
public void RequestFriendRichPresence( CSteamID steamIDFriend /*class CSteamID*/ ) public void RequestFriendRichPresence( CSteamID steamIDFriend /*class CSteamID*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamFriends_RequestFriendRichPresence( steamIDFriend );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamFriends.RequestFriendRichPresence( _ptr, steamIDFriend );
else Platform.Win64.ISteamFriends.RequestFriendRichPresence( _ptr, steamIDFriend );
} }
// bool // bool
public bool RequestUserInformation( CSteamID steamIDUser /*class CSteamID*/, bool bRequireNameOnly /*bool*/ ) public bool RequestUserInformation( CSteamID steamIDUser /*class CSteamID*/, bool bRequireNameOnly /*bool*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamFriends_RequestUserInformation( steamIDUser, bRequireNameOnly );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamFriends.RequestUserInformation( _ptr, steamIDUser, bRequireNameOnly );
else return Platform.Win64.ISteamFriends.RequestUserInformation( _ptr, steamIDUser, bRequireNameOnly );
} }
// bool // bool
public bool SendClanChatMessage( CSteamID steamIDClanChat /*class CSteamID*/, string pchText /*const char **/ ) public bool SendClanChatMessage( CSteamID steamIDClanChat /*class CSteamID*/, string pchText /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamFriends_SendClanChatMessage( steamIDClanChat, pchText );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamFriends.SendClanChatMessage( _ptr, steamIDClanChat, pchText );
else return Platform.Win64.ISteamFriends.SendClanChatMessage( _ptr, steamIDClanChat, pchText );
} }
// void // void
public void SetInGameVoiceSpeaking( CSteamID steamIDUser /*class CSteamID*/, bool bSpeaking /*bool*/ ) public void SetInGameVoiceSpeaking( CSteamID steamIDUser /*class CSteamID*/, bool bSpeaking /*bool*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamFriends_SetInGameVoiceSpeaking( steamIDUser, bSpeaking );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamFriends.SetInGameVoiceSpeaking( _ptr, steamIDUser, bSpeaking );
else Platform.Win64.ISteamFriends.SetInGameVoiceSpeaking( _ptr, steamIDUser, bSpeaking );
} }
// bool // bool
public bool SetListenForFriendsMessages( bool bInterceptEnabled /*bool*/ ) public bool SetListenForFriendsMessages( bool bInterceptEnabled /*bool*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamFriends_SetListenForFriendsMessages( bInterceptEnabled );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamFriends.SetListenForFriendsMessages( _ptr, bInterceptEnabled );
else return Platform.Win64.ISteamFriends.SetListenForFriendsMessages( _ptr, bInterceptEnabled );
} }
// SteamAPICall_t // SteamAPICall_t
public SteamAPICall_t SetPersonaName( string pchPersonaName /*const char **/ ) public SteamAPICall_t SetPersonaName( string pchPersonaName /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamFriends_SetPersonaName( pchPersonaName );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamFriends.SetPersonaName( _ptr, pchPersonaName );
else return Platform.Win64.ISteamFriends.SetPersonaName( _ptr, pchPersonaName );
} }
// void // void
public void SetPlayedWith( CSteamID steamIDUserPlayedWith /*class CSteamID*/ ) public void SetPlayedWith( CSteamID steamIDUserPlayedWith /*class CSteamID*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamFriends_SetPlayedWith( steamIDUserPlayedWith );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamFriends.SetPlayedWith( _ptr, steamIDUserPlayedWith );
else Platform.Win64.ISteamFriends.SetPlayedWith( _ptr, steamIDUserPlayedWith );
} }
// bool // bool
public bool SetRichPresence( string pchKey /*const char **/, string pchValue /*const char **/ ) public bool SetRichPresence( string pchKey /*const char **/, string pchValue /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamFriends_SetRichPresence( pchKey, pchValue );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamFriends.SetRichPresence( _ptr, pchKey, pchValue );
else return Platform.Win64.ISteamFriends.SetRichPresence( _ptr, pchKey, pchValue );
} }
} }

View File

@ -5,408 +5,281 @@ namespace SteamNative
{ {
public unsafe class SteamGameServer public unsafe class SteamGameServer
{ {
internal IntPtr _ptr; internal Platform.Interface _pi;
public SteamGameServer( IntPtr pointer ) public SteamGameServer( IntPtr pointer )
{ {
_ptr = pointer; if ( Platform.IsWindows64 ) _pi = new Platform.Win64( pointer );
else if ( Platform.IsWindows32 ) _pi = new Platform.Win32( pointer );
else if ( Platform.IsLinux32 ) _pi = new Platform.Linux32( pointer );
else if ( Platform.IsLinux64 ) _pi = new Platform.Linux64( pointer );
else if ( Platform.IsOsx ) _pi = new Platform.Mac( pointer );
} }
public bool IsValid{ get{ return _pi != null && _pi.IsValid; } }
// SteamAPICall_t // SteamAPICall_t
public SteamAPICall_t AssociateWithClan( CSteamID steamIDClan /*class CSteamID*/ ) public SteamAPICall_t AssociateWithClan( CSteamID steamIDClan /*class CSteamID*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamGameServer_AssociateWithClan( steamIDClan );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamGameServer.AssociateWithClan( _ptr, steamIDClan );
else return Platform.Win64.ISteamGameServer.AssociateWithClan( _ptr, steamIDClan );
} }
// BeginAuthSessionResult // BeginAuthSessionResult
public BeginAuthSessionResult BeginAuthSession( IntPtr pAuthTicket /*const void **/, int cbAuthTicket /*int*/, CSteamID steamID /*class CSteamID*/ ) public BeginAuthSessionResult BeginAuthSession( IntPtr pAuthTicket /*const void **/, int cbAuthTicket /*int*/, CSteamID steamID /*class CSteamID*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamGameServer_BeginAuthSession( (IntPtr) pAuthTicket, cbAuthTicket, steamID );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamGameServer.BeginAuthSession( _ptr, (IntPtr) pAuthTicket, cbAuthTicket, steamID );
else return Platform.Win64.ISteamGameServer.BeginAuthSession( _ptr, (IntPtr) pAuthTicket, cbAuthTicket, steamID );
} }
// bool // bool
public bool BLoggedOn() public bool BLoggedOn()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamGameServer_BLoggedOn();
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamGameServer.BLoggedOn( _ptr );
else return Platform.Win64.ISteamGameServer.BLoggedOn( _ptr );
} }
// bool // bool
public bool BSecure() public bool BSecure()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamGameServer_BSecure();
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamGameServer.BSecure( _ptr );
else return Platform.Win64.ISteamGameServer.BSecure( _ptr );
} }
// bool // bool
public bool BUpdateUserData( CSteamID steamIDUser /*class CSteamID*/, string pchPlayerName /*const char **/, uint uScore /*uint32*/ ) public bool BUpdateUserData( CSteamID steamIDUser /*class CSteamID*/, string pchPlayerName /*const char **/, uint uScore /*uint32*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamGameServer_BUpdateUserData( steamIDUser, pchPlayerName, uScore );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamGameServer.BUpdateUserData( _ptr, steamIDUser, pchPlayerName, uScore );
else return Platform.Win64.ISteamGameServer.BUpdateUserData( _ptr, steamIDUser, pchPlayerName, uScore );
} }
// void // void
public void CancelAuthTicket( HAuthTicket hAuthTicket /*HAuthTicket*/ ) public void CancelAuthTicket( HAuthTicket hAuthTicket /*HAuthTicket*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamGameServer_CancelAuthTicket( hAuthTicket );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamGameServer.CancelAuthTicket( _ptr, hAuthTicket );
else Platform.Win64.ISteamGameServer.CancelAuthTicket( _ptr, hAuthTicket );
} }
// void // void
public void ClearAllKeyValues() public void ClearAllKeyValues()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamGameServer_ClearAllKeyValues();
if ( Platform.IsWindows32 ) Platform.Win32.ISteamGameServer.ClearAllKeyValues( _ptr );
else Platform.Win64.ISteamGameServer.ClearAllKeyValues( _ptr );
} }
// SteamAPICall_t // SteamAPICall_t
public SteamAPICall_t ComputeNewPlayerCompatibility( CSteamID steamIDNewPlayer /*class CSteamID*/ ) public SteamAPICall_t ComputeNewPlayerCompatibility( CSteamID steamIDNewPlayer /*class CSteamID*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamGameServer_ComputeNewPlayerCompatibility( steamIDNewPlayer );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamGameServer.ComputeNewPlayerCompatibility( _ptr, steamIDNewPlayer );
else return Platform.Win64.ISteamGameServer.ComputeNewPlayerCompatibility( _ptr, steamIDNewPlayer );
} }
// ulong // ulong
public ulong CreateUnauthenticatedUserConnection() public ulong CreateUnauthenticatedUserConnection()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamGameServer_CreateUnauthenticatedUserConnection();
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamGameServer.CreateUnauthenticatedUserConnection( _ptr );
else return Platform.Win64.ISteamGameServer.CreateUnauthenticatedUserConnection( _ptr );
} }
// void // void
public void EnableHeartbeats( bool bActive /*bool*/ ) public void EnableHeartbeats( bool bActive /*bool*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamGameServer_EnableHeartbeats( bActive );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamGameServer.EnableHeartbeats( _ptr, bActive );
else Platform.Win64.ISteamGameServer.EnableHeartbeats( _ptr, bActive );
} }
// void // void
public void EndAuthSession( CSteamID steamID /*class CSteamID*/ ) public void EndAuthSession( CSteamID steamID /*class CSteamID*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamGameServer_EndAuthSession( steamID );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamGameServer.EndAuthSession( _ptr, steamID );
else Platform.Win64.ISteamGameServer.EndAuthSession( _ptr, steamID );
} }
// void // void
public void ForceHeartbeat() public void ForceHeartbeat()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamGameServer_ForceHeartbeat();
if ( Platform.IsWindows32 ) Platform.Win32.ISteamGameServer.ForceHeartbeat( _ptr );
else Platform.Win64.ISteamGameServer.ForceHeartbeat( _ptr );
} }
// HAuthTicket // HAuthTicket
public HAuthTicket GetAuthSessionTicket( IntPtr pTicket /*void **/, int cbMaxTicket /*int*/, out uint pcbTicket /*uint32 **/ ) public HAuthTicket GetAuthSessionTicket( IntPtr pTicket /*void **/, int cbMaxTicket /*int*/, out uint pcbTicket /*uint32 **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamGameServer_GetAuthSessionTicket( (IntPtr) pTicket, cbMaxTicket, out pcbTicket );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamGameServer.GetAuthSessionTicket( _ptr, (IntPtr) pTicket, cbMaxTicket, out pcbTicket );
else return Platform.Win64.ISteamGameServer.GetAuthSessionTicket( _ptr, (IntPtr) pTicket, cbMaxTicket, out pcbTicket );
} }
// void // void
public void GetGameplayStats() public void GetGameplayStats()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamGameServer_GetGameplayStats();
if ( Platform.IsWindows32 ) Platform.Win32.ISteamGameServer.GetGameplayStats( _ptr );
else Platform.Win64.ISteamGameServer.GetGameplayStats( _ptr );
} }
// int // int
public int GetNextOutgoingPacket( IntPtr pOut /*void **/, int cbMaxOut /*int*/, out uint pNetAdr /*uint32 **/, out ushort pPort /*uint16 **/ ) public int GetNextOutgoingPacket( IntPtr pOut /*void **/, int cbMaxOut /*int*/, out uint pNetAdr /*uint32 **/, out ushort pPort /*uint16 **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamGameServer_GetNextOutgoingPacket( (IntPtr) pOut, cbMaxOut, out pNetAdr, out pPort );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamGameServer.GetNextOutgoingPacket( _ptr, (IntPtr) pOut, cbMaxOut, out pNetAdr, out pPort );
else return Platform.Win64.ISteamGameServer.GetNextOutgoingPacket( _ptr, (IntPtr) pOut, cbMaxOut, out pNetAdr, out pPort );
} }
// uint // uint
public uint GetPublicIP() public uint GetPublicIP()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamGameServer_GetPublicIP();
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamGameServer.GetPublicIP( _ptr );
else return Platform.Win64.ISteamGameServer.GetPublicIP( _ptr );
} }
// SteamAPICall_t // SteamAPICall_t
public SteamAPICall_t GetServerReputation() public SteamAPICall_t GetServerReputation()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamGameServer_GetServerReputation();
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamGameServer.GetServerReputation( _ptr );
else return Platform.Win64.ISteamGameServer.GetServerReputation( _ptr );
} }
// ulong // ulong
public ulong GetSteamID() public ulong GetSteamID()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamGameServer_GetSteamID();
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamGameServer.GetSteamID( _ptr );
else return Platform.Win64.ISteamGameServer.GetSteamID( _ptr );
} }
// bool // bool
public bool HandleIncomingPacket( IntPtr pData /*const void **/, int cbData /*int*/, uint srcIP /*uint32*/, ushort srcPort /*uint16*/ ) public bool HandleIncomingPacket( IntPtr pData /*const void **/, int cbData /*int*/, uint srcIP /*uint32*/, ushort srcPort /*uint16*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamGameServer_HandleIncomingPacket( (IntPtr) pData, cbData, srcIP, srcPort );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamGameServer.HandleIncomingPacket( _ptr, (IntPtr) pData, cbData, srcIP, srcPort );
else return Platform.Win64.ISteamGameServer.HandleIncomingPacket( _ptr, (IntPtr) pData, cbData, srcIP, srcPort );
} }
// bool // bool
public bool InitGameServer( uint unIP /*uint32*/, ushort usGamePort /*uint16*/, ushort usQueryPort /*uint16*/, uint unFlags /*uint32*/, AppId_t nGameAppId /*AppId_t*/, string pchVersionString /*const char **/ ) public bool InitGameServer( uint unIP /*uint32*/, ushort usGamePort /*uint16*/, ushort usQueryPort /*uint16*/, uint unFlags /*uint32*/, AppId_t nGameAppId /*AppId_t*/, string pchVersionString /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamGameServer_InitGameServer( unIP, usGamePort, usQueryPort, unFlags, nGameAppId, pchVersionString );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamGameServer.InitGameServer( _ptr, unIP, usGamePort, usQueryPort, unFlags, nGameAppId, pchVersionString );
else return Platform.Win64.ISteamGameServer.InitGameServer( _ptr, unIP, usGamePort, usQueryPort, unFlags, nGameAppId, pchVersionString );
} }
// void // void
public void LogOff() public void LogOff()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamGameServer_LogOff();
if ( Platform.IsWindows32 ) Platform.Win32.ISteamGameServer.LogOff( _ptr );
else Platform.Win64.ISteamGameServer.LogOff( _ptr );
} }
// void // void
public void LogOn( string pszToken /*const char **/ ) public void LogOn( string pszToken /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamGameServer_LogOn( pszToken );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamGameServer.LogOn( _ptr, pszToken );
else Platform.Win64.ISteamGameServer.LogOn( _ptr, pszToken );
} }
// void // void
public void LogOnAnonymous() public void LogOnAnonymous()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamGameServer_LogOnAnonymous();
if ( Platform.IsWindows32 ) Platform.Win32.ISteamGameServer.LogOnAnonymous( _ptr );
else Platform.Win64.ISteamGameServer.LogOnAnonymous( _ptr );
} }
// bool // bool
public bool RequestUserGroupStatus( CSteamID steamIDUser /*class CSteamID*/, CSteamID steamIDGroup /*class CSteamID*/ ) public bool RequestUserGroupStatus( CSteamID steamIDUser /*class CSteamID*/, CSteamID steamIDGroup /*class CSteamID*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamGameServer_RequestUserGroupStatus( steamIDUser, steamIDGroup );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamGameServer.RequestUserGroupStatus( _ptr, steamIDUser, steamIDGroup );
else return Platform.Win64.ISteamGameServer.RequestUserGroupStatus( _ptr, steamIDUser, steamIDGroup );
} }
// bool // bool
public bool SendUserConnectAndAuthenticate( uint unIPClient /*uint32*/, IntPtr pvAuthBlob /*const void **/, uint cubAuthBlobSize /*uint32*/, out CSteamID pSteamIDUser /*class CSteamID **/ ) public bool SendUserConnectAndAuthenticate( uint unIPClient /*uint32*/, IntPtr pvAuthBlob /*const void **/, uint cubAuthBlobSize /*uint32*/, out CSteamID pSteamIDUser /*class CSteamID **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamGameServer_SendUserConnectAndAuthenticate( unIPClient, (IntPtr) pvAuthBlob, cubAuthBlobSize, out pSteamIDUser );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamGameServer.SendUserConnectAndAuthenticate( _ptr, unIPClient, (IntPtr) pvAuthBlob, cubAuthBlobSize, out pSteamIDUser );
else return Platform.Win64.ISteamGameServer.SendUserConnectAndAuthenticate( _ptr, unIPClient, (IntPtr) pvAuthBlob, cubAuthBlobSize, out pSteamIDUser );
} }
// void // void
public void SendUserDisconnect( CSteamID steamIDUser /*class CSteamID*/ ) public void SendUserDisconnect( CSteamID steamIDUser /*class CSteamID*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamGameServer_SendUserDisconnect( steamIDUser );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamGameServer.SendUserDisconnect( _ptr, steamIDUser );
else Platform.Win64.ISteamGameServer.SendUserDisconnect( _ptr, steamIDUser );
} }
// void // void
public void SetBotPlayerCount( int cBotplayers /*int*/ ) public void SetBotPlayerCount( int cBotplayers /*int*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamGameServer_SetBotPlayerCount( cBotplayers );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamGameServer.SetBotPlayerCount( _ptr, cBotplayers );
else Platform.Win64.ISteamGameServer.SetBotPlayerCount( _ptr, cBotplayers );
} }
// void // void
public void SetDedicatedServer( bool bDedicated /*bool*/ ) public void SetDedicatedServer( bool bDedicated /*bool*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamGameServer_SetDedicatedServer( bDedicated );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamGameServer.SetDedicatedServer( _ptr, bDedicated );
else Platform.Win64.ISteamGameServer.SetDedicatedServer( _ptr, bDedicated );
} }
// void // void
public void SetGameData( string pchGameData /*const char **/ ) public void SetGameData( string pchGameData /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamGameServer_SetGameData( pchGameData );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamGameServer.SetGameData( _ptr, pchGameData );
else Platform.Win64.ISteamGameServer.SetGameData( _ptr, pchGameData );
} }
// void // void
public void SetGameDescription( string pszGameDescription /*const char **/ ) public void SetGameDescription( string pszGameDescription /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamGameServer_SetGameDescription( pszGameDescription );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamGameServer.SetGameDescription( _ptr, pszGameDescription );
else Platform.Win64.ISteamGameServer.SetGameDescription( _ptr, pszGameDescription );
} }
// void // void
public void SetGameTags( string pchGameTags /*const char **/ ) public void SetGameTags( string pchGameTags /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamGameServer_SetGameTags( pchGameTags );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamGameServer.SetGameTags( _ptr, pchGameTags );
else Platform.Win64.ISteamGameServer.SetGameTags( _ptr, pchGameTags );
} }
// void // void
public void SetHeartbeatInterval( int iHeartbeatInterval /*int*/ ) public void SetHeartbeatInterval( int iHeartbeatInterval /*int*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamGameServer_SetHeartbeatInterval( iHeartbeatInterval );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamGameServer.SetHeartbeatInterval( _ptr, iHeartbeatInterval );
else Platform.Win64.ISteamGameServer.SetHeartbeatInterval( _ptr, iHeartbeatInterval );
} }
// void // void
public void SetKeyValue( string pKey /*const char **/, string pValue /*const char **/ ) public void SetKeyValue( string pKey /*const char **/, string pValue /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamGameServer_SetKeyValue( pKey, pValue );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamGameServer.SetKeyValue( _ptr, pKey, pValue );
else Platform.Win64.ISteamGameServer.SetKeyValue( _ptr, pKey, pValue );
} }
// void // void
public void SetMapName( string pszMapName /*const char **/ ) public void SetMapName( string pszMapName /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamGameServer_SetMapName( pszMapName );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamGameServer.SetMapName( _ptr, pszMapName );
else Platform.Win64.ISteamGameServer.SetMapName( _ptr, pszMapName );
} }
// void // void
public void SetMaxPlayerCount( int cPlayersMax /*int*/ ) public void SetMaxPlayerCount( int cPlayersMax /*int*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamGameServer_SetMaxPlayerCount( cPlayersMax );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamGameServer.SetMaxPlayerCount( _ptr, cPlayersMax );
else Platform.Win64.ISteamGameServer.SetMaxPlayerCount( _ptr, cPlayersMax );
} }
// void // void
public void SetModDir( string pszModDir /*const char **/ ) public void SetModDir( string pszModDir /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamGameServer_SetModDir( pszModDir );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamGameServer.SetModDir( _ptr, pszModDir );
else Platform.Win64.ISteamGameServer.SetModDir( _ptr, pszModDir );
} }
// void // void
public void SetPasswordProtected( bool bPasswordProtected /*bool*/ ) public void SetPasswordProtected( bool bPasswordProtected /*bool*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamGameServer_SetPasswordProtected( bPasswordProtected );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamGameServer.SetPasswordProtected( _ptr, bPasswordProtected );
else Platform.Win64.ISteamGameServer.SetPasswordProtected( _ptr, bPasswordProtected );
} }
// void // void
public void SetProduct( string pszProduct /*const char **/ ) public void SetProduct( string pszProduct /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamGameServer_SetProduct( pszProduct );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamGameServer.SetProduct( _ptr, pszProduct );
else Platform.Win64.ISteamGameServer.SetProduct( _ptr, pszProduct );
} }
// void // void
public void SetRegion( string pszRegion /*const char **/ ) public void SetRegion( string pszRegion /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamGameServer_SetRegion( pszRegion );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamGameServer.SetRegion( _ptr, pszRegion );
else Platform.Win64.ISteamGameServer.SetRegion( _ptr, pszRegion );
} }
// void // void
public void SetServerName( string pszServerName /*const char **/ ) public void SetServerName( string pszServerName /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamGameServer_SetServerName( pszServerName );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamGameServer.SetServerName( _ptr, pszServerName );
else Platform.Win64.ISteamGameServer.SetServerName( _ptr, pszServerName );
} }
// void // void
public void SetSpectatorPort( ushort unSpectatorPort /*uint16*/ ) public void SetSpectatorPort( ushort unSpectatorPort /*uint16*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamGameServer_SetSpectatorPort( unSpectatorPort );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamGameServer.SetSpectatorPort( _ptr, unSpectatorPort );
else Platform.Win64.ISteamGameServer.SetSpectatorPort( _ptr, unSpectatorPort );
} }
// void // void
public void SetSpectatorServerName( string pszSpectatorServerName /*const char **/ ) public void SetSpectatorServerName( string pszSpectatorServerName /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamGameServer_SetSpectatorServerName( pszSpectatorServerName );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamGameServer.SetSpectatorServerName( _ptr, pszSpectatorServerName );
else Platform.Win64.ISteamGameServer.SetSpectatorServerName( _ptr, pszSpectatorServerName );
} }
// UserHasLicenseForAppResult // UserHasLicenseForAppResult
public UserHasLicenseForAppResult UserHasLicenseForApp( CSteamID steamID /*class CSteamID*/, AppId_t appID /*AppId_t*/ ) public UserHasLicenseForAppResult UserHasLicenseForApp( CSteamID steamID /*class CSteamID*/, AppId_t appID /*AppId_t*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamGameServer_UserHasLicenseForApp( steamID, appID );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamGameServer.UserHasLicenseForApp( _ptr, steamID, appID );
else return Platform.Win64.ISteamGameServer.UserHasLicenseForApp( _ptr, steamID, appID );
} }
// bool // bool
public bool WasRestartRequested() public bool WasRestartRequested()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamGameServer_WasRestartRequested();
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamGameServer.WasRestartRequested( _ptr );
else return Platform.Win64.ISteamGameServer.WasRestartRequested( _ptr );
} }
} }

View File

@ -5,102 +5,77 @@ namespace SteamNative
{ {
public unsafe class SteamGameServerStats public unsafe class SteamGameServerStats
{ {
internal IntPtr _ptr; internal Platform.Interface _pi;
public SteamGameServerStats( IntPtr pointer ) public SteamGameServerStats( IntPtr pointer )
{ {
_ptr = pointer; if ( Platform.IsWindows64 ) _pi = new Platform.Win64( pointer );
else if ( Platform.IsWindows32 ) _pi = new Platform.Win32( pointer );
else if ( Platform.IsLinux32 ) _pi = new Platform.Linux32( pointer );
else if ( Platform.IsLinux64 ) _pi = new Platform.Linux64( pointer );
else if ( Platform.IsOsx ) _pi = new Platform.Mac( pointer );
} }
public bool IsValid{ get{ return _pi != null && _pi.IsValid; } }
// bool // bool
public bool ClearUserAchievement( CSteamID steamIDUser /*class CSteamID*/, string pchName /*const char **/ ) public bool ClearUserAchievement( CSteamID steamIDUser /*class CSteamID*/, string pchName /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamGameServerStats_ClearUserAchievement( steamIDUser, pchName );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamGameServerStats.ClearUserAchievement( _ptr, steamIDUser, pchName );
else return Platform.Win64.ISteamGameServerStats.ClearUserAchievement( _ptr, steamIDUser, pchName );
} }
// bool // bool
public bool GetUserAchievement( CSteamID steamIDUser /*class CSteamID*/, string pchName /*const char **/, out bool pbAchieved /*bool **/ ) public bool GetUserAchievement( CSteamID steamIDUser /*class CSteamID*/, string pchName /*const char **/, out bool pbAchieved /*bool **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamGameServerStats_GetUserAchievement( steamIDUser, pchName, out pbAchieved );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamGameServerStats.GetUserAchievement( _ptr, steamIDUser, pchName, out pbAchieved );
else return Platform.Win64.ISteamGameServerStats.GetUserAchievement( _ptr, steamIDUser, pchName, out pbAchieved );
} }
// bool // bool
public bool GetUserStat( CSteamID steamIDUser /*class CSteamID*/, string pchName /*const char **/, out int pData /*int32 **/ ) public bool GetUserStat( CSteamID steamIDUser /*class CSteamID*/, string pchName /*const char **/, out int pData /*int32 **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamGameServerStats_GetUserStat( steamIDUser, pchName, out pData );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamGameServerStats.GetUserStat( _ptr, steamIDUser, pchName, out pData );
else return Platform.Win64.ISteamGameServerStats.GetUserStat( _ptr, steamIDUser, pchName, out pData );
} }
// bool // bool
public bool GetUserStat0( CSteamID steamIDUser /*class CSteamID*/, string pchName /*const char **/, out float pData /*float **/ ) public bool GetUserStat0( CSteamID steamIDUser /*class CSteamID*/, string pchName /*const char **/, out float pData /*float **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamGameServerStats_GetUserStat0( steamIDUser, pchName, out pData );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamGameServerStats.GetUserStat0( _ptr, steamIDUser, pchName, out pData );
else return Platform.Win64.ISteamGameServerStats.GetUserStat0( _ptr, steamIDUser, pchName, out pData );
} }
// SteamAPICall_t // SteamAPICall_t
public SteamAPICall_t RequestUserStats( CSteamID steamIDUser /*class CSteamID*/ ) public SteamAPICall_t RequestUserStats( CSteamID steamIDUser /*class CSteamID*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamGameServerStats_RequestUserStats( steamIDUser );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamGameServerStats.RequestUserStats( _ptr, steamIDUser );
else return Platform.Win64.ISteamGameServerStats.RequestUserStats( _ptr, steamIDUser );
} }
// bool // bool
public bool SetUserAchievement( CSteamID steamIDUser /*class CSteamID*/, string pchName /*const char **/ ) public bool SetUserAchievement( CSteamID steamIDUser /*class CSteamID*/, string pchName /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamGameServerStats_SetUserAchievement( steamIDUser, pchName );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamGameServerStats.SetUserAchievement( _ptr, steamIDUser, pchName );
else return Platform.Win64.ISteamGameServerStats.SetUserAchievement( _ptr, steamIDUser, pchName );
} }
// bool // bool
public bool SetUserStat( CSteamID steamIDUser /*class CSteamID*/, string pchName /*const char **/, int nData /*int32*/ ) public bool SetUserStat( CSteamID steamIDUser /*class CSteamID*/, string pchName /*const char **/, int nData /*int32*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamGameServerStats_SetUserStat( steamIDUser, pchName, nData );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamGameServerStats.SetUserStat( _ptr, steamIDUser, pchName, nData );
else return Platform.Win64.ISteamGameServerStats.SetUserStat( _ptr, steamIDUser, pchName, nData );
} }
// bool // bool
public bool SetUserStat0( CSteamID steamIDUser /*class CSteamID*/, string pchName /*const char **/, float fData /*float*/ ) public bool SetUserStat0( CSteamID steamIDUser /*class CSteamID*/, string pchName /*const char **/, float fData /*float*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamGameServerStats_SetUserStat0( steamIDUser, pchName, fData );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamGameServerStats.SetUserStat0( _ptr, steamIDUser, pchName, fData );
else return Platform.Win64.ISteamGameServerStats.SetUserStat0( _ptr, steamIDUser, pchName, fData );
} }
// SteamAPICall_t // SteamAPICall_t
public SteamAPICall_t StoreUserStats( CSteamID steamIDUser /*class CSteamID*/ ) public SteamAPICall_t StoreUserStats( CSteamID steamIDUser /*class CSteamID*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamGameServerStats_StoreUserStats( steamIDUser );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamGameServerStats.StoreUserStats( _ptr, steamIDUser );
else return Platform.Win64.ISteamGameServerStats.StoreUserStats( _ptr, steamIDUser );
} }
// bool // bool
public bool UpdateUserAvgRateStat( CSteamID steamIDUser /*class CSteamID*/, string pchName /*const char **/, float flCountThisSession /*float*/, double dSessionLength /*double*/ ) public bool UpdateUserAvgRateStat( CSteamID steamIDUser /*class CSteamID*/, string pchName /*const char **/, float flCountThisSession /*float*/, double dSessionLength /*double*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamGameServerStats_UpdateUserAvgRateStat( steamIDUser, pchName, flCountThisSession, dSessionLength );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamGameServerStats.UpdateUserAvgRateStat( _ptr, steamIDUser, pchName, flCountThisSession, dSessionLength );
else return Platform.Win64.ISteamGameServerStats.UpdateUserAvgRateStat( _ptr, steamIDUser, pchName, flCountThisSession, dSessionLength );
} }
} }

View File

@ -5,327 +5,227 @@ namespace SteamNative
{ {
public unsafe class SteamHTMLSurface public unsafe class SteamHTMLSurface
{ {
internal IntPtr _ptr; internal Platform.Interface _pi;
public SteamHTMLSurface( IntPtr pointer ) public SteamHTMLSurface( IntPtr pointer )
{ {
_ptr = pointer; if ( Platform.IsWindows64 ) _pi = new Platform.Win64( pointer );
else if ( Platform.IsWindows32 ) _pi = new Platform.Win32( pointer );
else if ( Platform.IsLinux32 ) _pi = new Platform.Linux32( pointer );
else if ( Platform.IsLinux64 ) _pi = new Platform.Linux64( pointer );
else if ( Platform.IsOsx ) _pi = new Platform.Mac( pointer );
} }
public bool IsValid{ get{ return _pi != null && _pi.IsValid; } }
// void // void
public void AddHeader( HHTMLBrowser unBrowserHandle /*HHTMLBrowser*/, string pchKey /*const char **/, string pchValue /*const char **/ ) public void AddHeader( HHTMLBrowser unBrowserHandle /*HHTMLBrowser*/, string pchKey /*const char **/, string pchValue /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamHTMLSurface_AddHeader( unBrowserHandle, pchKey, pchValue );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamHTMLSurface.AddHeader( _ptr, unBrowserHandle, pchKey, pchValue );
else Platform.Win64.ISteamHTMLSurface.AddHeader( _ptr, unBrowserHandle, pchKey, pchValue );
} }
// void // void
public void AllowStartRequest( HHTMLBrowser unBrowserHandle /*HHTMLBrowser*/, bool bAllowed /*bool*/ ) public void AllowStartRequest( HHTMLBrowser unBrowserHandle /*HHTMLBrowser*/, bool bAllowed /*bool*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamHTMLSurface_AllowStartRequest( unBrowserHandle, bAllowed );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamHTMLSurface.AllowStartRequest( _ptr, unBrowserHandle, bAllowed );
else Platform.Win64.ISteamHTMLSurface.AllowStartRequest( _ptr, unBrowserHandle, bAllowed );
} }
// void // void
public void CopyToClipboard( HHTMLBrowser unBrowserHandle /*HHTMLBrowser*/ ) public void CopyToClipboard( HHTMLBrowser unBrowserHandle /*HHTMLBrowser*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamHTMLSurface_CopyToClipboard( unBrowserHandle );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamHTMLSurface.CopyToClipboard( _ptr, unBrowserHandle );
else Platform.Win64.ISteamHTMLSurface.CopyToClipboard( _ptr, unBrowserHandle );
} }
// SteamAPICall_t // SteamAPICall_t
public SteamAPICall_t CreateBrowser( string pchUserAgent /*const char **/, string pchUserCSS /*const char **/ ) public SteamAPICall_t CreateBrowser( string pchUserAgent /*const char **/, string pchUserCSS /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamHTMLSurface_CreateBrowser( pchUserAgent, pchUserCSS );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamHTMLSurface.CreateBrowser( _ptr, pchUserAgent, pchUserCSS );
else return Platform.Win64.ISteamHTMLSurface.CreateBrowser( _ptr, pchUserAgent, pchUserCSS );
} }
// void // void
public void DestructISteamHTMLSurface() public void DestructISteamHTMLSurface()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamHTMLSurface_DestructISteamHTMLSurface();
if ( Platform.IsWindows32 ) Platform.Win32.ISteamHTMLSurface.DestructISteamHTMLSurface( _ptr );
else Platform.Win64.ISteamHTMLSurface.DestructISteamHTMLSurface( _ptr );
} }
// void // void
public void ExecuteJavascript( HHTMLBrowser unBrowserHandle /*HHTMLBrowser*/, string pchScript /*const char **/ ) public void ExecuteJavascript( HHTMLBrowser unBrowserHandle /*HHTMLBrowser*/, string pchScript /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamHTMLSurface_ExecuteJavascript( unBrowserHandle, pchScript );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamHTMLSurface.ExecuteJavascript( _ptr, unBrowserHandle, pchScript );
else Platform.Win64.ISteamHTMLSurface.ExecuteJavascript( _ptr, unBrowserHandle, pchScript );
} }
// void // void
public void Find( HHTMLBrowser unBrowserHandle /*HHTMLBrowser*/, string pchSearchStr /*const char **/, bool bCurrentlyInFind /*bool*/, bool bReverse /*bool*/ ) public void Find( HHTMLBrowser unBrowserHandle /*HHTMLBrowser*/, string pchSearchStr /*const char **/, bool bCurrentlyInFind /*bool*/, bool bReverse /*bool*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamHTMLSurface_Find( unBrowserHandle, pchSearchStr, bCurrentlyInFind, bReverse );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamHTMLSurface.Find( _ptr, unBrowserHandle, pchSearchStr, bCurrentlyInFind, bReverse );
else Platform.Win64.ISteamHTMLSurface.Find( _ptr, unBrowserHandle, pchSearchStr, bCurrentlyInFind, bReverse );
} }
// void // void
public void GetLinkAtPosition( HHTMLBrowser unBrowserHandle /*HHTMLBrowser*/, int x /*int*/, int y /*int*/ ) public void GetLinkAtPosition( HHTMLBrowser unBrowserHandle /*HHTMLBrowser*/, int x /*int*/, int y /*int*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamHTMLSurface_GetLinkAtPosition( unBrowserHandle, x, y );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamHTMLSurface.GetLinkAtPosition( _ptr, unBrowserHandle, x, y );
else Platform.Win64.ISteamHTMLSurface.GetLinkAtPosition( _ptr, unBrowserHandle, x, y );
} }
// void // void
public void GoBack( HHTMLBrowser unBrowserHandle /*HHTMLBrowser*/ ) public void GoBack( HHTMLBrowser unBrowserHandle /*HHTMLBrowser*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamHTMLSurface_GoBack( unBrowserHandle );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamHTMLSurface.GoBack( _ptr, unBrowserHandle );
else Platform.Win64.ISteamHTMLSurface.GoBack( _ptr, unBrowserHandle );
} }
// void // void
public void GoForward( HHTMLBrowser unBrowserHandle /*HHTMLBrowser*/ ) public void GoForward( HHTMLBrowser unBrowserHandle /*HHTMLBrowser*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamHTMLSurface_GoForward( unBrowserHandle );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamHTMLSurface.GoForward( _ptr, unBrowserHandle );
else Platform.Win64.ISteamHTMLSurface.GoForward( _ptr, unBrowserHandle );
} }
// bool // bool
public bool Init() public bool Init()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamHTMLSurface_Init();
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamHTMLSurface.Init( _ptr );
else return Platform.Win64.ISteamHTMLSurface.Init( _ptr );
} }
// void // void
public void JSDialogResponse( HHTMLBrowser unBrowserHandle /*HHTMLBrowser*/, bool bResult /*bool*/ ) public void JSDialogResponse( HHTMLBrowser unBrowserHandle /*HHTMLBrowser*/, bool bResult /*bool*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamHTMLSurface_JSDialogResponse( unBrowserHandle, bResult );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamHTMLSurface.JSDialogResponse( _ptr, unBrowserHandle, bResult );
else Platform.Win64.ISteamHTMLSurface.JSDialogResponse( _ptr, unBrowserHandle, bResult );
} }
// void // void
public void KeyChar( HHTMLBrowser unBrowserHandle /*HHTMLBrowser*/, uint cUnicodeChar /*uint32*/, HTMLKeyModifiers eHTMLKeyModifiers /*ISteamHTMLSurface::EHTMLKeyModifiers*/ ) public void KeyChar( HHTMLBrowser unBrowserHandle /*HHTMLBrowser*/, uint cUnicodeChar /*uint32*/, HTMLKeyModifiers eHTMLKeyModifiers /*ISteamHTMLSurface::EHTMLKeyModifiers*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamHTMLSurface_KeyChar( unBrowserHandle, cUnicodeChar, eHTMLKeyModifiers );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamHTMLSurface.KeyChar( _ptr, unBrowserHandle, cUnicodeChar, eHTMLKeyModifiers );
else Platform.Win64.ISteamHTMLSurface.KeyChar( _ptr, unBrowserHandle, cUnicodeChar, eHTMLKeyModifiers );
} }
// void // void
public void KeyDown( HHTMLBrowser unBrowserHandle /*HHTMLBrowser*/, uint nNativeKeyCode /*uint32*/, HTMLKeyModifiers eHTMLKeyModifiers /*ISteamHTMLSurface::EHTMLKeyModifiers*/ ) public void KeyDown( HHTMLBrowser unBrowserHandle /*HHTMLBrowser*/, uint nNativeKeyCode /*uint32*/, HTMLKeyModifiers eHTMLKeyModifiers /*ISteamHTMLSurface::EHTMLKeyModifiers*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamHTMLSurface_KeyDown( unBrowserHandle, nNativeKeyCode, eHTMLKeyModifiers );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamHTMLSurface.KeyDown( _ptr, unBrowserHandle, nNativeKeyCode, eHTMLKeyModifiers );
else Platform.Win64.ISteamHTMLSurface.KeyDown( _ptr, unBrowserHandle, nNativeKeyCode, eHTMLKeyModifiers );
} }
// void // void
public void KeyUp( HHTMLBrowser unBrowserHandle /*HHTMLBrowser*/, uint nNativeKeyCode /*uint32*/, HTMLKeyModifiers eHTMLKeyModifiers /*ISteamHTMLSurface::EHTMLKeyModifiers*/ ) public void KeyUp( HHTMLBrowser unBrowserHandle /*HHTMLBrowser*/, uint nNativeKeyCode /*uint32*/, HTMLKeyModifiers eHTMLKeyModifiers /*ISteamHTMLSurface::EHTMLKeyModifiers*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamHTMLSurface_KeyUp( unBrowserHandle, nNativeKeyCode, eHTMLKeyModifiers );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamHTMLSurface.KeyUp( _ptr, unBrowserHandle, nNativeKeyCode, eHTMLKeyModifiers );
else Platform.Win64.ISteamHTMLSurface.KeyUp( _ptr, unBrowserHandle, nNativeKeyCode, eHTMLKeyModifiers );
} }
// void // void
public void LoadURL( HHTMLBrowser unBrowserHandle /*HHTMLBrowser*/, string pchURL /*const char **/, string pchPostData /*const char **/ ) public void LoadURL( HHTMLBrowser unBrowserHandle /*HHTMLBrowser*/, string pchURL /*const char **/, string pchPostData /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamHTMLSurface_LoadURL( unBrowserHandle, pchURL, pchPostData );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamHTMLSurface.LoadURL( _ptr, unBrowserHandle, pchURL, pchPostData );
else Platform.Win64.ISteamHTMLSurface.LoadURL( _ptr, unBrowserHandle, pchURL, pchPostData );
} }
// void // void
public void MouseDoubleClick( HHTMLBrowser unBrowserHandle /*HHTMLBrowser*/, HTMLMouseButton eMouseButton /*ISteamHTMLSurface::EHTMLMouseButton*/ ) public void MouseDoubleClick( HHTMLBrowser unBrowserHandle /*HHTMLBrowser*/, HTMLMouseButton eMouseButton /*ISteamHTMLSurface::EHTMLMouseButton*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamHTMLSurface_MouseDoubleClick( unBrowserHandle, eMouseButton );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamHTMLSurface.MouseDoubleClick( _ptr, unBrowserHandle, eMouseButton );
else Platform.Win64.ISteamHTMLSurface.MouseDoubleClick( _ptr, unBrowserHandle, eMouseButton );
} }
// void // void
public void MouseDown( HHTMLBrowser unBrowserHandle /*HHTMLBrowser*/, HTMLMouseButton eMouseButton /*ISteamHTMLSurface::EHTMLMouseButton*/ ) public void MouseDown( HHTMLBrowser unBrowserHandle /*HHTMLBrowser*/, HTMLMouseButton eMouseButton /*ISteamHTMLSurface::EHTMLMouseButton*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamHTMLSurface_MouseDown( unBrowserHandle, eMouseButton );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamHTMLSurface.MouseDown( _ptr, unBrowserHandle, eMouseButton );
else Platform.Win64.ISteamHTMLSurface.MouseDown( _ptr, unBrowserHandle, eMouseButton );
} }
// void // void
public void MouseMove( HHTMLBrowser unBrowserHandle /*HHTMLBrowser*/, int x /*int*/, int y /*int*/ ) public void MouseMove( HHTMLBrowser unBrowserHandle /*HHTMLBrowser*/, int x /*int*/, int y /*int*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamHTMLSurface_MouseMove( unBrowserHandle, x, y );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamHTMLSurface.MouseMove( _ptr, unBrowserHandle, x, y );
else Platform.Win64.ISteamHTMLSurface.MouseMove( _ptr, unBrowserHandle, x, y );
} }
// void // void
public void MouseUp( HHTMLBrowser unBrowserHandle /*HHTMLBrowser*/, HTMLMouseButton eMouseButton /*ISteamHTMLSurface::EHTMLMouseButton*/ ) public void MouseUp( HHTMLBrowser unBrowserHandle /*HHTMLBrowser*/, HTMLMouseButton eMouseButton /*ISteamHTMLSurface::EHTMLMouseButton*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamHTMLSurface_MouseUp( unBrowserHandle, eMouseButton );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamHTMLSurface.MouseUp( _ptr, unBrowserHandle, eMouseButton );
else Platform.Win64.ISteamHTMLSurface.MouseUp( _ptr, unBrowserHandle, eMouseButton );
} }
// void // void
public void MouseWheel( HHTMLBrowser unBrowserHandle /*HHTMLBrowser*/, int nDelta /*int32*/ ) public void MouseWheel( HHTMLBrowser unBrowserHandle /*HHTMLBrowser*/, int nDelta /*int32*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamHTMLSurface_MouseWheel( unBrowserHandle, nDelta );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamHTMLSurface.MouseWheel( _ptr, unBrowserHandle, nDelta );
else Platform.Win64.ISteamHTMLSurface.MouseWheel( _ptr, unBrowserHandle, nDelta );
} }
// void // void
public void PasteFromClipboard( HHTMLBrowser unBrowserHandle /*HHTMLBrowser*/ ) public void PasteFromClipboard( HHTMLBrowser unBrowserHandle /*HHTMLBrowser*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamHTMLSurface_PasteFromClipboard( unBrowserHandle );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamHTMLSurface.PasteFromClipboard( _ptr, unBrowserHandle );
else Platform.Win64.ISteamHTMLSurface.PasteFromClipboard( _ptr, unBrowserHandle );
} }
// void // void
public void Reload( HHTMLBrowser unBrowserHandle /*HHTMLBrowser*/ ) public void Reload( HHTMLBrowser unBrowserHandle /*HHTMLBrowser*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamHTMLSurface_Reload( unBrowserHandle );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamHTMLSurface.Reload( _ptr, unBrowserHandle );
else Platform.Win64.ISteamHTMLSurface.Reload( _ptr, unBrowserHandle );
} }
// void // void
public void RemoveBrowser( HHTMLBrowser unBrowserHandle /*HHTMLBrowser*/ ) public void RemoveBrowser( HHTMLBrowser unBrowserHandle /*HHTMLBrowser*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamHTMLSurface_RemoveBrowser( unBrowserHandle );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamHTMLSurface.RemoveBrowser( _ptr, unBrowserHandle );
else Platform.Win64.ISteamHTMLSurface.RemoveBrowser( _ptr, unBrowserHandle );
} }
// void // void
public void SetBackgroundMode( HHTMLBrowser unBrowserHandle /*HHTMLBrowser*/, bool bBackgroundMode /*bool*/ ) public void SetBackgroundMode( HHTMLBrowser unBrowserHandle /*HHTMLBrowser*/, bool bBackgroundMode /*bool*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamHTMLSurface_SetBackgroundMode( unBrowserHandle, bBackgroundMode );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamHTMLSurface.SetBackgroundMode( _ptr, unBrowserHandle, bBackgroundMode );
else Platform.Win64.ISteamHTMLSurface.SetBackgroundMode( _ptr, unBrowserHandle, bBackgroundMode );
} }
// void // void
public void SetCookie( string pchHostname /*const char **/, string pchKey /*const char **/, string pchValue /*const char **/, string pchPath /*const char **/, RTime32 nExpires /*RTime32*/, bool bSecure /*bool*/, bool bHTTPOnly /*bool*/ ) public void SetCookie( string pchHostname /*const char **/, string pchKey /*const char **/, string pchValue /*const char **/, string pchPath /*const char **/, RTime32 nExpires /*RTime32*/, bool bSecure /*bool*/, bool bHTTPOnly /*bool*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamHTMLSurface_SetCookie( pchHostname, pchKey, pchValue, pchPath, nExpires, bSecure, bHTTPOnly );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamHTMLSurface.SetCookie( _ptr, pchHostname, pchKey, pchValue, pchPath, nExpires, bSecure, bHTTPOnly );
else Platform.Win64.ISteamHTMLSurface.SetCookie( _ptr, pchHostname, pchKey, pchValue, pchPath, nExpires, bSecure, bHTTPOnly );
} }
// void // void
public void SetHorizontalScroll( HHTMLBrowser unBrowserHandle /*HHTMLBrowser*/, uint nAbsolutePixelScroll /*uint32*/ ) public void SetHorizontalScroll( HHTMLBrowser unBrowserHandle /*HHTMLBrowser*/, uint nAbsolutePixelScroll /*uint32*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamHTMLSurface_SetHorizontalScroll( unBrowserHandle, nAbsolutePixelScroll );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamHTMLSurface.SetHorizontalScroll( _ptr, unBrowserHandle, nAbsolutePixelScroll );
else Platform.Win64.ISteamHTMLSurface.SetHorizontalScroll( _ptr, unBrowserHandle, nAbsolutePixelScroll );
} }
// void // void
public void SetKeyFocus( HHTMLBrowser unBrowserHandle /*HHTMLBrowser*/, bool bHasKeyFocus /*bool*/ ) public void SetKeyFocus( HHTMLBrowser unBrowserHandle /*HHTMLBrowser*/, bool bHasKeyFocus /*bool*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamHTMLSurface_SetKeyFocus( unBrowserHandle, bHasKeyFocus );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamHTMLSurface.SetKeyFocus( _ptr, unBrowserHandle, bHasKeyFocus );
else Platform.Win64.ISteamHTMLSurface.SetKeyFocus( _ptr, unBrowserHandle, bHasKeyFocus );
} }
// void // void
public void SetPageScaleFactor( HHTMLBrowser unBrowserHandle /*HHTMLBrowser*/, float flZoom /*float*/, int nPointX /*int*/, int nPointY /*int*/ ) public void SetPageScaleFactor( HHTMLBrowser unBrowserHandle /*HHTMLBrowser*/, float flZoom /*float*/, int nPointX /*int*/, int nPointY /*int*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamHTMLSurface_SetPageScaleFactor( unBrowserHandle, flZoom, nPointX, nPointY );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamHTMLSurface.SetPageScaleFactor( _ptr, unBrowserHandle, flZoom, nPointX, nPointY );
else Platform.Win64.ISteamHTMLSurface.SetPageScaleFactor( _ptr, unBrowserHandle, flZoom, nPointX, nPointY );
} }
// void // void
public void SetSize( HHTMLBrowser unBrowserHandle /*HHTMLBrowser*/, uint unWidth /*uint32*/, uint unHeight /*uint32*/ ) public void SetSize( HHTMLBrowser unBrowserHandle /*HHTMLBrowser*/, uint unWidth /*uint32*/, uint unHeight /*uint32*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamHTMLSurface_SetSize( unBrowserHandle, unWidth, unHeight );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamHTMLSurface.SetSize( _ptr, unBrowserHandle, unWidth, unHeight );
else Platform.Win64.ISteamHTMLSurface.SetSize( _ptr, unBrowserHandle, unWidth, unHeight );
} }
// void // void
public void SetVerticalScroll( HHTMLBrowser unBrowserHandle /*HHTMLBrowser*/, uint nAbsolutePixelScroll /*uint32*/ ) public void SetVerticalScroll( HHTMLBrowser unBrowserHandle /*HHTMLBrowser*/, uint nAbsolutePixelScroll /*uint32*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamHTMLSurface_SetVerticalScroll( unBrowserHandle, nAbsolutePixelScroll );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamHTMLSurface.SetVerticalScroll( _ptr, unBrowserHandle, nAbsolutePixelScroll );
else Platform.Win64.ISteamHTMLSurface.SetVerticalScroll( _ptr, unBrowserHandle, nAbsolutePixelScroll );
} }
// bool // bool
public bool Shutdown() public bool Shutdown()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamHTMLSurface_Shutdown();
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamHTMLSurface.Shutdown( _ptr );
else return Platform.Win64.ISteamHTMLSurface.Shutdown( _ptr );
} }
// void // void
public void StopFind( HHTMLBrowser unBrowserHandle /*HHTMLBrowser*/ ) public void StopFind( HHTMLBrowser unBrowserHandle /*HHTMLBrowser*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamHTMLSurface_StopFind( unBrowserHandle );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamHTMLSurface.StopFind( _ptr, unBrowserHandle );
else Platform.Win64.ISteamHTMLSurface.StopFind( _ptr, unBrowserHandle );
} }
// void // void
public void StopLoad( HHTMLBrowser unBrowserHandle /*HHTMLBrowser*/ ) public void StopLoad( HHTMLBrowser unBrowserHandle /*HHTMLBrowser*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamHTMLSurface_StopLoad( unBrowserHandle );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamHTMLSurface.StopLoad( _ptr, unBrowserHandle );
else Platform.Win64.ISteamHTMLSurface.StopLoad( _ptr, unBrowserHandle );
} }
// void // void
public void ViewSource( HHTMLBrowser unBrowserHandle /*HHTMLBrowser*/ ) public void ViewSource( HHTMLBrowser unBrowserHandle /*HHTMLBrowser*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamHTMLSurface_ViewSource( unBrowserHandle );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamHTMLSurface.ViewSource( _ptr, unBrowserHandle );
else Platform.Win64.ISteamHTMLSurface.ViewSource( _ptr, unBrowserHandle );
} }
} }

View File

@ -5,237 +5,167 @@ namespace SteamNative
{ {
public unsafe class SteamHTTP public unsafe class SteamHTTP
{ {
internal IntPtr _ptr; internal Platform.Interface _pi;
public SteamHTTP( IntPtr pointer ) public SteamHTTP( IntPtr pointer )
{ {
_ptr = pointer; if ( Platform.IsWindows64 ) _pi = new Platform.Win64( pointer );
else if ( Platform.IsWindows32 ) _pi = new Platform.Win32( pointer );
else if ( Platform.IsLinux32 ) _pi = new Platform.Linux32( pointer );
else if ( Platform.IsLinux64 ) _pi = new Platform.Linux64( pointer );
else if ( Platform.IsOsx ) _pi = new Platform.Mac( pointer );
} }
public bool IsValid{ get{ return _pi != null && _pi.IsValid; } }
// HTTPCookieContainerHandle // HTTPCookieContainerHandle
public HTTPCookieContainerHandle CreateCookieContainer( bool bAllowResponsesToModify /*bool*/ ) public HTTPCookieContainerHandle CreateCookieContainer( bool bAllowResponsesToModify /*bool*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamHTTP_CreateCookieContainer( bAllowResponsesToModify );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamHTTP.CreateCookieContainer( _ptr, bAllowResponsesToModify );
else return Platform.Win64.ISteamHTTP.CreateCookieContainer( _ptr, bAllowResponsesToModify );
} }
// HTTPRequestHandle // HTTPRequestHandle
public HTTPRequestHandle CreateHTTPRequest( HTTPMethod eHTTPRequestMethod /*EHTTPMethod*/, string pchAbsoluteURL /*const char **/ ) public HTTPRequestHandle CreateHTTPRequest( HTTPMethod eHTTPRequestMethod /*EHTTPMethod*/, string pchAbsoluteURL /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamHTTP_CreateHTTPRequest( eHTTPRequestMethod, pchAbsoluteURL );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamHTTP.CreateHTTPRequest( _ptr, eHTTPRequestMethod, pchAbsoluteURL );
else return Platform.Win64.ISteamHTTP.CreateHTTPRequest( _ptr, eHTTPRequestMethod, pchAbsoluteURL );
} }
// bool // bool
public bool DeferHTTPRequest( HTTPRequestHandle hRequest /*HTTPRequestHandle*/ ) public bool DeferHTTPRequest( HTTPRequestHandle hRequest /*HTTPRequestHandle*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamHTTP_DeferHTTPRequest( hRequest );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamHTTP.DeferHTTPRequest( _ptr, hRequest );
else return Platform.Win64.ISteamHTTP.DeferHTTPRequest( _ptr, hRequest );
} }
// bool // bool
public bool GetHTTPDownloadProgressPct( HTTPRequestHandle hRequest /*HTTPRequestHandle*/, out float pflPercentOut /*float **/ ) public bool GetHTTPDownloadProgressPct( HTTPRequestHandle hRequest /*HTTPRequestHandle*/, out float pflPercentOut /*float **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamHTTP_GetHTTPDownloadProgressPct( hRequest, out pflPercentOut );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamHTTP.GetHTTPDownloadProgressPct( _ptr, hRequest, out pflPercentOut );
else return Platform.Win64.ISteamHTTP.GetHTTPDownloadProgressPct( _ptr, hRequest, out pflPercentOut );
} }
// bool // bool
public bool GetHTTPRequestWasTimedOut( HTTPRequestHandle hRequest /*HTTPRequestHandle*/, out bool pbWasTimedOut /*bool **/ ) public bool GetHTTPRequestWasTimedOut( HTTPRequestHandle hRequest /*HTTPRequestHandle*/, out bool pbWasTimedOut /*bool **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamHTTP_GetHTTPRequestWasTimedOut( hRequest, out pbWasTimedOut );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamHTTP.GetHTTPRequestWasTimedOut( _ptr, hRequest, out pbWasTimedOut );
else return Platform.Win64.ISteamHTTP.GetHTTPRequestWasTimedOut( _ptr, hRequest, out pbWasTimedOut );
} }
// bool // bool
public bool GetHTTPResponseBodyData( HTTPRequestHandle hRequest /*HTTPRequestHandle*/, out byte pBodyDataBuffer /*uint8 **/, uint unBufferSize /*uint32*/ ) public bool GetHTTPResponseBodyData( HTTPRequestHandle hRequest /*HTTPRequestHandle*/, out byte pBodyDataBuffer /*uint8 **/, uint unBufferSize /*uint32*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamHTTP_GetHTTPResponseBodyData( hRequest, out pBodyDataBuffer, unBufferSize );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamHTTP.GetHTTPResponseBodyData( _ptr, hRequest, out pBodyDataBuffer, unBufferSize );
else return Platform.Win64.ISteamHTTP.GetHTTPResponseBodyData( _ptr, hRequest, out pBodyDataBuffer, unBufferSize );
} }
// bool // bool
public bool GetHTTPResponseBodySize( HTTPRequestHandle hRequest /*HTTPRequestHandle*/, out uint unBodySize /*uint32 **/ ) public bool GetHTTPResponseBodySize( HTTPRequestHandle hRequest /*HTTPRequestHandle*/, out uint unBodySize /*uint32 **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamHTTP_GetHTTPResponseBodySize( hRequest, out unBodySize );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamHTTP.GetHTTPResponseBodySize( _ptr, hRequest, out unBodySize );
else return Platform.Win64.ISteamHTTP.GetHTTPResponseBodySize( _ptr, hRequest, out unBodySize );
} }
// bool // bool
public bool GetHTTPResponseHeaderSize( HTTPRequestHandle hRequest /*HTTPRequestHandle*/, string pchHeaderName /*const char **/, out uint unResponseHeaderSize /*uint32 **/ ) public bool GetHTTPResponseHeaderSize( HTTPRequestHandle hRequest /*HTTPRequestHandle*/, string pchHeaderName /*const char **/, out uint unResponseHeaderSize /*uint32 **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamHTTP_GetHTTPResponseHeaderSize( hRequest, pchHeaderName, out unResponseHeaderSize );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamHTTP.GetHTTPResponseHeaderSize( _ptr, hRequest, pchHeaderName, out unResponseHeaderSize );
else return Platform.Win64.ISteamHTTP.GetHTTPResponseHeaderSize( _ptr, hRequest, pchHeaderName, out unResponseHeaderSize );
} }
// bool // bool
public bool GetHTTPResponseHeaderValue( HTTPRequestHandle hRequest /*HTTPRequestHandle*/, string pchHeaderName /*const char **/, out byte pHeaderValueBuffer /*uint8 **/, uint unBufferSize /*uint32*/ ) public bool GetHTTPResponseHeaderValue( HTTPRequestHandle hRequest /*HTTPRequestHandle*/, string pchHeaderName /*const char **/, out byte pHeaderValueBuffer /*uint8 **/, uint unBufferSize /*uint32*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamHTTP_GetHTTPResponseHeaderValue( hRequest, pchHeaderName, out pHeaderValueBuffer, unBufferSize );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamHTTP.GetHTTPResponseHeaderValue( _ptr, hRequest, pchHeaderName, out pHeaderValueBuffer, unBufferSize );
else return Platform.Win64.ISteamHTTP.GetHTTPResponseHeaderValue( _ptr, hRequest, pchHeaderName, out pHeaderValueBuffer, unBufferSize );
} }
// bool // bool
public bool GetHTTPStreamingResponseBodyData( HTTPRequestHandle hRequest /*HTTPRequestHandle*/, uint cOffset /*uint32*/, out byte pBodyDataBuffer /*uint8 **/, uint unBufferSize /*uint32*/ ) public bool GetHTTPStreamingResponseBodyData( HTTPRequestHandle hRequest /*HTTPRequestHandle*/, uint cOffset /*uint32*/, out byte pBodyDataBuffer /*uint8 **/, uint unBufferSize /*uint32*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamHTTP_GetHTTPStreamingResponseBodyData( hRequest, cOffset, out pBodyDataBuffer, unBufferSize );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamHTTP.GetHTTPStreamingResponseBodyData( _ptr, hRequest, cOffset, out pBodyDataBuffer, unBufferSize );
else return Platform.Win64.ISteamHTTP.GetHTTPStreamingResponseBodyData( _ptr, hRequest, cOffset, out pBodyDataBuffer, unBufferSize );
} }
// bool // bool
public bool PrioritizeHTTPRequest( HTTPRequestHandle hRequest /*HTTPRequestHandle*/ ) public bool PrioritizeHTTPRequest( HTTPRequestHandle hRequest /*HTTPRequestHandle*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamHTTP_PrioritizeHTTPRequest( hRequest );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamHTTP.PrioritizeHTTPRequest( _ptr, hRequest );
else return Platform.Win64.ISteamHTTP.PrioritizeHTTPRequest( _ptr, hRequest );
} }
// bool // bool
public bool ReleaseCookieContainer( HTTPCookieContainerHandle hCookieContainer /*HTTPCookieContainerHandle*/ ) public bool ReleaseCookieContainer( HTTPCookieContainerHandle hCookieContainer /*HTTPCookieContainerHandle*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamHTTP_ReleaseCookieContainer( hCookieContainer );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamHTTP.ReleaseCookieContainer( _ptr, hCookieContainer );
else return Platform.Win64.ISteamHTTP.ReleaseCookieContainer( _ptr, hCookieContainer );
} }
// bool // bool
public bool ReleaseHTTPRequest( HTTPRequestHandle hRequest /*HTTPRequestHandle*/ ) public bool ReleaseHTTPRequest( HTTPRequestHandle hRequest /*HTTPRequestHandle*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamHTTP_ReleaseHTTPRequest( hRequest );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamHTTP.ReleaseHTTPRequest( _ptr, hRequest );
else return Platform.Win64.ISteamHTTP.ReleaseHTTPRequest( _ptr, hRequest );
} }
// bool // bool
public bool SendHTTPRequest( HTTPRequestHandle hRequest /*HTTPRequestHandle*/, ref SteamAPICall_t pCallHandle /*SteamAPICall_t **/ ) public bool SendHTTPRequest( HTTPRequestHandle hRequest /*HTTPRequestHandle*/, ref SteamAPICall_t pCallHandle /*SteamAPICall_t **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamHTTP_SendHTTPRequest( hRequest, ref pCallHandle );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamHTTP.SendHTTPRequest( _ptr, hRequest, ref pCallHandle );
else return Platform.Win64.ISteamHTTP.SendHTTPRequest( _ptr, hRequest, ref pCallHandle );
} }
// bool // bool
public bool SendHTTPRequestAndStreamResponse( HTTPRequestHandle hRequest /*HTTPRequestHandle*/, ref SteamAPICall_t pCallHandle /*SteamAPICall_t **/ ) public bool SendHTTPRequestAndStreamResponse( HTTPRequestHandle hRequest /*HTTPRequestHandle*/, ref SteamAPICall_t pCallHandle /*SteamAPICall_t **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamHTTP_SendHTTPRequestAndStreamResponse( hRequest, ref pCallHandle );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamHTTP.SendHTTPRequestAndStreamResponse( _ptr, hRequest, ref pCallHandle );
else return Platform.Win64.ISteamHTTP.SendHTTPRequestAndStreamResponse( _ptr, hRequest, ref pCallHandle );
} }
// bool // bool
public bool SetCookie( HTTPCookieContainerHandle hCookieContainer /*HTTPCookieContainerHandle*/, string pchHost /*const char **/, string pchUrl /*const char **/, string pchCookie /*const char **/ ) public bool SetCookie( HTTPCookieContainerHandle hCookieContainer /*HTTPCookieContainerHandle*/, string pchHost /*const char **/, string pchUrl /*const char **/, string pchCookie /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamHTTP_SetCookie( hCookieContainer, pchHost, pchUrl, pchCookie );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamHTTP.SetCookie( _ptr, hCookieContainer, pchHost, pchUrl, pchCookie );
else return Platform.Win64.ISteamHTTP.SetCookie( _ptr, hCookieContainer, pchHost, pchUrl, pchCookie );
} }
// bool // bool
public bool SetHTTPRequestAbsoluteTimeoutMS( HTTPRequestHandle hRequest /*HTTPRequestHandle*/, uint unMilliseconds /*uint32*/ ) public bool SetHTTPRequestAbsoluteTimeoutMS( HTTPRequestHandle hRequest /*HTTPRequestHandle*/, uint unMilliseconds /*uint32*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamHTTP_SetHTTPRequestAbsoluteTimeoutMS( hRequest, unMilliseconds );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamHTTP.SetHTTPRequestAbsoluteTimeoutMS( _ptr, hRequest, unMilliseconds );
else return Platform.Win64.ISteamHTTP.SetHTTPRequestAbsoluteTimeoutMS( _ptr, hRequest, unMilliseconds );
} }
// bool // bool
public bool SetHTTPRequestContextValue( HTTPRequestHandle hRequest /*HTTPRequestHandle*/, ulong ulContextValue /*uint64*/ ) public bool SetHTTPRequestContextValue( HTTPRequestHandle hRequest /*HTTPRequestHandle*/, ulong ulContextValue /*uint64*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamHTTP_SetHTTPRequestContextValue( hRequest, ulContextValue );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamHTTP.SetHTTPRequestContextValue( _ptr, hRequest, ulContextValue );
else return Platform.Win64.ISteamHTTP.SetHTTPRequestContextValue( _ptr, hRequest, ulContextValue );
} }
// bool // bool
public bool SetHTTPRequestCookieContainer( HTTPRequestHandle hRequest /*HTTPRequestHandle*/, HTTPCookieContainerHandle hCookieContainer /*HTTPCookieContainerHandle*/ ) public bool SetHTTPRequestCookieContainer( HTTPRequestHandle hRequest /*HTTPRequestHandle*/, HTTPCookieContainerHandle hCookieContainer /*HTTPCookieContainerHandle*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamHTTP_SetHTTPRequestCookieContainer( hRequest, hCookieContainer );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamHTTP.SetHTTPRequestCookieContainer( _ptr, hRequest, hCookieContainer );
else return Platform.Win64.ISteamHTTP.SetHTTPRequestCookieContainer( _ptr, hRequest, hCookieContainer );
} }
// bool // bool
public bool SetHTTPRequestGetOrPostParameter( HTTPRequestHandle hRequest /*HTTPRequestHandle*/, string pchParamName /*const char **/, string pchParamValue /*const char **/ ) public bool SetHTTPRequestGetOrPostParameter( HTTPRequestHandle hRequest /*HTTPRequestHandle*/, string pchParamName /*const char **/, string pchParamValue /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamHTTP_SetHTTPRequestGetOrPostParameter( hRequest, pchParamName, pchParamValue );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamHTTP.SetHTTPRequestGetOrPostParameter( _ptr, hRequest, pchParamName, pchParamValue );
else return Platform.Win64.ISteamHTTP.SetHTTPRequestGetOrPostParameter( _ptr, hRequest, pchParamName, pchParamValue );
} }
// bool // bool
public bool SetHTTPRequestHeaderValue( HTTPRequestHandle hRequest /*HTTPRequestHandle*/, string pchHeaderName /*const char **/, string pchHeaderValue /*const char **/ ) public bool SetHTTPRequestHeaderValue( HTTPRequestHandle hRequest /*HTTPRequestHandle*/, string pchHeaderName /*const char **/, string pchHeaderValue /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamHTTP_SetHTTPRequestHeaderValue( hRequest, pchHeaderName, pchHeaderValue );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamHTTP.SetHTTPRequestHeaderValue( _ptr, hRequest, pchHeaderName, pchHeaderValue );
else return Platform.Win64.ISteamHTTP.SetHTTPRequestHeaderValue( _ptr, hRequest, pchHeaderName, pchHeaderValue );
} }
// bool // bool
public bool SetHTTPRequestNetworkActivityTimeout( HTTPRequestHandle hRequest /*HTTPRequestHandle*/, uint unTimeoutSeconds /*uint32*/ ) public bool SetHTTPRequestNetworkActivityTimeout( HTTPRequestHandle hRequest /*HTTPRequestHandle*/, uint unTimeoutSeconds /*uint32*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamHTTP_SetHTTPRequestNetworkActivityTimeout( hRequest, unTimeoutSeconds );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamHTTP.SetHTTPRequestNetworkActivityTimeout( _ptr, hRequest, unTimeoutSeconds );
else return Platform.Win64.ISteamHTTP.SetHTTPRequestNetworkActivityTimeout( _ptr, hRequest, unTimeoutSeconds );
} }
// bool // bool
public bool SetHTTPRequestRawPostBody( HTTPRequestHandle hRequest /*HTTPRequestHandle*/, string pchContentType /*const char **/, out byte pubBody /*uint8 **/, uint unBodyLen /*uint32*/ ) public bool SetHTTPRequestRawPostBody( HTTPRequestHandle hRequest /*HTTPRequestHandle*/, string pchContentType /*const char **/, out byte pubBody /*uint8 **/, uint unBodyLen /*uint32*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamHTTP_SetHTTPRequestRawPostBody( hRequest, pchContentType, out pubBody, unBodyLen );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamHTTP.SetHTTPRequestRawPostBody( _ptr, hRequest, pchContentType, out pubBody, unBodyLen );
else return Platform.Win64.ISteamHTTP.SetHTTPRequestRawPostBody( _ptr, hRequest, pchContentType, out pubBody, unBodyLen );
} }
// bool // bool
public bool SetHTTPRequestRequiresVerifiedCertificate( HTTPRequestHandle hRequest /*HTTPRequestHandle*/, bool bRequireVerifiedCertificate /*bool*/ ) public bool SetHTTPRequestRequiresVerifiedCertificate( HTTPRequestHandle hRequest /*HTTPRequestHandle*/, bool bRequireVerifiedCertificate /*bool*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamHTTP_SetHTTPRequestRequiresVerifiedCertificate( hRequest, bRequireVerifiedCertificate );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamHTTP.SetHTTPRequestRequiresVerifiedCertificate( _ptr, hRequest, bRequireVerifiedCertificate );
else return Platform.Win64.ISteamHTTP.SetHTTPRequestRequiresVerifiedCertificate( _ptr, hRequest, bRequireVerifiedCertificate );
} }
// bool // bool
public bool SetHTTPRequestUserAgentInfo( HTTPRequestHandle hRequest /*HTTPRequestHandle*/, string pchUserAgentInfo /*const char **/ ) public bool SetHTTPRequestUserAgentInfo( HTTPRequestHandle hRequest /*HTTPRequestHandle*/, string pchUserAgentInfo /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamHTTP_SetHTTPRequestUserAgentInfo( hRequest, pchUserAgentInfo );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamHTTP.SetHTTPRequestUserAgentInfo( _ptr, hRequest, pchUserAgentInfo );
else return Platform.Win64.ISteamHTTP.SetHTTPRequestUserAgentInfo( _ptr, hRequest, pchUserAgentInfo );
} }
} }

View File

@ -5,113 +5,87 @@ namespace SteamNative
{ {
public unsafe class SteamInventory public unsafe class SteamInventory
{ {
internal IntPtr _ptr; internal Platform.Interface _pi;
public SteamInventory( IntPtr pointer ) public SteamInventory( IntPtr pointer )
{ {
_ptr = pointer; if ( Platform.IsWindows64 ) _pi = new Platform.Win64( pointer );
else if ( Platform.IsWindows32 ) _pi = new Platform.Win32( pointer );
else if ( Platform.IsLinux32 ) _pi = new Platform.Linux32( pointer );
else if ( Platform.IsLinux64 ) _pi = new Platform.Linux64( pointer );
else if ( Platform.IsOsx ) _pi = new Platform.Mac( pointer );
} }
public bool IsValid{ get{ return _pi != null && _pi.IsValid; } }
// bool // bool
public bool AddPromoItem( ref SteamInventoryResult_t pResultHandle /*SteamInventoryResult_t **/, SteamItemDef_t itemDef /*SteamItemDef_t*/ ) public bool AddPromoItem( ref SteamInventoryResult_t pResultHandle /*SteamInventoryResult_t **/, SteamItemDef_t itemDef /*SteamItemDef_t*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamInventory_AddPromoItem( ref pResultHandle, itemDef );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamInventory.AddPromoItem( _ptr, ref pResultHandle, itemDef );
else return Platform.Win64.ISteamInventory.AddPromoItem( _ptr, ref pResultHandle, itemDef );
} }
// bool // bool
public bool AddPromoItems( ref SteamInventoryResult_t pResultHandle /*SteamInventoryResult_t **/, IntPtr pArrayItemDefs /*const SteamItemDef_t **/, uint unArrayLength /*uint32*/ ) public bool AddPromoItems( ref SteamInventoryResult_t pResultHandle /*SteamInventoryResult_t **/, IntPtr pArrayItemDefs /*const SteamItemDef_t **/, uint unArrayLength /*uint32*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamInventory_AddPromoItems( ref pResultHandle, (IntPtr) pArrayItemDefs, unArrayLength );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamInventory.AddPromoItems( _ptr, ref pResultHandle, (IntPtr) pArrayItemDefs, unArrayLength );
else return Platform.Win64.ISteamInventory.AddPromoItems( _ptr, ref pResultHandle, (IntPtr) pArrayItemDefs, unArrayLength );
} }
// bool // bool
public bool CheckResultSteamID( SteamInventoryResult_t resultHandle /*SteamInventoryResult_t*/, CSteamID steamIDExpected /*class CSteamID*/ ) public bool CheckResultSteamID( SteamInventoryResult_t resultHandle /*SteamInventoryResult_t*/, CSteamID steamIDExpected /*class CSteamID*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamInventory_CheckResultSteamID( resultHandle, steamIDExpected );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamInventory.CheckResultSteamID( _ptr, resultHandle, steamIDExpected );
else return Platform.Win64.ISteamInventory.CheckResultSteamID( _ptr, resultHandle, steamIDExpected );
} }
// bool // bool
public bool ConsumeItem( ref SteamInventoryResult_t pResultHandle /*SteamInventoryResult_t **/, SteamItemInstanceID_t itemConsume /*SteamItemInstanceID_t*/, uint unQuantity /*uint32*/ ) public bool ConsumeItem( ref SteamInventoryResult_t pResultHandle /*SteamInventoryResult_t **/, SteamItemInstanceID_t itemConsume /*SteamItemInstanceID_t*/, uint unQuantity /*uint32*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamInventory_ConsumeItem( ref pResultHandle, itemConsume, unQuantity );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamInventory.ConsumeItem( _ptr, ref pResultHandle, itemConsume, unQuantity );
else return Platform.Win64.ISteamInventory.ConsumeItem( _ptr, ref pResultHandle, itemConsume, unQuantity );
} }
// bool // bool
public bool DeserializeResult( ref SteamInventoryResult_t pOutResultHandle /*SteamInventoryResult_t **/, IntPtr pBuffer /*const void **/, uint unBufferSize /*uint32*/, bool bRESERVED_MUST_BE_FALSE /*bool*/ ) public bool DeserializeResult( ref SteamInventoryResult_t pOutResultHandle /*SteamInventoryResult_t **/, IntPtr pBuffer /*const void **/, uint unBufferSize /*uint32*/, bool bRESERVED_MUST_BE_FALSE /*bool*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamInventory_DeserializeResult( ref pOutResultHandle, (IntPtr) pBuffer, unBufferSize, bRESERVED_MUST_BE_FALSE );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamInventory.DeserializeResult( _ptr, ref pOutResultHandle, (IntPtr) pBuffer, unBufferSize, bRESERVED_MUST_BE_FALSE );
else return Platform.Win64.ISteamInventory.DeserializeResult( _ptr, ref pOutResultHandle, (IntPtr) pBuffer, unBufferSize, bRESERVED_MUST_BE_FALSE );
} }
// void // void
public void DestroyResult( SteamInventoryResult_t resultHandle /*SteamInventoryResult_t*/ ) public void DestroyResult( SteamInventoryResult_t resultHandle /*SteamInventoryResult_t*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamInventory_DestroyResult( resultHandle );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamInventory.DestroyResult( _ptr, resultHandle );
else Platform.Win64.ISteamInventory.DestroyResult( _ptr, resultHandle );
} }
// bool // bool
public bool ExchangeItems( ref SteamInventoryResult_t pResultHandle /*SteamInventoryResult_t **/, ref SteamItemDef_t pArrayGenerate /*const SteamItemDef_t **/, out uint punArrayGenerateQuantity /*const uint32 **/, uint unArrayGenerateLength /*uint32*/, IntPtr pArrayDestroy /*const SteamItemInstanceID_t **/, IntPtr punArrayDestroyQuantity /*const uint32 **/, uint unArrayDestroyLength /*uint32*/ ) public bool ExchangeItems( ref SteamInventoryResult_t pResultHandle /*SteamInventoryResult_t **/, ref SteamItemDef_t pArrayGenerate /*const SteamItemDef_t **/, out uint punArrayGenerateQuantity /*const uint32 **/, uint unArrayGenerateLength /*uint32*/, IntPtr pArrayDestroy /*const SteamItemInstanceID_t **/, IntPtr punArrayDestroyQuantity /*const uint32 **/, uint unArrayDestroyLength /*uint32*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamInventory_ExchangeItems( ref pResultHandle, ref pArrayGenerate, out punArrayGenerateQuantity, unArrayGenerateLength, (IntPtr) pArrayDestroy, (IntPtr) punArrayDestroyQuantity, unArrayDestroyLength );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamInventory.ExchangeItems( _ptr, ref pResultHandle, ref pArrayGenerate, out punArrayGenerateQuantity, unArrayGenerateLength, (IntPtr) pArrayDestroy, (IntPtr) punArrayDestroyQuantity, unArrayDestroyLength );
else return Platform.Win64.ISteamInventory.ExchangeItems( _ptr, ref pResultHandle, ref pArrayGenerate, out punArrayGenerateQuantity, unArrayGenerateLength, (IntPtr) pArrayDestroy, (IntPtr) punArrayDestroyQuantity, unArrayDestroyLength );
} }
// bool // bool
public bool GenerateItems( ref SteamInventoryResult_t pResultHandle /*SteamInventoryResult_t **/, IntPtr pArrayItemDefs /*const SteamItemDef_t **/, out uint punArrayQuantity /*const uint32 **/, uint unArrayLength /*uint32*/ ) public bool GenerateItems( ref SteamInventoryResult_t pResultHandle /*SteamInventoryResult_t **/, IntPtr pArrayItemDefs /*const SteamItemDef_t **/, out uint punArrayQuantity /*const uint32 **/, uint unArrayLength /*uint32*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamInventory_GenerateItems( ref pResultHandle, (IntPtr) pArrayItemDefs, out punArrayQuantity, unArrayLength );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamInventory.GenerateItems( _ptr, ref pResultHandle, (IntPtr) pArrayItemDefs, out punArrayQuantity, unArrayLength );
else return Platform.Win64.ISteamInventory.GenerateItems( _ptr, ref pResultHandle, (IntPtr) pArrayItemDefs, out punArrayQuantity, unArrayLength );
} }
// bool // bool
public bool GetAllItems( ref SteamInventoryResult_t pResultHandle /*SteamInventoryResult_t **/ ) public bool GetAllItems( ref SteamInventoryResult_t pResultHandle /*SteamInventoryResult_t **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamInventory_GetAllItems( ref pResultHandle );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamInventory.GetAllItems( _ptr, ref pResultHandle );
else return Platform.Win64.ISteamInventory.GetAllItems( _ptr, ref pResultHandle );
} }
// bool // bool
// using: Detect_MultiSizeArrayReturn // using: Detect_MultiSizeArrayReturn
public SteamItemDef_t[] GetItemDefinitionIDs() public SteamItemDef_t[] GetItemDefinitionIDs()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); //
uint punItemDefIDsArraySize = 0; uint punItemDefIDsArraySize = 0;
bool success = false; bool success = false;
if ( Platform.IsWindows32 ) success = Platform.Win32.ISteamInventory.GetItemDefinitionIDs( _ptr, IntPtr.Zero, out punItemDefIDsArraySize ); success = _pi.ISteamInventory_GetItemDefinitionIDs( IntPtr.Zero, out punItemDefIDsArraySize );
else success = Platform.Win64.ISteamInventory.GetItemDefinitionIDs( _ptr, IntPtr.Zero, out punItemDefIDsArraySize );
if ( !success || punItemDefIDsArraySize == 0) return null; if ( !success || punItemDefIDsArraySize == 0) return null;
var pItemDefIDs = new SteamItemDef_t[punItemDefIDsArraySize]; var pItemDefIDs = new SteamItemDef_t[punItemDefIDsArraySize];
fixed ( void* pItemDefIDs_ptr = pItemDefIDs ) fixed ( void* pItemDefIDs_ptr = pItemDefIDs )
{ {
if ( Platform.IsWindows32 ) success = Platform.Win32.ISteamInventory.GetItemDefinitionIDs( _ptr, (IntPtr) pItemDefIDs_ptr, out punItemDefIDsArraySize ); success = _pi.ISteamInventory_GetItemDefinitionIDs( (IntPtr) pItemDefIDs_ptr, out punItemDefIDsArraySize );
else success = Platform.Win64.ISteamInventory.GetItemDefinitionIDs( _ptr, (IntPtr) pItemDefIDs_ptr, out punItemDefIDsArraySize );
if ( !success ) return null; if ( !success ) return null;
return pItemDefIDs; return pItemDefIDs;
} }
@ -121,14 +95,11 @@ namespace SteamNative
// with: Detect_StringFetch False // with: Detect_StringFetch False
public bool GetItemDefinitionProperty( SteamItemDef_t iDefinition /*SteamItemDef_t*/, string pchPropertyName /*const char **/, out string pchValueBuffer /*char **/ ) public bool GetItemDefinitionProperty( SteamItemDef_t iDefinition /*SteamItemDef_t*/, string pchPropertyName /*const char **/, out string pchValueBuffer /*char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); //
bool bSuccess = default( bool ); bool bSuccess = default( bool );
pchValueBuffer = string.Empty; pchValueBuffer = string.Empty;
System.Text.StringBuilder pchValueBuffer_sb = new System.Text.StringBuilder( 4096 ); System.Text.StringBuilder pchValueBuffer_sb = new System.Text.StringBuilder( 4096 );
uint punValueBufferSize = 4096; uint punValueBufferSize = 4096;
if ( Platform.IsWindows32 ) bSuccess = Platform.Win32.ISteamInventory.GetItemDefinitionProperty( _ptr, iDefinition, pchPropertyName, pchValueBuffer_sb, out punValueBufferSize ); bSuccess = _pi.ISteamInventory_GetItemDefinitionProperty( iDefinition, pchPropertyName, pchValueBuffer_sb, out punValueBufferSize );
else bSuccess = Platform.Win64.ISteamInventory.GetItemDefinitionProperty( _ptr, iDefinition, pchPropertyName, pchValueBuffer_sb, out punValueBufferSize );
if ( !bSuccess ) return bSuccess; if ( !bSuccess ) return bSuccess;
pchValueBuffer = pchValueBuffer_sb.ToString(); pchValueBuffer = pchValueBuffer_sb.ToString();
return bSuccess; return bSuccess;
@ -137,30 +108,23 @@ namespace SteamNative
// bool // bool
public bool GetItemsByID( ref SteamInventoryResult_t pResultHandle /*SteamInventoryResult_t **/, IntPtr pInstanceIDs /*const SteamItemInstanceID_t **/, uint unCountInstanceIDs /*uint32*/ ) public bool GetItemsByID( ref SteamInventoryResult_t pResultHandle /*SteamInventoryResult_t **/, IntPtr pInstanceIDs /*const SteamItemInstanceID_t **/, uint unCountInstanceIDs /*uint32*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamInventory_GetItemsByID( ref pResultHandle, (IntPtr) pInstanceIDs, unCountInstanceIDs );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamInventory.GetItemsByID( _ptr, ref pResultHandle, (IntPtr) pInstanceIDs, unCountInstanceIDs );
else return Platform.Win64.ISteamInventory.GetItemsByID( _ptr, ref pResultHandle, (IntPtr) pInstanceIDs, unCountInstanceIDs );
} }
// bool // bool
// using: Detect_MultiSizeArrayReturn // using: Detect_MultiSizeArrayReturn
public SteamItemDetails_t[] GetResultItems( SteamInventoryResult_t resultHandle /*SteamInventoryResult_t*/ ) public SteamItemDetails_t[] GetResultItems( SteamInventoryResult_t resultHandle /*SteamInventoryResult_t*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); //
uint punOutItemsArraySize = 0; uint punOutItemsArraySize = 0;
bool success = false; bool success = false;
if ( Platform.IsWindows32 ) success = Platform.Win32.ISteamInventory.GetResultItems( _ptr, resultHandle, IntPtr.Zero, out punOutItemsArraySize ); success = _pi.ISteamInventory_GetResultItems( resultHandle, IntPtr.Zero, out punOutItemsArraySize );
else success = Platform.Win64.ISteamInventory.GetResultItems( _ptr, resultHandle, IntPtr.Zero, out punOutItemsArraySize );
if ( !success || punOutItemsArraySize == 0) return null; if ( !success || punOutItemsArraySize == 0) return null;
var pOutItemsArray = new SteamItemDetails_t[punOutItemsArraySize]; var pOutItemsArray = new SteamItemDetails_t[punOutItemsArraySize];
fixed ( void* pOutItemsArray_ptr = pOutItemsArray ) fixed ( void* pOutItemsArray_ptr = pOutItemsArray )
{ {
if ( Platform.IsWindows32 ) success = Platform.Win32.ISteamInventory.GetResultItems( _ptr, resultHandle, (IntPtr) pOutItemsArray_ptr, out punOutItemsArraySize ); success = _pi.ISteamInventory_GetResultItems( resultHandle, (IntPtr) pOutItemsArray_ptr, out punOutItemsArraySize );
else success = Platform.Win64.ISteamInventory.GetResultItems( _ptr, resultHandle, (IntPtr) pOutItemsArray_ptr, out punOutItemsArraySize );
if ( !success ) return null; if ( !success ) return null;
return pOutItemsArray; return pOutItemsArray;
} }
@ -169,82 +133,55 @@ namespace SteamNative
// Result // Result
public Result GetResultStatus( SteamInventoryResult_t resultHandle /*SteamInventoryResult_t*/ ) public Result GetResultStatus( SteamInventoryResult_t resultHandle /*SteamInventoryResult_t*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamInventory_GetResultStatus( resultHandle );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamInventory.GetResultStatus( _ptr, resultHandle );
else return Platform.Win64.ISteamInventory.GetResultStatus( _ptr, resultHandle );
} }
// uint // uint
public uint GetResultTimestamp( SteamInventoryResult_t resultHandle /*SteamInventoryResult_t*/ ) public uint GetResultTimestamp( SteamInventoryResult_t resultHandle /*SteamInventoryResult_t*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamInventory_GetResultTimestamp( resultHandle );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamInventory.GetResultTimestamp( _ptr, resultHandle );
else return Platform.Win64.ISteamInventory.GetResultTimestamp( _ptr, resultHandle );
} }
// bool // bool
public bool GrantPromoItems( ref SteamInventoryResult_t pResultHandle /*SteamInventoryResult_t **/ ) public bool GrantPromoItems( ref SteamInventoryResult_t pResultHandle /*SteamInventoryResult_t **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamInventory_GrantPromoItems( ref pResultHandle );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamInventory.GrantPromoItems( _ptr, ref pResultHandle );
else return Platform.Win64.ISteamInventory.GrantPromoItems( _ptr, ref pResultHandle );
} }
// bool // bool
public bool LoadItemDefinitions() public bool LoadItemDefinitions()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamInventory_LoadItemDefinitions();
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamInventory.LoadItemDefinitions( _ptr );
else return Platform.Win64.ISteamInventory.LoadItemDefinitions( _ptr );
} }
// void // void
public void SendItemDropHeartbeat() public void SendItemDropHeartbeat()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamInventory_SendItemDropHeartbeat();
if ( Platform.IsWindows32 ) Platform.Win32.ISteamInventory.SendItemDropHeartbeat( _ptr );
else Platform.Win64.ISteamInventory.SendItemDropHeartbeat( _ptr );
} }
// bool // bool
public bool SerializeResult( SteamInventoryResult_t resultHandle /*SteamInventoryResult_t*/, IntPtr pOutBuffer /*void **/, out uint punOutBufferSize /*uint32 **/ ) public bool SerializeResult( SteamInventoryResult_t resultHandle /*SteamInventoryResult_t*/, IntPtr pOutBuffer /*void **/, out uint punOutBufferSize /*uint32 **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamInventory_SerializeResult( resultHandle, (IntPtr) pOutBuffer, out punOutBufferSize );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamInventory.SerializeResult( _ptr, resultHandle, (IntPtr) pOutBuffer, out punOutBufferSize );
else return Platform.Win64.ISteamInventory.SerializeResult( _ptr, resultHandle, (IntPtr) pOutBuffer, out punOutBufferSize );
} }
// bool // bool
public bool TradeItems( ref SteamInventoryResult_t pResultHandle /*SteamInventoryResult_t **/, CSteamID steamIDTradePartner /*class CSteamID*/, ref SteamItemInstanceID_t pArrayGive /*const SteamItemInstanceID_t **/, out uint pArrayGiveQuantity /*const uint32 **/, uint nArrayGiveLength /*uint32*/, ref SteamItemInstanceID_t pArrayGet /*const SteamItemInstanceID_t **/, out uint pArrayGetQuantity /*const uint32 **/, uint nArrayGetLength /*uint32*/ ) public bool TradeItems( ref SteamInventoryResult_t pResultHandle /*SteamInventoryResult_t **/, CSteamID steamIDTradePartner /*class CSteamID*/, ref SteamItemInstanceID_t pArrayGive /*const SteamItemInstanceID_t **/, out uint pArrayGiveQuantity /*const uint32 **/, uint nArrayGiveLength /*uint32*/, ref SteamItemInstanceID_t pArrayGet /*const SteamItemInstanceID_t **/, out uint pArrayGetQuantity /*const uint32 **/, uint nArrayGetLength /*uint32*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamInventory_TradeItems( ref pResultHandle, steamIDTradePartner, ref pArrayGive, out pArrayGiveQuantity, nArrayGiveLength, ref pArrayGet, out pArrayGetQuantity, nArrayGetLength );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamInventory.TradeItems( _ptr, ref pResultHandle, steamIDTradePartner, ref pArrayGive, out pArrayGiveQuantity, nArrayGiveLength, ref pArrayGet, out pArrayGetQuantity, nArrayGetLength );
else return Platform.Win64.ISteamInventory.TradeItems( _ptr, ref pResultHandle, steamIDTradePartner, ref pArrayGive, out pArrayGiveQuantity, nArrayGiveLength, ref pArrayGet, out pArrayGetQuantity, nArrayGetLength );
} }
// bool // bool
public bool TransferItemQuantity( ref SteamInventoryResult_t pResultHandle /*SteamInventoryResult_t **/, SteamItemInstanceID_t itemIdSource /*SteamItemInstanceID_t*/, uint unQuantity /*uint32*/, SteamItemInstanceID_t itemIdDest /*SteamItemInstanceID_t*/ ) public bool TransferItemQuantity( ref SteamInventoryResult_t pResultHandle /*SteamInventoryResult_t **/, SteamItemInstanceID_t itemIdSource /*SteamItemInstanceID_t*/, uint unQuantity /*uint32*/, SteamItemInstanceID_t itemIdDest /*SteamItemInstanceID_t*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamInventory_TransferItemQuantity( ref pResultHandle, itemIdSource, unQuantity, itemIdDest );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamInventory.TransferItemQuantity( _ptr, ref pResultHandle, itemIdSource, unQuantity, itemIdDest );
else return Platform.Win64.ISteamInventory.TransferItemQuantity( _ptr, ref pResultHandle, itemIdSource, unQuantity, itemIdDest );
} }
// bool // bool
public bool TriggerItemDrop( ref SteamInventoryResult_t pResultHandle /*SteamInventoryResult_t **/, SteamItemDef_t dropListDefinition /*SteamItemDef_t*/ ) public bool TriggerItemDrop( ref SteamInventoryResult_t pResultHandle /*SteamInventoryResult_t **/, SteamItemDef_t dropListDefinition /*SteamItemDef_t*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamInventory_TriggerItemDrop( ref pResultHandle, dropListDefinition );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamInventory.TriggerItemDrop( _ptr, ref pResultHandle, dropListDefinition );
else return Platform.Win64.ISteamInventory.TriggerItemDrop( _ptr, ref pResultHandle, dropListDefinition );
} }
} }

View File

@ -5,149 +5,109 @@ namespace SteamNative
{ {
public unsafe class SteamMatchmaking public unsafe class SteamMatchmaking
{ {
internal IntPtr _ptr; internal Platform.Interface _pi;
public SteamMatchmaking( IntPtr pointer ) public SteamMatchmaking( IntPtr pointer )
{ {
_ptr = pointer; if ( Platform.IsWindows64 ) _pi = new Platform.Win64( pointer );
else if ( Platform.IsWindows32 ) _pi = new Platform.Win32( pointer );
else if ( Platform.IsLinux32 ) _pi = new Platform.Linux32( pointer );
else if ( Platform.IsLinux64 ) _pi = new Platform.Linux64( pointer );
else if ( Platform.IsOsx ) _pi = new Platform.Mac( pointer );
} }
public bool IsValid{ get{ return _pi != null && _pi.IsValid; } }
// int // int
public int AddFavoriteGame( AppId_t nAppID /*AppId_t*/, uint nIP /*uint32*/, ushort nConnPort /*uint16*/, ushort nQueryPort /*uint16*/, uint unFlags /*uint32*/, uint rTime32LastPlayedOnServer /*uint32*/ ) public int AddFavoriteGame( AppId_t nAppID /*AppId_t*/, uint nIP /*uint32*/, ushort nConnPort /*uint16*/, ushort nQueryPort /*uint16*/, uint unFlags /*uint32*/, uint rTime32LastPlayedOnServer /*uint32*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamMatchmaking_AddFavoriteGame( nAppID, nIP, nConnPort, nQueryPort, unFlags, rTime32LastPlayedOnServer );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamMatchmaking.AddFavoriteGame( _ptr, nAppID, nIP, nConnPort, nQueryPort, unFlags, rTime32LastPlayedOnServer );
else return Platform.Win64.ISteamMatchmaking.AddFavoriteGame( _ptr, nAppID, nIP, nConnPort, nQueryPort, unFlags, rTime32LastPlayedOnServer );
} }
// void // void
public void AddRequestLobbyListCompatibleMembersFilter( CSteamID steamIDLobby /*class CSteamID*/ ) public void AddRequestLobbyListCompatibleMembersFilter( CSteamID steamIDLobby /*class CSteamID*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamMatchmaking_AddRequestLobbyListCompatibleMembersFilter( steamIDLobby );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamMatchmaking.AddRequestLobbyListCompatibleMembersFilter( _ptr, steamIDLobby );
else Platform.Win64.ISteamMatchmaking.AddRequestLobbyListCompatibleMembersFilter( _ptr, steamIDLobby );
} }
// void // void
public void AddRequestLobbyListDistanceFilter( LobbyDistanceFilter eLobbyDistanceFilter /*ELobbyDistanceFilter*/ ) public void AddRequestLobbyListDistanceFilter( LobbyDistanceFilter eLobbyDistanceFilter /*ELobbyDistanceFilter*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamMatchmaking_AddRequestLobbyListDistanceFilter( eLobbyDistanceFilter );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamMatchmaking.AddRequestLobbyListDistanceFilter( _ptr, eLobbyDistanceFilter );
else Platform.Win64.ISteamMatchmaking.AddRequestLobbyListDistanceFilter( _ptr, eLobbyDistanceFilter );
} }
// void // void
public void AddRequestLobbyListFilterSlotsAvailable( int nSlotsAvailable /*int*/ ) public void AddRequestLobbyListFilterSlotsAvailable( int nSlotsAvailable /*int*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamMatchmaking_AddRequestLobbyListFilterSlotsAvailable( nSlotsAvailable );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamMatchmaking.AddRequestLobbyListFilterSlotsAvailable( _ptr, nSlotsAvailable );
else Platform.Win64.ISteamMatchmaking.AddRequestLobbyListFilterSlotsAvailable( _ptr, nSlotsAvailable );
} }
// void // void
public void AddRequestLobbyListNearValueFilter( string pchKeyToMatch /*const char **/, int nValueToBeCloseTo /*int*/ ) public void AddRequestLobbyListNearValueFilter( string pchKeyToMatch /*const char **/, int nValueToBeCloseTo /*int*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamMatchmaking_AddRequestLobbyListNearValueFilter( pchKeyToMatch, nValueToBeCloseTo );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamMatchmaking.AddRequestLobbyListNearValueFilter( _ptr, pchKeyToMatch, nValueToBeCloseTo );
else Platform.Win64.ISteamMatchmaking.AddRequestLobbyListNearValueFilter( _ptr, pchKeyToMatch, nValueToBeCloseTo );
} }
// void // void
public void AddRequestLobbyListNumericalFilter( string pchKeyToMatch /*const char **/, int nValueToMatch /*int*/, LobbyComparison eComparisonType /*ELobbyComparison*/ ) public void AddRequestLobbyListNumericalFilter( string pchKeyToMatch /*const char **/, int nValueToMatch /*int*/, LobbyComparison eComparisonType /*ELobbyComparison*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamMatchmaking_AddRequestLobbyListNumericalFilter( pchKeyToMatch, nValueToMatch, eComparisonType );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamMatchmaking.AddRequestLobbyListNumericalFilter( _ptr, pchKeyToMatch, nValueToMatch, eComparisonType );
else Platform.Win64.ISteamMatchmaking.AddRequestLobbyListNumericalFilter( _ptr, pchKeyToMatch, nValueToMatch, eComparisonType );
} }
// void // void
public void AddRequestLobbyListResultCountFilter( int cMaxResults /*int*/ ) public void AddRequestLobbyListResultCountFilter( int cMaxResults /*int*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamMatchmaking_AddRequestLobbyListResultCountFilter( cMaxResults );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamMatchmaking.AddRequestLobbyListResultCountFilter( _ptr, cMaxResults );
else Platform.Win64.ISteamMatchmaking.AddRequestLobbyListResultCountFilter( _ptr, cMaxResults );
} }
// void // void
public void AddRequestLobbyListStringFilter( string pchKeyToMatch /*const char **/, string pchValueToMatch /*const char **/, LobbyComparison eComparisonType /*ELobbyComparison*/ ) public void AddRequestLobbyListStringFilter( string pchKeyToMatch /*const char **/, string pchValueToMatch /*const char **/, LobbyComparison eComparisonType /*ELobbyComparison*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamMatchmaking_AddRequestLobbyListStringFilter( pchKeyToMatch, pchValueToMatch, eComparisonType );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamMatchmaking.AddRequestLobbyListStringFilter( _ptr, pchKeyToMatch, pchValueToMatch, eComparisonType );
else Platform.Win64.ISteamMatchmaking.AddRequestLobbyListStringFilter( _ptr, pchKeyToMatch, pchValueToMatch, eComparisonType );
} }
// SteamAPICall_t // SteamAPICall_t
public SteamAPICall_t CreateLobby( LobbyType eLobbyType /*ELobbyType*/, int cMaxMembers /*int*/ ) public SteamAPICall_t CreateLobby( LobbyType eLobbyType /*ELobbyType*/, int cMaxMembers /*int*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamMatchmaking_CreateLobby( eLobbyType, cMaxMembers );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamMatchmaking.CreateLobby( _ptr, eLobbyType, cMaxMembers );
else return Platform.Win64.ISteamMatchmaking.CreateLobby( _ptr, eLobbyType, cMaxMembers );
} }
// bool // bool
public bool DeleteLobbyData( CSteamID steamIDLobby /*class CSteamID*/, string pchKey /*const char **/ ) public bool DeleteLobbyData( CSteamID steamIDLobby /*class CSteamID*/, string pchKey /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamMatchmaking_DeleteLobbyData( steamIDLobby, pchKey );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamMatchmaking.DeleteLobbyData( _ptr, steamIDLobby, pchKey );
else return Platform.Win64.ISteamMatchmaking.DeleteLobbyData( _ptr, steamIDLobby, pchKey );
} }
// bool // bool
public bool GetFavoriteGame( int iGame /*int*/, ref AppId_t pnAppID /*AppId_t **/, out uint pnIP /*uint32 **/, out ushort pnConnPort /*uint16 **/, out ushort pnQueryPort /*uint16 **/, IntPtr punFlags /*uint32 **/, out uint pRTime32LastPlayedOnServer /*uint32 **/ ) public bool GetFavoriteGame( int iGame /*int*/, ref AppId_t pnAppID /*AppId_t **/, out uint pnIP /*uint32 **/, out ushort pnConnPort /*uint16 **/, out ushort pnQueryPort /*uint16 **/, IntPtr punFlags /*uint32 **/, out uint pRTime32LastPlayedOnServer /*uint32 **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamMatchmaking_GetFavoriteGame( iGame, ref pnAppID, out pnIP, out pnConnPort, out pnQueryPort, (IntPtr) punFlags, out pRTime32LastPlayedOnServer );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamMatchmaking.GetFavoriteGame( _ptr, iGame, ref pnAppID, out pnIP, out pnConnPort, out pnQueryPort, (IntPtr) punFlags, out pRTime32LastPlayedOnServer );
else return Platform.Win64.ISteamMatchmaking.GetFavoriteGame( _ptr, iGame, ref pnAppID, out pnIP, out pnConnPort, out pnQueryPort, (IntPtr) punFlags, out pRTime32LastPlayedOnServer );
} }
// int // int
public int GetFavoriteGameCount() public int GetFavoriteGameCount()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamMatchmaking_GetFavoriteGameCount();
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamMatchmaking.GetFavoriteGameCount( _ptr );
else return Platform.Win64.ISteamMatchmaking.GetFavoriteGameCount( _ptr );
} }
// ulong // ulong
public ulong GetLobbyByIndex( int iLobby /*int*/ ) public ulong GetLobbyByIndex( int iLobby /*int*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamMatchmaking_GetLobbyByIndex( iLobby );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamMatchmaking.GetLobbyByIndex( _ptr, iLobby );
else return Platform.Win64.ISteamMatchmaking.GetLobbyByIndex( _ptr, iLobby );
} }
// int // int
public int GetLobbyChatEntry( CSteamID steamIDLobby /*class CSteamID*/, int iChatID /*int*/, out CSteamID pSteamIDUser /*class CSteamID **/, IntPtr pvData /*void **/, int cubData /*int*/, out ChatEntryType peChatEntryType /*EChatEntryType **/ ) public int GetLobbyChatEntry( CSteamID steamIDLobby /*class CSteamID*/, int iChatID /*int*/, out CSteamID pSteamIDUser /*class CSteamID **/, IntPtr pvData /*void **/, int cubData /*int*/, out ChatEntryType peChatEntryType /*EChatEntryType **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamMatchmaking_GetLobbyChatEntry( steamIDLobby, iChatID, out pSteamIDUser, (IntPtr) pvData, cubData, out peChatEntryType );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamMatchmaking.GetLobbyChatEntry( _ptr, steamIDLobby, iChatID, out pSteamIDUser, (IntPtr) pvData, cubData, out peChatEntryType );
else return Platform.Win64.ISteamMatchmaking.GetLobbyChatEntry( _ptr, steamIDLobby, iChatID, out pSteamIDUser, (IntPtr) pvData, cubData, out peChatEntryType );
} }
// string // string
// with: Detect_StringReturn // with: Detect_StringReturn
public string GetLobbyData( CSteamID steamIDLobby /*class CSteamID*/, string pchKey /*const char **/ ) public string GetLobbyData( CSteamID steamIDLobby /*class CSteamID*/, string pchKey /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); //
IntPtr string_pointer; IntPtr string_pointer;
if ( Platform.IsWindows32 ) string_pointer = Platform.Win32.ISteamMatchmaking.GetLobbyData( _ptr, steamIDLobby, pchKey ); string_pointer = _pi.ISteamMatchmaking_GetLobbyData( steamIDLobby, pchKey );
else string_pointer = Platform.Win64.ISteamMatchmaking.GetLobbyData( _ptr, steamIDLobby, pchKey );
return Marshal.PtrToStringAnsi( string_pointer ); return Marshal.PtrToStringAnsi( string_pointer );
} }
@ -156,8 +116,6 @@ namespace SteamNative
// with: Detect_StringFetch False // with: Detect_StringFetch False
public bool GetLobbyDataByIndex( CSteamID steamIDLobby /*class CSteamID*/, int iLobbyData /*int*/, out string pchKey /*char **/, out string pchValue /*char **/ ) public bool GetLobbyDataByIndex( CSteamID steamIDLobby /*class CSteamID*/, int iLobbyData /*int*/, out string pchKey /*char **/, out string pchValue /*char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); //
bool bSuccess = default( bool ); bool bSuccess = default( bool );
pchKey = string.Empty; pchKey = string.Empty;
System.Text.StringBuilder pchKey_sb = new System.Text.StringBuilder( 4096 ); System.Text.StringBuilder pchKey_sb = new System.Text.StringBuilder( 4096 );
@ -165,8 +123,7 @@ namespace SteamNative
pchValue = string.Empty; pchValue = string.Empty;
System.Text.StringBuilder pchValue_sb = new System.Text.StringBuilder( 4096 ); System.Text.StringBuilder pchValue_sb = new System.Text.StringBuilder( 4096 );
int cchValueBufferSize = 4096; int cchValueBufferSize = 4096;
if ( Platform.IsWindows32 ) bSuccess = Platform.Win32.ISteamMatchmaking.GetLobbyDataByIndex( _ptr, steamIDLobby, iLobbyData, pchKey_sb, cchKeyBufferSize, pchValue_sb, cchValueBufferSize ); bSuccess = _pi.ISteamMatchmaking_GetLobbyDataByIndex( steamIDLobby, iLobbyData, pchKey_sb, cchKeyBufferSize, pchValue_sb, cchValueBufferSize );
else bSuccess = Platform.Win64.ISteamMatchmaking.GetLobbyDataByIndex( _ptr, steamIDLobby, iLobbyData, pchKey_sb, cchKeyBufferSize, pchValue_sb, cchValueBufferSize );
if ( !bSuccess ) return bSuccess; if ( !bSuccess ) return bSuccess;
pchValue = pchValue_sb.ToString(); pchValue = pchValue_sb.ToString();
if ( !bSuccess ) return bSuccess; if ( !bSuccess ) return bSuccess;
@ -177,202 +134,136 @@ namespace SteamNative
// int // int
public int GetLobbyDataCount( CSteamID steamIDLobby /*class CSteamID*/ ) public int GetLobbyDataCount( CSteamID steamIDLobby /*class CSteamID*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamMatchmaking_GetLobbyDataCount( steamIDLobby );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamMatchmaking.GetLobbyDataCount( _ptr, steamIDLobby );
else return Platform.Win64.ISteamMatchmaking.GetLobbyDataCount( _ptr, steamIDLobby );
} }
// bool // bool
public bool GetLobbyGameServer( CSteamID steamIDLobby /*class CSteamID*/, out uint punGameServerIP /*uint32 **/, out ushort punGameServerPort /*uint16 **/, out CSteamID psteamIDGameServer /*class CSteamID **/ ) public bool GetLobbyGameServer( CSteamID steamIDLobby /*class CSteamID*/, out uint punGameServerIP /*uint32 **/, out ushort punGameServerPort /*uint16 **/, out CSteamID psteamIDGameServer /*class CSteamID **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamMatchmaking_GetLobbyGameServer( steamIDLobby, out punGameServerIP, out punGameServerPort, out psteamIDGameServer );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamMatchmaking.GetLobbyGameServer( _ptr, steamIDLobby, out punGameServerIP, out punGameServerPort, out psteamIDGameServer );
else return Platform.Win64.ISteamMatchmaking.GetLobbyGameServer( _ptr, steamIDLobby, out punGameServerIP, out punGameServerPort, out psteamIDGameServer );
} }
// ulong // ulong
public ulong GetLobbyMemberByIndex( CSteamID steamIDLobby /*class CSteamID*/, int iMember /*int*/ ) public ulong GetLobbyMemberByIndex( CSteamID steamIDLobby /*class CSteamID*/, int iMember /*int*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamMatchmaking_GetLobbyMemberByIndex( steamIDLobby, iMember );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamMatchmaking.GetLobbyMemberByIndex( _ptr, steamIDLobby, iMember );
else return Platform.Win64.ISteamMatchmaking.GetLobbyMemberByIndex( _ptr, steamIDLobby, iMember );
} }
// string // string
// with: Detect_StringReturn // with: Detect_StringReturn
public string GetLobbyMemberData( CSteamID steamIDLobby /*class CSteamID*/, CSteamID steamIDUser /*class CSteamID*/, string pchKey /*const char **/ ) public string GetLobbyMemberData( CSteamID steamIDLobby /*class CSteamID*/, CSteamID steamIDUser /*class CSteamID*/, string pchKey /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); //
IntPtr string_pointer; IntPtr string_pointer;
if ( Platform.IsWindows32 ) string_pointer = Platform.Win32.ISteamMatchmaking.GetLobbyMemberData( _ptr, steamIDLobby, steamIDUser, pchKey ); string_pointer = _pi.ISteamMatchmaking_GetLobbyMemberData( steamIDLobby, steamIDUser, pchKey );
else string_pointer = Platform.Win64.ISteamMatchmaking.GetLobbyMemberData( _ptr, steamIDLobby, steamIDUser, pchKey );
return Marshal.PtrToStringAnsi( string_pointer ); return Marshal.PtrToStringAnsi( string_pointer );
} }
// int // int
public int GetLobbyMemberLimit( CSteamID steamIDLobby /*class CSteamID*/ ) public int GetLobbyMemberLimit( CSteamID steamIDLobby /*class CSteamID*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamMatchmaking_GetLobbyMemberLimit( steamIDLobby );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamMatchmaking.GetLobbyMemberLimit( _ptr, steamIDLobby );
else return Platform.Win64.ISteamMatchmaking.GetLobbyMemberLimit( _ptr, steamIDLobby );
} }
// ulong // ulong
public ulong GetLobbyOwner( CSteamID steamIDLobby /*class CSteamID*/ ) public ulong GetLobbyOwner( CSteamID steamIDLobby /*class CSteamID*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamMatchmaking_GetLobbyOwner( steamIDLobby );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamMatchmaking.GetLobbyOwner( _ptr, steamIDLobby );
else return Platform.Win64.ISteamMatchmaking.GetLobbyOwner( _ptr, steamIDLobby );
} }
// int // int
public int GetNumLobbyMembers( CSteamID steamIDLobby /*class CSteamID*/ ) public int GetNumLobbyMembers( CSteamID steamIDLobby /*class CSteamID*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamMatchmaking_GetNumLobbyMembers( steamIDLobby );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamMatchmaking.GetNumLobbyMembers( _ptr, steamIDLobby );
else return Platform.Win64.ISteamMatchmaking.GetNumLobbyMembers( _ptr, steamIDLobby );
} }
// bool // bool
public bool InviteUserToLobby( CSteamID steamIDLobby /*class CSteamID*/, CSteamID steamIDInvitee /*class CSteamID*/ ) public bool InviteUserToLobby( CSteamID steamIDLobby /*class CSteamID*/, CSteamID steamIDInvitee /*class CSteamID*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamMatchmaking_InviteUserToLobby( steamIDLobby, steamIDInvitee );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamMatchmaking.InviteUserToLobby( _ptr, steamIDLobby, steamIDInvitee );
else return Platform.Win64.ISteamMatchmaking.InviteUserToLobby( _ptr, steamIDLobby, steamIDInvitee );
} }
// SteamAPICall_t // SteamAPICall_t
public SteamAPICall_t JoinLobby( CSteamID steamIDLobby /*class CSteamID*/ ) public SteamAPICall_t JoinLobby( CSteamID steamIDLobby /*class CSteamID*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamMatchmaking_JoinLobby( steamIDLobby );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamMatchmaking.JoinLobby( _ptr, steamIDLobby );
else return Platform.Win64.ISteamMatchmaking.JoinLobby( _ptr, steamIDLobby );
} }
// void // void
public void LeaveLobby( CSteamID steamIDLobby /*class CSteamID*/ ) public void LeaveLobby( CSteamID steamIDLobby /*class CSteamID*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamMatchmaking_LeaveLobby( steamIDLobby );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamMatchmaking.LeaveLobby( _ptr, steamIDLobby );
else Platform.Win64.ISteamMatchmaking.LeaveLobby( _ptr, steamIDLobby );
} }
// bool // bool
public bool RemoveFavoriteGame( AppId_t nAppID /*AppId_t*/, uint nIP /*uint32*/, ushort nConnPort /*uint16*/, ushort nQueryPort /*uint16*/, uint unFlags /*uint32*/ ) public bool RemoveFavoriteGame( AppId_t nAppID /*AppId_t*/, uint nIP /*uint32*/, ushort nConnPort /*uint16*/, ushort nQueryPort /*uint16*/, uint unFlags /*uint32*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamMatchmaking_RemoveFavoriteGame( nAppID, nIP, nConnPort, nQueryPort, unFlags );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamMatchmaking.RemoveFavoriteGame( _ptr, nAppID, nIP, nConnPort, nQueryPort, unFlags );
else return Platform.Win64.ISteamMatchmaking.RemoveFavoriteGame( _ptr, nAppID, nIP, nConnPort, nQueryPort, unFlags );
} }
// bool // bool
public bool RequestLobbyData( CSteamID steamIDLobby /*class CSteamID*/ ) public bool RequestLobbyData( CSteamID steamIDLobby /*class CSteamID*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamMatchmaking_RequestLobbyData( steamIDLobby );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamMatchmaking.RequestLobbyData( _ptr, steamIDLobby );
else return Platform.Win64.ISteamMatchmaking.RequestLobbyData( _ptr, steamIDLobby );
} }
// SteamAPICall_t // SteamAPICall_t
public SteamAPICall_t RequestLobbyList() public SteamAPICall_t RequestLobbyList()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamMatchmaking_RequestLobbyList();
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamMatchmaking.RequestLobbyList( _ptr );
else return Platform.Win64.ISteamMatchmaking.RequestLobbyList( _ptr );
} }
// bool // bool
public bool SendLobbyChatMsg( CSteamID steamIDLobby /*class CSteamID*/, IntPtr pvMsgBody /*const void **/, int cubMsgBody /*int*/ ) public bool SendLobbyChatMsg( CSteamID steamIDLobby /*class CSteamID*/, IntPtr pvMsgBody /*const void **/, int cubMsgBody /*int*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamMatchmaking_SendLobbyChatMsg( steamIDLobby, (IntPtr) pvMsgBody, cubMsgBody );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamMatchmaking.SendLobbyChatMsg( _ptr, steamIDLobby, (IntPtr) pvMsgBody, cubMsgBody );
else return Platform.Win64.ISteamMatchmaking.SendLobbyChatMsg( _ptr, steamIDLobby, (IntPtr) pvMsgBody, cubMsgBody );
} }
// bool // bool
public bool SetLinkedLobby( CSteamID steamIDLobby /*class CSteamID*/, CSteamID steamIDLobbyDependent /*class CSteamID*/ ) public bool SetLinkedLobby( CSteamID steamIDLobby /*class CSteamID*/, CSteamID steamIDLobbyDependent /*class CSteamID*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamMatchmaking_SetLinkedLobby( steamIDLobby, steamIDLobbyDependent );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamMatchmaking.SetLinkedLobby( _ptr, steamIDLobby, steamIDLobbyDependent );
else return Platform.Win64.ISteamMatchmaking.SetLinkedLobby( _ptr, steamIDLobby, steamIDLobbyDependent );
} }
// bool // bool
public bool SetLobbyData( CSteamID steamIDLobby /*class CSteamID*/, string pchKey /*const char **/, string pchValue /*const char **/ ) public bool SetLobbyData( CSteamID steamIDLobby /*class CSteamID*/, string pchKey /*const char **/, string pchValue /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamMatchmaking_SetLobbyData( steamIDLobby, pchKey, pchValue );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamMatchmaking.SetLobbyData( _ptr, steamIDLobby, pchKey, pchValue );
else return Platform.Win64.ISteamMatchmaking.SetLobbyData( _ptr, steamIDLobby, pchKey, pchValue );
} }
// void // void
public void SetLobbyGameServer( CSteamID steamIDLobby /*class CSteamID*/, uint unGameServerIP /*uint32*/, ushort unGameServerPort /*uint16*/, CSteamID steamIDGameServer /*class CSteamID*/ ) public void SetLobbyGameServer( CSteamID steamIDLobby /*class CSteamID*/, uint unGameServerIP /*uint32*/, ushort unGameServerPort /*uint16*/, CSteamID steamIDGameServer /*class CSteamID*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamMatchmaking_SetLobbyGameServer( steamIDLobby, unGameServerIP, unGameServerPort, steamIDGameServer );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamMatchmaking.SetLobbyGameServer( _ptr, steamIDLobby, unGameServerIP, unGameServerPort, steamIDGameServer );
else Platform.Win64.ISteamMatchmaking.SetLobbyGameServer( _ptr, steamIDLobby, unGameServerIP, unGameServerPort, steamIDGameServer );
} }
// bool // bool
public bool SetLobbyJoinable( CSteamID steamIDLobby /*class CSteamID*/, bool bLobbyJoinable /*bool*/ ) public bool SetLobbyJoinable( CSteamID steamIDLobby /*class CSteamID*/, bool bLobbyJoinable /*bool*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamMatchmaking_SetLobbyJoinable( steamIDLobby, bLobbyJoinable );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamMatchmaking.SetLobbyJoinable( _ptr, steamIDLobby, bLobbyJoinable );
else return Platform.Win64.ISteamMatchmaking.SetLobbyJoinable( _ptr, steamIDLobby, bLobbyJoinable );
} }
// void // void
public void SetLobbyMemberData( CSteamID steamIDLobby /*class CSteamID*/, string pchKey /*const char **/, string pchValue /*const char **/ ) public void SetLobbyMemberData( CSteamID steamIDLobby /*class CSteamID*/, string pchKey /*const char **/, string pchValue /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamMatchmaking_SetLobbyMemberData( steamIDLobby, pchKey, pchValue );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamMatchmaking.SetLobbyMemberData( _ptr, steamIDLobby, pchKey, pchValue );
else Platform.Win64.ISteamMatchmaking.SetLobbyMemberData( _ptr, steamIDLobby, pchKey, pchValue );
} }
// bool // bool
public bool SetLobbyMemberLimit( CSteamID steamIDLobby /*class CSteamID*/, int cMaxMembers /*int*/ ) public bool SetLobbyMemberLimit( CSteamID steamIDLobby /*class CSteamID*/, int cMaxMembers /*int*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamMatchmaking_SetLobbyMemberLimit( steamIDLobby, cMaxMembers );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamMatchmaking.SetLobbyMemberLimit( _ptr, steamIDLobby, cMaxMembers );
else return Platform.Win64.ISteamMatchmaking.SetLobbyMemberLimit( _ptr, steamIDLobby, cMaxMembers );
} }
// bool // bool
public bool SetLobbyOwner( CSteamID steamIDLobby /*class CSteamID*/, CSteamID steamIDNewOwner /*class CSteamID*/ ) public bool SetLobbyOwner( CSteamID steamIDLobby /*class CSteamID*/, CSteamID steamIDNewOwner /*class CSteamID*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamMatchmaking_SetLobbyOwner( steamIDLobby, steamIDNewOwner );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamMatchmaking.SetLobbyOwner( _ptr, steamIDLobby, steamIDNewOwner );
else return Platform.Win64.ISteamMatchmaking.SetLobbyOwner( _ptr, steamIDLobby, steamIDNewOwner );
} }
// bool // bool
public bool SetLobbyType( CSteamID steamIDLobby /*class CSteamID*/, LobbyType eLobbyType /*ELobbyType*/ ) public bool SetLobbyType( CSteamID steamIDLobby /*class CSteamID*/, LobbyType eLobbyType /*ELobbyType*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamMatchmaking_SetLobbyType( steamIDLobby, eLobbyType );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamMatchmaking.SetLobbyType( _ptr, steamIDLobby, eLobbyType );
else return Platform.Win64.ISteamMatchmaking.SetLobbyType( _ptr, steamIDLobby, eLobbyType );
} }
} }

View File

@ -5,50 +5,43 @@ namespace SteamNative
{ {
public unsafe class SteamMatchmakingServers public unsafe class SteamMatchmakingServers
{ {
internal IntPtr _ptr; internal Platform.Interface _pi;
public SteamMatchmakingServers( IntPtr pointer ) public SteamMatchmakingServers( IntPtr pointer )
{ {
_ptr = pointer; if ( Platform.IsWindows64 ) _pi = new Platform.Win64( pointer );
else if ( Platform.IsWindows32 ) _pi = new Platform.Win32( pointer );
else if ( Platform.IsLinux32 ) _pi = new Platform.Linux32( pointer );
else if ( Platform.IsLinux64 ) _pi = new Platform.Linux64( pointer );
else if ( Platform.IsOsx ) _pi = new Platform.Mac( pointer );
} }
public bool IsValid{ get{ return _pi != null && _pi.IsValid; } }
// void // void
public void CancelQuery( HServerListRequest hRequest /*HServerListRequest*/ ) public void CancelQuery( HServerListRequest hRequest /*HServerListRequest*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamMatchmakingServers_CancelQuery( hRequest );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamMatchmakingServers.CancelQuery( _ptr, hRequest );
else Platform.Win64.ISteamMatchmakingServers.CancelQuery( _ptr, hRequest );
} }
// void // void
public void CancelServerQuery( HServerQuery hServerQuery /*HServerQuery*/ ) public void CancelServerQuery( HServerQuery hServerQuery /*HServerQuery*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamMatchmakingServers_CancelServerQuery( hServerQuery );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamMatchmakingServers.CancelServerQuery( _ptr, hServerQuery );
else Platform.Win64.ISteamMatchmakingServers.CancelServerQuery( _ptr, hServerQuery );
} }
// int // int
public int GetServerCount( HServerListRequest hRequest /*HServerListRequest*/ ) public int GetServerCount( HServerListRequest hRequest /*HServerListRequest*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamMatchmakingServers_GetServerCount( hRequest );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamMatchmakingServers.GetServerCount( _ptr, hRequest );
else return Platform.Win64.ISteamMatchmakingServers.GetServerCount( _ptr, hRequest );
} }
// gameserveritem_t * // gameserveritem_t *
// with: Detect_ReturningStruct // with: Detect_ReturningStruct
public gameserveritem_t GetServerDetails( HServerListRequest hRequest /*HServerListRequest*/, int iServer /*int*/ ) public gameserveritem_t GetServerDetails( HServerListRequest hRequest /*HServerListRequest*/, int iServer /*int*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); //
IntPtr struct_pointer; IntPtr struct_pointer;
if ( Platform.IsWindows32 ) struct_pointer = Platform.Win32.ISteamMatchmakingServers.GetServerDetails( _ptr, hRequest, iServer ); struct_pointer = _pi.ISteamMatchmakingServers_GetServerDetails( hRequest, iServer );
else struct_pointer = Platform.Win64.ISteamMatchmakingServers.GetServerDetails( _ptr, hRequest, iServer );
if ( struct_pointer == IntPtr.Zero ) return default(gameserveritem_t); if ( struct_pointer == IntPtr.Zero ) return default(gameserveritem_t);
return gameserveritem_t.FromPointer( struct_pointer ); return gameserveritem_t.FromPointer( struct_pointer );
} }
@ -56,123 +49,84 @@ namespace SteamNative
// bool // bool
public bool IsRefreshing( HServerListRequest hRequest /*HServerListRequest*/ ) public bool IsRefreshing( HServerListRequest hRequest /*HServerListRequest*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamMatchmakingServers_IsRefreshing( hRequest );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamMatchmakingServers.IsRefreshing( _ptr, hRequest );
else return Platform.Win64.ISteamMatchmakingServers.IsRefreshing( _ptr, hRequest );
} }
// HServerQuery // HServerQuery
public HServerQuery PingServer( uint unIP /*uint32*/, ushort usPort /*uint16*/, IntPtr pRequestServersResponse /*class ISteamMatchmakingPingResponse **/ ) public HServerQuery PingServer( uint unIP /*uint32*/, ushort usPort /*uint16*/, IntPtr pRequestServersResponse /*class ISteamMatchmakingPingResponse **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamMatchmakingServers_PingServer( unIP, usPort, (IntPtr) pRequestServersResponse );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamMatchmakingServers.PingServer( _ptr, unIP, usPort, (IntPtr) pRequestServersResponse );
else return Platform.Win64.ISteamMatchmakingServers.PingServer( _ptr, unIP, usPort, (IntPtr) pRequestServersResponse );
} }
// HServerQuery // HServerQuery
public HServerQuery PlayerDetails( uint unIP /*uint32*/, ushort usPort /*uint16*/, IntPtr pRequestServersResponse /*class ISteamMatchmakingPlayersResponse **/ ) public HServerQuery PlayerDetails( uint unIP /*uint32*/, ushort usPort /*uint16*/, IntPtr pRequestServersResponse /*class ISteamMatchmakingPlayersResponse **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamMatchmakingServers_PlayerDetails( unIP, usPort, (IntPtr) pRequestServersResponse );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamMatchmakingServers.PlayerDetails( _ptr, unIP, usPort, (IntPtr) pRequestServersResponse );
else return Platform.Win64.ISteamMatchmakingServers.PlayerDetails( _ptr, unIP, usPort, (IntPtr) pRequestServersResponse );
} }
// void // void
public void RefreshQuery( HServerListRequest hRequest /*HServerListRequest*/ ) public void RefreshQuery( HServerListRequest hRequest /*HServerListRequest*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamMatchmakingServers_RefreshQuery( hRequest );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamMatchmakingServers.RefreshQuery( _ptr, hRequest );
else Platform.Win64.ISteamMatchmakingServers.RefreshQuery( _ptr, hRequest );
} }
// void // void
public void RefreshServer( HServerListRequest hRequest /*HServerListRequest*/, int iServer /*int*/ ) public void RefreshServer( HServerListRequest hRequest /*HServerListRequest*/, int iServer /*int*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamMatchmakingServers_RefreshServer( hRequest, iServer );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamMatchmakingServers.RefreshServer( _ptr, hRequest, iServer );
else Platform.Win64.ISteamMatchmakingServers.RefreshServer( _ptr, hRequest, iServer );
} }
// void // void
public void ReleaseRequest( HServerListRequest hServerListRequest /*HServerListRequest*/ ) public void ReleaseRequest( HServerListRequest hServerListRequest /*HServerListRequest*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamMatchmakingServers_ReleaseRequest( hServerListRequest );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamMatchmakingServers.ReleaseRequest( _ptr, hServerListRequest );
else Platform.Win64.ISteamMatchmakingServers.ReleaseRequest( _ptr, hServerListRequest );
} }
// HServerListRequest // HServerListRequest
// with: Detect_MatchmakingFilters // with: Detect_MatchmakingFilters
public HServerListRequest RequestFavoritesServerList( AppId_t iApp /*AppId_t*/, IntPtr ppchFilters /*struct MatchMakingKeyValuePair_t ***/, uint nFilters /*uint32*/, IntPtr pRequestServersResponse /*class ISteamMatchmakingServerListResponse **/ ) public HServerListRequest RequestFavoritesServerList( AppId_t iApp /*AppId_t*/, IntPtr ppchFilters /*struct MatchMakingKeyValuePair_t ***/, uint nFilters /*uint32*/, IntPtr pRequestServersResponse /*class ISteamMatchmakingServerListResponse **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamMatchmakingServers_RequestFavoritesServerList( iApp, (IntPtr) ppchFilters, nFilters, (IntPtr) pRequestServersResponse );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamMatchmakingServers.RequestFavoritesServerList( _ptr, iApp, (IntPtr) ppchFilters, nFilters, (IntPtr) pRequestServersResponse );
else return Platform.Win64.ISteamMatchmakingServers.RequestFavoritesServerList( _ptr, iApp, (IntPtr) ppchFilters, nFilters, (IntPtr) pRequestServersResponse );
} }
// HServerListRequest // HServerListRequest
// with: Detect_MatchmakingFilters // with: Detect_MatchmakingFilters
public HServerListRequest RequestFriendsServerList( AppId_t iApp /*AppId_t*/, IntPtr ppchFilters /*struct MatchMakingKeyValuePair_t ***/, uint nFilters /*uint32*/, IntPtr pRequestServersResponse /*class ISteamMatchmakingServerListResponse **/ ) public HServerListRequest RequestFriendsServerList( AppId_t iApp /*AppId_t*/, IntPtr ppchFilters /*struct MatchMakingKeyValuePair_t ***/, uint nFilters /*uint32*/, IntPtr pRequestServersResponse /*class ISteamMatchmakingServerListResponse **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamMatchmakingServers_RequestFriendsServerList( iApp, (IntPtr) ppchFilters, nFilters, (IntPtr) pRequestServersResponse );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamMatchmakingServers.RequestFriendsServerList( _ptr, iApp, (IntPtr) ppchFilters, nFilters, (IntPtr) pRequestServersResponse );
else return Platform.Win64.ISteamMatchmakingServers.RequestFriendsServerList( _ptr, iApp, (IntPtr) ppchFilters, nFilters, (IntPtr) pRequestServersResponse );
} }
// HServerListRequest // HServerListRequest
// with: Detect_MatchmakingFilters // with: Detect_MatchmakingFilters
public HServerListRequest RequestHistoryServerList( AppId_t iApp /*AppId_t*/, IntPtr ppchFilters /*struct MatchMakingKeyValuePair_t ***/, uint nFilters /*uint32*/, IntPtr pRequestServersResponse /*class ISteamMatchmakingServerListResponse **/ ) public HServerListRequest RequestHistoryServerList( AppId_t iApp /*AppId_t*/, IntPtr ppchFilters /*struct MatchMakingKeyValuePair_t ***/, uint nFilters /*uint32*/, IntPtr pRequestServersResponse /*class ISteamMatchmakingServerListResponse **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamMatchmakingServers_RequestHistoryServerList( iApp, (IntPtr) ppchFilters, nFilters, (IntPtr) pRequestServersResponse );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamMatchmakingServers.RequestHistoryServerList( _ptr, iApp, (IntPtr) ppchFilters, nFilters, (IntPtr) pRequestServersResponse );
else return Platform.Win64.ISteamMatchmakingServers.RequestHistoryServerList( _ptr, iApp, (IntPtr) ppchFilters, nFilters, (IntPtr) pRequestServersResponse );
} }
// HServerListRequest // HServerListRequest
// with: Detect_MatchmakingFilters // with: Detect_MatchmakingFilters
public HServerListRequest RequestInternetServerList( AppId_t iApp /*AppId_t*/, IntPtr ppchFilters /*struct MatchMakingKeyValuePair_t ***/, uint nFilters /*uint32*/, IntPtr pRequestServersResponse /*class ISteamMatchmakingServerListResponse **/ ) public HServerListRequest RequestInternetServerList( AppId_t iApp /*AppId_t*/, IntPtr ppchFilters /*struct MatchMakingKeyValuePair_t ***/, uint nFilters /*uint32*/, IntPtr pRequestServersResponse /*class ISteamMatchmakingServerListResponse **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamMatchmakingServers_RequestInternetServerList( iApp, (IntPtr) ppchFilters, nFilters, (IntPtr) pRequestServersResponse );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamMatchmakingServers.RequestInternetServerList( _ptr, iApp, (IntPtr) ppchFilters, nFilters, (IntPtr) pRequestServersResponse );
else return Platform.Win64.ISteamMatchmakingServers.RequestInternetServerList( _ptr, iApp, (IntPtr) ppchFilters, nFilters, (IntPtr) pRequestServersResponse );
} }
// HServerListRequest // HServerListRequest
public HServerListRequest RequestLANServerList( AppId_t iApp /*AppId_t*/, IntPtr pRequestServersResponse /*class ISteamMatchmakingServerListResponse **/ ) public HServerListRequest RequestLANServerList( AppId_t iApp /*AppId_t*/, IntPtr pRequestServersResponse /*class ISteamMatchmakingServerListResponse **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamMatchmakingServers_RequestLANServerList( iApp, (IntPtr) pRequestServersResponse );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamMatchmakingServers.RequestLANServerList( _ptr, iApp, (IntPtr) pRequestServersResponse );
else return Platform.Win64.ISteamMatchmakingServers.RequestLANServerList( _ptr, iApp, (IntPtr) pRequestServersResponse );
} }
// HServerListRequest // HServerListRequest
// with: Detect_MatchmakingFilters // with: Detect_MatchmakingFilters
public HServerListRequest RequestSpectatorServerList( AppId_t iApp /*AppId_t*/, IntPtr ppchFilters /*struct MatchMakingKeyValuePair_t ***/, uint nFilters /*uint32*/, IntPtr pRequestServersResponse /*class ISteamMatchmakingServerListResponse **/ ) public HServerListRequest RequestSpectatorServerList( AppId_t iApp /*AppId_t*/, IntPtr ppchFilters /*struct MatchMakingKeyValuePair_t ***/, uint nFilters /*uint32*/, IntPtr pRequestServersResponse /*class ISteamMatchmakingServerListResponse **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamMatchmakingServers_RequestSpectatorServerList( iApp, (IntPtr) ppchFilters, nFilters, (IntPtr) pRequestServersResponse );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamMatchmakingServers.RequestSpectatorServerList( _ptr, iApp, (IntPtr) ppchFilters, nFilters, (IntPtr) pRequestServersResponse );
else return Platform.Win64.ISteamMatchmakingServers.RequestSpectatorServerList( _ptr, iApp, (IntPtr) ppchFilters, nFilters, (IntPtr) pRequestServersResponse );
} }
// HServerQuery // HServerQuery
public HServerQuery ServerRules( uint unIP /*uint32*/, ushort usPort /*uint16*/, IntPtr pRequestServersResponse /*class ISteamMatchmakingRulesResponse **/ ) public HServerQuery ServerRules( uint unIP /*uint32*/, ushort usPort /*uint16*/, IntPtr pRequestServersResponse /*class ISteamMatchmakingRulesResponse **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamMatchmakingServers_ServerRules( unIP, usPort, (IntPtr) pRequestServersResponse );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamMatchmakingServers.ServerRules( _ptr, unIP, usPort, (IntPtr) pRequestServersResponse );
else return Platform.Win64.ISteamMatchmakingServers.ServerRules( _ptr, unIP, usPort, (IntPtr) pRequestServersResponse );
} }
} }

View File

@ -5,93 +5,71 @@ namespace SteamNative
{ {
public unsafe class SteamMusic public unsafe class SteamMusic
{ {
internal IntPtr _ptr; internal Platform.Interface _pi;
public SteamMusic( IntPtr pointer ) public SteamMusic( IntPtr pointer )
{ {
_ptr = pointer; if ( Platform.IsWindows64 ) _pi = new Platform.Win64( pointer );
else if ( Platform.IsWindows32 ) _pi = new Platform.Win32( pointer );
else if ( Platform.IsLinux32 ) _pi = new Platform.Linux32( pointer );
else if ( Platform.IsLinux64 ) _pi = new Platform.Linux64( pointer );
else if ( Platform.IsOsx ) _pi = new Platform.Mac( pointer );
} }
public bool IsValid{ get{ return _pi != null && _pi.IsValid; } }
// bool // bool
public bool BIsEnabled() public bool BIsEnabled()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamMusic_BIsEnabled();
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamMusic.BIsEnabled( _ptr );
else return Platform.Win64.ISteamMusic.BIsEnabled( _ptr );
} }
// bool // bool
public bool BIsPlaying() public bool BIsPlaying()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamMusic_BIsPlaying();
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamMusic.BIsPlaying( _ptr );
else return Platform.Win64.ISteamMusic.BIsPlaying( _ptr );
} }
// AudioPlayback_Status // AudioPlayback_Status
public AudioPlayback_Status GetPlaybackStatus() public AudioPlayback_Status GetPlaybackStatus()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamMusic_GetPlaybackStatus();
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamMusic.GetPlaybackStatus( _ptr );
else return Platform.Win64.ISteamMusic.GetPlaybackStatus( _ptr );
} }
// float // float
public float GetVolume() public float GetVolume()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamMusic_GetVolume();
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamMusic.GetVolume( _ptr );
else return Platform.Win64.ISteamMusic.GetVolume( _ptr );
} }
// void // void
public void Pause() public void Pause()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamMusic_Pause();
if ( Platform.IsWindows32 ) Platform.Win32.ISteamMusic.Pause( _ptr );
else Platform.Win64.ISteamMusic.Pause( _ptr );
} }
// void // void
public void Play() public void Play()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamMusic_Play();
if ( Platform.IsWindows32 ) Platform.Win32.ISteamMusic.Play( _ptr );
else Platform.Win64.ISteamMusic.Play( _ptr );
} }
// void // void
public void PlayNext() public void PlayNext()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamMusic_PlayNext();
if ( Platform.IsWindows32 ) Platform.Win32.ISteamMusic.PlayNext( _ptr );
else Platform.Win64.ISteamMusic.PlayNext( _ptr );
} }
// void // void
public void PlayPrevious() public void PlayPrevious()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamMusic_PlayPrevious();
if ( Platform.IsWindows32 ) Platform.Win32.ISteamMusic.PlayPrevious( _ptr );
else Platform.Win64.ISteamMusic.PlayPrevious( _ptr );
} }
// void // void
public void SetVolume( float flVolume /*float*/ ) public void SetVolume( float flVolume /*float*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamMusic_SetVolume( flVolume );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamMusic.SetVolume( _ptr, flVolume );
else Platform.Win64.ISteamMusic.SetVolume( _ptr, flVolume );
} }
} }

View File

@ -5,300 +5,209 @@ namespace SteamNative
{ {
public unsafe class SteamMusicRemote public unsafe class SteamMusicRemote
{ {
internal IntPtr _ptr; internal Platform.Interface _pi;
public SteamMusicRemote( IntPtr pointer ) public SteamMusicRemote( IntPtr pointer )
{ {
_ptr = pointer; if ( Platform.IsWindows64 ) _pi = new Platform.Win64( pointer );
else if ( Platform.IsWindows32 ) _pi = new Platform.Win32( pointer );
else if ( Platform.IsLinux32 ) _pi = new Platform.Linux32( pointer );
else if ( Platform.IsLinux64 ) _pi = new Platform.Linux64( pointer );
else if ( Platform.IsOsx ) _pi = new Platform.Mac( pointer );
} }
public bool IsValid{ get{ return _pi != null && _pi.IsValid; } }
// bool // bool
public bool BActivationSuccess( bool bValue /*bool*/ ) public bool BActivationSuccess( bool bValue /*bool*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamMusicRemote_BActivationSuccess( bValue );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamMusicRemote.BActivationSuccess( _ptr, bValue );
else return Platform.Win64.ISteamMusicRemote.BActivationSuccess( _ptr, bValue );
} }
// bool // bool
public bool BIsCurrentMusicRemote() public bool BIsCurrentMusicRemote()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamMusicRemote_BIsCurrentMusicRemote();
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamMusicRemote.BIsCurrentMusicRemote( _ptr );
else return Platform.Win64.ISteamMusicRemote.BIsCurrentMusicRemote( _ptr );
} }
// bool // bool
public bool CurrentEntryDidChange() public bool CurrentEntryDidChange()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamMusicRemote_CurrentEntryDidChange();
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamMusicRemote.CurrentEntryDidChange( _ptr );
else return Platform.Win64.ISteamMusicRemote.CurrentEntryDidChange( _ptr );
} }
// bool // bool
public bool CurrentEntryIsAvailable( bool bAvailable /*bool*/ ) public bool CurrentEntryIsAvailable( bool bAvailable /*bool*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamMusicRemote_CurrentEntryIsAvailable( bAvailable );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamMusicRemote.CurrentEntryIsAvailable( _ptr, bAvailable );
else return Platform.Win64.ISteamMusicRemote.CurrentEntryIsAvailable( _ptr, bAvailable );
} }
// bool // bool
public bool CurrentEntryWillChange() public bool CurrentEntryWillChange()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamMusicRemote_CurrentEntryWillChange();
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamMusicRemote.CurrentEntryWillChange( _ptr );
else return Platform.Win64.ISteamMusicRemote.CurrentEntryWillChange( _ptr );
} }
// bool // bool
public bool DeregisterSteamMusicRemote() public bool DeregisterSteamMusicRemote()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamMusicRemote_DeregisterSteamMusicRemote();
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamMusicRemote.DeregisterSteamMusicRemote( _ptr );
else return Platform.Win64.ISteamMusicRemote.DeregisterSteamMusicRemote( _ptr );
} }
// bool // bool
public bool EnableLooped( bool bValue /*bool*/ ) public bool EnableLooped( bool bValue /*bool*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamMusicRemote_EnableLooped( bValue );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamMusicRemote.EnableLooped( _ptr, bValue );
else return Platform.Win64.ISteamMusicRemote.EnableLooped( _ptr, bValue );
} }
// bool // bool
public bool EnablePlaylists( bool bValue /*bool*/ ) public bool EnablePlaylists( bool bValue /*bool*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamMusicRemote_EnablePlaylists( bValue );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamMusicRemote.EnablePlaylists( _ptr, bValue );
else return Platform.Win64.ISteamMusicRemote.EnablePlaylists( _ptr, bValue );
} }
// bool // bool
public bool EnablePlayNext( bool bValue /*bool*/ ) public bool EnablePlayNext( bool bValue /*bool*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamMusicRemote_EnablePlayNext( bValue );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamMusicRemote.EnablePlayNext( _ptr, bValue );
else return Platform.Win64.ISteamMusicRemote.EnablePlayNext( _ptr, bValue );
} }
// bool // bool
public bool EnablePlayPrevious( bool bValue /*bool*/ ) public bool EnablePlayPrevious( bool bValue /*bool*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamMusicRemote_EnablePlayPrevious( bValue );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamMusicRemote.EnablePlayPrevious( _ptr, bValue );
else return Platform.Win64.ISteamMusicRemote.EnablePlayPrevious( _ptr, bValue );
} }
// bool // bool
public bool EnableQueue( bool bValue /*bool*/ ) public bool EnableQueue( bool bValue /*bool*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamMusicRemote_EnableQueue( bValue );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamMusicRemote.EnableQueue( _ptr, bValue );
else return Platform.Win64.ISteamMusicRemote.EnableQueue( _ptr, bValue );
} }
// bool // bool
public bool EnableShuffled( bool bValue /*bool*/ ) public bool EnableShuffled( bool bValue /*bool*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamMusicRemote_EnableShuffled( bValue );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamMusicRemote.EnableShuffled( _ptr, bValue );
else return Platform.Win64.ISteamMusicRemote.EnableShuffled( _ptr, bValue );
} }
// bool // bool
public bool PlaylistDidChange() public bool PlaylistDidChange()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamMusicRemote_PlaylistDidChange();
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamMusicRemote.PlaylistDidChange( _ptr );
else return Platform.Win64.ISteamMusicRemote.PlaylistDidChange( _ptr );
} }
// bool // bool
public bool PlaylistWillChange() public bool PlaylistWillChange()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamMusicRemote_PlaylistWillChange();
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamMusicRemote.PlaylistWillChange( _ptr );
else return Platform.Win64.ISteamMusicRemote.PlaylistWillChange( _ptr );
} }
// bool // bool
public bool QueueDidChange() public bool QueueDidChange()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamMusicRemote_QueueDidChange();
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamMusicRemote.QueueDidChange( _ptr );
else return Platform.Win64.ISteamMusicRemote.QueueDidChange( _ptr );
} }
// bool // bool
public bool QueueWillChange() public bool QueueWillChange()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamMusicRemote_QueueWillChange();
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamMusicRemote.QueueWillChange( _ptr );
else return Platform.Win64.ISteamMusicRemote.QueueWillChange( _ptr );
} }
// bool // bool
public bool RegisterSteamMusicRemote( string pchName /*const char **/ ) public bool RegisterSteamMusicRemote( string pchName /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamMusicRemote_RegisterSteamMusicRemote( pchName );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamMusicRemote.RegisterSteamMusicRemote( _ptr, pchName );
else return Platform.Win64.ISteamMusicRemote.RegisterSteamMusicRemote( _ptr, pchName );
} }
// bool // bool
public bool ResetPlaylistEntries() public bool ResetPlaylistEntries()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamMusicRemote_ResetPlaylistEntries();
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamMusicRemote.ResetPlaylistEntries( _ptr );
else return Platform.Win64.ISteamMusicRemote.ResetPlaylistEntries( _ptr );
} }
// bool // bool
public bool ResetQueueEntries() public bool ResetQueueEntries()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamMusicRemote_ResetQueueEntries();
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamMusicRemote.ResetQueueEntries( _ptr );
else return Platform.Win64.ISteamMusicRemote.ResetQueueEntries( _ptr );
} }
// bool // bool
public bool SetCurrentPlaylistEntry( int nID /*int*/ ) public bool SetCurrentPlaylistEntry( int nID /*int*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamMusicRemote_SetCurrentPlaylistEntry( nID );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamMusicRemote.SetCurrentPlaylistEntry( _ptr, nID );
else return Platform.Win64.ISteamMusicRemote.SetCurrentPlaylistEntry( _ptr, nID );
} }
// bool // bool
public bool SetCurrentQueueEntry( int nID /*int*/ ) public bool SetCurrentQueueEntry( int nID /*int*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamMusicRemote_SetCurrentQueueEntry( nID );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamMusicRemote.SetCurrentQueueEntry( _ptr, nID );
else return Platform.Win64.ISteamMusicRemote.SetCurrentQueueEntry( _ptr, nID );
} }
// bool // bool
public bool SetDisplayName( string pchDisplayName /*const char **/ ) public bool SetDisplayName( string pchDisplayName /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamMusicRemote_SetDisplayName( pchDisplayName );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamMusicRemote.SetDisplayName( _ptr, pchDisplayName );
else return Platform.Win64.ISteamMusicRemote.SetDisplayName( _ptr, pchDisplayName );
} }
// bool // bool
public bool SetPlaylistEntry( int nID /*int*/, int nPosition /*int*/, string pchEntryText /*const char **/ ) public bool SetPlaylistEntry( int nID /*int*/, int nPosition /*int*/, string pchEntryText /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamMusicRemote_SetPlaylistEntry( nID, nPosition, pchEntryText );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamMusicRemote.SetPlaylistEntry( _ptr, nID, nPosition, pchEntryText );
else return Platform.Win64.ISteamMusicRemote.SetPlaylistEntry( _ptr, nID, nPosition, pchEntryText );
} }
// bool // bool
public bool SetPNGIcon_64x64( IntPtr pvBuffer /*void **/, uint cbBufferLength /*uint32*/ ) public bool SetPNGIcon_64x64( IntPtr pvBuffer /*void **/, uint cbBufferLength /*uint32*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamMusicRemote_SetPNGIcon_64x64( (IntPtr) pvBuffer, cbBufferLength );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamMusicRemote.SetPNGIcon_64x64( _ptr, (IntPtr) pvBuffer, cbBufferLength );
else return Platform.Win64.ISteamMusicRemote.SetPNGIcon_64x64( _ptr, (IntPtr) pvBuffer, cbBufferLength );
} }
// bool // bool
public bool SetQueueEntry( int nID /*int*/, int nPosition /*int*/, string pchEntryText /*const char **/ ) public bool SetQueueEntry( int nID /*int*/, int nPosition /*int*/, string pchEntryText /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamMusicRemote_SetQueueEntry( nID, nPosition, pchEntryText );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamMusicRemote.SetQueueEntry( _ptr, nID, nPosition, pchEntryText );
else return Platform.Win64.ISteamMusicRemote.SetQueueEntry( _ptr, nID, nPosition, pchEntryText );
} }
// bool // bool
public bool UpdateCurrentEntryCoverArt( IntPtr pvBuffer /*void **/, uint cbBufferLength /*uint32*/ ) public bool UpdateCurrentEntryCoverArt( IntPtr pvBuffer /*void **/, uint cbBufferLength /*uint32*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamMusicRemote_UpdateCurrentEntryCoverArt( (IntPtr) pvBuffer, cbBufferLength );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamMusicRemote.UpdateCurrentEntryCoverArt( _ptr, (IntPtr) pvBuffer, cbBufferLength );
else return Platform.Win64.ISteamMusicRemote.UpdateCurrentEntryCoverArt( _ptr, (IntPtr) pvBuffer, cbBufferLength );
} }
// bool // bool
public bool UpdateCurrentEntryElapsedSeconds( int nValue /*int*/ ) public bool UpdateCurrentEntryElapsedSeconds( int nValue /*int*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamMusicRemote_UpdateCurrentEntryElapsedSeconds( nValue );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamMusicRemote.UpdateCurrentEntryElapsedSeconds( _ptr, nValue );
else return Platform.Win64.ISteamMusicRemote.UpdateCurrentEntryElapsedSeconds( _ptr, nValue );
} }
// bool // bool
public bool UpdateCurrentEntryText( string pchText /*const char **/ ) public bool UpdateCurrentEntryText( string pchText /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamMusicRemote_UpdateCurrentEntryText( pchText );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamMusicRemote.UpdateCurrentEntryText( _ptr, pchText );
else return Platform.Win64.ISteamMusicRemote.UpdateCurrentEntryText( _ptr, pchText );
} }
// bool // bool
public bool UpdateLooped( bool bValue /*bool*/ ) public bool UpdateLooped( bool bValue /*bool*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamMusicRemote_UpdateLooped( bValue );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamMusicRemote.UpdateLooped( _ptr, bValue );
else return Platform.Win64.ISteamMusicRemote.UpdateLooped( _ptr, bValue );
} }
// bool // bool
public bool UpdatePlaybackStatus( AudioPlayback_Status nStatus /*AudioPlayback_Status*/ ) public bool UpdatePlaybackStatus( AudioPlayback_Status nStatus /*AudioPlayback_Status*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamMusicRemote_UpdatePlaybackStatus( nStatus );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamMusicRemote.UpdatePlaybackStatus( _ptr, nStatus );
else return Platform.Win64.ISteamMusicRemote.UpdatePlaybackStatus( _ptr, nStatus );
} }
// bool // bool
public bool UpdateShuffled( bool bValue /*bool*/ ) public bool UpdateShuffled( bool bValue /*bool*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamMusicRemote_UpdateShuffled( bValue );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamMusicRemote.UpdateShuffled( _ptr, bValue );
else return Platform.Win64.ISteamMusicRemote.UpdateShuffled( _ptr, bValue );
} }
// bool // bool
public bool UpdateVolume( float flValue /*float*/ ) public bool UpdateVolume( float flValue /*float*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamMusicRemote_UpdateVolume( flValue );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamMusicRemote.UpdateVolume( _ptr, flValue );
else return Platform.Win64.ISteamMusicRemote.UpdateVolume( _ptr, flValue );
} }
} }

View File

@ -5,210 +5,149 @@ namespace SteamNative
{ {
public unsafe class SteamNetworking public unsafe class SteamNetworking
{ {
internal IntPtr _ptr; internal Platform.Interface _pi;
public SteamNetworking( IntPtr pointer ) public SteamNetworking( IntPtr pointer )
{ {
_ptr = pointer; if ( Platform.IsWindows64 ) _pi = new Platform.Win64( pointer );
else if ( Platform.IsWindows32 ) _pi = new Platform.Win32( pointer );
else if ( Platform.IsLinux32 ) _pi = new Platform.Linux32( pointer );
else if ( Platform.IsLinux64 ) _pi = new Platform.Linux64( pointer );
else if ( Platform.IsOsx ) _pi = new Platform.Mac( pointer );
} }
public bool IsValid{ get{ return _pi != null && _pi.IsValid; } }
// bool // bool
public bool AcceptP2PSessionWithUser( CSteamID steamIDRemote /*class CSteamID*/ ) public bool AcceptP2PSessionWithUser( CSteamID steamIDRemote /*class CSteamID*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamNetworking_AcceptP2PSessionWithUser( steamIDRemote );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamNetworking.AcceptP2PSessionWithUser( _ptr, steamIDRemote );
else return Platform.Win64.ISteamNetworking.AcceptP2PSessionWithUser( _ptr, steamIDRemote );
} }
// bool // bool
public bool AllowP2PPacketRelay( bool bAllow /*bool*/ ) public bool AllowP2PPacketRelay( bool bAllow /*bool*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamNetworking_AllowP2PPacketRelay( bAllow );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamNetworking.AllowP2PPacketRelay( _ptr, bAllow );
else return Platform.Win64.ISteamNetworking.AllowP2PPacketRelay( _ptr, bAllow );
} }
// bool // bool
public bool CloseP2PChannelWithUser( CSteamID steamIDRemote /*class CSteamID*/, int nChannel /*int*/ ) public bool CloseP2PChannelWithUser( CSteamID steamIDRemote /*class CSteamID*/, int nChannel /*int*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamNetworking_CloseP2PChannelWithUser( steamIDRemote, nChannel );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamNetworking.CloseP2PChannelWithUser( _ptr, steamIDRemote, nChannel );
else return Platform.Win64.ISteamNetworking.CloseP2PChannelWithUser( _ptr, steamIDRemote, nChannel );
} }
// bool // bool
public bool CloseP2PSessionWithUser( CSteamID steamIDRemote /*class CSteamID*/ ) public bool CloseP2PSessionWithUser( CSteamID steamIDRemote /*class CSteamID*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamNetworking_CloseP2PSessionWithUser( steamIDRemote );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamNetworking.CloseP2PSessionWithUser( _ptr, steamIDRemote );
else return Platform.Win64.ISteamNetworking.CloseP2PSessionWithUser( _ptr, steamIDRemote );
} }
// SNetSocket_t // SNetSocket_t
public SNetSocket_t CreateConnectionSocket( uint nIP /*uint32*/, ushort nPort /*uint16*/, int nTimeoutSec /*int*/ ) public SNetSocket_t CreateConnectionSocket( uint nIP /*uint32*/, ushort nPort /*uint16*/, int nTimeoutSec /*int*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamNetworking_CreateConnectionSocket( nIP, nPort, nTimeoutSec );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamNetworking.CreateConnectionSocket( _ptr, nIP, nPort, nTimeoutSec );
else return Platform.Win64.ISteamNetworking.CreateConnectionSocket( _ptr, nIP, nPort, nTimeoutSec );
} }
// SNetListenSocket_t // SNetListenSocket_t
public SNetListenSocket_t CreateListenSocket( int nVirtualP2PPort /*int*/, uint nIP /*uint32*/, ushort nPort /*uint16*/, bool bAllowUseOfPacketRelay /*bool*/ ) public SNetListenSocket_t CreateListenSocket( int nVirtualP2PPort /*int*/, uint nIP /*uint32*/, ushort nPort /*uint16*/, bool bAllowUseOfPacketRelay /*bool*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamNetworking_CreateListenSocket( nVirtualP2PPort, nIP, nPort, bAllowUseOfPacketRelay );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamNetworking.CreateListenSocket( _ptr, nVirtualP2PPort, nIP, nPort, bAllowUseOfPacketRelay );
else return Platform.Win64.ISteamNetworking.CreateListenSocket( _ptr, nVirtualP2PPort, nIP, nPort, bAllowUseOfPacketRelay );
} }
// SNetSocket_t // SNetSocket_t
public SNetSocket_t CreateP2PConnectionSocket( CSteamID steamIDTarget /*class CSteamID*/, int nVirtualPort /*int*/, int nTimeoutSec /*int*/, bool bAllowUseOfPacketRelay /*bool*/ ) public SNetSocket_t CreateP2PConnectionSocket( CSteamID steamIDTarget /*class CSteamID*/, int nVirtualPort /*int*/, int nTimeoutSec /*int*/, bool bAllowUseOfPacketRelay /*bool*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamNetworking_CreateP2PConnectionSocket( steamIDTarget, nVirtualPort, nTimeoutSec, bAllowUseOfPacketRelay );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamNetworking.CreateP2PConnectionSocket( _ptr, steamIDTarget, nVirtualPort, nTimeoutSec, bAllowUseOfPacketRelay );
else return Platform.Win64.ISteamNetworking.CreateP2PConnectionSocket( _ptr, steamIDTarget, nVirtualPort, nTimeoutSec, bAllowUseOfPacketRelay );
} }
// bool // bool
public bool DestroyListenSocket( SNetListenSocket_t hSocket /*SNetListenSocket_t*/, bool bNotifyRemoteEnd /*bool*/ ) public bool DestroyListenSocket( SNetListenSocket_t hSocket /*SNetListenSocket_t*/, bool bNotifyRemoteEnd /*bool*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamNetworking_DestroyListenSocket( hSocket, bNotifyRemoteEnd );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamNetworking.DestroyListenSocket( _ptr, hSocket, bNotifyRemoteEnd );
else return Platform.Win64.ISteamNetworking.DestroyListenSocket( _ptr, hSocket, bNotifyRemoteEnd );
} }
// bool // bool
public bool DestroySocket( SNetSocket_t hSocket /*SNetSocket_t*/, bool bNotifyRemoteEnd /*bool*/ ) public bool DestroySocket( SNetSocket_t hSocket /*SNetSocket_t*/, bool bNotifyRemoteEnd /*bool*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamNetworking_DestroySocket( hSocket, bNotifyRemoteEnd );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamNetworking.DestroySocket( _ptr, hSocket, bNotifyRemoteEnd );
else return Platform.Win64.ISteamNetworking.DestroySocket( _ptr, hSocket, bNotifyRemoteEnd );
} }
// bool // bool
public bool GetListenSocketInfo( SNetListenSocket_t hListenSocket /*SNetListenSocket_t*/, out uint pnIP /*uint32 **/, out ushort pnPort /*uint16 **/ ) public bool GetListenSocketInfo( SNetListenSocket_t hListenSocket /*SNetListenSocket_t*/, out uint pnIP /*uint32 **/, out ushort pnPort /*uint16 **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamNetworking_GetListenSocketInfo( hListenSocket, out pnIP, out pnPort );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamNetworking.GetListenSocketInfo( _ptr, hListenSocket, out pnIP, out pnPort );
else return Platform.Win64.ISteamNetworking.GetListenSocketInfo( _ptr, hListenSocket, out pnIP, out pnPort );
} }
// int // int
public int GetMaxPacketSize( SNetSocket_t hSocket /*SNetSocket_t*/ ) public int GetMaxPacketSize( SNetSocket_t hSocket /*SNetSocket_t*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamNetworking_GetMaxPacketSize( hSocket );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamNetworking.GetMaxPacketSize( _ptr, hSocket );
else return Platform.Win64.ISteamNetworking.GetMaxPacketSize( _ptr, hSocket );
} }
// bool // bool
public bool GetP2PSessionState( CSteamID steamIDRemote /*class CSteamID*/, ref P2PSessionState_t pConnectionState /*struct P2PSessionState_t **/ ) public bool GetP2PSessionState( CSteamID steamIDRemote /*class CSteamID*/, ref P2PSessionState_t pConnectionState /*struct P2PSessionState_t **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamNetworking_GetP2PSessionState( steamIDRemote, ref pConnectionState );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamNetworking.GetP2PSessionState( _ptr, steamIDRemote, ref pConnectionState );
else return Platform.Win64.ISteamNetworking.GetP2PSessionState( _ptr, steamIDRemote, ref pConnectionState );
} }
// SNetSocketConnectionType // SNetSocketConnectionType
public SNetSocketConnectionType GetSocketConnectionType( SNetSocket_t hSocket /*SNetSocket_t*/ ) public SNetSocketConnectionType GetSocketConnectionType( SNetSocket_t hSocket /*SNetSocket_t*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamNetworking_GetSocketConnectionType( hSocket );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamNetworking.GetSocketConnectionType( _ptr, hSocket );
else return Platform.Win64.ISteamNetworking.GetSocketConnectionType( _ptr, hSocket );
} }
// bool // bool
public bool GetSocketInfo( SNetSocket_t hSocket /*SNetSocket_t*/, out CSteamID pSteamIDRemote /*class CSteamID **/, IntPtr peSocketStatus /*int **/, out uint punIPRemote /*uint32 **/, out ushort punPortRemote /*uint16 **/ ) public bool GetSocketInfo( SNetSocket_t hSocket /*SNetSocket_t*/, out CSteamID pSteamIDRemote /*class CSteamID **/, IntPtr peSocketStatus /*int **/, out uint punIPRemote /*uint32 **/, out ushort punPortRemote /*uint16 **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamNetworking_GetSocketInfo( hSocket, out pSteamIDRemote, (IntPtr) peSocketStatus, out punIPRemote, out punPortRemote );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamNetworking.GetSocketInfo( _ptr, hSocket, out pSteamIDRemote, (IntPtr) peSocketStatus, out punIPRemote, out punPortRemote );
else return Platform.Win64.ISteamNetworking.GetSocketInfo( _ptr, hSocket, out pSteamIDRemote, (IntPtr) peSocketStatus, out punIPRemote, out punPortRemote );
} }
// bool // bool
public bool IsDataAvailable( SNetListenSocket_t hListenSocket /*SNetListenSocket_t*/, out uint pcubMsgSize /*uint32 **/, ref SNetSocket_t phSocket /*SNetSocket_t **/ ) public bool IsDataAvailable( SNetListenSocket_t hListenSocket /*SNetListenSocket_t*/, out uint pcubMsgSize /*uint32 **/, ref SNetSocket_t phSocket /*SNetSocket_t **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamNetworking_IsDataAvailable( hListenSocket, out pcubMsgSize, ref phSocket );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamNetworking.IsDataAvailable( _ptr, hListenSocket, out pcubMsgSize, ref phSocket );
else return Platform.Win64.ISteamNetworking.IsDataAvailable( _ptr, hListenSocket, out pcubMsgSize, ref phSocket );
} }
// bool // bool
public bool IsDataAvailableOnSocket( SNetSocket_t hSocket /*SNetSocket_t*/, out uint pcubMsgSize /*uint32 **/ ) public bool IsDataAvailableOnSocket( SNetSocket_t hSocket /*SNetSocket_t*/, out uint pcubMsgSize /*uint32 **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamNetworking_IsDataAvailableOnSocket( hSocket, out pcubMsgSize );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamNetworking.IsDataAvailableOnSocket( _ptr, hSocket, out pcubMsgSize );
else return Platform.Win64.ISteamNetworking.IsDataAvailableOnSocket( _ptr, hSocket, out pcubMsgSize );
} }
// bool // bool
public bool IsP2PPacketAvailable( out uint pcubMsgSize /*uint32 **/, int nChannel /*int*/ ) public bool IsP2PPacketAvailable( out uint pcubMsgSize /*uint32 **/, int nChannel /*int*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamNetworking_IsP2PPacketAvailable( out pcubMsgSize, nChannel );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamNetworking.IsP2PPacketAvailable( _ptr, out pcubMsgSize, nChannel );
else return Platform.Win64.ISteamNetworking.IsP2PPacketAvailable( _ptr, out pcubMsgSize, nChannel );
} }
// bool // bool
public bool ReadP2PPacket( IntPtr pubDest /*void **/, uint cubDest /*uint32*/, out uint pcubMsgSize /*uint32 **/, out CSteamID psteamIDRemote /*class CSteamID **/, int nChannel /*int*/ ) public bool ReadP2PPacket( IntPtr pubDest /*void **/, uint cubDest /*uint32*/, out uint pcubMsgSize /*uint32 **/, out CSteamID psteamIDRemote /*class CSteamID **/, int nChannel /*int*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamNetworking_ReadP2PPacket( (IntPtr) pubDest, cubDest, out pcubMsgSize, out psteamIDRemote, nChannel );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamNetworking.ReadP2PPacket( _ptr, (IntPtr) pubDest, cubDest, out pcubMsgSize, out psteamIDRemote, nChannel );
else return Platform.Win64.ISteamNetworking.ReadP2PPacket( _ptr, (IntPtr) pubDest, cubDest, out pcubMsgSize, out psteamIDRemote, nChannel );
} }
// bool // bool
public bool RetrieveData( SNetListenSocket_t hListenSocket /*SNetListenSocket_t*/, IntPtr pubDest /*void **/, uint cubDest /*uint32*/, out uint pcubMsgSize /*uint32 **/, ref SNetSocket_t phSocket /*SNetSocket_t **/ ) public bool RetrieveData( SNetListenSocket_t hListenSocket /*SNetListenSocket_t*/, IntPtr pubDest /*void **/, uint cubDest /*uint32*/, out uint pcubMsgSize /*uint32 **/, ref SNetSocket_t phSocket /*SNetSocket_t **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamNetworking_RetrieveData( hListenSocket, (IntPtr) pubDest, cubDest, out pcubMsgSize, ref phSocket );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamNetworking.RetrieveData( _ptr, hListenSocket, (IntPtr) pubDest, cubDest, out pcubMsgSize, ref phSocket );
else return Platform.Win64.ISteamNetworking.RetrieveData( _ptr, hListenSocket, (IntPtr) pubDest, cubDest, out pcubMsgSize, ref phSocket );
} }
// bool // bool
public bool RetrieveDataFromSocket( SNetSocket_t hSocket /*SNetSocket_t*/, IntPtr pubDest /*void **/, uint cubDest /*uint32*/, out uint pcubMsgSize /*uint32 **/ ) public bool RetrieveDataFromSocket( SNetSocket_t hSocket /*SNetSocket_t*/, IntPtr pubDest /*void **/, uint cubDest /*uint32*/, out uint pcubMsgSize /*uint32 **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamNetworking_RetrieveDataFromSocket( hSocket, (IntPtr) pubDest, cubDest, out pcubMsgSize );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamNetworking.RetrieveDataFromSocket( _ptr, hSocket, (IntPtr) pubDest, cubDest, out pcubMsgSize );
else return Platform.Win64.ISteamNetworking.RetrieveDataFromSocket( _ptr, hSocket, (IntPtr) pubDest, cubDest, out pcubMsgSize );
} }
// bool // bool
public bool SendDataOnSocket( SNetSocket_t hSocket /*SNetSocket_t*/, IntPtr pubData /*void **/, uint cubData /*uint32*/, bool bReliable /*bool*/ ) public bool SendDataOnSocket( SNetSocket_t hSocket /*SNetSocket_t*/, IntPtr pubData /*void **/, uint cubData /*uint32*/, bool bReliable /*bool*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamNetworking_SendDataOnSocket( hSocket, (IntPtr) pubData, cubData, bReliable );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamNetworking.SendDataOnSocket( _ptr, hSocket, (IntPtr) pubData, cubData, bReliable );
else return Platform.Win64.ISteamNetworking.SendDataOnSocket( _ptr, hSocket, (IntPtr) pubData, cubData, bReliable );
} }
// bool // bool
public bool SendP2PPacket( CSteamID steamIDRemote /*class CSteamID*/, IntPtr pubData /*const void **/, uint cubData /*uint32*/, P2PSend eP2PSendType /*EP2PSend*/, int nChannel /*int*/ ) public bool SendP2PPacket( CSteamID steamIDRemote /*class CSteamID*/, IntPtr pubData /*const void **/, uint cubData /*uint32*/, P2PSend eP2PSendType /*EP2PSend*/, int nChannel /*int*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamNetworking_SendP2PPacket( steamIDRemote, (IntPtr) pubData, cubData, eP2PSendType, nChannel );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamNetworking.SendP2PPacket( _ptr, steamIDRemote, (IntPtr) pubData, cubData, eP2PSendType, nChannel );
else return Platform.Win64.ISteamNetworking.SendP2PPacket( _ptr, steamIDRemote, (IntPtr) pubData, cubData, eP2PSendType, nChannel );
} }
} }

View File

@ -5,317 +5,223 @@ namespace SteamNative
{ {
public unsafe class SteamRemoteStorage public unsafe class SteamRemoteStorage
{ {
internal IntPtr _ptr; internal Platform.Interface _pi;
public SteamRemoteStorage( IntPtr pointer ) public SteamRemoteStorage( IntPtr pointer )
{ {
_ptr = pointer; if ( Platform.IsWindows64 ) _pi = new Platform.Win64( pointer );
else if ( Platform.IsWindows32 ) _pi = new Platform.Win32( pointer );
else if ( Platform.IsLinux32 ) _pi = new Platform.Linux32( pointer );
else if ( Platform.IsLinux64 ) _pi = new Platform.Linux64( pointer );
else if ( Platform.IsOsx ) _pi = new Platform.Mac( pointer );
} }
public bool IsValid{ get{ return _pi != null && _pi.IsValid; } }
// SteamAPICall_t // SteamAPICall_t
public SteamAPICall_t CommitPublishedFileUpdate( PublishedFileUpdateHandle_t updateHandle /*PublishedFileUpdateHandle_t*/ ) public SteamAPICall_t CommitPublishedFileUpdate( PublishedFileUpdateHandle_t updateHandle /*PublishedFileUpdateHandle_t*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamRemoteStorage_CommitPublishedFileUpdate( updateHandle );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamRemoteStorage.CommitPublishedFileUpdate( _ptr, updateHandle );
else return Platform.Win64.ISteamRemoteStorage.CommitPublishedFileUpdate( _ptr, updateHandle );
} }
// PublishedFileUpdateHandle_t // PublishedFileUpdateHandle_t
public PublishedFileUpdateHandle_t CreatePublishedFileUpdateRequest( PublishedFileId_t unPublishedFileId /*PublishedFileId_t*/ ) public PublishedFileUpdateHandle_t CreatePublishedFileUpdateRequest( PublishedFileId_t unPublishedFileId /*PublishedFileId_t*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamRemoteStorage_CreatePublishedFileUpdateRequest( unPublishedFileId );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamRemoteStorage.CreatePublishedFileUpdateRequest( _ptr, unPublishedFileId );
else return Platform.Win64.ISteamRemoteStorage.CreatePublishedFileUpdateRequest( _ptr, unPublishedFileId );
} }
// SteamAPICall_t // SteamAPICall_t
public SteamAPICall_t DeletePublishedFile( PublishedFileId_t unPublishedFileId /*PublishedFileId_t*/ ) public SteamAPICall_t DeletePublishedFile( PublishedFileId_t unPublishedFileId /*PublishedFileId_t*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamRemoteStorage_DeletePublishedFile( unPublishedFileId );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamRemoteStorage.DeletePublishedFile( _ptr, unPublishedFileId );
else return Platform.Win64.ISteamRemoteStorage.DeletePublishedFile( _ptr, unPublishedFileId );
} }
// SteamAPICall_t // SteamAPICall_t
public SteamAPICall_t EnumeratePublishedFilesByUserAction( WorkshopFileAction eAction /*EWorkshopFileAction*/, uint unStartIndex /*uint32*/ ) public SteamAPICall_t EnumeratePublishedFilesByUserAction( WorkshopFileAction eAction /*EWorkshopFileAction*/, uint unStartIndex /*uint32*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamRemoteStorage_EnumeratePublishedFilesByUserAction( eAction, unStartIndex );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamRemoteStorage.EnumeratePublishedFilesByUserAction( _ptr, eAction, unStartIndex );
else return Platform.Win64.ISteamRemoteStorage.EnumeratePublishedFilesByUserAction( _ptr, eAction, unStartIndex );
} }
// SteamAPICall_t // SteamAPICall_t
public SteamAPICall_t EnumeratePublishedWorkshopFiles( WorkshopEnumerationType eEnumerationType /*EWorkshopEnumerationType*/, uint unStartIndex /*uint32*/, uint unCount /*uint32*/, uint unDays /*uint32*/, IntPtr pTags /*struct SteamParamStringArray_t **/, IntPtr pUserTags /*struct SteamParamStringArray_t **/ ) public SteamAPICall_t EnumeratePublishedWorkshopFiles( WorkshopEnumerationType eEnumerationType /*EWorkshopEnumerationType*/, uint unStartIndex /*uint32*/, uint unCount /*uint32*/, uint unDays /*uint32*/, IntPtr pTags /*struct SteamParamStringArray_t **/, IntPtr pUserTags /*struct SteamParamStringArray_t **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamRemoteStorage_EnumeratePublishedWorkshopFiles( eEnumerationType, unStartIndex, unCount, unDays, (IntPtr) pTags, (IntPtr) pUserTags );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamRemoteStorage.EnumeratePublishedWorkshopFiles( _ptr, eEnumerationType, unStartIndex, unCount, unDays, (IntPtr) pTags, (IntPtr) pUserTags );
else return Platform.Win64.ISteamRemoteStorage.EnumeratePublishedWorkshopFiles( _ptr, eEnumerationType, unStartIndex, unCount, unDays, (IntPtr) pTags, (IntPtr) pUserTags );
} }
// SteamAPICall_t // SteamAPICall_t
public SteamAPICall_t EnumerateUserPublishedFiles( uint unStartIndex /*uint32*/ ) public SteamAPICall_t EnumerateUserPublishedFiles( uint unStartIndex /*uint32*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamRemoteStorage_EnumerateUserPublishedFiles( unStartIndex );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamRemoteStorage.EnumerateUserPublishedFiles( _ptr, unStartIndex );
else return Platform.Win64.ISteamRemoteStorage.EnumerateUserPublishedFiles( _ptr, unStartIndex );
} }
// SteamAPICall_t // SteamAPICall_t
public SteamAPICall_t EnumerateUserSharedWorkshopFiles( CSteamID steamId /*class CSteamID*/, uint unStartIndex /*uint32*/, IntPtr pRequiredTags /*struct SteamParamStringArray_t **/, IntPtr pExcludedTags /*struct SteamParamStringArray_t **/ ) public SteamAPICall_t EnumerateUserSharedWorkshopFiles( CSteamID steamId /*class CSteamID*/, uint unStartIndex /*uint32*/, IntPtr pRequiredTags /*struct SteamParamStringArray_t **/, IntPtr pExcludedTags /*struct SteamParamStringArray_t **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamRemoteStorage_EnumerateUserSharedWorkshopFiles( steamId, unStartIndex, (IntPtr) pRequiredTags, (IntPtr) pExcludedTags );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamRemoteStorage.EnumerateUserSharedWorkshopFiles( _ptr, steamId, unStartIndex, (IntPtr) pRequiredTags, (IntPtr) pExcludedTags );
else return Platform.Win64.ISteamRemoteStorage.EnumerateUserSharedWorkshopFiles( _ptr, steamId, unStartIndex, (IntPtr) pRequiredTags, (IntPtr) pExcludedTags );
} }
// SteamAPICall_t // SteamAPICall_t
public SteamAPICall_t EnumerateUserSubscribedFiles( uint unStartIndex /*uint32*/ ) public SteamAPICall_t EnumerateUserSubscribedFiles( uint unStartIndex /*uint32*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamRemoteStorage_EnumerateUserSubscribedFiles( unStartIndex );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamRemoteStorage.EnumerateUserSubscribedFiles( _ptr, unStartIndex );
else return Platform.Win64.ISteamRemoteStorage.EnumerateUserSubscribedFiles( _ptr, unStartIndex );
} }
// bool // bool
public bool FileDelete( string pchFile /*const char **/ ) public bool FileDelete( string pchFile /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamRemoteStorage_FileDelete( pchFile );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamRemoteStorage.FileDelete( _ptr, pchFile );
else return Platform.Win64.ISteamRemoteStorage.FileDelete( _ptr, pchFile );
} }
// bool // bool
public bool FileExists( string pchFile /*const char **/ ) public bool FileExists( string pchFile /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamRemoteStorage_FileExists( pchFile );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamRemoteStorage.FileExists( _ptr, pchFile );
else return Platform.Win64.ISteamRemoteStorage.FileExists( _ptr, pchFile );
} }
// bool // bool
public bool FileForget( string pchFile /*const char **/ ) public bool FileForget( string pchFile /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamRemoteStorage_FileForget( pchFile );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamRemoteStorage.FileForget( _ptr, pchFile );
else return Platform.Win64.ISteamRemoteStorage.FileForget( _ptr, pchFile );
} }
// bool // bool
public bool FilePersisted( string pchFile /*const char **/ ) public bool FilePersisted( string pchFile /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamRemoteStorage_FilePersisted( pchFile );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamRemoteStorage.FilePersisted( _ptr, pchFile );
else return Platform.Win64.ISteamRemoteStorage.FilePersisted( _ptr, pchFile );
} }
// int // int
public int FileRead( string pchFile /*const char **/, IntPtr pvData /*void **/, int cubDataToRead /*int32*/ ) public int FileRead( string pchFile /*const char **/, IntPtr pvData /*void **/, int cubDataToRead /*int32*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamRemoteStorage_FileRead( pchFile, (IntPtr) pvData, cubDataToRead );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamRemoteStorage.FileRead( _ptr, pchFile, (IntPtr) pvData, cubDataToRead );
else return Platform.Win64.ISteamRemoteStorage.FileRead( _ptr, pchFile, (IntPtr) pvData, cubDataToRead );
} }
// SteamAPICall_t // SteamAPICall_t
public SteamAPICall_t FileReadAsync( string pchFile /*const char **/, uint nOffset /*uint32*/, uint cubToRead /*uint32*/ ) public SteamAPICall_t FileReadAsync( string pchFile /*const char **/, uint nOffset /*uint32*/, uint cubToRead /*uint32*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamRemoteStorage_FileReadAsync( pchFile, nOffset, cubToRead );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamRemoteStorage.FileReadAsync( _ptr, pchFile, nOffset, cubToRead );
else return Platform.Win64.ISteamRemoteStorage.FileReadAsync( _ptr, pchFile, nOffset, cubToRead );
} }
// bool // bool
public bool FileReadAsyncComplete( SteamAPICall_t hReadCall /*SteamAPICall_t*/, IntPtr pvBuffer /*void **/, uint cubToRead /*uint32*/ ) public bool FileReadAsyncComplete( SteamAPICall_t hReadCall /*SteamAPICall_t*/, IntPtr pvBuffer /*void **/, uint cubToRead /*uint32*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamRemoteStorage_FileReadAsyncComplete( hReadCall, (IntPtr) pvBuffer, cubToRead );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamRemoteStorage.FileReadAsyncComplete( _ptr, hReadCall, (IntPtr) pvBuffer, cubToRead );
else return Platform.Win64.ISteamRemoteStorage.FileReadAsyncComplete( _ptr, hReadCall, (IntPtr) pvBuffer, cubToRead );
} }
// SteamAPICall_t // SteamAPICall_t
public SteamAPICall_t FileShare( string pchFile /*const char **/ ) public SteamAPICall_t FileShare( string pchFile /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamRemoteStorage_FileShare( pchFile );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamRemoteStorage.FileShare( _ptr, pchFile );
else return Platform.Win64.ISteamRemoteStorage.FileShare( _ptr, pchFile );
} }
// bool // bool
public bool FileWrite( string pchFile /*const char **/, IntPtr pvData /*const void **/, int cubData /*int32*/ ) public bool FileWrite( string pchFile /*const char **/, IntPtr pvData /*const void **/, int cubData /*int32*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamRemoteStorage_FileWrite( pchFile, (IntPtr) pvData, cubData );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamRemoteStorage.FileWrite( _ptr, pchFile, (IntPtr) pvData, cubData );
else return Platform.Win64.ISteamRemoteStorage.FileWrite( _ptr, pchFile, (IntPtr) pvData, cubData );
} }
// SteamAPICall_t // SteamAPICall_t
public SteamAPICall_t FileWriteAsync( string pchFile /*const char **/, IntPtr pvData /*const void **/, uint cubData /*uint32*/ ) public SteamAPICall_t FileWriteAsync( string pchFile /*const char **/, IntPtr pvData /*const void **/, uint cubData /*uint32*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamRemoteStorage_FileWriteAsync( pchFile, (IntPtr) pvData, cubData );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamRemoteStorage.FileWriteAsync( _ptr, pchFile, (IntPtr) pvData, cubData );
else return Platform.Win64.ISteamRemoteStorage.FileWriteAsync( _ptr, pchFile, (IntPtr) pvData, cubData );
} }
// bool // bool
public bool FileWriteStreamCancel( UGCFileWriteStreamHandle_t writeHandle /*UGCFileWriteStreamHandle_t*/ ) public bool FileWriteStreamCancel( UGCFileWriteStreamHandle_t writeHandle /*UGCFileWriteStreamHandle_t*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamRemoteStorage_FileWriteStreamCancel( writeHandle );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamRemoteStorage.FileWriteStreamCancel( _ptr, writeHandle );
else return Platform.Win64.ISteamRemoteStorage.FileWriteStreamCancel( _ptr, writeHandle );
} }
// bool // bool
public bool FileWriteStreamClose( UGCFileWriteStreamHandle_t writeHandle /*UGCFileWriteStreamHandle_t*/ ) public bool FileWriteStreamClose( UGCFileWriteStreamHandle_t writeHandle /*UGCFileWriteStreamHandle_t*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamRemoteStorage_FileWriteStreamClose( writeHandle );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamRemoteStorage.FileWriteStreamClose( _ptr, writeHandle );
else return Platform.Win64.ISteamRemoteStorage.FileWriteStreamClose( _ptr, writeHandle );
} }
// UGCFileWriteStreamHandle_t // UGCFileWriteStreamHandle_t
public UGCFileWriteStreamHandle_t FileWriteStreamOpen( string pchFile /*const char **/ ) public UGCFileWriteStreamHandle_t FileWriteStreamOpen( string pchFile /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamRemoteStorage_FileWriteStreamOpen( pchFile );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamRemoteStorage.FileWriteStreamOpen( _ptr, pchFile );
else return Platform.Win64.ISteamRemoteStorage.FileWriteStreamOpen( _ptr, pchFile );
} }
// bool // bool
public bool FileWriteStreamWriteChunk( UGCFileWriteStreamHandle_t writeHandle /*UGCFileWriteStreamHandle_t*/, IntPtr pvData /*const void **/, int cubData /*int32*/ ) public bool FileWriteStreamWriteChunk( UGCFileWriteStreamHandle_t writeHandle /*UGCFileWriteStreamHandle_t*/, IntPtr pvData /*const void **/, int cubData /*int32*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamRemoteStorage_FileWriteStreamWriteChunk( writeHandle, (IntPtr) pvData, cubData );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamRemoteStorage.FileWriteStreamWriteChunk( _ptr, writeHandle, (IntPtr) pvData, cubData );
else return Platform.Win64.ISteamRemoteStorage.FileWriteStreamWriteChunk( _ptr, writeHandle, (IntPtr) pvData, cubData );
} }
// int // int
public int GetCachedUGCCount() public int GetCachedUGCCount()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamRemoteStorage_GetCachedUGCCount();
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamRemoteStorage.GetCachedUGCCount( _ptr );
else return Platform.Win64.ISteamRemoteStorage.GetCachedUGCCount( _ptr );
} }
// UGCHandle_t // UGCHandle_t
public UGCHandle_t GetCachedUGCHandle( int iCachedContent /*int32*/ ) public UGCHandle_t GetCachedUGCHandle( int iCachedContent /*int32*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamRemoteStorage_GetCachedUGCHandle( iCachedContent );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamRemoteStorage.GetCachedUGCHandle( _ptr, iCachedContent );
else return Platform.Win64.ISteamRemoteStorage.GetCachedUGCHandle( _ptr, iCachedContent );
} }
// int // int
public int GetFileCount() public int GetFileCount()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamRemoteStorage_GetFileCount();
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamRemoteStorage.GetFileCount( _ptr );
else return Platform.Win64.ISteamRemoteStorage.GetFileCount( _ptr );
} }
// string // string
// with: Detect_StringReturn // with: Detect_StringReturn
public string GetFileNameAndSize( int iFile /*int*/, IntPtr pnFileSizeInBytes /*int32 **/ ) public string GetFileNameAndSize( int iFile /*int*/, IntPtr pnFileSizeInBytes /*int32 **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); //
IntPtr string_pointer; IntPtr string_pointer;
if ( Platform.IsWindows32 ) string_pointer = Platform.Win32.ISteamRemoteStorage.GetFileNameAndSize( _ptr, iFile, (IntPtr) pnFileSizeInBytes ); string_pointer = _pi.ISteamRemoteStorage_GetFileNameAndSize( iFile, (IntPtr) pnFileSizeInBytes );
else string_pointer = Platform.Win64.ISteamRemoteStorage.GetFileNameAndSize( _ptr, iFile, (IntPtr) pnFileSizeInBytes );
return Marshal.PtrToStringAnsi( string_pointer ); return Marshal.PtrToStringAnsi( string_pointer );
} }
// int // int
public int GetFileSize( string pchFile /*const char **/ ) public int GetFileSize( string pchFile /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamRemoteStorage_GetFileSize( pchFile );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamRemoteStorage.GetFileSize( _ptr, pchFile );
else return Platform.Win64.ISteamRemoteStorage.GetFileSize( _ptr, pchFile );
} }
// long // long
public long GetFileTimestamp( string pchFile /*const char **/ ) public long GetFileTimestamp( string pchFile /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamRemoteStorage_GetFileTimestamp( pchFile );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamRemoteStorage.GetFileTimestamp( _ptr, pchFile );
else return Platform.Win64.ISteamRemoteStorage.GetFileTimestamp( _ptr, pchFile );
} }
// SteamAPICall_t // SteamAPICall_t
public SteamAPICall_t GetPublishedFileDetails( PublishedFileId_t unPublishedFileId /*PublishedFileId_t*/, uint unMaxSecondsOld /*uint32*/ ) public SteamAPICall_t GetPublishedFileDetails( PublishedFileId_t unPublishedFileId /*PublishedFileId_t*/, uint unMaxSecondsOld /*uint32*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamRemoteStorage_GetPublishedFileDetails( unPublishedFileId, unMaxSecondsOld );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamRemoteStorage.GetPublishedFileDetails( _ptr, unPublishedFileId, unMaxSecondsOld );
else return Platform.Win64.ISteamRemoteStorage.GetPublishedFileDetails( _ptr, unPublishedFileId, unMaxSecondsOld );
} }
// SteamAPICall_t // SteamAPICall_t
public SteamAPICall_t GetPublishedItemVoteDetails( PublishedFileId_t unPublishedFileId /*PublishedFileId_t*/ ) public SteamAPICall_t GetPublishedItemVoteDetails( PublishedFileId_t unPublishedFileId /*PublishedFileId_t*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamRemoteStorage_GetPublishedItemVoteDetails( unPublishedFileId );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamRemoteStorage.GetPublishedItemVoteDetails( _ptr, unPublishedFileId );
else return Platform.Win64.ISteamRemoteStorage.GetPublishedItemVoteDetails( _ptr, unPublishedFileId );
} }
// bool // bool
public bool GetQuota( IntPtr pnTotalBytes /*int32 **/, IntPtr puAvailableBytes /*int32 **/ ) public bool GetQuota( IntPtr pnTotalBytes /*int32 **/, IntPtr puAvailableBytes /*int32 **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamRemoteStorage_GetQuota( (IntPtr) pnTotalBytes, (IntPtr) puAvailableBytes );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamRemoteStorage.GetQuota( _ptr, (IntPtr) pnTotalBytes, (IntPtr) puAvailableBytes );
else return Platform.Win64.ISteamRemoteStorage.GetQuota( _ptr, (IntPtr) pnTotalBytes, (IntPtr) puAvailableBytes );
} }
// RemoteStoragePlatform // RemoteStoragePlatform
public RemoteStoragePlatform GetSyncPlatforms( string pchFile /*const char **/ ) public RemoteStoragePlatform GetSyncPlatforms( string pchFile /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamRemoteStorage_GetSyncPlatforms( pchFile );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamRemoteStorage.GetSyncPlatforms( _ptr, pchFile );
else return Platform.Win64.ISteamRemoteStorage.GetSyncPlatforms( _ptr, pchFile );
} }
// bool // bool
// with: Detect_StringFetch False // with: Detect_StringFetch False
public bool GetUGCDetails( UGCHandle_t hContent /*UGCHandle_t*/, ref AppId_t pnAppID /*AppId_t **/, out string ppchName /*char ***/, out CSteamID pSteamIDOwner /*class CSteamID **/ ) public bool GetUGCDetails( UGCHandle_t hContent /*UGCHandle_t*/, ref AppId_t pnAppID /*AppId_t **/, out string ppchName /*char ***/, out CSteamID pSteamIDOwner /*class CSteamID **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); //
bool bSuccess = default( bool ); bool bSuccess = default( bool );
ppchName = string.Empty; ppchName = string.Empty;
System.Text.StringBuilder ppchName_sb = new System.Text.StringBuilder( 4096 ); System.Text.StringBuilder ppchName_sb = new System.Text.StringBuilder( 4096 );
int pnFileSizeInBytes = 4096; int pnFileSizeInBytes = 4096;
if ( Platform.IsWindows32 ) bSuccess = Platform.Win32.ISteamRemoteStorage.GetUGCDetails( _ptr, hContent, ref pnAppID, ppchName_sb, (IntPtr) pnFileSizeInBytes, out pSteamIDOwner ); bSuccess = _pi.ISteamRemoteStorage_GetUGCDetails( hContent, ref pnAppID, ppchName_sb, (IntPtr) pnFileSizeInBytes, out pSteamIDOwner );
else bSuccess = Platform.Win64.ISteamRemoteStorage.GetUGCDetails( _ptr, hContent, ref pnAppID, ppchName_sb, (IntPtr) pnFileSizeInBytes, out pSteamIDOwner );
if ( !bSuccess ) return bSuccess; if ( !bSuccess ) return bSuccess;
ppchName = ppchName_sb.ToString(); ppchName = ppchName_sb.ToString();
return bSuccess; return bSuccess;
@ -324,199 +230,133 @@ namespace SteamNative
// bool // bool
public bool GetUGCDownloadProgress( UGCHandle_t hContent /*UGCHandle_t*/, out int pnBytesDownloaded /*int32 **/, out int pnBytesExpected /*int32 **/ ) public bool GetUGCDownloadProgress( UGCHandle_t hContent /*UGCHandle_t*/, out int pnBytesDownloaded /*int32 **/, out int pnBytesExpected /*int32 **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamRemoteStorage_GetUGCDownloadProgress( hContent, out pnBytesDownloaded, out pnBytesExpected );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamRemoteStorage.GetUGCDownloadProgress( _ptr, hContent, out pnBytesDownloaded, out pnBytesExpected );
else return Platform.Win64.ISteamRemoteStorage.GetUGCDownloadProgress( _ptr, hContent, out pnBytesDownloaded, out pnBytesExpected );
} }
// SteamAPICall_t // SteamAPICall_t
public SteamAPICall_t GetUserPublishedItemVoteDetails( PublishedFileId_t unPublishedFileId /*PublishedFileId_t*/ ) public SteamAPICall_t GetUserPublishedItemVoteDetails( PublishedFileId_t unPublishedFileId /*PublishedFileId_t*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamRemoteStorage_GetUserPublishedItemVoteDetails( unPublishedFileId );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamRemoteStorage.GetUserPublishedItemVoteDetails( _ptr, unPublishedFileId );
else return Platform.Win64.ISteamRemoteStorage.GetUserPublishedItemVoteDetails( _ptr, unPublishedFileId );
} }
// bool // bool
public bool IsCloudEnabledForAccount() public bool IsCloudEnabledForAccount()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamRemoteStorage_IsCloudEnabledForAccount();
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamRemoteStorage.IsCloudEnabledForAccount( _ptr );
else return Platform.Win64.ISteamRemoteStorage.IsCloudEnabledForAccount( _ptr );
} }
// bool // bool
public bool IsCloudEnabledForApp() public bool IsCloudEnabledForApp()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamRemoteStorage_IsCloudEnabledForApp();
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamRemoteStorage.IsCloudEnabledForApp( _ptr );
else return Platform.Win64.ISteamRemoteStorage.IsCloudEnabledForApp( _ptr );
} }
// SteamAPICall_t // SteamAPICall_t
public SteamAPICall_t PublishVideo( WorkshopVideoProvider eVideoProvider /*EWorkshopVideoProvider*/, string pchVideoAccount /*const char **/, string pchVideoIdentifier /*const char **/, string pchPreviewFile /*const char **/, AppId_t nConsumerAppId /*AppId_t*/, string pchTitle /*const char **/, string pchDescription /*const char **/, RemoteStoragePublishedFileVisibility eVisibility /*ERemoteStoragePublishedFileVisibility*/, IntPtr pTags /*struct SteamParamStringArray_t **/ ) public SteamAPICall_t PublishVideo( WorkshopVideoProvider eVideoProvider /*EWorkshopVideoProvider*/, string pchVideoAccount /*const char **/, string pchVideoIdentifier /*const char **/, string pchPreviewFile /*const char **/, AppId_t nConsumerAppId /*AppId_t*/, string pchTitle /*const char **/, string pchDescription /*const char **/, RemoteStoragePublishedFileVisibility eVisibility /*ERemoteStoragePublishedFileVisibility*/, IntPtr pTags /*struct SteamParamStringArray_t **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamRemoteStorage_PublishVideo( eVideoProvider, pchVideoAccount, pchVideoIdentifier, pchPreviewFile, nConsumerAppId, pchTitle, pchDescription, eVisibility, (IntPtr) pTags );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamRemoteStorage.PublishVideo( _ptr, eVideoProvider, pchVideoAccount, pchVideoIdentifier, pchPreviewFile, nConsumerAppId, pchTitle, pchDescription, eVisibility, (IntPtr) pTags );
else return Platform.Win64.ISteamRemoteStorage.PublishVideo( _ptr, eVideoProvider, pchVideoAccount, pchVideoIdentifier, pchPreviewFile, nConsumerAppId, pchTitle, pchDescription, eVisibility, (IntPtr) pTags );
} }
// SteamAPICall_t // SteamAPICall_t
public SteamAPICall_t PublishWorkshopFile( string pchFile /*const char **/, string pchPreviewFile /*const char **/, AppId_t nConsumerAppId /*AppId_t*/, string pchTitle /*const char **/, string pchDescription /*const char **/, RemoteStoragePublishedFileVisibility eVisibility /*ERemoteStoragePublishedFileVisibility*/, IntPtr pTags /*struct SteamParamStringArray_t **/, WorkshopFileType eWorkshopFileType /*EWorkshopFileType*/ ) public SteamAPICall_t PublishWorkshopFile( string pchFile /*const char **/, string pchPreviewFile /*const char **/, AppId_t nConsumerAppId /*AppId_t*/, string pchTitle /*const char **/, string pchDescription /*const char **/, RemoteStoragePublishedFileVisibility eVisibility /*ERemoteStoragePublishedFileVisibility*/, IntPtr pTags /*struct SteamParamStringArray_t **/, WorkshopFileType eWorkshopFileType /*EWorkshopFileType*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamRemoteStorage_PublishWorkshopFile( pchFile, pchPreviewFile, nConsumerAppId, pchTitle, pchDescription, eVisibility, (IntPtr) pTags, eWorkshopFileType );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamRemoteStorage.PublishWorkshopFile( _ptr, pchFile, pchPreviewFile, nConsumerAppId, pchTitle, pchDescription, eVisibility, (IntPtr) pTags, eWorkshopFileType );
else return Platform.Win64.ISteamRemoteStorage.PublishWorkshopFile( _ptr, pchFile, pchPreviewFile, nConsumerAppId, pchTitle, pchDescription, eVisibility, (IntPtr) pTags, eWorkshopFileType );
} }
// void // void
public void SetCloudEnabledForApp( bool bEnabled /*bool*/ ) public void SetCloudEnabledForApp( bool bEnabled /*bool*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamRemoteStorage_SetCloudEnabledForApp( bEnabled );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamRemoteStorage.SetCloudEnabledForApp( _ptr, bEnabled );
else Platform.Win64.ISteamRemoteStorage.SetCloudEnabledForApp( _ptr, bEnabled );
} }
// bool // bool
public bool SetSyncPlatforms( string pchFile /*const char **/, RemoteStoragePlatform eRemoteStoragePlatform /*ERemoteStoragePlatform*/ ) public bool SetSyncPlatforms( string pchFile /*const char **/, RemoteStoragePlatform eRemoteStoragePlatform /*ERemoteStoragePlatform*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamRemoteStorage_SetSyncPlatforms( pchFile, eRemoteStoragePlatform );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamRemoteStorage.SetSyncPlatforms( _ptr, pchFile, eRemoteStoragePlatform );
else return Platform.Win64.ISteamRemoteStorage.SetSyncPlatforms( _ptr, pchFile, eRemoteStoragePlatform );
} }
// SteamAPICall_t // SteamAPICall_t
public SteamAPICall_t SetUserPublishedFileAction( PublishedFileId_t unPublishedFileId /*PublishedFileId_t*/, WorkshopFileAction eAction /*EWorkshopFileAction*/ ) public SteamAPICall_t SetUserPublishedFileAction( PublishedFileId_t unPublishedFileId /*PublishedFileId_t*/, WorkshopFileAction eAction /*EWorkshopFileAction*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamRemoteStorage_SetUserPublishedFileAction( unPublishedFileId, eAction );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamRemoteStorage.SetUserPublishedFileAction( _ptr, unPublishedFileId, eAction );
else return Platform.Win64.ISteamRemoteStorage.SetUserPublishedFileAction( _ptr, unPublishedFileId, eAction );
} }
// SteamAPICall_t // SteamAPICall_t
public SteamAPICall_t SubscribePublishedFile( PublishedFileId_t unPublishedFileId /*PublishedFileId_t*/ ) public SteamAPICall_t SubscribePublishedFile( PublishedFileId_t unPublishedFileId /*PublishedFileId_t*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamRemoteStorage_SubscribePublishedFile( unPublishedFileId );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamRemoteStorage.SubscribePublishedFile( _ptr, unPublishedFileId );
else return Platform.Win64.ISteamRemoteStorage.SubscribePublishedFile( _ptr, unPublishedFileId );
} }
// SteamAPICall_t // SteamAPICall_t
public SteamAPICall_t UGCDownload( UGCHandle_t hContent /*UGCHandle_t*/, uint unPriority /*uint32*/ ) public SteamAPICall_t UGCDownload( UGCHandle_t hContent /*UGCHandle_t*/, uint unPriority /*uint32*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamRemoteStorage_UGCDownload( hContent, unPriority );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamRemoteStorage.UGCDownload( _ptr, hContent, unPriority );
else return Platform.Win64.ISteamRemoteStorage.UGCDownload( _ptr, hContent, unPriority );
} }
// SteamAPICall_t // SteamAPICall_t
public SteamAPICall_t UGCDownloadToLocation( UGCHandle_t hContent /*UGCHandle_t*/, string pchLocation /*const char **/, uint unPriority /*uint32*/ ) public SteamAPICall_t UGCDownloadToLocation( UGCHandle_t hContent /*UGCHandle_t*/, string pchLocation /*const char **/, uint unPriority /*uint32*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamRemoteStorage_UGCDownloadToLocation( hContent, pchLocation, unPriority );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamRemoteStorage.UGCDownloadToLocation( _ptr, hContent, pchLocation, unPriority );
else return Platform.Win64.ISteamRemoteStorage.UGCDownloadToLocation( _ptr, hContent, pchLocation, unPriority );
} }
// int // int
public int UGCRead( UGCHandle_t hContent /*UGCHandle_t*/, IntPtr pvData /*void **/, int cubDataToRead /*int32*/, uint cOffset /*uint32*/, UGCReadAction eAction /*EUGCReadAction*/ ) public int UGCRead( UGCHandle_t hContent /*UGCHandle_t*/, IntPtr pvData /*void **/, int cubDataToRead /*int32*/, uint cOffset /*uint32*/, UGCReadAction eAction /*EUGCReadAction*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamRemoteStorage_UGCRead( hContent, (IntPtr) pvData, cubDataToRead, cOffset, eAction );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamRemoteStorage.UGCRead( _ptr, hContent, (IntPtr) pvData, cubDataToRead, cOffset, eAction );
else return Platform.Win64.ISteamRemoteStorage.UGCRead( _ptr, hContent, (IntPtr) pvData, cubDataToRead, cOffset, eAction );
} }
// SteamAPICall_t // SteamAPICall_t
public SteamAPICall_t UnsubscribePublishedFile( PublishedFileId_t unPublishedFileId /*PublishedFileId_t*/ ) public SteamAPICall_t UnsubscribePublishedFile( PublishedFileId_t unPublishedFileId /*PublishedFileId_t*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamRemoteStorage_UnsubscribePublishedFile( unPublishedFileId );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamRemoteStorage.UnsubscribePublishedFile( _ptr, unPublishedFileId );
else return Platform.Win64.ISteamRemoteStorage.UnsubscribePublishedFile( _ptr, unPublishedFileId );
} }
// bool // bool
public bool UpdatePublishedFileDescription( PublishedFileUpdateHandle_t updateHandle /*PublishedFileUpdateHandle_t*/, string pchDescription /*const char **/ ) public bool UpdatePublishedFileDescription( PublishedFileUpdateHandle_t updateHandle /*PublishedFileUpdateHandle_t*/, string pchDescription /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamRemoteStorage_UpdatePublishedFileDescription( updateHandle, pchDescription );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamRemoteStorage.UpdatePublishedFileDescription( _ptr, updateHandle, pchDescription );
else return Platform.Win64.ISteamRemoteStorage.UpdatePublishedFileDescription( _ptr, updateHandle, pchDescription );
} }
// bool // bool
public bool UpdatePublishedFileFile( PublishedFileUpdateHandle_t updateHandle /*PublishedFileUpdateHandle_t*/, string pchFile /*const char **/ ) public bool UpdatePublishedFileFile( PublishedFileUpdateHandle_t updateHandle /*PublishedFileUpdateHandle_t*/, string pchFile /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamRemoteStorage_UpdatePublishedFileFile( updateHandle, pchFile );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamRemoteStorage.UpdatePublishedFileFile( _ptr, updateHandle, pchFile );
else return Platform.Win64.ISteamRemoteStorage.UpdatePublishedFileFile( _ptr, updateHandle, pchFile );
} }
// bool // bool
public bool UpdatePublishedFilePreviewFile( PublishedFileUpdateHandle_t updateHandle /*PublishedFileUpdateHandle_t*/, string pchPreviewFile /*const char **/ ) public bool UpdatePublishedFilePreviewFile( PublishedFileUpdateHandle_t updateHandle /*PublishedFileUpdateHandle_t*/, string pchPreviewFile /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamRemoteStorage_UpdatePublishedFilePreviewFile( updateHandle, pchPreviewFile );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamRemoteStorage.UpdatePublishedFilePreviewFile( _ptr, updateHandle, pchPreviewFile );
else return Platform.Win64.ISteamRemoteStorage.UpdatePublishedFilePreviewFile( _ptr, updateHandle, pchPreviewFile );
} }
// bool // bool
public bool UpdatePublishedFileSetChangeDescription( PublishedFileUpdateHandle_t updateHandle /*PublishedFileUpdateHandle_t*/, string pchChangeDescription /*const char **/ ) public bool UpdatePublishedFileSetChangeDescription( PublishedFileUpdateHandle_t updateHandle /*PublishedFileUpdateHandle_t*/, string pchChangeDescription /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamRemoteStorage_UpdatePublishedFileSetChangeDescription( updateHandle, pchChangeDescription );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamRemoteStorage.UpdatePublishedFileSetChangeDescription( _ptr, updateHandle, pchChangeDescription );
else return Platform.Win64.ISteamRemoteStorage.UpdatePublishedFileSetChangeDescription( _ptr, updateHandle, pchChangeDescription );
} }
// bool // bool
public bool UpdatePublishedFileTags( PublishedFileUpdateHandle_t updateHandle /*PublishedFileUpdateHandle_t*/, IntPtr pTags /*struct SteamParamStringArray_t **/ ) public bool UpdatePublishedFileTags( PublishedFileUpdateHandle_t updateHandle /*PublishedFileUpdateHandle_t*/, IntPtr pTags /*struct SteamParamStringArray_t **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamRemoteStorage_UpdatePublishedFileTags( updateHandle, (IntPtr) pTags );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamRemoteStorage.UpdatePublishedFileTags( _ptr, updateHandle, (IntPtr) pTags );
else return Platform.Win64.ISteamRemoteStorage.UpdatePublishedFileTags( _ptr, updateHandle, (IntPtr) pTags );
} }
// bool // bool
public bool UpdatePublishedFileTitle( PublishedFileUpdateHandle_t updateHandle /*PublishedFileUpdateHandle_t*/, string pchTitle /*const char **/ ) public bool UpdatePublishedFileTitle( PublishedFileUpdateHandle_t updateHandle /*PublishedFileUpdateHandle_t*/, string pchTitle /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamRemoteStorage_UpdatePublishedFileTitle( updateHandle, pchTitle );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamRemoteStorage.UpdatePublishedFileTitle( _ptr, updateHandle, pchTitle );
else return Platform.Win64.ISteamRemoteStorage.UpdatePublishedFileTitle( _ptr, updateHandle, pchTitle );
} }
// bool // bool
public bool UpdatePublishedFileVisibility( PublishedFileUpdateHandle_t updateHandle /*PublishedFileUpdateHandle_t*/, RemoteStoragePublishedFileVisibility eVisibility /*ERemoteStoragePublishedFileVisibility*/ ) public bool UpdatePublishedFileVisibility( PublishedFileUpdateHandle_t updateHandle /*PublishedFileUpdateHandle_t*/, RemoteStoragePublishedFileVisibility eVisibility /*ERemoteStoragePublishedFileVisibility*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamRemoteStorage_UpdatePublishedFileVisibility( updateHandle, eVisibility );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamRemoteStorage.UpdatePublishedFileVisibility( _ptr, updateHandle, eVisibility );
else return Platform.Win64.ISteamRemoteStorage.UpdatePublishedFileVisibility( _ptr, updateHandle, eVisibility );
} }
// SteamAPICall_t // SteamAPICall_t
public SteamAPICall_t UpdateUserPublishedItemVote( PublishedFileId_t unPublishedFileId /*PublishedFileId_t*/, bool bVoteUp /*bool*/ ) public SteamAPICall_t UpdateUserPublishedItemVote( PublishedFileId_t unPublishedFileId /*PublishedFileId_t*/, bool bVoteUp /*bool*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamRemoteStorage_UpdateUserPublishedItemVote( unPublishedFileId, bVoteUp );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamRemoteStorage.UpdateUserPublishedItemVote( _ptr, unPublishedFileId, bVoteUp );
else return Platform.Win64.ISteamRemoteStorage.UpdateUserPublishedItemVote( _ptr, unPublishedFileId, bVoteUp );
} }
} }

View File

@ -5,75 +5,59 @@ namespace SteamNative
{ {
public unsafe class SteamScreenshots public unsafe class SteamScreenshots
{ {
internal IntPtr _ptr; internal Platform.Interface _pi;
public SteamScreenshots( IntPtr pointer ) public SteamScreenshots( IntPtr pointer )
{ {
_ptr = pointer; if ( Platform.IsWindows64 ) _pi = new Platform.Win64( pointer );
else if ( Platform.IsWindows32 ) _pi = new Platform.Win32( pointer );
else if ( Platform.IsLinux32 ) _pi = new Platform.Linux32( pointer );
else if ( Platform.IsLinux64 ) _pi = new Platform.Linux64( pointer );
else if ( Platform.IsOsx ) _pi = new Platform.Mac( pointer );
} }
public bool IsValid{ get{ return _pi != null && _pi.IsValid; } }
// ScreenshotHandle // ScreenshotHandle
public ScreenshotHandle AddScreenshotToLibrary( string pchFilename /*const char **/, string pchThumbnailFilename /*const char **/, int nWidth /*int*/, int nHeight /*int*/ ) public ScreenshotHandle AddScreenshotToLibrary( string pchFilename /*const char **/, string pchThumbnailFilename /*const char **/, int nWidth /*int*/, int nHeight /*int*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamScreenshots_AddScreenshotToLibrary( pchFilename, pchThumbnailFilename, nWidth, nHeight );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamScreenshots.AddScreenshotToLibrary( _ptr, pchFilename, pchThumbnailFilename, nWidth, nHeight );
else return Platform.Win64.ISteamScreenshots.AddScreenshotToLibrary( _ptr, pchFilename, pchThumbnailFilename, nWidth, nHeight );
} }
// void // void
public void HookScreenshots( bool bHook /*bool*/ ) public void HookScreenshots( bool bHook /*bool*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamScreenshots_HookScreenshots( bHook );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamScreenshots.HookScreenshots( _ptr, bHook );
else Platform.Win64.ISteamScreenshots.HookScreenshots( _ptr, bHook );
} }
// bool // bool
public bool SetLocation( ScreenshotHandle hScreenshot /*ScreenshotHandle*/, string pchLocation /*const char **/ ) public bool SetLocation( ScreenshotHandle hScreenshot /*ScreenshotHandle*/, string pchLocation /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamScreenshots_SetLocation( hScreenshot, pchLocation );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamScreenshots.SetLocation( _ptr, hScreenshot, pchLocation );
else return Platform.Win64.ISteamScreenshots.SetLocation( _ptr, hScreenshot, pchLocation );
} }
// bool // bool
public bool TagPublishedFile( ScreenshotHandle hScreenshot /*ScreenshotHandle*/, PublishedFileId_t unPublishedFileID /*PublishedFileId_t*/ ) public bool TagPublishedFile( ScreenshotHandle hScreenshot /*ScreenshotHandle*/, PublishedFileId_t unPublishedFileID /*PublishedFileId_t*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamScreenshots_TagPublishedFile( hScreenshot, unPublishedFileID );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamScreenshots.TagPublishedFile( _ptr, hScreenshot, unPublishedFileID );
else return Platform.Win64.ISteamScreenshots.TagPublishedFile( _ptr, hScreenshot, unPublishedFileID );
} }
// bool // bool
public bool TagUser( ScreenshotHandle hScreenshot /*ScreenshotHandle*/, CSteamID steamID /*class CSteamID*/ ) public bool TagUser( ScreenshotHandle hScreenshot /*ScreenshotHandle*/, CSteamID steamID /*class CSteamID*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamScreenshots_TagUser( hScreenshot, steamID );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamScreenshots.TagUser( _ptr, hScreenshot, steamID );
else return Platform.Win64.ISteamScreenshots.TagUser( _ptr, hScreenshot, steamID );
} }
// void // void
public void TriggerScreenshot() public void TriggerScreenshot()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamScreenshots_TriggerScreenshot();
if ( Platform.IsWindows32 ) Platform.Win32.ISteamScreenshots.TriggerScreenshot( _ptr );
else Platform.Win64.ISteamScreenshots.TriggerScreenshot( _ptr );
} }
// ScreenshotHandle // ScreenshotHandle
public ScreenshotHandle WriteScreenshot( IntPtr pubRGB /*void **/, uint cubRGB /*uint32*/, int nWidth /*int*/, int nHeight /*int*/ ) public ScreenshotHandle WriteScreenshot( IntPtr pubRGB /*void **/, uint cubRGB /*uint32*/, int nWidth /*int*/, int nHeight /*int*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamScreenshots_WriteScreenshot( (IntPtr) pubRGB, cubRGB, nWidth, nHeight );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamScreenshots.WriteScreenshot( _ptr, (IntPtr) pubRGB, cubRGB, nWidth, nHeight );
else return Platform.Win64.ISteamScreenshots.WriteScreenshot( _ptr, (IntPtr) pubRGB, cubRGB, nWidth, nHeight );
} }
} }

View File

@ -5,157 +5,117 @@ namespace SteamNative
{ {
public unsafe class SteamUGC public unsafe class SteamUGC
{ {
internal IntPtr _ptr; internal Platform.Interface _pi;
public SteamUGC( IntPtr pointer ) public SteamUGC( IntPtr pointer )
{ {
_ptr = pointer; if ( Platform.IsWindows64 ) _pi = new Platform.Win64( pointer );
else if ( Platform.IsWindows32 ) _pi = new Platform.Win32( pointer );
else if ( Platform.IsLinux32 ) _pi = new Platform.Linux32( pointer );
else if ( Platform.IsLinux64 ) _pi = new Platform.Linux64( pointer );
else if ( Platform.IsOsx ) _pi = new Platform.Mac( pointer );
} }
public bool IsValid{ get{ return _pi != null && _pi.IsValid; } }
// bool // bool
public bool AddExcludedTag( UGCQueryHandle_t handle /*UGCQueryHandle_t*/, string pTagName /*const char **/ ) public bool AddExcludedTag( UGCQueryHandle_t handle /*UGCQueryHandle_t*/, string pTagName /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUGC_AddExcludedTag( handle, pTagName );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUGC.AddExcludedTag( _ptr, handle, pTagName );
else return Platform.Win64.ISteamUGC.AddExcludedTag( _ptr, handle, pTagName );
} }
// bool // bool
public bool AddItemKeyValueTag( UGCUpdateHandle_t handle /*UGCUpdateHandle_t*/, string pchKey /*const char **/, string pchValue /*const char **/ ) public bool AddItemKeyValueTag( UGCUpdateHandle_t handle /*UGCUpdateHandle_t*/, string pchKey /*const char **/, string pchValue /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUGC_AddItemKeyValueTag( handle, pchKey, pchValue );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUGC.AddItemKeyValueTag( _ptr, handle, pchKey, pchValue );
else return Platform.Win64.ISteamUGC.AddItemKeyValueTag( _ptr, handle, pchKey, pchValue );
} }
// bool // bool
public bool AddItemPreviewFile( UGCUpdateHandle_t handle /*UGCUpdateHandle_t*/, string pszPreviewFile /*const char **/, ItemPreviewType type /*EItemPreviewType*/ ) public bool AddItemPreviewFile( UGCUpdateHandle_t handle /*UGCUpdateHandle_t*/, string pszPreviewFile /*const char **/, ItemPreviewType type /*EItemPreviewType*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUGC_AddItemPreviewFile( handle, pszPreviewFile, type );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUGC.AddItemPreviewFile( _ptr, handle, pszPreviewFile, type );
else return Platform.Win64.ISteamUGC.AddItemPreviewFile( _ptr, handle, pszPreviewFile, type );
} }
// bool // bool
public bool AddItemPreviewVideo( UGCUpdateHandle_t handle /*UGCUpdateHandle_t*/, string pszVideoID /*const char **/ ) public bool AddItemPreviewVideo( UGCUpdateHandle_t handle /*UGCUpdateHandle_t*/, string pszVideoID /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUGC_AddItemPreviewVideo( handle, pszVideoID );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUGC.AddItemPreviewVideo( _ptr, handle, pszVideoID );
else return Platform.Win64.ISteamUGC.AddItemPreviewVideo( _ptr, handle, pszVideoID );
} }
// SteamAPICall_t // SteamAPICall_t
public SteamAPICall_t AddItemToFavorites( AppId_t nAppId /*AppId_t*/, PublishedFileId_t nPublishedFileID /*PublishedFileId_t*/ ) public SteamAPICall_t AddItemToFavorites( AppId_t nAppId /*AppId_t*/, PublishedFileId_t nPublishedFileID /*PublishedFileId_t*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUGC_AddItemToFavorites( nAppId, nPublishedFileID );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUGC.AddItemToFavorites( _ptr, nAppId, nPublishedFileID );
else return Platform.Win64.ISteamUGC.AddItemToFavorites( _ptr, nAppId, nPublishedFileID );
} }
// bool // bool
public bool AddRequiredKeyValueTag( UGCQueryHandle_t handle /*UGCQueryHandle_t*/, string pKey /*const char **/, string pValue /*const char **/ ) public bool AddRequiredKeyValueTag( UGCQueryHandle_t handle /*UGCQueryHandle_t*/, string pKey /*const char **/, string pValue /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUGC_AddRequiredKeyValueTag( handle, pKey, pValue );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUGC.AddRequiredKeyValueTag( _ptr, handle, pKey, pValue );
else return Platform.Win64.ISteamUGC.AddRequiredKeyValueTag( _ptr, handle, pKey, pValue );
} }
// bool // bool
public bool AddRequiredTag( UGCQueryHandle_t handle /*UGCQueryHandle_t*/, string pTagName /*const char **/ ) public bool AddRequiredTag( UGCQueryHandle_t handle /*UGCQueryHandle_t*/, string pTagName /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUGC_AddRequiredTag( handle, pTagName );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUGC.AddRequiredTag( _ptr, handle, pTagName );
else return Platform.Win64.ISteamUGC.AddRequiredTag( _ptr, handle, pTagName );
} }
// bool // bool
public bool BInitWorkshopForGameServer( DepotId_t unWorkshopDepotID /*DepotId_t*/, string pszFolder /*const char **/ ) public bool BInitWorkshopForGameServer( DepotId_t unWorkshopDepotID /*DepotId_t*/, string pszFolder /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUGC_BInitWorkshopForGameServer( unWorkshopDepotID, pszFolder );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUGC.BInitWorkshopForGameServer( _ptr, unWorkshopDepotID, pszFolder );
else return Platform.Win64.ISteamUGC.BInitWorkshopForGameServer( _ptr, unWorkshopDepotID, pszFolder );
} }
// SteamAPICall_t // SteamAPICall_t
public SteamAPICall_t CreateItem( AppId_t nConsumerAppId /*AppId_t*/, WorkshopFileType eFileType /*EWorkshopFileType*/ ) public SteamAPICall_t CreateItem( AppId_t nConsumerAppId /*AppId_t*/, WorkshopFileType eFileType /*EWorkshopFileType*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUGC_CreateItem( nConsumerAppId, eFileType );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUGC.CreateItem( _ptr, nConsumerAppId, eFileType );
else return Platform.Win64.ISteamUGC.CreateItem( _ptr, nConsumerAppId, eFileType );
} }
// UGCQueryHandle_t // UGCQueryHandle_t
public UGCQueryHandle_t CreateQueryAllUGCRequest( UGCQuery eQueryType /*EUGCQuery*/, UGCMatchingUGCType eMatchingeMatchingUGCTypeFileType /*EUGCMatchingUGCType*/, AppId_t nCreatorAppID /*AppId_t*/, AppId_t nConsumerAppID /*AppId_t*/, uint unPage /*uint32*/ ) public UGCQueryHandle_t CreateQueryAllUGCRequest( UGCQuery eQueryType /*EUGCQuery*/, UGCMatchingUGCType eMatchingeMatchingUGCTypeFileType /*EUGCMatchingUGCType*/, AppId_t nCreatorAppID /*AppId_t*/, AppId_t nConsumerAppID /*AppId_t*/, uint unPage /*uint32*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUGC_CreateQueryAllUGCRequest( eQueryType, eMatchingeMatchingUGCTypeFileType, nCreatorAppID, nConsumerAppID, unPage );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUGC.CreateQueryAllUGCRequest( _ptr, eQueryType, eMatchingeMatchingUGCTypeFileType, nCreatorAppID, nConsumerAppID, unPage );
else return Platform.Win64.ISteamUGC.CreateQueryAllUGCRequest( _ptr, eQueryType, eMatchingeMatchingUGCTypeFileType, nCreatorAppID, nConsumerAppID, unPage );
} }
// with: Detect_VectorReturn // with: Detect_VectorReturn
// UGCQueryHandle_t // UGCQueryHandle_t
public UGCQueryHandle_t CreateQueryUGCDetailsRequest( PublishedFileId_t[] pvecPublishedFileID /*PublishedFileId_t **/ ) public UGCQueryHandle_t CreateQueryUGCDetailsRequest( PublishedFileId_t[] pvecPublishedFileID /*PublishedFileId_t **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); //
var unNumPublishedFileIDs = (uint) pvecPublishedFileID.Length; var unNumPublishedFileIDs = (uint) pvecPublishedFileID.Length;
fixed ( PublishedFileId_t* pvecPublishedFileID_ptr = pvecPublishedFileID ) fixed ( PublishedFileId_t* pvecPublishedFileID_ptr = pvecPublishedFileID )
{ {
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUGC.CreateQueryUGCDetailsRequest( _ptr, (IntPtr) pvecPublishedFileID_ptr, unNumPublishedFileIDs ); return _pi.ISteamUGC_CreateQueryUGCDetailsRequest( (IntPtr) pvecPublishedFileID_ptr, unNumPublishedFileIDs );
else return Platform.Win64.ISteamUGC.CreateQueryUGCDetailsRequest( _ptr, (IntPtr) pvecPublishedFileID_ptr, unNumPublishedFileIDs );
} }
} }
// UGCQueryHandle_t // UGCQueryHandle_t
public UGCQueryHandle_t CreateQueryUserUGCRequest( AccountID_t unAccountID /*AccountID_t*/, UserUGCList eListType /*EUserUGCList*/, UGCMatchingUGCType eMatchingUGCType /*EUGCMatchingUGCType*/, UserUGCListSortOrder eSortOrder /*EUserUGCListSortOrder*/, AppId_t nCreatorAppID /*AppId_t*/, AppId_t nConsumerAppID /*AppId_t*/, uint unPage /*uint32*/ ) public UGCQueryHandle_t CreateQueryUserUGCRequest( AccountID_t unAccountID /*AccountID_t*/, UserUGCList eListType /*EUserUGCList*/, UGCMatchingUGCType eMatchingUGCType /*EUGCMatchingUGCType*/, UserUGCListSortOrder eSortOrder /*EUserUGCListSortOrder*/, AppId_t nCreatorAppID /*AppId_t*/, AppId_t nConsumerAppID /*AppId_t*/, uint unPage /*uint32*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUGC_CreateQueryUserUGCRequest( unAccountID, eListType, eMatchingUGCType, eSortOrder, nCreatorAppID, nConsumerAppID, unPage );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUGC.CreateQueryUserUGCRequest( _ptr, unAccountID, eListType, eMatchingUGCType, eSortOrder, nCreatorAppID, nConsumerAppID, unPage );
else return Platform.Win64.ISteamUGC.CreateQueryUserUGCRequest( _ptr, unAccountID, eListType, eMatchingUGCType, eSortOrder, nCreatorAppID, nConsumerAppID, unPage );
} }
// bool // bool
public bool DownloadItem( PublishedFileId_t nPublishedFileID /*PublishedFileId_t*/, bool bHighPriority /*bool*/ ) public bool DownloadItem( PublishedFileId_t nPublishedFileID /*PublishedFileId_t*/, bool bHighPriority /*bool*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUGC_DownloadItem( nPublishedFileID, bHighPriority );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUGC.DownloadItem( _ptr, nPublishedFileID, bHighPriority );
else return Platform.Win64.ISteamUGC.DownloadItem( _ptr, nPublishedFileID, bHighPriority );
} }
// bool // bool
public bool GetItemDownloadInfo( PublishedFileId_t nPublishedFileID /*PublishedFileId_t*/, out ulong punBytesDownloaded /*uint64 **/, out ulong punBytesTotal /*uint64 **/ ) public bool GetItemDownloadInfo( PublishedFileId_t nPublishedFileID /*PublishedFileId_t*/, out ulong punBytesDownloaded /*uint64 **/, out ulong punBytesTotal /*uint64 **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUGC_GetItemDownloadInfo( nPublishedFileID, out punBytesDownloaded, out punBytesTotal );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUGC.GetItemDownloadInfo( _ptr, nPublishedFileID, out punBytesDownloaded, out punBytesTotal );
else return Platform.Win64.ISteamUGC.GetItemDownloadInfo( _ptr, nPublishedFileID, out punBytesDownloaded, out punBytesTotal );
} }
// bool // bool
// with: Detect_StringFetch False // with: Detect_StringFetch False
public bool GetItemInstallInfo( PublishedFileId_t nPublishedFileID /*PublishedFileId_t*/, out ulong punSizeOnDisk /*uint64 **/, out string pchFolder /*char **/, out uint punTimeStamp /*uint32 **/ ) public bool GetItemInstallInfo( PublishedFileId_t nPublishedFileID /*PublishedFileId_t*/, out ulong punSizeOnDisk /*uint64 **/, out string pchFolder /*char **/, out uint punTimeStamp /*uint32 **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); //
bool bSuccess = default( bool ); bool bSuccess = default( bool );
pchFolder = string.Empty; pchFolder = string.Empty;
System.Text.StringBuilder pchFolder_sb = new System.Text.StringBuilder( 4096 ); System.Text.StringBuilder pchFolder_sb = new System.Text.StringBuilder( 4096 );
uint cchFolderSize = 4096; uint cchFolderSize = 4096;
if ( Platform.IsWindows32 ) bSuccess = Platform.Win32.ISteamUGC.GetItemInstallInfo( _ptr, nPublishedFileID, out punSizeOnDisk, pchFolder_sb, cchFolderSize, out punTimeStamp ); bSuccess = _pi.ISteamUGC_GetItemInstallInfo( nPublishedFileID, out punSizeOnDisk, pchFolder_sb, cchFolderSize, out punTimeStamp );
else bSuccess = Platform.Win64.ISteamUGC.GetItemInstallInfo( _ptr, nPublishedFileID, out punSizeOnDisk, pchFolder_sb, cchFolderSize, out punTimeStamp );
if ( !bSuccess ) return bSuccess; if ( !bSuccess ) return bSuccess;
pchFolder = pchFolder_sb.ToString(); pchFolder = pchFolder_sb.ToString();
return bSuccess; return bSuccess;
@ -164,28 +124,19 @@ namespace SteamNative
// uint // uint
public uint GetItemState( PublishedFileId_t nPublishedFileID /*PublishedFileId_t*/ ) public uint GetItemState( PublishedFileId_t nPublishedFileID /*PublishedFileId_t*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUGC_GetItemState( nPublishedFileID );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUGC.GetItemState( _ptr, nPublishedFileID );
else return Platform.Win64.ISteamUGC.GetItemState( _ptr, nPublishedFileID );
} }
// ItemUpdateStatus // ItemUpdateStatus
public ItemUpdateStatus GetItemUpdateProgress( UGCUpdateHandle_t handle /*UGCUpdateHandle_t*/, out ulong punBytesProcessed /*uint64 **/, out ulong punBytesTotal /*uint64 **/ ) public ItemUpdateStatus GetItemUpdateProgress( UGCUpdateHandle_t handle /*UGCUpdateHandle_t*/, out ulong punBytesProcessed /*uint64 **/, out ulong punBytesTotal /*uint64 **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUGC_GetItemUpdateProgress( handle, out punBytesProcessed, out punBytesTotal );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUGC.GetItemUpdateProgress( _ptr, handle, out punBytesProcessed, out punBytesTotal );
else return Platform.Win64.ISteamUGC.GetItemUpdateProgress( _ptr, handle, out punBytesProcessed, out punBytesTotal );
} }
// uint // uint
public uint GetNumSubscribedItems() public uint GetNumSubscribedItems()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUGC_GetNumSubscribedItems();
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUGC.GetNumSubscribedItems( _ptr );
else return Platform.Win64.ISteamUGC.GetNumSubscribedItems( _ptr );
} }
// bool // bool
@ -193,8 +144,6 @@ namespace SteamNative
// with: Detect_StringFetch False // with: Detect_StringFetch False
public bool GetQueryUGCAdditionalPreview( UGCQueryHandle_t handle /*UGCQueryHandle_t*/, uint index /*uint32*/, uint previewIndex /*uint32*/, out string pchURLOrVideoID /*char **/, out string pchOriginalFileName /*char **/, out ItemPreviewType pPreviewType /*EItemPreviewType **/ ) public bool GetQueryUGCAdditionalPreview( UGCQueryHandle_t handle /*UGCQueryHandle_t*/, uint index /*uint32*/, uint previewIndex /*uint32*/, out string pchURLOrVideoID /*char **/, out string pchOriginalFileName /*char **/, out ItemPreviewType pPreviewType /*EItemPreviewType **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); //
bool bSuccess = default( bool ); bool bSuccess = default( bool );
pchURLOrVideoID = string.Empty; pchURLOrVideoID = string.Empty;
System.Text.StringBuilder pchURLOrVideoID_sb = new System.Text.StringBuilder( 4096 ); System.Text.StringBuilder pchURLOrVideoID_sb = new System.Text.StringBuilder( 4096 );
@ -202,8 +151,7 @@ namespace SteamNative
pchOriginalFileName = string.Empty; pchOriginalFileName = string.Empty;
System.Text.StringBuilder pchOriginalFileName_sb = new System.Text.StringBuilder( 4096 ); System.Text.StringBuilder pchOriginalFileName_sb = new System.Text.StringBuilder( 4096 );
uint cchOriginalFileNameSize = 4096; uint cchOriginalFileNameSize = 4096;
if ( Platform.IsWindows32 ) bSuccess = Platform.Win32.ISteamUGC.GetQueryUGCAdditionalPreview( _ptr, handle, index, previewIndex, pchURLOrVideoID_sb, cchURLSize, pchOriginalFileName_sb, cchOriginalFileNameSize, out pPreviewType ); bSuccess = _pi.ISteamUGC_GetQueryUGCAdditionalPreview( handle, index, previewIndex, pchURLOrVideoID_sb, cchURLSize, pchOriginalFileName_sb, cchOriginalFileNameSize, out pPreviewType );
else bSuccess = Platform.Win64.ISteamUGC.GetQueryUGCAdditionalPreview( _ptr, handle, index, previewIndex, pchURLOrVideoID_sb, cchURLSize, pchOriginalFileName_sb, cchOriginalFileNameSize, out pPreviewType );
if ( !bSuccess ) return bSuccess; if ( !bSuccess ) return bSuccess;
pchOriginalFileName = pchOriginalFileName_sb.ToString(); pchOriginalFileName = pchOriginalFileName_sb.ToString();
if ( !bSuccess ) return bSuccess; if ( !bSuccess ) return bSuccess;
@ -214,10 +162,7 @@ namespace SteamNative
// bool // bool
public bool GetQueryUGCChildren( UGCQueryHandle_t handle /*UGCQueryHandle_t*/, uint index /*uint32*/, PublishedFileId_t* pvecPublishedFileID /*PublishedFileId_t **/, uint cMaxEntries /*uint32*/ ) public bool GetQueryUGCChildren( UGCQueryHandle_t handle /*UGCQueryHandle_t*/, uint index /*uint32*/, PublishedFileId_t* pvecPublishedFileID /*PublishedFileId_t **/, uint cMaxEntries /*uint32*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUGC_GetQueryUGCChildren( handle, index, (IntPtr) pvecPublishedFileID, cMaxEntries );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUGC.GetQueryUGCChildren( _ptr, handle, index, (IntPtr) pvecPublishedFileID, cMaxEntries );
else return Platform.Win64.ISteamUGC.GetQueryUGCChildren( _ptr, handle, index, (IntPtr) pvecPublishedFileID, cMaxEntries );
} }
// bool // bool
@ -225,8 +170,6 @@ namespace SteamNative
// with: Detect_StringFetch False // with: Detect_StringFetch False
public bool GetQueryUGCKeyValueTag( UGCQueryHandle_t handle /*UGCQueryHandle_t*/, uint index /*uint32*/, uint keyValueTagIndex /*uint32*/, out string pchKey /*char **/, out string pchValue /*char **/ ) public bool GetQueryUGCKeyValueTag( UGCQueryHandle_t handle /*UGCQueryHandle_t*/, uint index /*uint32*/, uint keyValueTagIndex /*uint32*/, out string pchKey /*char **/, out string pchValue /*char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); //
bool bSuccess = default( bool ); bool bSuccess = default( bool );
pchKey = string.Empty; pchKey = string.Empty;
System.Text.StringBuilder pchKey_sb = new System.Text.StringBuilder( 4096 ); System.Text.StringBuilder pchKey_sb = new System.Text.StringBuilder( 4096 );
@ -234,8 +177,7 @@ namespace SteamNative
pchValue = string.Empty; pchValue = string.Empty;
System.Text.StringBuilder pchValue_sb = new System.Text.StringBuilder( 4096 ); System.Text.StringBuilder pchValue_sb = new System.Text.StringBuilder( 4096 );
uint cchValueSize = 4096; uint cchValueSize = 4096;
if ( Platform.IsWindows32 ) bSuccess = Platform.Win32.ISteamUGC.GetQueryUGCKeyValueTag( _ptr, handle, index, keyValueTagIndex, pchKey_sb, cchKeySize, pchValue_sb, cchValueSize ); bSuccess = _pi.ISteamUGC_GetQueryUGCKeyValueTag( handle, index, keyValueTagIndex, pchKey_sb, cchKeySize, pchValue_sb, cchValueSize );
else bSuccess = Platform.Win64.ISteamUGC.GetQueryUGCKeyValueTag( _ptr, handle, index, keyValueTagIndex, pchKey_sb, cchKeySize, pchValue_sb, cchValueSize );
if ( !bSuccess ) return bSuccess; if ( !bSuccess ) return bSuccess;
pchValue = pchValue_sb.ToString(); pchValue = pchValue_sb.ToString();
if ( !bSuccess ) return bSuccess; if ( !bSuccess ) return bSuccess;
@ -247,14 +189,11 @@ namespace SteamNative
// with: Detect_StringFetch False // with: Detect_StringFetch False
public bool GetQueryUGCMetadata( UGCQueryHandle_t handle /*UGCQueryHandle_t*/, uint index /*uint32*/, out string pchMetadata /*char **/ ) public bool GetQueryUGCMetadata( UGCQueryHandle_t handle /*UGCQueryHandle_t*/, uint index /*uint32*/, out string pchMetadata /*char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); //
bool bSuccess = default( bool ); bool bSuccess = default( bool );
pchMetadata = string.Empty; pchMetadata = string.Empty;
System.Text.StringBuilder pchMetadata_sb = new System.Text.StringBuilder( 4096 ); System.Text.StringBuilder pchMetadata_sb = new System.Text.StringBuilder( 4096 );
uint cchMetadatasize = 4096; uint cchMetadatasize = 4096;
if ( Platform.IsWindows32 ) bSuccess = Platform.Win32.ISteamUGC.GetQueryUGCMetadata( _ptr, handle, index, pchMetadata_sb, cchMetadatasize ); bSuccess = _pi.ISteamUGC_GetQueryUGCMetadata( handle, index, pchMetadata_sb, cchMetadatasize );
else bSuccess = Platform.Win64.ISteamUGC.GetQueryUGCMetadata( _ptr, handle, index, pchMetadata_sb, cchMetadatasize );
if ( !bSuccess ) return bSuccess; if ( !bSuccess ) return bSuccess;
pchMetadata = pchMetadata_sb.ToString(); pchMetadata = pchMetadata_sb.ToString();
return bSuccess; return bSuccess;
@ -263,33 +202,24 @@ namespace SteamNative
// uint // uint
public uint GetQueryUGCNumAdditionalPreviews( UGCQueryHandle_t handle /*UGCQueryHandle_t*/, uint index /*uint32*/ ) public uint GetQueryUGCNumAdditionalPreviews( UGCQueryHandle_t handle /*UGCQueryHandle_t*/, uint index /*uint32*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUGC_GetQueryUGCNumAdditionalPreviews( handle, index );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUGC.GetQueryUGCNumAdditionalPreviews( _ptr, handle, index );
else return Platform.Win64.ISteamUGC.GetQueryUGCNumAdditionalPreviews( _ptr, handle, index );
} }
// uint // uint
public uint GetQueryUGCNumKeyValueTags( UGCQueryHandle_t handle /*UGCQueryHandle_t*/, uint index /*uint32*/ ) public uint GetQueryUGCNumKeyValueTags( UGCQueryHandle_t handle /*UGCQueryHandle_t*/, uint index /*uint32*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUGC_GetQueryUGCNumKeyValueTags( handle, index );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUGC.GetQueryUGCNumKeyValueTags( _ptr, handle, index );
else return Platform.Win64.ISteamUGC.GetQueryUGCNumKeyValueTags( _ptr, handle, index );
} }
// bool // bool
// with: Detect_StringFetch False // with: Detect_StringFetch False
public bool GetQueryUGCPreviewURL( UGCQueryHandle_t handle /*UGCQueryHandle_t*/, uint index /*uint32*/, out string pchURL /*char **/ ) public bool GetQueryUGCPreviewURL( UGCQueryHandle_t handle /*UGCQueryHandle_t*/, uint index /*uint32*/, out string pchURL /*char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); //
bool bSuccess = default( bool ); bool bSuccess = default( bool );
pchURL = string.Empty; pchURL = string.Empty;
System.Text.StringBuilder pchURL_sb = new System.Text.StringBuilder( 4096 ); System.Text.StringBuilder pchURL_sb = new System.Text.StringBuilder( 4096 );
uint cchURLSize = 4096; uint cchURLSize = 4096;
if ( Platform.IsWindows32 ) bSuccess = Platform.Win32.ISteamUGC.GetQueryUGCPreviewURL( _ptr, handle, index, pchURL_sb, cchURLSize ); bSuccess = _pi.ISteamUGC_GetQueryUGCPreviewURL( handle, index, pchURL_sb, cchURLSize );
else bSuccess = Platform.Win64.ISteamUGC.GetQueryUGCPreviewURL( _ptr, handle, index, pchURL_sb, cchURLSize );
if ( !bSuccess ) return bSuccess; if ( !bSuccess ) return bSuccess;
pchURL = pchURL_sb.ToString(); pchURL = pchURL_sb.ToString();
return bSuccess; return bSuccess;
@ -298,343 +228,229 @@ namespace SteamNative
// bool // bool
public bool GetQueryUGCResult( UGCQueryHandle_t handle /*UGCQueryHandle_t*/, uint index /*uint32*/, ref SteamUGCDetails_t pDetails /*struct SteamUGCDetails_t **/ ) public bool GetQueryUGCResult( UGCQueryHandle_t handle /*UGCQueryHandle_t*/, uint index /*uint32*/, ref SteamUGCDetails_t pDetails /*struct SteamUGCDetails_t **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUGC_GetQueryUGCResult( handle, index, ref pDetails );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUGC.GetQueryUGCResult( _ptr, handle, index, ref pDetails );
else return Platform.Win64.ISteamUGC.GetQueryUGCResult( _ptr, handle, index, ref pDetails );
} }
// bool // bool
public bool GetQueryUGCStatistic( UGCQueryHandle_t handle /*UGCQueryHandle_t*/, uint index /*uint32*/, ItemStatistic eStatType /*EItemStatistic*/, out uint pStatValue /*uint32 **/ ) public bool GetQueryUGCStatistic( UGCQueryHandle_t handle /*UGCQueryHandle_t*/, uint index /*uint32*/, ItemStatistic eStatType /*EItemStatistic*/, out uint pStatValue /*uint32 **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUGC_GetQueryUGCStatistic( handle, index, eStatType, out pStatValue );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUGC.GetQueryUGCStatistic( _ptr, handle, index, eStatType, out pStatValue );
else return Platform.Win64.ISteamUGC.GetQueryUGCStatistic( _ptr, handle, index, eStatType, out pStatValue );
} }
// uint // uint
public uint GetSubscribedItems( PublishedFileId_t* pvecPublishedFileID /*PublishedFileId_t **/, uint cMaxEntries /*uint32*/ ) public uint GetSubscribedItems( PublishedFileId_t* pvecPublishedFileID /*PublishedFileId_t **/, uint cMaxEntries /*uint32*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUGC_GetSubscribedItems( (IntPtr) pvecPublishedFileID, cMaxEntries );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUGC.GetSubscribedItems( _ptr, (IntPtr) pvecPublishedFileID, cMaxEntries );
else return Platform.Win64.ISteamUGC.GetSubscribedItems( _ptr, (IntPtr) pvecPublishedFileID, cMaxEntries );
} }
// SteamAPICall_t // SteamAPICall_t
public SteamAPICall_t GetUserItemVote( PublishedFileId_t nPublishedFileID /*PublishedFileId_t*/ ) public SteamAPICall_t GetUserItemVote( PublishedFileId_t nPublishedFileID /*PublishedFileId_t*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUGC_GetUserItemVote( nPublishedFileID );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUGC.GetUserItemVote( _ptr, nPublishedFileID );
else return Platform.Win64.ISteamUGC.GetUserItemVote( _ptr, nPublishedFileID );
} }
// bool // bool
public bool ReleaseQueryUGCRequest( UGCQueryHandle_t handle /*UGCQueryHandle_t*/ ) public bool ReleaseQueryUGCRequest( UGCQueryHandle_t handle /*UGCQueryHandle_t*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUGC_ReleaseQueryUGCRequest( handle );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUGC.ReleaseQueryUGCRequest( _ptr, handle );
else return Platform.Win64.ISteamUGC.ReleaseQueryUGCRequest( _ptr, handle );
} }
// SteamAPICall_t // SteamAPICall_t
public SteamAPICall_t RemoveItemFromFavorites( AppId_t nAppId /*AppId_t*/, PublishedFileId_t nPublishedFileID /*PublishedFileId_t*/ ) public SteamAPICall_t RemoveItemFromFavorites( AppId_t nAppId /*AppId_t*/, PublishedFileId_t nPublishedFileID /*PublishedFileId_t*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUGC_RemoveItemFromFavorites( nAppId, nPublishedFileID );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUGC.RemoveItemFromFavorites( _ptr, nAppId, nPublishedFileID );
else return Platform.Win64.ISteamUGC.RemoveItemFromFavorites( _ptr, nAppId, nPublishedFileID );
} }
// bool // bool
public bool RemoveItemKeyValueTags( UGCUpdateHandle_t handle /*UGCUpdateHandle_t*/, string pchKey /*const char **/ ) public bool RemoveItemKeyValueTags( UGCUpdateHandle_t handle /*UGCUpdateHandle_t*/, string pchKey /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUGC_RemoveItemKeyValueTags( handle, pchKey );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUGC.RemoveItemKeyValueTags( _ptr, handle, pchKey );
else return Platform.Win64.ISteamUGC.RemoveItemKeyValueTags( _ptr, handle, pchKey );
} }
// bool // bool
public bool RemoveItemPreview( UGCUpdateHandle_t handle /*UGCUpdateHandle_t*/, uint index /*uint32*/ ) public bool RemoveItemPreview( UGCUpdateHandle_t handle /*UGCUpdateHandle_t*/, uint index /*uint32*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUGC_RemoveItemPreview( handle, index );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUGC.RemoveItemPreview( _ptr, handle, index );
else return Platform.Win64.ISteamUGC.RemoveItemPreview( _ptr, handle, index );
} }
// SteamAPICall_t // SteamAPICall_t
public SteamAPICall_t RequestUGCDetails( PublishedFileId_t nPublishedFileID /*PublishedFileId_t*/, uint unMaxAgeSeconds /*uint32*/ ) public SteamAPICall_t RequestUGCDetails( PublishedFileId_t nPublishedFileID /*PublishedFileId_t*/, uint unMaxAgeSeconds /*uint32*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUGC_RequestUGCDetails( nPublishedFileID, unMaxAgeSeconds );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUGC.RequestUGCDetails( _ptr, nPublishedFileID, unMaxAgeSeconds );
else return Platform.Win64.ISteamUGC.RequestUGCDetails( _ptr, nPublishedFileID, unMaxAgeSeconds );
} }
// SteamAPICall_t // SteamAPICall_t
public SteamAPICall_t SendQueryUGCRequest( UGCQueryHandle_t handle /*UGCQueryHandle_t*/ ) public SteamAPICall_t SendQueryUGCRequest( UGCQueryHandle_t handle /*UGCQueryHandle_t*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUGC_SendQueryUGCRequest( handle );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUGC.SendQueryUGCRequest( _ptr, handle );
else return Platform.Win64.ISteamUGC.SendQueryUGCRequest( _ptr, handle );
} }
// bool // bool
public bool SetAllowCachedResponse( UGCQueryHandle_t handle /*UGCQueryHandle_t*/, uint unMaxAgeSeconds /*uint32*/ ) public bool SetAllowCachedResponse( UGCQueryHandle_t handle /*UGCQueryHandle_t*/, uint unMaxAgeSeconds /*uint32*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUGC_SetAllowCachedResponse( handle, unMaxAgeSeconds );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUGC.SetAllowCachedResponse( _ptr, handle, unMaxAgeSeconds );
else return Platform.Win64.ISteamUGC.SetAllowCachedResponse( _ptr, handle, unMaxAgeSeconds );
} }
// bool // bool
public bool SetCloudFileNameFilter( UGCQueryHandle_t handle /*UGCQueryHandle_t*/, string pMatchCloudFileName /*const char **/ ) public bool SetCloudFileNameFilter( UGCQueryHandle_t handle /*UGCQueryHandle_t*/, string pMatchCloudFileName /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUGC_SetCloudFileNameFilter( handle, pMatchCloudFileName );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUGC.SetCloudFileNameFilter( _ptr, handle, pMatchCloudFileName );
else return Platform.Win64.ISteamUGC.SetCloudFileNameFilter( _ptr, handle, pMatchCloudFileName );
} }
// bool // bool
public bool SetItemContent( UGCUpdateHandle_t handle /*UGCUpdateHandle_t*/, string pszContentFolder /*const char **/ ) public bool SetItemContent( UGCUpdateHandle_t handle /*UGCUpdateHandle_t*/, string pszContentFolder /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUGC_SetItemContent( handle, pszContentFolder );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUGC.SetItemContent( _ptr, handle, pszContentFolder );
else return Platform.Win64.ISteamUGC.SetItemContent( _ptr, handle, pszContentFolder );
} }
// bool // bool
public bool SetItemDescription( UGCUpdateHandle_t handle /*UGCUpdateHandle_t*/, string pchDescription /*const char **/ ) public bool SetItemDescription( UGCUpdateHandle_t handle /*UGCUpdateHandle_t*/, string pchDescription /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUGC_SetItemDescription( handle, pchDescription );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUGC.SetItemDescription( _ptr, handle, pchDescription );
else return Platform.Win64.ISteamUGC.SetItemDescription( _ptr, handle, pchDescription );
} }
// bool // bool
public bool SetItemMetadata( UGCUpdateHandle_t handle /*UGCUpdateHandle_t*/, string pchMetaData /*const char **/ ) public bool SetItemMetadata( UGCUpdateHandle_t handle /*UGCUpdateHandle_t*/, string pchMetaData /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUGC_SetItemMetadata( handle, pchMetaData );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUGC.SetItemMetadata( _ptr, handle, pchMetaData );
else return Platform.Win64.ISteamUGC.SetItemMetadata( _ptr, handle, pchMetaData );
} }
// bool // bool
public bool SetItemPreview( UGCUpdateHandle_t handle /*UGCUpdateHandle_t*/, string pszPreviewFile /*const char **/ ) public bool SetItemPreview( UGCUpdateHandle_t handle /*UGCUpdateHandle_t*/, string pszPreviewFile /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUGC_SetItemPreview( handle, pszPreviewFile );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUGC.SetItemPreview( _ptr, handle, pszPreviewFile );
else return Platform.Win64.ISteamUGC.SetItemPreview( _ptr, handle, pszPreviewFile );
} }
// bool // bool
public bool SetItemTags( UGCUpdateHandle_t updateHandle /*UGCUpdateHandle_t*/, IntPtr pTags /*const struct SteamParamStringArray_t **/ ) public bool SetItemTags( UGCUpdateHandle_t updateHandle /*UGCUpdateHandle_t*/, IntPtr pTags /*const struct SteamParamStringArray_t **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUGC_SetItemTags( updateHandle, (IntPtr) pTags );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUGC.SetItemTags( _ptr, updateHandle, (IntPtr) pTags );
else return Platform.Win64.ISteamUGC.SetItemTags( _ptr, updateHandle, (IntPtr) pTags );
} }
// bool // bool
public bool SetItemTitle( UGCUpdateHandle_t handle /*UGCUpdateHandle_t*/, string pchTitle /*const char **/ ) public bool SetItemTitle( UGCUpdateHandle_t handle /*UGCUpdateHandle_t*/, string pchTitle /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUGC_SetItemTitle( handle, pchTitle );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUGC.SetItemTitle( _ptr, handle, pchTitle );
else return Platform.Win64.ISteamUGC.SetItemTitle( _ptr, handle, pchTitle );
} }
// bool // bool
public bool SetItemUpdateLanguage( UGCUpdateHandle_t handle /*UGCUpdateHandle_t*/, string pchLanguage /*const char **/ ) public bool SetItemUpdateLanguage( UGCUpdateHandle_t handle /*UGCUpdateHandle_t*/, string pchLanguage /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUGC_SetItemUpdateLanguage( handle, pchLanguage );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUGC.SetItemUpdateLanguage( _ptr, handle, pchLanguage );
else return Platform.Win64.ISteamUGC.SetItemUpdateLanguage( _ptr, handle, pchLanguage );
} }
// bool // bool
public bool SetItemVisibility( UGCUpdateHandle_t handle /*UGCUpdateHandle_t*/, RemoteStoragePublishedFileVisibility eVisibility /*ERemoteStoragePublishedFileVisibility*/ ) public bool SetItemVisibility( UGCUpdateHandle_t handle /*UGCUpdateHandle_t*/, RemoteStoragePublishedFileVisibility eVisibility /*ERemoteStoragePublishedFileVisibility*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUGC_SetItemVisibility( handle, eVisibility );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUGC.SetItemVisibility( _ptr, handle, eVisibility );
else return Platform.Win64.ISteamUGC.SetItemVisibility( _ptr, handle, eVisibility );
} }
// bool // bool
public bool SetLanguage( UGCQueryHandle_t handle /*UGCQueryHandle_t*/, string pchLanguage /*const char **/ ) public bool SetLanguage( UGCQueryHandle_t handle /*UGCQueryHandle_t*/, string pchLanguage /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUGC_SetLanguage( handle, pchLanguage );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUGC.SetLanguage( _ptr, handle, pchLanguage );
else return Platform.Win64.ISteamUGC.SetLanguage( _ptr, handle, pchLanguage );
} }
// bool // bool
public bool SetMatchAnyTag( UGCQueryHandle_t handle /*UGCQueryHandle_t*/, bool bMatchAnyTag /*bool*/ ) public bool SetMatchAnyTag( UGCQueryHandle_t handle /*UGCQueryHandle_t*/, bool bMatchAnyTag /*bool*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUGC_SetMatchAnyTag( handle, bMatchAnyTag );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUGC.SetMatchAnyTag( _ptr, handle, bMatchAnyTag );
else return Platform.Win64.ISteamUGC.SetMatchAnyTag( _ptr, handle, bMatchAnyTag );
} }
// bool // bool
public bool SetRankedByTrendDays( UGCQueryHandle_t handle /*UGCQueryHandle_t*/, uint unDays /*uint32*/ ) public bool SetRankedByTrendDays( UGCQueryHandle_t handle /*UGCQueryHandle_t*/, uint unDays /*uint32*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUGC_SetRankedByTrendDays( handle, unDays );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUGC.SetRankedByTrendDays( _ptr, handle, unDays );
else return Platform.Win64.ISteamUGC.SetRankedByTrendDays( _ptr, handle, unDays );
} }
// bool // bool
public bool SetReturnAdditionalPreviews( UGCQueryHandle_t handle /*UGCQueryHandle_t*/, bool bReturnAdditionalPreviews /*bool*/ ) public bool SetReturnAdditionalPreviews( UGCQueryHandle_t handle /*UGCQueryHandle_t*/, bool bReturnAdditionalPreviews /*bool*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUGC_SetReturnAdditionalPreviews( handle, bReturnAdditionalPreviews );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUGC.SetReturnAdditionalPreviews( _ptr, handle, bReturnAdditionalPreviews );
else return Platform.Win64.ISteamUGC.SetReturnAdditionalPreviews( _ptr, handle, bReturnAdditionalPreviews );
} }
// bool // bool
public bool SetReturnChildren( UGCQueryHandle_t handle /*UGCQueryHandle_t*/, bool bReturnChildren /*bool*/ ) public bool SetReturnChildren( UGCQueryHandle_t handle /*UGCQueryHandle_t*/, bool bReturnChildren /*bool*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUGC_SetReturnChildren( handle, bReturnChildren );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUGC.SetReturnChildren( _ptr, handle, bReturnChildren );
else return Platform.Win64.ISteamUGC.SetReturnChildren( _ptr, handle, bReturnChildren );
} }
// bool // bool
public bool SetReturnKeyValueTags( UGCQueryHandle_t handle /*UGCQueryHandle_t*/, bool bReturnKeyValueTags /*bool*/ ) public bool SetReturnKeyValueTags( UGCQueryHandle_t handle /*UGCQueryHandle_t*/, bool bReturnKeyValueTags /*bool*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUGC_SetReturnKeyValueTags( handle, bReturnKeyValueTags );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUGC.SetReturnKeyValueTags( _ptr, handle, bReturnKeyValueTags );
else return Platform.Win64.ISteamUGC.SetReturnKeyValueTags( _ptr, handle, bReturnKeyValueTags );
} }
// bool // bool
public bool SetReturnLongDescription( UGCQueryHandle_t handle /*UGCQueryHandle_t*/, bool bReturnLongDescription /*bool*/ ) public bool SetReturnLongDescription( UGCQueryHandle_t handle /*UGCQueryHandle_t*/, bool bReturnLongDescription /*bool*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUGC_SetReturnLongDescription( handle, bReturnLongDescription );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUGC.SetReturnLongDescription( _ptr, handle, bReturnLongDescription );
else return Platform.Win64.ISteamUGC.SetReturnLongDescription( _ptr, handle, bReturnLongDescription );
} }
// bool // bool
public bool SetReturnMetadata( UGCQueryHandle_t handle /*UGCQueryHandle_t*/, bool bReturnMetadata /*bool*/ ) public bool SetReturnMetadata( UGCQueryHandle_t handle /*UGCQueryHandle_t*/, bool bReturnMetadata /*bool*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUGC_SetReturnMetadata( handle, bReturnMetadata );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUGC.SetReturnMetadata( _ptr, handle, bReturnMetadata );
else return Platform.Win64.ISteamUGC.SetReturnMetadata( _ptr, handle, bReturnMetadata );
} }
// bool // bool
public bool SetReturnTotalOnly( UGCQueryHandle_t handle /*UGCQueryHandle_t*/, bool bReturnTotalOnly /*bool*/ ) public bool SetReturnTotalOnly( UGCQueryHandle_t handle /*UGCQueryHandle_t*/, bool bReturnTotalOnly /*bool*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUGC_SetReturnTotalOnly( handle, bReturnTotalOnly );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUGC.SetReturnTotalOnly( _ptr, handle, bReturnTotalOnly );
else return Platform.Win64.ISteamUGC.SetReturnTotalOnly( _ptr, handle, bReturnTotalOnly );
} }
// bool // bool
public bool SetSearchText( UGCQueryHandle_t handle /*UGCQueryHandle_t*/, string pSearchText /*const char **/ ) public bool SetSearchText( UGCQueryHandle_t handle /*UGCQueryHandle_t*/, string pSearchText /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUGC_SetSearchText( handle, pSearchText );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUGC.SetSearchText( _ptr, handle, pSearchText );
else return Platform.Win64.ISteamUGC.SetSearchText( _ptr, handle, pSearchText );
} }
// SteamAPICall_t // SteamAPICall_t
public SteamAPICall_t SetUserItemVote( PublishedFileId_t nPublishedFileID /*PublishedFileId_t*/, bool bVoteUp /*bool*/ ) public SteamAPICall_t SetUserItemVote( PublishedFileId_t nPublishedFileID /*PublishedFileId_t*/, bool bVoteUp /*bool*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUGC_SetUserItemVote( nPublishedFileID, bVoteUp );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUGC.SetUserItemVote( _ptr, nPublishedFileID, bVoteUp );
else return Platform.Win64.ISteamUGC.SetUserItemVote( _ptr, nPublishedFileID, bVoteUp );
} }
// UGCUpdateHandle_t // UGCUpdateHandle_t
public UGCUpdateHandle_t StartItemUpdate( AppId_t nConsumerAppId /*AppId_t*/, PublishedFileId_t nPublishedFileID /*PublishedFileId_t*/ ) public UGCUpdateHandle_t StartItemUpdate( AppId_t nConsumerAppId /*AppId_t*/, PublishedFileId_t nPublishedFileID /*PublishedFileId_t*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUGC_StartItemUpdate( nConsumerAppId, nPublishedFileID );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUGC.StartItemUpdate( _ptr, nConsumerAppId, nPublishedFileID );
else return Platform.Win64.ISteamUGC.StartItemUpdate( _ptr, nConsumerAppId, nPublishedFileID );
} }
// SteamAPICall_t // SteamAPICall_t
public SteamAPICall_t SubmitItemUpdate( UGCUpdateHandle_t handle /*UGCUpdateHandle_t*/, string pchChangeNote /*const char **/ ) public SteamAPICall_t SubmitItemUpdate( UGCUpdateHandle_t handle /*UGCUpdateHandle_t*/, string pchChangeNote /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUGC_SubmitItemUpdate( handle, pchChangeNote );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUGC.SubmitItemUpdate( _ptr, handle, pchChangeNote );
else return Platform.Win64.ISteamUGC.SubmitItemUpdate( _ptr, handle, pchChangeNote );
} }
// SteamAPICall_t // SteamAPICall_t
public SteamAPICall_t SubscribeItem( PublishedFileId_t nPublishedFileID /*PublishedFileId_t*/ ) public SteamAPICall_t SubscribeItem( PublishedFileId_t nPublishedFileID /*PublishedFileId_t*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUGC_SubscribeItem( nPublishedFileID );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUGC.SubscribeItem( _ptr, nPublishedFileID );
else return Platform.Win64.ISteamUGC.SubscribeItem( _ptr, nPublishedFileID );
} }
// void // void
public void SuspendDownloads( bool bSuspend /*bool*/ ) public void SuspendDownloads( bool bSuspend /*bool*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamUGC_SuspendDownloads( bSuspend );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamUGC.SuspendDownloads( _ptr, bSuspend );
else Platform.Win64.ISteamUGC.SuspendDownloads( _ptr, bSuspend );
} }
// SteamAPICall_t // SteamAPICall_t
public SteamAPICall_t UnsubscribeItem( PublishedFileId_t nPublishedFileID /*PublishedFileId_t*/ ) public SteamAPICall_t UnsubscribeItem( PublishedFileId_t nPublishedFileID /*PublishedFileId_t*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUGC_UnsubscribeItem( nPublishedFileID );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUGC.UnsubscribeItem( _ptr, nPublishedFileID );
else return Platform.Win64.ISteamUGC.UnsubscribeItem( _ptr, nPublishedFileID );
} }
// bool // bool
public bool UpdateItemPreviewFile( UGCUpdateHandle_t handle /*UGCUpdateHandle_t*/, uint index /*uint32*/, string pszPreviewFile /*const char **/ ) public bool UpdateItemPreviewFile( UGCUpdateHandle_t handle /*UGCUpdateHandle_t*/, uint index /*uint32*/, string pszPreviewFile /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUGC_UpdateItemPreviewFile( handle, index, pszPreviewFile );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUGC.UpdateItemPreviewFile( _ptr, handle, index, pszPreviewFile );
else return Platform.Win64.ISteamUGC.UpdateItemPreviewFile( _ptr, handle, index, pszPreviewFile );
} }
// bool // bool
public bool UpdateItemPreviewVideo( UGCUpdateHandle_t handle /*UGCUpdateHandle_t*/, uint index /*uint32*/, string pszVideoID /*const char **/ ) public bool UpdateItemPreviewVideo( UGCUpdateHandle_t handle /*UGCUpdateHandle_t*/, uint index /*uint32*/, string pszVideoID /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUGC_UpdateItemPreviewVideo( handle, index, pszVideoID );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUGC.UpdateItemPreviewVideo( _ptr, handle, index, pszVideoID );
else return Platform.Win64.ISteamUGC.UpdateItemPreviewVideo( _ptr, handle, index, pszVideoID );
} }
} }

View File

@ -5,57 +5,47 @@ namespace SteamNative
{ {
public unsafe class SteamUnifiedMessages public unsafe class SteamUnifiedMessages
{ {
internal IntPtr _ptr; internal Platform.Interface _pi;
public SteamUnifiedMessages( IntPtr pointer ) public SteamUnifiedMessages( IntPtr pointer )
{ {
_ptr = pointer; if ( Platform.IsWindows64 ) _pi = new Platform.Win64( pointer );
else if ( Platform.IsWindows32 ) _pi = new Platform.Win32( pointer );
else if ( Platform.IsLinux32 ) _pi = new Platform.Linux32( pointer );
else if ( Platform.IsLinux64 ) _pi = new Platform.Linux64( pointer );
else if ( Platform.IsOsx ) _pi = new Platform.Mac( pointer );
} }
public bool IsValid{ get{ return _pi != null && _pi.IsValid; } }
// bool // bool
public bool GetMethodResponseData( ClientUnifiedMessageHandle hHandle /*ClientUnifiedMessageHandle*/, IntPtr pResponseBuffer /*void **/, uint unResponseBufferSize /*uint32*/, bool bAutoRelease /*bool*/ ) public bool GetMethodResponseData( ClientUnifiedMessageHandle hHandle /*ClientUnifiedMessageHandle*/, IntPtr pResponseBuffer /*void **/, uint unResponseBufferSize /*uint32*/, bool bAutoRelease /*bool*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUnifiedMessages_GetMethodResponseData( hHandle, (IntPtr) pResponseBuffer, unResponseBufferSize, bAutoRelease );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUnifiedMessages.GetMethodResponseData( _ptr, hHandle, (IntPtr) pResponseBuffer, unResponseBufferSize, bAutoRelease );
else return Platform.Win64.ISteamUnifiedMessages.GetMethodResponseData( _ptr, hHandle, (IntPtr) pResponseBuffer, unResponseBufferSize, bAutoRelease );
} }
// bool // bool
public bool GetMethodResponseInfo( ClientUnifiedMessageHandle hHandle /*ClientUnifiedMessageHandle*/, out uint punResponseSize /*uint32 **/, out Result peResult /*EResult **/ ) public bool GetMethodResponseInfo( ClientUnifiedMessageHandle hHandle /*ClientUnifiedMessageHandle*/, out uint punResponseSize /*uint32 **/, out Result peResult /*EResult **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUnifiedMessages_GetMethodResponseInfo( hHandle, out punResponseSize, out peResult );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUnifiedMessages.GetMethodResponseInfo( _ptr, hHandle, out punResponseSize, out peResult );
else return Platform.Win64.ISteamUnifiedMessages.GetMethodResponseInfo( _ptr, hHandle, out punResponseSize, out peResult );
} }
// bool // bool
public bool ReleaseMethod( ClientUnifiedMessageHandle hHandle /*ClientUnifiedMessageHandle*/ ) public bool ReleaseMethod( ClientUnifiedMessageHandle hHandle /*ClientUnifiedMessageHandle*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUnifiedMessages_ReleaseMethod( hHandle );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUnifiedMessages.ReleaseMethod( _ptr, hHandle );
else return Platform.Win64.ISteamUnifiedMessages.ReleaseMethod( _ptr, hHandle );
} }
// ClientUnifiedMessageHandle // ClientUnifiedMessageHandle
public ClientUnifiedMessageHandle SendMethod( string pchServiceMethod /*const char **/, IntPtr pRequestBuffer /*const void **/, uint unRequestBufferSize /*uint32*/, ulong unContext /*uint64*/ ) public ClientUnifiedMessageHandle SendMethod( string pchServiceMethod /*const char **/, IntPtr pRequestBuffer /*const void **/, uint unRequestBufferSize /*uint32*/, ulong unContext /*uint64*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUnifiedMessages_SendMethod( pchServiceMethod, (IntPtr) pRequestBuffer, unRequestBufferSize, unContext );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUnifiedMessages.SendMethod( _ptr, pchServiceMethod, (IntPtr) pRequestBuffer, unRequestBufferSize, unContext );
else return Platform.Win64.ISteamUnifiedMessages.SendMethod( _ptr, pchServiceMethod, (IntPtr) pRequestBuffer, unRequestBufferSize, unContext );
} }
// bool // bool
public bool SendNotification( string pchServiceNotification /*const char **/, IntPtr pNotificationBuffer /*const void **/, uint unNotificationBufferSize /*uint32*/ ) public bool SendNotification( string pchServiceNotification /*const char **/, IntPtr pNotificationBuffer /*const void **/, uint unNotificationBufferSize /*uint32*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUnifiedMessages_SendNotification( pchServiceNotification, (IntPtr) pNotificationBuffer, unNotificationBufferSize );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUnifiedMessages.SendNotification( _ptr, pchServiceNotification, (IntPtr) pNotificationBuffer, unNotificationBufferSize );
else return Platform.Win64.ISteamUnifiedMessages.SendNotification( _ptr, pchServiceNotification, (IntPtr) pNotificationBuffer, unNotificationBufferSize );
} }
} }

View File

@ -5,169 +5,123 @@ namespace SteamNative
{ {
public unsafe class SteamUser public unsafe class SteamUser
{ {
internal IntPtr _ptr; internal Platform.Interface _pi;
public SteamUser( IntPtr pointer ) public SteamUser( IntPtr pointer )
{ {
_ptr = pointer; if ( Platform.IsWindows64 ) _pi = new Platform.Win64( pointer );
else if ( Platform.IsWindows32 ) _pi = new Platform.Win32( pointer );
else if ( Platform.IsLinux32 ) _pi = new Platform.Linux32( pointer );
else if ( Platform.IsLinux64 ) _pi = new Platform.Linux64( pointer );
else if ( Platform.IsOsx ) _pi = new Platform.Mac( pointer );
} }
public bool IsValid{ get{ return _pi != null && _pi.IsValid; } }
// void // void
public void AdvertiseGame( CSteamID steamIDGameServer /*class CSteamID*/, uint unIPServer /*uint32*/, ushort usPortServer /*uint16*/ ) public void AdvertiseGame( CSteamID steamIDGameServer /*class CSteamID*/, uint unIPServer /*uint32*/, ushort usPortServer /*uint16*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamUser_AdvertiseGame( steamIDGameServer, unIPServer, usPortServer );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamUser.AdvertiseGame( _ptr, steamIDGameServer, unIPServer, usPortServer );
else Platform.Win64.ISteamUser.AdvertiseGame( _ptr, steamIDGameServer, unIPServer, usPortServer );
} }
// BeginAuthSessionResult // BeginAuthSessionResult
public BeginAuthSessionResult BeginAuthSession( IntPtr pAuthTicket /*const void **/, int cbAuthTicket /*int*/, CSteamID steamID /*class CSteamID*/ ) public BeginAuthSessionResult BeginAuthSession( IntPtr pAuthTicket /*const void **/, int cbAuthTicket /*int*/, CSteamID steamID /*class CSteamID*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUser_BeginAuthSession( (IntPtr) pAuthTicket, cbAuthTicket, steamID );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUser.BeginAuthSession( _ptr, (IntPtr) pAuthTicket, cbAuthTicket, steamID );
else return Platform.Win64.ISteamUser.BeginAuthSession( _ptr, (IntPtr) pAuthTicket, cbAuthTicket, steamID );
} }
// bool // bool
public bool BIsBehindNAT() public bool BIsBehindNAT()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUser_BIsBehindNAT();
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUser.BIsBehindNAT( _ptr );
else return Platform.Win64.ISteamUser.BIsBehindNAT( _ptr );
} }
// bool // bool
public bool BIsPhoneVerified() public bool BIsPhoneVerified()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUser_BIsPhoneVerified();
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUser.BIsPhoneVerified( _ptr );
else return Platform.Win64.ISteamUser.BIsPhoneVerified( _ptr );
} }
// bool // bool
public bool BIsTwoFactorEnabled() public bool BIsTwoFactorEnabled()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUser_BIsTwoFactorEnabled();
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUser.BIsTwoFactorEnabled( _ptr );
else return Platform.Win64.ISteamUser.BIsTwoFactorEnabled( _ptr );
} }
// bool // bool
public bool BLoggedOn() public bool BLoggedOn()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUser_BLoggedOn();
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUser.BLoggedOn( _ptr );
else return Platform.Win64.ISteamUser.BLoggedOn( _ptr );
} }
// void // void
public void CancelAuthTicket( HAuthTicket hAuthTicket /*HAuthTicket*/ ) public void CancelAuthTicket( HAuthTicket hAuthTicket /*HAuthTicket*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamUser_CancelAuthTicket( hAuthTicket );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamUser.CancelAuthTicket( _ptr, hAuthTicket );
else Platform.Win64.ISteamUser.CancelAuthTicket( _ptr, hAuthTicket );
} }
// VoiceResult // VoiceResult
public VoiceResult DecompressVoice( IntPtr pCompressed /*const void **/, uint cbCompressed /*uint32*/, IntPtr pDestBuffer /*void **/, uint cbDestBufferSize /*uint32*/, out uint nBytesWritten /*uint32 **/, uint nDesiredSampleRate /*uint32*/ ) public VoiceResult DecompressVoice( IntPtr pCompressed /*const void **/, uint cbCompressed /*uint32*/, IntPtr pDestBuffer /*void **/, uint cbDestBufferSize /*uint32*/, out uint nBytesWritten /*uint32 **/, uint nDesiredSampleRate /*uint32*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUser_DecompressVoice( (IntPtr) pCompressed, cbCompressed, (IntPtr) pDestBuffer, cbDestBufferSize, out nBytesWritten, nDesiredSampleRate );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUser.DecompressVoice( _ptr, (IntPtr) pCompressed, cbCompressed, (IntPtr) pDestBuffer, cbDestBufferSize, out nBytesWritten, nDesiredSampleRate );
else return Platform.Win64.ISteamUser.DecompressVoice( _ptr, (IntPtr) pCompressed, cbCompressed, (IntPtr) pDestBuffer, cbDestBufferSize, out nBytesWritten, nDesiredSampleRate );
} }
// void // void
public void EndAuthSession( CSteamID steamID /*class CSteamID*/ ) public void EndAuthSession( CSteamID steamID /*class CSteamID*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamUser_EndAuthSession( steamID );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamUser.EndAuthSession( _ptr, steamID );
else Platform.Win64.ISteamUser.EndAuthSession( _ptr, steamID );
} }
// HAuthTicket // HAuthTicket
public HAuthTicket GetAuthSessionTicket( IntPtr pTicket /*void **/, int cbMaxTicket /*int*/, out uint pcbTicket /*uint32 **/ ) public HAuthTicket GetAuthSessionTicket( IntPtr pTicket /*void **/, int cbMaxTicket /*int*/, out uint pcbTicket /*uint32 **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUser_GetAuthSessionTicket( (IntPtr) pTicket, cbMaxTicket, out pcbTicket );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUser.GetAuthSessionTicket( _ptr, (IntPtr) pTicket, cbMaxTicket, out pcbTicket );
else return Platform.Win64.ISteamUser.GetAuthSessionTicket( _ptr, (IntPtr) pTicket, cbMaxTicket, out pcbTicket );
} }
// VoiceResult // VoiceResult
public VoiceResult GetAvailableVoice( out uint pcbCompressed /*uint32 **/, out uint pcbUncompressed /*uint32 **/, uint nUncompressedVoiceDesiredSampleRate /*uint32*/ ) public VoiceResult GetAvailableVoice( out uint pcbCompressed /*uint32 **/, out uint pcbUncompressed /*uint32 **/, uint nUncompressedVoiceDesiredSampleRate /*uint32*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUser_GetAvailableVoice( out pcbCompressed, out pcbUncompressed, nUncompressedVoiceDesiredSampleRate );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUser.GetAvailableVoice( _ptr, out pcbCompressed, out pcbUncompressed, nUncompressedVoiceDesiredSampleRate );
else return Platform.Win64.ISteamUser.GetAvailableVoice( _ptr, out pcbCompressed, out pcbUncompressed, nUncompressedVoiceDesiredSampleRate );
} }
// bool // bool
public bool GetEncryptedAppTicket( IntPtr pTicket /*void **/, int cbMaxTicket /*int*/, out uint pcbTicket /*uint32 **/ ) public bool GetEncryptedAppTicket( IntPtr pTicket /*void **/, int cbMaxTicket /*int*/, out uint pcbTicket /*uint32 **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUser_GetEncryptedAppTicket( (IntPtr) pTicket, cbMaxTicket, out pcbTicket );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUser.GetEncryptedAppTicket( _ptr, (IntPtr) pTicket, cbMaxTicket, out pcbTicket );
else return Platform.Win64.ISteamUser.GetEncryptedAppTicket( _ptr, (IntPtr) pTicket, cbMaxTicket, out pcbTicket );
} }
// int // int
public int GetGameBadgeLevel( int nSeries /*int*/, bool bFoil /*bool*/ ) public int GetGameBadgeLevel( int nSeries /*int*/, bool bFoil /*bool*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUser_GetGameBadgeLevel( nSeries, bFoil );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUser.GetGameBadgeLevel( _ptr, nSeries, bFoil );
else return Platform.Win64.ISteamUser.GetGameBadgeLevel( _ptr, nSeries, bFoil );
} }
// HSteamUser // HSteamUser
public HSteamUser GetHSteamUser() public HSteamUser GetHSteamUser()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUser_GetHSteamUser();
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUser.GetHSteamUser( _ptr );
else return Platform.Win64.ISteamUser.GetHSteamUser( _ptr );
} }
// int // int
public int GetPlayerSteamLevel() public int GetPlayerSteamLevel()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUser_GetPlayerSteamLevel();
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUser.GetPlayerSteamLevel( _ptr );
else return Platform.Win64.ISteamUser.GetPlayerSteamLevel( _ptr );
} }
// ulong // ulong
public ulong GetSteamID() public ulong GetSteamID()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUser_GetSteamID();
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUser.GetSteamID( _ptr );
else return Platform.Win64.ISteamUser.GetSteamID( _ptr );
} }
// bool // bool
// with: Detect_StringFetch True // with: Detect_StringFetch True
public string GetUserDataFolder() public string GetUserDataFolder()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); //
bool bSuccess = default( bool ); bool bSuccess = default( bool );
System.Text.StringBuilder pchBuffer_sb = new System.Text.StringBuilder( 4096 ); System.Text.StringBuilder pchBuffer_sb = new System.Text.StringBuilder( 4096 );
int cubBuffer = 4096; int cubBuffer = 4096;
if ( Platform.IsWindows32 ) bSuccess = Platform.Win32.ISteamUser.GetUserDataFolder( _ptr, pchBuffer_sb, cubBuffer ); bSuccess = _pi.ISteamUser_GetUserDataFolder( pchBuffer_sb, cubBuffer );
else bSuccess = Platform.Win64.ISteamUser.GetUserDataFolder( _ptr, pchBuffer_sb, cubBuffer );
if ( !bSuccess ) return null; if ( !bSuccess ) return null;
return pchBuffer_sb.ToString(); return pchBuffer_sb.ToString();
} }
@ -175,91 +129,61 @@ namespace SteamNative
// VoiceResult // VoiceResult
public VoiceResult GetVoice( bool bWantCompressed /*bool*/, IntPtr pDestBuffer /*void **/, uint cbDestBufferSize /*uint32*/, out uint nBytesWritten /*uint32 **/, bool bWantUncompressed /*bool*/, IntPtr pUncompressedDestBuffer /*void **/, uint cbUncompressedDestBufferSize /*uint32*/, out uint nUncompressBytesWritten /*uint32 **/, uint nUncompressedVoiceDesiredSampleRate /*uint32*/ ) public VoiceResult GetVoice( bool bWantCompressed /*bool*/, IntPtr pDestBuffer /*void **/, uint cbDestBufferSize /*uint32*/, out uint nBytesWritten /*uint32 **/, bool bWantUncompressed /*bool*/, IntPtr pUncompressedDestBuffer /*void **/, uint cbUncompressedDestBufferSize /*uint32*/, out uint nUncompressBytesWritten /*uint32 **/, uint nUncompressedVoiceDesiredSampleRate /*uint32*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUser_GetVoice( bWantCompressed, (IntPtr) pDestBuffer, cbDestBufferSize, out nBytesWritten, bWantUncompressed, (IntPtr) pUncompressedDestBuffer, cbUncompressedDestBufferSize, out nUncompressBytesWritten, nUncompressedVoiceDesiredSampleRate );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUser.GetVoice( _ptr, bWantCompressed, (IntPtr) pDestBuffer, cbDestBufferSize, out nBytesWritten, bWantUncompressed, (IntPtr) pUncompressedDestBuffer, cbUncompressedDestBufferSize, out nUncompressBytesWritten, nUncompressedVoiceDesiredSampleRate );
else return Platform.Win64.ISteamUser.GetVoice( _ptr, bWantCompressed, (IntPtr) pDestBuffer, cbDestBufferSize, out nBytesWritten, bWantUncompressed, (IntPtr) pUncompressedDestBuffer, cbUncompressedDestBufferSize, out nUncompressBytesWritten, nUncompressedVoiceDesiredSampleRate );
} }
// uint // uint
public uint GetVoiceOptimalSampleRate() public uint GetVoiceOptimalSampleRate()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUser_GetVoiceOptimalSampleRate();
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUser.GetVoiceOptimalSampleRate( _ptr );
else return Platform.Win64.ISteamUser.GetVoiceOptimalSampleRate( _ptr );
} }
// int // int
public int InitiateGameConnection( IntPtr pAuthBlob /*void **/, int cbMaxAuthBlob /*int*/, CSteamID steamIDGameServer /*class CSteamID*/, uint unIPServer /*uint32*/, ushort usPortServer /*uint16*/, bool bSecure /*bool*/ ) public int InitiateGameConnection( IntPtr pAuthBlob /*void **/, int cbMaxAuthBlob /*int*/, CSteamID steamIDGameServer /*class CSteamID*/, uint unIPServer /*uint32*/, ushort usPortServer /*uint16*/, bool bSecure /*bool*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUser_InitiateGameConnection( (IntPtr) pAuthBlob, cbMaxAuthBlob, steamIDGameServer, unIPServer, usPortServer, bSecure );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUser.InitiateGameConnection( _ptr, (IntPtr) pAuthBlob, cbMaxAuthBlob, steamIDGameServer, unIPServer, usPortServer, bSecure );
else return Platform.Win64.ISteamUser.InitiateGameConnection( _ptr, (IntPtr) pAuthBlob, cbMaxAuthBlob, steamIDGameServer, unIPServer, usPortServer, bSecure );
} }
// SteamAPICall_t // SteamAPICall_t
public SteamAPICall_t RequestEncryptedAppTicket( IntPtr pDataToInclude /*void **/, int cbDataToInclude /*int*/ ) public SteamAPICall_t RequestEncryptedAppTicket( IntPtr pDataToInclude /*void **/, int cbDataToInclude /*int*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUser_RequestEncryptedAppTicket( (IntPtr) pDataToInclude, cbDataToInclude );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUser.RequestEncryptedAppTicket( _ptr, (IntPtr) pDataToInclude, cbDataToInclude );
else return Platform.Win64.ISteamUser.RequestEncryptedAppTicket( _ptr, (IntPtr) pDataToInclude, cbDataToInclude );
} }
// SteamAPICall_t // SteamAPICall_t
public SteamAPICall_t RequestStoreAuthURL( string pchRedirectURL /*const char **/ ) public SteamAPICall_t RequestStoreAuthURL( string pchRedirectURL /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUser_RequestStoreAuthURL( pchRedirectURL );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUser.RequestStoreAuthURL( _ptr, pchRedirectURL );
else return Platform.Win64.ISteamUser.RequestStoreAuthURL( _ptr, pchRedirectURL );
} }
// void // void
public void StartVoiceRecording() public void StartVoiceRecording()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamUser_StartVoiceRecording();
if ( Platform.IsWindows32 ) Platform.Win32.ISteamUser.StartVoiceRecording( _ptr );
else Platform.Win64.ISteamUser.StartVoiceRecording( _ptr );
} }
// void // void
public void StopVoiceRecording() public void StopVoiceRecording()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamUser_StopVoiceRecording();
if ( Platform.IsWindows32 ) Platform.Win32.ISteamUser.StopVoiceRecording( _ptr );
else Platform.Win64.ISteamUser.StopVoiceRecording( _ptr );
} }
// void // void
public void TerminateGameConnection( uint unIPServer /*uint32*/, ushort usPortServer /*uint16*/ ) public void TerminateGameConnection( uint unIPServer /*uint32*/, ushort usPortServer /*uint16*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamUser_TerminateGameConnection( unIPServer, usPortServer );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamUser.TerminateGameConnection( _ptr, unIPServer, usPortServer );
else Platform.Win64.ISteamUser.TerminateGameConnection( _ptr, unIPServer, usPortServer );
} }
// void // void
public void TrackAppUsageEvent( CGameID gameID /*class CGameID*/, int eAppUsageEvent /*int*/, string pchExtraInfo /*const char **/ ) public void TrackAppUsageEvent( CGameID gameID /*class CGameID*/, int eAppUsageEvent /*int*/, string pchExtraInfo /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamUser_TrackAppUsageEvent( gameID, eAppUsageEvent, pchExtraInfo );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamUser.TrackAppUsageEvent( _ptr, gameID, eAppUsageEvent, pchExtraInfo );
else Platform.Win64.ISteamUser.TrackAppUsageEvent( _ptr, gameID, eAppUsageEvent, pchExtraInfo );
} }
// UserHasLicenseForAppResult // UserHasLicenseForAppResult
public UserHasLicenseForAppResult UserHasLicenseForApp( CSteamID steamID /*class CSteamID*/, AppId_t appID /*AppId_t*/ ) public UserHasLicenseForAppResult UserHasLicenseForApp( CSteamID steamID /*class CSteamID*/, AppId_t appID /*AppId_t*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUser_UserHasLicenseForApp( steamID, appID );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUser.UserHasLicenseForApp( _ptr, steamID, appID );
else return Platform.Win64.ISteamUser.UserHasLicenseForApp( _ptr, steamID, appID );
} }
} }

View File

@ -5,224 +5,163 @@ namespace SteamNative
{ {
public unsafe class SteamUserStats public unsafe class SteamUserStats
{ {
internal IntPtr _ptr; internal Platform.Interface _pi;
public SteamUserStats( IntPtr pointer ) public SteamUserStats( IntPtr pointer )
{ {
_ptr = pointer; if ( Platform.IsWindows64 ) _pi = new Platform.Win64( pointer );
else if ( Platform.IsWindows32 ) _pi = new Platform.Win32( pointer );
else if ( Platform.IsLinux32 ) _pi = new Platform.Linux32( pointer );
else if ( Platform.IsLinux64 ) _pi = new Platform.Linux64( pointer );
else if ( Platform.IsOsx ) _pi = new Platform.Mac( pointer );
} }
public bool IsValid{ get{ return _pi != null && _pi.IsValid; } }
// SteamAPICall_t // SteamAPICall_t
public SteamAPICall_t AttachLeaderboardUGC( SteamLeaderboard_t hSteamLeaderboard /*SteamLeaderboard_t*/, UGCHandle_t hUGC /*UGCHandle_t*/ ) public SteamAPICall_t AttachLeaderboardUGC( SteamLeaderboard_t hSteamLeaderboard /*SteamLeaderboard_t*/, UGCHandle_t hUGC /*UGCHandle_t*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUserStats_AttachLeaderboardUGC( hSteamLeaderboard, hUGC );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUserStats.AttachLeaderboardUGC( _ptr, hSteamLeaderboard, hUGC );
else return Platform.Win64.ISteamUserStats.AttachLeaderboardUGC( _ptr, hSteamLeaderboard, hUGC );
} }
// bool // bool
public bool ClearAchievement( string pchName /*const char **/ ) public bool ClearAchievement( string pchName /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUserStats_ClearAchievement( pchName );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUserStats.ClearAchievement( _ptr, pchName );
else return Platform.Win64.ISteamUserStats.ClearAchievement( _ptr, pchName );
} }
// SteamAPICall_t // SteamAPICall_t
public SteamAPICall_t DownloadLeaderboardEntries( SteamLeaderboard_t hSteamLeaderboard /*SteamLeaderboard_t*/, LeaderboardDataRequest eLeaderboardDataRequest /*ELeaderboardDataRequest*/, int nRangeStart /*int*/, int nRangeEnd /*int*/ ) public SteamAPICall_t DownloadLeaderboardEntries( SteamLeaderboard_t hSteamLeaderboard /*SteamLeaderboard_t*/, LeaderboardDataRequest eLeaderboardDataRequest /*ELeaderboardDataRequest*/, int nRangeStart /*int*/, int nRangeEnd /*int*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUserStats_DownloadLeaderboardEntries( hSteamLeaderboard, eLeaderboardDataRequest, nRangeStart, nRangeEnd );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUserStats.DownloadLeaderboardEntries( _ptr, hSteamLeaderboard, eLeaderboardDataRequest, nRangeStart, nRangeEnd );
else return Platform.Win64.ISteamUserStats.DownloadLeaderboardEntries( _ptr, hSteamLeaderboard, eLeaderboardDataRequest, nRangeStart, nRangeEnd );
} }
// SteamAPICall_t // SteamAPICall_t
public SteamAPICall_t DownloadLeaderboardEntriesForUsers( SteamLeaderboard_t hSteamLeaderboard /*SteamLeaderboard_t*/, IntPtr prgUsers /*class CSteamID **/, int cUsers /*int*/ ) public SteamAPICall_t DownloadLeaderboardEntriesForUsers( SteamLeaderboard_t hSteamLeaderboard /*SteamLeaderboard_t*/, IntPtr prgUsers /*class CSteamID **/, int cUsers /*int*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUserStats_DownloadLeaderboardEntriesForUsers( hSteamLeaderboard, (IntPtr) prgUsers, cUsers );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUserStats.DownloadLeaderboardEntriesForUsers( _ptr, hSteamLeaderboard, (IntPtr) prgUsers, cUsers );
else return Platform.Win64.ISteamUserStats.DownloadLeaderboardEntriesForUsers( _ptr, hSteamLeaderboard, (IntPtr) prgUsers, cUsers );
} }
// SteamAPICall_t // SteamAPICall_t
public SteamAPICall_t FindLeaderboard( string pchLeaderboardName /*const char **/ ) public SteamAPICall_t FindLeaderboard( string pchLeaderboardName /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUserStats_FindLeaderboard( pchLeaderboardName );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUserStats.FindLeaderboard( _ptr, pchLeaderboardName );
else return Platform.Win64.ISteamUserStats.FindLeaderboard( _ptr, pchLeaderboardName );
} }
// SteamAPICall_t // SteamAPICall_t
public SteamAPICall_t FindOrCreateLeaderboard( string pchLeaderboardName /*const char **/, LeaderboardSortMethod eLeaderboardSortMethod /*ELeaderboardSortMethod*/, LeaderboardDisplayType eLeaderboardDisplayType /*ELeaderboardDisplayType*/ ) public SteamAPICall_t FindOrCreateLeaderboard( string pchLeaderboardName /*const char **/, LeaderboardSortMethod eLeaderboardSortMethod /*ELeaderboardSortMethod*/, LeaderboardDisplayType eLeaderboardDisplayType /*ELeaderboardDisplayType*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUserStats_FindOrCreateLeaderboard( pchLeaderboardName, eLeaderboardSortMethod, eLeaderboardDisplayType );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUserStats.FindOrCreateLeaderboard( _ptr, pchLeaderboardName, eLeaderboardSortMethod, eLeaderboardDisplayType );
else return Platform.Win64.ISteamUserStats.FindOrCreateLeaderboard( _ptr, pchLeaderboardName, eLeaderboardSortMethod, eLeaderboardDisplayType );
} }
// bool // bool
public bool GetAchievement( string pchName /*const char **/, out bool pbAchieved /*bool **/ ) public bool GetAchievement( string pchName /*const char **/, out bool pbAchieved /*bool **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUserStats_GetAchievement( pchName, out pbAchieved );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUserStats.GetAchievement( _ptr, pchName, out pbAchieved );
else return Platform.Win64.ISteamUserStats.GetAchievement( _ptr, pchName, out pbAchieved );
} }
// bool // bool
public bool GetAchievementAchievedPercent( string pchName /*const char **/, out float pflPercent /*float **/ ) public bool GetAchievementAchievedPercent( string pchName /*const char **/, out float pflPercent /*float **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUserStats_GetAchievementAchievedPercent( pchName, out pflPercent );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUserStats.GetAchievementAchievedPercent( _ptr, pchName, out pflPercent );
else return Platform.Win64.ISteamUserStats.GetAchievementAchievedPercent( _ptr, pchName, out pflPercent );
} }
// bool // bool
public bool GetAchievementAndUnlockTime( string pchName /*const char **/, out bool pbAchieved /*bool **/, out uint punUnlockTime /*uint32 **/ ) public bool GetAchievementAndUnlockTime( string pchName /*const char **/, out bool pbAchieved /*bool **/, out uint punUnlockTime /*uint32 **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUserStats_GetAchievementAndUnlockTime( pchName, out pbAchieved, out punUnlockTime );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUserStats.GetAchievementAndUnlockTime( _ptr, pchName, out pbAchieved, out punUnlockTime );
else return Platform.Win64.ISteamUserStats.GetAchievementAndUnlockTime( _ptr, pchName, out pbAchieved, out punUnlockTime );
} }
// string // string
// with: Detect_StringReturn // with: Detect_StringReturn
public string GetAchievementDisplayAttribute( string pchName /*const char **/, string pchKey /*const char **/ ) public string GetAchievementDisplayAttribute( string pchName /*const char **/, string pchKey /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); //
IntPtr string_pointer; IntPtr string_pointer;
if ( Platform.IsWindows32 ) string_pointer = Platform.Win32.ISteamUserStats.GetAchievementDisplayAttribute( _ptr, pchName, pchKey ); string_pointer = _pi.ISteamUserStats_GetAchievementDisplayAttribute( pchName, pchKey );
else string_pointer = Platform.Win64.ISteamUserStats.GetAchievementDisplayAttribute( _ptr, pchName, pchKey );
return Marshal.PtrToStringAnsi( string_pointer ); return Marshal.PtrToStringAnsi( string_pointer );
} }
// int // int
public int GetAchievementIcon( string pchName /*const char **/ ) public int GetAchievementIcon( string pchName /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUserStats_GetAchievementIcon( pchName );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUserStats.GetAchievementIcon( _ptr, pchName );
else return Platform.Win64.ISteamUserStats.GetAchievementIcon( _ptr, pchName );
} }
// string // string
// with: Detect_StringReturn // with: Detect_StringReturn
public string GetAchievementName( uint iAchievement /*uint32*/ ) public string GetAchievementName( uint iAchievement /*uint32*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); //
IntPtr string_pointer; IntPtr string_pointer;
if ( Platform.IsWindows32 ) string_pointer = Platform.Win32.ISteamUserStats.GetAchievementName( _ptr, iAchievement ); string_pointer = _pi.ISteamUserStats_GetAchievementName( iAchievement );
else string_pointer = Platform.Win64.ISteamUserStats.GetAchievementName( _ptr, iAchievement );
return Marshal.PtrToStringAnsi( string_pointer ); return Marshal.PtrToStringAnsi( string_pointer );
} }
// bool // bool
public bool GetDownloadedLeaderboardEntry( SteamLeaderboardEntries_t hSteamLeaderboardEntries /*SteamLeaderboardEntries_t*/, int index /*int*/, ref LeaderboardEntry_t pLeaderboardEntry /*struct LeaderboardEntry_t **/, IntPtr pDetails /*int32 **/, int cDetailsMax /*int*/ ) public bool GetDownloadedLeaderboardEntry( SteamLeaderboardEntries_t hSteamLeaderboardEntries /*SteamLeaderboardEntries_t*/, int index /*int*/, ref LeaderboardEntry_t pLeaderboardEntry /*struct LeaderboardEntry_t **/, IntPtr pDetails /*int32 **/, int cDetailsMax /*int*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUserStats_GetDownloadedLeaderboardEntry( hSteamLeaderboardEntries, index, ref pLeaderboardEntry, (IntPtr) pDetails, cDetailsMax );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUserStats.GetDownloadedLeaderboardEntry( _ptr, hSteamLeaderboardEntries, index, ref pLeaderboardEntry, (IntPtr) pDetails, cDetailsMax );
else return Platform.Win64.ISteamUserStats.GetDownloadedLeaderboardEntry( _ptr, hSteamLeaderboardEntries, index, ref pLeaderboardEntry, (IntPtr) pDetails, cDetailsMax );
} }
// bool // bool
public bool GetGlobalStat( string pchStatName /*const char **/, out long pData /*int64 **/ ) public bool GetGlobalStat( string pchStatName /*const char **/, out long pData /*int64 **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUserStats_GetGlobalStat( pchStatName, out pData );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUserStats.GetGlobalStat( _ptr, pchStatName, out pData );
else return Platform.Win64.ISteamUserStats.GetGlobalStat( _ptr, pchStatName, out pData );
} }
// bool // bool
public bool GetGlobalStat0( string pchStatName /*const char **/, out double pData /*double **/ ) public bool GetGlobalStat0( string pchStatName /*const char **/, out double pData /*double **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUserStats_GetGlobalStat0( pchStatName, out pData );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUserStats.GetGlobalStat0( _ptr, pchStatName, out pData );
else return Platform.Win64.ISteamUserStats.GetGlobalStat0( _ptr, pchStatName, out pData );
} }
// int // int
public int GetGlobalStatHistory( string pchStatName /*const char **/, out long pData /*int64 **/, uint cubData /*uint32*/ ) public int GetGlobalStatHistory( string pchStatName /*const char **/, out long pData /*int64 **/, uint cubData /*uint32*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUserStats_GetGlobalStatHistory( pchStatName, out pData, cubData );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUserStats.GetGlobalStatHistory( _ptr, pchStatName, out pData, cubData );
else return Platform.Win64.ISteamUserStats.GetGlobalStatHistory( _ptr, pchStatName, out pData, cubData );
} }
// int // int
public int GetGlobalStatHistory0( string pchStatName /*const char **/, out double pData /*double **/, uint cubData /*uint32*/ ) public int GetGlobalStatHistory0( string pchStatName /*const char **/, out double pData /*double **/, uint cubData /*uint32*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUserStats_GetGlobalStatHistory0( pchStatName, out pData, cubData );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUserStats.GetGlobalStatHistory0( _ptr, pchStatName, out pData, cubData );
else return Platform.Win64.ISteamUserStats.GetGlobalStatHistory0( _ptr, pchStatName, out pData, cubData );
} }
// LeaderboardDisplayType // LeaderboardDisplayType
public LeaderboardDisplayType GetLeaderboardDisplayType( SteamLeaderboard_t hSteamLeaderboard /*SteamLeaderboard_t*/ ) public LeaderboardDisplayType GetLeaderboardDisplayType( SteamLeaderboard_t hSteamLeaderboard /*SteamLeaderboard_t*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUserStats_GetLeaderboardDisplayType( hSteamLeaderboard );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUserStats.GetLeaderboardDisplayType( _ptr, hSteamLeaderboard );
else return Platform.Win64.ISteamUserStats.GetLeaderboardDisplayType( _ptr, hSteamLeaderboard );
} }
// int // int
public int GetLeaderboardEntryCount( SteamLeaderboard_t hSteamLeaderboard /*SteamLeaderboard_t*/ ) public int GetLeaderboardEntryCount( SteamLeaderboard_t hSteamLeaderboard /*SteamLeaderboard_t*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUserStats_GetLeaderboardEntryCount( hSteamLeaderboard );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUserStats.GetLeaderboardEntryCount( _ptr, hSteamLeaderboard );
else return Platform.Win64.ISteamUserStats.GetLeaderboardEntryCount( _ptr, hSteamLeaderboard );
} }
// string // string
// with: Detect_StringReturn // with: Detect_StringReturn
public string GetLeaderboardName( SteamLeaderboard_t hSteamLeaderboard /*SteamLeaderboard_t*/ ) public string GetLeaderboardName( SteamLeaderboard_t hSteamLeaderboard /*SteamLeaderboard_t*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); //
IntPtr string_pointer; IntPtr string_pointer;
if ( Platform.IsWindows32 ) string_pointer = Platform.Win32.ISteamUserStats.GetLeaderboardName( _ptr, hSteamLeaderboard ); string_pointer = _pi.ISteamUserStats_GetLeaderboardName( hSteamLeaderboard );
else string_pointer = Platform.Win64.ISteamUserStats.GetLeaderboardName( _ptr, hSteamLeaderboard );
return Marshal.PtrToStringAnsi( string_pointer ); return Marshal.PtrToStringAnsi( string_pointer );
} }
// LeaderboardSortMethod // LeaderboardSortMethod
public LeaderboardSortMethod GetLeaderboardSortMethod( SteamLeaderboard_t hSteamLeaderboard /*SteamLeaderboard_t*/ ) public LeaderboardSortMethod GetLeaderboardSortMethod( SteamLeaderboard_t hSteamLeaderboard /*SteamLeaderboard_t*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUserStats_GetLeaderboardSortMethod( hSteamLeaderboard );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUserStats.GetLeaderboardSortMethod( _ptr, hSteamLeaderboard );
else return Platform.Win64.ISteamUserStats.GetLeaderboardSortMethod( _ptr, hSteamLeaderboard );
} }
// int // int
// with: Detect_StringFetch False // with: Detect_StringFetch False
public int GetMostAchievedAchievementInfo( out string pchName /*char **/, out float pflPercent /*float **/, out bool pbAchieved /*bool **/ ) public int GetMostAchievedAchievementInfo( out string pchName /*char **/, out float pflPercent /*float **/, out bool pbAchieved /*bool **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); //
int bSuccess = default( int ); int bSuccess = default( int );
pchName = string.Empty; pchName = string.Empty;
System.Text.StringBuilder pchName_sb = new System.Text.StringBuilder( 4096 ); System.Text.StringBuilder pchName_sb = new System.Text.StringBuilder( 4096 );
uint unNameBufLen = 4096; uint unNameBufLen = 4096;
if ( Platform.IsWindows32 ) bSuccess = Platform.Win32.ISteamUserStats.GetMostAchievedAchievementInfo( _ptr, pchName_sb, unNameBufLen, out pflPercent, out pbAchieved ); bSuccess = _pi.ISteamUserStats_GetMostAchievedAchievementInfo( pchName_sb, unNameBufLen, out pflPercent, out pbAchieved );
else bSuccess = Platform.Win64.ISteamUserStats.GetMostAchievedAchievementInfo( _ptr, pchName_sb, unNameBufLen, out pflPercent, out pbAchieved );
if ( bSuccess <= 0 ) return bSuccess; if ( bSuccess <= 0 ) return bSuccess;
pchName = pchName_sb.ToString(); pchName = pchName_sb.ToString();
return bSuccess; return bSuccess;
@ -232,14 +171,11 @@ namespace SteamNative
// with: Detect_StringFetch False // with: Detect_StringFetch False
public int GetNextMostAchievedAchievementInfo( int iIteratorPrevious /*int*/, out string pchName /*char **/, out float pflPercent /*float **/, out bool pbAchieved /*bool **/ ) public int GetNextMostAchievedAchievementInfo( int iIteratorPrevious /*int*/, out string pchName /*char **/, out float pflPercent /*float **/, out bool pbAchieved /*bool **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); //
int bSuccess = default( int ); int bSuccess = default( int );
pchName = string.Empty; pchName = string.Empty;
System.Text.StringBuilder pchName_sb = new System.Text.StringBuilder( 4096 ); System.Text.StringBuilder pchName_sb = new System.Text.StringBuilder( 4096 );
uint unNameBufLen = 4096; uint unNameBufLen = 4096;
if ( Platform.IsWindows32 ) bSuccess = Platform.Win32.ISteamUserStats.GetNextMostAchievedAchievementInfo( _ptr, iIteratorPrevious, pchName_sb, unNameBufLen, out pflPercent, out pbAchieved ); bSuccess = _pi.ISteamUserStats_GetNextMostAchievedAchievementInfo( iIteratorPrevious, pchName_sb, unNameBufLen, out pflPercent, out pbAchieved );
else bSuccess = Platform.Win64.ISteamUserStats.GetNextMostAchievedAchievementInfo( _ptr, iIteratorPrevious, pchName_sb, unNameBufLen, out pflPercent, out pbAchieved );
if ( bSuccess <= 0 ) return bSuccess; if ( bSuccess <= 0 ) return bSuccess;
pchName = pchName_sb.ToString(); pchName = pchName_sb.ToString();
return bSuccess; return bSuccess;
@ -248,181 +184,121 @@ namespace SteamNative
// uint // uint
public uint GetNumAchievements() public uint GetNumAchievements()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUserStats_GetNumAchievements();
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUserStats.GetNumAchievements( _ptr );
else return Platform.Win64.ISteamUserStats.GetNumAchievements( _ptr );
} }
// SteamAPICall_t // SteamAPICall_t
public SteamAPICall_t GetNumberOfCurrentPlayers() public SteamAPICall_t GetNumberOfCurrentPlayers()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUserStats_GetNumberOfCurrentPlayers();
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUserStats.GetNumberOfCurrentPlayers( _ptr );
else return Platform.Win64.ISteamUserStats.GetNumberOfCurrentPlayers( _ptr );
} }
// bool // bool
public bool GetStat( string pchName /*const char **/, out int pData /*int32 **/ ) public bool GetStat( string pchName /*const char **/, out int pData /*int32 **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUserStats_GetStat( pchName, out pData );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUserStats.GetStat( _ptr, pchName, out pData );
else return Platform.Win64.ISteamUserStats.GetStat( _ptr, pchName, out pData );
} }
// bool // bool
public bool GetStat0( string pchName /*const char **/, out float pData /*float **/ ) public bool GetStat0( string pchName /*const char **/, out float pData /*float **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUserStats_GetStat0( pchName, out pData );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUserStats.GetStat0( _ptr, pchName, out pData );
else return Platform.Win64.ISteamUserStats.GetStat0( _ptr, pchName, out pData );
} }
// bool // bool
public bool GetUserAchievement( CSteamID steamIDUser /*class CSteamID*/, string pchName /*const char **/, out bool pbAchieved /*bool **/ ) public bool GetUserAchievement( CSteamID steamIDUser /*class CSteamID*/, string pchName /*const char **/, out bool pbAchieved /*bool **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUserStats_GetUserAchievement( steamIDUser, pchName, out pbAchieved );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUserStats.GetUserAchievement( _ptr, steamIDUser, pchName, out pbAchieved );
else return Platform.Win64.ISteamUserStats.GetUserAchievement( _ptr, steamIDUser, pchName, out pbAchieved );
} }
// bool // bool
public bool GetUserAchievementAndUnlockTime( CSteamID steamIDUser /*class CSteamID*/, string pchName /*const char **/, out bool pbAchieved /*bool **/, out uint punUnlockTime /*uint32 **/ ) public bool GetUserAchievementAndUnlockTime( CSteamID steamIDUser /*class CSteamID*/, string pchName /*const char **/, out bool pbAchieved /*bool **/, out uint punUnlockTime /*uint32 **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUserStats_GetUserAchievementAndUnlockTime( steamIDUser, pchName, out pbAchieved, out punUnlockTime );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUserStats.GetUserAchievementAndUnlockTime( _ptr, steamIDUser, pchName, out pbAchieved, out punUnlockTime );
else return Platform.Win64.ISteamUserStats.GetUserAchievementAndUnlockTime( _ptr, steamIDUser, pchName, out pbAchieved, out punUnlockTime );
} }
// bool // bool
public bool GetUserStat( CSteamID steamIDUser /*class CSteamID*/, string pchName /*const char **/, out int pData /*int32 **/ ) public bool GetUserStat( CSteamID steamIDUser /*class CSteamID*/, string pchName /*const char **/, out int pData /*int32 **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUserStats_GetUserStat( steamIDUser, pchName, out pData );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUserStats.GetUserStat( _ptr, steamIDUser, pchName, out pData );
else return Platform.Win64.ISteamUserStats.GetUserStat( _ptr, steamIDUser, pchName, out pData );
} }
// bool // bool
public bool GetUserStat0( CSteamID steamIDUser /*class CSteamID*/, string pchName /*const char **/, out float pData /*float **/ ) public bool GetUserStat0( CSteamID steamIDUser /*class CSteamID*/, string pchName /*const char **/, out float pData /*float **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUserStats_GetUserStat0( steamIDUser, pchName, out pData );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUserStats.GetUserStat0( _ptr, steamIDUser, pchName, out pData );
else return Platform.Win64.ISteamUserStats.GetUserStat0( _ptr, steamIDUser, pchName, out pData );
} }
// bool // bool
public bool IndicateAchievementProgress( string pchName /*const char **/, uint nCurProgress /*uint32*/, uint nMaxProgress /*uint32*/ ) public bool IndicateAchievementProgress( string pchName /*const char **/, uint nCurProgress /*uint32*/, uint nMaxProgress /*uint32*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUserStats_IndicateAchievementProgress( pchName, nCurProgress, nMaxProgress );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUserStats.IndicateAchievementProgress( _ptr, pchName, nCurProgress, nMaxProgress );
else return Platform.Win64.ISteamUserStats.IndicateAchievementProgress( _ptr, pchName, nCurProgress, nMaxProgress );
} }
// bool // bool
public bool RequestCurrentStats() public bool RequestCurrentStats()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUserStats_RequestCurrentStats();
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUserStats.RequestCurrentStats( _ptr );
else return Platform.Win64.ISteamUserStats.RequestCurrentStats( _ptr );
} }
// SteamAPICall_t // SteamAPICall_t
public SteamAPICall_t RequestGlobalAchievementPercentages() public SteamAPICall_t RequestGlobalAchievementPercentages()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUserStats_RequestGlobalAchievementPercentages();
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUserStats.RequestGlobalAchievementPercentages( _ptr );
else return Platform.Win64.ISteamUserStats.RequestGlobalAchievementPercentages( _ptr );
} }
// SteamAPICall_t // SteamAPICall_t
public SteamAPICall_t RequestGlobalStats( int nHistoryDays /*int*/ ) public SteamAPICall_t RequestGlobalStats( int nHistoryDays /*int*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUserStats_RequestGlobalStats( nHistoryDays );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUserStats.RequestGlobalStats( _ptr, nHistoryDays );
else return Platform.Win64.ISteamUserStats.RequestGlobalStats( _ptr, nHistoryDays );
} }
// SteamAPICall_t // SteamAPICall_t
public SteamAPICall_t RequestUserStats( CSteamID steamIDUser /*class CSteamID*/ ) public SteamAPICall_t RequestUserStats( CSteamID steamIDUser /*class CSteamID*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUserStats_RequestUserStats( steamIDUser );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUserStats.RequestUserStats( _ptr, steamIDUser );
else return Platform.Win64.ISteamUserStats.RequestUserStats( _ptr, steamIDUser );
} }
// bool // bool
public bool ResetAllStats( bool bAchievementsToo /*bool*/ ) public bool ResetAllStats( bool bAchievementsToo /*bool*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUserStats_ResetAllStats( bAchievementsToo );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUserStats.ResetAllStats( _ptr, bAchievementsToo );
else return Platform.Win64.ISteamUserStats.ResetAllStats( _ptr, bAchievementsToo );
} }
// bool // bool
public bool SetAchievement( string pchName /*const char **/ ) public bool SetAchievement( string pchName /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUserStats_SetAchievement( pchName );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUserStats.SetAchievement( _ptr, pchName );
else return Platform.Win64.ISteamUserStats.SetAchievement( _ptr, pchName );
} }
// bool // bool
public bool SetStat( string pchName /*const char **/, int nData /*int32*/ ) public bool SetStat( string pchName /*const char **/, int nData /*int32*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUserStats_SetStat( pchName, nData );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUserStats.SetStat( _ptr, pchName, nData );
else return Platform.Win64.ISteamUserStats.SetStat( _ptr, pchName, nData );
} }
// bool // bool
public bool SetStat0( string pchName /*const char **/, float fData /*float*/ ) public bool SetStat0( string pchName /*const char **/, float fData /*float*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUserStats_SetStat0( pchName, fData );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUserStats.SetStat0( _ptr, pchName, fData );
else return Platform.Win64.ISteamUserStats.SetStat0( _ptr, pchName, fData );
} }
// bool // bool
public bool StoreStats() public bool StoreStats()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUserStats_StoreStats();
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUserStats.StoreStats( _ptr );
else return Platform.Win64.ISteamUserStats.StoreStats( _ptr );
} }
// bool // bool
public bool UpdateAvgRateStat( string pchName /*const char **/, float flCountThisSession /*float*/, double dSessionLength /*double*/ ) public bool UpdateAvgRateStat( string pchName /*const char **/, float flCountThisSession /*float*/, double dSessionLength /*double*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUserStats_UpdateAvgRateStat( pchName, flCountThisSession, dSessionLength );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUserStats.UpdateAvgRateStat( _ptr, pchName, flCountThisSession, dSessionLength );
else return Platform.Win64.ISteamUserStats.UpdateAvgRateStat( _ptr, pchName, flCountThisSession, dSessionLength );
} }
// SteamAPICall_t // SteamAPICall_t
public SteamAPICall_t UploadLeaderboardScore( SteamLeaderboard_t hSteamLeaderboard /*SteamLeaderboard_t*/, LeaderboardUploadScoreMethod eLeaderboardUploadScoreMethod /*ELeaderboardUploadScoreMethod*/, int nScore /*int32*/, IntPtr pScoreDetails /*const int32 **/, int cScoreDetailsCount /*int*/ ) public SteamAPICall_t UploadLeaderboardScore( SteamLeaderboard_t hSteamLeaderboard /*SteamLeaderboard_t*/, LeaderboardUploadScoreMethod eLeaderboardUploadScoreMethod /*ELeaderboardUploadScoreMethod*/, int nScore /*int32*/, IntPtr pScoreDetails /*const int32 **/, int cScoreDetailsCount /*int*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUserStats_UploadLeaderboardScore( hSteamLeaderboard, eLeaderboardUploadScoreMethod, nScore, (IntPtr) pScoreDetails, cScoreDetailsCount );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUserStats.UploadLeaderboardScore( _ptr, hSteamLeaderboard, eLeaderboardUploadScoreMethod, nScore, (IntPtr) pScoreDetails, cScoreDetailsCount );
else return Platform.Win64.ISteamUserStats.UploadLeaderboardScore( _ptr, hSteamLeaderboard, eLeaderboardUploadScoreMethod, nScore, (IntPtr) pScoreDetails, cScoreDetailsCount );
} }
} }

View File

@ -5,97 +5,75 @@ namespace SteamNative
{ {
public unsafe class SteamUtils public unsafe class SteamUtils
{ {
internal IntPtr _ptr; internal Platform.Interface _pi;
public SteamUtils( IntPtr pointer ) public SteamUtils( IntPtr pointer )
{ {
_ptr = pointer; if ( Platform.IsWindows64 ) _pi = new Platform.Win64( pointer );
else if ( Platform.IsWindows32 ) _pi = new Platform.Win32( pointer );
else if ( Platform.IsLinux32 ) _pi = new Platform.Linux32( pointer );
else if ( Platform.IsLinux64 ) _pi = new Platform.Linux64( pointer );
else if ( Platform.IsOsx ) _pi = new Platform.Mac( pointer );
} }
public bool IsValid{ get{ return _pi != null && _pi.IsValid; } }
// bool // bool
public bool BOverlayNeedsPresent() public bool BOverlayNeedsPresent()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUtils_BOverlayNeedsPresent();
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUtils.BOverlayNeedsPresent( _ptr );
else return Platform.Win64.ISteamUtils.BOverlayNeedsPresent( _ptr );
} }
// SteamAPICall_t // SteamAPICall_t
public SteamAPICall_t CheckFileSignature( string szFileName /*const char **/ ) public SteamAPICall_t CheckFileSignature( string szFileName /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUtils_CheckFileSignature( szFileName );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUtils.CheckFileSignature( _ptr, szFileName );
else return Platform.Win64.ISteamUtils.CheckFileSignature( _ptr, szFileName );
} }
// SteamAPICallFailure // SteamAPICallFailure
public SteamAPICallFailure GetAPICallFailureReason( SteamAPICall_t hSteamAPICall /*SteamAPICall_t*/ ) public SteamAPICallFailure GetAPICallFailureReason( SteamAPICall_t hSteamAPICall /*SteamAPICall_t*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUtils_GetAPICallFailureReason( hSteamAPICall );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUtils.GetAPICallFailureReason( _ptr, hSteamAPICall );
else return Platform.Win64.ISteamUtils.GetAPICallFailureReason( _ptr, hSteamAPICall );
} }
// bool // bool
public bool GetAPICallResult( SteamAPICall_t hSteamAPICall /*SteamAPICall_t*/, IntPtr pCallback /*void **/, int cubCallback /*int*/, int iCallbackExpected /*int*/, out bool pbFailed /*bool **/ ) public bool GetAPICallResult( SteamAPICall_t hSteamAPICall /*SteamAPICall_t*/, IntPtr pCallback /*void **/, int cubCallback /*int*/, int iCallbackExpected /*int*/, out bool pbFailed /*bool **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUtils_GetAPICallResult( hSteamAPICall, (IntPtr) pCallback, cubCallback, iCallbackExpected, out pbFailed );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUtils.GetAPICallResult( _ptr, hSteamAPICall, (IntPtr) pCallback, cubCallback, iCallbackExpected, out pbFailed );
else return Platform.Win64.ISteamUtils.GetAPICallResult( _ptr, hSteamAPICall, (IntPtr) pCallback, cubCallback, iCallbackExpected, out pbFailed );
} }
// uint // uint
public uint GetAppID() public uint GetAppID()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUtils_GetAppID();
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUtils.GetAppID( _ptr );
else return Platform.Win64.ISteamUtils.GetAppID( _ptr );
} }
// Universe // Universe
public Universe GetConnectedUniverse() public Universe GetConnectedUniverse()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUtils_GetConnectedUniverse();
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUtils.GetConnectedUniverse( _ptr );
else return Platform.Win64.ISteamUtils.GetConnectedUniverse( _ptr );
} }
// bool // bool
public bool GetCSERIPPort( out uint unIP /*uint32 **/, out ushort usPort /*uint16 **/ ) public bool GetCSERIPPort( out uint unIP /*uint32 **/, out ushort usPort /*uint16 **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUtils_GetCSERIPPort( out unIP, out usPort );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUtils.GetCSERIPPort( _ptr, out unIP, out usPort );
else return Platform.Win64.ISteamUtils.GetCSERIPPort( _ptr, out unIP, out usPort );
} }
// byte // byte
public byte GetCurrentBatteryPower() public byte GetCurrentBatteryPower()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUtils_GetCurrentBatteryPower();
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUtils.GetCurrentBatteryPower( _ptr );
else return Platform.Win64.ISteamUtils.GetCurrentBatteryPower( _ptr );
} }
// bool // bool
// with: Detect_StringFetch True // with: Detect_StringFetch True
public string GetEnteredGamepadTextInput() public string GetEnteredGamepadTextInput()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); //
bool bSuccess = default( bool ); bool bSuccess = default( bool );
System.Text.StringBuilder pchText_sb = new System.Text.StringBuilder( 4096 ); System.Text.StringBuilder pchText_sb = new System.Text.StringBuilder( 4096 );
uint cchText = 4096; uint cchText = 4096;
if ( Platform.IsWindows32 ) bSuccess = Platform.Win32.ISteamUtils.GetEnteredGamepadTextInput( _ptr, pchText_sb, cchText ); bSuccess = _pi.ISteamUtils_GetEnteredGamepadTextInput( pchText_sb, cchText );
else bSuccess = Platform.Win64.ISteamUtils.GetEnteredGamepadTextInput( _ptr, pchText_sb, cchText );
if ( !bSuccess ) return null; if ( !bSuccess ) return null;
return pchText_sb.ToString(); return pchText_sb.ToString();
} }
@ -103,169 +81,115 @@ namespace SteamNative
// uint // uint
public uint GetEnteredGamepadTextLength() public uint GetEnteredGamepadTextLength()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUtils_GetEnteredGamepadTextLength();
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUtils.GetEnteredGamepadTextLength( _ptr );
else return Platform.Win64.ISteamUtils.GetEnteredGamepadTextLength( _ptr );
} }
// bool // bool
public bool GetImageRGBA( int iImage /*int*/, IntPtr pubDest /*uint8 **/, int nDestBufferSize /*int*/ ) public bool GetImageRGBA( int iImage /*int*/, IntPtr pubDest /*uint8 **/, int nDestBufferSize /*int*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUtils_GetImageRGBA( iImage, (IntPtr) pubDest, nDestBufferSize );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUtils.GetImageRGBA( _ptr, iImage, (IntPtr) pubDest, nDestBufferSize );
else return Platform.Win64.ISteamUtils.GetImageRGBA( _ptr, iImage, (IntPtr) pubDest, nDestBufferSize );
} }
// bool // bool
public bool GetImageSize( int iImage /*int*/, out uint pnWidth /*uint32 **/, out uint pnHeight /*uint32 **/ ) public bool GetImageSize( int iImage /*int*/, out uint pnWidth /*uint32 **/, out uint pnHeight /*uint32 **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUtils_GetImageSize( iImage, out pnWidth, out pnHeight );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUtils.GetImageSize( _ptr, iImage, out pnWidth, out pnHeight );
else return Platform.Win64.ISteamUtils.GetImageSize( _ptr, iImage, out pnWidth, out pnHeight );
} }
// uint // uint
public uint GetIPCCallCount() public uint GetIPCCallCount()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUtils_GetIPCCallCount();
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUtils.GetIPCCallCount( _ptr );
else return Platform.Win64.ISteamUtils.GetIPCCallCount( _ptr );
} }
// string // string
// with: Detect_StringReturn // with: Detect_StringReturn
public string GetIPCountry() public string GetIPCountry()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); //
IntPtr string_pointer; IntPtr string_pointer;
if ( Platform.IsWindows32 ) string_pointer = Platform.Win32.ISteamUtils.GetIPCountry( _ptr ); string_pointer = _pi.ISteamUtils_GetIPCountry();
else string_pointer = Platform.Win64.ISteamUtils.GetIPCountry( _ptr );
return Marshal.PtrToStringAnsi( string_pointer ); return Marshal.PtrToStringAnsi( string_pointer );
} }
// uint // uint
public uint GetSecondsSinceAppActive() public uint GetSecondsSinceAppActive()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUtils_GetSecondsSinceAppActive();
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUtils.GetSecondsSinceAppActive( _ptr );
else return Platform.Win64.ISteamUtils.GetSecondsSinceAppActive( _ptr );
} }
// uint // uint
public uint GetSecondsSinceComputerActive() public uint GetSecondsSinceComputerActive()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUtils_GetSecondsSinceComputerActive();
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUtils.GetSecondsSinceComputerActive( _ptr );
else return Platform.Win64.ISteamUtils.GetSecondsSinceComputerActive( _ptr );
} }
// uint // uint
public uint GetServerRealTime() public uint GetServerRealTime()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUtils_GetServerRealTime();
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUtils.GetServerRealTime( _ptr );
else return Platform.Win64.ISteamUtils.GetServerRealTime( _ptr );
} }
// string // string
// with: Detect_StringReturn // with: Detect_StringReturn
public string GetSteamUILanguage() public string GetSteamUILanguage()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); //
IntPtr string_pointer; IntPtr string_pointer;
if ( Platform.IsWindows32 ) string_pointer = Platform.Win32.ISteamUtils.GetSteamUILanguage( _ptr ); string_pointer = _pi.ISteamUtils_GetSteamUILanguage();
else string_pointer = Platform.Win64.ISteamUtils.GetSteamUILanguage( _ptr );
return Marshal.PtrToStringAnsi( string_pointer ); return Marshal.PtrToStringAnsi( string_pointer );
} }
// bool // bool
public bool IsAPICallCompleted( SteamAPICall_t hSteamAPICall /*SteamAPICall_t*/, out bool pbFailed /*bool **/ ) public bool IsAPICallCompleted( SteamAPICall_t hSteamAPICall /*SteamAPICall_t*/, out bool pbFailed /*bool **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUtils_IsAPICallCompleted( hSteamAPICall, out pbFailed );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUtils.IsAPICallCompleted( _ptr, hSteamAPICall, out pbFailed );
else return Platform.Win64.ISteamUtils.IsAPICallCompleted( _ptr, hSteamAPICall, out pbFailed );
} }
// bool // bool
public bool IsOverlayEnabled() public bool IsOverlayEnabled()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUtils_IsOverlayEnabled();
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUtils.IsOverlayEnabled( _ptr );
else return Platform.Win64.ISteamUtils.IsOverlayEnabled( _ptr );
} }
// bool // bool
public bool IsSteamInBigPictureMode() public bool IsSteamInBigPictureMode()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUtils_IsSteamInBigPictureMode();
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUtils.IsSteamInBigPictureMode( _ptr );
else return Platform.Win64.ISteamUtils.IsSteamInBigPictureMode( _ptr );
} }
// bool // bool
public bool IsSteamRunningInVR() public bool IsSteamRunningInVR()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUtils_IsSteamRunningInVR();
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUtils.IsSteamRunningInVR( _ptr );
else return Platform.Win64.ISteamUtils.IsSteamRunningInVR( _ptr );
} }
// void // void
public void SetOverlayNotificationInset( int nHorizontalInset /*int*/, int nVerticalInset /*int*/ ) public void SetOverlayNotificationInset( int nHorizontalInset /*int*/, int nVerticalInset /*int*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamUtils_SetOverlayNotificationInset( nHorizontalInset, nVerticalInset );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamUtils.SetOverlayNotificationInset( _ptr, nHorizontalInset, nVerticalInset );
else Platform.Win64.ISteamUtils.SetOverlayNotificationInset( _ptr, nHorizontalInset, nVerticalInset );
} }
// void // void
public void SetOverlayNotificationPosition( NotificationPosition eNotificationPosition /*ENotificationPosition*/ ) public void SetOverlayNotificationPosition( NotificationPosition eNotificationPosition /*ENotificationPosition*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamUtils_SetOverlayNotificationPosition( eNotificationPosition );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamUtils.SetOverlayNotificationPosition( _ptr, eNotificationPosition );
else Platform.Win64.ISteamUtils.SetOverlayNotificationPosition( _ptr, eNotificationPosition );
} }
// void // void
public void SetWarningMessageHook( IntPtr pFunction /*SteamAPIWarningMessageHook_t*/ ) public void SetWarningMessageHook( IntPtr pFunction /*SteamAPIWarningMessageHook_t*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamUtils_SetWarningMessageHook( (IntPtr) pFunction );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamUtils.SetWarningMessageHook( _ptr, (IntPtr) pFunction );
else Platform.Win64.ISteamUtils.SetWarningMessageHook( _ptr, (IntPtr) pFunction );
} }
// bool // bool
public bool ShowGamepadTextInput( GamepadTextInputMode eInputMode /*EGamepadTextInputMode*/, GamepadTextInputLineMode eLineInputMode /*EGamepadTextInputLineMode*/, string pchDescription /*const char **/, uint unCharMax /*uint32*/, string pchExistingText /*const char **/ ) public bool ShowGamepadTextInput( GamepadTextInputMode eInputMode /*EGamepadTextInputMode*/, GamepadTextInputLineMode eLineInputMode /*EGamepadTextInputLineMode*/, string pchDescription /*const char **/, uint unCharMax /*uint32*/, string pchExistingText /*const char **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamUtils_ShowGamepadTextInput( eInputMode, eLineInputMode, pchDescription, unCharMax, pchExistingText );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamUtils.ShowGamepadTextInput( _ptr, eInputMode, eLineInputMode, pchDescription, unCharMax, pchExistingText );
else return Platform.Win64.ISteamUtils.ShowGamepadTextInput( _ptr, eInputMode, eLineInputMode, pchDescription, unCharMax, pchExistingText );
} }
// void // void
public void StartVRDashboard() public void StartVRDashboard()
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamUtils_StartVRDashboard();
if ( Platform.IsWindows32 ) Platform.Win32.ISteamUtils.StartVRDashboard( _ptr );
else Platform.Win64.ISteamUtils.StartVRDashboard( _ptr );
} }
} }

View File

@ -5,30 +5,29 @@ namespace SteamNative
{ {
public unsafe class SteamVideo public unsafe class SteamVideo
{ {
internal IntPtr _ptr; internal Platform.Interface _pi;
public SteamVideo( IntPtr pointer ) public SteamVideo( IntPtr pointer )
{ {
_ptr = pointer; if ( Platform.IsWindows64 ) _pi = new Platform.Win64( pointer );
else if ( Platform.IsWindows32 ) _pi = new Platform.Win32( pointer );
else if ( Platform.IsLinux32 ) _pi = new Platform.Linux32( pointer );
else if ( Platform.IsLinux64 ) _pi = new Platform.Linux64( pointer );
else if ( Platform.IsOsx ) _pi = new Platform.Mac( pointer );
} }
public bool IsValid{ get{ return _pi != null && _pi.IsValid; } }
// void // void
public void GetVideoURL( AppId_t unVideoAppID /*AppId_t*/ ) public void GetVideoURL( AppId_t unVideoAppID /*AppId_t*/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // _pi.ISteamVideo_GetVideoURL( unVideoAppID );
if ( Platform.IsWindows32 ) Platform.Win32.ISteamVideo.GetVideoURL( _ptr, unVideoAppID );
else Platform.Win64.ISteamVideo.GetVideoURL( _ptr, unVideoAppID );
} }
// bool // bool
public bool IsBroadcasting( IntPtr pnNumViewers /*int **/ ) public bool IsBroadcasting( IntPtr pnNumViewers /*int **/ )
{ {
if ( _ptr == IntPtr.Zero ) throw new System.Exception( "Internal pointer is null"); // return _pi.ISteamVideo_IsBroadcasting( (IntPtr) pnNumViewers );
if ( Platform.IsWindows32 ) return Platform.Win32.ISteamVideo.IsBroadcasting( _ptr, (IntPtr) pnNumViewers );
else return Platform.Win64.ISteamVideo.IsBroadcasting( _ptr, (IntPtr) pnNumViewers );
} }
} }

View File

@ -176,7 +176,7 @@ namespace Generator
return $"{ManagedType} /*{NativeType}*/ {Name} "; return $"{ManagedType} /*{NativeType}*/ {Name} ";
} }
internal object Return() internal string Return()
{ {
if ( ManagedType.EndsWith( "*" ) ) if ( ManagedType.EndsWith( "*" ) )
{ {
@ -185,7 +185,7 @@ namespace Generator
if ( TypeDef != null ) if ( TypeDef != null )
{ {
return $"{TypeDef.ManagedType} /*{NativeType}*/"; return $"{TypeDef.Name} /*({NativeType})*/";
} }
if ( ManagedType == "string" ) if ( ManagedType == "string" )

View File

@ -19,13 +19,13 @@ namespace Generator
if ( g.Key == "ISteamMatchmakingPingResponse" ) continue; if ( g.Key == "ISteamMatchmakingPingResponse" ) continue;
if ( g.Key == "ISteamMatchmakingPingResponse" ) continue; if ( g.Key == "ISteamMatchmakingPingResponse" ) continue;
if ( g.Key == "Global" ) if ( g.Key == "SteamApi" )
{ {
sb = new StringBuilder(); sb = new StringBuilder();
Header(); Header();
GlobalClass( g.ToArray() ); Class( "SteamApi", g.OrderBy( x => x.Name ).ToArray() );
Footer(); Footer();
System.IO.File.WriteAllText( $"{targetName}Global.cs", sb.ToString() ); System.IO.File.WriteAllText( $"{targetName}SteamApi.cs", sb.ToString() );
return; return;
} }
@ -39,11 +39,12 @@ namespace Generator
private void Class( string classname, SteamApiDefinition.MethodDef[] methodDef ) private void Class( string classname, SteamApiDefinition.MethodDef[] methodDef )
{ {
var GenerateClassName = classname.Substring( 1 ); var GenerateClassName = classname;
if ( classname[0] == 'I' ) GenerateClassName = classname.Substring( 1 );
StartBlock( $"public unsafe class {GenerateClassName}" ); StartBlock( $"public unsafe class {GenerateClassName}" );
WriteLine( "internal IntPtr _ptr;" ); WriteLine( "internal Platform.Interface _pi;" );
WriteLine(); WriteLine();
@ -52,10 +53,15 @@ namespace Generator
// //
StartBlock( $"public {GenerateClassName}( IntPtr pointer )" ); StartBlock( $"public {GenerateClassName}( IntPtr pointer )" );
WriteLine( "_ptr = pointer;" ); WriteLine( "if ( Platform.IsWindows64 ) _pi = new Platform.Win64( pointer );" );
WriteLine( "else if ( Platform.IsWindows32 ) _pi = new Platform.Win32( pointer );" );
WriteLine( "else if ( Platform.IsLinux32 ) _pi = new Platform.Linux32( pointer );" );
WriteLine( "else if ( Platform.IsLinux64 ) _pi = new Platform.Linux64( pointer );" );
WriteLine( "else if ( Platform.IsOsx ) _pi = new Platform.Mac( pointer );" );
EndBlock(); EndBlock();
WriteLine(); WriteLine();
WriteLine( "public bool IsValid{ get{ return _pi != null && _pi.IsValid; } }" );
WriteLine(); WriteLine();
LastMethodName = ""; LastMethodName = "";
@ -68,16 +74,6 @@ namespace Generator
string LastMethodName; string LastMethodName;
private void GlobalClass( SteamApiDefinition.MethodDef[] methodDef )
{
StartBlock( $"public unsafe class Globals" );
foreach ( var m in methodDef )
ClassMethod( null, m );
EndBlock();
}
List<string> BeforeLines; List<string> BeforeLines;
List<string> AfterLines; List<string> AfterLines;
string ReturnType; string ReturnType;
@ -117,12 +113,6 @@ namespace Generator
if ( argString != "" ) argString = " " + argString + " "; if ( argString != "" ) argString = " " + argString + " ";
StartBlock( $"public{statc} {ReturnType} {methodName}({argString})" ); StartBlock( $"public{statc} {ReturnType} {methodName}({argString})" );
if ( classname != null )
{
WriteLine( "if ( _ptr == IntPtr.Zero ) throw new System.Exception( \"Internal pointer is null\"); // " );
WriteLine();
}
CallPlatformClass( classname, m, callargs.Select( x => x.InteropVariable() ).ToList(), ReturnVar ); CallPlatformClass( classname, m, callargs.Select( x => x.InteropVariable() ).ToList(), ReturnVar );
WriteLines( BeforeLines ); WriteLines( BeforeLines );
@ -367,12 +357,9 @@ namespace Generator
private void CallPlatformClass( string classname, SteamApiDefinition.MethodDef m, List<string> argList, string returnVar ) private void CallPlatformClass( string classname, SteamApiDefinition.MethodDef m, List<string> argList, string returnVar )
{ {
var firstArg = "_ptr";
if ( classname == null ) if ( classname == null )
{ {
classname = "Global"; classname = "SteamApi";
firstArg = "";
} }
var methodName = m.Name; var methodName = m.Name;
@ -381,9 +368,7 @@ namespace Generator
methodName += "0"; methodName += "0";
var args = string.Join( ", ", argList ); var args = string.Join( ", ", argList );
if ( args != "" && firstArg != "" ) args = $" {firstArg}, {args} "; if ( args != "" ) args = $" {args} ";
else if ( args != "" ) args = $" {args} ";
else args = $" {firstArg} ";
var r = ""; var r = "";
if ( ReturnType != "void" ) if ( ReturnType != "void" )
@ -393,8 +378,7 @@ namespace Generator
r = returnVar + " = "; r = returnVar + " = ";
// StartBlock( "case 1:" ); // StartBlock( "case 1:" );
BeforeLines.Add( $"if ( Platform.IsWindows32 ) {r}Platform.Win32.{classname}.{methodName}({args});" ); BeforeLines.Add( $"{r}_pi.{classname}_{methodName}({args});" );
BeforeLines.Add( $"else {r}Platform.Win64.{classname}.{methodName}({args});" );
// WriteLine( "break;" ); // WriteLine( "break;" );
// EndBlock(); // EndBlock();

View File

@ -8,39 +8,91 @@ namespace Generator
{ {
public partial class CSharpGenerator public partial class CSharpGenerator
{ {
private void PlatformClass( string type, string libraryName ) void PlatformInterface()
{ {
StartBlock( $"internal static partial class Platform" ); StartBlock( $"internal static partial class Platform" );
StartBlock( $"public static class {type}" ); StartBlock( $"public interface Interface" );
WriteLine( "bool IsValid { get; } " );
WriteLine();
foreach ( var c in def.methods.GroupBy( x => x.ClassName ) ) foreach ( var c in def.methods.GroupBy( x => x.ClassName ) )
{ {
PlatformClass( libraryName, c.Key, c.ToArray() ); PlatformInterface( c.Key, c.ToArray() );
} }
EndBlock(); EndBlock();
EndBlock(); EndBlock();
} }
private void PlatformClass( string libraryName, string key, SteamApiDefinition.MethodDef[] methodDef ) private void PlatformClass( string type, string libraryName )
{ {
if ( key == "ISteamMatchmakingPingResponse" ) return; StartBlock( $"internal static partial class Platform" );
if ( key == "ISteamMatchmakingServerListResponse" ) return; StartBlock( $"public class {type} : Interface" );
if ( key == "ISteamMatchmakingPlayersResponse" ) return;
if ( key == "ISteamMatchmakingRulesResponse" ) return;
if ( key == "ISteamMatchmakingPingResponse" ) return;
StartBlock( $"public static unsafe class {key}" ); WriteLine( "internal IntPtr _ptr;" );
WriteLine( "public bool IsValid { get{ return _ptr != null; } }" );
WriteLine();
//
// Constructor
//
StartBlock( $"public {type}( IntPtr pointer )" );
WriteLine( "_ptr = pointer;" );
EndBlock();
foreach ( var c in def.methods.GroupBy( x => x.ClassName ) )
{
PlatformClass( c.Key, c.ToArray() );
}
StartBlock( $"internal static unsafe class Native" );
foreach ( var c in def.methods.GroupBy( x => x.ClassName ) )
{
InteropClass( libraryName, c.Key, c.ToArray() );
}
EndBlock();
EndBlock();
EndBlock();
}
private void PlatformClass( string className, SteamApiDefinition.MethodDef[] methodDef )
{
if ( className == "ISteamMatchmakingPingResponse" ) return;
if ( className == "ISteamMatchmakingServerListResponse" ) return;
if ( className == "ISteamMatchmakingPlayersResponse" ) return;
if ( className == "ISteamMatchmakingRulesResponse" ) return;
if ( className == "ISteamMatchmakingPingResponse" ) return;
LastMethodName = ""; LastMethodName = "";
foreach ( var m in methodDef ) foreach ( var m in methodDef )
{ {
PlatformClassMethod( libraryName, key, m ); PlatformClassMethod( className, m );
} }
EndBlock();
WriteLine(); WriteLine();
} }
private void PlatformClassMethod( string library, string classname, SteamApiDefinition.MethodDef methodDef ) private void PlatformInterface( string className, SteamApiDefinition.MethodDef[] methodDef )
{
if ( className == "ISteamMatchmakingPingResponse" ) return;
if ( className == "ISteamMatchmakingServerListResponse" ) return;
if ( className == "ISteamMatchmakingPlayersResponse" ) return;
if ( className == "ISteamMatchmakingRulesResponse" ) return;
if ( className == "ISteamMatchmakingPingResponse" ) return;
LastMethodName = "";
foreach ( var m in methodDef )
{
PlatformInterfaceMethod( className, m );
}
WriteLine();
}
private void PlatformInterfaceMethod( string classname, SteamApiDefinition.MethodDef methodDef )
{ {
var arguments = BuildArguments( methodDef.Params ); var arguments = BuildArguments( methodDef.Params );
@ -59,7 +111,86 @@ namespace Generator
var flatName = $"SteamAPI_{classname}_{methodName}"; var flatName = $"SteamAPI_{classname}_{methodName}";
if ( classname == "Global" ) if ( classname == "SteamApi" )
flatName = methodName;
var argstring = string.Join( ", ", arguments.Select( x => x.InteropParameter() ) );
if ( argstring != "" ) argstring = $" {argstring} ";
WriteLine( $"{ret.Return()} {classname}_{methodName}({argstring});" );
LastMethodName = methodDef.Name;
}
private void PlatformClassMethod( string classname, SteamApiDefinition.MethodDef methodDef )
{
var arguments = BuildArguments( methodDef.Params );
var ret = new Argument()
{
Name = "return",
NativeType = methodDef.ReturnType
};
ret.Build( null, TypeDefs );
var methodName = methodDef.Name;
if ( LastMethodName == methodName )
methodName = methodName + "0";
var flatName = $"SteamAPI_{classname}_{methodName}";
if ( classname == "SteamApi" )
flatName = methodName;
var argstring = string.Join( ", ", arguments.Select( x => x.InteropParameter() ) );
if ( argstring != "" ) argstring = $" {argstring} ";
StartBlock( $"public virtual {ret.Return()} {classname}_{methodName}({argstring})" );
if ( methodDef.NeedsSelfPointer )
{
WriteLine( $"if ( _ptr == null ) throw new System.Exception( \"{classname} _ptr is null!\" );" );
WriteLine();
}
var retcode = "";
if ( ret.NativeType != "void" )
retcode = "return ";
argstring = string.Join( ", ", arguments.Select( x => x.InteropVariable() ) );
if ( methodDef.NeedsSelfPointer )
argstring = "_ptr" + ( argstring.Length > 0 ? ", " : "" ) + argstring;
WriteLine( $"{retcode}Native.{classname}.{methodName}({argstring});" );
EndBlock();
LastMethodName = methodDef.Name;
}
private void InteropClassMethod( string library, string classname, SteamApiDefinition.MethodDef methodDef )
{
var arguments = BuildArguments( methodDef.Params );
var ret = new Argument()
{
Name = "return",
NativeType = methodDef.ReturnType
};
ret.Build( null, TypeDefs );
var methodName = methodDef.Name;
if ( LastMethodName == methodName )
methodName = methodName + "0";
var flatName = $"SteamAPI_{classname}_{methodName}";
if ( classname == "SteamApi" )
flatName = methodName; flatName = methodName;
@ -70,8 +201,33 @@ namespace Generator
argstring = "IntPtr " + classname + ( argstring.Length > 0 ? ", " : "" ) + argstring; argstring = "IntPtr " + classname + ( argstring.Length > 0 ? ", " : "" ) + argstring;
} }
WriteLine( $"[DllImportAttribute( \"{library}\", EntryPoint = \"{flatName}\" )] internal static extern {ret.Return()} {methodName}( {argstring} );" ); if ( argstring != "" ) argstring = $" {argstring} ";
WriteLine( $"[DllImportAttribute( \"{library}\", EntryPoint = \"{flatName}\" )] internal static extern {ret.Return()} {methodName}({argstring});" );
LastMethodName = methodDef.Name; LastMethodName = methodDef.Name;
} }
private void InteropClass( string libraryName, string className, SteamApiDefinition.MethodDef[] methodDef )
{
if ( className == "ISteamMatchmakingPingResponse" ) return;
if ( className == "ISteamMatchmakingServerListResponse" ) return;
if ( className == "ISteamMatchmakingPlayersResponse" ) return;
if ( className == "ISteamMatchmakingRulesResponse" ) return;
if ( className == "ISteamMatchmakingPingResponse" ) return;
StartBlock( $"internal static unsafe class {className}" );
LastMethodName = "";
foreach ( var m in methodDef )
{
InteropClassMethod( libraryName, className, m );
}
EndBlock();
WriteLine();
}
} }
} }

View File

@ -21,7 +21,7 @@ namespace Generator
def.methods.Add( new SteamApiDefinition.MethodDef() def.methods.Add( new SteamApiDefinition.MethodDef()
{ {
ClassName = "Global", ClassName = "SteamApi",
Name = "SteamAPI_Init", Name = "SteamAPI_Init",
ReturnType = "void", ReturnType = "void",
NeedsSelfPointer = false NeedsSelfPointer = false
@ -29,7 +29,7 @@ namespace Generator
def.methods.Add( new SteamApiDefinition.MethodDef() def.methods.Add( new SteamApiDefinition.MethodDef()
{ {
ClassName = "Global", ClassName = "SteamApi",
Name = "SteamAPI_RunCallbacks", Name = "SteamAPI_RunCallbacks",
ReturnType = "void", ReturnType = "void",
NeedsSelfPointer = false NeedsSelfPointer = false
@ -37,7 +37,7 @@ namespace Generator
def.methods.Add( new SteamApiDefinition.MethodDef() def.methods.Add( new SteamApiDefinition.MethodDef()
{ {
ClassName = "Global", ClassName = "SteamApi",
Name = "SteamGameServer_RunCallbacks", Name = "SteamGameServer_RunCallbacks",
ReturnType = "void", ReturnType = "void",
NeedsSelfPointer = false NeedsSelfPointer = false
@ -45,7 +45,7 @@ namespace Generator
def.methods.Add( new SteamApiDefinition.MethodDef() def.methods.Add( new SteamApiDefinition.MethodDef()
{ {
ClassName = "Global", ClassName = "SteamApi",
Name = "SteamAPI_RegisterCallback", Name = "SteamAPI_RegisterCallback",
ReturnType = "void", ReturnType = "void",
NeedsSelfPointer = false, NeedsSelfPointer = false,
@ -66,7 +66,7 @@ namespace Generator
def.methods.Add( new SteamApiDefinition.MethodDef() def.methods.Add( new SteamApiDefinition.MethodDef()
{ {
ClassName = "Global", ClassName = "SteamApi",
Name = "SteamAPI_UnregisterCallback", Name = "SteamAPI_UnregisterCallback",
ReturnType = "void", ReturnType = "void",
NeedsSelfPointer = false, NeedsSelfPointer = false,
@ -82,7 +82,7 @@ namespace Generator
def.methods.Add( new SteamApiDefinition.MethodDef() def.methods.Add( new SteamApiDefinition.MethodDef()
{ {
ClassName = "Global", ClassName = "SteamApi",
Name = "SteamInternal_GameServer_Init", Name = "SteamInternal_GameServer_Init",
ReturnType = "bool", ReturnType = "bool",
NeedsSelfPointer = false, NeedsSelfPointer = false,
@ -123,7 +123,7 @@ namespace Generator
def.methods.Add( new SteamApiDefinition.MethodDef() def.methods.Add( new SteamApiDefinition.MethodDef()
{ {
ClassName = "Global", ClassName = "SteamApi",
Name = "SteamAPI_Shutdown", Name = "SteamAPI_Shutdown",
ReturnType = "void", ReturnType = "void",
NeedsSelfPointer = false NeedsSelfPointer = false
@ -134,7 +134,7 @@ namespace Generator
def.methods.Add( new SteamApiDefinition.MethodDef() def.methods.Add( new SteamApiDefinition.MethodDef()
{ {
ClassName = "Global", ClassName = "SteamApi",
Name = "SteamAPI_GetHSteamUser", Name = "SteamAPI_GetHSteamUser",
ReturnType = "HSteamUser", ReturnType = "HSteamUser",
NeedsSelfPointer = false NeedsSelfPointer = false
@ -142,7 +142,7 @@ namespace Generator
def.methods.Add( new SteamApiDefinition.MethodDef() def.methods.Add( new SteamApiDefinition.MethodDef()
{ {
ClassName = "Global", ClassName = "SteamApi",
Name = "SteamAPI_GetHSteamPipe", Name = "SteamAPI_GetHSteamPipe",
ReturnType = "HSteamPipe", ReturnType = "HSteamPipe",
NeedsSelfPointer = false NeedsSelfPointer = false
@ -150,7 +150,7 @@ namespace Generator
def.methods.Add( new SteamApiDefinition.MethodDef() def.methods.Add( new SteamApiDefinition.MethodDef()
{ {
ClassName = "Global", ClassName = "SteamApi",
Name = "SteamGameServer_GetHSteamUser", Name = "SteamGameServer_GetHSteamUser",
ReturnType = "HSteamUser", ReturnType = "HSteamUser",
NeedsSelfPointer = false NeedsSelfPointer = false
@ -158,7 +158,7 @@ namespace Generator
def.methods.Add( new SteamApiDefinition.MethodDef() def.methods.Add( new SteamApiDefinition.MethodDef()
{ {
ClassName = "Global", ClassName = "SteamApi",
Name = "SteamGameServer_GetHSteamPipe", Name = "SteamGameServer_GetHSteamPipe",
ReturnType = "HSteamPipe", ReturnType = "HSteamPipe",
NeedsSelfPointer = false NeedsSelfPointer = false
@ -166,7 +166,7 @@ namespace Generator
def.methods.Add( new SteamApiDefinition.MethodDef() def.methods.Add( new SteamApiDefinition.MethodDef()
{ {
ClassName = "Global", ClassName = "SteamApi",
Name = "SteamInternal_CreateInterface", Name = "SteamInternal_CreateInterface",
ReturnType = "void *", ReturnType = "void *",
Params = new SteamApiDefinition.MethodDef.ParamType[] Params = new SteamApiDefinition.MethodDef.ParamType[]
@ -211,6 +211,13 @@ namespace Generator
System.IO.File.WriteAllText( $"{folder}SteamNative.Structs.cs", sb.ToString() ); System.IO.File.WriteAllText( $"{folder}SteamNative.Structs.cs", sb.ToString() );
} }
{
sb = new StringBuilder();
Header();
PlatformInterface();
Footer();
System.IO.File.WriteAllText( $"{folder}SteamNative.Platform.Interface.cs", sb.ToString() );
}
{ {
sb = new StringBuilder(); sb = new StringBuilder();
@ -231,9 +238,17 @@ namespace Generator
{ {
sb = new StringBuilder(); sb = new StringBuilder();
Header(); Header();
PlatformClass( "Linux", "libsteam_api.so" ); PlatformClass( "Linux32", "libsteam_api.so" );
Footer(); Footer();
System.IO.File.WriteAllText( $"{folder}SteamNative.Platform.Linux.cs", sb.ToString() ); System.IO.File.WriteAllText( $"{folder}SteamNative.Platform.Linux32.cs", sb.ToString() );
}
{
sb = new StringBuilder();
Header();
PlatformClass( "Linux64", "libsteam_api64.so" );
Footer();
System.IO.File.WriteAllText( $"{folder}SteamNative.Platform.Linux64.cs", sb.ToString() );
} }
{ {