|
| L1TSync (const edm::ParameterSet &ps) |
|
| ~L1TSync () override |
|
void | accumulate (edm::Event const &event, edm::EventSetup const &setup) override |
|
void | beginRun (edm::Run const &run, edm::EventSetup const &setup) final |
|
| DQMOneEDAnalyzer () |
|
void | endRun (edm::Run const &, edm::EventSetup const &) final |
|
void | endRunProduce (edm::Run &run, edm::EventSetup const &setup) final |
|
virtual bool | getCanSaveByLumi () |
|
| EDProducer ()=default |
|
SerialTaskQueue * | globalLuminosityBlocksQueue () final |
|
SerialTaskQueue * | globalRunsQueue () final |
|
bool | hasAbilityToProduceInBeginLumis () const final |
|
bool | hasAbilityToProduceInBeginProcessBlocks () const final |
|
bool | hasAbilityToProduceInBeginRuns () const final |
|
bool | hasAbilityToProduceInEndLumis () const final |
|
bool | hasAbilityToProduceInEndProcessBlocks () const final |
|
bool | hasAbilityToProduceInEndRuns () const final |
|
bool | wantsGlobalLuminosityBlocks () const final |
|
bool | wantsGlobalRuns () const final |
|
bool | wantsInputProcessBlocks () const final |
|
bool | wantsProcessBlocks () const final |
|
| EDProducerBase () |
|
ModuleDescription const & | moduleDescription () const |
|
bool | wantsStreamLuminosityBlocks () const |
|
bool | wantsStreamRuns () const |
|
| ~EDProducerBase () override |
|
void | callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func) |
|
std::vector< edm::ProductResolverIndex > const & | indiciesForPutProducts (BranchType iBranchType) const |
|
| ProducerBase () |
|
std::vector< edm::ProductResolverIndex > const & | putTokenIndexToProductResolverIndex () const |
|
std::vector< bool > const & | recordProvenanceList () const |
|
void | registerProducts (ProducerBase *, ProductRegistry *, ModuleDescription const &) |
|
std::function< void(BranchDescription const &)> | registrationCallback () const |
| used by the fwk to register list of products More...
|
|
void | resolvePutIndicies (BranchType iBranchType, ModuleToResolverIndicies const &iIndicies, std::string const &moduleLabel) |
|
TypeLabelList const & | typeLabelList () const |
| used by the fwk to register the list of products of this module More...
|
|
| ~ProducerBase () noexcept(false) override |
|
std::vector< ConsumesInfo > | consumesInfo () const |
|
void | convertCurrentProcessAlias (std::string const &processName) |
| Convert "@currentProcess" in InputTag process names to the actual current process name. More...
|
|
| EDConsumerBase () |
|
| EDConsumerBase (EDConsumerBase &&)=default |
|
| EDConsumerBase (EDConsumerBase const &)=delete |
|
ESProxyIndex const * | esGetTokenIndices (edm::Transition iTrans) const |
|
std::vector< ESProxyIndex > const & | esGetTokenIndicesVector (edm::Transition iTrans) const |
|
std::vector< ESRecordIndex > const & | esGetTokenRecordIndicesVector (edm::Transition iTrans) const |
|
ProductResolverIndexAndSkipBit | indexFrom (EDGetToken, BranchType, TypeID const &) const |
|
void | itemsMayGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const |
|
void | itemsToGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const |
|
std::vector< ProductResolverIndexAndSkipBit > const & | itemsToGetFrom (BranchType iType) const |
|
void | labelsForToken (EDGetToken iToken, Labels &oLabels) const |
|
void | modulesWhoseProductsAreConsumed (std::array< std::vector< ModuleDescription const * > *, NumBranchTypes > &modulesAll, std::vector< ModuleProcessName > &modulesInPreviousProcesses, ProductRegistry const &preg, std::map< std::string, ModuleDescription const * > const &labelsToDesc, std::string const &processName) const |
|
EDConsumerBase & | operator= (EDConsumerBase &&)=default |
|
EDConsumerBase const & | operator= (EDConsumerBase const &)=delete |
|
bool | registeredToConsume (ProductResolverIndex, bool, BranchType) const |
|
bool | registeredToConsumeMany (TypeID const &, BranchType) const |
|
ProductResolverIndexAndSkipBit | uncheckedIndexFrom (EDGetToken) const |
|
void | updateLookup (BranchType iBranchType, ProductResolverIndexHelper const &, bool iPrefetchMayGet) |
|
void | updateLookup (eventsetup::ESRecordsToProxyIndices const &) |
|
virtual | ~EDConsumerBase () noexcept(false) |
|
|
void | analyze (const edm::Event &e, const edm::EventSetup &c) override |
|
void | beginLuminosityBlock (edm::LuminosityBlock const &lumiBlock, edm::EventSetup const &c) override |
|
void | bookHistograms (DQMStore::IBooker &ibooker, const edm::Run &, const edm::EventSetup &) override |
|
void | dqmBeginRun (edm::Run const &, edm::EventSetup const &) override |
| BeginRun. More...
|
|
void | endLuminosityBlock (edm::LuminosityBlock const &lumiBlock, edm::EventSetup const &c) override |
|
virtual void | dqmEndRun (edm::Run const &, edm::EventSetup const &) |
|
template<class ProductType > |
BranchAliasSetterT< ProductType > | produces () |
| declare what type of product will make and with which optional label More...
|
|
template<typename ProductType , BranchType B> |
BranchAliasSetterT< ProductType > | produces () |
|
template<typename ProductType , Transition B> |
BranchAliasSetterT< ProductType > | produces () |
|
BranchAliasSetter | produces (const TypeID &id, std::string instanceName=std::string(), bool recordProvenance=true) |
|
template<BranchType B> |
BranchAliasSetter | produces (const TypeID &id, std::string instanceName=std::string(), bool recordProvenance=true) |
|
template<Transition B> |
BranchAliasSetter | produces (const TypeID &id, std::string instanceName=std::string(), bool recordProvenance=true) |
|
template<typename ProductType , Transition B> |
BranchAliasSetterT< ProductType > | produces (std::string instanceName) |
|
template<class ProductType > |
BranchAliasSetterT< ProductType > | produces (std::string instanceName) |
|
template<typename ProductType , BranchType B> |
BranchAliasSetterT< ProductType > | produces (std::string instanceName) |
|
ProducesCollector | producesCollector () |
|
EDGetToken | consumes (const TypeToGet &id, edm::InputTag const &tag) |
|
template<typename ProductType , BranchType B = InEvent> |
EDGetTokenT< ProductType > | consumes (edm::InputTag const &tag) |
|
template<BranchType B = InEvent> |
EDConsumerBaseAdaptor< B > | consumes (edm::InputTag tag) noexcept |
|
template<BranchType B> |
EDGetToken | consumes (TypeToGet const &id, edm::InputTag const &tag) |
|
ConsumesCollector | consumesCollector () |
| Use a ConsumesCollector to gather consumes information from helper functions. More...
|
|
template<typename ProductType , BranchType B = InEvent> |
void | consumesMany () |
|
void | consumesMany (const TypeToGet &id) |
|
template<BranchType B> |
void | consumesMany (const TypeToGet &id) |
|
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event> |
auto | esConsumes () |
|
template<Transition Tr = Transition::Event> |
constexpr auto | esConsumes () noexcept |
|
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event> |
auto | esConsumes (ESInputTag const &tag) |
|
template<Transition Tr = Transition::Event> |
auto | esConsumes (ESInputTag tag) noexcept |
|
template<Transition Tr = Transition::Event> |
ESGetTokenGeneric | esConsumes (eventsetup::EventSetupRecordKey const &iRecord, eventsetup::DataKey const &iKey) |
| Used with EventSetupRecord::doGet. More...
|
|
EDGetToken | mayConsume (const TypeToGet &id, edm::InputTag const &tag) |
|
template<BranchType B> |
EDGetToken | mayConsume (const TypeToGet &id, edm::InputTag const &tag) |
|
template<typename ProductType , BranchType B = InEvent> |
EDGetTokenT< ProductType > | mayConsume (edm::InputTag const &tag) |
|
Definition at line 44 of file L1TSync.h.
Definition at line 37 of file L1TSync.cc.
38 :
m_menuToken(esConsumes<edm::Transition::BeginRun>()),
46 m_verbose =
pset.getUntrackedParameter<
bool>(
"verbose",
false);
74 if (CatMu.getParameter<
bool>(
"monitor")) {
79 if (CatEG.getParameter<
bool>(
"monitor")) {
84 if (CatIsoEG.getParameter<
bool>(
"monitor")) {
89 if (CatJet.getParameter<
bool>(
"monitor")) {
94 if (CatCenJet.getParameter<
bool>(
"monitor")) {
99 if (CatForJet.getParameter<
bool>(
"monitor")) {
104 if (CatTauJet.getParameter<
bool>(
"monitor")) {
109 if (CatETM.getParameter<
bool>(
"monitor")) {
114 if (CatETT.getParameter<
bool>(
"monitor")) {
119 if (CatHTM.getParameter<
bool>(
"monitor")) {
124 if (CatHTT.getParameter<
bool>(
"monitor")) {
145 if (CatMu.getParameter<
bool>(
"monitor")) {
148 if (CatEG.getParameter<
bool>(
"monitor")) {
151 if (CatIsoEG.getParameter<
bool>(
"monitor")) {
154 if (CatJet.getParameter<
bool>(
"monitor")) {
157 if (CatCenJet.getParameter<
bool>(
"monitor")) {
160 if (CatForJet.getParameter<
bool>(
"monitor")) {
163 if (CatTauJet.getParameter<
bool>(
"monitor")) {
166 if (CatETM.getParameter<
bool>(
"monitor")) {
169 if (CatETT.getParameter<
bool>(
"monitor")) {
172 if (CatHTM.getParameter<
bool>(
"monitor")) {
175 if (CatHTT.getParameter<
bool>(
"monitor")) {
182 if (CatBPTX.getParameter<
bool>(
"monitor")) {
186 if (CatMu.getParameter<
bool>(
"monitor")) {
195 if (CatEG.getParameter<
bool>(
"monitor")) {
204 if (CatIsoEG.getParameter<
bool>(
"monitor")) {
213 if (CatJet.getParameter<
bool>(
"monitor")) {
222 if (CatCenJet.getParameter<
bool>(
"monitor")) {
223 m_algoAutoSelect[
"CenJet"] = CatCenJet.getParameter<
bool>(
"doAutoSelection");
231 if (CatForJet.getParameter<
bool>(
"monitor")) {
232 m_algoAutoSelect[
"CatForJet"] = CatForJet.getParameter<
bool>(
"doAutoSelection");
240 if (CatTauJet.getParameter<
bool>(
"monitor")) {
241 m_algoAutoSelect[
"TauJet"] = CatTauJet.getParameter<
bool>(
"doAutoSelection");
249 if (CatETM.getParameter<
bool>(
"monitor")) {
258 if (CatETT.getParameter<
bool>(
"monitor")) {
267 if (CatHTM.getParameter<
bool>(
"monitor")) {
276 if (CatHTT.getParameter<
bool>(
"monitor")) {
292 bool disable =
pset.getUntrackedParameter<
bool>(
"disableROOToutput",
false);
References L1TSync_cfi::Categories, gather_cfg::cout, L1TSync_cfi::doGlobalAutoSelection, L1TSync_cfi::forceGlobalParameters, m_algoAutoSelect, m_l1GtDataDaqInputTag, m_l1GtEvmSource, m_outputFile, m_parameters, m_refPrescaleSet, m_selectedTriggers, m_verbose, muonDTDigis_cfi::pset, and AlCaHLTBitMon_QueryRunRegistry::string.
Reimplemented from DQMOneEDAnalyzer< edm::one::WatchLuminosityBlocks >.
Definition at line 480 of file L1TSync.cc.
482 cout <<
"[L1TSync] Called analyze." << endl;
496 if (gtEvmReadoutRecord.
isValid()) {
498 unsigned int lhcBeamMode = gtfeEvmWord.
beamMode();
505 if (lhcBeamMode !=
STABLE) {
528 if (gtReadoutRecordData.
isValid()) {
529 const vector<L1GtFdlWord>& gtFdlVectorData = gtReadoutRecordData->
gtFdlVector();
533 string tTrigger = (*i).second;
536 if (tTrigger !=
"Undefined" && tTrigger !=
"Undefined (Wrong Name)") {
537 bool beamSingleConfig =
false;
538 bool firedAlgo =
false;
542 for (
unsigned int a = 0;
a < gtFdlVectorData.size();
a++) {
544 if (gtFdlVectorData[
a].bxInEvent() == 0) {
545 eventBx = gtFdlVectorData[
a].localBxNr();
546 if (gtFdlVectorData[
a].gtDecisionWord()[
m_algoBit[tTrigger]]) {
554 beamSingleConfig =
true;
557 beamSingleConfig =
true;
564 if (firedAlgo && !beamSingleConfig) {
565 int DifAlgoVsBunchStructure = 9999;
567 for (
unsigned int a = 0;
a < gtFdlVectorData.size();
a++) {
568 int bxFDL = gtFdlVectorData[
a].localBxNr();
569 int bxInEvent = gtFdlVectorData[
a].bxInEvent();
572 DifAlgoVsBunchStructure = -1 * bxInEvent;
References a, funct::abs(), BeamConfiguration::beam1, BeamConfiguration::beam2, L1GtfeExtWord::beamMode(), BeamConfiguration::bxConfig(), gather_cfg::cout, ERROR_UNABLE_RETRIVE_PRODUCT, getBeamConfOMDS(), dqm::impl::MonitorElement::getTH1(), L1GlobalTriggerReadoutRecord::gtFdlVector(), L1GlobalTriggerEvmReadoutRecord::gtfeWord(), mps_fire::i, iEvent, BeamConfiguration::isValid(), edm::HandleBase::isValid(), L1GtfeExtWord::lhcFillNumber(), m_algoBit, m_algoVsBunchStructure, m_beamConfig, m_currentLS, m_currentLSValid, m_ErrorMonitor, m_l1GtDataDaqInputTag, m_l1GtEvmSource, m_lhcFill, m_selectedTriggers, m_verbose, and STABLE.
Implements DQMOneEDAnalyzer< edm::one::WatchLuminosityBlocks >.
Definition at line 311 of file L1TSync.cc.
325 for (
const auto&
algo :
menu.gtAlgorithmAliasMap()) {
353 "WARNING_DB_INCORRECT_NBUNCHES");
360 string tCategory = (*i).first;
361 string tTrigger = (*i).second;
370 tCategory,
"min #Delta(" + tTrigger +
",Bunch)", maxNbins, -0.5,
double(maxNbins) - 0.5, 5, -2.5, 2.5);
375 ibooker.
book1D(tCategory,
"fraction of in sync: " + tTrigger, maxNbins, -0.5,
double(maxNbins) - 0.5);
References dqm::implementation::IBooker::book1D(), dqm::implementation::IBooker::book2D(), ERROR_LSBLOCK_NOTVALID, ERROR_TRIGGERALIAS_NOTVALID, ERROR_UNABLE_RETRIVE_PRODUCT, edm::EventSetup::getData(), L1TMenuHelper::getLUSOTrigger(), mps_fire::i, m_algoAutoSelect, m_algoBit, m_algoCertification, m_algoVsBunchStructure, m_certFirstLS, m_certLastLS, m_currentLS, m_ErrorMonitor, m_helperTokens, m_l1GtUtils, m_lhcFill, m_menuToken, m_refPrescaleSet, m_selectedTriggers, optionsL1T::menu, L1GtUtils::retrieveL1EventSetup(), dqm::impl::MonitorElement::setBinLabel(), dqm::implementation::NavigatorBase::setCurrentFolder(), L1TMenuHelper::testAlgos(), UNKNOWN, WARNING_DB_CONN_FAILED, WARNING_DB_INCORRECT_NBUNCHES, and WARNING_DB_QUERY_FAILED.
void L1TSync::doFractionInSync |
( |
bool |
iForce = false , |
|
|
bool |
iBad = false |
|
) |
| |
|
private |
Definition at line 673 of file L1TSync.cc.
675 string theCategory = (*i).first;
676 string theTriggerAlias = (*i).second;
683 bool triggerAlias_isValid = theTriggerAlias !=
"Undefined" && theTriggerAlias !=
"Undefined (Wrong Name)";
684 bool lsBlock_exists = !(
fLS == 0 && lLS == 0);
685 bool lsBlock_isValid = fLS <= lLS && fLS > 0 && lLS > 0;
687 if (triggerAlias_isValid && lsBlock_exists && lsBlock_isValid) {
689 if (iForce && iBad) {
698 double CountSync = 0;
702 for (
unsigned int ls =
fLS;
ls <= lLS;
ls++) {
704 for (
int a = 1;
a < 6;
a++) {
710 cout <<
"Alias = " << theTriggerAlias <<
" InitLS=" <<
fLS <<
" EndLS=" << lLS <<
" Events=" << CountAll;
717 cout <<
" <--------------- Enough Statistics: ";
746 if (!triggerAlias_isValid) {
756 if (lsBlock_exists && !lsBlock_isValid) {
References a, certifyLSBlock(), gather_cfg::cout, ERROR_LSBLOCK_NOTVALID, ERROR_TRIGGERALIAS_NOTVALID, hcaldqm::quantity::fLS, HLT_FULL_cff::fraction, edm::ParameterSet::getParameter(), dqm::impl::MonitorElement::getTH1(), mps_fire::i, eostools::ls(), m_algoVsBunchStructure, m_certFirstLS, m_certLastLS, m_ErrorMonitor, m_parameters, m_selectedTriggers, and m_verbose.
Referenced by beginLuminosityBlock(), and endLuminosityBlock().
void L1TSync::getBeamConfOMDS |
( |
| ) |
|
|
private |
Definition at line 593 of file L1TSync.cc.
605 cout <<
"[L1TSync] Connected to DB with no error." << endl;
613 cout <<
"[L1TSync] Retriving LHC Bunch Structure: NO_ERROR" << endl;
619 cout <<
"[L1TSync] Retriving LHC Bunch Structure: WARNING_DB_CONN_FAILED" << endl;
627 cout <<
"[L1TSync] Retriving LHC Bunch Structure: WARNING_DB_QUERY_FAILED" << endl;
635 cout <<
"[L1TSync] Retriving LHC Bunch Structure: UNKNOWN" << endl;
646 cout <<
"[L1TSync] Connect to DB: WARNING_DB_CONN_FAILED" << endl;
654 cout <<
"[L1TSync] Connect to DB: UNKNOWN" << endl;
References gather_cfg::cout, edm::ParameterSet::getParameter(), dqm::impl::MonitorElement::getTH1(), m_beamConfig, m_ErrorMonitor, m_lhcFill, m_parameters, BeamConfiguration::m_valid, m_verbose, BeamConfiguration::nCollidingBunches, L1TOMDSHelper::NO_ERROR, L1TBPTX_cfi::oracleDB, L1TBPTX_cfi::pathCondDB, UNKNOWN, L1TOMDSHelper::WARNING_DB_CONN_FAILED, WARNING_DB_CONN_FAILED, WARNING_DB_INCORRECT_NBUNCHES, L1TOMDSHelper::WARNING_DB_QUERY_FAILED, and WARNING_DB_QUERY_FAILED.
Referenced by analyze().