Skip to content
Extraits de code Groupes Projets

Theme system

Fusionnées Kubat a demandé de fusionner theme vers log-macros
1 file
+ 50
33
Comparer les modifications
  • Côte à côte
  • En ligne
+ 50
33
#include "Log.hh"
using namespace Vivy;
// Vivy::LogSinkDispatcher and child classes implementation
namespace Vivy
{
LogSinkDispatcher::~LogSinkDispatcher() noexcept {}
LogSink::~LogSink() noexcept {}
Logger::~Logger() noexcept { parentLogSink->closeLoggerClients(); }
LogMessage::~LogMessage() noexcept { parentLogger->sendLogMessage(*this); }
const std::string_view
LogSinkDispatcher::getDispatcherName() const noexcept
{
return dispatcherName;
}
const chrono::milliseconds
LogMessage::getTimeStamp() const noexcept
{
return timeStamp;
}
LogMessage::Header const &
LogMessage::getHeader() const noexcept
// Vivy::LogSink implementation
namespace Vivy
{
return messageHeader;
}
const std::string_view
LogMessage::getTextBuffer() const noexcept
{
const char *txt = textBuffer.data();
return std::string_view{ txt, strlen(txt) };
}
void
Logger::sendLogMessage(const LogMessage &msg) const noexcept
{
parentLogSink->recieveLogMessage(this, msg);
}
const std::string_view
Logger::getCategoryView() const noexcept
{
return std::string_view{ logCategory };
}
LogSink::~LogSink() noexcept {}
// Get the log message from the logger and add it to the sink's queue.
void
@@ -113,6 +86,22 @@ LogSink::getLogDispatcher(const std::string_view name) const
return ptr->getDispatcherName() == name;
});
}
}
// Vivy::Logger implementation
namespace Vivy
{
void
Logger::sendLogMessage(const LogMessage &msg) const noexcept
{
parentLogSink->recieveLogMessage(this, msg);
}
const std::string_view
Logger::getCategoryView() const noexcept
{
return std::string_view{ logCategory };
}
LogMessage
Logger::logEvent(const char *fileName, const char *functionName, const int lineNumber,
@@ -124,6 +113,12 @@ Logger::logEvent(const char *fileName, const char *functionName, const int lineN
.lineNumberInFile = lineNumber });
}
Logger::~Logger() noexcept { parentLogSink->closeLoggerClients(); }
}
// Vivy::LogMessage implementation
namespace Vivy
{
LogMessage::LogMessage(Logger *const logger, const LogMessage::Header hdr) noexcept
: messageHeader(hdr)
, parentLogger(logger)
@@ -165,3 +160,25 @@ LogMessage::operator<<(const char *str) noexcept
textBuffer[indexInArray] = '\0';
return *this;
}
const chrono::milliseconds
LogMessage::getTimeStamp() const noexcept
{
return timeStamp;
}
LogMessage::Header const &
LogMessage::getHeader() const noexcept
{
return messageHeader;
}
const std::string_view
LogMessage::getTextBuffer() const noexcept
{
const char *txt = textBuffer.data();
return std::string_view{ txt, strlen(txt) };
}
LogMessage::~LogMessage() noexcept { parentLogger->sendLogMessage(*this); }
}
Chargement en cours