indexing description: "[ An EM_GOOF_FORCE that applies to EM_GOOF_PHYSICABLE alone (without influence of other EM_GOOF_PHYSICABLE). ]" date: "$Date$" revision: "$Revision$" deferred class EM_GOOF_UNARY_FORCE inherit EM_GOOF_FORCE feature {EM_GOOF_FORCE, EM_GOOF_PHYSICS} -- Processing process(objects: DS_LINKED_LIST[EM_GOOF_OBJECT]) is -- Apply force to all physicables local cursor: DS_LINKED_LIST_CURSOR[EM_GOOF_OBJECT] phsical_object: EM_GOOF_PHYSICABLE do from cursor := objects.new_cursor cursor.start until cursor.after loop phsical_object ?= cursor.item if phsical_object /= void and then is_force_applicable(phsical_object) then process_object(phsical_object) end cursor.forth end end is_force_applicable(object: EM_GOOF_PHYSICABLE): BOOLEAN is -- Does force apply to this object? require object_not_void: object /= void deferred end process_object(object: EM_GOOF_PHYSICABLE) is -- Apply force to this object require object_not_void: object /= void deferred end end