First version

Dependencies:   mbed EthernetInterface mbed-rto

Interpreter.cpp

Committer:
KlaasGovaerts
Date:
2018-04-18
Revision:
20:fe6a58e84929
Parent:
18:5ee34e60a31d
Child:
24:bf62c46acb3e

File content as of revision 20:fe6a58e84929:

#include "Interpreter.h"

Interpreter::Interpreter(int* LEDinput){
    LED=LEDinput;
}

void Interpreter::executeCommand(char* command){
    char *ID=strtok(command,"-");
    char *direction=strtok(NULL," ");
    while((ID!=NULL)&&(direction!=NULL)){
        int IDNumber=atoi(ID);
        int directionNumber=directionToNumber(direction);
        if((IDNumber>=0)&&(IDNumber<=11)&&(directionNumber>=-1)&&(directionNumber<=3)){
            //lock->lock();
            LED[IDNumber]=directionNumber;
            //lock->unlock();
        }
    ID=strtok(NULL,"-");
    direction=strtok(NULL," ");
    }
}

int Interpreter::directionToNumber(char* direction){
    if(strcmp(direction,"left")==0)
        return 0;
    else if(strcmp(direction,"right")==0)
        return 1;
    else if(strcmp(direction,"up")==0)
        return 2;
    else if(strcmp(direction,"down")==0)
        return 3;
    else 
        return -1;
}