aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Framework
diff options
context:
space:
mode:
authorTeravus Ovares2007-12-09 05:59:49 +0000
committerTeravus Ovares2007-12-09 05:59:49 +0000
commitf2b175ef08066649a13b6a42f0a59d9bee503638 (patch)
tree084ef2d6e2c67358b85d62179aee98eaa838d25c /OpenSim/Framework
parentadded more packet handling stubs (diff)
downloadopensim-SC_OLD-f2b175ef08066649a13b6a42f0a59d9bee503638.zip
opensim-SC_OLD-f2b175ef08066649a13b6a42f0a59d9bee503638.tar.gz
opensim-SC_OLD-f2b175ef08066649a13b6a42f0a59d9bee503638.tar.bz2
opensim-SC_OLD-f2b175ef08066649a13b6a42f0a59d9bee503638.tar.xz
* Added some inter-region comms glue for allowing sims to chat amongst themsevles about an agent behind the agent's back.
* Will be using this glue Tomorrow/today to tell other regions what the agent's draw distance is and what region they're actually in so the region can make decisions on what prim to send, if any.
Diffstat (limited to 'OpenSim/Framework')
-rw-r--r--OpenSim/Framework/ChildAgentDataUpdate.cs23
-rw-r--r--OpenSim/Framework/Communications/IInterRegionCommunications.cs1
-rw-r--r--OpenSim/Framework/IRegionCommsListener.cs3
-rw-r--r--OpenSim/Framework/RegionCommsListener.cs11
4 files changed, 38 insertions, 0 deletions
diff --git a/OpenSim/Framework/ChildAgentDataUpdate.cs b/OpenSim/Framework/ChildAgentDataUpdate.cs
new file mode 100644
index 0000000..c48f53a
--- /dev/null
+++ b/OpenSim/Framework/ChildAgentDataUpdate.cs
@@ -0,0 +1,23 @@
1using System;
2using System.Collections.Generic;
3using System.Text;
4
5namespace OpenSim.Framework
6{
7 [Serializable]
8 public class ChildAgentDataUpdate
9 {
10 public ChildAgentDataUpdate()
11 {
12
13 }
14 public sLLVector3 Position;
15 public ulong regionHandle;
16 public float drawdistance;
17 public sLLVector3 cameraPosition;
18 public sLLVector3 Velocity;
19 public float AVHeight;
20 public Guid AgentID;
21 public float godlevel;
22 }
23}
diff --git a/OpenSim/Framework/Communications/IInterRegionCommunications.cs b/OpenSim/Framework/Communications/IInterRegionCommunications.cs
index e025223..e20c627 100644
--- a/OpenSim/Framework/Communications/IInterRegionCommunications.cs
+++ b/OpenSim/Framework/Communications/IInterRegionCommunications.cs
@@ -36,6 +36,7 @@ namespace OpenSim.Framework.Communications
36 bool InformRegionOfChildAgent(ulong regionHandle, AgentCircuitData agentData); 36 bool InformRegionOfChildAgent(ulong regionHandle, AgentCircuitData agentData);
37 bool InformRegionOfPrimCrossing(ulong regionHandle, LLUUID primID, string objData); 37 bool InformRegionOfPrimCrossing(ulong regionHandle, LLUUID primID, string objData);
38 bool RegionUp(SearializableRegionInfo region, ulong regionhandle); 38 bool RegionUp(SearializableRegionInfo region, ulong regionhandle);
39 bool ChildAgentUpdate(ulong regionHandle, ChildAgentDataUpdate cAgentData);
39 40
40 bool ExpectAvatarCrossing(ulong regionHandle, LLUUID agentID, LLVector3 position, bool isFlying); 41 bool ExpectAvatarCrossing(ulong regionHandle, LLUUID agentID, LLVector3 position, bool isFlying);
41 bool ExpectPrimCrossing(ulong regionHandle, LLUUID primID, LLVector3 position, bool isFlying); 42 bool ExpectPrimCrossing(ulong regionHandle, LLUUID primID, LLVector3 position, bool isFlying);
diff --git a/OpenSim/Framework/IRegionCommsListener.cs b/OpenSim/Framework/IRegionCommsListener.cs
index 53d0059..5f20362 100644
--- a/OpenSim/Framework/IRegionCommsListener.cs
+++ b/OpenSim/Framework/IRegionCommsListener.cs
@@ -48,6 +48,8 @@ namespace OpenSim.Framework
48 48
49 public delegate bool RegionUp(RegionInfo region); 49 public delegate bool RegionUp(RegionInfo region);
50 50
51 public delegate bool ChildAgentUpdate(ulong regionHandle, ChildAgentDataUpdate cAgentData);
52
51 53
52 54
53 public interface IRegionCommsListener 55 public interface IRegionCommsListener
@@ -62,6 +64,7 @@ namespace OpenSim.Framework
62 event UpdateNeighbours OnNeighboursUpdate; 64 event UpdateNeighbours OnNeighboursUpdate;
63 event CloseAgentConnection OnCloseAgentConnection; 65 event CloseAgentConnection OnCloseAgentConnection;
64 event RegionUp OnRegionUp; 66 event RegionUp OnRegionUp;
67 event ChildAgentUpdate OnChildAgentUpdate;
65 68
66 } 69 }
67} \ No newline at end of file 70} \ No newline at end of file
diff --git a/OpenSim/Framework/RegionCommsListener.cs b/OpenSim/Framework/RegionCommsListener.cs
index d209ff4..62c477b 100644
--- a/OpenSim/Framework/RegionCommsListener.cs
+++ b/OpenSim/Framework/RegionCommsListener.cs
@@ -43,6 +43,7 @@ namespace OpenSim.Framework
43 public event AcknowledgePrimCross OnAcknowledgePrimCrossed; 43 public event AcknowledgePrimCross OnAcknowledgePrimCrossed;
44 public event CloseAgentConnection OnCloseAgentConnection; 44 public event CloseAgentConnection OnCloseAgentConnection;
45 public event RegionUp OnRegionUp; 45 public event RegionUp OnRegionUp;
46 public event ChildAgentUpdate OnChildAgentUpdate;
46 public string debugRegionName=""; 47 public string debugRegionName="";
47 48
48 49
@@ -81,6 +82,16 @@ namespace OpenSim.Framework
81 return false; 82 return false;
82 } 83 }
83 84
85 public virtual bool TriggerChildAgentUpdate(ulong regionHandle, ChildAgentDataUpdate cAgentData)
86 {
87 if (OnChildAgentUpdate != null)
88 {
89 OnChildAgentUpdate(regionHandle, cAgentData);
90 return true;
91 }
92 return false;
93 }
94
84 public virtual bool TriggerExpectAvatarCrossing(ulong regionHandle, LLUUID agentID, LLVector3 position, 95 public virtual bool TriggerExpectAvatarCrossing(ulong regionHandle, LLUUID agentID, LLVector3 position,
85 bool isFlying) 96 bool isFlying)
86 { 97 {