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:
Wed Apr 10 04:36:11 2013 +0000
Parent:
0:cd84204f23d8
Child:
2:2a5b66b60883
Commit message:
Test wrapping up library dependencies for seamless import

Changed in this revision

FP.lib Show annotated file Show diff for this revision Revisions of this file
LinkedList.lib Show annotated file Show diff for this revision Revisions of this file
LogUtil.lib Show annotated file Show diff for this revision Revisions of this file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/FP.lib	Wed Apr 10 04:36:11 2013 +0000
@@ -0,0 +1,1 @@
+http://mbed.org/users/sam_grove/code/FP/#a34f15741c5a
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/LinkedList.lib	Wed Apr 10 04:36:11 2013 +0000
@@ -0,0 +1,1 @@
+http://mbed.org/users/sam_grove/code/LinkedList/#c14e7a918e21
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/LogUtil.lib	Wed Apr 10 04:36:11 2013 +0000
@@ -0,0 +1,1 @@
+http://mbed.org/users/sam_grove/code/LogUtil/#c54746c59ba4