Reverted the comparison function to r5159 and rewrote map to hash_map. I confirmed that the code can be compiled and run under Visual Studio 2008. And I confirmed the code can be compiled under gcc 4.4.0 (mingw). I could not confirm that the code run under linux.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5161 8ced0084-cf51-0410-be5f-012b33b47a6e
This commit is contained in:
nodchip 2010-03-06 02:07:48 +00:00
parent 1b61742b53
commit d69478e539
2 changed files with 43 additions and 3 deletions

View file

@ -15,9 +15,16 @@
// Official SVN repository and contact information can be found at
// http://code.google.com/p/dolphin-emu/
#include <algorithm>
#ifdef _MSC_VER
#include <hash_map>
using stdext::hash_map;
#else
#include <ext/hash_map>
using __gnu_cxx::hash_map;
#endif
#include <map>
#include <vector>
#include <algorithm>
#include "VideoCommon.h"
#include "Statistics.h"
@ -30,10 +37,20 @@ static int s_attr_dirty; // bitfield
static VertexLoader *g_VertexLoaders[8];
#ifndef _MSC_VER
namespace __gnu_cxx {
template<> struct hash<VertexLoaderUID> {
size_t operator()(const VertexLoaderUID& __x) const {
return __x;
}
};
}
#endif
namespace VertexLoaderManager
{
typedef std::map<VertexLoaderUID, VertexLoader *> VertexLoaderMap;
typedef hash_map<VertexLoaderUID, VertexLoader*> VertexLoaderMap;
static VertexLoaderMap g_VertexLoaderMap;
// TODO - change into array of pointers. Keep a map of all seen so far.