// $Id$
//
-// Copyright (C) 2007
-// Fraunhofer Institut fuer offene Kommunikationssysteme (FOKUS)
-// Kompetenzzentrum fuer NETwork research (NET)
+// Copyright (C) 2007
+// Fraunhofer Institute for Open Communication Systems (FOKUS)
+// Competence Center NETwork research (NET), St. Augustin, GERMANY
// Stefan Bund <g0dil@berlios.de>
//
// This program is free software; you can redistribute it and/or modify
#define IH_Log_ 1
// Custom includes
+#include <sstream>
///////////////////////////////ih.p////////////////////////////////////////
#define SENF_LOG_BLOCK_(parameters, block) \
do { \
- if (parameters::compile_enabled && parameters::enabled()) { \
- std::ostream & log (parameters::log_stream()); \
+ typedef parameters SENFLogParameters; \
+ if (SENFLogParameters::compileEnabled && SENFLogParameters::enabled()) { \
+ std::stringstream log; \
do block while(0); \
- log << std::endl; \
+ senf::log::detail::write< SENFLogParameters::stream, \
+ SENFLogParameters::area, \
+ SENFLogParameters::level >(log.str()); \
+ } \
+ } while(0)
+
+#define SENF_LOG_BLOCK_TPL_(parameters, block) \
+ do { \
+ typedef parameters SENFLogParameters; \
+ if (SENFLogParameters::compileEnabled && SENFLogParameters::enabled()) { \
+ std::stringstream log; \
+ do block while(0); \
+ senf::log::detail::write<typename SENFLogParameters::stream, \
+ typename SENFLogParameters::area, \
+ typename SENFLogParameters::level>(log.str()); \
} \
} while(0)