lokinet/llarp/util/logging/win32_logger.hpp

38 lines
796 B
C++
Raw Permalink Normal View History

#pragma once
2019-04-11 12:58:23 +00:00
#if defined(_WIN32)
#include "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
PreLog(
std::stringstream& s,
LogLevel lvl,
std::string_view filename,
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, std::string_view, const std::string& msg) override;
2019-08-15 08:11:18 +00:00
private:
std::ostream& m_Out;
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