8 #ifndef NT_LOGGERIMPL_H_ 9 #define NT_LOGGERIMPL_H_ 11 #include "ntcore_cpp.h" 13 #include "CallbackManager.h" 21 :
public ListenerData<std::function<void(const LogMessage& msg)>> {
24 unsigned int min_level_,
unsigned int max_level_)
25 :
ListenerData(callback_), min_level(min_level_), max_level(max_level_) {}
27 unsigned int max_level_)
29 min_level(min_level_),
30 max_level(max_level_) {}
32 unsigned int min_level;
33 unsigned int max_level;
37 :
public CallbackThread<LoggerThread, LogMessage, LoggerListenerData> {
42 return data.
level >= listener.min_level && data.
level <= listener.max_level;
45 void SetListener(
LogMessage* data,
unsigned int listener_uid) {
46 data->
logger =
Handle(m_inst, listener_uid, Handle::kLogger).handle();
49 void DoCallback(std::function<
void(
const LogMessage& msg)> callback,
60 friend class LoggerTest;
64 explicit LoggerImpl(int inst);
68 unsigned int Add(std::function<void(const LogMessage& msg)> callback,
69 unsigned int min_level, unsigned int max_level);
70 unsigned int AddPolled(unsigned int poller_uid, unsigned int min_level,
71 unsigned int max_level);
73 unsigned int GetMinLevel();
75 void Log(unsigned int level, const char* file, unsigned int line,
84 #endif // NT_CONNECTIONNOTIFIER_H_ NetworkTables log message.
Definition: ntcore_cpp.h:232
Definition: CallbackManager.h:52
Definition: LoggerImpl.h:36
Definition: IEntryNotifier.h:15
Definition: LoggerImpl.h:59
Definition: LoggerImpl.h:20
Definition: CallbackManager.h:166
Definition: CallbackManager.h:28
unsigned int level
Log level of the message.
Definition: ntcore_cpp.h:247
NT_Logger logger
The logger that generated the message.
Definition: ntcore_cpp.h:244