#ifndef LOGGER_HPP #define LOGGER_HPP #include #include // move #include "Singleton_DCLP.hpp" class Logger : public Singleton_DCLP { public: void setStream(std::ostream* os) { m_os = os; } std::ostream* getStream() { return m_os; } private: // ostreams are not copyable, hence storing a pointer only std::ostream* m_os; }; #define LOG *Logger::getInstance()->getStream() #endif // LOGGER_HPP