lokinet/llarp/util/logging/win32_logger.hpp

37 lines
840 B
C++
Raw Normal View History

2019-04-11 12:58:23 +00:00
#ifndef LLARP_UTIL_WIN32_LOGGER_HPP
#define LLARP_UTIL_WIN32_LOGGER_HPP
#if defined(_WIN32)
2019-09-01 12:10:49 +00:00
#include <util/logging/ostream_logger.hpp>
2019-04-11 12:58:23 +00:00
#define VC_EXTRALEAN
#include <windows.h>
namespace llarp
{
struct Win32LogStream : public OStreamLogStream
{
Win32LogStream(std::ostream& out);
void
2019-06-18 04:28:44 +00:00
PreLog(std::stringstream& s, LogLevel lvl, const char* fname, int lineno,
const std::string& nodename) const override;
2019-04-11 12:58:23 +00:00
void
PostLog(std::stringstream& s) const override;
void Tick(llarp_time_t) override{};
2019-08-15 08:41:04 +00:00
2019-08-15 08:11:18 +00:00
void
Print(LogLevel lvl, const char*, const std::string& msg) override;
private:
std::ostream& m_Out;
2019-04-11 12:58:23 +00:00
bool isConsoleModern =
true; // qol fix so oldfag clients don't see ugly escapes
2019-08-15 08:11:18 +00:00
2019-04-11 12:58:23 +00:00
HANDLE fd1 = GetStdHandle(STD_OUTPUT_HANDLE);
};
} // namespace llarp
#endif
#endif