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/Servo.h b/azaleasource/WPILibCProgramming/trunk/WPILib/Servo.h
new file mode 100644
index 0000000..3ec1589
--- /dev/null
+++ b/azaleasource/WPILibCProgramming/trunk/WPILib/Servo.h
@@ -0,0 +1,52 @@
+/*----------------------------------------------------------------------------*/
+/* Copyright (c) FIRST 2008. All Rights Reserved. */
+/* Open Source Software - may be modified and shared by FRC teams. The code */
+/* must be accompanied by the FIRST BSD license file in $(WIND_BASE)/WPILib. */
+/*----------------------------------------------------------------------------*/
+
+#ifndef SERVO_H
+#define SERVO_H
+
+#include "SafePWM.h"
+#include "SpeedController.h"
+
+/**
+ * Standard hobby style servo.
+ *
+ * The range parameters default to the appropriate values for the Hitec HS-322HD servo provided
+ * in the FIRST Kit of Parts in 2008.
+ */
+class Servo : public SafePWM
+{
+public:
+ explicit Servo(UINT32 channel);
+ Servo(UINT8 moduleNumber, UINT32 channel);
+ virtual ~Servo();
+ void Set(float value);
+ void SetOffline();
+ float Get();
+ void SetAngle(float angle);
+ float GetAngle();
+ static float GetMaxAngle() { return kMaxServoAngle; };
+ static float GetMinAngle() { return kMinServoAngle; };
+
+ void ValueChanged(ITable* source, const std::string& key, EntryValue value, bool isNew);
+ void UpdateTable();
+ void StartLiveWindowMode();
+ void StopLiveWindowMode();
+ std::string GetSmartDashboardType();
+ void InitTable(ITable *subTable);
+ ITable * GetTable();
+
+ ITable *m_table;
+
+private:
+ void InitServo();
+ float GetServoAngleRange() {return kMaxServoAngle - kMinServoAngle;}
+
+ static const float kMaxServoAngle = 170.0;
+ static const float kMinServoAngle = 0.0;
+};
+
+#endif
+