diff options
author | Teravus Ovares | 2007-11-28 06:18:07 +0000 |
---|---|---|
committer | Teravus Ovares | 2007-11-28 06:18:07 +0000 |
commit | b7d596a6af51bea7dba642cdc768ac5ff77af5f3 (patch) | |
tree | 967b749b10b548f6ed687d8ade4680e411793da4 /OpenSim/Region/Physics/Manager/PhysicsScene.cs | |
parent | build ThrottleCheck function to clear up bits of the throttle (diff) | |
download | opensim-SC_OLD-b7d596a6af51bea7dba642cdc768ac5ff77af5f3.zip opensim-SC_OLD-b7d596a6af51bea7dba642cdc768ac5ff77af5f3.tar.gz opensim-SC_OLD-b7d596a6af51bea7dba642cdc768ac5ff77af5f3.tar.bz2 opensim-SC_OLD-b7d596a6af51bea7dba642cdc768ac5ff77af5f3.tar.xz |
* Restaring the sim works fine in grid mode now. Sims announce themselves to their neighbors when they start up. Neighbors get this message and tell their agents that there's a new sim up.
* Certain unrecoverable physics based crashes in ODE are now hooked up to the 'restart the sim' routine.
Diffstat (limited to 'OpenSim/Region/Physics/Manager/PhysicsScene.cs')
-rw-r--r-- | OpenSim/Region/Physics/Manager/PhysicsScene.cs | 17 |
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 | ||
33 | namespace OpenSim.Region.Physics.Manager | 33 | namespace 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 | ||