Go to the documentation of this file.
40 #ifndef __OPENFLUID_DEBUG_HPP__
41 #define __OPENFLUID_DEBUG_HPP__
50 #include <openfluid/config.hpp>
52 #define OFDBG_ENABLED 1
53 #define OFDBG_OUTSTREAM std::cout
57 #define OFDBG_ENABLED 0
58 #define OFDBG_OUTSTREAM
69 #define OFDBG_LOCATE \
71 OFDBG_OUTSTREAM << openfluid::config::DEBUG_PREFIX << " File " << __FILE__ << ", Line " << __LINE__ << std::endl;\
76 #define OFDBG_LOCATE ;
87 #define OFDBG_BANNER \
89 OFDBG_OUTSTREAM << openfluid::config::DEBUG_PREFIX << std::endl; \
90 OFDBG_OUTSTREAM << openfluid::config::DEBUG_PREFIX << " OpenFLUID debugging mode is enabled" << std::endl; \
91 OFDBG_OUTSTREAM << openfluid::config::DEBUG_PREFIX << std::endl; \
107 #define OFDBG_MESSAGE(stream) \
108 { OFDBG_OUTSTREAM << openfluid::config::DEBUG_PREFIX << " " << stream << std::endl; }
112 #define OFDBG_MESSAGE(stream)
123 #define OFDBG_UNIT(unitptr) \
125 OFDBG_OUTSTREAM << openfluid::config::DEBUG_PREFIX << " Unit class " << (unitptr)->getClass()\
126 << ", ID " << (unitptr)->getID() << std::endl;\
131 #define OFDBG_UNIT(unitptr)
142 #define OFDBG_UNIT_EXTENDED(unitptr) \
144 OFDBG_OUTSTREAM << openfluid::config::DEBUG_PREFIX << " Unit class " << (unitptr)->getClass()\
145 << ", ID " << (unitptr)->getID() << std::endl; \
146 std::vector<openfluid::core::AttributeName_t> _M_DBG_AttrsNames = (unitptr)->attributes()->getAttributesNames(); \
147 OFDBG_OUTSTREAM << openfluid::config::DEBUG_PREFIX << " - Attributes: "; \
148 for (unsigned int i=0; i<_M_DBG_AttrsNames.size();i++) OFDBG_OUTSTREAM << _M_DBG_AttrsNames[i] << " , "; \
149 OFDBG_OUTSTREAM << std::endl; \
150 std::vector<openfluid::core::VariableName_t> _M_DBG_VarNames = (unitptr)->variables()->getVariablesNames(); \
151 OFDBG_OUTSTREAM << openfluid::config::DEBUG_PREFIX << " - Variables: "; \
152 for (unsigned int i=0; i<_M_DBG_VarNames.size();i++) OFDBG_OUTSTREAM << _M_DBG_VarNames[i] << " , "; \
153 OFDBG_OUTSTREAM << std::endl; \
158 #define OFDBG_UNIT_EXTENDED(unitptr)
169 #define OFDBG_EVENT(eventptr) \
171 OFDBG_OUTSTREAM << openfluid::config::DEBUG_PREFIX\
172 << " Event at " << (eventptr)->getDateTime().getAsISOString() << std::endl; \
173 openfluid::core::Event::EventInfosMap_t::iterator _M_DBG_EvInfoiter; \
174 for (_M_DBG_EvInfoiter = (eventptr)->getInfos().begin();\
175 _M_DBG_EvInfoiter != (eventptr)->getInfos().end();++_M_DBG_EvInfoiter) \
177 OFDBG_OUTSTREAM << openfluid::config::DEBUG_PREFIX << " - "\
178 << (*_M_DBG_EvInfoiter).first << " = " << (*_M_DBG_EvInfoiter).second.get() << std::endl; \
184 #define OFDBG_EVENT(eventptr)
195 #define OFDBG_EVENTCOLLECTION(eventcoll) \
197 OFDBG_OUTSTREAM << openfluid::config::DEBUG_PREFIX << " Event collection size : "\
198 << eventcoll.eventsList()->size() << std::endl; \
199 openfluid::core::EventsList_t::iterator _M_DBG_EvListiter; \
200 for (_M_DBG_EvListiter=(EvColl.eventsList())->begin();\
201 _M_DBG_EvListiter != (EvColl.eventsList())->end(); ++_M_DBG_EvListiter) \
203 OFDBG_EVENT(&(*_M_DBG_EvListiter)); \
209 #define OFDBG_EVENTCOLLECTION(eventcoll)