diff options
author | Stijn Buys <ingar@osirion.org> | 2008-07-28 19:37:31 +0000 |
---|---|---|
committer | Stijn Buys <ingar@osirion.org> | 2008-07-28 19:37:31 +0000 |
commit | d389a31f9816b55d8c7685ec24b9ab814252d693 (patch) | |
tree | 9b2577692e543fa6c59fcda508f92c3eb839ac7a /src/core/func.cc | |
parent | 17408276791033e8122819185abf3bcb01740105 (diff) |
zone support
Diffstat (limited to 'src/core/func.cc')
-rw-r--r-- | src/core/func.cc | 36 |
1 files changed, 18 insertions, 18 deletions
diff --git a/src/core/func.cc b/src/core/func.cc index ad25426..edebc8a 100644 --- a/src/core/func.cc +++ b/src/core/func.cc @@ -16,15 +16,15 @@ namespace core /* ---- Static functions for the Func registry -------------------- */ -std::map<std::string, Func*> Func::registry; +Func::Registry Func::func_registry; Func * Func::add(const char *name, FuncPtr functionptr, unsigned int flags) { Func *func = 0; - std::map<std::string, Func*>::iterator it = registry.find(name); - if (it == registry.end()) { + Registry::iterator it = func_registry.find(name); + if (it == func_registry.end()) { func = new Func(name, (void *)functionptr, flags & ~Func::Game); - registry[std::string(name)] = func; + func_registry[std::string(name)] = func; //con_debug << "Function '" << name << "' registered." << std::endl; } else { con_warn << "Function '" << name << "' already registered!" << std::endl; @@ -36,10 +36,10 @@ Func * Func::add(const char *name, FuncPtr functionptr, unsigned int flags) Func *Func::add(const char *name, GameFuncPtr gamefunctionptr, unsigned int flags) { Func *func = 0; - std::map<std::string, Func*>::iterator it = registry.find(name); - if (it == registry.end()) { + Registry::iterator it = func_registry.find(name); + if (it == func_registry.end()) { func = new Func(name, (void *)gamefunctionptr, flags | Func::Game); - registry[std::string(name)] = func; + func_registry[std::string(name)] = func; //con_debug << "Function '" << name << "' registered." << std::endl; } else { con_warn << "Function '" << name << "' already registered!" << std::endl; @@ -50,20 +50,20 @@ Func *Func::add(const char *name, GameFuncPtr gamefunctionptr, unsigned int flag void Func::remove(const char *name) { - std::map<std::string, Func *>::iterator it = registry.find(std::string(name)); - if (it != registry.end()) { + std::map<std::string, Func *>::iterator it = func_registry.find(std::string(name)); + if (it != func_registry.end()) { delete (*it).second; - registry.erase(it); + func_registry.erase(it); //con_debug << "Function '" << name << "' unregistered." << std::endl; } } void Func::remove(const std::string &name) { - std::map<std::string, Func *>::iterator it = registry.find(name); - if (it != registry.end()) { + std::map<std::string, Func *>::iterator it = func_registry.find(name); + if (it != func_registry.end()) { delete (*it).second; - registry.erase(it); + func_registry.erase(it); //con_debug << "Function '" << name << "' unregistered." << std::endl; } @@ -71,8 +71,8 @@ void Func::remove(const std::string &name) Func *Func::find(const std::string &name) { - std::map<std::string, Func *>::iterator it = registry.find(name); - if (it == registry.end()) + std::map<std::string, Func *>::iterator it = func_registry.find(name); + if (it == func_registry.end()) return 0; else return (*it).second; @@ -80,10 +80,10 @@ Func *Func::find(const std::string &name) void Func::list() { - std::map<std::string, Func*>::iterator it; + Registry::iterator it; con_print << "Flags: G=Game S=Shared" << std::endl; - for (it = registry.begin(); it != registry.end(); it++) { + for (it = func_registry.begin(); it != func_registry.end(); it++) { std::string typeindicator; if (((*it).second->flags() & Game) == Game) typeindicator += 'G'; @@ -96,7 +96,7 @@ void Func::list() con_print << " " << typeindicator << " " << (*it).second->name() << " " << (*it).second->info() << std::endl; } - con_print << registry.size() << " registered functions" << std::endl; + con_print << func_registry.size() << " registered functions" << std::endl; } /* ---- Func ------------------------------------------------------ */ |