Add a method to flush the prim update buffers once a frame, since the timer

appear to be too slow to be useful, or fail too fire. I may remove the timers
as a consequence if this.
0.6.5-rc1
Melanie Thielker 2009-05-04 14:25:19 +00:00
parent eedf216eba
commit 36dd346a91
8 changed files with 37 additions and 0 deletions

View File

@ -1045,6 +1045,10 @@ namespace OpenSim.Client.MXP.ClientStack
Session.Send(me); Session.Send(me);
} }
public void FlushPrimUpdates()
{
}
public void SendInventoryFolderDetails(UUID ownerID, UUID folderID, List<InventoryItemBase> items, List<InventoryFolderBase> folders, bool fetchFolders, bool fetchItems) public void SendInventoryFolderDetails(UUID ownerID, UUID folderID, List<InventoryItemBase> items, List<InventoryFolderBase> folders, bool fetchFolders, bool fetchItems)
{ {
// Need to translate to MXP somehow // Need to translate to MXP somehow

View File

@ -593,6 +593,11 @@ namespace OpenSim.Client.VWoHTTP.ClientStack
throw new System.NotImplementedException(); throw new System.NotImplementedException();
} }
public void FlushPrimUpdates()
{
throw new System.NotImplementedException();
}
public void SendInventoryFolderDetails(UUID ownerID, UUID folderID, List<InventoryItemBase> items, List<InventoryFolderBase> folders, bool fetchFolders, bool fetchItems) public void SendInventoryFolderDetails(UUID ownerID, UUID folderID, List<InventoryItemBase> items, List<InventoryFolderBase> folders, bool fetchFolders, bool fetchItems)
{ {
throw new System.NotImplementedException(); throw new System.NotImplementedException();

View File

@ -902,6 +902,8 @@ namespace OpenSim.Framework
List<InventoryFolderBase> folders, bool fetchFolders, List<InventoryFolderBase> folders, bool fetchFolders,
bool fetchItems); bool fetchItems);
void FlushPrimUpdates();
void SendInventoryItemDetails(UUID ownerID, InventoryItemBase item); void SendInventoryItemDetails(UUID ownerID, InventoryItemBase item);
/// <summary> /// <summary>

View File

@ -3141,6 +3141,18 @@ namespace OpenSim.Region.ClientStack.LindenUDP
} }
} }
public void FlushPrimUpdates()
{
while (m_primFullUpdates.Count > 0)
{
ProcessPrimFullUpdates(this, null);
}
while (m_primTerseUpdates.Count > 0)
{
ProcessPrimTerseUpdates(this, null);
}
}
public void SendAssetUploadCompleteMessage(sbyte AssetType, bool Success, UUID AssetFullID) public void SendAssetUploadCompleteMessage(sbyte AssetType, bool Success, UUID AssetFullID)
{ {
AssetUploadCompletePacket newPack = new AssetUploadCompletePacket(); AssetUploadCompletePacket newPack = new AssetUploadCompletePacket();

View File

@ -543,6 +543,10 @@ namespace OpenSim.Region.Examples.SimpleModule
{ {
} }
public void FlushPrimUpdates()
{
}
public virtual void SendInventoryFolderDetails(UUID ownerID, UUID folderID, public virtual void SendInventoryFolderDetails(UUID ownerID, UUID folderID,
List<InventoryItemBase> items, List<InventoryItemBase> items,
List<InventoryFolderBase> folders, List<InventoryFolderBase> folders,

View File

@ -840,6 +840,8 @@ namespace OpenSim.Region.Framework.Scenes
} }
} }
ControllingClient.FlushPrimUpdates();
m_scene.StatsReporter.AddAgentTime(Environment.TickCount - m_perfMonMS); m_scene.StatsReporter.AddAgentTime(Environment.TickCount - m_perfMonMS);
} }

View File

@ -631,6 +631,10 @@ namespace OpenSim.Region.OptionalModules.World.NPC
{ {
} }
public void FlushPrimUpdates()
{
}
public virtual void SendInventoryFolderDetails(UUID ownerID, UUID folderID, public virtual void SendInventoryFolderDetails(UUID ownerID, UUID folderID,
List<InventoryItemBase> items, List<InventoryItemBase> items,
List<InventoryFolderBase> folders, List<InventoryFolderBase> folders,

View File

@ -630,6 +630,10 @@ namespace OpenSim.Tests.Common.Mock
{ {
} }
public void FlushPrimUpdates()
{
}
public virtual void SendInventoryFolderDetails(UUID ownerID, UUID folderID, public virtual void SendInventoryFolderDetails(UUID ownerID, UUID folderID,
List<InventoryItemBase> items, List<InventoryItemBase> items,
List<InventoryFolderBase> folders, List<InventoryFolderBase> folders,