Files
allwpilib/hal/src/main/native/cpp/jni/simulation/AnalogInDataJNI.cpp

128 lines
3.6 KiB
C++
Raw Normal View History

// Copyright (c) FIRST and other WPILib contributors.
// Open Source Software; you can modify and/or share it under the terms of
// the WPILib BSD license file in the root directory of this project.
#include <jni.h>
#include "CallbackStore.hpp"
2025-11-07 19:55:43 -05:00
#include "org_wpilib_hardware_hal_simulation_AnalogInDataJNI.h"
2025-11-07 19:56:21 -05:00
#include "wpi/hal/simulation/AnalogInData.h"
2025-11-07 20:00:05 -05:00
using namespace wpi::hal;
extern "C" {
2018-05-13 17:09:56 -07:00
/*
2025-11-07 19:55:43 -05:00
* Class: org_wpilib_hardware_hal_simulation_AnalogInDataJNI
2018-05-13 17:09:56 -07:00
* Method: registerInitializedCallback
* Signature: (ILjava/lang/Object;Z)I
*/
JNIEXPORT jint JNICALL
2025-11-07 19:55:43 -05:00
Java_org_wpilib_hardware_hal_simulation_AnalogInDataJNI_registerInitializedCallback
2018-05-13 17:09:56 -07:00
(JNIEnv* env, jclass, jint index, jobject callback, jboolean initialNotify)
{
return sim::AllocateCallback(env, index, callback, initialNotify,
&HALSIM_RegisterAnalogInInitializedCallback);
}
2018-05-13 17:09:56 -07:00
/*
2025-11-07 19:55:43 -05:00
* Class: org_wpilib_hardware_hal_simulation_AnalogInDataJNI
2018-05-13 17:09:56 -07:00
* Method: cancelInitializedCallback
* Signature: (II)V
*/
JNIEXPORT void JNICALL
2025-11-07 19:55:43 -05:00
Java_org_wpilib_hardware_hal_simulation_AnalogInDataJNI_cancelInitializedCallback
2018-05-13 17:09:56 -07:00
(JNIEnv* env, jclass, jint index, jint handle)
{
return sim::FreeCallback(env, handle, index,
&HALSIM_CancelAnalogInInitializedCallback);
}
2018-05-13 17:09:56 -07:00
/*
2025-11-07 19:55:43 -05:00
* Class: org_wpilib_hardware_hal_simulation_AnalogInDataJNI
2018-05-13 17:09:56 -07:00
* Method: getInitialized
* Signature: (I)Z
*/
JNIEXPORT jboolean JNICALL
2025-11-07 19:55:43 -05:00
Java_org_wpilib_hardware_hal_simulation_AnalogInDataJNI_getInitialized
2018-05-13 17:09:56 -07:00
(JNIEnv*, jclass, jint index)
{
return HALSIM_GetAnalogInInitialized(index);
}
2018-05-13 17:09:56 -07:00
/*
2025-11-07 19:55:43 -05:00
* Class: org_wpilib_hardware_hal_simulation_AnalogInDataJNI
2018-05-13 17:09:56 -07:00
* Method: setInitialized
* Signature: (IZ)V
*/
JNIEXPORT void JNICALL
2025-11-07 19:55:43 -05:00
Java_org_wpilib_hardware_hal_simulation_AnalogInDataJNI_setInitialized
2018-05-13 17:09:56 -07:00
(JNIEnv*, jclass, jint index, jboolean value)
{
HALSIM_SetAnalogInInitialized(index, value);
}
2018-05-13 17:09:56 -07:00
/*
2025-11-07 19:55:43 -05:00
* Class: org_wpilib_hardware_hal_simulation_AnalogInDataJNI
2018-05-13 17:09:56 -07:00
* Method: registerVoltageCallback
* Signature: (ILjava/lang/Object;Z)I
*/
JNIEXPORT jint JNICALL
2025-11-07 19:55:43 -05:00
Java_org_wpilib_hardware_hal_simulation_AnalogInDataJNI_registerVoltageCallback
2018-05-13 17:09:56 -07:00
(JNIEnv* env, jclass, jint index, jobject callback, jboolean initialNotify)
{
return sim::AllocateCallback(env, index, callback, initialNotify,
&HALSIM_RegisterAnalogInVoltageCallback);
}
2018-05-13 17:09:56 -07:00
/*
2025-11-07 19:55:43 -05:00
* Class: org_wpilib_hardware_hal_simulation_AnalogInDataJNI
2018-05-13 17:09:56 -07:00
* Method: cancelVoltageCallback
* Signature: (II)V
*/
JNIEXPORT void JNICALL
2025-11-07 19:55:43 -05:00
Java_org_wpilib_hardware_hal_simulation_AnalogInDataJNI_cancelVoltageCallback
2018-05-13 17:09:56 -07:00
(JNIEnv* env, jclass, jint index, jint handle)
{
return sim::FreeCallback(env, handle, index,
&HALSIM_CancelAnalogInVoltageCallback);
}
2018-05-13 17:09:56 -07:00
/*
2025-11-07 19:55:43 -05:00
* Class: org_wpilib_hardware_hal_simulation_AnalogInDataJNI
2018-05-13 17:09:56 -07:00
* Method: getVoltage
* Signature: (I)D
*/
JNIEXPORT jdouble JNICALL
2025-11-07 19:55:43 -05:00
Java_org_wpilib_hardware_hal_simulation_AnalogInDataJNI_getVoltage
2018-05-13 17:09:56 -07:00
(JNIEnv*, jclass, jint index)
{
return HALSIM_GetAnalogInVoltage(index);
}
2018-05-13 17:09:56 -07:00
/*
2025-11-07 19:55:43 -05:00
* Class: org_wpilib_hardware_hal_simulation_AnalogInDataJNI
2018-05-13 17:09:56 -07:00
* Method: setVoltage
* Signature: (ID)V
*/
JNIEXPORT void JNICALL
2025-11-07 19:55:43 -05:00
Java_org_wpilib_hardware_hal_simulation_AnalogInDataJNI_setVoltage
2018-05-13 17:09:56 -07:00
(JNIEnv*, jclass, jint index, jdouble value)
{
HALSIM_SetAnalogInVoltage(index, value);
}
2018-05-13 17:09:56 -07:00
/*
2025-11-07 19:55:43 -05:00
* Class: org_wpilib_hardware_hal_simulation_AnalogInDataJNI
2018-05-13 17:09:56 -07:00
* Method: resetData
* Signature: (I)V
*/
JNIEXPORT void JNICALL
2025-11-07 19:55:43 -05:00
Java_org_wpilib_hardware_hal_simulation_AnalogInDataJNI_resetData
2018-05-13 17:09:56 -07:00
(JNIEnv*, jclass, jint index)
{
HALSIM_ResetAnalogInData(index);
}
} // extern "C"