Files
Shipwright/soh/include
Tim Schneeberger 0d2346d322 Reduce LUS header bloat & improve build speed (#6802)
* Avoid `randomizer_check_tracker.h` in widely used `randomizer.h` due to transitive `libultraship.h`/`UIWidgets.hpp` inclusion

* Avoid `libultraship.h` inclusion in heavily used `GameInteractor.h` header

* Remove unused libultraship includes

* Break huge unneeded transitive include chain (via UIWidgets.hpp)

This avoids that changing just UIWidgets.hpp, for example, would retrigger a rebuild of like half the project.

There were a huge transitive include chains, mostly via MenuTypes.h and UIWidgets.hpp. Because of that, I'm splitting UIWidgets into a second header file UIWidgetOptions.hpp, which can be consumed by MenuTypes.h. MenuTypes.h is split into BackendTypes.h to avoid pulling in Fast3D/Windowing/GUI stuff into unrelated code.

Example chain, one of many:
libultraship.h <- UIWidgets.hpp <- MenuTypes.hpp <- randomizer/option.h <- randomizer/item_location.h <- trial.h <- static_data.h <- SeedContext <- (basically all randomizer related sources, lots of other sources in Enhancement, more...)

* Avoid libultraship.h in Notification.h and ObjectExtension.h; these headers are also heavily used

* Add missing include

* Remove unused libultraship includes

* Include only ship/window/GuiWindow.h in GUI-related headers instead of libultraship.h

* Cleanup ConfigUpdater.h and playthrough.cpp

* Remove libultraship.h from Anchor.h and fix transitive dependencies in OTRGlobals.cpp

* Remove unused libultraship.h includes in Anchor code
2026-06-23 05:09:25 +00:00
..
2024-10-28 17:30:11 -07:00
2022-11-30 00:28:57 +01:00
2022-05-11 13:18:24 -04:00
2023-06-01 21:39:50 -04:00
2025-03-30 12:29:59 -04:00
2022-09-21 00:50:22 -04:00
2023-11-19 02:38:07 -05:00
2022-08-31 22:59:38 -04:00
2025-08-13 12:08:32 -07:00
2023-01-17 00:33:56 -05:00
2023-01-17 00:33:56 -05:00
2023-01-17 00:33:56 -05:00
2023-11-19 02:38:07 -05:00
2022-06-22 23:13:32 -04:00
2026-06-04 02:34:50 +00:00
2023-01-17 00:33:56 -05:00
2023-01-17 00:33:56 -05:00
2026-06-13 04:41:50 +00:00
2023-11-19 02:38:07 -05:00