40 #ifndef __OPENFLUID_WARE_LOOPMACROS_HPP__ 41 #define __OPENFLUID_WARE_LOOPMACROS_HPP__ 48 #define _UNITID(_id) _M_##_id##_Unit 50 #define _UNITSLISTID(_id) _M_##_id##_UList 52 #define _UNITSPTRLISTID(_id) _M_##_id##_UList 54 #define _PCSORDID(_id) _M_##_id##_PcsOrd 56 #define _UNITSLISTITERID(_id) _M_##_id##_UListit 58 #define _UNITSPTRLISTITERID(_id) _M_##_id##_UPtrListit 60 #define _EVENTSLISTITERID(_id) _M_##_id##_EListit 64 #define _OPENFLUID_UNITS_ORDERED_LOOP_WITHID(unitsclass,unitptr,id) \ 65 openfluid::core::UnitsList_t* _UNITSLISTID(id) = mp_SpatialData->spatialUnits(unitsclass)->list(); \ 66 if (_UNITSLISTID(id) != nullptr && !(_UNITSLISTID(id)->empty())) \ 67 for (openfluid::core::UnitsList_t::iterator _UNITSLISTITERID(id) = _UNITSLISTID(id)->begin(); \ 68 unitptr = &(*_UNITSLISTITERID(id)),_UNITSLISTITERID(id) != _UNITSLISTID(id)->end(); \ 69 ++_UNITSLISTITERID(id)) 77 #define OPENFLUID_UNITS_ORDERED_LOOP(unitsclass,unitptr) \ 78 _OPENFLUID_UNITS_ORDERED_LOOP_WITHID(unitsclass,unitptr,__LINE__) 83 #define _OPENFLUID_ALLUNITS_ORDERED_LOOP_WITHID(unitptr,id) \ 84 openfluid::core::UnitsPtrList_t* _UNITSPTRLISTID(id) = mp_SpatialData->allSpatialUnits(); \ 85 for (openfluid::core::UnitsPtrList_t::iterator _UNITSPTRLISTITERID(id) = _UNITSPTRLISTID(id)->begin(); \ 86 unitptr = (*_UNITSPTRLISTITERID(id)),_UNITSPTRLISTITERID(id) != _UNITSPTRLISTID(id)->end(); \ 87 ++_UNITSPTRLISTITERID(id)) 94 #define OPENFLUID_ALLUNITS_ORDERED_LOOP(unitptr) \ 95 _OPENFLUID_ALLUNITS_ORDERED_LOOP_WITHID(unitptr,__LINE__) 99 #define _OPENFLUID_UNITSLIST_LOOP_WITHID(unitslist,unitptr,id) \ 100 if (unitslist != nullptr) \ 101 for (openfluid::core::UnitsPtrList_t::iterator _UNITSLISTITERID(id) = unitslist->begin(); \ 102 unitptr = *_UNITSLISTITERID(id),_UNITSLISTITERID(id) != unitslist->end(); \ 103 ++_UNITSLISTITERID(id)) 115 #define _OPENFLUID_EVENT_COLLECTION_LOOP_WITHID(id,evlist,evobj) \ 116 for(openfluid::core::EventsList_t::iterator _EVENTSLISTITERID(id) = (evlist)->begin(); \ 117 evobj = &(*_EVENTSLISTITERID(id)), _EVENTSLISTITERID(id) != (evlist)->end(); \ 118 ++_EVENTSLISTITERID(id)) 125 #define OPENFLUID_EVENT_COLLECTION_LOOP(evlist,evobj) \ 126 _OPENFLUID_EVENT_COLLECTION_LOOP_WITHID(__LINE__,evlist,evobj) #define _OPENFLUID_UNITSLIST_LOOP_WITHID(unitslist, unitptr, id)
Definition: LoopMacros.hpp:99
#define OPENFLUID_UNITSLIST_LOOP(unitslist, unitptr)
Definition: LoopMacros.hpp:110