001package edu.wpi.first.wpilibj.hal;
002
003import java.nio.IntBuffer;
004import java.nio.ByteBuffer;
005
006import edu.wpi.first.wpilibj.SensorBase;
007
008
009public class PWMJNI extends DIOJNI {
010        public static native boolean allocatePWMChannel(ByteBuffer digital_port_pointer, IntBuffer status);
011        public static native void freePWMChannel(ByteBuffer digital_port_pointer, IntBuffer status);
012        public static native void setPWM(ByteBuffer digital_port_pointer, short value, IntBuffer status);
013        public static native short getPWM(ByteBuffer digital_port_pointer, IntBuffer status);
014        public static native void latchPWMZero(ByteBuffer digital_port_pointer, IntBuffer status);
015        public static native void setPWMPeriodScale(ByteBuffer digital_port_pointer, int squelchMask, IntBuffer status);
016        public static native ByteBuffer allocatePWM(IntBuffer status);
017        public static native void freePWM(ByteBuffer pwmGenerator, IntBuffer status);
018        public static native void setPWMRate(double rate, IntBuffer status);
019        public static native void setPWMDutyCycle(ByteBuffer pwmGenerator, double dutyCycle, IntBuffer status);
020        public static native void setPWMOutputChannel(ByteBuffer pwmGenerator, int pin, IntBuffer status);
021}