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 tAccumulator extends tSystem 009 { 010 011 public tAccumulator(final int sys_index) 012 { 013 super(); 014 m_SystemIndex = sys_index; 015 if (status.isNotFatal() && m_SystemIndex >= kNumSystems) 016 { 017 status.setStatus(NiRioStatus.kRIOStatusBadSelector); 018 } 019 020 } 021 022 protected void finalize() 023 { 024 super.finalize(); 025 } 026 027 public int getSystemIndex() 028 { 029 return m_SystemIndex; 030 } 031 032 public static final int kNumSystems = 2; 033 public final int m_SystemIndex; 034 035 036 public static class tOutput 037 { 038 public tOutput(int regValue1, int regValue2, int regValue3) 039 { 040 Value = (((long)regValue1) << 32) | regValue2; 041 Count = regValue3; 042 } 043 public final long Value; 044 public final int Count; 045 } 046 047 048 049 050 ////////////////////////////////////////////////////////////////////////////////////////////////// 051 // Accessors for Output 052 ////////////////////////////////////////////////////////////////////////////////////////////////// 053 private static final int kOutput_Value_BitfieldMask = 0x00000000; 054 private static final int kOutput_Value_BitfieldOffset = 32; 055 private static final int kOutput_Count_BitfieldMask = 0xFFFFFFFF; 056 private static final int kOutput_Count_BitfieldOffset = 0; 057 private static final int kAccumulator0_Output_Address = 0x8184; 058 private static final int kAccumulator1_Output_Address = 0x8194; 059 private static final int kOutput_Addresses [] = 060 { 061 kAccumulator0_Output_Address, 062 kAccumulator1_Output_Address, 063 }; 064 065 public tOutput readOutput() 066 { 067 068 int result = NiFpga.readU32(m_DeviceHandle, kOutput_Addresses[m_SystemIndex], status); 069 int regValue = result ; 070 int result2 = NiFpga.readU32(m_DeviceHandle, kOutput_Addresses[m_SystemIndex], status); 071 int regValue2 = result2 ; 072 int result3 = NiFpga.readU32(m_DeviceHandle, kOutput_Addresses[m_SystemIndex], status); 073 int regValue3 = result3 ; 074 return new tOutput(regValue, regValue2, regValue3); 075 } 076 public long readOutput_Value() 077 { 078 079 int result = NiFpga.readU32(m_DeviceHandle, kOutput_Addresses[m_SystemIndex], status); 080 int regValue = result ; 081 int result2 = NiFpga.readU32(m_DeviceHandle, kOutput_Addresses[m_SystemIndex], status); 082 int regValue2 = result2 ; 083 int result3 = NiFpga.readU32(m_DeviceHandle, kOutput_Addresses[m_SystemIndex], status); 084 int regValue3 = result3 ; 085 tOutput val = new tOutput(regValue, regValue2, regValue3); 086 return val.Value; 087 } 088 public long readOutput_Count() 089 { 090 091 int result = NiFpga.readU32(m_DeviceHandle, kOutput_Addresses[m_SystemIndex], status); 092 int regValue = result ; 093 int result2 = NiFpga.readU32(m_DeviceHandle, kOutput_Addresses[m_SystemIndex], status); 094 int regValue2 = result2 ; 095 int result3 = NiFpga.readU32(m_DeviceHandle, kOutput_Addresses[m_SystemIndex], status); 096 int regValue3 = result3 ; 097 tOutput val = new tOutput(regValue, regValue2, regValue3); 098 return val.Count; 099 } 100 101 ////////////////////////////////////////////////////////////////////////////////////////////////// 102 // Accessors for Center 103 ////////////////////////////////////////////////////////////////////////////////////////////////// 104 private static final int kAccumulator0_Center_Address = 0x817C; 105 private static final int kAccumulator1_Center_Address = 0x818C; 106 private static final int kCenter_Addresses [] = 107 { 108 kAccumulator0_Center_Address, 109 kAccumulator1_Center_Address, 110 }; 111 112 public void writeCenter(final int value) 113 { 114 115 NiFpga.writeU32(m_DeviceHandle, kCenter_Addresses[m_SystemIndex], value, status); 116 } 117 public int readCenter() 118 { 119 120 return (int)(NiFpga.readU32(m_DeviceHandle, kCenter_Addresses[m_SystemIndex], status)); 121 } 122 123 ////////////////////////////////////////////////////////////////////////////////////////////////// 124 // Accessors for Deadband 125 ////////////////////////////////////////////////////////////////////////////////////////////////// 126 private static final int kAccumulator0_Deadband_Address = 0x8188; 127 private static final int kAccumulator1_Deadband_Address = 0x8198; 128 private static final int kDeadband_Addresses [] = 129 { 130 kAccumulator0_Deadband_Address, 131 kAccumulator1_Deadband_Address, 132 }; 133 134 public void writeDeadband(final int value) 135 { 136 137 NiFpga.writeU32(m_DeviceHandle, kDeadband_Addresses[m_SystemIndex], value, status); 138 } 139 public int readDeadband() 140 { 141 142 return (int)(NiFpga.readU32(m_DeviceHandle, kDeadband_Addresses[m_SystemIndex], status)); 143 } 144 145 ////////////////////////////////////////////////////////////////////////////////////////////////// 146 // Accessors for Reset 147 ////////////////////////////////////////////////////////////////////////////////////////////////// 148 private static final int kAccumulator0_Reset_Address = 0x8180; 149 private static final int kAccumulator1_Reset_Address = 0x8190; 150 private static final int kReset_Addresses [] = 151 { 152 kAccumulator0_Reset_Address, 153 kAccumulator1_Reset_Address, 154 }; 155 156 public void strobeReset() 157 { 158 159 NiFpga.writeU32(m_DeviceHandle, kReset_Addresses[m_SystemIndex], 1, status); 160 } 161 162 163 164 165 166 }