class mrpt::nav::NavigationLogger
Overview
Manages navigation log file writing and in-memory log record keeping.
Extracted from CAbstractPTGBasedReactive to reduce its complexity.
#include <mrpt/nav/reactive/NavigationLogger.h> class NavigationLogger { public: // construction NavigationLogger(); // methods void enableLogFile(bool enable, const std::string& logDir, mrpt::system::COutputLogger* logger); bool shouldFillLogRecord() const; void enableKeepLogRecords(bool enable = true); void getLastLogRecord(CLogFileRecord& o); void setLogFileDirectory(const std::string& sDir); std::string getLogFileDirectory() const; void writeLogRecord(const CLogFileRecord& rec, mrpt::system::CTimeLogger& timelogger); mrpt::io::CStream* getLogStream(); bool isNewLogFile() const; void markLogFileIntroduced(); void close(); };
Methods
void enableLogFile(bool enable, const std::string& logDir, mrpt::system::COutputLogger* logger)
Enable/disable log file output.
Parameters:
enable |
If true, opens a new log file; if false, closes any open file. |
logDir |
Directory for log files. |
logger |
Optional COutputLogger for debug messages. |
bool shouldFillLogRecord() const
Whether log file or in-memory records should be filled.
void enableKeepLogRecords(bool enable = true)
Enables keeping an internal registry of navigation logs.
void getLastLogRecord(CLogFileRecord& o)
Provides a copy of the last log record.
void setLogFileDirectory(const std::string& sDir)
Changes the prefix for new log files.
void writeLogRecord(const CLogFileRecord& rec, mrpt::system::CTimeLogger& timelogger)
Write the completed log record to file and/or store as last record.
mrpt::io::CStream* getLogStream()
Access to the raw log stream (for introductory blocks, etc.)
bool isNewLogFile() const
Returns true if this is the first time we write to a new log file (used for writing PTG introductory data)
void markLogFileIntroduced()
Mark the current log file as “already introduced”.
void close()
Close log file and reset state.