TSDuck v3.38-3699
MPEG Transport Stream Toolkit
|
Base class for event reporting and monitoring. More...
#include <tsReport.h>
Public Member Functions | |
Report ()=default | |
Default constructor. | |
Report (int max_severity, const UString &prefix=UString(), Report *report=nullptr) | |
Constructor with initial report level, prefix and delegation. | |
virtual | ~Report () |
Destructor. | |
bool | debug () const |
Check if debugging is active. | |
template<class... Args> | |
void | debug (const UChar *fmt, Args &&... args) |
Report a debug message with a printf-like interface. | |
void | debug (const UChar *msg) |
Report a debug message. | |
template<class... Args> | |
void | debug (const UString &fmt, Args &&... args) |
Report a debug message with a printf-like interface. | |
void | debug (const UString &msg) |
Report a debug message. | |
Report * | delegateReport (Report *report) |
Delegate message logging to another report object. | |
template<class... Args> | |
void | error (const UChar *fmt, Args &&... args) |
Report an error message with a printf-like interface. | |
void | error (const UChar *msg) |
Report an error message. | |
template<class... Args> | |
void | error (const UString &fmt, Args &&... args) |
Report an error message with a printf-like interface. | |
void | error (const UString &msg) |
Report an error message. | |
template<class... Args> | |
void | fatal (const UChar *fmt, Args &&... args) |
Report a fatal error message with a printf-like interface. | |
void | fatal (const UChar *msg) |
Report a fatal error message. | |
template<class... Args> | |
void | fatal (const UString &fmt, Args &&... args) |
Report a fatal error message with a printf-like interface. | |
void | fatal (const UString &msg) |
Report a fatal error message. | |
bool | gotErrors () const |
Check if errors (or worse) were reported through this object. | |
template<class... Args> | |
void | info (const UChar *fmt, Args &&... args) |
Report an informational message with a printf-like interface. | |
void | info (const UChar *msg) |
Report an informational message. | |
template<class... Args> | |
void | info (const UString &fmt, Args &&... args) |
Report an informational message with a printf-like interface. | |
void | info (const UString &msg) |
Report an informational message. | |
template<class... Args> | |
void | log (int severity, const UChar *fmt, Args &&... args) |
Report a message with an explicit severity and a printf-like interface. | |
template<class... Args> | |
void | log (int severity, const UString &fmt, Args &&... args) |
Report a message with an explicit severity and a printf-like interface. | |
void | log (int severity, const UString &msg) |
Report a message with an explicit severity. | |
int | maxSeverity () const |
Get maximum severity level. | |
void | raiseMaxSeverity (int level, bool delegated=false) |
Raise maximum severity level. | |
UString | reportPrefix () const |
Get the current prefix to display. | |
void | resetErrors () |
Reset the error indicator. | |
void | setMaxSeverity (int level, bool delegated=false) |
Set maximum severity level. | |
void | setReportPrefix (const UString &prefix) |
Set the prefix to display before each message. | |
template<class... Args> | |
void | severe (const UChar *fmt, Args &&... args) |
Report a severe error message with a printf-like interface. | |
void | severe (const UChar *msg) |
Report a severe error message. | |
template<class... Args> | |
void | severe (const UString &fmt, Args &&... args) |
Report a severe error message with a printf-like interface. | |
void | severe (const UString &msg) |
Report a severe error message. | |
bool | verbose () const |
Check if verbose reporting is active. | |
template<class... Args> | |
void | verbose (const UChar *fmt, Args &&... args) |
Report a verbose message with a printf-like interface. | |
void | verbose (const UChar *msg) |
Report a verbose message. | |
template<class... Args> | |
void | verbose (const UString &fmt, Args &&... args) |
Report a verbose message with a printf-like interface. | |
void | verbose (const UString &msg) |
Report a verbose message. | |
template<class... Args> | |
void | warning (const UChar *fmt, Args &&... args) |
Report a warning message with a printf-like interface. | |
void | warning (const UChar *msg) |
Report a warning error message. | |
template<class... Args> | |
void | warning (const UString &fmt, Args &&... args) |
Report a warning message with a printf-like interface. | |
void | warning (const UString &msg) |
Report a warning error message. | |
Protected Member Functions | |
virtual void | writeLog (int severity, const UString &msg) |
Actual message reporting method. | |
Base class for event reporting and monitoring.
Maximum severity: Each report instance has an adjustable "maximum severity". All messages with a higher severity are dropped without reporting. The initial default severity is Info
, meaning that Verbose
and Debug
messages are dropped by default.
|
default |
Default constructor.
The default initial report level is Info.
ts::Report::Report | ( | int | max_severity, |
const UString & | prefix = UString() , |
||
Report * | report = nullptr |
||
) |
Constructor with initial report level, prefix and delegation.
[in] | max_severity | Initial maximum severity of reported messages. |
[in] | prefix | The prefix to prepend to all messages. |
[in] | report | New report object to which messages are delegated. |
void ts::Report::setMaxSeverity | ( | int | level, |
bool | delegated = false |
||
) |
Set maximum severity level.
Messages with higher severities are not reported.
[in] | level | Set report to that level. |
[in] | delegated | Propagate the severity to delegated reports. |
void ts::Report::raiseMaxSeverity | ( | int | level, |
bool | delegated = false |
||
) |
Raise maximum severity level.
The severity can only be increased (more verbose, more debug), never decreased.
[in] | level | Set report at least to that level. |
[in] | delegated | Propagate the severity to delegated reports. |
|
inline |
Get maximum severity level.
|
inline |
Check if errors (or worse) were reported through this object.
Errors which were reported through delegated reports are ignored.
|
inline |
Reset the error indicator.
|
inline |
Set the prefix to display before each message.
[in] | prefix | The prefix to prepend to all messages. |
|
inline |
Get the current prefix to display.
Delegate message logging to another report object.
[in] | report | New report object to which messages are delegated. Use nullptr to remove the delegation and return to normal logging. |
|
inline |
Check if debugging is active.
|
inline |
Check if verbose reporting is active.
void ts::Report::log | ( | int | severity, |
const UString & | msg | ||
) |
Report a message with an explicit severity.
[in] | severity | Message severity. |
[in] | msg | Message line. |
|
inline |
Report a message with an explicit severity and a printf-like interface.
[in] | severity | Message severity. |
[in] | fmt | Format string with embedded '%' sequences. |
[in] | args | List of arguments to substitute in the format string. |
|
inline |
Report a message with an explicit severity and a printf-like interface.
[in] | severity | Message severity. |
[in] | fmt | Format string with embedded '%' sequences. |
[in] | args | List of arguments to substitute in the format string. |
|
inline |
Report a fatal error message.
[in] | msg | Message line. |
|
inline |
Report a fatal error message.
[in] | msg | Message line. |
Report a fatal error message with a printf-like interface.
[in] | fmt | Format string with embedded '%' sequences. |
[in] | args | List of arguments to substitute in the format string. |
Report a fatal error message with a printf-like interface.
[in] | fmt | Format string with embedded '%' sequences. |
[in] | args | List of arguments to substitute in the format string. |
|
inline |
Report a severe error message.
[in] | msg | Message line. |
|
inline |
Report a severe error message.
[in] | msg | Message line. |
Report a severe error message with a printf-like interface.
[in] | fmt | Format string with embedded '%' sequences. |
[in] | args | List of arguments to substitute in the format string. |
Report a severe error message with a printf-like interface.
[in] | fmt | Format string with embedded '%' sequences. |
[in] | args | List of arguments to substitute in the format string. |
|
inline |
Report an error message.
[in] | msg | Message line. |
|
inline |
Report an error message.
[in] | msg | Message line. |
Report an error message with a printf-like interface.
[in] | fmt | Format string with embedded '%' sequences. |
[in] | args | List of arguments to substitute in the format string. |
Report an error message with a printf-like interface.
[in] | fmt | Format string with embedded '%' sequences. |
[in] | args | List of arguments to substitute in the format string. |
|
inline |
Report a warning error message.
[in] | msg | Message line. |
|
inline |
Report a warning error message.
[in] | msg | Message line. |
Report a warning message with a printf-like interface.
[in] | fmt | Format string with embedded '%' sequences. |
[in] | args | List of arguments to substitute in the format string. |
Report a warning message with a printf-like interface.
[in] | fmt | Format string with embedded '%' sequences. |
[in] | args | List of arguments to substitute in the format string. |
|
inline |
Report an informational message.
[in] | msg | Message line. |
|
inline |
Report an informational message.
[in] | msg | Message line. |
Report an informational message with a printf-like interface.
[in] | fmt | Format string with embedded '%' sequences. |
[in] | args | List of arguments to substitute in the format string. |
Report an informational message with a printf-like interface.
[in] | fmt | Format string with embedded '%' sequences. |
[in] | args | List of arguments to substitute in the format string. |
|
inline |
Report a verbose message.
[in] | msg | Message line. |
|
inline |
Report a verbose message.
[in] | msg | Message line. |
Report a verbose message with a printf-like interface.
[in] | fmt | Format string with embedded '%' sequences. |
[in] | args | List of arguments to substitute in the format string. |
Report a verbose message with a printf-like interface.
[in] | fmt | Format string with embedded '%' sequences. |
[in] | args | List of arguments to substitute in the format string. |
|
inline |
Report a debug message.
[in] | msg | Message line. |
|
inline |
Report a debug message.
[in] | msg | Message line. |
Report a debug message with a printf-like interface.
[in] | fmt | Format string with embedded '%' sequences. |
[in] | args | List of arguments to substitute in the format string. |
Report a debug message with a printf-like interface.
[in] | fmt | Format string with embedded '%' sequences. |
[in] | args | List of arguments to substitute in the format string. |
|
protectedvirtual |
Actual message reporting method.
The method is called only when a message passed the severity filter. It is not necessary to recheck the maximum severity inside the method. By default, does nothing.
[in] | severity | Message severity. |
[in] | msg | Message text. |
Reimplemented in ts::Args, ts::ReportBuffer< SAFETY >, ts::ReportFile< SAFETY >, ts::TelnetConnection, ts::CerrReport, and ts::NullReport.