package edu.wpi.first.wpilibj; import com.iismathwizard.jrio.exceptions.ModuleDoesNotExistException; import com.iismathwizard.jrio.jRIO; import edu.wpi.first.wpilibj.communication.ModulePresence; import edu.wpi.first.wpilibj.livewindow.LiveWindowSendable; import edu.wpi.first.wpilibj.parsing.IInputOutput; /** * User: IisMathwizard * Date: 10/10/13 * Time: 11:18 AM */ public class DigitalInput extends DigitalSource implements IInputOutput, LiveWindowSendable { private boolean value; private int moduleNumber, channel; public DigitalInput(int channel) { this(1, channel); } public DigitalInput(int moduleNumber, int channel) { channel --; try { if(jRIO.hasModule(ModulePresence.ModuleType.kDigital, moduleNumber) && jRIO.getModule(ModulePresence.ModuleType.kDigital, moduleNumber) instanceof DigitalModule) { DigitalModule dMod = (DigitalModule) jRIO.getModule(ModulePresence.ModuleType.kDigital, moduleNumber); if(dMod.slots[channel] == null) { dMod.slots[channel] = this; } } } catch (ModuleDoesNotExistException e) { System.out.println("Default digital module couldn't be found."); e.printStackTrace(); } this.channel = channel; this.moduleNumber = moduleNumber; } @Override public int getModuleForRouting() { return 0; //To change body of implemented methods use File | Settings | File Templates. } @Override public int getChannelForRouting() { return 0; //To change body of implemented methods use File | Settings | File Templates. } public boolean get() { return value; } /** * IGNORE THIS METHOD; FOR jRIO USE ONLY * @param value value to set */ protected void $_setValue(boolean value) { this.value = value; } }