View Single Post
  #3   Spotlight this post!  
Unread 25-06-2016, 14:54
euhlmann's Avatar
euhlmann euhlmann is offline
CTO, Programmer
AKA: Erik Uhlmann
FRC #2877 (LigerBots)
Team Role: Leadership
 
Join Date: Dec 2015
Rookie Year: 2015
Location: United States
Posts: 298
euhlmann has much to be proud ofeuhlmann has much to be proud ofeuhlmann has much to be proud ofeuhlmann has much to be proud ofeuhlmann has much to be proud ofeuhlmann has much to be proud ofeuhlmann has much to be proud ofeuhlmann has much to be proud of
Re: Network Tables with c++

I'll assume your C++ project is not built with WPILib.

First, git clone the NetworkTables repository: https://github.com/wpilibsuite/ntcore
Then build it for whatever you're running this on (arm or native) with gradle. See the readme file for how.
Then, find the static library file for whatever you built it for. For example, a x64 native build would be located at ntcore\native\build\binaries\ntcoreStaticLibrary\x 64\ntcore.lib
Also find the includes folder at ntcore\include

Now you're ready to use it in your C++ project. Add the includes folder as an include path, the folder containing ntcore.lib as a library path, and tell the linker to use ntcore as a library (-lntcore on GCC)

Then in your cpp file add these includes
Code:
#include <ntcore.h>
#include <networktables/NetworkTable.h>
Documentation for NetworkTable is included in WPILib documentation here: http://first.wpi.edu/FRC/roborio/rel...workTable.html

For example, to publish a string value to the roboRIO's SmartDashboard you can do
Code:
#include <ntcore.h>
#include <networktables/NetworkTable.h>
using std::shared_ptr;
int main() {
    NetworkTable::SetClientMode();
    NetworkTable::SetIPAddress("10.te.am.2");
    NetworkTable::Initialize();
    shared_ptr<NetworkTable> myTable = NetworkTable::GetTable("SmartDashboard");
    myTable->PutString("ExampleString", "Sample Text");
    NetworkTable::Shutdown();
    return 0;
}
__________________
Creator of SmartDashboard.js, an extensible nodejs/webkit replacement for SmartDashboard


https://ligerbots.org
Reply With Quote