12345678910111213141516171819202122232425262728293031323334353637383940414243 |
- #ifndef BT_COLLISION_OBJECT_WRAPPER_H
- #define BT_COLLISION_OBJECT_WRAPPER_H
- ///btCollisionObjectWrapperis an internal data structure.
- ///Most users can ignore this and use btCollisionObject and btCollisionShape instead
- class btCollisionShape;
- class btCollisionObject;
- class btTransform;
- #include "bullet/LinearMath/btScalar.h" // for SIMD_FORCE_INLINE definition
- #define BT_DECLARE_STACK_ONLY_OBJECT \
- private: \
- void* operator new(size_t size); \
- void operator delete(void*);
- struct btCollisionObjectWrapper;
- struct btCollisionObjectWrapper
- {
- BT_DECLARE_STACK_ONLY_OBJECT
- private:
- btCollisionObjectWrapper(const btCollisionObjectWrapper&); // not implemented. Not allowed.
- btCollisionObjectWrapper* operator=(const btCollisionObjectWrapper&);
- public:
- const btCollisionObjectWrapper* m_parent;
- const btCollisionShape* m_shape;
- const btCollisionObject* m_collisionObject;
- const btTransform& m_worldTransform;
- int m_partId;
- int m_index;
- btCollisionObjectWrapper(const btCollisionObjectWrapper* parent, const btCollisionShape* shape, const btCollisionObject* collisionObject, const btTransform& worldTransform, int partId, int index)
- : m_parent(parent), m_shape(shape), m_collisionObject(collisionObject), m_worldTransform(worldTransform),
- m_partId(partId), m_index(index)
- {}
- SIMD_FORCE_INLINE const btTransform& getWorldTransform() const { return m_worldTransform; }
- SIMD_FORCE_INLINE const btCollisionObject* getCollisionObject() const { return m_collisionObject; }
- SIMD_FORCE_INLINE const btCollisionShape* getCollisionShape() const { return m_shape; }
- };
- #endif //BT_COLLISION_OBJECT_WRAPPER_H
|