diff options
Diffstat (limited to 'OpenSim/Services/Interfaces/ISimulationService.cs')
-rw-r--r-- | OpenSim/Services/Interfaces/ISimulationService.cs | 39 |
1 files changed, 34 insertions, 5 deletions
diff --git a/OpenSim/Services/Interfaces/ISimulationService.cs b/OpenSim/Services/Interfaces/ISimulationService.cs index b10a85c..8a25509 100644 --- a/OpenSim/Services/Interfaces/ISimulationService.cs +++ b/OpenSim/Services/Interfaces/ISimulationService.cs | |||
@@ -26,6 +26,7 @@ | |||
26 | */ | 26 | */ |
27 | 27 | ||
28 | using System; | 28 | using System; |
29 | using System.Collections.Generic; | ||
29 | using OpenSim.Framework; | 30 | using OpenSim.Framework; |
30 | using OpenMetaverse; | 31 | using OpenMetaverse; |
31 | 32 | ||
@@ -33,6 +34,20 @@ using GridRegion = OpenSim.Services.Interfaces.GridRegion; | |||
33 | 34 | ||
34 | namespace OpenSim.Services.Interfaces | 35 | namespace OpenSim.Services.Interfaces |
35 | { | 36 | { |
37 | public class EntityTransferContext | ||
38 | { | ||
39 | public EntityTransferContext() | ||
40 | { | ||
41 | InboundVersion = VersionInfo.SimulationServiceVersionAcceptedMax; | ||
42 | OutboundVersion = VersionInfo.SimulationServiceVersionSupportedMax; | ||
43 | VariableWearablesSupported = false; | ||
44 | } | ||
45 | |||
46 | public float InboundVersion { get; set; } | ||
47 | public float OutboundVersion { get; set; } | ||
48 | public bool VariableWearablesSupported { get; set; } | ||
49 | } | ||
50 | |||
36 | public interface ISimulationService | 51 | public interface ISimulationService |
37 | { | 52 | { |
38 | /// <summary> | 53 | /// <summary> |
@@ -53,11 +68,13 @@ namespace OpenSim.Services.Interfaces | |||
53 | /// <summary> | 68 | /// <summary> |
54 | /// Ask the simulator hosting the destination to create an agent on that region. | 69 | /// Ask the simulator hosting the destination to create an agent on that region. |
55 | /// </summary> | 70 | /// </summary> |
71 | /// <param name="source">The region that the user is coming from. Will be null if the user | ||
72 | /// logged-in directly, or arrived from a simulator that doesn't send this parameter.</param> | ||
56 | /// <param name="destination"></param> | 73 | /// <param name="destination"></param> |
57 | /// <param name="aCircuit"></param> | 74 | /// <param name="aCircuit"></param> |
58 | /// <param name="flags"></param> | 75 | /// <param name="flags"></param> |
59 | /// <param name="reason">Reason message in the event of a failure.</param> | 76 | /// <param name="reason">Reason message in the event of a failure.</param> |
60 | bool CreateAgent(GridRegion destination, AgentCircuitData aCircuit, uint flags, out string reason); | 77 | bool CreateAgent(GridRegion source, GridRegion destination, AgentCircuitData aCircuit, uint flags, out string reason); |
61 | 78 | ||
62 | /// <summary> | 79 | /// <summary> |
63 | /// Full child agent update. | 80 | /// Full child agent update. |
@@ -75,9 +92,21 @@ namespace OpenSim.Services.Interfaces | |||
75 | /// <returns></returns> | 92 | /// <returns></returns> |
76 | bool UpdateAgent(GridRegion destination, AgentPosition data); | 93 | bool UpdateAgent(GridRegion destination, AgentPosition data); |
77 | 94 | ||
78 | bool RetrieveAgent(GridRegion destination, UUID id, out IAgentData agent); | 95 | /// <summary> |
79 | 96 | /// Returns whether a propspective user is allowed to visit the region. | |
80 | bool QueryAccess(GridRegion destination, UUID id, Vector3 position, out string version, out string reason); | 97 | /// </summary> |
98 | /// <param name="destination">Desired destination</param> | ||
99 | /// <param name="agentID">The visitor's User ID</param> | ||
100 | /// <param name="agentHomeURI">The visitor's Home URI. Will be missing (null) in older OpenSims.</param> | ||
101 | /// <param name="viaTeleport">True: via teleport; False: via cross (walking)</param> | ||
102 | /// <param name="position">Position in the region</param> | ||
103 | /// <param name="sversion"> | ||
104 | /// Version that the requesting simulator is runing. If null then no version check is carried out. | ||
105 | /// </param> | ||
106 | /// <param name="version">Version that the target simulator is running</param> | ||
107 | /// <param name="reason">[out] Optional error message</param> | ||
108 | /// <returns>True: ok; False: not allowed</returns> | ||
109 | bool QueryAccess(GridRegion destination, UUID agentID, string agentHomeURI, bool viaTeleport, Vector3 position, List<UUID> features, EntityTransferContext ctx, out string reason); | ||
81 | 110 | ||
82 | /// <summary> | 111 | /// <summary> |
83 | /// Message from receiving region to departing region, telling it got contacted by the client. | 112 | /// Message from receiving region to departing region, telling it got contacted by the client. |
@@ -95,7 +124,7 @@ namespace OpenSim.Services.Interfaces | |||
95 | /// <param name="regionHandle"></param> | 124 | /// <param name="regionHandle"></param> |
96 | /// <param name="id"></param> | 125 | /// <param name="id"></param> |
97 | /// <returns></returns> | 126 | /// <returns></returns> |
98 | bool CloseAgent(GridRegion destination, UUID id); | 127 | bool CloseAgent(GridRegion destination, UUID id, string auth_token); |
99 | 128 | ||
100 | #endregion Agents | 129 | #endregion Agents |
101 | 130 | ||