PxParticleSystemCallback

Defined in include/PxPBDParticleSystem.h

class PxParticleSystemCallback

Particle system callback base class to schedule work that should be done before, while or after the particle system updates.

A call to fetchResultsParticleSystem() on the PxScene will synchronize the work such that the caller knows that all tasks of this callback completed.

Subclassed by PxAnisotropyCallback, PxIsosurfaceCallback, PxMultiCallback, PxSmoothedPositionCallback

Public Functions

virtual void onBegin(const PxGpuMirroredPointer<PxGpuParticleSystem> &gpuParticleSystem, CUstream stream) = 0

Method gets called when dirty data from the particle system is uploated to the gpu.

Parameters
  • gpuParticleSystem[in] Pointers to the particle systems gpu data available as host accessible pointer and as gpu accessible pointer

  • stream[in] The stream on which all cuda kernel calls get scheduled for execution. A call to fetchResultsParticleSystem() on the PxScene will synchronize the work such that the caller knows that the task completed.

virtual void onAdvance(const PxGpuMirroredPointer<PxGpuParticleSystem> &gpuParticleSystem, CUstream stream) = 0

Method gets called when the simulation step of the particle system is performed.

Parameters
  • gpuParticleSystem[in] Pointers to the particle systems gpu data available as host accessible pointer and as gpu accessible pointer

  • stream[in] The stream on which all cuda kernel calls get scheduled for execution. A call to fetchResultsParticleSystem() on the PxScene will synchronize the work such that the caller knows that the task completed.

virtual void onPostSolve(const PxGpuMirroredPointer<PxGpuParticleSystem> &gpuParticleSystem, CUstream stream) = 0

Method gets called after the particle system simulation step completed.

Parameters
  • gpuParticleSystem[in] Pointers to the particle systems gpu data available as host accessible pointer and as gpu accessible pointer

  • stream[in] The stream on which all cuda kernel calls get scheduled for execution. A call to fetchResultsParticleSystem() on the PxScene will synchronize the work such that the caller knows that the task completed.

inline virtual ~PxParticleSystemCallback()

Destructor.