29 #include "boost/lexical_cast.hpp"
74 m_l1GtStableParCacheID(0ULL),
76 m_numberPhysTriggers(0),
77 m_numberTechnicalTriggers(0),
78 m_numberDaqPartitions(0),
79 m_numberDaqPartitionsMax(0),
82 m_l1GtPfAlgoCacheID(0ULL),
83 m_l1GtPfTechCacheID(0ULL),
85 m_l1GtTmAlgoCacheID(0ULL),
86 m_l1GtTmTechCacheID(0ULL),
88 m_l1GtTmVetoAlgoCacheID(0ULL),
89 m_l1GtTmVetoTechCacheID(0ULL),
92 m_l1GtMenuCacheID(0ULL),
96 m_useL1GlobalTriggerRecord(pSet.getParameter<
bool>(
"UseL1GlobalTriggerRecord")),
99 m_l1GtRecordInputTag(pSet.getParameter<
edm::
InputTag>(
"L1GtRecordInputTag")),
100 m_l1GtRecordInputToken1(m_useL1GlobalTriggerRecord ? consumes<
L1GlobalTriggerRecord>(m_l1GtRecordInputTag)
102 m_l1GtRecordInputToken2(not m_useL1GlobalTriggerRecord
107 m_printVerbosity(pSet.getUntrackedParameter<
int>(
"PrintVerbosity", 2)),
110 m_printOutput(pSet.getUntrackedParameter<
int>(
"PrintOutput", 3)),
119 m_entryListTechTrig(),
122 m_physicsDaqPartition(0)
126 <<
"\n (if false: L1GtTrigReport uses L1GlobalTriggerReadoutRecord.)"
136 if (*itEntry !=
nullptr) {
145 if (*itEntry !=
nullptr) {
292 LogDebug(
"L1GtTrigReport") <<
"\n Changing L1 menu to : \n"
315 bool validRecord =
false;
317 unsigned int pfIndexAlgo = 0;
318 unsigned int pfIndexTech = 0;
329 bool gtDecision = gtRecord->
decision();
351 <<
"\n Event classified as Error\n\n"
356 if (gtReadoutRecord.
isValid()) {
358 const std::vector<L1GtFdlWord>& fdlVec = gtReadoutRecord->
gtFdlVector();
359 size_t fdlVecSize = fdlVec.size();
361 if (fdlVecSize > 0) {
363 <<
" has gtFdlVector of size " << fdlVecSize << std::endl;
366 uint16_t gtFinalOR = gtReadoutRecord->
finalOR();
368 gtDecisionWordBeforeMask = gtReadoutRecord->
decisionWord();
372 bool gtDecision = static_cast<bool>(gtFinalOR & (1 << iDaqPartition));
378 pfIndexAlgo = static_cast<unsigned int>((gtReadoutRecord->
gtFdlWord()).gtPrescaleFactorIndexAlgo());
379 pfIndexTech = static_cast<unsigned int>((gtReadoutRecord->
gtFdlWord()).gtPrescaleFactorIndexTech());
390 <<
" has gtFdlVector of size " << fdlVecSize <<
"\n Invalid L1GlobalTriggerReadoutRecord!"
391 <<
"\n Event classified as Error\n\n"
402 edm::LogWarning(
"L1GtTrigReport") <<
"\n L1GlobalTriggerReadoutRecord with input tag "
404 <<
"\n Event classified as Error\n\n"
410 const std::vector<int>& prescaleFactorsAlgoTrig = (*m_prescaleFactorsAlgoTrig).at(pfIndexAlgo);
412 const std::vector<int>& prescaleFactorsTechTrig = (*m_prescaleFactorsTechTrig).at(pfIndexTech);
416 for (
CItAlgo itAlgo = algorithmMap.begin(); itAlgo != algorithmMap.end(); itAlgo++) {
418 int algBitNumber = (itAlgo->second).algoBitNumber();
422 bool algResultBeforeMask = gtDecisionWordBeforeMask[algBitNumber];
429 bool algResultAfterMask =
false;
435 algResultAfterMask = gtDecisionWordAfterMask[algBitNumber];
438 algResultAfterMask = algResultBeforeMask;
441 algResultAfterMask =
false;
446 algResultAfterMask = algResultBeforeMask;
449 algResultAfterMask =
false;
459 if ((*entryRep) == *(*itEntry)) {
462 (*itEntry)->addValidEntry(algResultAfterMask, algResultBeforeMask);
469 entryRep->
addValidEntry(algResultAfterMask, algResultBeforeMask);
478 for (
CItAlgo itAlgo = technicalTriggerMap.begin(); itAlgo != technicalTriggerMap.end(); itAlgo++) {
482 int ttBitNumber = (itAlgo->second).algoBitNumber();
488 bool ttResultBeforeMask = technicalTriggerWordBeforeMask[ttBitNumber];
495 bool ttResultAfterMask =
false;
501 ttResultAfterMask = technicalTriggerWordAfterMask[ttBitNumber];
504 ttResultAfterMask = ttResultBeforeMask;
507 ttResultAfterMask =
false;
512 ttResultAfterMask = ttResultBeforeMask;
515 ttResultAfterMask =
false;
525 if ((*entryRep) == *(*itEntry)) {
528 (*itEntry)->addValidEntry(ttResultAfterMask, ttResultBeforeMask);
535 entryRep->
addValidEntry(ttResultAfterMask, ttResultBeforeMask);
545 for (
CItAlgo itAlgo = algorithmMap.begin(); itAlgo != algorithmMap.end(); itAlgo++) {
547 int algBitNumber = (itAlgo->second).algoBitNumber();
560 if ((*entryRep) == *(*itEntry)) {
563 (*itEntry)->addErrorEntry();
585 int ttBitNumber = iTechTrig;
598 if ((*entryRep) == *(*itEntry)) {
601 (*itEntry)->addErrorEntry();
622 std::ostringstream myCout;
625 myCout <<
"L1T-Report "
626 <<
"---------- Event Summary ----------\n";
627 myCout <<
"L1T-Report "
628 <<
"Total number of events processed: " <<
m_totalEvents <<
"\n";
629 myCout <<
"L1T-Report\n";
634 <<
" Passed[finalOR] "
646 myCout << std::right << std::setw(16) << iDaqPartition <<
" " << std::right << std::setw(16) <<
m_totalEvents
647 <<
" " << std::right << std::setw(16) <<
m_globalNrAccepts[iDaqPartition] <<
" " << std::right
648 << std::setw(16) << rejectedEvents <<
" " << std::right << std::setw(16) <<
m_globalNrErrors[iDaqPartition]
655 std::set<std::string> menuList;
656 typedef std::set<std::string>::const_iterator CItL1Menu;
659 menuList.insert((*itEntry)->gtTriggerMenuName());
662 myCout <<
"\nThe following L1 menus were used for this sample: " << std::endl;
663 for (CItL1Menu itMenu = menuList.begin(); itMenu != menuList.end(); itMenu++) {
664 myCout <<
" " << (*itMenu) << std::endl;
666 myCout <<
"\n" << std::endl;
670 myCout <<
"\nL1T-Report "
671 <<
"---------- L1 Trigger Global Summary - DAQ Partition " <<
m_physicsDaqPartition <<
"----------\n\n";
673 myCout <<
"\n\n Number of events written after applying L1 prescale factors"
674 <<
" and trigger masks\n"
675 <<
" if not explicitly mentioned.\n\n";
677 for (CItL1Menu itMenu = menuList.begin(); itMenu != menuList.end(); itMenu++) {
678 myCout <<
"\nReport for L1 menu: " << (*itMenu) <<
"\n" << std::endl;
680 myCout << std::right << std::setw(45) <<
"Algorithm Key"
681 <<
" " << std::right << std::setw(10) <<
"Passed"
682 <<
" " << std::right << std::setw(10) <<
"Rejected"
683 <<
" " << std::right << std::setw(10) <<
"Error"
687 if (((*itEntry)->gtDaqPartition() ==
m_physicsDaqPartition) && ((*itEntry)->gtTriggerMenuName() == *itMenu)) {
688 myCout << std::right << std::setw(45) << (*itEntry)->gtAlgoName() <<
" " << std::right << std::setw(10)
689 << (*itEntry)->gtNrEventsAccept() <<
" " << std::right << std::setw(10)
690 << (*itEntry)->gtNrEventsReject() <<
" " << std::right << std::setw(10)
691 << (*itEntry)->gtNrEventsError() <<
"\n";
696 << std::right << std::setw(45) <<
"Technical Trigger Key"
697 <<
" " << std::right << std::setw(10) <<
"Passed"
698 <<
" " << std::right << std::setw(10) <<
"Rejected"
699 <<
" " << std::right << std::setw(10) <<
"Error"
703 if (((*itEntry)->gtDaqPartition() ==
m_physicsDaqPartition) && ((*itEntry)->gtTriggerMenuName() == *itMenu)) {
704 myCout << std::right << std::setw(45) << (*itEntry)->gtAlgoName() <<
" " << std::right << std::setw(10)
705 << (*itEntry)->gtNrEventsAccept() <<
" " << std::right << std::setw(10)
706 << (*itEntry)->gtNrEventsReject() <<
" " << std::right << std::setw(10)
707 << (*itEntry)->gtNrEventsError() <<
"\n";
716 myCout <<
"\nL1T-Report "
717 <<
"---------- L1 Trigger Global Summary - DAQ Partition " <<
m_physicsDaqPartition <<
"----------\n\n";
719 myCout <<
"\n\n Number of events written after applying L1 prescale factors"
720 <<
" and trigger masks\n"
721 <<
" if not explicitly mentioned.\n\n";
723 for (CItL1Menu itMenu = menuList.begin(); itMenu != menuList.end(); itMenu++) {
724 myCout <<
"\nReport for L1 menu: " << (*itMenu) <<
"\n" << std::endl;
725 myCout << std::right << std::setw(45) <<
"Algorithm Key"
726 <<
" " << std::right << std::setw(10) <<
"Prescale"
727 <<
" " << std::right << std::setw(5) <<
"Mask"
728 <<
" " << std::right << std::setw(10) <<
"Passed"
729 <<
" " << std::right << std::setw(10) <<
"Rejected"
730 <<
" " << std::right << std::setw(10) <<
"Error" << std::setw(2) <<
" "
734 if (((*itEntry)->gtDaqPartition() ==
m_physicsDaqPartition) && ((*itEntry)->gtTriggerMenuName() == *itMenu)) {
735 myCout << std::right << std::setw(45) << (*itEntry)->gtAlgoName() <<
" " << std::right << std::setw(10)
736 << (*itEntry)->gtPrescaleFactor() <<
" " << std::right << std::setw(2)
737 << std::hex << (*itEntry)->gtTriggerMask()
738 <<
std::dec <<
" " << std::right << std::setw(10) << (*itEntry)->gtNrEventsAccept() <<
" "
739 << std::right << std::setw(10) << (*itEntry)->gtNrEventsReject() <<
" " << std::right
740 << std::setw(10) << (*itEntry)->gtNrEventsError() << std::setw(2) <<
" "
746 << std::right << std::setw(45) <<
"Technical Trigger Key"
747 <<
" " << std::right << std::setw(10) <<
"Prescale"
748 <<
" " << std::right << std::setw(5) <<
"Mask"
749 <<
" " << std::right << std::setw(10) <<
"Passed"
750 <<
" " << std::right << std::setw(10) <<
"Rejected"
751 <<
" " << std::right << std::setw(10) <<
"Error" << std::setw(2) <<
" "
755 if (((*itEntry)->gtDaqPartition() ==
m_physicsDaqPartition) && ((*itEntry)->gtTriggerMenuName() == *itMenu)) {
756 myCout << std::right << std::setw(45) << (*itEntry)->gtAlgoName() <<
" " << std::right << std::setw(10)
757 << (*itEntry)->gtPrescaleFactor() <<
" " << std::right << std::setw(2)
758 << std::hex << (*itEntry)->gtTriggerMask()
759 <<
std::dec <<
" " << std::right << std::setw(10) << (*itEntry)->gtNrEventsAccept() <<
" "
760 << std::right << std::setw(10) << (*itEntry)->gtNrEventsReject() <<
" " << std::right
761 << std::setw(10) << (*itEntry)->gtNrEventsError() << std::setw(2) <<
" "
771 for (CItL1Menu itMenu = menuList.begin(); itMenu != menuList.end(); itMenu++) {
772 myCout <<
"\nReport for L1 menu: " << (*itMenu) <<
"\n" << std::endl;
774 myCout << std::right << std::setw(45) <<
"Algorithm Key"
775 <<
" " << std::right << std::setw(10) <<
"Passed"
776 <<
" " << std::right << std::setw(10) <<
"Rejected"
777 <<
" " << std::right << std::setw(10) <<
"Error"
781 if (((*itEntry)->gtDaqPartition() ==
m_physicsDaqPartition) && ((*itEntry)->gtTriggerMenuName() == *itMenu)) {
782 int nrEventsAccept = (*itEntry)->gtNrEventsAccept();
783 int nrEventsReject = (*itEntry)->gtNrEventsReject();
784 int nrEventsError = (*itEntry)->gtNrEventsError();
786 myCout << std::right << std::setw(45) << ((*itEntry)->gtAlgoName()) <<
" " << std::right << std::setw(10)
787 << nrEventsAccept <<
" " << std::right << std::setw(10) << nrEventsReject <<
" " << std::right
788 << std::setw(10) << nrEventsError <<
"\n";
795 << std::right << std::setw(45) <<
"Algorithm Key"
796 <<
" " << std::right << std::setw(10) <<
"Efficiency "
797 <<
" " << std::right << std::setw(10) <<
"Stat error (%)"
801 if (((*itEntry)->gtDaqPartition() == 0) && ((*itEntry)->gtTriggerMenuName() == *itMenu)) {
802 int nrEventsAccept = (*itEntry)->gtNrEventsAccept();
803 int nrEventsReject = (*itEntry)->gtNrEventsReject();
804 int nrEventsError = (*itEntry)->gtNrEventsError();
806 int totalEvents = nrEventsAccept + nrEventsReject + nrEventsError;
810 float statErrEff = 0.;
812 if (totalEvents != 0) {
813 eff = static_cast<float>(nrEventsAccept) / static_cast<float>(totalEvents);
814 statErrEff =
sqrt(eff * (1.0 - eff) / static_cast<float>(totalEvents));
817 myCout << std::right << std::setw(45) << ((*itEntry)->gtAlgoName()) <<
" " << std::right << std::setw(10)
818 <<
std::fixed << std::setprecision(2) << 100. * eff <<
" +- " << std::right << std::setw(10)
819 << std::setprecision(2) << 100. * statErrEff <<
"\n";
824 << std::right << std::setw(45) <<
"Technical Trigger Key"
825 <<
" " << std::right << std::setw(10) <<
"Passed"
826 <<
" " << std::right << std::setw(10) <<
"Rejected"
827 <<
" " << std::right << std::setw(10) <<
"Error"
831 if (((*itEntry)->gtDaqPartition() ==
m_physicsDaqPartition) && ((*itEntry)->gtTriggerMenuName() == *itMenu)) {
832 int nrEventsAccept = (*itEntry)->gtNrEventsAccept();
833 int nrEventsReject = (*itEntry)->gtNrEventsReject();
834 int nrEventsError = (*itEntry)->gtNrEventsError();
836 myCout << std::right << std::setw(45) << ((*itEntry)->gtAlgoName()) <<
" " << std::right << std::setw(10)
837 << nrEventsAccept <<
" " << std::right << std::setw(10) << nrEventsReject <<
" " << std::right
838 << std::setw(10) << nrEventsError <<
"\n";
845 << std::right << std::setw(45) <<
"Technical Trigger Key"
846 <<
" " << std::right << std::setw(10) <<
"Efficiency "
847 <<
" " << std::right << std::setw(10) <<
"Stat error (%)"
851 if (((*itEntry)->gtDaqPartition() == 0) && ((*itEntry)->gtTriggerMenuName() == *itMenu)) {
852 int nrEventsAccept = (*itEntry)->gtNrEventsAccept();
853 int nrEventsReject = (*itEntry)->gtNrEventsReject();
854 int nrEventsError = (*itEntry)->gtNrEventsError();
856 int totalEvents = nrEventsAccept + nrEventsReject + nrEventsError;
860 float statErrEff = 0.;
862 if (totalEvents != 0) {
863 eff = static_cast<float>(nrEventsAccept) / static_cast<float>(totalEvents);
864 statErrEff =
sqrt(eff * (1.0 - eff) / static_cast<float>(totalEvents));
867 myCout << std::right << std::setw(45) << ((*itEntry)->gtAlgoName()) <<
" " << std::right << std::setw(10)
868 <<
std::fixed << std::setprecision(2) << 100. * eff <<
" +- " << std::right << std::setw(10)
869 << std::setprecision(2) << 100. * statErrEff <<
"\n";
877 myCout <<
"\nL1T-Report "
878 <<
"---------- L1 Trigger Global Summary - DAQ Partition " <<
m_physicsDaqPartition <<
"----------\n\n";
880 for (CItL1Menu itMenu = menuList.begin(); itMenu != menuList.end(); itMenu++) {
881 myCout <<
"\nReport for L1 menu: " << (*itMenu) <<
"\n" << std::endl;
882 myCout << std::right << std::setw(45) <<
"Algorithm Key"
883 <<
" " << std::right << std::setw(10) <<
"Prescale"
884 <<
" " << std::right << std::setw(5) <<
"Mask"
885 <<
" " << std::right << std::setw(25) <<
"Before Mask"
886 <<
" " << std::right << std::setw(30) <<
"After Mask"
887 <<
" " << std::right << std::setw(22) <<
"Error"
889 << std::right << std::setw(64) <<
" " << std::setw(15) <<
"Passed" << std::right << std::setw(1) <<
" "
890 << std::setw(15) <<
"Rejected" << std::right << std::setw(1) <<
" " << std::setw(15) <<
"Passed"
891 << std::right << std::setw(1) <<
" " << std::setw(15) <<
"Rejected"
895 if (((*itEntry)->gtDaqPartition() ==
m_physicsDaqPartition) && ((*itEntry)->gtTriggerMenuName() == *itMenu)) {
896 myCout << std::right << std::setw(45) << (*itEntry)->gtAlgoName() <<
" " << std::right << std::setw(10)
897 << (*itEntry)->gtPrescaleFactor() <<
" " << std::right << std::setw(5) <<
" " << std::hex
898 << (*itEntry)->gtTriggerMask() <<
std::dec <<
" " << std::right << std::setw(15)
899 << (*itEntry)->gtNrEventsAcceptBeforeMask() <<
" " << std::right << std::setw(15)
900 << (*itEntry)->gtNrEventsRejectBeforeMask() <<
" " << std::right << std::setw(15)
901 << (*itEntry)->gtNrEventsAccept() <<
" " << std::right << std::setw(15)
902 << (*itEntry)->gtNrEventsReject() <<
" " << std::right << std::setw(15)
903 << (*itEntry)->gtNrEventsError() <<
"\n";
908 << std::right << std::setw(45) <<
"Technical Trigger Key"
909 <<
" " << std::right << std::setw(10) <<
"Prescale"
910 <<
" " << std::right << std::setw(5) <<
"Mask"
911 <<
" " << std::right << std::setw(25) <<
"Before Mask"
912 <<
" " << std::right << std::setw(30) <<
"After Mask"
913 <<
" " << std::right << std::setw(22) <<
"Error"
915 << std::right << std::setw(64) <<
" " << std::setw(15) <<
"Passed" << std::right << std::setw(1) <<
" "
916 << std::setw(15) <<
"Rejected" << std::right << std::setw(1) <<
" " << std::setw(15) <<
"Passed"
917 << std::right << std::setw(1) <<
" " << std::setw(15) <<
"Rejected"
921 if (((*itEntry)->gtDaqPartition() ==
m_physicsDaqPartition) && ((*itEntry)->gtTriggerMenuName() == *itMenu)) {
922 myCout << std::right << std::setw(45) << (*itEntry)->gtAlgoName() <<
" " << std::right << std::setw(10)
923 << (*itEntry)->gtPrescaleFactor() <<
" " << std::right << std::setw(5) <<
" " << std::hex
924 << (*itEntry)->gtTriggerMask() <<
std::dec <<
" " << std::right << std::setw(15)
925 << (*itEntry)->gtNrEventsAcceptBeforeMask() <<
" " << std::right << std::setw(15)
926 << (*itEntry)->gtNrEventsRejectBeforeMask() <<
" " << std::right << std::setw(15)
927 << (*itEntry)->gtNrEventsAccept() <<
" " << std::right << std::setw(15)
928 << (*itEntry)->gtNrEventsReject() <<
" " << std::right << std::setw(15)
929 << (*itEntry)->gtNrEventsError() <<
"\n";
938 myCout <<
"\nL1T-Report "
939 <<
"---------- L1 Trigger Global Summary - DAQ Partition " << iDaqPartition <<
" "
942 myCout << std::right << std::setw(45) <<
"Algorithm Key"
943 <<
" " << std::right << std::setw(10) <<
"Passed"
944 <<
" " << std::right << std::setw(10) <<
"Rejected"
945 <<
" " << std::right << std::setw(10) <<
"Error" << std::setw(2) <<
" "
949 if (((*itEntry)->gtDaqPartition() == 0)) {
950 myCout << std::right << std::setw(45) << (*itEntry)->gtAlgoName() <<
" " << std::right << std::setw(10)
951 << (*itEntry)->gtNrEventsAccept() <<
" " << std::right << std::setw(10)
952 << (*itEntry)->gtNrEventsReject() <<
" " << std::right << std::setw(10)
953 << (*itEntry)->gtNrEventsError() << std::setw(2) <<
" "
959 << std::right << std::setw(45) <<
"Technical Trigger Key"
960 <<
" " << std::right << std::setw(10) <<
"Passed"
961 <<
" " << std::right << std::setw(10) <<
"Rejected"
962 <<
" " << std::right << std::setw(10) <<
"Error" << std::setw(2) <<
" "
966 if ((*itEntry)->gtDaqPartition() == 0) {
967 myCout << std::right << std::setw(45) << (*itEntry)->gtAlgoName() <<
" " << std::right << std::setw(10)
968 << (*itEntry)->gtNrEventsAccept() <<
" " << std::right << std::setw(10)
969 << (*itEntry)->gtNrEventsReject() <<
" " << std::right << std::setw(10)
970 << (*itEntry)->gtNrEventsError() << std::setw(2) <<
" " << std::right << std::setw(20)
971 << (*itEntry)->gtTriggerMenuName() <<
"\n";
980 myCout <<
"\nL1T-Report "
981 <<
"---------- L1 Trigger Global Summary - DAQ Partition " << iDaqPartition <<
" "
984 myCout << std::right << std::setw(45) <<
"Algorithm Key"
985 <<
" " << std::right << std::setw(10) <<
"Prescale"
986 <<
" " << std::right << std::setw(5) <<
"Mask"
987 <<
" " << std::right << std::setw(10) <<
"Passed"
988 <<
" " << std::right << std::setw(10) <<
"Rejected"
989 <<
" " << std::right << std::setw(10) <<
"Error" << std::setw(2) <<
" "
993 if ((*itEntry)->gtDaqPartition() == 0) {
994 myCout << std::right << std::setw(45) << (*itEntry)->gtAlgoName() <<
" " << std::right << std::setw(10)
995 << (*itEntry)->gtPrescaleFactor() <<
" " << std::right << std::setw(2)
996 << std::hex << (*itEntry)->gtTriggerMask()
997 <<
std::dec <<
" " << std::right << std::setw(10) << (*itEntry)->gtNrEventsAccept() <<
" "
998 << std::right << std::setw(10) << (*itEntry)->gtNrEventsReject() <<
" " << std::right
999 << std::setw(10) << (*itEntry)->gtNrEventsError() << std::setw(2) <<
" "
1005 << std::right << std::setw(45) <<
"Technical Trigger Key"
1006 <<
" " << std::right << std::setw(10) <<
"Prescale"
1007 <<
" " << std::right << std::setw(5) <<
"Mask"
1008 <<
" " << std::right << std::setw(10) <<
"Passed"
1009 <<
" " << std::right << std::setw(10) <<
"Rejected"
1010 <<
" " << std::right << std::setw(10) <<
"Error" << std::setw(2) <<
" "
1014 if ((*itEntry)->gtDaqPartition() == 0) {
1015 myCout << std::right << std::setw(45) << (*itEntry)->gtAlgoName() <<
" " << std::right << std::setw(10)
1016 << (*itEntry)->gtPrescaleFactor() <<
" " << std::right << std::setw(2)
1017 << std::hex << (*itEntry)->gtTriggerMask()
1018 <<
std::dec <<
" " << std::right << std::setw(10) << (*itEntry)->gtNrEventsAccept() <<
" "
1019 << std::right << std::setw(10) << (*itEntry)->gtNrEventsReject() <<
" " << std::right
1020 << std::setw(10) << (*itEntry)->gtNrEventsError() << std::setw(2) <<
" "
1029 myCout <<
"\n\nL1GtTrigReport: Error - no print verbosity level = " <<
m_printVerbosity
1030 <<
" defined! \nCheck available values in the cfi file."
1040 myCout << std::endl;
1041 myCout <<
"L1T-Report end!" << std::endl;
1042 myCout << std::endl;
1052 LogTrace(
"L1GtTrigReport") << myCout.str() << std::endl;
1070 <<
" defined! \n Check available values in the cfi file."