From f61e54892f2284b6f89bacf3069467c05b2eea11 Mon Sep 17 00:00:00 2001
From: Justin Clark-Casey (justincc)
Date: Thu, 8 Dec 2011 18:34:23 +0000
Subject: On a new client circuit, send the initial reply ack to let the client
know it's live before sending other data.
This means that avatar/appearance data of other avatars and scene objects for a client will be sent after the ack rather than possibly before.
This may stop some avatars appearing grey on login.
This introduces a new OpenSim.Framework.ISceneAgent to accompany the existing OpenSim.Framework.ISceneObject and ISceneEntity
This allows IClientAPI to handle this as it can't reference OpenSim.Region.Framework.Interfaces
---
OpenSim/Framework/IScene.cs | 10 +++++++---
1 file changed, 7 insertions(+), 3 deletions(-)
(limited to 'OpenSim/Framework/IScene.cs')
diff --git a/OpenSim/Framework/IScene.cs b/OpenSim/Framework/IScene.cs
index 7b0fe37..6919c48 100644
--- a/OpenSim/Framework/IScene.cs
+++ b/OpenSim/Framework/IScene.cs
@@ -68,12 +68,16 @@ namespace OpenSim.Framework
event restart OnRestart;
///
- /// Register the new client with the scene. The client starts off as a child agent - the later agent crossing
- /// will promote it to a root agent.
+ /// Add a new client and create a presence for it. All clients except initial login clients will starts off as a child agent
+ /// - the later agent crossing will promote it to a root agent.
///
///
/// The type of agent to add.
- void AddNewClient(IClientAPI client, PresenceType type);
+ ///
+ /// The scene agent if the new client was added.
+ /// Null if the required scene agent already existed or no scene agent was added because the required client circuit doesn't exist.
+ ///
+ ISceneAgent AddNewClient(IClientAPI client, PresenceType type);
///
/// Remove the given client from the scene.
--
cgit v1.1