note description: "[ Objects that manage the Eiffel profiler. You can start and stop the Eiffel profiler whenever you want to. It only works if profile (yes) is enabled in your project configuration file. Also disabling the profiler should be done at the same place where you enabled it otherwise you might corrupt the profiling data. To use this functionality effectively, make sure that the first instruction in your program calls stop_profiling, and that the last executed instruction calls start_profiling, otherwise no profile information will be generated. ]" legal: "See notice at end of class." status: "See notice at end of class." date: "$Date: 2017-03-23 19:18:26 +0000 (Thu, 23 Mar 2017) $" revision: "$Revision: 100033 $" class PROFILING_SETTING create make feature -- Initialization make -- Compute value of Is_profiler_enabled for all instances of -- Current class. do Is_profiler_enabled.do_nothing end feature -- Status report is_profiling: BOOLEAN -- Is profiler currently enabled? do Result := c_prof_enabled > 0 end feature -- Status setting start_profiling -- Start profiling. do if Is_profiler_enabled then set_prof_enabled end end stop_profiling -- Stop profiling do if Is_profiler_enabled then set_prof_disabled end end feature -- Validity Is_profiler_enabled: BOOLEAN -- Is profiler enabled upon launch time? once Result := is_profiling end feature {NONE} -- Implementation c_prof_enabled: INTEGER_32 -- C variables which gives the status on the profiler. external "C macro use %"eif_project.h%"" alias "egc_prof_enabled" end set_prof_enabled -- Enable profiler. external "C macro use %"eif_eiffel.h%"" alias "egc_prof_enabled = 3" end set_prof_disabled -- Disable profiler. external "C macro use %"eif_eiffel.h%"" alias "egc_prof_enabled = 0" end note library: "EiffelBase: Library of reusable components for Eiffel." copyright: "Copyright (c) 1984-2017, Eiffel Software and others" license: "Eiffel Forum License v2 (see http://www.eiffel.com/licensing/forum.txt)" source: "[ Eiffel Software 5949 Hollister Ave., Goleta, CA 93117 USA Telephone 805-685-1006, Fax 805-685-6869 Website http://www.eiffel.com Customer support http://support.eiffel.com ]" end -- class PROFILING_SETTING
Generated by ISE EiffelStudio