From 28b84e0ff0a0084e9a0c876237be6c1d9f39dd34 Mon Sep 17 00:00:00 2001 From: codereader Date: Wed, 15 Jan 2020 19:27:23 +0100 Subject: [PATCH] Move static Map module to MapModules.cpp. --- include/imap.h | 2 +- radiant/map/Map.cpp | 9 --------- radiant/map/Map.h | 1 + radiant/map/MapModules.cpp | 10 ++++++++++ 4 files changed, 12 insertions(+), 10 deletions(-) diff --git a/include/imap.h b/include/imap.h index eea5b7321a..a63ddd1908 100644 --- a/include/imap.h +++ b/include/imap.h @@ -102,7 +102,7 @@ class IMap : }; typedef std::shared_ptr IMapPtr; -const std::string MODULE_MAP("Map"); +const char* const MODULE_MAP("Map"); // Application-wide Accessor to the currently active map inline IMap& GlobalMapModule() { diff --git a/radiant/map/Map.cpp b/radiant/map/Map.cpp index 13a190751b..71b3bc8a35 100644 --- a/radiant/map/Map.cpp +++ b/radiant/map/Map.cpp @@ -1005,13 +1005,4 @@ void Map::shutdownModule() _mapPositionManager.reset(); } -// Creates the static module instance -module::StaticModule staticMapModule; - } // namespace map - -// Accessor method containing the singleton Map instance -map::Map& GlobalMap() -{ - return *map::staticMapModule.getModule(); -} diff --git a/radiant/map/Map.h b/radiant/map/Map.h index d12f2e69c9..d819a9ddc8 100644 --- a/radiant/map/Map.h +++ b/radiant/map/Map.h @@ -243,4 +243,5 @@ class Map : } // namespace map // Accessor function for the map +// Function body defined in MapModules.cpp map::Map& GlobalMap(); diff --git a/radiant/map/MapModules.cpp b/radiant/map/MapModules.cpp index 683fc934fb..d3455e79bb 100644 --- a/radiant/map/MapModules.cpp +++ b/radiant/map/MapModules.cpp @@ -6,6 +6,7 @@ #include "imapformat.h" #include "modulesystem/StaticModule.h" +#include "Map.h" // Static module instances module::StaticModule d3MapModule; @@ -13,3 +14,12 @@ module::StaticModule q4MapModule; module::StaticModule d3PrefabModule; module::StaticModule q3MapModule; module::StaticModule d3AasModule; + +// Creates the static module instance +module::StaticModule staticMapModule; + +// Accessor method containing the singleton Map instance +map::Map& GlobalMap() +{ + return *staticMapModule.getModule(); +}