29 using System.Collections.Generic;
31 using OpenSim.Region.Framework.Scenes;
37 private Scene m_rootScene;
38 private Dictionary<UUID, Scene> m_virtScene =
new Dictionary<UUID, Scene>();
39 private Dictionary<UUID,RegionCombinerIndividualEventForwarder> m_forwarders =
new Dictionary<UUID,
44 m_rootScene = rootScene.RegionScene;
51 if (m_virtScene.ContainsKey(virtualScene.
RegionInfo.originRegionID))
53 m_virtScene[virtualScene.RegionInfo.originRegionID] = virtualScene;
57 m_virtScene.Add(virtualScene.RegionInfo.originRegionID, virtualScene);
64 if (m_forwarders.ContainsKey(virtualScene.
RegionInfo.originRegionID))
65 m_forwarders.Remove(virtualScene.
RegionInfo.originRegionID);
69 m_forwarders.Add(virtualScene.RegionInfo.originRegionID, forwarder);
71 virtualScene.EventManager.OnNewClient += forwarder.ClientConnect;
72 virtualScene.EventManager.OnClientClosed += forwarder.ClientClosed;
81 virtualScene.EventManager.OnNewClient -= forwarder.ClientConnect;
82 virtualScene.EventManager.OnClientClosed -= forwarder.ClientClosed;
83 m_forwarders.Remove(virtualScene.RegionInfo.originRegionID);
87 if (m_virtScene.ContainsKey(virtualScene.
RegionInfo.originRegionID))
89 m_virtScene.Remove(virtualScene.RegionInfo.originRegionID);
void RemoveSceneFromEventForwarding(Scene virtualScene)
RegionCombinerClientEventForwarder(RegionConnections rootScene)
Interactive OpenSim region server
void AddSceneToEventForwarding(Scene virtualScene)
virtual RegionInfo RegionInfo