WPILibC++
2018.4.1-20180921123319-1190-ge210073
|
Typedefs | |
typedef void(* | NT_EntryListenerCallback )(void *data, const struct NT_EntryNotification *event) |
Entry listener callback function. More... | |
Functions | |
NT_EntryListener | NT_AddEntryListener (NT_Inst inst, const char *prefix, size_t prefix_len, void *data, NT_EntryListenerCallback callback, unsigned int flags) |
Add a listener for all entries starting with a certain prefix. More... | |
NT_EntryListener | NT_AddEntryListenerSingle (NT_Entry entry, void *data, NT_EntryListenerCallback callback, unsigned int flags) |
Add a listener for a single entry. More... | |
NT_EntryListenerPoller | NT_CreateEntryListenerPoller (NT_Inst inst) |
Create a entry listener poller. More... | |
void | NT_DestroyEntryListenerPoller (NT_EntryListenerPoller poller) |
Destroy a entry listener poller. More... | |
NT_EntryListener | NT_AddPolledEntryListener (NT_EntryListenerPoller poller, const char *prefix, size_t prefix_len, unsigned int flags) |
Create a polled entry listener. More... | |
NT_EntryListener | NT_AddPolledEntryListenerSingle (NT_EntryListenerPoller poller, NT_Entry entry, unsigned int flags) |
Create a polled entry listener. More... | |
struct NT_EntryNotification * | NT_PollEntryListener (NT_EntryListenerPoller poller, size_t *len) |
Get the next entry listener event. More... | |
struct NT_EntryNotification * | NT_PollEntryListenerTimeout (NT_EntryListenerPoller poller, size_t *len, double timeout, NT_Bool *timed_out) |
Get the next entry listener event. More... | |
void | NT_CancelPollEntryListener (NT_EntryListenerPoller poller) |
Cancel a PollEntryListener call. More... | |
void | NT_RemoveEntryListener (NT_EntryListener entry_listener) |
Remove an entry listener. More... | |
NT_Bool | NT_WaitForEntryListenerQueue (NT_Inst inst, double timeout) |
Wait for the entry listener queue to be empty. More... | |
typedef void(* NT_EntryListenerCallback)(void *data, const struct NT_EntryNotification *event) |
Entry listener callback function.
Called when a key-value pair is changed.
data | data pointer provided to callback creation function |
event | event information |
NT_EntryListener NT_AddEntryListener | ( | NT_Inst | inst, |
const char * | prefix, | ||
size_t | prefix_len, | ||
void * | data, | ||
NT_EntryListenerCallback | callback, | ||
unsigned int | flags | ||
) |
Add a listener for all entries starting with a certain prefix.
inst | instance handle |
prefix | UTF-8 string prefix |
prefix_len | length of prefix in bytes |
data | data pointer to pass to callback |
callback | listener to add |
flags | NT_NotifyKind bitmask |
NT_EntryListener NT_AddEntryListenerSingle | ( | NT_Entry | entry, |
void * | data, | ||
NT_EntryListenerCallback | callback, | ||
unsigned int | flags | ||
) |
Add a listener for a single entry.
entry | entry handle |
data | data pointer to pass to callback |
callback | listener to add |
flags | NT_NotifyKind bitmask |
NT_EntryListener NT_AddPolledEntryListener | ( | NT_EntryListenerPoller | poller, |
const char * | prefix, | ||
size_t | prefix_len, | ||
unsigned int | flags | ||
) |
Create a polled entry listener.
The caller is responsible for calling NT_PollEntryListener() to poll.
poller | poller handle |
prefix | UTF-8 string prefix |
flags | NT_NotifyKind bitmask |
NT_EntryListener NT_AddPolledEntryListenerSingle | ( | NT_EntryListenerPoller | poller, |
NT_Entry | entry, | ||
unsigned int | flags | ||
) |
Create a polled entry listener.
The caller is responsible for calling NT_PollEntryListener() to poll.
poller | poller handle |
prefix | UTF-8 string prefix |
flags | NT_NotifyKind bitmask |
void NT_CancelPollEntryListener | ( | NT_EntryListenerPoller | poller | ) |
Cancel a PollEntryListener call.
This wakes up a call to PollEntryListener for this poller and causes it to immediately return an empty array.
poller | poller handle |
NT_EntryListenerPoller NT_CreateEntryListenerPoller | ( | NT_Inst | inst | ) |
Create a entry listener poller.
A poller provides a single queue of poll events. Events linked to this poller (using NT_AddPolledEntryListener()) will be stored in the queue and must be collected by calling NT_PollEntryListener(). The returned handle must be destroyed with NT_DestroyEntryListenerPoller().
inst | instance handle |
void NT_DestroyEntryListenerPoller | ( | NT_EntryListenerPoller | poller | ) |
Destroy a entry listener poller.
This will abort any blocked polling call and prevent additional events from being generated for this poller.
poller | poller handle |
struct NT_EntryNotification* NT_PollEntryListener | ( | NT_EntryListenerPoller | poller, |
size_t * | len | ||
) |
Get the next entry listener event.
This blocks until the next event occurs.
This is intended to be used with NT_AddPolledEntryListener(void); entry listeners created using NT_AddEntryListener() will not be serviced through this function.
poller | poller handle |
len | length of returned array (output) |
struct NT_EntryNotification* NT_PollEntryListenerTimeout | ( | NT_EntryListenerPoller | poller, |
size_t * | len, | ||
double | timeout, | ||
NT_Bool * | timed_out | ||
) |
Get the next entry listener event.
This blocks until the next event occurs or it times out. This is intended to be used with NT_AddPolledEntryListener(); entry listeners created using NT_AddEntryListener() will not be serviced through this function.
poller | poller handle |
len | length of returned array (output) |
timeout | timeout, in seconds |
timed_out | true if the timeout period elapsed (output) |
void NT_RemoveEntryListener | ( | NT_EntryListener | entry_listener | ) |
Remove an entry listener.
entry_listener | Listener handle to remove |
NT_Bool NT_WaitForEntryListenerQueue | ( | NT_Inst | inst, |
double | timeout | ||
) |
Wait for the entry listener queue to be empty.
This is primarily useful for deterministic testing. This blocks until either the entry listener 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 |