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
116 m_printVerbosity(pSet.getUntrackedParameter<
int>(
"PrintVerbosity", 2)),
119 m_printOutput(pSet.getUntrackedParameter<
int>(
"PrintOutput", 3)),
128 m_entryListTechTrig(),
131 m_physicsDaqPartition(0)
135 <<
"\n (if false: L1GtTrigReport uses L1GlobalTriggerReadoutRecord.)"
145 if (*itEntry !=
nullptr) {
154 if (*itEntry !=
nullptr) {
285 LogDebug(
"L1GtTrigReport") <<
"\n Changing L1 menu to : \n"
308 bool validRecord =
false;
310 unsigned int pfIndexAlgo = 0;
311 unsigned int pfIndexTech = 0;
322 bool gtDecision = gtRecord->
decision();
344 <<
"\n Event classified as Error\n\n"
349 if (gtReadoutRecord.
isValid()) {
351 const std::vector<L1GtFdlWord>& fdlVec = gtReadoutRecord->
gtFdlVector();
352 size_t fdlVecSize = fdlVec.size();
354 if (fdlVecSize > 0) {
356 <<
" has gtFdlVector of size " << fdlVecSize << std::endl;
359 uint16_t gtFinalOR = gtReadoutRecord->
finalOR();
361 gtDecisionWordBeforeMask = gtReadoutRecord->
decisionWord();
365 bool gtDecision = static_cast<bool>(gtFinalOR & (1 << iDaqPartition));
371 pfIndexAlgo = static_cast<unsigned int>((gtReadoutRecord->
gtFdlWord()).gtPrescaleFactorIndexAlgo());
372 pfIndexTech = static_cast<unsigned int>((gtReadoutRecord->
gtFdlWord()).gtPrescaleFactorIndexTech());
383 <<
" has gtFdlVector of size " << fdlVecSize <<
"\n Invalid L1GlobalTriggerReadoutRecord!"
384 <<
"\n Event classified as Error\n\n"
395 edm::LogWarning(
"L1GtTrigReport") <<
"\n L1GlobalTriggerReadoutRecord with input tag "
397 <<
"\n Event classified as Error\n\n"
403 const std::vector<int>& prescaleFactorsAlgoTrig = (*m_prescaleFactorsAlgoTrig).at(pfIndexAlgo);
405 const std::vector<int>& prescaleFactorsTechTrig = (*m_prescaleFactorsTechTrig).at(pfIndexTech);
409 for (
CItAlgo itAlgo = algorithmMap.begin(); itAlgo != algorithmMap.end(); itAlgo++) {
411 int algBitNumber = (itAlgo->second).algoBitNumber();
415 bool algResultBeforeMask = gtDecisionWordBeforeMask[algBitNumber];
422 bool algResultAfterMask =
false;
428 algResultAfterMask = gtDecisionWordAfterMask[algBitNumber];
431 algResultAfterMask = algResultBeforeMask;
434 algResultAfterMask =
false;
439 algResultAfterMask = algResultBeforeMask;
442 algResultAfterMask =
false;
452 if ((*entryRep) == *(*itEntry)) {
455 (*itEntry)->addValidEntry(algResultAfterMask, algResultBeforeMask);
462 entryRep->
addValidEntry(algResultAfterMask, algResultBeforeMask);
471 for (
CItAlgo itAlgo = technicalTriggerMap.begin(); itAlgo != technicalTriggerMap.end(); itAlgo++) {
475 int ttBitNumber = (itAlgo->second).algoBitNumber();
481 bool ttResultBeforeMask = technicalTriggerWordBeforeMask[ttBitNumber];
488 bool ttResultAfterMask =
false;
494 ttResultAfterMask = technicalTriggerWordAfterMask[ttBitNumber];
497 ttResultAfterMask = ttResultBeforeMask;
500 ttResultAfterMask =
false;
505 ttResultAfterMask = ttResultBeforeMask;
508 ttResultAfterMask =
false;
518 if ((*entryRep) == *(*itEntry)) {
521 (*itEntry)->addValidEntry(ttResultAfterMask, ttResultBeforeMask);
528 entryRep->
addValidEntry(ttResultAfterMask, ttResultBeforeMask);
538 for (
CItAlgo itAlgo = algorithmMap.begin(); itAlgo != algorithmMap.end(); itAlgo++) {
540 int algBitNumber = (itAlgo->second).algoBitNumber();
553 if ((*entryRep) == *(*itEntry)) {
556 (*itEntry)->addErrorEntry();
578 int ttBitNumber = iTechTrig;
591 if ((*entryRep) == *(*itEntry)) {
594 (*itEntry)->addErrorEntry();
615 std::ostringstream myCout;
618 myCout <<
"L1T-Report "
619 <<
"---------- Event Summary ----------\n";
620 myCout <<
"L1T-Report "
621 <<
"Total number of events processed: " <<
m_totalEvents <<
"\n";
622 myCout <<
"L1T-Report\n";
627 <<
" Passed[finalOR] "
639 myCout << std::right << std::setw(16) << iDaqPartition <<
" " << std::right << std::setw(16) <<
m_totalEvents
640 <<
" " << std::right << std::setw(16) <<
m_globalNrAccepts[iDaqPartition] <<
" " << std::right
641 << std::setw(16) << rejectedEvents <<
" " << std::right << std::setw(16) <<
m_globalNrErrors[iDaqPartition]
648 std::set<std::string> menuList;
649 typedef std::set<std::string>::const_iterator CItL1Menu;
652 menuList.insert((*itEntry)->gtTriggerMenuName());
655 myCout <<
"\nThe following L1 menus were used for this sample: " << std::endl;
656 for (CItL1Menu itMenu = menuList.begin(); itMenu != menuList.end(); itMenu++) {
657 myCout <<
" " << (*itMenu) << std::endl;
659 myCout <<
"\n" << std::endl;
663 myCout <<
"\nL1T-Report "
664 <<
"---------- L1 Trigger Global Summary - DAQ Partition " <<
m_physicsDaqPartition <<
"----------\n\n";
666 myCout <<
"\n\n Number of events written after applying L1 prescale factors"
667 <<
" and trigger masks\n"
668 <<
" if not explicitly mentioned.\n\n";
670 for (CItL1Menu itMenu = menuList.begin(); itMenu != menuList.end(); itMenu++) {
671 myCout <<
"\nReport for L1 menu: " << (*itMenu) <<
"\n" << std::endl;
673 myCout << std::right << std::setw(45) <<
"Algorithm Key"
674 <<
" " << std::right << std::setw(10) <<
"Passed"
675 <<
" " << std::right << std::setw(10) <<
"Rejected"
676 <<
" " << std::right << std::setw(10) <<
"Error"
680 if (((*itEntry)->gtDaqPartition() ==
m_physicsDaqPartition) && ((*itEntry)->gtTriggerMenuName() == *itMenu)) {
681 myCout << std::right << std::setw(45) << (*itEntry)->gtAlgoName() <<
" " << std::right << std::setw(10)
682 << (*itEntry)->gtNrEventsAccept() <<
" " << std::right << std::setw(10)
683 << (*itEntry)->gtNrEventsReject() <<
" " << std::right << std::setw(10)
684 << (*itEntry)->gtNrEventsError() <<
"\n";
689 << std::right << std::setw(45) <<
"Technical Trigger Key"
690 <<
" " << std::right << std::setw(10) <<
"Passed"
691 <<
" " << std::right << std::setw(10) <<
"Rejected"
692 <<
" " << std::right << std::setw(10) <<
"Error"
696 if (((*itEntry)->gtDaqPartition() ==
m_physicsDaqPartition) && ((*itEntry)->gtTriggerMenuName() == *itMenu)) {
697 myCout << std::right << std::setw(45) << (*itEntry)->gtAlgoName() <<
" " << std::right << std::setw(10)
698 << (*itEntry)->gtNrEventsAccept() <<
" " << std::right << std::setw(10)
699 << (*itEntry)->gtNrEventsReject() <<
" " << std::right << std::setw(10)
700 << (*itEntry)->gtNrEventsError() <<
"\n";
709 myCout <<
"\nL1T-Report "
710 <<
"---------- L1 Trigger Global Summary - DAQ Partition " <<
m_physicsDaqPartition <<
"----------\n\n";
712 myCout <<
"\n\n Number of events written after applying L1 prescale factors"
713 <<
" and trigger masks\n"
714 <<
" if not explicitly mentioned.\n\n";
716 for (CItL1Menu itMenu = menuList.begin(); itMenu != menuList.end(); itMenu++) {
717 myCout <<
"\nReport for L1 menu: " << (*itMenu) <<
"\n" << std::endl;
718 myCout << std::right << std::setw(45) <<
"Algorithm Key"
719 <<
" " << std::right << std::setw(10) <<
"Prescale"
720 <<
" " << std::right << std::setw(5) <<
"Mask"
721 <<
" " << std::right << std::setw(10) <<
"Passed"
722 <<
" " << std::right << std::setw(10) <<
"Rejected"
723 <<
" " << std::right << std::setw(10) <<
"Error" << std::setw(2) <<
" "
727 if (((*itEntry)->gtDaqPartition() ==
m_physicsDaqPartition) && ((*itEntry)->gtTriggerMenuName() == *itMenu)) {
728 myCout << std::right << std::setw(45) << (*itEntry)->gtAlgoName() <<
" " << std::right << std::setw(10)
729 << (*itEntry)->gtPrescaleFactor() <<
" " << std::right << std::setw(2)
730 << std::hex << (*itEntry)->gtTriggerMask()
731 <<
std::dec <<
" " << std::right << std::setw(10) << (*itEntry)->gtNrEventsAccept() <<
" "
732 << std::right << std::setw(10) << (*itEntry)->gtNrEventsReject() <<
" " << std::right
733 << std::setw(10) << (*itEntry)->gtNrEventsError() << std::setw(2) <<
" "
739 << std::right << std::setw(45) <<
"Technical Trigger Key"
740 <<
" " << std::right << std::setw(10) <<
"Prescale"
741 <<
" " << std::right << std::setw(5) <<
"Mask"
742 <<
" " << std::right << std::setw(10) <<
"Passed"
743 <<
" " << std::right << std::setw(10) <<
"Rejected"
744 <<
" " << std::right << std::setw(10) <<
"Error" << std::setw(2) <<
" "
748 if (((*itEntry)->gtDaqPartition() ==
m_physicsDaqPartition) && ((*itEntry)->gtTriggerMenuName() == *itMenu)) {
749 myCout << std::right << std::setw(45) << (*itEntry)->gtAlgoName() <<
" " << std::right << std::setw(10)
750 << (*itEntry)->gtPrescaleFactor() <<
" " << std::right << std::setw(2)
751 << std::hex << (*itEntry)->gtTriggerMask()
752 <<
std::dec <<
" " << std::right << std::setw(10) << (*itEntry)->gtNrEventsAccept() <<
" "
753 << std::right << std::setw(10) << (*itEntry)->gtNrEventsReject() <<
" " << std::right
754 << std::setw(10) << (*itEntry)->gtNrEventsError() << std::setw(2) <<
" "
764 for (CItL1Menu itMenu = menuList.begin(); itMenu != menuList.end(); itMenu++) {
765 myCout <<
"\nReport for L1 menu: " << (*itMenu) <<
"\n" << std::endl;
767 myCout << std::right << std::setw(45) <<
"Algorithm Key"
768 <<
" " << std::right << std::setw(10) <<
"Passed"
769 <<
" " << std::right << std::setw(10) <<
"Rejected"
770 <<
" " << std::right << std::setw(10) <<
"Error"
774 if (((*itEntry)->gtDaqPartition() ==
m_physicsDaqPartition) && ((*itEntry)->gtTriggerMenuName() == *itMenu)) {
775 int nrEventsAccept = (*itEntry)->gtNrEventsAccept();
776 int nrEventsReject = (*itEntry)->gtNrEventsReject();
777 int nrEventsError = (*itEntry)->gtNrEventsError();
779 myCout << std::right << std::setw(45) << ((*itEntry)->gtAlgoName()) <<
" " << std::right << std::setw(10)
780 << nrEventsAccept <<
" " << std::right << std::setw(10) << nrEventsReject <<
" " << std::right
781 << std::setw(10) << nrEventsError <<
"\n";
788 << std::right << std::setw(45) <<
"Algorithm Key"
789 <<
" " << std::right << std::setw(10) <<
"Efficiency "
790 <<
" " << std::right << std::setw(10) <<
"Stat error (%)"
794 if (((*itEntry)->gtDaqPartition() == 0) && ((*itEntry)->gtTriggerMenuName() == *itMenu)) {
795 int nrEventsAccept = (*itEntry)->gtNrEventsAccept();
796 int nrEventsReject = (*itEntry)->gtNrEventsReject();
797 int nrEventsError = (*itEntry)->gtNrEventsError();
799 int totalEvents = nrEventsAccept + nrEventsReject + nrEventsError;
803 float statErrEff = 0.;
805 if (totalEvents != 0) {
806 eff = static_cast<float>(nrEventsAccept) / static_cast<float>(totalEvents);
807 statErrEff =
sqrt(eff * (1.0 - eff) / static_cast<float>(totalEvents));
810 myCout << std::right << std::setw(45) << ((*itEntry)->gtAlgoName()) <<
" " << std::right << std::setw(10)
811 <<
std::fixed << std::setprecision(2) << 100. * eff <<
" +- " << std::right << std::setw(10)
812 << std::setprecision(2) << 100. * statErrEff <<
"\n";
817 << std::right << std::setw(45) <<
"Technical Trigger Key"
818 <<
" " << std::right << std::setw(10) <<
"Passed"
819 <<
" " << std::right << std::setw(10) <<
"Rejected"
820 <<
" " << std::right << std::setw(10) <<
"Error"
824 if (((*itEntry)->gtDaqPartition() ==
m_physicsDaqPartition) && ((*itEntry)->gtTriggerMenuName() == *itMenu)) {
825 int nrEventsAccept = (*itEntry)->gtNrEventsAccept();
826 int nrEventsReject = (*itEntry)->gtNrEventsReject();
827 int nrEventsError = (*itEntry)->gtNrEventsError();
829 myCout << std::right << std::setw(45) << ((*itEntry)->gtAlgoName()) <<
" " << std::right << std::setw(10)
830 << nrEventsAccept <<
" " << std::right << std::setw(10) << nrEventsReject <<
" " << std::right
831 << std::setw(10) << nrEventsError <<
"\n";
838 << std::right << std::setw(45) <<
"Technical Trigger Key"
839 <<
" " << std::right << std::setw(10) <<
"Efficiency "
840 <<
" " << std::right << std::setw(10) <<
"Stat error (%)"
844 if (((*itEntry)->gtDaqPartition() == 0) && ((*itEntry)->gtTriggerMenuName() == *itMenu)) {
845 int nrEventsAccept = (*itEntry)->gtNrEventsAccept();
846 int nrEventsReject = (*itEntry)->gtNrEventsReject();
847 int nrEventsError = (*itEntry)->gtNrEventsError();
849 int totalEvents = nrEventsAccept + nrEventsReject + nrEventsError;
853 float statErrEff = 0.;
855 if (totalEvents != 0) {
856 eff = static_cast<float>(nrEventsAccept) / static_cast<float>(totalEvents);
857 statErrEff =
sqrt(eff * (1.0 - eff) / static_cast<float>(totalEvents));
860 myCout << std::right << std::setw(45) << ((*itEntry)->gtAlgoName()) <<
" " << std::right << std::setw(10)
861 <<
std::fixed << std::setprecision(2) << 100. * eff <<
" +- " << std::right << std::setw(10)
862 << std::setprecision(2) << 100. * statErrEff <<
"\n";
870 myCout <<
"\nL1T-Report "
871 <<
"---------- L1 Trigger Global Summary - DAQ Partition " <<
m_physicsDaqPartition <<
"----------\n\n";
873 for (CItL1Menu itMenu = menuList.begin(); itMenu != menuList.end(); itMenu++) {
874 myCout <<
"\nReport for L1 menu: " << (*itMenu) <<
"\n" << std::endl;
875 myCout << std::right << std::setw(45) <<
"Algorithm Key"
876 <<
" " << std::right << std::setw(10) <<
"Prescale"
877 <<
" " << std::right << std::setw(5) <<
"Mask"
878 <<
" " << std::right << std::setw(25) <<
"Before Mask"
879 <<
" " << std::right << std::setw(30) <<
"After Mask"
880 <<
" " << std::right << std::setw(22) <<
"Error"
882 << std::right << std::setw(64) <<
" " << std::setw(15) <<
"Passed" << std::right << std::setw(1) <<
" "
883 << std::setw(15) <<
"Rejected" << std::right << std::setw(1) <<
" " << std::setw(15) <<
"Passed"
884 << std::right << std::setw(1) <<
" " << std::setw(15) <<
"Rejected"
888 if (((*itEntry)->gtDaqPartition() ==
m_physicsDaqPartition) && ((*itEntry)->gtTriggerMenuName() == *itMenu)) {
889 myCout << std::right << std::setw(45) << (*itEntry)->gtAlgoName() <<
" " << std::right << std::setw(10)
890 << (*itEntry)->gtPrescaleFactor() <<
" " << std::right << std::setw(5) <<
" " << std::hex
891 << (*itEntry)->gtTriggerMask() <<
std::dec <<
" " << std::right << std::setw(15)
892 << (*itEntry)->gtNrEventsAcceptBeforeMask() <<
" " << std::right << std::setw(15)
893 << (*itEntry)->gtNrEventsRejectBeforeMask() <<
" " << std::right << std::setw(15)
894 << (*itEntry)->gtNrEventsAccept() <<
" " << std::right << std::setw(15)
895 << (*itEntry)->gtNrEventsReject() <<
" " << std::right << std::setw(15)
896 << (*itEntry)->gtNrEventsError() <<
"\n";
901 << std::right << std::setw(45) <<
"Technical Trigger Key"
902 <<
" " << std::right << std::setw(10) <<
"Prescale"
903 <<
" " << std::right << std::setw(5) <<
"Mask"
904 <<
" " << std::right << std::setw(25) <<
"Before Mask"
905 <<
" " << std::right << std::setw(30) <<
"After Mask"
906 <<
" " << std::right << std::setw(22) <<
"Error"
908 << std::right << std::setw(64) <<
" " << std::setw(15) <<
"Passed" << std::right << std::setw(1) <<
" "
909 << std::setw(15) <<
"Rejected" << std::right << std::setw(1) <<
" " << std::setw(15) <<
"Passed"
910 << std::right << std::setw(1) <<
" " << std::setw(15) <<
"Rejected"
914 if (((*itEntry)->gtDaqPartition() ==
m_physicsDaqPartition) && ((*itEntry)->gtTriggerMenuName() == *itMenu)) {
915 myCout << std::right << std::setw(45) << (*itEntry)->gtAlgoName() <<
" " << std::right << std::setw(10)
916 << (*itEntry)->gtPrescaleFactor() <<
" " << std::right << std::setw(5) <<
" " << std::hex
917 << (*itEntry)->gtTriggerMask() <<
std::dec <<
" " << std::right << std::setw(15)
918 << (*itEntry)->gtNrEventsAcceptBeforeMask() <<
" " << std::right << std::setw(15)
919 << (*itEntry)->gtNrEventsRejectBeforeMask() <<
" " << std::right << std::setw(15)
920 << (*itEntry)->gtNrEventsAccept() <<
" " << std::right << std::setw(15)
921 << (*itEntry)->gtNrEventsReject() <<
" " << std::right << std::setw(15)
922 << (*itEntry)->gtNrEventsError() <<
"\n";
931 myCout <<
"\nL1T-Report "
932 <<
"---------- L1 Trigger Global Summary - DAQ Partition " << iDaqPartition <<
" "
935 myCout << std::right << std::setw(45) <<
"Algorithm Key"
936 <<
" " << std::right << std::setw(10) <<
"Passed"
937 <<
" " << std::right << std::setw(10) <<
"Rejected"
938 <<
" " << std::right << std::setw(10) <<
"Error" << std::setw(2) <<
" "
942 if (((*itEntry)->gtDaqPartition() == 0)) {
943 myCout << std::right << std::setw(45) << (*itEntry)->gtAlgoName() <<
" " << std::right << std::setw(10)
944 << (*itEntry)->gtNrEventsAccept() <<
" " << std::right << std::setw(10)
945 << (*itEntry)->gtNrEventsReject() <<
" " << std::right << std::setw(10)
946 << (*itEntry)->gtNrEventsError() << std::setw(2) <<
" "
952 << std::right << std::setw(45) <<
"Technical Trigger Key"
953 <<
" " << std::right << std::setw(10) <<
"Passed"
954 <<
" " << std::right << std::setw(10) <<
"Rejected"
955 <<
" " << std::right << std::setw(10) <<
"Error" << std::setw(2) <<
" "
959 if ((*itEntry)->gtDaqPartition() == 0) {
960 myCout << std::right << std::setw(45) << (*itEntry)->gtAlgoName() <<
" " << std::right << std::setw(10)
961 << (*itEntry)->gtNrEventsAccept() <<
" " << std::right << std::setw(10)
962 << (*itEntry)->gtNrEventsReject() <<
" " << std::right << std::setw(10)
963 << (*itEntry)->gtNrEventsError() << std::setw(2) <<
" " << std::right << std::setw(20)
964 << (*itEntry)->gtTriggerMenuName() <<
"\n";
973 myCout <<
"\nL1T-Report "
974 <<
"---------- L1 Trigger Global Summary - DAQ Partition " << iDaqPartition <<
" "
977 myCout << std::right << std::setw(45) <<
"Algorithm Key"
978 <<
" " << std::right << std::setw(10) <<
"Prescale"
979 <<
" " << std::right << std::setw(5) <<
"Mask"
980 <<
" " << std::right << std::setw(10) <<
"Passed"
981 <<
" " << std::right << std::setw(10) <<
"Rejected"
982 <<
" " << std::right << std::setw(10) <<
"Error" << std::setw(2) <<
" "
986 if ((*itEntry)->gtDaqPartition() == 0) {
987 myCout << std::right << std::setw(45) << (*itEntry)->gtAlgoName() <<
" " << std::right << std::setw(10)
988 << (*itEntry)->gtPrescaleFactor() <<
" " << std::right << std::setw(2)
989 << std::hex << (*itEntry)->gtTriggerMask()
990 <<
std::dec <<
" " << std::right << std::setw(10) << (*itEntry)->gtNrEventsAccept() <<
" "
991 << std::right << std::setw(10) << (*itEntry)->gtNrEventsReject() <<
" " << std::right
992 << std::setw(10) << (*itEntry)->gtNrEventsError() << std::setw(2) <<
" "
998 << std::right << std::setw(45) <<
"Technical Trigger Key"
999 <<
" " << std::right << std::setw(10) <<
"Prescale"
1000 <<
" " << std::right << std::setw(5) <<
"Mask"
1001 <<
" " << std::right << std::setw(10) <<
"Passed"
1002 <<
" " << std::right << std::setw(10) <<
"Rejected"
1003 <<
" " << std::right << std::setw(10) <<
"Error" << std::setw(2) <<
" "
1007 if ((*itEntry)->gtDaqPartition() == 0) {
1008 myCout << std::right << std::setw(45) << (*itEntry)->gtAlgoName() <<
" " << std::right << std::setw(10)
1009 << (*itEntry)->gtPrescaleFactor() <<
" " << std::right << std::setw(2)
1010 << std::hex << (*itEntry)->gtTriggerMask()
1011 <<
std::dec <<
" " << std::right << std::setw(10) << (*itEntry)->gtNrEventsAccept() <<
" "
1012 << std::right << std::setw(10) << (*itEntry)->gtNrEventsReject() <<
" " << std::right
1013 << std::setw(10) << (*itEntry)->gtNrEventsError() << std::setw(2) <<
" "
1022 myCout <<
"\n\nL1GtTrigReport: Error - no print verbosity level = " <<
m_printVerbosity
1023 <<
" defined! \nCheck available values in the cfi file."
1033 myCout << std::endl;
1034 myCout <<
"L1T-Report end!" << std::endl;
1035 myCout << std::endl;
1045 LogTrace(
"L1GtTrigReport") << myCout.str() << std::endl;
1063 <<
" defined! \n Check available values in the cfi file."