[Fix] ResourceManager stuff.
This commit is contained in:
parent
0cad1e8128
commit
c32aeda9ee
@ -90,7 +90,9 @@
|
||||
<ClInclude Include="..\..\src\glx\glext.h" />
|
||||
<ClInclude Include="..\..\src\glx\wglext.h" />
|
||||
<ClInclude Include="..\..\src\IO\Input.h" />
|
||||
<ClInclude Include="..\..\src\Level\Layer.h" />
|
||||
<ClInclude Include="..\..\src\Level\Level.h" />
|
||||
<ClInclude Include="..\..\src\Level\MapTile.h" />
|
||||
<ClInclude Include="..\..\src\Main\Game.h" />
|
||||
<ClInclude Include="..\..\src\Main\GLWindow.h" />
|
||||
<ClInclude Include="..\..\src\Math\FPS.h" />
|
||||
@ -123,6 +125,7 @@
|
||||
<ClCompile Include="..\..\src\Collision\AABB.cpp" />
|
||||
<ClCompile Include="..\..\src\Global\Globals.cpp" />
|
||||
<ClCompile Include="..\..\src\IO\Input.cpp" />
|
||||
<ClCompile Include="..\..\src\Level\Layer.cpp" />
|
||||
<ClCompile Include="..\..\src\Level\Level.cpp" />
|
||||
<ClCompile Include="..\..\src\Main\Game.cpp" />
|
||||
<ClCompile Include="..\..\src\Main\GLWindow.cpp" />
|
||||
|
@ -132,15 +132,21 @@
|
||||
<ClInclude Include="..\..\src\TMXParser\TmxObject.h">
|
||||
<Filter>TMXParser</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\System\ResourceManager.h">
|
||||
<Filter>System</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\Level\Level.h">
|
||||
<Filter>Level</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\Collision\AABB.h">
|
||||
<Filter>Collision</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\Level\Layer.h">
|
||||
<Filter>Level</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\Level\MapTile.h">
|
||||
<Filter>Level</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\System\ResourceManager.h">
|
||||
<Filter>System</Filter>
|
||||
</ClInclude>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="..\..\src\Main\main.cpp">
|
||||
@ -221,5 +227,8 @@
|
||||
<ClCompile Include="..\..\src\Collision\AABB.cpp">
|
||||
<Filter>Collision</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\Level\Layer.cpp">
|
||||
<Filter>Level</Filter>
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
</Project>
|
@ -18,10 +18,10 @@ class ResourceManager
|
||||
public:
|
||||
ResourceManager() { }
|
||||
|
||||
typedef std::map<std::string, T*> ResourceMap;
|
||||
typedef std::map<std::string, typename T*> ResourceMap;
|
||||
|
||||
T* Load(const std::string& name) {
|
||||
ResourceMap::iterator i = m_resources.find(name);
|
||||
ResourceManager<T>::ResourceMap::iterator i = m_resources.find(name);
|
||||
if(i == m_resources.end()) {
|
||||
T* resource = new T();
|
||||
|
||||
@ -43,7 +43,7 @@ public:
|
||||
}
|
||||
|
||||
T* Find(const std::string& name) {
|
||||
ResourceMap::iterator i = m_resources.find(name);
|
||||
ResourceManager<T>::ResourceMap::iterator i = m_resources.find(name);
|
||||
if(i != m_resources.end()) {
|
||||
return i->second;
|
||||
}
|
||||
@ -51,7 +51,7 @@ public:
|
||||
}
|
||||
|
||||
void Add(const std::string& name, T* resource) {
|
||||
ResourceMap::iterator i = m_resources.find(name);
|
||||
ResourceManager<T>::ResourceMap::iterator i = m_resources.find(name);
|
||||
if(i == m_resources.end()) {
|
||||
resource->refs++;
|
||||
m_resources.insert(std::pair<std::string, T*>(name, resource));
|
||||
@ -64,7 +64,7 @@ public:
|
||||
if(name.empty())
|
||||
return;
|
||||
|
||||
ResourceMap::iterator i = m_resources.find(name);
|
||||
ResourceManager<T>::ResourceMap::iterator i = m_resources.find(name);
|
||||
if(i != m_resources.end()) {
|
||||
T* resource = i->second;
|
||||
|
||||
@ -78,7 +78,7 @@ public:
|
||||
}
|
||||
|
||||
void Destroy(T* resource) {
|
||||
ResourceMap::iterator i;
|
||||
ResourceManager<T>::ResourceMap::iterator i;
|
||||
for(i = m_resources.begin(); i != m_resources.end(); ++i) {
|
||||
if(i->second == resource){
|
||||
resource->refs--;
|
||||
|
Loading…
Reference in New Issue
Block a user