Mateusz Garwol / Mbed 2 deprecated 2_5

Dependencies:   LCD_DISCO_F429ZI mbed BSP_DISCO_F429ZI

Revision:
3:6fc7976cc5bf
Parent:
2:8788d711db7e
--- a/string.h	Wed May 20 15:42:07 2020 +0000
+++ b/string.h	Wed May 20 16:37:25 2020 +0000
@@ -1,3 +1,5 @@
+#include "mbed.h"
+
 #define NULL 0
 #define TERMINATOR '\r'
 #define DELIMITER_CHAR 0x20
@@ -8,12 +10,6 @@
 #define MAX_KEYWORD_NR 2
 
 
-typedef enum CompResult 
-{ DIFFERENT , EQUAL } CompResult;
-
-typedef enum Result 
-{ OK, NOK } Result;
-
 typedef enum TokenType 
 {KEYWORD, NUMBER, STRING} TokenType;
 
@@ -41,14 +37,24 @@
 } Keyword;
 
 
-void CopyString(char pcSource[], char pcDestination[]);
-enum CompResult eCompareString(char pcStr1[], char pcStr2[]);
-void AppendString (char pcSourceStr[],char pcDestinationStr[]);
-void ReplaceCharactersInString(char pcString[],char cOldChar,char cNewChar);
-void UIntToHexStr(unsigned int uiValue, char pcStr[]);
-enum Result eHexStringToUInt(char pcStr[],unsigned int *puiValue);
-void AppendUIntToString (unsigned int uiValue, char pcDestinationStr[]);
-unsigned char ucFindTokensInString(char *pcString);
-enum Result eStringToKeyword (char pcStr[],enum KeywordCode *peKeywordCode);
-void DecodeTokens(unsigned char ucTokenCnt);
-void DecodeMsg(char *pcString);
+
+
+class Tokenizer {
+    private:
+        struct Token asToken[MAX_TOKEN_NR];
+        unsigned char ucTokenCnt;
+        void ReplaceCharactersInString(char pcString[],char cOldChar,char cNewChar);
+        enum Result eHexStringToUInt(char pcStr[],unsigned int *puiValue);
+        unsigned char ucFindTokensInString(char *pcString);
+        enum Result eStringToKeyword (char pcStr[],enum KeywordCode *peKeywordCode);
+        void DecodeTokens(unsigned char ucTokenCnt);
+    public:
+        void DecodeMsg(char *pcString);
+        enum TokenType eGetTokenType(unsigned char ucIdx);
+        enum KeywordCode eGetKeyword(unsigned char ucIdx);
+        unsigned char GetTokenCnt(void);
+};
+
+
+
+