mirror of
https://gitee.com/mirrors_PX4/PX4-Autopilot.git
synced 2026-07-08 04:10:36 +08:00
Logger: Independent logging level for ILogSink
This commit is contained in:
@@ -2,6 +2,7 @@
|
||||
* Copyright (C) 2014 Pavel Kirienko <pavel.kirienko@gmail.com>
|
||||
*/
|
||||
|
||||
#include <cstdlib>
|
||||
#include <uavcan/protocol/logger.hpp>
|
||||
|
||||
namespace uavcan
|
||||
@@ -9,18 +10,23 @@ namespace uavcan
|
||||
|
||||
const Logger::LogLevel Logger::LevelAboveAll;
|
||||
|
||||
Logger::LogLevel Logger::getExternalSinkLevel() const
|
||||
{
|
||||
return (external_sink_ == NULL) ? LevelAboveAll : external_sink_->getLogLevel();
|
||||
}
|
||||
|
||||
int Logger::log(const protocol::debug::LogMessage& message)
|
||||
{
|
||||
int retval = 0;
|
||||
if (message.level.value >= getExternalSinkLevel())
|
||||
{
|
||||
external_sink_->log(message);
|
||||
}
|
||||
if (message.level.value >= level_)
|
||||
{
|
||||
const int res = logmsg_pub_.broadcast(message);
|
||||
if (external_sink_)
|
||||
{
|
||||
external_sink_->log(message);
|
||||
}
|
||||
return res;
|
||||
retval = logmsg_pub_.broadcast(message);
|
||||
}
|
||||
return 0;
|
||||
return retval;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user