From 9c80d60c1e2f276c0d654bba91c370c814c9379a Mon Sep 17 00:00:00 2001 From: Michael Dirks Date: Sat, 6 Jun 2015 21:15:41 +0200 Subject: [PATCH] Implement SteamController Wrapper. Update Blitz-side files. Remove obsolete files. --- Blitz/BlitzSteam.bb | 107 ++++++++++++++++++++++++ Blitz/BlitzSteam.decls | 130 ++++++++++++++++++++++++++--- Blitz/BlitzSteamUtility.bb | 41 ++++++++- BlitzPointerLink.cpp | 5 -- BlitzSteam.vcxproj | 2 + BlitzSteam.vcxproj.filters | 15 +++- Helpers/Double.cpp | 129 ++++++++++++++++++++++++++++ Helper.cpp => Helpers/Helper.cpp | 0 Helpers/Int64.cpp | 124 +++++++++++++++++++++++++++ Steam.cpp | 32 ------- Wrapper/SteamApps.cpp | 6 +- Wrapper/SteamClient.cpp | 109 ++++++++++++------------ Wrapper/SteamController.cpp | 29 +++++++ Wrapper/SteamFriends.cpp | 18 ++++ Wrapper/SteamGameServer.cpp | 0 Wrapper/SteamGameServerStats.cpp | 0 Wrapper/SteamHTMLSurface.cpp | 0 Wrapper/SteamHTTP.cpp | 0 Wrapper/SteamInventory.cpp | 0 Wrapper/SteamMatchmaking.cpp | 0 Wrapper/SteamMatchmakingServer.cpp | 0 Wrapper/SteamMusic.cpp | 0 Wrapper/SteamMusicRemote.cpp | 0 Wrapper/SteamNetworking.cpp | 0 Wrapper/SteamRemoteStorage.cpp | 0 Wrapper/SteamScreenshots.cpp | 0 Wrapper/SteamUGC.cpp | 0 Wrapper/SteamUnifiedMessages.cpp | 0 Wrapper/SteamUserStats.cpp | 0 Wrapper/SteamUtils.cpp | 0 Wrapper/SteamVideo.cpp | 0 31 files changed, 637 insertions(+), 110 deletions(-) delete mode 100644 BlitzPointerLink.cpp create mode 100644 Helpers/Double.cpp rename Helper.cpp => Helpers/Helper.cpp (100%) create mode 100644 Helpers/Int64.cpp delete mode 100644 Steam.cpp create mode 100644 Wrapper/SteamFriends.cpp create mode 100644 Wrapper/SteamGameServer.cpp create mode 100644 Wrapper/SteamGameServerStats.cpp create mode 100644 Wrapper/SteamHTMLSurface.cpp create mode 100644 Wrapper/SteamHTTP.cpp create mode 100644 Wrapper/SteamInventory.cpp create mode 100644 Wrapper/SteamMatchmaking.cpp create mode 100644 Wrapper/SteamMatchmakingServer.cpp create mode 100644 Wrapper/SteamMusic.cpp create mode 100644 Wrapper/SteamMusicRemote.cpp create mode 100644 Wrapper/SteamNetworking.cpp create mode 100644 Wrapper/SteamRemoteStorage.cpp create mode 100644 Wrapper/SteamScreenshots.cpp create mode 100644 Wrapper/SteamUGC.cpp create mode 100644 Wrapper/SteamUnifiedMessages.cpp create mode 100644 Wrapper/SteamUserStats.cpp create mode 100644 Wrapper/SteamUtils.cpp create mode 100644 Wrapper/SteamVideo.cpp diff --git a/Blitz/BlitzSteam.bb b/Blitz/BlitzSteam.bb index 0a0deee..3712b80 100644 --- a/Blitz/BlitzSteam.bb +++ b/Blitz/BlitzSteam.bb @@ -14,6 +14,113 @@ ; You should have received a copy of the GNU Lesser General Public License ; along with this program. If not, see . +; Steam ------------------------------------------------------------------------- +Const BLITZSTEAM_ENUM_CALLBACK_SteamAppListCallbacks = 3900 +Const BLITZSTEAM_ENUM_CALLBACK_SteamAppsCallbacks = 1000 +Const BLITZSTEAM_ENUM_CALLBACK_SteamBillingCallbacks = 400 +Const BLITZSTEAM_ENUM_CALLBACK_SteamContentServerCallbacks = 600 +Const BLITZSTEAM_ENUM_CALLBACK_SteamControllerCallbacks = 2800 +Const BLITZSTEAM_ENUM_CALLBACK_SteamFriendsCallbacks = 300 +Const BLITZSTEAM_ENUM_CALLBACK_SteamGameCoordinatorCallbacks = 1700 +Const BLITZSTEAM_ENUM_CALLBACK_SteamGameServerCallbacks = 200 +Const BLITZSTEAM_ENUM_CALLBACK_SteamGameServerItemsCallbacks = 1500 +Const BLITZSTEAM_ENUM_CALLBACK_SteamGameServerStatsCallbacks = 1800 +Const BLITZSTEAM_ENUM_CALLBACK_SteamGameStatsCallbacks = 2000 +Const BLITZSTEAM_ENUM_CALLBACK_SteamHTMLSurfaceCallbacks = 4500 +Const BLITZSTEAM_ENUM_CALLBACK_SteamMatchmakingCallbacks = 500 +Const BLITZSTEAM_ENUM_CALLBACK_SteamMusicCallbacks = 4000 +Const BLITZSTEAM_ENUM_CALLBACK_SteamMusicRemoteCallbacks = 4100 +Const BLITZSTEAM_ENUM_CALLBACK_SteamNetworkingCallbacks = 1200 +Const BLITZSTEAM_ENUM_CALLBACK_SteamReservedCallbacks = 4400 +Const BLITZSTEAM_ENUM_CALLBACK_SteamScreenshotsCallbacks = 2300 +Const BLITZSTEAM_ENUM_CALLBACK_SteamStreamLauncherCallbacks = 2600 +Const BLITZSTEAM_ENUM_CALLBACK_SteamStreamClientCallbacks = 3500 +Const BLITZSTEAM_ENUM_CALLBACK_SteamUserCallbacks = 100 +Const BLITZSTEAM_ENUM_CALLBACK_SteamUserStatsCallbacks = 1100 +Const BLITZSTEAM_ENUM_CALLBACK_SteamUtilsCallbacks = 700 +Const BLITZSTEAM_ENUM_CALLBACK_Steam2AsyncCallbacks = 1900 +Const BLITZSTEAM_ENUM_CALLBACK_ClientAudioCallbacks = 2400 +Const BLITZSTEAM_ENUM_CALLBACK_ClientControllerCallbacks = 2700 +Const BLITZSTEAM_ENUM_CALLBACK_ClientDepotBuilderCallbacks = 1400 +Const BLITZSTEAM_ENUM_CALLBACK_ClientDeviceAuthCallbacks = 3000 +Const BLITZSTEAM_ENUM_CALLBACK_ClientFriendsCallbacks = 800 +Const BLITZSTEAM_ENUM_CALLBACK_ClientHTTPCallbacks = 2100 +Const BLITZSTEAM_ENUM_CALLBACK_ClientInventoryCallbacks = 4700 +Const BLITZSTEAM_ENUM_CALLBACK_ClientMusicCallbacks = 3200 +Const BLITZSTEAM_ENUM_CALLBACK_ClientNetworkDeviceManagerCallbacks = 3100 +Const BLITZSTEAM_ENUM_CALLBACK_ClientParentalSettingsCallbacks = 2900 +Const BLITZSTEAM_ENUM_CALLBACK_ClientProductBuilderCallbacks = 3600 +Const BLITZSTEAM_ENUM_CALLBACK_ClientRemoteStorageCallbacks = 1300 +Const BLITZSTEAM_ENUM_CALLBACK_ClientRemoteClientManagerCallbacks = 3300 +Const BLITZSTEAM_ENUM_CALLBACK_ClientRemoteControlManagerCallbacks = 3800 +Const BLITZSTEAM_ENUM_CALLBACK_ClientReservedCallbacks = 4300 +Const BLITZSTEAM_ENUM_CALLBACK_ClientScreenshotsCallbacks = 2200 +Const BLITZSTEAM_ENUM_CALLBACK_ClientShortcutsCallbacks = 3700 +Const BLITZSTEAM_ENUM_CALLBACK_ClientUGCCallbacks = 3400 +Const BLITZSTEAM_ENUM_CALLBACK_ClientUnifiedMessagesCallbacks = 2500 +Const BLITZSTEAM_ENUM_CALLBACK_ClientUserCallbacks = 900 +Const BLITZSTEAM_ENUM_CALLBACK_ClientUtilsCallbacks = 1600 +Const BLITZSTEAM_ENUM_CALLBACK_ClientVideoCallbacks = 4600 +Const BLITZSTEAM_ENUM_CALLBACK_ClientVRCallbacks = 4200 + +; SteamAppList ------------------------------------------------------------------ +Const BLITZSTEAM_CALLBACK_APPINSTALLED = BLITZSTEAM_ENUM_CALLBACK_SteamAppListCallbacks + 1 +Const BLITZSTEAM_CALLBACK_APPUNINSTALLED = BLITZSTEAM_ENUM_CALLBACK_SteamAppListCallbacks + 2 + +; SteamApps --------------------------------------------------------------------- +Const BLITZSTEAM_CALLBACK_DLCINSTALLED = BLITZSTEAM_ENUM_CALLBACK_SteamAppsCallbacks + 5 +Const BLITZSTEAM_CALLBACK_APPPROOFOFPURCHASEKEYRESPONSE = BLITZSTEAM_ENUM_CALLBACK_SteamAppsCallbacks + 13 +Const BLITZSTEAM_CALLBACK_NEWLAUNCHQUERYPARAMETERS = BLITZSTEAM_ENUM_CALLBACK_SteamAppsCallbacks + 14 +; The following things are PS3 only: +; ERegisterActivationCodeResult +; RegisterActivationCodeResponse_t + +; SteamClient ------------------------------------------------------------------- +Const BLITZSTEAM_EACCOUNTYPE_INVALID = 0 +Const BLITZSTEAM_EACCOUNTYPE_INDIVIDUAL = 1 +Const BLITZSTEAM_EACCOUNTYPE_MULTISEAT = 2 +Const BLITZSTEAM_EACCOUNTYPE_GAMESERVER = 3 +Const BLITZSTEAM_EACCOUNTYPE_ANONGAMESERVER = 4 +Const BLITZSTEAM_EACCOUNTYPE_PENDING = 5 +Const BLITZSTEAM_EACCOUNTYPE_CONTENTSERVER = 6 +Const BLITZSTEAM_EACCOUNTYPE_CLAN = 7 +Const BLITZSTEAM_EACCOUNTYPE_CHAT = 8 +;Const BLITZSTEAM_EACCOUNTYPE_CONSOLEUSER = 9 +Const BLITZSTEAM_EACCOUNTYPE_ANONUSER = 10 + +; SteamController --------------------------------------------------------------- +Const BLITZSTEAM_RIGHT_TRIGGER_MASK = $00000001 +Const BLITZSTEAM_LEFT_TRIGGER_MASK = $00000002 +Const BLITZSTEAM_RIGHT_BUMPER_MASK = $00000004 +Const BLITZSTEAM_LEFT_BUMPER_MASK = $00000008 +Const BLITZSTEAM_BUTTON_0_MASK = $00000010 +Const BLITZSTEAM_BUTTON_1_MASK = $00000020 +Const BLITZSTEAM_BUTTON_2_MASK = $00000040 +Const BLITZSTEAM_BUTTON_3_MASK = $00000080 +Const BLITZSTEAM_TOUCH_0_MASK = $00000100 +Const BLITZSTEAM_TOUCH_1_MASK = $00000200 +Const BLITZSTEAM_TOUCH_2_MASK = $00000400 +Const BLITZSTEAM_TOUCH_3_MASK = $00000800 +Const BLITZSTEAM_BUTTON_MENU_MASK = $0001000 +Const BLITZSTEAM_BUTTON_STEAM_MASK = $0002000 +Const BLITZSTEAM_BUTTON_ESCAPE_MASK = $0004000 +Const BLITZSTEAM_BUTTON_BACK_LEFT_MASK = $0008000 +Const BLITZSTEAM_BUTTON_BACK_RIGHT_MASK = $0010000 +Const BLITZSTEAM_BUTTON_LEFTPAD_CLICKED_MASK = $0020000 +Const BLITZSTEAM_BUTTON_RIGHTPAD_CLICKED_MASK = $0040000 +Const BLITZSTEAM_LEFTPAD_FINGERDOWN_MASK = $0080000 +Const BLITZSTEAM_RIGHTPAD_FINGERDOWN_MASK = $0100000 +Const BLITZSTEAM_JOYSTICK_BUTTON_MASK = $0400000 +Const BLITZSTEAM_ESTEAMCONTROLLERPAD_LEFT = 0 +Const BLITZSTEAM_ESTEAMCONTROLLERPAD_RIGHT = 1 + +Type BlitzSteamControllerState + Field unPacketNum% + Field ulButtonsL%, ulButtonsR% + Field sLeftPadXY // Left/High = X, Right/Low = Y + Field sRightPadXY // Left/High = X, Right/Low = Y +End Type + ;---------------------------------------------------------------- ;-- Enumerations ;---------------------------------------------------------------- diff --git a/Blitz/BlitzSteam.decls b/Blitz/BlitzSteam.decls index f98759e..f461e4c 100644 --- a/Blitz/BlitzSteam.decls +++ b/Blitz/BlitzSteam.decls @@ -15,14 +15,76 @@ ; along with this program. If not, see . .lib "BlitzSteam.dll" +; Helpers ----------------------------------------------------------------------- +; -- Int64 +BlitzSteamInt64_New%() +BlitzSteamInt64_Copy%(other%) +BlitzSteamInt64_Destroy(this%) +BlitzSteamInt64_SetP(this%, other%) +BlitzSteamInt64_SetV(this%, left%, right%) +BlitzSteamInt64_AddP(this%, other%) +BlitzSteamInt64_AddV(this%, left%, right%) +BlitzSteamInt64_SubP(this%, other%) +BlitzSteamInt64_SubV(this%, left%, right%) +BlitzSteamInt64_MulP(this%, other%) +BlitzSteamInt64_MulV(this%, left%, right%) +BlitzSteamInt64_DivP(this%, other%) +BlitzSteamInt64_DivV(this%, left%, right%) +BlitzSteamInt64_EqualsP%(this%, other%) +BlitzSteamInt64_EqualsV%(this%, left%, right%) +BlitzSteamInt64_GreaterP%(this%, other%) +BlitzSteamInt64_GreaterV%(this%, left%, right%) +BlitzSteamInt64_GEqualsP%(this%, other%) +BlitzSteamInt64_GEqualsV%(this%, left%, right%) +BlitzSteamInt64_SmallerP%(this%, other%) +BlitzSteamInt64_SmallerV%(this%, left%, right%) +BlitzSteamInt64_SEqualsP%(this%, other%) +BlitzSteamInt64_SEqualsV%(this%, left%, right%) +BlitzSteamInt64_ToString$(this%) +BlitzSteamInt64_ValueL%(this%) +BlitzSteamInt64_ValueR%(this%) +BlitzSteamInt64_FromFloat%(value#) +BlitzSteamInt64_ToFloat#(this%) +BlitzSteamInt64_ToDouble%(this%) +; -- Double +BlitzSteamDouble_New%() +BlitzSteamDouble_Copy%(other%) +BlitzSteamDouble_Destroy(this%) +BlitzSteamDouble_SetP(this%, other%) +BlitzSteamDouble_SetV(this%, left%, right%) +BlitzSteamDouble_AddP(this%, other%) +BlitzSteamDouble_AddV(this%, left%, right%) +BlitzSteamDouble_SubP(this%, other%) +BlitzSteamDouble_SubV(this%, left%, right%) +BlitzSteamDouble_MulP(this%, other%) +BlitzSteamDouble_MulV(this%, left%, right%) +BlitzSteamDouble_DivP(this%, other%) +BlitzSteamDouble_DivV(this%, left%, right%) +BlitzSteamDouble_EqualsP%(this%, other%) +BlitzSteamDouble_EqualsV%(this%, left%, right%) +BlitzSteamDouble_GreaterP%(this%, other%) +BlitzSteamDouble_GreaterV%(this%, left%, right%) +BlitzSteamDouble_GEqualsP%(this%, other%) +BlitzSteamDouble_GEqualsV%(this%, left%, right%) +BlitzSteamDouble_SmallerP%(this%, other%) +BlitzSteamDouble_SmallerV%(this%, left%, right%) +BlitzSteamDouble_SEqualsP%(this%, other%) +BlitzSteamDouble_SEqualsV%(this%, left%, right%) +BlitzSteamDouble_ToString$(this%) +BlitzSteamDouble_ToFloat#(this%) +BlitzSteamDouble_FromFloat%(value#) +BlitzSteamDouble_ToInt32%(this%) +BlitzSteamDouble_FromInt32%(value%) +BlitzSteamDouble_ToInt64%(this%) + ; Steam ------------------------------------------------------------------------- BlitzSteam_Init%() BlitzSteam_Shutdown() BlitzSteam_IsSteamRunning%() BlitzSteam_RestartAppIfNecessary%(unOwnAppID%) BlitzSteam_SetMiniDumpComment(pchMsg$) -BlitzSteam_WriteMiniDump(uStructuredExceptionCode%, pvExceptionInfo%, uBuildID%) -BlitzSteam_WriteMiniDumpBank(uStructuredExceptionCode%, pvExceptionInfo*, uBuildID%) : "BlitzSteam_WriteMiniDump" +BlitzSteam_WriteMiniDumpEx(uStructuredExceptionCode%, pvExceptionInfo%, uBuildID%) : "BlitzSteam_WriteMiniDump" +BlitzSteam_WriteMiniDump(uStructuredExceptionCode%, pvExceptionInfo*, uBuildID%) ; -- Interfaces BlitzSteamAppList%() BlitzSteamApps%() @@ -55,11 +117,11 @@ BlitzSteam_UnregisterCallResult(pCallback%, hAPICall_L%, hAPICall_R%) ; SteamAppList ------------------------------------------------------------------ BlitzSteamAppList_GetNumInstalledApps%(lpSteamAppList%) BlitzSteamAppList_GetInstalledAppsEx%(lpSteamAppList%, pvecAppID%, unMaxIDs%) : "BlitzSteamAppList_GetInstalledApps" -BlitzSteamAppList_GetInstalledApps%(lpSteamAppList%, pvecAppIDBank*, unMaxIDs%) +BlitzSteamAppList_GetInstalledApps%(lpSteamAppList%, pvecAppID*, unMaxIDs%) BlitzSteamAppList_GetAppNameEx%(lpSteamAppList%, nAppId%, pchName%, cchNameMax%) : "BlitzSteamAppList_GetAppName" -BlitzSteamAppList_GetAppName%(lpSteamAppList%, nAppId%, pchNameBank*, cchNameMax%) +BlitzSteamAppList_GetAppName%(lpSteamAppList%, nAppId%, pchName*, cchNameMax%) BlitzSteamAppList_GetAppInstallDirEx%(lpSteamAppList%, nAppId%, pchDirectory%, cchDirectoryMax%) : "BlitzSteamAppList_GetAppInstallDir" -BlitzSteamAppList_GetAppInstallDir%(lpSteamAppList%, nAppId%, pchDirectoryBank*, cchDirectoryMax%) +BlitzSteamAppList_GetAppInstallDir%(lpSteamAppList%, nAppId%, pchDirectory*, cchDirectoryMax%) BlitzSteamAppList_GetAppBuildId%(lpSteamAppList%, nAppId%) ; SteamApps --------------------------------------------------------------------- @@ -75,21 +137,69 @@ BlitzSteamApps_GetEarliestPurchaseUnixTime%(lpSteamApps%, appID%) BlitzSteamApps_IsSubscribedFromFreeWeekend%(lpSteamApps%) BlitzSteamApps_GetDLCCount%(lpSteamApps%) BlitzSteamApps_GetDLCDataByIndexEx%(lpSteamApps%, iDLC%, pAppId%, pbAvailable%, pchName%, cchNameBufferSize%) : "BlitzSteamApps_GetDLCDataByIndex" -BlitzSteamApps_GetDLCDataByIndex%(lpSteamApps%, iDLC%, pAppIdBank*, pbAvailableBank*, pchNameBank*, cchNameBufferSize%) +BlitzSteamApps_GetDLCDataByIndex%(lpSteamApps%, iDLC%, pAppId*, pbAvailable*, pchName*, cchNameBufferSize%) BlitzSteamApps_InstallDLC(lpSteamApps%, nAppID%) BlitzSteamApps_UninstallDLC(lpSteamApps%, nAppID%) BlitzSteamApps_RequestAppProofOfPurchaseKey(lpSteamApps%, nAppID%) BlitzSteamApps_GetCurrentBetaNameEx%(lpSteamApps%, pchName%, cchNameBufferSize%) : "BlitzSteamApps_GetCurrentBetaName" -BlitzSteamApps_GetCurrentBetaName%(lpSteamApps%, pchNameBank*, cchNameBufferSize%) +BlitzSteamApps_GetCurrentBetaName%(lpSteamApps%, pchName*, cchNameBufferSize%) BlitzSteamApps_MarkContentCorrupt%(lpSteamApps%, bMissingFilesOnly%) BlitzSteamApps_GetInstalledDepotsEx%(lpSteamApps%, nAppID%, pvecDepots%, cMaxDepots%) : "BlitzSteamApps_GetInstalledDepots" -BlitzSteamApps_GetInstalledDepots%(lpSteamApps%, nAppID%, pvecDepotsBank*, cMaxDepots%) +BlitzSteamApps_GetInstalledDepots%(lpSteamApps%, nAppID%, pvecDepots*, cMaxDepots%) BlitzSteamApps_GetAppInstallDirEx%(lpSteamApps%, nAppID%, pchFolder%, cchFolderBufferSize%) : "BlitzSteamApps_GetAppInstallDir" -BlitzSteamApps_GetAppInstallDir%(lpSteamApps%, nAppID%, pchFolderBank*, cchFolderBufferSize%) +BlitzSteamApps_GetAppInstallDir%(lpSteamApps%, nAppID%, pchFolder*, cchFolderBufferSize%) BlitzSteamApps_IsAppInstalled%(lpSteamApps%, nAppID%) BlitzSteamApps_GetAppOwner%(lpSteamApps%) BlitzSteamApps_GetLaunchQueryParam$(lpSteamApps%, pchKey$) -BlitzSteamApps_GetDlcDownloadProgress%(lpSteamApps%, nAppID%, pOutputBank*) +BlitzSteamApps_GetDlcDownloadProgressEx%(lpSteamApps%, nAppID%, punBytesDownloaded%, punBytesTotal%) : "BlitzSteamApps_GetDlcDownloadProgress" +BlitzSteamApps_GetDlcDownloadProgress%(lpSteamApps%, nAppID%, punBytesDownloaded*, punBytesTotal*) BlitzSteamApps_GetAppBuildId%(lpSteamApps%) +; SteamClient ------------------------------------------------------------------- +BlitzSteamClient_CreateSteamPipe%(lpSteamClient%) +BlitzSteamClient_ReleaseSteamPipe%(lpSteamClient%, hSteamPipe%) +BlitzSteamClient_ConnectToGlobalUser%(lpSteamClient%, hSteamPipe%) +BlitzSteamClient_SetLocalIPBinding(lpSteamClient, unIP%, usPort%) +BlitzSteamClient_CreateLocalUserEx%(lpSteamClient%, phSteamPipe*, eAccountType%) : "BlitzSteamClient_CreateLocalUser" +BlitzSteamClient_CreateLocalUser%(lpSteamClient%, phSteamPipe*, eAccountType%) +BlitzSteamClient_ReleaseUser(lpSteamClient%, hSteamPipe%, hSteamUser%) +BlitzSteamClient_RunFrame(lpSteamClient%) +BlitzSteamClient_GetIPCCallCount%(lpSteamClient%) +BlitzSteamClient_ShutdownIfAllPipesClosed%(lpSteamClient%) +; -- Interfaces +BlitzSteamClient_GetSteamAppList%(lpSteamClient%, hSteamUser%, hSteamPipe%, pchVersion$) +BlitzSteamClient_GetSteamApps%(lpSteamClient%, hSteamUser%, hSteamPipe%, pchVersion$) +BlitzSteamClient_GetSteamController%(lpSteamClient%, hSteamUser%, hSteamPipe%, pchVersion$) +BlitzSteamClient_GetSteamFriends%(lpSteamClient%, hSteamUser%, hSteamPipe%, pchVersion$) +BlitzSteamClient_GetSteamGameServer%(lpSteamClient%, hSteamUser%, hSteamPipe%, pchVersion$) +BlitzSteamClient_GetSteamGameServerStats%(lpSteamClient%, hSteamUser%, hSteamPipe%, pchVersion$) +BlitzSteamClient_GetSteamHTMLSurface%(lpSteamClient%, hSteamUser%, hSteamPipe%, pchVersion$) +BlitzSteamClient_GetSteamHTTP%(lpSteamClient%, hSteamUser%, hSteamPipe%, pchVersion$) +BlitzSteamClient_GetSteamInventory%(lpSteamClient%, hSteamUser%, hSteamPipe%, pchVersion$) +BlitzSteamClient_GetSteamMatchmaking%(lpSteamClient%, hSteamUser%, hSteamPipe%, pchVersion$) +BlitzSteamClient_GetSteamMatchmakingServers%(lpSteamClient%, hSteamUser%, hSteamPipe%, pchVersion$) +BlitzSteamClient_GetSteamMusic%(lpSteamClient%, hSteamUser%, hSteamPipe%, pchVersion$) +BlitzSteamClient_GetSteamMusicRemote%(lpSteamClient%, hSteamUser%, hSteamPipe%, pchVersion$) +BlitzSteamClient_GetSteamNetworking%(lpSteamClient%, hSteamUser%, hSteamPipe%, pchVersion$) +BlitzSteamClient_GetSteamRemoteStorage%(lpSteamClient%, hSteamUser%, hSteamPipe%, pchVersion$) +BlitzSteamClient_GetSteamScreenshots%(lpSteamClient%, hSteamUser%, hSteamPipe%, pchVersion$) +BlitzSteamClient_GetSteamUGC%(lpSteamClient%, hSteamUser%, hSteamPipe%, pchVersion$) +BlitzSteamClient_GetSteamUnifiedMessages%(lpSteamClient%, hSteamUser%, hSteamPipe%, pchVersion$) +BlitzSteamClient_GetSteamUser%(lpSteamClient%, hSteamUser%, hSteamPipe%, pchVersion$) +BlitzSteamClient_GetSteamUserStats%(lpSteamClient%, hSteamUser%, hSteamPipe%, pchVersion$) +BlitzSteamClient_GetSteamUtils%(lpSteamClient%, hSteamPipe%, pchVersion$) +BlitzSteamClient_GetSteamVideo%(lpSteamClient%, hSteamUser%, hSteamPipe%, pchVersion$) +; -- Callbacks & Hooks +BlitzSteamClient_SetWarningMessageHook(lpSteamClient%, fpFunction%) +BlitzSteamClient_Set_SteamAPI_CPostAPIResultInProcess(lpSteamClient%, fpFunction%) +BlitzSteamClient_Remove_SteamAPI_CPostAPIResultInProcess(lpSteamClient%, fpFunction%) +BlitzSteamClient_Set_SteamAPI_CCheckCallbackRegisteredInProcess(lpSteamClient%, fpFunction%) + ; SteamController --------------------------------------------------------------- +BlitzSteamController_Init%(lpSteamController%, pchAbsolutePathToControllerConfigVDF$) +BlitzSteamController_Shutdown%(lpSteamController%) +BlitzSteamController_RunFrame(lpSteamController%) +BlitzSteamController_GetControllerStateEx%(lpSteamController%, unControllerIndex%, pState%) : "BlitzSteamController_GetControllerState" +BlitzSteamController_GetControllerState%(lpSteamController%, unControllerIndex%, pState*) +BlitzSteamController_TriggerHapticPulse(lpSteamController%, unControllerIndex%, eTargetPad%, usDurationMicroSec%) +BlitzSteamController_SetOverrideMode(lpSteamController%, pchMode$) \ No newline at end of file diff --git a/Blitz/BlitzSteamUtility.bb b/Blitz/BlitzSteamUtility.bb index 39b75a2..26e9093 100644 --- a/Blitz/BlitzSteamUtility.bb +++ b/Blitz/BlitzSteamUtility.bb @@ -456,16 +456,53 @@ Function BSUApps_GetAppInstallDir$(nAppID%, BankInstallDirStorage=0) If BSUInitialized Then If BankInstallDirStorage = 0 Then ; Create temporary storage. + BankInstallDir = CreateBank(BankInstallDirSz) Else ; Reuse existing storage. BankInstallDir = BankInstallDirStorage - BankInstallDirSz = + BankInstallDirSz = BankSize(BankInstallDir) EndIf + + ; Request install dir from Steam. + Local InstallDirLen% = BlitzSteamApps_GetAppInstallDir(BSUApps, nAppID, BankInstallDir, BankInstallDirSz) + + ; Read returned value. + InstallDir = BSU_PeekCString(BankInstallDir, 0) + + ; Free temporary storage. + If BankInstallDirStorage = 0 Then FreeBank BankInstallDir EndIf Return InstallDir$ End Function +Function BSUApps_GetDLCDownloadProgress#(nAppID%) + Local Progress# = 1.0 + If BSUInitialized + ; Create temporary storage. + Local i64_Downloaded, i64_Total + i64_Downloaded = BlitzSteamInt64_New() + i64_Total = BlitzSteamInt64_New() + + ; Request download progress from Steam. + If BlitzSteamApps_GetDlcDownloadProgressEx(BSUApps, nAppID, i64_Downloaded, i64_Total) Then + Local dDownloaded, dTotal + dDownloaded = BlitzSteamInt64_ToDouble(i64_Downloaded) + dTotal = BlitzSteamInt64_ToDouble(i64_Total) + + BlitzSteamDouble_DivP dDownloaded, dTotal + Progress = BlitzSteamDouble_ToFloat(dDownloaded) + + BlitzSteamDouble_Destroy dDownloaded + BlitzSteamDouble_Destroy dTotal + EndIf + + ; Free temporary storage. + BlitzSteamInt64_Destroy i64_Downloaded + BlitzSteamInt64_Destroy i64_Total + EndIf + Return Progress +End Function + ;~IDEal Editor Parameters: -;~F#18#1E#24#35#4A#63#82#A0#DD#F9#116#146#178 ;~C#Blitz3D \ No newline at end of file diff --git a/BlitzPointerLink.cpp b/BlitzPointerLink.cpp deleted file mode 100644 index 3c1d892..0000000 --- a/BlitzPointerLink.cpp +++ /dev/null @@ -1,5 +0,0 @@ -#include "BlitzPointer.h" - -uint32_t BlitzPointer_CallFunction0(uint32_t fpFunctionPointer) { - -} \ No newline at end of file diff --git a/BlitzSteam.vcxproj b/BlitzSteam.vcxproj index 7ac2185..82885b4 100644 --- a/BlitzSteam.vcxproj +++ b/BlitzSteam.vcxproj @@ -138,6 +138,8 @@ + + diff --git a/BlitzSteam.vcxproj.filters b/BlitzSteam.vcxproj.filters index 26f73d7..08803af 100644 --- a/BlitzSteam.vcxproj.filters +++ b/BlitzSteam.vcxproj.filters @@ -17,6 +17,9 @@ {3072c53c-2be5-4712-b853-1bc1438cdc6e} + + {a6fc08f6-97d9-4a53-a803-34b985d9ae7c} + @@ -34,9 +37,6 @@ Source Files\Libraries - - Source Files - Source Files\Wrapper @@ -46,6 +46,15 @@ Source Files\Wrapper + + Source Files\Helpers + + + Source Files + + + Source Files\Helpers + diff --git a/Helpers/Double.cpp b/Helpers/Double.cpp new file mode 100644 index 0000000..97e709c --- /dev/null +++ b/Helpers/Double.cpp @@ -0,0 +1,129 @@ +// BlitzSteam - Steam wrapper for Blitz. +// Copyright (C) 2015 Project Kube (Michael Fabian Dirks) +// +// This program is free software: you can redistribute it and/or modify +// it under the terms of the GNU Lesser General Public License as +// published by the Free Software Foundation, either version 3 of the +// License, or (at your option) any later version. +// +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public License +// along with this program. If not, see . + +#include "dllmain.h" +#include +#include + +#pragma region Construction & Destruction +DLL_EXPORT double_t* BlitzSteamDouble_New() { + return new double_t; +} +#pragma comment(linker, "/EXPORT:BlitzSteamDouble_New=_BlitzSteamDouble_New@0") + +DLL_EXPORT double_t* BlitzSteamDouble_Copy(double_t* other) { + double_t* pthis = new double_t; + *pthis = *other; + return pthis; +} +#pragma comment(linker, "/EXPORT:BlitzSteamDouble_Copy=_BlitzSteamDouble_Copy@4") + +DLL_EXPORT void BlitzSteamDouble_Delete(double_t* pthis) { + delete pthis; +} +#pragma comment(linker, "/EXPORT:BlitzSteamDouble_Delete=_BlitzSteamDouble_Delete@4") +#pragma endregion Construction & Destruction + +#pragma region Math +DLL_EXPORT void BlitzSteamDouble_SetP(double_t* pthis, double_t* other) { *pthis = *other; } +DLL_EXPORT void BlitzSteamDouble_SetF(double_t* pthis, float_t other) { *pthis = other; } +#pragma comment(linker, "/EXPORT:BlitzSteamDouble_SetP=_BlitzSteamDouble_SetP@8") +#pragma comment(linker, "/EXPORT:BlitzSteamDouble_SetF=_BlitzSteamDouble_SetF@8") + +DLL_EXPORT void BlitzSteamDouble_AddP(double_t* pthis, double_t* other) { *pthis += *other; } +DLL_EXPORT void BlitzSteamDouble_AddF(double_t* pthis, float_t other) { *pthis += other; } +#pragma comment(linker, "/EXPORT:BlitzSteamDouble_AddP=_BlitzSteamDouble_AddP@8") +#pragma comment(linker, "/EXPORT:BlitzSteamDouble_AddF=_BlitzSteamDouble_AddF@8") + +DLL_EXPORT void BlitzSteamDouble_SubP(double_t* pthis, double_t* other) { *pthis -= *other; } +DLL_EXPORT void BlitzSteamDouble_SubF(double_t* pthis, float_t other) { *pthis -= other; } +#pragma comment(linker, "/EXPORT:BlitzSteamDouble_SubP=_BlitzSteamDouble_SubP@8") +#pragma comment(linker, "/EXPORT:BlitzSteamDouble_SubF=_BlitzSteamDouble_SubF@8") + +DLL_EXPORT void BlitzSteamDouble_MulP(double_t* pthis, double_t* other) { *pthis *= *other; } +DLL_EXPORT void BlitzSteamDouble_MulF(double_t* pthis, float_t other) { *pthis *= other; } +#pragma comment(linker, "/EXPORT:BlitzSteamDouble_MulP=_BlitzSteamDouble_MulP@8") +#pragma comment(linker, "/EXPORT:BlitzSteamDouble_MulF=_BlitzSteamDouble_MulF@8") + +DLL_EXPORT void BlitzSteamDouble_DivP(double_t* pthis, double_t* other) { *pthis /= *other; } +DLL_EXPORT void BlitzSteamDouble_DivF(double_t* pthis, float_t other) { *pthis /= other; } +#pragma comment(linker, "/EXPORT:BlitzSteamDouble_DivP=_BlitzSteamDouble_DivP@8") +#pragma comment(linker, "/EXPORT:BlitzSteamDouble_DivF=_BlitzSteamDouble_DivF@8") +#pragma endregion Math + +#pragma region Comparison +DLL_EXPORT uint32_t BlitzSteamDouble_EqualsP(double_t* pthis, double_t* other) { return *pthis == *other; } +DLL_EXPORT uint32_t BlitzSteamDouble_EqualsF(double_t* pthis, float_t other) { return *pthis == other; } +#pragma comment(linker, "/EXPORT:BlitzSteamDouble_EqualsP=_BlitzSteamDouble_EqualsP@8") +#pragma comment(linker, "/EXPORT:BlitzSteamDouble_EqualsF=_BlitzSteamDouble_EqualsF@8") + +DLL_EXPORT uint32_t BlitzSteamDouble_GEqualsP(double_t* pthis, double_t* other) { return *pthis >= *other; } +DLL_EXPORT uint32_t BlitzSteamDouble_GEqualsF(double_t* pthis, float_t other) { return *pthis >= other; } +#pragma comment(linker, "/EXPORT:BlitzSteamDouble_GEqualsP=_BlitzSteamDouble_GEqualsP@8") +#pragma comment(linker, "/EXPORT:BlitzSteamDouble_GEqualsF=_BlitzSteamDouble_GEqualsF@8") + +DLL_EXPORT uint32_t BlitzSteamDouble_SEqualsP(double_t* pthis, double_t* other) { return *pthis <= *other; } +DLL_EXPORT uint32_t BlitzSteamDouble_SEqualsF(double_t* pthis, float_t other) { return *pthis <= other; } +#pragma comment(linker, "/EXPORT:BlitzSteamDouble_SEqualsP=_BlitzSteamDouble_SEqualsP@8") +#pragma comment(linker, "/EXPORT:BlitzSteamDouble_SEqualsF=_BlitzSteamDouble_SEqualsF@8") + +DLL_EXPORT uint32_t BlitzSteamDouble_GreaterP(double_t* pthis, double_t* other) { return *pthis > *other; } +DLL_EXPORT uint32_t BlitzSteamDouble_GreaterF(double_t* pthis, float_t other) { return *pthis > other; } +#pragma comment(linker, "/EXPORT:BlitzSteamDouble_GreaterP=_BlitzSteamDouble_GreaterP@8") +#pragma comment(linker, "/EXPORT:BlitzSteamDouble_GreaterF=_BlitzSteamDouble_GreaterF@8") + +DLL_EXPORT uint32_t BlitzSteamDouble_SmallerP(double_t* pthis, double_t* other) { return *pthis < *other; } +DLL_EXPORT uint32_t BlitzSteamDouble_SmallerF(double_t* pthis, float_t other) { return *pthis < other; } +#pragma comment(linker, "/EXPORT:BlitzSteamDouble_SmallerP=_BlitzSteamDouble_SmallerP@8") +#pragma comment(linker, "/EXPORT:BlitzSteamDouble_SmallerF=_BlitzSteamDouble_SmallerF@8") +#pragma endregion Comparison + +#pragma region Conversion +DLL_EXPORT const char* BlitzSteamDouble_ToString(double_t* pthis) { + std::stringstream stream; + stream << *pthis; + return stream.str().c_str(); +} +#pragma comment(linker, "/EXPORT:BlitzSteamDouble_ToString=_BlitzSteamDouble_ToString@4") + +// Double <-> Float +DLL_EXPORT float_t BlitzSteamDouble_ToFloat(double_t* pthis) { return (float_t)*pthis; } +DLL_EXPORT double_t* BlitzSteamDouble_FromFloat(float_t other) { + double_t* val = new double_t; + *val = (double_t)other; + return val; +} +#pragma comment(linker, "/EXPORT:BlitzSteamDouble_ToFloat=_BlitzSteamDouble_ToFloat@4") +#pragma comment(linker, "/EXPORT:BlitzSteamDouble_FromFloat=_BlitzSteamDouble_FromFloat@4") + +// Double <-> Int32 +DLL_EXPORT int32_t BlitzSteamDouble_ToInt32(double_t* pthis) { return (int32_t)*pthis; } +DLL_EXPORT double_t* BlitzSteamDouble_FromInt32(int32_t other) { + double_t* val = new double_t; + *val = (double_t)other; + return val; +} +#pragma comment(linker, "/EXPORT:BlitzSteamDouble_ToInt32=_BlitzSteamDouble_ToInt32@4") +#pragma comment(linker, "/EXPORT:BlitzSteamDouble_FromInt32=_BlitzSteamDouble_FromInt32@4") + +// Double -> Int64 +DLL_EXPORT int64_t* BlitzSteamDouble_ToInt64(double_t* pthis) { + int64_t* val = new int64_t; + *val = (int64_t)*pthis; + return val; +} +#pragma comment(linker, "/EXPORT:BlitzSteamDouble_ToInt64=_BlitzSteamDouble_ToInt64@4") +#pragma endregion Conversion diff --git a/Helper.cpp b/Helpers/Helper.cpp similarity index 100% rename from Helper.cpp rename to Helpers/Helper.cpp diff --git a/Helpers/Int64.cpp b/Helpers/Int64.cpp new file mode 100644 index 0000000..2980136 --- /dev/null +++ b/Helpers/Int64.cpp @@ -0,0 +1,124 @@ +// BlitzSteam - Steam wrapper for Blitz. +// Copyright (C) 2015 Project Kube (Michael Fabian Dirks) +// +// This program is free software: you can redistribute it and/or modify +// it under the terms of the GNU Lesser General Public License as +// published by the Free Software Foundation, either version 3 of the +// License, or (at your option) any later version. +// +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public License +// along with this program. If not, see . + +#include "dllmain.h" +#include +#include + +#pragma region Construction & Destruction +DLL_EXPORT int64_t* BlitzSteamInt64_New() { + return new int64_t; +} +#pragma comment(linker, "/EXPORT:BlitzSteamInt64_New=_BlitzSteamInt64_New@0") + +DLL_EXPORT int64_t* BlitzSteamInt64_Copy(int64_t* other) { + int64_t* pthis = new int64_t; + *pthis = *other; + return pthis; +} +#pragma comment(linker, "/EXPORT:BlitzSteamInt64_Copy=_BlitzSteamInt64_Copy@4") + +DLL_EXPORT void BlitzSteamInt64_Destroy(int64_t* pthis) { + delete pthis; +} +#pragma comment(linker, "/EXPORT:BlitzSteamInt64_Destroy=_BlitzSteamInt64_Destroy@4") +#pragma endregion Construction & Destruction + +#pragma region Math +DLL_EXPORT void BlitzSteamInt64_SetP(int64_t* pthis, int64_t* other) { *pthis = *other; } +DLL_EXPORT void BlitzSteamInt64_SetV(int64_t* pthis, uint32_t left, uint32_t right) { *pthis = ((int64_t)left << 32) + right; } +#pragma comment(linker, "/EXPORT:BlitzSteamInt64_SetP=_BlitzSteamInt64_SetP@8") +#pragma comment(linker, "/EXPORT:BlitzSteamInt64_SetV=_BlitzSteamInt64_SetV@12") + +DLL_EXPORT void BlitzSteamInt64_AddP(int64_t* pthis, int64_t* other) { *pthis += *other; } +DLL_EXPORT void BlitzSteamInt64_AddV(int64_t* pthis, uint32_t left, uint32_t right) { *pthis += ((int64_t)left << 32) + right; } +#pragma comment(linker, "/EXPORT:BlitzSteamInt64_AddP=_BlitzSteamInt64_AddP@8") +#pragma comment(linker, "/EXPORT:BlitzSteamInt64_AddV=_BlitzSteamInt64_AddV@12") + +DLL_EXPORT void BlitzSteamInt64_SubP(int64_t* pthis, int64_t* other) { *pthis -= *other; } +DLL_EXPORT void BlitzSteamInt64_SubV(int64_t* pthis, uint32_t left, uint32_t right) { *pthis -= ((int64_t)left << 32) + right; } +#pragma comment(linker, "/EXPORT:BlitzSteamInt64_SubP=_BlitzSteamInt64_SubP@8") +#pragma comment(linker, "/EXPORT:BlitzSteamInt64_SubV=_BlitzSteamInt64_SubV@12") + +DLL_EXPORT void BlitzSteamInt64_MulP(int64_t* pthis, int64_t* other) { *pthis *= *other; } +DLL_EXPORT void BlitzSteamInt64_MulV(int64_t* pthis, uint32_t left, uint32_t right) { *pthis *= ((int64_t)left << 32) + right; } +#pragma comment(linker, "/EXPORT:BlitzSteamInt64_MulP=_BlitzSteamInt64_MulP@8") +#pragma comment(linker, "/EXPORT:BlitzSteamInt64_MulV=_BlitzSteamInt64_MulV@12") + +DLL_EXPORT void BlitzSteamInt64_DivP(int64_t* pthis, int64_t* other) { *pthis *= *other; } +DLL_EXPORT void BlitzSteamInt64_DivV(int64_t* pthis, uint32_t left, uint32_t right) { *pthis *= ((int64_t)left << 32) + right; } +#pragma comment(linker, "/EXPORT:BlitzSteamInt64_DivP=_BlitzSteamInt64_DivP@8") +#pragma comment(linker, "/EXPORT:BlitzSteamInt64_DivV=_BlitzSteamInt64_DivV@12") +#pragma endregion Math + +#pragma region Comparison +DLL_EXPORT uint32_t BlitzSteamInt64_EqualsP(int64_t* pthis, int64_t* other) { return (*pthis == *other); } +DLL_EXPORT uint32_t BlitzSteamInt64_EqualsV(int64_t* pthis, uint32_t left, uint32_t right) { return (*pthis == ((int64_t)left << 32) + right); } +#pragma comment(linker, "/EXPORT:BlitzSteamInt64_EqualsP=_BlitzSteamInt64_EqualsP@8") +#pragma comment(linker, "/EXPORT:BlitzSteamInt64_EqualsV=_BlitzSteamInt64_EqualsV@12") + +DLL_EXPORT uint32_t BlitzSteamInt64_GEqualsP(int64_t* pthis, int64_t* other) { return (*pthis >= *other); } +DLL_EXPORT uint32_t BlitzSteamInt64_GEqualsV(int64_t* pthis, uint32_t left, uint32_t right) { return (*pthis >= ((int64_t)left << 32) + right); } +#pragma comment(linker, "/EXPORT:BlitzSteamInt64_GEqualsP=_BlitzSteamInt64_GEqualsP@8") +#pragma comment(linker, "/EXPORT:BlitzSteamInt64_GEqualsV=_BlitzSteamInt64_GEqualsV@12") + +DLL_EXPORT uint32_t BlitzSteamInt64_SEqualsP(int64_t* pthis, int64_t* other) { return (*pthis <= *other); } +DLL_EXPORT uint32_t BlitzSteamInt64_SEqualsV(int64_t* pthis, uint32_t left, uint32_t right) { return (*pthis <= ((int64_t)left << 32) + right); } +#pragma comment(linker, "/EXPORT:BlitzSteamInt64_SEqualsP=_BlitzSteamInt64_SEqualsP@8") +#pragma comment(linker, "/EXPORT:BlitzSteamInt64_SEqualsV=_BlitzSteamInt64_SEqualsV@12") + +DLL_EXPORT uint32_t BlitzSteamInt64_GreaterP(int64_t* pthis, int64_t* other) { return (*pthis > *other); } +DLL_EXPORT uint32_t BlitzSteamInt64_GreaterV(int64_t* pthis, uint32_t left, uint32_t right) { return (*pthis > ((int64_t)left << 32) + right); } +#pragma comment(linker, "/EXPORT:BlitzSteamInt64_GreaterP=_BlitzSteamInt64_GreaterP@8") +#pragma comment(linker, "/EXPORT:BlitzSteamInt64_GreaterV=_BlitzSteamInt64_GreaterV@12") + +DLL_EXPORT uint32_t BlitzSteamInt64_SmallerP(int64_t* pthis, int64_t* other) { return (*pthis < *other); } +DLL_EXPORT uint32_t BlitzSteamInt64_SmallerV(int64_t* pthis, uint32_t left, uint32_t right) { return (*pthis < ((int64_t)left << 32) + right); } +#pragma comment(linker, "/EXPORT:BlitzSteamInt64_SmallerP=_BlitzSteamInt64_SmallerP@8") +#pragma comment(linker, "/EXPORT:BlitzSteamInt64_SmallerV=_BlitzSteamInt64_SmallerV@12") +#pragma endregion Comparison + +#pragma region Conversion +DLL_EXPORT const char* BlitzSteamInt64_ToString(int64_t* pthis) { + std::stringstream stream; + stream << *pthis; + return stream.str().c_str(); +} +#pragma comment(linker, "/EXPORT:BlitzSteamInt64_ToString=_BlitzSteamInt64_ToString@4") + +// Int64 -> Int32 +DLL_EXPORT int32_t BlitzSteamInt64_ValueL(int64_t* pthis) { return (int32_t)((*pthis) >> 32); } +DLL_EXPORT int32_t BlitzSteamInt64_ValueR(int64_t* pthis) { return (int32_t)((*pthis) && 0xFFFFFFFF); } +#pragma comment(linker, "/EXPORT:BlitzSteamInt64_ValueL=_BlitzSteamInt64_ValueL@4") +#pragma comment(linker, "/EXPORT:BlitzSteamInt64_ValueR=_BlitzSteamInt64_ValueR@4") + +// Int64 <-> Float +DLL_EXPORT float BlitzSteamInt64_ToFloat(int64_t* pthis) { return (float)*pthis; } +DLL_EXPORT int64_t* BlitzSteamInt64_FromFloat(float_t other) { + int64_t val = (int64_t)other; + return BlitzSteamInt64_Copy(&val); +} +#pragma comment(linker, "/EXPORT:BlitzSteamInt64_ToFloat=_BlitzSteamInt64_ToFloat@4") +#pragma comment(linker, "/EXPORT:BlitzSteamInt64_FromFloat=_BlitzSteamInt64_FromFloat@4") + +// Int64 -> Double +DLL_EXPORT double_t* BlitzSteamInt64_ToDouble(int64_t* pthis) { + double_t* val = new double_t; + *val = (double_t)*pthis; + return val; +} +#pragma comment(linker, "/EXPORT:BlitzSteamInt64_ToDouble=_BlitzSteamInt64_ToDouble@4") +#pragma endregion Conversion diff --git a/Steam.cpp b/Steam.cpp deleted file mode 100644 index 06c1d83..0000000 --- a/Steam.cpp +++ /dev/null @@ -1,32 +0,0 @@ -#include "dllmain.h" -#include "BlitzPointerLink.cpp" - -class BlitzSteamCallback : CCallbackBase { -public: - uint32_t blitzFunctionPointer; - - virtual void Run(void *pvParam) { - BlitzPointer_CallFunction1((uint32_t)blitzFunctionPointer, (uint32_t)pvParam); - } - - virtual void Run(void *pvParam, bool bIOFailure, SteamAPICall_t hSteamAPICall) { - BlitzPointer_CallFunction4((uint32_t)blitzFunctionPointer, (uint32_t)pvParam, bIOFailure, (uint32_t)(hSteamAPICall & 0xFFFFFFFF), (uint32_t)(hSteamAPICall >> 32)); - } - - virtual int GetCallbackSizeBytes() { - return sizeof(BlitzSteamCallback); - } -}; - -DLL_EXPORT void* BlitzSteam_CreateCallback(uint32_t fpFunctionPointer) { - BlitzSteamCallback* lpBSCallback = new BlitzSteamCallback(); - lpBSCallback->blitzFunctionPointer = fpFunctionPointer; - return lpBSCallback; -} - -DLL_EXPORT void BlitzSteam_DestroyCallback(uint32_t lpCallback) { - BlitzSteamCallback* lpBSCallback = (BlitzSteamCallback*)lpCallback; - if (lpBSCallback != nullptr) { - delete lpBSCallback; - } -} \ No newline at end of file diff --git a/Wrapper/SteamApps.cpp b/Wrapper/SteamApps.cpp index dcf747b..6dad23e 100644 --- a/Wrapper/SteamApps.cpp +++ b/Wrapper/SteamApps.cpp @@ -126,10 +126,10 @@ DLL_EXPORT const char* BlitzSteamApps_GetLaunchQueryParam(ISteamApps* lpSteamApp } #pragma comment(linker, "/EXPORT:BlitzSteamApps_GetLaunchQueryParam=_BlitzSteamApps_GetLaunchQueryParam@8") -DLL_EXPORT uint32_t BlitzSteamApps_GetDlcDownloadProgress(ISteamApps* lpSteamApps, AppId_t nAppID, uint64_t* pOutputBank) { - return lpSteamApps->GetDlcDownloadProgress(nAppID, pOutputBank, pOutputBank + 1); +DLL_EXPORT uint32_t BlitzSteamApps_GetDlcDownloadProgress(ISteamApps* lpSteamApps, AppId_t nAppID, uint64_t* punBytesDownloaded, uint64_t* punBytesTotal) { + return lpSteamApps->GetDlcDownloadProgress(nAppID, punBytesDownloaded, punBytesTotal); } -#pragma comment(linker, "/EXPORT:BlitzSteamApps_GetDlcDownloadProgress=_BlitzSteamApps_GetDlcDownloadProgress@12") +#pragma comment(linker, "/EXPORT:BlitzSteamApps_GetDlcDownloadProgress=_BlitzSteamApps_GetDlcDownloadProgress@16") DLL_EXPORT uint32_t BlitzSteamApps_GetAppBuildId(ISteamApps* lpSteamApps) { return lpSteamApps->GetAppBuildId(); diff --git a/Wrapper/SteamClient.cpp b/Wrapper/SteamClient.cpp index 430a7db..a09d0b9 100644 --- a/Wrapper/SteamClient.cpp +++ b/Wrapper/SteamClient.cpp @@ -61,25 +61,50 @@ DLL_EXPORT uint32_t BlitzSteamClient_ShutdownIfAllPipesClosed(ISteamClient* lpSt } // Interfaces -DLL_EXPORT ISteamUser* BlitzSteamClient_GetSteamUser(ISteamClient* lpSteamClient, HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion) { - return lpSteamClient->GetISteamUser(hSteamUser, hSteamPipe, pchVersion); +DLL_EXPORT ISteamAppList* BlitzSteamClient_GetSteamAppList(ISteamClient* lpSteamClient, HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion) { + return lpSteamClient->GetISteamAppList(hSteamUser, hSteamPipe, pchVersion); } -#pragma comment(linker, "/EXPORT:BlitzSteamClient_GetSteamUser=_BlitzSteamClient_GetSteamUser@16") +#pragma comment(linker, "/EXPORT:BlitzSteamClient_GetSteamAppList=_BlitzSteamClient_GetSteamAppList@16") -DLL_EXPORT ISteamGameServer* BlitzSteamClient_GetSteamGameServer(ISteamClient* lpSteamClient, HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion) { - return lpSteamClient->GetISteamGameServer(hSteamUser, hSteamPipe, pchVersion); +DLL_EXPORT ISteamApps* BlitzSteamClient_GetSteamApps(ISteamClient* lpSteamClient, HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion) { + return lpSteamClient->GetISteamApps(hSteamUser, hSteamPipe, pchVersion); } -#pragma comment(linker, "/EXPORT:BlitzSteamClient_GetSteamGameServer=_BlitzSteamClient_GetSteamGameServer@16") +#pragma comment(linker, "/EXPORT:BlitzSteamClient_GetSteamApps=_BlitzSteamClient_GetSteamApps@16") + +DLL_EXPORT ISteamController* BlitzSteamClient_GetSteamController(ISteamClient* lpSteamClient, HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion) { + return lpSteamClient->GetISteamController(hSteamUser, hSteamPipe, pchVersion); +} +#pragma comment(linker, "/EXPORT:BlitzSteamClient_GetSteamController=_BlitzSteamClient_GetSteamController@16") DLL_EXPORT ISteamFriends* BlitzSteamClient_GetSteamFriends(ISteamClient* lpSteamClient, HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion) { return lpSteamClient->GetISteamFriends(hSteamUser, hSteamPipe, pchVersion); } #pragma comment(linker, "/EXPORT:BlitzSteamClient_GetSteamFriends=_BlitzSteamClient_GetSteamFriends@16") -DLL_EXPORT ISteamUtils* BlitzSteamClient_GetSteamUtils(ISteamClient* lpSteamClient, HSteamPipe hSteamPipe, const char *pchVersion) { - return lpSteamClient->GetISteamUtils(hSteamPipe, pchVersion); +DLL_EXPORT ISteamGameServer* BlitzSteamClient_GetSteamGameServer(ISteamClient* lpSteamClient, HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion) { + return lpSteamClient->GetISteamGameServer(hSteamUser, hSteamPipe, pchVersion); } -#pragma comment(linker, "/EXPORT:BlitzSteamClient_GetSteamUtils=_BlitzSteamClient_GetSteamUtils@12") +#pragma comment(linker, "/EXPORT:BlitzSteamClient_GetSteamGameServer=_BlitzSteamClient_GetSteamGameServer@16") + +DLL_EXPORT ISteamGameServerStats* BlitzSteamClient_GetSteamGameServerStats(ISteamClient* lpSteamClient, HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion) { + return lpSteamClient->GetISteamGameServerStats(hSteamUser, hSteamPipe, pchVersion); +} +#pragma comment(linker, "/EXPORT:BlitzSteamClient_GetSteamGameServerStats=_BlitzSteamClient_GetSteamGameServerStats@16") + +DLL_EXPORT ISteamHTMLSurface* BlitzSteamClient_GetSteamHTMLSurface(ISteamClient* lpSteamClient, HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion) { + return lpSteamClient->GetISteamHTMLSurface(hSteamUser, hSteamPipe, pchVersion); +} +#pragma comment(linker, "/EXPORT:BlitzSteamClient_GetSteamHTMLSurface=_BlitzSteamClient_GetSteamHTMLSurface@16") + +DLL_EXPORT ISteamHTTP* BlitzSteamClient_GetSteamHTTP(ISteamClient* lpSteamClient, HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion) { + return lpSteamClient->GetISteamHTTP(hSteamUser, hSteamPipe, pchVersion); +} +#pragma comment(linker, "/EXPORT:BlitzSteamClient_GetSteamHTTP=_BlitzSteamClient_GetSteamHTTP@16") + +DLL_EXPORT ISteamInventory* BlitzSteamClient_GetSteamInventory(ISteamClient* lpSteamClient, HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion) { + return lpSteamClient->GetISteamInventory(hSteamUser, hSteamPipe, pchVersion); +} +#pragma comment(linker, "/EXPORT:BlitzSteamClient_GetSteamInventory=_BlitzSteamClient_GetSteamInventory@16") DLL_EXPORT ISteamMatchmaking* BlitzSteamClient_GetSteamMatchmaking(ISteamClient* lpSteamClient, HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion) { return lpSteamClient->GetISteamMatchmaking(hSteamUser, hSteamPipe, pchVersion); @@ -91,20 +116,15 @@ DLL_EXPORT ISteamMatchmakingServers* BlitzSteamClient_GetSteamMatchmakingServers } #pragma comment(linker, "/EXPORT:BlitzSteamClient_GetSteamMatchmakingServers=_BlitzSteamClient_GetSteamMatchmakingServers@16") -DLL_EXPORT ISteamUserStats* BlitzSteamClient_GetSteamUserStats(ISteamClient* lpSteamClient, HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion) { - return lpSteamClient->GetISteamUserStats(hSteamUser, hSteamPipe, pchVersion); +DLL_EXPORT ISteamMusic* BlitzSteamClient_GetSteamMusic(ISteamClient* lpSteamClient, HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion) { + return lpSteamClient->GetISteamMusic(hSteamUser, hSteamPipe, pchVersion); } -#pragma comment(linker, "/EXPORT:BlitzSteamClient_GetSteamUserStats=_BlitzSteamClient_GetSteamUserStats@16") +#pragma comment(linker, "/EXPORT:BlitzSteamClient_GetSteamMusic=_BlitzSteamClient_GetSteamMusic@16") -DLL_EXPORT ISteamGameServerStats* BlitzSteamClient_GetSteamGameServerStats(ISteamClient* lpSteamClient, HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion) { - return lpSteamClient->GetISteamGameServerStats(hSteamUser, hSteamPipe, pchVersion); +DLL_EXPORT ISteamMusicRemote* BlitzSteamClient_GetSteamMusicRemote(ISteamClient* lpSteamClient, HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion) { + return lpSteamClient->GetISteamMusicRemote(hSteamUser, hSteamPipe, pchVersion); } -#pragma comment(linker, "/EXPORT:BlitzSteamClient_GetSteamGameServerStats=_BlitzSteamClient_GetSteamGameServerStats@16") - -DLL_EXPORT ISteamApps* BlitzSteamClient_GetSteamApps(ISteamClient* lpSteamClient, HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion) { - return lpSteamClient->GetISteamApps(hSteamUser, hSteamPipe, pchVersion); -} -#pragma comment(linker, "/EXPORT:BlitzSteamClient_GetSteamApps=_BlitzSteamClient_GetSteamApps@16") +#pragma comment(linker, "/EXPORT:BlitzSteamClient_GetSteamMusicRemote=_BlitzSteamClient_GetSteamMusicRemote@16") DLL_EXPORT ISteamNetworking* BlitzSteamClient_GetSteamNetworking(ISteamClient* lpSteamClient, HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion) { return lpSteamClient->GetISteamNetworking(hSteamUser, hSteamPipe, pchVersion); @@ -121,60 +141,39 @@ DLL_EXPORT ISteamScreenshots* BlitzSteamClient_GetSteamScreenshots(ISteamClient* } #pragma comment(linker, "/EXPORT:BlitzSteamClient_GetSteamScreenshots=_BlitzSteamClient_GetSteamScreenshots@16") -DLL_EXPORT ISteamHTTP* BlitzSteamClient_GetSteamHTTP(ISteamClient* lpSteamClient, HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion) { - return lpSteamClient->GetISteamHTTP(hSteamUser, hSteamPipe, pchVersion); +DLL_EXPORT ISteamUGC* BlitzSteamClient_GetSteamUGC(ISteamClient* lpSteamClient, HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion) { + return lpSteamClient->GetISteamUGC(hSteamUser, hSteamPipe, pchVersion); } -#pragma comment(linker, "/EXPORT:BlitzSteamClient_GetSteamHTTP=_BlitzSteamClient_GetSteamHTTP@16") +#pragma comment(linker, "/EXPORT:BlitzSteamClient_GetSteamUGC=_BlitzSteamClient_GetSteamUGC@16") DLL_EXPORT ISteamUnifiedMessages* BlitzSteamClient_GetSteamUnifiedMessages(ISteamClient* lpSteamClient, HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion) { return lpSteamClient->GetISteamUnifiedMessages(hSteamUser, hSteamPipe, pchVersion); } #pragma comment(linker, "/EXPORT:BlitzSteamClient_GetSteamUnifiedMessages=_BlitzSteamClient_GetSteamUnifiedMessages@16") -DLL_EXPORT ISteamController* BlitzSteamClient_GetSteamController(ISteamClient* lpSteamClient, HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion) { - return lpSteamClient->GetISteamController(hSteamUser, hSteamPipe, pchVersion); +DLL_EXPORT ISteamUser* BlitzSteamClient_GetSteamUser(ISteamClient* lpSteamClient, HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion) { + return lpSteamClient->GetISteamUser(hSteamUser, hSteamPipe, pchVersion); } -#pragma comment(linker, "/EXPORT:BlitzSteamClient_GetSteamController=_BlitzSteamClient_GetSteamController@16") +#pragma comment(linker, "/EXPORT:BlitzSteamClient_GetSteamUser=_BlitzSteamClient_GetSteamUser@16") -DLL_EXPORT ISteamUGC* BlitzSteamClient_GetSteamUGC(ISteamClient* lpSteamClient, HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion) { - return lpSteamClient->GetISteamUGC(hSteamUser, hSteamPipe, pchVersion); +DLL_EXPORT ISteamUserStats* BlitzSteamClient_GetSteamUserStats(ISteamClient* lpSteamClient, HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion) { + return lpSteamClient->GetISteamUserStats(hSteamUser, hSteamPipe, pchVersion); } -#pragma comment(linker, "/EXPORT:BlitzSteamClient_GetSteamUGC=_BlitzSteamClient_GetSteamUGC@16") +#pragma comment(linker, "/EXPORT:BlitzSteamClient_GetSteamUserStats=_BlitzSteamClient_GetSteamUserStats@16") -DLL_EXPORT ISteamAppList* BlitzSteamClient_GetSteamAppList(ISteamClient* lpSteamClient, HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion) { - return lpSteamClient->GetISteamAppList(hSteamUser, hSteamPipe, pchVersion); +DLL_EXPORT ISteamUtils* BlitzSteamClient_GetSteamUtils(ISteamClient* lpSteamClient, HSteamPipe hSteamPipe, const char *pchVersion) { + return lpSteamClient->GetISteamUtils(hSteamPipe, pchVersion); } -#pragma comment(linker, "/EXPORT:BlitzSteamClient_GetSteamAppList=_BlitzSteamClient_GetSteamAppList@16") - -DLL_EXPORT ISteamMusic* BlitzSteamClient_GetSteamMusic(ISteamClient* lpSteamClient, HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion) { - return lpSteamClient->GetISteamMusic(hSteamUser, hSteamPipe, pchVersion); -} -#pragma comment(linker, "/EXPORT:BlitzSteamClient_GetSteamMusic=_BlitzSteamClient_GetSteamMusic@16") - -DLL_EXPORT ISteamMusicRemote* BlitzSteamClient_GetSteamMusicRemote(ISteamClient* lpSteamClient, HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion) { - return lpSteamClient->GetISteamMusicRemote(hSteamUser, hSteamPipe, pchVersion); -} -#pragma comment(linker, "/EXPORT:BlitzSteamClient_GetSteamMusicRemote=_BlitzSteamClient_GetSteamMusicRemote@16") - -DLL_EXPORT ISteamHTMLSurface* BlitzSteamClient_GetSteamHTMLSurface(ISteamClient* lpSteamClient, HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion) { - return lpSteamClient->GetISteamHTMLSurface(hSteamUser, hSteamPipe, pchVersion); -} -#pragma comment(linker, "/EXPORT:BlitzSteamClient_GetSteamHTMLSurface=_BlitzSteamClient_GetSteamHTMLSurface@16") - -DLL_EXPORT ISteamInventory* BlitzSteamClient_GetSteamInventory(ISteamClient* lpSteamClient, HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion) { - return lpSteamClient->GetISteamInventory(hSteamUser, hSteamPipe, pchVersion); -} -#pragma comment(linker, "/EXPORT:BlitzSteamClient_GetSteamInventory=_BlitzSteamClient_GetSteamInventory@16") +#pragma comment(linker, "/EXPORT:BlitzSteamClient_GetSteamUtils=_BlitzSteamClient_GetSteamUtils@12") DLL_EXPORT ISteamVideo* BlitzSteamClient_GetSteamVideo(ISteamClient* lpSteamClient, HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion) { return lpSteamClient->GetISteamVideo(hSteamUser, hSteamPipe, pchVersion); } #pragma comment(linker, "/EXPORT:BlitzSteamClient_GetSteamVideo=_BlitzSteamClient_GetSteamVideo@16") - // Callbacks & Hooks -DLL_EXPORT void BlitzSteamClient_SetWarningMessageHook(ISteamClient* lpSteamClient, SteamAPIWarningMessageHook_t pfunction) { - lpSteamClient->SetWarningMessageHook(pfunction); +DLL_EXPORT void BlitzSteamClient_SetWarningMessageHook(ISteamClient* lpSteamClient, SteamAPIWarningMessageHook_t fpfunction) { + lpSteamClient->SetWarningMessageHook(fpfunction); } DLL_EXPORT void BlitzSteamClient_Set_SteamAPI_CPostAPIResultInProcess(ISteamClient* lpSteamClient, SteamAPI_PostAPIResultInProcess_t fpFunction) { diff --git a/Wrapper/SteamController.cpp b/Wrapper/SteamController.cpp index 1e31159..bd1c138 100644 --- a/Wrapper/SteamController.cpp +++ b/Wrapper/SteamController.cpp @@ -16,3 +16,32 @@ #include "dllmain.h" +DLL_EXPORT uint32_t BlitzSteamController_Init(ISteamController* lpSteamController, const char* pchAbsolutePathToControllerConfigVDF) { + return lpSteamController->Init(pchAbsolutePathToControllerConfigVDF); +} +#pragma comment(linker, "/EXPORT:BlitzSteamController_Init=_BlitzSteamController_Init@8") + +DLL_EXPORT uint32_t BlitzSteamController_Shutdown(ISteamController* lpSteamController) { + return lpSteamController->Shutdown(); +} +#pragma comment(linker, "/EXPORT:BlitzSteamController_Shutdown=_BlitzSteamController_Shutdown@4") + +DLL_EXPORT void BlitzSteamController_RunFrame(ISteamController* lpSteamController) { + lpSteamController->RunFrame(); +} +#pragma comment(linker, "/EXPORT:BlitzSteamController_RunFrame=_BlitzSteamController_RunFrame@4") + +DLL_EXPORT uint32_t BlitzSteamController_GetControllerState(ISteamController* lpSteamController, uint32_t unControllerIndex, SteamControllerState_t *pState) { + return lpSteamController->GetControllerState(unControllerIndex, pState); +} +#pragma comment(linker, "/EXPORT:BlitzSteamController_GetControllerState=_BlitzSteamController_GetControllerState@12") + +DLL_EXPORT void BlitzSteamController_TriggerHapticPulse(ISteamController* lpSteamController, uint32_t unControllerIndex, ESteamControllerPad eTargetPad, uint32_t usDurationMicroSec) { + lpSteamController->TriggerHapticPulse(unControllerIndex, eTargetPad, usDurationMicroSec); +} +#pragma comment(linker, "/EXPORT:BlitzSteamController_TriggerHapticPulse=_BlitzSteamController_TriggerHapticPulse@16") + +DLL_EXPORT void BlitzSteamController_SetOverrideMode(ISteamController* lpSteamController, const char *pchMode) { + lpSteamController->SetOverrideMode(pchMode); +} +#pragma comment(linker, "/EXPORT:BlitzSteamController_SetOverrideMode=_BlitzSteamController_SetOverrideMode@8") \ No newline at end of file diff --git a/Wrapper/SteamFriends.cpp b/Wrapper/SteamFriends.cpp new file mode 100644 index 0000000..1e31159 --- /dev/null +++ b/Wrapper/SteamFriends.cpp @@ -0,0 +1,18 @@ +// BlitzSteam - Steam wrapper for Blitz. +// Copyright (C) 2015 Project Kube (Michael Fabian Dirks) +// +// This program is free software: you can redistribute it and/or modify +// it under the terms of the GNU Lesser General Public License as +// published by the Free Software Foundation, either version 3 of the +// License, or (at your option) any later version. +// +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public License +// along with this program. If not, see . + +#include "dllmain.h" + diff --git a/Wrapper/SteamGameServer.cpp b/Wrapper/SteamGameServer.cpp new file mode 100644 index 0000000..e69de29 diff --git a/Wrapper/SteamGameServerStats.cpp b/Wrapper/SteamGameServerStats.cpp new file mode 100644 index 0000000..e69de29 diff --git a/Wrapper/SteamHTMLSurface.cpp b/Wrapper/SteamHTMLSurface.cpp new file mode 100644 index 0000000..e69de29 diff --git a/Wrapper/SteamHTTP.cpp b/Wrapper/SteamHTTP.cpp new file mode 100644 index 0000000..e69de29 diff --git a/Wrapper/SteamInventory.cpp b/Wrapper/SteamInventory.cpp new file mode 100644 index 0000000..e69de29 diff --git a/Wrapper/SteamMatchmaking.cpp b/Wrapper/SteamMatchmaking.cpp new file mode 100644 index 0000000..e69de29 diff --git a/Wrapper/SteamMatchmakingServer.cpp b/Wrapper/SteamMatchmakingServer.cpp new file mode 100644 index 0000000..e69de29 diff --git a/Wrapper/SteamMusic.cpp b/Wrapper/SteamMusic.cpp new file mode 100644 index 0000000..e69de29 diff --git a/Wrapper/SteamMusicRemote.cpp b/Wrapper/SteamMusicRemote.cpp new file mode 100644 index 0000000..e69de29 diff --git a/Wrapper/SteamNetworking.cpp b/Wrapper/SteamNetworking.cpp new file mode 100644 index 0000000..e69de29 diff --git a/Wrapper/SteamRemoteStorage.cpp b/Wrapper/SteamRemoteStorage.cpp new file mode 100644 index 0000000..e69de29 diff --git a/Wrapper/SteamScreenshots.cpp b/Wrapper/SteamScreenshots.cpp new file mode 100644 index 0000000..e69de29 diff --git a/Wrapper/SteamUGC.cpp b/Wrapper/SteamUGC.cpp new file mode 100644 index 0000000..e69de29 diff --git a/Wrapper/SteamUnifiedMessages.cpp b/Wrapper/SteamUnifiedMessages.cpp new file mode 100644 index 0000000..e69de29 diff --git a/Wrapper/SteamUserStats.cpp b/Wrapper/SteamUserStats.cpp new file mode 100644 index 0000000..e69de29 diff --git a/Wrapper/SteamUtils.cpp b/Wrapper/SteamUtils.cpp new file mode 100644 index 0000000..e69de29 diff --git a/Wrapper/SteamVideo.cpp b/Wrapper/SteamVideo.cpp new file mode 100644 index 0000000..e69de29