2018-09-04 16:10:57 +00:00
|
|
|
#ifndef PHYSICS_CLIENT_GRPC_H
|
|
|
|
#define PHYSICS_CLIENT_GRPC_H
|
|
|
|
|
|
|
|
#include "PhysicsDirect.h"
|
|
|
|
#include "PhysicsCommandProcessorInterface.h"
|
|
|
|
|
|
|
|
class GRPCNetworkedPhysicsProcessor : public PhysicsCommandProcessorInterface
|
|
|
|
{
|
|
|
|
struct GRPCNetworkedInternalData* m_data;
|
|
|
|
|
|
|
|
public:
|
|
|
|
GRPCNetworkedPhysicsProcessor(const char* hostName, int port);
|
|
|
|
|
|
|
|
virtual ~GRPCNetworkedPhysicsProcessor();
|
|
|
|
|
|
|
|
virtual bool connect();
|
|
|
|
|
|
|
|
virtual void disconnect();
|
|
|
|
|
|
|
|
virtual bool isConnected() const;
|
2018-09-23 21:17:31 +00:00
|
|
|
|
2018-09-04 16:10:57 +00:00
|
|
|
virtual bool processCommand(const struct SharedMemoryCommand& clientCmd, struct SharedMemoryStatus& serverStatusOut, char* bufferServerToClient, int bufferSizeInBytes);
|
|
|
|
|
|
|
|
virtual bool receiveStatus(struct SharedMemoryStatus& serverStatusOut, char* bufferServerToClient, int bufferSizeInBytes);
|
|
|
|
|
|
|
|
virtual void renderScene(int renderFlags);
|
|
|
|
|
2018-09-23 21:17:31 +00:00
|
|
|
virtual void physicsDebugDraw(int debugDrawFlags);
|
2018-09-04 16:10:57 +00:00
|
|
|
|
|
|
|
virtual void setGuiHelper(struct GUIHelperInterface* guiHelper);
|
|
|
|
|
|
|
|
virtual void setTimeOut(double timeOutInSeconds);
|
|
|
|
|
|
|
|
virtual void reportNotifications() {}
|
|
|
|
};
|
|
|
|
|
2018-09-23 21:17:31 +00:00
|
|
|
#endif //PHYSICS_CLIENT_GRPC_H
|