31 #include "boost/lexical_cast.hpp"
88 <<
"\n (if false: L1GtTrigReport uses L1GlobalTriggerReadoutRecord.)"
89 <<
"\n Input tag for L1 GT record: " << m_l1GtRecordInputTag.label() <<
" \n"
90 <<
"\n Print verbosity level: " << m_printVerbosity <<
" \n"
91 <<
"\n Print output: " << m_printOutput <<
" \n" << std::endl;
172 unsigned long long l1GtStableParCacheID =
215 unsigned long long l1GtPfAlgoCacheID =
230 unsigned long long l1GtPfTechCacheID =
248 unsigned long long l1GtTmAlgoCacheID =
263 unsigned long long l1GtTmTechCacheID =
278 unsigned long long l1GtTmVetoAlgoCacheID =
293 unsigned long long l1GtTmVetoTechCacheID =
311 unsigned long long l1GtMenuCacheID =
322 LogDebug(
"L1GtTrigReport") <<
"\n Changing L1 menu to : \n"
346 bool validRecord =
false;
348 unsigned int pfIndexAlgo = 0;
349 unsigned int pfIndexTech = 0;
362 bool gtDecision = gtRecord->decision();
364 gtDecisionWordBeforeMask = gtRecord->decisionWordBeforeMask();
365 gtDecisionWordAfterMask = gtRecord->decisionWord();
367 technicalTriggerWordBeforeMask = gtRecord->technicalTriggerWordBeforeMask();
368 technicalTriggerWordAfterMask = gtRecord->technicalTriggerWord();
374 pfIndexAlgo = gtRecord->gtPrescaleFactorIndexAlgo();
375 pfIndexTech = gtRecord->gtPrescaleFactorIndexTech();
383 edm::LogWarning(
"L1GtTrigReport") <<
"\n L1GlobalTriggerRecord with input tag "
385 <<
"\n Event classified as Error\n\n"
391 if (gtReadoutRecord.
isValid()) {
394 const std::vector<L1GtFdlWord>& fdlVec = gtReadoutRecord->gtFdlVector();
395 size_t fdlVecSize = fdlVec.size();
397 if (fdlVecSize > 0) {
399 LogDebug(
"L1GtTrigReport") <<
"\n L1GlobalTriggerReadoutRecord with input tag "
404 boost::uint16_t gtFinalOR = gtReadoutRecord->finalOR();
406 gtDecisionWordBeforeMask = gtReadoutRecord->decisionWord();
407 technicalTriggerWordBeforeMask = gtReadoutRecord->technicalTriggerWord();
411 bool gtDecision =
static_cast<bool>(gtFinalOR & ( 1 << iDaqPartition ));
419 =
static_cast<unsigned int>( ( gtReadoutRecord->gtFdlWord() ).gtPrescaleFactorIndexAlgo());
421 =
static_cast<unsigned int>( ( gtReadoutRecord->gtFdlWord() ).gtPrescaleFactorIndexTech());
431 edm::LogWarning(
"L1GtTrigReport") <<
"\n L1GlobalTriggerReadoutRecord with input tag "
433 <<
"\n Invalid L1GlobalTriggerReadoutRecord!"
434 <<
"\n Event classified as Error\n\n"
447 edm::LogWarning(
"L1GtTrigReport") <<
"\n L1GlobalTriggerReadoutRecord with input tag "
449 <<
"\n Event classified as Error\n\n"
457 const std::vector<int>& prescaleFactorsAlgoTrig =
458 ( *m_prescaleFactorsAlgoTrig ).at(pfIndexAlgo);
460 const std::vector<int>& prescaleFactorsTechTrig =
461 ( *m_prescaleFactorsTechTrig ).at(pfIndexTech);
467 for (
CItAlgo itAlgo = algorithmMap.begin(); itAlgo != algorithmMap.end(); itAlgo++) {
469 std::string algName = itAlgo->first;
470 int algBitNumber = ( itAlgo->second ).algoBitNumber();
474 bool algResultBeforeMask = gtDecisionWordBeforeMask[algBitNumber];
483 bool algResultAfterMask =
false;
489 algResultAfterMask = gtDecisionWordAfterMask[algBitNumber];
492 algResultAfterMask = algResultBeforeMask;
495 algResultAfterMask =
false;
500 algResultAfterMask = algResultBeforeMask;
503 algResultAfterMask =
false;
508 menuName, algName, prescaleFactor, triggerMask, iDaqPartition);
513 if ( ( *entryRep ) == * ( *itEntry )) {
516 ( *itEntry )->addValidEntry(algResultAfterMask, algResultBeforeMask);
523 entryRep->
addValidEntry(algResultAfterMask, algResultBeforeMask);
532 for (
CItAlgo itAlgo = technicalTriggerMap.begin(); itAlgo != technicalTriggerMap.end(); itAlgo++) {
535 std::string ttName = itAlgo->first;
536 int ttBitNumber = ( itAlgo->second ).algoBitNumber();
542 bool ttResultBeforeMask = technicalTriggerWordBeforeMask[ttBitNumber];
551 bool ttResultAfterMask =
false;
557 ttResultAfterMask = technicalTriggerWordAfterMask[ttBitNumber];
560 ttResultAfterMask = ttResultBeforeMask;
563 ttResultAfterMask =
false;
568 ttResultAfterMask = ttResultBeforeMask;
571 ttResultAfterMask =
false;
576 menuName, ttName, prescaleFactor, triggerMask, iDaqPartition);
582 if ( ( *entryRep ) == * ( *itEntry )) {
585 ( *itEntry )->addValidEntry(ttResultAfterMask, ttResultBeforeMask);
592 entryRep->
addValidEntry(ttResultAfterMask, ttResultBeforeMask);
603 for (
CItAlgo itAlgo = algorithmMap.begin(); itAlgo != algorithmMap.end(); itAlgo++) {
605 std::string algName = itAlgo->first;
606 int algBitNumber = ( itAlgo->second ).algoBitNumber();
616 menuName, algName, prescaleFactor, triggerMask, iDaqPartition);
622 if ( ( *entryRep ) == * ( *itEntry )) {
625 ( *itEntry )->addErrorEntry();
648 std::string ttName = boost::lexical_cast<std::string>(iTechTrig);
649 int ttBitNumber = iTechTrig;
659 menuName, ttName, prescaleFactor, triggerMask, iDaqPartition);
666 if ( ( *entryRep ) == * ( *itEntry )) {
669 ( *itEntry )->addErrorEntry();
694 std::ostringstream myCout;
696 myCout << std::dec << std::endl;
697 myCout <<
"L1T-Report " <<
"---------- Event Summary ----------\n";
698 myCout <<
"L1T-Report " <<
"Total number of events processed: " <<
m_totalEvents <<
"\n";
699 myCout <<
"L1T-Report\n";
705 <<
" Passed[finalOR] "
708 <<
"\n" << std::endl;
720 << std::right << std::setw(16) << iDaqPartition <<
" "
721 << std::right << std::setw(16) << m_totalEvents <<
" "
722 << std::right << std::setw(16) << m_globalNrAccepts[iDaqPartition] <<
" "
723 << std::right << std::setw(16) << rejectedEvents <<
" "
724 << std::right << std::setw(16) <<
m_globalNrErrors[iDaqPartition] << std::endl;
732 std::set<std::string> menuList;
733 typedef std::set<std::string>::const_iterator CItL1Menu;
736 menuList.insert( ( *itEntry )->gtTriggerMenuName());
740 <<
"\nThe following L1 menus were used for this sample: " << std::endl;
741 for (CItL1Menu itMenu = menuList.begin(); itMenu != menuList.end(); itMenu++) {
742 myCout <<
" " << ( *itMenu ) << std::endl;
744 myCout <<
"\n" << std::endl;
750 <<
"\nL1T-Report " <<
"---------- L1 Trigger Global Summary - DAQ Partition "
754 <<
"\n\n Number of events written after applying L1 prescale factors"
755 <<
" and trigger masks\n" <<
" if not explicitly mentioned.\n\n";
757 for (CItL1Menu itMenu = menuList.begin(); itMenu != menuList.end(); itMenu++) {
759 myCout <<
"\nReport for L1 menu: " << (*itMenu) <<
"\n"
763 << std::right << std::setw(45) <<
"Algorithm Key" <<
" "
764 << std::right << std::setw(10) <<
"Passed" <<
" "
765 << std::right << std::setw(10) <<
"Rejected" <<
" "
766 << std::right << std::setw(10) <<
"Error"
773 && ( ( *itEntry )->gtTriggerMenuName() == *itMenu )) {
776 << std::right << std::setw(45) << (*itEntry)->gtAlgoName() <<
" "
777 << std::right << std::setw(10) << (*itEntry)->gtNrEventsAccept() <<
" "
778 << std::right << std::setw(10) << (*itEntry)->gtNrEventsReject() <<
" "
779 << std::right << std::setw(10) << (*itEntry)->gtNrEventsError()
787 << std::right << std::setw(45) <<
"Technical Trigger Key" <<
" "
788 << std::right << std::setw(10) <<
"Passed" <<
" "
789 << std::right << std::setw(10) <<
"Rejected" <<
" "
790 << std::right << std::setw(10) <<
"Error"
797 && ( ( *itEntry )->gtTriggerMenuName() == *itMenu )) {
800 << std::right << std::setw(45) << (*itEntry)->gtAlgoName() <<
" "
801 << std::right << std::setw(10) << (*itEntry)->gtNrEventsAccept() <<
" "
802 << std::right << std::setw(10) << (*itEntry)->gtNrEventsReject() <<
" "
803 << std::right << std::setw(10) << (*itEntry)->gtNrEventsError()
815 myCout <<
"\nL1T-Report " <<
"---------- L1 Trigger Global Summary - DAQ Partition "
818 myCout <<
"\n\n Number of events written after applying L1 prescale factors"
819 <<
" and trigger masks\n" <<
" if not explicitly mentioned.\n\n";
821 for (CItL1Menu itMenu = menuList.begin(); itMenu != menuList.end(); itMenu++) {
823 myCout <<
"\nReport for L1 menu: " << (*itMenu) <<
"\n"
826 << std::right << std::setw(45) <<
"Algorithm Key" <<
" "
827 << std::right << std::setw(10) <<
"Prescale" <<
" "
828 << std::right << std::setw(5) <<
"Mask" <<
" "
829 << std::right << std::setw(10) <<
"Passed" <<
" "
830 << std::right << std::setw(10) <<
"Rejected" <<
" "
831 << std::right << std::setw(10) <<
"Error" << std::setw(2) <<
" "
837 && ( ( *itEntry )->gtTriggerMenuName() == *itMenu )) {
839 << std::right << std::setw(45) << ( *itEntry )->gtAlgoName() <<
" "
840 << std::right << std::setw(10) << ( *itEntry )->gtPrescaleFactor() <<
" "
841 << std::right << std::setw(2)
842 << std::hex << ( *itEntry )->gtTriggerMask()
844 << std::right << std::setw(10) << ( *itEntry )->gtNrEventsAccept() <<
" "
845 << std::right << std::setw(10) << ( *itEntry )->gtNrEventsReject() <<
" "
846 << std::right << std::setw(10) << ( *itEntry )->gtNrEventsError() << std::setw(2) <<
" "
853 << std::right << std::setw(45) <<
"Technical Trigger Key" <<
" "
854 << std::right << std::setw(10) <<
"Prescale" <<
" "
855 << std::right << std::setw(5) <<
"Mask" <<
" "
856 << std::right << std::setw(10) <<
"Passed" <<
" "
857 << std::right << std::setw(10) <<
"Rejected" <<
" "
858 << std::right << std::setw(10) <<
"Error" << std::setw(2) <<
" "
864 && ( ( *itEntry )->gtTriggerMenuName() == *itMenu )) {
866 << std::right << std::setw(45) << ( *itEntry )->gtAlgoName() <<
" "
867 << std::right << std::setw(10) << ( *itEntry )->gtPrescaleFactor() <<
" "
868 << std::right << std::setw(2)
869 << std::hex << ( *itEntry )->gtTriggerMask()
871 << std::right << std::setw(10) << ( *itEntry )->gtNrEventsAccept() <<
" "
872 << std::right << std::setw(10) << ( *itEntry )->gtNrEventsReject() <<
" "
873 << std::right << std::setw(10) << ( *itEntry )->gtNrEventsError() << std::setw(2) <<
" "
885 for (CItL1Menu itMenu = menuList.begin(); itMenu != menuList.end(); itMenu++) {
887 myCout <<
"\nReport for L1 menu: " << ( *itMenu ) <<
"\n"
891 << std::right << std::setw(45) <<
"Algorithm Key" <<
" "
892 << std::right << std::setw(10) <<
"Passed" <<
" "
893 << std::right << std::setw(10) <<
"Rejected" <<
" "
894 << std::right << std::setw(10) <<
"Error" <<
"\n";
899 && ( ( *itEntry )->gtTriggerMenuName() == *itMenu )) {
901 int nrEventsAccept = ( *itEntry )->gtNrEventsAccept();
902 int nrEventsReject = ( *itEntry )->gtNrEventsReject();
903 int nrEventsError = ( *itEntry )->gtNrEventsError();
906 << std::right << std::setw(45) << (( *itEntry )->gtAlgoName()) <<
" "
907 << std::right << std::setw(10) << nrEventsAccept <<
" "
908 << std::right << std::setw(10) << nrEventsReject <<
" "
909 << std::right << std::setw(10) << nrEventsError <<
"\n";
917 << std::right << std::setw(45) <<
"Algorithm Key" <<
" "
918 << std::right << std::setw(10) <<
"Efficiency " <<
" "
919 << std::right << std::setw(10) <<
"Stat error (%)" <<
"\n";
923 if ( ( ( *itEntry )->gtDaqPartition() == 0 )
924 && ( ( *itEntry )->gtTriggerMenuName() == *itMenu )) {
926 int nrEventsAccept = ( *itEntry )->gtNrEventsAccept();
927 int nrEventsReject = ( *itEntry )->gtNrEventsReject();
928 int nrEventsError = ( *itEntry )->gtNrEventsError();
930 int totalEvents = nrEventsAccept + nrEventsReject + nrEventsError;
934 float statErrEff = 0.;
936 if (totalEvents != 0) {
937 eff =
static_cast<float> (nrEventsAccept)
938 / static_cast<float> (totalEvents);
939 statErrEff =
sqrt(eff * ( 1.0 - eff )
940 / static_cast<float> (totalEvents));
945 << std::right << std::setw(45) << (( *itEntry )->gtAlgoName()) <<
" "
946 << std::right << std::setw(10) << std::fixed << std::setprecision(2)
947 << 100.*eff <<
" +- "
948 << std::right << std::setw(10) << std::setprecision(2)
949 << 100.*statErrEff <<
"\n";
958 << std::right << std::setw(45) <<
"Technical Trigger Key" <<
" "
959 << std::right << std::setw(10) <<
"Passed" <<
" "
960 << std::right << std::setw(10) <<
"Rejected" <<
" "
961 << std::right << std::setw(10) <<
"Error" <<
"\n";
967 && ( ( *itEntry )->gtTriggerMenuName() == *itMenu )) {
969 int nrEventsAccept = ( *itEntry )->gtNrEventsAccept();
970 int nrEventsReject = ( *itEntry )->gtNrEventsReject();
971 int nrEventsError = ( *itEntry )->gtNrEventsError();
974 << std::right << std::setw(45) << (( *itEntry )->gtAlgoName()) <<
" "
975 << std::right << std::setw(10) << nrEventsAccept <<
" "
976 << std::right << std::setw(10) << nrEventsReject <<
" "
977 << std::right << std::setw(10) << nrEventsError <<
"\n";
985 << std::right << std::setw(45) <<
"Technical Trigger Key" <<
" "
986 << std::right << std::setw(10) <<
"Efficiency " <<
" "
987 << std::right << std::setw(10) <<
"Stat error (%)" <<
"\n";
992 if ( ( ( *itEntry )->gtDaqPartition() == 0 )
993 && ( ( *itEntry )->gtTriggerMenuName() == *itMenu )) {
995 int nrEventsAccept = ( *itEntry )->gtNrEventsAccept();
996 int nrEventsReject = ( *itEntry )->gtNrEventsReject();
997 int nrEventsError = ( *itEntry )->gtNrEventsError();
999 int totalEvents = nrEventsAccept + nrEventsReject + nrEventsError;
1003 float statErrEff = 0.;
1005 if (totalEvents != 0) {
1006 eff =
static_cast<float> (nrEventsAccept)
1007 / static_cast<float> (totalEvents);
1008 statErrEff =
sqrt(eff * ( 1.0 - eff )
1009 / static_cast<float> (totalEvents));
1014 << std::right << std::setw(45) << (( *itEntry )->gtAlgoName()) <<
" "
1015 << std::right << std::setw(10) << std::fixed << std::setprecision(2)
1016 << 100.*eff <<
" +- "
1017 << std::right << std::setw(10) << std::setprecision(2)
1018 << 100.*statErrEff <<
"\n";
1033 myCout <<
"\nL1T-Report " <<
"---------- L1 Trigger Global Summary - DAQ Partition "
1036 for (CItL1Menu itMenu = menuList.begin(); itMenu != menuList.end(); itMenu++) {
1038 myCout <<
"\nReport for L1 menu: " << ( *itMenu ) <<
"\n"
1041 << std::right << std::setw(45) <<
"Algorithm Key" <<
" "
1042 << std::right << std::setw(10) <<
"Prescale" <<
" "
1043 << std::right << std::setw(5) <<
"Mask" <<
" "
1044 << std::right << std::setw(25) <<
"Before Mask" <<
" "
1045 << std::right << std::setw(30) <<
"After Mask" <<
" "
1046 << std::right << std::setw(22) <<
"Error"
1048 << std::right << std::setw(64) <<
" " << std::setw(15) <<
"Passed"
1049 << std::right << std::setw(1) <<
" " << std::setw(15) <<
"Rejected"
1050 << std::right << std::setw(1) <<
" " << std::setw(15) <<
"Passed"
1051 << std::right << std::setw(1) <<
" " << std::setw(15) <<
"Rejected"
1057 && ( ( *itEntry )->gtTriggerMenuName() == *itMenu )) {
1059 << std::right << std::setw(45) << ( *itEntry )->gtAlgoName() <<
" "
1060 << std::right << std::setw(10) << ( *itEntry )->gtPrescaleFactor() <<
" "
1061 << std::right << std::setw(5) <<
" " << std::hex << ( *itEntry )->gtTriggerMask() << std::dec <<
" "
1062 << std::right << std::setw(15) << ( *itEntry )->gtNrEventsAcceptBeforeMask() <<
" "
1063 << std::right << std::setw(15) << ( *itEntry )->gtNrEventsRejectBeforeMask() <<
" "
1064 << std::right << std::setw(15) << ( *itEntry )->gtNrEventsAccept() <<
" "
1065 << std::right << std::setw(15) << ( *itEntry )->gtNrEventsReject() <<
" "
1066 << std::right << std::setw(15) << ( *itEntry )->gtNrEventsError()
1073 << std::right << std::setw(45) <<
"Technical Trigger Key" <<
" "
1074 << std::right << std::setw(10) <<
"Prescale" <<
" "
1075 << std::right << std::setw(5) <<
"Mask" <<
" "
1076 << std::right << std::setw(25) <<
"Before Mask" <<
" "
1077 << std::right << std::setw(30) <<
"After Mask" <<
" "
1078 << std::right << std::setw(22) <<
"Error"
1080 << std::right << std::setw(64) <<
" " << std::setw(15) <<
"Passed"
1081 << std::right << std::setw(1) <<
" " << std::setw(15) <<
"Rejected"
1082 << std::right << std::setw(1) <<
" " << std::setw(15) <<
"Passed"
1083 << std::right << std::setw(1) <<
" " << std::setw(15) <<
"Rejected"
1089 && ( ( *itEntry )->gtTriggerMenuName() == *itMenu )) {
1091 << std::right << std::setw(45) << ( *itEntry )->gtAlgoName() <<
" "
1092 << std::right << std::setw(10) << ( *itEntry )->gtPrescaleFactor() <<
" "
1093 << std::right << std::setw(5) <<
" " << std::hex << ( *itEntry )->gtTriggerMask() << std::dec <<
" "
1094 << std::right << std::setw(15) << ( *itEntry )->gtNrEventsAcceptBeforeMask() <<
" "
1095 << std::right << std::setw(15) << ( *itEntry )->gtNrEventsRejectBeforeMask() <<
" "
1096 << std::right << std::setw(15) << ( *itEntry )->gtNrEventsAccept() <<
" "
1097 << std::right << std::setw(15) << ( *itEntry )->gtNrEventsReject() <<
" "
1098 << std::right << std::setw(15) << ( *itEntry )->gtNrEventsError()
1110 myCout <<
"\nL1T-Report "
1111 <<
"---------- L1 Trigger Global Summary - DAQ Partition " << iDaqPartition
1112 <<
" " <<
"----------\n\n";
1115 << std::right << std::setw(45) <<
"Algorithm Key" <<
" "
1116 << std::right << std::setw(10) <<
"Passed" <<
" "
1117 << std::right << std::setw(10) <<
"Rejected" <<
" "
1118 << std::right << std::setw(10) <<
"Error" << std::setw(2) <<
" "
1123 if ( (( *itEntry )->gtDaqPartition() == 0)) {
1126 << std::right << std::setw(45) << ( *itEntry )->gtAlgoName() <<
" "
1127 << std::right << std::setw(10) << ( *itEntry )->gtNrEventsAccept() <<
" "
1128 << std::right << std::setw(10) << ( *itEntry )->gtNrEventsReject() <<
" "
1129 << std::right << std::setw(10) << ( *itEntry )->gtNrEventsError() << std::setw(2) <<
" "
1137 << std::right << std::setw(45) <<
"Technical Trigger Key" <<
" "
1138 << std::right << std::setw(10) <<
"Passed" <<
" "
1139 << std::right << std::setw(10) <<
"Rejected" <<
" "
1140 << std::right << std::setw(10) <<
"Error" << std::setw(2) <<
" "
1145 if ( ( *itEntry )->gtDaqPartition() == 0) {
1148 << std::right << std::setw(45) << ( *itEntry )->gtAlgoName() <<
" "
1149 << std::right << std::setw(10) << ( *itEntry )->gtNrEventsAccept() <<
" "
1150 << std::right << std::setw(10) << ( *itEntry )->gtNrEventsReject() <<
" "
1151 << std::right << std::setw(10) << ( *itEntry )->gtNrEventsError() << std::setw(2) <<
" "
1152 << std::right << std::setw(20) << ( *itEntry )->gtTriggerMenuName()
1166 myCout <<
"\nL1T-Report "
1167 <<
"---------- L1 Trigger Global Summary - DAQ Partition " << iDaqPartition
1168 <<
" " <<
"----------\n\n";
1171 << std::right << std::setw(45) <<
"Algorithm Key" <<
" "
1172 << std::right << std::setw(10) <<
"Prescale" <<
" "
1173 << std::right << std::setw(5) <<
"Mask" <<
" "
1174 << std::right << std::setw(10) <<
"Passed" <<
" "
1175 << std::right << std::setw(10) <<
"Rejected" <<
" "
1176 << std::right << std::setw(10) <<
"Error" << std::setw(2) <<
" "
1181 if ( ( *itEntry )->gtDaqPartition() == 0) {
1183 << std::right << std::setw(45) << ( *itEntry )->gtAlgoName() <<
" "
1184 << std::right << std::setw(10) << ( *itEntry )->gtPrescaleFactor() <<
" "
1185 << std::right << std::setw(2)
1186 << std::hex << ( *itEntry )->gtTriggerMask()
1188 << std::right << std::setw(10) << ( *itEntry )->gtNrEventsAccept() <<
" "
1189 << std::right << std::setw(10) << ( *itEntry )->gtNrEventsReject() <<
" "
1190 << std::right << std::setw(10) << ( *itEntry )->gtNrEventsError() << std::setw(2) <<
" "
1197 << std::right << std::setw(45) <<
"Technical Trigger Key" <<
" "
1198 << std::right << std::setw(10) <<
"Prescale" <<
" "
1199 << std::right << std::setw(5) <<
"Mask" <<
" "
1200 << std::right << std::setw(10) <<
"Passed" <<
" "
1201 << std::right << std::setw(10) <<
"Rejected" <<
" "
1202 << std::right << std::setw(10) <<
"Error" << std::setw(2) <<
" "
1207 if ( ( *itEntry )->gtDaqPartition() == 0) {
1209 << std::right << std::setw(45) << ( *itEntry )->gtAlgoName() <<
" "
1210 << std::right << std::setw(10) << ( *itEntry )->gtPrescaleFactor() <<
" "
1211 << std::right << std::setw(2)
1212 << std::hex << ( *itEntry )->gtTriggerMask()
1214 << std::right << std::setw(10) << ( *itEntry )->gtNrEventsAccept() <<
" "
1215 << std::right << std::setw(10) << ( *itEntry )->gtNrEventsReject() <<
" "
1216 << std::right << std::setw(10) << ( *itEntry )->gtNrEventsError() << std::setw(2) <<
" "
1227 <<
"\n\nL1GtTrigReport: Error - no print verbosity level = " <<
m_printVerbosity
1228 <<
" defined! \nCheck available values in the cfi file." <<
"\n";
1238 myCout << std::endl;
1239 myCout <<
"L1T-Report end!" << std::endl;
1240 myCout << std::endl;
1252 LogTrace(
"L1GtTrigReport") << myCout.str() << std::endl;
1273 <<
"\n\n L1GtTrigReport: Error - no print output = " <<
m_printOutput
1274 <<
" defined! \n Check available values in the cfi file." <<
"\n" << std::endl;
virtual ~L1GtTrigReport()
destructor
T getParameter(std::string const &) const
T getUntrackedParameter(std::string const &, T const &) const
std::vector< int > m_globalNrErrors
global number of events with error (EDProduct[s] not found)
std::list< L1GtTrigReportEntry * >::const_iterator CItEntry
std::list< L1GtTrigReportEntry * > m_entryListTechTrig
list of individual entries in the report for technical triggers
const L1GtTriggerMenu * m_l1GtMenu
std::vector< unsigned int > m_triggerMaskTechTrig
unsigned int m_numberDaqPartitions
number of DAQ partitions
unsigned long long m_l1GtStableParCacheID
const L1GtStableParameters * m_l1GtStablePar
cached stuff
std::vector< unsigned int > m_triggerMaskAlgoTrig
void addValidEntry(const bool algResultAfterMask, const bool algResultBeforeMask)
increase # of events accepted/rejected for this entry
int m_printOutput
print output
unsigned long long m_l1GtPfTechCacheID
unsigned int m_numberDaqPartitionsMax
const L1GtTriggerMask * m_l1GtTmVetoTech
const L1GtPrescaleFactors * m_l1GtPfTech
int m_printVerbosity
print verbosity
const L1GtTriggerMask * m_l1GtTmVetoAlgo
virtual void analyze(const edm::Event &, const edm::EventSetup &)
analyze each event
std::list< L1GtTrigReportEntry * > m_entryList
list of individual entries in the report for physics algorithms
unsigned int gtNumberTechnicalTriggers() const
get / set the number of technical triggers
unsigned int gtNumberPhysTriggers() const
get / set the number of physics trigger algorithms
bool m_useL1GlobalTriggerRecord
boolean flag to select the input record
unsigned long long m_l1GtPfAlgoCacheID
const std::vector< unsigned int > & gtTriggerMask() const
get the trigger mask
std::vector< bool > DecisionWord
typedefs
const L1GtTriggerMask * m_l1GtTmAlgo
trigger masks & veto masks
const L1GtPrescaleFactors * m_l1GtPfAlgo
prescale factors
unsigned long long m_l1GtTmAlgoCacheID
std::vector< bool > TechnicalTriggerWord
technical trigger bits (64 bits)
std::vector< unsigned int > m_triggerMaskVetoTechTrig
unsigned int m_numberTechnicalTriggers
number of technical triggers
bool getByLabel(InputTag const &tag, Handle< PROD > &result) const
unsigned long long m_l1GtTmVetoTechCacheID
void addErrorEntry()
increase # of events with error
const L1GtTriggerMask * m_l1GtTmTech
std::vector< int > m_globalNrAccepts
global number of events accepted by any of the L1 algorithm in any menu
unsigned long long m_l1GtMenuCacheID
unsigned long long m_l1GtTmTechCacheID
std::vector< unsigned int > m_triggerMaskVetoAlgoTrig
const std::vector< std::vector< int > > & gtPrescaleFactors() const
get the prescale factors by reference
int m_totalEvents
counters
std::list< L1GtTrigReportEntry * >::iterator ItEntry
T const * product() const
const std::vector< std::vector< int > > * m_prescaleFactorsAlgoTrig
L1GtTrigReport(const edm::ParameterSet &)
constructor
unsigned int m_physicsDaqPartition
index of physics DAQ partition
edm::InputTag m_l1GtRecordInputTag
input tag for GT record (L1 GT DAQ record or L1 GT "lite" record):
virtual void endJob()
end of job
unsigned int m_numberPhysTriggers
number of physics triggers
const std::vector< std::vector< int > > * m_prescaleFactorsTechTrig
unsigned long long m_l1GtTmVetoAlgoCacheID