|
Re: NetworkTable Client Questions
Sorry for the naming confusion.
In previous years, the SmartDashboard VIs prepended /SmartDashboard/ to the variable name and were promoted as the main VIs that you'd use for robot<->dashboard communication. We decided to simplify and combine the functions.
In 2016, a variable name that doesn't start with / will be prepended with /SmartDashboard. If you are writing lower level stuff, just use absolute paths. So then, which name to use since they are now merged? We decided to go with NetworkTables for the overall name.
To your question about the client. NT Client is the root VI for a client. Bind wraps it with some messaging hooks for the control binding. A given LV context only needs one client running. We could put in some prevention code to keep a second instance from doing any harm, but that doesn't exist. The reason why only one client is allowed to run is that the network table storage is implemented with functional globals that aren't instanced to the client. Architecturally, we only expected one server and one client per process.
Happy to answer other questions or confirm other spelunking observations.
Greg McKaskle
|