callib

Dependencies:   LCD_DISCO_F429ZI mbed BSP_DISCO_F429ZI

Revision:
0:befccd954577
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/TokensHandling.h	Tue Jun 09 10:21:57 2020 +0000
@@ -0,0 +1,34 @@
+#ifndef TOKENS_HANDLING_H
+#define TOKENS_HANDLING_H
+
+#define MAX_KEYWORD_STRING_LTH 15
+#define MAX_TOKEN_NR 2
+
+enum KeywordCode {CALLIB, GOTO, ID, STEP};
+enum TokenType {KEYWORD, NUMBER, STRING};
+
+union TokenValue{
+    enum KeywordCode eKeyword;
+    unsigned int uiNumber;
+    char* pcString;
+};
+
+struct Token{
+    enum TokenType eType;
+    union TokenValue uValue;
+};
+
+class TokensHandler{
+    private: 
+        unsigned char ucFindTokensInString(char *pcString);
+        enum Result eStringToKeyword (char pcStr[],enum KeywordCode *peKeywordCode);
+        void DecodeTokens(void);
+        void ReplaceCharactersInString(char pcString[],char cOldChar,char cNewChar);
+    public:
+        TokensHandler();
+        unsigned char ucTokenNr;
+        struct Token asToken[MAX_TOKEN_NR];
+        void DecodeMsg(char *pcString);
+};
+
+#endif
\ No newline at end of file