Bullet Collision Detection & Physics Library
Classes | Macros | Functions | Variables
btSoftBodySolver_OpenCL.cpp File Reference
#include "BulletCollision/CollisionShapes/btTriangleIndexVertexArray.h"
#include "vectormath/vmInclude.h"
#include <stdio.h>
#include "btSoftBodySolver_OpenCL.h"
#include "BulletSoftBody/btSoftBodySolverVertexBuffer.h"
#include "BulletSoftBody/btSoftBody.h"
#include "BulletSoftBody/btSoftBodyInternals.h"
#include "BulletCollision/CollisionShapes/btCapsuleShape.h"
#include "BulletCollision/CollisionShapes/btSphereShape.h"
#include "LinearMath/btQuickprof.h"
#include <limits.h>
#include "BulletCollision/CollisionDispatch/btCollisionObjectWrapper.h"
#include <CL/cl.h>
#include "OpenCLC10/PrepareLinks.cl"
#include "OpenCLC10/UpdatePositionsFromVelocities.cl"
#include "OpenCLC10/SolvePositions.cl"
#include "OpenCLC10/UpdateNodes.cl"
#include "OpenCLC10/UpdatePositions.cl"
#include "OpenCLC10/UpdateConstants.cl"
#include "OpenCLC10/Integrate.cl"
#include "OpenCLC10/ApplyForces.cl"
#include "OpenCLC10/UpdateFixedVertexPositions.cl"
#include "OpenCLC10/UpdateNormals.cl"
#include "OpenCLC10/VSolveLinks.cl"
#include "OpenCLC10/SolveCollisionsAndUpdateVelocities.cl"
Include dependency graph for btSoftBodySolver_OpenCL.cpp:

Go to the source code of this file.

Classes

class  QuickSortCompare
 

Macros

#define BT_SUPPRESS_OPENCL_ASSERTS
 
#define BT_DEFAULT_WORKGROUPSIZE   64
 
#define RELEASE_CL_KERNEL(kernelName)   {if( kernelName ){ clReleaseKernel( kernelName ); kernelName = 0; }}
 
#define MSTRINGIFY(A)   #A
 

Functions

static const char m_clClothIdentifier (queue, ctx,&m_clothIdentifier, false)
 
static const char m_clVertexPosition (queue, ctx,&m_vertexPosition, false)
 
static const char m_clVertexPreviousPosition (queue, ctx,&m_vertexPreviousPosition, false)
 
static const char m_clVertexVelocity (queue, ctx,&m_vertexVelocity, false)
 
static const char m_clVertexForceAccumulator (queue, ctx,&m_vertexForceAccumulator, false)
 
static const char m_clVertexNormal (queue, ctx,&m_vertexNormal, false)
 
static const char m_clVertexInverseMass (queue, ctx,&m_vertexInverseMass, false)
 
static const char m_clVertexArea (queue, ctx,&m_vertexArea, false)
 
static const char m_clVertexTriangleCount (queue, ctx,&m_vertexTriangleCount, false)
 
static Vectormath::Aos::Vector3 toVector3 (const btVector3 &vec)
 
static Vectormath::Aos::Transform3 toTransform3 (const btTransform &transform)
 

Variables

static const char * PrepareLinksCLString
 

Macro Definition Documentation

#define BT_DEFAULT_WORKGROUPSIZE   64

Definition at line 42 of file btSoftBodySolver_OpenCL.cpp.

#define BT_SUPPRESS_OPENCL_ASSERTS

Definition at line 30 of file btSoftBodySolver_OpenCL.cpp.

#define MSTRINGIFY (   A)    #A

Definition at line 51 of file btSoftBodySolver_OpenCL.cpp.

#define RELEASE_CL_KERNEL (   kernelName)    {if( kernelName ){ clReleaseKernel( kernelName ); kernelName = 0; }}

Definition at line 45 of file btSoftBodySolver_OpenCL.cpp.

Function Documentation

static const char m_clClothIdentifier ( queue  ,
ctx  ,
m_clothIdentifier,
false   
)
static
static const char m_clVertexArea ( queue  ,
ctx  ,
m_vertexArea,
false   
)
static const char m_clVertexForceAccumulator ( queue  ,
ctx  ,
m_vertexForceAccumulator,
false   
)
static const char m_clVertexInverseMass ( queue  ,
ctx  ,
m_vertexInverseMass,
false   
)
static const char m_clVertexNormal ( queue  ,
ctx  ,
m_vertexNormal,
false   
)
static const char m_clVertexPosition ( queue  ,
ctx  ,
m_vertexPosition,
false   
)
static const char m_clVertexPreviousPosition ( queue  ,
ctx  ,
m_vertexPreviousPosition,
false   
)
static const char m_clVertexTriangleCount ( queue  ,
ctx  ,
m_vertexTriangleCount,
false   
)

Definition at line 88 of file btSoftBodySolver_OpenCL.cpp.

static const char m_clVertexVelocity ( queue  ,
ctx  ,
m_vertexVelocity,
false   
)
static Vectormath::Aos::Transform3 toTransform3 ( const btTransform transform)
static

Definition at line 1686 of file btSoftBodySolver_OpenCL.cpp.

static Vectormath::Aos::Vector3 toVector3 ( const btVector3 vec)
static

Definition at line 181 of file btSoftBodySolver_OpenCL.cpp.

Variable Documentation

const char* PrepareLinksCLString
static
Initial value:
=
# 53 "/usr/local/tmp/bullet-2.82-r2704/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/btSoftBodySolver_OpenCL.cpp" 2
# 55 "/usr/local/tmp/bullet-2.82-r2704/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/btSoftBodySolver_OpenCL.cpp" 2
static const char* SolvePositionsCLString =
# 57 "/usr/local/tmp/bullet-2.82-r2704/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/btSoftBodySolver_OpenCL.cpp" 2
static const char* UpdateNodesCLString =
# 59 "/usr/local/tmp/bullet-2.82-r2704/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/btSoftBodySolver_OpenCL.cpp" 2
static const char* UpdatePositionsCLString =
# 61 "/usr/local/tmp/bullet-2.82-r2704/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/btSoftBodySolver_OpenCL.cpp" 2
static const char* UpdateConstantsCLString =
# 63 "/usr/local/tmp/bullet-2.82-r2704/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/btSoftBodySolver_OpenCL.cpp" 2
static const char* IntegrateCLString =
# 65 "/usr/local/tmp/bullet-2.82-r2704/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/btSoftBodySolver_OpenCL.cpp" 2
static const char* ApplyForcesCLString =
# 67 "/usr/local/tmp/bullet-2.82-r2704/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/btSoftBodySolver_OpenCL.cpp" 2
static const char* UpdateFixedVertexPositionsCLString =
# 69 "/usr/local/tmp/bullet-2.82-r2704/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/btSoftBodySolver_OpenCL.cpp" 2
static const char* UpdateNormalsCLString =
# 71 "/usr/local/tmp/bullet-2.82-r2704/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/btSoftBodySolver_OpenCL.cpp" 2
static const char* VSolveLinksCLString =
# 73 "/usr/local/tmp/bullet-2.82-r2704/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/btSoftBodySolver_OpenCL.cpp" 2
static const char* SolveCollisionsAndUpdateVelocitiesCLString =
# 75 "/usr/local/tmp/bullet-2.82-r2704/src/BulletMultiThreaded/GpuSoftBodySolvers/OpenCL/btSoftBodySolver_OpenCL.cpp" 2
m_queue(queue)
struct _cl_context * cl_context
Definition: cl.h:41
static const char * UpdatePositionsFromVelocitiesCLString
btSoftBodyVertexDataOpenCL(cl_command_queue queue, cl_context ctx)
struct _cl_command_queue * cl_command_queue
Definition: cl.h:42

Definition at line 52 of file btSoftBodySolver_OpenCL.cpp.