Commit Graph

52 Commits

Author SHA1 Message Date
Maschell
36e99e95a2 Update PluginInformation to return std::optional instead of raw pointer 2024-04-25 16:19:26 +02:00
Maschell
cc5acd0980 - use const auto& where possible
- avoid using const std::unique_ptr& and const std::shared_ptr&
- avoid wrapping results in std::optional
- prefer std::string_view over const std::string&
- update FSUtils::LoadFileToMem to write into std::vector<uint8_t>
- use std::span when possible
- Avoid unnessecary copies in PluginDataFactory
- allocate plugins as HeapMemoryFixedSize which bascially is a std::unique_ptr with fixed size
2024-04-25 16:19:26 +02:00
Maschell
1e7c77b39f Improve error message when parsing a plugin failed 2023-08-16 11:03:28 +02:00
Maschell
07de996bf9 Add support for notifications on error 2023-08-16 11:03:28 +02:00
Maschell
d8a906f1db Extend the wupsbackend api to provide some extra functions to query plugin information 2023-02-19 18:44:19 +01:00
Maschell
b579bbdfa9 Update to latest WUPS and libfunctionpatcher 2023-02-17 11:52:35 +01:00
Maschell
2071c6cbf8 Update to use the latest libfunctionpatcher 2023-01-07 13:44:05 +01:00
Maschell
333359c75d Avoid using streams in ELFIO to massively reduce the binary size 2023-01-04 16:35:06 +01:00
Maschell
c9ccf0f657 Update to latest ELFIO and undo any changes directly to ELFIO 2023-01-04 03:14:27 +01:00
Maschell
616fc832d1 Ignore files that don't end with ".wps" or start with "." or "_" 2022-09-24 13:19:12 +02:00
Maschell
9cd0d43111 Fix loading plugins with ".wut_load_bounds" section 2022-05-14 15:43:30 +02:00
Maschell
cda9c3e055 Rewrite the plugin backend, use smart pointers is possible, don't persist in structs and simplify code 2022-05-14 15:43:30 +02:00
Maschell
a7494c59cb Minor code cleanup 2022-04-23 09:11:36 +02:00
Maschell
48eb915a70 Use DEBUG_FUNCTION_LINE_ERR on error. 2022-04-23 09:11:36 +02:00
Maschell
a6ced98864 Use proper alignmend buffer for reading/writing 2022-02-26 16:43:08 +01:00
Maschell
6df6d871aa Include cleanup, fix compiling with latest wut, 2022-02-26 16:43:08 +01:00
Maschell
2547c7edca Format the code via clang-format 2022-02-04 16:35:53 +01:00
Maschell
614f58ea8e Formatting, fix spelling, clean up 2022-01-27 12:47:33 +01:00
Maschell
b49f561430 WUPS 0.7.0 support 2022-01-23 21:16:38 +01:00
Maschell
79eb5758b7 Use std::shared_ptr 2021-12-15 17:09:30 +01:00
Maschell
64f78ccec4 Patch Kernel to resolve symbols names of plugins 2021-12-15 17:04:30 +01:00
Maschell
fe2e7d6fa9 WUPS 0.6.1 support 2021-10-01 17:25:48 +02:00
Maschell
aa90e2478b Formatting and cleanup 2021-09-25 14:26:18 +02:00
Maschell
13ed348f43 Add support for the config and storage API. Bump version to 0.6 2021-09-24 20:37:54 +02:00
Maschell
5247775b03 Support for WUPS 0.5, compile with latest wut version 2021-04-17 14:05:39 +02:00
Maschell
f11649bc36 Support WUPS 0.4, remove some unused code. 2021-03-16 17:55:32 +01:00
Maschell
189af02743 Reduce logging 2021-02-19 19:41:04 +01:00
Maschell
75735e4e4d Remove some unneeded logging 2021-01-10 18:20:54 +01:00
Maschell
f0b78caec3 Updating logging messages, call DCFlushRange on the actual heap instead of a hardcoded address, general clean up. 2021-01-10 13:17:47 +01:00
Maschell
881337ca41 Allocate memory for storing plugins on the default heap 2021-01-01 01:59:36 +01:00
Maschell
ec443161af Fix potential memory leaks 2021-01-01 01:59:09 +01:00
Maschell
db0f9f70d4 Read plugins into a aligned buffer to improve reading speed. 2020-12-28 14:46:30 +01:00
Maschell
f7b4b568d2 Remove \n in log messages 2020-12-28 14:40:53 +01:00
Maschell
e9bd4651ca Clean up and formatting 2020-12-26 14:17:50 +01:00
Maschell
c76edf09c4 Actually read the target process from the plugin while function patching 2020-06-19 17:04:39 +02:00
Maschell
ce73ac48e0 Use the function patcher module for the plugin function patches 2020-06-13 16:57:53 +02:00
Maschell
506b8eaf9a Use definitions from WUMS if possible 2020-06-06 16:40:25 +02:00
Maschell
2b517b5699 Remove the elfio reader from the PluginData class, use it when it's needed 2020-06-03 18:34:31 +02:00
Maschell
1917ff9fb4 Adjust the setter the PluginContainer to use const values 2020-06-03 18:30:05 +02:00
Maschell
7a7a1f7a63 Organize imports and format code 2020-05-28 20:51:31 +02:00
Maschell
169bea55be Allow direct access to plugin data buffers 2020-05-17 21:07:26 +02:00
Maschell
a2816cea61 Addned functions to load plugin meta information from a path or buffer 2020-05-17 20:50:31 +02:00
Maschell
3d642c25d0 Fix logging of std::string 2020-05-17 20:50:05 +02:00
Maschell
3652eb4204 Remove debug logs 2020-05-17 20:49:48 +02:00
Maschell
db9b113eab Add PluginDataPersistence 2020-05-17 20:45:10 +02:00
Maschell
3b9f4a9a51 Add missing copy constructors 2020-05-17 20:43:04 +02:00
Maschell
ead8b14f98 Add the PluginHeapHandle as an argument instead of using the global variable 2020-05-03 14:14:22 +02:00
Maschell
037e1f2ce8 Fix calculating the size needed to store the plugins in memory. 2020-05-03 13:51:39 +02:00
Maschell
0c0680be77 Even more formatting 2020-05-03 12:30:15 +02:00
Maschell
c1c7594926 Save the address of memory allocated on the plugin heap 2020-05-03 12:23:50 +02:00