CMS 3D CMS Logo

List of all members | Public Member Functions | Static Public Member Functions | Private Member Functions | Static Private Member Functions | Private Attributes
PSMonitorClient Class Reference
Inheritance diagram for PSMonitorClient:
DQMEDHarvester edm::one::EDProducer< edm::Accumulator, edm::EndLuminosityBlockProducer, edm::EndRunProducer, edm::one::WatchLuminosityBlocks, edm::one::WatchRuns, edm::one::SharedResources > edm::one::EDProducerBase edm::ProducerBase edm::EDConsumerBase edm::ProductRegistryHelper

Public Member Functions

 PSMonitorClient (edm::ParameterSet const &)
 
 ~PSMonitorClient () override=default
 
- Public Member Functions inherited from DQMEDHarvester
void accumulate (edm::Event const &ev, edm::EventSetup const &es) final
 
void beginLuminosityBlock (edm::LuminosityBlock const &, edm::EventSetup const &) final
 
void beginRun (edm::Run const &, edm::EventSetup const &) override
 
 DQMEDHarvester ()
 
void endJob () final
 
void endLuminosityBlock (edm::LuminosityBlock const &, edm::EventSetup const &) final
 
void endLuminosityBlockProduce (edm::LuminosityBlock &, edm::EventSetup const &) final
 
void endRun (edm::Run const &, edm::EventSetup const &) override
 
void endRunProduce (edm::Run &run, edm::EventSetup const &setup) override
 
 ~DQMEDHarvester () override=default
 
- Public Member Functions inherited from edm::one::EDProducer< edm::Accumulator, edm::EndLuminosityBlockProducer, edm::EndRunProducer, edm::one::WatchLuminosityBlocks, edm::one::WatchRuns, edm::one::SharedResources >
 EDProducer ()=default
 
SerialTaskQueueglobalLuminosityBlocksQueue () final
 
SerialTaskQueueglobalRunsQueue () final
 
bool hasAbilityToProduceInLumis () const final
 
bool hasAbilityToProduceInRuns () const final
 
bool wantsGlobalLuminosityBlocks () const final
 
bool wantsGlobalRuns () const final
 
- Public Member Functions inherited from edm::one::EDProducerBase
 EDProducerBase ()
 
ModuleDescription const & moduleDescription () const
 
bool wantsStreamLuminosityBlocks () const
 
bool wantsStreamRuns () const
 
 ~EDProducerBase () override
 
- Public Member Functions inherited from edm::ProducerBase
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
 
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)
 
 ~ProducerBase () noexcept(false) override
 
- Public Member Functions inherited from edm::EDConsumerBase
std::vector< ConsumesInfoconsumesInfo () const
 
void convertCurrentProcessAlias (std::string const &processName)
 Convert "@currentProcess" in InputTag process names to the actual current process name. More...
 
 EDConsumerBase ()
 
 EDConsumerBase (EDConsumerBase const &)=delete
 
 EDConsumerBase (EDConsumerBase &&)=default
 
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::vector< ModuleDescription const * > &modules, ProductRegistry const &preg, std::map< std::string, ModuleDescription const * > const &labelsToDesc, std::string const &processName) const
 
EDConsumerBase const & operator= (EDConsumerBase const &)=delete
 
EDConsumerBaseoperator= (EDConsumerBase &&)=default
 
bool registeredToConsume (ProductResolverIndex, bool, BranchType) const
 
bool registeredToConsumeMany (TypeID const &, BranchType) const
 
ProductResolverIndexAndSkipBit uncheckedIndexFrom (EDGetToken) const
 
void updateLookup (BranchType iBranchType, ProductResolverIndexHelper const &, bool iPrefetchMayGet)
 
virtual ~EDConsumerBase () noexcept(false)
 

Static Public Member Functions

static void fillDescriptions (edm::ConfigurationDescriptions &descriptions)
 
static void fillMePSetDescription (edm::ParameterSetDescription &pset)
 
- Static Public Member Functions inherited from edm::one::EDProducerBase
static const std::string & baseType ()
 
static void fillDescriptions (ConfigurationDescriptions &descriptions)
 
static void prevalidate (ConfigurationDescriptions &descriptions)
 

Private Member Functions

void check (DQMStore::IBooker &booker, DQMStore::IGetter &getter)
 
void dqmEndJob (DQMStore::IBooker &booker, DQMStore::IGetter &getter) override
 
void dqmEndLuminosityBlock (DQMStore::IBooker &booker, DQMStore::IGetter &getter, edm::LuminosityBlock const &, edm::EventSetup const &) override
 

Static Private Member Functions

static MEPSet getHistoPSet (edm::ParameterSet pset)
 

Private Attributes

std::string m_dqm_path
 
MEPSet psColumnVSlumiPSet
 

Additional Inherited Members

- Public Types inherited from edm::one::EDProducerBase
typedef EDProducerBase ModuleType
 
- Public Types inherited from edm::ProducerBase
using ModuleToResolverIndicies = std::unordered_multimap< std::string, std::tuple< edm::TypeID const *, const char *, edm::ProductResolverIndex >>
 
typedef ProductRegistryHelper::TypeLabelList TypeLabelList
 
- Public Types inherited from edm::EDConsumerBase
typedef ProductLabels Labels
 
- Protected Member Functions inherited from edm::EDConsumerBase
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > consumes (edm::InputTag const &tag)
 
EDGetToken consumes (const TypeToGet &id, edm::InputTag const &tag)
 
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 ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > mayConsume (edm::InputTag const &tag)
 
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 
template<BranchType B>
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 
- Protected Attributes inherited from DQMEDHarvester
edm::EDPutTokenT< DQMTokenlumiToken_
 
edm::EDPutTokenT< DQMTokenrunToken_
 

Detailed Description

Definition at line 29 of file PSMonitorClient.cc.

Constructor & Destructor Documentation

PSMonitorClient::PSMonitorClient ( edm::ParameterSet const &  config)
explicit

Definition at line 52 of file PSMonitorClient.cc.

52  :
53  m_dqm_path( config.getUntrackedParameter<std::string>( "dqmPath" ) )
54  , psColumnVSlumiPSet ( getHistoPSet(config.getParameter<edm::ParameterSet>("me")) )
55 {
56 }
Definition: config.py:1
static MEPSet getHistoPSet(edm::ParameterSet pset)
std::string m_dqm_path
PSMonitorClient::~PSMonitorClient ( )
overridedefault

Member Function Documentation

void PSMonitorClient::check ( DQMStore::IBooker booker,
DQMStore::IGetter getter 
)
private

Definition at line 87 of file PSMonitorClient.cc.

References printsummarytable::folder, MEPSet::folder, DQMStore::IGetter::get(), MEPSet::name, dataset::name, psColumnVSlumiPSet, DQMStore::IGetter::setCurrentFolder(), and AlCaHLTBitMon_QueryRunRegistry::string.

Referenced by dqmEndJob(), and dqmEndLuminosityBlock().

88 {
89 
92 
93  getter.setCurrentFolder(folder);
94  MonitorElement* psColumnVSlumi = getter.get(psColumnVSlumiPSet.folder+"/"+psColumnVSlumiPSet.name);
95  // if no ME available, return
96  if ( !psColumnVSlumi ) {
97  edm::LogWarning("PSMonitorClient") << "no " << psColumnVSlumiPSet.name << " ME is available in " << psColumnVSlumiPSet.folder << std::endl;
98  return;
99  }
100 
101  /*
102  TH2F* h = psColumnVSlumi->getTH2F();
103  size_t nbinsX = psColumnVSlumi->getNbinsX();
104  size_t nbinsY = psColumnVSlumi->getNbinsY();
105 
106  for ( size_t ibinY=1; ibinY < nbinsY; ++ibinY )
107  std::cout << h->GetXaxis()->GetBinLabel(ibinY) << std::endl;
108  for ( size_t ibinX=1; ibinX< nbinsX; ++ibinX )
109  if ( psColumnVSlumi->getBinContent(ibinX) )
110  std::cout << "ibinX: " << psColumnVSlumi->getBinContent(ibinX) << std::endl;
111  */
112 
113 }
MonitorElement * get(const std::string &path)
Definition: DQMStore.cc:302
std::string folder
std::string name
void setCurrentFolder(const std::string &fullpath)
Definition: DQMStore.cc:344
void PSMonitorClient::dqmEndJob ( DQMStore::IBooker booker,
DQMStore::IGetter getter 
)
overrideprivatevirtual

Implements DQMEDHarvester.

Definition at line 74 of file PSMonitorClient.cc.

References check().

75 {
76  check(booker, getter);
77 }
void check(DQMStore::IBooker &booker, DQMStore::IGetter &getter)
void PSMonitorClient::dqmEndLuminosityBlock ( DQMStore::IBooker booker,
DQMStore::IGetter getter,
edm::LuminosityBlock const &  lumi,
edm::EventSetup const &  setup 
)
overrideprivatevirtual

Reimplemented from DQMEDHarvester.

Definition at line 80 of file PSMonitorClient.cc.

References check().

81 {
82  check(booker, getter);
83 }
void check(DQMStore::IBooker &booker, DQMStore::IGetter &getter)
void PSMonitorClient::fillDescriptions ( edm::ConfigurationDescriptions descriptions)
static

Definition at line 116 of file PSMonitorClient.cc.

References edm::ConfigurationDescriptions::add(), edm::ParameterSetDescription::add(), edm::ParameterSetDescription::addUntracked(), DEFINE_FWK_MODULE, fillMePSetDescription(), and AlCaHLTBitMon_QueryRunRegistry::string.

116  {
117  // The following says we do not know what parameters are allowed so do no validation
118  // Please change this to state exactly what you do use, even if it is no parameters
120  desc.addUntracked<std::string>( "dqmPath", "HLT/PSMonitoring");
121 
123  fillMePSetDescription(mePSet);
124  desc.add<edm::ParameterSetDescription>("me", mePSet);
125 
126  descriptions.add("psMonitorClient", desc);
127 }
ParameterDescriptionBase * addUntracked(U const &iLabel, T const &value)
ParameterDescriptionBase * add(U const &iLabel, T const &value)
void add(std::string const &label, ParameterSetDescription const &psetDescription)
static void fillMePSetDescription(edm::ParameterSetDescription &pset)
void PSMonitorClient::fillMePSetDescription ( edm::ParameterSetDescription pset)
static

Definition at line 66 of file PSMonitorClient.cc.

References edm::ParameterSetDescription::add(), and AlCaHLTBitMon_QueryRunRegistry::string.

Referenced by fillDescriptions().

67 {
68  pset.add<std::string>("folder","HLT/PSMonitoring");
69  pset.add<std::string>("name","psColumnVSlumi");
70 }
ParameterDescriptionBase * add(U const &iLabel, T const &value)
MEPSet PSMonitorClient::getHistoPSet ( edm::ParameterSet  pset)
staticprivate

Definition at line 58 of file PSMonitorClient.cc.

References edm::ParameterSet::getParameter(), and AlCaHLTBitMon_QueryRunRegistry::string.

59 {
60  return MEPSet{
61  pset.getParameter<std::string>("name"),
62  pset.getParameter<std::string>("folder"),
63  };
64 }
T getParameter(std::string const &) const

Member Data Documentation

std::string PSMonitorClient::m_dqm_path
private

Definition at line 41 of file PSMonitorClient.cc.

MEPSet PSMonitorClient::psColumnVSlumiPSet
private

Definition at line 48 of file PSMonitorClient.cc.

Referenced by check().