node connector for us
CushionNodeConnector.h@0:a64827e7b41c, 2016-12-16 (annotated)
- Committer:
- 3116redtrain
- Date:
- Fri Dec 16 08:04:54 2016 +0000
- Revision:
- 0:a64827e7b41c
- Child:
- 2:0dd332c09bf1
first;
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
3116redtrain | 0:a64827e7b41c | 1 | #ifndef CUSHION_NODE_CONNECTOR_H |
3116redtrain | 0:a64827e7b41c | 2 | #define CUSHION_NODE_CONNECTOR_H |
3116redtrain | 0:a64827e7b41c | 3 | |
3116redtrain | 0:a64827e7b41c | 4 | #include "mbed.h" |
3116redtrain | 0:a64827e7b41c | 5 | #include "SocketIO.h" |
3116redtrain | 0:a64827e7b41c | 6 | #include "picojson.h" |
3116redtrain | 0:a64827e7b41c | 7 | |
3116redtrain | 0:a64827e7b41c | 8 | |
3116redtrain | 0:a64827e7b41c | 9 | class CushionNodeConnector |
3116redtrain | 0:a64827e7b41c | 10 | { |
3116redtrain | 0:a64827e7b41c | 11 | public: |
3116redtrain | 0:a64827e7b41c | 12 | static const int MESS_STOP = 0x01; |
3116redtrain | 0:a64827e7b41c | 13 | static const int MESS_START = 0x02; |
3116redtrain | 0:a64827e7b41c | 14 | static const int MESS_SIT = 0x11; |
3116redtrain | 0:a64827e7b41c | 15 | static const int MESS_FRUST = 0x12; |
3116redtrain | 0:a64827e7b41c | 16 | |
3116redtrain | 0:a64827e7b41c | 17 | /* |
3116redtrain | 0:a64827e7b41c | 18 | Constructor |
3116redtrain | 0:a64827e7b41c | 19 | @param hostAndport format : "hostname:port" |
3116redtrain | 0:a64827e7b41c | 20 | */ |
3116redtrain | 0:a64827e7b41c | 21 | CushionNodeConnector(char * hostAndPort); |
3116redtrain | 0:a64827e7b41c | 22 | /* |
3116redtrain | 0:a64827e7b41c | 23 | Constructor |
3116redtrain | 0:a64827e7b41c | 24 | if you didn't use any paramators, connect to chikura-server. |
3116redtrain | 0:a64827e7b41c | 25 | */ |
3116redtrain | 0:a64827e7b41c | 26 | CushionNodeConnector(); |
3116redtrain | 0:a64827e7b41c | 27 | |
3116redtrain | 0:a64827e7b41c | 28 | |
3116redtrain | 0:a64827e7b41c | 29 | /* |
3116redtrain | 0:a64827e7b41c | 30 | connect to server |
3116redtrain | 0:a64827e7b41c | 31 | @return true if the connection is established, false otherwise |
3116redtrain | 0:a64827e7b41c | 32 | */ |
3116redtrain | 0:a64827e7b41c | 33 | bool connect(); |
3116redtrain | 0:a64827e7b41c | 34 | |
3116redtrain | 0:a64827e7b41c | 35 | /* |
3116redtrain | 0:a64827e7b41c | 36 | send message to server |
3116redtrain | 0:a64827e7b41c | 37 | @return the number of bytes sent |
3116redtrain | 0:a64827e7b41c | 38 | @param type Message type(prease show and choose from line 14 to 17 in souece code) |
3116redtrain | 0:a64827e7b41c | 39 | @param msg message payload |
3116redtrain | 0:a64827e7b41c | 40 | */ |
3116redtrain | 0:a64827e7b41c | 41 | int mess_send(int type, char * msg); |
3116redtrain | 0:a64827e7b41c | 42 | |
3116redtrain | 0:a64827e7b41c | 43 | /* |
3116redtrain | 0:a64827e7b41c | 44 | Recieve message from server |
3116redtrain | 0:a64827e7b41c | 45 | @return if recieved succsessful, Message type(prease show and choose from line 14 to 17 in souece code), otherwise returns -1. |
3116redtrain | 0:a64827e7b41c | 46 | @param msg pointer to the message to be read. |
3116redtrain | 0:a64827e7b41c | 47 | */ |
3116redtrain | 0:a64827e7b41c | 48 | int mess_recv(char * msg); |
3116redtrain | 0:a64827e7b41c | 49 | |
3116redtrain | 0:a64827e7b41c | 50 | /* |
3116redtrain | 0:a64827e7b41c | 51 | To see if there is a SocketIO connection active |
3116redtrain | 0:a64827e7b41c | 52 | @return true if there is a connection active |
3116redtrain | 0:a64827e7b41c | 53 | */ |
3116redtrain | 0:a64827e7b41c | 54 | bool is_connected(); |
3116redtrain | 0:a64827e7b41c | 55 | |
3116redtrain | 0:a64827e7b41c | 56 | bool close(); |
3116redtrain | 0:a64827e7b41c | 57 | |
3116redtrain | 0:a64827e7b41c | 58 | private: |
3116redtrain | 0:a64827e7b41c | 59 | SocketIO *socketio; |
3116redtrain | 0:a64827e7b41c | 60 | std::map<int,string> type_name; |
3116redtrain | 0:a64827e7b41c | 61 | std::map<string,int> name_type; |
3116redtrain | 0:a64827e7b41c | 62 | }; |
3116redtrain | 0:a64827e7b41c | 63 | |
3116redtrain | 0:a64827e7b41c | 64 | #endif |