indexing description: "Shared access to currently running scene." date: "$Date$" revision: "$Revision$" class EM_SHARED_SCENE feature -- Access running_scene: EM_SCENE is -- Scene that is currently running do Result := running_scene_cell.item end feature -- Status report has_running_scene: BOOLEAN is -- Is a scene currently running? do Result := running_scene_cell.item /= Void end feature {EM_SCENE} -- Element change set_running_scene (a_scene: EM_SCENE) is -- Set `running_scene' to `a_scene'. do running_scene_cell.put (a_scene) ensure running_scene_set: running_scene = a_scene end feature {NONE} -- Implementation running_scene_cell: DS_CELL [EM_SCENE] is -- Cell holding running scene once create Result.make (Void) end invariant has_running_scene_definition: has_running_scene implies running_scene /= Void end