Autonomy Software C++ 24.5.1
Welcome to the Autonomy Software repository of the Mars Rover Design Team (MRDT) at Missouri University of Science and Technology (Missouri S&T)! API reference contains the source code and other resources for the development of the autonomy software for our Mars rover. The Autonomy Software project aims to compete in the University Rover Challenge (URC) by demonstrating advanced autonomous capabilities and robust navigation algorithms.
Loading...
Searching...
No Matches
duckdb::Logger Class Referenceabstract

Main logging interface. More...

#include <duckdb.hpp>

Inheritance diagram for duckdb::Logger:
Collaboration diagram for duckdb::Logger:

Public Member Functions

DUCKDB_API Logger (LogManager &manager)
 
virtual DUCKDB_API bool ShouldLog (const char *log_type, LogLevel log_level)=0
 
DUCKDB_API void WriteLog (const char *log_type, LogLevel log_level, const char *message)
 
DUCKDB_API void WriteLog (const char *log_type, LogLevel log_level, const string &message)
 
DUCKDB_API void WriteLog (const char *log_type, LogLevel log_level, const string_t &message)
 
template<typename... ARGS>
void WriteLog (const char *log_type, LogLevel log_level, const char *format_string, ARGS... params)
 
virtual DUCKDB_API void Flush ()=0
 
virtual DUCKDB_API bool IsThreadSafe ()=0
 
virtual DUCKDB_API bool IsMutable ()
 
virtual DUCKDB_API void UpdateConfig (LogConfig &new_config)
 
virtual DUCKDB_API const LogConfigGetConfig () const =0
 

Static Public Member Functions

static DUCKDB_API LoggerGet (const ThreadContext &thread_context)
 
static DUCKDB_API LoggerGet (const ExecutionContext &execution_context)
 
static DUCKDB_API LoggerGet (const ClientContext &client_context)
 
static DUCKDB_API LoggerGet (const FileOpener &opener)
 
static DUCKDB_API LoggerGet (const DatabaseInstance &db)
 
static DUCKDB_API LoggerGet (const shared_ptr< Logger > &logger)
 
template<class T >
static void Flush (T &log_context_source)
 

Protected Member Functions

virtual void WriteLogInternal (const char *log_type, LogLevel log_level, const char *message)=0
 

Protected Attributes

LogManagermanager
 

Detailed Description

Main logging interface.

Constructor & Destructor Documentation

◆ Logger()

DUCKDB_API duckdb::Logger::Logger ( LogManager manager)
inlineexplicit
39260 : manager(manager) {
39261 }

Member Function Documentation

◆ WriteLog()

template<typename... ARGS>
void duckdb::Logger::WriteLog ( const char log_type,
LogLevel  log_level,
const char format_string,
ARGS...  params 
)
inline
39275 {
39276 auto formatted_string = StringUtil::Format(format_string, params...);
39277 WriteLog(log_type, log_level, formatted_string.c_str());
39278 }
static string Format(const string fmt_str, ARGS... params)
Format a string using printf semantics.
Definition duckdb.hpp:4002
PyParams params(const std::string &tag, const std::string &model, const std::string &weights, const std::string &device)

◆ Flush()

template<class T >
static void duckdb::Logger::Flush ( T &  log_context_source)
inlinestatic
39293 {
39294 Get(log_context_source).Flush();
39295 }

◆ IsMutable()

virtual DUCKDB_API bool duckdb::Logger::IsMutable ( )
inlinevirtual
39298 {
39299 return false;
39300 };

◆ UpdateConfig()

virtual DUCKDB_API void duckdb::Logger::UpdateConfig ( LogConfig new_config)
inlinevirtual
39301 {
39302 throw InternalException("Cannot update the config of this logger!");
39303 }

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