Pipe Throttle Update Event to EventManager, client --> ScenePresence --> EventManager, so that modules can know when throttles are updated. The event contains no client specific data to preserve the possibility of 'multiple clients' and you must still call ControllingClient.GetThrottlesPacked(f) to see what the throttles actually are once the event fires. Hook EventManager.OnUpdateThrottle to GetTextureModule.

This commit is contained in:
teravus
2012-11-04 22:57:24 -05:00
parent 08b37efc32
commit 4fa088bafb
8 changed files with 75 additions and 3 deletions

View File

@@ -295,6 +295,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
public event MuteListEntryRemove OnRemoveMuteListEntry;
public event GodlikeMessage onGodlikeMessage;
public event GodUpdateRegionInfoUpdate OnGodUpdateRegionInfoUpdate;
public event GenericCall2 OnUpdateThrottles;
#endregion Events
@@ -6729,6 +6730,11 @@ namespace OpenSim.Region.ClientStack.LindenUDP
#endregion
m_udpClient.SetThrottles(atpack.Throttle.Throttles);
GenericCall2 handler = OnUpdateThrottles;
if (handler != null)
{
handler();
}
return true;
}
@@ -11870,6 +11876,11 @@ namespace OpenSim.Region.ClientStack.LindenUDP
public void SetChildAgentThrottle(byte[] throttles)
{
m_udpClient.SetThrottles(throttles);
GenericCall2 handler = OnUpdateThrottles;
if (handler != null)
{
handler();
}
}
/// <summary>