From 17b4818b8e9a141b54540b342542bcb2ad21b4db Mon Sep 17 00:00:00 2001 From: MW Date: Fri, 15 Jun 2007 16:03:02 +0000 Subject: Very Preliminary border crossing added to sugilite. (Note: Sugilite doesn't have any backend ogs communication support yet so everything is Sandbox mode only ) --- .../GridServer/GridCommsManagerBase.cs | 5 ++++ .../GridServer/GridCommsManagerLocal.cs | 5 ++++ .../InterSimComms/InterSimsCommsBase.cs | 2 ++ .../InterSimComms/InterSimsCommsLocal.cs | 5 ++++ .../InterSimComms/InterSimsCommsOGS.cs | 5 ++++ .../LocalBackEndServices.cs | 32 ++++++++++++++++++++++ 6 files changed, 54 insertions(+) (limited to 'Common/OpenGrid.Framework.Communications') diff --git a/Common/OpenGrid.Framework.Communications/GridServer/GridCommsManagerBase.cs b/Common/OpenGrid.Framework.Communications/GridServer/GridCommsManagerBase.cs index 0b29f8a..357321d 100644 --- a/Common/OpenGrid.Framework.Communications/GridServer/GridCommsManagerBase.cs +++ b/Common/OpenGrid.Framework.Communications/GridServer/GridCommsManagerBase.cs @@ -58,6 +58,11 @@ namespace OpenGrid.Framework.Communications.GridServer { return null; } + + public virtual RegionInfo RequestNeighbourInfo(ulong regionHandle) + { + return null; + } } } diff --git a/Common/OpenGrid.Framework.Communications/GridServer/GridCommsManagerLocal.cs b/Common/OpenGrid.Framework.Communications/GridServer/GridCommsManagerLocal.cs index 78ae712..3c1c29b 100644 --- a/Common/OpenGrid.Framework.Communications/GridServer/GridCommsManagerLocal.cs +++ b/Common/OpenGrid.Framework.Communications/GridServer/GridCommsManagerLocal.cs @@ -54,5 +54,10 @@ namespace OpenGrid.Framework.Communications.GridServer { return sandBoxManager.RequestNeighbours(regionInfo); } + + public override RegionInfo RequestNeighbourInfo(ulong regionHandle) + { + return sandBoxManager.RequestNeighbourInfo(regionHandle); + } } } diff --git a/Common/OpenGrid.Framework.Communications/InterSimComms/InterSimsCommsBase.cs b/Common/OpenGrid.Framework.Communications/InterSimComms/InterSimsCommsBase.cs index 7977c53..50335c5 100644 --- a/Common/OpenGrid.Framework.Communications/InterSimComms/InterSimsCommsBase.cs +++ b/Common/OpenGrid.Framework.Communications/InterSimComms/InterSimsCommsBase.cs @@ -42,5 +42,7 @@ namespace OpenGrid.Framework.Communications /// /// public abstract bool InformNeighbourOfChildAgent(ulong regionHandle, AgentCircuitData agentData); + public abstract bool ExpectAvatarCrossing(ulong regionHandle, libsecondlife.LLUUID agentID, libsecondlife.LLVector3 position); + } } diff --git a/Common/OpenGrid.Framework.Communications/InterSimComms/InterSimsCommsLocal.cs b/Common/OpenGrid.Framework.Communications/InterSimComms/InterSimsCommsLocal.cs index d1a0b4f..d70376c 100644 --- a/Common/OpenGrid.Framework.Communications/InterSimComms/InterSimsCommsLocal.cs +++ b/Common/OpenGrid.Framework.Communications/InterSimComms/InterSimsCommsLocal.cs @@ -52,5 +52,10 @@ namespace OpenGrid.Framework.Communications { return sandBoxManager.InformNeighbourOfChildAgent(regionHandle, agentData); } + + public override bool ExpectAvatarCrossing(ulong regionHandle, libsecondlife.LLUUID agentID, libsecondlife.LLVector3 position) + { + return sandBoxManager.ExpectAvatarCrossing(regionHandle, agentID, position); + } } } diff --git a/Common/OpenGrid.Framework.Communications/InterSimComms/InterSimsCommsOGS.cs b/Common/OpenGrid.Framework.Communications/InterSimComms/InterSimsCommsOGS.cs index 2cdd825..e631cf4 100644 --- a/Common/OpenGrid.Framework.Communications/InterSimComms/InterSimsCommsOGS.cs +++ b/Common/OpenGrid.Framework.Communications/InterSimComms/InterSimsCommsOGS.cs @@ -39,5 +39,10 @@ namespace OpenGrid.Framework.Communications { return false; } + + public override bool ExpectAvatarCrossing(ulong regionHandle, libsecondlife.LLUUID agentID, libsecondlife.LLVector3 position) + { + return false; + } } } diff --git a/Common/OpenGrid.Framework.Communications/LocalBackEndServices.cs b/Common/OpenGrid.Framework.Communications/LocalBackEndServices.cs index 6b923f6..928215e 100644 --- a/Common/OpenGrid.Framework.Communications/LocalBackEndServices.cs +++ b/Common/OpenGrid.Framework.Communications/LocalBackEndServices.cs @@ -96,6 +96,20 @@ namespace OpenGrid.Framework.Communications } /// + /// + /// + /// + /// + public RegionInfo RequestNeighbourInfo(ulong regionHandle) + { + if (this.regions.ContainsKey(regionHandle)) + { + return this.regions[regionHandle]; + } + return null; + } + + /// /// /// /// @@ -113,6 +127,24 @@ namespace OpenGrid.Framework.Communications } /// + /// + /// + /// + /// + /// + /// + public bool ExpectAvatarCrossing(ulong regionHandle, libsecondlife.LLUUID agentID, libsecondlife.LLVector3 position) + { + if (this.regionHosts.ContainsKey(regionHandle)) + { + // Console.WriteLine("CommsManager- Informing a region to expect avatar crossing"); + this.regionHosts[regionHandle].ExpectAvatarCrossing(regionHandle, agentID, position); + return true; + } + return false; + } + + /// /// Is a Sandbox mode method, used by the local Login server to inform a region of a connection user/session /// /// -- cgit v1.1