libcamera  v0.0.0
Supporting cameras in Linux since 2019
Protected Member Functions | List of all members
libcamera::Loggable Class Referenceabstract

Base class to support log message extensions. More...

Inheritance diagram for libcamera::Loggable:
libcamera::CameraSensor libcamera::IPAModule libcamera::MediaDevice libcamera::V4L2Device libcamera::V4L2Subdevice libcamera::V4L2VideoDevice

Protected Member Functions

virtual std::string logPrefix () const =0
 Retrieve a string to be prefixed to the log message. More...
 
LogMessage _log (const char *file, unsigned int line, LogSeverity severity) const
 Create a temporary LogMessage object to log a message. More...
 
LogMessage _log (const char *file, unsigned int line, const LogCategory &category, LogSeverity severity) const
 Create a temporary LogMessage object to log a message. More...
 

Detailed Description

Base class to support log message extensions.

The Loggable class allows classes to extend log messages without any change to the way the LOG() macro is invoked. By inheriting from Loggable and implementing the logPrefix() virtual method, a class can specify extra information to be automatically added to messages logged from class member methods.

Member Function Documentation

◆ _log() [1/2]

LogMessage libcamera::Loggable::_log ( const char *  fileName,
unsigned int  line,
const LogCategory category,
LogSeverity  severity 
) const
protected

Create a temporary LogMessage object to log a message.

Parameters
[in]fileNameThe file name where the message is logged from
[in]lineThe line number where the message is logged from
[in]categoryThe log message category
[in]severityThe log message severity

This method is used as a backeng by the LOG() macro to create a log message for locations inheriting from the Loggable class.

Returns
A log message

◆ _log() [2/2]

LogMessage libcamera::Loggable::_log ( const char *  fileName,
unsigned int  line,
LogSeverity  severity 
) const
protected

Create a temporary LogMessage object to log a message.

Parameters
[in]fileNameThe file name where the message is logged from
[in]lineThe line number where the message is logged from
[in]severityThe log message severity

This method is used as a backeng by the LOG() macro to create a log message for locations inheriting from the Loggable class.

Returns
A log message

◆ logPrefix()

libcamera::Loggable::logPrefix ( ) const
protectedpure virtual

Retrieve a string to be prefixed to the log message.

This method allows classes inheriting from the Loggable class to extend the logger with an object-specific prefix output right before the log message contents.

Returns
A string to be prefixed to the log message

Implemented in libcamera::V4L2VideoDevice, libcamera::V4L2Subdevice, libcamera::MediaDevice, libcamera::IPAModule, and libcamera::CameraSensor.


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