From 0ea5fc66924303d1bf73ba283a383e2aadee02f2 Mon Sep 17 00:00:00 2001 From: neodarz Date: Sat, 11 Aug 2018 20:21:34 +0200 Subject: Initial commit --- docs/doxygen/nel/a02643.html | 565 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 565 insertions(+) create mode 100644 docs/doxygen/nel/a02643.html (limited to 'docs/doxygen/nel/a02643.html') diff --git a/docs/doxygen/nel/a02643.html b/docs/doxygen/nel/a02643.html new file mode 100644 index 00000000..5495880e --- /dev/null +++ b/docs/doxygen/nel/a02643.html @@ -0,0 +1,565 @@ + + +NeL: NLMISC::CHTimer::CNodeStat struct Reference + + + +
+

NLMISC::CHTimer::CNodeStat Struct Reference

Inheritance diagram for NLMISC::CHTimer::CNodeStat: +

+ +NLMISC::CHTimer::CStats + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Public Member Functions

void buildFromNode (CNode *node, double msPerTick)
void buildFromNodes (CNode **firstNode, uint numNodes, double msPerTick)
void display (CLog *log, bool displayEx=false, bool wantStandardDeviation=false)
void getStats (std::string &dest, bool statEx, double rootTotalTime, bool wantStandardDeviation=false)

Data Fields

double MaxTime
double MeanTime
double MinTime
CNodeNode
uint64 NumVisits
double TimeStandardDeviation
double TotalTime
double TotalTimeWithoutSons
+

Member Function Documentation

+

+ + + + +
+ + + + + + + + + + + + + + + + + + + +
void NLMISC::CHTimer::CStats::buildFromNode CNode node,
double  msPerTick
[inherited]
+
+ + + + + +
+   + + +

+ +

+Definition at line 806 of file hierarchical_timer.cpp. +

+References NLMISC::CHTimer::CStats::buildFromNodes(). +

+Referenced by NLMISC::CHTimer::display(), NLMISC::CHTimer::displayByExecutionPath(), NLMISC::CHTimer::displayHierarchical(), NLMISC::CHTimer::displayHierarchicalByExecutionPathSorted(), and NLMISC::CHTimer::displaySummary(). +

+

00807 {
+00808         buildFromNodes(&node, 1, msPerTick);
+00809 }
+
+

+ + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + +
void NLMISC::CHTimer::CStats::buildFromNodes CNode **  firstNode,
uint  numNodes,
double  msPerTick
[inherited]
+
+ + + + + +
+   + + +

+ +

+Definition at line 812 of file hierarchical_timer.cpp. +

+References NLMISC::CHTimer::CNode::LastSonsTotalTime, NLMISC::CHTimer::CStats::MeanTime, NLMISC::CHTimer::CNode::Measures, min, NLMISC::CHTimer::CNode::NumVisits, NLMISC::sqr(), NLMISC::CHTimer::CStats::TimeStandardDeviation, NLMISC::CHTimer::CNode::TotalTime, NLMISC::CHTimer::CStats::TotalTimeWithoutSons, uint, and uint64. +

+Referenced by NLMISC::CHTimer::CStats::buildFromNode(), and NLMISC::CHTimer::displayHierarchical(). +

+

00813 {
+00814         TotalTime = 0;  
+00815         TotalTimeWithoutSons = 0;       
+00816         NumVisits = 0;
+00817         
+00818         uint64 minTime = (uint64) -1;
+00819         uint64 maxTime = 0;
+00820         
+00821         uint k, l;
+00822         for(k = 0; k < numNodes; ++k)
+00823         {               
+00824                 TotalTime += nodes[k]->TotalTime * msPerTick;
+00825                 TotalTimeWithoutSons += (nodes[k]->TotalTime -  nodes[k]->LastSonsTotalTime) * msPerTick;
+00826                 NumVisits += nodes[k]->NumVisits;
+00827                 minTime = std::min(minTime, nodes[k]->MinTime);
+00828                 maxTime = std::max(maxTime, nodes[k]->MaxTime);                         
+00829         }
+00830         if (minTime == (uint64) -1) 
+00831         {
+00832                 minTime = 0;
+00833         }
+00834         MinTime  = minTime * msPerTick;
+00835         MaxTime  = maxTime * msPerTick;
+00836         if (NumVisits > 0)
+00837                 MeanTime = TotalTime / NumVisits;
+00838         else
+00839                 MeanTime = 0.0;
+00840 
+00841         // compute standard deviation
+00842         double varianceSum = 0;
+00843         uint   numMeasures = 0;
+00844         for(k = 0; k < numNodes; ++k)
+00845         {
+00846                 numMeasures += nodes[k]->Measures.size();
+00847                 for(l = 0; l < nodes[k]->Measures.size(); ++l)
+00848                 {
+00849                         varianceSum += NLMISC::sqr(nodes[k]->Measures[l] - MeanTime);
+00850                 }               
+00851         }
+00852         TimeStandardDeviation = numMeasures == 0 ? 0
+00853                                                                                          : ::sqrt(varianceSum / (numMeasures +1));
+00854 }
+
+

+ + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + +
void NLMISC::CHTimer::CStats::display CLog log,
bool  displayEx = false,
bool  wantStandardDeviation = false
[inherited]
+
+ + + + + +
+   + + +

+ +

+Definition at line 857 of file hierarchical_timer.cpp. +

+References NLMISC::CLog::displayRawNL(), NLMISC::CHTimer::CStats::MeanTime, NLMISC::CHTimer::CStats::TimeStandardDeviation, and NLMISC::CHTimer::CStats::TotalTimeWithoutSons. +

+

00858 {
+00859         log->displayRawNL("HTIMER: Total time                = %.3f ms", (float) TotalTime);
+00860         log->displayRawNL("HTIMER: Total time without sons   = %.3f ms", (float) TotalTimeWithoutSons);
+00861         log->displayRawNL(("HTIMER: Num visits                = " + NLMISC::toString(NumVisits)).c_str());      
+00862         if (displayEx)
+00863         {
+00864                         log->displayRawNL("HTIMER: Min time                  = %.3f ms", (float) MinTime);
+00865                         log->displayRawNL("HTIMER: Max time                  = %.3f ms", (float) MaxTime);
+00866                         log->displayRawNL("HTIMER: Mean time                 = %.3f ms", (float) MeanTime);
+00867                         if (wantStandardDeviation)
+00868                         {
+00869                         log->displayRawNL("HTIMER: Standard deviation        = %.3f ms", (float) TimeStandardDeviation);
+00870                         }
+00871                         //log->displayRawNL("Time standard deviation    = %.3f ms", (float) TimeStandardDeviation);
+00872         }
+00873 }
+
+

+ + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void NLMISC::CHTimer::CStats::getStats std::string &  dest,
bool  statEx,
double  rootTotalTime,
bool  wantStandardDeviation = false
[inherited]
+
+ + + + + +
+   + + +

+Get a string for stats (all stats on the same line)

Parameters:
+ + +
statEx display extended stats
+
+ +

+Definition at line 877 of file hierarchical_timer.cpp. +

+References NLMISC::CHTimer::CStats::MeanTime, NLMISC::smprintf(), NLMISC::CHTimer::CStats::TimeStandardDeviation, NLMISC::toString(), and NLMISC::CHTimer::CStats::TotalTimeWithoutSons. +

+Referenced by NLMISC::CHTimer::displayHierarchical(), NLMISC::CHTimer::displayHierarchicalByExecutionPathSorted(), and NLMISC::CHTimer::displaySummary(). +

+

00878 {
+00879         char buf[1024];
+00880         if (!wantStandardDeviation)
+00881         {       
+00882                 if (!statEx)
+00883                 {       
+00884                         NLMISC::smprintf(buf, 1024, " | %10.3f | %10.3f | %12s ", (float) TotalTime, (float) TotalTimeWithoutSons, toString(NumVisits).c_str());
+00885                 }
+00886                 else
+00887                 {
+00888                         NLMISC::smprintf(buf, 1024, " | %10.3f | %10.3f | %12s | %5.1f/%5.1f | %9.3f | %9.3f | %9.3f",
+00889                                           (float) TotalTime, (float) TotalTimeWithoutSons, toString(NumVisits).c_str(), 
+00890                                           float(100*TotalTimeWithoutSons/rootTotalTime), float(100*TotalTime/rootTotalTime), 
+00891                                           (float) MinTime, (float) MaxTime, (float) MeanTime
+00892                                          );
+00893                 }
+00894         }
+00895         else
+00896         {
+00897                 if (!statEx)
+00898                 {       
+00899                         NLMISC::smprintf(buf, 1024, " | %10.3f | %10.3f | %12s | std deviation %9.3f", (float) TotalTime, (float) TotalTimeWithoutSons, toString(NumVisits).c_str(), (float) TimeStandardDeviation);
+00900                 }
+00901                 else
+00902                 {
+00903                         NLMISC::smprintf(buf, 1024, " | %10.3f | %10.3f | %12s | %5.1f/%5.1f | %9.3f | %9.3f | %9.3f | std deviation %9.3f",
+00904                                                           (float) TotalTime, (float) TotalTimeWithoutSons, toString(NumVisits).c_str(), 
+00905                                                           float(100*TotalTimeWithoutSons/rootTotalTime), float(100*TotalTime/rootTotalTime), 
+00906                                                           (float) MinTime, (float) MaxTime, (float) MeanTime,
+00907                                                           (float) TimeStandardDeviation
+00908                                                         );
+00909                 }
+00910         }
+00911         dest = buf;
+00912 }
+
+


Field Documentation

+

+ + + + +
+ + +
double NLMISC::CHTimer::CStats::MaxTime [inherited] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 343 of file hierarchical_timer.h. +

+Referenced by NLMISC::CHTimer::CStatSorter::operator()().

+

+ + + + +
+ + +
double NLMISC::CHTimer::CStats::MeanTime [inherited] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 340 of file hierarchical_timer.h. +

+Referenced by NLMISC::CHTimer::CStats::buildFromNodes(), NLMISC::CHTimer::CStats::display(), NLMISC::CHTimer::CStats::getStats(), and NLMISC::CHTimer::CStatSorter::operator()().

+

+ + + + +
+ + +
double NLMISC::CHTimer::CStats::MinTime [inherited] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 342 of file hierarchical_timer.h. +

+Referenced by NLMISC::CHTimer::CStatSorter::operator()().

+

+ + + + +
+ + +
CNode* NLMISC::CHTimer::CNodeStat::Node +
+
+ + + + + +
+   + + +

+ +

+Definition at line 367 of file hierarchical_timer.h.

+

+ + + + +
+ + +
uint64 NLMISC::CHTimer::CStats::NumVisits [inherited] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 341 of file hierarchical_timer.h. +

+Referenced by NLMISC::CHTimer::CStatSorter::operator()().

+

+ + + + +
+ + +
double NLMISC::CHTimer::CStats::TimeStandardDeviation [inherited] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 337 of file hierarchical_timer.h. +

+Referenced by NLMISC::CHTimer::CStats::buildFromNodes(), NLMISC::CHTimer::CStats::display(), and NLMISC::CHTimer::CStats::getStats().

+

+ + + + +
+ + +
double NLMISC::CHTimer::CStats::TotalTime [inherited] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 338 of file hierarchical_timer.h. +

+Referenced by NLMISC::CHTimer::display(), NLMISC::CHTimer::displayByExecutionPath(), NLMISC::CHTimer::displayHierarchical(), NLMISC::CHTimer::displayHierarchicalByExecutionPathSorted(), NLMISC::CHTimer::displaySummary(), and NLMISC::CHTimer::CStatSorter::operator()().

+

+ + + + +
+ + +
double NLMISC::CHTimer::CStats::TotalTimeWithoutSons [inherited] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 339 of file hierarchical_timer.h. +

+Referenced by NLMISC::CHTimer::CStats::buildFromNodes(), NLMISC::CHTimer::CStats::display(), NLMISC::CHTimer::CStats::getStats(), and NLMISC::CHTimer::CStatSorter::operator()().

+


The documentation for this struct was generated from the following file: +
Generated on Tue Mar 16 13:18:19 2004 for NeL by + +doxygen +1.3.6
+ + -- cgit v1.2.1