Merge "Fixed the package for CANJaguar.java"

This commit is contained in:
Brad Miller (WPI)
2014-05-21 10:21:11 -07:00
committed by Gerrit Code Review

View File

@@ -5,7 +5,7 @@
/* the project. */
/*----------------------------------------------------------------------------*/
package com.first.team190.robot;
package edu.wpi.first.wpilibj;
import java.nio.ByteBuffer;
import java.nio.ByteOrder;
@@ -29,7 +29,7 @@ import edu.wpi.first.wpilibj.tables.ITable;
import edu.wpi.first.wpilibj.tables.ITableListener;
public class CANJaguar implements MotorSafety, PIDOutput, SpeedController, LiveWindowSendable {
public static final int kMaxMessageDataSize = 8; // XXX: Where does this come from?
// The internal PID control loop in the Jaguar runs at 1kHz.
@@ -423,7 +423,7 @@ public class CANJaguar implements MotorSafety, PIDOutput, SpeedController, LiveW
return 0.0;
}
public void setNoAck(float value, byte syncGroup) throws CANTimeoutException {
int messageID;
byte[] dataBuffer = new byte[8];
@@ -464,16 +464,16 @@ public class CANJaguar implements MotorSafety, PIDOutput, SpeedController, LiveW
default:
return;
}
if (syncGroup != 0) {
dataBuffer[dataSize] = syncGroup;
dataSize++;
}
synchronized(m_transactionMutex) {
sendMessage(messageID | m_deviceNumber, dataBuffer, dataSize);
}
m_safetyHelper.feed();
}
@@ -606,13 +606,13 @@ public class CANJaguar implements MotorSafety, PIDOutput, SpeedController, LiveW
trustedBuffer.put(j+2, data[j]);
}
ByteBuffer status = ByteBuffer.allocateDirect(4);
// set the byte order
status.order(ByteOrder.LITTLE_ENDIAN);
status.asIntBuffer().put(0,dataSize+2);
CANJNI.FRCNetworkCommunicationJaguarCANDriverSendMessage(messageID, trustedBuffer, status.asIntBuffer());
return;
}
@@ -622,13 +622,13 @@ public class CANJaguar implements MotorSafety, PIDOutput, SpeedController, LiveW
// set the byte order
status.order(ByteOrder.LITTLE_ENDIAN);
status.asIntBuffer().put(0,dataSize);
ByteBuffer dataBuffer = null;
if( dataSize > 0)
{
dataBuffer = ByteBuffer.allocateDirect(dataSize);
dataBuffer.put(data);
}
}
CANJNI.FRCNetworkCommunicationJaguarCANDriverSendMessage(messageID, dataBuffer, status.asIntBuffer());
@@ -646,18 +646,18 @@ public class CANJaguar implements MotorSafety, PIDOutput, SpeedController, LiveW
ByteBuffer status = ByteBuffer.allocateDirect(4);
// set the byte order
status.order(ByteOrder.LITTLE_ENDIAN);
ByteBuffer messageIDBuffer = ByteBuffer.allocateDirect(4);
messageIDBuffer.order(ByteOrder.LITTLE_ENDIAN);
messageIDBuffer.asIntBuffer().put(0,messageID);
ByteBuffer dataBuffer = CANJNI.FRCNetworkCommunicationJaguarCANDriverReceiveMessage(
messageIDBuffer.asIntBuffer(), (int) (timeout*1000), status.asIntBuffer());
CANExceptionFactory.checkStatus(status.asIntBuffer().get(0), messageID);
byte returnValue = 0;
if( dataBuffer != null )
{
returnValue = (byte)dataBuffer.capacity();
@@ -666,7 +666,7 @@ public class CANJaguar implements MotorSafety, PIDOutput, SpeedController, LiveW
data[index] = dataBuffer.get(index);
}
}
return returnValue;
}