|
Blender V4.3
|
Go to the source code of this file.
Classes | |
| struct | ThreadsafeCounter |
| class | btTaskSchedulerSequential |
Macros | |
| #define | THREAD_LOCAL_STATIC static |
| #define | BT_DETECT_BAD_THREAD_INDEX 0 |
Functions | |
| unsigned int | btGetCurrentThreadIndex () |
| bool | btIsMainThread () |
| void | btResetThreadIndexCounter () |
| void | btPushThreadsAreRunning () |
| void | btPopThreadsAreRunning () |
| bool | btThreadsAreRunning () |
| void | btSetTaskScheduler (btITaskScheduler *ts) |
| btITaskScheduler * | btGetTaskScheduler () |
| void | btParallelFor (int iBegin, int iEnd, int grainSize, const btIParallelForBody &body) |
| btScalar | btParallelSum (int iBegin, int iEnd, int grainSize, const btIParallelSumBody &body) |
| btITaskScheduler * | btGetSequentialTaskScheduler () |
| btITaskScheduler * | btGetOpenMPTaskScheduler () |
| btITaskScheduler * | btGetTBBTaskScheduler () |
| btITaskScheduler * | btGetPPLTaskScheduler () |
Variables | |
| static btITaskScheduler * | gBtTaskScheduler =0 |
| static int | gThreadsRunningCounter = 0 |
| static btSpinMutex | gThreadsRunningCounterMutex |
| static ThreadsafeCounter | gThreadCounter |
| #define BT_DETECT_BAD_THREAD_INDEX 0 |
Definition at line 274 of file btThreads.cpp.
| #define THREAD_LOCAL_STATIC static |
Definition at line 212 of file btThreads.cpp.
Referenced by btGetCurrentThreadIndex().
| 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().
| 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 btPopThreadsAreRunning | ( | ) |
Definition at line 374 of file btThreads.cpp.
References gThreadsRunningCounter, gThreadsRunningCounterMutex, btSpinMutex::lock(), and btSpinMutex::unlock().
| void btPushThreadsAreRunning | ( | ) |
Definition at line 367 of file btThreads.cpp.
References gThreadsRunningCounter, gThreadsRunningCounterMutex, btSpinMutex::lock(), and btSpinMutex::unlock().
| 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().
|
static |
Definition at line 244 of file btThreads.cpp.
Referenced by btGetCurrentThreadIndex(), btGetTaskScheduler(), btParallelFor(), btParallelSum(), and btSetTaskScheduler().
|
static |
Definition at line 247 of file btThreads.cpp.
Referenced by btITaskScheduler::activate(), btGetCurrentThreadIndex(), btQuickprofGetCurrentThreadIndex2(), btResetThreadIndexCounter(), and btITaskScheduler::deactivate().
|
static |
Definition at line 245 of file btThreads.cpp.
Referenced by btPopThreadsAreRunning(), btPushThreadsAreRunning(), and btThreadsAreRunning().
|
static |
Definition at line 246 of file btThreads.cpp.
Referenced by btPopThreadsAreRunning(), and btPushThreadsAreRunning().