Removed old code in RegionSyncServer/Client that were used for object syncing in the asymmetric sync era.

dsg
Huaiyu (Kitty) Liu 2011-05-12 14:36:55 -07:00
parent 33fe1e9f76
commit cf6c9e77a0
10 changed files with 14 additions and 425 deletions

View File

@ -179,20 +179,6 @@ namespace OpenSim.Region.CoreModules.RegionSync.RegionSyncModule
private void DoInitialSync()
{
// m_validLocalScene.DeleteAllSceneObjects();
//m_log.Debug(LogHeader + ": send actor type " + m_actorType);
//Send(new RegionSyncMessage(RegionSyncMessage.MsgType.ActorType, Convert.ToString((int)m_actorType)));
//KittyL??? Do we need to send in RegionName?
//Send(new RegionSyncMessage(RegionSyncMessage.MsgType.RegionName, m_scene.RegionInfo.RegionName));
//m_log.WarnFormat("Sending region name: \"{0}\"", m_scene.RegionInfo.RegionName);
// Send(new RegionSyncMessage(RegionSyncMessage.MsgType.GetTerrain));
// Send(new RegionSyncMessage(RegionSyncMessage.MsgType.GetObjects));
// Register for events which will be forwarded to authoritative scene
// m_scene.EventManager.OnNewClient += EventManager_OnNewClient;
//m_scene.EventManager.OnClientClosed += new EventManager.ClientClosed(RemoveLocalClient);
}
// Disconnect from the RegionSyncServer and close client thread

View File

@ -70,7 +70,7 @@ namespace OpenSim.Region.CoreModules.RegionSync.RegionSyncModule
Dictionary<UUID, RegionSyncAvatar> m_remoteAvatars = new Dictionary<UUID, RegionSyncAvatar>();
Dictionary<UUID, IClientAPI> m_localAvatars = new Dictionary<UUID, IClientAPI>();
private bool m_symSync = false;
//private bool m_symSync = false;
private Dictionary<UUID, RegionSyncAvatar> RemoteAvatars
{
@ -300,11 +300,6 @@ namespace OpenSim.Region.CoreModules.RegionSync.RegionSyncModule
Send(new RegionSyncMessage(RegionSyncMessage.MsgType.AvatarAppearance, OSDParser.SerializeJsonString(data)));
}
public void SetSymSync(bool symSync)
{
m_symSync = symSync;
}
// Handle an incoming message
// TODO: This should not be synchronous with the receive!
// Instead, handle messages from an incoming Queue so server doesn't block sending
@ -318,67 +313,6 @@ namespace OpenSim.Region.CoreModules.RegionSync.RegionSyncModule
RegionSyncMessage.HandleSuccess(LogHeader(), msg, String.Format("Syncing to region \"{0}\"", m_regionName));
return;
}
//DSG SYNC: do not handle terrian and object updates
case RegionSyncMessage.MsgType.Terrain:
{
if(!m_symSync)
{
m_scene.Heightmap.LoadFromXmlString(Encoding.ASCII.GetString(msg.Data, 0, msg.Length));
m_scene.PhysicsScene.SetTerrain(m_scene.Heightmap.GetFloatsSerialised());
RegionSyncMessage.HandleSuccess(LogHeader(), msg, "Synchronized terrain");
}
return;
}
case RegionSyncMessage.MsgType.NewObject:
case RegionSyncMessage.MsgType.UpdatedObject:
{
if(!m_symSync){
SceneObjectGroup sog = SceneObjectSerializer.FromXml2Format(Encoding.ASCII.GetString(msg.Data, 0, msg.Length));
if (sog.IsDeleted)
{
RegionSyncMessage.HandleTrivial(LogHeader(), msg, String.Format("Ignoring update on deleted LocalId {0}.", sog.LocalId.ToString()));
return;
}
if (m_scene.AddNewSceneObject(sog, true));
//RegionSyncMessage.HandleSuccess(LogHeader(), msg, String.Format("Object \"{0}\" ({1}) ({1}) updated.", sog.Name, sog.UUID.ToString(), sog.LocalId.ToString()));
//else
//RegionSyncMessage.HandleSuccess(LogHeader(), msg, String.Format("Object \"{0}\" ({1}) ({1}) added.", sog.Name, sog.UUID.ToString(), sog.LocalId.ToString()));
//sog.ScheduleGroupForFullUpdate();
}
return;
}
case RegionSyncMessage.MsgType.RemovedObject:
{
if(!m_symSync)
{
// Get the data from message and error check
OSDMap data = DeserializeMessage(msg);
if (data == null)
{
RegionSyncMessage.HandleError(LogHeader(), msg, "Could not deserialize JSON data.");
return;
}
// Get the parameters from data
//ulong regionHandle = data["regionHandle"].AsULong();
uint localID = data["localID"].AsUInteger();
// Find the object in the scene
SceneObjectGroup sog = m_scene.SceneGraph.GetGroupByPrim(localID);
if (sog == null)
{
//RegionSyncMessage.HandleWarning(LogHeader(), msg, String.Format("localID {0} not found.", localID.ToString()));
return;
}
// Delete the object from the scene
m_scene.DeleteSceneObject(sog, false);
RegionSyncMessage.HandleSuccess(LogHeader(), msg, String.Format("localID {0} deleted.", localID.ToString()));
}
return;
}
//end of DSG SYNC
case RegionSyncMessage.MsgType.NewAvatar:
{
// Get the data from message and error check
@ -855,11 +789,13 @@ namespace OpenSim.Region.CoreModules.RegionSync.RegionSyncModule
Send(new RegionSyncMessage(RegionSyncMessage.MsgType.RegionName, m_scene.RegionInfo.RegionName));
m_log.WarnFormat("Sending region name: \"{0}\"", m_scene.RegionInfo.RegionName);
//DSG SYNC: commenting out terrian and object updates
/*
if (!m_symSync)
{
Send(new RegionSyncMessage(RegionSyncMessage.MsgType.GetTerrain));
Send(new RegionSyncMessage(RegionSyncMessage.MsgType.GetObjects));
}
* */
//end of DSG SYNC
Send(new RegionSyncMessage(RegionSyncMessage.MsgType.GetAvatars));

View File

@ -248,7 +248,6 @@ namespace OpenSim.Region.CoreModules.RegionSync.RegionSyncModule
m_log.Warn("[REGION SYNC CLIENT MODULE] Starting RegionSyncClient");
m_client = new RegionSyncClient(m_scene, m_serveraddr, m_serverport);
//m_client.SetSymSync(m_symsync);
m_client.Start();
}
}

View File

@ -327,38 +327,6 @@ namespace OpenSim.Region.CoreModules.RegionSync.RegionSyncModule
RegionSyncMessage.HandleSuccess(LogHeader, msg, String.Format("Syncing to region \"{0}\"", m_regionName));
return;
}
//DSG SYNC: do not handle terrian and object updates
case RegionSyncMessage.MsgType.GetTerrain:
{
/*
if (!m_scene.RegionSyncServerModule.IsSymSync)
{
Send(new RegionSyncMessage(RegionSyncMessage.MsgType.Terrain, m_scene.Heightmap.SaveToXmlString()));
RegionSyncMessage.HandleSuccess(LogHeader, msg, "Terrain sent");
}
* */
return;
}
case RegionSyncMessage.MsgType.GetObjects:
{
/*
if (!m_scene.RegionSyncServerModule.IsSymSync)
{
EntityBase[] entities = m_scene.GetEntities();
foreach (EntityBase e in entities)
{
if (e is SceneObjectGroup)
{
string sogxml = SceneObjectSerializer.ToXml2Format((SceneObjectGroup)e);
Send(new RegionSyncMessage(RegionSyncMessage.MsgType.NewObject, sogxml));
}
}
RegionSyncMessage.HandleSuccess(LogHeader, msg, "Sent all scene objects");
}
* */
return;
}
//end of DSG SYNC
case RegionSyncMessage.MsgType.GetAvatars:
{
m_scene.ForEachScenePresence(delegate(ScenePresence presence)

View File

@ -83,10 +83,10 @@ namespace OpenSim.Region.CoreModules.RegionSync.RegionSyncModule
AvatarTeleportOut, // An LLClientView (real client) was converted to a RegionSyncAvatar
AvatarTeleportIn, // A RegionSyncAvatar was converted to an LLClientView (real client)
// SIM -> CM
Terrain,
NewObject, // objects
UpdatedObject, // objects
RemovedObject, // objects
//Terrain,
//NewObject, // objects
//UpdatedObject, // objects
//RemovedObject, // objects
NewAvatar, // avatars
UpdatedAvatar, // avatars
AnimateAvatar,

View File

@ -226,7 +226,6 @@ namespace OpenSim.Region.CoreModules.RegionSync.RegionSyncModule
//m_log.Debug("SOG " + sog.UUID);
//RegionSyncMessage rsm = new RegionSyncMessage(RegionSyncMessage.MsgType.NewObject, sogxml);
RegionSyncMessage rsm = new RegionSyncMessage(msgType, sogxml);
Broadcast(rsm);
}

View File

@ -145,18 +145,6 @@ namespace OpenSim.Region.CoreModules.RegionSync.RegionSyncModule
//m_scene.EventManager.OnNewPresence += new EventManager.OnNewPresenceDelegate(EventManager_OnNewPresence);
m_scene.EventManager.OnRemovePresence += new EventManager.OnRemovePresenceDelegate(EventManager_OnRemovePresence);
//DSG SYNC: do not handle object updates
/*
if (!m_symsync)
{
m_scene.SceneGraph.OnObjectCreate += new ObjectCreateDelegate(SceneGraph_OnObjectCreate);
m_scene.SceneGraph.OnObjectDuplicate += new ObjectDuplicateDelegate(SceneGraph_OnObjectDuplicate);
//m_scene.SceneGraph.OnObjectRemove += new ObjectDeleteDelegate(SceneGraph_OnObjectRemove);
//m_scene.StatsReporter.OnSendStatsResult += new SimStatsReporter.SendStatResult(StatsReporter_OnSendStatsResult);
m_scene.EventManager.OnOarFileLoaded += new EventManager.OarFileLoaded(EventManager_OnOarFileLoaded);
}
* */
//end of DSG SYNC
// Start the server and listen for RegionSyncClients
m_serveraddr = m_scene.RegionInfo.AvatarSyncServerAddress;
m_serverport = m_scene.RegionInfo.AvatarSyncServerPort;
@ -227,23 +215,13 @@ namespace OpenSim.Region.CoreModules.RegionSync.RegionSyncModule
// Lock is used to synchronize access to the update status and both update queues
private object m_updateLock = new object();
private int m_sendingUpdates;
private Dictionary<UUID, SceneObjectGroup> m_primUpdates = new Dictionary<UUID, SceneObjectGroup>();
//private Dictionary<UUID, SceneObjectGroup> m_primUpdates = new Dictionary<UUID, SceneObjectGroup>();
private Dictionary<UUID, ScenePresence> m_presenceUpdates = new Dictionary<UUID, ScenePresence>();
private System.Timers.Timer m_statsTimer = new System.Timers.Timer(1000);
//private TextWriter m_statsWriter = File.AppendText("syncstats.txt");
private TextWriter m_statsWriter;
public void QueuePartForUpdate(SceneObjectPart part)
{
if (!Active || !Synced)
return;
lock (m_updateLock)
{
m_primUpdates[part.ParentGroup.UUID] = part.ParentGroup;
}
//m_log.WarnFormat("[REGION SYNC SERVER MODULE] QueuePartForUpdate: {0}", part.UUID.ToString());
}
public void QueuePresenceForTerseUpdate(ScenePresence presence)
{
@ -273,9 +251,9 @@ namespace OpenSim.Region.CoreModules.RegionSync.RegionSyncModule
lock (m_updateLock)
{
primUpdates = new List<SceneObjectGroup>(m_primUpdates.Values);
//primUpdates = new List<SceneObjectGroup>(m_primUpdates.Values);
presenceUpdates = new List<ScenePresence>(m_presenceUpdates.Values);
m_primUpdates.Clear();
//m_primUpdates.Clear();
m_presenceUpdates.Clear();
}
@ -286,24 +264,6 @@ namespace OpenSim.Region.CoreModules.RegionSync.RegionSyncModule
// Sending the message when it's first queued would yield lower latency but much higher load on the simulator
// as parts may be updated many many times very quickly. Need to implement a higher resolution send in heartbeat
//DSG SYNC: do not handle object updates
/*
if (!m_symsync)
{
foreach (SceneObjectGroup sog in primUpdates)
{
if (!sog.IsDeleted)
{
//KittyL: modified to broadcast to different types of actors
if (m_server != null)
m_server.BroadcastToCM(RegionSyncMessage.MsgType.UpdatedObject, sog);
if (m_sceneToSESyncServer != null)
m_sceneToSESyncServer.SendToSE(RegionSyncMessage.MsgType.UpdatedObject, sog);
}
}
}
* */
//end of DSG SYNC
foreach (ScenePresence presence in presenceUpdates)
{
try
@ -381,39 +341,6 @@ namespace OpenSim.Region.CoreModules.RegionSync.RegionSyncModule
// m_clientView.Send(rsm);
}
public void DeleteObject(ulong regionHandle, uint localID, SceneObjectPart part)
{
if (!Active || !Synced)
return;
//First, tell client managers to remove the SceneObjectPart
OSDMap data = new OSDMap(2);
data["regionHandle"] = OSD.FromULong(regionHandle);
data["localID"] = OSD.FromUInteger(localID);
RegionSyncMessage rsm = new RegionSyncMessage(RegionSyncMessage.MsgType.RemovedObject, OSDParser.SerializeJsonString(data));
//m_server.BroadcastToCM(rsm);
if(m_server!=null)
m_server.Broadcast(rsm);
//KittyL: Second, tell script engine to remove the object, identified by UUID
//UUID objID = m_scene.GetSceneObjectPart(localID).ParentGroup.UUID;
//SceneObjectPart part = m_scene.GetSceneObjectPart(localID);
if (part != null)
{
data = new OSDMap(1);
data["UUID"] = OSD.FromUUID(part.UUID);
rsm = new RegionSyncMessage(RegionSyncMessage.MsgType.RemovedObject, OSDParser.SerializeJsonString(data));
//when an object is deleted, this function (DeleteObject) could be triggered more than once. So we check
//if the object part is already removed is the scene (part==null)
//m_log.Debug("Inform script engine about the deleted object");
//if(m_sceneToSESyncServer!=null)
// m_sceneToSESyncServer.SendToSE(rsm, part.ParentGroup);
}
}
public bool Active
{
get { return m_active; }
@ -431,56 +358,15 @@ namespace OpenSim.Region.CoreModules.RegionSync.RegionSyncModule
}
}
/*
public void SendLoadWorldMap(ITerrainChannel heightMap)
{
RegionSyncMessage msg = new RegionSyncMessage(RegionSyncMessage.MsgType.Terrain, m_scene.Heightmap.SaveToXmlString());
if(m_server!=null)
m_server.Broadcast(msg);
}
* */
#region cruft
#if false
public void QueuePartForUpdate(SceneObjectPart part)
{
m_server.Broadcast(string.Format("QueuePartForUpdate - Name:{0}, LocalID:{1}, UUID:{2}", part.Name, part.LocalId.ToString(), part.UUID.ToString()));
m_log.Warn(string.Format("QueuePartForUpdate - Name:{0}, LocalID:{1}, UUID:{2}", part.Name, part.LocalId.ToString(), part.UUID.ToString()));
//m_log.Warn(System.Environment.StackTrace);
}
public void SendPartFullUpdate(SceneObjectPart part)
{
/*
m_server.Broadcast(string.Format("SendPartFullUpdate - Name:{0}, LocalID:{1}, UUID:{2}", part.Name, part.LocalId.ToString(), part.UUID.ToString()));
m_log.Warn(string.Format("SendPartFullUpdate - Name:{0}, LocalID:{1}, UUID:{2}", part.Name, part.LocalId.ToString(), part.UUID.ToString()));
* */
}
public void SendPartTerseUpdate(SceneObjectPart part)
{
/*
m_server.Broadcast(string.Format("SendPartTerseUpdate - Name:{0}, LocalID:{1}, UUID:{2}", part.Name, part.LocalId.ToString(), part.UUID.ToString()));
m_log.Warn(string.Format("SendPartTerseUpdate - Name:{0}, LocalID:{1}, UUID:{2}", part.Name, part.LocalId.ToString(), part.UUID.ToString()));
* */
}
public void SendShutdownConnectionNotice(Scene scene)
{
/*
m_server.Broadcast("SendShutdownConnectionNotice");
m_log.Warn("SendShutdownConnectionNotice");
* */
}
public void SendKillObject(ulong regionHandle, uint localID)
{
/*
m_server.Broadcast(string.Format("SendKillObject - regionHandle:{0}, localID:{1}", regionHandle.ToString(), localID.ToString()));
m_log.Warn(string.Format("SendKillObject - regionHandle:{0}, localID:{1}", regionHandle.ToString(), localID.ToString()));
m_log.Warn(System.Environment.StackTrace);
* */
}
#endif
#endregion
#endregion
#region RegionSyncServerModule members
@ -510,87 +396,6 @@ namespace OpenSim.Region.CoreModules.RegionSync.RegionSyncModule
#endregion
#region Event Handlers
private void SceneGraph_OnObjectCreate(EntityBase entity)
{
if (!Synced)
return;
// m_log.Debug("[RegionSyncServerModule]: SceneGraph_OnObjectCreate() called");
if (entity is SceneObjectGroup)
{
/*
string sogxml = SceneObjectSerializer.ToXml2Format((SceneObjectGroup)entity);
SceneObjectGroup sog = (SceneObjectGroup)entity;
m_log.Debug("SOG " + sog.UUID);
RegionSyncMessage rsm = new RegionSyncMessage(RegionSyncMessage.MsgType.NewObject, sogxml);
//KittyL: edited to support both Client Manager and Script Engine actors
//m_server.Broadcast(rsm);
m_server.BroadcastToCM(rsm);
* */
SceneObjectGroup sog = (SceneObjectGroup)entity;
m_server.BroadcastToCM(RegionSyncMessage.MsgType.NewObject, sog);
//m_sceneToSESyncServer.SendToSE(RegionSyncMessage.MsgType.NewObject, sog);
}
else
{
m_log.Warn("SceneGraph_OnObjectCreate called with non-SceneObjectGroup");
}
}
private void SceneGraph_OnObjectDuplicate(EntityBase original, EntityBase copy)
{
if (!Synced)
return;
if (original is SceneObjectGroup && copy is SceneObjectGroup)
{
//string sogxml = SceneObjectSerializer.ToXml2Format((SceneObjectGroup)copy);
//RegionSyncMessage rsm = new RegionSyncMessage(RegionSyncMessage.MsgType.NewObject, sogxml);
//m_server.Broadcast(rsm);
SceneObjectGroup sog = (SceneObjectGroup)copy;
m_server.BroadcastToCM(RegionSyncMessage.MsgType.NewObject, sog);
//m_sceneToSESyncServer.SendToSE(RegionSyncMessage.MsgType.NewObject, sog);
}
else
{
m_log.Warn("SceneGraph_OnObjectDuplicate called with non-SceneObjectGroup");
}
}
private void SceneGraph_OnObjectRemove(EntityBase entity)
{
if (!Synced)
return;
if (entity is SceneObjectGroup)
{
// No reason to send the entire object, just send the UUID to be deleted
RegionSyncMessage rsm = new RegionSyncMessage(RegionSyncMessage.MsgType.RemovedObject, entity.UUID.ToString());
m_server.Broadcast(rsm);
SceneObjectPart part = m_scene.GetSceneObjectPart(entity.UUID);
if (part != null)
{
OSDMap data = new OSDMap(1);
data["UUID"] = OSD.FromUUID(part.UUID);
rsm = new RegionSyncMessage(RegionSyncMessage.MsgType.RemovedObject, OSDParser.SerializeJsonString(data));
//when an object is deleted, this function (DeleteObject) could be triggered more than once. So we check
//if the object part is already removed is the scene (part==null)
//m_log.Debug("Inform script engine about the deleted object");
//m_sceneToSESyncServer.SendToSE(rsm, part.ParentGroup);
}
}
else
{
m_log.Warn("SceneGraph_OnObjectDelete called with non-SceneObjectGroup");
}
}
// A ficticious event
public void Scene_AddNewPrim(SceneObjectGroup sog)
@ -599,89 +404,6 @@ namespace OpenSim.Region.CoreModules.RegionSync.RegionSyncModule
return;
}
/*
public void StatsReporter_OnSendStatsResult(SimStats stats)
{
//m_log.Warn("SendSimStats");
}
void EventManager_OnObjectBeingRemovedFromScene(SceneObjectGroup sog)
{
string msg = (string.Format("EventManager_OnObjectBeingRemovedFromScene" + System.Environment.NewLine +
"REMOVE: ownerID {0}, groupID {1}, pos {2}, rot {3}, shape {4}, id {5}, localID {6}", sog.OwnerID.ToString(), sog.GroupID.ToString(), sog.RootPart.GroupPosition.ToString(), sog.Rotation.ToString(), sog.RootPart.Shape.ToString(), sog.UUID.ToString(), sog.LocalId.ToString()));
m_server.Broadcast(msg);
m_log.Warn("[REGION SYNC SERVER MODULE] " + msg);
DebugSceneStats();
}
void SceneGraph_OnObjectRemove(EntityBase obj)
{
SceneObjectGroup sog = (SceneObjectGroup)obj;
string msg = (string.Format("SceneGraph_OnObjectRemove" + System.Environment.NewLine +
"REMOVE: ownerID {0}, groupID {1}, pos {2}, rot {3}, shape {4}, id {5}, localID {6}", sog.OwnerID.ToString(), sog.GroupID.ToString(), sog.RootPart.GroupPosition.ToString(), sog.Rotation.ToString(), sog.RootPart.Shape.ToString(), sog.UUID.ToString(), sog.LocalId.ToString()));
m_server.Broadcast(msg);
m_log.Warn("[REGION SYNC SERVER MODULE] " + msg);
DebugSceneStats();
}
void SceneGraph_OnObjectDuplicate(EntityBase original, EntityBase clone)
{
SceneObjectGroup sog1 = (SceneObjectGroup)original;
SceneObjectGroup sog2 = (SceneObjectGroup)clone;
string msg = (string.Format("SceneGraph_OnObjectDuplicate" +
System.Environment.NewLine +
"ORIGINAL: ownerID {0}, groupID {1}, pos {2}, rot {3}, shape {4}, id {5}, localID {6}" +
System.Environment.NewLine +
"CLONE: ownerID {7}, groupID {8}, pos {9}, rot {10}, shape {11}, id {12}, localID {13}",
sog1.OwnerID.ToString(), sog1.GroupID.ToString(), sog1.RootPart.GroupPosition.ToString(), sog1.Rotation.ToString(), sog1.RootPart.Shape.ToString(), sog1.UUID.ToString(), sog1.LocalId.ToString(),
sog2.OwnerID.ToString(), sog2.GroupID.ToString(), sog2.RootPart.GroupPosition.ToString(), sog2.Rotation.ToString(), sog2.RootPart.Shape.ToString(), sog2.UUID.ToString(), sog2.LocalId.ToString()));
m_server.Broadcast(msg);
m_log.Warn("[REGION SYNC SERVER MODULE] " + msg);
m_log.WarnFormat("[REGION SYNC SERVER MODULE] SceneGraph_OnObjectDuplicate");
DebugSceneStats();
}
void SceneGraph_OnObjectCreate(EntityBase obj)
{
SceneObjectGroup sog = (SceneObjectGroup)obj;
string msg = (string.Format("SceneGraph_OnObjectCreate" + System.Environment.NewLine +
"CREATE: ownerID {0}, groupID {1}, pos {2}, rot {3}, shape {4}, id {5}, localID {6}", sog.OwnerID.ToString(), sog.GroupID.ToString(), sog.RootPart.GroupPosition.ToString(), sog.Rotation.ToString(), sog.RootPart.Shape.ToString(), sog.UUID.ToString(), sog.LocalId.ToString()));
m_server.Broadcast(msg);
m_log.Warn("[REGION SYNC SERVER MODULE] " + msg);
//DebugSceneStats();
}
void EventManager_OnLandObjectRemoved(UUID globalID)
{
m_log.WarnFormat("[REGION SYNC SERVER MODULE] EventManager_OnLandObjectRemoved");
DebugSceneStats();
}
void EventManager_OnLandObjectAdded(ILandObject newParcel)
{
m_log.WarnFormat("[REGION SYNC SERVER MODULE] EventManager_OnLandObjectAdded");
DebugSceneStats();
}
void EventManager_OnClientMovement(ScenePresence client)
{
m_moveCounter++;
if (m_moveCounter % 100 == 0)
{
m_server.Broadcast(msg);
m_log.Warn("REGION SYNC SERVER MODULE] " + msg);
}
}
void EventManager_OnAvatarEnteringNewParcel(ScenePresence avatar, int localLandID, UUID regionID)
{
m_log.WarnFormat("[REGION SYNC SERVER MODULE] (OnAvatarEnteringNewParcel) Avatar \"{0}\" has joined the scene {1} {2} {3} {4}", avatar.Name, avatar.ControllingClient.AgentId.ToString(), avatar.UUID.ToString(), localLandID, regionID.ToString());
DebugSceneStats();
}
*/
private void EventManager_OnNewPresence(ScenePresence presence)
{
if (!Synced)
@ -724,12 +446,6 @@ namespace OpenSim.Region.CoreModules.RegionSync.RegionSyncModule
m_server.Broadcast(new RegionSyncMessage(RegionSyncMessage.MsgType.RemovedAvatar, OSDParser.SerializeJsonString(data)));
}
private void EventManager_OnOarFileLoaded(Guid requestID, string errorMsg)
{
//we ignore the requestID and the errorMsg
SendLoadWorldMap(m_scene.Heightmap);
}
#endregion
#region Console Command Interface

View File

@ -39,19 +39,10 @@ namespace OpenSim.Region.Framework.Interfaces
bool Active { get; }
bool Synced { get; }
//bool IsSymSync { get; } //If SymSync is set to true in the config file, then Symmetric Sync is running and object updates should be handled through RegionSyncModule
void QueuePartForUpdate(SceneObjectPart part);
void QueuePresenceForTerseUpdate(ScenePresence presence);
void SendUpdates();
//void DeleteObject(ulong regionHandle, uint localID);
void DeleteObject(ulong regionHandle, uint localID, SceneObjectPart part);
void SendAppearance(UUID agentID);
void SendAnimations(UUID agentID, UUID[] animations, int[] seqs, UUID sourceAgentId, UUID[] objectIDs);
//KittyL: added to support remote script engine actor
//void SendRezScript(SceneObjectGroup sog);
//void SendResetScene();
void SendLoadWorldMap(ITerrainChannel heightMap);
}
}

View File

@ -2165,8 +2165,8 @@ namespace OpenSim.Region.Framework.Scenes
//REGION SYNC
//Inform actors of the new terrain
if (IsSyncedServer())
RegionSyncServerModule.SendLoadWorldMap(Heightmap);
//if (IsSyncedServer())
// RegionSyncServerModule.SendLoadWorldMap(Heightmap);
}
/// <summary>

View File

@ -1444,9 +1444,6 @@ namespace OpenSim.Region.Framework.Scenes
{
AddFullUpdateToAvatar(avatar);
});
// REGION SYNC
if (m_parentGroup.Scene.IsSyncedServer())
m_parentGroup.Scene.RegionSyncServerModule.QueuePartForUpdate((SceneObjectPart)this);
}
/// <summary>
@ -1474,9 +1471,6 @@ namespace OpenSim.Region.Framework.Scenes
{
AddTerseUpdateToAvatar(avatar);
});
// REGION SYNC
if (m_parentGroup.Scene.IsSyncedServer())
m_parentGroup.Scene.RegionSyncServerModule.QueuePartForUpdate((SceneObjectPart)this);
}
public void AddTerseUpdateToAvatar(ScenePresence presence)