ARGoS 3
A parallel, multi-engine simulator for swarm robotics
space.h File Reference
#include <functional>
#include <string>
#include <argos3/core/utility/datatypes/any.h>
#include <argos3/core/simulator/medium/medium.h>
#include <argos3/core/simulator/entity/embodied_entity.h>
#include <argos3/core/simulator/entity/controllable_entity.h>
+ Include dependency graph for space.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  argos::CSpace
 
class  argos::CSpaceOperation< ACTION >
 
class  argos::CSpaceOperationAddEntity
 
class  argos::CSpaceOperationRemoveEntity
 

Namespaces

namespace  argos
 The namespace containing all the ARGoS related code.
 

Macros

#define SPACE_OPERATION_ADD_ENTITY(ENTITY)
 
#define SPACE_OPERATION_REMOVE_ENTITY(ENTITY)
 
#define REGISTER_SPACE_OPERATION(ACTION, OPERATION, ENTITY)
 
#define REGISTER_STANDARD_SPACE_OPERATION_ADD_ENTITY(ENTITY)
 
#define REGISTER_STANDARD_SPACE_OPERATION_REMOVE_ENTITY(ENTITY)
 
#define REGISTER_STANDARD_SPACE_OPERATIONS_ON_ENTITY(ENTITY)
 

Macro Definition Documentation

◆ REGISTER_SPACE_OPERATION

#define REGISTER_SPACE_OPERATION ( ACTION,
OPERATION,
ENTITY )
Value:
REGISTER_ENTITY_OPERATION(ACTION, CSpace, OPERATION, void, ENTITY);
#define REGISTER_ENTITY_OPERATION(LABEL, PLUGIN, OPERATION, RETURN_VALUE, DERIVED)
Convenience macro to register vtable entity operations.
Definition entity.h:451

Definition at line 549 of file space.h.

◆ REGISTER_STANDARD_SPACE_OPERATION_ADD_ENTITY

#define REGISTER_STANDARD_SPACE_OPERATION_ADD_ENTITY ( ENTITY)
Value:
REGISTER_SPACE_OPERATION(CSpaceOperationAddEntity, \
CSpaceOperationAdd ## ENTITY, \
ENTITY);
#define SPACE_OPERATION_ADD_ENTITY(ENTITY)
Definition space.h:533

Definition at line 552 of file space.h.

◆ REGISTER_STANDARD_SPACE_OPERATION_REMOVE_ENTITY

#define REGISTER_STANDARD_SPACE_OPERATION_REMOVE_ENTITY ( ENTITY)
Value:
REGISTER_SPACE_OPERATION(CSpaceOperationRemoveEntity, \
CSpaceOperationRemove ## ENTITY, \
ENTITY);
#define SPACE_OPERATION_REMOVE_ENTITY(ENTITY)
Definition space.h:541

Definition at line 558 of file space.h.

◆ REGISTER_STANDARD_SPACE_OPERATIONS_ON_ENTITY

#define REGISTER_STANDARD_SPACE_OPERATIONS_ON_ENTITY ( ENTITY)
Value:
REGISTER_STANDARD_SPACE_OPERATION_REMOVE_ENTITY(ENTITY)
#define REGISTER_STANDARD_SPACE_OPERATION_ADD_ENTITY(ENTITY)
Definition space.h:552

Definition at line 564 of file space.h.

◆ SPACE_OPERATION_ADD_ENTITY

#define SPACE_OPERATION_ADD_ENTITY ( ENTITY)
Value:
class CSpaceOperationAdd ## ENTITY : public CSpaceOperationAddEntity { \
public: \
void ApplyTo(CSpace& c_space, ENTITY& c_entity) { \
c_space.AddEntity(c_entity); \
} \
};

Definition at line 533 of file space.h.

◆ SPACE_OPERATION_REMOVE_ENTITY

#define SPACE_OPERATION_REMOVE_ENTITY ( ENTITY)
Value:
class CSpaceOperationRemove ## ENTITY : public CSpaceOperationRemoveEntity { \
public: \
void ApplyTo(CSpace& c_space, ENTITY& c_entity) { \
c_space.RemoveEntity(c_entity); \
} \
};

Definition at line 541 of file space.h.