001package edu.wpi.first.wpilibj.hal;
002
003import java.nio.IntBuffer;
004import java.nio.ByteBuffer;
005
006public class EncoderJNI extends JNIWrapper {
007        public static native ByteBuffer initializeEncoder(byte port_a_module, int port_a_pin, byte port_a_analog_trigger, byte port_b_module, int port_b_pin, byte port_b_analog_trigger, byte reverseDirection, IntBuffer index, IntBuffer status);
008        public static native void freeEncoder(ByteBuffer encoder_pointer, IntBuffer status);
009        public static native void resetEncoder(ByteBuffer encoder_pointer, IntBuffer status);
010        public static native int getEncoder(ByteBuffer encoder_pointer, IntBuffer status);
011        public static native double getEncoderPeriod(ByteBuffer encoder_pointer, IntBuffer status);
012        public static native void setEncoderMaxPeriod(ByteBuffer encoder_pointer, double maxPeriod, IntBuffer status);
013        public static native byte getEncoderStopped(ByteBuffer encoder_pointer, IntBuffer status);
014        public static native byte getEncoderDirection(ByteBuffer encoder_pointer, IntBuffer status);
015        public static native void setEncoderReverseDirection(ByteBuffer encoder_pointer, byte reverseDirection, IntBuffer status);
016        public static native void setEncoderSamplesToAverage(ByteBuffer encoder_pointer, int samplesToAverage, IntBuffer status);
017        public static native int getEncoderSamplesToAverage(ByteBuffer encoder_pointer, IntBuffer status);
018        public static native void setEncoderIndexSource(ByteBuffer digital_port, int pin, boolean analogTrigger, boolean activeHigh, boolean edgeSensitive, IntBuffer status);
019}