10 #include <Atoms/Globals.h>
11 #include <Atoms/AgentType.h>
86 typedef std::map<std::string, AgentTypePtr> AgentTypesMap;
88 AgentTypesMap m_agentTypesMap;
90 mutable std::mutex m_mutex;
Agent type.
Definition: AgentType.h:30
Container for all agent types.
Definition: AgentTypes.h:20
void addAgentType(const std::string &name, const AgentType &agentType, bool replace=true)
Adds an agent type to the map.
AgentTypes & operator=(const AgentTypes &)
Assign operator.
AgentTypeCPtr agentType(const std::string &typeName) const
Gets the agent type with the given name.
bool agentTypeExists(const std::string &name) const
Checks if an agent type with the given name exists.
std::vector< std::string > agentTypeNames() const
Gets all agent types names.
static AgentTypes & instance()
Singleton access for global data.
AgentTypePtr agentType(const std::string &typeName)
Gets the agent type with the given name.
void removeAgentType(const std::string &name)
Removes an agent type from the map.
void clear()
Removes all agent types.
AgentTypes(const AgentTypes &)
Copy constructor.
unsigned int numAgentTypes() const
Gets the number of agent types.
Atoms namespace.
Definition: Agent.h:29
AtomsPtr< AgentType > AgentTypePtr
Agent type pointer.
Definition: AgentType.h:17
AtomsPtr< const AgentType > AgentTypeCPtr
Agent type const pointer.
Definition: AgentType.h:21