summaryrefslogtreecommitdiff
path: root/matching/include/spdlog/sinks/base_sink.h
diff options
context:
space:
mode:
Diffstat (limited to 'matching/include/spdlog/sinks/base_sink.h')
-rw-r--r--matching/include/spdlog/sinks/base_sink.h69
1 files changed, 0 insertions, 69 deletions
diff --git a/matching/include/spdlog/sinks/base_sink.h b/matching/include/spdlog/sinks/base_sink.h
deleted file mode 100644
index 2259518..0000000
--- a/matching/include/spdlog/sinks/base_sink.h
+++ /dev/null
@@ -1,69 +0,0 @@
-//
-// Copyright(c) 2015 Gabi Melman.
-// Distributed under the MIT License (http://opensource.org/licenses/MIT)
-//
-
-#pragma once
-//
-// base sink templated over a mutex (either dummy or real)
-// concrete implementation should override the sink_it_() and flush_() methods.
-// locking is taken care of in this class - no locking needed by the
-// implementers..
-//
-
-#include "spdlog/common.h"
-#include "spdlog/details/log_msg.h"
-#include "spdlog/formatter.h"
-#include "spdlog/sinks/sink.h"
-
-namespace spdlog {
-namespace sinks {
-template<typename Mutex>
-class base_sink : public sink
-{
-public:
- base_sink() = default;
- base_sink(const base_sink &) = delete;
- base_sink &operator=(const base_sink &) = delete;
-
- void log(const details::log_msg &msg) final
- {
- std::lock_guard<Mutex> lock(mutex_);
- sink_it_(msg);
- }
-
- void flush() final
- {
- std::lock_guard<Mutex> lock(mutex_);
- flush_();
- }
-
- void set_pattern(const std::string &pattern) final
- {
- std::lock_guard<Mutex> lock(mutex_);
- set_pattern_(pattern);
- }
-
- void set_formatter(std::unique_ptr<spdlog::formatter> sink_formatter) final
- {
- std::lock_guard<Mutex> lock(mutex_);
- set_formatter_(std::move(sink_formatter));
- }
-
-protected:
- virtual void sink_it_(const details::log_msg &msg) = 0;
- virtual void flush_() = 0;
-
- virtual void set_pattern_(const std::string &pattern)
- {
- set_formatter_(details::make_unique<spdlog::pattern_formatter>(pattern));
- }
-
- virtual void set_formatter_(std::unique_ptr<spdlog::formatter> sink_formatter)
- {
- formatter_ = std::move(sink_formatter);
- }
- Mutex mutex_;
-};
-} // namespace sinks
-} // namespace spdlog