mirror of
https://github.com/wpilibsuite/allwpilib
synced 2026-06-20 00:51:42 +00:00
38 lines
1.5 KiB
Org Mode
38 lines
1.5 KiB
Org Mode
|
|
|
||
|
|
* Purpose
|
||
|
|
NetworkTables is a HashTable synchronized across the network. It
|
||
|
|
provides a simple interface for sharing numbers, booleans, strings
|
||
|
|
and homogeneous arrays of those components between the robot,
|
||
|
|
driverstation, co-processor and any other computer teams wish to
|
||
|
|
have provide or consume data.
|
||
|
|
|
||
|
|
* Contributing
|
||
|
|
1. Checkout
|
||
|
|
2. Edit
|
||
|
|
3. Commit
|
||
|
|
4. Push using =git push origin HEAD:refs/for/master=
|
||
|
|
5. Wait for code review, checking for comments.
|
||
|
|
|
||
|
|
* Editing
|
||
|
|
You can always use any text editor and then build with Maven. Eclipse
|
||
|
|
support works well with the m2eclipse plugin. Individual components
|
||
|
|
may have there own project files.
|
||
|
|
|
||
|
|
* Building with Maven
|
||
|
|
Currently, Maven only builds NetworkTables Java and C++. The various
|
||
|
|
table viewer projects have not been migrated yet.
|
||
|
|
|
||
|
|
There are multiple build targets that NetworkTables supports. To build
|
||
|
|
it, it is assumed that the toolchains have been setup as described in
|
||
|
|
the WPILib development documentation. In both Java and C++ there are
|
||
|
|
three build targets, Desktop, Azalea and Athena. For Java the Athena
|
||
|
|
and Desktop builds are identical. Building the Desktop versions will
|
||
|
|
run UnitTests on the platform.
|
||
|
|
|
||
|
|
1. =cd= into the root directory if you want to build both languages.
|
||
|
|
Otherwise, =cd= into the language you want to build.
|
||
|
|
2. Run =mvn install= if you want to build and install everything.
|
||
|
|
3. That's it. You can build only for a specific platform by using
|
||
|
|
Maven profiles. For example, just add =-Pdesktop= when developing
|
||
|
|
to run the unit tests without compiling for other platforms.
|