NtupleReader/NtupleReader/MyTrigger.h

00001 // some other methods SM 
00002 //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
00003 // 13.04.2007, AUTHOR: MANFRED GROH
00004 //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
00005 
00006 #ifndef MyTriggerH
00007 #define MyTriggerH
00008 
00009 //:::::::::::::::::::::
00010 //:: CLASS MyTrigger ::
00011 //:::::::::::::::::::::
00012 
00022 
00023 //::::::::::::::::::
00024 //:: HEADER FILES ::
00025 //::::::::::::::::::
00026 
00027 // standard C++ //
00028 #include <iostream>
00029 #include <string>
00030 #include <vector>
00031 #include <map>
00032 
00033 
00034 class MyTrigger{
00035 
00036 public:
00037 // Constructors //
00038         MyTrigger(void) {
00039                 std::vector<std::string> empty;
00040                 std::vector<int> empty2;
00041                 init(false, false, false, empty, empty2, empty, empty2, empty, empty2);
00042                 }
00044         MyTrigger(const bool  trigger_l1_defined,
00045                           const bool  trigger_l2_defined,
00046                           const bool  trigger_ef_defined,
00047                           const std::vector<std::string>  trigger_keys_l1,
00048                           const std::vector<int>  trigger_keys_status_l1,
00049                           const std::vector<std::string>  trigger_keys_l2,
00050                           const std::vector<int>  trigger_keys_status_l2,
00051                           const std::vector<std::string>  trigger_keys_ef,
00052                           const std::vector<int>  trigger_keys_status_ef) {
00053                 init(trigger_l1_defined,
00054                          trigger_l2_defined,
00055                          trigger_ef_defined,
00056                          trigger_keys_l1,
00057                          trigger_keys_status_l1,
00058                          trigger_keys_l2,
00059                          trigger_keys_status_l2,
00060                          trigger_keys_ef,
00061                          trigger_keys_status_ef);
00062         }
00064 
00065 
00066 // Methods //
00067 // get methods //
00068         bool isTriggered(std::string TriggerItem, unsigned int level) const;
00070         std::vector<std::string> triggerkey(unsigned int level) const;
00071         std::map<std::string, bool> triggermap(unsigned int level);
00072 
00073 
00074 private:
00075 // Trigger data //
00076         // flags for trigger levels
00077         bool m_L1defined;
00078         bool m_L2defined;
00079         bool m_EFdefined;
00080 
00081         // signature maps for each level
00082         std::map<std::string, bool> m_TriggerMapL1;
00083         std::map<std::string, bool> m_TriggerMapL2;
00084         std::map<std::string, bool> m_TriggerMapEF;
00085         std::vector<std::string> m_trigger_keys_l1;
00086         std::vector<std::string> m_trigger_keys_l2;
00087         std::vector<std::string> m_trigger_keys_ef;
00088 
00089 
00090 // private methods //
00091         void set_TriggerItem(std::string TriggerItem, bool triggered, unsigned int level);
00092         void init(const bool  trigger_l1_defined,
00093                                          const bool  trigger_l2_defined,
00094                                          const bool  trigger_ef_defined,
00095                                          const std::vector<std::string> & trigger_keys_l1,
00096                                          const std::vector<int> & trigger_keys_status_l1,
00097                                          const std::vector<std::string> & trigger_keys_l2,
00098                                          const std::vector<int> & trigger_keys_status_l2,
00099                                          const std::vector<std::string> & trigger_keys_ef,
00100                                          const std::vector<int> & trigger_keys_status_ef);
00101                                         // initialization method
00102                         
00103 
00104 };
00105 
00106 #endif

Generated on Tue Oct 21 11:50:45 2008 for NtupleAnalysis by  doxygen 1.5.1