summaryrefslogtreecommitdiff
path: root/platform/node/src/node_logging.hpp
diff options
context:
space:
mode:
authorKonstantin Käfer <mail@kkaefer.com>2016-11-22 15:43:19 +0100
committerKonstantin Käfer <mail@kkaefer.com>2016-11-22 20:58:51 +0100
commite76de0540284118845c93c4351c82c6c8d5a090a (patch)
treedc295f87b74c5a4766444f6d1e7020e6219017a8 /platform/node/src/node_logging.hpp
parent117863f1114551407c481abc752f5fcfd139c878 (diff)
downloadqtlocation-mapboxgl-e76de0540284118845c93c4351c82c6c8d5a090a.tar.gz
[build] move logging to util
Diffstat (limited to 'platform/node/src/node_logging.hpp')
-rw-r--r--platform/node/src/node_logging.hpp32
1 files changed, 32 insertions, 0 deletions
diff --git a/platform/node/src/node_logging.hpp b/platform/node/src/node_logging.hpp
new file mode 100644
index 0000000000..a12603ba6e
--- /dev/null
+++ b/platform/node/src/node_logging.hpp
@@ -0,0 +1,32 @@
+#pragma once
+
+#include "util/async_queue.hpp"
+
+#include <mbgl/util/logging.hpp>
+
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wunused-parameter"
+#pragma GCC diagnostic ignored "-Wshadow"
+#include <nan.h>
+#pragma GCC diagnostic pop
+
+namespace node_mbgl {
+
+namespace util { template <typename T> class AsyncQueue; }
+
+class NodeLogObserver : public mbgl::Log::Observer {
+public:
+ NodeLogObserver(v8::Local<v8::Object> target);
+ ~NodeLogObserver();
+
+ // Log::Observer implementation
+ virtual bool onRecord(mbgl::EventSeverity severity, mbgl::Event event, int64_t code, const std::string &msg) override;
+
+private:
+ Nan::Persistent<v8::Object> module;
+
+ struct LogMessage;
+ util::AsyncQueue<LogMessage>* queue;
+};
+
+}