2016-11-04 20:15:10 +00:00
|
|
|
#ifndef PHYSICS_COMMAND_PROCESSOR_INTERFACE_H
|
|
|
|
#define PHYSICS_COMMAND_PROCESSOR_INTERFACE_H
|
|
|
|
|
print better error warning, in case the physics client/server version mismatch.
fix in b3HashString
remove many unused dependencies from kuka_grasp_block_playback.py (time,math, datetime ,numpy,pylab ,sys, os, fnmatch,argparse were not used!)
move block_grasp_log.bin from Bullet3/data to Bullet3/examples/pybullet/examples/data folder.
PhysicsServerCommandProcessor, derive from CommandProcessorInterface to prepare for different back-end implementation
2017-05-29 00:05:18 +00:00
|
|
|
enum PhysicsCommandRenderFlags
|
2017-05-16 19:19:03 +00:00
|
|
|
{
|
2018-09-23 21:17:31 +00:00
|
|
|
COV_DISABLE_SYNC_RENDERING = 1
|
2017-05-16 19:19:03 +00:00
|
|
|
};
|
|
|
|
|
2016-11-04 20:15:10 +00:00
|
|
|
class PhysicsCommandProcessorInterface
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
virtual ~PhysicsCommandProcessorInterface() {}
|
|
|
|
|
2018-09-23 21:17:31 +00:00
|
|
|
virtual bool connect() = 0;
|
2016-11-04 20:15:10 +00:00
|
|
|
|
|
|
|
virtual void disconnect() = 0;
|
|
|
|
|
|
|
|
virtual bool isConnected() const = 0;
|
|
|
|
|
|
|
|
virtual bool processCommand(const struct SharedMemoryCommand& clientCmd, struct SharedMemoryStatus& serverStatusOut, char* bufferServerToClient, int bufferSizeInBytes) = 0;
|
|
|
|
|
|
|
|
virtual bool receiveStatus(struct SharedMemoryStatus& serverStatusOut, char* bufferServerToClient, int bufferSizeInBytes) = 0;
|
|
|
|
|
2017-05-16 19:19:03 +00:00
|
|
|
virtual void renderScene(int renderFlags) = 0;
|
2018-09-23 21:17:31 +00:00
|
|
|
virtual void physicsDebugDraw(int debugDrawFlags) = 0;
|
2016-11-04 20:15:10 +00:00
|
|
|
virtual void setGuiHelper(struct GUIHelperInterface* guiHelper) = 0;
|
2017-02-24 23:34:11 +00:00
|
|
|
virtual void setTimeOut(double timeOutInSeconds) = 0;
|
2016-11-04 20:15:10 +00:00
|
|
|
|
2018-09-04 06:13:15 +00:00
|
|
|
virtual void reportNotifications() = 0;
|
2016-11-04 20:15:10 +00:00
|
|
|
};
|
|
|
|
|
print better error warning, in case the physics client/server version mismatch.
fix in b3HashString
remove many unused dependencies from kuka_grasp_block_playback.py (time,math, datetime ,numpy,pylab ,sys, os, fnmatch,argparse were not used!)
move block_grasp_log.bin from Bullet3/data to Bullet3/examples/pybullet/examples/data folder.
PhysicsServerCommandProcessor, derive from CommandProcessorInterface to prepare for different back-end implementation
2017-05-29 00:05:18 +00:00
|
|
|
class btVector3;
|
2017-05-31 02:54:55 +00:00
|
|
|
class btQuaternion;
|
print better error warning, in case the physics client/server version mismatch.
fix in b3HashString
remove many unused dependencies from kuka_grasp_block_playback.py (time,math, datetime ,numpy,pylab ,sys, os, fnmatch,argparse were not used!)
move block_grasp_log.bin from Bullet3/data to Bullet3/examples/pybullet/examples/data folder.
PhysicsServerCommandProcessor, derive from CommandProcessorInterface to prepare for different back-end implementation
2017-05-29 00:05:18 +00:00
|
|
|
|
|
|
|
class CommandProcessorInterface : public PhysicsCommandProcessorInterface
|
|
|
|
{
|
|
|
|
public:
|
2018-09-23 21:17:31 +00:00
|
|
|
virtual ~CommandProcessorInterface() {}
|
2018-09-04 06:13:15 +00:00
|
|
|
|
2018-09-23 21:17:31 +00:00
|
|
|
virtual void syncPhysicsToGraphics() = 0;
|
|
|
|
virtual void stepSimulationRealTime(double dtInSec, const struct b3VRControllerEvent* vrControllerEvents, int numVRControllerEvents, const struct b3KeyboardEvent* keyEvents, int numKeyEvents, const struct b3MouseEvent* mouseEvents, int numMouseEvents) = 0;
|
|
|
|
virtual void enableRealTimeSimulation(bool enableRealTimeSim) = 0;
|
|
|
|
virtual bool isRealTimeSimulationEnabled() const = 0;
|
2018-07-24 12:12:16 +00:00
|
|
|
|
2018-09-23 21:17:31 +00:00
|
|
|
virtual void enableCommandLogging(bool enable, const char* fileName) = 0;
|
|
|
|
virtual void replayFromLogFile(const char* fileName) = 0;
|
|
|
|
virtual void replayLogCommand(char* bufferServerToClient, int bufferSizeInBytes) = 0;
|
print better error warning, in case the physics client/server version mismatch.
fix in b3HashString
remove many unused dependencies from kuka_grasp_block_playback.py (time,math, datetime ,numpy,pylab ,sys, os, fnmatch,argparse were not used!)
move block_grasp_log.bin from Bullet3/data to Bullet3/examples/pybullet/examples/data folder.
PhysicsServerCommandProcessor, derive from CommandProcessorInterface to prepare for different back-end implementation
2017-05-29 00:05:18 +00:00
|
|
|
|
2018-09-23 21:17:31 +00:00
|
|
|
virtual bool pickBody(const btVector3& rayFromWorld, const btVector3& rayToWorld) = 0;
|
|
|
|
virtual bool movePickedBody(const btVector3& rayFromWorld, const btVector3& rayToWorld) = 0;
|
|
|
|
virtual void removePickingConstraint() = 0;
|
print better error warning, in case the physics client/server version mismatch.
fix in b3HashString
remove many unused dependencies from kuka_grasp_block_playback.py (time,math, datetime ,numpy,pylab ,sys, os, fnmatch,argparse were not used!)
move block_grasp_log.bin from Bullet3/data to Bullet3/examples/pybullet/examples/data folder.
PhysicsServerCommandProcessor, derive from CommandProcessorInterface to prepare for different back-end implementation
2017-05-29 00:05:18 +00:00
|
|
|
|
2018-09-23 21:17:31 +00:00
|
|
|
virtual const btVector3& getVRTeleportPosition() const = 0;
|
|
|
|
virtual void setVRTeleportPosition(const btVector3& vrReleportPos) = 0;
|
2017-05-31 02:54:55 +00:00
|
|
|
|
2018-09-23 21:17:31 +00:00
|
|
|
virtual const btQuaternion& getVRTeleportOrientation() const = 0;
|
|
|
|
virtual void setVRTeleportOrientation(const btQuaternion& vrReleportOrn) = 0;
|
2018-09-06 00:58:14 +00:00
|
|
|
|
|
|
|
virtual void processClientCommands() = 0;
|
print better error warning, in case the physics client/server version mismatch.
fix in b3HashString
remove many unused dependencies from kuka_grasp_block_playback.py (time,math, datetime ,numpy,pylab ,sys, os, fnmatch,argparse were not used!)
move block_grasp_log.bin from Bullet3/data to Bullet3/examples/pybullet/examples/data folder.
PhysicsServerCommandProcessor, derive from CommandProcessorInterface to prepare for different back-end implementation
2017-05-29 00:05:18 +00:00
|
|
|
};
|
|
|
|
|
2018-09-23 21:17:31 +00:00
|
|
|
#endif //PHYSICS_COMMAND_PROCESSOR_INTERFACE_H
|