mirror of
https://github.com/opensim/opensim.git
synced 2026-08-07 17:55:48 +08:00
* Swaps Scene.Entities Dictionary for EntityManager.
* Important Changes: Scene.Entities is now IEnumerable directly. You do not need to use Entities.Values, you can Enumerate on .Entities directly. (So 'foreach Scene.Entities' vs 'foreach Scene.Entities.Values'). * Locks: Entities maintains it's own internal locking states. This means you do not need to lock entities anymore. I'll be going through and removing locks on it systematically.
This commit is contained in:
@@ -59,7 +59,8 @@ namespace OpenSim.Region.Environment.Scenes
|
||||
protected internal Dictionary<UUID, ScenePresence> ScenePresences = new Dictionary<UUID, ScenePresence>();
|
||||
// SceneObjects is not currently populated or used.
|
||||
//public Dictionary<UUID, SceneObjectGroup> SceneObjects;
|
||||
protected internal Dictionary<UUID, EntityBase> Entities = new Dictionary<UUID, EntityBase>();
|
||||
protected internal EntityManager Entities = new EntityManager();
|
||||
// protected internal Dictionary<UUID, EntityBase> Entities = new Dictionary<UUID, EntityBase>();
|
||||
protected internal Dictionary<UUID, ScenePresence> RestorePresences = new Dictionary<UUID, ScenePresence>();
|
||||
|
||||
protected internal BasicQuadTreeNode QuadTree;
|
||||
@@ -972,10 +973,7 @@ namespace OpenSim.Region.Environment.Scenes
|
||||
/// <returns></returns>
|
||||
protected internal List<EntityBase> GetEntities()
|
||||
{
|
||||
lock (Entities)
|
||||
{
|
||||
return new List<EntityBase>(Entities.Values);
|
||||
}
|
||||
return Entities.GetEntities();
|
||||
}
|
||||
|
||||
protected internal Dictionary<uint, float> GetTopScripts()
|
||||
|
||||
Reference in New Issue
Block a user