8 #ifndef NTCORE_LOGGERIMPL_H_ 9 #define NTCORE_LOGGERIMPL_H_ 11 #include "CallbackManager.h" 13 #include "ntcore_cpp.h" 20 :
public ListenerData<std::function<void(const LogMessage& msg)>> {
23 unsigned int min_level_,
unsigned int max_level_)
24 :
ListenerData(callback_), min_level(min_level_), max_level(max_level_) {}
26 unsigned int max_level_)
28 min_level(min_level_),
29 max_level(max_level_) {}
31 unsigned int min_level;
32 unsigned int max_level;
36 :
public CallbackThread<LoggerThread, LogMessage, LoggerListenerData> {
41 return data.
level >= listener.min_level && data.
level <= listener.max_level;
44 void SetListener(
LogMessage* data,
unsigned int listener_uid) {
45 data->
logger =
Handle(m_inst, listener_uid, Handle::kLogger).handle();
48 void DoCallback(std::function<
void(
const LogMessage& msg)> callback,
59 friend class LoggerTest;
63 explicit LoggerImpl(int inst);
67 unsigned int Add(std::function<void(const LogMessage& msg)> callback,
68 unsigned int min_level, unsigned int max_level);
69 unsigned int AddPolled(unsigned int poller_uid, unsigned int min_level,
70 unsigned int max_level);
72 unsigned int GetMinLevel();
74 void Log(unsigned int level, const char* file, unsigned int line,
83 #endif // NTCORE_LOGGERIMPL_H_ NetworkTables log message.
Definition: ntcore_cpp.h:236
Definition: CallbackManager.h:54
Definition: LoggerImpl.h:35
Definition: IEntryNotifier.h:16
Definition: LoggerImpl.h:58
Definition: LoggerImpl.h:19
Definition: CallbackManager.h:168
Definition: CallbackManager.h:30
unsigned int level
Log level of the message.
Definition: ntcore_cpp.h:251
NT_Logger logger
The logger that generated the message.
Definition: ntcore_cpp.h:248