aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Physics/Manager
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Region/Physics/Manager')
-rw-r--r--OpenSim/Region/Physics/Manager/PhysicsScene.cs17
1 files changed, 17 insertions, 0 deletions
diff --git a/OpenSim/Region/Physics/Manager/PhysicsScene.cs b/OpenSim/Region/Physics/Manager/PhysicsScene.cs
index 651992c..635b208 100644
--- a/OpenSim/Region/Physics/Manager/PhysicsScene.cs
+++ b/OpenSim/Region/Physics/Manager/PhysicsScene.cs
@@ -32,12 +32,29 @@ using OpenSim.Region.Physics.Manager;
32 32
33namespace OpenSim.Region.Physics.Manager 33namespace OpenSim.Region.Physics.Manager
34{ 34{
35 public delegate void physicsCrash();
36
35 public abstract class PhysicsScene 37 public abstract class PhysicsScene
36 { 38 {
39 // The only thing that should register for this event is the InnerScene
40 // Anything else could cause problems.
41
42 public event physicsCrash OnPhysicsCrash;
43
37 public static PhysicsScene Null 44 public static PhysicsScene Null
38 { 45 {
39 get { return new NullPhysicsScene(); } 46 get { return new NullPhysicsScene(); }
40 } 47 }
48 public virtual void TriggerPhysicsBasedRestart()
49 {
50 physicsCrash handler = OnPhysicsCrash;
51 if (handler != null)
52 {
53 OnPhysicsCrash();
54 }
55
56 }
57
41 58
42 public abstract void Initialise(IMesher meshmerizer); 59 public abstract void Initialise(IMesher meshmerizer);
43 60