Commit Iniziale
This commit is contained in:
182
libURcom/clientMessage.h
Normal file
182
libURcom/clientMessage.h
Normal file
@@ -0,0 +1,182 @@
|
||||
/*
|
||||
* clientMessage.h
|
||||
*
|
||||
* Created on: Jan 16, 2019
|
||||
* Author: emanuele
|
||||
*/
|
||||
|
||||
#ifndef CLIENTMESSAGE_H_
|
||||
#define CLIENTMESSAGE_H_
|
||||
|
||||
#include "packagetypes.h"
|
||||
#include <string>
|
||||
#include <arpa/inet.h>
|
||||
#include <boost/endian/conversion.hpp>
|
||||
|
||||
namespace subpackage {
|
||||
|
||||
class clientSubpackage {
|
||||
public:
|
||||
clientSubpackage();
|
||||
virtual ~clientSubpackage();
|
||||
|
||||
unsigned char* dataIn;
|
||||
clientData_t* dataOut;
|
||||
|
||||
virtual uint32_t parse();
|
||||
|
||||
void copyString(std::string** out, unsigned char** in, char len);
|
||||
uint32_t getUInt32(unsigned char** dataPointer);
|
||||
uint64_t getUInt64(unsigned char** dataPointer);
|
||||
int32_t getInt32(unsigned char** dataPointer);
|
||||
double getDouble(unsigned char** dataPointer);
|
||||
float getFloat(unsigned char** dataPointer);
|
||||
char getChar(unsigned char** dataPointer);
|
||||
unsigned char getUChar(unsigned char** dataPointer);
|
||||
};
|
||||
|
||||
class robotModeSub: public clientSubpackage {
|
||||
public:
|
||||
robotModeSub(unsigned char* din, clientData_t* dout) {
|
||||
dataIn=din;
|
||||
dataOut=dout;
|
||||
};
|
||||
virtual ~robotModeSub();
|
||||
|
||||
uint32_t parse();
|
||||
};
|
||||
|
||||
class jointDataSub: public clientSubpackage {
|
||||
public:
|
||||
jointDataSub(unsigned char* din, clientData_t* dout) {
|
||||
dataIn=din;
|
||||
dataOut=dout;
|
||||
};
|
||||
virtual ~jointDataSub();
|
||||
|
||||
uint32_t parse();
|
||||
};
|
||||
|
||||
class cartesianInfoSub: public clientSubpackage {
|
||||
public:
|
||||
cartesianInfoSub(unsigned char* din, clientData_t* dout) {
|
||||
dataIn=din;
|
||||
dataOut=dout;
|
||||
};
|
||||
virtual ~cartesianInfoSub();
|
||||
|
||||
uint32_t parse();
|
||||
};
|
||||
|
||||
class masterBoardSub: public clientSubpackage {
|
||||
public:
|
||||
masterBoardSub(unsigned char* din, clientData_t* dout) {
|
||||
dataIn=din;
|
||||
dataOut=dout;
|
||||
};
|
||||
virtual ~masterBoardSub();
|
||||
|
||||
uint32_t parse();
|
||||
};
|
||||
|
||||
class toolDataSub: public clientSubpackage {
|
||||
public:
|
||||
toolDataSub(unsigned char* din, clientData_t* dout) {
|
||||
dataIn=din;
|
||||
dataOut=dout;
|
||||
};
|
||||
virtual ~toolDataSub();
|
||||
|
||||
uint32_t parse();
|
||||
};
|
||||
|
||||
class kineInfoSub: public clientSubpackage {
|
||||
public:
|
||||
kineInfoSub(unsigned char* din, clientData_t* dout) {
|
||||
dataIn=din;
|
||||
dataOut=dout;
|
||||
};
|
||||
virtual ~kineInfoSub();
|
||||
|
||||
uint32_t parse();
|
||||
};
|
||||
|
||||
class configurationSub: public clientSubpackage {
|
||||
public:
|
||||
configurationSub(unsigned char* din, clientData_t* dout) {
|
||||
dataIn=din;
|
||||
dataOut=dout;
|
||||
};
|
||||
virtual ~configurationSub();
|
||||
|
||||
uint32_t parse();
|
||||
};
|
||||
|
||||
class forceModeSub: public clientSubpackage {
|
||||
public:
|
||||
forceModeSub(unsigned char* din, clientData_t* dout) {
|
||||
dataIn=din;
|
||||
dataOut=dout;
|
||||
};
|
||||
virtual ~forceModeSub();
|
||||
|
||||
uint32_t parse();
|
||||
};
|
||||
|
||||
class additionalInfoSub: public clientSubpackage {
|
||||
public:
|
||||
additionalInfoSub(unsigned char* din, clientData_t* dout) {
|
||||
dataIn=din;
|
||||
dataOut=dout;
|
||||
};
|
||||
virtual ~additionalInfoSub();
|
||||
|
||||
uint32_t parse();
|
||||
};
|
||||
|
||||
class calibrationSub: public clientSubpackage {
|
||||
public:
|
||||
calibrationSub(unsigned char* din, clientData_t* dout) {
|
||||
dataIn=din;
|
||||
dataOut=dout;
|
||||
};
|
||||
virtual ~calibrationSub();
|
||||
|
||||
uint32_t parse();
|
||||
};
|
||||
|
||||
class toolComSub: public clientSubpackage {
|
||||
public:
|
||||
toolComSub(unsigned char* din, clientData_t* dout) {
|
||||
dataIn=din;
|
||||
dataOut=dout;
|
||||
};
|
||||
virtual ~toolComSub();
|
||||
|
||||
uint32_t parse();
|
||||
};
|
||||
|
||||
class toolModeSub: public clientSubpackage {
|
||||
public:
|
||||
toolModeSub(unsigned char* din, clientData_t* dout) {
|
||||
dataIn=din;
|
||||
dataOut=dout;
|
||||
};
|
||||
virtual ~toolModeSub();
|
||||
|
||||
uint32_t parse();
|
||||
};
|
||||
|
||||
class versionSub: public clientSubpackage {
|
||||
public:
|
||||
versionSub(unsigned char* din, clientData_t* dout) {
|
||||
dataIn=din;
|
||||
dataOut=dout; };
|
||||
virtual ~versionSub();
|
||||
|
||||
uint32_t parse();
|
||||
};
|
||||
|
||||
} /* namespace clientmessage */
|
||||
|
||||
#endif /* CLIENTMESSAGE_H_ */
|
||||
Reference in New Issue
Block a user