diff common/logging.h @ 252:bd7fb50078b4

Add logging.h for some logging / debug functions The stuff from debug.h is now in logging.h
author Andre Heinecke <aheinecke@intevation.de>
date Tue, 01 Apr 2014 10:49:40 +0000
parents
children b033b16dd290
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/common/logging.h	Tue Apr 01 10:49:40 2014 +0000
@@ -0,0 +1,63 @@
+#ifndef COMMON_LOGGING_H
+#define COMMON_LOGGING_H
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/*
+ * @file
+ * @brief Logging and debugging functions
+ */
+
+#ifdef WIN32
+
+#include <windows.h>
+
+/** @brief Gets the localized error message for the last error
+ * returned by GetLastError
+ *
+ * @returns utf8 error message that needs to be freed by the caller.
+ **/
+
+char *getLastErrorMsg();
+
+#endif
+
+/**
+ * @def DEBUGOUTPUT
+ * @brief If defined code for extra debugging output will be generated.
+ *
+ * Will be defined if current build is not an RELEASE_BUILD.
+ */
+#ifndef RELEASE_BUILD
+#define DEBUGOUTPUT
+#endif
+
+/**
+ * @def DEBUGPREFIX
+ * @brief A string prepended to debug output.
+ *
+ * Should be defined to indicate which module created the output.
+ */
+#ifndef DEBUGPREFIX
+#define DEBUGPREFIX ""
+#endif
+
+/**
+ * @def DEBUGPRINTF(fmt, ...)
+ * @brief Debug printf
+ *
+ * Prints to stderr if DEBUGOUTPUT is defined.
+ */
+#ifdef DEBUGOUTPUT
+#define DEBUGPRINTF(fmt, ...) fprintf(stderr, DEBUGPREFIX "DEBUG: " fmt, ##__VA_ARGS__);
+#else
+#define DEBUGPRINTF(fmt, ...)
+#endif
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* COMMON_LOGGING_H */

http://wald.intevation.org/projects/trustbridge/