* renamed class LoadModule into CLoadModule because LoadModule is already a registered function on windows

* fixed some other windows compilation problems

git-svn-id: svn://svn.icculus.org/gtkradiant/GtkRadiant/trunk@256 8a3a26a2-13c4-0310-b231-cf6edde360e5
This commit is contained in:
mattn 2008-06-19 11:56:48 +00:00
parent 9077ee9bab
commit a95c219c97
2 changed files with 15 additions and 6 deletions

View file

@ -52,6 +52,11 @@ public:
m_observer->insert(node); m_observer->insert(node);
return *this; return *this;
} }
TraversableObserverInsertOutputIterator& operator=(const NodeSmartReference& node)
{
m_observer->insert(node);
return *this;
}
TraversableObserverInsertOutputIterator& operator*() { return *this; } TraversableObserverInsertOutputIterator& operator*() { return *this; }
TraversableObserverInsertOutputIterator& operator++() { return *this; } TraversableObserverInsertOutputIterator& operator++() { return *this; }
TraversableObserverInsertOutputIterator& operator++(int) { return *this; } TraversableObserverInsertOutputIterator& operator++(int) { return *this; }
@ -77,18 +82,22 @@ public:
m_observer->erase(node); m_observer->erase(node);
return *this; return *this;
} }
TraversableObserverEraseOutputIterator& operator=(const NodeSmartReference& node)
{
m_observer->erase(node);
return *this;
}
TraversableObserverEraseOutputIterator& operator*() { return *this; } TraversableObserverEraseOutputIterator& operator*() { return *this; }
TraversableObserverEraseOutputIterator& operator++() { return *this; } TraversableObserverEraseOutputIterator& operator++() { return *this; }
TraversableObserverEraseOutputIterator& operator++(int) { return *this; } TraversableObserverEraseOutputIterator& operator++(int) { return *this; }
}; };
typedef UnsortedSet<NodeSmartReference> UnsortedNodeSet; typedef UnsortedSet<NodeSmartReference> UnsortedNodeSet;
/// \brief Calls \p observer->\c insert for each node that exists only in \p other and \p observer->\c erase for each node that exists only in \p self /// \brief Calls \p observer->\c insert for each node that exists only in \p other and \p observer->\c erase for each node that exists only in \p self
inline void nodeset_diff(const UnsortedNodeSet& self, const UnsortedNodeSet& other, scene::Traversable::Observer* observer) inline void nodeset_diff(const UnsortedNodeSet& self, const UnsortedNodeSet& other, scene::Traversable::Observer* observer)
{ {
std::vector<NodeReference> sorted(self.begin(), self.end()); std::vector<NodeSmartReference> sorted(self.begin(), self.end());
std::vector<NodeReference> other_sorted(other.begin(), other.end()); std::vector<NodeSmartReference> other_sorted(other.begin(), other.end());
std::sort(sorted.begin(), sorted.end()); std::sort(sorted.begin(), sorted.end());
std::sort(other_sorted.begin(), other_sorted.end()); std::sort(other_sorted.begin(), other_sorted.end());

View file

@ -502,11 +502,11 @@ void gamemode_set(const char* gamemode)
#include "os/dir.h" #include "os/dir.h"
class LoadModule class CLoadModule
{ {
const char* m_path; const char* m_path;
public: public:
LoadModule(const char* path) : m_path(path) CLoadModule(const char* path) : m_path(path)
{ {
} }
void operator()(const char* name) const void operator()(const char* name) const
@ -532,7 +532,7 @@ const char* const c_library_extension =
void Radiant_loadModules(const char* path) void Radiant_loadModules(const char* path)
{ {
Directory_forEach(path, MatchFileExtension<LoadModule>(c_library_extension, LoadModule(path))); Directory_forEach(path, MatchFileExtension<CLoadModule>(c_library_extension, CLoadModule(path)));
} }
void Radiant_loadModulesFromRoot(const char* directory) void Radiant_loadModulesFromRoot(const char* directory)