00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027 #ifndef ARROBOTPACKETSENDER_H
00028 #define ARROBOTPACKETSENDER_H
00029
00030 #include "ariaTypedefs.h"
00031 #include "ArRobotPacket.h"
00032
00033 class ArDeviceConnection;
00034
00036
00037 class ArRobotPacketSender
00038 {
00039 public:
00041 ArRobotPacketSender(unsigned char sync1 = 0xfa,
00042 unsigned char sync2 = 0xfb);
00044 ArRobotPacketSender(ArDeviceConnection *deviceConnection,
00045 unsigned char sync1 = 0xfa,
00046 unsigned char sync2 = 0xfb);
00048 virtual ~ArRobotPacketSender();
00049
00051 bool com(unsigned char command);
00053 bool comInt(unsigned char command, short int argument);
00055 bool com2Bytes(unsigned char command, char high, char low);
00057 bool comStr(unsigned char command, const char *argument);
00059 bool comStrN(unsigned char command, const char *str, int size);
00060
00062 void setDeviceConnection(ArDeviceConnection *deviceConnection);
00064 ArDeviceConnection *getDeviceConnection(void);
00065
00066 protected:
00067 bool connValid(void);
00068 ArDeviceConnection * myDeviceConn;
00069 ArRobotPacket myPacket;
00070 enum { INTARG = 0x3B, NINTARG = 0x1B, STRARG = 0x2B };
00071 };
00072
00073
00074 #endif //ARROBOTPACKETSENDER_H