/** * vim: set ts=4 : * =============================================================== * SourceMod (C)2004-2007 AlliedModders LLC. All rights reserved. * =============================================================== * * This file is part of the SourceMod/SourcePawn SDK. This file may only be used * or modified under the Terms and Conditions of its License Agreement, which is found * in LICENSE.txt. The Terms and Conditions for making SourceMod extensions/plugins * may change at any time. To view the latest information, see: * http://www.sourcemod.net/license.php * * Version: $Id$ */ #if defined _profiler_included #endinput #endif #define _profiler_included /** * ONLY AVAILABLE ON WINDOWS RIGHT NOW K. */ /** * Creates a new profile object. The Handle must be freed * using CloseHandle(). * * @return Handle to the profiler object. */ native Handle:CreateProfiler(); /** * Starts profiling. * * @param prof Profiling object. * @noreturn * @error Invalid Handle. */ native StartProfiling(Handle:prof); /** * Stops profiling. * * @param prof Profiling object. * @noreturn * @error Invalid Handle or profiling was never started. */ native StopProfiling(Handle:prof); /** * Returns the amount of high-precision time in seconds * that passed during the profiler's last start/stop * cycle. * * @param prof Profiling object. * @return Time elapsed in seconds. * @error Invalid Handle. */ native Float:GetProfilerTime(Handle:prof);