]> AND Private Git Repository - loba.git/blobdiff - misc.h
Logo AND Algorithmique Numérique Distribuée

Private GIT Repository
Do not import full std::tr1 namespace.
[loba.git] / misc.h
diff --git a/misc.h b/misc.h
index aee128e157aed15d7610f9b2dc9fd7be7fa26bfd..974f66608ebf3dbea68a531547011a360bd2e304 100644 (file)
--- a/misc.h
+++ b/misc.h
@@ -1,6 +1,7 @@
 #ifndef MISC_H
 #define MISC_H
 
 #ifndef MISC_H
 #define MISC_H
 
+#include <functional>
 #include <xbt/log.h>
 
 /* Returns true if the given priority is enabled for the default
 #include <xbt/log.h>
 
 /* Returns true if the given priority is enabled for the default
 #define LOG_ISENABLED(priority) \
     (_XBT_LOG_ISENABLEDV((*_XBT_LOGV(default)), (priority)))
 
 #define LOG_ISENABLED(priority) \
     (_XBT_LOG_ISENABLEDV((*_XBT_LOGV(default)), (priority)))
 
+/* Defines XCLOGn(...) which behave like CLOGn(...), except that the
+ * given category is not passed through _XBT_LOGV before use.
+ * (auto-generated, like its name says...)
+ */
+#include "misc_autogen.h"
+
 /* Returns c-string "s" if n > 1, empty string "" otherwise. */
 #define ESSE(n) ((n) > 1 ? misc::str_esse : misc::str_nil)
 namespace misc {
 /* Returns c-string "s" if n > 1, empty string "" otherwise. */
 #define ESSE(n) ((n) > 1 ? misc::str_esse : misc::str_nil)
 namespace misc {
+
     extern const char str_esse[];
     extern const char str_nil[];
     extern const char str_esse[];
     extern const char str_nil[];
+
+    template <typename T>
+    struct address: public std::unary_function<T&, T*> {
+        T* operator()(T& ref) { return &ref; }
+    };
+
 }
 
 #endif // !MISC_H
 }
 
 #endif // !MISC_H