/// <summary> /// Request a filtered list of m_scenePresences in this World /// </summary> /// <returns></returns> protected internal List<ScenePresence> GetScenePresences(FilterAvatarList filter) { // No locking of scene presences here since we're passing back a list... List<ScenePresence> result = new List<ScenePresence>(); ScenePresence[] scenePresences = GetScenePresences(); for (int i = 0; i < scenePresences.Length; i++) { ScenePresence avatar = scenePresences[i]; if (filter(avatar)) result.Add(avatar); } return result; }
/// <summary> /// Request a filtered list of ScenePresences in this region. /// This list is a new object, so it can be iterated over without locking. /// </summary> /// <param name="filter"></param> /// <returns></returns> public List<ScenePresence> GetScenePresences(FilterAvatarList filter) { return m_sceneGraph.GetScenePresences(filter); }
/// <summary> /// Request a filtered list of m_scenePresences in this World /// </summary> /// <returns></returns> protected internal List<ScenePresence> GetScenePresences(FilterAvatarList filter) { // No locking of scene presences here since we're passing back a list... List<ScenePresence> result = new List<ScenePresence>(); List<ScenePresence> ScenePresencesList = GetScenePresences(); foreach (ScenePresence avatar in ScenePresencesList) { if (filter(avatar)) { result.Add(avatar); } } return result; }