libcamera::LogMessage Class Reference

Internal log message representation. More...

## Public Member Functions

| LogMessage (const char *fileName, unsigned int line, LogSeverity severity)
| Construct a log message for the default category. More...
| LogMessage (const char *fileName, unsigned int line, const LogCategory &category, LogSeverity severity)
| Construct a log message for a given category. More...
| LogMessage (const LogMessage &)=delete
| LogMessage (LogMessage &&)
| Move-construct a log message. More...
std::ostream & | stream ()
const utils::time_point & | timestamp () const
| Retrieve the timestamp of the log message. More...
LogSeverity | severity () const
| Retrieve the severity of the log message. More...
const LogCategory & | category () const
| Retrieve the category of the log message. More...
const std::string & | fileInfo () const
| Retrieve the file info of the log message. More...
const std::string | msg () const
| Retrieve the message text of the log message. More...

## Detailed Description

Internal log message representation.

The LogMessage class models a single message in the log. It serves as a helper to provide the std::ostream API for logging, and must never be used directly. Use the LOG() macro instead access the log infrastructure.

## Constructor & Destructor Documentation

## LogMessage() [1/3]

libcamera::LogMessage::LogMessage | ( | const char * | fileName,
|  | unsigned int | line,
|  | LogSeverity | severity
| ) |  |

Construct a log message for the default category.

Parameters

  [in] | fileName | The file name where the message is logged from
  [in] | line | The line number where the message is logged from
  [in] | severity | The log message severity, controlling how the message will be displayed

Create a log message pertaining to line line of file fileName. The severity argument sets the message severity to control whether it will be output or dropped.

## LogMessage() [2/3]

libcamera::LogMessage::LogMessage | ( | const char * | fileName,
|  | unsigned int | line,
|  | const LogCategory & | category,
|  | LogSeverity | severity
| ) |  |

Construct a log message for a given category.

Parameters

  [in] | fileName | The file name where the message is logged from
  [in] | line | The line number where the message is logged from
  [in] | category | The log message category, controlling how the message will be displayed
  [in] | severity | The log message severity, controlling how the message will be displayed

Create a log message pertaining to line line of file fileName. The severity argument sets the message severity to control whether it will be output or dropped.

## LogMessage() [3/3]

libcamera::LogMessage::LogMessage | ( | LogMessage && | other | ) |

Move-construct a log message.

Parameters

  [in] | other | The other message

The move constructor is meant to support the _log() functions. Thanks to copy elision it will likely never be called, but C++11 only permits copy elision, it doesn't enforce it unlike C++17. To avoid potential link errors depending on the compiler type and version, and optimization level, the move constructor is defined even if it will likely never be called, and ensures that the destructor of the other message will not output anything to the log by setting the severity to LogInvalid.

## Member Function Documentation

## category()

libcamera::LogMessage::category | ( |  | ) | const

inline

Retrieve the category of the log message.

Returns
  The category of the message

## fileInfo()

libcamera::LogMessage::fileInfo | ( |  | ) | const

inline

Retrieve the file info of the log message.

Returns
  The file info of the message

## msg()

libcamera::LogMessage::msg | ( |  | ) | const

inline

Retrieve the message text of the log message.

Returns
  The message text of the message, as a string

## severity()

libcamera::LogMessage::severity | ( |  | ) | const

inline

Retrieve the severity of the log message.

Returns
  The severity of the message

## stream()

std::ostream & libcamera::LogMessage::stream | ( |  | ) |

inline

Data is added to a LogMessage through the stream returned by this function. The stream implements the std::ostream API and can be used for logging as std::cout.

Returns
  A reference to the log message stream

## timestamp()

libcamera::LogMessage::timestamp | ( |  | ) | const

inline

Retrieve the timestamp of the log message.

Returns
  The timestamp of the message

The documentation for this class was generated from the following files:

- include/libcamera/internal/log.h
- src/libcamera/log.cpp