Chromium Code Reviews| Index: chrome/common/profiling.h |
| diff --git a/chrome/common/profiling.h b/chrome/common/profiling.h |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..33bb720ee0846bdcb27bb6ddda3f5ab000960944 |
| --- /dev/null |
| +++ b/chrome/common/profiling.h |
| @@ -0,0 +1,47 @@ |
| +// Copyright (c) 2006-2008 The Chromium Authors. All rights reserved. |
| +// Use of this source code is governed by a BSD-style license that can be |
| +// found in the LICENSE file. |
| + |
| +#ifndef CHROME_COMMON_PROFILING_H_ |
| +#define CHROME_COMMON_PROFILING_H_ |
| +#pragma once |
| + |
| +#include "build/build_config.h" |
| + |
| +#include "base/basictypes.h" |
| +#include "base/debug/profiler.h" |
| + |
| +// The Profiling class manages the interaction with a sampling based profiler. |
| +// Its function is controlled by the kProfilingAtStart, kProfilingFile, and |
| +// kProfilingFlush command line values. |
| +// All of the API should only be called from the main thread of the process.cdddfd |
|
evanm
2011/02/01 19:39:59
typos in here
DaveMoore
2011/02/01 21:33:04
Done.
|
| +class Profiling { |
| + public: |
| + // Called early in a process' life to allow profiling of the startup process. |
|
evanm
2011/02/01 19:39:59
Maybe mention that this examines command-line flag
DaveMoore
2011/02/01 21:33:04
Changed method name to ProcessStarted() to match M
|
| + static void StartAtStart(); |
| + |
| + // Start profiling. |
| + static void Start(); |
| + |
| + // Stop profiling and write out profiling file. |
| + static void Stop(); |
| + |
| + // Returns true if the process is being profiled. |
| + static bool BeingProfiled(); |
| + |
| + // Called when the main message loop is started, so that automatic flushing |
| + // of the profile data file can be done. |
| + static void MainMessageLoopStarted(); |
| + |
| + // Toggle profiling on/off. |
| + static void Toggle(); |
| + |
| + private: |
| + // Do not instantiate this class. |
| + Profiling(); |
| + |
| + DISALLOW_COPY_AND_ASSIGN(Profiling); |
| +}; |
| + |
| +#endif // CHROME_COMMON_PROFILING_H_ |
| + |