00001 #include "ForIA/AnalysisTools/TriggerSelection.hh" 00002 #include "ForIA/Event.hh" 00003 00004 namespace ForIA{ 00005 00006 TriggerSelection::TriggerSelection(): m_canAddTriggers(true){ 00007 00008 } 00009 00010 bool TriggerSelection::addL1Trigger(L1TriggerBit::Bit bit){ 00011 if(!m_canAddTriggers) return false; 00012 00013 m_l1Triggers.insert(bit); 00014 00015 return true; 00016 } 00017 00018 bool TriggerSelection::passesEvent(const Event &evt){ 00019 00020 m_canAddTriggers = false; 00021 00022 L1TriggerBitPtr l1 = evt.l1Trigger(); 00023 00024 bool passes = true; 00025 00026 for(set<L1TriggerBit::Bit>::const_iterator bit = m_l1Triggers.begin(); 00027 bit != m_l1Triggers.end(); ++bit){ 00028 passes = passes && l1->hasBit(*bit); 00029 } 00030 00031 return passes; 00032 } 00033 00034 00035 }