00001 00017 // this class header 00018 #include "L1Trigger/GlobalTrigger/interface/L1GtConditionEvaluation.h" 00019 00020 // system include files 00021 #include <iostream> 00022 #include <iomanip> 00023 00024 // user include files 00025 00026 // base class 00027 00028 // 00029 #include "DataFormats/L1GlobalTrigger/interface/L1GlobalTriggerObjectMapFwd.h" 00030 #include "FWCore/MessageLogger/interface/MessageLogger.h" 00031 00032 // constructor 00033 L1GtConditionEvaluation::L1GtConditionEvaluation() { 00034 m_condMaxNumberObjects = 0; 00035 m_condLastResult = false; 00036 m_combinationsInCond = new CombinationsInCond; 00037 00038 } 00039 00040 // copy constructor 00041 L1GtConditionEvaluation::L1GtConditionEvaluation(L1GtConditionEvaluation& cp) { 00042 00043 m_condMaxNumberObjects = cp.condMaxNumberObjects(); 00044 m_condLastResult = cp.condLastResult(); 00045 m_combinationsInCond = cp.getCombinationsInCond(); 00046 00047 } 00048 00049 // destructor 00050 L1GtConditionEvaluation::~L1GtConditionEvaluation() { 00051 00052 delete m_combinationsInCond; 00053 00054 } 00055 00056 // methods 00057 00059 void L1GtConditionEvaluation::print(std::ostream& myCout) const { 00060 00061 myCout << "\n L1GtConditionEvaluation print...\n" << std::endl; 00062 myCout << " Maximum number of objects in condition: " << m_condMaxNumberObjects << std::endl; 00063 myCout << " Condition result: " << m_condLastResult << std::endl; 00064 00065 CombinationsInCond::const_iterator itVV; 00066 std::ostringstream myCout1; 00067 00068 for (itVV = (*m_combinationsInCond).begin(); itVV != (*m_combinationsInCond).end(); itVV++) { 00069 00070 myCout1 << "( "; 00071 00072 std::copy((*itVV).begin(), (*itVV).end(), std::ostream_iterator<int> (myCout1, " ")); 00073 00074 myCout1 << "); "; 00075 00076 } 00077 00078 myCout 00079 << "\n List of combinations passing all requirements for this condition: \n " 00080 << myCout1.str() 00081 << " \n" 00082 << std::endl; 00083 00084 } 00085