131 Commits

Author SHA1 Message Date
Rémi Bernon
3479873c06 lsteamclient: Consistently use the computed return type.
CW-Bug-Id: #22729
2023-09-28 09:33:05 +02:00
Rémi Bernon
9f71e16ff9 lsteamclient: Always use a return result variable.
CW-Bug-Id: #22729
2023-09-28 09:33:03 +02:00
Rémi Bernon
981eab406d lsteamclient: Cleanup C method generator.
CW-Bug-Id: #22729
2023-09-27 16:04:49 +03:00
Rémi Bernon
fc59438043 lsteamclient: Generate thiscall wrappers separately.
CW-Bug-Id: #22729
2023-09-27 16:04:49 +03:00
Rémi Bernon
96bf31be96 lsteamclient: Introduce a new Method cursor wrapper.
CW-Bug-Id: #22729
2023-09-27 16:04:49 +03:00
Rémi Bernon
8a120213e6 lsteamclient: Introduce a new Class cursor wrapper.
CW-Bug-Id: #22729
2023-09-27 16:04:49 +03:00
Rémi Bernon
a38b4562a1 lsteamclient: Use the names array for the param converters.
CW-Bug-Id: #22729
2023-09-27 16:04:49 +03:00
Rémi Bernon
cdcced0ddf lsteamclient: Use declspec to generate C++ method signature.
CW-Bug-Id: #22729
2023-09-27 16:04:49 +03:00
Rémi Bernon
3eaaff84f7 lsteamclient: Split C++/C method generation helpers.
CW-Bug-Id: #22729
2023-09-27 16:04:49 +03:00
Rémi Bernon
4ea34adb14 lsteamclient: Reorder do_cb_wrap first parameters.
CW-Bug-Id: #22729
2023-09-27 16:04:49 +03:00
Rémi Bernon
031bcf671e lsteamclient: Split cpp_h generation to a dedicated method.
CW-Bug-Id: #22729
2023-09-27 16:04:49 +03:00
Rémi Bernon
2a780473e1 lsteamclient: Return all struct abis from find_struct.
CW-Bug-Id: #22729
2023-09-27 16:04:49 +03:00
Rémi Bernon
4270de7e02 lsteamclient: Filter structs and classes while parsing.
CW-Bug-Id: #22729
2023-09-27 16:04:49 +03:00
Rémi Bernon
ff93611af1 lsteamclient: Use the all_records dict to lookup structs.
CW-Bug-Id: #22729
2023-09-27 16:04:49 +03:00
Rémi Bernon
7756658df1 lsteamclient: Introduce new canonical_typename helper.
CW-Bug-Id: #22729
2023-09-27 16:04:49 +03:00
Rémi Bernon
09df35ed1f lsteamclient: Sort classes by their version string.
CW-Bug-Id: #22729
2023-09-27 16:04:48 +03:00
Rémi Bernon
18b465a393 lsteamclient: Filter classes by version before generating.
CW-Bug-Id: #22729
2023-09-27 16:04:48 +03:00
Rémi Bernon
cd3d0d1978 lsteamclient: Strip interface version suffixes early.
CW-Bug-Id: #22729
2023-09-27 16:04:48 +03:00
Rémi Bernon
5a44cce1d4 lsteamclient: Parse SDK versions and ABIs in parallel.
CW-Bug-Id: #22729
2023-09-27 16:04:48 +03:00
Rémi Bernon
4dea878825 lsteamclient: Split loading, parsing, and generating steps.
CW-Bug-Id: #22729
2023-09-27 16:04:48 +03:00
Rémi Bernon
e08712c5aa lsteamclient: Introduce a dedicated parsing function.
CW-Bug-Id: #22729
2023-09-27 16:04:48 +03:00
Rémi Bernon
977b589c03 lsteamclient: Use a dict for SDK sources / class mapping.
CW-Bug-Id: #22729
2023-09-27 16:04:48 +03:00
Rémi Bernon
5e80091874 lsteamclient: Use upper-case global constants.
CW-Bug-Id: #22729
2023-09-27 16:04:48 +03:00
Rémi Bernon
319f323c88 lsteamclient: Remove unused imports and duplicate entries.
CW-Bug-Id: #22729
2023-09-27 16:04:48 +03:00
Arkadiusz Hiler
72d88cd736 lsteamclient: Generate SteamWorks SDK 1.58 support. 2023-09-18 17:19:45 +03:00
Paul Gofman
516f76e446 lsteamclient: Terminate callback thread on Steam interface shutdown.
CW-Bug-Id: #22649
2023-09-12 14:44:08 +03:00
Rémi Bernon
ea07c02886 lsteamclient: Generate SteamWorks SDK 1.57 support. 2023-05-19 18:05:40 +03:00
Rémi Bernon
582047e3be lsteamclient: Generate SteamWorks SDK 1.56 support. 2023-05-19 18:05:27 +03:00
Rémi Bernon
49324a57d7 lsteamclient: Define __cdecl to nothing on the linux side. 2023-05-19 18:05:11 +03:00
Rémi Bernon
840959f4cf lsteamclient: Generate SteamWorks SDK 1.55 support. 2023-05-19 18:05:01 +03:00
Rémi Bernon
b661fabcbd lsteamclient: Generate SteamWorks SDK 1.54 support. 2023-05-19 18:04:49 +03:00
Paul Gofman
bcd3d5218f lsteamclient: Wrap SteamAPIWarningMessageHook_t callback.
CW-Bug-Id: #20813
2022-08-10 19:29:30 +03:00
Paul Gofman
ba3d473ec1 lsteamclient: Place vtables for some interfaces in native steamclient.dll data.
CW-Bug-Id: #20869
2022-08-03 14:24:42 +03:00
Arkadiusz Hiler
be4a80dac6 lsteamclient: Assume manual wrappers are needed for newer revisions of the interfaces. 2022-08-03 14:24:42 +03:00
Arkadiusz Hiler
db61ec1f1e lsteamclient: Wrap EnableActionEventCallbacks's callback also for SteamInput006. 2022-06-10 16:31:19 +03:00
Arkadiusz Hiler
05efcef3fa lsteamclient: Fixup paths for GetGlyph*() also in SteamInput006. 2022-06-10 16:31:17 +03:00
Arkadiusz Hiler
fd79f236ca lsteamclient: Bump clang to 13.0.1. 2022-06-10 16:31:15 +03:00
Paul Gofman
cd60b70756 lsteamclient: Fixup gameID parameter for SteamUser008_InitiateGameConnection().
CW-Bug-Id: #20195
2022-04-20 18:54:06 +03:00
Paul Gofman
e03828cdc3 lsteamclient: Also treat TypeKind.UNEXPOSED as unspecified function pointer in genwrapper.py. 2022-04-20 18:54:06 +03:00
Rémi Bernon
57ea5353ee lsteamclient: Parse all include files at once. 2022-01-19 11:29:54 +02:00
Rémi Bernon
226313fa1d lsteamclient: Remove unnecessary includes.
The -Isteamworks_sdk_{sdkver} was not expanded anyway.
2022-01-19 11:29:54 +02:00
Rémi Bernon
de5557448b lsteamclient: Use dicts to lookup structs in gen_wrapper.py. 2022-01-19 11:29:54 +02:00
Rémi Bernon
5e3dab64e2 lsteamclient: Import from clang.cindex instead of prefixing. 2022-01-19 11:29:54 +02:00
Andrew Eikum
212cbc0c9a lsteamclient: Generate steamworks sdk 1.53a support 2022-01-19 11:29:54 +02:00
Andrew Eikum
58860a6cc6 lsteamclient: Support reference parameters 2022-01-19 11:29:54 +02:00
Andrew Eikum
67316452df lsteamclient: Use python f-strings 2022-01-19 11:29:54 +02:00
Paul Gofman
7a90ff74ce lsteamclient: Get memory for SteamClient interface within native steamclient.dll loader range.
CW-Bug-ID: #19605

For Mafia II.
2021-11-11 18:36:07 +02:00
Andrew Eikum
0b1db713ac lsteamclient: Also convert paths from GetGlyphForXboxOrigin
CW-Bug-Id: #19517
2021-10-08 13:22:52 -05:00
Andrew Eikum
f9eef72c88 lsteamclient: Convert glyph paths in new ISteamInput005 methods
CW-Bug-Id: #19517
2021-10-08 13:22:52 -05:00
Andrew Eikum
4b9b102b31 lsteamclient: Convert path given to ISteamInput::SetInputActionManifestFilePath
CW-Bug-Id: #19517
2021-10-08 13:22:52 -05:00