45 #ifndef __OBSTACLE_ACTION_H__
46 #define __OBSTACLE_ACTION_H__
66 class ObstacleActFactory;
109 virtual size_t newValue(
size_t value ) = 0;
162 virtual bool setFromXML(
Action * action, TiXmlElement * node,
const std::string & behaveFldr )
const;
184 virtual size_t newValue(
size_t value );
207 virtual const char *
name()
const {
return "remove_obstacle"; }
217 return "Removes the specified obstacle set from the agents consideration";
248 virtual size_t newValue(
size_t value );
271 virtual const char *
name()
const {
return "add_obstacle"; }
281 return "Adds the specified obstacle set from the agents consideration";
312 virtual size_t newValue(
size_t value );
335 virtual const char *
name()
const {
return "set_obstacle"; }
345 return "Sets the specified obstacle set from the agents consideration";
365 #endif // __OBSTACLE_ACTION_H__
Modifies the agent's obstacle set by ADDING the given obstacle set value.
Definition: ObstacleAction.h:240
The definition of a simple thrading lock.
Action * instance() const
Create an instance of this class's action.
Definition: ObstacleAction.h:295
The core namespace. All elements of Menge are contained in this namespace.
Definition: AgentGenerator.cpp:43
RemoveObstacleActFactory()
Constructor.
Definition: ObstacleAction.h:197
Sets up the proper compiler directives for platform and dll export/import.
Factory for the ObstacleActFactory.
Definition: ObstacleAction.h:256
virtual const char * description() const
A description of the action.
Definition: ObstacleAction.h:344
The base class for modifying agent obstacle sets.
Definition: ObstacleAction.h:73
The definition of a simple mutex-style lock.
Definition: SimpleLock.h:62
Factory for the SetObstacleSetAction.
Definition: ObstacleAction.h:320
The definition of actions that are taken as agents enter states.
virtual const char * name() const
The name of the action.
Definition: ObstacleAction.h:271
Action * instance() const
Create an instance of this class's action.
Definition: ObstacleAction.h:231
std::map< size_t, size_t > _originalMap
A mapping from agent id to the agent's obstacle set value before the action was applied.
Definition: ObstacleAction.h:120
SetObstacleActFactory()
Constructor.
Definition: ObstacleAction.h:325
Factory for the ObstacleAction.
Definition: ObstacleAction.h:136
size_t _operandID
The identifier for the "operand" size_t attribute.
Definition: ObstacleAction.h:167
The factory for parsing xml data and instantiating actions.
virtual const char * name() const
The name of the action.
Definition: ObstacleAction.h:335
virtual const char * description() const
A description of the action.
Definition: ObstacleAction.h:280
virtual const char * description() const
A description of the action.
Definition: ObstacleAction.h:216
Factory for the RemoveObstacleSetAction.
Definition: ObstacleAction.h:192
The namespace contains the Behavior Finite State Machine (BFSM) definition.
Modifies the agent's obstacle set by REMOVING the given obstacle set value.
Definition: ObstacleAction.h:176
The abstract definition of an action.
Definition: Action.h:78
Collection of convenient pre-compiler information for fsm definitions.
size_t _setOperand
The set operand to apply to the agents obstacle set.
Definition: ObstacleAction.h:114
Defines the basic agent properties and functionality that all simulation agents share.
Definition: BaseAgent.h:123
Enumerated types for the State class.
Modifies the agent's obstacle set by SETTING the given obstacle set value (i.e. overriding the old va...
Definition: ObstacleAction.h:304
A class for parsing the xml description of an action and instantiating particular instances...
Definition: ActionFactory.h:62
The namespace that contains the basic simulation mechanisms.
Action * instance() const
Create an instance of this class's action.
Definition: ObstacleAction.h:359
AddObstacleyActFactory()
Constructor.
Definition: ObstacleAction.h:261
SimpleLock _lock
Lock for guaranteeing thread-safety.
Definition: ObstacleAction.h:125
virtual const char * name() const
The name of the action.
Definition: ObstacleAction.h:207