dol: initial dol commit
[jump.git] / dol / src / dol / visitor / hdsd / scd / scd_logging.cpp
diff --git a/dol/src/dol/visitor/hdsd/scd/scd_logging.cpp b/dol/src/dol/visitor/hdsd/scd/scd_logging.cpp
new file mode 100644 (file)
index 0000000..5b3fc4c
--- /dev/null
@@ -0,0 +1,40 @@
+#include <iostream>
+#include <string>
+
+#include "scd_logging.h"
+
+static scd_loglevel _curr_level = SCD_INFO;
+
+void scd_log(const scd_loglevel &level, const string &str)
+{
+    std::ostream &out = std::clog;
+
+    if (_curr_level > level)
+        return;
+
+    switch(level)
+    {
+    case SCD_DEBUG:
+        out << "debug: ";
+        break;
+    case SCD_INFO:
+        out << "info: ";
+        break;
+    case SCD_WARN:
+        out << "warn: ";
+        break;
+    case SCD_ERROR:
+        out << "error: ";
+        break;
+    default:
+        out << "unknown: ";
+        break;
+    }
+
+    out << str << std::endl;
+}
+
+void scd_set_loglevel(const scd_loglevel &level)
+{
+    _curr_level = level;
+}