Newton Dynamics  4.00
ndCudaContext Class Reference
Inheritance diagram for ndCudaContext:
ndWorldSceneCuda

Public Member Functions

D_CUDA_API bool IsValid () const
 
D_CUDA_API const char * GetStringId () const
 
D_CUDA_API void Begin ()
 
D_CUDA_API void End ()
 
D_CUDA_API double GetGPUTime () const
 
D_CUDA_API void ResizeBuffers (int size)
 
D_CUDA_API void LoadBodyData (const ndCudaBodyProxy *const src, int size)
 
D_CUDA_API void InitBodyArray ()
 
D_CUDA_API void UpdateTransform ()
 
D_CUDA_API void ValidateContextBuffers ()
 
D_CUDA_API ndCudaSpatialVectorGetTransformBuffer ()
 
D_CUDA_API void IntegrateBodies (float timestep)
 
D_CUDA_API void IntegrateUnconstrainedBodies (float timestep)
 
void SwapBuffers ()
 

Static Public Member Functions

static ndCudaContextCreateContext ()
 

Public Attributes

ndCudaDevicem_device
 
ndCudaContextImplementm_implement
 
cuSceneInfo * m_sceneInfoGpu
 
cuSceneInfo * m_sceneInfoCpu
 
cuDeviceBuffer< unsigned > m_histogram
 
ndArray< cuBodyProxym_bodyBufferCpu
 
cuDeviceBuffer< cuBodyProxym_bodyBufferGpu
 
cuDeviceBuffer< cuBodyAabbCellm_bodyAabbCell
 
cuDeviceBuffer< cuBodyAabbCellm_bodyAabbCellScrath
 
cuDeviceBuffer< cuBoundingBoxm_boundingBoxGpu
 
cuHostBuffer< cuSpatialVectorm_transformBufferCpu0
 
cuHostBuffer< cuSpatialVectorm_transformBufferCpu1
 
cuDeviceBuffer< cuSpatialVectorm_transformBufferGpu0
 
cuDeviceBuffer< cuSpatialVectorm_transformBufferGpu1
 
cudaStream_t m_solverMemCpyStream
 
cudaStream_t m_solverComputeStream
 
ndInt32 m_frameCounter