Exemple #1
0
/*
 * Class:     edu_wpi_first_wpilibj_hal_SolenoidJNI
 * Method:    freeSolenoidPort
 * Signature: (J)V
 */
JNIEXPORT void JNICALL Java_edu_wpi_first_wpilibj_hal_SolenoidJNI_freeSolenoidPort
  (JNIEnv *env, jclass, jlong id)
{
	SOLENOIDJNI_LOG(logDEBUG) << "Calling SolenoidJNI initializeSolenoidPort";

	SOLENOIDJNI_LOG(logDEBUG) << "Port Ptr = " << (void*)id;
	freeSolenoidPort((void*)id);
}
Exemple #2
0
/*
 * Class:     edu_wpi_first_wpilibj_hal_SolenoidJNI
 * Method:    setSolenoid
 * Signature: (JZ)V
 */
JNIEXPORT void JNICALL Java_edu_wpi_first_wpilibj_hal_SolenoidJNI_setSolenoid
  (JNIEnv *env, jclass, jlong solenoid_port, jboolean value)
{
	SOLENOIDJNI_LOG(logDEBUG) << "Calling SolenoidJNI SetSolenoid";
	
	SOLENOIDJNI_LOG(logDEBUG) << "Solenoid Port Pointer = " << (void*)solenoid_port;
	
	int32_t status = 0;
	setSolenoid((void*)solenoid_port, value, &status);
	CheckStatus(env, status);
}
Exemple #3
0
/*
 * Class:     edu_wpi_first_wpilibj_hal_SolenoidJNI
 * Method:    setSolenoid
 * Signature: (Ljava/nio/ByteBuffer;BLjava/nio/IntBuffer;)V
 */
JNIEXPORT void JNICALL Java_edu_wpi_first_wpilibj_hal_SolenoidJNI_setSolenoid
  (JNIEnv *env, jclass, jobject solenoid_port, jbyte value, jobject status)
{
	SOLENOIDJNI_LOG(logDEBUG) << "Calling SolenoidJNI SetSolenoid";
	
	VoidPointer *solenoid_port_pointer = (VoidPointer *)env->GetDirectBufferAddress(solenoid_port);
	SOLENOIDJNI_LOG(logDEBUG) << "Solenoid Port Pointer = " << *solenoid_port_pointer;
	
	jint *status_pointer = (jint*)env->GetDirectBufferAddress(status);
	SOLENOIDJNI_LOG(logDEBUG) << "Status Ptr = " << status_pointer;
	
	setSolenoid(*solenoid_port_pointer, value, status_pointer);
}
Exemple #4
0
/*
 * Class:     edu_wpi_first_wpilibj_hal_SolenoidJNI
 * Method:    initializeSolenoidPort
 * Signature: (Ljava/nio/ByteBuffer;Ljava/nio/IntBuffer;)V
 */
JNIEXPORT jobject JNICALL Java_edu_wpi_first_wpilibj_hal_SolenoidJNI_initializeSolenoidPort
  (JNIEnv *env, jclass, jobject port_pointer, jobject status)
{
	SOLENOIDJNI_LOG(logDEBUG) << "Calling SolenoidJNI initializeSolenoidPort";
	
	VoidPointer *port_pointer_pointer = (VoidPointer *)env->GetDirectBufferAddress(port_pointer);
	SOLENOIDJNI_LOG(logDEBUG) << "Port Ptr = " << *port_pointer_pointer;
	char *aschars = (char *)(*port_pointer_pointer);
	SOLENOIDJNI_LOG(logDEBUG) << '\t' << (int)aschars[0] << '\t' << (int)aschars[1] << std::endl;
	
	jint *status_pointer = (jint*)env->GetDirectBufferAddress(status);
	SOLENOIDJNI_LOG(logDEBUG) << "Status Ptr = " << status_pointer;
	
	VoidPointer *solenoid_port_pointer = new VoidPointer;
	*solenoid_port_pointer = initializeSolenoidPort(*port_pointer_pointer, status_pointer);
	
	SOLENOIDJNI_LOG(logDEBUG) << "Status = " << *status_pointer;
	SOLENOIDJNI_LOG(logDEBUG) << "Solenoid Port Pointer = " << *solenoid_port_pointer;
	
	int *asints = (int *)(*solenoid_port_pointer);
	SOLENOIDJNI_LOG(logDEBUG) << '\t' << asints[0] << '\t' << asints[1] << std::endl;
	
	return env->NewDirectByteBuffer(solenoid_port_pointer, 4);
}
Exemple #5
0
/*
 * Class:     edu_wpi_first_wpilibj_hal_SolenoidJNI
 * Method:    initializeSolenoidPort
 * Signature: (J)J
 */
JNIEXPORT jlong JNICALL Java_edu_wpi_first_wpilibj_hal_SolenoidJNI_initializeSolenoidPort
  (JNIEnv *env, jclass, jlong port_pointer)
{
	SOLENOIDJNI_LOG(logDEBUG) << "Calling SolenoidJNI initializeSolenoidPort";
	
	SOLENOIDJNI_LOG(logDEBUG) << "Port Ptr = " << (void*)port_pointer;
	char *aschars = (char *)port_pointer;
	SOLENOIDJNI_LOG(logDEBUG) << '\t' << (int)aschars[0] << '\t' << (int)aschars[1] << std::endl;
	
	int32_t status = 0;
	void* solenoid_port_pointer = initializeSolenoidPort((void*)port_pointer, &status);
	
	SOLENOIDJNI_LOG(logDEBUG) << "Status = " << status;
	SOLENOIDJNI_LOG(logDEBUG) << "Solenoid Port Pointer = " << solenoid_port_pointer;
	
	int *asints = (int *)solenoid_port_pointer;
	SOLENOIDJNI_LOG(logDEBUG) << '\t' << asints[0] << '\t' << asints[1] << std::endl;

	CheckStatus(env, status);
	return (jlong)solenoid_port_pointer;
}