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)