public void ForEachPart(Action<SceneObjectPart> whatToDo) { lock (m_partsLock) { foreach (SceneObjectPart part in m_partsList) { whatToDo(part); } } }