WPILibC++
2019.1.1-beta-4-19-ge1bf623
|
Typedefs | |
typedef void(* | NT_LogFunc )(void *data, const struct NT_LogMessage *msg) |
Log function. More... | |
Functions | |
NT_Logger | NT_AddLogger (NT_Inst inst, void *data, NT_LogFunc func, unsigned int min_level, unsigned int max_level) |
Add logger callback function. More... | |
NT_LoggerPoller | NT_CreateLoggerPoller (NT_Inst inst) |
Create a log poller. More... | |
void | NT_DestroyLoggerPoller (NT_LoggerPoller poller) |
Destroy a log poller. More... | |
NT_Logger | NT_AddPolledLogger (NT_LoggerPoller poller, unsigned int min_level, unsigned int max_level) |
Set the log level for a log poller. More... | |
struct NT_LogMessage * | NT_PollLogger (NT_LoggerPoller poller, size_t *len) |
Get the next log event. More... | |
struct NT_LogMessage * | NT_PollLoggerTimeout (NT_LoggerPoller poller, size_t *len, double timeout, NT_Bool *timed_out) |
Get the next log event. More... | |
void | NT_CancelPollLogger (NT_LoggerPoller poller) |
Cancel a PollLogger call. More... | |
void | NT_RemoveLogger (NT_Logger logger) |
Remove a logger. More... | |
NT_Bool | NT_WaitForLoggerQueue (NT_Inst inst, double timeout) |
Wait for the incoming log event queue to be empty. More... | |
typedef void(* NT_LogFunc)(void *data, const struct NT_LogMessage *msg) |
Log function.
data | data pointer passed to NT_AddLogger() |
msg | message information |
NT_Logger NT_AddLogger | ( | NT_Inst | inst, |
void * | data, | ||
NT_LogFunc | func, | ||
unsigned int | min_level, | ||
unsigned int | max_level | ||
) |
Add logger callback function.
By default, log messages are sent to stderr; this function sends log messages to the provided callback function instead. The callback function will only be called for log messages with level greater than or equal to min_level and less than or equal to max_level; messages outside this range will be silently ignored.
inst | instance handle |
data | data pointer to pass to func |
func | log callback function |
min_level | minimum log level |
max_level | maximum log level |
NT_Logger NT_AddPolledLogger | ( | NT_LoggerPoller | poller, |
unsigned int | min_level, | ||
unsigned int | max_level | ||
) |
Set the log level for a log poller.
Events will only be generated for log messages with level greater than or equal to min_level and less than or equal to max_level; messages outside this range will be silently ignored.
poller | poller handle |
min_level | minimum log level |
max_level | maximum log level |
void NT_CancelPollLogger | ( | NT_LoggerPoller | poller | ) |
Cancel a PollLogger call.
This wakes up a call to PollLogger for this poller and causes it to immediately return an empty array.
poller | poller handle |
NT_LoggerPoller NT_CreateLoggerPoller | ( | NT_Inst | inst | ) |
Create a log poller.
A poller provides a single queue of poll events. The returned handle must be destroyed with NT_DestroyLoggerPoller().
inst | instance handle |
void NT_DestroyLoggerPoller | ( | NT_LoggerPoller | poller | ) |
Destroy a log poller.
This will abort any blocked polling call and prevent additional events from being generated for this poller.
poller | poller handle |
struct NT_LogMessage* NT_PollLogger | ( | NT_LoggerPoller | poller, |
size_t * | len | ||
) |
Get the next log event.
This blocks until the next log occurs.
poller | poller handle |
len | length of returned array (output) |
struct NT_LogMessage* NT_PollLoggerTimeout | ( | NT_LoggerPoller | poller, |
size_t * | len, | ||
double | timeout, | ||
NT_Bool * | timed_out | ||
) |
Get the next log event.
This blocks until the next log occurs or it times out.
poller | poller handle |
len | length of returned array (output) |
timeout | timeout, in seconds |
timed_out | true if the timeout period elapsed (output) |
void NT_RemoveLogger | ( | NT_Logger | logger | ) |
Remove a logger.
logger | Logger handle to remove |
NT_Bool NT_WaitForLoggerQueue | ( | NT_Inst | inst, |
double | timeout | ||
) |
Wait for the incoming log event queue to be empty.
This is primarily useful for deterministic testing. This blocks until either the log event queue is empty (e.g. there are no more events that need to be passed along to callbacks or poll queues) or the timeout expires.
inst | instance handle |
timeout | timeout, in seconds. Set to 0 for non-blocking behavior, or a negative value to block indefinitely |