Adds JNI call to get CANStatus (#677)

Call already existed in the HAL.
This commit is contained in:
Thad House
2017-10-21 15:32:05 -07:00
committed by Peter Johnson
parent 9dc1de1d09
commit a1ea448406
7 changed files with 144 additions and 0 deletions

View File

@@ -125,4 +125,29 @@ Java_edu_wpi_first_wpilibj_can_CANJNI_FRCNetCommCANSessionMuxReceiveMessage(
static_cast<size_t>(dataSize)});
}
/*
* Class: edu_wpi_first_wpilibj_can_CANJNI
* Method: GetCANStatus
* Signature: (Ledu/wpi/first/wpilibj/can/CANStatus;)V
*/
JNIEXPORT void JNICALL Java_edu_wpi_first_wpilibj_can_CANJNI_GetCANStatus
(JNIEnv *env, jclass, jobject canStatus) {
CANJNI_LOG(logDEBUG)
<< "Calling CANJNI HAL_CAN_GetCANStatus";
float percentBusUtilization = 0;
uint32_t busOffCount = 0;
uint32_t txFullCount = 0;
uint32_t receiveErrorCount = 0;
uint32_t transmitErrorCount = 0;
int32_t status = 0;
HAL_CAN_GetCANStatus(&percentBusUtilization, &busOffCount, &txFullCount,
&receiveErrorCount, &transmitErrorCount, &status);
if (!CheckStatus(env, status)) return;
SetCanStatusObject(env, canStatus, percentBusUtilization, busOffCount,
txFullCount, receiveErrorCount, transmitErrorCount);
}
} // extern "C"