backend: move logger to backend

This commit is contained in:
Vaxry 2025-12-02 22:20:45 +00:00
parent 561ae7fbe1
commit a43bedccec
Signed by: vaxry
GPG key ID: 665806380871D640
3 changed files with 8 additions and 6 deletions

View file

@ -13,6 +13,7 @@
#include "Session.hpp" #include "Session.hpp"
namespace Aquamarine { namespace Aquamarine {
class CLogger;
class IOutput; class IOutput;
class IPointer; class IPointer;
class IKeyboard; class IKeyboard;
@ -165,6 +166,7 @@ namespace Aquamarine {
SBackendOptions options; SBackendOptions options;
Hyprutils::Memory::CWeakPointer<CBackend> self; Hyprutils::Memory::CWeakPointer<CBackend> self;
std::vector<Hyprutils::Memory::CSharedPointer<SPollFD>> sessionFDs; std::vector<Hyprutils::Memory::CSharedPointer<SPollFD>> sessionFDs;
Hyprutils::Memory::CSharedPointer<CLogger> logger;
struct { struct {
int fd = -1; int fd = -1;

View file

@ -59,12 +59,13 @@ Hyprutils::Memory::CSharedPointer<CBackend> Aquamarine::CBackend::create(const s
auto backend = SP<CBackend>(new CBackend()); auto backend = SP<CBackend>(new CBackend());
backend->options = options; backend->options = options;
backend->logger = Hyprutils::Memory::makeShared<CLogger>();
backend->implementationOptions = backends; backend->implementationOptions = backends;
backend->self = backend; backend->self = backend;
g_logger->m_loggerConnection = options.logConnection; backend->logger->m_loggerConnection = options.logConnection;
g_logger->m_logFn = options.logFunction; backend->logger->m_logFn = options.logFunction;
g_logger->updateLevels(); backend->logger->updateLevels();
if (backends.size() <= 0) if (backends.size() <= 0)
return nullptr; return nullptr;
@ -183,7 +184,8 @@ bool Aquamarine::CBackend::start() {
} }
void Aquamarine::CBackend::log(eBackendLogLevel level, const std::string& msg) { void Aquamarine::CBackend::log(eBackendLogLevel level, const std::string& msg) {
g_logger->log(level, msg); if (logger)
logger->log(level, msg);
} }
std::vector<Hyprutils::Memory::CSharedPointer<SPollFD>> Aquamarine::CBackend::getPollFDs() { std::vector<Hyprutils::Memory::CSharedPointer<SPollFD>> Aquamarine::CBackend::getPollFDs() {

View file

@ -34,6 +34,4 @@ namespace Aquamarine {
std::function<void(eBackendLogLevel, std::string)> m_logFn; std::function<void(eBackendLogLevel, std::string)> m_logFn;
Hyprutils::Memory::CSharedPointer<Hyprutils::CLI::CLoggerConnection> m_loggerConnection; Hyprutils::Memory::CSharedPointer<Hyprutils::CLI::CLoggerConnection> m_loggerConnection;
}; };
inline Hyprutils::Memory::CSharedPointer<CLogger> g_logger = Hyprutils::Memory::makeShared<CLogger>();
}; };