| 123456789101112131415161718192021222324252627282930313233343536373839404142 |
- //
- // default_logger_binding.hpp
- // logger
- //
- // Created by Sam Jaffe on 10/3/15.
- //
- //
- #pragma once
- #include "logger.hpp"
- #include <vector>
- namespace logging {
- struct properties;
- class appender;
-
- class default_logger_impl : public logger_impl {
- public:
- static bool register_impl(std::string const&,std::unique_ptr<logger_impl>(*)(logging::properties const&));
- static logger_impl& instance();
-
- typedef std::vector<appender> datatype;
- typedef datatype::iterator iterator;
-
- void write(log_level level, std::string const& msg) override;
- void flush() override;
- private:
- datatype streams_;
- };
-
- class appender : public logger_impl {
- public:
- appender(logger_impl*);
- void write(log_level level, std::string const& msg) override;
- void flush() override;
- private:
- logger_impl* target_;
- };
- }
|