Add some values to the SimulatorFeatures cap's OpenSimExtras section relative to FPS statistics. This is transition code ported from avinationmerge.
parent
752a1534f8
commit
75befda6df
|
@ -509,6 +509,8 @@ namespace OpenSim.ApplicationPlugins.RegionModulesController
|
||||||
{
|
{
|
||||||
module.RegionLoaded(scene);
|
module.RegionLoaded(scene);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
scene.AllModulesLoaded();
|
||||||
}
|
}
|
||||||
|
|
||||||
public void RemoveRegionFromModules (Scene scene)
|
public void RemoveRegionFromModules (Scene scene)
|
||||||
|
|
|
@ -39,6 +39,7 @@ using Nini.Config;
|
||||||
using OpenMetaverse;
|
using OpenMetaverse;
|
||||||
using OpenMetaverse.Packets;
|
using OpenMetaverse.Packets;
|
||||||
using OpenMetaverse.Imaging;
|
using OpenMetaverse.Imaging;
|
||||||
|
using OpenMetaverse.StructuredData;
|
||||||
using OpenSim.Framework;
|
using OpenSim.Framework;
|
||||||
using OpenSim.Framework.Monitoring;
|
using OpenSim.Framework.Monitoring;
|
||||||
using OpenSim.Services.Interfaces;
|
using OpenSim.Services.Interfaces;
|
||||||
|
@ -381,6 +382,9 @@ namespace OpenSim.Region.Framework.Scenes
|
||||||
}
|
}
|
||||||
private int m_minFrameTicks;
|
private int m_minFrameTicks;
|
||||||
|
|
||||||
|
public int FrameTimeWarnPercent { get; private set; }
|
||||||
|
public int FrameTimeCritPercent { get; private set; }
|
||||||
|
|
||||||
// Normalize the frame related stats to nominal 55fps for viewer and scripts option
|
// Normalize the frame related stats to nominal 55fps for viewer and scripts option
|
||||||
// see SimStatsReporter.cs
|
// see SimStatsReporter.cs
|
||||||
public bool Normalized55FPS { get; private set; }
|
public bool Normalized55FPS { get; private set; }
|
||||||
|
@ -860,6 +864,8 @@ namespace OpenSim.Region.Framework.Scenes
|
||||||
{
|
{
|
||||||
m_config = config;
|
m_config = config;
|
||||||
MinFrameTicks = 89;
|
MinFrameTicks = 89;
|
||||||
|
FrameTimeWarnPercent = 60;
|
||||||
|
FrameTimeCritPercent = 40;
|
||||||
Normalized55FPS = true;
|
Normalized55FPS = true;
|
||||||
MinMaintenanceTicks = 1000;
|
MinMaintenanceTicks = 1000;
|
||||||
SeeIntoRegion = true;
|
SeeIntoRegion = true;
|
||||||
|
@ -1088,6 +1094,8 @@ namespace OpenSim.Region.Framework.Scenes
|
||||||
|
|
||||||
if (startupConfig.Contains("MinFrameTime"))
|
if (startupConfig.Contains("MinFrameTime"))
|
||||||
MinFrameTicks = (int)(startupConfig.GetFloat("MinFrameTime") * 1000);
|
MinFrameTicks = (int)(startupConfig.GetFloat("MinFrameTime") * 1000);
|
||||||
|
FrameTimeWarnPercent = startupConfig.GetInt( "FrameTimeWarnPercent", FrameTimeWarnPercent);
|
||||||
|
FrameTimeCritPercent = startupConfig.GetInt( "FrameTimeCritPercent", FrameTimeCritPercent);
|
||||||
Normalized55FPS = startupConfig.GetBoolean( "Normalized55FPS", Normalized55FPS);
|
Normalized55FPS = startupConfig.GetBoolean( "Normalized55FPS", Normalized55FPS);
|
||||||
|
|
||||||
m_update_backup = startupConfig.GetInt("UpdateStorageEveryNFrames", m_update_backup);
|
m_update_backup = startupConfig.GetInt("UpdateStorageEveryNFrames", m_update_backup);
|
||||||
|
@ -1256,13 +1264,44 @@ namespace OpenSim.Region.Framework.Scenes
|
||||||
get { return m_sceneGraph; }
|
get { return m_sceneGraph; }
|
||||||
}
|
}
|
||||||
|
|
||||||
protected virtual void RegisterDefaultSceneEvents()
|
/// <summary>
|
||||||
|
/// Called by the module loader when all modules are loaded, after each module's
|
||||||
|
/// RegionLoaded hook is called. This is the earliest time where RequestModuleInterface
|
||||||
|
/// may be used.
|
||||||
|
/// </summary>
|
||||||
|
public void AllModulesLoaded()
|
||||||
{
|
{
|
||||||
IDialogModule dm = RequestModuleInterface<IDialogModule>();
|
IDialogModule dm = RequestModuleInterface<IDialogModule>();
|
||||||
|
|
||||||
if (dm != null)
|
if (dm != null)
|
||||||
m_eventManager.OnPermissionError += dm.SendAlertToUser;
|
m_eventManager.OnPermissionError += dm.SendAlertToUser;
|
||||||
|
|
||||||
|
ISimulatorFeaturesModule fm = RequestModuleInterface<ISimulatorFeaturesModule>();
|
||||||
|
if (fm != null)
|
||||||
|
{
|
||||||
|
OSD openSimExtras;
|
||||||
|
OSDMap openSimExtrasMap;
|
||||||
|
|
||||||
|
if (!fm.TryGetFeature("OpenSimExtras", out openSimExtras))
|
||||||
|
openSimExtras = new OSDMap();
|
||||||
|
|
||||||
|
float FrameTime = MinFrameTicks / 1000.0f;
|
||||||
|
float statisticsFPSfactor = 1.0f;
|
||||||
|
if(Normalized55FPS)
|
||||||
|
statisticsFPSfactor = 55.0f * FrameTime;
|
||||||
|
|
||||||
|
openSimExtrasMap = (OSDMap)openSimExtras;
|
||||||
|
openSimExtrasMap["SimulatorFPS"] = OSD.FromReal(1.0f / FrameTime);
|
||||||
|
openSimExtrasMap["SimulatorFPSFactor"] = OSD.FromReal(statisticsFPSfactor);
|
||||||
|
openSimExtrasMap["SimulatorFPSWarnPercent"] = OSD.FromInteger(FrameTimeWarnPercent);
|
||||||
|
openSimExtrasMap["SimulatorFPSCritPercent"] = OSD.FromInteger(FrameTimeCritPercent);
|
||||||
|
|
||||||
|
fm.AddFeature("OpenSimExtras", openSimExtrasMap);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
protected virtual void RegisterDefaultSceneEvents()
|
||||||
|
{
|
||||||
m_eventManager.OnSignificantClientMovement += HandleOnSignificantClientMovement;
|
m_eventManager.OnSignificantClientMovement += HandleOnSignificantClientMovement;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue