mirror of
https://github.com/bulletphysics/bullet3
synced 2024-12-14 22:00:05 +00:00
ab8f16961e
Apply clang-format-all.sh using the _clang-format file through all the cpp/.h files. make sure not to apply it to certain serialization structures, since some parser expects the * as part of the name, instead of type. This commit contains no other changes aside from adding and applying clang-format-all.sh
52 lines
2.2 KiB
C++
52 lines
2.2 KiB
C++
#ifndef COLLISION_SDK_INTERFACE_H
|
|
#define COLLISION_SDK_INTERFACE_H
|
|
|
|
#include "../CollisionSdkC_Api.h"
|
|
|
|
class CollisionSdkInterface
|
|
{
|
|
public:
|
|
virtual ~CollisionSdkInterface()
|
|
{
|
|
}
|
|
|
|
virtual plCollisionWorldHandle createCollisionWorld(int maxNumObjsCapacity, int maxNumShapesCapacity, int maxNumPairsCapacity) = 0;
|
|
|
|
virtual void deleteCollisionWorld(plCollisionWorldHandle worldHandle) = 0;
|
|
|
|
virtual plCollisionShapeHandle createSphereShape(plCollisionWorldHandle worldHandle, plReal radius) = 0;
|
|
|
|
virtual plCollisionShapeHandle createPlaneShape(plCollisionWorldHandle worldHandle,
|
|
plReal planeNormalX,
|
|
plReal planeNormalY,
|
|
plReal planeNormalZ,
|
|
plReal planeConstant) = 0;
|
|
|
|
virtual plCollisionShapeHandle createCapsuleShape(plCollisionWorldHandle worldHandle,
|
|
plReal radius,
|
|
plReal height,
|
|
int capsuleAxis) = 0;
|
|
|
|
virtual plCollisionShapeHandle createCompoundShape(plCollisionWorldHandle worldHandle) = 0;
|
|
virtual void addChildShape(plCollisionWorldHandle worldHandle, plCollisionShapeHandle compoundShape, plCollisionShapeHandle childShape, plVector3 childPos, plQuaternion childOrn) = 0;
|
|
|
|
virtual void deleteShape(plCollisionWorldHandle worldHandle, plCollisionShapeHandle shape) = 0;
|
|
|
|
virtual void addCollisionObject(plCollisionWorldHandle world, plCollisionObjectHandle object) = 0;
|
|
virtual void removeCollisionObject(plCollisionWorldHandle world, plCollisionObjectHandle object) = 0;
|
|
|
|
virtual plCollisionObjectHandle createCollisionObject(plCollisionWorldHandle worldHandle, void* userPointer, int userIndex, plCollisionShapeHandle cshape,
|
|
plVector3 startPosition, plQuaternion startOrientation) = 0;
|
|
virtual void deleteCollisionObject(plCollisionObjectHandle body) = 0;
|
|
virtual void setCollisionObjectTransform(plCollisionWorldHandle world, plCollisionObjectHandle body,
|
|
plVector3 position, plQuaternion orientation) = 0;
|
|
|
|
virtual int collide(plCollisionWorldHandle world, plCollisionObjectHandle colA, plCollisionObjectHandle colB,
|
|
lwContactPoint* pointsOut, int pointCapacity) = 0;
|
|
|
|
virtual void collideWorld(plCollisionWorldHandle world,
|
|
plNearCallback filter, void* userData) = 0;
|
|
};
|
|
|
|
#endif //COLLISION_SDK_INTERFACE_H
|