001 // Copyright (c) National Instruments 2009. All Rights Reserved.
002 // Do Not Edit... this file is generated!
003
004 package edu.wpi.first.wpilibj.fpga;
005
006 import com.ni.rio.*;
007
008 public class tSolenoid extends tSystem
009 {
010
011 public tSolenoid()
012 {
013 super();
014
015 }
016
017 protected void finalize()
018 {
019 super.finalize();
020 }
021
022 public static final int kNumSystems = 1;
023
024
025
026
027
028 //////////////////////////////////////////////////////////////////////////////////////////////////
029 // Accessors for DO7_0
030 //////////////////////////////////////////////////////////////////////////////////////////////////
031 public static final int kDO7_0_NumElements = 2;
032 public static final int kDO7_0_ElementSize = 8;
033 public static final int kDO7_0_ElementMask = 0xFF;
034 private static final int kSolenoid_DO7_0_Address = 0x8144;
035
036 public static void writeDO7_0(final int bitfield_index, final int value)
037 {
038 if (status.isNotFatal() && bitfield_index >= kDO7_0_NumElements)
039 {
040 status.setStatus(NiRioStatus.kRIOStatusBadSelector);
041 }
042
043 int regValue = NiFpga.readU32(m_DeviceHandle, kSolenoid_DO7_0_Address, status);
044 regValue &= ~(kDO7_0_ElementMask << ((kDO7_0_NumElements - 1 - bitfield_index) * kDO7_0_ElementSize));
045 regValue |= ((value & kDO7_0_ElementMask) << ((kDO7_0_NumElements - 1 - bitfield_index) * kDO7_0_ElementSize));
046 NiFpga.writeU32(m_DeviceHandle, kSolenoid_DO7_0_Address, regValue, status);
047 }
048 public static short readDO7_0(final int bitfield_index)
049 {
050 if (status.isNotFatal() && bitfield_index >= kDO7_0_NumElements)
051 {
052 status.setStatus(NiRioStatus.kRIOStatusBadSelector);
053 }
054
055 int result = NiFpga.readU32(m_DeviceHandle, kSolenoid_DO7_0_Address, status);
056 int arrayElementValue = ((result)
057 >>> ((kDO7_0_NumElements - 1 - bitfield_index) * kDO7_0_ElementSize)) & kDO7_0_ElementMask;
058 return (short)((arrayElementValue) & 0x000000FF);
059 }
060
061
062
063
064 }