/** * Return the TriggerState output of the analog trigger. * True if above upper limit. * False if below lower limit. * If in Hysteresis, maintain previous state. * @return True if above upper limit. False if below lower limit. If in Hysteresis, maintain previous state. */ bool AnalogTrigger::GetTriggerState() { if (StatusIsFatal()) return false; int32_t status = 0; bool result = getAnalogTriggerTriggerState(m_trigger, &status); wpi_setErrorWithContext(status, getHALErrorMessage(status)); return result; }
/* * Class: edu_wpi_first_wpilibj_hal_AnalogJNI * Method: getAnalogTriggerTriggerState * Signature: (Ljava/nio/ByteBuffer;Ljava/nio/IntBuffer;)B */ JNIEXPORT jbyte JNICALL Java_edu_wpi_first_wpilibj_hal_AnalogJNI_getAnalogTriggerTriggerState (JNIEnv * env, jclass, jobject id, jobject status) { void ** javaId = (void**)env->GetDirectBufferAddress(id); ANALOGJNI_LOG(logDEBUG) << "Analog Trigger Ptr = " << *javaId; jint * statusPtr = (jint*)env->GetDirectBufferAddress(status); ANALOGJNI_LOG(logDEBUG) << "Status Ptr = " << statusPtr; return getAnalogTriggerTriggerState( *javaId, statusPtr ); }