From f32de6fe885915b11fd349c0d8f3e6a98d4dd2bf Mon Sep 17 00:00:00 2001 From: Melanie Date: Wed, 2 Sep 2009 03:33:31 +0100 Subject: Thank you, dslake, for a set of patches to improve OpenSim startup and idle performance. --- OpenSim/Region/Physics/OdePlugin/ODECharacter.cs | 5 +++++ OpenSim/Region/Physics/OdePlugin/ODEPrim.cs | 5 +++++ OpenSim/Region/Physics/OdePlugin/OdePlugin.cs | 10 +++++----- 3 files changed, 15 insertions(+), 5 deletions(-) (limited to 'OpenSim/Region/Physics/OdePlugin') diff --git a/OpenSim/Region/Physics/OdePlugin/ODECharacter.cs b/OpenSim/Region/Physics/OdePlugin/ODECharacter.cs index 38df751..dd58a4e 100644 --- a/OpenSim/Region/Physics/OdePlugin/ODECharacter.cs +++ b/OpenSim/Region/Physics/OdePlugin/ODECharacter.cs @@ -223,6 +223,11 @@ namespace OpenSim.Region.Physics.OdePlugin set { m_localID = value; } } + public override int GetHashCode() + { + return (int)m_localID; + } + public override bool Grabbed { set { return; } diff --git a/OpenSim/Region/Physics/OdePlugin/ODEPrim.cs b/OpenSim/Region/Physics/OdePlugin/ODEPrim.cs index d0f77e6..673ae39 100644 --- a/OpenSim/Region/Physics/OdePlugin/ODEPrim.cs +++ b/OpenSim/Region/Physics/OdePlugin/ODEPrim.cs @@ -260,6 +260,11 @@ namespace OpenSim.Region.Physics.OdePlugin m_localID = value; } } + public override int GetHashCode() + { + return (int)m_localID; + } + public override bool Grabbed { set { return; } diff --git a/OpenSim/Region/Physics/OdePlugin/OdePlugin.cs b/OpenSim/Region/Physics/OdePlugin/OdePlugin.cs index 817cc22..e702d5e 100644 --- a/OpenSim/Region/Physics/OdePlugin/OdePlugin.cs +++ b/OpenSim/Region/Physics/OdePlugin/OdePlugin.cs @@ -235,11 +235,11 @@ namespace OpenSim.Region.Physics.OdePlugin private d.NearCallback nearCallback; public d.TriCallback triCallback; public d.TriArrayCallback triArrayCallback; - private readonly List _characters = new List(); - private readonly List _prims = new List(); - private readonly List _activeprims = new List(); - private readonly List _taintedPrim = new List(); - private readonly List _taintedActors = new List(); + private readonly HashSet _characters = new HashSet(); + private readonly HashSet _prims = new HashSet(); + private readonly HashSet _activeprims = new HashSet(); + private readonly HashSet _taintedPrim = new HashSet(); + private readonly HashSet _taintedActors = new HashSet(); private readonly List _perloopContact = new List(); private readonly List _collisionEventPrim = new List(); public Dictionary geom_name_map = new Dictionary(); -- cgit v1.1