Open CASCADE Technology 6.6.0
Public Member Functions | Static Public Member Functions
MoniTool_Stat Class Reference

This class manages Statistics to be queried asynchronously.

It is organized as a stack of counters, identified by their
levels, from one to ... . Each one has a total account of
items to be counted, a count of already passed items, plus a
count of "current items". The counters of higher level play on
these current items.
For instance, if a counter has been opened for 100 items, 40
already passed, 20 current, its own percent is 40, but there
is the contribution of higher level counters, rated for 20 %
of this counter.

Hence, a counter is opened, items are added. Also items can be
add for sub-counter (of higher level), they will be added
definitively when the sub-counter will be closed. When the
count has ended, this counter is closed, the counter of
lower level cumulates it and goes on. As follows :

Way of use :
Open(nbitems);
Add(..) : direct adding
Add(..)
AddSub (nsub) : for sub-counter
Open (nbsubs) : nbsubs for this sub-counter
Add (..)
Close : the sub-counter
AddEnd()
etc...
Close : the starting counter

This means that a counter can be opened in a Stat, regardless
to the already opened ones :: this will be cumulated

A Current Stat is available, but it is possible to have others

#include <MoniTool_Stat.hxx>

Public Member Functions

 MoniTool_Stat (const Standard_CString title="")
 Creates a Stat form. At start, one default phase is defined,
with one default step. Then, it suffises to start with a
count of items (and cycles if several) then record items,
to have a queryable report.

 MoniTool_Stat (const MoniTool_Stat &other)
 used when starting

Standard_Integer Open (const Standard_Integer nb=100)
 Opens a new counter with a starting count of items

void OpenMore (const Standard_Integer id, const Standard_Integer nb)
 Adds more items to be counted by Add... on current level

void Add (const Standard_Integer nb=1)
 Directly addes items

void AddSub (const Standard_Integer nb=1)
 Declares a count of items to be added later. If a sub-counter
is opened, its percentage multiplies this sub-count to compute
the percent of current level

void AddEnd ()
 Ends the AddSub and cumulates the sub-count to current level

void Close (const Standard_Integer id)
Standard_Integer Level () const
Standard_Real Percent (const Standard_Integer fromlev=0) const

Static Public Member Functions

static MoniTool_StatCurrent ()

Constructor & Destructor Documentation

MoniTool_Stat::MoniTool_Stat ( const Standard_CString  title = "")
MoniTool_Stat::MoniTool_Stat ( const MoniTool_Stat other)

Member Function Documentation

void MoniTool_Stat::Add ( const Standard_Integer  nb = 1)
void MoniTool_Stat::AddEnd ( )
void MoniTool_Stat::AddSub ( const Standard_Integer  nb = 1)
void MoniTool_Stat::Close ( const Standard_Integer  id)
static MoniTool_Stat& MoniTool_Stat::Current ( ) [static]
Standard_Integer MoniTool_Stat::Level ( ) const
Standard_Integer MoniTool_Stat::Open ( const Standard_Integer  nb = 100)
void MoniTool_Stat::OpenMore ( const Standard_Integer  id,
const Standard_Integer  nb 
)
Standard_Real MoniTool_Stat::Percent ( const Standard_Integer  fromlev = 0) const

The documentation for this class was generated from the following file:
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines