Blender
V3.3
|
#include "btScalar.h"
Go to the source code of this file.
Classes | |
class | btSpinMutex |
class | btIParallelForBody |
class | btIParallelSumBody |
class | btITaskScheduler |
Macros | |
#define | BT_OVERRIDE |
Functions | |
bool | btIsMainThread () |
bool | btThreadsAreRunning () |
unsigned int | btGetCurrentThreadIndex () |
void | btResetThreadIndexCounter () |
SIMD_FORCE_INLINE void | btMutexLock (btSpinMutex *mutex) |
SIMD_FORCE_INLINE void | btMutexUnlock (btSpinMutex *mutex) |
SIMD_FORCE_INLINE bool | btMutexTryLock (btSpinMutex *mutex) |
void | btSetTaskScheduler (btITaskScheduler *ts) |
btITaskScheduler * | btGetTaskScheduler () |
btITaskScheduler * | btGetSequentialTaskScheduler () |
btITaskScheduler * | btCreateDefaultTaskScheduler () |
btITaskScheduler * | btGetOpenMPTaskScheduler () |
btITaskScheduler * | btGetTBBTaskScheduler () |
btITaskScheduler * | btGetPPLTaskScheduler () |
void | btParallelFor (int iBegin, int iEnd, int grainSize, const btIParallelForBody &body) |
btScalar | btParallelSum (int iBegin, int iEnd, int grainSize, const btIParallelSumBody &body) |
Variables | |
const unsigned int | BT_MAX_THREAD_COUNT = 64 |
#define BT_OVERRIDE |
Definition at line 26 of file btThreads.h.
btITaskScheduler* btCreateDefaultTaskScheduler | ( | ) |
Definition at line 787 of file btTaskScheduler.cpp.
References NULL.
unsigned int btGetCurrentThreadIndex | ( | ) |
Definition at line 290 of file btThreads.cpp.
References BT_MAX_THREAD_COUNT, btAssert, gBtTaskScheduler, ThreadsafeCounter::getNext(), gThreadCounter, THREAD_LOCAL_STATIC, and U.
Referenced by btIsMainThread(), btQuickprofGetCurrentThreadIndex2(), btSetTaskScheduler(), btCollisionDispatcherMt::getNewManifold(), and btDbvtBroadphase::rayTest().
btITaskScheduler* btGetOpenMPTaskScheduler | ( | ) |
Definition at line 762 of file btThreads.cpp.
References NULL.
btITaskScheduler* btGetPPLTaskScheduler | ( | ) |
Definition at line 784 of file btThreads.cpp.
References NULL.
btITaskScheduler* btGetSequentialTaskScheduler | ( | ) |
Definition at line 755 of file btThreads.cpp.
btITaskScheduler* btGetTaskScheduler | ( | ) |
Definition at line 407 of file btThreads.cpp.
References gBtTaskScheduler.
Referenced by btCollisionDispatcherMt::btCollisionDispatcherMt(), and writeGrainSizes().
btITaskScheduler* btGetTBBTaskScheduler | ( | ) |
Definition at line 773 of file btThreads.cpp.
References NULL.
bool btIsMainThread | ( | ) |
Definition at line 324 of file btThreads.cpp.
References btGetCurrentThreadIndex().
Referenced by btResetThreadIndexCounter().
SIMD_FORCE_INLINE void btMutexLock | ( | btSpinMutex * | mutex | ) |
Definition at line 70 of file btThreads.h.
Referenced by btPoolAllocator::allocate(), createPredictiveContactsInternal(), and btPoolAllocator::freeMemory().
SIMD_FORCE_INLINE bool btMutexTryLock | ( | btSpinMutex * | mutex | ) |
Definition at line 88 of file btThreads.h.
SIMD_FORCE_INLINE void btMutexUnlock | ( | btSpinMutex * | mutex | ) |
Definition at line 79 of file btThreads.h.
Referenced by btPoolAllocator::allocate(), createPredictiveContactsInternal(), and btPoolAllocator::freeMemory().
void btParallelFor | ( | int | iBegin, |
int | iEnd, | ||
int | grainSize, | ||
const btIParallelForBody & | body | ||
) |
Definition at line 412 of file btThreads.cpp.
References BT_MAX_THREAD_COUNT, btAssert, btThreadsAreRunning(), btIParallelForBody::forLoop(), gBtTaskScheduler, NULL, and btITaskScheduler::parallelFor().
Referenced by allocAllContactConstraints(), btCollisionDispatcherMt::dispatchAllCollisionPairs(), expandConstraintRowsMt(), initBatchedConstraintInfo(), btSimulationIslandManagerMt::parallelIslandDispatch(), setupAllContactConstraints(), setupSpatialGridBatchesMt(), updateConstraintBatchIdsForMergesMt(), and writeOutConstraintIndicesMt().
btScalar btParallelSum | ( | int | iBegin, |
int | iEnd, | ||
int | grainSize, | ||
const btIParallelSumBody & | body | ||
) |
Definition at line 439 of file btThreads.cpp.
References BT_MAX_THREAD_COUNT, btAssert, btThreadsAreRunning(), gBtTaskScheduler, NULL, btITaskScheduler::parallelSum(), and btIParallelSumBody::sumLoop().
Referenced by resolveAllContactConstraints(), resolveAllContactConstraintsInterleaved(), resolveAllContactFrictionConstraints(), resolveAllJointConstraints(), and resolveAllRollingFrictionConstraints().
void btResetThreadIndexCounter | ( | ) |
Definition at line 329 of file btThreads.cpp.
References btAssert, btIsMainThread(), gThreadCounter, and ThreadsafeCounter::mCounter.
void btSetTaskScheduler | ( | btITaskScheduler * | ts | ) |
Definition at line 386 of file btThreads.cpp.
References btITaskScheduler::activate(), btAssert, btGetCurrentThreadIndex(), btITaskScheduler::deactivate(), and gBtTaskScheduler.
bool btThreadsAreRunning | ( | ) |
Definition at line 381 of file btThreads.cpp.
References gThreadsRunningCounter.
Referenced by btParallelFor(), and btParallelSum().
const unsigned int BT_MAX_THREAD_COUNT = 64 |
Definition at line 31 of file btThreads.h.
Referenced by btDbvtBroadphase::btDbvtBroadphase(), btGetCurrentThreadIndex(), btParallelFor(), btParallelSum(), and ThreadsafeCounter::getNext().