NetworkTables C++ on PC

Our team uses C++ for most of our code, so when were looking into off-crio vision processing, one of the things we looked at was C++ vision processing with OpenCV. Recently I realized that even if we do get that working, there is PC implementation of NetworkTables in C++, so I decided to try and get that working, even if we use Java or Python for vision processing.

I pulled the sources from WPILib, from the networktables/, networktables2/, and tables/ directories, created Synchronized.h and Synchronized.cpp, made a few minor modifications, and it works pretty well on my Linux box. I only tested the server side, and using WPILib’s TableViewer verified it works. I haven’t tested the client side yet.

Anyway, chances are most won’t find this useful since it looks like most vision processing is done with Java through SmartDashboard, or python, or LabView, but I thought I’d put this up here in case someone finds it useful.

Here is the link:

Yup, with the right changes, the WPILib implementation works for client and server, on Windows and on Linux.

Python bindings (which are a wrapper around the C++ implementation) here: