115 lines
2.9 KiB
Plaintext
115 lines
2.9 KiB
Plaintext
/*
|
|
* Copyright 2007 Haiku, Inc. All rights reserved.
|
|
* Distributed under the terms of the MIT License.
|
|
*
|
|
* Documentation written by:
|
|
* Niels Sascha Reedijk, niels.reedijk@gmail.com
|
|
*
|
|
* Corresponds to:
|
|
* headers/os/support/StopWatch.h rev 19972
|
|
* src/kits/support/StopWatch.cpp rev 14204
|
|
*/
|
|
|
|
|
|
/*!
|
|
\file StopWatch.h
|
|
\ingroup support
|
|
\ingroup libbe
|
|
\brief Provides the BStopWatch class.
|
|
*/
|
|
|
|
|
|
/*!
|
|
\class BStopWatch
|
|
\ingroup support
|
|
\ingroup libbe
|
|
\brief A timer class.
|
|
|
|
This class provides method to time events. The interface is designed to
|
|
behave like a physical stopwatch. It is especially useful for debugging
|
|
certain parts of your code, since it can behave like a 'cheap' profiler.
|
|
*/
|
|
|
|
|
|
/*!
|
|
\fn BStopWatch::BStopWatch(const char *name, bool silent)
|
|
\brief Construct a BStopWatch object and starts the timer.
|
|
|
|
The constructor creates a clean BStopWatch object. This object
|
|
can be given a name. As soon as the object is created, the time
|
|
will start ticking away. This class is designed to be usuable as a primitive
|
|
profiling tool.
|
|
|
|
If you are profiling your code with this class, pass true as the
|
|
\a silent parameter. Whenever the object is destroyed, information on
|
|
the elapsed time will be streamed to standard output.
|
|
|
|
\param name The name you want to give this object. You may pass \c NULL.
|
|
\param silent Pass \c true if you want to use this object as a simple
|
|
profiler.
|
|
*/
|
|
|
|
|
|
/*!
|
|
\fn BStopWatch::~BStopWatch()
|
|
\brief Destructor.
|
|
|
|
Destroys the object. If the object was constructed with the parameter
|
|
silent set t to false, this destructor will print information on the elapsed
|
|
time to standard output.
|
|
*/
|
|
|
|
|
|
/*!
|
|
\fn void BStopWatch::Resume()
|
|
\brief Resume the timer when it is in a suspended state.
|
|
\see Suspend()
|
|
*/
|
|
|
|
|
|
/*!
|
|
\fn void BStopWatch::Suspend()
|
|
\brief Suspend the timer.
|
|
\see Resume()
|
|
*/
|
|
|
|
|
|
/*!
|
|
\fn bigtime_t BStopWatch::Lap()
|
|
\brief Start a new lap.
|
|
|
|
This method sets a lap. With the current implementation you are unable to
|
|
actually retrieve the timings of the laps. This is only printed to the
|
|
standard output when the object is destroyed. Thus making this tool only
|
|
usuable for use when doing some profiling.
|
|
|
|
\attention Please note that the current implementation is limited to 10 laps.
|
|
The value returned is the time that has passed since the timer was started
|
|
(and not the time that has passed since the last lap). Any lap call beyond
|
|
the 10th lap will overwrite the last value. Note that if the timer is
|
|
suspended, nothing happens and the method will return 0.
|
|
*/
|
|
|
|
|
|
/*!
|
|
\fn bigtime_t BStopWatch::ElapsedTime() const
|
|
\brief Get the elapsed time the object has counted.
|
|
\return The elapsed time in microseconds.
|
|
*/
|
|
|
|
|
|
/*!
|
|
\fn void BStopWatch::Reset()
|
|
\brief Restart the timer.
|
|
|
|
Resets the object: it clears the start time, it clears the stored laps and it
|
|
restarts the timer.
|
|
*/
|
|
|
|
|
|
/*!
|
|
\fn const char *BStopWatch::Name() const
|
|
\brief Get the name.
|
|
\return the name given to the object at creation time.
|
|
*/
|