Gaudi Framework, version v25r2

Home   Generated: Wed Jun 4 2014
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
SequencerTimerTool.h
Go to the documentation of this file.
1 // $Id: SequencerTimerTool.h,v 1.7 2005/07/29 16:49:43 hmd Exp $
2 #ifndef SEQUENCERTIMERTOOL_H
3 #define SEQUENCERTIMERTOOL_H 1
4 
5 // Include files
6 // from Gaudi
9 
10 // local
11 #include "TimerForSequencer.h"
12 
13 
28  virtual public ISequencerTimerTool
29 {
30 
31 public:
32 
36 
37 public:
38 
40  SequencerTimerTool( const std::string& type,
41  const std::string& name,
42  const IInterface* parent);
43 
44  virtual ~SequencerTimerTool( );
45 
47  virtual StatusCode initialize();
48 
50  virtual StatusCode finalize();
51 
53  virtual int addTimer( const std::string& name );
54 
56  virtual void increaseIndent() { m_indent += 2; }
57 
59  virtual void decreaseIndent()
60  {
61  m_indent -= 2;
62  if ( 0 > m_indent ) m_indent = 0;
63  }
64 
66  void start( int index ) { m_timerList[index].start(); }
67 
69  double stop( int index ) { return m_timerList[index].stop(); }
70 
72  double lastTime( int index ) { return m_timerList[index].lastTime(); }
73 
75  const std::string& name( int index ) { return m_timerList[index].name(); }
76 
78  int indexByName( const std::string& name );
79 
81  virtual bool globalTiming() { return m_globalTiming; };
82 
84  virtual void saveHistograms();
85 
86 private:
87 
88  int m_shots;
89  bool m_normalised;
90  int m_indent;
91  std::vector<TimerForSequencer> m_timerList;
92  double m_normFactor;
93  double m_speedRatio;
95  std::string::size_type m_headerSize;
96 
97 };
98 #endif // SEQUENCERTIMERTOOL_H

Generated at Wed Jun 4 2014 14:48:55 for Gaudi Framework, version v25r2 by Doxygen version 1.8.2 written by Dimitri van Heesch, © 1997-2004