Switches Counters to Handles (#123)

This commit is contained in:
Thad House
2016-07-01 00:29:08 -07:00
committed by Peter Johnson
parent 47694ef810
commit 0f105a26f7
9 changed files with 323 additions and 216 deletions

View File

@@ -65,7 +65,7 @@ public class Counter extends SensorBase implements CounterBase, LiveWindowSendab
protected DigitalSource m_downSource; // /< What makes the counter count down.
private boolean m_allocatedUpSource;
private boolean m_allocatedDownSource;
private long m_counter; // /< The FPGA counter object.
private int m_counter; // /< The FPGA counter object.
private int m_index; // /< The index of this counter.
private PIDSourceType m_pidSource;
private double m_distancePerPulse; // distance of travel for each tick

View File

@@ -10,56 +10,56 @@ package edu.wpi.first.wpilibj.hal;
import java.nio.IntBuffer;
public class CounterJNI extends JNIWrapper {
public static native long initializeCounter(int mode, IntBuffer index);
public static native int initializeCounter(int mode, IntBuffer index);
public static native void freeCounter(long counterPointer);
public static native void freeCounter(int counterHandle);
public static native void setCounterAverageSize(long counterPointer, int size);
public static native void setCounterAverageSize(int counterHandle, int size);
public static native void setCounterUpSource(long counterPointer, int pin,
public static native void setCounterUpSource(int counterHandle, int pin,
boolean analogTrigger);
public static native void setCounterUpSourceEdge(long counterPointer, boolean risingEdge,
public static native void setCounterUpSourceEdge(int counterHandle, boolean risingEdge,
boolean fallingEdge);
public static native void clearCounterUpSource(long counterPointer);
public static native void clearCounterUpSource(int counterHandle);
public static native void setCounterDownSource(long counterPointer, int pin,
public static native void setCounterDownSource(int counterHandle, int pin,
boolean analogTrigger);
public static native void setCounterDownSourceEdge(long counterPointer, boolean risingEdge,
public static native void setCounterDownSourceEdge(int counterHandle, boolean risingEdge,
boolean fallingEdge);
public static native void clearCounterDownSource(long counterPointer);
public static native void clearCounterDownSource(int counterHandle);
public static native void setCounterUpDownMode(long counterPointer);
public static native void setCounterUpDownMode(int counterHandle);
public static native void setCounterExternalDirectionMode(long counterPointer);
public static native void setCounterExternalDirectionMode(int counterHandle);
public static native void setCounterSemiPeriodMode(long counterPointer,
public static native void setCounterSemiPeriodMode(int counterHandle,
boolean highSemiPeriod);
public static native void setCounterPulseLengthMode(long counterPointer, double threshold);
public static native void setCounterPulseLengthMode(int counterHandle, double threshold);
public static native int getCounterSamplesToAverage(long counterPointer);
public static native int getCounterSamplesToAverage(int counterHandle);
public static native void setCounterSamplesToAverage(long counterPointer,
public static native void setCounterSamplesToAverage(int counterHandle,
int samplesToAverage);
public static native void resetCounter(long counterPointer);
public static native void resetCounter(int counterHandle);
public static native int getCounter(long counterPointer);
public static native int getCounter(int counterHandle);
public static native double getCounterPeriod(long counterPointer);
public static native double getCounterPeriod(int counterHandle);
public static native void setCounterMaxPeriod(long counterPointer, double maxPeriod);
public static native void setCounterMaxPeriod(int counterHandle, double maxPeriod);
public static native void setCounterUpdateWhenEmpty(long counterPointer, boolean enabled);
public static native void setCounterUpdateWhenEmpty(int counterHandle, boolean enabled);
public static native boolean getCounterStopped(long counterPointer);
public static native boolean getCounterStopped(int counterHandle);
public static native boolean getCounterDirection(long counterPointer);
public static native boolean getCounterDirection(int counterHandle);
public static native void setCounterReverseDirection(long counterPointer,
public static native void setCounterReverseDirection(int counterHandle,
boolean reverseDirection);
}