Newton Dynamics  4.00
ndWorld::ndWorldMixedScene Class Reference
Inheritance diagram for ndWorld::ndWorldMixedScene:
ndSceneMixed ndScene dClassAlloc dThreadPool dSyncMutex dThread dSemaphore

Public Member Functions

 ndWorldMixedScene (ndWorld *const world)
 
ndWorldGetWorld () const
 
void SubStepUpdate (dFloat32 timestep)
 
void ThreadFunction ()
 
- Public Member Functions inherited from ndScene
void Sync ()
 
dInt32 GetThreadCount () const
 
const dArray< ndContact * > & GetActiveContacts () const
 
const dArray< ndBodyKinematic * > & GetWorkingBodyArray () const
 
template<class T >
void SubmitJobs ()
 
dFloat32 GetTimestep () const
 
void SetTimestep (dFloat32 timestep)
 
D_COLLISION_API void Update (dFloat32 timestep)
 
D_COLLISION_API ndContactNotifyGetContactNotify () const
 
D_COLLISION_API void SetContactNotify (ndContactNotify *const notify)
 
- Public Member Functions inherited from dClassAlloc
void * operator new (size_t size)
 
void operator delete (void *ptr)
 
- Public Member Functions inherited from dThreadPool
D_CORE_API dThreadPool (const char *const baseName)
 
D_CORE_API dInt32 GetCount () const
 
D_CORE_API void SetCount (dInt32 count)
 
D_CORE_API void TickOne ()
 
D_CORE_API void ExecuteJobs (dThreadPoolJob **const jobs)
 
- Public Member Functions inherited from dSyncMutex
D_CORE_API void Tick ()
 
D_CORE_API void Release ()
 
D_CORE_API void Sync ()
 
- Public Member Functions inherited from dThread
D_CORE_API void SetName (const char *const name)
 
D_CORE_API void Start ()
 
D_CORE_API void Finish ()
 
D_CORE_API void Signal ()
 
- Public Member Functions inherited from dSemaphore
D_CORE_API dInt32 GetCount ()
 
D_CORE_API void Signal ()
 
D_CORE_API bool Wait ()
 
D_CORE_API void Terminate ()
 

Public Attributes

ndWorldm_world
 

Additional Inherited Members

- Static Public Member Functions inherited from dClassAlloc
static D_CORE_API void * Malloc (size_t size)
 
static D_CORE_API void Free (void *const ptr)
 
- Protected Member Functions inherited from ndSceneMixed
virtual D_COLLISION_API bool AddBody (ndBodyKinematic *const body)
 
virtual D_COLLISION_API bool RemoveBody (ndBodyKinematic *const body)
 
virtual D_COLLISION_API dFloat32 RayCast (ndRayCastNotify &callback, const dVector &p0, const dVector &p1) const
 
virtual D_COLLISION_API void Cleanup ()
 
D_COLLISION_API void BalanceBroadPhase ()
 
- Protected Member Functions inherited from ndScene
D_COLLISION_API void BuildBodyArray ()
 
D_COLLISION_API void AttachNewContact ()
 
D_COLLISION_API void UpdateAabb ()
 
D_COLLISION_API void TransformUpdate ()
 
D_COLLISION_API void CalculateContacts ()
 
D_COLLISION_API void DeleteDeadContact ()
 
D_COLLISION_API void FindCollidingPairs ()
 
D_COLLISION_API ndSceneTreeNodeInsertNode (ndSceneNode *const root, ndSceneNode *const node)
 
void UpdateFitness (ndFitnessList &fitness, dFloat64 &oldEntropy, ndSceneNode **const root)
 
ndContactFindContactJoint (ndBodyKinematic *const body0, ndBodyKinematic *const body1) const
 
ndBilateralJoint * FindBilateralJoint (ndBody *const body0, ndBody *const body1) const
 
void AddPair (ndBodyKinematic *const body0, ndBodyKinematic *const body1)
 
bool TestOverlaping (const ndBodyKinematic *const body0, const ndBodyKinematic *const body1) const
 
void SubmitPairs (ndSceneNode *const leaftNode, ndSceneNode *const node)
 
dFloat32 RayCast (ndRayCastNotify &callback, const ndSceneNode **stackPool, dFloat32 *const distance, dInt32 stack, const dFastRayTest &ray) const
 
- Protected Attributes inherited from ndScene
ndBodyList m_bodyList
 
ndContactList m_contactList
 
dArray< ndBodyKinematic * > m_tmpBodyArray
 
dArray< ndContact * > m_activeContacts
 
dSpinLock m_contactLock
 
ndSceneNodem_rootNode
 
ndContactNotifym_contactNotifyCallback
 
dFloat32 m_timestep
 
dUnsigned32 m_lru
 
bool m_fullScan
 
- Static Protected Attributes inherited from ndScene
static dVector m_velocTol
 
static dVector m_linearContactError2
 
static dVector m_angularContactError2