RoboidControl-cpp/NetworkPerception.h
2024-12-10 13:03:09 +01:00

32 lines
956 B
C++

#pragma once
#include "Roboid.h"
#include "Sensor.h"
#include "Types.h"
namespace Passer {
namespace RoboidControl {
class NetworkPerception : public Sensor {
public:
void ProcessPacket(Roboid *roboid, unsigned char *buffer, int packetsize);
protected:
void ReceiveThingMsg(unsigned char *data, Roboid *roboid);
void ReceiveInvestigateMsg(unsigned char *data, Roboid *roboid);
void ReceivePoseMsg(unsigned char *data, Roboid *roboid);
void ReceiveTypedObject(unsigned char *data, Roboid *roboid);
void ReceivePlane(unsigned char *data, Roboid *roboid);
void ReceiveSphere(unsigned char *data, Roboid *roboid);
Int32 ReceiveInt32(unsigned char *data, int startIndex);
float ReceiveFloat100(unsigned char *data, int startIndex);
Vector3 ReceiveVector3(unsigned char *data, int startIndex);
public:
static float ReceiveFloat16(unsigned char *data, unsigned char *startIndex);
};
} // namespace RoboidControl
} // namespace Passer