2015-10-17 20:44:00 +00:00
|
|
|
#ifndef COLLISION_SDK_INTERFACE_H
|
|
|
|
#define COLLISION_SDK_INTERFACE_H
|
|
|
|
|
|
|
|
#include "../CollisionSdkC_Api.h"
|
|
|
|
|
|
|
|
class CollisionSdkInterface
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
|
|
|
|
virtual ~CollisionSdkInterface()
|
|
|
|
{
|
|
|
|
}
|
|
|
|
|
2015-10-18 21:01:25 +00:00
|
|
|
virtual plCollisionWorldHandle createCollisionWorld(int maxNumObjsCapacity, int maxNumShapesCapacity, int maxNumPairsCapacity) = 0;
|
2015-10-17 20:44:00 +00:00
|
|
|
|
|
|
|
virtual void deleteCollisionWorld(plCollisionWorldHandle worldHandle) = 0;
|
|
|
|
|
2015-10-18 21:01:25 +00:00
|
|
|
virtual plCollisionShapeHandle createSphereShape(plCollisionWorldHandle worldHandle, plReal radius) = 0;
|
2015-10-17 20:44:00 +00:00
|
|
|
|
2015-10-18 21:01:25 +00:00
|
|
|
virtual void deleteShape(plCollisionWorldHandle worldHandle, plCollisionShapeHandle shape) = 0;
|
2015-10-17 20:44:00 +00:00
|
|
|
|
|
|
|
virtual void addCollisionObject(plCollisionWorldHandle world, plCollisionObjectHandle object)=0;
|
|
|
|
virtual void removeCollisionObject(plCollisionWorldHandle world, plCollisionObjectHandle object)=0;
|
|
|
|
|
2015-10-18 21:01:25 +00:00
|
|
|
virtual plCollisionObjectHandle createCollisionObject( void* userPointer, int userIndex, plCollisionShapeHandle cshape ,
|
2015-10-18 01:52:48 +00:00
|
|
|
plVector3 startPosition,plQuaternion startOrientation )=0;
|
2015-10-17 20:44:00 +00:00
|
|
|
virtual void deleteCollisionObject(plCollisionObjectHandle body)=0;
|
2015-10-18 21:01:25 +00:00
|
|
|
virtual void setCollisionObjectTransform(plCollisionObjectHandle body,
|
|
|
|
plVector3 position,plQuaternion orientation )=0;
|
2015-10-18 01:52:48 +00:00
|
|
|
|
|
|
|
virtual int collide(plCollisionWorldHandle world,plCollisionObjectHandle colA, plCollisionObjectHandle colB,
|
|
|
|
lwContactPoint* pointsOut, int pointCapacity)=0;
|
|
|
|
|
|
|
|
virtual void collideWorld( plCollisionWorldHandle world,
|
|
|
|
plNearCallback filter, void* userData)=0;
|
2015-10-17 20:44:00 +00:00
|
|
|
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
#endif //COLLISION_SDK_INTERFACE_H
|
|
|
|
|