00001 /* 00002 * \class TsSortTool 00003 * 00004 * \brief Filters triggers to only issue approprate ones... 00005 * 00006 * bseilhan@iit.edu 2010-03-24 00007 * 00008 */ 00009 00010 #ifndef _TsSortTool_H_ 00011 #define _TsSortTool_H_ 00012 00013 #include "TrigSim/ITsTriggerTool.h" 00014 #include "GaudiAlg/GaudiTool.h" 00015 00016 #include "Context/TimeStamp.h" 00017 #include "Conventions/Detectors.h" 00018 #include "Conventions/Trigger.h" 00019 00020 #include <vector> 00021 #include <string> 00022 00023 namespace DayaBay{ 00024 class ElecHeader; 00025 class SimTrigHeader; 00026 } 00027 00028 class TsSortTool : public GaudiTool, 00029 virtual public ITsTriggerTool 00030 { 00031 public: 00032 00033 TsSortTool(const std::string& type, 00034 const std::string& name, 00035 const IInterface* parent); 00036 virtual ~TsSortTool(); 00037 00038 virtual StatusCode mutate(DayaBay::SimTrigHeader* trigHeader, 00039 const DayaBay::ElecHeader& elecHeader); 00040 virtual StatusCode initialize(); 00041 virtual StatusCode finalize(); 00042 00043 private: 00044 bool m_active; 00045 unsigned int m_recoveryCycles; 00046 }; 00047 00048 #endif /* _TsSortTool_H_ */