MCPcopy Create free account
hub / github.com/NVIDIAGameWorks/FleX / NvFlexExtCreateContainer

Function NvFlexExtCreateContainer

extensions/flexExtContainer.cpp:425–457  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

423
424
425NvFlexExtContainer* NvFlexExtCreateContainer(NvFlexLibrary* flexLib, NvFlexSolver* solver, int maxParticles)
426{
427 NvFlexExtContainer* c = new NvFlexExtContainer(flexLib);
428
429 c->mSolver = solver;
430 c->mFlexLib = flexLib;
431 c->mMaxParticles = maxParticles;
432
433 // initialize free list
434 c->mFreeList.resize(maxParticles);
435 for (int i=0; i < maxParticles; ++i)
436 c->mFreeList[i] = i;
437
438 c->mActiveList.init(maxParticles);
439 c->mParticles.init(maxParticles);
440 c->mParticlesRest.init(maxParticles);
441 c->mVelocities.init(maxParticles);
442 c->mPhases.init(maxParticles);
443 c->mNormals.init(maxParticles);
444
445
446 // ensure we have the corerct CUDA context set
447 NvFlexAcquireContext(flexLib);
448
449 c->mBoundsLower.init(1);
450 c->mBoundsUpper.init(1);
451
452 NvFlexRestoreContext(flexLib);
453
454 c->mNeedsCompact = false;
455
456 return c;
457}
458
459void NvFlexExtDestroyContainer(NvFlexExtContainer* c)
460{

Callers

nothing calls this directly

Calls 2

resizeMethod · 0.80
initMethod · 0.45

Tested by

no test coverage detected