Austin Shalit
f5b1028b5a
Fix race conditions in command tests by increasing the delay time ( #1178 )
2018-07-08 12:39:15 -07:00
David Vo
ad3e2d7d3b
Make HAL headers C-compatible ( #1177 )
...
Also fix the return type of HAL_IsNewControlData() and HAL_MatchType's type.
Since UsageReporting is intended to be namespaced, it is hidden when this is being used in C.
Fixes : #476
Closes : #535
Ref: #1122
2018-07-07 22:18:03 -07:00
Thad House
3818a8b3b6
Update to gradle 4.8.1 ( #1174 )
2018-07-04 09:41:18 -07:00
Thad House
59e8b60267
Add HAL Documentation ( #1132 )
2018-07-04 00:18:18 -07:00
Peter Johnson
de5d7d3c17
Only use priority_mutex on RoboRIO by default. ( #1172 )
...
On all Linux platforms it can be specifically requested by defining
WPI_USE_PRIORITY_MUTEX.
2018-07-03 20:35:07 -07:00
Jeremy White
ebd41fe0bb
Bring back the gazebo plugins ( #1063 )
...
The models and meshes are not included. We will need
to find an alternate way to reintegrate these and use them.
* Add simulation/gz_msgs back, and build with Gradle.
* Add back in the frc simulation plugins for gazebo.
* Add a new shared library, halsim_gazebo.
This library will become the interface between the
HAL sim layer and gazebo.
* Preserve the first channel number used in created Encoders in the Sim MockData.
This allows us to use the DIO channel number to connect with simulated encoders.
* Have the HAL Simulator set the reverse direction on creation.
This enables a simulator to be aware of the direction.
* Add a drive_motor plugin.
This is a bit of a 'magic' motor, which allows us to build robot
models that drive in a more realistic fashion. It does this
by apply forces directly to the chassis, rather than relying on
the complex motion dynamics of a driven wheel.
This in turn allows the model to reduce wheel friction,
reducing scrub, and allowing for a more natural driving experience.
2018-06-30 00:45:21 -07:00
Peter Johnson
70960b0251
Signal: rename Signal to Signal_mt and Signal_st to Signal.
...
The single-threaded version is fine for most of the use cases we're planning
on, and is half the size on most platforms.
2018-06-30 00:21:09 -07:00
Peter Johnson
c8afe9bc2f
Signal: Optimize to use plain std::function.
...
This optimizes the common case of a single simple callback (e.g. std::function
or lambda) so no additional allocation is required. As a Connection return
value is not possible in this case, provide a separate connect_connection()
function to provide that.
2018-06-30 00:21:09 -07:00
Peter Johnson
1ecaaafa6c
Discuss and include licenses for third party software. ( #1101 )
2018-06-29 11:06:43 -07:00
Thad House
33a01b3146
Add maven documentation ( #1140 )
2018-06-28 20:07:31 -07:00
Austin Shalit
1d8456e2bf
Move FRCNetComm.java into generated directory ( #1168 )
2018-06-28 13:37:14 -07:00
Peter Johnson
b5bacc09a7
libuv: Silence cast-function-type warning on GCC 8. ( #1169 )
...
GCC 8 treats void(*)(void) specially to silence the warning.
2018-06-28 00:33:24 -07:00
Peter Johnson
876c650471
wpiutil: Add a signal-slot implementation. ( #1163 )
...
Imported from https://github.com/palacaze/sigslot
Classes were renamed from lowercase_me to UppercaseMe style, primarily
to avoid conflicting with the C standard library "signal" function. They
were also moved to the "wpi::sig" namespace.
2018-06-27 23:01:17 -07:00
Austin Shalit
3eae079db4
Add PDP usage reporting ( #1167 )
2018-06-24 23:48:22 -07:00
Peter Johnson
122fdf48b2
libuv: Hook up to build.
2018-06-24 10:31:55 -07:00
Peter Johnson
d94f49b3ba
libuv: Silence clang compiler warning in uv-common.c
2018-06-24 10:31:55 -07:00
Peter Johnson
39670fc9c0
libuv: Add pragmas for win32 libraries.
2018-06-24 10:31:55 -07:00
Peter Johnson
6f0d50b9cb
libuv: Avoid conditional-true compiler warning.
...
Instead use a preprocessor macro to comment out the code as necessary.
2018-06-24 10:31:55 -07:00
Peter Johnson
873b2ed13c
libuv: Add missing casts.
2018-06-24 10:31:55 -07:00
Peter Johnson
321c144d21
libuv: Remove extern "C" from uv.h.
...
This results in name-mangling of the uv symbols and thereby avoids potential
symbol conflicts with system libuv installations.
2018-06-24 10:31:55 -07:00
Peter Johnson
13e1af259c
libuv: Remove MSVC 2008 stdint from uv.h and uv-win.h.
2018-06-24 10:31:55 -07:00
Peter Johnson
9d7792ead0
libuv: Remove aix, os390, and sunos from uv-unix.h.
2018-06-24 10:31:55 -07:00
Peter Johnson
6d93d3c250
libuv: Rename source files from .c to .cpp.
...
This ensures they will actually get compiled as C++.
2018-06-24 10:31:55 -07:00
Peter Johnson
156822dbc8
Import libuv 1.21.0.
2018-06-24 10:31:55 -07:00
Peter Johnson
208f82d6f2
Revert "Add libuv dependency ( #1109 )"
...
This reverts commit 859b457c3d .
2018-06-24 10:31:55 -07:00
Tyler Veness
a818c7fd47
Add loop timing to IterativeRobot and TimedRobot ( #781 )
2018-06-24 00:29:21 -07:00
Austin Shalit
50b13d2f36
Convert UnitTestUtility to a JUnit 5 MockHardwareExtension ( #1153 )
...
Only initialize the HAL once.
2018-06-24 00:19:45 -07:00
Tyler Veness
b7807bf9d2
Clean up Command container iteration code ( #73 )
2018-06-23 17:41:45 -07:00
Peter Johnson
ea7d11b1db
Twine: Make isNull() public. ( #1162 )
...
This makes it possible to pass "null" Twines and detect it in the callee.
2018-06-23 16:13:50 -07:00
Tyler Veness
212f378d08
Replace globalError in ErrorBase with a global set of all errors ( #615 )
2018-06-18 00:13:28 -07:00
Thad House
2faba39b58
Change wpilibc artifact name to match standard ( #1158 )
2018-06-17 20:28:43 -07:00
Thad House
064989f2e4
Fix projects having different version numbers ( #1113 )
2018-06-17 19:59:49 -07:00
Thad House
6b1b4796c2
Remove Link Script ( #1159 )
...
This is no longer required due to the move to GradleRIO (it was only used for Eclipse).
2018-06-17 19:52:18 -07:00
Thad House
1ebb83e0f2
Remove explicit close() from Gyro interface ( #1152 )
...
It's not needed, as extending AutoClosable is enough.
2018-06-11 15:02:50 -07:00
Austin Shalit
9108a93598
Switch non-integration tests to JUnit 5 ( #1120 )
2018-06-11 15:01:49 -07:00
Thad House
c7e97f45f5
Add RobotPeriodic functions to default templates. ( #1149 )
2018-06-10 20:16:54 -07:00
Thad House
5af85dd1bb
Explicitly states the gyro direction contract for the Gyro interface ( #1151 )
2018-06-10 20:13:36 -07:00
Thad House
b20158015c
Update java robot class docs ( #1150 )
2018-06-10 20:12:41 -07:00
PJ Reiniger
b1bb63f9a4
Add ADX Simulator tests ( #1142 )
2018-06-08 13:25:39 -07:00
Thad House
056e68f2ae
Use new CAN API for PDP ( #1081 )
2018-06-07 22:31:26 -07:00
Thad House
f6e4df6a18
Remove OS Serial Port ( #1141 )
...
It was done as a shim fix around some VISA issues that don't seem to exist anymore. Was never really tested, and I don't think ever actually worked.
2018-06-07 20:51:26 -07:00
Thad House
0cde67143a
Upgrade to gradle 4.8 ( #1136 )
2018-06-07 20:49:25 -07:00
Thad House
1f9645afe9
Fix CAN API reads ( #1139 )
2018-06-07 20:49:03 -07:00
Thad House
86285b427f
Removes MSVC 2013 Shims ( #1130 )
...
We have done things recently that have broken any builds before VS 2015
2018-06-03 17:16:51 -07:00
Austin Shalit
e548a5f705
Update and enable PMD 6.3.0 ( #1107 )
2018-06-03 10:00:53 -07:00
Thad House
8eafe7f325
Solve some safety issues with RPCs ( #1127 )
...
Java would never properly dispose, and C++'s were easy to respond after disposing.
We now return a bool if the call was successful or not.
2018-06-03 08:43:48 -07:00
Peter Johnson
6aebba5452
Import MapVector from LLVM. ( #1128 )
2018-06-03 08:39:14 -07:00
Peter Johnson
664a3c2463
ntcore: Fix C API polling array returns. ( #1126 )
...
The implementation of ConvertToC for arrays was broken. Also change it
to be templated on the returned array type, rather than passing the array.
This makes the uses a bit more clean.
2018-06-01 13:45:33 -07:00
Tyler Veness
321dfaf0a2
Remove non-existent directory from .styleguide ( #1124 )
2018-06-01 09:36:12 -07:00
Tyler Veness
8373e0361b
Made Controller interface public ( #1123 )
2018-06-01 01:00:24 -07:00