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

Classes

class  ndKernel
 

Public Member Functions

 ndOpenclSystem (cl_context context, cl_platform_id)
 
void Finish ()
 
cl_program CompileProgram ()
 
void Resize (const ndArray< ndInt32 > &bodyArray)
 
void CopyToGpu (const ndArray< ndInt32 > &bodyArray)
 
void SetKernel (const char *const name, ndKernel &kerner)
 
void ExecuteIntegrateBodyPosition (ndFloat32 timestep, const ndArray< ndBodyKinematic * > &bodyArray)
 
- Public Member Functions inherited from ndClassAlloc
 ndClassAlloc ()
 Empty default constructor.
 
 ~ndClassAlloc ()
 Empty.
 

Static Public Member Functions

static ndOpenclSystemSingleton (ndInt32 driveNumber)
 
- 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.
 

Public Attributes

ndOpenclBodyBuffer m_bodyArray
 
char m_platformName [128]
 
cl_context m_context
 
cl_device_id m_device
 
cl_program m_solverProgram
 
cl_command_queue m_commandQueue
 
ndKernel m_integrateBodiesPosition
 
ndKernel m_integrateBodiesVelocity
 
ndKernel m_integrateUnconstrainedBodies
 
ndInt32 m_computeUnits
 

Static Public Attributes

static const char * m_kernelSource