lokinet/llarp/util/logging/win32_logger.hpp
Jeff Becker 5c457ff486
refactor logging to use std::source_location
* use std::source_location instead of godawful macros in logging
* remove unused/absolutely haram af json logstream
* fix bug in android logger where it doesn't respect eLogNone
2021-10-06 11:10:48 -04:00

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