/usr/include/root/TMVA/Timer.h is in libroot-tmva-dev 5.34.14-1build1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 | // @(#)root/tmva $Id$
// Author: Andreas Hoecker, Joerg Stelzer, Helge Voss
/**********************************************************************************
* Project: TMVA - a Root-integrated toolkit for multivariate data analysis *
* Package: TMVA *
* Class : Timer *
* Web : http://tmva.sourceforge.net *
* *
* Description: *
* Timing information for methods training *
* *
* Authors (alphabetical): *
* Andreas Hoecker <Andreas.Hocker@cern.ch> - CERN, Switzerland *
* Joerg Stelzer <Joerg.Stelzer@cern.ch> - CERN, Switzerland *
* Helge Voss <Helge.Voss@cern.ch> - MPI-K Heidelberg, Germany *
* Kai Voss <Kai.Voss@cern.ch> - U. of Victoria, Canada *
* *
* Copyright (c) 2006: *
* CERN, Switzerland *
* MPI-K Heidelberg, Germany *
* *
* Redistribution and use in source and binary forms, with or without *
* modification, are permitted according to the terms listed in LICENSE *
* (http://tmva.sourceforge.net/LICENSE) *
**********************************************************************************/
#ifndef ROOT_TMVA_Timer
#define ROOT_TMVA_Timer
//////////////////////////////////////////////////////////////////////////
// //
// Timer //
// //
// Timing information for training and evaluation of MVA methods //
// //
//////////////////////////////////////////////////////////////////////////
#ifndef ROOT_time
#include "time.h"
#endif
#ifndef ROOT_TString
#include "TString.h"
#endif
#ifndef ROOT_TStopwatch
#include "TStopwatch.h"
#endif
// ensure that clock_t is always defined
#if defined(__SUNPRO_CC) && defined(_XOPEN_SOURCE) && (_XOPEN_SOURCE - 0 == 500 )
#ifndef _CLOCK_T
#define _CLOCK_T
typedef long clock_t; // relative time in a specified resolution
#endif /* ifndef _CLOCK_T */
#endif // SUN and XOPENSOURCE=500
namespace TMVA {
class MsgLogger;
class Timer : public TStopwatch {
public:
Timer( const char* prefix = "", Bool_t colourfulOutput = kTRUE );
Timer( Int_t ncounts, const char* prefix = "", Bool_t colourfulOutput = kTRUE );
virtual ~Timer( void );
void Init ( Int_t ncounts );
void Reset( void );
// when the "Scientific" flag set, time is returned with subdecimals
// for algorithm timing measurement
TString GetElapsedTime ( Bool_t Scientific = kTRUE );
Double_t ElapsedSeconds ( void );
TString GetLeftTime ( Int_t icounts );
void DrawProgressBar( Int_t, const TString& comment = "" );
void DrawProgressBar( TString );
void DrawProgressBar( void );
private:
TString SecToText ( Double_t, Bool_t ) const;
Int_t fNcounts; // reference number of "counts"
TString fPrefix; // prefix for outputs
Bool_t fColourfulOutput; // flag for use of colors
static const TString fgClassName; // used for output
static const Int_t fgNbins; // number of bins in progress bar
mutable MsgLogger* fLogger; // the output logger
MsgLogger& Log() const { return *fLogger; }
ClassDef(Timer,0) // Timing information for training and evaluation of MVA methods
};
} // namespace
#endif
|