WPILib 2012
WPILibRoboticsLibraryforFRC
|
00001 // Copyright (c) National Instruments 2008. All Rights Reserved. 00002 // Do Not Edit... this file is generated! 00003 00004 #ifndef __nFRC_2012_1_6_4_AI_h__ 00005 #define __nFRC_2012_1_6_4_AI_h__ 00006 00007 #include "tSystemInterface.h" 00008 00009 namespace nFPGA 00010 { 00011 namespace nFRC_2012_1_6_4 00012 { 00013 00014 class tAI 00015 { 00016 public: 00017 tAI(){} 00018 virtual ~tAI(){} 00019 00020 virtual tSystemInterface* getSystemInterface() = 0; 00021 static tAI* create(unsigned char sys_index, tRioStatusCode *status); 00022 virtual unsigned char getSystemIndex() = 0; 00023 00024 00025 typedef enum 00026 { 00027 kNumSystems = 2, 00028 } tIfaceConstants; 00029 00030 typedef 00031 union{ 00032 struct{ 00033 unsigned Channel : 3; 00034 unsigned Module : 1; 00035 unsigned Averaged : 1; 00036 }; 00037 struct{ 00038 unsigned value : 5; 00039 }; 00040 } tReadSelect; 00041 typedef 00042 union{ 00043 struct{ 00044 unsigned ScanSize : 3; 00045 unsigned ConvertRate : 26; 00046 }; 00047 struct{ 00048 unsigned value : 29; 00049 }; 00050 } tConfig; 00051 00052 00053 typedef enum 00054 { 00055 } tConfig_IfaceConstants; 00056 00057 virtual void writeConfig(tConfig value, tRioStatusCode *status) = 0; 00058 virtual void writeConfig_ScanSize(unsigned char value, tRioStatusCode *status) = 0; 00059 virtual void writeConfig_ConvertRate(unsigned int value, tRioStatusCode *status) = 0; 00060 virtual tConfig readConfig(tRioStatusCode *status) = 0; 00061 virtual unsigned char readConfig_ScanSize(tRioStatusCode *status) = 0; 00062 virtual unsigned int readConfig_ConvertRate(tRioStatusCode *status) = 0; 00063 00064 00065 typedef enum 00066 { 00067 kNumScanListElements = 8, 00068 } tScanList_IfaceConstants; 00069 00070 virtual void writeScanList(unsigned char bitfield_index, unsigned char value, tRioStatusCode *status) = 0; 00071 virtual unsigned char readScanList(unsigned char bitfield_index, tRioStatusCode *status) = 0; 00072 00073 00074 typedef enum 00075 { 00076 } tLoopTiming_IfaceConstants; 00077 00078 virtual unsigned int readLoopTiming(tRioStatusCode *status) = 0; 00079 00080 00081 typedef enum 00082 { 00083 kNumAverageBitsElements = 8, 00084 } tAverageBits_IfaceConstants; 00085 00086 virtual void writeAverageBits(unsigned char bitfield_index, unsigned char value, tRioStatusCode *status) = 0; 00087 virtual unsigned char readAverageBits(unsigned char bitfield_index, tRioStatusCode *status) = 0; 00088 00089 00090 typedef enum 00091 { 00092 kNumOversampleBitsElements = 8, 00093 } tOversampleBits_IfaceConstants; 00094 00095 virtual void writeOversampleBits(unsigned char bitfield_index, unsigned char value, tRioStatusCode *status) = 0; 00096 virtual unsigned char readOversampleBits(unsigned char bitfield_index, tRioStatusCode *status) = 0; 00097 00098 00099 00100 typedef enum 00101 { 00102 } tOutput_IfaceConstants; 00103 00104 virtual signed int readOutput(tRioStatusCode *status) = 0; 00105 00106 00107 typedef enum 00108 { 00109 } tReadSelect_IfaceConstants; 00110 00111 virtual void writeReadSelect(tReadSelect value, tRioStatusCode *status) = 0; 00112 virtual void writeReadSelect_Channel(unsigned char value, tRioStatusCode *status) = 0; 00113 virtual void writeReadSelect_Module(unsigned char value, tRioStatusCode *status) = 0; 00114 virtual void writeReadSelect_Averaged(bool value, tRioStatusCode *status) = 0; 00115 virtual tReadSelect readReadSelect(tRioStatusCode *status) = 0; 00116 virtual unsigned char readReadSelect_Channel(tRioStatusCode *status) = 0; 00117 virtual unsigned char readReadSelect_Module(tRioStatusCode *status) = 0; 00118 virtual bool readReadSelect_Averaged(tRioStatusCode *status) = 0; 00119 00120 00121 typedef enum 00122 { 00123 } tLatchOutput_IfaceConstants; 00124 00125 virtual void strobeLatchOutput(tRioStatusCode *status) = 0; 00126 00127 00128 00129 00130 private: 00131 tAI(const tAI&); 00132 void operator=(const tAI&); 00133 }; 00134 00135 } 00136 } 00137 00138 #endif // __nFRC_2012_1_6_4_AI_h__