![]() |
fpmas 1.6
|
#include <spatial_model.h>
Public Member Functions | |
virtual std::vector< Cell * > | successors ()=0 |
![]() | |
virtual GroupId | groupId () const =0 |
virtual std::vector< GroupId > | groupIds () const =0 |
virtual void | setGroupId (GroupId id)=0 |
virtual void | addGroupId (GroupId id)=0 |
virtual void | removeGroupId (GroupId id)=0 |
virtual AgentGroup * | group ()=0 |
virtual const AgentGroup * | group () const =0 |
virtual std::vector< AgentGroup * > | groups ()=0 |
virtual std::vector< const AgentGroup * > | groups () const =0 |
virtual void | setGroup (AgentGroup *group)=0 |
virtual void | addGroup (AgentGroup *group)=0 |
virtual void | removeGroup (AgentGroup *group)=0 |
virtual void | setGroupPos (api::model::GroupId gid, std::list< Agent * >::iterator pos)=0 |
virtual std::list< Agent * >::iterator | getGroupPos (api::model::GroupId gid) const =0 |
virtual TypeId | typeId () const =0 |
virtual Agent * | copy () const =0 |
virtual void | copyAssign (Agent *agent)=0 |
virtual void | moveAssign (Agent *agent)=0 |
virtual AgentNode * | node ()=0 |
virtual const AgentNode * | node () const =0 |
virtual void | setNode (AgentNode *node)=0 |
virtual Model * | model ()=0 |
virtual const Model * | model () const =0 |
virtual void | setModel (Model *model)=0 |
virtual AgentTask * | task ()=0 |
virtual const AgentTask * | task () const =0 |
virtual void | setTask (AgentTask *task)=0 |
virtual AgentTask * | task (GroupId id)=0 |
virtual const AgentTask * | task (GroupId id) const =0 |
virtual void | setTask (GroupId id, AgentTask *task)=0 |
virtual const std::unordered_map< GroupId, AgentTask * > & | tasks ()=0 |
virtual void | act ()=0 |
![]() | |
virtual void | init ()=0 |
virtual void | handleNewLocation ()=0 |
virtual void | handleMove ()=0 |
virtual void | handlePerceive ()=0 |
virtual void | updatePerceptions (AgentGroup &group)=0 |
Cell API.
Cells represent nodes on which SpatialAgents can be located. Moreover, SpatialAgents can move to other Cells and perceive objects located on others, according to their mobility and perception ranges.
Such operation occur in the "Cell Network", i.e. the subgraph that can be described using the Cell::successors() methods.
|
pure virtual |
Returns successors of this Cell.
Successors are targets of outgoing edges from this Cell on the CELL_SUCCESSOR layer.
This method is assumed to be called on a LOCAL Cell. The returned list might be incomplete otherwise.
Implemented in fpmas::model::CellBase< api::model::Cell, GraphCell, GraphCellBase< GraphCell, GraphCell > >, fpmas::model::CellBase< api::model::Cell, GraphCellType, GraphCellBase< GraphCellType, GraphCellType > >, fpmas::model::CellBase< api::model::GridCell, GridCell, GridCellBase< GridCell, GridCell > >, and fpmas::model::CellBase< api::model::GridCell, GridCellType, GridCellBase< GridCellType, GridCellType > >.