16#ifndef IOX2_BB_REPORTING_LOG_LOGSTREAM_HPP
17#define IOX2_BB_REPORTING_LOG_LOGSTREAM_HPP
38 template <
typename TT,
typename>
79 template <
typename TT,
typename>
111 template <
typename TT,
typename>
144 template <
typename T>
145 friend constexpr typename std::enable_if<!std::is_pointer<T>::value,
LogRaw>::type
raw(
const T&)
noexcept;
374 bool m_isFlushed {
false };
377 bool m_doFlush {
true };
384#include "iox2/legacy/detail/log/logstream.inl"
Helper struct to log in binary format.
LogBin(const LogBin &)=delete
LogBin & operator=(LogBin &&) noexcept=delete
friend constexpr LogBin< TT > bin(const TT) noexcept
LogBin & operator=(const LogBin &)=delete
Helper struct to log in hexadecimal format.
LogHex & operator=(const LogHex &)=delete
LogHex & operator=(LogHex &&) noexcept=delete
friend constexpr LogHex< const void *const > hex(const void *const) noexcept
Log a pointer in hexadecimal format.
LogHex(const LogHex &)=delete
friend constexpr LogHex< TT > hex(const TT) noexcept
Helper struct to log in octal format.
friend constexpr LogOct< TT > oct(const TT) noexcept
LogOct(const LogOct &)=delete
LogOct & operator=(const LogOct &)=delete
LogOct & operator=(LogOct &&) noexcept=delete
Helper struct to log in raw bytes.
friend constexpr std::enable_if<!std::is_pointer< T >::value, LogRaw >::type raw(const T &) noexcept
Log an object in raw bytes.
LogRaw & operator=(LogRaw &&) noexcept=delete
friend constexpr LogRaw raw(const void *const, const uint64_t) noexcept
Log data in raw bytes.
LogRaw & operator=(const LogRaw &)=delete
LogRaw(const LogRaw &)=delete
This class provides the public interface to the logger and is used with the 'IOX2_LOG' macro....
virtual ~LogStream() noexcept
LogStream(Logger &logger, const bb::detail::SourceLocation location, const LogLevel logLevel) noexcept
Constructor for a LogStream object with an externally provided logger.
LogStream(const bb::detail::SourceLocation location, const LogLevel logLevel) noexcept
Constructor for a LogStream object with the logger from iox2::legacy::log::Logger::get.
This class acts as common interface for the Logger. It provides the common functionality and inherits...
LogLevel
This enum defines the log levels used for logging.
constexpr std::enable_if<!std::is_pointer< T >::value, LogRaw >::type raw(const T &object) noexcept
Log an object in raw bytes.
constexpr LogOct< T > oct(const T value) noexcept
Log a number in octal format.
constexpr LogBin< T > bin(const T value) noexcept
Log a number in binary format.
constexpr bool always_false_v
Helper value to bind a static_assert to a type.
constexpr uint64_t size(const UninitializedArray< T, N, Buffer > &) noexcept
Returns N.
void log(LogLevel log_level, const char *origin, const char *message)
Adds a log message to the logger.
Verifies whether the passed Callable type is in fact invocable with the given arguments and the resul...