diff options
-rw-r--r-- | OpenSim/Region/Application/OpenSim.cs | 22 | ||||
-rw-r--r-- | OpenSim/Region/Framework/Interfaces/ISceneViewer.cs | 1 | ||||
-rw-r--r-- | OpenSim/Region/Framework/Scenes/SceneViewer.cs | 8 |
3 files changed, 31 insertions, 0 deletions
diff --git a/OpenSim/Region/Application/OpenSim.cs b/OpenSim/Region/Application/OpenSim.cs index bbcc588..bd1aa46 100644 --- a/OpenSim/Region/Application/OpenSim.cs +++ b/OpenSim/Region/Application/OpenSim.cs | |||
@@ -302,6 +302,10 @@ namespace OpenSim | |||
302 | "show http-handlers", | 302 | "show http-handlers", |
303 | "Show all registered http handlers", HandleShow); | 303 | "Show all registered http handlers", HandleShow); |
304 | 304 | ||
305 | m_console.Commands.AddCommand("region", false, "show pending-objects", | ||
306 | "show pending-objects", | ||
307 | "Show # of objects on the pending queues of all scene viewers", HandleShow); | ||
308 | |||
305 | m_console.Commands.AddCommand("region", false, "show modules", | 309 | m_console.Commands.AddCommand("region", false, "show modules", |
306 | "show modules", | 310 | "show modules", |
307 | "Show module data", HandleShow); | 311 | "Show module data", HandleShow); |
@@ -993,6 +997,24 @@ namespace OpenSim | |||
993 | MainConsole.Instance.Output(handlers.ToString()); | 997 | MainConsole.Instance.Output(handlers.ToString()); |
994 | break; | 998 | break; |
995 | 999 | ||
1000 | case "pending-objects": | ||
1001 | System.Text.StringBuilder pending = new System.Text.StringBuilder("Pending objects:\n"); | ||
1002 | m_sceneManager.ForEachScene( | ||
1003 | delegate(Scene scene) | ||
1004 | { | ||
1005 | scene.ForEachScenePresence( | ||
1006 | delegate(ScenePresence sp) | ||
1007 | { | ||
1008 | pending.AppendFormat("{0}: {1} {2} pending\n", | ||
1009 | scene.RegionInfo.RegionName, sp.Name, sp.SceneViewer.GetPendingObjectsCount()); | ||
1010 | } | ||
1011 | ); | ||
1012 | } | ||
1013 | ); | ||
1014 | |||
1015 | MainConsole.Instance.Output(pending.ToString()); | ||
1016 | break; | ||
1017 | |||
996 | case "modules": | 1018 | case "modules": |
997 | MainConsole.Instance.Output("The currently loaded shared modules are:"); | 1019 | MainConsole.Instance.Output("The currently loaded shared modules are:"); |
998 | foreach (IRegionModule module in m_moduleLoader.GetLoadedSharedModules) | 1020 | foreach (IRegionModule module in m_moduleLoader.GetLoadedSharedModules) |
diff --git a/OpenSim/Region/Framework/Interfaces/ISceneViewer.cs b/OpenSim/Region/Framework/Interfaces/ISceneViewer.cs index 7251d57..2397f22 100644 --- a/OpenSim/Region/Framework/Interfaces/ISceneViewer.cs +++ b/OpenSim/Region/Framework/Interfaces/ISceneViewer.cs | |||
@@ -36,5 +36,6 @@ namespace OpenSim.Region.Framework.Interfaces | |||
36 | void Close(); | 36 | void Close(); |
37 | void QueuePartForUpdate(SceneObjectPart part); | 37 | void QueuePartForUpdate(SceneObjectPart part); |
38 | void SendPrimUpdates(); | 38 | void SendPrimUpdates(); |
39 | int GetPendingObjectsCount(); | ||
39 | } | 40 | } |
40 | } | 41 | } |
diff --git a/OpenSim/Region/Framework/Scenes/SceneViewer.cs b/OpenSim/Region/Framework/Scenes/SceneViewer.cs index b44a010..7c067ca 100644 --- a/OpenSim/Region/Framework/Scenes/SceneViewer.cs +++ b/OpenSim/Region/Framework/Scenes/SceneViewer.cs | |||
@@ -205,6 +205,14 @@ namespace OpenSim.Region.Framework.Scenes | |||
205 | Reset(); | 205 | Reset(); |
206 | } | 206 | } |
207 | 207 | ||
208 | public int GetPendingObjectsCount() | ||
209 | { | ||
210 | if (m_pendingObjects != null) | ||
211 | return m_pendingObjects.Count; | ||
212 | |||
213 | return 0; | ||
214 | } | ||
215 | |||
208 | public class ScenePartUpdate | 216 | public class ScenePartUpdate |
209 | { | 217 | { |
210 | public UUID FullID; | 218 | public UUID FullID; |