| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

In This Package:

TsESumTriggerTool.h

Go to the documentation of this file.
00001 /*
00002  * \class TsESumTriggerTool
00003  *
00004  * \brief ESum trigger tool
00005  *
00006  * bseilhan@iit.edu 2010-03-23
00007  *
00008  */
00009 
00010 #ifndef _TsESumTriggerTool_H_
00011 #define _TsESumTriggerTool_H_
00012 
00013 #include "TrigSim/ITsTriggerTool.h"
00014 #include "GaudiAlg/GaudiTool.h"
00015 
00016 #include "Conventions/Detectors.h"
00017 #include "Conventions/Trigger.h"
00018 
00019 #include <vector>
00020 #include <map>
00021 #include <string>
00022 
00023 namespace DayaBay{
00024   class ElecHeader;
00025   class SimTrigHeader;
00026 }
00027 
00028 class TsESumTriggerTool : public GaudiTool , virtual public ITsTriggerTool
00029 {
00030 public:  
00031   
00032     TsESumTriggerTool(const std::string& type,
00033            const std::string& name,
00034            const IInterface* parent);
00035                  
00036     virtual ~TsESumTriggerTool();
00037 
00038     virtual StatusCode mutate(DayaBay::SimTrigHeader* trigHeader,
00039                                       const DayaBay::ElecHeader& elecHeader);
00040                                       
00041     virtual StatusCode initialize();
00042     virtual StatusCode finalize();
00043     
00044 private:
00045     unsigned int m_recoveryCycles;
00046     
00047     double m_ADThreshold;
00048     double m_FarIWSThreshold;
00049     double m_FarOWSThreshold;
00050     double m_NearIWSThreshold;
00051     double m_NearOWSThreshold;
00052     
00053     std::map<std::string,double> m_UpperLowerThresholdMap;
00054     std::map<std::string,double> m_TotalDigitalThresholdMap;
00055   
00056     virtual StatusCode fillTriggers(DayaBay::SimTrigHeader* trigHeader,
00057                                             const DayaBay::ElecHeader& elecHeader);
00058                                             
00059     std::vector<std::string> m_detectorsToProcess;
00060     
00061     double getULThreshold(DayaBay::Detector det);
00062     double getDTThreshold(DayaBay::Detector det);
00063     
00064     int getDigitalValue(double analogThresh);
00065     
00066     DayaBay::Trigger::TriggerType_t getTriggerType(DayaBay::Detector det);
00067 };
00068 
00069 
00070 
00071 #endif /* _TsESumTriggerTool_H_ */
| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

Generated on Mon Apr 11 20:50:03 2011 for TrigSim by doxygen 1.4.7