From e3f229225c5a1506090bfcffcce6d423a566f1fe Mon Sep 17 00:00:00 2001
From: unknown
Date: Wed, 9 Dec 2009 01:34:26 +0100
Subject: Enable scripting interface for windlight
---
OpenSim/Region/Framework/Scenes/EventManager.cs | 12 ++++++++++++
1 file changed, 12 insertions(+)
(limited to 'OpenSim/Region/Framework/Scenes/EventManager.cs')
diff --git a/OpenSim/Region/Framework/Scenes/EventManager.cs b/OpenSim/Region/Framework/Scenes/EventManager.cs
index 753344d..a86e263 100644
--- a/OpenSim/Region/Framework/Scenes/EventManager.cs
+++ b/OpenSim/Region/Framework/Scenes/EventManager.cs
@@ -193,7 +193,9 @@ namespace OpenSim.Region.Framework.Scenes
public event OnMakeChildAgentDelegate OnMakeChildAgent;
public delegate void OnMakeRootAgentDelegate(ScenePresence presence);
+ public delegate void OnSaveNewWindlightProfileDelegate();
public event OnMakeRootAgentDelegate OnMakeRootAgent;
+ public event OnSaveNewWindlightProfileDelegate OnSaveNewWindlightProfile;
public delegate void NewInventoryItemUploadComplete(UUID avatarID, UUID assetID, string name, int userlevel);
@@ -411,6 +413,7 @@ namespace OpenSim.Region.Framework.Scenes
private IncomingInstantMessage handlerUnhandledInstantMessage = null; //OnUnhandledInstantMessage;
private ClientClosed handlerClientClosed = null; //OnClientClosed;
private OnMakeChildAgentDelegate handlerMakeChildAgent = null; //OnMakeChildAgent;
+ private OnSaveNewWindlightProfileDelegate handlerSaveNewWindlightProfile = null; //OnSaveNewWindlightProfile;
private OnMakeRootAgentDelegate handlerMakeRootAgent = null; //OnMakeRootAgent;
private OnTerrainTickDelegate handlerTerrainTick = null; // OnTerainTick;
private RegisterCapsEvent handlerRegisterCaps = null; // OnRegisterCaps;
@@ -772,6 +775,15 @@ namespace OpenSim.Region.Framework.Scenes
}
}
+ public void TriggerOnSaveNewWindlightProfile()
+ {
+ handlerSaveNewWindlightProfile = OnSaveNewWindlightProfile;
+ if (handlerSaveNewWindlightProfile != null)
+ {
+ handlerSaveNewWindlightProfile();
+ }
+ }
+
public void TriggerOnMakeRootAgent(ScenePresence presence)
{
handlerMakeRootAgent = OnMakeRootAgent;
--
cgit v1.1
From 6dbe25360ec3dc3c998378da8b422751d3e032a9 Mon Sep 17 00:00:00 2001
From: CasperW
Date: Thu, 17 Dec 2009 18:40:34 +0100
Subject: Add cmSetWindlightSceneTargeted. Add restrictions on windlight script
use.
---
OpenSim/Region/Framework/Scenes/EventManager.cs | 12 ++++++++++++
1 file changed, 12 insertions(+)
(limited to 'OpenSim/Region/Framework/Scenes/EventManager.cs')
diff --git a/OpenSim/Region/Framework/Scenes/EventManager.cs b/OpenSim/Region/Framework/Scenes/EventManager.cs
index a86e263..68e73b1 100644
--- a/OpenSim/Region/Framework/Scenes/EventManager.cs
+++ b/OpenSim/Region/Framework/Scenes/EventManager.cs
@@ -194,7 +194,9 @@ namespace OpenSim.Region.Framework.Scenes
public delegate void OnMakeRootAgentDelegate(ScenePresence presence);
public delegate void OnSaveNewWindlightProfileDelegate();
+ public delegate void OnSendNewWindlightProfileTargetedDelegate(RegionMeta7WindlightData wl, UUID user);
public event OnMakeRootAgentDelegate OnMakeRootAgent;
+ public event OnSendNewWindlightProfileTargetedDelegate OnSendNewWindlightProfileTargeted;
public event OnSaveNewWindlightProfileDelegate OnSaveNewWindlightProfile;
public delegate void NewInventoryItemUploadComplete(UUID avatarID, UUID assetID, string name, int userlevel);
@@ -414,6 +416,7 @@ namespace OpenSim.Region.Framework.Scenes
private ClientClosed handlerClientClosed = null; //OnClientClosed;
private OnMakeChildAgentDelegate handlerMakeChildAgent = null; //OnMakeChildAgent;
private OnSaveNewWindlightProfileDelegate handlerSaveNewWindlightProfile = null; //OnSaveNewWindlightProfile;
+ private OnSendNewWindlightProfileTargetedDelegate handlerSendNewWindlightProfileTargeted = null; //OnSendNewWindlightProfileTargeted;
private OnMakeRootAgentDelegate handlerMakeRootAgent = null; //OnMakeRootAgent;
private OnTerrainTickDelegate handlerTerrainTick = null; // OnTerainTick;
private RegisterCapsEvent handlerRegisterCaps = null; // OnRegisterCaps;
@@ -775,6 +778,15 @@ namespace OpenSim.Region.Framework.Scenes
}
}
+ public void TriggerOnSendNewWindlightProfileTargeted(RegionMeta7WindlightData wl, UUID user)
+ {
+ handlerSendNewWindlightProfileTargeted = OnSendNewWindlightProfileTargeted;
+ if (handlerSendNewWindlightProfileTargeted != null)
+ {
+ handlerSendNewWindlightProfileTargeted(wl, user);
+ }
+ }
+
public void TriggerOnSaveNewWindlightProfile()
{
handlerSaveNewWindlightProfile = OnSaveNewWindlightProfile;
--
cgit v1.1
From 7d917e7c5c599549d2a87451fe3d6ca2bf6e62a4 Mon Sep 17 00:00:00 2001
From: Melanie
Date: Tue, 30 Mar 2010 23:29:03 +0100
Subject: Rename Meta7Windlight to LightShare
---
OpenSim/Region/Framework/Scenes/EventManager.cs | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
(limited to 'OpenSim/Region/Framework/Scenes/EventManager.cs')
diff --git a/OpenSim/Region/Framework/Scenes/EventManager.cs b/OpenSim/Region/Framework/Scenes/EventManager.cs
index 37a51d9..ef125cd 100644
--- a/OpenSim/Region/Framework/Scenes/EventManager.cs
+++ b/OpenSim/Region/Framework/Scenes/EventManager.cs
@@ -207,7 +207,7 @@ namespace OpenSim.Region.Framework.Scenes
public delegate void OnMakeRootAgentDelegate(ScenePresence presence);
public delegate void OnSaveNewWindlightProfileDelegate();
- public delegate void OnSendNewWindlightProfileTargetedDelegate(RegionMeta7WindlightData wl, UUID user);
+ public delegate void OnSendNewWindlightProfileTargetedDelegate(RegionLightShareData wl, UUID user);
public event OnMakeRootAgentDelegate OnMakeRootAgent;
public event OnSendNewWindlightProfileTargetedDelegate OnSendNewWindlightProfileTargeted;
public event OnSaveNewWindlightProfileDelegate OnSaveNewWindlightProfile;
@@ -1220,7 +1220,7 @@ namespace OpenSim.Region.Framework.Scenes
}
}
- public void TriggerOnSendNewWindlightProfileTargeted(RegionMeta7WindlightData wl, UUID user)
+ public void TriggerOnSendNewWindlightProfileTargeted(RegionLightShareData wl, UUID user)
{
OnSendNewWindlightProfileTargetedDelegate handlerSendNewWindlightProfileTargeted = OnSendNewWindlightProfileTargeted;
if (handlerSendNewWindlightProfileTargeted != null)
--
cgit v1.1
From 592ff1288dd1fccc1d2efde90e94ca0ab4a57652 Mon Sep 17 00:00:00 2001
From: Tom Grimshaw
Date: Sat, 26 Jun 2010 18:51:19 -0700
Subject: Add a new global event : OnTerrainUpdate
---
OpenSim/Region/Framework/Scenes/EventManager.cs | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)
(limited to 'OpenSim/Region/Framework/Scenes/EventManager.cs')
diff --git a/OpenSim/Region/Framework/Scenes/EventManager.cs b/OpenSim/Region/Framework/Scenes/EventManager.cs
index ef125cd..0c9759d 100644
--- a/OpenSim/Region/Framework/Scenes/EventManager.cs
+++ b/OpenSim/Region/Framework/Scenes/EventManager.cs
@@ -55,8 +55,12 @@ namespace OpenSim.Region.Framework.Scenes
public delegate void OnTerrainTickDelegate();
+ public delegate void OnTerrainUpdateDelegate();
+
public event OnTerrainTickDelegate OnTerrainTick;
+ public event OnTerrainUpdateDelegate OnTerrainUpdate;
+
public delegate void OnBackupDelegate(IRegionDataStore datastore, bool forceBackup);
public event OnBackupDelegate OnBackup;
@@ -716,6 +720,26 @@ namespace OpenSim.Region.Framework.Scenes
}
}
}
+ public void TriggerTerrainUpdate()
+ {
+ OnTerrainUpdateDelegate handlerTerrainUpdate = OnTerrainUpdate;
+ if (handlerTerrainUpdate != null)
+ {
+ foreach (OnTerrainUpdateDelegate d in handlerTerrainUpdate.GetInvocationList())
+ {
+ try
+ {
+ d();
+ }
+ catch (Exception e)
+ {
+ m_log.ErrorFormat(
+ "[EVENT MANAGER]: Delegate for TriggerTerrainUpdate failed - continuing. {0} {1}",
+ e.Message, e.StackTrace);
+ }
+ }
+ }
+ }
public void TriggerTerrainTick()
{
--
cgit v1.1
From 00a23eea0ec5d3607cf9cd021a3a182da258686e Mon Sep 17 00:00:00 2001
From: Melanie Thielker
Date: Mon, 6 Sep 2010 03:59:48 +0200
Subject: Reflect the ParcelPropertiesUpdateRequest into Scene.EventManager,
because modules need to see it (Search!) even if it comes in via CAPS
---
OpenSim/Region/Framework/Scenes/EventManager.cs | 26 ++++++++++++++++++++++++-
1 file changed, 25 insertions(+), 1 deletion(-)
(limited to 'OpenSim/Region/Framework/Scenes/EventManager.cs')
diff --git a/OpenSim/Region/Framework/Scenes/EventManager.cs b/OpenSim/Region/Framework/Scenes/EventManager.cs
index 52e6e92..d4e2736 100644
--- a/OpenSim/Region/Framework/Scenes/EventManager.cs
+++ b/OpenSim/Region/Framework/Scenes/EventManager.cs
@@ -113,6 +113,8 @@ namespace OpenSim.Region.Framework.Scenes
public event OnSetRootAgentSceneDelegate OnSetRootAgentScene;
+ public event ParcelPropertiesUpdateRequest OnParcelPropertiesUpdateRequest;
+
///
/// Fired when an object is touched/grabbed.
///
@@ -2128,5 +2130,27 @@ namespace OpenSim.Region.Framework.Scenes
}
}
}
+
+ public void TriggerOnParcelPropertiesUpdateRequest(LandUpdateArgs args,
+ int local_id, IClientAPI remote_client)
+ {
+ ParcelPropertiesUpdateRequest handler = OnParcelPropertiesUpdateRequest;
+ if (handler != null)
+ {
+ foreach (ParcelPropertiesUpdateRequest d in handler.GetInvocationList())
+ {
+ try
+ {
+ d(args, local_id, remote_client);
+ }
+ catch (Exception e)
+ {
+ m_log.ErrorFormat(
+ "[EVENT MANAGER]: Delegate for TriggerOnSceneObjectPartCopy failed - continuing. {0} {1}",
+ e.Message, e.StackTrace);
+ }
+ }
+ }
+ }
}
-}
\ No newline at end of file
+}
--
cgit v1.1
From 8b42f824d3ccd487e1d0917b155faa75fd311927 Mon Sep 17 00:00:00 2001
From: Melanie
Date: Tue, 24 May 2011 00:53:28 +0200
Subject: Add an event for an orderly region shutdown that fires once per
region before the SceneGraph is torn down.
---
OpenSim/Region/Framework/Scenes/EventManager.cs | 25 +++++++++++++++++++++++++
1 file changed, 25 insertions(+)
(limited to 'OpenSim/Region/Framework/Scenes/EventManager.cs')
diff --git a/OpenSim/Region/Framework/Scenes/EventManager.cs b/OpenSim/Region/Framework/Scenes/EventManager.cs
index 4ce7a6c..d326141 100644
--- a/OpenSim/Region/Framework/Scenes/EventManager.cs
+++ b/OpenSim/Region/Framework/Scenes/EventManager.cs
@@ -115,6 +115,10 @@ namespace OpenSim.Region.Framework.Scenes
public event ParcelPropertiesUpdateRequest OnParcelPropertiesUpdateRequest;
+ public delegate void SceneShuttingDownDelegate(Scene scene);
+
+ public event SceneShuttingDownDelegate OnSceneShuttingDown;
+
///
/// Fired when an object is touched/grabbed.
///
@@ -2217,5 +2221,26 @@ namespace OpenSim.Region.Framework.Scenes
}
}
}
+
+ public void TriggerSceneShuttingDown(Scene s)
+ {
+ SceneShuttingDownDelegate handler = OnSceneShuttingDown;
+ if (handler != null)
+ {
+ foreach (SceneShuttingDownDelegate d in handler.GetInvocationList())
+ {
+ try
+ {
+ d(s);
+ }
+ catch (Exception e)
+ {
+ m_log.ErrorFormat(
+ "[EVENT MANAGER]: Delegate for TriggerSceneShuttingDown failed - continuing. {0} {1}",
+ e.Message, e.StackTrace);
+ }
+ }
+ }
+ }
}
}
--
cgit v1.1
From b35f97db4658f0dd4af0ad1f56a6303d6d45d51e Mon Sep 17 00:00:00 2001
From: Melanie
Date: Tue, 17 Jul 2012 10:21:12 +0200
Subject: Replace PollServiceRequestManager with older version, add extra
logging to event exceptions to see call path leading up to it.
---
OpenSim/Region/Framework/Scenes/EventManager.cs | 1 +
1 file changed, 1 insertion(+)
(limited to 'OpenSim/Region/Framework/Scenes/EventManager.cs')
diff --git a/OpenSim/Region/Framework/Scenes/EventManager.cs b/OpenSim/Region/Framework/Scenes/EventManager.cs
index 76a952b..d783e57 100644
--- a/OpenSim/Region/Framework/Scenes/EventManager.cs
+++ b/OpenSim/Region/Framework/Scenes/EventManager.cs
@@ -1210,6 +1210,7 @@ namespace OpenSim.Region.Framework.Scenes
m_log.ErrorFormat(
"[EVENT MANAGER]: Delegate for TriggerRemoveScript failed - continuing. {0} {1}",
e.Message, e.StackTrace);
+ m_log.ErrorFormat(Environment.StackTrace);
}
}
}
--
cgit v1.1
From da0f6b926fdc40cf729bfc3ace4367758adf8f93 Mon Sep 17 00:00:00 2001
From: Melanie
Date: Wed, 15 Aug 2012 18:22:16 +0200
Subject: Add support for the extra params to scene and the event manager
---
OpenSim/Region/Framework/Scenes/EventManager.cs | 23 +++++++++++++++++++++++
1 file changed, 23 insertions(+)
(limited to 'OpenSim/Region/Framework/Scenes/EventManager.cs')
diff --git a/OpenSim/Region/Framework/Scenes/EventManager.cs b/OpenSim/Region/Framework/Scenes/EventManager.cs
index 7cb3811..eee5960 100644
--- a/OpenSim/Region/Framework/Scenes/EventManager.cs
+++ b/OpenSim/Region/Framework/Scenes/EventManager.cs
@@ -217,6 +217,9 @@ namespace OpenSim.Region.Framework.Scenes
///
public event NewScript OnNewScript;
+ public delegate void ExtraSettingChangedDelegate(Scene scene, string name, string value);
+ public event ExtraSettingChangedDelegate OnExtraSettingChanged;
+
public virtual void TriggerNewScript(UUID clientID, SceneObjectPart part, UUID itemID)
{
NewScript handlerNewScript = OnNewScript;
@@ -2616,5 +2619,25 @@ namespace OpenSim.Region.Framework.Scenes
}
}
+ public void TriggerExtraSettingChanged(Scene scene, string name, string val)
+ {
+ ExtraSettingChangedDelegate handler = OnExtraSettingChanged;
+
+ if (handler != null)
+ {
+ foreach (ExtraSettingChangedDelegate d in handler.GetInvocationList())
+ {
+ try
+ {
+ d(scene, name, val);
+ }
+ catch (Exception e)
+ {
+ m_log.ErrorFormat("[EVENT MANAGER]: Delegate for ExtraSettingChanged failed - continuing {0} - {1}",
+ e.Message, e.StackTrace);
+ }
+ }
+ }
+ }
}
}
--
cgit v1.1
From ad7f273d95b941e5556c875d1a2b6ea1cef34604 Mon Sep 17 00:00:00 2001
From: UbitUmarov
Date: Sun, 28 Oct 2012 10:25:58 +0000
Subject: more debug
---
OpenSim/Region/Framework/Scenes/EventManager.cs | 2 ++
1 file changed, 2 insertions(+)
(limited to 'OpenSim/Region/Framework/Scenes/EventManager.cs')
diff --git a/OpenSim/Region/Framework/Scenes/EventManager.cs b/OpenSim/Region/Framework/Scenes/EventManager.cs
index eee5960..7916c42 100644
--- a/OpenSim/Region/Framework/Scenes/EventManager.cs
+++ b/OpenSim/Region/Framework/Scenes/EventManager.cs
@@ -2458,6 +2458,7 @@ namespace OpenSim.Region.Framework.Scenes
{
foreach (Action d in handler.GetInvocationList())
{
+ m_log.InfoFormat("[EVENT MANAGER]: TriggerSceneShuttingDown invoque {0}", d.Method.Name.ToString());
try
{
d(s);
@@ -2470,6 +2471,7 @@ namespace OpenSim.Region.Framework.Scenes
}
}
}
+ m_log.Info("[EVENT MANAGER]: TriggerSceneShuttingDown done");
}
public void TriggerOnRegionStarted(Scene scene)
--
cgit v1.1
From 4fa088bafb4c78ad3177b0e944a4312bd6abdea7 Mon Sep 17 00:00:00 2001
From: teravus
Date: Sun, 4 Nov 2012 22:57:24 -0500
Subject: Pipe Throttle Update Event to EventManager, client --> ScenePresence
--> EventManager, so that modules can know when throttles are updated. The
event contains no client specific data to preserve the possibility of
'multiple clients' and you must still call
ControllingClient.GetThrottlesPacked(f) to see what the throttles actually
are once the event fires. Hook EventManager.OnUpdateThrottle to
GetTextureModule.
---
OpenSim/Region/Framework/Scenes/EventManager.cs | 13 +++++++++++++
1 file changed, 13 insertions(+)
(limited to 'OpenSim/Region/Framework/Scenes/EventManager.cs')
diff --git a/OpenSim/Region/Framework/Scenes/EventManager.cs b/OpenSim/Region/Framework/Scenes/EventManager.cs
index 7916c42..4a19c3b 100644
--- a/OpenSim/Region/Framework/Scenes/EventManager.cs
+++ b/OpenSim/Region/Framework/Scenes/EventManager.cs
@@ -376,6 +376,10 @@ namespace OpenSim.Region.Framework.Scenes
public event ParcelPrimCountTainted OnParcelPrimCountTainted;
public event GetScriptRunning OnGetScriptRunning;
+ public delegate void ThrottleUpdate(ScenePresence scenePresence);
+
+ public event ThrottleUpdate OnThrottleUpdate;
+
///
/// RegisterCapsEvent is called by Scene after the Caps object
/// has been instantiated and before it is return to the
@@ -2641,5 +2645,14 @@ namespace OpenSim.Region.Framework.Scenes
}
}
}
+
+ public void TriggerThrottleUpdate(ScenePresence scenePresence)
+ {
+ ThrottleUpdate handler = OnThrottleUpdate;
+ if (handler != null)
+ {
+ handler(scenePresence);
+ }
+ }
}
}
--
cgit v1.1
From ed4787419774d20110f10eff918f5a304819cb09 Mon Sep 17 00:00:00 2001
From: UbitUmarov
Date: Sun, 3 Aug 2014 18:22:00 +0100
Subject: several debug msgs, need to be removed asap
---
OpenSim/Region/Framework/Scenes/EventManager.cs | 5 +++++
1 file changed, 5 insertions(+)
(limited to 'OpenSim/Region/Framework/Scenes/EventManager.cs')
diff --git a/OpenSim/Region/Framework/Scenes/EventManager.cs b/OpenSim/Region/Framework/Scenes/EventManager.cs
index 7f06e82..182c3fd 100644
--- a/OpenSim/Region/Framework/Scenes/EventManager.cs
+++ b/OpenSim/Region/Framework/Scenes/EventManager.cs
@@ -1366,7 +1366,9 @@ namespace OpenSim.Region.Framework.Scenes
{
try
{
+ m_log.ErrorFormat("[EVENT MANAGER]: OnRemovePresenceDelegate: {0}",d.Target.ToString());
d(agentId);
+ m_log.ErrorFormat("[EVENT MANAGER]: OnRemovePresenceDelegate done ");
}
catch (Exception e)
{
@@ -2037,7 +2039,10 @@ namespace OpenSim.Region.Framework.Scenes
{
try
{
+ m_log.ErrorFormat("[EVENT MANAGER]: TriggerClientClosed: {0}", d.Target.ToString());
d(ClientID, scene);
+ m_log.ErrorFormat("[EVENT MANAGER]: TriggerClientClosed done ");
+
}
catch (Exception e)
{
--
cgit v1.1
From ca8b0e6a1d373b55137febaafd2797e59016d5a8 Mon Sep 17 00:00:00 2001
From: UbitUmarov
Date: Sun, 3 Aug 2014 19:00:01 +0100
Subject: replace debug msgs by others
---
OpenSim/Region/Framework/Scenes/EventManager.cs | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
(limited to 'OpenSim/Region/Framework/Scenes/EventManager.cs')
diff --git a/OpenSim/Region/Framework/Scenes/EventManager.cs b/OpenSim/Region/Framework/Scenes/EventManager.cs
index 182c3fd..692e0c9 100644
--- a/OpenSim/Region/Framework/Scenes/EventManager.cs
+++ b/OpenSim/Region/Framework/Scenes/EventManager.cs
@@ -1366,9 +1366,9 @@ namespace OpenSim.Region.Framework.Scenes
{
try
{
- m_log.ErrorFormat("[EVENT MANAGER]: OnRemovePresenceDelegate: {0}",d.Target.ToString());
+// m_log.ErrorFormat("[EVENT MANAGER]: OnRemovePresenceDelegate: {0}",d.Target.ToString());
d(agentId);
- m_log.ErrorFormat("[EVENT MANAGER]: OnRemovePresenceDelegate done ");
+// m_log.ErrorFormat("[EVENT MANAGER]: OnRemovePresenceDelegate done ");
}
catch (Exception e)
{
@@ -2039,9 +2039,9 @@ namespace OpenSim.Region.Framework.Scenes
{
try
{
- m_log.ErrorFormat("[EVENT MANAGER]: TriggerClientClosed: {0}", d.Target.ToString());
+// m_log.ErrorFormat("[EVENT MANAGER]: TriggerClientClosed: {0}", d.Target.ToString());
d(ClientID, scene);
- m_log.ErrorFormat("[EVENT MANAGER]: TriggerClientClosed done ");
+// m_log.ErrorFormat("[EVENT MANAGER]: TriggerClientClosed done ");
}
catch (Exception e)
--
cgit v1.1
From b82b16c954a0f3921efbdcfe7d7eb378f71e96be Mon Sep 17 00:00:00 2001
From: UbitUmarov
Date: Thu, 27 Aug 2015 15:01:15 +0100
Subject: take taints check terrain out of Onframe event and add a new event
for it. Slow it down to 1/4 heartbeat rate (once every 363ms aprox)
---
OpenSim/Region/Framework/Scenes/EventManager.cs | 23 +++++++++++++++++++++++
1 file changed, 23 insertions(+)
(limited to 'OpenSim/Region/Framework/Scenes/EventManager.cs')
diff --git a/OpenSim/Region/Framework/Scenes/EventManager.cs b/OpenSim/Region/Framework/Scenes/EventManager.cs
index 692e0c9..24fbef9 100644
--- a/OpenSim/Region/Framework/Scenes/EventManager.cs
+++ b/OpenSim/Region/Framework/Scenes/EventManager.cs
@@ -80,6 +80,7 @@ namespace OpenSim.Region.Framework.Scenes
public event OnTerrainTaintedDelegate OnTerrainTainted;
public delegate void OnTerrainTickDelegate();
+ public delegate void OnTerrainCheckUpdatesDelegate();
///
/// Triggered if the terrain has been edited
@@ -89,6 +90,7 @@ namespace OpenSim.Region.Framework.Scenes
/// but is used by core solely to update the physics engine.
///
public event OnTerrainTickDelegate OnTerrainTick;
+ public event OnTerrainCheckUpdatesDelegate OnTerrainCheckUpdates;
public delegate void OnTerrainUpdateDelegate();
@@ -1484,6 +1486,27 @@ namespace OpenSim.Region.Framework.Scenes
}
}
+ public void TriggerTerrainCheckUpdates()
+ {
+ OnTerrainCheckUpdatesDelegate TerrainCheckUpdates = OnTerrainCheckUpdates;
+ if (TerrainCheckUpdates != null)
+ {
+ foreach (OnTerrainCheckUpdatesDelegate d in TerrainCheckUpdates.GetInvocationList())
+ {
+ try
+ {
+ d();
+ }
+ catch (Exception e)
+ {
+ m_log.ErrorFormat(
+ "[EVENT MANAGER]: Delegate for TerrainCheckUpdates failed - continuing. {0} {1}",
+ e.Message, e.StackTrace);
+ }
+ }
+ }
+ }
+
public void TriggerTerrainTainted()
{
OnTerrainTaintedDelegate handlerTerrainTainted = OnTerrainTainted;
--
cgit v1.1