haiku/docs/user/support/StopWatch.dox
2013-02-07 16:04:04 -05:00

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.
*/