/home/bes3soft/bes3soft/Boss/7.0.2/dist/7.0.2/EventFilter/HltProcessor/HltSteering/HltSteering-01-01-05/HltSteering/StepHandler.h

Go to the documentation of this file.
00001 #ifndef STEPHANDLER_H
00002 #define STEPHANDLER_H
00003 
00004 #include <vector>
00005 #include <string>
00006 
00007 #include "GaudiKernel/Algorithm.h"
00008 #include "HltConfig/HltConfigSvc.h"
00009 #include "HltStore/HltStoreSvc.h"
00010 #include "HltDataTypes/EFResult.h"
00011 #include "HltSteering/StepSequencer.h"
00012 #include "HltSteering/StepDecision.h"
00013 
00014 #ifdef TIME_MEASUREMENT  
00015 #include "GaudiKernel/NTuple.h"
00016 #include "BesTimerSvc/IBesTimerSvc.h"
00017 #include "BesTimerSvc/BesTimerSvc.h"
00018 #include <iomanip>  //setw()
00019 #endif
00020 
00021 class StepHandler : public Algorithm
00022 {
00023  public:
00024 
00025   StepHandler(const std::string& name, ISvcLocator* pSvcLocator);
00026   ~StepHandler();
00027 
00028   StatusCode initialize();
00029   StatusCode finalize();
00030   StatusCode execute();
00031   StatusCode beginRun();
00032 
00033  private:
00034 
00035   HltStoreSvc*     m_HltStoreSvc;
00036   HltConfigSvc*    m_HltConfigSvc;
00037   StepSequencer*   sequencerAlg;
00038   StepDecision*    decisionAlg;
00039 
00040   EFResult*        m_EFResult;
00041   EFResult*        m_evtType;
00042   std::vector<std::string> m_stepIdList;
00043 
00044   std::vector<std::string> m_tmp_evtType;
00045 #ifdef TIME_MEASUREMENT   
00046   IBesTimerSvc* m_timersvc;
00047   BesTimer* m_timer[5];
00048 
00049   NTuple::Tuple* m_tuple;
00050 
00051   NTuple::Item<float> g_StepHandlerTime;
00052   NTuple::Item<float> g_1stStepExecTime;
00053   NTuple::Item<float> g_1stStepDeciTime;
00054   NTuple::Item<float> g_2ndStepExecTime;
00055   NTuple::Item<float> g_2ndStepDeciTime;
00056   unsigned long round;
00057 #endif
00058 };
00059 
00060 #endif

Generated on Tue Nov 29 23:12:06 2016 for BOSS_7.0.2 by  doxygen 1.4.7