Code for the kl25z component of our project - for group Alloy.

Dependencies:   Servo mbed

Revision:
0:85181831ea03
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/Window.cpp	Mon Nov 10 17:30:55 2014 +0000
@@ -0,0 +1,51 @@
+/* Window.cpp */
+#include "Window.h"
+#include "Servo.h"
+#include "mbed.h"
+
+Window::Window() {}
+
+Window::Window(Servo* s, float timer) {
+    servo = s;
+    
+    windowOpen = true;
+    
+    // Had to guess and check this value after
+    // the servo was modified to move 360 degrees.
+    servoStop = 0.48;
+    
+    // How long it takes for the window to completely
+    // raise or lower.
+    windowMovementTimer = timer;
+    
+    // closeWindow();
+}
+
+bool Window::isWindowOpen() {
+    return windowOpen;
+}
+
+bool Window::openWindow() {
+    if (!isWindowOpen()) {
+        servo->write(0.6);
+        windowOpen = true;
+        wait(windowMovementTimer);
+        servo->write(servoStop);
+        windowOpen = true;
+        return true;
+    }
+    // window already open
+    return false;
+}
+
+bool Window::closeWindow() {
+    if (isWindowOpen()) {
+        servo->write(0.35);
+        wait(windowMovementTimer);
+        servo->write(servoStop);
+        windowOpen = false;
+        return true;
+    }
+    // window already closed
+    return false;
+}
\ No newline at end of file