Newton Dynamics  4.00
ndWorld Class Reference
Inheritance diagram for ndWorld:
ndClassAlloc

Public Types

enum  ndSolverModes {
  ndStandardSolver, ndSimdSoaSolver, ndSimdAvx2Solver, ndCudaSolver,
  ndOpenclSolver1, ndOpenclSolver2
}
 

Public Member Functions

virtual D_NEWTON_API void CleanUp ()
 
D_NEWTON_API ndInt32 GetEngineVersion () const
 
D_NEWTON_API void Sync () const
 
D_NEWTON_API void Update (ndFloat32 timestep)
 
D_NEWTON_API void CollisionUpdate (ndFloat32 timestep)
 
virtual D_NEWTON_API void OnPostUpdate (ndFloat32 timestep)
 
D_NEWTON_API ndInt32 GetThreadCount () const
 
D_NEWTON_API void SetThreadCount (ndInt32 count)
 
D_NEWTON_API ndInt32 GetSubSteps () const
 
D_NEWTON_API void SetSubSteps (ndInt32 subSteps)
 
D_NEWTON_API ndSolverModes GetSelectedSolver () const
 
D_NEWTON_API void SelectSolver (ndSolverModes solverMode)
 
D_NEWTON_API bool IsGPU () const
 
D_NEWTON_API ndSceneGetScene () const
 
D_NEWTON_API const char * GetSolverString () const
 
D_NEWTON_API ndBodyKinematicGetSentinelBody () const
 
virtual D_NEWTON_API bool AddBody (ndSharedPtr< ndBody > &body)
 
virtual D_NEWTON_API void AddModel (ndSharedPtr< ndModel > &model)
 
virtual D_NEWTON_API void AddJoint (ndSharedPtr< ndJointBilateralConstraint > &joint)
 
virtual D_NEWTON_API void RemoveBody (ndBody *const body)
 
virtual D_NEWTON_API void RemoveModel (ndModel *const model)
 
virtual D_NEWTON_API void RemoveJoint (ndJointBilateralConstraint *const joint)
 
D_NEWTON_API const ndJointListGetJointList () const
 
D_NEWTON_API const ndModelListGetModelList () const
 
D_NEWTON_API const ndBodyListViewGetBodyList () const
 
D_NEWTON_API const ndBodyListGetParticleList () const
 
D_NEWTON_API const ndContactArrayGetContactList () const
 
D_NEWTON_API const ndSkeletonListGetSkeletonList () const
 
D_NEWTON_API ndInt32 GetSolverIterations () const
 
D_NEWTON_API void SetSolverIterations (ndInt32 iterations)
 
D_NEWTON_API ndFloat32 GetUpdateTime () const
 
D_NEWTON_API ndUnsigned32 GetFrameNumber () const
 
D_NEWTON_API ndUnsigned32 GetSubFrameNumber () const
 
D_NEWTON_API ndFloat32 GetAverageUpdateTime () const
 
D_NEWTON_API ndFloat32 GetExtensionAverageUpdateTime () const
 
D_NEWTON_API ndContactNotifyGetContactNotify () const
 
D_NEWTON_API void SetContactNotify (ndContactNotify *const notify)
 
D_NEWTON_API void DebugScene (ndSceneTreeNotiFy *const notify)
 
D_NEWTON_API void SendBackgroundTask (ndBackgroundTask *const job)
 
D_NEWTON_API void ClearCache ()
 
D_NEWTON_API void BodiesInAabb (ndBodiesInAabbNotify &callback, const ndVector &minBox, const ndVector &maxBox) const
 
D_NEWTON_API bool RayCast (ndRayCastNotify &callback, const ndVector &globalOrigin, const ndVector &globalDest) const
 
D_NEWTON_API bool ConvexCast (ndConvexCastNotify &callback, const ndShapeInstance &convexShape, const ndMatrix &globalOrigin, const ndVector &globalDest) const
 
- Public Member Functions inherited from ndClassAlloc
 ndClassAlloc ()
 Empty default constructor.
 
 ~ndClassAlloc ()
 Empty.
 

Protected Member Functions

virtual D_NEWTON_API void UpdateSkeletons ()
 
virtual D_NEWTON_API void UpdateTransforms ()
 
virtual D_NEWTON_API void PostModelTransform ()
 

Friends

class ndScene
 
class ndWorldScene
 
class ndBodyDynamic
 
class ndDynamicsUpdate
 
class ndSkeletonContainer
 
class ndDynamicsUpdateSoa
 
class ndDynamicsUpdateAvx2
 
class ndDynamicsUpdateCuda
 
class ndDynamicsUpdateOpencl
 

Additional Inherited Members

- Static Public Member Functions inherited from ndClassAlloc
D_OPERATOR_NEW_AND_DELETE static D_CORE_API void * Malloc (size_t size)
 Generic allocation for any function subclass from ndClassAlloc.
 
static D_CORE_API void Free (void *const ptr)
 Generic destruction for any function subclass from ndClassAlloc.