29 using System.Reflection;
30 using OpenSim.Framework;
31 using OpenSim.Region.Framework.Scenes;
32 using OpenSim.Services.Interfaces;
40 private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
46 m_GridUserService = guService;
47 m_log.DebugFormat(
"[SIMIAN ACTIVITY DETECTOR]: Started");
54 scene.EventManager.OnMakeRootAgent += OnMakeRootAgent;
55 scene.EventManager.OnNewClient += OnNewClient;
56 scene.EventManager.OnAvatarEnteringNewParcel += OnEnteringNewParcel;
61 scene.EventManager.OnMakeRootAgent -= OnMakeRootAgent;
62 scene.EventManager.OnNewClient -= OnNewClient;
63 scene.EventManager.OnAvatarEnteringNewParcel -= OnEnteringNewParcel;
68 m_log.DebugFormat(
"[SIMIAN ACTIVITY DETECTOR]: Detected root presence {0} in {1}", sp.UUID, sp.Scene.RegionInfo.RegionName);
69 Util.FireAndForget(delegate(
object o)
72 }, null,
"SimianActivityDetector.SetLastPositionOnMakeRootAgent");
77 client.OnConnectionClosed += OnConnectionClose;
86 m_GridUserService.LoggedOut(
91 void OnEnteringNewParcel(
ScenePresence sp,
int localLandID, UUID regionID)
94 Util.FireAndForget(delegate(
object o)
97 }, null,
"SimianActivityDetector.SetLastPositionOnEnteringNewParcel");
void OnConnectionClose(IClientAPI client)
IClientAPI ControllingClient
Scene Scene
The scene to which this entity belongs
void OnNewClient(IClientAPI client)
bool IsChildAgent
If true, then the agent has no avatar in the scene. The agent exists to relay data from a region that...
ISceneAgent SceneAgent
The scene agent for this client. This will only be set if the client has an agent in a scene (i...
override Vector3 AbsolutePosition
Position of this avatar relative to the region the avatar is in
Interactive OpenSim region server
void AddRegion(Scene scene)
virtual RegionInfo RegionInfo
SimianActivityDetector(IGridUserService guService)
void OnMakeRootAgent(ScenePresence sp)
void RemoveRegion(Scene scene)