10 #include <Atoms/Globals.h>
11 #include <AtomsCore/Globals.h>
12 #include <Atoms/BehaviourTree/Behaviour.h>
51 bool registerBehaviour(
const std::string& moduleName, creatorFn func,
unsigned int moduleType = kNative,
bool replace =
false,
const std::string category =
"");
105 std::map<std::string, creatorFn> m_factoryMap;
107 std::map<std::string, short> m_moduleTypes;
109 std::map<std::string, std::string> m_moduleCategories;
Behaviour factory.
Definition: BehaviourFactory.h:22
bool isRegistered(const std::string &name)
Check if a behaviour is registered.
Behaviour * createBehaviour(const std::string &name)
Creates a behaviour.
std::vector< std::string > getRegisteredBehaviours()
Gets all registered behaviour modules.
void clear()
Clear factory.
bool deregisterBehaviour(const std::string &name)
Deregisters a Behaviour type from the factory.
static BehaviourFactory & instance()
Singleton access.
bool registerBehaviour(const std::string &moduleName, creatorFn func, unsigned int moduleType=kNative, bool replace=false, const std::string category="")
Registers a behaviour in the factory.
const std::string getBehaviourCategory(const std::string &moduleName)
Gets a registered behaviour category.
short moduleType(const std::string &name)
Gets the module type.
Definition: Behaviour.h:21
Atoms namespace.
Definition: Agent.h:29