This is the latest WPILib src, VisionSample2013, cRIO image, ... pulled down from firstforge.wpi.edu.
There might be risks in using the top of tree rather than an official release, but the commit messages do mention fixes for some deadlocks and race conditions.
git-svn-id: https://robotics.mvla.net/svn/frc971/2013/trunk/src@4066 f308d9b7-e957-4cde-b6ac-9a88185e7312
diff --git a/azaleasource/WPILibCProgramming/trunk/WPILib/ChipObject/tInterrupt.h b/azaleasource/WPILibCProgramming/trunk/WPILib/ChipObject/tInterrupt.h
new file mode 100644
index 0000000..f181fb3
--- /dev/null
+++ b/azaleasource/WPILibCProgramming/trunk/WPILib/ChipObject/tInterrupt.h
@@ -0,0 +1,84 @@
+// Copyright (c) National Instruments 2008. All Rights Reserved.
+// Do Not Edit... this file is generated!
+
+#ifndef __nFRC_2012_1_6_4_Interrupt_h__
+#define __nFRC_2012_1_6_4_Interrupt_h__
+
+#include "tSystemInterface.h"
+
+namespace nFPGA
+{
+namespace nFRC_2012_1_6_4
+{
+
+class tInterrupt
+{
+public:
+ tInterrupt(){}
+ virtual ~tInterrupt(){}
+
+ virtual tSystemInterface* getSystemInterface() = 0;
+ static tInterrupt* create(unsigned char sys_index, tRioStatusCode *status);
+ virtual unsigned char getSystemIndex() = 0;
+
+
+ typedef enum
+ {
+ kNumSystems = 8,
+ } tIfaceConstants;
+
+ typedef
+ union{
+ struct{
+ unsigned Source_Channel : 4;
+ unsigned Source_Module : 1;
+ unsigned Source_AnalogTrigger : 1;
+ unsigned RisingEdge : 1;
+ unsigned FallingEdge : 1;
+ unsigned WaitForAck : 1;
+ };
+ struct{
+ unsigned value : 9;
+ };
+ } tConfig;
+
+
+ typedef enum
+ {
+ } tTimeStamp_IfaceConstants;
+
+ virtual unsigned int readTimeStamp(tRioStatusCode *status) = 0;
+
+
+ typedef enum
+ {
+ } tConfig_IfaceConstants;
+
+ virtual void writeConfig(tConfig value, tRioStatusCode *status) = 0;
+ virtual void writeConfig_Source_Channel(unsigned char value, tRioStatusCode *status) = 0;
+ virtual void writeConfig_Source_Module(unsigned char value, tRioStatusCode *status) = 0;
+ virtual void writeConfig_Source_AnalogTrigger(bool value, tRioStatusCode *status) = 0;
+ virtual void writeConfig_RisingEdge(bool value, tRioStatusCode *status) = 0;
+ virtual void writeConfig_FallingEdge(bool value, tRioStatusCode *status) = 0;
+ virtual void writeConfig_WaitForAck(bool value, tRioStatusCode *status) = 0;
+ virtual tConfig readConfig(tRioStatusCode *status) = 0;
+ virtual unsigned char readConfig_Source_Channel(tRioStatusCode *status) = 0;
+ virtual unsigned char readConfig_Source_Module(tRioStatusCode *status) = 0;
+ virtual bool readConfig_Source_AnalogTrigger(tRioStatusCode *status) = 0;
+ virtual bool readConfig_RisingEdge(tRioStatusCode *status) = 0;
+ virtual bool readConfig_FallingEdge(tRioStatusCode *status) = 0;
+ virtual bool readConfig_WaitForAck(tRioStatusCode *status) = 0;
+
+
+
+
+
+private:
+ tInterrupt(const tInterrupt&);
+ void operator=(const tInterrupt&);
+};
+
+}
+}
+
+#endif // __nFRC_2012_1_6_4_Interrupt_h__