aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Maps
diff options
context:
space:
mode:
authorNaios <naios-dev@live.de>2016-03-11 17:11:05 +0100
committerNaios <naios-dev@live.de>2016-03-11 18:35:49 +0100
commit329225b40d110bed634f8cd0a1ab5c6dc7bbbdd1 (patch)
tree5cf3f149429e6821660cdc9c04ef3210ac374e4b /src/server/game/Maps
parenta8fe7f6eb7195368bbb4d0256927405f5e5c6f87 (diff)
Core/Game: Move singleton instances into compilation units
* Fixes issues when building shared libraries (prevents gcc and clang from providing several instance)
Diffstat (limited to 'src/server/game/Maps')
-rw-r--r--src/server/game/Maps/MapManager.cpp6
-rw-r--r--src/server/game/Maps/MapManager.h6
-rw-r--r--src/server/game/Maps/TransportMgr.cpp6
-rw-r--r--src/server/game/Maps/TransportMgr.h6
4 files changed, 14 insertions, 10 deletions
diff --git a/src/server/game/Maps/MapManager.cpp b/src/server/game/Maps/MapManager.cpp
index bed31834842..81302671762 100644
--- a/src/server/game/Maps/MapManager.cpp
+++ b/src/server/game/Maps/MapManager.cpp
@@ -62,6 +62,12 @@ void MapManager::InitializeVisibilityDistanceInfo()
(*iter).second->InitVisibilityDistance();
}
+MapManager* MapManager::instance()
+{
+ static MapManager instance;
+ return &instance;
+}
+
Map* MapManager::CreateBaseMap(uint32 id)
{
Map* map = FindBaseMap(id);
diff --git a/src/server/game/Maps/MapManager.h b/src/server/game/Maps/MapManager.h
index c0811e7fecc..24cbbf4ef4d 100644
--- a/src/server/game/Maps/MapManager.h
+++ b/src/server/game/Maps/MapManager.h
@@ -31,11 +31,7 @@ struct TransportCreatureProto;
class MapManager
{
public:
- static MapManager* instance()
- {
- static MapManager instance;
- return &instance;
- }
+ static MapManager* instance();
Map* CreateBaseMap(uint32 mapId);
Map* FindBaseNonInstanceMap(uint32 mapId) const;
diff --git a/src/server/game/Maps/TransportMgr.cpp b/src/server/game/Maps/TransportMgr.cpp
index 028a58f53c0..5de0133c342 100644
--- a/src/server/game/Maps/TransportMgr.cpp
+++ b/src/server/game/Maps/TransportMgr.cpp
@@ -35,6 +35,12 @@ TransportMgr::TransportMgr() { }
TransportMgr::~TransportMgr() { }
+TransportMgr* TransportMgr::instance()
+{
+ static TransportMgr instance;
+ return &instance;
+}
+
void TransportMgr::Unload()
{
_transportTemplates.clear();
diff --git a/src/server/game/Maps/TransportMgr.h b/src/server/game/Maps/TransportMgr.h
index d73f284138a..b034751a6b4 100644
--- a/src/server/game/Maps/TransportMgr.h
+++ b/src/server/game/Maps/TransportMgr.h
@@ -102,11 +102,7 @@ class TransportMgr
friend void DB2Manager::LoadStores(std::string const&, uint32);
public:
- static TransportMgr* instance()
- {
- static TransportMgr instance;
- return &instance;
- }
+ static TransportMgr* instance();
void Unload();