/* * clientMessage.h * * Created on: Jan 16, 2019 * Author: emanuele */ #ifndef CLIENTMESSAGE_H_ #define CLIENTMESSAGE_H_ #include "packagetypes.h" #include #include #include 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_ */