Consolidate extension forward declarations into extensions/fwd.h

Remove unused `using namespace Extensions` from isleapp.cpp and replace
per-header forward declaration blocks in 7 LEGO1 headers with a single
shared forward declarations header.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Christian Semmler 2026-03-13 15:28:45 -07:00
parent 569c8b467b
commit 4269a1b0fc
No known key found for this signature in database
GPG Key ID: 086DAA1360BEEE5C
9 changed files with 30 additions and 38 deletions

View File

@ -92,8 +92,6 @@
#include <psp2/kernel/clib.h>
#endif
using namespace Extensions;
DECOMP_SIZE_ASSERT(IsleApp, 0x8c)
// GLOBAL: ISLE 0x410030

View File

@ -2,6 +2,7 @@
#define ISLE_H
#include "actionsfwd.h"
#include "extensions/fwd.h"
#include "legogamestate.h"
#include "legonamedplane.h"
#include "legostate.h"
@ -23,11 +24,6 @@ class RaceCar;
class SkateBoard;
class TowTrack;
namespace Multiplayer
{
class WorldStateSync;
}
// VTABLE: LEGO1 0x100d7028
// VTABLE: BETA10 0x101b9d40
// SIZE 0x26c

View File

@ -2,6 +2,7 @@
#define LEGOANIMATIONMANAGER_H
#include "decomp.h"
#include "extensions/fwd.h"
#include "lego1_export.h"
#include "legolocations.h"
#include "legomain.h"
@ -20,10 +21,6 @@ class LegoROIList;
struct LegoOrientedEdge;
class LegoWorld;
class MxDSAction;
namespace Multiplayer
{
class NetworkManager;
}
// SIZE 0x30
struct ModelInfo {

View File

@ -2,6 +2,7 @@
#define LEGOBUILDINGMANAGER_H
#include "decomp.h"
#include "extensions/fwd.h"
#include "lego1_export.h"
#include "misc/legotypes.h"
#include "mxcore.h"
@ -12,10 +13,6 @@ class LegoStorage;
class LegoWorld;
class LegoCacheSound;
class LegoPathBoundary;
namespace Multiplayer
{
class WorldStateSync;
}
// SIZE 0x2c
struct LegoBuildingInfo {

View File

@ -2,6 +2,7 @@
#define LEGOCHARACTERMANAGER_H
#include "decomp.h"
#include "extensions/fwd.h"
#include "mxstl/stlcompat.h"
#include "mxtypes.h"
#include "mxvariable.h"
@ -13,13 +14,6 @@ class LegoActor;
class LegoExtraActor;
class LegoStorage;
class LegoROI;
namespace Extensions
{
namespace Common
{
class CharacterCloner;
}
} // namespace Extensions
#pragma warning(disable : 4237)

View File

@ -2,6 +2,7 @@
#define LEGOINPUTMANAGER_H
#include "decomp.h"
#include "extensions/fwd.h"
#include "lego1_export.h"
#include "legoeventnotificationparam.h"
#include "mxlist.h"
@ -26,11 +27,6 @@ class LegoCameraController;
class LegoControlManager;
class LegoWorld;
namespace Extensions
{
class MultiplayerExt;
}
extern MxS32 g_clickedObjectId;
extern const char* g_clickedAtom;

View File

@ -2,18 +2,12 @@
#define __LEGONAVCONTROLLER_H
#include "decomp.h"
#include "extensions/fwd.h"
#include "mxcore.h"
#include "mxtypes.h"
struct LegoLocation;
class Vector3;
namespace Extensions
{
namespace ThirdPersonCamera
{
class OrbitCamera;
}
} // namespace Extensions
//////////////////////////////////////////////////////////////////////////////
//

View File

@ -2,6 +2,7 @@
#define LEGOPLANTMANAGER_H
#include "decomp.h"
#include "extensions/fwd.h"
#include "legomain.h"
#include "mxcore.h"
@ -11,10 +12,6 @@ struct LegoPlantInfo;
class LegoROI;
class LegoStorage;
class LegoWorld;
namespace Multiplayer
{
class WorldStateSync;
}
// VTABLE: LEGO1 0x100d6758
// SIZE 0x2c

View File

@ -0,0 +1,23 @@
#ifndef EXTENSIONS_FWD_H
#define EXTENSIONS_FWD_H
namespace Extensions
{
class MultiplayerExt;
namespace Common
{
class CharacterCloner;
}
namespace ThirdPersonCamera
{
class OrbitCamera;
}
} // namespace Extensions
namespace Multiplayer
{
class NetworkManager;
class WorldStateSync;
} // namespace Multiplayer
#endif // EXTENSIONS_FWD_H