Defines
base/LoopMacros.hpp File Reference

Header of ... More...

Go to the source code of this file.

Defines

#define _UNITID(_id)   _M_##_id##_Unit
#define _UNITSLISTID(_id)   _M_##_id##_UList
#define _UNITSPTRLISTID(_id)   _M_##_id##_UList
#define _PCSORDID(_id)   _M_##_id##_PcsOrd
#define _UNITSLISTITERID(_id)   _M_##_id##_UListit
#define _UNITSPTRLISTITERID(_id)   _M_##_id##_UPtrListit
#define _EVENTSLISTITERID(_id)   _M_##_id##_EListit
#define _OPENFLUID_UNITS_ORDERED_LOOP_WITHID(unitclass, unitptr, id)
#define OPENFLUID_UNITS_ORDERED_LOOP(unitclass, unitptr)   _OPENFLUID_UNITS_ORDERED_LOOP_WITHID(unitclass,unitptr,__LINE__)
#define _OPENFLUID_ALLUNITS_ORDERED_LOOP_WITHID(unitptr, id)
#define OPENFLUID_ALLUNITS_ORDERED_LOOP(unitptr)   _OPENFLUID_ALLUNITS_ORDERED_LOOP_WITHID(unitptr,__LINE__)
#define _OPENFLUID_UNITSLIST_LOOP_WITHID(unitslist, unitptr, id)
#define OPENFLUID_UNITSLIST_LOOP(unitslist, unitptr)   _OPENFLUID_UNITSLIST_LOOP_WITHID(unitslist,unitptr,__LINE__)
#define _OPENFLUID_EVENT_COLLECTION_LOOP_WITHID(id, evlist, evobj)
#define OPENFLUID_EVENT_COLLECTION_LOOP(evlist, evobj)   _OPENFLUID_EVENT_COLLECTION_LOOP_WITHID(__LINE__,evlist,evobj)

Detailed Description

Header of ...

Author:
Jean-Christophe FABRE <fabrejc@supagro.inra.fr>

Define Documentation

#define _EVENTSLISTITERID (   _id)    _M_##_id##_EListit
#define _OPENFLUID_ALLUNITS_ORDERED_LOOP_WITHID (   unitptr,
  id 
)
Value:
openfluid::core::UnitsPtrList_t* _UNITSPTRLISTID(id) = mp_CoreData->getUnitsGlobally(); \
    for (openfluid::core::UnitsPtrList_t::iterator _UNITSPTRLISTITERID(id) = _UNITSPTRLISTID(id)->begin(); \
         unitptr = (*_UNITSPTRLISTITERID(id)),_UNITSPTRLISTITERID(id) != _UNITSPTRLISTID(id)->end(); \
         ++_UNITSPTRLISTITERID(id))
#define _OPENFLUID_EVENT_COLLECTION_LOOP_WITHID (   id,
  evlist,
  evobj 
)
Value:
for(openfluid::core::EventsList_t::iterator _EVENTSLISTITERID(id) = (evlist)->begin(); \
        evobj = &(*_EVENTSLISTITERID(id)), _EVENTSLISTITERID(id) != (evlist)->end(); \
       ++_EVENTSLISTITERID(id))
#define _OPENFLUID_UNITS_ORDERED_LOOP_WITHID (   unitclass,
  unitptr,
  id 
)
Value:
openfluid::core::UnitsList_t* _UNITSLISTID(id) = mp_CoreData->getUnits(unitclass)->getList(); \
    if (_UNITSLISTID(id) != NULL && !(_UNITSLISTID(id)->empty())) \
      for (openfluid::core::UnitsList_t::iterator _UNITSLISTITERID(id) = _UNITSLISTID(id)->begin(); \
           unitptr = &(*_UNITSLISTITERID(id)),_UNITSLISTITERID(id) != _UNITSLISTID(id)->end(); \
           ++_UNITSLISTITERID(id))
#define _OPENFLUID_UNITSLIST_LOOP_WITHID (   unitslist,
  unitptr,
  id 
)
Value:
if (unitslist != NULL) \
      for (openfluid::core::UnitsPtrList_t::iterator _UNITSLISTITERID(id) = unitslist->begin(); \
           unitptr = *_UNITSLISTITERID(id),_UNITSLISTITERID(id) != unitslist->end(); \
           ++_UNITSLISTITERID(id))
#define _PCSORDID (   _id)    _M_##_id##_PcsOrd
#define _UNITID (   _id)    _M_##_id##_Unit
#define _UNITSLISTID (   _id)    _M_##_id##_UList
#define _UNITSLISTITERID (   _id)    _M_##_id##_UListit
#define _UNITSPTRLISTID (   _id)    _M_##_id##_UList
#define _UNITSPTRLISTITERID (   _id)    _M_##_id##_UPtrListit
#define OPENFLUID_ALLUNITS_ORDERED_LOOP (   unitptr)    _OPENFLUID_ALLUNITS_ORDERED_LOOP_WITHID(unitptr,__LINE__)

Macro for a loop processing all units, following their process order

Parameters:
[out]unitptrpointer to a openfluid::core::Unit objects, automatically pointing to the current processed unit
#define OPENFLUID_EVENT_COLLECTION_LOOP (   evlist,
  evobj 
)    _OPENFLUID_EVENT_COLLECTION_LOOP_WITHID(__LINE__,evlist,evobj)

Macro for a loop processing an events list from an event collection

Parameters:
[in]evlistpointer to a list of events
[out]evobjthe current processed event
#define OPENFLUID_UNITS_ORDERED_LOOP (   unitclass,
  unitptr 
)    _OPENFLUID_UNITS_ORDERED_LOOP_WITHID(unitclass,unitptr,__LINE__)

Macro for a loop processing all units of a class, following their process order

Parameters:
[in]unitclassname of the unit class
[out]unitptrpointer to a openfluid::core::Unit objects, automatically pointing to the current processed unit
#define OPENFLUID_UNITSLIST_LOOP (   unitslist,
  unitptr 
)    _OPENFLUID_UNITSLIST_LOOP_WITHID(unitslist,unitptr,__LINE__)

Macro for a loop processing a list of units

Parameters:
[in]unitslistpointer to a list of openfluid::core::Unit
[out]unitptrpointer to a openfluid::core::Unit objects, pointing to the current processed unit
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines