Utility to manage ASCII communications. Register a header and event and then pass messages into the class and events are generated on a match

Dependents:   Waldo_Embed_V2

Example

#include "mbed.h"
#include "CommHandler.h"
  
DigitalOut myled(LED1);
CommHandler msgs;
  
char *one(char* msg)
{
    // you can parse msg here
    LOG("\n");
    return msg;
}
  
class Wrap
{
public:
    Wrap(){}
    char *two(char *msg)
    {
        // you can parse msg here
        LOG("\n");
        return msg;
    }
}obj;
  
char *three(char* msg)
{
    // you can parse msg here
    LOG("\n");
    return msg;
}
  
int main()
{
    char *tmp = 0;
  
    msgs.attachMsg("One", &one);
    msgs.attachMsg("Two", &obj, &Wrap::two);
    msgs.attachMsg("Three", &three);
      
    tmp = msgs.messageLookup(0);
    printf("0:%s\n", tmp);
    tmp = msgs.messageLookup(1);
    printf("1:%s\n", tmp);
    tmp = msgs.messageLookup(2);
    printf("2:%s\n", tmp);
    tmp = msgs.messageLookup(3);
    printf("3:%s\n", tmp);
    tmp = msgs.messageLookup(4);
    printf("4:%s\n", tmp);
         
    tmp = msgs.serviceMessage("Two-00-66-99-20133");
    printf("1: Found: %s\n", tmp);
    tmp = msgs.serviceMessage("One-99-60-1-339788354");
    printf("2: Found: %s\n", tmp);
    tmp = msgs.serviceMessage("Three-xx-xx-XX-XXXXXXX");
    printf("3: Found: %s\n", tmp);
      
    error("End of Test\n");
}

Files at this revision

API Documentation at this revision

Comitter:
sam_grove
Date:
Fri Apr 26 06:28:23 2013 +0000
Parent:
5:453fb1a566ae
Child:
7:ca9330635cac
Commit message:
Just updates to dependencies

Changed in this revision

LogUtil.lib Show annotated file Show diff for this revision Revisions of this file
--- a/LogUtil.lib	Wed Apr 10 06:19:52 2013 +0000
+++ b/LogUtil.lib	Fri Apr 26 06:28:23 2013 +0000
@@ -1,1 +1,1 @@
-http://mbed.org/users/sam_grove/code/LogUtil/#9f20058284bd
+http://mbed.org/users/sam_grove/code/LogUtil/#1b4f4d4aec8c