[hal] Rename SimValueCallback2 to SimValueCallback (#3212)

This commit is contained in:
Peter Johnson
2021-03-21 23:22:04 -07:00
committed by GitHub
parent a6f6539691
commit 6137f98eb5
5 changed files with 14 additions and 94 deletions

View File

@@ -109,8 +109,6 @@ class DeviceCallbackStore {
class ValueCallbackStore {
public:
explicit ValueCallbackStore(bool dirCallback) : m_dirCallback{dirCallback} {}
void create(JNIEnv* env, jobject obj) { m_call = JGlobal<jobject>(env, obj); }
void performCallback(const char* name, HAL_SimValueHandle handle,
int32_t direction, const HAL_Value& value);
@@ -121,7 +119,6 @@ class ValueCallbackStore {
private:
wpi::java::JGlobal<jobject> m_call;
int32_t m_callbackId;
bool m_dirCallback;
};
} // namespace
@@ -181,17 +178,9 @@ void ValueCallbackStore::performCallback(const char* name,
}
auto [value1, value2] = ToValue12(value);
if (m_dirCallback) {
env->CallVoidMethod(m_call, simValueCallbackCallback,
MakeJString(env, name), static_cast<jint>(handle),
static_cast<jint>(direction),
static_cast<jint>(value.type), value1, value2);
} else {
env->CallVoidMethod(m_call, simValueCallbackCallback,
MakeJString(env, name), static_cast<jint>(handle),
static_cast<jboolean>(direction == HAL_SimValueOutput),
static_cast<jint>(value.type), value1, value2);
}
env->CallVoidMethod(m_call, simValueCallbackCallback, MakeJString(env, name),
static_cast<jint>(handle), static_cast<jint>(direction),
static_cast<jint>(value.type), value1, value2);
if (env->ExceptionCheck()) {
env->ExceptionDescribe();
@@ -266,12 +255,11 @@ using FreeValueCallbackFunc = void (*)(int32_t uid);
template <typename THandle>
static SIM_JniHandle AllocateValueCallback(
JNIEnv* env, THandle h, jobject callback, bool dirCallback,
jboolean initialNotify,
JNIEnv* env, THandle h, jobject callback, jboolean initialNotify,
int32_t (*createCallback)(THandle handle, void* param,
HALSIM_SimValueCallback callback,
HAL_Bool initialNotify)) {
auto callbackStore = std::make_shared<ValueCallbackStore>(dirCallback);
auto callbackStore = std::make_shared<ValueCallbackStore>();
auto handle = valueCallbackHandles->Allocate(callbackStore);
@@ -345,7 +333,7 @@ bool InitializeSimDeviceDataJNI(JNIEnv* env) {
}
simValueCallbackCallback = env->GetMethodID(
simValueCallbackCls, "callbackNative", "(Ljava/lang/String;IZIJD)V");
simValueCallbackCls, "callbackNative", "(Ljava/lang/String;IIIJD)V");
if (!simValueCallbackCallback) {
return false;
}
@@ -530,21 +518,7 @@ Java_edu_wpi_first_hal_simulation_SimDeviceDataJNI_registerSimValueCreatedCallba
(JNIEnv* env, jclass, jint device, jobject callback, jboolean initialNotify)
{
return AllocateValueCallback(env, static_cast<HAL_SimDeviceHandle>(device),
callback, false, initialNotify,
&HALSIM_RegisterSimValueCreatedCallback);
}
/*
* Class: edu_wpi_first_hal_simulation_SimDeviceDataJNI
* Method: registerSimValueCreatedCallback2
* Signature: (ILjava/lang/Object;Z)I
*/
JNIEXPORT jint JNICALL
Java_edu_wpi_first_hal_simulation_SimDeviceDataJNI_registerSimValueCreatedCallback2
(JNIEnv* env, jclass, jint device, jobject callback, jboolean initialNotify)
{
return AllocateValueCallback(env, static_cast<HAL_SimDeviceHandle>(device),
callback, true, initialNotify,
callback, initialNotify,
&HALSIM_RegisterSimValueCreatedCallback);
}
@@ -570,21 +544,7 @@ Java_edu_wpi_first_hal_simulation_SimDeviceDataJNI_registerSimValueChangedCallba
(JNIEnv* env, jclass, jint handle, jobject callback, jboolean initialNotify)
{
return AllocateValueCallback(env, static_cast<HAL_SimValueHandle>(handle),
callback, false, initialNotify,
&HALSIM_RegisterSimValueChangedCallback);
}
/*
* Class: edu_wpi_first_hal_simulation_SimDeviceDataJNI
* Method: registerSimValueChangedCallback2
* Signature: (ILjava/lang/Object;Z)I
*/
JNIEXPORT jint JNICALL
Java_edu_wpi_first_hal_simulation_SimDeviceDataJNI_registerSimValueChangedCallback2
(JNIEnv* env, jclass, jint handle, jobject callback, jboolean initialNotify)
{
return AllocateValueCallback(env, static_cast<HAL_SimValueHandle>(handle),
callback, true, initialNotify,
callback, initialNotify,
&HALSIM_RegisterSimValueChangedCallback);
}
@@ -610,7 +570,7 @@ Java_edu_wpi_first_hal_simulation_SimDeviceDataJNI_registerSimValueResetCallback
(JNIEnv* env, jclass, jint handle, jobject callback, jboolean initialNotify)
{
return AllocateValueCallback(env, static_cast<HAL_SimValueHandle>(handle),
callback, true, initialNotify,
callback, initialNotify,
&HALSIM_RegisterSimValueResetCallback);
}