Commit Graph

139 Commits

Author SHA1 Message Date
Rémi Bernon
4852a1bfdd lsteamclient: Simplify unix side parameter conversions.
CW-Bug-Id: #22729
2023-12-19 19:42:15 +01:00
Rémi Bernon
26174adf32 lsteamclient: Allocate memory for every path conversion.
CW-Bug-Id: #22729
2023-12-19 19:42:15 +01:00
Rémi Bernon
80104ca5d9 lsteamclient: Simplify path convertion using separate dicts.
CW-Bug-Id: #22729
2023-12-19 19:42:15 +01:00
Rémi Bernon
259895dcf3 lsteamclient: Use a generic interface wrapper struct.
CW-Bug-Id: #22729
2023-12-19 19:42:14 +01:00
Rémi Bernon
338ec9aa0a lsteamclient: Use with statement to generate the .c files.
CW-Bug-Id: #22729
2023-12-19 19:42:14 +01:00
Rémi Bernon
48eebd5c23 lsteamclient: Generate the .h and .cpp files separately.
CW-Bug-Id: #22729
2023-12-19 19:42:14 +01:00
Rémi Bernon
47ae1fde89 lsteamclient: Pass write function as parameter to handle_method*.
CW-Bug-Id: #22729
2023-12-19 19:42:14 +01:00
Rémi Bernon
85b9f9ea6f lsteamclient: Replace do_cb_wrap with (alloc|convert)_callback.
CW-Bug-Id: #22729
2023-12-19 19:42:14 +01:00
Rémi Bernon
d46fb7c78a lsteamclient: Consistently use the computed return type.
CW-Bug-Id: #22729
2023-12-19 19:42:14 +01:00
Rémi Bernon
536b237731 lsteamclient: Always use a return result variable.
CW-Bug-Id: #22729
2023-12-19 19:42:14 +01:00
Rémi Bernon
0040deb754 lsteamclient: Cleanup C method generator.
CW-Bug-Id: #22729
2023-12-19 19:42:13 +01:00
Rémi Bernon
ec53c8a649 lsteamclient: Generate thiscall wrappers separately.
CW-Bug-Id: #22729
2023-12-19 19:42:13 +01:00
Rémi Bernon
26eddba698 lsteamclient: Introduce a new Method cursor wrapper.
CW-Bug-Id: #22729
2023-12-19 19:42:13 +01:00
Rémi Bernon
2087258dc1 lsteamclient: Introduce a new Class cursor wrapper.
CW-Bug-Id: #22729
2023-12-19 19:42:13 +01:00
Rémi Bernon
0c8b164036 lsteamclient: Use the names array for the param converters.
CW-Bug-Id: #22729
2023-12-19 19:42:13 +01:00
Rémi Bernon
da3bf9b709 lsteamclient: Use declspec to generate C++ method signature.
CW-Bug-Id: #22729
2023-12-19 19:42:13 +01:00
Rémi Bernon
9082bfb035 lsteamclient: Split C++/C method generation helpers.
CW-Bug-Id: #22729
2023-12-19 19:42:13 +01:00
Rémi Bernon
5120d0f423 lsteamclient: Reorder do_cb_wrap first parameters.
CW-Bug-Id: #22729
2023-12-19 19:42:13 +01:00
Rémi Bernon
16c292fa1b lsteamclient: Split cpp_h generation to a dedicated method.
CW-Bug-Id: #22729
2023-12-19 19:42:13 +01:00
Rémi Bernon
3a7b436f7a lsteamclient: Return all struct abis from find_struct.
CW-Bug-Id: #22729
2023-12-19 19:42:13 +01:00
Rémi Bernon
cb630d307e lsteamclient: Filter structs and classes while parsing.
CW-Bug-Id: #22729
2023-12-19 19:42:13 +01:00
Rémi Bernon
819257a800 lsteamclient: Use the all_records dict to lookup structs.
CW-Bug-Id: #22729
2023-12-19 19:42:13 +01:00
Rémi Bernon
5537343715 lsteamclient: Introduce new canonical_typename helper.
CW-Bug-Id: #22729
2023-12-19 19:42:13 +01:00
Rémi Bernon
f6ebb7f506 lsteamclient: Sort classes by their version string.
CW-Bug-Id: #22729
2023-12-19 19:42:13 +01:00
Rémi Bernon
6451808497 lsteamclient: Filter classes by version before generating.
CW-Bug-Id: #22729
2023-12-19 19:42:13 +01:00
Rémi Bernon
3008287221 lsteamclient: Strip interface version suffixes early.
CW-Bug-Id: #22729
2023-12-19 19:42:13 +01:00
Rémi Bernon
7d61cb59ad lsteamclient: Parse SDK versions and ABIs in parallel.
CW-Bug-Id: #22729
2023-12-19 19:42:13 +01:00
Rémi Bernon
07e1819ebb lsteamclient: Split loading, parsing, and generating steps.
CW-Bug-Id: #22729
2023-12-19 19:42:12 +01:00
Rémi Bernon
2ac946310c lsteamclient: Introduce a dedicated parsing function.
CW-Bug-Id: #22729
2023-12-19 19:42:12 +01:00
Rémi Bernon
7f722fb6d1 lsteamclient: Use a dict for SDK sources / class mapping.
CW-Bug-Id: #22729
2023-12-19 19:42:12 +01:00
Rémi Bernon
5fd4f7d72e lsteamclient: Use upper-case global constants.
CW-Bug-Id: #22729
2023-12-19 19:42:12 +01:00
Rémi Bernon
2cb0c9a2b6 lsteamclient: Remove unused imports and duplicate entries.
CW-Bug-Id: #22729
2023-12-19 19:42:12 +01:00
Arkadiusz Hiler
c0d0b2f295 lsteamclient: Generate SteamWorks SDK 1.58 support. 2023-09-27 20:14:12 +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