16#ifndef BT_DISCRETE_DYNAMICS_WORLD_MT_H
17#define BT_DISCRETE_DYNAMICS_WORLD_MT_H
58 const static size_t kCacheLineSize = 128;
63 char _cachelinePadding[kCacheLineSize -
sizeof(
btSpinMutex) -
sizeof(
void*)];
68 ThreadSolver* getAndLockThreadSolver();
btConstraintSolverType
btConstraintSolver provides solver interface
BT_DECLARE_ALIGNED_ALLOCATOR()
virtual void solveConstraints(btContactSolverInfo &solverInfo) BT_OVERRIDE
virtual void createPredictiveContacts(btScalar timeStep) BT_OVERRIDE
btDiscreteDynamicsWorldMt(btDispatcher *dispatcher, btBroadphaseInterface *pairCache, btConstraintSolverPoolMt *solverPool, btConstraintSolver *constraintSolverMt, btCollisionConfiguration *collisionConfiguration)
virtual void predictUnconstraintMotion(btScalar timeStep) BT_OVERRIDE
virtual void integrateTransforms(btScalar timeStep) BT_OVERRIDE
virtual int stepSimulation(btScalar timeStep, int maxSubSteps, btScalar fixedTimeStep) BT_OVERRIDE
virtual ~btDiscreteDynamicsWorldMt()
float btScalar
The btScalar type abstracts floating point numbers, to easily switch between double and single floati...
#define ATTRIBUTE_ALIGNED16(a)
btSequentialImpulseConstraintSolverMt int btPersistentManifold int btTypedConstraint ** constraints
btSequentialImpulseConstraintSolverMt int btPersistentManifold int btTypedConstraint int numConstraints
btSequentialImpulseConstraintSolverMt int numBodies
btSequentialImpulseConstraintSolverMt int btPersistentManifold int numManifolds
virtual void reset() BT_OVERRIDE
clear internal cached data and reset random seed
virtual ~btConstraintSolverPoolMt()
virtual btConstraintSolverType getSolverType() const BT_OVERRIDE
virtual btScalar solveGroup(btCollisionObject **bodies, int numBodies, btPersistentManifold **manifolds, int numManifolds, btTypedConstraint **constraints, int numConstraints, const btContactSolverInfo &info, btIDebugDraw *debugDrawer, btDispatcher *dispatcher) BT_OVERRIDE
solve a group of constraints
btConstraintSolverPoolMt(int numSolvers)