00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef PROTOCOL_H
00020 #define PROTOCOL_H
00021
00022 #include <string>
00023
00024 using namespace std;
00025
00026 const unsigned char MSG_TYPE_SYSTEM = 1;
00027 const unsigned char MSG_TYPE_ROBOT = 2;
00028 const unsigned char MSG_PING = 1;
00029
00030 const unsigned char MSG_ANIMA = 2;
00031
00032 const unsigned char MSG_REANIMA = 3;
00033 const unsigned char MSG_INANIMA = 4;
00034 const unsigned char MSG_EXECUTION_TIME = 5;
00035
00036 const unsigned char MSG_EXECUTED_COMMANDS = 6;
00037
00038 const unsigned char MSG_BATTERY_VOLTAGE = 7;
00039
00040 const unsigned char MSG_LOG = 8;
00041
00042
00043 const unsigned short CONVERSATION_READ_ARCHIVED_COMMANDS = 0;
00044 const unsigned short CONVERSATION_READ_RECEIVED_COMMANDS = 1;
00045 const unsigned short CONVERSATION_READ_EXECUTED_COMMANDS = 2;
00046
00048 class net_msg_hdr
00049 {
00050 public:
00051
00052 net_msg_hdr( void );
00053 net_msg_hdr( unsigned char type, unsigned char cmd, size_t param_size = 0 );
00054
00055 int set_type( unsigned char type );
00056 int set_cmd( unsigned char cmd );
00057 int set_chksum( void );
00058 int set_size( size_t size );
00059
00060 unsigned char get_type( void ) const;
00061 unsigned char get_cmd( void ) const;
00062
00063 size_t get_size( void ) const;
00064
00065 private:
00066
00067
00068 unsigned char type;
00069 unsigned char cmd;
00070 size_t param_size;
00071 };
00072
00074 struct saved_net_msg
00075 {
00076 net_msg_hdr header;
00077 string params;
00078 };
00079
00080 #endif