First version

Dependencies:   mbed EthernetInterface mbed-rto

Revision:
32:537005b4a065
Parent:
27:29948b116e82
Child:
38:47c075a354b5
--- a/LEDDriver.h	Wed Apr 25 14:51:18 2018 +0000
+++ b/LEDDriver.h	Tue May 01 11:58:20 2018 +0000
@@ -3,6 +3,7 @@
 
 #include "copy.h"
 #include "mbed.h"
+#include "rtos.h"
 
 class LEDDriver
 {
@@ -14,34 +15,21 @@
     int* codedMessage2;
     int* codedMessage3;
     int directions[8];
-    //Mutex* lock;
-    Copy copy;
+    Queue<int,8>* queue;
     DigitalOut* leds;
     
-    /**
-     *methode om de richting van het kruispunt op te vragen
-     *@params id of the led
-     *@return int of the direction
-     */    
-    int getDirection(int id);
-    
-    /**
-     *methode om de message van de led te bepalen
-     *@params richting die de led moet zeggen
-     *@params id of the led
-     */    
-    void determineMessage(int direction,int led);
-    
-    /**
-     *mehode om alle messages van alle leds te bepalen
-     *@params aantal led
-     */    
-    void encodeAll(int numberOfLeds);
+    /**prep for eventual multithreading
+     *methode om nieuwe richtingen van de receiver klasse te ontvangen
+     *@params aantal leds die een nieuw bericht moeten krijgen  
+     *@params int die aanduid of de eerste helft van de leds gepolled moeten worden of de tweede
+     */ 
+    void poll(int numberOfLeds, int first);
+  
     
      public:
      
     /**
-     *methode om de mbed te doen wachten,nop
+     *methode om de mbed te doen wachten,nop gebaseerd
      *@params aantal microseconden te wachten
      */    
     void ownWait(uint32_t us);
@@ -56,13 +44,12 @@
     
     /**
       *constructor voor een driver object
-      *@params de int waarden die een richting aanduiden
-      *@params het aantal waarden in de sharedDirection array
+      *@params de queue met de waarden die een richting aanduiden
       */  
-    LEDDriver(/*Mutex* lock,*/ int sharedDirections[], int sizeOfSharedDirections);
+    LEDDriver(Queue<int,8>* queue);
     /**
-      *methode om de driver te gebruiken
-      *@params aantal leds om te drive
+      *methode om de driver
+      *@params aantal leds om te driven
       */
     void run(int numberOfLeds);