Thad House
0068b6aea3
Remove wpilibj tests from wpilibjIntegrationTests ( #1323 )
...
Since the integration tests are still on junit 4, the wpilibj junit 5 tests fail.
2018-09-20 21:57:59 -07:00
Thad House
12c92a822d
Move deprecated ntcore classes to wpilibj jar ( #1322 )
...
Will allow for modularization
2018-09-20 21:50:30 -07:00
Thad House
d2a5aaafdd
Use external dependencies for NI and NetComm libraries ( #1304 )
...
This removes a number of large binary files from the repo and enables vendors
to depend on these libraries separately.
2018-09-19 21:57:58 -07:00
Tyler Veness
bedef476fd
Replace IterativeRobot in examples with TimedRobot ( #1310 )
...
Fixes #1309 .
2018-09-19 21:41:08 -07:00
Thad House
59386635e7
Add CAN API constructor that takes explicit manufacturer and device type ( #1311 )
...
Useful for vendors wanting to use the API and make their own device parameters
2018-09-19 21:40:47 -07:00
Thad House
a846ed062f
Add virtual destructor to CameraServerShared ( #1313 )
...
Fixes mac builds after update
2018-09-19 21:39:57 -07:00
Matt Soucy
8b5dc53cc7
Add Lambda support to InstantCommand ( #1262 )
2018-09-11 23:44:22 -07:00
Kay Kasemir
59700882f1
PIDController: Mention unit for 'period' ( #1305 )
2018-09-11 21:38:19 -07:00
Peter Johnson
025af24523
Make NetworkTableEntry.callRpc and createRpc public ( #1303 )
2018-09-08 21:19:14 -07:00
Peter Johnson
c0ff6198b3
Change hal sim to use spinlocks ( #1291 )
...
This makes callback registration completely thread safe.
This patch also uses templates and macros to dramatically reduce the amount of
manual boilerplate.
2018-09-03 16:08:07 -07:00
Peter Johnson
67b1c85315
Notifier: properly reset HAL alarm in non-periodic case ( #1296 )
...
The loop spins otherwise.
2018-09-03 16:07:23 -07:00
Tyler Veness
0b113ad9ce
Fix some PIDCommand constructors not forwarding subsystems ( #1299 )
...
Also added missing constructor to wpilibc's InstantCommand and renamed
argument from requirement to subsystem as per
https://github.com/wpilibsuite/allwpilib/pull/1275#issuecomment-416071940 .
2018-09-02 14:18:12 -07:00
Peter Johnson
c8482cd6d2
wpiutil: Add WebSocket implementation ( #1186 )
...
This is a RFC 6455 compliant implementation with both client and server support.
2018-08-24 20:54:23 -07:00
Peter Johnson
d6d5321828
wpiutil UidVector: Implement clear() and forward iterator ( #1293 )
...
The forward iterator only iterates over "live" elements.
Also add a couple of unit tests for UidVector.
2018-08-24 20:39:57 -07:00
Peter Johnson
8d91343bf5
wpiutil spinlock.h: Include STL mutex for convenience ( #1292 )
...
The STL mutex header defines classes like lock_guard and unique_lock.
2018-08-24 20:39:20 -07:00
PJ Reiniger
488ba79379
Add more checkstyle checks to simulator code ( #1289 )
2018-08-23 23:15:29 -07:00
PJ Reiniger
de212a9dd0
Add names to simulator components ( #1268 )
...
Makes configuration easier when you can associate the items with a name
instead of just a port number. Important if there is a GUI added at some
point.
2018-08-23 17:59:09 -07:00
Peter Johnson
8d8f120cc3
EventLoopRunner: Use AsyncFunction
2018-08-20 22:21:53 -07:00
Peter Johnson
57490e0002
Add uv::AsyncFunction to do a roundtrip function call to a uv::Async
...
This optionally blocks to wait for a return value.
2018-08-20 22:21:53 -07:00
Peter Johnson
1de1900dbb
Change uv::Async to accept data parameters
...
This is a breaking change as it makes Async a template (e.g. Async<> must
be used instead of just Async). When data parameters are provided, an
internal mutex and vector is used to hold the parameter packs until the loop
runs.
2018-08-20 22:21:53 -07:00
Peter Johnson
4a3e43d4a7
Add HttpMultipartScanner ( #1197 )
...
This is a non-blocking version of FindMultipartBoundary.
2018-08-20 22:00:54 -07:00
Peter Johnson
9e37ee13de
Add wpi::HttpServerConnection and an example of its use ( #1281 )
2018-08-20 13:11:39 -07:00
Peter Johnson
7b95c5341a
ntcore: Change params in Java RpcAnswer from String to byte[] ( #1280 )
...
The underlying protocol uses raw bytes, so they should not be required to be
a valid string.
2018-08-20 13:07:13 -07:00
Peter Johnson
5283726cce
ntcore: Describe RPC version 0 in spec ( #1279 )
2018-08-20 13:06:43 -07:00
Peter Johnson
0b8f4b5e6c
Add libdl to wpiutil cmake build ( #1288 )
...
This is required for dlopen, which is required by libuv.
2018-08-20 00:56:16 -07:00
Peter Johnson
a5f7342fce
Run cmake build in travis ( #1287 )
2018-08-20 00:55:54 -07:00
Peter Johnson
6df7425440
cmake: Compile cscore and wpiutil examples ( #1286 )
2018-08-19 23:22:52 -07:00
Peter Johnson
d7b68f3f95
Unbreak cmake build ( #1285 )
2018-08-19 23:21:51 -07:00
Matt Soucy
e28295fc7b
Add dependency injection of Subsystem to Command ( #1275 )
2018-08-19 19:43:21 -07:00
Peter Johnson
6df500e726
Add missing library dependencies in simulation dev executables ( #1284 )
2018-08-19 19:12:43 -07:00
Peter Johnson
83cfb8b19f
UrlParser: fix Has() functions ( #1283 )
2018-08-19 17:25:42 -07:00
Peter Johnson
82b25d0ec9
spinlock_bench.cpp: Fix wpiformat warning ( #1282 )
2018-08-19 17:25:20 -07:00
Peter Johnson
b44f27ddfa
SendableChooser: Rename addDefault and addObject for clarity ( #1239 )
...
Rename addDefault to setDefaultOption and addObject to addOption.
The old names are still available but are marked as deprecated.
2018-08-19 01:51:17 -07:00
Peter Johnson
fa78f30e30
ntcore: Make protocol revision more visible in docs ( #1278 )
...
Also add author line to correct document formatting.
2018-08-19 01:38:23 -07:00
Peter Johnson
46ae19d082
wpiutil: Add a mutex-compatible spinlock implementation ( #1272 )
...
Note this is only faster than mutex if compiler optimization is enabled.
2018-08-19 01:01:10 -07:00
Peter Johnson
77124a229e
Twine: disable part of isValid() that causes spurious warnings ( #1271 )
2018-08-16 19:35:40 -07:00
PJ Reiniger
1462a5bd46
Fix spacing and const correctness in sim ( #1269 )
2018-08-15 22:17:59 -07:00
Austin Shalit
44099d9a21
Update errorprone config for Java 10 ( #1265 )
2018-08-10 20:02:41 -07:00
PJ Reiniger
c2ceebfb9c
Add gyro and accelerometer simulator wrappers ( #1183 )
2018-08-01 21:39:20 -07:00
Peter Johnson
0a0d9245e2
cscore: Add connection strategy to sources ( #1252 )
...
By default, sources automatically manage their connection based on whether
any sinks are connected. This change allows the user to keep a connection
open or force it closed regardless of the number of connected sinks.
2018-07-29 21:18:45 -07:00
Jamie Sinn
7bd3f9f0bd
Change ButtonScheduler scope start method to public ( #1254 )
...
Fixes #765 .
2018-07-29 19:26:48 -07:00
Tyler Veness
4801ae2499
Replace ellipsis characters munged by wpiformat with three periods ( #1256 )
...
The Java LinearDigitalFilter class has already been changed.
2018-07-29 19:25:26 -07:00
Peter Johnson
0e9172f9a7
Fix many errorprone warnings ( #1247 )
...
This fixes two real bugs:
- TimedRobot had a m_period that was hiding the IterativeRobotBase m_period
and was not getting initialized.
- PDPSim was swapping two parameters to getCurrent()
2018-07-29 16:47:22 -07:00
Peter Johnson
6db5f80430
docs: Set use_mathjax to true ( #1251 )
...
This avoids depending on latex for HTML formula output.
2018-07-29 15:36:28 -07:00
Peter Johnson
898076f698
docs/build.gradle: Use unix EOL ( #1250 )
2018-07-29 15:14:37 -07:00
Peter Johnson
195e101816
cscore: Use Twine instead of StringRef in API ( #1244 )
2018-07-29 12:53:41 -07:00
Peter Johnson
97a8f8f47b
HAL: Add Doxygen module documentation ( #1246 )
...
This helps organize the functions in the generated docs.
2018-07-29 12:49:46 -07:00
Peter Johnson
9408fd5176
Add Doxygen comments for namespaces ( #1245 )
2018-07-29 12:49:28 -07:00
Thad House
00c2cd7dab
Improve JNI loading efficiency ( #1224 )
...
A hash is stored for each native library with the name libraryName.hash.
If the library is not found on the system search path, it is extracted to a cache directory.
Extracted libraries are named with the hash appended, so the library will not be
re-extracted if one with the same hash already exists.
Hashing without the hash file requires double traversing if the file is not in the cache,
but it is still faster than creating a new file in most cases. This won't be needed
after opencv is updated to provide a hash as well.
2018-07-29 10:20:41 -07:00
Austin Shalit
cbb62fb98f
Fix errorprone so it is version locked and reports warnings ( #1242 )
2018-07-29 09:32:22 -07:00