45#define NT_DEFAULT_PORT3 1735
48#define NT_DEFAULT_PORT4 5810
505 const struct NT_Value* default_value);
586 unsigned int types,
size_t*
count);
605 const char*
const* types,
size_t types_len,
625 size_t prefix_len,
unsigned int types,
646 const char*
const* types,
647 size_t types_len,
size_t*
count);
1007 size_t prefix_len,
unsigned int mask,
1026 size_t prefixes_len,
unsigned int mask,
1065 const char* prefix,
size_t prefix_len,
1082 size_t prefixes_len,
1148 const char* listen_address,
unsigned int port3,
1149 unsigned int port4);
1203 const unsigned int* ports);
1432 const char* prefix,
const char* logPrefix);
1451 struct WPI_DataLog*
log,
1483 unsigned int max_level,
void* data,
1497 unsigned int max_level);
1535 const uint8_t* schema,
size_t schemaSize);
1787 uint64_t* last_change,
size_t* arr_size);
1804 uint64_t* last_change,
size_t* arr_size);
1821 uint64_t* last_change,
size_t* arr_size);
1838 uint64_t* last_change,
size_t* arr_size);
1857 uint64_t* last_change,
1936 const uint8_t* data,
size_t size,
size_t*
count);
1947 const uint8_t* data,
size_t size,
size_t*
count);
1958 const uint8_t* data,
size_t size,
size_t*
count);
1969 const uint8_t* data,
size_t size,
size_t*
count);
dimensionless::scalar_t log(const ScalarUnit x) noexcept
Compute natural logarithm.
Definition: math.h:349
void NT_UnsubscribeMultiple(NT_MultiSubscriber sub)
Unsubscribes a multi-subscriber.
NT_MultiSubscriber NT_SubscribeMultiple(NT_Inst inst, const struct NT_String *prefixes, size_t prefixes_len, const struct NT_PubSubOptions *options)
Subscribes to multiple topics based on one or more topic name prefixes.
NT_Handle NT_Topic
Definition: ntcore_c.h:40
NT_Handle NT_ConnectionDataLogger
Definition: ntcore_c.h:33
NT_Handle NT_Listener
Definition: ntcore_c.h:37
NT_EntryFlags
NetworkTables entry flags.
Definition: ntcore_c.h:68
int NT_Bool
Typedefs.
Definition: ntcore_c.h:30
NT_LogLevel
NetworkTables logging levels.
Definition: ntcore_c.h:75
NT_NetworkMode
Client/server modes.
Definition: ntcore_c.h:88
NT_Handle NT_Subscriber
Definition: ntcore_c.h:41
unsigned int NT_Handle
Definition: ntcore_c.h:32
NT_Type
NetworkTables data types.
Definition: ntcore_c.h:51
NT_Handle NT_Inst
Definition: ntcore_c.h:36
NT_Handle NT_Publisher
Definition: ntcore_c.h:42
NT_EventFlags
Event notification flags.
Definition: ntcore_c.h:98
NT_Handle NT_ListenerPoller
Definition: ntcore_c.h:38
NT_Handle NT_MultiSubscriber
Definition: ntcore_c.h:39
NT_Handle NT_Entry
Definition: ntcore_c.h:35
NT_Handle NT_DataLogger
Definition: ntcore_c.h:34
@ NT_RETAINED
Definition: ntcore_c.h:70
@ NT_PERSISTENT
Definition: ntcore_c.h:69
@ NT_UNCACHED
Definition: ntcore_c.h:71
@ NT_LOG_DEBUG4
Definition: ntcore_c.h:84
@ NT_LOG_WARNING
Definition: ntcore_c.h:78
@ NT_LOG_INFO
Definition: ntcore_c.h:79
@ NT_LOG_DEBUG2
Definition: ntcore_c.h:82
@ NT_LOG_DEBUG
Definition: ntcore_c.h:80
@ NT_LOG_CRITICAL
Definition: ntcore_c.h:76
@ NT_LOG_ERROR
Definition: ntcore_c.h:77
@ NT_LOG_DEBUG3
Definition: ntcore_c.h:83
@ NT_LOG_DEBUG1
Definition: ntcore_c.h:81
@ NT_NET_MODE_STARTING
Definition: ntcore_c.h:93
@ NT_NET_MODE_LOCAL
Definition: ntcore_c.h:94
@ NT_NET_MODE_CLIENT4
Definition: ntcore_c.h:92
@ NT_NET_MODE_CLIENT3
Definition: ntcore_c.h:91
@ NT_NET_MODE_SERVER
Definition: ntcore_c.h:90
@ NT_NET_MODE_NONE
Definition: ntcore_c.h:89
@ NT_DOUBLE
Definition: ntcore_c.h:54
@ NT_BOOLEAN
Definition: ntcore_c.h:53
@ NT_DOUBLE_ARRAY
Definition: ntcore_c.h:58
@ NT_STRING
Definition: ntcore_c.h:55
@ NT_FLOAT_ARRAY
Definition: ntcore_c.h:64
@ NT_RPC
Definition: ntcore_c.h:60
@ NT_INTEGER
Definition: ntcore_c.h:61
@ NT_BOOLEAN_ARRAY
Definition: ntcore_c.h:57
@ NT_FLOAT
Definition: ntcore_c.h:62
@ NT_STRING_ARRAY
Definition: ntcore_c.h:59
@ NT_INTEGER_ARRAY
Definition: ntcore_c.h:63
@ NT_UNASSIGNED
Definition: ntcore_c.h:52
@ NT_RAW
Definition: ntcore_c.h:56
@ NT_EVENT_VALUE_ALL
Topic value updated (network or local).
Definition: ntcore_c.h:121
@ NT_EVENT_LOGMESSAGE
Log message.
Definition: ntcore_c.h:123
@ NT_EVENT_NONE
Definition: ntcore_c.h:99
@ NT_EVENT_UNPUBLISH
Topic unpublished.
Definition: ntcore_c.h:111
@ NT_EVENT_PROPERTIES
Topic properties changed.
Definition: ntcore_c.h:113
@ NT_EVENT_CONNECTED
Client connected (on server, any client connected).
Definition: ntcore_c.h:103
@ NT_EVENT_TIMESYNC
Time synchronized with server.
Definition: ntcore_c.h:125
@ NT_EVENT_VALUE_REMOTE
Topic value updated (via network).
Definition: ntcore_c.h:117
@ NT_EVENT_PUBLISH
New topic published.
Definition: ntcore_c.h:109
@ NT_EVENT_TOPIC
Any topic event (publish, unpublish, or properties changed).
Definition: ntcore_c.h:115
@ NT_EVENT_CONNECTION
Any connection event (connect or disconnect).
Definition: ntcore_c.h:107
@ NT_EVENT_DISCONNECTED
Client disconnected (on server, any client disconnected).
Definition: ntcore_c.h:105
@ NT_EVENT_IMMEDIATE
Initial listener addition.
Definition: ntcore_c.h:101
@ NT_EVENT_VALUE_LOCAL
Topic value updated (local).
Definition: ntcore_c.h:119
void NT_StopConnectionDataLog(NT_ConnectionDataLogger logger)
Stops logging connection changes to a DataLog.
NT_DataLogger NT_StartEntryDataLog(NT_Inst inst, struct WPI_DataLog *log, const char *prefix, const char *logPrefix)
Starts logging entry changes to a DataLog.
void NT_StopEntryDataLog(NT_DataLogger logger)
Stops logging entry changes to a DataLog.
NT_ConnectionDataLogger NT_StartConnectionDataLog(NT_Inst inst, struct WPI_DataLog *log, const char *name)
Starts logging connection changes to a DataLog.
void NT_DestroyInstance(NT_Inst inst)
Destroy an instance.
NT_Inst NT_CreateInstance(void)
Create an instance.
NT_Inst NT_GetDefaultInstance(void)
Get default instance.
NT_Inst NT_GetInstanceFromHandle(NT_Handle handle)
Get instance handle from another handle.
NT_Listener NT_AddPolledListenerSingle(NT_ListenerPoller poller, const char *prefix, size_t prefix_len, unsigned int mask)
Creates a polled topic listener.
void NT_RemoveListener(NT_Listener listener)
Removes a listener.
void(* NT_ListenerCallback)(void *data, const struct NT_Event *event)
Event listener callback function.
Definition: ntcore_c.h:939
NT_ListenerPoller NT_CreateListenerPoller(NT_Inst inst)
Creates a listener poller.
NT_Listener NT_AddListenerMultiple(NT_Inst inst, const struct NT_String *prefixes, size_t prefixes_len, unsigned int mask, void *data, NT_ListenerCallback callback)
Create a listener for changes to topics with names that start with any of the given prefixes.
NT_Listener NT_AddListenerSingle(NT_Inst inst, const char *prefix, size_t prefix_len, unsigned int mask, void *data, NT_ListenerCallback callback)
Create a listener for changes to topics with names that start with the given prefix.
struct NT_Event * NT_ReadListenerQueue(NT_ListenerPoller poller, size_t *len)
Read notifications.
NT_Listener NT_AddPolledListener(NT_ListenerPoller poller, NT_Handle handle, unsigned int mask)
Creates a polled listener.
void NT_DestroyListenerPoller(NT_ListenerPoller poller)
Destroys a listener poller.
NT_Listener NT_AddListener(NT_Handle handle, unsigned int mask, void *data, NT_ListenerCallback callback)
Create a listener.
NT_Bool NT_WaitForListenerQueue(NT_Handle handle, double timeout)
Wait for the listener queue to be empty.
NT_Listener NT_AddPolledListenerMultiple(NT_ListenerPoller poller, const struct NT_String *prefixes, size_t prefixes_len, unsigned int mask)
Creates a polled topic listener.
NT_Listener NT_AddPolledLogger(NT_ListenerPoller poller, unsigned int min_level, unsigned int max_level)
Set the log level for a listener poller.
NT_Listener NT_AddLogger(NT_Inst inst, unsigned int min_level, unsigned int max_level, void *data, NT_ListenerCallback func)
Add logger callback function.
float * NT_AllocateFloatArray(size_t size)
Allocates an array of floats.
void NT_FreeIntegerArray(int64_t *v_int)
Frees an array of ints.
void NT_FreeFloatArray(float *v_float)
Frees an array of floats.
void NT_FreeStringArray(struct NT_String *v_string, size_t arr_size)
Frees an array of NT_Strings.
void NT_FreeBooleanArray(NT_Bool *v_boolean)
Frees an array of booleans.
NT_Bool * NT_AllocateBooleanArray(size_t size)
Allocates an array of booleans.
void NT_FreeDoubleArray(double *v_double)
Frees an array of doubles.
struct NT_String * NT_AllocateStringArray(size_t size)
Allocates an array of NT_Strings.
double * NT_AllocateDoubleArray(size_t size)
Allocates an array of doubles.
void NT_FreeCharArray(char *v_char)
Frees an array of chars.
int64_t * NT_AllocateIntegerArray(size_t size)
Allocates an array of ints.
char * NT_AllocateCharArray(size_t size)
Allocates an array of chars.
void NT_Disconnect(NT_Inst inst)
Disconnects the client if it's running and connected.
void NT_StartLocal(NT_Inst inst)
Starts local-only operation.
void NT_StartServer(NT_Inst inst, const char *persist_filename, const char *listen_address, unsigned int port3, unsigned int port4)
Starts a server using the specified filename, listening address, and port.
void NT_StopClient(NT_Inst inst)
Stops the client if it is running.
void NT_StartClient4(NT_Inst inst, const char *identity)
Starts a NT4 client.
void NT_StopServer(NT_Inst inst)
Stops the server if it is running.
unsigned int NT_GetNetworkMode(NT_Inst inst)
Get the current network mode.
void NT_StopLocal(NT_Inst inst)
Stops local-only operation.
void NT_SetServerTeam(NT_Inst inst, unsigned int team, unsigned int port)
Sets server addresses and port for client (without restarting client).
void NT_Flush(NT_Inst inst)
Flush to network.
int64_t NT_GetServerTimeOffset(NT_Inst inst, NT_Bool *valid)
Get the time offset between server time and local time.
void NT_FlushLocal(NT_Inst inst)
Flush local updates.
void NT_SetServer(NT_Inst inst, const char *server_name, unsigned int port)
Sets server address and port for client (without restarting client).
void NT_StartClient3(NT_Inst inst, const char *identity)
Starts a NT3 client.
NT_Bool NT_IsConnected(NT_Inst inst)
Return whether or not the instance is connected to another node.
void NT_StartDSClient(NT_Inst inst, unsigned int port)
Starts requesting server address from Driver Station.
void NT_StopDSClient(NT_Inst inst)
Stops requesting server address from Driver Station.
struct NT_ConnectionInfo * NT_GetConnections(NT_Inst inst, size_t *count)
Get information on the currently established network connections.
void NT_SetServerMulti(NT_Inst inst, size_t count, const char **server_names, const unsigned int *ports)
Sets server addresses for client (without restarting client).
void NT_AddSchema(NT_Inst inst, const char *name, const char *type, const uint8_t *schema, size_t schemaSize)
Registers a data schema.
NT_Bool NT_HasSchema(NT_Inst inst, const char *name)
Returns whether there is a data schema already registered with the given name.
NT_Bool NT_SetEntryValue(NT_Entry entry, const struct NT_Value *value)
Set Entry Value.
void NT_GetEntryValue(NT_Entry entry, struct NT_Value *value)
Get Entry Value.
void NT_GetEntryValueType(NT_Entry entry, unsigned int types, struct NT_Value *value)
Get Entry Value.
enum NT_Type NT_GetEntryType(NT_Entry entry)
Gets the type for the specified key, or unassigned if non existent.
struct NT_Value * NT_ReadQueueValue(NT_Handle subentry, size_t *count)
Read Entry Queue.
NT_Bool NT_SetDefaultEntryValue(NT_Entry entry, const struct NT_Value *default_value)
Set Default Entry Value.
unsigned int NT_GetEntryFlags(NT_Entry entry)
Get Entry Flags.
uint64_t NT_GetEntryLastChange(NT_Entry entry)
Gets the last time the entry was changed.
struct NT_Value * NT_ReadQueueValueType(NT_Handle subentry, unsigned int types, size_t *count)
Read Entry Queue.
void NT_SetEntryFlags(NT_Entry entry, unsigned int flags)
Set Entry Flags.
char * NT_GetEntryName(NT_Entry entry, size_t *name_len)
Gets the name of the specified entry.
NT_Entry NT_GetEntry(NT_Inst inst, const char *name, size_t name_len)
Get Entry Handle.
NT_Entry NT_GetEntryEx(NT_Topic topic, enum NT_Type type, const char *typeStr, const struct NT_PubSubOptions *options)
Creates a new entry (subscriber and weak publisher) to a topic.
struct NT_TopicInfo * NT_GetTopicInfos(NT_Inst inst, const char *prefix, size_t prefix_len, unsigned int types, size_t *count)
Get Topics.
char * NT_GetTopicProperty(NT_Topic topic, const char *name, size_t *len)
Gets the current value of a property (as a JSON string).
void NT_SetTopicRetained(NT_Topic topic, NT_Bool value)
Sets the retained property of a topic.
NT_Subscriber NT_Subscribe(NT_Topic topic, enum NT_Type type, const char *typeStr, const struct NT_PubSubOptions *options)
Creates a new subscriber to value changes on a topic.
NT_Bool NT_SetTopicProperty(NT_Topic topic, const char *name, const char *value)
Sets a property value.
NT_Bool NT_GetTopicExists(NT_Handle handle)
Determine if topic exists (e.g.
NT_Topic NT_GetTopicFromHandle(NT_Handle pubsubentry)
Gets the topic handle from an entry/subscriber/publisher handle.
void NT_Release(NT_Handle pubsubentry)
Stops entry/subscriber/publisher.
void NT_SetTopicPersistent(NT_Topic topic, NT_Bool value)
Sets the persistent property of a topic.
void NT_ReleaseEntry(NT_Entry entry)
Stops entry subscriber/publisher.
NT_Topic * NT_GetTopicsStr(NT_Inst inst, const char *prefix, size_t prefix_len, const char *const *types, size_t types_len, size_t *count)
Get Published Topic Handles.
NT_Bool NT_GetTopicInfo(NT_Topic topic, struct NT_TopicInfo *info)
Gets Topic Information.
NT_Publisher NT_Publish(NT_Topic topic, enum NT_Type type, const char *typeStr, const struct NT_PubSubOptions *options)
Creates a new publisher to a topic.
NT_Topic * NT_GetTopics(NT_Inst inst, const char *prefix, size_t prefix_len, unsigned int types, size_t *count)
Get Published Topic Handles.
void NT_DeleteTopicProperty(NT_Topic topic, const char *name)
Deletes a property.
char * NT_GetTopicTypeString(NT_Topic topic, size_t *type_len)
Gets the type string for the specified topic.
NT_Publisher NT_PublishEx(NT_Topic topic, enum NT_Type type, const char *typeStr, const char *properties, const struct NT_PubSubOptions *options)
Creates a new publisher to a topic.
struct NT_TopicInfo * NT_GetTopicInfosStr(NT_Inst inst, const char *prefix, size_t prefix_len, const char *const *types, size_t types_len, size_t *count)
Get Topics.
NT_Bool NT_GetTopicCached(NT_Topic topic)
Gets the cached property of a topic.
void NT_SetTopicCached(NT_Topic topic, NT_Bool value)
Sets the cached property of a topic.
NT_Bool NT_GetTopicPersistent(NT_Topic topic)
Gets the persistent property of a topic.
NT_Topic NT_GetTopic(NT_Inst inst, const char *name, size_t name_len)
Gets Topic Handle.
NT_Bool NT_SetTopicProperties(NT_Topic topic, const char *properties)
Updates multiple topic properties.
NT_Bool NT_GetTopicRetained(NT_Topic topic)
Gets the retained property of a topic.
char * NT_GetTopicProperties(NT_Topic topic, size_t *len)
Gets all topic properties as a JSON string.
void NT_Unpublish(NT_Handle pubentry)
Stops publisher.
enum NT_Type NT_GetTopicType(NT_Topic topic)
Gets the type for the specified topic, or unassigned if non existent.
char * NT_GetTopicName(NT_Topic topic, size_t *name_len)
Gets the name of the specified topic.
void NT_Unsubscribe(NT_Subscriber sub)
Stops subscriber.
int64_t * NT_GetValueIntegerArray(const struct NT_Value *value, uint64_t *last_change, size_t *arr_size)
Returns a copy of the int array from the NT_Value.
enum NT_Type NT_GetValueType(const struct NT_Value *value)
Returns the type of an NT_Value struct.
double * NT_GetValueDoubleArray(const struct NT_Value *value, uint64_t *last_change, size_t *arr_size)
Returns a copy of the double array from the NT_Value.
float * NT_GetValueFloatArray(const struct NT_Value *value, uint64_t *last_change, size_t *arr_size)
Returns a copy of the float array from the NT_Value.
NT_Bool * NT_GetValueBooleanArray(const struct NT_Value *value, uint64_t *last_change, size_t *arr_size)
Returns a copy of the boolean array from the NT_Value.
NT_Bool NT_GetValueFloat(const struct NT_Value *value, uint64_t *last_change, float *v_float)
Returns the float from the NT_Value.
NT_Bool NT_GetValueDouble(const struct NT_Value *value, uint64_t *last_change, double *v_double)
Returns the double from the NT_Value.
char * NT_GetValueString(const struct NT_Value *value, uint64_t *last_change, size_t *str_len)
Returns a copy of the string from the NT_Value.
NT_Bool NT_GetValueBoolean(const struct NT_Value *value, uint64_t *last_change, NT_Bool *v_boolean)
Returns the boolean from the NT_Value.
uint8_t * NT_GetValueRaw(const struct NT_Value *value, uint64_t *last_change, size_t *raw_len)
Returns a copy of the raw value from the NT_Value.
NT_Bool NT_GetValueInteger(const struct NT_Value *value, uint64_t *last_change, int64_t *v_int)
Returns the int from the NT_Value.
struct NT_String * NT_GetValueStringArray(const struct NT_Value *value, uint64_t *last_change, size_t *arr_size)
Returns a copy of the NT_String array from the NT_Value.
void NT_SetNow(int64_t timestamp)
Sets the current timestamp used for timestamping values that do not provide a timestamp (e....
void NT_InitValue(struct NT_Value *value)
Initializes a NT_Value.
void NT_DisposeTopicInfoArray(struct NT_TopicInfo *arr, size_t count)
Disposes a topic info array.
void NT_InitString(struct NT_String *str)
Initializes a NT_String.
void NT_DisposeString(struct NT_String *str)
Frees string memory.
void NT_DisposeTopicInfo(struct NT_TopicInfo *info)
Disposes a single topic info (as returned by NT_GetTopicInfo).
void NT_DisposeConnectionInfoArray(struct NT_ConnectionInfo *arr, size_t count)
Disposes a connection info array.
int64_t NT_Now(void)
Returns monotonic current time in 1 us increments.
void NT_DisposeValue(struct NT_Value *value)
Frees value memory.
void NT_DisposeEventArray(struct NT_Event *arr, size_t count)
Disposes an event array.
void NT_DisposeValueArray(struct NT_Value *arr, size_t count)
Frees an array of NT_Values.
void NT_DisposeEvent(struct NT_Event *event)
Disposes a single event.
constexpr auto count() -> size_t
Definition: core.h:1203
type
Definition: core.h:556
constexpr const char * name(const T &)
NetworkTables Connection Information.
Definition: ntcore_c.h:206
struct NT_String remote_ip
The IP address of the remote node.
Definition: ntcore_c.h:213
unsigned int remote_port
The port number of the remote node.
Definition: ntcore_c.h:216
uint64_t last_update
The last time any update was received from the remote node (same scale as returned by nt::Now()).
Definition: ntcore_c.h:222
unsigned int protocol_version
The protocol version being used for this connection.
Definition: ntcore_c.h:228
struct NT_String remote_id
The remote identifier (as set on the remote node by NT_StartClient4().
Definition: ntcore_c.h:210
NetworkTables event.
Definition: ntcore_c.h:277
struct NT_LogMessage logMessage
Definition: ntcore_c.h:297
NT_Handle listener
Listener that triggered this event.
Definition: ntcore_c.h:279
unsigned int flags
Event flags (NT_EventFlags).
Definition: ntcore_c.h:290
struct NT_TopicInfo topicInfo
Definition: ntcore_c.h:295
struct NT_ConnectionInfo connInfo
Definition: ntcore_c.h:294
struct NT_TimeSyncEventData timeSyncData
Definition: ntcore_c.h:298
union NT_Event::@8 data
Event data; content depends on flags.
struct NT_ValueEventData valueData
Definition: ntcore_c.h:296
NetworkTables log message.
Definition: ntcore_c.h:244
unsigned int level
Log level of the message.
Definition: ntcore_c.h:246
char * filename
The filename of the source file that generated the message.
Definition: ntcore_c.h:249
char * message
The message.
Definition: ntcore_c.h:255
unsigned int line
The line number in the source file that generated the message.
Definition: ntcore_c.h:252
NetworkTables publish/subscribe options.
Definition: ntcore_c.h:303
unsigned int structSize
Structure size.
Definition: ntcore_c.h:307
NT_Bool prefixMatch
Perform prefix match on subscriber topic names.
Definition: ntcore_c.h:346
NT_Bool disableRemote
For subscriptions, if remote value updates should not be queued for ReadQueue().
Definition: ntcore_c.h:357
NT_Bool keepDuplicates
Preserve duplicate value changes (rather than ignoring them).
Definition: ntcore_c.h:351
NT_Bool disableLocal
For subscriptions, if local value updates should not be queued for ReadQueue().
Definition: ntcore_c.h:363
NT_Publisher excludePublisher
For subscriptions, if non-zero, value updates for ReadQueue() are not queued for this publisher.
Definition: ntcore_c.h:329
unsigned int pollStorage
Polling storage size for a subscription.
Definition: ntcore_c.h:315
NT_Bool topicsOnly
For subscriptions, don't ask for value changes (only topic announcements).
Definition: ntcore_c.h:339
NT_Bool sendAll
Send all value changes over the network.
Definition: ntcore_c.h:334
double periodic
How frequently changes will be sent over the network, in seconds.
Definition: ntcore_c.h:323
NT_Bool excludeSelf
For entries, don't queue (for ReadQueue) value updates for the entry's internal publisher.
Definition: ntcore_c.h:369
NT_Bool hidden
For subscriptions, don't share the existence of the subscription with the network.
Definition: ntcore_c.h:377
A NetworkTables string.
Definition: ntcore_c.h:133
size_t len
Length of the string in bytes.
Definition: ntcore_c.h:146
char * str
String contents (UTF-8).
Definition: ntcore_c.h:140
NetworkTables time sync event data.
Definition: ntcore_c.h:259
int64_t rtt2
Measured round trip time divided by 2, in microseconds.
Definition: ntcore_c.h:267
NT_Bool valid
If serverTimeOffset and RTT are valid.
Definition: ntcore_c.h:273
int64_t serverTimeOffset
Offset between local time and server time, in microseconds.
Definition: ntcore_c.h:264
NetworkTables Topic Information.
Definition: ntcore_c.h:188
struct NT_String properties
Topic properties JSON string.
Definition: ntcore_c.h:202
struct NT_String type_str
Topic type string.
Definition: ntcore_c.h:199
NT_Topic topic
Topic handle.
Definition: ntcore_c.h:190
enum NT_Type type
Topic type.
Definition: ntcore_c.h:196
struct NT_String name
Topic name.
Definition: ntcore_c.h:193
NetworkTables value event data.
Definition: ntcore_c.h:232
NT_Handle subentry
Subscriber/entry handle.
Definition: ntcore_c.h:237
NT_Topic topic
Topic handle.
Definition: ntcore_c.h:234
struct NT_Value value
The new value.
Definition: ntcore_c.h:240
NetworkTables Entry Value.
Definition: ntcore_c.h:150
struct NT_Value::@1::@5 arr_float
enum NT_Type type
Definition: ntcore_c.h:151
float * arr
Definition: ntcore_c.h:173
struct NT_Value::@1::@4 arr_double
struct NT_String * arr
Definition: ntcore_c.h:181
float v_float
Definition: ntcore_c.h:157
double * arr
Definition: ntcore_c.h:169
struct NT_String v_string
Definition: ntcore_c.h:159
struct NT_Value::@1::@2 v_raw
int64_t last_change
Definition: ntcore_c.h:152
int64_t server_time
Definition: ntcore_c.h:153
double v_double
Definition: ntcore_c.h:158
uint8_t * data
Definition: ntcore_c.h:161
struct NT_Value::@1::@3 arr_boolean
struct NT_Value::@1::@6 arr_int
NT_Bool v_boolean
Definition: ntcore_c.h:155
size_t size
Definition: ntcore_c.h:162
NT_Bool * arr
Definition: ntcore_c.h:165
struct NT_Value::@1::@7 arr_string
int64_t v_int
Definition: ntcore_c.h:156
int64_t * arr
Definition: ntcore_c.h:177