#include <ChaosSolversModule.h>
◆ FChaosSolversModule()
| FChaosSolversModule::FChaosSolversModule |
( |
| ) |
|
◆ CreateSolver()
Create a new solver state storage object to contain a solver and proxy storage object. Intended to be used by the physics scene to create a common storage object that can be passed to a dedicated thread when it is enabled without having to link Engine from Chaos.
Should be called from the game thread to create a new solver. After creation, non-standalone solvers are dispatched to the physics thread automatically if it is available
- Parameters
-
| InOwner | Ptr to some owning UObject. The module doesn't use this but allows calling code to organize solver ownership |
| ThreadingMode | The desired threading mode the solver will use |
| bStandalone | Whether the solver is standalone (not sent to physics thread - updating left to caller) |
◆ DestroySolver()
Shuts down and destroys a solver state
Should be called on whichever thread currently owns the solver state
◆ DumpHierarchyStats()
| void FChaosSolversModule::DumpHierarchyStats |
( |
int32 * |
OutOptMaxCellElements = nullptr | ) |
|
Outputs statistics for the solver hierarchies. Currently engine calls into this from a console command on demand.
◆ GetAllSolvers()
Retrieve the list of all extant solvers. This contains all owned, unowned and standalone solvers
◆ GetDedicatedTask()
| Chaos::FPersistentPhysicsTask * FChaosSolversModule::GetDedicatedTask |
( |
| ) |
const |
Gets the inner physics thread task if it has been spawned. Care must be taken when using methods and members that the calling context can safely access those fields as the task will be running on its own thread.
◆ GetModule()
◆ GetSettingsProvider()
Safe method for always getting a settings provider (from the external caller or an internal default)
◆ GetSolverActorClass()
| UClass * FChaosSolversModule::GetSolverActorClass |
( |
| ) |
const |
◆ GetSolvers() [1/2]
Read access to the current solver-state objects, be aware which thread owns this data when attempting to use this. Physics thread will query when spinning up to get current world state
◆ GetSolvers() [2/2]
◆ GetSolversMutable() [1/2]
Non-const access to the solver array is private - only the module should ever modify the storage lists
◆ GetSolversMutable() [2/2]
◆ GetSolverUpdatePrerequisites()
Gets a list of pending prerequisites required before proceeding with a solver update
◆ Initialize()
| void FChaosSolversModule::Initialize |
( |
| ) |
|
◆ IsPersistentTaskEnabled()
| bool FChaosSolversModule::IsPersistentTaskEnabled |
( |
| ) |
const |
Queries for multithreaded configurations
◆ IsPersistentTaskRunning()
| bool FChaosSolversModule::IsPersistentTaskRunning |
( |
| ) |
const |
◆ IsValidSolverActorClass()
| bool FChaosSolversModule::IsValidSolverActorClass |
( |
UClass * |
Class | ) |
const |
◆ LockSolvers()
| void FChaosSolversModule::LockSolvers |
( |
| ) |
|
|
inline |
◆ MigrateSolver()
◆ OnCreateMaterial()
◆ OnCreateMaterialMask()
◆ OnDestroyMaterial()
◆ OnDestroyMaterialMask()
◆ OnUpdateMaterial()
Events that the material manager will emit for us to update our threaded data
◆ OnUpdateMaterialMask()
◆ RegisterSolverActorClassProvider()
◆ SetSettingsProvider()
◆ SetSolverActorClass()
| void FChaosSolversModule::SetSolverActorClass |
( |
UClass * |
InActorClass, |
|
|
UClass * |
InActorRequiredBaseClass |
|
) |
| |
|
inline |
Sets the actor type which should be AChaosSolverActor::StaticClass() but that is not accessible from engine.
◆ Shutdown()
| void FChaosSolversModule::Shutdown |
( |
| ) |
|
◆ ShutdownModule()
| void FChaosSolversModule::ShutdownModule |
( |
| ) |
|
◆ StartupModule()
| void FChaosSolversModule::StartupModule |
( |
| ) |
|
◆ SyncTask()
| void FChaosSolversModule::SyncTask |
( |
bool |
bForceBlockingSync = false | ) |
|
Called to request a sync between the game thread and the currently running physics task
- Parameters
-
| bForceBlockingSync | forces this |
◆ UnlockSolvers()
| void FChaosSolversModule::UnlockSolvers |
( |
| ) |
|
|
inline |
The documentation for this class was generated from the following files: