00001
00002
00003
00004
00005
00006
00007
00008
00009
00010 #include "AtlfastAlgs/Monitor.h"
00011 #include <cmath>
00012
00013
00014 #include <algorithm>
00015
00016
00017 #include "GaudiKernel/DataSvc.h"
00018
00019 namespace Atlfast {
00020
00021
00022
00023
00024
00025
00026 Monitor::Monitor (
00027 const std::string& name,
00028 ISvcLocator* pSvcLocator
00029 )
00030 : Algorithm( name, pSvcLocator )
00031 {
00032
00033
00034
00035
00036
00037 m_frequency = 50;
00038 m_comment ="no comment";
00039 declareProperty( "Frequency",m_frequency );
00040 declareProperty( "Comment", m_comment );
00041
00042 }
00043
00044
00045
00046
00047
00048 Monitor::~Monitor() {
00049 MsgStream log( messageService(), name() ) ;
00050 log << MSG::INFO << "destructor, deleting smearer" << endreq;
00051 }
00052
00053
00054
00055
00056 StatusCode Monitor::initialize()
00057 {
00058
00059 m_nEvents=0;
00060 return StatusCode::SUCCESS ;
00061 }
00062
00063
00064
00065
00066
00067 StatusCode Monitor::finalize()
00068 {
00069
00070 MsgStream log( messageService(), name() ) ;
00071
00072 log << MSG::INFO << "Finalizing" << endreq;
00073
00074 return StatusCode::SUCCESS ;
00075 }
00076
00077 StatusCode Monitor::execute( )
00078 {
00079
00080 MsgStream log( messageService(), name() ) ;
00081
00082 ++m_nEvents;
00083
00084 if( m_nEvents % m_frequency == 0) {
00085 log << MSG::INFO << " processing event number "
00086 << m_nEvents <<" "<<m_comment<<endreq;
00087 }
00088
00089 return StatusCode::SUCCESS;
00090 }
00091
00092 }
00093
00094
00095
00096
00097
00098
00099
00100
00101
00102
00103
00104
00105
00106
00107
00108
00109