grid_impl.h File Reference

Go to the source code of this file.

Namespaces

 argos
 The namespace containing all the ARGoS related code.
 

Macros

#define APPLY_ENTITY_OPERATION_TO_CELL(nI, nJ, nK)
 
#define APPLY_ENTITY_OPERATION_TO_CELL_ALONG_RAY(nI, nJ, nK)
 
#define APPLY_CELL_OPERATION_TO_CELL(nI, nJ, nK)
 

Macro Definition Documentation

#define APPLY_CELL_OPERATION_TO_CELL (   nI,
  nJ,
  nK 
)
Value:
{ \
SCell& sCell = GetCellAt((nI), (nJ), (nK)); \
if(!c_operation((nI), (nJ), (nK), sCell)) return; \
}

Definition at line 38 of file grid_impl.h.

#define APPLY_ENTITY_OPERATION_TO_CELL (   nI,
  nJ,
  nK 
)
Value:
{ \
SCell& sCell = GetCellAt((nI), (nJ), (nK)); \
if((sCell.Timestamp == m_unCurTimestamp) && \
(! sCell.Entities.empty())) { \
for(typename CSet<ENTITY*,SEntityComparator>::iterator it = sCell.Entities.begin(); \
it != sCell.Entities.end(); \
++it) { \
if(!c_operation(**it)) return; \
} \
} \
}

Definition at line 11 of file grid_impl.h.

#define APPLY_ENTITY_OPERATION_TO_CELL_ALONG_RAY (   nI,
  nJ,
  nK 
)
Value:
{ \
SCell& sCell = GetCellAt(nI, nJ, nK); \
if((sCell.Timestamp == m_unCurTimestamp) && \
(! sCell.Entities.empty())) { \
for(typename CSet<ENTITY*,SEntityComparator>::iterator it = sCell.Entities.begin(); \
it != sCell.Entities.end(); \
++it) { \
if(!c_operation(**it)) return; \
} \
if(b_stop_at_closest_match) return; \
} \
}

Definition at line 24 of file grid_impl.h.