You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
lokinet/llarp/util/logging/win32_logger.hpp

38 lines
796 B
C++

#pragma once
#if defined(_WIN32)
#include "ostream_logger.hpp"
#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;
void
PostLog(std::stringstream& s) const override;
void Tick(llarp_time_t) override{};
void
Print(LogLevel lvl, std::string_view, const std::string& msg) override;
private:
std::ostream& m_Out;
bool isConsoleModern = true; // qol fix so oldfag clients don't see ugly escapes
HANDLE fd1 = GetStdHandle(STD_OUTPUT_HANDLE);
};
} // namespace llarp
#endif